import java.util.*;
import java.lang.*;
import java.io.*;
class Main
{
{
Scanner in
= new Scanner
(System.
in);
long in_val = in.nextInt(), tmp_val = in_val, power = 1;
while (tmp_val != 0) {
tmp_val /= 2;
power *= 2;
}
tmp_val = in_val;
long max_val = in_val;
do{
in_val = in_val << 1;
in_val = in_val % power + (in_val >= power ? 1 : 0);
if (max_val < in_val) max_val = in_val;
}while (tmp_val != in_val);
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBNYWluCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVNjYW5uZXIgaW4gPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwoKCQlsb25nIGluX3ZhbCA9IGluLm5leHRJbnQoKSwgdG1wX3ZhbCA9IGluX3ZhbCwgcG93ZXIgPSAxOwoJCXdoaWxlICh0bXBfdmFsICE9IDApIHsKCQkJdG1wX3ZhbCAvPSAyOwoJCQlwb3dlciAqPSAyOwoJCX0KCQl0bXBfdmFsID0gaW5fdmFsOwoJCWxvbmcgbWF4X3ZhbCA9IGluX3ZhbDsKCQlkb3sKCQkJaW5fdmFsID0gaW5fdmFsIDw8IDE7CgkJCWluX3ZhbCA9IGluX3ZhbCAlIHBvd2VyICsgKGluX3ZhbCA+PSBwb3dlciA/IDEgOiAwKTsKCQkJaWYgKG1heF92YWwgPCBpbl92YWwpIG1heF92YWwgPSBpbl92YWw7CgkJfXdoaWxlICh0bXBfdmFsICE9IGluX3ZhbCk7CgkJU3lzdGVtLm91dC5wcmludGxuKG1heF92YWwpOwoJfQp9