import sys input = sys.stdin.readline N,Q,P = map(int,input().split()) A = list(map(int,input().split())) query_r = [[] for i in range(N)] ans = ["No" for i in range(Q)] for i in range(Q): l,r,k = map(int,input().split()) query_r[r-1].append((l-1,k,i)) dp = [-1 for i in range(P)] for r in range(N): new_dp = [dp[i] for i in range(P)] for i in range(P): if dp[i]!=-1: to = (i*A[r]) % P new_dp[to] = max(new_dp[to],dp[i]) new_dp[A[r]] = r dp = new_dp for l,k,idx in query_r[r]: if dp[k] >= l: ans[idx] = "Yes" print(*ans,sep="\n")