G. The Awesomest Vertextime limit per test5 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given a rooted tree on n vertices. The vertices are numbered from 1 to n; the root is the vertex number 1.Each vertex has two integers associated with it: a_i and b_i. We denote the set of all ancestors of v (including v itself) by R(v). The awesomeness of a vertex v is defined as \left| \sum_{w \in R(v)} a_w\right| \cdot \left|\sum_{w \in R(v)} b_w\right|,where |x| denotes the absolute value of x. Process q queries of one of the following forms:   1 v x — increase a_v by a positive integer x.  2 v — report the maximum awesomeness in the subtree of vertex v. InputThe first line contains two integers n and q (1 \leq n \leq 2\cdot 10^5, 1 \leq q \leq 10^5) — the number of vertices in the tree and the number of queries, respectively.The second line contains n - 1 integers p_2, p_3, \dots, p_n (1 \leq p_i < i), where p_i means that there is an edge between vertices i and p_i.The third line contains n integers a_1, a_2, \dots, a_n (-5000 \leq a_i \leq 5000), the initial values of a_i for each vertex.The fourth line contains n integers b_1, b_2, \dots, b_n (-5000 \leq b_i \leq 5000), the values of b_i for each vertex.Each of the next q lines describes a query. It has one of the following forms:   1 v x  (1 \leq v \leq n, 1\leq x \leq 5000).  2 v  (1 \leq v \leq n). OutputFor each query of the second type, print a single line with the maximum awesomeness in the respective subtree.ExampleInput5 61 1 2 210 -3 -7 -3 -1010 3 9 3 62 12 21 2 62 11 2 52 1Output10091169240NoteThe initial awesomeness of the vertices is [100, 91, 57, 64, 57]. The most awesome vertex in the subtree of vertex 1 (the first query) is 1, and the most awesome vertex in the subtree of vertex 2 (the second query) is 2. After the first update (the third query), the awesomeness changes to [100, 169, 57, 160, 57] and thus the most awesome vertex in the whole tree (the fourth query) is now 2.After the second update (the fifth query), the awesomeness becomes [100, 234, 57, 240, 152], hence the most awesome vertex (the sixth query) is now 4. 
Input5 61 1 2 210 -3 -7 -3 -1010 3 9 3 62 12 21 2 62 11 2 52 1
Output10091169240
['data structures', 'dfs and similar', '*3000']