l = input()
mod = 10**9 + 7

len_l = len(l)
dp = [[0] * 2 for _ in range(len_l + 1)]

dp[0][1] = 1

for i in range(1,len_l+1):
    dp[i][0] += dp[i-1][0] * 3

    if(l[i-1] == '0'):
        dp[i][1] += dp[i-1][1]
    else:
        dp[i][0] += dp[i-1][1]
        dp[i][1] += dp[i-1][1] * 2

    dp[i][0] %= mod
    dp[i][1] %= mod

ans = sum(dp[-1]) % mod
print(ans) l = input() l input() input mod = 10**9 + 7 mod 10**9 + 7 10**9 10 9 7 len_l = len(l) len_l len(l) len l [0] * 2 for _ in range(len_l + 1) for _ in range(len_l + 1) _ range(len_l + 1) range len_l + 1 len_l 1 for _ in range(len_l + 1) [0] * 2 [0] 0 2 dp = [[0] * 2 for _ in range(len_l + 1)] dp [[0] * 2 for _ in range(len_l + 1)] dp[0][1] = 1 dp[0][1] [0] dp 0 1 1 for i in range(1,len_l+1):
    dp[i][0] += dp[i-1][0] * 3

    if(l[i-1] == '0'):
        dp[i][1] += dp[i-1][1]
    else:
        dp[i][0] += dp[i-1][1]
        dp[i][1] += dp[i-1][1] * 2

    dp[i][0] %= mod
    dp[i][1] %= mod i range(1,len_l+1) range 1 len_l+1 len_l 1 dp[i][0] += dp[i-1][0] * 3 dp[i][0] [i] dp i 0 dp[i-1][0] * 3 dp[i-1][0] [i-1] dp i-1 i 1 0 3 if(l[i-1] == '0'):
        dp[i][1] += dp[i-1][1]
    else:
        dp[i][0] += dp[i-1][1]
        dp[i][1] += dp[i-1][1] * 2

     l[i-1] == '0' l[i-1] l i-1 i 1 '0' dp[i][1] += dp[i-1][1] dp[i][1] [i] dp i 1 dp[i-1][1] [i-1] dp i-1 i 1 1 dp[i][0] += dp[i-1][1] dp[i][0] [i] dp i 0 dp[i-1][1] [i-1] dp i-1 i 1 1 dp[i][1] += dp[i-1][1] * 2 dp[i][1] [i] dp i 1 dp[i-1][1] * 2 dp[i-1][1] [i-1] dp i-1 i 1 1 2 dp[i][0] %= mod dp[i][0] [i] dp i 0 mod dp[i][1] %= mod dp[i][1] [i] dp i 1 mod ans = sum(dp[-1]) % mod ans sum(dp[-1]) % mod sum(dp[-1]) sum dp[-1] dp -1 mod print(ans) print ans ans = sum(dp[-1]) % mod sum(dp[-1]) % mod ans l = input() input() l dp = [[0] * 2 for _ in range(len_l + 1)] [[0] * 2 for _ in range(len_l + 1)] dp len_l = len(l) len(l) len_l mod = 10**9 + 7 10**9 + 7 mod
l = input()
mod = 10**9 + 7

len_l = len(l)
dp = [[0] * 2 for _ in range(len_l + 1)]

dp[0][1] = 1

for i in range(1,len_l+1):
    dp[i][0] += dp[i-1][0] * 3

    if(l[i-1] == '0'):
        dp[i][1] += dp[i-1][1]
    else:
        dp[i][0] += dp[i-1][1]
        dp[i][1] += dp[i-1][1] * 2

    dp[i][0] %= mod
    dp[i][1] %= mod

ans = sum(dp[-1]) % mod
print(ans)