int main()
{
	int m,n,i,j,k,a[N][N];
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++){
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	}
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			for(k=0;k<n;k++){
				if(a[i][j]<a[i][k])
					break;
			}
			if(k<n)
				continue;
			for(k=0;k<m;k++){
				if(a[i][j]>a[k][j])
					break;
			}
			if(k<m)
				continue;
			printf("%d+%d\n",i,j);
			return 0;
		}
	}
	printf("No\n");
	return 0;
}


int main()
{
	int point[8][8], n, m;
	int p, q, max, temp=0;
	int i, k;
	scanf("%d,%d",&n, &m);
	for(i=0;i<n;i++)
	{
		for(k=0;k<m;k++)
		{
			scanf("%d",&point[i][k]);
		}
	}

	for(i=0;i<n;i++)
	{
		max=point[i][0];
		p=i;
		q=0;
		for(k=0;k<m;k++)
		{
			if(point[i][k]>max)
			{
				max=point[i][k];
				q=k;
			}
		}

		for(k=0;k<n;k++)
		{
			if(point[k][q]<max)
			{
				temp=1;
				break;
			}
		}
		if(temp==1) continue;
		else
		{
			printf("%d+%d",p, q);
			return 0;
		}
	}

	printf("No");
	return 0;
}


void main()
{
	int a[8][8],h,l,flag;
	int i,j,k;
	int max;
	scanf("%d,%d",&h,&l);
	getchar();
	for(i=0;i<h;i++)
	{
		for(j=0;j<l;j++)
		{
			scanf("%d",&a[i][j]);
			getchar();
		}
	}
	for(i=0;i<h;i++)
	{
		max=0;flag=1;
		for(j=0;j<l;j++)
		{
			if(a[i][j]>max)
				max=a[i][j];
		}
		for(j=0;j<l;j++)
		{
			if(max==a[i][j])break;
		}
		for(k=0;k<h;k++)
		{
			if(a[k][j]<max)
			{
				flag=0;
				break;
			}
		}
		if(flag==0)continue;
		else
		{
			printf("%d+%d",i,j);
			break;
		}
	}
	if(flag==0)
		printf("No");
}


int main()
{
	int row,col,i,j,i1,sz[8][8];
         char c;
	scanf("%d%c%d",&row,&c,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		int max = sz[i][0], p = 0;
		for(j=1;j<col;j++)
		{
			if(sz[i][j]>max)
			{
				max = sz[i][j];
				p =j;
			}
		}
		int min=sz[i][p];
		for(i1=0;i1<row;i1++)
		{
			if(min>sz[i1][p])
			{
				break;
			}
		}
		if(i1==row)
		{
			printf("%d+%d",i,p);
			break;
		}
	}
	if(i==row)
	{
		printf("No");
	}
	return 0;
}


int main()
{
	int sz[ROW][COL];
	int nr,nc;
	int i,j,k;
	int Rm[ROW];
	int Cm[COL];
	int exist=0;
	scanf("%d,%d",&nr,&nc);
	for(i=0;i<nr;i++)
	{
		for(j=0;j<nc;j++)
		{
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<nr;i++)
	{
		Rm[i]=sz[i][0];
		for(j=0;j<nc;j++)
		{
			if(sz[i][j]>Rm[i])
			{
				Rm[i]=sz[i][j];
			}
		}
	}
	for(j=0;j<nc;j++)
	{
		Cm[j]=sz[0][j];
		for(i=0;i<nr;i++)
		{
			if(sz[i][j]<Cm[j])
			{
				Cm[j]=sz[i][j];
			}
		}
	}
	for(i=0;i<nr;i++)
	{
		for(j=0;j<nc;j++)
		{
			if(Rm[i]==Cm[j])
			{
				printf("%d+%d",i,j);
				exist=exist+1;
			}
		}
	}
	if(exist==0)
	{
		printf("No");
	}
	return 0;
}


int main()
{
	int sz[10][10],m,n;
	scanf("%d,%d\n",&m,&n);
	int i,j,k;
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			scanf("%d ",&sz[i][j]);
		}
	}
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){

			int a =  sz[i][j];
			int aMax = 1; //true
			// is 'a' max in row
			for (k = 0; k < n; k++) {
				if (sz[i][k] > a)
					aMax = 0;
			}

			int aMin = 1;
			// is 'a' min in col
			for (k = 0; k < m; k++) {
				if (sz[k][j] < a)
					aMin = 0;
			}

			if (aMax == 1 && aMin == 1) {
				printf("%d+%d\n", i, j);
				return 0;
			}
		}
	}
	printf("No\n");
	return 0;
}


int main(){
int sz[8][8];
int hang,lie;
scanf("%d,%d",&hang,&lie);
int i,k;
int temp_max=0,temp_min=0;
int temp_min2=0;
int pianduan=0;
for(i=0;i<hang;i++){
for(k=0;k<lie;k++){
scanf("%d\n ",&sz[i][k]);
}}

for(i=0;i<hang;i++){
for(k=0;k<lie;k++){
if(sz[i][k]>sz[i][temp_max]){
temp_max=k;
temp_min=i;}}

for(i=0;i<hang;i++){
if(sz[i][temp_max]<sz[temp_min2][temp_max])
temp_min2=i;}
if(temp_min2==temp_min){
printf("%d+%d",temp_min,temp_max);
pianduan=1;}}

if(pianduan==0) printf("No");

return 0;
}


int a[10][10],m,n;
int maxh(int h)
{
	int i,max,r;
	max=a[h][0];
	r=0;
	for(i=1;i<n;i++)
	{
		if(max<a[h][i])
		{max=a[h][i];r=i;}
	}
	return(r);
}
int min(int x)
{
	int i,r,min;
	min=a[0][x];
	r=0;
	for(i=1;i<m;i++)
	{
		if(min>a[i][x])
		{min=a[i][x];r=i;}
	}
	return(r);
}
void main()
{
	int h,l,x,y;
	scanf("%d,%d",&m,&n);
	for(h=0;h<m;h++)
	{
		for(l=0;l<n;l++)
		{
			scanf("%d",&a[h][l]);
		}
	}
	for(h=0;h<m;h++)
	{
		x=maxh(h);
		y=min(x);

		if(h==y)
		{
			printf("%d+%d",h,x);
			break;
		}

		else if(h==m-1)
			printf("No");
	}
}


int s[8][8],x,y;

int judge(int m,int n)
{
	int a=1,b=1,ii,jj;
	for(jj=0;jj<y;jj++)
		if(s[m][n]<s[m][jj])a=0;
	for(ii=0;ii<x;ii++)
		if(s[m][n]>s[ii][n])b=0;
	return a*b;
}

int main()
{
	int i,j,tj=0;
	char d;
	cin>>x>>d>>y;
	for(i=0;i<x;i++){
		for(j=0;j<y;j++){
			cin>>s[i][j];
		}
	}
	//cout<<x<<y<<endl;
	for(i=0;i<x;i++){
		for(j=0;j<y;j++){
			//cout<<"cs"<<s[i][j]<<judge(i,j)<<endl;
			if(judge(i,j)>0){
				cout<<i<<"+"<<j<<endl;
				tj++;
			}
		}
	}
	if(tj==0)cout<<"No"<<endl;
	return 0;
}


int matrix[1000][1000];

int main(int argc, char *argv[])
{
    int row,col,k,n,i,j,l[8],p[8],flag=0;
    scanf("%d,%d",&row,&col);;
    for(i=0;i<row;i++)
    {
                    for(j=0;j<col;j++)
                    {
                    cin>>matrix[i][j];
                    if(matrix[i][j]>matrix[i][j-1])
                    {
                    k=j;

                    }
                    }
                    p[i]=k;

    }
     for(j=0;j<col;j++)

     {
                       for(i=0;i<row;i++)
                       {if(matrix[i][j]<matrix[i-1][j])
                       k=i;
                       }

                       l[j]=k;
                       }

     for(i=0;i<row;i++)
     {

                       k=p[i];
                       if(l[k]==i)
                       {
                                  cout<<i<<"+"<<k;
                       flag=1;
                       }
                       }
     if(flag==0)
     cout<<"No"<<endl;

        return 0;
}


int main( )
{
   int flag,i,j,k,row,col,m,n,a[8][8];
     scanf("%d,%d",&m,&n);
     for(i=0; i<m; i++)
       for(j=0; j<n; j++)
          scanf("%d",&a[i][j]);

    flag=0;

for(i=0;i<m&&flag==0;i++){
   col=0;
   for(j=0;j<n;j++){
    if(a[i][j]>a[i][col])
     col=j;
   }
   for(k=0;k<m;k++){
    if(a[k][col]<a[i][col])
     break;
   }
   if(k==m){
    flag=1;
    row=i;
    break;
   }
}
     if(flag)
      printf("%d+%d\n", row, col);
     else
     printf("No\n");
}


int main()
{
    int sz[8][8];
    int row,col,r=0,q,w;
    int i,n;
    int max[8],min[8];
    scanf("%d,%d",&row,&col);
    for(i=0;i<row;i++){
     for(n=0;n<col;n++){
       scanf("%d",&sz[i][n]);
       max[i]=sz[i][0];
       min[n]=sz[0][n];
   }
  }
    for(i=0;i<row;i++)
     for(n=0;n<col;n++){
     if(sz[i][n]>max[i]) max[i]=sz[i][n];
     if(sz[i][n]<min[n]) min[n]=sz[i][n];
     }
    for(i=0;i<row;i++)
     for(n=0;n<col;n++){
     if(max[i]==min[n]){
         r=1;
         q=i;
         w=n;
     }
   }
    if (r==1)
    printf("%d+%d",q,w);
    else printf("No");
    return 0;
}


int main(){
 int a[8][8],i,k,row,col,max,x,min,l,y;
 scanf("%d,%d",&row,&col);
 for(i=0;i<row;i++){
   for(k=0;k<col;k++){
     scanf("%d",&a[i][k]);
                     }
                    }
 for(i=0;i<row;i++){
  max=a[i][0];
  for(k=0;k<col;k++){
     if(a[i][k]>=max){
       max=a[i][k];
       x=k;
                    }
                    }
  min=a[0][x];
 for(l=0;l<row;l++){
 if(a[l][x]<=min){
  min=a[l][x];
  y=l;
                  }
                   }
 if(min==max){
  printf("%d+%d",y,x);
  goto CATHERING;
              }
                      }
 printf("No");
CATHERING:
 return 0;
  }


int main()
{
	int a[8][8];
	int m,n; /*m,n?????????*/
	int i,i1,j,maxi,maxj;
	int flag=1;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		scanf("%d",&a[i][j]);
	}
	for(i=0;i<m;i++)
	{
		flag=1;
		for(j=0;j<n;j++)
		{
			if(a[i][j]>=a[i][0])
			{
				maxi=i;
				maxj=j;
			}
		}
		for(i1=0;i1<m;i1++)
		{
			if(a[i1][maxj]<a[maxi][maxj])
				flag*=0;
			else
				flag*=1;
		}
		if(flag==1)
		{
			printf("%d+%d\n",maxi,maxj);
			break;
		}
	}
	if(flag==0)
		printf("No\n");
	return 0;
}


int a[9][9],row,line;
int check(int M,int N)
{
	int i,j;
	for(i=0;i<row;i++)
	{
		if(a[i][N]<a[M][N])
			return 0;
	}
	for(j=0;j<line;j++)
	{
		if(a[M][j]>a[M][N])
			return 0;
	}
	return 1;
}
int main()
{
	int i,j,judge=0;
	scanf("%d,%d",&row,&line);
	for(i=0;i<row;i++)
	{
		for(j=0;j<line;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		for(j=0;j<line;j++)
		{
			if(check(i,j))
			{
				printf("%d+%d\n",i,j);
				judge++;
				break;
			}
		}
		if(judge!=0)
			break;
	}
	if(judge==0)
		printf("No\n");
	return 0;
}


int main()
{
    int row,col;
    int i,j,temp,x,y,flag=0;
    int a[8][8];
    scanf("%d,%d",&row,&col);
    for(i=0;i<row;++i)
        for(j=0;j<col;++j)
           scanf("%d",a[i]+j);
    for(i=0;i<row;++i)
    {
        flag=0;
        temp=-1000000;
        for(j=0;j<col;++j)
            if(temp<a[i][j])
            {
                temp=a[i][j];
                y=j;
            }
        for(x=0;x<row;++x)
            if(a[x][y]<temp)
            {
                flag=1;
                break;
            }
        if(flag==0)
        {
            printf("%d+%d",i,y);
            return 0;
        }
    }
    printf("No");
    return 0;
}


int hangzuida(int sz,int hmax);
int liezuixiao(int sz,int lmin);
int main(){
	int sz[10][10];
	int H,L;
	scanf("%d,%d",&H,&L);
	int h,l;
	for (h=0;h<H;h++){
		for (l=0;l<L;l++){
			scanf("%d",&sz[h][l]);}}

	int hmax[10]={0},lmin[10];
	for (l=0;l<L;l++){lmin[l]=200;}
	for (h=0;h<H;h++){
		for (l=0;l<L;l++){
			if (sz[h][l]>hmax[h]){hmax[h]=sz[h][l];}}}
	for (l=0;l<L;l++){
		for (h=0;h<H;h++){
			if (sz[h][l]<lmin[l]){lmin[l]=sz[h][l];}}}

    int c=0;
	for (h=0;h<H;h++){
		for (l=0;l<L;l++){
			if (hangzuida(sz[h][l],hmax[h])&&liezuixiao(sz[h][l],lmin[l])){
				printf("%d+%d",h,l);
				c=1;}}}
	if (c==0){printf("No");}
	return 0;}

int hangzuida(int sz,int hmax){
			if (sz==hmax){return 1;}
			else {return 0;}}

int liezuixiao(int sz,int lmin){
			if (sz==lmin){return 1;}
			else {return 0;}}


int max(int A[9],int n);
int min(int B,int num,int C[][9],int m);
void main()
{
	int m,n, a[9][9],i,j,flag=0,ma;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<m;i++)
	{
		ma=max(a[i],n);
	if(min(a[i][ma],ma,a,m)==1)
	{
		printf("%d+%d",i,ma);
		flag=1;
	}
	}
	if(flag==0)
		printf("No");

}
int max(int A[9],int n)
{
	int p=0,maxnum=0;
	for(p=0;p<n;p++)
		if(A[p]>A[maxnum])
			maxnum=p;
		return(maxnum);
}
int min(int B,int num,int C[][9],int m)
{
  int minvalue=B,i,blag=1;
	  for(i=0;i<m;i++)
		  if(C[i][num]<B)
		  {
			  blag=0;return(0);
		  }
		  return(blag);

}


int main()
{
 int i,j,r,row,col,flag1,p=0,a[8][8],max,minnum;
 scanf("%d,%d",&row,&col);
 for(i=0;i<row;i++)
  for(j=0;j<col;j++)
   scanf("%d",&a[i][j]);
 for(i=0;i<row;i++)
 {
  max=a[i][0];
  minnum=0;
  for(j=0;j<col;j++)
   if(a[i][j]>max)
   {
    max=a[i][j];
    minnum=j;
   }
  for(r=0,flag1=1;r<row&&flag1;r++)
   if(max>a[r][minnum])
    flag1=0;
   if(flag1)
   {
    printf("%d+%d",i,minnum);
    p=1;
   }
 }
 if(p!=1)
  printf("No");
return 0;
}


int findmax(int a[100])
{
	int max=0;
	int i;
	for(i=0;i<100;i++)
	{
		if(max<a[i])
			max=a[i];
	}
	return max;
}
void main()
{
	int hang,lie;
	scanf("%d,%d",&hang,&lie);
	int a[100][100];
	int i,j;
	for(i=0;i<hang;i++)
	{
		for(j=0;j<lie;j++)
			scanf("%d",&a[i][j]);
	}
	int max,k,flag;
	for(i=0;i<hang;i++)
	{

		max=findmax(a[i]);
		for(j=0;j<lie;j++)
		{

			if(a[i][j]==max)
			{
				flag=1;
				for(k=0;k<hang;k++)
				{
					if(a[k][j]<a[i][j] )
						flag=0;
				}
				if(flag) {printf("%d+%d",i,j);break;}
			}
		}
		if(flag) break;
	}
	if(flag==0) printf("No");
}


int max(int x,int str[][8],int i,int n)
{
	int j;
	for(j=0;j<n;j++)
	{
		if(x<str[i][j])
			return 0;
	}
	return 1;
}
int min(int y,int str[][8],int j,int m)
{
	int i;
	for(i=0;i<m;i++)
	{
		if(y>str[i][j])
			return 0;
	}
	return 1;
}
int main()
{
	char c;
	int m,n,i,j,str[8][8],r,p;
	scanf("%d",&m);
	c=getchar();
	scanf("%d",&n);
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
			scanf("%d",&str[i][j]);
	}
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		{
			r=max(str[i][j],str,i,n);
			p=min(str[i][j],str,j,m);
			if(r && p)
			{
				printf("%d+%d",i,j);
				return 0;
			}
		}
	}
	printf("No");
	return 0;
}


int main()
{
	int h,l;

	int t=1;

	int fah=-1,fal=-1;

	scanf("%d,%d",&h,&l);

	int i,j;

	int **word;
	word=(int **)malloc(sizeof(int *)*h);
	for(i=0;i<h;i++){
		word[i]=(int *)malloc(sizeof(int)*l);
	}

	int *max;
	max=(int *)malloc(sizeof(int)*h);

	int *al;
	al=(int *)malloc(sizeof(int)*h);

	for(i=0;i<h;i++){
		max[i]=0;
		al[i]=0;
	}

	for(i=0;i<h;i++){
		for(j=0;j<l;j++){
			scanf("%d",&word[i][j]);
			if(max[i]<word[i][j]){
				max[i]=word[i][j];
				al[i]=j;
			}
		}
	}

	for(i=0;i<h;i++){
		t=1;
		for(j=0;j<h;j++){
			if(max[i]>word[j][al[i]]){
				t=0;
				break;
			}
		}
		if(t!=0){
			fah=i;
			fal=al[i];
			break;
		}
	}

	if(fah!=-1||fal!=-1){
		printf("%d+%d\n",fah,fal);
	}
	else{
		printf("No\n");
	}

	free(*word);
	free(max);
	free(al);

	return 0;
}


