import java.util.*;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  }
} import java.util.*; util.* java public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  }
} Main public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  } main {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc ArrayList<Float> v = new ArrayList<Float>(); v new ArrayList<Float>() for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    } {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    } float hoge = sc.nextFloat(); hoge sc.nextFloat() sc.nextFloat sc v.add(hoge) v.add v hoge for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    } int i = 0; int i = 0; i 0 i < n-1 i n-1 n 1 i++ i++ i {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    } {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    } int minIndex1 = v.indexOf(Collections.min(v)); minIndex1 v.indexOf(Collections.min(v)) v.indexOf v Collections.min(v) Collections.min Collections v float mixV1 = v.get(minIndex1); mixV1 v.get(minIndex1) v.get v minIndex1 v.remove(minIndex1) v.remove v minIndex1 int minIndex2 = v.indexOf(Collections.min(v)); minIndex2 v.indexOf(Collections.min(v)) v.indexOf v Collections.min(v) Collections.min Collections v float minV2 = v.get(minIndex2); minV2 v.get(minIndex2) v.get v minIndex2 v.remove(minIndex2) v.remove v minIndex2 float value = (mixV1 + minV2) / 2; value (mixV1 + minV2) / 2 (mixV1 + minV2) mixV1 minV2 2 v.add(value) v.add v value System.out.println(v.get(0)) System.out.println System.out System System.out v.get(0) v.get v 0 sc.close() sc.close sc String[] args args public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  }
} public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  }
} Main
import java.util.*;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    
    ArrayList<Float> v = new ArrayList<Float>();
    for(int i = 0; i < n; i++) {
    	float hoge = sc.nextFloat();
    	v.add(hoge);
    }
    
    for(int i = 0; i < n-1; i++) {
    	int minIndex1 = v.indexOf(Collections.min(v));
    	float mixV1 = v.get(minIndex1);
    	v.remove(minIndex1);
    	
    	int minIndex2 = v.indexOf(Collections.min(v));
    	float minV2 = v.get(minIndex2);
    	v.remove(minIndex2);
    	
    	
    	float value = (mixV1 + minV2) / 2;
    	
    	v.add(value);
    }
    
    System.out.println(v.get(0));
    sc.close();
    
  }
}