n,k,x,y=map(int,input().split()) a=list(map(int,input().split()));a.sort() ans=0;c=0;f=0 for i in range(n): a[i]-=1 ans+=(a[i]+k-1)//k*x c=ans;t=0 for i in range(n): e=a[i]//k if e>f: c-=(n-i)*(e-f)*x t+=(e-f)*y f=e ans=min(ans,c+t) e+=1 if a[i]%k and c>=x*(n-i) and e>f: c-=(n-i)*x t+=y;f=e ans=min(ans,c+t) print(ans)