คณะกรรมการโอลิมปิกวิชาการสาขาวิชาคอมพิวเตอร์แห่งประเทศญี่ปุ่น ได้ตัดสินใจทำโปสเตอร์เพื่อประชาสัมพันธ์ค่ายฝึกอบรมของการแข่งขันคอมพิวเตอร์โอลิมปิกแห่งประเทศญี่ปุ่น (JOI) ในปีนี้ จึงได้สร้างโปสเตอร์ที่มีลวดลายมาจากโลโก้ของ JOI ขึ้น

บนโปสเตอร์จะพิมพ์ตัวอักษรภาษาอังกฤษจำนวน $2^N \times 2^N$ ตัวในรูปสี่เหลี่ยมจัตุรัส
เมื่อ $N \ge 1$ จะแบ่งรูปสี่เหลี่ยมจัตุรัสขนาด $2^N \times 2^N$ ออกเป็นรูปสี่เหลี่ยมจัตุรัสขนาด $2^{N-1} \times 2^{N-1}$ จำนวน $4$ รูป โดยพิมพ์ตัวอักษร J ลงในรูปสี่เหลี่ยมจัตุรัสมุมบนซ้าย พิมพ์ตัวอักษร O ลงในรูปสี่เหลี่ยมจัตุรัสมุมบนขวา และพิมพ์ตัวอักษร I ลงในรูปสี่เหลี่ยมจัตุรัสมุมล่างซ้าย นอกจากนี้ ในรูปสี่เหลี่ยมจัตุรัสมุมล่างขวาจะพิมพ์โปสเตอร์ขนาด $2^{N-1} \times 2^{N-1}$ ลงไป เมื่อ $N = 0$ จะพิมพ์โปสเตอร์ขนาด $1 \times 1$ ที่ประกอบด้วยตัวอักษร J เพียงตัวเดียว
ด้านล่างนี้แสดงตัวอักษรที่พิมพ์ลงบนโปสเตอร์ขนาด $8 \times 8$ ในกรณีที่ $N = 3$
JJJJOOOO JJJJOOOO JJJJOOOO JJJJOOOO IIIIJJOO IIIIJJOO IIIIIIJO IIIIIIIJ
ทว่ากลับพบข้อผิดพลาดจากการพิมพ์ในแถวที่ $K$ ของโปสเตอร์ที่ทำเสร็จแล้ว
ค่ายฝึกอบรมของการแข่งขันคอมพิวเตอร์โอลิมปิกแห่งประเทศญี่ปุ่นในปีนี้ได้เริ่มต้นขึ้นแล้ว จึงมีเวลาไม่เพียงพอที่จะจ้างโรงพิมพ์ให้พิมพ์โปสเตอร์ใหม่อีกครั้ง ดังนั้นจึงตัดสินใจแก้ไขปัญหาด้วยการนำแถวที่ $K$ ที่ถูกต้องมาแปะทับลงบนโปสเตอร์
งานของคุณ
จงเขียนโปรแกรมที่รับจำนวนเต็ม $N$ และ $K$ เป็นข้อมูลนำเข้า แล้วแสดงแถวที่ $K$ ของโปสเตอร์ขนาด $2^N \times 2^N$ ออกมา
ข้อจำกัด
- $0 \le N \le 20$: ขนาดของโปสเตอร์
- $1 \le K \le 2^N$: แถวของโปสเตอร์ที่ต้องการให้แสดงผล
ข้อมูลนำเข้า
ให้อ่านข้อมูลต่อไปนี้จากอินพุตมาตรฐาน ข้อมูลนำเข้าประกอบด้วยบรรทัดเดียวซึ่งมีจำนวนเต็ม $N$ ที่แทนขนาดของโปสเตอร์ และจำนวนเต็ม $K$ ที่แทนแถวที่ต้องการให้แสดงผล คั่นด้วยช่องว่าง
ข้อมูลส่งออก
ให้แสดงผลออกทางเอาต์พุตมาตรฐานเป็นบรรทัดเดียว คือแถวที่ $K$ ของโปสเตอร์ขนาด $2^N \times 2^N$
เกณฑ์การให้คะแนน
ในกลุ่มข้อมูลทดสอบคิดเป็น $50$ คะแนน $N$ จะมีค่าไม่เกิน $10$
ตัวอย่าง
ข้อมูลนำเข้า 1
1 1
ข้อมูลส่งออก 1
JO
ข้อมูลนำเข้า 2
2 4
ข้อมูลส่งออก 2
IIIJ
ข้อมูลนำเข้า 3
3 7
ข้อมูลส่งออก 3
IIIIIIJO