// Joe Zimmerman

// Barrington High School

// ACSL Senior-3 Division

// PATHWAYS

 

#include <stdio.h>

#include <string.h>

 

char grid[128][128];

int dist[128][128];

int q[1024][2], qstart = 0, qend = 0;

const int INF = 0x7f7f7f7f;

 

int main()

{

            int a, b, i, j, k, x, y;

            memset(grid, 0, sizeof(grid));

            scanf("%d%d", &a, &b);

            while (a && b)

            {

                        grid[a][b] = 1;

                        scanf("%d%d", &a, &b);

            }

            for (i = 0; i < 5; i++)

            {

                        scanf("%d%d%d%d", &q[0][0], &q[0][1], &a, &b);

                        memset(dist, 0x7f, sizeof(dist)); // all distances infinite

                        dist[q[0][0]][q[0][1]] = 0; // starting distance zero

                        qstart = 0;

                        qend = 1;

                        while ((qstart != qend) && (q[qstart][0] != a || q[qstart][1] != b))

                        {

                                    x = q[qstart][0];

                                    y = q[qstart][1];

                                    for (j = -1; j <= 1; j++)

                                                for (k = -1; k <= 1; k++)

                                                            if ((j || k) && grid[x+j][y+k]) // for all neighboring nodes

                                                                        if (dist[x][y] + 1 < dist[x+j][y+k]) // if there is a shorter path

                                                                        {

                                                                                    dist[x+j][y+k] = dist[x][y] + 1; // change the path length

                                                                                    q[qend][0] = x+j;

                                                                                    q[qend][1] = y+k;

                                                                                    ++qend; // push (breadth first)

                                                                        }

                                    ++qstart; // pop

                        }

                        if (dist[a][b] < INF)

                                    printf("%d\n", dist[a][b]);

                        else printf("NONE\n");

            }

            return 0;

}