CSG-CPC
Online Judge

1100 : Spanning Trees

         Time Limit: 1 Sec     Memory Limit: 128 Mb     Submitted: 8     Solved: 6    

Description

Bobo has a string s1sn consisting of zeros and ones, and he constructs an undirected graph G with n vertices v1, …, vn. In the graph G, an edge between the vertices vi and vj if and only if i < j and sj = 1.

Find the number of spanning trees of the graph G modulo (109 + 7).

Input

The input consists of several test cases terminated by end-of-file.

The first line of each test case contains an integer n, and the second line contains a string s1sn.

  • 1 ≤ n ≤ 105
  • si ∈ {0, 1}
  • sn − 1 = 1
  • The sum of n does not exceed 106.

Output

For each test case, print an integer which denotes the result.

Sample

3
001
4
0101
5
11111
1
3
125

Hint

Author

ftiasch