//Napisati funkciju koja izracunava broj koji se dobija kada se binarni zapis
//argumenata cita u suprotnom smeru. 


//Resenje kolege Slavka Moconje
#include <iostream>
using namespace std;

unsigned long obrint(unsigned long);

main()
{
	int n;

	cin >> n;
	cout << (obrint(n)) << endl;

	return 0;
}

unsigned long obrint(unsigned long n)
{
	unsigned long m = 0;

	while ( n != 0 )
	{
		m = 2*m + n % 2;
		n = n/2;
	}

	return m;
}