#icpc2014autumnb. [icpc2014autumn_b]Unknown Switches

[icpc2014autumn_b]Unknown Switches

Problem Statement

在国际插头和连接器公司(ICPC)总部大楼中,有 MM 盏灯泡,它们由 NN 个开关控制。每个灯泡只能被一个开关打开或关闭。每个开关可能控制多个灯泡。当您操作一个开关时,由该开关控制的所有灯泡的状态都会发生改变。您丢失了记录开关和灯泡之间对应关系的表格,并希望恢复它。

您决定通过以下步骤来恢复对应关系。

  • 首先,每个开关都处于关闭状态,每个灯泡都处于关闭状态。
  • 您操作一些由 S_1S\_1 表示的开关。
  • 您检查由 B_1B\_1 表示的灯泡的状态。
  • 您操作一些由 S_2S\_2 表示的开关。
  • 您检查由 B_2B\_2 表示的灯泡的状态。
  • ...
  • 您操作一些由 S_QS\_Q 表示的开关。
  • 您检查由 B_QB\_Q 表示的灯泡的状态。

在您操作一些开关并检查灯泡的状态之后,开关和灯泡的状态将保持不变,供下一次操作使用。

您能根据您操作的开关和您检查的灯泡的状态来恢复开关和灯泡之间的对应关系吗?


输入

输入由多个数据集组成。数据集的数量不超过 5050,文件大小不超过 10mathrmMB10\\mathrm{MB}。每个数据集的格式如下所示。

NN MM QQ
S_1S\_1 B_1B\_1
:
:
S_QS\_Q B_QB\_Q

每个数据集的第一行包含三个整数 NN1leNle361 \\le N \\le 36),MM1leMle1,0001 \\le M \\le 1{,}000),QQ0leQle1,0000 \\le Q \\le 1{,}000),它们分别表示开关的数量、灯泡的数量和操作的次数。接下来的 QQ 行描述了您操作的开关和您检查的灯泡的状态的信息。其中的第 ii 行包含两个字符串 S_iS\_iB_iB\_i,它们的长度分别为 NNMM。每个 S_iS\_i 表示您操作的开关集合:S_ijS\_{ij} 要么是 00,要么是 11,表示第 jj 个开关没有被操作或者已被操作。每个 B_iB\_i 表示灯泡的状态:B_ijB\_{ij} 要么是 00,要么是 11,表示第 jj 个灯泡关闭或打开。

您可以假设存在一种与给定信息一致的开关和灯泡之间的对应关系。

输入以包含三个零的一行表示输入结束。


输出

对于每个数据集,输出由 MM 个数字组成的开关和灯泡之间的对应关系,使用基数为 3636 的表达方式。在这个问题中,对于基数为 3636 的系统,值 00-991010-3535 分别用字符 '0'-'9' 和 'A'-'Z' 表示。对应关系的第 ii 个字符表示控制第 ii 个灯泡的开关编号。如果无法确定哪个开关控制第 ii 个灯泡,则用 '?' 替代第 ii 个字符,而不是开关的编号。


示例输入

3 10 3
000 0000000000
110 0000001111
101 1111111100
2 2 0
1 1 0
2 1 1
01 1
11 11 10
10000000000 10000000000
11000000000 01000000000
01100000000 00100000000
00110000000 00010000000
00011000000 00001000000
00001100000 00000100000
00000110000 00000010000
00000011000 00000001000
00000001100 00000000100
00000000110 00000000010
0 0 0```

### 示例输出

```plain
2222221100
??
0
1
0123456789A```

---

## 出处

JAG Practice Contest for ACM-ICPC Asia Regional 2014