#nck { width: 30px; height: auto; }Snuke received two matrices $A$ and $B$ as birthday presents. Each of the matrices is an $N$ by $N$ matrix that consists of only $0$ and $1$.
Then he computed the product of the two matrices, $C = AB$. Since he performed all computations in modulo two, $C$ was also an $N$ by $N$ matrix that consists of only $0$ and $1$. For each $1 ≤ i, j ≤ N$, you are given $c_{i, j}$, the $(i, j)$\-element of the matrix $C$.
However, Snuke accidentally ate the two matrices $A$ and $B$, and now he only knows $C$. Compute the number of possible (ordered) pairs of the two matrices $A$ and $B$, modulo $10^9+7$.
## Constraints
* $1 ≤ N ≤ 300$
* $c_{i, j}$ is either $0$ or $1$.
## Input
The input is given from Standard Input in the following format:
$N$
$c_{1, 1}$ $...$ $c_{1, N}$
:
$c_{N, 1}$ $...$ $c_{N, N}$
[samples]