#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define popcount __builtin_popcount using namespace std; typedef long long int ll; typedef pair P; int gcd(int a, int b){ if(a>b) swap(a, b); if(a==0) return b; int ia, ib; for(int i=16; i>=0; i--){ if(a&(1<=0; i--){ if(b&(1<>n; int c[100010]={}; int a[100010]; for(int i=0; i>a[i]; c[a[i]]++; } int g=a[0]; for(int i=1; i=0; i--){ if(g&(1<=ig; i--){ if(x&(1<