Вам дано рядок , який складається з маленьких латинських літер. Ваше завдання — знайти кількість гарних непорожніх підпослідовностей цього рядка.
Підпослідовність називається гарною, якщо кожна її непорожня підпослідовність є паліндромом.
Дві підпослідовності вважаються різними, якщо вони отримані видаленням символів за різними індексами. Тобто навіть якщо рядки підпослідовностей співпадають, але індекси видалених символів різні, такі підпослідовності вважаються різними.
У першому рядку міститься рядок (1 \leq |s| \leq 10^5), усі символи якого — маленькі латинські літери.
Виведіть одне ціле число — кількість гарних непорожніх підпослідовностей рядка по модулю 10^9+7 ().
Приклад 1
Приклад 2
У першому прикладі є 4 гарні підпослідовності: "a", "b", "c", "d".