int main(){
	int a[10][10],i,j,k=0,e,m,n,temp=0,hang,lie,h=0,result=0;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			scanf("%d",&a[i][j]);
		}
	}

	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			if(a[i][j]>temp){
				temp=a[i][j];
				hang=i;
				lie=j;
			}
		}
		e=a[0][lie];
		for(k=1;k<m;k++){
			if(a[k][lie]<e){
				e=a[k][lie];
				h=k;
			}
		}
		if(h==hang){
			printf("%d+%d",hang,lie);
			break;
		}else {
			result=-1;
			continue;
		}
	}
	if(result==-1){
		printf("No");
	}
	return 0;
}


void main()
{
	int a[8][8];
	int i,j,k,l,t;int m,n,max=0,jishuqi=0;
	int hang,lie;
	scanf("%d,%d",&hang,&lie);
	for(i=0;i<=hang-1;i++)
		for(j=0;j<=lie-1;j++)
		{scanf("%d",&a[i][j]);}
	for(i=0;i<=hang-1;i++)
	{
		for(j=0;j<=lie-1;j++)
			if(a[i][j]>max)
			{
				max=a[i][j];
			    m=i;n=j;
			}
			/*printf("%d %d\n",m,n);*/
			for(k=0;k<=hang-1;k++)
			{
				if(a[m][n]<a[k][n])
					jishuqi=jishuqi+1;
			}
			if(jishuqi==hang-1)
				printf("%d+%d\n",m,n);
			else printf("No\n");
			break;
	}
}


void main()
{
	int a[8][8]={0},m,n,i,j,k,max,min;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)scanf("%d",&a[i][j]);
	for(i=0;i<m;i++)
	{
		max=a[i][0];
		for(j=0;j<n;j++)if(a[i][j]>max)max=a[i][j];
		for(j=0;j<n;j++)if(a[i][j]==max)break;
		min=max;
		for(k=0;k<m;k++)if(a[k][j]<min)min=a[k][j];
		if(max==min)break;
	}
	if(i==m)printf("No");
	else printf("%d+%d",i,j);
}


void main()
{
	int a[8][8],an=0;
	int m,n,p,q,flag=0;
	int i,j;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	i=0;
//	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		{
			if(a[i][j]>an)
			{an=a[i][j];p=i;q=j;}
		}

		for(i=0;i<m;i++)
		{
			if(a[i][q]<an)
			{flag=0;break;}
			else flag=1;
		}
	//	if(flag)break;
	}
	if(flag)printf("%d+%d",p,q);
	else printf("No");
}


int main()
{
	int i,j,k,a[8][8],M,N;
	int max,maxj,flag;
	scanf("%d,%d",&N,&M);
	for(i=0;i<N;i++)
	{
	 for(j=0;j<M;j++)
	 {
		scanf("%d",&a[i][j]);
	 }
	}
    for(i=0;i<N;i++)
	{
		max=a[i][0];
		maxj=0;
		for(j=0;j<M;j++)
		{
			if(a[i][j]>max)
			{
				max=a[i][j];
				maxj=j;
			}
		}
		flag=1;
        for(k=0;k<N;k++)
		{
			if(max>a[k][maxj])
			{
				flag=0;
				break;
			}
		}
		if(flag)
			{
				printf("%d+%d",i,maxj);
				break;
			}
	}
 if(!flag)
 {
	 printf("No");
 }
 return 0;
}


int main()
{
	int array[100][100];
	int row,col,i,j,m,n,k,min,sum=0, temp;
	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d", &array[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		m=col-1;
		for(j=0;j<col;j++)
		{
			if(array[i][j]>array[i][m])
			{
				m=j;
			}
		}
		n=i;
		min=i;
		for(k=0;k<row;k++)
		{
			if(array[k][m]<array[min][m])
			{
				min=k;
			}
		}
		if(n==min)
		{
			printf("%d+%d",n,m);
			break;
		}
		if(n!=min)
		{
			sum+=1;
		}
	}
	if(sum == row)
	{
    		printf("No");
	}
	return 0;
}


int main(){
int array[8][8],ROW,COL,i=0,j=0,max=0,min=0,m=0,n=0,s=0,k=0,flag=0;
		scanf("%d,%d",&ROW,&COL);
		for(i=0;i<ROW;i++){
			for(j=0;j<COL;j++){
				scanf("%d",&array[i][j]);
			}
		}
		for(i=0;i<ROW;i++){
			for(j=0;j<COL;j++){
					if(array[i][j]>max){
						max=array[i][j];
						m=i;
						n=j;
					}
			}
			for(k=0;k<ROW&&!flag;k++){
				if(array[m][n]>array[k][n]){
					flag=1;
				}
			}
			if(!flag){
				printf("%d+%d",m,n);
			}else{s++;}
		}
		if(s==ROW){printf("No");}
		return 0;
}


int main(int argc, char* argv[])
{
	int c[8][8];
	int i,j,a,b;

	scanf("%d,%d\n",&a,&b);

	for(i=0;i<a;i++)
	{
		for(j=0;j<b;j++)
		{

	       scanf("%d",&c[i][j]);
		}
	}
    int p,q,k,count=0;

	for(i=0;i<a;i++)
	{
        p=i;
		q=0;
		for(j=0;j<b-1;j++)
		{

			if(c[p][q]<c[i][j+1])
				q=j+1;
		}
		count=0;
		for(k=0;k<a;k++)
		{
			if(c[p][q]<=c[k][q])
				count++;
		}
		if(count==a)
			break;
	}
	if(count==a)
		printf("%d+%d",p,q);
	else
		printf("No");

	return 0;
}


int s[10][10];
int tag[10][10];

int main()	{
	int i, j;
	int a, b;
	scanf("%d,%d", &a,&b);
	for(i = 0; i < a; i ++)	{
		for(j = 0; j < b; j ++)	{
			scanf("%d", &s[i][j]);
			tag[i][j] = 0;
		}
	}

	for(i = 0; i < a; i ++)	{
		int cur_max = s[i][0];
		int cur_b = 0;
		for(j = 1; j < b; j ++)	{
			if(s[i][j] > cur_max)	{
				cur_max = s[i][j];
				cur_b = j;
			}
		}
		tag[i][cur_b] = 1;
	}

	for(i = 0; i < b; i ++)	{
		int cur_min = s[0][i];
		int cur_a = 0;
		for(j = 1; j < a; j ++)	{
			if(s[j][i] < cur_min)	{
				cur_min = s[j][i];
				cur_a = j;
			}
		}
		if(tag[cur_a][i] == 1)	{
			printf("%d+%d\n", cur_a, i);
			break;
		}
	}
	if(i == b)	{
		printf("No\n");
	}
	return 0;
}


int g(int a[][8],int m,int j)
{
	int min=a[0][j],i,y;
	for(i=0;i<m;i++)
	{
		if(a[i][j]<=min)
			{
				min=a[i][j];
				y=i;
			}
	}
	return y;
}

int f(int a[][8],int n,int i)
{
	int j,max=a[i][0],x;

		for(j=0;j<n;j++)
		{
			if(a[i][j]>=max)
			{
				max=a[i][j];
				x=j;
			}
		}
		return x;
}

int main()
{

	int a[8][8];
	int row, col;
	int i,j,k,p;
	scanf("%d,%d",&row,&col);

	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		k=f(a,col,i);
		p=g(a,row,k);
		if(p==i)
		{
			printf("%d+%d\n",p,k);
			i=row+1;
		}
	}
	if(i==row)
		printf("No\n");

	return 0;
}


int main()
{
	int m,n;
	int a[8][8];
	int i,j,k;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			scanf("%d",&a[i][j]);
		}
	}
	int max,min;
	int col;
	for(i=0;i<m;i++)
    {
                 max=0;
                 min=9999;
                    for(j=0;j<n;j++)
	                {
                                    if(a[i][j]>max)
									{max=a[i][j];
                                    col=j;}
                                    }
                    min=max;
                    for(k=0;k<m;k++)
                    {
                                    if(k==i)continue;
                                    else if(a[k][col]<min)break;
                                    }
                    if(k==m){printf("%d+%d\n",i,col);return 0;}
                    }
	printf("No\n");
	return 0;
}


void main()
{
	int a[10][10]={0},p,q,i,j,maxi,maxj,max,t,time,m;

	scanf("%d,%d",&p,&q);

	for(i=0;i<p;i++)
		for(j=0;j<q;j++)
			scanf("%d",&a[i][j]);

		m=0;
	for(i=0;i<p;i++)
	{
		max=a[i][0];
		maxi=i;
		maxj=0;
		time=0;
		for(j=0;j<q;j++)
		{
			if(a[i][j]>max)
			{
				max=a[i][j];
				maxj=j;
				maxi=i;
			}
		}
		for(t=0;t<p;t++)
		{
			if(a[t][maxj]<max)
				break;
			else
				time++;
		}
		if(time==p)
		{
			printf("%d+%d",maxi,maxj);
			m=1;
		}
	}
	if(m==0)
		printf("No");

}


int main()
{
	int hang,lie;
	int a[8][8];
	int i,j,n=0,h;
	int max;
	int hmax,q=0;

	scanf("%d,%d",&hang,&lie);

	for(i=0;i<hang;i++)
	{
		for(j=0;j<lie;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}

	for(i=0;i<hang;i++)
	{
		max=a[i][0];
		hmax=0;
		n=0;
		for(j=0;j<lie;j++)
		{

			if(max<a[i][j])
			{
				max=a[i][j];
				hmax=j;
			}
		}

		for(h=0;h<hang;h++)
		{
			if(max>a[h][hmax])

			{
				break;
			}

			else
			{
				n++;
			}
		}
		if(n==hang)
	{
		printf("%d+%d",i,hmax);
		q=1;
		break;
	}

	}

	if(q==0)
	{
		printf("No");
	}
	return 0;

}


int h,l;
int a[10][10];

int find1(int p,int q){
	int i;
	int max=a[p][q];
	for(i=0;i<l;i++){
		if(a[p][i]>max){
			return 1;
		}
	}
	return 2;
}

int find2(int p,int q){
	int j;
	int min=a[p][q];
	for(j=0;j<h;j++){
		if(a[j][q]<min){
			return 3;
		}
	}
	return 2;
}

int main(){
	int i,j;
	scanf("%d,%d",&h,&l);
	for(i=0;i<h;i++){
		for(j=0;j<l;j++){
			scanf("%d",&a[i][j]);
		}
	}
	for(i=0;i<h;i++){
		for(j=0;j<l;j++){
			if(find1(i,j)==find2(i,j)){
				printf("%d+%d",i,j);
				return 0;
			}
		}
	}
	printf("No");
	return 0;
}


void find(int x[100][100],int m,int n)
{
	int i,j,k,num,nam,all=0;
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
		{
             num=0;
			 nam=0;
		 for(k=0;k<n;k++)
		 {
			 if(x[i][k]>x[i][j])
              num++;
		 }
		 for(k=0;k<m;k++)
		 {
          if(x[k][j]<x[i][j])
			  nam++;
		 }
		 if(num==0&&nam==0)
		 {
			 printf("%d+%d\n",i,j);
		 all++;
		 }
		}
		if(all==0)
			printf("No");
}
void main( )
{
   int as[100][100],i,j,a,b;
   char c;
//void find(*x,int m,int n)
   scanf("%d",&a);
   c=getchar();
   scanf("%d",&b);
   for(i=0;i<a;i++)
	   for(j=0;j<b;j++)
		   scanf("%d",&as[i][j]);
	   find(as,a,b);
}


void main()
{
	int a[8][8];
	int row(int x[8][8],int y,int i,int j,int m,int n);
	int m,n,i,j;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		{
			if(row(a,a[i][j],i,j,m,n)==1)
			{
				printf("%d+%d\n",i,j);goto l1;
			}
		}
	}
	printf("No\n");
l1:;
}

int row(int x[8][8],int y,int i,int j,int m,int n)
{
	int p,max=x[i][0],min=x[0][j];
	for(p=0;p<n-1;p++)
	{
		if(x[i][p+1]>x[i][p])
		{
			max=x[i][p+1];
		}
	}
	if(y==max)
	{
		for(p=0;p<m-1;p++)
		{
			if(x[p+1][j]<x[p][j])min=x[p+1][j];
		}
		if(y==min)return 1;
		else return 0;
	}
	else return 0;
}


int main()
{
	int row , col , a[8][8], an_dian_shu = 0;
	char dou_hao;
	scanf("%d%c%d",&row,&dou_hao,&col);
	for(int i = 0;i<row;i++){
		for(int j = 0;j<col;j++){
			scanf("%d",&a[i][j]);
		}
    }
	for(int i = 0;i<row;i++)
	{
		for(int j = 0;j<col;j++)

		{
			int hang_zui_da = 0 , lie_zui_xiao = 0;
			for(int k = 0;k<col;k++)
			{
				if(a[i][j] < a[i][k])
					hang_zui_da ++;
			}

			for(int l = 0;l<row;l++)
			{
				if(a[i][j] > a[l][j])
					lie_zui_xiao ++;
			}

			if(hang_zui_da == 0 && lie_zui_xiao == 0)

			{
				printf("%d+%d",i,j);
				an_dian_shu ++;
			}
		}
	}
	if(an_dian_shu == 0){
		printf("No");
	}
	return 0;
}


void main()
{
	int a[9][9],h,l,i,j,k,max,maxl,min,minh,cas=0;
	char in[100];
	scanf("%d,%d",&h,&l);
	for(i=1;i<=h;i++)
		for(j=1;j<=l;j++)
			scanf("%d",&a[i][j]);
	for(i=1;i<=h;i++)
	{
		max=a[i][1];maxl=1;
		for(j=1;j<=l;j++)
			if(a[i][j]>max)
			{
				max=a[i][j];
				maxl=j;
			}
		min=a[1][maxl];minh=1;
		for(k=2;k<=h;k++)
			if(a[k][maxl]<min)
			{
				min=a[k][maxl];
				minh=k;
			}
		if(minh==i)
		{cas=1;printf("%d+%d\n",i-1,maxl-1);}
	}
	if(cas==0)
		printf("No\n");
}


int main()
{
	int m,n,a[8][8],i,j,hang[8],judge,max,y,x;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			scanf("%d",&a[i][j]);
			if(j==0){
				hang[i]=0;
			}else{
				if(a[i][j]>a[i][j-1]){
					hang[i]=j;
				}
			}
		}
	}
	for(i=0;i<m;i++){
		judge=1;
		max=a[i][hang[i]];
		for(j=0;j<m;j++){
			judge=judge&&(max<=a[j][hang[i]]);
		}
		if(judge){
			y=i;x=hang[i];
			break;
		}else {continue;}
	}
		if(judge)
			printf("%d+%d",y,x);
		else
			printf("No");

	return 0;
}


int main()
{
	int i,j,jz[8][8],ROW,COL,max,min,q,p,m,n,flag=0;
	scanf("%d,%d",&ROW,&COL);
	for(i=0;i<ROW;i++)
	{
		for(j=0;j<COL;j++)
		{
			scanf("%d",&jz[i][j]);
		}
	}
	for(i=0;i<ROW;i++)
	{
		q=0,p=0;
		max=jz[i][0];
		for(j=1;j<COL;j++)
		{
			if(jz[i][j]>max)
			{
				max=jz[i][j];
				q=j;
			}
		}
		min=jz[0][q];
		for(m=q,n=0;n<ROW;n++)
		{
			if(jz[n][m]<min)
			{
				min=jz[n][m];
				p=n;
			}

		}
		if(max==min)
		{
			flag=1;
			printf("%d+%d",p,q);
        }

	}
	if(flag==0)
		printf("No");
	return 0;
}


void main()
{
  int a[8][8];
  int h,l,i,j,k,temp,count,hh,ll;
  scanf("%d,%d",&h,&l);
  for(i=0;i<=h-1;i++)
    {
       for(j=0;j<=l-1;j++) scanf("%d",&a[i][j]);
    }
  for(i=0;i<=h-1;i++)
    {
      temp=a[i][0];count=0;
      for(k=1;k<=l-1;k++)
      { temp=temp>a[i][k]?temp:a[i][k];}
      for(j=0;j<=l-1;j++) {if(temp==a[i][j]) {ll=j; break;}}
      for(k=0;k<=h-1;k++)
      { if(a[i][ll]>a[k][ll]) break;
        else count++;
      }
      if(count==h) {hh=i;break;}
    }
  if(count!=h) printf("No");
  else printf("%d+%d",hh,ll);
}


int main()
{
	int sz[Row][Col];
	int i,k,m,j,row,col, temp1=0,temp2=0;
	scanf("%d,%d",&row,&col);
	for (i=0;i<row;i++)
	{
	for (j=0;j<col;j++)
		{
			scanf("%d",&(sz[i][j]));
		}
	}
	for (i=0;i<row;i++){
for (j=0;j<col;j++)
{
for (k=0;k<col;k++)
{
	if (k==j)
		continue;
    if (sz[i][j]>sz[i][k])
	{temp1++;}
}
for (m=0;m<row;m++)
{
	if (m==i)
		continue;
	if (sz[i][j]<sz[m][j])
	{
       temp2++;
	}
}
	if(temp1==col-1&&temp2==row-1)
	{printf("%d+%d\n",i,j);	break;}
	else
	{
		temp1=0;
		temp2=0;

	}
}
if(temp1==col-1&&temp2==row-1)
 break;
	}
if (temp1==0&&temp2==0)
{printf("No\n");}
return 0;
}


void main()
{
	int a[8][8];
	int i,j,k,n,m;
	int line[8]={0};
	int max,lie,num=0,flag=0;

	scanf("%d,%d",&n,&m);
	for(i=0;i<n;i++)
	for(j=0;j<m;j++)
	{
		scanf("%d",&a[i][j]);
	}
	for(i=0;i<n;i++)
	{
		num=0;
		max=a[i][0];
		for(j=0;j<m;j++)
		{
			if(a[i][j]>max)
			{
				max=a[i][j];
				line[i]=j;
			}
		}
		lie=line[i];
		for(k=0;k<n;k++)
		{
			if(a[k][lie]>=max)
				num=num+1;
		}
		if(num==n)
		{
			printf("%d+%d",i,lie);
			flag=1;
		}
	}
	if(flag==0) printf("No");
}


