#include <iostream>
using namespace std;

int main(){
  long long n, a, b; cin >> n >> a >> b;
  long long x[n];
  for(int i = 0; i < n; ++i) cin >> x[i];
  long long dp[n+1];
  dp[0] = 0;
  dp[1] = 0;
  for(int i =2; i <= n; ++i){
    dp[i] = min(a*(x[i-1]-x[i-2]), b) + dp[i-1];
  }
  cout << dp[n] << endl;
  return 0; 
}
#include <bits/stdc++.h>
#define rep(i, ns, ne) for (int i = ns; i < ne; ++i)
using namespace std;
using ULL = unsigned long long;
int main() {
  ULL N, a, b, west, east, chk, ans = 0;
  cin >> N >> a >> b >> west;
  rep(i, 1, N) {
    cin >> east;
    chk = (east - west) * a;
    if (chk > b) {
      ans += b;
    } else {
      ans += chk;
    }
    west = east;
  }
  cout << ans << endl;
  getchar();
}