승연이 quiere plantar árboles. Para ello, elegirá algunas celdas en una cuadrícula infinita y plantará semillas. Las semillas tienen un poder misterioso: bajo la influencia de las semillas vecinas, crecen como manzanos o melocotoneros.
El árbol que resulta de una semilla sigue la siguiente regla. Si dos celdas que comparten un lado tienen semillas, se dice que esas dos semillas son adyacentes. Una semilla con un número par de semillas adyacentes se convierte en manzano. Por el contrario, una semilla con un número impar de semillas adyacentes se convierte en melocotonero.
Supongamos que 승연이 plantó $5$ semillas como se muestra arriba. Las semillas adyacentes entre sí se muestran con flechas azules. La semilla del centro tiene $3$ semillas adyacentes, por lo que se convierte en melocotonero.
Como resultado, se obtienen $3$ manzanos y $2$ melocotoneros, como se muestra arriba.
Al plantar las semillas, todas deben estar conectadas en la cuadrícula. Es decir, para cualquier par de semillas, debe ser posible moverse entre ellas pasando solo por semillas adyacentes. Por ejemplo, la siguiente disposición no es posible.
승현이 quiere plantar $A$ manzanos y $B$ melocotoneros. Determina si es posible y, si lo es, imprime una disposición de los árboles.
Entrada
La primera línea contiene dos enteros no negativos $A$ y $B$ separados por un espacio. ($A \geq 0$; $B \geq 0$; $1 \le A+B \le 200$)
Salida
La primera línea debe contener YES si es posible, o NO en caso contrario.
Si es posible, la segunda línea debe contener el número de filas $R$ y columnas $C$ separados por un espacio. ($1 \le R,C \le 200$)
Las siguientes $R$ líneas deben contener, cada una, $C$ caracteres sin espacios. Cada carácter debe ser O o ., donde O indica una celda con semilla y . una celda sin semilla.
Ejemplos
Entrada 1
3 2
Salida 1
YES 3 3 .OO OOO ...
Entrada 2
1 0
Salida 2
YES 1 1 O
Entrada 3
7 0
Salida 3
YES 3 3 .OO OOO OO.
Entrada 4
8 0
Salida 4
YES 4 4 .... .OOO .O.O .OOO
Entrada 5
9 0
Salida 5
NO
Entrada 6
0 7
Salida 6
NO