You are given a positive integer n greater or equal to 2. For every pair of integers a and b (2 ≤ |a|, |b| ≤ n), you can transform a into b if and only if there exists an integer x such that 1 < |x| and (a ⋅ x = b or b ⋅ x = a), where |x| denotes the absolute value of x.

After such a transformation, your score increases by |x| points and you are not allowed to transform a into b nor b into a anymore.

Initially, you have a score of 0. You can start at any integer and transform it as many times as you like. What is the maximum score you can achieve?

Input

A single line contains a single integer n (2 ≤ n ≤ 100 000) — the given integer described above.

Output

Print an only integer — the maximum score that can be achieved with the transformations. If it is not possible to perform even a single transformation for all possible starting integers, print 0.

Examples

Input

4


Output

8

Input

6


Output

28

Input

2


Output

0

Note

In the first example, the transformations are 2 → 4 → (-2) → (-4) → 2.

In the third example, it is impossible to perform even a single transformation.
#include <bits/stdc++.h>
using namespace std;
vector<int> g[0];
long long int gcd(long long int a, long long int b) {
  if (b == 0) return a;
  a %= b;
  return gcd(b, a);
}
long long int lcm(long long int a, long long int b) {
  return (a * b) / gcd(a, b);
}
int bins(long long int n, long long int arr[], long long int sum) {
  int l = 0, r = n - 1, mid;
  while (l <= r) {
    mid = (l + r) / 2;
    if (arr[mid] == sum) return mid;
    if (arr[mid] < sum)
      l = mid + 1;
    else
      r = mid - 1;
  }
  return -1;
}
vector<long long int> div(long long int n) {
  vector<long long int> ans;
  for (long long int i = 2; i <= sqrt(n); i++) {
    if (!(n % i)) {
      if (n / i == i)
        ans.push_back(i);
      else
        ans.push_back(i), ans.push_back(n / i);
    }
  }
  return ans;
}
int main() {
  long long int n, ans = 0;
  scanf("%lld", &n);
  if (n == 2)
    printf("0");
  else {
    for (long long int i = 2; i <= n; i++) {
      vector<long long int> d = div(i);
      for (auto di : d) {
        if (di == i) continue;
        ans += (4 * (i / di));
      }
    }
    printf("%lld", ans);
  }
  return 0;
}
