#include<bits/stdc++.h>
using namespace std;
int n,m,q;
int to[100005],next[100005],head[100005],tot;
int dp[100005][2];
int a[200005][2],front,rear;
int main()
{
scanf("%d%d%d",&n,&m,&q);
for(int i=1;i<=m;i++)
{
int g1,g2;scanf("%d%d",&g1,&g2);
to[++tot]=g2;next[tot]=head[g1];head[g1]=tot;
to[++tot]=g1;next[tot]=head[g2];head[g2]=tot;
}
a[front][0]=1;a[front][1]=0;dp[1][0]=2100000000;
while(front<=rear)
{
int x=a[front][0],len=a[front][1];
for(int i=head[x];i;i=next[i])
{
int y,lenth;y=to[i];lenth=len+1;
if(dp[y][lenth&1])continue;
rear++;
a[rear][0]=y;a[rear][1]=dp[y][lenth&1]=lenth;
}
front++;
}
dp[1][0]=0;
for(int i=1;i<=q;i++)
{
int x,y;scanf("%d%d",&x,&y);
if(dp[x][y&1]>y||(x!=1&&!dp[x][y&1])||(x==1&&y==1&&dp[1][1]==0))printf("No\n");
else printf("Yes\n");
}
}