#include using namespace std; #define modulo 1000000007 #define mod(mod_x) ((((long long)mod_x+modulo))%modulo) #define Inf 1000000000LL vector Merge(vector A,vector B){ vector ret(9,0); for(int i=0;i Merge2(vector A,vector B){ vector ret(9,0); for(int i=0;i calc(long long X){ vector now = {2,1,1,1,1,1,1,1,1}; vector ret = {1,0,0,0,0,0,0,0,0}; while(X!=0){ if(X&1){ ret = Merge(ret,now); } now = Merge(now,now); X/=2; } return ret; } vector calc(long long L,long long R){ vector ret = calc(R); vector t = calc(L); for(int i=0;i>N; deque L(N),R(N); deque D(N); for(int i=0;i>L[i]; for(int i=0;i>R[i]; for(int i=0;i>D[i]; while(D.size()>0&&D.front()==0){ D.pop_front(); L.pop_front(); R.pop_front(); } if(D.size()==0){ cout<<1< now = {1,0,0,0,0,0,0,0,0}; for(int i=0;i