N,M,L=map(int,input().split()) result=0 mod=998244353 G=[[] for i in range(M)] for i in range(N): a,b=map(int,input().split()) b-=M G[a-1].append(b-1) for bit in range(1,2**L): ans=1 for i in range(M): count=0 for y in G[i]: if (bit>>y)&1: count+=1 ans*=pow(2,count,mod)-1 ans%=mod c=0 for k in range(L): if (bit>>k)&1: c+=1 if (L-c)%2==0: result+=ans else: result-=ans result%=mod print(result)