#include<bits/stdc++.h>
using namespace std;
bool check(string str){
for(auto c:str){
if(c=='?')
return false;
}
return true;
}
void go(string str,int pos){
if(check(str)){
cout<<str<<endl;
return;
}
if(str[pos]=='1' || str[pos]=='0')
go(str,pos+1);
else if(str[pos]=='?'){
str[pos]='0';
go(str,pos+1);
str[pos]='1';
go(str,pos+1);
}
}
int main(){
string str="1??0";
//cin>>str;
go(str,0);
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKYm9vbCBjaGVjayhzdHJpbmcgc3RyKXsKCQoJZm9yKGF1dG8gYzpzdHIpewoJCWlmKGM9PSc/JykKCQkgIHJldHVybiBmYWxzZTsKCX0KCXJldHVybiB0cnVlOwp9CnZvaWQgZ28oc3RyaW5nIHN0cixpbnQgcG9zKXsKCQoJaWYoY2hlY2soc3RyKSl7CgkJY291dDw8c3RyPDxlbmRsOwoJCXJldHVybjsKCX0KCWlmKHN0cltwb3NdPT0nMScgfHwgc3RyW3Bvc109PScwJykKCQlnbyhzdHIscG9zKzEpOwoJZWxzZSBpZihzdHJbcG9zXT09Jz8nKXsKCQlzdHJbcG9zXT0nMCc7CgkJZ28oc3RyLHBvcysxKTsKCQlzdHJbcG9zXT0nMSc7CgkJZ28oc3RyLHBvcysxKTsKCX0KfQppbnQgbWFpbigpewoJc3RyaW5nIHN0cj0iMT8/MCI7CgkvL2Npbj4+c3RyOwoJZ28oc3RyLDApOwp9