şəhəri var və bu şəhərlər -dən -ə qədər nömrələnib. Şəhərlər bir-birinə (n - 1) yol ilə bağlıdır və hər bir şəhərdən digərinə çatmaq mümkündür. Hər yolun müəyyən bir uzunluğu var.
nömrəli şəhər t_i zamanında a_i nömrəli quldur klanı tərəfindən ələ keçirilmişdir (1 \leq a_i \leq n). Şəhər ələ keçirildikdən sonra, yalnız a_i klanının nümayəndələri oradan keçə bilər.
Aşağıdakı formada sualına cavab verin:
u v b T — əgər klanının nümayəndəsi zamanında səyahətinə başlasa, şəhərindən şəhərinə keçə bilərmi? Əgər mümkün deyilsə, -dan -yə gedən yolda keçmək mümkün olmayan ilk şəhərin nömrəsini bildirin.
Birinci sətir (2 \leq n \leq 10^5) tək tam ədədini ehtiva edir — şəhərlərin sayı.
Sonrakı (n - 1) sətirin hər biri iki tam ədəd p_i və d_i (1 \leq p_i < i, 1 \leq d_i \leq 10^3) ehtiva edir, bu da və p_i şəhərləri arasında d_i uzunluğunda yolu göstərir. İndeksləmə -dən başlayır.
Növbəti sətir tam ədəd a_i (1 \leq a_i \leq n) ehtiva edir, bu da müvafiq şəhəri ələ keçirən klanların nömrələrini göstərir.
Növbəti sətir tam ədəd t_i (1 \leq t_i \leq 10^9) ehtiva edir, bu da hər bir şəhərin ələ keçirilmə zamanını göstərir.
Növbəti sətir (1 \leq m \leq 10^5) tək tam ədədini ehtiva edir — sualların sayı.
Son sətir sualları təsvir edir. Hər biri dörd tam ədəd u_i, v_i, b_i, T_i (1 \leq u_i, v_i, b_i \leq n, 1 \leq T_i \leq 10^9) ehtiva edir — başlanğıc və son şəhərlərin nömrələri, səyahətçinin klan nömrəsi və səyahətin başlanğıc zamanı müvafiq olaraq.
Hər bir sual üçün ayrı sətirdə tək tam ədəd çıxarın — -dan -yə gedən yolda keçmək mümkün olmayan ilk şəhərin nömrəsi. Əgər belə bir şəhər yoxdursa, «-1» çıxarın.
Bu məsələdə böyük həcmli giriş və çıxış məlumatlarına diqqət yetirin. C++ dilində cin/cout əvəzinə scanf/printf və Python dilində input əvəzinə sys.stdin.readline kimi sürətli giriş və çıxış vasitələrindən istifadə etməyi tövsiyə edirik. Həmçinin, Python dilində məsələnin həlli zamanı PyPy interpretatorundan istifadə etməyi tövsiyə edirik.
Nümunə 1
Nümunə 2
Nümunə 3
( bal): p_i = 1;
( bal): n, m \leq 10^3;
( bal): p_i = i - 1, t_i = 1;
( bal): p_i = i - 1, a_i = 1, b_i = 2;
( bal): p_i = i - 1;
( bal): t_i = 1;
( bal): a_i = 1, b_i = 2;
( bal): əlavə məhdudiyyətlər olmadan.