#arc048b. [arc048_b]AtCoderでじゃんけんを

[arc048_b]AtCoderでじゃんけんを

问题

AtCoder剪刀石头布比赛正在进行中。AtCoder剪刀石头布是一种由两名参与者进行的游戏,规则如下:

  • 首先,两名参与者各自独立地出示剪刀、石头或布中的一种手势。
  • 如果两名AtCoder的等级不相等,则等级高的参与者获胜。
  • 如果两名AtCoder的等级相等,并且他们出示的手势不同,则按照常规剪刀石头布的规则确定胜利者。
  • 如果两名AtCoder的等级相等,并且他们出示的手势相同,则判定为平局。

比赛中有N名参与者,每位参与者与其他N-1名参与者进行了正好1次AtCoder剪刀石头布的对决。

给定每个参与者的等级和手势,请回答每位参与者在比赛结束时的胜利、失败和平局次数。

请注意,在常规剪刀石头布中,石头战胜剪刀,剪刀战胜布,布战胜石头。


输入

输入通过标准输入给出,具体格式如下:

NN

R1R_1 H1H_1

...

RNR_N HNH_N

  • 第1行包含一个整数N(1N1000001 \leq N \leq 100000)表示参与者的数量。
  • 接下来的N行,每行包含两个整数RiR_iHiH_i1Ri100000,1Hi31 \leq R_i \leq 100000, 1 \leq H_i \leq 3),以空格分隔。表示第i位参与者的等级为RiR_i,手势为1表示剪刀,为2表示石头,为3表示布。

输出

  • 输出包含N行。
  • 在第i行输出第i位参与者的胜利次数、失败次数和平局次数,以空格分隔。

输出最后不要忘记换行符。


示例1

6
2 1
2 2
3 2
5 3
2 2
3 3

输出示例1


2 3 0
0 4 1
4 1 0
5 0 0
0 4 1
3 2 0

胜负记录如下图所示:

图1:胜负记录表


示例2


2
1999 3
2000 1

输出示例2


0 1 0
1 0 0

没有仁慈可言。


示例3


8
3200 2
2800 3
2800 2
2700 1
2800 2
3200 1
2700 1
3200 3

输出示例3


6 1 0
2 5 0
3 3 1
0 6 1
3 3 1
6 1 0
0 6 1
6 1 0