#include <bits/stdc++.h>
using namespace std;
long long int n, l;
long long int arr[100005];
bool isValid(long double x) {
  long double start = 0, speed = 1, time = x;
  for (long long int i = 1; i <= n + 1; i++) {
    long double temp = (arr[i] - start) / speed;
    if (temp <= time) {
      start = arr[i];
      speed++;
      time -= temp;
    } else {
      start += time * speed;
      break;
    }
  }
  long double end = l;
  speed = 1;
  for (long long int i = n; i >= 0; i--) {
    long double temp = (end - arr[i]) / speed;
    if (temp <= x) {
      end = arr[i];
      speed++;
      x -= temp;
    } else {
      end -= x * speed;
      break;
    }
  }
  return end <= start;
}
void ETA() {
  cin >> n >> l;
  for (long long int i = 1; i <= n; i++) cin >> arr[i];
  arr[n + 1] = l;
  long double L = 0, R = 1e9 + 1;
  for (long long int i = 0; i < 100; i++) {
    long double mid = (L + R) / 2;
    if (isValid(mid))
      R = mid;
    else
      L = mid;
  }
  cout << fixed << setprecision(10) << R << '\n';
}
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  long long int t = 1;
  cin >> t;
  while (t--) ETA();
  return 0;
}
