International Corporation for Protection and Control (ICPC) phát triển công nghệ hiệu quả để, đúng vậy, bảo vệ và kiểm soát. Đương nhiên, họ rất muốn trụ sở của chính mình được bảo vệ và kiểm soát. Nhìn từ trên xuống, tòa nhà trụ sở có hình dạng một đa giác lồi. Có một số vị trí thích hợp xung quanh tòa nhà để lắp đặt camera giám sát. Mỗi camera bao phủ một đoạn các cạnh của đa giác (các bức tường của tòa nhà), tùy theo vị trí của nó. ICPC muốn giảm thiểu số camera cần thiết để bao phủ toàn bộ tòa nhà.
Dữ liệu vào
Dữ liệu vào gồm một bộ kiểm thử duy nhất. Dòng đầu chứa hai số nguyên $n$ và $k$ ($3 \le n \le 10^6$ và $1 \le k \le 10^6$), trong đó $n$ là số bức tường và $k$ là số vị trí có thể lắp camera. Mỗi dòng trong $k$ dòng còn lại chứa hai số nguyên $a_i$ và $b_i$ ($1 \le a_i, b_i \le n$). Các số nguyên này xác định những bức tường mà camera ở vị trí thứ $i$ sẽ bao phủ. Nếu $a_i \le b_i$, camera bao phủ mọi bức tường $j$ thỏa mãn $a_i \le j \le b_i$. Nếu $a_i > b_i$, camera bao phủ mọi bức tường $j$ thỏa mãn $a_i \le j \le n$ hoặc $1 \le j \le b_i$.
Dữ liệu ra
In ra số camera ít nhất đủ để bao phủ mọi bức tường của tòa nhà. Phạm vi bao phủ của hai camera có thể chồng lên nhau. Nếu không thể bao phủ toàn bộ tòa nhà, hãy in impossible.
Ví dụ
Dữ liệu vào 1
100 7 1 50 50 70 70 90 90 40 20 60 60 80 80 20
Dữ liệu ra 1
3
Dữ liệu vào 2
8 2 8 3 5 7
Dữ liệu ra 2
impossible
Dữ liệu vào 3
8 2 8 4 5 7
Dữ liệu ra 3
2