- Sのうち$1$になっている桁は、確定で$2^n$使う!
- $?$になってる桁のうち、左から順に貪欲に1にしたいよね!ハイ終わり!
S = input()
N = int(input())
num = 0
L = []
for i, c in enumerate(S[::-1]):
if c == '1':
num += 2 ** i
elif c == '?':
L.append(2 ** i)
L.sort(reverse=True)
for add_num in L:
if num + add_num <= N:
num += add_num
print(num if num <= N else -1)