ll@t; rep(t){ ll@n,@p,@a[n][n]; if(p==2){ ull d=0,e[50],f=0; rep(y,n){ ull b=0,c=0; rrep(x,n){ b=b<<1|a[y][x]==-1; c=c<<1|a[y][x]==1; } if(b&(b-1|d)){ goto zero; } d|=b; if(!b){ e[f++]=c; } } rep(y,f){ e[y]&=~d; } rep(y,f){ ull v=e[y]; if(!v){ goto zero; } ull u=v&-v; rep(z,y+1,n){ if(e[z]&u){ e[z]^=v; } } } wt(1); }else{ zero:; wt(0); } }