Изменения рейтингов за последние раунды временно удалены. Скоро они будут возвращены. ×

C. Аппарат Констанции
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Констанция — самая умная девушка в своей деревне, но вот зрением она не блещет.

Однажды она изобрела невероятный аппарат! Когда вы произносите букву, аппарат записывает ее на лист бумаги. Например, если вы произнесете буквы 'c', 'o', 'd' и 'e' в таком порядке, то аппарат запишет «code» на бумаге. Благодаря этому изобретению, она наконец-то может писать письма, не надевая очки.

Однако ее глупый друг Акко решил над ней подшутить. Акко испортил аппарат так, что если произнести 'w', то будет записано «uu» вместо «w», и если произнести 'm', то будет записано «nn» вместо «m». Так как зрение у Констанции довольно плохое, она не заметила, что Акко сделал.

Остальные буквы работают так же, как и прежде — если произнести любую букву, кроме 'w' и 'm', то аппарат просто запишет ее на бумаге.

На следующий день я получил письмо. Я его не смог разобрать, так что я решил, что это либо какая-то тарабарщина от Акко, либо то, что записала Констанция своим аппаратом. Но так как мне известно, что совершил Акко, мне захотелось перечислить все возможные строки, которые могли получиться в результате записи аппаратом Констанции, чтобы посмотреть, могло ли это быть посланным сообщением.

Таким образом, мне хочется узнать, сколько понадобится бумаги для этой затеи. В этом мне не помешает твоя помощь. Подскажи мне количество строк, которые аппарат Констанции мог превратить в полученное мной сообщение.

Так как данное число могло получиться довольно большим, сообщи мне остаток от его деления на $$$10^9+7$$$.

Если не существует ни одной такой строки, что аппарат Констанции мог превратить их в полученное мной сообщение, то выведите $$$0$$$.

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

В единственной строке содержится строка $$$s$$$ ($$$1 \leq |s| \leq 10^5$$$) — полученное сообщение. $$$s$$$ содержит только строчные латинские буквы.

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

Выведите одно целое число — количество строк, которые аппарат Констанции мог превратить в полученное мной сообщение $$$s$$$, по модулю $$$10^9+7$$$.

Примеры
Входные данные
ouuokarinn
Выходные данные
4
Входные данные
banana
Выходные данные
1
Входные данные
nnn
Выходные данные
3
Входные данные
amanda
Выходные данные
0
Примечание

В первом примере возможные строки: «ouuokarinn», «ouuokarim», «owokarim» и «owokarinn».

Во втором примере есть только одна строка: «banana».

В третьем примере возможные строки: «nm», «mn» и «nnn».

В последнем примере нет ни одной строки, которую аппарат бы вывел как «amanda», так как аппарат не может напечатать 'm'.