Волшебные замки

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Ньюту нужно открыть дверь, запертую на несколько волшебных замков. Каждый замок представляет из себя поле n_i×m_in\_i \times m\_i клеток, в каждой из которых написана одна латинская буква. Циклом на клетчатом поле называется последовательность клеток, в которой каждая пара соседних клеток (в том числе, первая и последняя) имеют общую сторону. Простым циклом называется цикл, который не содержит ни одну клетку дважды. Два цикла пересекаются, если они оба содержат одну и ту же клетку. Чтобы открыть замок, нужно выделить на поле какое-то максимальное возможное количество непересекающихся простых циклов, каждый из которых проходит по клеткам, на которых написана одинаковая буква.

Ньют не знает, сколько циклов он должен выделить, и сколько вариантов ему придется перебрать. Помогите Ньюту: определите максимальное количество таких циклов для каждого замка, а также количество различных способов выделить максимальное количество таких циклов, либо сообщите, что количество способов превышает 101810^{18}. Два способа являются различными, если в одном из них две клетки принадлежат одному циклу, а в другом --- нет.

입력

Первая строка входных данных содержит единственное целое число tt --- количество замков (1t201 \le t \le 20).

Далее дано описание tt замков. Описание каждого замка начинается со строки, в которой содержится два целых числа n_in\_i и m_im\_i --- размеры ii-го поля (1n_im_i1601 \le n\_i \cdot m\_i \le 160). В следующих n_in\_i строках содержится по m_im\_i строчных латинских букв --- ii-е поле.

출력

Для каждого замка выведите в отдельной строке два целых числа --- максимальное количество простых непересекающихся циклов, проходящих по клеткам с одинаковой буквой, которые можно выделить на поле ii-го замка, и количество способов это сделать. Если количество способов строго больше 101810^{18}, выведите вместо этого 1-1.

힌트

Все варианты выделения одного цикла в первом тесте:

Единственный способ выделить два цикла во втором тесте: