100 atcoder#ABC135D. [ABC135D] Digits Parade

[ABC135D] Digits Parade

配点: 400400

問題文

文字列 SS が与えられます。SS の各文字は、数字 (09) か ? です。

? を数字に置き換えてできる整数のうち、1313 で割って 55 あまる数は何通りあるでしょうか?ただし、頭文字が 00 である場合も整数とみなすものとします。

答えは非常に大きくなる可能性があるため、109+710^9+7 で割ったあまりを答えてください。

制約

  • SS は数字 (09) と ? からなる文字列。
  • 1S1051 \leq |S| \leq 10^5

入力

入力は以下の形式で標準入力から与えられます。

SS

出力

条件を満たす整数の個数を 109+710^9+7 で割ったあまりを出力してください。

??2??5
768

たとえば 482305,002865,972665482305, 002865, 972665 などが条件を満たします。

?44
1

044044 のみが条件を満たします。

7?4
0

条件を満たす整数を作ることが不可能な場合もあります。

?6?42???8??2??06243????9??3???7258??5??7???????774????4?1??17???9?5?70???76???
153716888