fun main(args: Array<String>) {
    var sResult = ""
    val sDash = readLine().orEmpty().reversed()
    val sLength = sDash.length
    val tStr = readLine().orEmpty().reversed()
    val tLength = tStr.length
    var foundId = 0
    var judge = "UNRESTORABLE"

    run loop@{
        for(i in 0 .. sLength - tLength){
            val sSub = sDash.substring(i ,i + tLength)
            var sJudge = ""
            sSub.forEach {
                if(it == '?'){
                    sJudge += "[a-z]"
                }else{
                    sJudge += it
                }
            }
            val sReg = Regex(sJudge)
            val tmp = sReg.matchEntire(tStr)

            if(tmp != null){
                foundId = i
                judge = ""
                return@loop
            }

        }
    }

    if(judge == "UNRESTORABLE"){
        println(judge)
    }else{
        val sRepl = sDash.substring(foundId, foundId + tLength)
        sResult = sDash.replaceFirst(sRepl, tStr)
        sResult = sResult.replace("?","a").reversed()
        println(sResult)
    }
}