import math

mod = 10 ** 9 + 7



def f(num):



    i = 2

    d = dict()



    while i * i <= num:

        if num % i == 0:

            num //= i

            d[i] = d.get(i, 0) + 1

        else:

            i += 1

    d[num] = 1



    return d



n = int(eval(input()))

if n == 1:

    print((1))

    exit()



ans = 1



for i in list(f(math.factorial(n)).values()):

    ans *= i+1



print((ans%mod))
import math

mod = 10 ** 9 + 7



def f(num):

    i = 2

    d = dict()

    while i ** 2 <= num:

        if num % i == 0:

            num //= i

            d[i] = d.get(i, 0) + 1

        else:

            i += 1

    d[num] = 1

    return d



n = int(eval(input()))



if n == 1:

    print((1))

    exit()



ans = 1

for i in list(f(math.factorial(n)).values()):

    ans *= i+1



print((ans%mod))
import math

mod = 10**9 + 7


def f(num):
    i = 2
    d = dict()
    while i * i <= num:
        if num % i == 0:
            num //= i
            d[i] = d.get(i, 0) + 1
        else:
            i += 1
    d[num] = 1
    return d


n = int(eval(input()))
if n == 1:
    print((1))
    exit()
ans = 1
for i in list(f(math.factorial(n)).values()):
    ans *= i + 1
print((ans % mod))

import math

mod = 10**9 + 7


def f(num):
    i = 2
    d = dict()
    while i**2 <= num:
        if num % i == 0:
            num //= i
            d[i] = d.get(i, 0) + 1
        else:
            i += 1
    d[num] = 1
    return d


n = int(eval(input()))
if n == 1:
    print((1))
    exit()
ans = 1
for i in list(f(math.factorial(n)).values()):
    ans *= i + 1
print((ans % mod))

-    while i * i <= num: +    while i**2 <= num: