#include using namespace std; #define rep(i,n) for(ll i=0;i<(ll)n;i++) #define all(v) v.begin(), v.end() #define rall(v) v.rbegin(), v.rend() #define mod 998244353 #define dai 5000000000000000000LL #define sho -dai #define eps 1e-14 #define fi(x) cout<; using T=tuple; using vi=vector; using vs=vector; using vc=vector; using vb=vector; using vp=vector

; using sp=set

; using ss=set; using si=set; using vvi=vector; using vvs=vector; using vvb=vector; using vvc=vector; using vvp=vector; using vsi=vector>; const ll dx[4]={0,1,0,-1}; const ll dy[4]={1,0,-1,0}; const ll INF = 1e18; int main(){ ll n,s,b; cin>>n>>s>>b; vi a(n); rep(i,n){ cin>>a[i]; } bool ok=true; rep(i,n-1){ if(!a[i]-a[i+1]<=0){ if((a[i+1]-a[i])%b==0){ if((a[i+1]-a[i])/b>s){ ok=false; } }else{ if((a[i+1]-a[i])/b+1>s){ ok=false; } } } } if(ok){ cout<<"Yes"<