import java.util.*;
import java.io.*;
public class Main{
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static BufferedWriter out = new BufferedWriter(new OutputStreamWriter(System.out));
static int[] P;
static int n,m,p,a,b;
public static void main(String[] args) throws IOException {
String[] S;
S = br.readLine().split(" ");
n = Integer.parseInt(S[0]);
m = Integer.parseInt(S[1]);
p = Integer.parseInt(S[2]);
P = new int[n+1];
for(int i = 1 ; i <= n ; i++) {
P[i] = i;
}
for(int i = 0 ; i < m ; i++) {
S = br.readLine().split(" ");
a = Integer.parseInt(S[0]);
b = Integer.parseInt(S[1]);
P[Find(a)] = Find(b);
}
for(int i = 0 ; i < p ; i++) {
S = br.readLine().split(" ");
a = Integer.parseInt(S[0]);
b = Integer.parseInt(S[1]);
if(Find(a) != Find(b)) {
out.write("No\n");
}
else {
out.write("Yes\n");
}
}
out.flush();
out.close();
br.close();
}
private static int Find(int x) {
if(P[x] != x) {
P[x] = Find(P[x]);
}
return P[x];
}
}
并查集拿下!!!