#include <bits/stdc++.h>
int n, e, t, x[100005];
int main() {
  scanf("%d%d%d", &n, &e, &t);
  for (int i = 1; i <= n; ++i) scanf("%d", x + i);
  long long ans = e;
  int last = 1;
  for (int i = 2; i <= n; ++i) {
    if (std::max((x[i] - x[last]) * 2, t) -
            std::max((x[i - 1] - x[last]) * 2, t) >
        t) {
      ans += std::max((x[i - 1] - x[last]) * 2, t);
      last = i;
    }
  }
  ans += std::max((x[n] - x[last]) * 2, t);
  printf("%lld\n", ans);
  return 0;
}
