import math

import collections



N = int(eval(input()))

a = math.factorial(N)

check = []

ans = 1

i = 2



while a != 1:

    if a % i == 0:

        a //= i

        check.append(i)

    else:

        i += 1

        

check = list(collections.Counter(check).values())

for i in check:

    ans *= (i+1)

    ans %= 10**9+7

print(ans)
from math import factorial



N = factorial(int(eval(input())))



i = 2

check = 1

ans = 1

while N != 1:

    if N % i == 0:

        N //= i

        check += 1

    else:

        ans *= check

        check = 1

        i += 1

print(((ans*check)%(10**9+7)))
import math
import collections

N = int(eval(input()))
a = math.factorial(N)
check = []
ans = 1
i = 2
while a != 1:
    if a % i == 0:
        a //= i
        check.append(i)
    else:
        i += 1
check = list(collections.Counter(check).values())
for i in check:
    ans *= i + 1
    ans %= 10**9 + 7
print(ans)

from math import factorial

N = factorial(int(eval(input())))
i = 2
check = 1
ans = 1
while N != 1:
    if N % i == 0:
        N //= i
        check += 1
    else:
        ans *= check
        check = 1
        i += 1
print(((ans * check) % (10**9 + 7)))

-import math -import collections +from math import factorial -N = int(eval(input())) -a = math.factorial(N) -check = [] +N = factorial(int(eval(input()))) +i = 2 +check = 1 -i = 2 -while a != 1: -    if a % i == 0: -        a //= i -        check.append(i) +while N != 1: +    if N % i == 0: +        N //= i +        check += 1 +        ans *= check +        check = 1 -check = list(collections.Counter(check).values()) -for i in check: -    ans *= i + 1 -    ans %= 10**9 + 7 -print(ans) +print(((ans * check) % (10**9 + 7)))