Question
Encrypted Badge Message

An event app compresses badge messages using numbers. The number 1 represents A, 2 represents B, ..., and 26 represents Z.

You are given a string of digits. Count how many different original messages it could represent. Since the answer can be large, print it modulo 10^9 + 7.

The twist: a 0 cannot stand alone, but it can be part of 10 or 20.

Input

The only line contains a digit string KaTeX can only parse string typed expression.

Output

Print a single integer — the number of valid decodings modulo KaTeX can only parse string typed expression.

Example
Example 1:
Input
226
Output
3
Explanation
The possible decodings are KaTeX can only parse string typed expression, KaTeX can only parse string typed expression, and KaTeX can only parse string typed expression.

Example 2:
Input
06
Output
0
Explanation
A code cannot start with a standalone KaTeX can only parse string typed expression.

Online