#!/bin/python3 import sys def eval(poly,n,t): if(n==1): return poly[0] an = poly[n-1] for i in range(n-2,-1,-1): an = poly[i] + an*t if(an>=1000000007): an= int(an%1000000007) return an n,a,b,q = input().strip().split(' ') n,a,b,q = [int(n),int(a),int(b),int(q)] c = list(map(int, input().strip().split(' '))) for a0 in range(q): queryType,first,second = input().strip().split(' ') queryType,first,second = [int(queryType),int(first),int(second)] # your code goes here if(queryType==1): c[first] = second if(queryType==2): t = int(-b/a) temp = eval(c[first:second+1],second-first+1,t) if(temp==0): print("Yes") else: print("No")