In a directed graph which has $N$ points and $M$ edges,points are labled from 1 to n.At first I am at point $u$,at each step I will choose an output edge of the current point at uniform random,for every point $Z$,please output the possibility of reaching the point $Z$,moving exactly $K$ steps.
the first line contains two positive interges$N,M$,means the number of points and edges.
next $M$ lines,contains two positive intergers$X,Y$,means an directed edge from X to Y.
next line there is an integer $Q$,means the number of queries.
next $Q$ lines,each line contains two integers $u,K$,means the first point and number of the steps.
$N\le 50,M\le 1000,Q\le 20,u\le N,K\le 10^9$.
Every point have at least one output edge.
$Q$ lines,each line contains $N$ numbers,the $i$-th number means the possibility of reaching point $i$ from $u$,moving exactly $K$ steps.
In consideration of the precision error,we make some analyses,finding the answer can be represented as the form like $\frac{X}{Y}$,you only need to output $X\times Y^{10^9+5}~mod~(10^9+7)$.
You need to output an extra space at the end of the line,or you will get PE.