다리 검사

가중치가 있는 트리와 각자 경로를 걷는 두 테스터가 주어질 때, 각 질의마다 두 사람이 같은 다리 위에 양의 길이 구간 동안 동시에 있는지 판정한다.

어려움8트리동적 계획법누적 합수학아직 제출이 없습니다시간 제한4초메모리 제한256 MB

문제

작은 섬나라가 교통망을 놓고 있다. 섬 일부는 다리로 이어져 있고, 어느 두 섬 사이에도 다리를 따라가는 경로가 정확히 하나뿐이다. 즉 다리는 트리를 이룬다. 다리의 길이는 서로 다를 수 있다.

다리를 개통하기 전에 안전을 검사해야 한다. 앞으로 qq일 동안 매일 검사원 두 명이 각자 맡은 경로를 속도 11로 걷는다. jj번째 검사원은 시각 sjs_j에 섬 bjb_j를 출발해 섬 bjb_j와 섬 eje_j를 잇는 유일한 경로를 걸어 섬 eje_j에서 멈춘다. 두 검사원의 출발 시각은 서로 다를 수 있다.

어떤 다리 하나를 두 검사원이 동시에 걷고 있던 시간이 길이가 00보다 큰 구간이면, 그날 그 다리는 검사되었다고 한다. 두 검사원이 섬에서 한 순간만 마주치는 경우는 검사로 치지 않는다. 하루하루는 서로 독립이다.

qq일 각각에 대해 그날 검사된 다리가 하나라도 있는지 판정하라.

입력

첫째 줄에 섬의 수 nn과 검사 일수 qq가 주어진다. (2n1052 \le n \le 10^5, 1q1051 \le q \le 10^5)

다음 n1n-1개 줄에는 다리 정보가 정수 세 개 uiu_i, viv_i, lil_i로 주어진다. (1ui,vin1 \le u_i, v_i \le n, 1li1091 \le l_i \le 10^9) ii번째 다리는 섬 uiu_i와 섬 viv_i를 길이 lil_i로 잇는다.

다음 qq개 줄에는 하루치 검사 계획이 정수 여섯 개 b1b_1 e1e_1 s1s_1 b2b_2 e2e_2 s2s_2로 주어진다. (1bj,ejn1 \le b_j, e_j \le n, bjejb_j \ne e_j, 1sj1091 \le s_j \le 10^9) 앞의 세 수가 첫 번째 검사원의 출발 섬, 도착 섬, 출발 시각이고 뒤의 세 수가 두 번째 검사원의 것이다.

출력

qq개 줄을 출력한다. ii번째 줄에는 ii일차에 검사된 다리가 하나라도 있으면 YES를, 없으면 NO를 출력한다.