You are given two integers and . We define an operation on a binary matrix as follows:
Construct an matrix such that:
It has cells containing s and the rest cells contain s.
All the s remain connected if operation is performed. We call two cells and connected if the cell can be reached from by only traversing through the neighboring cells that are . Here, two cells are considered to be neighbors if and only if they share a side.
Or report if it is impossible.
The first and only line of the input contains two integers and .
In the first line, print "NO" if the construction is impossible to achieve.
Otherwise, print "YES" in the first line, and in the next lines, print an binary matrix that satisfies the constraints. If there are multiple such valid matrices, print any of them.
YES 11 11
YES 111111 011001 001111 111011 111111 000000
Note that, sharing a corner does not make two cells neighbors.