mod = 1000000007 eps = 10**-9 def main(): import sys input = sys.stdin.readline def digit_sum(n, k): ret = 0 while n: ret = (ret + n % k)%mod n //= k return ret N = int(input()) """ # gutyoku ans_ = 0 for i in range(2, N+1): ans_ = (ans_ + digit_sum(N, i))%mod print(ans_) """ inv_2 = (mod + 1)//2 ans = 0 ii = -1 for i in range(2, N+1): if i * i > N: ii = i - 1 break ans = (ans + digit_sum(N, i))%mod if ii > 0: j_min = ii + 1 for i in range(ii - 1, 0, -1): j_max = N // i L = j_max - j_min + 1 ans = (ans + i * L)%mod ans = (ans + (((N - i * j_min) + (N - i * j_max))%mod * (L * inv_2)%mod)%mod)%mod j_min = j_max + 1 print(ans) if __name__ == '__main__': main()