#include<stdio.h>
#define N 40
#define M 8
void orden(char arr[M],int i,int j);
int posicion(char letra1,int cant,char arr[M]);
main()
{
   int tam,cant,i,j,k,l,pos1,pos2;
   char matriz[N][N],arr[M],letra,letra1;
   scanf("%d",&tam);
   getchar();
   while(tam>40 || tam<2)
   {
      scanf("%d",&tam);
      getchar();
   }
   scanf("%d",&cant);
   getchar();
   while(cant>8 || cant<1)
   {
      scanf("%d",&cant);
      getchar();
   }
   for(i=0;i<cant;i++)
      scanf("%c",&arr[i]);		
   for(i=0;i<tam;i++)
   {
      for(j=0;j<tam;j++)
         scanf("%c",&matriz[i][j]);
      getchar();
   }
   for(i=0;i<tam;i++)
      for(j=0;j<tam;j++)
         if(matriz[i][j]!=' ' && matriz[i][j]!='\n')
            letra=matriz[i][j];
   for(k=0;k<tam;k++)
      for(l=0;l<tam;l++)
         if(matriz[k][l]!=letra && matriz[k][l]!=' ' && matriz[k][l]!='\n')
         {
            letra1=matriz[k][l];
	    pos1=posicion(letra1,cant,arr);
	    pos2=posicion(letra,cant,arr);
            orden(arr,pos1,pos2);
         }
   printf("\nEL ORDEN ES: ");
   for(i=0;i<cant;i++)
      printf("%c",arr[i]);
   printf("\n");
   return 0;	
}
void orden(char arr[M],int i,int j)
{
   char aux;
   aux=arr[i];
   arr[i]=arr[j];
   arr[j]=aux;
}
int posicion(char letra1,int cant,char arr[M])
{
   int i;
   for(i=0;i<cant;i++)
      if(letra1==arr[i])
         return (i);
}


/* CLAUDIO TORRES GAJARDO  */

