#include<stdio.h>
#include<string.h>
char c[40][40]={0};
int Y[]={1,0};
int X[]={0,1};
int h,w,n;
int f(){
  int i,j,b=0,k,l,d;
  //printf("aa\n");
  /*for(i=0;i<h;i++){
    for(j=0;j<w;j++)printf("%c",c[i+1][j+1]);printf("\n");
    }//*/	  
  while(!b){
    //printf("ab\n");for(l=0;l<h;l++)printf("%s\n",c[l+1]+1);printf("\n\n");
    int e[40][40]={0};
    for(i=b=1;i<=h;i++){
      for(j=1;j<=w;j++){
	if(c[i][j]=='.')continue;
	for(k=0;k<2;k++){
	  for(l=  0;c[i][j]==c[i+Y[k]*l][j+X[k]*l];l++);
	  if(l<n)continue;
	  for(l=b=0;c[i][j]==c[i+Y[k]*l][j+X[k]*l];l++)e[i+Y[k]*l][j+X[k]*l]=1;
	}
      }
    }//printf("a\n");
    //for(i=0;i<h;i++)printf("%s\n",c[i+1]+1);printf("\n");
    for(i=1;i<=h;i++){
      for(j=1;j<=w;j++){
	if(e[i][j])c[i][j]='.';
      }
    }//printf("b\n");
    //for(i=0;i<h;i++)printf("%s\n",c[i+1]+1);printf("\n");
    //printf("c\n");
    for(j=1;j<=w;j++){
      d=0;
      for(i=h;i;i--){
	c[i+d][j]=c[i][j];
	if(c[i][j]=='.')d++;
      }
      for(i=d;i;i--)c[i][j]='.';
    }
  }
  //for(i=0;i<h;i++)printf("%s\n",c[i+1]+1);printf("\n");
  for(j=1;j<=w;j++){
    if(c[h][j]-'.')break;
  }
  return (int)w<j;
}
int main(){
  int i,j,k,l,cy,cx;
  scanf("%d %d %d",&h,&w,&n);
  char t,s[40][40]={0};
  for(i=0;i<h;i++)scanf("%s",s[i+1]+1);
  for(i=1;i<=h;i++){
    for(j=1;j<=w;j++){
      if(s[i][j]==0||s[i][j]=='.')continue;
      for(k=0;k<2;k++){
	cy=i+Y[k];
	cx=j+X[k];
	if(s[cy][cx]==0||s[cy][cx]=='.'||s[cy][cx]==s[i][j])continue;
	for(l=0;l<h;l++)strcpy(c[l+1]+1,s[l+1]+1);
	t=c[i][j];
	c[i][j]=c[cy][cx];
	c[cy][cx]=t;
	//for(l=0;l<h;l++)printf("%s\n",c[l+1]+1);printf("\n\n");
	if(f(c))goto END;
      }
    }
  }
 END:
  if(i<=h)printf("YES\n");
  else    printf("NO\n");
  return 0;
}
    