int main(){
 int a[8][8],i,k,row,col,max,x,min,l;
 scanf("%d,%d",&row,&col);
 for(i=0;i<row;i++){
   for(k=0;k<col;k++){
     scanf("%d",&a[i][k]);
                     }
                    }
 for(i=0;i<row;i++){
  max=a[i][0];
  for(k=0;k<col;k++){
     if(a[i][k]>=max){
       max=a[i][k];
       x=k;
                    }
                    }
  min=a[0][x];
 for(l=0;l<row;l++){
 if(a[l][x]<=min){
  min=a[l][x];

                }
                   }
 if(min==max){
  printf("%d+%d",i,x);
  goto CATHERING;
              }
                      }
 printf("No");
CATHERING:
 return 0;
  }


int main()
{
	int line,row;
	int maxLine[8]={0},minRow[8]={0};
	int num[8][8];
	char c;
	cin >> line >> c >> row;
	int i , j;
	for (i = 0; i != line;i++)
		for (j = 0; j!= row; j++)  cin >> num[i][j];
	for (i = 0; i != line;i++)
	{
		int maxl = -32767;
		for (j = 0; j!= row; j++)
			if (maxl < num[i][j])
			{
				maxl = num[i][j];
				maxLine[i] = j;
			}
	}
	for (j = 0; j!= row; j++)
	{
		int minr = 32767;
		for (i= 0; i!=line; i++)
			if (minr > num[i][j])
			{
				minr = num[i][j];
				minRow[j] = i;
			}
	}
	int ansline = -1, ansrow = -1;
	for (i = 0; i!=line; i++)
		if (minRow[maxLine[i]] == i)
		{
			ansline = i;
			ansrow = maxLine[i];
		}
	if (ansline != -1) cout << ansline << "+" << ansrow;
		else cout<< "No";

	return 0;
}


void main()
{
	int **sl,a,b,i,j,m,c,d;
	int row,col;
    int n=0;
	scanf("%d,%d",&row,&col);
	sl=(int**)malloc(row*sizeof(int*));

	for(i=0;i<row;i++)
	{
		sl[i]=(int*)malloc(col*sizeof(int));
		for(j=0;j<col;j++)
		{
			scanf("%d",&sl[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
           m=sl[i][j];
		   a=i;
		   b=j;
		   for(c=0;c<col;c++)
		   {
			   if(sl[i][c]>m)
				   break;
			   if(c==col-1)
			   {
				   for(d=0;d<row;d++)
				   {
					   if(sl[d][j]<m)
						   break;
					   if(d==row-1)
					   {
						   printf("%d+%d\n",a,b);
						   n++;
					   }
				   }
			   }
		   }
		}
	}
	if(n==0)printf("No\n");

}


void main()
{
	int i,j,t,r,c,s=0,max,flag,a[9][9];
	scanf("%d,%d",&r,&c);
	for(i=0;i<r;i++)
		for(j=0;j<c;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<r;i++){
		for(j=0,max=0;j<c;j++)
			if(a[i][j]>a[i][max])
				max=j;
		for(t=0,flag=0;t<r;t++)
			if(a[t][max]>=a[i][max])
				flag++;
		if(flag==r){
			s=1;
			break;
			}
	}
	if(s)
		printf("%d+%d",i,max);
	else
		printf("No");
}


void main()
{
	int row=0,line=0;
	int scores[8][8];
	int i=0,j=0;
	int maxline=0,minrow=0;
	int count=0;
	int i1=0;
	scanf("%d,%d",&row,&line);
	for(i=0;i<row;i++)
	{
		for(j=0;j<line;j++)
		{
			scanf("%d",&scores[i][j]);
		}
	}
	for(i=0;i<row-1;i++)
	{
		for(j=0;j<line-1;j++)
		{
			if(scores[i][maxline]<scores[i][j+1])
			{
				maxline=j+1;
			}
		}			//?????????maxline
		for(i1=0;i1<row-1;i1++)
		{
			if(scores[minrow][maxline]>scores[i1+1][maxline])
			{
				minrow=i1+1;
			}
		}					//?????????
		if(i==minrow)
		{
			printf("%d+%d\n",minrow,maxline);
			count++;
		}
	}
	if(count==0)
	{
		printf("No\n");
	}
	return 0;
}


int main(){

 int a,b,i,x,y,sz[8][8],tag,col,row,p;

 char c;

 scanf("%d %c %d",&a,&c,&b);

 for(x=0;x<a;x++){

  for(y=0;y<b;y++){

   scanf("%d",&sz[x][y]);

  }

 }

 for(x=0;x<a;x++){

  i=sz[x][0];

  col=0;

  row=0;

  tag=0;

  for(y=0;y<b;y++){

   if(sz[x][y]>i){

    i=sz[x][y];

    col=x;

    row=y;

   }

  }

  for(p=0;p<a;p++){

   if(i>sz[p][row])

    break;

   else

    tag=tag+1;

  }

  if(tag==a){

   printf("%d+%d",col,row);

   break;

  }

 }

 if(x==a){

  printf("No");

 }

 return 0;

}


int main(int argc, char* argv[])
{
	int row,col,i,j,k,l=0,t,p;
	int sz[8][8];
    int max,min;
	scanf("%d,%d",&row,&col);

	for(i=0;i<row;i++){
		for(j=0;j<col;j++){
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<row;i++){
		max=sz[i][0];

		for(j=0;j<col;j++){
			if(sz[i][j]>=max){
				max=sz[i][j];
				k=j;
			}
		}
		min=sz[0][k];

		for(t=0;t<row;t++){
			if(sz[t][k]<=min){
				min=sz[t][k];
				p=t;

			}
		}
		if(min==max){
			printf("%d+%d\n",p,k);
			l++;
		}

	}
	if(l==0){
		printf("No\n");
	}
	return 0;
}


int row, col;
int array[8][8];
int ctr1,ctr2,ctr3,ctr4;
int i;
int j=0;

int main(void)
{
scanf("%d,%d",&row,&col);

for(ctr1=0;ctr1<row;ctr1++)
{
for(ctr2=0;ctr2<col;ctr2++)
{
scanf("%d",&array[ctr1][ctr2]);
}
}
for(ctr1=0;ctr1<row;ctr1++)
{
for(ctr2=0;ctr2<col;ctr2++)
{
i=0;
for(ctr3=0;ctr3<col;ctr3++)
{if(array[ctr1][ctr2]>array[ctr1][ctr3])
i++;}
for(ctr4=0;ctr4<row;ctr4++)
{if(array[ctr4][ctr2]>array[ctr1][ctr2])
i++;}
if(i==row+col-2)
{j++;
printf("%d+%d",ctr1,ctr2);
}
}
}
if(j==0)
printf("No");
return 0;
}


int main()
{
	int flag;
	flag=0;
	int hang,lie;
	scanf("%d,%d",&hang,&lie);

	int i,j;
	int shuzu[100][100]={0};
	for(i=0;i<hang;i++)
	{
		for(j=0;j<lie;j++)
		{
			scanf("%d",&shuzu[i][j]);
		}
	}

	int tiaoxini[100][2]={0};
	int const1,const2,max,min;
	const1=0;
	const2=0;
	for(i=0;i<hang;i++)
	{
		max=0;
		for(j=0;j<lie;j++)
		{
			if(shuzu[i][j]>max)
			{
				max=shuzu[i][j];
				tiaoxini[const1][const2]=i;
				const2++;
				tiaoxini[const1][const2]=j;
				const2--;
			}
		}
		const1++;
	}
	const2=0;
	for(i=0;i<lie;i++)
	{
		min=10000;
		for(j=0;j<hang;j++)
		{
			if(shuzu[j][i]<min)
			{
				min=shuzu[i][j];
				tiaoxini[const1][const2]=j;
				const2++;
				tiaoxini[const1][const2]=i;
				const2--;
			}
		}
		const1++;
	}

	const2=0;
	for(i=0;i<const1;i++)
	{
		for(j=1;j<=const1;j++)
		{
			if(tiaoxini[i][0]==tiaoxini[j][0]&&tiaoxini[i][1]==tiaoxini[j][1])
			{
				printf("%d+%d",tiaoxini[i][0],tiaoxini[i][1]);
				flag++;
				break;
			}
		}
		break;
	}

	if(flag==0)
	{
		printf("No");
	}

	return 0;
}


int main(){
	int sz[10][10];
	int m,n,i,j,a,b,k;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++){
		for(j=0;j<n;j++){
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<m;i++){
		int max=0,maxindex;
		for(j=0;j<n;j++){
			if(sz[i][j]>max){
				max=sz[i][j];
			maxindex=j;
		}
		}
		int min=sz[0][maxindex],minindex=0;
		for(k=0;k<m;k++){
			if(sz[k][maxindex]<min){
				minindex=k;
				min=sz[k][maxindex];
			}
		}
		if(minindex==i){
			printf("%d+%d",i,maxindex);
			return 0;
		}
	}
			printf("No");
		return 0;
	}


void main()
{
	int hang,lie;
	int shuzu[8][8];
	int i,j,k;
	int flag1,flag2,flag3=0;
	scanf("%d,%d",&hang,&lie);
	for(i=0;i<hang;i++)
	{
		for(j=0;j<lie;j++)
		{
			scanf("%d",&shuzu[i][j]);
		}
	}
	for(i=0;i<hang;i++)
	{
		for (j=0;j<lie;j++)
		{
			flag1=0;
			flag2=0;
			for(k=0;k<lie;k++)
			{
				if(shuzu[i][j]<shuzu[i][k])
				{
					flag1=1;
					break;
				}
			}
			if(flag1==0)
			{
				for(k=0;k<hang;k++)
				{
					if(shuzu[i][j]>shuzu[k][j])
					{
						flag2=1;
						break;
					}
				}
				if(flag2==0)
				{
					printf("%d+%d",i,j);
					flag3++;
				}
			}

		}
	}
		if(flag3==0)
			printf("No");
}


int main(int argc, char* argv[])
{
	int matrix[8][8];
	int a, b, row, col, n, m, p, roww, coll, decide;
	scanf("%d,%d",&a,&b);
	a=a-1;
	b=b-1;
	decide=0;
	for(row=0;row<=a;row++)
	{
		for(col=0;col<=b;col++)
		{
			scanf("%d",&matrix[row][col]);
		}
	}
	for(row=0;row<=a;row++)
	{
		for(col=0;col<=b;col++)
		{
			n=matrix[row][col];
			m=0;
			for(roww=0;roww<=a;roww++)
			{
				if(n<matrix[roww][col])
				{
					m++;
				}
			}
			p=0;
			for(coll=0;coll<=b;coll++)
			{
				if(n>matrix[row][coll])
					p++;
			}
			if(m==a&&p==b)
			{
				printf("%d+%d",row,col);
				decide=1;

			}
		}
	}
	if(decide==0)
		printf("No");
	return 0;
}


int main(){
    int hang,lie,shuzu[8][8];
    int i,k,number,shu=0;
    scanf("%d,%d",&hang,&lie);
    for(i=0;i<hang;i++){
                       for(k=0;k<lie;k++){
                                           scanf("%d",&shuzu[i][k]);
                                           }
                       }
    for(i=0;i<hang;i++){
                        number=0;
                        for(k=0;k<lie;k++){
                                           if(shuzu[i][k]>shuzu[i][number]){
                                                                            number=k;
                                                                            }
                                           }//????????????
                        for(int j=0;j<hang;j++){
                                if(shuzu[i][number]>shuzu[j][number]){
                                                                      break;//????????????????????
                                }else{
                                      if(j==hang-1){//???????????????????break?
                                                    printf("%d+%d\n",i,number);
                                                    shu++;
                                                    break;
                                                    }
                                      continue;
                                      }
                        }
    }
    if(shu==0){
               printf("No");
               }
    return 0;
}


int max(int *p,int n)
{
	int i=0,j;
	for (j=1;j<n;j++)
		if (*(p+j)>*(p+i))
			i=j;
	return(i);
}
int min(int *p,int n,int m)
{
	int i;
	for (i=0;i<m;i++)
		if (*(p+i*n)<*p)
			break;
	if (i==m)
		return(1);
	else
		return(-1);
}
void main()
{
	int a[8][8],m,n,i,j,t,k=0;
	scanf("%d,%d",&m,&n);
	for (i=0;i<m;i++)
		for (j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	for (i=0;i<m;i++)
	{
		t=max(*(a+i),n);
		if (min(*(a+i)+t,8,m)==1)
		{
			printf("%d+%d\n",i,t);
			k=1;
		}
		else;
		if (k==1)
			break;
	}
	if (k==0)
		printf("No\n");
}


int a[8][8];
void main()
{int i,j,hang,lie,b,d,max;
 int panduan(int i,int j,int hang);
 scanf("%d,%d",&hang,&lie);
 for(i=0;i<=hang-1;i++)
	{for(j=0;j<=lie-1;j++)
		{scanf("%d",&a[i][j]);
		}
	}
 for(i=0;i<=hang-1;i++)
    {max=a[i][0],b=0;
     for(j=1;j<=lie-1;j++)
        {if(a[i][j]>max)
        	{max=a[i][j];
        	 b=j;
        	}
        }
     d=panduan(i,b,hang);
     if(d)
       {printf("%d+%d",i,b);
       	break;
       }
     if(i==hang-1&&d==0)
       printf("No");
    }
}

int panduan(int i,int j,int hang)
{int k,min,d=0;
 min=a[0][j];
 for(k=1;k<=hang-1;k++)
    {if(a[k][j]<min)
    	min=a[k][j];
    }
 if(a[i][j]==min)
   d=1;
 return(d);
}


void main()
{
	int row,array;
	scanf("%d,%d",&row,&array);
	int matrix[9][9]={0};
	int i=0;
	for(i=0;i<row;i++)
	{
		int j=0;
		for(j=0;j<array;j++)
		{
			if(j==0) scanf("%d",&matrix[i][j]);
			else scanf(" %d",&matrix[i][j]);
		}
	}
	int max_row[9]={0},min_array[9]={0};
	int k=0,max_mark=0;
	for(k=0;k<row;k++)
	{
		max_row[k]=matrix[k][0];
		int l=0;
		for(l=0;l<array;l++)
		{
			if(max_row[k]<matrix[k][l])
			{
				max_row[k]=matrix[k][l];
				max_mark=l;
			}
		}
		min_array[k]=max_row[k];
		int m=0;
		int min_mark=0;
		for(m=0;m<row;m++)
		{
			if(min_array[k]>matrix[m][max_mark])
			{
				min_array[k]=matrix[m][max_mark];
				min_mark=m;
			}
		}
		if(max_row[k]==min_array[k])
		{
			printf("%d+%d",min_mark,max_mark);
			break;
		}
		else
		{
			if(k==row-1) printf("No");
		}
	}
}


int rec[10][10];
int m,n;
int i,j,statej,statejj,min,max,flag;
main()
{
	scanf("%d,%d",&m,&n);
	for(i=1;i<=m;i++)
		for(j=1;j<=n;j++) scanf("%d",&rec[i][j]);
	flag=0;
	for(i=1;i<=m;i++)
	{
		max=0;
		for(j=1;j<=n;j++) if (rec[i][j]>max)
		{
			max=rec[i][j];
			statej=j;
		}
		min=32767;
		for(j=1;j<=m;j++) if (rec[j][statej]<min)
		{
			min=rec[j][statej];
			statejj=j;
		}
		if (i==statejj)
		{
			printf("%d+%d\n",i-1,statej-1);
			flag=1;
			break;
		}
	}
	if (flag==0) printf("No\n");

}


struct num
{
	int hang;
	int lie;
	int shu;
};

int main()
{
	int row,col;
	int i,j;
	int p,q;
	int a[8][8];
	int flag=0;
	struct num b[8],c[8]; //b->row max  c->col min
	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&a[i][j]);
		}
		p=a[i][0];
		for(j=0;j<col;j++)
		{
			if(a[i][j]>=p)
			{
				p=a[i][j];
				b[i].shu=p;
				b[i].hang=i;
				b[i].lie=j;
			}
		}
	}
	for(j=0;j<col;j++)
	{
		q=a[0][j];
		for(i=0;i<row;i++)
		{
           if(a[i][j]<=q)
		   {
			   q=a[i][j];
			   c[j].shu=q;
			   c[j].hang=i;
			   c[j].lie=j;
		   }
		}
	}
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{

			if(b[i].shu==c[j].shu)
			{
			   printf("%d+%d",b[i].hang,b[i].lie);
			   flag=1;
			   break;
			}
		}
	}
	if(flag==0)
		printf("No");
	return 0;
}


int array[10][10],max[10],min[10];
int i;
int main()
{
	int Row,Col,f=-1,row,col;
    scanf("%d,%d",&Row,&Col);
    for(row=0;row<Row;row++)
 {
     for(col=0;col<Col;col++)
	 {
         scanf("%d",&array[row][col]);
	 }
}

    for(row=0;row<Row;row++)
	{
		max[row]=0;
       for( i=1;i<Col;i++)
	   {
            if(array[row][max[row]]<array[row][i])
			{
              max[row]=i;
			}

	   }
	}

    for(col=0;col<Col;col++)
	{
		  min[col]=0;
          for( i=0;i<Row;i++)
		  {
               if(array[min[col]][col]>array[i][col])
			   {
                   min[col]=i;
			   }
		  }

	}

  for(row=0;row<Row;row++)
  {
       if(min[max[row]]==row)
	   {
          printf("%d+%d",row,max[row]);
           f=1;
          break;
	   }
  }
       if(f==-1)
    {
       printf("No");
    }
    return 0;
 }


int main()
{
 int a[N][M],i,j,t,k,max,min,l=0;
int row,col;

scanf("%d,%d",&row,&col);

for (i=0;i<row;i++)
  for (j=0;j<col;j++)
   scanf("%d",&a[i][j]);

for (i=0;i<row;i++)
  {
   max=a[i][0];
   for (j=0;j<col;j++)
    if (a[i][j]>=max)
    {
     max=a[i][j];k=j;
    }
    min=a[0][k];
    for (t=0;t<row;t++)
     if (a[t][k]<=min)
      min=a[t][k];
     if (max==min)
     {printf("%d+%d\n",i,k);l++;}
  }
  if(l==0)
   printf("No");
return 0;
}


