#include #include #include #include #define repeat(i,n) for (int i = 0; (i) < (n); ++(i)) #define repeat_reverse(i,n) for (int i = (n)-1; (i) >= 0; --(i)) typedef long long ll; using namespace std; int main() { // input ll n; cin >> n; assert (n <= 1e12); const int l = 20; // log 10^12 < 40 const int mask = (1< > cnt(l, vector(1< > bit(l, vector(1<