output_description: Print the answer modulo 10^9 + 7.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
attempt: # import itertools
  # import math
  # import sys
  # sys.setrecursionlimit(500*500)
  # import numpy as np
  # import heapq
  # from collections import deque
  
  N = int(input())
  # S = input()
  # n, *a = map(int, open(0))
  # N, M = map(int, input().split())
  # A = list(map(int, input().split()))
  # B = list(map(int, input().split()))
  # tree = [[] for _ in range(N + 1)]
  # B_C = [list(map(int,input().split())) for _ in range(M)]
  # S = input()
  
  # B_C = sorted(B_C, reverse=True, key=lambda x:x[1])
  # all_cases = list(itertools.permutations(P))
  # a = list(itertools.combinations_with_replacement(range(1, M + 1), N))
  # itertools.product((0,1), repeat=n)
  
  # A = np.array(A)
  # cum_A = np.cumsum(A)
  # cum_A = np.insert(cum_A, 0, 0)
  
  # def dfs(tree, s):
  #     for l in tree[s]:
  #         if depth[l[0]] == -1:
  #             depth[l[0]] = depth[s] + l[1]
  #             dfs(tree, l[0])
  # dfs(tree, 1)
  
  # def factorization(n):
  #     arr = []
  #     temp = n
  #     for i in range(2, int(-(-n**0.5//1))+1):
  #         if temp%i==0:
  #             cnt=0
  #             while temp%i==0:
  #                 cnt+=1
  #                 temp //= i
  #             arr.append([i, cnt])
  #     if temp!=1:
  #         arr.append([temp, 1])
  #     if arr==[]:
  #         arr.append([n, 1])
  #     return arr
  
  print((10**N - (9**N + 9**N - 8**N)) % (10**9 + 7))
  
problem_description: 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.
samples: [{"input": "2", "output": "2\n    \n\nTwo sequences \\\\{0,9\\\\} and \\\\{9,0\\\\} satisfy all conditions.\n\n* * *"}, {"input": "1", "output": "0\n    \n\n* * *"}, {"input": "869121", "output": "2511445"}]