#include <iostream>
using namespace std;
const int maxN = 1e3 + 5;
int S;
int sum[maxN];
int f[maxN];
int main()
{
cin >> S;
for (int i = 1; i <= S; ++i)
for (int j = 2; i * j <= S; ++j)
sum[i * j] += i;//存储i所有约数的和
for (int i = 1; i <= S; ++i)//01背包模板
for (int j = S; j >= i; --j)
f[j] = max(f[j], f[j - i] + sum[i]);// 状态转移
int ans = 0;
for (int i = 1; i <= S; ++i)
ans = max(ans, f[i]);//跑出f数组的最大值
cout << ans << endl;
return 0;
}