2017 高可信软件夏令营上机测试

G. OIOIOI

单点时限: 2.0 sec

内存限制: 256 MB

在刚刚结束(?)的 SHOI2017 上,上海的 OI 选手们全力以赴,打出 GG(?)。赛后,选手们谈笑风生,发明了一种新的游戏。

现有一个长方形棋盘格,在每个格子中填入 OI/。大家寻找在行中、列中或对角线方向(所以总共是八个方向)连续出现的 O/I。例如下面的示例中共含有 8 个 O/I

OOOOO
O///O
O/I/O
O///O
OOOOO

为了提高这种游戏的难度,棋盘格中共含有多少个 O/I 是预先规定的。要让选手们构造一个棋盘,满足:长和宽都不超过 (D),且恰好出现了 (N) 个 O/I

输入格式

一行两个整数,分别为 (D) 和 (N),(0 \leq N \leq 287)。

保证有解。

对于 20% 的数据,满足 $D = 50$。

对于剩下的数据,$D = 15$。

输出格式

输出 (R) 行 (C) 列的一个字符矩阵(其中 (R) 和 (C) 可以自定义,只要在 (1) 和 (D) 的范围内)。这个字符矩阵应满足上述条件。

如果有多解,输出任意一解。

样例

Input
15 8
Output
OOOOO
O///O
O/I/O
O///O
OOOOO