import java.util.HashMap;
import java.util.Scanner;
public class Sort {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String str = in.next();
System.out.println(LongestString(str));
}
public static String LongestString(String s) throws NullPointerException{
int start=0;//当前子串开始位置
int len=0;//当前子串长度
int mstart=0;//最大子串开始位置
int mlen=0;//最大子串长度
HashMap<Character,Integer> map=new HashMap<Character,Integer>();
for(int i=0;i<s.length();i++){
if(!map.containsKey(s.charAt(i))) {//如果没出现该字符
map.put(s.charAt(i), 1);//标志出现
len++;
}
else{//如果出现过,说明找到一个子串
if(len>mlen) {
mstart = start;//更新最大子串
mlen=len;
}
while(s.charAt(start)!=s.charAt(i)){//查找新的开始
map.remove(s.charAt(start));//去掉非新子串元素
start++;
len--;
}
start++;
}
}
if(len>mlen) {//循环结束,判断最后子串
mstart = start;
mlen=len;
}
return s.substring(mstart,mstart+mlen);
}
}