编程题
### 问题描述
小齐和她的奶牛们计划离开城镇度长假,因此她希望在此期间暂时关闭她的农场以省钱。
农场包括 $N$ 个谷仓,它们之间通过 $M$ 条双向路径相连。为了关闭农场,小齐计划逐个关闭谷仓。当一个谷仓关闭时,与该谷仓相邻的所有路径也会关闭,不能再使用。
小齐对了解每个时刻(初始时和每次关闭后)农场是否“完全连通”很感兴趣,即是否可以通过一系列适当的路径从任何一个开放的谷仓到达任何其他开放的谷仓。由于小齐的农场初始时可能并不完全连通,因此需要进行一些检查。
### 输入格式
第一行输入两个整数 $N$ 和 $M$。
接下来的 $M$ 行,每行描述一条路径,使用谷仓的编号对表示(谷仓编号方便地从 $1 \ldots N$ 编号)。
最后的 $N$ 行给出 $1 \ldots N$ 的排列,描述将关闭的谷仓的顺序。
### 输出格式
输出包含 $N$ 行,每行包含一个 $YES$ 或 $NO$。第一行指示初始时农场是否完全连通,第 $i+1$ 行指示在第 $i$ 次关闭后农场是否完全连通。
### 样例输入
```
4 3
1 2
2 3
3 4
3
4
1
2
```
### 样例输出
```
YES
NO
YES
YES
```
### 评测数据规模
$1 \leq N, M \leq 3000$。