int main()
{
	int sz[ROW][COL];
	int i,j,I2,J,none,row,col;
	int k=0;
	none=0;

	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&sz[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		J=0;
		for(j=0;j<col-1;j++)
		{
			if(sz[i][j]<sz[i][j+1])
			{
				J=j+1;
			}
			else
			{
				continue;
			}
		}
		I2=0;
		for(k=0;k<row-1;k++)
		{
			if(sz[k][J]>sz[k+1][J])
			{
				I2=k+1;
			}
		}
		if(i==I2)
		{
			printf("%d+%d\n",I2,J);
		}
		else
		{
			none++;
		}
	}
	if(none==row)
	{
		printf("No");
	}
	return 0;
}


int main(){
	int a[8][8],maxcolIndex[8];
	int row,col,i,flag=0;
	int ROW,COL;
	scanf("%d",&ROW);
	getchar();
	scanf("%d",&COL);
	for(row=0;row<ROW;row++){
		for(col=0;col<COL;col++){
			scanf("%d",&a[row][col]);
		}
	}
	for(row=0;row<ROW;row++){
		maxcolIndex[row]=0;
        for(col=0;col<COL;col++){
			if(a[row][col]>a[row][maxcolIndex[row]]){
				maxcolIndex[row]=col;
			}
		}
	}
    for(row=0;row<ROW;row++){
        for(i=0;i<ROW;i++){
			if(a[i][maxcolIndex[row]]<a[row][maxcolIndex[row]]){
				break;
			}
			if(a[i][maxcolIndex[row]]>=a[row][maxcolIndex[row]]&&i==ROW-1){
				printf("%d+%d",row,maxcolIndex[row]);
				flag=1;
			}
		}
	}
	if(flag==0){
		printf("No");
	}
	return 0;
}


int N,M;
int data[10][10];
int mincol[10],maxrow[10];

int main(){
    int i,j;
    int flag = 0;
    scanf("%d,%d",&N,&M);
    for (i=0;i<10;i++){
        mincol[i] = 2147483647;
        maxrow[i] = -2147483647;
    }

    for (i=0;i<N;i++){
        for (j=0;j<M;j++){
            scanf("%d",&data[i][j]);
            if (data[i][j] < mincol[j]) {
                mincol[j] = data[i][j];
                //mcpos[j] = i;
            }
            if (data[i][j] > maxrow[i]) {
                maxrow[i] = data[i][j];
                //mrpos[i] = j;
            }
        }
    }

    /*for (i=0;i<M;i++){
        printf("%d ",mincol[i]);
    }
    printf("\n");
    for (i=0;i<N;i++){
        printf("%d ",maxrow[i]);
    }
    printf("\n");
    */

    for (i=0;i<N;i++){
        for (j=0;j<M;j++){
            if (mincol[j] == data[i][j] && maxrow[i] == data[i][j]){
                flag = 1;
                printf("%d+%d\n",i,j);
            }
        }
    }
    if (!flag) printf("No\n");

    return 0;
}


int max(int a[],int n);
void main()
{
	int a[8][8],i,j,m,n,p,flag=0;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
		for(i=0;i<m;i++)
		{
			p=max(a[i],n);
			for(j=0;j<m;j++)
				if(a[i][p]<=a[j][p])
					flag=1;
				else
				{
					flag=0;
					break;
				}
				if(flag)
				{
					printf("%d+%d\n",i,p);
					break;
				}
		}
		if(flag==0)
			printf("No\n");
}
int max(int a[],int n)
{
	int i,z=0;
	for(i=1;i<n;i++)
		if(a[i]>a[z])
			z=i;
		return(z);
}


void main()
{
	void flag(int b[][8],int row,int col);

	int row,col,i,j;
	int a[8][8];
	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
				for(j=0;j<col;j++)
				{
			scanf("%d",&a[i][j]);
				}
				}
	flag(a,row,col);

}
void flag(int b[][8],int row,int col)
{
	int i,j,count=0;
	int max[8],rmax[8],cmax[8],min[8],rmin[8],cmin[8];
	for(i=0;i<row;i++)
	{
		max[i]=b[i][0];
		for(j=0;j<col;j++)
			if(b[i][j]>=max[i])
			{
				max[i]=b[i][j];
				cmax[i]=j;
			}

			rmax[i]=i;

	}
	//for(j=0;j<row;j++)
		//printf("%d",cmax[j]);
	for(j=0;j<col;j++)
	{
		min[j]=b[0][j];
		for(i=0;i<row;i++)
			if(b[i][j]<=min[j])
			{
				min[j]=b[i][j];
				rmin[j]=i;
			}

				cmin[j]=j;
	}
//for(i=0;i<col;i++)
//		printf("%d",rmin[i]);
	if(row<=col)
		for(i=0;i<row;i++)
			for(j=0;j<col;j++)
			if((rmax[i]==rmin[j])&&(cmax[i]==cmin[j]))
			{
				printf("%d+%d",rmax[i],cmax[i]);
				count=count+1;
			}
	if(count==0)
		printf("No");

}


int sz[8][8];
int main(){
	int a,b,row,row1,col,e,t,s,m=0;
	scanf("%d,%d",&a,&b);
	for(row=0;row<a;row++){
		for(col=0;col<b;col++){
			scanf("%d",&sz[row][col]);
		}
	}
	for(row=0;row<a;row++){  //11
//		printf("row= %d\n",row);
		e=sz[row][0];
		t=0;
		s=row;
		for(col=0;col<b;col++){  //12
				if(e<sz[row][col]){
				e=sz[row][col];
				t=col;
				}
		}
		for(row1=0;row1<a;row1++){
//			printf("row1=%d\n",row1);
			if(e>sz[row1][t]){
				break;
			}
			else if(row1==a-1){
				printf("%d+%d",s,t);
				m=1;
			}
		}
		if(m==1)
			break;
		else if(m==0 && row==a-1)
			printf("No");
	}
	return 0;
}


int main()
{
   int sz[8][8];
   int r,c,m,n,k;
   scanf("%d,%d",&r,&c);
   for(m=0;m<r;m++)
   {
	   for(n=0;n<c;n++)
	   {
		   scanf("%d",&sz[m][n]);
	   }
   }
    for(m=0;m<r;m++)
	{   int max=0,maxindex;
	   for(n=0;n<c;n++)
	   {
		   if (sz[m][n]>max){
			   max=sz[m][n];
			   maxindex=n;
		   }
	   }
	   int min=sz[0][maxindex],minindex=0;
	   for(k=0;k<r;k++)
	   {
		   if(sz[k][maxindex]<min){
			   minindex=k;
			   min=sz[k][maxindex];
		   }
	   }
	   if(minindex==m){
		   printf("%d+%d",m,maxindex);
		   return 0;
	   }
	}
		 printf("No");
		return 0;
}


void main()
{
	int m, n, a[8][8], i, j, maxi, t;
	int rowmax(int a[8][8], int m, int n, int r);
	int colmin(int a[8][8], int m, int n, int c);

	scanf("%d,%d", &m, &n);
	for(i=0; i<m; i++)
		for(j=0; j<n; j++)
			scanf("%d", &a[i][j]);

	t = 0;
	for(i=0; i<m; i++)
	{
		maxi = rowmax(a, m, n, i);
		if(i == colmin(a, m, n, maxi))
		{
			printf("%d+%d", i, maxi);
			t++;
		}
	}
	if(t==0)
		printf("No");

}

int rowmax(int a[8][8], int m, int n, int r)
{
	int z, j;
	z = 0;
	for(j=0; j<n; j++)
	{
		if(a[r][z]<a[r][j])
			z = j;
	}
	return(z);
}

int colmin(int a[8][8], int m, int n, int c)
{
	int z, i;
	z = 0;
	for(i=0; i<m; i++)
	{
		if(a[z][c]>a[i][c])
			z = i;
	}
	return(z);
}


int max(int x[],int h)
{
	int i,da=x[0],k=0;
	for(i=1;i<h;i++)
	{
		if(x[i]>da)
		{
			da=x[i];
			k=i;
		}
	}
	return(k);
}

int min(int x[][10],int l,int d)
{
	int i,xiao=x[0][d],k=0;
	for(i=1;i<l;i++)
	{
		if(x[i][d]<xiao)
		{
			xiao=x[i][d];
			k=i;
		}
	}
	return(k);
}

void main()
{
	int i,j,k,l,row,clone,x[10][10];
	char y;
    scanf("%d",&row);
	scanf("%c",&y);
	scanf("%d",&clone);
	for(i=0;i<row;i++)
		for(j=0;j<clone;j++)
			scanf("%d",&x[i][j]);

	for(j=0;j<row;j++)
	{
		k=max(x[j],clone);
		l=min(x,row,k);
		if(l==j)
		{
			printf("%d+%d",j,k);
			break;
		}
		else if(j==row-1)
			printf("No");
	}
}


int m,n,a[8][8];
int hang(int h)
{
	int i,temp=a[h][0],l=0;
	for(i=1;i<n;i++)
		if(a[h][i]>temp)
		{
			temp=a[h][i];
			l=i;
		}
	return l;
}
int lie(int l)
{
	int i,temp=a[0][l],h=0;
	for(i=1;i<m;i++)
		if(a[i][l]<temp)
		{
			temp=a[i][l];
			h=i;
		}
	return h;
}

void main()
{
	int i,j;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	}
	for(i=0;i<m;i++)
		if(lie(hang(i))==i)
		{
			printf("%d+%d",i,hang(i));
			break;
		}
	if(i==m)
		printf("No");
}


int main()
{
	int col,row,COL,ROW,n[8][8],max,min,a=0,geshu=0,b=0;
	scanf("%d,%d",&ROW,&COL);
	for(row=0;row<ROW;row++){
		for(col=0;col<COL;col++){
			scanf("%d",&n[row][col]);
		}
	}
	for(row=0;row<ROW;row++){
		max=0;
		for(col=0;col<COL;col++){
			if(n[row][col]>max){
				max=n[row][col];
				a=col;//??????????????a?
			}
		}
		min=n[row][a];
		for(row=0;row<ROW;row++){
			if(n[row][a]<min){
				min=n[row][a];
				b=row;//??????????????????b?
			}
		}
		if(max!=min){
			continue;
		}else{
			printf("%d+%d",b,a);
			geshu+=1;
			break;//????????????
		}
	}
	if(geshu==0){
		printf("No");
	}
	return 0;
}


void main()
{
	int row,col;
	int i=0,j=0;
	int k=0;
	int p=0,q=0;
	int max=0,min=0;
	int a[8][8];
	int num=0;

	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
			scanf("%d",&a[i][j]);
	}
	for(i=0;i<row;i++)
	{
		max=a[i][0];
		for(j=0;j<col;j++)
		{
			if(a[i][j]>max)
			{
				max=a[i][j];
				k=j;
			}
		}
		min=a[0][k];
		for(p=0;p<row;p++)
		{
			if(a[p][k]<min)
			{
				min=a[p][k];
				q=p;
			}
		}
		if(max==min)
		{
			num++;
			printf("%d+%d\n",q,k);
		}
	}
	if(num==0)
		printf("No");
}


void main()
{
 int m,n,j,i,p,a[9][9],hang,lie,k,t,max,min,truth=0;
 char c;
 scanf("%d%c%d",&m,&c,&n);
   for(j=0;j<m;j++)
   for(i=0;i<n;i++)
   scanf("%d",&a[j][i]);

   for(j=0;j<m;j++)
{   max=a[j][0];
         lie=0;
        for(i=0;i<n;i++)

             if(a[j][i]>max)
			 {max=a[j][i];
                   k=i;
                lie=k;
			 }

      min=a[j][lie];
      hang=j;
            for(p=0;p<m;p++)

               if(a[p][lie]<min)
			   {  min=a[p][lie];
                   t=p;
                 hang=t;
			   }

      if (max==min)
      {truth=1;
       printf("%d+%d\n",hang,lie);
       break;
      }
   }
   if(truth==0)
   printf("No\n");
}


int main()
{
	int sz[8][8];
	int m,n,row,col,a=0,b,c,d=0;
	scanf("%d,%d",&m,&n);
	for(int i=0;i<m;i++){
		for(int j=0;j<n;j++){
			scanf("%d",&sz[i][j]);
		}
	}
	row=0;
	while(row<m){
		a=sz[row][0];
		b=0;
		for(col=1;col<n;col++){
			if(a<sz[row][col]){
				a=sz[row][col];
				b=col;
			}
		}
		for(col=b,row=1;row<m;row++){
			c=sz[0][col];
			if(c>sz[row][col]){
				c=sz[row][col];
				d=row;
			}
		}
		if(a==c){
			printf("%d""+""%d",d,b);
			break;
		}else{
			row++;
			a=0;
		}
	}
	if(a==0){
		printf("No");
	}
	return 0;
}


int main(){
int i,j,k,a,b,c,d,e,max,flag;
int sz[8][8];
scanf("%d,%d",&a,&b);
for(i=0;i<a;i++){
	for(j=0;j<b;j++){
		scanf("%d",&(sz[i][j]));
	}
}

for(i=0;i<a;i++){
	int max=0;

	for(j=0;j<b;j++){

		if(max<sz[i][j])
		{
		max=sz[i][j];
		d=j;
		}
	}
 flag=1;

      for(k=0;k<a;k++){
		if(max>sz[k][d])

		   {flag=0;
		   break;
		   }
	  }

	  if(flag){
   printf("%d+%d",i,d);

 break;
   }

}
  if(!flag)
  printf("No");

return 0;
}


int a[100][100];
int xx[10],yy[10];

int hang(int no,int n)
{
	int ans=0;
	int max=a[no][0];
	for (int i=1;i<n ;i++ )
	{
		if (a[no][i]>max)
		{
			max=a[no][i];
			ans=i;
		}
	}
	return ans;
}

int lie(int no,int n)
{
	int ans=0;
	int max=a[0][no];
	for (int i=1;i<n ;i++ )
	{
		if (a[i][no]<max)
		{
			max=a[i][no];
			ans=i;
		}
	}
	return ans;
}

int main()
{
	int m,n;
	scanf("%d,%d",&n,&m);
	for (int i=0; i<n; i++)
	{
		for (int j=0; j<m; j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	for (int i=0; i<n; i++)
	{
		xx[i]=hang(i,m);
	}
	for (int i=0; i<m; i++)
	{
		yy[i]=lie(i,n);
	}
	for (int i=0; i<n; i++)
	{
		if (yy[(xx[i])]==i)
		{
			printf("%d+%d\n",i,xx[i]);
			return 0;
		}
	}
	printf("No\n");
	return 0;
}


int main ()
{
   int sz[8][8];
   int i,m,n,k,max,min,p,x,y;
   scanf("%d,%d",&m,&n);
   for(i=0;i<m;i++){
      for(k=0;k<n;k++){
          scanf("%d",&sz[i][k]);
        }
    }
   for(i=0;i<m;i++){
      int max=0;
      for(k=0;k<n;k++){
         if(sz[i][k]>max){
           max=sz[i][k];
           y=k;
          }
        }
	  int min=100;
      for(p=0;p<m;p++){
          if(sz[p][y]<min){
              min=sz[p][y];
              x=p;
             }
           }
         if(max==min){
         printf("%d+%d",x,y);
         return 0;
        }
    }
    printf("No");
    return 0;
}


int a[10][10];

int h_max(int h, int n)	{
	int tmp_max = -1, tmp_idx = 0;
	int i;
	for(i = 0; i < n; ++i)	{
		if(tmp_max < a[h][i])	{
			tmp_max = a[h][i];
			tmp_idx = i;
		}
	}
	return tmp_idx;
};

int c_min(int c, int m)	{
	int tmp_min = 999999, tmp_idx = 0;
	int i;
	for(i = 0; i < m; ++i)	{
		if(tmp_min > a[i][c])	{
			tmp_min = a[i][c];
			tmp_idx = i;
		}
	}
	return tmp_idx;
}

int main()	{
	int m, n;
	scanf("%d,%d", &m, &n);
	int i, j;
	for(i = 0; i < m; ++i)	{
		for(j = 0; j < n; ++j)	{
			cin >> a[i][j];
		};
	}
	int flag = 0;
	for(i = 0; i < m; ++i)	{
		int h = h_max(i, n);
		int c = c_min(h, m);
		if(i == c)	{
			flag = 1;
			cout << c << "+" << h << endl;
		}
	}
	if(flag == 0)	{
		cout << "No" << endl;
	}
	return 0;
}


int main()
{
	int m,n,i,j,a[8][8],max,lie,k;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<m;i++)
	{
		max=a[i][0];lie=0;
		for(j=1;j<n;j++)	if(a[i][j]>max)  { max=a[i][j];lie=j;}
		for(k=1;k<m;k++)	if(a[i][lie]>=a[k][lie]) break;
		if(k==m)	{printf("%d+%d",i,lie);break;}
	}
	if(i>=m) printf("No");
	return 0;
}


 int main()
 {
    int i,j,l,h,m,n,sz[50][50],flaga=0,flagb=0,flagc=0;
    scanf("%d,%d",&m,&n);
     for(i=0;i<m;i++)
       for(j=0;j<n;j++)
         scanf("%d",&sz[i][j]);

    for(i=0;i<m;i++)
     for(j=0;j<n;j++)
       {
        {for(l=0;l<n;l++)
          if(sz[i][j]<sz[i][l]) flaga++;
        for(h=0;h<m;h++)
          if(sz[i][j]>sz[h][j]) flagb++;}
        if(flaga==0&&flagb==0)
           {printf("%d+%d",i,j);flagc=1;break;}
          flaga=0;flagb=0;
       }
    if(flagc==0) printf("No");

    return 0;

 }


int andian[8][8];
int zuida[8]={0};
int zzhzb[8];
int main()
{
    int hang,lie,i,s=0,j,t=0,f,w=0,h;
    scanf("%d,%d",&hang,&lie);
    for(j=0;j<hang;j++)
	{
        for(i=0;i<lie;i++)
		{
scanf("%d",&andian[j][i]);
			if(andian[j][i]>zuida[j])
			{
				zuida[j]=andian[j][i];
				zzhzb[j]=i;
			}
		}

	}
	for(h=0;h<hang;h++)
	{
s=0;
		for(f=0;f<hang;f++)
		{
			if(andian[f][zzhzb[h]]>zuida[h])			           {
s++;
}
}
if(s==hang-1)
{
printf("%d+%d",h,zzhzb[h]);
w=1;
}

}
if(w==0)
{
printf("No");
}

	return 0;
}


void main()
{
	int a[10][10],i,j,k,m,n,s=0,max,min,weizhi;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);
	}
	for(i=0;i<m;i++)
	{
		max=a[i][0];weizhi=0;
		for(j=1;j<n;j++)
		{
			if(a[i][j]>max)
			{
				max=a[i][j];
				weizhi=j;
            }
        }
		min=a[0][weizhi];
		for(k=1;k!=i&&k<m;k++)
		{
			if(a[k][weizhi]<a[i][weizhi])
			break;
		}
		if(k==m)
		{
			printf("%d+%d",i,weizhi);
				s++;
		}
		if(s==1)break;
	}
	if(i==m)
		printf("No");
}


