Alice 热爱披萨,并计划为她的生日举办一场披萨派对,她将为所有客人们制作一个巨大的圆形披萨。她知道她的朋友们在披萨口味上有些特别:Julie 不想吃任何蔬菜,但喜欢在披萨上加烤肉;Katy 从不吃上面有奶酪的披萨;Alice 自己是披萨上放菠萝的忠实粉丝,而 Mickey 却极其讨厌菠萝,他反而想在上面放意大利面,这让其他人觉得很奇怪。这样的例子不胜枚举。简而言之,要满足所有人是不可能的。
作为妥协,Alice 决定让每个人提前为他们的披萨切片选择两种配料。如果每个人的切片上恰好有他们选择的那两种配料,且没有其他配料,他们就会感到满意。注意,一个人可以选择相同的配料两次,这种情况下他们得到的只是双倍分量的该种配料。
图 K.1:样例输入 1 的示意图,展示了一种可能的方案中每一片披萨上的两种配料编号。注意,每种配料仅出现在披萨切片的一个连续区间内。
在派对当天,Alice 发现擀好的披萨饼皮在厨房台面上占用了太多空间,以至于她一次只能准备一种配料。为了优化工作流程并确保披萨能及时准备好,她希望每种选定的配料只取出一次,然后将其添加到一个连续的披萨切片区间上。注意,整个披萨在圆周上形成了一个连续的披萨切片序列。请确定是否可以在满足所有选定配料组合的情况下,以这种方式准备披萨。参见图 K.1 中的示例。
输入格式
输入包含:
- 一行,包含两个整数 $n$ 和 $k$ ($3 \le n, k \le 10^5$),分别表示披萨切片的数量和可能的配料数量(配料编号从 $1$ 到 $k$)。
- $n$ 行,每行包含两个整数 $a$ 和 $b$ ($1 \le a, b \le k$),描述第 $i$ 个人选择的配料。
输出格式
如果 Alice 可以为每种选定的配料选择一个连续的披萨切片区间,使得最终的披萨可以被分割成 $n$ 个满足要求的切片,则输出 “possible”。否则,输出 “impossible”。
样例
样例输入 1
7 6 2 2 3 6 1 1 1 5 4 5 6 6 6 5
样例输出 1
possible
样例输入 2
5 5 1 3 1 5 2 3 2 5 3 4
样例输出 2
possible
样例输入 3
6 7 1 2 2 3 3 4 4 5 3 6 6 7
样例输出 3
impossible