#include<stdio.h>
#include<math.h>

int output(int t,int a[10]);

int main()
{
	int n,t;
	while(scanf("%d",&n)!=EOF)
	{
		if(n>=1024||n<0)
		{
		}
		else
		{
			int a[10]={0};
			double x=0;
			t=0;

			for(x;x<10;x++)
			{
				int y;
				y=pow(2,x);

				if(n%(2*y)==y)
				{
					a[t]=y;
					t++;
					n-=y;
				}
				if(n==0)
				{
					for(int z=0;z<t;z++)
					{
						if(z==(t-1))
						{
							printf("%d\n",a[z]);
						}
						else
						{
							printf("%d ",a[z]);
						}
					}
					break;
				}
			}
		}
	}
}