#[allow(unused_imports)] use std::{ collections::{HashMap, HashSet, BinaryHeap, VecDeque, BTreeSet, BTreeMap}, io::{read_to_string, stdin, Write, stdout}, }; use proconio::{input, fastout, marker::Chars}; #[fastout] fn main(){ input!{ x: Chars, y: Chars, } if x.len()==y.len(){ let mut res = Vec::new(); for i in 0..x.len(){ res.push(x[i].to_string()); res.push(y[i].to_string()); } println!("{}", res.join("")); } else if x.len()==y.len()+1{ let mut res = Vec::new(); for i in 0..y.len(){ res.push(x[i].to_string()); res.push(y[i].to_string()); } res.push(x[x.len()-1].to_string()); println!("{}", res.join("")); } else { println!("?"); } }