Дерево називається зваженим, якщо кожному його ребру приписано певне число — довжина ребра. Усі довжини є додатними. Для кожної вершини потрібно визначити найбільшу можливу відстань до будь-якої іншої вершини дерева.
Вхідні дані містять опис дерева. Перший рядок містить кількість вершин n~(2 \le n \le 50000). Кожен з наступних n - 1 рядків описує ребра дерева. Кожне ребро задається трьома додатними цілими числами: перші два числа — це номери вершин, які з'єднує ребро (від до ), а третє число — це довжина ребра. Загальна довжина всіх ребер не перевищує 2^{31} - 1. Гарантується, що вхідне дерево є коректним.
Виведіть рівно рядків: -ий рядок повинен містити відстань від вершини k~(k = 1...n) до найдальшої вершини.

Приклад 1