У Монокарпа есть строка $$$s$$$ длины $$$n$$$, состоящая из строчных букв латинского алфавита.
Он хочет разделить свою строку на части, причем должны выполняться следующие условия:
Перед вами стоит задача определить количество способов разделить строку $$$s$$$ на части таким образом, чтобы выполнялись все описанные условия. Так как ответ может быть достаточно большим, выведите его по модулю $$$1\,000\,000\,007$$$.
В первой строке следует целое число $$$n$$$ ($$$2 \le n \le 200\,000$$$) — количество букв в строке Монокарпа.
Во второй строке следует строка $$$s$$$ длины $$$n$$$, состоящая из строчных букв латинского алфавита.
Выведите количество способов разделить строку $$$s$$$ на части таким образом, чтобы выполнялись все описанные условия. Так как ответ может быть достаточно большим, выведите его по модулю $$$1\,000\,000\,007$$$.
6rbbbrr
2
6vkosph
1
3abc
0
18aaabbbcccbbddaaaba
12
В первом примере есть два способа разделения: [rb, bbrr] и [rbb, brr].
Во втором примере есть один способ разделения: [vk, os, ph].
В третьем примере нет ни одного подходящего способа разделения.
| Name |
|---|


