#265. 异象石

异象石

题目描述

AderaMicrosoft应用商店中的一款解谜游戏。

异象石是进入Adera中异时空的引导物,在Adera的异时空中有一张地图。

这张地图上有N\red {N}个点,有N1\red {N-1}条双向边把它们连通起来。

起初地图上没有任何异象石,在接下来的M\red {M}个时刻中,每个时刻会发生以下三种类型的事件之一:

  1. 地图的某个点上出现了异象石(已经出现的不会再次出现);
    
  2. 地图某个点上的异象石被摧毁(不会摧毁没有异象石的点);
    
  3. 向玩家询问使所有异象石所在的点连通的边集的总长度最小是多少。
    

请你作为玩家回答这些问题。 img

输入格式

第一行有一个整数N\red {N},表示点的个数。

接下来N1\red {N-1}行每行三个整数x,y,z\red {x,y,z},表示点x\red {x}y\red {y}之间有一条长度为z\red {z}的双向边。

N+1\red {N+1}行有一个正整数M\red {M}

接下来M\red {M}行每行是一个事件,事件是以下三种格式之一:

+x\red {”+ x”} 表示点x\red x上出现了异象石

x\red {”- x”} 表示点x\red x上的异象石被摧毁

?\red {”?”} 表示询问使当前所有异象石所在的点连通所需的边集的总长度最小是多少。

输出格式

对于每个 ?\red {?} 事件,输出一个整数表示答案。

样例

输入样例

6
1 2 1
1 3 5
4 1 7
4 5 3
6 4 2
10
+ 3
+ 1
?
+ 6
?
+ 5
?
- 6
- 3
?

输出样例

5
14
17
10

提示

1N,M105\red {1≤N,M≤10^5},

1x,yN\red {1≤x,y≤N},

xy\red {x≠y},

1z109\red {1≤z≤10^9}