#include using namespace std; #include using namespace atcoder; using ll=long long; using Graph=vector>>; #define MAX 100000 #define MOD 1000000007 #define INF 1000000000 int gcd(int a,int b){ while(a%b!=0){ int tmp=a%b; a=b; b=tmp; } return b; } ll modpow(ll a,ll n){ a%=MOD; ll ret=1; while(n>0){ if((n&1)==1){ ret=ret*a%MOD; } n>>=1; a=a*a%MOD; } return ret; } ll modinv(ll x){ return modpow(x,MOD-2); } int main(){ int N; cin>>N; vector c(9); for(int i=0;i<9;i++){ cin>>c[i]; } bool even=true; if(N<=5){ vector a; for(int i=0;i<9;i++){ for(int j=0;j nums; do{ int x=0; int res=1; for(int i=0;i0){ cnt++; if(i%2==0){ even=false; } } } if(cnt!=1){ int ans=1; if(sum%9==0){ ans=9; }else if(sum%3==0){ ans=3; }else{ ans=1; } if(even==true){ ans*=2; } cout<0){ k=i+1; } } ll x=(modpow(10,N)-1)*modinv(9)%MOD; x*=(ll)k; x%=MOD; cout<