#5106. 树上询问

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Laffey

题目描述

给出一个 N 个节点的树,根节点为 1 ,每个节点有一个权值 W_i

现有如下 M 个操作:

  1. 询问 x 的子树(包括自身)的权值和。
  2. x 的子树中所有节点的权值加上一个数 v

请对于每个 1 操作,输出查询的结果,答案对 19260817 取模。

输入格式

第一行有一个数 N

接下来一行有 N 个数,第 i 个数表示编号为 i 的节点的初始权值。

接下来 N - 1 行,每行有两个数 x, y ,表示一条边。

接下来一行有一个数 M

接下来 M 行,每行一定是以下两种之一。

  • 1 x
  • 2 x v

分别对应上面两种操作。

输出格式

对于每个操作 1,输出一行一个整数表示答案。

样例

样例输入

5
15 11 14 20 10 
2 1
3 2
4 2
5 4
5
2 1 13
1 3
1 5
2 1 4
1 2

样例输出

27
23
123

数据范围与提示

1 \leq N, M \leq 10^5

0 \leq W_i, v \leq 10^6


最后一个点如果没过请检查下 long long