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 C (GCC 9.2.1) (judge verdict: Accepted)

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#define PI 3.141592653589793
#define MOD 1000000007
//#define DEBUG



//qsort用、昇順
int compare_int(const void *a, const void *b)
{
	return *(int*)a-*(int*)b;
}
//qsort(array, 10, sizeof(int), compare_int)



int main(){
	int n;
	scanf("%d", &n);
	
	long long int nine=1, eight=1, seven=1;
	for(int i=0; i<n; i++){
		nine *= 10;
		eight *= 9;
		seven *= 8;
		nine = nine%MOD;
		eight = eight%MOD;
		seven = seven%MOD;
	}
	eight = eight*2;
	eight = eight%MOD;
	long long int x = nine - eight + seven;
	if(x<0) x += MOD;
	x = x%MOD;

	printf("%lld\n", x);
	
	return 0;
}