#pragma GCC optimize("Ofast") #pragma GCC target("avx2") char*mmap(); char wbuf[1<<25]; #define rd_skip() while(*rp++>=48) #define rd(v) long v=0;{long _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;} // splitmix64 // https://yukicoder.me/submissions/709979 static inline unsigned long splitmix64(unsigned long x) { x += 0x9e3779b97f4a7c15; x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9; x = (x ^ (x >> 27)) * 0x94d049bb133111eb; return x ^ (x >> 31); } main(){ char*rp=mmap(0l,1l<<25,1,2,0,0ll); char*wp=wbuf; rd_skip(); while(*rp){ rd(n); unsigned long h=0; while(n--){ rd(a); h^=splitmix64(a); } if(h){ *(long*)wp=(long)'\ne'<<32|'cilA'; wp+=6; }else{ *(int*)wp='\nboB'; wp+=4; } } write(1,wbuf,wp-wbuf); _exit(0); }