def aa(mat,t): global n res=[[0]*n for i in range(n)];res[0][0]=1 while t: if t&1: res=bb(res,mat) t>>=1;mat=bb(mat,mat) return res def bb(q,w): global n res=[[0]*n for i in range(n)] for i in range(n): for j in range(n): for l in range(n): res[j][l]|=q[j][i]&w[i][l] return res n,m,t=map(int,input().split()) mat=[[0]*n for i in range(n)] for i in range(m): a,b=map(int,input().split());mat[a][b]=1 ans=aa(mat,t) c=0 for i in range(n): c+=ans[0][i] print(c)