import sys



import numba as nb



input = sys.stdin.readline





@nb.njit("i8(i8)")

def solve(n):

    table = [0] * (n + 1)

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

        for j in range(i, n + 1, i):

            table[j] += 1

    ans = 0

    for i, v in enumerate(table):

        ans += i * v

    return ans





def main():

    N = int(eval(input()))



    ans = solve(N)



    print(ans)





if __name__ == "__main__":

    main()

import sys



import numba as nb



input = sys.stdin.readline





@nb.njit("i8(i8)")

def solve(n):

    ans = 0

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

        m = n // i

        ans += i * m * (m + 1) // 2

    return ans





def main():

    N = int(eval(input()))



    ans = solve(N)



    print(ans)





if __name__ == "__main__":

    main()

import sys
import numba as nb

input = sys.stdin.readline


@nb.njit("i8(i8)")
def solve(n):
    table = [0] * (n + 1)
    for i in range(1, n + 1):
        for j in range(i, n + 1, i):
            table[j] += 1
    ans = 0
    for i, v in enumerate(table):
        ans += i * v
    return ans


def main():
    N = int(eval(input()))
    ans = solve(N)
    print(ans)


if __name__ == "__main__":
    main()

import sys
import numba as nb

input = sys.stdin.readline


@nb.njit("i8(i8)")
def solve(n):
    ans = 0
    for i in range(1, n + 1):
        m = n // i
        ans += i * m * (m + 1) // 2
    return ans


def main():
    N = int(eval(input()))
    ans = solve(N)
    print(ans)


if __name__ == "__main__":
    main()

-    table = [0] * (n + 1) +    ans = 0 -        for j in range(i, n + 1, i): -            table[j] += 1 -    ans = 0 -    for i, v in enumerate(table): -        ans += i * v +        m = n // i +        ans += i * m * (m + 1) // 2