#include using namespace std; using ll = long long; using ql = queue; using sl = set; using vl = vector; using msl = multiset; using Graph = vector>; using P = pair; template inline bool chmax(T &a, T b) { return ((a < b) ? (a = b, true) : (false)); } template inline bool chmin(T &a, T b) { return ((a > b) ? (a = b, true) : (false)); } #define rep1(i, n) for(ll i = 1; i <= ((ll)n); ++i) #define rep(i, n) for(ll i = 0; i < ((ll)n); ++i) #define ALL(a) (a).begin(), (a).end() #define rALL(a) (a).rbegin(), (a).rend() template void print(T &d) { for(auto &i : d) cout << i << " "; if(d.size()) cout << endl; } map mp; string f(ll x){ if(mp.count(x))return mp[x]; if(x==1)return mp[x] = ""; if(x%2){ if(f(x/2)!="!")return mp[x] = f(x/2)+"A"; } if((x%3) == 1){ if(f(x/3)!="!")return mp[x] = f(x/3)+"B"; } return mp[x] = "!"; } void solve() { ll n;cin>>n; cout<= 1; i--) // ifac[i - 1] = ifac[i] * (i); // } ll t; t = 1; // cin >> t; rep(_, t) solve(); }