Alice 在技术课上学习了铰链机构。她制作了一个工具,利用平行四边形的三个顶点(可能重合或共线)来构造第四个顶点。形式化地,给定三个点 $A, B, C$,她可以构造一个点 $D$,使得向量 $\vec{AB}$ 和 $\vec{DC}$ 相等。
Alina 在几何课上学习了正多边形的概念。在本题中,我们使用以下定义:
- 如果点 $A_1, A_2, \dots, A_n$ ($n \ge 3$) 全部重合,则称它们构成退化的正多边形;
- 如果点 $A_1, A_2, \dots, A_n$ ($n \ge 3$) 两两不同,位于以某点 $O$ 为圆心的同一个圆上,且满足 $\angle A_1OA_2 = \angle A_2OA_3 = \dots = \angle A_nOA_1 = \frac{360^\circ}{n} = \frac{2\pi}{n}$,并且在所有这些角中,绕 $O$ 点的逆时针旋转 $\frac{2\pi}{n}$ 将 $\vec{OA_i}$ 映射到 $\vec{OA_{(i \bmod n)+1}}$,则称它们按逆时针顺序构成非退化的正多边形;
- 如果存在点集的一个排列 $A(1), A(2), \dots, A(n)$ 使得这些点按逆时针顺序构成非退化的正多边形,则称点 $A_1, A_2, \dots, A_n$ ($n \ge 3$) 构成非退化的正多边形;
- 如果点 $A_1, A_2, \dots, A_n$ ($n \ge 3$) 构成退化的正多边形或非退化的正多边形,则称它们构成正多边形。
注意,最后一个定义与点的顺序无关:如果一个点列表构成正多边形,那么它们的任何排列也构成正多边形。
校长 Arina 决定测试女孩们的技能。首先,她让她们在平面上构造 $n + m$ 个点。前 $n$ 个点应按逆时针顺序构成一个非退化的正多边形。接下来的 $m$ 个点中的每一个都使用 Alice 的工具根据三个先前的点构造。
女孩们完成了这部分任务。然后,Arina 开始列举某些点集,并询问它们是否构成正多边形。这对女孩们来说相当困难,所以她们向你寻求帮助。请编写一个程序来处理 Arina 的任务。
输入格式
第一行包含三个整数 $n, m, k$:原始正多边形的顶点数、使用 Alice 工具构造的额外点数,以及 Arina 将要询问的多边形数量 ($3 \le n \le 10^4, 0 \le m \le 3 \cdot 10^4, 1 \le k \le 10^4$)。点 $K_1, K_2, \dots, K_n$ 按逆时针顺序构成一个非退化的正多边形。
接下来的 $m$ 行描述了点 $K_{n+1}, \dots, K_{n+m}$ 是如何构造的。第 $i$ 行包含三个整数 $a_i, b_i, c_i$ ($1 \le a_i, b_i, c_i \le n+i-1$):应用 Alice 工具所依据的三个点的编号。点 $K_{n+i}$ 的定义满足 $\vec{K_{a_i}K_{b_i}} = \vec{K_{n+i}K_{c_i}}$。数字 $a_i, b_i, c_i$ 中的部分或全部可能重合。
接下来的 $k$ 行描述了 Arina 的点集。第 $i$ 行以格式 “$r_i \ P_1^{(i)} \ P_2^{(i)} \ \dots \ P_{r_i}^{(i)}$” 描述第 $i$ 个集合。这意味着女孩们需要检查点 $K_{P_1^{(i)}}, \dots, K_{P_{r_i}^{(i)}}$ 是否构成一个正多边形 ($3 \le r_i \le 3 \cdot 10^4, 1 \le P_j^{(i)} \le n + m$)。保证所有 $r_i$ 的总和不超过 $3 \cdot 10^4$。数字 $P_j^{(i)}$ 中的部分或全部可能重合。
输出格式
输出 $k$ 行。如果 Arina 的第 $i$ 个集合构成正多边形,则第 $i$ 行应包含单词 “Yes”,否则包含 “No”。输出的每个字母不区分大小写。
样例
样例输入 1
3 6 8 1 2 3 3 1 4 5 4 3 3 1 2 4 5 3 4 5 2 6 4 7 6 5 1 2 3 1 3 2 3 1 1 8 4 2 5 6 7 3 2 1 4 3 6 5 9 3 4 7 9 4 1 3 2 8
样例输出 1
Yes Yes Yes No No No Yes No
说明
样例图片: