#SDNU1235. 及及debug之初出茅庐

及及debug之初出茅庐

Description

及及是热爱写代码,可是因为他太菜了每次出现很多bug,于是他每天都debug到很晚而且很累很累。 某一天在他结束了一天debug之后倒头就睡,当他醒来的时候发现自己置身一个bug世界,bug世界有p×qp \times q(ppqq列)个格子组成,有nn个bug分布在这p×qp \times q个格子中。 可是及及好累(cai)啊,他这次不能解决这些bug了,于是他想到来标记这些bug,在每个格子中填入一个数字来代表周围88个格子中bug的个数,及及觉得这个任务太简(kun)单(nan)了,于是让你来做,你能帮他标记好bug,然后将bug提示不为0的坐标和bug提示以及bug的位置告诉及及吗?(具体看下面的解释)

Format

Input

输入包含多组测试样例。 每组测试样例: 第一行一个整数 n(0n1000)n (0 \leq n \leq 1000) 代表bug的个数。 第二行两个整数 p,q(0p,q10000000000)p ,q (0 \leq p, q \leq 10000000000) 代表bug世界的大小。 接下来 nn 行每行两个整数 Xi,Yi(0Xi<p,0Yi<q)X_i,Y_i (0 \leq X_i < p, 0 \leq Y_i < q)代表bug的位置。

Output

对每组样例: 第一行输出“CaseCase #xx:”其中xx代表当前为第几组测试样例。 接下来输出提示部分,每一行三个整数 (先按提示大小降序然后再按行坐标升序最后按列坐标升序排列) 提示的行坐标 提示的列坐标 提示大小 例如:1 2 1 接下来输出bug部分,每一行两个整数 (先按行坐标升序再按列坐标升序排列) bug的行坐标 bug的列坐标 例如:1 1

bug周围的bug不需要在提示中输出。 每组测试样例之间用一个空行隔开。

Samples

1
9 9
0 0
Case #1:
0 1 1
1 0 1
1 1 1
0 0