International Corporation for Protection and Control (ICPC) desarrolla tecnología eficiente para, bueno, la protección y el control. Naturalmente, les interesa que su propia sede esté protegida y controlada. Vista desde arriba, la sede tiene forma de polígono convexo. A su alrededor hay varios lugares adecuados donde se pueden instalar cámaras para vigilar el edificio. Cada cámara cubre un cierto intervalo de lados del polígono (paredes del edificio), según su posición. ICPC quiere minimizar el número de cámaras necesarias para cubrir todo el edificio.
Entrada
La entrada consta de un único caso de prueba. Su primera línea contiene dos enteros $n$ y $k$ ($3 \le n \le 10^6$ y $1 \le k \le 10^6$), donde $n$ es el número de paredes y $k$ es el número de posibles lugares para instalar cámaras. Cada una de las $k$ líneas restantes contiene dos enteros $a_i$ y $b_i$ ($1 \le a_i, b_i \le n$). Estos enteros indican qué paredes cubriría una cámara en el lugar $i$. Si $a_i \le b_i$, la cámara cubre cada pared $j$ tal que $a_i \le j \le b_i$. Si $a_i > b_i$, la cámara cubre cada pared $j$ tal que $a_i \le j \le n$ o $1 \le j \le b_i$.
Salida
Muestra el número mínimo de cámaras que bastan para cubrir todas las paredes del edificio. Los intervalos cubiertos por dos cámaras pueden solaparse. Si no se puede cubrir el edificio, muestra impossible en su lugar.
Ejemplos
Entrada 1
100 7 1 50 50 70 70 90 90 40 20 60 60 80 80 20
Salida 1
3
Entrada 2
8 2 8 3 5 7
Salida 2
impossible
Entrada 3
8 2 8 4 5 7
Salida 3
2