from numba import njit

from math import sqrt

import sys

read = sys.stdin.read

readline = sys.stdin.readline

readlines = sys.stdin.readlines



@njit

def main(N):

    table = [1] * (N + 1)



    for n in range(2,N):

        for i in range(2*n, N+1, n):

            table[i] += 1

    

    ans = 0

    for i in range(1, N+1):

        ans += i * (table[i] + 1)

    

    print((ans - 1))





if __name__ == "__main__":

    N = int(readline())

    main(N)

from numba import njit

import sys

read = sys.stdin.read

readline = sys.stdin.readline

readlines = sys.stdin.readlines



@njit

def main(N):

    ans = N * (N + 1) // 2



    for n in range(1,N+1):

        for i in range(2*n, N+1, n):

            ans += i



    print(ans)





if __name__ == "__main__":

    N = int(readline())

    main(N)

from numba import njit
from math import sqrt
import sys

read = sys.stdin.read
readline = sys.stdin.readline
readlines = sys.stdin.readlines


@njit
def main(N):
    table = [1] * (N + 1)
    for n in range(2, N):
        for i in range(2 * n, N + 1, n):
            table[i] += 1
    ans = 0
    for i in range(1, N + 1):
        ans += i * (table[i] + 1)
    print((ans - 1))


if __name__ == "__main__":
    N = int(readline())
    main(N)

from numba import njit
import sys

read = sys.stdin.read
readline = sys.stdin.readline
readlines = sys.stdin.readlines


@njit
def main(N):
    ans = N * (N + 1) // 2
    for n in range(1, N + 1):
        for i in range(2 * n, N + 1, n):
            ans += i
    print(ans)


if __name__ == "__main__":
    N = int(readline())
    main(N)

-from math import sqrt -    table = [1] * (N + 1) -    for n in range(2, N): +    ans = N * (N + 1) // 2 +    for n in range(1, N + 1): -            table[i] += 1 -    ans = 0 -    for i in range(1, N + 1): -        ans += i * (table[i] + 1) -    print((ans - 1)) +            ans += i +    print(ans)