#icpc2012autumnj. [icpc2012autumn_j]Hashigo Sama

[icpc2012autumn_j]Hashigo Sama

问题陈述

Chelsea是一位现代艺术家。她决定用梯子制作她的下一个作品。她想要组合一些梯子,并绘制出一些漂亮的图案。

一个梯子可以被看作是一个叫做“哈希戈(hashigo)”的图形。有 nn 个编号为从 0 到 n1n-1 的哈希戈。长度为 lil_i 的哈希戈有 2li+62l_i+6 个顶点 vi,0,vi,1,...,vi,2li+5v_{i,0}, v_{i,1}, ..., v_{i,2l_i+5},并且在顶点对 (vi,j,vi,j+2)(v_{i,j},v_{i,j+2}) (0j2li+30 \leq j \leq 2l_i+3) 和 (vi,2j,vi,2j+1)(v_{i,2j},v_{i,2j+1}) (1jli+11 \leq j \leq l_i+1) 之间有边。下面是一个长度为2的哈希戈的示例。这对应于样例输入中第一个数据集中给出的图形。

两个哈希戈 iijj 在位置 pp (0pli10 \leq p \leq l_{i}-1) 和 qq (0qlj10 \leq q \leq l_{j}-1) 处通过合并每对顶点 (vi,2p+2,vj,2q+2)(v_{i,2p+2},v_{j,2q+2})(vi,2p+3,vj,2q+4)(v_{i,2p+3},v_{j,2q+4})(vi,2p+4,vj,2q+3)(v_{i,2p+4},v_{j,2q+3})(vi,2p+5,vj,2q+5)(v_{i,2p+5},v_{j,2q+5}) 来进行组合。

Chelsea将这个操作执行 n1n-1 次,以组合这 nn 个哈希戈。在此操作之后,图形应该是连通的,并且图形的最大度数不应超过4。下面是通过组合三个哈希戈得到的图形的示例。这对应于样例输入中第二个数据集中给出的图形。

现在她决定为每个顶点选择黑色或白色,同时满足以下条件:

  • 连接顶点按相同颜色绘制时所形成的最大连通分量数小于或等于 kk

她想要尝试所有的图案并选择最好的。然而,绘制的方式数量可能非常庞大。由于她不擅长数学和计算,无法计算数量。所以请使用你的卓越编程技能帮助她!


输入

输入包含多个数据集,每个数据集的格式如下。

nn kk l0l_0 l1l_1 ... ln1l_{n-1} f0f_0 p0p_0 t0t_0 q0q_0 ... fn2f_{n-2} pn2p_{n-2} tn2t_{n-2} qn2q_{n-2}

第一行包含两个整数 nn (1n301 \leq n \leq 30) 和 kk (1k81 \leq k \leq 8)。

接下来的一行包含 nn 个整数 lil_i (1li301 \leq l_i \leq 30),表示哈希戈 ii 的长度。

接下来的 n1n-1 行,每行包含四个整数 fif_i (0fin10 \leq f_i \leq n-1),pip_i (0pilfi10 \leq p_i \leq l_{f_i}-1),tit_i (0tin10 \leq t_i \leq n-1),qiq_i (0qilti10 \leq q_i \leq l_{t_i}-1)。它表示哈希戈 fif_i 和哈希戈 tit_i 在位置 pip_i 和位置 qiq_i 处进行组合。你可以假设通过组合 nn 个哈希戈得到的图形是连通的,并且图形的每个顶点的度数都不超过4。

最后一个数据集后面是一行包含两个零。

输出

对于每个数据集,在一行中打印不同着色方案的数量,模 1,000,000,007。


样例输入


1 5
2
3 7
2 3 1
0 1 1 0
1 2 2 0
2 8
5 6
0 2 1 2
2 8
1 1
0 0 1 0
2 2
2 2
0 1 1 0
2 3
3 3
0 2 1 1
2 4
3 1
1 0 0 1
0 0

样例输入对应的输出


708
1900484
438404500
3878
496
14246
9768

资源名称

JAG Practice Contest for ACM-ICPC Asia Regional 2012