#include <bits/stdc++.h>
const int maxn = 5e5 + 10;
const int mod = 1e9 + 7;
using namespace std;
int n, k, a[maxn];
int ok(double time) {
  double tx = 0, vx = 1, vy = 1, px = 0, py = k, ty = 0;
  for (int i = 1; i <= n; i++) {
    double s = (a[i] - a[i - 1]) / vx;
    if (tx + s < time) {
      vx++;
      tx += s;
      px = a[i];
    } else
      px += vx * (time - tx), tx = time;
  }
  px += vx * (time - tx);
  for (int i = n; i >= 1; i--) {
    double s = (a[i + 1] - a[i]) / vy;
    if (ty + s < time) {
      vy++;
      ty += s;
      py = a[i];
    } else
      py -= vy * (time - ty), ty = time;
  }
  py -= vy * (time - ty);
  return px >= py;
}
void solve() {
  scanf("%d%d", &n, &k);
  for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
  a[n + 1] = k;
  double l = 0, r = 1e9;
  while (r - l > 1e-7) {
    double m = (l + r) / 2;
    if (ok(m))
      r = m;
    else
      l = m;
  }
  printf("%.7f\n", l);
}
int main() {
  int T;
  scanf("%d", &T);
  while (T--) solve();
  return 0;
}
