평면에 원이 하나 이상 놓여 있다. 서로 다른 두 원은 중심이 다르거나 반지름이 다르다. 원끼리 겹칠 수는 있지만, 세 개 이상의 원이 함께 공유하는 영역이나 점은 없다. 한 원이 다른 원을 완전히 품거나 두 원이 서로 다른 두 점에서 만날 수는 있어도, 두 원의 둘레가 한 점에서 닿는 일은 없다.
두 점 P와 Q가 주어질 때, 어느 원의 둘레도 지나지 않고 두 점을 잇는 경로가 있는지 판정하는 프로그램을 작성하시오. 경로는 원의 둘레를 지나지만 않으면 어떤 곡선이어도 된다. 원 배치 하나마다 점 쌍이 하나 이상 주어진다.
입력은 여러 데이터 세트로 이루어진다. 각 데이터 세트의 형식은 다음과 같다.
n m
Cx1 Cy1 r1
...
Cxn Cyn rn
Px1 Py1 Qx1 Qy1
...
Pxm Pym Qxm Qym
첫 줄에는 공백으로 구분된 정수 n과 m이 주어진다. n은 원의 개수이며 1≤n≤100이다. m은 점 쌍의 개수이며 1≤m≤10이다. 이어지는 n개 줄에는 각각 공백으로 구분된 정수 세 개가 주어진다. (Cxi,Cyi)는 i번째 원의 중심이고 ri는 그 반지름이다. 그 다음 m개 줄에는 각각 공백으로 구분된 정수 네 개가 주어지며, 두 점 Pj=(Pxj,Pyj)와 Qj=(Qxj,Qyj)의 좌표를 나타낸다. 이 두 점이 j번째 점 쌍이다. 좌표와 반지름은 0≤Cxi≤10000, 0≤Cyi≤10000, 1≤ri≤1000, 0≤Pxj≤10000, 0≤Pyj≤10000, 0≤Qxj≤10000, 0≤Qyj≤10000를 만족한다. Pj와 Qj는 서로 다른 점이고, 어느 원의 둘레 위에도 놓이지 않는다.
입력의 끝은 공백으로 구분된 0 두 개로 이루어진 줄로 나타낸다.
데이터 세트마다 결과 m개를 공백으로 구분해 한 줄에 출력한다. j번째 결과는 Pj와 Qj를 잇는 경로가 있으면 YES, 없으면 NO이다.