#include <iostream>
#include <vector>
#include <algorithm>
#include <iomanip>
using namespace std;
int main()
{
    int n, l;
    
    while(cin >> n >> l)
    {
        vector<int> nums(n);
        for(int i = 0; i < n; i++)
        {
            cin >> nums[i];
        }
        sort(nums.begin(),nums.end());
        double min_d = max(nums[0],l-nums[n-1]);
        for(int i = 1; i <= n-1; i++)
        {
            min_d = max(min_d,(double)1.0*(nums[i]-nums[i-1])/2.0);
        }
        cout  << fixed << setprecision(2) << min_d << endl;
    }
    
    return 0;
}