R=range J=lambda:map(int,input().split()) N,Q,K=J() A=list(J()) for q in R(Q): l,r=J() t,b=0,1 for i in R(l-1,min(r,l+999)): t+=A[i] if t%K: b=0 break t//=K else:b=t==0 print("YNeos"[b::2])