911.D. Seating Arrangement for the Exam
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

An important exam is coming up, which will be taken by $$$n$$$ students. All students will be seated in one classroom, which has $$$n$$$ desks. Each student and desk is numbered from $$$1$$$ to $$$n$$$. In total, the students will take $$$m$$$ exams. You have been tasked with preparing a seating arrangement plan for each exam, satisfying the following conditions:

  1. On any given day, all students must sit at different desks, meaning that exactly one desk should be assigned to each student.
  2. Each time, the students must sit differently, meaning that there should not be two days where the seating arrangement plans are completely identical.
  3. No student should sit at the same desk for consecutive exams.

The seating arrangement plan for one exam is represented by $$$n$$$ integers $$$a_1, a_2, \dots, a_n$$$ $$$(1 \le a_i \le n)$$$, which means that the $$$1$$$st student should sit at desk $$$a_1$$$, the $$$2$$$nd student should sit at desk $$$a_2$$$, and so on, until the $$$n$$$th student sits at desk $$$a_n$$$.

Input

The input consists of a single line containing two integers $$$n$$$ and $$$m$$$ $$$(1 \le n,m \le 10^3)$$$.

Output

If it is not possible to satisfy the requirements, output «IMPOSSIBLE» on the first line. Otherwise, output «POSSIBLE» on the first line, followed by $$$m$$$ lines, each containing $$$n$$$ integers representing the seating arrangement for each exam.

Examples
Input
6 3
Output
POSSIBLE
1 2 3 4 5 6
6 5 4 3 2 1
1 3 2 5 6 4
Input
4 30
Output
IMPOSSIBLE