#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, l, i;
  vector<double> d;
  cin >> n >> l;
  int arr[n + 9];
  for (i = 0; i < n; i++) {
    cin >> arr[i];
  }
  sort(arr, arr + n);
  if (arr[0] != 0) {
    d.push_back((double)arr[0] - 0.0);
  }
  if (arr[n - 1] < l) {
    d.push_back(abs((double)arr[n - 1] - (double)l));
  }
  for (i = 0; i < n - 1; i++) {
    d.push_back((arr[i + 1] - arr[i]) / 2.0);
  }
  double res = *max_element(d.begin(), d.end());
  printf("%.9lf\n", res);
  return 0;
}
