# [GDKOI2024 提高组] 染色

## 题目描述

Alice 非常喜欢二进制，她认为事物只有和二进制有关才是美的。

一天，她奇思妙想了一种图案，并打算在长宽都为 $2^n$ 的网格上画出她心中所想的图案。
网格的格子只有黑色和白色两种，一开始都是白色。

现在 Alice 规定一种绘画操作为：选定一个格子，使它自己和相邻上下左右的网格颜色反转，即原本黑色会变成白色，白色会变成黑色。

Alice 还规定网格的第一行和最后一行相邻，第一列和最后一列也相邻。

现在 Alice 希望你给出一个操作方案或告诉无解。如果有多个方案，输出任意一个即可。

## 输入格式

第一行一个正整数 $n$。

接下来一个 $2^n \times 2^n$ 的矩阵，表示 Alice 所想的图案。其中 $0$ 表示白色，$1$ 表示黑色。

## 输出格式

第一行一个数 $\mathit{ans}$ 表示操作次数，或输出 $-1$ 表示无解。

接下来 $\mathit{ans}$ 行，每行一个坐标表示操作位置。其中每一维坐标范围均为 $[0, 2^n - 1]$。

## 样例 #1

### 样例输入 #1

```
2
0 0 1 1
1 0 1 0
0 0 0 0
1 1 1 0
```

### 样例输出 #1

```
7
0 0
1 0
1 3
2 1
3 1
3 2
3 3
```

## 提示

- 对于 $20\%$ 的数据，$n = 2$。
- 对于另外 $15\%$ 的数据，$n = 4$。
- 对于另外 $15\%$ 的数据，$n = 7$。
- 对于 $100\%$ 的数据，$n \leq 11$。