28237
 13190
 39914
 81367
 8554
 61106
 67448
 39004
 22308
 16054
 71468
 60501
 100
 300
 59632
 90783
 5611
 1000
 69475
 69753
 10
 5
 582
 8
 36961
 5071
 20
 53213
 92775
 28738
 100000
 92280
 37944
 9
 2627
 7
 3

1028306548 224346172 2054738392 8539207488 94344524 4816051228 5867563092 1962150044 641839188 332342852 6587875268 4721174212 12600 115440 4586497300 10630118936 40580456 1286328 6225539588 6275533596 92 8 434692 52 1762017168 33141852 440 3652070664 11101694484 1065137992 12898363344 10983871880 1856988304 64 8885348 28 0
#include <bits/stdc++.h>
using namespace std;
struct DSU {
  vector<int> pa;
  DSU(int n = 1) { pa = vector<int>(n + 3, -1); }
  int root(int i) {
    if (pa[i] < 0) return i;
    return pa[i] = root(pa[i]);
  }
  int size(int i) { return -pa[root(i)]; }
  int merge(int a, int b) {
    a = root(a);
    b = root(b);
    if (a == b) return a;
    if (pa[a] < pa[b]) swap(a, b);
    pa[b] += pa[a];
    pa[a] = b;
    return b;
  }
};
long long mx[100000 + 1];
long long mn[100000 + 1];
int main() {
  ios_base::sync_with_stdio(false);
  long long n;
  cin >> n;
  DSU XXX(n + 2);
  for (long long i = n; i >= 2; i--) {
    mn[i] = i;
    mx[i] = 0;
    long long j = 0;
    while (j <= n) j += i;
    j -= i;
    long long suma = 0;
    for (; j > i; j -= i) {
      suma += j / i * 4;
      if (XXX.root(j) == j) {
        suma += mx[mn[j]];
      }
    }
    for (long long j = 2 * i; j <= n; j += i) {
      mn[XXX.merge(i, j)] = i;
    }
    mx[i] = suma;
  }
  cout << *max_element(mx + 2, mx + n + 1) << "\n";
}
