const fi=''; nmax=999999; type data=longint; var f:text; kq,S,A,tmp:string; n,sl,i:data; dd:array[1..6] of boolean; procedure sort(l,r: longint); var i,j: longint; y,x:char; begin i:=l; j:=r; x:=s[(l+r) div 2]; repeat while s[i]j) then begin y:=s[i]; s[i]:=s[j]; s[j]:=y; inc(i); j:=j-1; end; until i>j; if la then begin writeln(kq); halt; end; end else for i:=1 to n do if not dd[i] then begin inc(sl); dd[i]:=true; kq[sl]:=s[i]; try; dd[i]:=false; dec(sl); end; end; begin assign(f,fi); reset(f); readln(f,s); close(f); n:=length(s); a:=s; kq:=s; sort(1,n); for i:=n downto 1 do tmp:=tmp+s[i]; if tmp=a then begin writeln(0); halt; end; fillchar(dd,sizeof(dd),false); sl:=0; try; writeln(0); end.