#include <iostream>
#include <vector>
#include <string>
#include <cmath>
#include <algorithm>
#include <queue>

using namespace std;


bool test(vector<vector<int > >v,int h,int w,int n){
	bool flag[31][31]={};
	bool clear_flag=1;
	int count=1;
	int down=0;
	while(clear_flag==1){
		for(int i=0;i<h;i++){
			for(int j=0;j<w;j++){
				flag[i][j]=0;
			}
		}
		clear_flag=0;
		for(int i=0;i<h;i++){
			count =1;
			for(int j=0;j<w-1;j++){
				if(v[i][j]==v[i][j+1]&&v[i][j]!=0){
					count +=1;
				}else{
					if(count>=n){
						clear_flag=1;
						for(int k=0;k<count;k++){
							flag[i][j-k]=1;
						}
					}
					count =1;
				}
			}
			if(count>=n){
				clear_flag=1;
				for(int k=0;k<count;k++){
					flag[i][w-1-k]=1;
				}
			}
			count =1;
		}
		for(int j=0;j<w;j++){
			count =1;
			for(int i=0;i<h-1;i++){
				if(v[i][j]==v[i+1][j]&&v[i][j]!=0){
					count +=1;
				}else{
					if(count>=n){
						clear_flag=1;
						for(int k=0;k<count;k++){
							flag[i-k][j]=1;
						}
					}
					count =1;
				}
			}
			if(count>=n){
				clear_flag=1;
				for(int k=0;k<count;k++){
					flag[h-1-k][j]=1;
				}
			}
			count =1;
		}
		for(int j=0;j<w;j++){
			down=0;
			for(int i=h-1;i>=0;i--){
				if(flag[i][j]==1){
					down+=1;
					v[i][j]=0;
				}else{
					if(down!=0){
						v[i+down][j]=v[i][j];
						v[i][j]=0;
					}
				}
			}
		}
	}

	for(int i=0;i<h;i++){
		for(int j=0;j<w;j++){
			if(v[i][j]!=0){
				return 0;
			}
		}
	}
	return 1;
}

int main(){
	int h,w,n,tmp_v1,down;
	bool flag;
	cin >> h >> w >> n;
	string s;
	vector<vector<int> > v,v1;
	for(int i=0;i<h;i++){
		cin >> s;
		vector<int>tmp;
		for(int j=0;j<w;j++){
			if(s[j]=='.'){
				tmp.push_back(0);
			}else{
				tmp.push_back(s[j]-'@');
			}
		}
		v.push_back(tmp);
	}
	for(int i=0;i<h;i++){
		for(int j=0;j<w-1;j++){
			v1 = v;
			tmp_v1=v1[i][j];
			v1[i][j]=v1[i][j+1];
			v1[i][j+1]=tmp_v1;
			for(int j=0;j<w;j++){
				down=0;
				for(int i=h-1;i>=0;i--){
					if(v1[i][j]==0){
						down+=1;
					}else{
						if(down!=0){
							v1[i+down][j]=v1[i][j];
							v1[i][j]=0;
						}
					}
				}
			}	
			flag = test(v1,h,w,n);
			if(flag==1){
				cout << "YES" << endl;
				return 0;
			}
		}
	}
	cout << "NO" << endl;
	return 0;
}