E. Биты старой Англии
ограничение по времени на тест
2 seconds
ограничение по памяти на тест
256 megabytes
ввод
стандартный ввод
вывод
стандартный вывод

Еще одна характерная черта языка Shakespeare — то, что переменные называются именами персонажей пьес Шекспира, а все действия над ними (изменение значений, вывод на печать и так далее) производятся в виде диалога с другими персонажами. Кроме того, новые значения переменных задаются довольно громоздко, поэтому их использование обычно стараются свести к минимуму.

Нам нужно вывести на печать заданную последовательность n натуральных чисел. Для этого у нас есть m персонажей-переменных и два вида действий над ними:

  • variable=integer
  • print(variable)

В качестве variable может выступать любая из m переменных. Переменные обозначаются строчными латинскими буквами от «a» до «z» включительно. В качестве integer может выступать любое натуральное число.

Будем считать штрафом за использование первого типа действия количество установленных бит в числе integer. Штраф за использование второго типа действия — 0. Найдите и выведите программу, в которой суммарный штраф будет минимален.

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

В первой строке записаны целые числа n и m (1 ≤ n ≤ 250, 1 ≤ m ≤ 26). Вторая строка содержит последовательность чисел для вывода. Все ее элементы — натуральные числа от 1 до 109, включительно. Последовательность надо выводить в заданном порядке (слева направо).

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

Выведите количество строк и цену в оптимальной программе. Далее выведите саму программу, по одной команде на строку. Если таких программ несколько, то выведите любую (надо минимизировать только цену).

Примеры
Входные данные
7 2
1 2 2 4 2 1 2
Выходные данные
11 4
b=1
print(b)
a=2
print(a)
print(a)
b=4
print(b)
print(a)
b=1
print(b)
print(a)
Входные данные
6 3
1 2 3 1 2 3
Выходные данные
9 4
c=1
print(c)
b=2
print(b)
a=3
print(a)
print(c)
print(b)
print(a)