#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, l;
  cin >> n >> l;
  vector<double> lanterns(n);
  for (int i = 0; i < n; i++) cin >> lanterns[i];
  sort(lanterns.begin(), lanterns.end());
  double m = 0;
  cout << fixed << setprecision(10);
  for (int i = 1; i < n; i++) {
    m = max(m, lanterns[i] - lanterns[i - 1]);
  }
  if (m / 2 >= lanterns[0] && m / 2 >= l - lanterns[n - 1])
    cout << m / 2 << "\n";
  else
    cout << max(lanterns[0], l - lanterns[n - 1]) << "\n";
  return 0;
}
