n = int(eval(input()))



ji = {}

ans = 1

m = 1000000007

for i in range(n):

    tmp = i + 1

    j = 2

    while tmp != 1:

        if tmp % j == 0:

            if not j in ji:

                ji[j] = 0

            

            ji[j] += 1

            tmp /= j

        else:

            j += 1 



for i in list(ji.values()):

    ans *= (i + 1)

    ans %= m

    



print(ans)

n = int(eval(input()))



ji = {}

ans = 1

for i in range(n):

    tmp = i + 1

    j = 2

    while tmp != 1:

        if tmp % j == 0:

            if not j in ji:

                ji[j] = 0

            

            ji[j] += 1

            tmp /= j

        else:

            j += 1 



for i in list(ji.values()):

    ans *= (i + 1)



print((ans % 1000000007))

n = int(eval(input()))
ji = {}
ans = 1
m = 1000000007
for i in range(n):
    tmp = i + 1
    j = 2
    while tmp != 1:
        if tmp % j == 0:
            if not j in ji:
                ji[j] = 0
            ji[j] += 1
            tmp /= j
        else:
            j += 1
for i in list(ji.values()):
    ans *= i + 1
    ans %= m
print(ans)

n = int(eval(input()))
ji = {}
ans = 1
for i in range(n):
    tmp = i + 1
    j = 2
    while tmp != 1:
        if tmp % j == 0:
            if not j in ji:
                ji[j] = 0
            ji[j] += 1
            tmp /= j
        else:
            j += 1
for i in list(ji.values()):
    ans *= i + 1
print((ans % 1000000007))

-m = 1000000007 -    ans %= m -print(ans) +print((ans % 1000000007))