import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;


public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	}

} import java.util.ArrayList; ArrayList java.util import java.util.Collections; Collections java.util import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	}

} Main public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	} main {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	} double value=0; value 0 double valueMin; valueMin double nextMin; nextMin Scanner sc=new Scanner(System.in); sc new Scanner(System.in) ArrayList<Double>material=new ArrayList<>(); material new ArrayList<>() int N=sc.nextInt(); N sc.nextInt() sc.nextInt sc for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		} int i=0; int i=0; i 0 i<N i N i++ i++ i {
			material.add(sc.nextDouble());
		} {
			material.add(sc.nextDouble());
		} material.add(sc.nextDouble()) material.add material sc.nextDouble() sc.nextDouble sc Collections.sort(material) Collections.sort Collections material for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		} int i=0; int i=0; i 0 i<N-1 i N-1 N 1 i++ i++ i {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		} {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		} if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			} i==0 i 0 {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			} valueMin=material.get(0) valueMin material.get(0) material.get material 0 nextMin=material.get(1) nextMin material.get(1) material.get material 1 value=(valueMin+nextMin)/2 value (valueMin+nextMin)/2 (valueMin+nextMin) valueMin nextMin 2 material.remove(material.get(0)) material.remove material material.get(0) material.get material 0 material.remove(material.get(0)) material.remove material material.get(0) material.get material 0 material.add(value) material.add material value {
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			} value=(value+material.get(0))/2 value (value+material.get(0))/2 (value+material.get(0)) value material.get(0) material.get material 0 2 material.remove(material.get(0)) material.remove material material.get(0) material.get material 0 System.out.println(value) System.out.println System.out System System.out value String[] args args public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	}

} public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	}

} Main
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;


public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		double value=0;
		double valueMin;
		double nextMin;
		Scanner sc=new Scanner(System.in);
		ArrayList<Double>material=new ArrayList<>();
		//具材の個数
		int N=sc.nextInt();
		
		for(int i=0;i<N;i++) {
			material.add(sc.nextDouble());
		}
		
		Collections.sort(material);
		
		for(int i=0;i<N-1;i++) {
			if(i==0) {
			valueMin=material.get(0);
			nextMin=material.get(1);
			value=(valueMin+nextMin)/2;
			material.remove(material.get(0));
			material.remove(material.get(0));
			material.add(value);
			
			}else{
				value=(value+material.get(0))/2;
				material.remove(material.get(0));
			}
		}
			
		System.out.println(value);
		
	}

}
