from itertools import accumulate m = 1000000007 n = int(input()) d = n*2 mm = lambda x, y: x*y%m p1, p5 = (list(accumulate(range(r, d+1, 6), mm)) for r in [1, 5]) s, k = 0, n while k: k//=2; s+=k p = pow(2, s, m) s, k = 0, d while k: k//=3; s+=k p = mm(p, pow(3, s, m)) k = d while k: l = k while l: if l>=1: p = mm(p, p1[(l-1)//6]) if l>=5: p = mm(p, p5[(l-5)//6]) l //= 3 k //= 2 print(p)