#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int n, E, T;
  cin >> n >> E >> T;
  vector<int> X(n + 1, 0);
  for (int i = 1; i <= n; ++i) {
    cin >> X[i];
  }
  vector<int64_t> dp(n + 1, 0);
  for (int i = 1; i <= n; ++i) {
    dp[i] = 1LL << 62;
    for (int j = i - 1; j >= 0; --j) {
      int64_t nval = dp[j] + X[j + 1] - X[j] + 3LL * (X[i] - X[j + 1]) +
                     max((int64_t)0, (int64_t)(T - 2LL * (X[i] - X[j + 1])));
      dp[i] = min(dp[i], nval);
    }
  }
  int64_t ans = dp[n] + E - X[n];
  cout << ans << '\n';
}
