import std.algorithm,
       std.string,
       std.range,
       std.stdio,
       std.conv;

void main() {
  char[] Sd = readln.chomp.to!(char[]);
  char[] T = readln.chomp.to!(char[]);
  char[] ans;

  foreach (i, s; Sd) {
    char[] tmp = Sd;
    bool match = true;
    foreach (j, t; T) {
      if (i + j >= Sd.length) {
        match = false;
        break;
      }
      if (Sd[i + j] == T[j] || Sd[i + j] == '?') {
        tmp[i + j] = T[j];
      } else {
        match = false;
        break;
      }
    }

    if (!match) {
      continue;
    }

    foreach (j, c; tmp) {
      if (c == '?') {
        tmp[j] = 'a';
      }
    }
    if (ans.empty) {
      ans = tmp;
    } else {
      if (tmp < ans) {
        ans = tmp;
      }
    }
  }

  if (ans.empty) {
    writeln("UNRESTOREABLE");
  } else {
    writeln(ans);
  }
}
