def aa(m): c=[] while m!=uf[m]: c.append(m) m=uf[m] for i in c: uf[i]=m return m def bb(i,j): global n k=j for l in v[i]: if s[l][k]: cc(k*n+l,j*n+i) def cc(i,j): i,j=aa(i),aa(j) if i==j: return x[i]+=x[j] uf[j]=i n,m,q=map(int,input().split()) s=[list(map(int,list(input()))) for i in range(n)] v=[[] for i in range(n)] uf=[i for i in range(n*7)] x=[1]*n*7 for i in range(m): a,b=map(int,input().split());a-=1;b-=1 v[a].append(b);v[b].append(a) for i in range(n): for j in range(7): if s[i][j]: if s[i][(j+1)%7]: cc(j*n+i,(((j+1)%7)*n+i)) bb(i,j) for i in range(q): a,b,c=map(int,input().split());b-=1;c-=1 if a==1: s[b][c]=1 if s[b][(c+1)%7]: cc(c*n+b,((c+1)%7)*n+b) if s[b][c-1]: cc(c*n+b,((c-1)%7)*n+b) bb(b,c) else: print(x[aa(b)])