#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int tc, n, l, a;
  vector<int> v;
  cin >> tc;
  for (int i = 0; i < tc; i++) {
    cin >> n >> l;
    for (int j = 0; j < n; j++) {
      cin >> a;
      v.push_back(a);
    }
    double start = 0, end = l, v1 = double(1), v2 = double(1), time = 0,
           tempt1 = 0, tempt2 = 0;
    int ind1 = 0, ind2 = n - 1;
    while (ind1 <= ind2) {
      tempt1 = ((double(v[ind1])) - start) / v1;
      tempt2 = (end - (double(v[ind2]))) / v2;
      if (tempt1 <= tempt2) {
        time += tempt1;
        start = (double(v[ind1]));
        ind1++;
        v1 = v1 + (double(1));
        end = end - (tempt1 * v2);
        if (tempt1 == tempt2) {
          ind2--;
          v2 = v2 + (double(1));
        }
      } else if (tempt1 > tempt2) {
        time += tempt2;
        end = (double(v[ind2]));
        ind2--;
        v2 = v2 + (double(1));
        start = start + (tempt2 * v1);
        if (tempt1 == tempt2) {
          ind1++;
          v1 = v1 + (double(1));
        }
      }
    }
    double t = 0;
    if (start != end) {
      t = (end - start) / (v1 + v2);
      time += t;
    }
    cout << fixed << setprecision(15) << time << "\n";
    v.clear();
  }
}
