import std.stdio;
import std.ascii;
import std.range;
import std.array;
import std.functional;
import std.algorithm;
import std.conv;
import std.container;
import std.math;
import std.numeric;
import std.string;
import std.c.string;
import std.random;
import std.regex;
import std.typecons;

int popcnt(int x) {
    int r = 0;
    foreach (i; 0 .. 22) {
        if (x & (1 << i)) r++;
    }
    return r;
}

void main() {
    int N, Hx, Hy, Dx, Dy;
    int[] Y, X;
    bool input() {
        scanf("%d %d %d %d %d\n", &N, &Hx, &Hy, &Dx, &Dy);
        if (N == 0) return false;
        Y = new int[N + 2];
        X = new int[N + 2];
        Y[0] = Hy;
        X[0] = Hx;
        foreach (i; 1 .. N + 1) {
            scanf("%d %d\n", &X[i], &Y[i]);
        }
        Y[N + 1] = Dy;
        X[N + 1] = Dx;
        return true;
    }
    double Distance(int a, int b) {
        double dy = Y[a] - Y[b],
               dx = X[a] - X[b];
        return sqrt(dy * dy + dx * dx);
    }
    void solve() {
        struct P {
            int v, used;
            double t;
        }
        bool bfs() {
            DList!P Q;
            Q.insert(P(0, 1, 0));
            int pcount = 0;
            double[int] cache;
            while (!Q.empty) {
                auto c = Q.front; Q.removeFront;
                if (c.used == (1 << (N + 1)) - 1) { return true; }
                if (pcount < c.used.popcnt) {
                    cache.clear;
                    pcount = c.used.popcnt;
                }
                if (cache.get(c.used, 1e4) <= c.t) continue;
                cache[c.used] = c.t;
                foreach (i; 1 .. N + 1) {
                    if (c.used & (1 << i)) continue;
                    if (Distance(c.v, i) + c.t >= Distance(N + 1, i)) {
                        goto NEXT;
                    }
                }
                foreach (i; 1 .. N + 1) {
                    Q.insert(P(i, c.used | 1 << i, Distance(c.v, i) + c.t));
                }
NEXT:;
            }
            return false;
        }
        writeln(bfs ? "YES" : "NO");
    }
    while (input) solve;
}