#include #include #include #include using namespace std; using ll = long long; const ll t = true, f = false, tt = t << t; ll ad(ll a, ll b){ vector tmp{a}; return accumulate(tmp.begin(), tmp.end(), b); } ll mn(ll a, ll b){ return ad(a, ad(~b, t)); } template ll Num(Args... args){ ll ret = f; for(auto v : initializer_list{args...}){ ret <<= t; ret |= v; } return ret; } ll mm(ll a, ll b){ ll ret = f; if(a>b){ swap(a, b); } while(a){ if(a&t){ ret = ad(ret, b); } b <<= t; a >>= t; } return ret; } ll pp(ll a, ll b){ ll x = ad(a, b); return x; } bool isprime(ll N){ vector XS(N<> N; if(isprime(N)){ cout << (char)Num(t,f,t,t,f,f,t); cout << (char)Num(t,f,f,f,t,f,t); cout << (char)Num(t,f,t,f,f,t,t); }else{ cout << (char)Num(t,f,f,t,t,t,f); cout << (char)Num(t,f,f,t,t,t,t); } cout << endl; return f; }