l=input()[::-1]
ans=1
mod=10**9+7
for i in range(len(l)):
  if l[i]=="1":
    ans=((ans*2)+pow(3,i,mod))%mod
print(ans) l=input()[::-1] l input()[::-1] () input ::-1 -1 ans=1 ans 1 mod=10**9+7 mod 10**9+7 10**9 10 9 7 for i in range(len(l)):
  if l[i]=="1":
    ans=((ans*2)+pow(3,i,mod))%mod i range(len(l)) range len(l) len l if l[i]=="1":
    ans=((ans*2)+pow(3,i,mod))%mod l[i]=="1" l[i] l i "1" ans=((ans*2)+pow(3,i,mod))%mod ans ((ans*2)+pow(3,i,mod))%mod (ans*2)+pow(3,i,mod) ans*2 ans 2 pow(3,i,mod) pow 3 i mod mod print(ans) print ans ans=((ans*2)+pow(3,i,mod))%mod ((ans*2)+pow(3,i,mod))%mod ans l=input()[::-1] input()[::-1] l mod=10**9+7 10**9+7 mod ans=1 1 ans
l=input()[::-1]
ans=1
mod=10**9+7
for i in range(len(l)):
  if l[i]=="1":
    ans=((ans*2)+pow(3,i,mod))%mod
print(ans)