func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 2e5 + 7;   long long sumb, sumc;   int n, a[N], b[N], c[N], cnt[30];   bool check() {     for (int i = 0; i < n; i++) {       for (int j = 0; j < 30; j++) {         if (a[i] & 1 << j) cnt[j]++;       }     }     for (int i = 0; i < n; i++) {       long long sum = 0;       for (int j = 0; j < 30; j++) {         if (a[i] & 1 << j) sum += cnt[j] * (1 << j);       }       if (sum != b[i]) return 0;     }     return 1;   }   int main() {     cin >> n;     for (int i = 0; i < n; i++) scanf( %d , b + i), sumb += b[i];     for (int i = 0; i < n; i++) scanf( %d , c + i), sumc += c[i];     for (int i = 0; i < n; i++) {       long long buf = b[i] + c[i] - (sumb + sumc) / 2 / n;       if ((sumb + sumc) % (2 * n) || buf % n) {         puts( -1 );         return 0;       }       a[i] = buf / n;     }     if (!check())       puts( -1 );     else {       for (int i = 0; i < n; i++) {         printf( %d%c , a[i],    n [i == n - 1]);       }     }     return 0;   }   