#include<stdio.h>
#include<string.h>

char a[20][50001];
char *t, p[500], u[500],*q;
int min=51000;
int main()
{
int n;
int i,j,k,max1=0,tt;
//freopen("virus.in","r",stdin);
scanf("%d",&n);
for(i=0;i!=n;i++){
   scanf("%s",a[i]);
   if(min>strlen(a[i])) min=strlen(a[i]);
   }
   k=strlen(a[0])/10;
tt=strlen(a[0]);
for(;k<=min/2;k++)
{
for(i=0;i!=min-k;i++)
{
   for(j=0;j!=k;j++)
	 p[j]=a[0][i+j];
   t=strstr(a[1],p);
   if(t==NULL) continue;
   t=p;
   for(j=2;j<n;j++)
   {
      if(t==NULL) break;
      t=p;
      t=strstr(a[j],t);
   }
   if(t!=NULL) t=p;
   if(strlen(t)>max1)
   {
   max1=strlen(t);
   strcpy(u,t);
   }

}
}
printf("%s\n",u);
return 0;
}

