#include <bits/stdc++.h>
using namespace std;
const int MAX_TAILLE = 100 * 1000 + 3;
long long T[1];
long long paire[MAX_TAILLE], impaire[MAX_TAILLE];
int n, e, a;
long long best;
int main() {
  paire[0] = 0;
  impaire[0] = 0;
  int p = 1, ip = 1;
  cin >> n >> e;
  T[0] = 0;
  for (int i = 1; i <= n; i++) {
    cin >> a;
    if (i % 2 == 1) {
      paire[p] = paire[p - 1] + a - T[0];
      p++;
    } else {
      impaire[ip] = impaire[ip - 1] + a - T[0];
      ip++;
    }
    T[0] = a;
  }
  if ((n + 1) % 2 == 1) {
    paire[p] = paire[p - 1] + e - T[0];
    ip--;
  } else {
    impaire[ip] = impaire[ip - 1] + e - T[0];
    p--;
  }
  best = paire[p];
  for (int i = 1; i <= p; i++) {
    best = max(best, paire[i] + impaire[ip] - impaire[i - 1] - 1);
  }
  cout << best;
}
