#include <bits/stdc++.h>
using namespace std;
priority_queue<double, vector<double>, greater<double> > PQ;
long long max(long long a, long long b) { return a > b ? a : b; }
long long min(long long a, long long b) { return a < b ? a : b; }
int main() {
  int n;
  double x;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%lf", &x);
    PQ.push(x);
  }
  while (PQ.size() > 1) {
    double x = PQ.top(), y;
    PQ.pop();
    y = PQ.top();
    PQ.pop();
    PQ.push((x + y) / 2.0);
  }
  printf("%lf", PQ.top());
  return 0;
}
