시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 256 MB 38 24 24 63.158%

문제

개구리가 좌표평면 위로 돌아왔다. 이번에는 $(x, y)$ 위에 개구리 $N$마리가 점프할 준비를 하고 있다. muse가 잠시 게임을 하던 사이, 개구리들은 제멋대로 점프를 했다. muse는 좌표평면으로 돌아온 뒤, 처음에 자신이 개구리를 어디에 위치해 놓았는지 궁금해졌다.

다행히 muse는 개구리의 이동에 관해 몇 가지 정보를 알아내는 데 성공했다. $i$번째 개구리는 총 $c_i$번의 이동을 했으며, 이동을 모두 마친 현재 $(a_i, b_i)$ 위에 있다는 것이다. 이 정보를 바탕으로, 개구리들이 처음에 어디에 있었는지 알아내는 프로그램을 작성해 보자.

입력

첫 줄에 개구리의 수 $N$이 주어진다. ($1 \le N \le 10^5$)

둘째 줄부터 $N+1$번째 줄까지, $i+1$번째 줄에는 $a_i$, $b_i$, $c_i$가 차례로 주어진다. ($-10^9 \le a_i, b_i \le 10^9$, $0 \le c_i \le 2 \cdot 10^9$)

출력

개구리들의 초기 위치를 $(x, y)$라고 할 때, $x$와 $y$를 공백을 사이에 두고 출력하자.

만약 초기 위치로 가능한 격자점이 없다면 NO를 출력한다.

만약 초기 위치로 가능한 점이 여러 개라면 $x$값이 가장 작은 점을 출력하며, 이러한 점도 여러 개라면 $y$값이 가장 작은 점을 출력한다.

예제 입력 1

2
3 3 5
0 0 3

예제 출력 1

-1 2

예제 입력 2

2
3 3 5
0 0 2

예제 출력 2

NO