E. Пилюли
ограничение по времени на тест
1.5 seconds
ограничение по памяти на тест
256 megabytes
ввод
stdin
вывод
stdout

Доктор прописал своему пациенту лекарство. Лекарство имеет вид пилюль, каждая из которых состоит из оболочки и целебного порошка. Оболочка состоит из двух половинок, каждая из которых имеет один из четырех цветов — синий, красный, белый или желтый.

Доктор хочет сложить 28 пилюль в прямоугольную коробочку размера 7 × 8. При этом каждая пилюля занимает ровно две соседние ячейки, а в любой ячейке находится ровно одна из половин пилюли. Таким образом, получается четырехцветная картинка размера 7 × 8.

Доктор полагает, что пациент скорее выздоровеет, если картинка, получаемая из пилюль, будет особенной. К сожалению, это не такая простая задача расположить пилюли в коробочке таким образом, чтобы получилась требуемая картинка. Поэтому доктор обратился к вам за помощью.

У доктора имеется некоторый запас пилюль каждого из 10 типов раскраски. Лекарство внутри них одинаковое, поэтому не имеет значения, какие 28 из них будут находиться в коробочке.

Расположите пилюли в коробочке так, чтобы получилась требуемая картинка. Если расположить пилюли требуемым образом невозможно, то расположите их таким образом, чтобы количество совпадений цветов по всем 56 ячейкам в итоговой расстановке и картинке доктора было наибольшим.

Входные данные

Первые 7 строк содержат картинку доктора. Каждая из этих строк состоит из 8 символов, каждый из которых может быть «B», «R», «W» и «Y» для синего, красного, белого и желтого цветов соответственно.

В следующих четырех строках находятся 10 чисел, которые означают, соответственно, количество пилюль раскрасок:

«BY» «BW» «BR» «BB»

«RY» «RW» «RR»

«WY» «WW»

«YY»

Эти числа лежат в пределах от 0 до 28 включительно. Гарантируется, что общее количество пилюль не меньше 28.

Выходные данные

В первой строке выведите наибольшее количество ячеек, для которых цвет совпадает.

Далее выведите 13 строк по 15 символов в каждой — расположение пилюль в наилучшей расстановке. На пересечениях нечетных строк и нечетных столбцов должны располагаться символы «B», «R», «W» и «Y». На всех остальных позициях должны быть символы «.», «-» и «|». Используйте «-» и «|» для того, чтобы показать, какие половинки оболочки связаны в единую пилюлю. Смотрите примеры для более ясного понимания.

Если возможных решений несколько — выведите любое.

Примеры
Входные данные
WWWBBWWW
WWWBBWWW
YYWBBWWW
YYWBBWRR
YYWBBWRR
YYWBBWRR
YYWBBWRR
0 0 0 8
0 1 5
1 10
5
Выходные данные
53
W.W.W.B.B.W.W.W
|.|.|.|.|.|.|.|
W.W.W.B.B.W.W.W
...............
Y.Y.W.B.B.W.W-W
|.|.|.|.|.|....
Y.Y.W.B.B.W.R.R
............|.|
Y.Y.W.B.B.R.R.R
|.|.|.|.|.|....
Y.Y.W.B.B.W.R.R
............|.|
Y-Y.B-B.B-B.R.R
Входные данные
WWWWWWWW
WBYWRBBY
BRYRBWYY
WWBRYWBB
BWWRWBYW
RBWRBWYY
WWWWWWWW
0 0 0 1
0 0 1
0 1
25
Выходные данные
15
W.Y.Y-Y.Y-Y.Y-Y
|.|............
W.Y.Y.Y.Y.B-B.Y
....|.|.|.....|
Y-Y.Y.Y.Y.Y-Y.Y
...............
Y.Y.Y.R.Y.Y.Y-Y
|.|.|.|.|.|....
Y.Y.Y.R.Y.Y.Y.Y
............|.|
Y-Y.Y.Y-Y.Y.Y.Y
....|.....|....
Y-Y.Y.Y-Y.Y.Y-Y