#include <bits/stdc++.h>
using namespace std;
double dfs(vector<double> v) {
  if (v.size() == 1) return v[0];
  vector<double> temp;
  for (int i = 0; i < v.size() - 1; i += 2) {
    temp.push_back((v[i] + v[i + 1]) / 2);
  }
  if (v.size() % 2 == 1) temp.push_back(v.back());
  sort(temp.begin(), temp.end());
  dfs(temp);
}
int main() {
  int N;
  cin >> N;
  vector<double> v(N);
  for (size_t i = 0; i < N; i++) {
    cin >> v[i];
  }
  double ans = v[0];
  sort(v.begin(), v.end());
  for (int i = 1; i < N; i++) {
    ans = (ans + v[i]) / 2;
  }
  cout << ans << endl;
  return 0;
}
