#include using namespace std; using ll = long long; map<__int128_t,ll> memo,vis; ll calc(__int128_t ni){ if(vis[ni]) return memo[ni]; vector use; for(int i = 0;i<=120;i++){ if(ni>>i&1) use.push_back(calc(i)); } sort(use.begin(),use.end()); int now = 0; for(int i = 0;i>n; vector a(n); for(int i = 0;i>a[i]; ll now = 0; for(int i = 0;i