func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxN = 200009;   vector<int> a;   vector<int> b;   vector<int> bb;   int main() {     long long s, x;     cin >> s >> x;     int s1 = s, x1 = x;     int ans = 0;     for (int i = 0; i < 45; i++) {       if ((s & ((long long)1 << i)) && (x & ((long long)1 << i))) ans++;       if (!(s & ((long long)1 << i)) && (x & ((long long)1 << i))) {         cout << 0;         return 0;       }       if ((s & ((long long)1 << i)) && !(x & ((long long)1 << i))) {         cout << 0;         return 0;       }       if (!(s & ((long long)1 << i)) && !(x & ((long long)1 << i))) {         if ((s & ((long long)1 << (i + 1))) && !(x & ((long long)1 << (i + 1)))) {           s -= ((long long)1 << (i + 1));         }         if (!(s & ((long long)1 << (i + 1))) && (x & ((long long)1 << (i + 1)))) {           s -= ((long long)1 << (i + 1));         }       }     }     if (s1 != x1)       cout << ((long long)1 << ans);     else       cout << ((long long)1 << ans) - 2;     return 0;   }   