#include <iostream>
using namespace std;

typedef pair<int,int> P;

int pic[50][50];

void rotate(int m){
	int tmp[50][50];
	for(int i = 0;i < m;i++){
		for(int j = 0;j < m;j++){
			tmp[i][j] = pic[m - j - 1][i];
		}
	}
	for(int i = 0;i < m;i++){
		for(int j = 0;j < m;j++) pic[i][j] = tmp[i][j];
	}
}

int main(){
	int n,m;
	while(cin >> n >> m,n){
		int field[100][100];
		P mi = P(500,500);
		for(int i = 0;i < n;i++){
			for(int j = 0;j < n;j++){
				cin >> field[i][j];
			}
		}
		for(int i = 0;i < m;i++){
			for(int j = 0;j < m;j++){
				cin >> pic[i][j];
			}
		}
		for(int i = 0;i < 4;i++){
			rotate(m);
			for(int j = 0;j < n - m + 1;j++){
				for(int k = 0;k < n - m + 1;k++){
					bool flag = true;
					for(int l = 0;l < m;l++){
						for(int o = 0;o < m;o++){
							if(!(pic[l][o] == -1 || pic[l][o] == field[j + l][k + o])) flag = false;
						}
					}
					if(flag){
						for(int l = 0;l < m;l++){
							for(int o = 0;o < m;o++){
								if(pic[l][o] != -1){
									mi = min(mi,P(j + l,k + o));
								}
							}
						}
					}
				}
			}
		}
		if(mi == P(500,500)) cout << "NA" << endl;
		else cout << mi.second + 1 << " " << mi.first + 1 << endl;
	}
	return 0;
}