Дано кореневе дерево, у вузлах якого записані цілі числа. Для кожного внутрішнього вузла знайдіть мінімальний модуль різниці чисел у двох різних вершинах його піддерева.
Перший рядок містить кількість вершин у дереві (1 \le n \le 40000). У наступних рядках наведено по два цілих числа: p_i та v_i (0 \le i < n). Тут p_i — номер батька вершини . Якщо p_i = -1, то ця вершина є коренем. Число v_i — значення, записане у вершині (0 \le v_i \le 10^6).
Виведіть одне число:

Виведіть відповідь за модулем . Тут — множина індексів внутрішніх вершин, а a_i — відповідь для вершини . Використовуйте q = 127 та P = 1000000007.
Приклад 1