//a
ll a, b, c;voidsolve(){
cin >> a >> b >> c;
ll sum = a +2*b +3*c;if(sum&1) cout <<1<< endl;else cout <<0<< endl;}
//bint n, m;
ll a[N];
ll qmi(ll a, ll b){
ll res =1;while(b){if(b&1) res= res * a;
b >>=1;
a = a * a;}return res;}voidsolve(){
ll sum =0;bool f =false;
ll c1 =0, c0 =0;scanf("%d",&n);// cin >> n;rep(i,0,n-1){scanf("%lld",&a[i]);if(a[i]==0) c0 ++;if(a[i]==1) c1++;}
ll ans = c1 *qmi(2,c0);printf("%lld\n",ans);}
//cint n, m;int a[N];bool vis[N];boolhuiwen(string s){int length = s.size();char b[length+10];int i;for(i=0; i<length; i++){
b[length-i-1]=s[i];}for(i=0;i<length;i++){if(s[i]!=b[i])break;}if(i==length)returntrue;returnfalse;}voidsolve(){
cin >> n;
string s; cin >> s;int mi =1e6;for(int i =0; i <26; i ++){
string t ="";char tmp ='a'+ i;rep(j,0,n-1){if(s[j]!= tmp) t += s[j];}if(huiwen(t)){int L =0, R = n -1;int res =0;while(L <= R){if(s[L]== s[R]){if(R != L) res+=2;else res++;
L++;
R--;}else{while(s[L]== tmp) L++;while(s[R]== tmp) R--;}}int tt = n - res;
mi =min(mi,tt);}}if(mi ==1e6)printf("-1\n");elseprintf("%d\n", mi);}
//dconstint N =1e5+100;int n, m;int a[N];voidfun(int i){if(a[i]<0&& a[i+1]<0)printf("%d %d ",-a[i+1], a[i]);elseif(a[i]<0&& a[i+1]>0)printf("%d %d ", a[i+1], a[i]);elseif(a[i]>0&& a[i+1]<0)printf("%d %d ", a[i+1], a[i]);elseif(a[i]>0&& a[i+1]>0)printf("%d %d ",-a[i+1], a[i]);}voidsolve(){
cin >> n;rep(i,1,n) cin >> a[i];if(n%2==0){for(int i =1; i < n; i+=2){fun(i);}printf("\n");}else{for(int i =1; i < n-2; i+=2){fun(i);}int x = a[n-2], y = a[n-1], z = a[n];printf("%d %d %d\n",-z,-z,x+y);}}