#codethanksfestival14qualbf. [code_thanks_festival_14_qualb_f]太鼓ゲーム

[code_thanks_festival_14_qualb_f]太鼓ゲーム

问题

鳗鱼在玩太鼓游戏。太鼓游戏是一款根据屏幕上显示的字符串敲击太鼓的游戏。如果显示的字符串是SS,则敲击太鼓的中心;如果是TT,则敲击太鼓的边缘。在这个游戏中,有几个字符串按顺序显示在一列中,按照它们的字符串来依次敲击太鼓即可完成游戏。然而,屏幕上显示的字符串之间的间隔太小,无法确定它们是如何分隔的。

完成游戏后,鳗鱼决定数一数屏幕上显示的字符串正确的分隔方式的数量。正确的分隔方式是指用于分隔字符串的方法,使得分隔后的每个部分与字符串SS或字符串TT完全匹配。


输入

输入以以下格式从标准输入中给出。

XX

SS

TT

  • 第1行包含一个显示在屏幕上的字符串X1X1000X(1≦|X|≦1000)。其中,X|X|表示字符串XX的长度。
  • 第2行包含指示敲击太鼓中心的字符串S1SXS(1≦|S|≦|X|)
  • 第3行包含指示敲击太鼓边缘的字符串T1TX,STT(1≦|T|≦|X|, S \neq T)
  • 输入的字符串由小写字母(a-z)组成。
  • 屏幕上显示的字符串的正确分隔方式保证存在至少一种。

输出

输出正确的屏幕上显示的字符串的分隔方式的数量,将其除以1,000,000,007109+71,000,000,007(10^9+7)得到余数,并在一行中输出。输出末尾包含换行符。


示例输入1


dondonkatsudon
don
katsu

示例输出1


1

可以按照don,don,katsu,dondon,don,katsu,don分隔字符串。

此外,不存在其他正确的分隔方式。


示例输入2


aaaaa
aaa
aa

示例输出2


2

存在两种分隔方式:一种是aaa,aaaaa,aa,另一种是aa,aaaaa,aaa


示例输入3


ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
f
ff

示例输出3


435293607

由于答案可能非常大,请不要忘记取余1,000,000,0071,000,000,007