#include #include #include #include #include using ll = long long int; const int INF = (1<<30); const ll INFLL = (1ll<<60); const ll MOD = (ll)(1e9+7); #define l_ength size void mul_mod(ll& a, ll b){ a *= b; a %= MOD; } void add_mod(ll& a, ll b){ a = (a dp[2<<16]; std::map::iterator itr; bool use[4][4]; int cnt[2]; void check(int x, int y){ if(0<=x && x<4 && 0<=y && y<4){ ++cnt[use[x][y]]; } } int main(void){ int i,m=(1<<16),n=16,k,j,x,y,d; std::cin >> k; dp[0][0] = 1ll; for(i=0; i>j)&1; } for(itr=dp[i].begin(); itr!=dp[i].end(); ++itr){ // std::cout << i << " " << ((*itr).first) << " " << ((*itr).second) << std::endl; for(x=0; x<4; ++x){ for(y=0; y<4; ++y){ if(use[x][y]){ continue; } j = x*4+y; cnt[0] = 0; cnt[1] = 0; check(x-1,y); check(x+1,y); check(x,y-1); check(x,y+1); dp[i+(1<