#include <bits/stdc++.h>
using namespace std;
int dp[1001];
int f(int a){
int temp = 0;
if (a <= 1){
return a;
}
if (dp[a] == -1) {
temp = f(a / 2) + f(a / 3) + f(a / 4);
dp[a] = max(a, temp);
}
return dp[a];
}
int main() {
memset(dp, -1, sizeof dp);
int x;
cin >> x;
int result;
result = f(x);
cout << result;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZHBbMTAwMV07CgppbnQgZihpbnQgYSl7CiAgaW50IHRlbXAgPSAwOwogIAogIGlmIChhIDw9IDEpewogICAgcmV0dXJuIGE7CiAgfQogIAogIGlmIChkcFthXSA9PSAtMSkgewoJdGVtcCA9IGYoYSAvIDIpICsgZihhIC8gMykgKyBmKGEgLyA0KTsKCWRwW2FdID0gbWF4KGEsIHRlbXApOwogIH0KCiAgCiAgcmV0dXJuIGRwW2FdOwogIAp9CgppbnQgbWFpbigpIHsKCW1lbXNldChkcCwgLTEsIHNpemVvZiBkcCk7CiAgICBpbnQgeDsKICAgIGNpbiA+PiB4OwogICAgaW50IHJlc3VsdDsKICAgIHJlc3VsdCA9IGYoeCk7CiAgICBjb3V0IDw8IHJlc3VsdDsKICAgIAogICAgcmV0dXJuIDA7Cn0=