#include <bits/stdc++.h>
using namespace std;
const int K = 105;
const int N = (int)1e4 + 100;
int c[N];
long double dp[K][N];
long double C[K][K];
long double fact[K];
int main(int, char **) {
  fact[0] = 1;
  for (int i = 0; i < K; i++) {
    if (i != 0) fact[i] = fact[i - 1] * i;
    C[i][0] = C[i][i] = 1;
    for (int j = 1; j < i; j++) C[i][j] = C[i - 1][j] + C[i - 1][j - 1];
  }
  int n, x;
  scanf("%d%d", &n, &x);
  for (int i = 0; i < n; i++) scanf("%d", &c[i]);
  dp[0][0] = 1;
  for (int i = 0; i < n; i++)
    for (int j = i; j >= 0; j--)
      for (int s = 0; s + c[i] < N; s++) {
        dp[j + 1][s + c[i]] += dp[j][s];
      }
  long double ans = 0;
  for (int k = 1; k <= n; k++) {
    long double xx = x;
    xx += ((long double)n / (long double)k - 1.) * (long double)x / 2.;
    long double value = 0;
    for (int s = 0; s < N; s++) {
      long double cur = dp[k][s];
      if (cur < 0.5) continue;
      long double A = xx;
      long double B = (long double)s / (long double)k;
      value += cur * min(A, B);
    }
    value /= C[n][k];
    ans += value;
  }
  printf("%.14lf\n", (double)ans);
  return 0;
}
