#include <stdio.h>
#include <stdbool.h>
#define ALPHABET_NUM 26
int main(void){
char str[1000000];
int count[ALPHABET_NUM]= {0};
scanf("%s", &str);
int i = 0;
while(str[i] != '\0'){
// 소문자 대문자로 바꾸기
if(str[i] > 90){
str[i] = str[i] - 32;
}
// 알파벳 카운트
count[str[i]-65] += 1;
i++;
}
// 가장 많이 나온 알파벳 계산
char max=0;
bool isMax = false;
for(int j = 1; j < ALPHABET_NUM; j++){
// 현재 알파벳의 count가 max인덱스의 알파벳의 count보다 크면
// 현재 인덱스 j를 max로 바꾸기
if(count[j]>count[max]){
max = j;
isMax = false;
}
// 현재 알파벳의 count가 max인덱스의 알파벳의 count와 같으면
// isMax를 중복의 의미 true로 바꾸기
else if(count[j] == count[max]){
isMax = true;
}
}
// isMax가 true면 ? 출력
if(isMax){
printf("?");
}
// isMax가 false면 max에 65를 더해 대문자 출력
else{
printf("%c", max+65);
}
return 0;
}