#448. 小裙子设计师

小裙子设计师

Description

王乐妍的衣柜被掏空了,可是还没有给学妹萌满意的小裙子,因此她开始自己写代码设计格裙。

王乐妍有一个数组 ff, 下标为 00 ~ 2n12^{n}-1.

王乐妍会选出若干个00 ~ 2n12^{n}-1 的互不相同的元素来组成小裙子,假设第 ii 个元素为 aia_i 总共选取了 m(m1)m(m \geqslant 1) 个元素

王乐妍希望这个序列同时满足:1i<m,ai & ai+1=ai \forall 1 \leqslant i<m,a_i\ \&\ a_{i+1}=a_i 王乐妍称这样的序列是萌萌哒的

现在王乐妍想要知道,对于所有萌萌哒的序列, i=1mfai \prod \limits ^m_{i=1} f_{a_i}的和

由于这个值非常大,王乐妍只想知道齐对 1e9+71e9+7 取模的结果。

Format

Input

第一行 一个数 nn 。接下来一行

一个长度为 2n2 ^n 的仅包含 090-9 的字符串。第 ii 个位置上的字符代表 fif_i的值。

Output

一行一个数表示答案

Samples

1
99
99
2
1111
11

约定和数据范围

对于符号\prod,为π\pi的大写形式,意为求积(连乘)

本题共2020 个测试点满足 n=i+2n=i+2

对于前1717 个测试点,每个测试点 33

1818 个测试点, 1616

1919 个测试点, 1616

2020 个测试点, 1717

请注意本题特殊的内存限制