

var ret:array[1..4000] of string;
		nej:string;
		hledam, hledam_pred:string;
		i,j,k,num:integer;
		nalezeno,nalezeno2:boolean;
		
begin
		while (true) do
		begin
			readln(num);
			if num = 0 then exit;
			
			for i:=1 to num do
				readln(ret[i]);
			
			nej:='';
			hledam_pred:='';
			{Zacatek vsech podretezcu}
			for i:=1 to length(ret[1]) do
			begin
				nalezeno:=false;
				{vytvarim ruzne dlouhe podretezce zacinajici ret[i]}
				for j:=length(nej) to length(ret[1])-i do
				begin
					{vytvorim si substring}
					hledam:=substr(ret[1],i,j);
				{writeln('hledam:',hledam);}
					{Hledam ho v ostatnich:}
					nalezeno2:=true;
					for k:=2 to num do begin
						if pos(hledam,ret[k]) = 0 then begin							
							nalezeno2:=false;
							break;
						end;
							{writeln(hledam,' nalezeno v ',ret[k]);}
					end;
					if not nalezeno2 then break;
					nalezeno:=true;
					hledam_pred:=hledam;
				end;
				if nalezeno then begin
					if length(hledam_pred)>length(nej) then nej:=hledam_pred
					else if ((length(hledam_pred)=length(nej)) and (hledam_pred<nej)) then nej:=hledam_pred;
					{writeln('byl nej');}
				end;
			end;
			
			if (length(nej) > 0) then writeln(nej)
			else writeln('IDENTITY LOST');
		end;
end.