H. Подматрицы
ограничение по времени на тест
3.5 секунд
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам дана матрица $$$s$$$, содержащая $$$n$$$ строк и $$$m$$$ столбцов. Каждый элемент матрицы представляет собой одну из первых $$$5$$$ латинских букв (в верхнем регистре).

Для каждого $$$k$$$ ($$$1 \le k \le 5$$$) посчитайте количество подматриц, содержащих ровно $$$k$$$ различных букв. Напомним, что подматрица матрицы $$$s$$$ — это матрица, которую можно получить из $$$s$$$ после удаления нескольких (возможно, нуля) первых строк, нескольких (возможно, нуля) последних строк, нескольких (возможно, нуля) первых столбцов и нескольких (возможно, нуля) последних столбцов. Если некоторая подматрица может быть получена из $$$s$$$ двумя или более способами, вы должны учесть эту подматрицу соответствующее количество раз.

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

Первая строка содержит два целых числа $$$n$$$ и $$$m$$$ ($$$1 \le n, m \le 800$$$).

Затем следует $$$n$$$ строк, каждая из которых содержит строку $$$s_i$$$ ($$$|s_i| = m$$$) — $$$i$$$-я строка матрицы.

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

Для каждого $$$k$$$ ($$$1 \le k \le 5$$$) выведите одно целое число — количество подматриц, содержащих ровно $$$k$$$ различных букв.

Примеры
Входные данные
2 3
ABB
ABA
Выходные данные
9 9 0 0 0 
Входные данные
6 6
EDCECE
EDDCEB
ACCECC
BAEEDC
DDDDEC
DDAEAD
Выходные данные
56 94 131 103 57 
Входные данные
3 10
AEAAEEEEEC
CEEAAEEEEE
CEEEEAACAA
Выходные данные
78 153 99 0 0