#include<iostream>
#include<map>
using namespace std;
int h,w,sx,sy,gx,gy,n;
int dax[]={-1,-1,0,1,1,1,0,-1},day[]={0,1,1,1,0,-1,-1,-1};
int dbx[]={-2,-2,-2,-1,0,1,2,2,2,1,0,-1},dby[]={-1,0,1,2,2,2,1,0,-1,-2,-2,-2};
bool mas[10][10];
pair<int,int>data[10];
bool dfs(int x,int y,int d){
  if(d == n) return true;
  for(int i=0;i<12;i++){
    int nx=x+dbx[i],ny=y+dby[i];
    if(nx>=0&&nx<9&&ny>=0&&ny<9){
	for(int j=0;j<8;j++){
	  int sx=data[d].first+dax[j],sy=data[d].second+day[j];
	  if(sx>=0&&sx<9&&sy>=0&&sy<9){
	      if(nx==sx&&ny==sy){
		if(dfs(nx,ny,d+1)==true) return true;
	      }
	    }
	}
      }
  }
  return false;
}
int main(){
  int a,b;

  while(1){
    for(int i=0;i<10;i++) for(int j=0;j<10;j++) mas[i][j]=false;

    cin >> sy >> sx;
    if(sx==0&&sy==0)break;
    cin >> n;
    for(int i=0;i<n;i++){
      cin >> a >> b;
      data[i].second=a;
      data[i].first=b;
    }
    cout << (dfs(sx,sy,0)==true ? "OK" : "NA") << endl;
  }
}