管理動物園嗰陣,你有時會想將動物搬去唔同嘅圍欄。你可能發現,斑馬會鍾意企鵝依家住緊嗰個較闊落嘅圍欄,而企鵝可能想搬去樹熊依家住緊嗰個較凍嘅圍欄;樹熊就搬去一個可以放滿桉樹葉嘅空圍欄。所以你會先搬樹熊,騰空較凍嘅圍欄,跟住搬企鵝入去,最後搬斑馬。
搬動物嘅方法係用連接圍欄嘅特別隧道——你唔想動物行出外面,一來怕佢哋受驚,二來怕佢哋走甩而整親。
一張動物園相片,入面有一隻駱駝、一隻驢仔,同埋(一部分)一隻山羊。
可惜,你最近接收咗更多動物,依家所有圍欄都滿晒,令搬動物難咗好多。例如,假設樹熊要搬去原本斑馬嘅圍欄——你就冇辦法先搬任何一群動物。於是你學識同時搬動物:斑馬、樹熊同企鵝同一時間入唔同隧道,亦同一時間到達新圍欄,咁佢哋就永遠唔會相遇。注意,你唔可以用呢個方法直接交換兩個相連圍欄嘅動物(因為佢哋會喺隧道相遇,受到驚嚇)。
所以,依家你有一個難題。你有一份圍欄清單,每個圍欄入面都有一種動物;當中有啲圍欄用隧道連住。你可以做任意多次操作,每次揀一啲動物,將每群搬去由隧道相鄰嘅圍欄,但嗰個圍欄嘅動物亦一定要喺同一次操作入面搬走,而且每條隧道喺同一次操作入面最多只可以用一次。你亦有心目中最理想嘅動物擺位。可唔可以透過一連串操作做到呢?
輸入格式
輸入第一行有兩個整數 $n$($1 \le n \le 4 \cdot 10^5$)同 $m$($0 \le m \le 4 \cdot 10^5$),分別係圍欄同隧道嘅數量。跟住有 $n$ 行,第 $i$ 行有兩個整數 $b_i$($1 \le b_i \le 10^6$)同 $e_i$($1 \le e \le 10^6$),表示圍欄 $i$ 最初嘅動物種類,同埋你希望所有操作之後圍欄 $i$ 入面嘅動物種類。你可以假設 $e_1, \ldots, e_n$ 係 $b_1, \ldots, b_n$ 嘅一個排列。
跟住 $m$ 行描述隧道。每行有兩個整數 $x$ 同 $y$($1 \le x < y \le n$),表示圍欄 $x$ 同 $y$ 之間有一條雙向隧道。任何兩個圍欄之間都唔會有多過一條隧道。
輸出格式
如果可以搬啲動物,令每個圍欄都有所需嘅動物種類,就輸出 possible。否則輸出 impossible。
例子
輸入格式 1
3 3 1 4 4 7 7 1 1 2 2 3 1 3
輸出格式 1
possible
輸入格式 2
2 1 1 2 2 1 1 2
輸出格式 2
impossible
輸入格式 3
5 6 10 40 20 30 30 50 40 20 50 10 1 2 2 3 1 3 3 4 3 5 4 5
輸出格式 3
possible
輸入格式 4
4 4 10 10 10 20 20 10 20 20 1 2 2 3 3 4 1 4
輸出格式 4
impossible