Problem:
Score : 300 points

Problem Statement

How many integer sequences A_1,A_2,\ldots,A_N of length N satisfy all of the following conditions?

0 \leq A_i \leq 9

There exists some i such that A_i=0 holds.

There exists some i such that A_i=9 holds.

The answer can be very large, so output it modulo 10^9 + 7.

Constraints

1 \leq N \leq 10^6

N is an integer.

Input

Input is given from Standard Input in the following format:

N

Output

Print the answer modulo 10^9 + 7.

Sample Input 1

2

Sample Output 1

2

Two sequences \{0,9\} and \{9,0\} satisfy all conditions.

Sample Input 2

1

Sample Output 2

0

Sample Input 3

869121

Sample Output 3

2511445

Solution in Python (3.8.2) (judge verdict: Time Limit Exceeded)

mod = 10**9+7

def fact(n):
  ans = 1
  for num in range(n):
    ans = (ans*(num+1))%mod
  return ans
def power(a,m,mod):
  if m == 0:
    return 1
  elif m%2 == 0:
    return power(a*a%mod,m//2,mod)%mod
  else:
    return a*power(a,m-1,mod)%mod
  

N = int(input())
if N == 1:
  print(0)
else:
  ans = 0
  for n1 in range(N-1):
    n1 += 1
    for n2 in range(N-n1):
      n2 += 1
      tmp1 = (fact(N)*fact(N-n1)) % mod
      tmp2 = fact(N-n1)
      tmp3 = fact(N-n1-n2)
      tmp4 = power(tmp2,mod-2,mod)*power(tmp3,mod-2,mod)*power(fact(n1),mod-2,mod)*power(fact(n2),mod-2,mod)*power(8,N-n1-n2,mod)
      #print(tmp1,tmp4)
      tmp1 *= power(tmp2,mod-2,mod)*power(tmp3,mod-2,mod)*power(fact(n1),mod-2,mod)*power(fact(n2),mod-2,mod)*power(8,N-n1-n2,mod)
      
      ans = (ans+tmp1)%mod
  print(ans)