在这一轮的星际战争中,我方在宇宙中建立了 n 个据点,以 m 个单向虫洞连接。我们把终点为据点 u 的所有虫洞归为据点 u 的虫洞。 战火纷飞之中这些虫洞很难长久存在,敌人的打击随时可能到来。这些打击中的有效打击可以分为两类:
输入的第一行包含两个正整数 n, m。 接下来 m 行每行两个数 u, v,表示一个从据点 u 出发到据点 v 的虫洞。保证 u ̸= v,保证不会有两条相同的虫洞。初始时所有的虫洞和据点都是完好的。 接下来一行一个正整数 q 表示询问个数。 接下来 q 行每行表示一次询问或操作。首先读入一个正整数 t 表示指令类型: • 若 t = 1,接下来两个整数 u, v 表示敌人摧毁了从据点 u 出发到据点 v 的虫洞。保证该虫洞存在且未被摧毁。 • 若 t = 2,接下来一个整数 u 表示敌人摧毁了据点 u。如果该据点的虫洞已全部被摧毁,那么这次袭击不会有任何效果。 • 若 t = 3,接下来两个整数 u, v 表示我方修复了从据点 u 出发到据点 v 的虫洞。保证该虫洞存在且被摧毁。 • 若 t = 4,接下来一个整数 u 表示我方修复了据点 u。如果该据点没有被摧毁的虫洞,那么这次修复不会有任何效果。 在每次指令执行之后,你需要判断能否进行一次反攻。如果能则输出 YES 否则输出NO。
输出一共 q 行。对于每个指令,输出这个指令执行后能否进行反攻。
3 6 2 3 2 1 1 2 1 3 3 1 3 2 11 1 3 2 1 2 3 1 1 3 1 1 2 3 1 3 3 3 2 2 3 1 3 1 3 1 3 4 2 1 3 2
NO NO YES NO YES NO NO NO YES NO NO
【样例 1 解释】
虫洞状态可以参考下面的图片,图中的边表示存在且未被摧毁的虫洞