#include <iostream>
#include <cstdio>
#include <string>
#include <set>
#include <vector>
#include <math.h>

using namespace std;



int main()
{
	freopen("input.txt", "rt", stdin);
	freopen("output.txt", "wt", stdout);
	int n;
	cin >> n;

	vector<int> m(n);
	for(int i=0; i<n; i++)
		cin >> m[i];
	vector<int> res(n);
	int ind=0;
	for(int i=1; i< n ; i*=2)
	{
		ind=0;
		for(int j=0; j<i; j++)
		{
			int y=(m[j]-m[j+i])/2;
			int x=m[j]-y;
			//cout << x << "!"<< y <<"!";
			res[ind++]=x;
			res[ind++]=y;

			//for(int k=0; k<n ;k++)
				//cout << res[k];
			//cout << "@";
		}
		copy(res.begin(), res.begin()+ind, m.begin());
		
		/*for(int k=0; k<n ;k++)
		cout << m[k];
		cout << "%";*/
	}
	for(int i=0; i<n ;i++)
		cout << m[i] << " ";
	


	return 0;
}
