N = int(input()) MOD = 10**9+7 p = [[10,3],[0,1]] def mul(a, b): return [ [(a[0][0]*b[0][0] + a[0][1]*b[1][0]) % MOD, (a[0][0]*b[0][1] + a[0][1]*b[1][1]) % MOD], [(a[1][0]*b[0][0] + a[1][1]*b[1][0]) % MOD, (a[1][0]*b[0][1] + a[1][1]*b[1][1]) % MOD]] t = [[1,0], [0,1]] while N > 0: if N & 1: t = mul(t, p) p = mul(p, p) N >>= 1 a = [[1,0], [1,0]] a = mul(t, a) print(a[0][0])