int main()
{
	int juzhen[M][M],y,x;
	scanf("%d,%d",&y,&x);
	int i,j,k;				//k=y'
	for(i=0;i<y;i++)
	{
		for(j=0;j<x;j++)
		{
			scanf("%d",&juzhen[i][j]);
		}
	}
	int max=0,maxy,maxx;
	for(i=0;i<y;i++)
	{
		for(j=0;j<x;j++)
		{
			if(juzhen[i][j]>max)
			{
				maxy=i;
				maxx=j;
				max=juzhen[i][j];
			}
		}
		int jishu=0;
		for(k=0;k<y;k++)
		{
			if(juzhen[k][maxx]<juzhen[maxy][maxx])
			{
				break;
			}
			else
			{
				jishu++;
			}
			if(jishu==y)
			{
				printf("%d+%d",maxy,maxx);
				return 0;
			}
		}

	}
if(i==y,j==x)
{
	printf("No");
}
return 0;
}


void main()
{
	int i,ii,j,jj,m,n,grid[9][9],real=1;
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
	{	for(ii=0;ii<n;ii++)
			scanf("%d",&grid[i][ii]);
	}
	for(i=0;i<m;i++)
	{
		for(ii=0;ii<n;ii++)
		{
                           if(real!=2)
			real=1;
			for(jj=0;jj<n;jj++)
			{
				if(jj==ii)
					continue;
				if(real==1)
					real=(grid[i][ii]>grid[i][jj])?1:0;
			}
			for(j=0;j<m;j++)
			{
				if(i==j)
					continue;
				if(real==1)
					real=(grid[i][ii]<grid[j][ii])?1:0;
			}
			if(real==1)
			{
				printf("%d+%d",i,ii);
				real=2;
			}
		}
	}
	if(real==0)
		printf("No");
}


void main()
{
	double a[10][10]={0}, temp;
	int i, j, m, n, count=0, na, w;
	scanf("%d,%d", &m, &n);
	for(i=0; i<m; i++)
		for(j=0; j<n; j++)
			scanf("%lf", &a[i][j]);
	for(i=0;i<m;i++)
	{
		temp=a[i][0];
		na=0;
		for(j=0; j<n; j++)
		{
			if(a[i][j]>temp)
			{
				temp=a[i][j];
//				m_=i;
				na=j;
			}
		}

		for(w=0; w<m; w++)

		{
				if(w == i)
					continue;
				if(a[w][na]<temp)
					break;
				if(w == m-1)
				{
						printf("%d+%d", i, na);
						count++;
						break;

				}
		}
		if(count==1)
		{
		break;
		}

	}
	if(count==0)
		printf("No\n");

}


int w[10][10];
int main(){
	int a,b;
	scanf("%d,%d",&a,&b);
	for(int i=0;i<a;i++)for(int j=0;j<b;j++)cin>>w[i][j];
	int p[10],q[10];
	memset(p,0,sizeof(p));
	memset(q,0,sizeof(q));
	for(int i=0;i<a;i++)
		for(int j=1;j<b;j++)if(w[i][j]>w[i][p[i]])p[i]=j;

	for(int i=1;i<a;i++)
		for(int j=0;j<b;j++)if(w[i][j]<w[q[j]][j])q[j]=i;

	for(int i=0;i<a;i++)for(int j=0;j<b;j++)
		if((p[i]==j)&&(q[j]==i)){
			cout<<i<<'+'<<j<<endl;
			return 0;
		}

	cout<<"No"<<endl;
	return 0;
}


int sz[10][10];
int main()
{
	int row,col,m=0,n=0,a=0,b;
	scanf("%d,%d",&row,&col);
	int i,j,k;
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&sz[i][j]);
		}
	}
	i=0;
	b=0;
		while(i<row)
	{
		k=0;
		for(j=1;j<=col;j++)
		{
			if(sz[i][m]<sz[i][j])
			{
			  m=j;
			}
			else
			{
				m=m;
			}
		}
		while(k<row)
		{
			if(sz[b][m]>sz[k][m])
			{
				a=0;
				break;
			}
			else
			{
				a=1;
				k++;
			}
		}
		if(a==1)
		{
			printf("%d+%d",i,m);
			break;
		}
		else
		{
		 i++;
		}
	}
		if(i==row)
		{
          printf("No");
		}
 return 0;
}


int m,n;// wide variable in front of all the functions

char cmin(int a[][N],char i,char k)
{
	char l;
	for(l=0;l<m;l++)
	{
		if(l==i)
			continue;
		else if(a[l][k]<a[i][k])
			return(0);
	}
	return(1);
}

void main()
{
	char i,j,k,flag=0;
	int a[N][N];
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&a[i][j]);

	for(i=0;i<m;i++)
	{
		for(k=0,j=0;j<n;j++)
		{
			if(a[i][j]>a[i][k])
				k=j;
		}

		if(cmin(a,i,k)!=0)
		{
			flag=1;
			printf("%d+%d",i,k);
			return;
		}
	}
	if(flag==0)
		printf("No");
}


int main(int argc, char* argv[])
{
	int num[8][8];
    int i,j;
	int hang,lie;
	scanf("%d,%d",&hang,&lie);
	for(i=0;i<hang;i++)
	{
		for(j=0;j<lie;j++)
		{
			scanf("%d",&num[i][j]);
		}
    }
	int max=num[0][0];
	int maxi,maxj;
	maxi=0;
	maxj=0;
	int beforei;
	int judge=0;
	for(i=0;i<hang;i++)
	{
		beforei=i;
		for(j=0;j<lie;j++)
		{
            if(max<num[i][j])
			{
				max=num[i][j];
			    maxi=i;
				maxj=j;
			}
		}
        for(i=0;i<hang;i++)
			{
                if(num[maxi][maxj]>num[i][maxj])
				{
					break;
				}
				if(i==hang-1)
				{
					printf("%d+%d",maxi,maxj);
				    judge=1;

				}
            }
	i=beforei;
	        if((i=hang-1)&&(judge==0))
			{
				printf("No");
			}

	}

               return 0;
}


void main()
{
	int n,m,i,j,max,maxj,flag,a[8][8],k;
	scanf("%d,%d",&n,&m);
	for(i=0;i<n;i++)
	{
		for(j=0;j<m-1;j++)
			scanf("%d ",&a[i][j]);
		scanf("%d\n",&a[i][m-1]);
	}
	for(i=0;i<n;i++)
	{
		max=a[i][0];
		maxj=0;
		for(j=0;j<m;j++)

			if(a[i][j]>max)
			{
				max=a[i][j];
				maxj=j;
			}

			flag=1;
			for(k=0;k<n;k++)

				if(max>a[k][maxj])
				{
					flag=0;
					continue;
				}

			if(flag==1)
			{
				printf("%d+%d",i,maxj);
				break;
			}

	}
	if(flag==0)
		printf("No");
}


void main()
{
	int n,m,i,j,col=0,line=0,k=0,a[8][8],l;
	scanf("%d,%d",&n,&m);
	for(i=0;i<n;i++)
	for(j=0;j<m;j++)
	scanf("%d",&a[i][j]);
	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		if(a[i][j]>a[i][line]) line=j;
		for(l=0;l<n;l++)
		if(a[i][line]>a[l][line]) break;
		if(l==n)
		{
			col=i;
			k=1;
			break;
		}
		line=0;
	}
	if(k==0) printf("No\n");
	else printf("%d+%d\n",col,line);
}


int main()
{
   int a[8][8],m,n,i,j,maxhang,hang,i1,flag=0;
   char c;
   scanf("%d %c %d",&m,&c,&n);
   for(i=0;i<=m-1;i++)
   for(j=0;j<=n-1;j++)
   scanf("%d",&a[i][j]);
   for(i=0;i<=m-1;i++)
   {
       flag=0;
        maxhang=0;
        hang=0;
        for(j=0;j<=n-1;j++)
            if(a[i][j]>maxhang)
            {
                maxhang=a[i][j];
                hang=j;
            }
        for(i1=0;i1<=m-1;i1++)
        {
            if(a[i1][hang]<maxhang)
            flag=1;
        }
        if(flag==0)
        {printf("%d+%d",i,hang);
        flag=2;
        break;}

   }
    if(flag!=2)
        printf("No");
return 0;
}


void main()
{
	int line,row,i,j,a[8][8],max,mline;
	scanf("%d,%d",&line,&row);
	for(i=0;i<=line-1;i++)
		for(j=0;j<=row-1;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<=line-1;i++)
	{
		max=a[i][0];
		mline=0;
		for(j=1;j<=row-1;j++)
			if(a[i][j]>max)
			{
				max=a[i][j];
				mline=j;
			}
		for(j=0;j<=line-1;j++)
			if(a[j][mline]<max)
				break;
		if(j>=line)
			break;
	}
	if(i>=line)
		printf("No");
	else
		printf("%d+%d",i,mline);
	getchar();
	getchar();
}


int main()
{
	int m,n;
	int map[8][8];
	scanf("%d,%d",&m,&n);
	int i,j;
	for (i=0; i<m; i++)
		for (j=0; j<n; j++)
			scanf("%d",&(map[i][j]));

	int p[8][8];
	for (i=0; i<m; i++)
		for (j=0; j<n; j++)
			p[i][j]=0;

	for (i=0; i<m; i++)
	{
		int max_j;
		max_j=0;
		for (j=1; j<n; j++)	if (map[i][j]>map[i][max_j]) max_j=j;
		p[i][max_j]=1;
	}

	int isAndian=0;
	for (j=0; j<n; j++)
	{
		int min_i;
		min_i=0;
		for (i=1; i<m; i++)	if (map[i][j]<map[min_i][j]) min_i=i;
		if (p[min_i][j]==1)
		{
			printf("%d+%d\n",min_i,j);
			isAndian=1;
			break;
		}
	}

	if (isAndian==0) printf("No\n");

	return 0;
}


void main()
{
 int a,b,maxline;
 int i,j,mi,mj,i1;
 int in[100][100];
 scanf("%d,%d",&a,&b);
 for(i=0;i<a;i++)
 {
    for(j=0;j<b;j++)
		scanf("%d",&in[i][j]);
 }
   for(i=0;i<a;i++)
   {
	   maxline=in[i][0];
	   mi=i;mj=0;

    for(j=1;j<b;j++)
	{
		if(in[i][j]>maxline)
		{maxline=in[i][j];mj=j;}
	}

    for(i1=0;i1<a;i1++)
	{if(maxline>in[i1][mj])break;}

	if(i1==a){printf("%d+%d\n",mi,mj);break;}
    if(i==a-1&&i1<a)printf("No\n");
   }

}


int main()
{
	int row,col,a[8][8];
	int i,j,K,num=0;
	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++){
		for(j=0;j<col;j++) scanf("%d",&a[i][j]);
	}
	for(i=0;i<row;i++){
		int max=a[i][0],lie=0,min;
		for(j=0;j<col;j++){
			if(max<a[i][j]){
				max=a[i][j],lie=j;
			}
		}
		min=max;
		for(K=0;K<row;K++){
			if(min>a[K][lie]) min=a[K][lie];
		}
		if(min==max) printf("%d+%d",i,lie),num++;
	}
	if(num==0) printf("No");
	return 0;
}


int main(){
	int hang,lie,i,e,m,d,f,j;
	f=0;
	int max[8];
	int min[8];
	int sz[8][8];
		scanf("%d,%d",&hang,&lie);
		for(i=0;i<hang;i++){
			for(j=0;j<lie;j++){
		scanf("%d",&sz[i][j]);
			}
		}

		for(i=0;i<hang;i++){

			max[i]=sz[i][0];

			for(j=1;j<lie;j++){
				if(max[i]<sz[i][j]) max[i]=sz[i][j];
				}

			for(j=0;j<lie;j++){
				if(max[i]==sz[i][j]) e=j;
				}

			for(m=0;m<hang;m++){
             min[e]=sz[0][e];
				if(min[e]>sz[m][e]) min[e]=sz[m][e];
				}

for(m=0;m<hang;m++){
				if(min[e]==sz[m][e]) d=m;
				}

if(d==i){
printf("%d+%d",d,e);
}else{
f++;
}

		}

		if(f==hang) printf("No");
	return 0;
}


void main()
{
   int a[9][9];
   int hang,lie;
   int i,j;
   scanf("%d,%d",&hang,&lie);
   for(i=0;i<hang;i++)
   {
     for(j=0;j<lie;j++)
      scanf("%d",&a[i][j]);
   }
   int k=0,x,l;
   int f=1;
for(i=0;i<hang;i++)
	{
       for(j=0;j<lie;j++)
	   {
		   if(a[i][j]>k){k=a[i][j];x=j;}
	   }
	   int flag=1;
       for(l=0;l<hang;l++)
	   {
		   if(k>a[l][x]) flag=0;
	   }
	   if(flag==1){printf("%d+%d",i,x);f=0;break;}
	}
if(f) printf("No");
}


void main()
{
	int n,m;
	int a[50][50],(*pa)[50];
	int i,j;
	int l=0;
	int max(int m,int a[50]);
	int min(int n,int i,int max,int (*p)[50]);
	pa=a;
	scanf("%d,%d",&n,&m);
	for(i=0;i<=n-1;i++)
		for(j=0;j<=m-1;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<=n-1;i++)
		if(min(n,i,max(m,a[i]),pa))
		{
			l++;
			printf("%d+%d\n",i,max(m,a[i]));
		}
	if(l==0) printf("No\n");
}

int max(int m,int a[50])
{
	int max1,i,k;
	max1=a[0];
	k=0;
	for(i=1;i<=m-1;i++)
		if(a[i]>max1)
		{
			max1=a[i];
			k=i;
		}
	return k;
}

int min(int n,int i,int max,int (*pa)[50])
{
	int j,m;
	m=*(*(pa+i)+max);
	for(j=0;j<=n-1;j++)
		if(*(*(pa+j)+max)<m) return 0;
	return 1;
}


int main()

{

  int row,col,i,j,t,max,min,l=0,k;

  scanf("%d,%d",&row,&col);

  int a[row][col];

  for(i=0;i<row;i++)

  {

   for(j=0;j<col;j++)

   {

 scanf("%d",&a[i][j]);

   }

   }

   for (i=0;i<row;i++)

   {

   max=a[i][0];

   k=0;

   for (j=1;j<col;j++)

   {

    if (a[i][j]>max)

    {

      max=a[i][j];

      k=j;

    }

   }

   min=a[0][k];

   for (t=1;t<row;t++)

   {

   if (a[t][k]<min)

   {

     min=a[t][k];

   }

   }

   if (max==min)

   {

    printf("%d+%d",i,k);

    l++;

   }

  }

  if(l==0)

  printf("No");

  return 0;

}


int main()
{
	int a[8][8] = {-1};
	int row, col;
	int i, j, k;
	int max;
	int maxRow, maxCol;
	int flag = 0;
	int result = 0;

	scanf("%d,%d", &row, &col);

	for(i = 0; i < row; i++)
	{
		for(j = 0; j < col; j++)
		{
			scanf("%d", &a[i][j]);
		}
	}

	for(i = 0; i < row; i++)
	{
		max = a[i][0];
		for(j = 0; j < col; j++)
		{
			if(max <= a[i][j])
			{
				max = a[i][j];
				maxCol = j;
			}
		}
		flag = 1;
		for(k = 0; k < row; k++)
		{
			if(max > a[k][maxCol])
			{
				flag = 0;
			}
		}
		if(flag == 1)
		{
			result = 1;
			printf("%d+%d\n",i,maxCol);
		}
	}
	if(result == 0)
	{
		printf("No");
	}

	return 0;
}


int maxj(int a[],int i,int m)
{
	int j=0,ma,max=0;
	ma=a[0];
	for(;j<m;j++)
		if(a[j]>ma) {ma=a[j];max=j;}
	return max;
}

int main()
{
	int n,m,p=0,k;
	int a[8][8]={0};
	scanf("%d,%d",&n,&m);
	int i,j;
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			scanf("%d",&a[i][j]);
	for(i=0;i<n;i++)
	{
		k=maxj(a[i],i,m);
		for(j=0;j<n;j++)
		{if(a[i][k]>a[j][k]) break;}
		if(j==n) {printf("%d+%d\n",i,k);p=1;break;}
	}
	if(p==0) printf("No");
	return 0;
}


void main()
{
	int i,j,ii,jj,real=1,m,n,truth=0,num[8][8];
	scanf("%d,%d",&m,&n);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
			scanf("%d",&num[i][j]);
	for(i=0;i<m;i++)
		for(j=0;j<n;j++)
		{
			real=1;
			for(ii=0;ii<m;ii++)
			{
				if(i==ii)
					continue;
				if(num[ii][j]<num[i][j])
					real=0;
				if(real==0)
					break;
			}
			for(jj=0;jj<n;jj++)
			{
				if(j==jj)
					continue;
				if(num[i][jj]>num[i][j])
					real=0;
				if(real==0)
					break;
			}
			if(real==1)
			{
				printf("%d+%d",i,j);
				truth=1;
			}
		}
		if(truth==0)
			printf("No");
}


