给出一棵以  为根且包含 
 个节点的树,每个节点都有初始颜色 
。
 表示黑色,
 表示白色。
	如果这棵树的任意节点  都满足:在以 
 为根的子树中(包含 
),黑色节点数量不少于白色节点数量,这棵树就是符合要求的。更正式得说,对于以 
 为根的子树(包含 
),设 
 为黑色节点数量,
 为白色节点数量。如果 
,都有 
,那么这棵树就是符合要求的。
	现在有一种补全操作:选择任意一个节点 ,然后给 
 添加一个儿子节点 
,节点 
 染黑或染白。
	如果至少需要执行  次补全操作,才能使这棵树符合要求,那么称这棵树的满意度为 
。
	现在有  次修改,每次修改用二元组 
 表示,意思是将节点 
 修改成颜色 
,如果 
 表示白色,
 表示黑色。在每次修改结束后,输出这棵树的满意度。
	需要注意的是,修改操作不是独立的,也就是说,第  次修改操作是在第 
 次修改操作后的树上进行的。
第一行包含两个整数
,分别表示树节点个数和修改次数。
第二行包含
个整数
,分别表示
个节点的颜色,
表示白色,
表示黑色。
接下来
行,每行包含两个整数
,表示一条连接
和
的树边。
接下来
行,每行包含一个二元组
,表示将节点
修改为颜色
。
输出行,每行包含一个整数,表示第
次操作后的满意度。
输入较多,建议使用较快的读入方式,比如scanf。