#include <bits/stdc++.h>
using namespace std;
int main() {
  static long long N, E, T;
  static long long x[100010];
  scanf("%lld%lld%lld", &N, &E, &T);
  for (int i = 1; i <= N; i++) {
    scanf("%lld", &x[i]);
  }
  static long long dp[2002];
  for (int i = 0; i < 2002; i++) dp[i] = 1000000000000000000;
  dp[0] = 0;
  for (int i = 1; i <= N; i++) {
    for (int j = 0; j <= i - 1; j++) {
      dp[i] = min(dp[i], dp[j] + max(2 * (x[i] - x[j + 1]), T));
    }
  }
  cout << dp[N] + E << endl;
}
