D. Робот в лабиринте
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
128 мегабайт
ввод
input.txt
вывод
output.txt

В детстве я любил роботов и лабиринты. Я строил лабиринты из кубиков и запускал в них роботов. Для каждого робота я составлял программу путешествия: это была строчка букв «Л», «П», «В» и «Н», которые обозначали соответственно шаги влево, вправо, вверх и вниз в некоторой дискретной системе координат с квадратами размером в один кубик. Жаль, мои роботы были игрушечные и мне приходилось исполнять эти программы за них. Я называл программу корректной, если она не приводила к врезанию в стену или выходу за пределы лабиринта. Как-то раз я построил очередной лабиринт, поместил в него робота и задумался, сколько всего существует корректных программ, которые приведут этого робота на его изначальное место. Я быстро догадался, что их бесконечно много. Стоило бы на этом остановиться, но я задумался, сколько корректных программ, не превышающих длины $$$l$$$, оставят робота на месте. Именно такую задачу вам и придётся сейчас решить. Лабиринт представляет собой прямоугольное поле размером $$$n$$$ на $$$m$$$ квадратов. Каждый квадрат может быть либо стеной, либо проходом.

Повзрослевший Автор

P. S. Интересно, в какие игры вы играли в детстве.

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

В первой строке входного файла содержатся три целых числа: $$$n$$$, $$$m$$$ и $$$l$$$ ($$$1 \le n, m \le 100, 1 \le l \le 30$$$) — размеры лабиринта и максимальное количество команд в программе. Далее в $$$n$$$ строках содержатся по $$$m$$$ символов — карта лабиринта. Символы имеют следующее значение:

  • «.» — проход;
  • «=» — стена;
  • «*» — начальное положение робота.

Гарантируется, что на карте имеется единственное начальное положение робота.

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

В единственной строке выходного файла должно быть записано единственное целое число — количество программ из не более $$$l$$$ команд, которые возвращают робота на исходную позицию. Пустая программа программой не считается.

Примеры
Входные данные
3 5 3
=====
=.*.=
=.===
Выходные данные
2
Входные данные
4 5 4
..=..
..=..
=.*.=
=...=
Выходные данные
22
Примечание

Во втором примере искомые программы: ЛП, ПЛ, НВ, ЛВНП, ЛНПВ, ЛНВП, ЛПЛП, ЛППЛ, ЛПНВ, ПВНЛ, ПНЛВ, ПНВЛ, ПЛПЛ, ПЛЛП, ПЛНВ, НЛВП, НЛПВ, НПВЛ, НПЛВ, НВЛП, НВПЛ, НВНВ.