G. Двигаем доминошки
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Билл любит играть с доминошками. Он взял доску размера $$$n \times m$$$, разделённую на одинаковые квадратные клетки, и покрыл её доминошками. Каждая доминошка покрывает две клетки, соседние по горизонтали или вертикали, и каждая клетка покрыта ровно одной половиной доминошки (то есть, непокрытых клеток нет, и никакие две доминошки не покрывают одну клетку дважды).

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

После удаления доминошки и нескольких сдвигов (возможно, ни одного), Билл фотографирует получившуюся доску. Однако, Билл использует очень много фильтров, поэтому границы доминошек разглядеть нельзя, и можно увидеть лишь то, какие две клетки на доске свободны. Когда Билл выкладывает фотографию, он возвращает доску в исходное положение и начинает заново.

Билл хочет выложить как можно больше фотографий, но он не будет выкладывать одну и ту же фотографию дважды. Сколько различных фотографий он сможет сделать? Напомним, что фотографии различны, если различны пары свободных клеток на них.

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

В первой строке записано два положительных целых числа $$$n$$$ и $$$m$$$ ($$$nm \leq 2 \cdot 10^5$$$) — высота и ширина доски соответственно.

Следующие $$$n$$$ строк описывают покрытие доски доминошками, ряд за рядом сверху вниз. Каждая из этих строк содержит $$$m$$$ символов, описывающие клетки в соответствующем ряду слева направо. Каждая символ равен U, D, L или R, если клетка покрыта верхней, нижней, левой или правой половиной доминошки соответственно.

Гарантируется, что данное покрытие корректно, то есть, у каждой половины доминошки есть вторая половина в нужной позиции. В частности, поскольку покрытие возможно, количество клеток на доске чётно.

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

Выведите одно число — количество различных фотографий, которые сможет сделать Билл.

Примеры
Входные данные
2 4
UUUU
DDDD
Выходные данные
4
Входные данные
2 3
ULR
DLR
Выходные данные
6
Входные данные
6 6
ULRUUU
DUUDDD
UDDLRU
DLRLRD
ULRULR
DLRDLR
Выходные данные
133
Примечание

В первом примере после удаления любой доминошки нельзя сделать ни одного сдвига, поэтому различных фотографий четыре.

Во втором примере после удаления самой левой доминошки можно сделать четыре фотографии, поскольку можно независимо двигать/не двигать оставшиеся две доминошки. Две другие фотографии можно сделать, если удалить одну из доминошек справа.