import java.util.*;

class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		PriorityQueue<Double> pq = new PriorityQueue<>();
		for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		}
		//System.out.println(pq.poll());
		//double sum = 0;
		double a,b,x;
		while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	}
		double ans = pq.peek();
	System.out.println(ans);
	}
	
	
	} import java.util.*; util.* java class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		PriorityQueue<Double> pq = new PriorityQueue<>();
		for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		}
		//System.out.println(pq.poll());
		//double sum = 0;
		double a,b,x;
		while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	}
		double ans = pq.peek();
	System.out.println(ans);
	}
	
	
	} Main public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		PriorityQueue<Double> pq = new PriorityQueue<>();
		for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		}
		//System.out.println(pq.poll());
		//double sum = 0;
		double a,b,x;
		while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	}
		double ans = pq.peek();
	System.out.println(ans);
	} main {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		PriorityQueue<Double> pq = new PriorityQueue<>();
		for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		}
		//System.out.println(pq.poll());
		//double sum = 0;
		double a,b,x;
		while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	}
		double ans = pq.peek();
	System.out.println(ans);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc PriorityQueue<Double> pq = new PriorityQueue<>(); pq new PriorityQueue<>() for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			pq.add(sc.nextDouble());
		} {
			pq.add(sc.nextDouble());
		} pq.add(sc.nextDouble()) pq.add pq sc.nextDouble() sc.nextDouble sc double a a b b x; x while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	} pq.size() != 1 pq.size() pq.size pq 1 {
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	} a = pq.poll() a pq.poll() pq.poll pq b = pq.poll() b pq.poll() pq.poll pq x = (a + b) / 2 x (a + b) / 2 (a + b) a b 2 pq.add(x) pq.add pq x double ans = pq.peek(); ans pq.peek() pq.peek pq System.out.println(ans) System.out.println System.out System System.out ans String[] args args
import java.util.*;

class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		PriorityQueue<Double> pq = new PriorityQueue<>();
		for(int i = 0; i < n; i++){
			pq.add(sc.nextDouble());
		}
		//System.out.println(pq.poll());
		//double sum = 0;
		double a,b,x;
		while(pq.size() != 1){
			a = pq.poll();
			b = pq.poll();
			x = (a + b) / 2;
			pq.add(x);
	}
		double ans = pq.peek();
	System.out.println(ans);
	}
	
	
	}