#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int i, j, k, t;
  cin >> t;
  while (t--) {
    long long int n, l;
    cin >> n >> l;
    vector<long long int> A(n, 0);
    for (i = 0; i < n; ++i) {
      cin >> A[i];
    }
    i = 0;
    j = n - 1;
    long double start_speed = 1, end_speed = 1, start_pos = 0, end_pos = l,
                res_time = 0;
    while (i <= j) {
      long double d1 = A[i] - start_pos;
      long double d2 = end_pos - A[j];
      long double t1 = d1 / start_speed;
      long double t2 = d2 / end_speed;
      if (t1 < t2) {
        ++start_speed;
        start_pos = A[i];
        end_pos -= end_speed * t1;
        i++;
        res_time += t1;
      } else {
        ++end_speed;
        end_pos = A[j];
        start_pos += start_speed * t2;
        --j;
        res_time += t2;
      }
    }
    cout << fixed << setprecision(15);
    res_time += (end_pos - start_pos) / (start_speed + end_speed);
    cout << res_time << endl;
  }
  return 0;
}
