while True:
try:
s1 = input()
s2 = input()
m = len(s1)
n = len(s2)
dp = [[False for j in range(n+1)] for i in range(m+1)]
dp [0][0] = True
# 第0行,空字符无法匹配非空字符,所以第一行为False
for j in range(1,n+1):
dp[0][j] = False
# 第0列,当匹配模式为*或者?时,匹配成功,其余跳出循环
for i in range(1,m+1):
if s1[i-1] == '*' or s1[i-1] == '?':
dp[i][0] = True
else:
break
for i in range(1,m+1):
for j in range(1,n+1):
if s1[i-1].lower() == s2[j-1].lower():
dp[i][j] = dp[i-1][j-1]
elif s1[i-1] == '?' and s2[j-1].isalnum():
dp[i][j] = dp[i-1][j-1]
elif s1[i-1] == '*':
dp[i][j] = dp[i-1][j] or dp[i][j-1]
if dp[m][n]:
print('true')
else:
print('false')
except:
break