有许多岛屿被字节海洋(Byte Ocean)隔开。聪明的人们发明了飞船,使他们能够前往其他陆地。今天,数百万名推销员聚集在字节大陆(Byteland)庆祝一年一度的国际贸易节。你负责维护这里的贸易数据库。最初,数据库是空的,随后会发生 $q$ 个事件,每个事件属于以下两种类型之一:
- “1 $x$ $y$ $w$” ($1 \le x, y, w \le 10^9$):一种新商品开始销售。它来自第 $x$ 个岛屿,类型编号为 $y$,价格为 $w$。注意,不同岛屿的商品可以具有相同的类型。
- “2 $x$ $y$” ($1 \le x, y \le 10^9$):这是一个查询事件。一名来自第 $x$ 个岛屿、持有第 $y$ 种类型商品的推销员正在寻找来自其他岛屿且类型不是 $y$ 的其他商品。你需要报告满足条件的商品中价格最高者的价格。如果没有找到,请报告 “0”。这仅用于搜索,你找到的商品不会从数据库中删除。
由于字节大陆的技术水平较低,数据库的空间非常有限,但你仍然需要高效地维护它。
输入格式
输入的第一行包含一个整数 $q$ ($1 \le q \le 1\,000\,000$),表示事件的数量。 接下来的 $q$ 行,每行描述一个事件,格式如上所述,但为了强制在线处理,部分参数经过了加密。
令 $last$ 为你上一次回答的价格。注意,$last$ 在输入开始时应重置为 0。对于每次操作,$x$、$y$ 和 $w$ 均经过加密:它们的实际值分别为 $x \oplus last$、$y \oplus last$ 和 $w \oplus last$。在上述表达式中,符号 “$\oplus$” 表示按位异或运算。此外,请注意,题目描述中给出的约束仅适用于解密后的对应参数,加密后的值不受这些约束限制。
输出格式
对于每个查询,输出一行,包含一个整数,表示你找到的商品价格;如果没有找到,则输出 0。
样例
输入 1
5 1 2 3 1 1 4 5 2 2 2 2 2 3 7 2 3 4
输出 1
2 1 0