#include <bits/stdc++.h>
using namespace std;
const int SIZE = 1e5 + 5;
const long long INF = 9223372036854775800;
const long long inf = 2147483640;
const long long M = 1e9 + 7;
void solve() {
  int l, n;
  cin >> n >> l;
  vector<int> a(n);
  for (int i = 0; i < n; i++) {
    cin >> a[i];
  }
  double t1 = 0, t2 = 0;
  int s1 = 1, s2 = 1;
  double pos1 = 0, pos2 = l;
  int i1 = 0, i2 = n - 1;
  while (true) {
    if (i1 > i2) {
      if (t1 < t2) {
        pos1 += (t2 - t1) * s1;
        t1 = t2;
      } else {
        pos2 -= (t1 - t2) * s2;
        t2 = t1;
      }
      cout << fixed << setprecision(10) << t1 + (pos2 - pos1) / (s1 + s2)
           << '\n';
      break;
    }
    if (t1 + (a[i1] - pos1) / s1 < t2 + (pos2 - a[i2]) / s2) {
      t1 = t1 + (a[i1] - pos1) / s1;
      pos1 = a[i1++];
      s1++;
    } else {
      t2 = t2 + (pos2 - a[i2]) / s2;
      pos2 = a[i2--];
      s2++;
    }
  }
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int t = 1;
  cin >> t;
  while (t--) solve();
}