int main()
{
	int m, n, i, j, ii,temp_i, temp_j, a[8][8], flag=0;
	scanf("%d,%d", &n, &m);
	for(i=0;i<n;i++)
		for(j=0;j<m;j++)
			scanf("%d", &a[i][j]);

	for(i=0;i<n;i++){
		temp_i=i;
		temp_j=0;
		for(j=1;j<m;j++){
			if(a[i][j]>a[temp_i][temp_j]){
				temp_j=j;
			}
		}

		ii=0;
		while(a[ii][temp_j]>=a[temp_i][temp_j]&&ii<n)
			ii++;

		if(ii==n){
			printf("%d+%d\n", temp_i, temp_j);
			flag=1;
			break;
		}
	}

	if(flag==0)
		printf("No\n");

	return 0;
}


main()
{
	int m,n;
	scanf("%d,%d",&m,&n);
	int a[8][8];int i,j,k,l;
	for(i=0;i<m;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	int fuck=0;
    for(i=0;i<m;i++)
	{
		int max=0,loc=0,num=0;
		for(j=0;j<n;j++)
		{
			if(a[i][j]>max){max=a[i][j];loc=j;}
		}
		for(j=0;j<m;j++)
		{
			if(a[j][loc]<a[i][loc])break;
			else num++;
		}
		if(num<m)continue;
		else {printf("%d+%d",i,loc);fuck=1;break;}
	}
	if(fuck==0)printf("No");
}


int main(){
	int number[7][7],row,col,i,j,m,sum1=0,sum2=0;
	scanf("%d,%d",&row,&col);
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			scanf("%d",&number[i][j]);
		}
	}
	for(i=0;i<row;i++)
	{
		for(j=0;j<col;j++)
		{
			sum1=0;
			sum2=0;
			for(m=0;m<col;m++)
			{
				if(number[i][j]>=number[i][m])
				{
					sum1+=1;
				}
			}
			for(m=0;m<row;m++)
			{
				if(number[i][j]<=number[m][j])
				{
					sum2+=1;
				}
			}
			if(sum1==col&&sum2==row)
			{
				printf("%d+%d",i,j);
				break;
			}
		}
        if(sum1==col&&sum2==row)
		{
		    break;
		}
	}
	if(sum1!=col||sum2!=row)
	{
		printf("No");
	}
	return 0;
}


int main()
{
	int a[10][10]={0}, i, j, m, n, count=0, temp, m_, n_, w;
	scanf("%d,%d", &m, &n);
	for(i=0; i<m; i++)
		for(j=0; j<n; j++)
			scanf("%d", &a[i][j]);
//	printf("ohear");
	for(i=0; i<m; i++)
	{
		temp=a[i][0];
		m_=i;
		n_=0;
		for(j=0; j<n; j++)
		{
			if(a[i][j]>temp)
			{
				temp=a[i][j];
				m_=i;
				n_=j;
			}
		}

			for(w=0; w<m; w++)

			{
				if(w == m_)
					continue;
				if(a[w][n_]>temp)

				{

					if(w == m-1)

					{

						printf("%d+%d", m_, n_);
						count++;

					}

					else

						continue;

				}

				else
					break;

			}

	}
	if(count == 0)
		printf("No\n");
	else
		printf("\n");
	return 0;
}


main()
{
	int number[100][100],max[100]={0},n,m,flag[100]={1},i,j,temp=0;
	scanf("%d,%d",&n,&m);
	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		{
			scanf("%d",&number[i][j]);
			if(temp<number[i][j])
			{
				max[i]=j;
				temp=number[i][j];
			}
		}
	}
	for(j=0;j<n;j++)
	{
		for(i=0;i<n;i++)
			if(number[i][max[j]]<number[j][max[j]])flag[j]=0;
		if(flag[j]==1)printf("%d+%d",j,max[j]);
	}
	temp=0;
	for(j=0;j<n;j++)temp+=flag[j];
	if(temp==0)printf("No");
}


int main(){
    int tag,row,col,i,j,sz[8][8];
	char c;
    scanf("%d%c%d",&row,&c,&col);
	for(i=0;i<row;i++){
		for(j=0;j<col;j++){
			scanf("%d",&(sz[i][j]));
		}
	}
	int max,dec=0;
	for(i=0;i<row;i++){
		max=0;
		for(j=0;j<col;j++){
			if(sz[i][j]>sz[i][0]){
				max=j;
            }
		}
		tag=0;
		for(j=0;j<row;j++){
			if(sz[j][max]<sz[i][max]){
				tag=1;
				break;
			}
		}
        if(tag==0){
			printf("%d+%d\n",i,max);
			dec=1;
		}
	}
	if(dec==0){
		printf("No");
	}
	return 0;
}


int compare(const void*a,const void*b)
{	return *(char*)a-*(char*)b;}
int main()
{	int sum;
char a[100]={'\0'},b[100]={'\0'};

	scanf("%s %s",a,b);
	qsort(a,strlen(a),sizeof(char),compare);
	qsort(b,strlen(b),sizeof(char),compare);
	sum=0;
	if(strcmp(a,b)!=0)
		{	sum=sum+1;
		}

	if(sum>0)
	{	printf("NO");
	}
	if(sum==0)
	{	printf("YES");
	}

	return 0;
}


main()
{
	char str1[1000],str2[1000];
	int n,m,i,l;
	int com(char,char yy[],int);
	scanf("%s%s",str1,str2);
	m=strlen(str1);
	n=strlen(str2);
	if(m!=n)
		printf("NO");
	else
	{
		for(i=0,l=0;i<m;i++)
		{
			if(com(str1[i],str2,m)==1)
			{
				l=l+1;
				continue;
			}
			else
				break;
		}
		if(l<m)
			printf("NO");
		else
			printf("YES");
	}
}

int com(char x,char yy[],int y)
{
	int i,z=0;
	for(i=0;i<y;i++)
	{
		if(x==yy[i])
		{
			z=1;
			yy[i]='\0';
			break;
		}
	}
	return(z);
}


int main ()
{
	int judge=0;
	char *a,*b,*c;
    a=(char *)malloc(30);
	b=(char *)malloc(39);
	c=b;
	scanf("%s",a);
	scanf("%s",b);
	if(strlen(b)!=strlen(a))   printf("NO\n");
	else
	{
		 for(;*a;a++)
		{
		 for(b=c,judge=0;*b;b++)

			if(*a==*b)  {judge=1;*b=' ';break;}

         if(judge==1)    continue;
		 if (judge==0)    {printf("NO\n");break;}
		}
         if (judge==1)    printf("YES\n");
	}
	return 0;
}


void main()
{
char a[100],b[100];
int c,d,i,j,m,n,l,zeus,athena;
scanf("%s %s",a,b);
c=strlen(a);
d=strlen(b);
if(c!=d)athena=0;
if(c==d)
{
	for(i=0;i<c;i++)
	for(m=i;m<c;m++)
	{
		if(a[i]>a[m])
		{
			n=a[i];
			a[i]=a[m];
			a[m]=n;
		}
        if(b[i]>b[m])
		{
			l=b[i];
			b[i]=b[m];
			b[m]=l;
		}
	}
	zeus=1;
    for(i=0;i<c;i++)
	{
		if(a[i]!=b[i])
		{
			athena=0;zeus=0;break;
		}
	}
	if(zeus)athena=1;
}
if(athena) printf("YES");
else printf("NO");
}


int main()
{
	int n;char s[2][1000];
	scanf("%s%s",s[0],s[1]);
	void jg(char x[]);
	jg(s[0]);jg(s[1]);
	if(strcmp(s[0],s[1])) printf("NO");else printf("YES");
	return 0;
}
void jg(char x[])
{
	int i,j,l=strlen(x);char t;
	for(i=0;i<l-1;i++)
		for(j=i+1;j<l;j++)
			if(x[i]>x[j]) {t=x[i];x[i]=x[j];x[j]=t;}
}


int main()
{
	char a[20],b[20],*p1,*p2;
	int i=0;
	scanf("%s%s",a,b);
	if(strlen(a)!=strlen(b))
		printf("NO");
	else
	{
        for(p1=a;p1<a+strlen(a);p1++)
		    for(p2=b;p2<b+strlen(b);p2++)
				if(*p1==*p2)
					*p1=*p2='0';
		for(p1=a;p1<a+strlen(a);p1++)
			if(*p1=='0')
				i++;
		if(i==strlen(a))
			printf("YES");
		else
			printf("NO");
	}
	return 0;
}


int main()
{
	char zifu[2][100];
	scanf("%s",zifu[0]);
	scanf("%s",zifu[1]);
	int t;
	t=strlen(zifu[0]);
	int k;
	k=strlen(zifu[1]);
	if (t!=k)
	{
		printf("NO");

		return 0;
	}
	int i,j;
	for (i=0;i<t;i++)
	{
		for (j=0;j<t;j++)
		{
			if (zifu[0][i]==zifu[1][j])
			{
				zifu[0][i]=0;
				zifu[1][j]=0;
				break;

			}
			if (j==t-1&&zifu[0][i]!=zifu[1][j])
			{
				printf("NO");

				return 0;

			}
		}
		if (i==t-1)
		{
			printf("YES");
		}
	}

	return 0;

}


void change(char a[])
{
	int i,j,k;
	char temp;
	k=strlen(a);
	for(i=0;i<k;i++)
		for(j=i+1;j<=k;j++)
			if(a[i]<a[j])
			{temp=a[i];a[i]=a[j];a[j]=temp;}
}

void main()
{
	int l1,l2,k=0,i;
	char a[100],b[100];
	scanf("%s%s",a,b);
	l1=strlen(a);
	l2=strlen(b);
	if(l1==l2)
	{
		change(a);
		change(b);
		for(i=0;i<l1;i++)
		{
			if(a[i]!=b[i])k=1;
		}
		if(k==0)printf("YES");
		else printf("NO");
	}
	else printf("NO");
}


int main()
{
    char ch1[100],ch2[100],temp;
    int l,i,j;

    cin>>ch1>>ch2;

    if(strlen(ch1)==strlen(ch2))
    {
           l=strlen(ch1);
           for(i=0;i<l;i++)//????
              for(j=0;j<l-i-1;j++)
              {
                  if(ch1[j]>ch1[j+1])
                  {
                      temp=ch1[j];
                      ch1[j]=ch1[j+1];
                      ch1[j+1]=temp;
                  }
                  if(ch2[j]>ch2[j+1])
                  {
                      temp=ch2[j];
                      ch2[j]=ch2[j+1];
                      ch2[j+1]=temp;
                  }
              }

             if(strcmp(ch1,ch2)==0)
                cout<<"YES";
             else
                cout<<"NO";
    }
    else
    {
        cout<<"NO";
    }

    return 0;
}


void rearrange(char c[])
{
	int i,j,len;
	char temp;
	len=strlen(c);
	for(i=0;i<len;i++)
	{
		for(j=i+1;j<len;j++)
			if(c[i]>c[j])
			{
				temp=c[i];
				c[i]=c[j];
				c[j]=temp;
			}
	}
}

void compare(char c1[],char c2[])
{
	int i,j,total=0;
	int len1,len2;
	len1=strlen(c1);
	len2=strlen(c2);
	if(len1!=len2)
		printf("NO");
	else if(len1==len2)
	{
		for(i=0;i<len1;i++)
		{
			if(c1[i]==c2[i])
				total++;
		}
		if(total==len1)
			printf("YES");
		else
			printf("NO");
	}
}

void main()
{
	char c1[100],c2[100];
	scanf("%s%s",c1,c2);
	rearrange(c1);
	rearrange(c2);
	compare(c1,c2);
}


void main()
{
	int i,j,la,lb,min;
	char t;
	char a[100],b[100];
	scanf("%s %s",a,b);
	la=strlen(a);
	lb=strlen(b);
	for(i=0;i<la;i++)
	{
		min=i;
		for(j=i+1;j<la;j++)
			if(a[j]<a[min]) min=j;
		t=a[i];
		a[i]=a[min];
		a[min]=t;
	}
	for(i=0;i<lb;i++)
	{
		min=i;
		for(j=i+1;j<lb;j++)
			if(b[j]<b[min]) min=j;
		t=b[i];
		b[i]=b[min];
		b[min]=t;
	}
	if(strcmp(a,b)==0) printf("YES");
	else printf("NO");
}


main()
{char string1[50],string2[50];
 scanf("%s%s",string1,string2);
 int i,j,k,len1,len2;
 char t;
 len1=strlen(string1);
 len2=strlen(string2);
 for(i=0;i<len1-1;i++)
	{k=i;
     for(j=i+1;j<len1;j++)
		 if(string1[j]>string1[k])k=j;
	 if(k!=i)
	 {t=string1[i];string1[i]=string1[k];string1[k]=t;}
	}
 for(i=0;i<len2-1;i++)
	{k=i;
     for(j=i+1;j<len2;j++)
		 if(string2[j]>string2[k])k=j;
	 if(k!=i)
	 {t=string2[i];string2[i]=string2[k];string2[k]=t;}
	}
 if(strcmp(string1,string2)==0)printf("YES");
 else printf("NO");
}


char a[1000]={' '},b[1000]={' '};

int main()
{
	scanf("%s %s",a,b);
	int len;
	int wall,curr;
	len=strlen(a);
	for(wall=len-1;wall>0;wall--){
		for(curr=0;curr<wall;curr++){
			if(a[curr]>a[curr+1]){
				char temp;
				temp=a[curr];a[curr]=a[curr+1];a[curr+1]=temp;
			}
		}
	}
	len=strlen(b);
	for(wall=len-1;wall>0;wall--){
		for(curr=0;curr<wall;curr++){
			if(b[curr]>b[curr+1]){
				char temp;
				temp=b[curr];b[curr]=b[curr+1];b[curr+1]=temp;
			}
		}
	}
	if(strcmp(a,b)==0)printf("YES");
	else printf("NO");
	return 0;
}


/*
 * 253.cpp
 *
 *  Created on: 2011-12-29
 *      Author: think
 */
int main(){
	char a[100]="";
	cin.getline(a,100);
	char c1[50]="",c2[50]="";
	int i,j;
	for(i=0;a[i]!=' ';i++){
		c1[i]=a[i];
	}
	int length1=i;
	for(i++;i<50&&a[i]!=0;i++){
		c2[i-length1-1]=a[i];
	}
	int length2=i-length1-1;
	if(length1!=length2){
		cout<<"NO"<<endl;
		return 0;
	}
	for(i=0,j=0;i<length1;i++){
		for(j=0;j<length2;j++){
			if(c2[j]==c1[i]){
				c2[j]=' ';break;
			}
		}
		if(j==length2){
			cout<<"NO"<<endl;
			return 0;
		}
	}
	cout<<"YES"<<endl;
	return 0;
}


int main()
{
	char letter1[100],letter2[100],*le1,*le2;
	le1=letter1;
	le2=letter2;
	scanf("%s %s",le1,le2);
	int _break;
	if(strlen(letter1)==strlen(letter2))
	{
		for(;*le1!='\0';le1++)
		{
			le2=letter2;
			_break=0;
			for(;*le2!='\0';le2++)
			{
				if(*le1==*le2)
				{
					*le2='0';
					_break=1;
					break;
				}
			}
			if(_break==0)
			{
				printf("NO\n");
				_break=2;
				break;
			}
		}
		if(_break!=2)
			printf("YES\n");
	}
	else
		printf("NO\n");
	return 0;
}


char a[100]={0};
char b[100]={0};
int main(){
	int i,j;
	char e;
	scanf("%s",a);
	scanf("%s",b);
	for(i=0;i<strlen(a);i++){
		if(a[i]!=b[i]){
			for(j=i+1;j<strlen(a);j++){
				if(a[j]==b[i]){
					e=a[j];
					a[j]=a[i];
					a[i]=e;
				}
			}
		}
		if(a[i]!=b[i]){
			printf("NO");
			break;
		}
	}
	if(!strcmp(a,b)) printf("YES");
	else{
		if(i==strlen(a)) printf("NO");
	}
	return 0;
}


int f(char a[],char b[])
{
	int l1,l2,i,j;
	char q;
	l1=strlen(a);
	l2=strlen(b);
	if(l1!=l2)
		return(0);
	for(i=0;i<=l1;i++)
	{for(j=i;j<=l2;j++)
	{if(b[j]==a[i])
	{q=b[j];
		b[j]=b[i];
		b[i]=q;break;}
	}
	if(a[i]!=b[i])
		return(0);
	}
	return(1);
}
void main()
{
	char str[20],str1[20];
	int c;
	scanf("%s%s",str,str1);
	c=f(str,str1);
	if(c==1)
		printf("YES");
	else printf("NO");
}


void main()
{
	int i,j,k,m,n,*p,l1,l2,c=0;
	char a[100],b[100];
	scanf("%s %s",a,b);
	l1=strlen(a);
	l2=strlen(b);
	if(l2!=l1)printf("NO");
	else
		{
			for(i=0;i<l1;i++)
		for(j=0;j<l2;j++)
			if(a[i]==b[j])
			{
				c++;
				b[j]='\0';
				break;
			}
	if(c==l1)printf("YES");
	else printf("NO");
	}
}


int main()
{
	char a[100]={0},b[100]={0},t;
	int i,j,l;
	scanf("%s",a);
	scanf("%s",b);
	if (strlen(a)!=strlen(b))
		printf("NO");
	else
		{
			l=strlen(a);
			for (i=0;i<l;i++)
				for (j=i;j<l;j++)
					if (a[i]==b[j])
					{
						t=b[i];
						b[i]=b[j];
						b[j]=t;
					}
			if (strcmp(a,b)==0) printf("YES");
			else printf("NO");
		}
	return 0;
}


void arrange(char w[20]);

void main()
{
	char w1[20] = {0};
        char w2[20] = {0} ;
/*	while (scanf("%s%s",w1,w2)!=EOF)
	{*/
	scanf("%s%s",w1,w2);
	arrange(w1);
		arrange(w2);
		if (strcmp(w1,w2))
			printf("NO\n");
		else
			printf("YES\n");
	/*}*/
}

