Codeforces Round 411 (Div. 1)
B
Minimum number of steps
Codeforces
1400
原题
← AC →
翻译中…

We have a string of letters 'a' and 'b'. We want to perform some operations on it. On each step we choose one of substrings "ab" in the string and replace it with the string "bba". If we have no "ab" as a substring, our job is done. Print the minimum number of steps we should perform to make our job done modulo $10^{9} + 7$.

翻译中…

The string "ab" appears as a substring if there is a letter 'b' right after the letter 'a' somewhere in the string.

翻译中…

Input

翻译中…

The first line contains the initial string consisting of letters 'a' and 'b' only with length from $1$ to $10^{6}$.

翻译中…

Output

翻译中…

Print the minimum number of steps modulo $10^{9} + 7$.

翻译中…

Note

翻译中…

The first example: "ab" $→$ "bba".

翻译中…

The second example: "aab" $→$ "abba" $→$ "bbaba" $→$ "bbbbaa".

翻译中…

样例

Input #1
ab
Output #1
1
InputCopy OutputCopy
Input #2
aab
Output #2
3
InputCopy OutputCopy
题目信息
题号
804B
时间限制
1 s
内存限制
256 MB
标签
组合数学
贪心
模拟
数学

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。