MO=998244353 G=3 $<.map{|line| x,y,t,a,b,c,d=line.split.map &:to_i m=1<<(x+1) n=1<<(y+1) gm=[0]*m gn=[0]*n gm[0]=1 gn[0]=1 gm[1]=G.pow((MO-1)/m,MO) gn[1]=G.pow((MO-1)/n,MO) (2...m).map{|i|gm[i]=(gm[i-1]*gm[1])%MO} (2...n).map{|j|gn[j]=(gn[j-1]*gn[1])%MO} z=0 (0...m).map{|i|(0...n).map{|j| f=(0\ +gm[0]*gn[0]\ +gm[i]*gn[0]\ +gm[0]*gn[j]\ +gm[-i]*gn[0]\ +gm[0]*gn[-j]\ ).pow(t,MO) (0...2).map{|s|(0...2).map{|t| ii=((-1)**s*c-a)&(m-1) jj=((-1)**t*d-b)&(n-1) z+=(-1)**(s+t)*gm[(-i*ii)&(m-1)]*gn[(-j*jj)&(n-1)]*f z%=MO }} }} z*=(m*n).pow(MO-2,MO) z=(z%MO+MO)%MO p z }