#include <bits/stdc++.h>
using namespace std;
inline void re(int &x) {
  x = 0;
  bool flag = false;
  char c = getchar();
  while (c < '0' || c > '9') {
    flag = c == '-';
    c = getchar();
  }
  while (c >= '0' && c <= '9') {
    x = (x << 1) + (x << 3) + (c ^ '0');
    c = getchar();
  }
  if (flag) x = -x;
  return;
}
int a[100010];
long long sum;
int n, m, k;
int main() {
  scanf("%d %d %d", &n, &k, &m);
  double ans = 0;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &a[i]);
    sum += a[i];
  }
  sort(a + 1, a + n + 1);
  for (int i = 1; i <= min(n, m + 1); i++) {
    ans = max(ans, ((double)sum +
                    min((long long)m - i + 1, ((long long)n - i + 1) * k)) /
                       (n - i + 1));
    sum -= a[i];
  }
  printf("%.10lf\n", ans);
  return 0;
}
