import sys



s = eval(input())

t = eval(input())



tl = len(t) ; sl = len(s)



c = 1

for i in range(sl,tl-1,-1) :

  st = s[i-tl:i]

  c = 0

  for j in range(tl) :

    if st[j] == '?' :

      continue

    elif st[j] != '?' and st[j] == t[j] :

      continue

    c = 1

    break

  if c == 0 :

    s = s[:i-tl] + t + s[i:]

    break



if c == 1 :

  print('UNRESTORABLE')

else : 

  print((s.replace('?', 'a')))
import sys



s = eval(input())

t = eval(input())



tl = len(t) ; sl = len(s)



if tl > sl :

  print('UNRESTORABLE')

  sys.exit()



for i in range(sl,tl-1,-1) :

  st = s[i-tl:i]

  c = 0

  for j in range(tl) :

    if st[j] == '?' :

      continue

    elif st[j] != '?' and st[j] == t[j] :

      continue

    c = 1

    break

  if c == 0 :

    s = s[:i-tl] + t + s[i:]

    break



if c == 1 :

  print('UNRESTORABLE')

else : 

  print((s.replace('?', 'a')))
import sys

s = eval(input())
t = eval(input())
tl = len(t)
sl = len(s)
c = 1
for i in range(sl, tl - 1, -1):
    st = s[i - tl : i]
    c = 0
    for j in range(tl):
        if st[j] == "?":
            continue
        elif st[j] != "?" and st[j] == t[j]:
            continue
        c = 1
        break
    if c == 0:
        s = s[: i - tl] + t + s[i:]
        break
if c == 1:
    print("UNRESTORABLE")
else:
    print((s.replace("?", "a")))

import sys

s = eval(input())
t = eval(input())
tl = len(t)
sl = len(s)
if tl > sl:
    print("UNRESTORABLE")
    sys.exit()
for i in range(sl, tl - 1, -1):
    st = s[i - tl : i]
    c = 0
    for j in range(tl):
        if st[j] == "?":
            continue
        elif st[j] != "?" and st[j] == t[j]:
            continue
        c = 1
        break
    if c == 0:
        s = s[: i - tl] + t + s[i:]
        break
if c == 1:
    print("UNRESTORABLE")
else:
    print((s.replace("?", "a")))

-c = 1 +if tl > sl: +    print("UNRESTORABLE") +    sys.exit()