void arrange(char w[20])
{
	int i,j;
	char c;
	for (i=19;i>0;i--)
	{
		for (j=0;j<i;j++)
		{
			if (w[j]<w[j+1])
			{
				c=w[j];
				w[j]=w[j+1];
				w[j+1]=c;
			}
		}
	}
}


void main()
{
	char a[50]={'\0'};char b[50]={'\0'};
	int i,j;
	scanf("%s %s",a,b);
	if (strlen(a)!=strlen(b)) goto null;
	for (i=0;i<strlen(a);i++)
	{
		for (j=0;j<strlen(b);j++)
			if (a[i]==b[j])
			{
				b[j]='0';
				break;
			}
		if (j==strlen(b)) goto null;
	}
	printf("YES\n");
	goto allright;
null: printf("NO\n");
allright:;
}


int main()
{
	char a[1000]="",b[1000]="";
	scanf("%s",a);
	scanf("%s",b);
	int counta,countb;
	int i,j;
	for(i=0;i<=127;i++)
	{ counta=0;countb=0;
		for(j=0;a[j]!='\0';j++)
			if(a[j]==i) counta++;
		for(j=0;b[j]!='\0';j++)
			if(b[j]==i)countb++;
		if(counta!=countb)break;
	}
	if(i==128)printf("YES");
	else printf("NO");
	return 0;
}


void main()
{   void sort(char a[],int n);
	char a[100],b[100];
	int i,j,k,m,n;
      scanf("%s %s",a,b);
     m=strlen(a);n=strlen(b);
	sort(a,m);
	sort(b,n);
	if(strcmp(a,b)==0) printf("YES");
	else printf("NO");
}
void sort(char a[],int n)
{
	int i,j,k;char t;
	for(i=0;i<n-1;i++)
	{
		k=i;
		for(j=i+1;j<n;j++)
			if(a[j]<a[k]) k=j;
			if(k!=i)
			{
				t=a[i];
				a[i]=a[k];
				a[k]=t;
			}
		}
}


void main()
{
	char a[100],b[100];
	int i,l1,l2,j;
	int m=0;
	scanf("%s%s",a,b);
	l1=strlen(a);
	l2=strlen(b);
	if(l1!=l2)
		printf("NO");
	else
	{
		for(i=0;i<l1;i++)
			for(j=0;j<l1;j++)
			{
				if(a[i]==b[j])
				{
					b[j]='\0';
					m=1;
					break;
				}
				else
					m=0;
			}
		if(m)
			printf("YES");
		else
			printf("NO");
	}

}


void main()
{
	char fst[100],lst[100],tmp;
	int n,i,len1,len2;
	scanf("%s",fst);
	scanf("%s",lst);
	len1=strlen(fst);
	len2=strlen(lst);
	if(len1!=len2)
		printf("NO\n");
	else
	{
		for(i=1;i<len1;i++)
		{
			for(n=0;n<(len1-i);n++)
			{
				if(fst[n]>=fst[n+1])
				{
					tmp=fst[n];
					fst[n]=fst[n+1];
					fst[n+1]=tmp;
				}
			}
		}
		for(i=1;i<len2;i++)
		{
			for(n=0;n<(len2-i);n++)
			{
				if(lst[n]>=lst[n+1])
				{
					tmp=lst[n];
					lst[n]=lst[n+1];
					lst[n+1]=tmp;
				}
			}
		}
		if(strcmp(fst,lst)==0)
			printf("YES\n");
		else
			printf("NO\n");
	}
}


/*
 * xiaoceyan4.3.cpp
 * ??????
 *  Created on: 2010-12-31
 *      Author: william
 */
void transfor(char a[], int ai)
{
	for(int i=0; i<ai ;i++)
		for(int j=0; j<ai-i-1; j++)
		{
			if(a[j]>a[j+1])
			{
				char temp=a[j];
				a[j]=a[j+1];
				a[j+1]=temp;
			}
		}
}
int main()
{
	char a[1000], b[1000];
	int ai, bi, i;
	cin>>a>>b;
	ai=strlen(a);
	bi=strlen(b);
	if(ai!=bi) cout<<"NO";
	else
	{
		transfor(a,ai);
		transfor(b,bi);
		for(i=0; i<ai; i++)
		{
			if(a[i]!=b[i]) break;
		}
		if(i==ai) cout<<"YES";
		else cout<<"NO";
	}
	return 0;
}


int main()
{ char a[100],b[100];
int n,m,i,j,sum=0;
scanf("%s %s",a,b);
n=(int)strlen(a);
m=(int)strlen(b);
if(n==m)
{
	for(i=0;i<n;i++)
{
	for(j=0;j<m;j++)
	{
		if(a[i]==b[j])
		{
			b[j]=0;
		    break;
		}

	}

}
}
for(j=0;j<m;j++)
{
	if(b[j]!=0)
	{
		sum=sum+1;
	}
	else
	{
		continue;
	}
}
if(sum==0)
printf("YES");
if(sum!=0)
printf("NO");

	return 0;
}


void arn(char a[],int n);
int max(int a,int b);
void main()
{
	char a[50]={0},b[50]={0};
	int i,l1,l2;
	scanf("%s %s",a,b);
	l1=strlen(a);l2=strlen(b);
	if(l1!=l2) printf("NO\n");
	else
	{
		arn(a,l1);arn(b,l1);
		for(i=0;i<l1;i++)
			if(a[i]!=b[i])
			{
				printf("NO\n");break;
			}
	}
	if(i==l1) printf("YES\n");
}

void arn(char a[],int n)
{
	int j,k;
	char t;
	for(j=0;j<n-1;j++)
	{
		for(k=j+1;k<n;k++)
			if(a[j]<a[k])
			{
				t=a[j];a[j]=a[k];a[k]=t;
			}
	}
}


int than(char a[],char b[])
{
	int x=1,len,i,m,n,j;
	len=strlen(a);
	for(i=0;i<=len-1;i++)
	{
		m=0;
		n=0;
		for(j=0;j<=len-1;j++)
		{
			if(a[j]==a[i])
				m=m+1;
			if(b[j]==a[i])
				n=n+1;
		}
		if(m!=n)
			x=0;
	}
	return x;
}
void main()
{
	char a[100],b[100];
	int x,y,k;
	scanf("%s%s",a,b);
	x=strlen(a);
	y=strlen(b);
	if(x!=y)
		printf("NO\n");
	else
	{
		k=than(a,b);
		if(k)
			printf("YES\n");
		else
			printf("NO\n");
	}
}


change(char s[1000])
{
	int i,j,n=strlen(s);
	for(i=2;i<=n;i++)
		for(j=0;j<=n-i;j++)
			if(s[j]>s[j+1])
			{
				char c;
				c=s[j];
				s[j]=s[j+1];
				s[j+1]=c;
			}
}
void main()
{
	char s1[1000],s2[1000];
	scanf("%s%s",s1,s2);
	change(s1);
	change(s2);
	if(strcmp(s1,s2)==0)
		printf("YES");
	else
		printf("NO");
}


void main()
{
	char a[100],b[100];
	int c[100]={0},d[100]={0};
	int i,j,l1,l2;
	scanf("%s %s",a,b);
	l1=strlen(a);
	l2=strlen(b);
	for(i=0;i<l1;i++)
	{
		switch(a[i])
		{
		case'a':c[0]++;break;
		case'b':c[1]++;break;
		case'c':c[2]++;break;
		case'd':c[3]++;break;
		case'e':c[4]++;break;
		case'f':c[5]++;break;
		case'g':c[6]++;break;
		case'h':c[7]++;break;
		case'i':c[8]++;break;
		case'j':c[9]++;break;
		case'k':c[10]++;break;
		case'l':c[11]++;break;
        case'm':c[12]++;break;
		case'n':c[13]++;break;
		case'o':c[14]++;break;
		case'p':c[15]++;break;
		case'q':c[16]++;break;
		case'r':c[17]++;break;
		case's':c[18]++;break;
		case't':c[19]++;break;
		case'u':c[20]++;break;
		case'v':c[21]++;break;
		case'w':c[22]++;break;
		case'x':c[23]++;break;
		case'y':c[24]++;break;
		case'z':c[25]++;break;
		case'A':c[26]++;break;
		case'B':c[27]++;break;
		case'C':c[28]++;break;
		case'D':c[29]++;break;
		case'E':c[30]++;break;
		case'F':c[31]++;break;
		case'G':c[32]++;break;
		case'H':c[33]++;break;
		case'I':c[34]++;break;
		case'J':c[35]++;break;
		case'K':c[36]++;break;
		case'L':c[37]++;break;
		case'M':c[38]++;break;
		case'N':c[39]++;break;
		case'O':c[40]++;break;
		case'P':c[41]++;break;
		case'Q':c[42]++;break;
		case'R':c[43]++;break;
		case'S':c[44]++;break;
		case'T':c[45]++;break;
		case'U':c[46]++;break;
		case'V':c[47]++;break;
		case'W':c[48]++;break;
		case'X':c[49]++;break;
		case'Y':c[50]++;break;
		case'Z':c[51]++;break;
		}
	}
	for(j=0;j<l2;j++)
	{
		switch(b[j])
		{
		case'a':d[0]++;break;
		case'b':d[1]++;break;
		case'c':d[2]++;break;
		case'd':d[3]++;break;
		case'e':d[4]++;break;
		case'f':d[5]++;break;
		case'g':d[6]++;break;
		case'h':d[7]++;break;
		case'i':d[8]++;break;
		case'j':d[9]++;break;
		case'k':d[10]++;break;
		case'l':d[11]++;break;
        case'm':d[12]++;break;
		case'n':d[13]++;break;
		case'o':d[14]++;break;
		case'p':d[15]++;break;
		case'q':d[16]++;break;
		case'r':d[17]++;break;
		case's':d[18]++;break;
		case't':d[19]++;break;
		case'u':d[20]++;break;
		case'v':d[21]++;break;
		case'w':d[22]++;break;
		case'x':d[23]++;break;
		case'y':d[24]++;break;
		case'z':d[25]++;break;
		case'A':d[26]++;break;
		case'B':d[27]++;break;
		case'C':d[28]++;break;
		case'D':d[29]++;break;
		case'E':d[30]++;break;
		case'F':d[31]++;break;
		case'G':d[32]++;break;
		case'H':d[33]++;break;
		case'I':d[34]++;break;
		case'J':d[35]++;break;
		case'K':d[36]++;break;
		case'L':d[37]++;break;
		case'M':d[38]++;break;
		case'N':d[39]++;break;
		case'O':d[40]++;break;
		case'P':d[41]++;break;
		case'Q':d[42]++;break;
		case'R':d[43]++;break;
		case'S':d[44]++;break;
		case'T':d[45]++;break;
		case'U':d[46]++;break;
		case'V':d[47]++;break;
		case'W':d[48]++;break;
		case'X':d[49]++;break;
		case'Y':d[50]++;break;
		case'Z':d[51]++;break;
		}
	}
	if(l1==l2&&c[0]==d[0]&&c[1]==d[1]&&c[2]==d[2]&&c[3]==d[3]&&c[4]==d[4]&&c[5]==d[5]&&c[6]==d[6]&&c[7]==d[7]&&c[8]==d[8]&&c[9]==d[9]&&c[10]==d[10]&&c[11]==d[11]&&c[12]==d[12]&&c[13]==d[13]&&c[14]==d[14]&&c[15]==d[15]&&c[16]==d[16]&&c[17]==d[17]&&c[18]==d[18]&&c[19]==d[19]&&c[20]==d[20]&&c[21]==d[21]&&c[22]==d[22]&&c[23]==d[23]&&c[24]==d[24]&&c[25]==d[25]&&c[26]==d[26]&&c[27]==d[27]&&c[28]==d[28]&&c[29]==d[29]&&c[30]==d[30]&&c[31]==d[31]&&c[32]==d[32]&&c[33]==d[33]&&c[34]==d[34]&&c[35]==d[35]&&c[36]==d[36]&&c[37]==d[37]&&c[38]==d[38]&&c[39]==d[39]&&c[40]==d[40]&&c[41]==d[41]&&c[42]==d[42]&&c[43]==d[43]&&c[44]==d[44]&&c[45]==d[45]&&c[46]==d[46]&&c[47]==d[47]&&c[48]==d[48]&&c[49]==d[49]&&c[50]==d[50]&&c[51]==d[51])
		printf("YES");
	else
		printf("NO");
}


int main()
{
	char str1[101], str2[101];
	int i,j,len1,len2;
	cin>>str1>>str2;
	len1=strlen(str1);
	len2=strlen(str2);
	if(len1!=len2)
	{
		cout<<"NO";
		return 0;
	}
	for(i=0;i<len1;i++)
	{
		for(j=0;j<len2;j++)
		{
			if(str1[i]==str2[j])
			{
				str2[j]=0;
				break;
			}
		}
		if(j==len2)
		{
			cout<<"NO";
			return 0;
		}
	}
	cout<<"YES";
	return 0;
}


int main(int argc, char* argv[])
{
	char a[100],b[100];
	int i,j,m,n;
	memset(a,0,sizeof(a));
	memset(b,0,sizeof(b));
	scanf("%s%s",a,b);
	m=strlen(a);
	n=strlen(b);

	for(i=0;i<m;i++)
		for(j=m-1;j>i;j--)
		{
			if(a[j-1]>a[j])
			{
				char e;
				e=a[j-1];
				a[j-1]=a[j];
				a[j]=e;
			}
		}
	for(i=0;i<n;i++)
			for(j=n-1;j>i;j--)
			{
				if(b[j-1]>b[j])
				{
					char f;
					f=b[j-1];
					b[j-1]=b[j];
					b[j]=f;
				}
			}
			if(strcmp(a,b)==0)
				printf("YES\n");
			else
				printf("NO\n");
	return 0;
}


int main()
{
char a[500]={0},b[500]={0};
int c[500]={0},sum=0;
scanf("%s %s",a,b);
int i,j;
if(strlen(a)!=strlen(b))
{printf("NO");return 0;}
else
{
for(i=0;i<strlen(a);i++)
for(j=0;j<strlen(b);j++)
if((a[i]==b[j])&&(a[i]!='0')&&(c[j]==0))
{c[j]=1;break;}
for(i=0;i<strlen(b);i++)
sum=sum+c[i];
if(sum==strlen(b))
printf("YES");
else
printf("NO");
}
}


int main()
{
	char s[100],a[100];
	int flag[100]={0};
	int i=0,j=0,flag1=0;
	cin>>s;
	cin.get();
	cin>>a;
	int n=strlen(s),m=strlen(a);
	if(n!=m) {cout<<"NO"<<endl;return 0;}
	else
	{
		for(i=0;i<n;i++)
		{
            int flag2=0;
			for(j=0;j<n;j++)
			{
				if(flag[j]!=0) continue;
				else if(s[i]==a[j]) {flag[j]=1,flag2=1;break;}
			}
			if(flag2==0) flag1=1;
		}
		if(flag1==1) {cout<<"NO"<<endl;return 0;}
		else  cout<<"YES"<<endl;
	}
	return 0;
}


int length;
int tj(char str[],char x)
{	int i,count=0;
	for(i=0;i<length;i++)
		if(x==str[i]) count++;
	return(count);
}
void main()
{	int i,p=1;
    char a[100],b[100];
	scanf("%s %s",a,b);
	if(strlen(a)!=strlen(b)) p=0;
	else
	{length=strlen(a);
	for(i=0;i<length;i++)
		if(tj(a,a[i])!=tj(b,a[i]))
		{p=0;break;
		}
	}
	if(p==1) printf("YES\n");
	else printf("NO\n");
}


int main()
{
	int i,j,la,lb;
	char a[100],b[100];
	scanf("%s%s",a,b);
	la=strlen(a);
	lb=strlen(b);
	if(la!=lb)
	{
		printf("NO");
		return 0;
	}
	for(i=0;i<la;i++)
	{
		if(strchr(b,a[i])==0)
		{
			printf("NO");
			return 0;
		}
		else
		{
			for(j=0;j<lb;j++)
			{
				if(b[j]==a[i])
				{
					b[j]=' ';
					break;
				}
			}
		}

	}

	printf("YES");
	return 0;
}


int main()
{
	char a[100],b[100];
	cin >> a >> b;
	int i,j,l1,l2,flag=0;
	l1=strlen(a);
	l2=strlen(b);
	if(l1!=l2)
		flag=1;
	else
		for(i=0;i<l1;i++)
		{
			int k=0;
			for(j=0;j<l2;j++)
				if(a[i]==b[j])
				{
					a[i]=0;
					b[j]=0;
					k=1;
				}
				if(k==0)
				{
					flag=1;
					break;
				}
		}
		if(flag==0)
			cout << "YES" << endl;
		else
			cout << "NO" << endl;
		return 0;
}


/* Note:Your choice is C IDE */
void main()
{
	int i,j,x;
	char temp,a[100],b[100];
	scanf("%s %s",&a,&b);
	if ((x=strlen(a))!=strlen(b)) printf("NO");
	else
	{
		for (i=0;i<x-1;i++)
		{
			for (j=i+1;j<x;j++)
			{
				if (a[i]>a[j])
				{
					temp=a[i];a[i]=a[j];a[j]=temp;
				}
				if (b[i]>b[j])
				{
					temp=b[i];b[i]=b[j];b[j]=temp;
				}
			}
			if (a[i]!=b[i]) break;
		}
		if (i==x-1) printf("YES");
		else printf("NO");
	}
}


void main()
{
     int rearrange(char s1[],char s2[]);
     int result;
     char s1[N],s2[N];
     scanf("%s %s",s1,s2);
     result=rearrange(s1,s2);
     if(1==result)
            printf("YES\n");
     else if(0==result)
            printf("NO\n");
}
int rearrange(char s1[], char s2[])
{
        int count1[128]={0}, count2[128]={0};
        int len1,temp;
        len1=strlen(s1); temp=strlen(s2);
        if( len1!=temp) return 0;
        for(temp=0; temp<len1; ++temp)
       { count1[s1[temp]]++; count2[s2[temp]]++;}
        for(temp=0;temp<128; ++temp)
               if(count1[temp]!=count2[temp])
                         return 0;
        return 1;
}


