Cho một cây gồm đỉnh, đánh số từ đến , được chọn gốc tại đỉnh . Mỗi đỉnh có giá trị hiện tại .
Bạn cần xử lý thao tác trực tuyến thuộc một trong hai loại:
- : thay giá trị của đỉnh bằng ;
- : tính tổng giá trị hiện tại của tất cả các đỉnh thuộc cây con gốc , trong đó có cả đỉnh .
Input
- Dòng đầu chứa hai số nguyên và .
- Dòng tiếp theo chứa số nguyên .
-
Mỗi dòng trong dòng tiếp theo chứa hai số nguyên , biểu diễn một cạnh vô hướng của cây.
-
Mỗi dòng trong dòng cuối mô tả một thao tác theo một trong hai dạng trên.
Output
- Với mỗi thao tác loại , in tổng cần tìm trên một dòng.
Constraints
- .
- .
- Với thao tác : .
- Với thao tác : .
- Các cạnh tạo thành một cây có gốc tại .
- Kết quả có thể vượt phạm vi số nguyên bit có dấu.
Scoring
- Subtask ( số điểm): .
- Subtask ( số điểm): Không có giới hạn bổ sung.
Example
Test 1
Input
6 6 5 1 4 2 7 3 1 2 1 3 2 4 2 5 3 6 2 2 1 5 10 2 1 2 3 1 1 8 2 1
Output
10 25 7 28
Giải thích: Ban đầu cây con của có tổng . Sau khi đổi giá trị đỉnh thành , tổng toàn cây là ; lần đổi cuối làm tổng này tăng thêm , thành .