L = input()
MOD = 10**9 + 7
now = 1
ans = 1
for b in L[:: -1]:
    if b == '1':
        ans = (ans * 2 + now) % MOD
    else:
        ans = ans % MOD
    now = now * 3 % MOD
print(ans % MOD) L = input() L input() input MOD = 10**9 + 7 MOD 10**9 + 7 10**9 10 9 7 now = 1 now 1 ans = 1 ans 1 for b in L[:: -1]:
    if b == '1':
        ans = (ans * 2 + now) % MOD
    else:
        ans = ans % MOD
    now = now * 3 % MOD b L[:: -1] L :: -1 -1 if b == '1':
        ans = (ans * 2 + now) % MOD
    else:
        ans = ans % MOD
     b == '1' b '1' ans = (ans * 2 + now) % MOD ans (ans * 2 + now) % MOD ans * 2 + now ans * 2 ans 2 now MOD ans = ans % MOD ans ans % MOD ans MOD now = now * 3 % MOD now now * 3 % MOD now * 3 now 3 MOD print(ans % MOD) print ans % MOD ans MOD ans = (ans * 2 + now) % MOD (ans * 2 + now) % MOD ans now = 1 1 now now = now * 3 % MOD now * 3 % MOD now L = input() input() L ans = 1 1 ans ans = ans % MOD ans % MOD ans MOD = 10**9 + 7 10**9 + 7 MOD
L = input()
MOD = 10**9 + 7
now = 1
ans = 1
for b in L[:: -1]:
    if b == '1':
        ans = (ans * 2 + now) % MOD
    else:
        ans = ans % MOD
    now = now * 3 % MOD
print(ans % MOD)