int main()
{
	char ch[101],str[101];
	int i,j,k,m,n;
	scanf("%s",ch);
	m=strlen(ch);
	scanf("%s",str);
	n=strlen(str);
	k=0;
	if (m!=n)
		printf("NO");
	else
	{
		for (i=0;i<m;i++)
		{
			for (j=0;j<m;j++)
			{
				if (ch[i]==str[j])
				{
					k=k+1;
					str[j]=' ';
					break;
				}
			}
		}
		if (k==m)
		printf("YES");
		else
			printf("NO");
	}
	return 0;
}


/*
 * 1.cpp
 *
 *  Created on: 2011-12-25
 *      Author: Administrator
 */
int main()
{
	int i,l,k;
	int a[200]={0};
	char s1[200],s2[200];
	cin>>s1;
	cin>>s2;
	l=strlen(s1);
	k=strlen(s2);
	if(k!=l){
		cout<<"NO"<<endl;
		return 0;
	}
	memset(a,0,sizeof(a));
	for(i=0;i<l;i++)a[s1[i]]++;
	for(i=0;i<k;i++)a[s2[i]]--;
	for(i=1;i<130;i++)
		if(a[i]!=0){

			cout<<"NO"<<endl;
			return 0;
		}
	cout<<"YES"<<endl;
	return 0;
}


void change(char x[50],int n)
{
	int i,j;
	char tem;
	for(i=0;i<n;i++)
		for(j=i+1;j<n;j++)
		if(x[i]>x[j])
		{
			tem=x[j];
			x[j]=x[i];
			x[i]=tem;
		}
}
void main()
{
	int len,n,i;
	char a[100],b[50],c[50];
	gets(a);
	len=strlen(a);
	if(len%2==0)
		printf("NO");
	else
	{
	n=(len-1)/2;
	for(i=0;i<n;i++)
	{
		b[i]=a[i];
		c[i]=a[i+n+1];
	}
	change(b,n);
	change(c,n);
	for(i=0;b[i]==c[i]&&i<n;)
		i++;
	if(i==n)
		printf("YES");
	else
		printf("NO");
}
}


int main()
{
	char s[100],w[100];
	int n,m,i,j,count=0;
	scanf("%s%s",s,w);
	n=strlen(w);
	m=strlen(s);
	if(n!=m){
		printf("NO");
		return 0;
	}
	else{
		for(i=0;i<n;i++){
			for(j=0;j<n;j++){
				if(s[i]==w[j]){
					count++;
					w[j]=' ';
					break;}
			}
		}
		if(count==n)
			printf("YES");
		else printf("NO");
		return 0;
	}
}


int cmp(char *a,char *b)
{
    return *a-*b;
}
int main()
{
    char a[M],b[M];
    int len1,len2;
    scanf("%s%s",a,b);
    len1=strlen(a);
    len2=strlen(b);

    if(len1==len2)
    {
        qsort(a,len1,sizeof(a[0]),cmp);
        qsort(b,len2,sizeof(b[0]),cmp);
        if(strcmp(a,b))
        {
            printf("NO\n");
        }else
        {
            printf("YES\n");
        }
    }
    else
    {
        printf("NO\n");
    }

    return 0;

}


int main()
{
	char str[100],str1[100];
	scanf("%s %s",str,str1);
	int i,j,len = strlen(str),len1 = strlen(str1);
	if(len != len1)
		printf("NO\n");
	else{
		for(i = 0;i < len - 1;i++){
			for(j = i + 1;j < len;j++){
				if(str[i] > str[j]){
					char temp = str[i];
					str[i] = str[j];
					str[j] = temp;
				}
			}
		}
		for(i = 0;i < len1 - 1;i++){
			for(j = i + 1;j < len1;j++){
				if(str1[i] > str1[j]){
					char temp = str1[i];
					str1[i] = str1[j];
					str1[j] = temp;
				}
			}
		}
		if(strcmp(str,str1) == 0)
			printf("YES\n");
		else
			printf("NO\n");
	}
	return 0;
}


int main(){
	int i,j,x,y,e,c;
	char a[100],b[100];
	scanf("%s",a);
	scanf("%s",b);
	x=strlen(a);
	y=strlen(b);
	if(x!=y) printf("NO");
	else{
		for(i=0;i<x;i++){
			for(j=0;j<x;j++){
				if(a[i]==b[j]){
					e=b[i];
					b[i]=b[j];
					b[j]=e;
				}
			}
		}
		c=strcmp(a,b);
		if(c==0)
			printf("YES");
		else
			printf("NO");
	}
	 return 0;
}


void swap(char a[],int n)
{
	int i,j;
	char t;
	for(j=0;j<n;j++)
		for(i=0;i<n-j-1;i++)
		if(a[i]>a[i+1])
		{
			t=a[i];
			a[i]=a[i+1];
			a[i+1]=t;
		}

}
void main()
{
	char a[20];
	char b[20];
	scanf("%s %s",a,b);
	int al,bl;
	al=strlen(a);
	bl=strlen(b);
    swap(a,al);
	swap(b,bl);
	if(strcmp(a,b)==0)
		printf("YES\n");
	else
		printf("NO\n");
}


void paixu(char s[])
{
	int i,j,t,n;
	n=strlen(s);
	for(i=1;i<n;i++)
	{
		for(j=0;j<n-i;j++)
		{
			if(s[j]<s[j+1])
			{
				t=s[j];
				s[j]=s[j+1];
				s[j+1]=t;
			}
		}
	}
}
main()
{
	char a[100],b[100];
	int i,j,la,lb,k;
	scanf("%s %s",a,b);
	la=strlen(a);
	lb=strlen(b);
		paixu(a);
	   paixu(b);
	   k=strcmp(a,b);
	   if(k==0)
	   printf("YES");
	   else printf("NO");

}


int compare(char a,char b[100],char c[100])
{
	int z,i,j=0,k=0;
	for(i=0;b[i]!='\0';i++)
	{
		if(b[i]==a)
			j++;
		if(c[i]==a)
			k++;
	}
	if(j!=k)
		z=0;
	else
		z=1;
	return(z);
}
void main()
{
	char a,s1[100],s2[100];
	int i,s,j,k;
	scanf("%s %s",s1,s2);
	j=strlen(s1);
	k=strlen(s2);
	if(j!=k)
		printf("NO");
	else
	{
			for(a='!';a<='~';a++)
			{
				s=compare(a,s1,s2);
				if(s==0)
				{printf("NO");break;}
			}
			if(s==1)
				printf("YES");
	}
}


int main()
{
	int i,j,flag=1;
	char a[100],b[100];
	scanf("%s",a);
	scanf("%s",b);
	for(i=0;i<strlen(a);i++)
	{
		for(j=0;j<strlen(b);j++)
		{
           if(a[i]==b[j])
		   {
			   a[i]=' ';
			   b[j]=' ';
		   }
		}
	}
	for(i=0;i<strlen(a);i++)
	{
		if(a[i]!=' ')
		{
			flag=0;
			break;
		}
	}
	for(j=0;j<strlen(b);j++)
	{
		if(b[j]!=' ')
		{
			flag=0;
			break;
		}
	}
	if(flag)
	{
		printf("YES\n");
	}
	else printf("NO\n");
	return 0;
}


int main()
{
	char a[100],b[100],temp;
	int len1,len2,i,j;
	scanf("%s%s",a,b);
	len1=strlen(a);
	len2=strlen(b);
	for(i=0;i<len1;i++)
	for(j=0;j<i;j++)
	{
		if(a[i]>a[j])
		{
			temp=a[i];
			a[i]=a[j];
			a[j]=temp;
		}
	}
	for(i=0;i<len2;i++)
	for(j=0;j<i;j++)
	{
		if(b[i]>b[j])
		{
			temp=b[i];
			b[i]=b[j];
			b[j]=temp;
		}
	}
	if(strcmp(a,b)==0)
	printf("YES");
	else
	printf("NO");
	return 0;
}


void main()
{
	void same(char a[],char b[]);
	char a[1000],b[1000];
	scanf("%s%s",a,b);
	same(a,b);
}
void same(char a[],char b[])
{
	int i,j,t,n;
	if(strlen(a)==strlen(b))
	{
	for(j=0;j<strlen(a)-1;j++)
		for(i=0;i<strlen(a)-1-j;i++)
			if(a[i]>=a[i+1])
			{
				t=a[i];
				a[i]=a[i+1];
				a[i+1]=t;
			}
	for(j=0;j<strlen(b)-1;j++)
		for(i=0;i<strlen(b)-1-j;i++)
			if(b[i]>=b[i+1])
			{
				t=b[i];
				b[i]=b[i+1];
				b[i+1]=t;
			}
	for(i=0,n=0;i<strlen(a)-1;i++)
	{
		if(a[i]==b[i])
			n++;
		else break;
	}
	if(n==strlen(a)-1)
		printf("YES");
	else
		printf("NO");
	}
	else
		printf("NO");
}


int main()
{
	int flag=1;
	char s1[M],s2[M];
	unsigned int t1,t2,i,j,k;
	scanf("%s %s",s1,s2);
	t1=strlen(s1);
	t2=strlen(s2);
	if(t1!=t2) printf("NO\n");
	else
	{
		for(i=0;i<t1;i++)
		{
			for(j=0;j<strlen(s2);j++)
		 	if(s2[j]==s1[i])
		 	{
		 		for(k=j;k<=strlen(s2);k++)
		 			s2[k]=s2[k+1];
		 	}

		}
		if(!strlen(s2)) printf("YES");
		else printf("NO");
		printf("\n");
	}
	return 0;
}


int main(){
	char str1[100]={0},str2[100]={0},*p,*q;
	cin>>str1>>str2;
	int len1 = strlen(str1),len2 = strlen(str2),flag;
	if(len1 != len2){
		cout<<"NO"<<endl;
		return 0;
	}
	for(p = str1;p < str1 + len1;++p){
		flag = 0;
		for(q = str2;q < str2 + len2;++q){
			if(*p == *q){
				*q = 0;
				++flag;
				break;
			}
		}
		if(!flag){
			cout<<"NO"<<endl;
			return 0;
		}
	}
	cout<<"YES"<<endl;
	return 0;
}


int search(char a[],char b[],int i,int x)
{
    int q;
    for(q=0;q<=x-1;q++)
    {if(b[q]==a[i])
    {b[q]='0';
    return(q);}
    }
    return(-1);
}

int main(int argc, char *argv[])
{

    char a[30],b[30];
    int m,i,j,z,n;
    scanf("%s",a);
    scanf("%s",b);
m=strlen(a);
n=strlen(b);
if(m!=n)
printf("NO\n");
else
    {for(i=0;i<=m-1;i++)
    {z=search(a,b,i,m);
    if(z==-1)
      {printf("NO\n");
       break;}
    }
    if(z!=-1)
    printf("YES\n"); }

  return 0;
}


void main()
{
	char str1[50],str2[50],*p;
	int a,b,i,j,c[20],d=0;
	scanf("%s%s",&str1,&str2);
	a=strlen(str1);
	b=strlen(str2);
p=str2;
	if(a==b)
	{{for(i=0;i<a;i++)
	{c[i]=0;
		for(p=str2;p<a+str2;p++)
	{if(str1[i]==*p)
		{c[i]=1;continue;}
		}
	}}
for(i=0;i<a;i++)
	{if(c[i]==0)
{d=1;break;}}
if(d==1)
{printf("NO");}
else
printf("YES");
}
	else
		printf("NO");
}


int main()
{
	char a[100],b[100],flaga[100],flagb[100],bool1=1,bool2=1;
	unsigned int i,j;
	for(i=0;i<100;i++){flaga[i]=0;flagb[i]=0;}
	scanf("%s",a);scanf("%s",b);
	for(i=0;a[i]!='\0';i++)
	{
		for(j=0;b[j]!='\0';j++)if(a[i]==b[j]){flaga[i]=1;flagb[j]=1;}
	}
	for(i=0;i<strlen(a);i++)if(flaga[i]==0)bool1=0;
	for(i=0;i<strlen(b);i++)if(flaga[i]==0)bool2=0;
	if(bool1&&bool2)printf("YES");
	else printf("NO");
	return 0;
}


void main()
{
	char a[100],b[100];
	unsigned int i,j,t,s=1;
	scanf("%s%s",a,b);
	if(strlen(a)!=strlen(b))printf("NO");
	else
	{
		for(i=0;i<strlen(a);i++)
		{
			t=0;
			for(j=0;j<strlen(b);j++)
			if(a[i]==b[j])
			{
				b[j]=1;
				t=1;
				break;
			}
			if(t==0)s=0;
		}

	if (s)printf("YES");
	else printf("NO");}
}


int comp(char s1[],char s2[],int j,int i)
{
	if(s1[j]==s2[i])
	{s2[i]=0;return(1);}
	else if((s1[j]!=s2[i])&&(i>0))
		{i=i-1;return(comp(s1,s2,j,i));}
	else if((s1[j]!=s2[i])&&(i==0))
	return(0);
}
void main()
{int i,j,k,y,u;
 char str1[100],str2[100],c;
 for(i=0;(c=getchar())!=' ';i++)
	 str1[i]=c;
 gets(str2);
 i=i-1;
 j=strlen(str2)-1;
 if(i!=j)
 printf("NO");
 else 	{u=i;
	 for(k=0,y=0;k<=u;k++)
		 if(comp(str1,str2,k,i)==0)
		 {y=1;break;}
	 if(y==0) printf("YES");
	 else if(y==1) printf("NO\n");}
}


void main()
{
	int i,j;
	int m,n,k=0,t=0;
	char a[100],b[100];
	scanf("%s %s",a,b);

	m=strlen(a);
	n=strlen(b);

	for(i=0;i<n;i++)
	{
		for(j=0;j<m;j++)
		{
			if(b[i]==a[j])
			{
				k=k+1;
				a[j]='*';
				break;
			}
		}
	}

	if(k==n&&m==n) printf("YES");
	else printf("NO");
}


void f(char a[],int l)
{
	int i,j;
	char t;
	for(i=0;i<l-1;i++)
	{
		for(j=l-2;j>=0;j--)
			if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;}
	}
}
main()
{
	char a[500]={0},b[500]={0};
	scanf("%s %s",a,b);
	int la=strlen(a),lb=strlen(b);
	f(a,la);
	f(b,lb);
	if(strcmp(a,b)==0) printf("YES\n");
	else printf("NO\n");
}


int main()
{
	char a[40],b[40];
	int length;
	int i,j,x;
	cin>>a>>b;
	if(strlen(a) != strlen(b))
		cout<<"NO"<<endl;
	else
	{
		length=strlen(a);
		x=length;
		for(i=0;i<length;i++)
		{
			for(j=0;j<length;j++)
			{
				if(a[i]==b[j])
				{
					b[j]='\0';
					x--;
					break;
				}
			}
		}
		if(x==0)
			cout<<"YES"<<endl;
		else
			cout<<"NO"<<endl;
	}
	return 0;
}


void f(char c[1000],int i)
{
	int j,k;
	for(j=0;j<i;j++)
	{
		for(k=0;k<i-j;k++)
		{
			if(c[k]>c[k+1])
			{
				char s;
				s=c[k];
				c[k]=c[k+1];
				c[k+1]=s;
			}
		}
	}
}
int main()
{
	char s[1000],c[1000];
	scanf("%s%s",s,c);
	int lens,lenc;
	lens=strlen(s);
	lenc=strlen(c);
	int i,j,k;
	if(lens!=lenc)
		printf("NO");
	else
	{
		f(s,lens);
		f(c,lenc);
		for(k=0;k<lens;k++)
		{
			if(s[k]!=c[k])
			{
				printf("NO");
				break;
			}
		}
		if(k==lens)
			printf("YES");
	}
}


void main()
{
 char a[80],b[80],c,k;
 int la,lb,i,j;
 scanf("%s",a);
 scanf("%s",b);
 la=strlen(a);
 lb=strlen(b);
 if(la!=lb) printf("NO");
 else if(la=lb)
 {
   for(i=0;i<la;i++)
   {
     for(j=i;j<la;j++)
	 {
       if(a[j]<a[i])
	   {c=a[i];a[i]=a[j];a[j]=c;}
	 }
   }
   for(i=0;i<la;i++)
   {
     for(j=i;j<la;j++)
	 {
       if(b[j]<b[i])
	   {c=b[i];b[i]=b[j];b[j]=c;}
	 }
   }
 for(i=0;i<la;i++)
 {
  if(a[i]=b[i]) k=k+1;
 }
 if(k=la) printf("YES");
 else if(k!=la) printf("NO");
}
}


void main()
{
	int count11[26]={0},count12[26]={0},count21[26]={0},count22[26]={0},length1,length2,i,j,k=0,p=0,m=0,n=0;
	char string1[100],string2[100];
	scanf("%s %s",string1,string2);
	length1=strlen(string1);length2=strlen(string2);
	for(i=0;i<length1;i++)
		if(string1[i]<='Z') {j=string1[i]-65;count11[j]++;}
		else {j=string1[i]-97;count12[j]++;}
	for(i=0;i<length2;i++)
		if(string2[i]<='Z') {j=string2[i]-65;count21[j]++;}
		else {j=string2[i]-97;count22[j]++;}
	while(count11[k]==count21[p])
	{
		k++;p++;
	}
		if(k!=26) printf("NO\n");
		else  if(k==26)
		{
			while(count12[m]==count22[n]&&m<=25)
			{m=m+1;n=n+1;}
        if(m==26) printf("YES\n");
			else printf("NO\n");
		}
}


int judge(char *str1, char *str2,int len1,int len2)
{ int flag[100]={0};
if(len1!=len2)
{
	return 0;
}
for(int i=0;i<len1;i++)
{
	for(int j=0;j<len2;j++)
	{
		if(flag[j]==1)
		{
			continue;
		}
		if(*(str1+i)==*(str2+j))
		{
			flag[j]=1;
			break;
		}
	}
}
int p;
for(p=0;p<len2,flag[p]==1;p++)
{
;
}
if(p==len2)
{
	return 1;
}
else
{
	return 0;
}
}

int main()
{
	char str1[100],str2[100];
	cin>>str1>>str2;
	int len1=strlen(str1),len2=strlen(str2);
	if(judge(str1,str2,len1,len2))
	{
		cout<<"YES";
	}
	else
	{
		cout<<"NO";
	}
	return 0;
}