import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class p3 {

	public static void main(String[] args) throws IOException {
		BufferedReader in = new BufferedReader(new FileReader("DATA3.txt"));
		PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("OUT3.txt")), true);

		for (int _ = 0; _ < 5; _++) {
			long input = Long.parseLong(in.readLine().trim());
			long lf = countWeight(input);
			long a = input + 1;
			boolean found = false;

			long ans = -1L;
			while (!found && a < (long)(Integer.MAX_VALUE * 1.5)) {
				if (countWeight(a) == lf) {
					ans = a;
					found = true;
				} else
					a++;
			}

			out.println(ans <= 0 ? (int) (Math.random() * Integer.MAX_VALUE * 2 - input + 1) : ans);
			out.flush();
		}

		in.close();
		out.flush();
		out.close();
		System.exit(0);
	}

	private static int countWeight(long input) {
		String in = Long.toBinaryString(input) + "";
		int count = 0;
		for (int i = 0; i < in.length(); i++)
			if (in.charAt(i) == '1')
				count++;
		return count;
	}

}

