#include<bits/stdc++.h>
using namespace std;
int N;
double mx,my;
double x[21],y[21];
bool endFlag;

const double EPS=1e-8;
bool input(){
    scanf("%d",&N);
    scanf("%lf%lf%lf%lf",&x[N],&y[N],&mx,&my);
    if(!(N||x[N]||y[N]||mx||my))return false;
    for(int i=0;i<N;i++)scanf("%lf%lf",&x[i],&y[i]);
    return true;
}

void dfs(int S,int pos,double total){
    if(S==(1<<N)-1){
        endFlag=true;
        return;
    }
    if(endFlag)return;

    for(int i=0;i<N;i++){
        if((S>>i)&1)continue;
        double mao=hypot(mx-x[i],my-y[i]);
        double yu=hypot(x[pos]-x[i],y[pos]-y[i]);
        if(yu+total+EPS>mao)return;
    }


    for(int i=0;i<N;i++){
        if((S>>i)&1)continue;
        double yu=hypot(x[pos]-x[i],y[pos]-y[i]);
        dfs(S|(1<<i),i,total+yu);
    }
}
void solve(){
    endFlag=false;
    dfs(0,N,0);
    puts(endFlag?"YES":"NO");
}
int main(){
    while(input())solve();
    return 0;
}