import java.util.*;
class Main{
	public static void main(String args[]){
    	Scanner sc = new Scanner(System.in);
      	int n = sc.nextInt();
      	ArrayList<Double> list = new ArrayList<Double>();
      	list.add((double)(sc.nextInt()));
      	for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        }
      	while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        }
      	System.out.println(list.get(0));
    }
} import java.util.*; util.* java class Main{
	public static void main(String args[]){
    	Scanner sc = new Scanner(System.in);
      	int n = sc.nextInt();
      	ArrayList<Double> list = new ArrayList<Double>();
      	list.add((double)(sc.nextInt()));
      	for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        }
      	while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        }
      	System.out.println(list.get(0));
    }
} Main public static void main(String args[]){
    	Scanner sc = new Scanner(System.in);
      	int n = sc.nextInt();
      	ArrayList<Double> list = new ArrayList<Double>();
      	list.add((double)(sc.nextInt()));
      	for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        }
      	while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        }
      	System.out.println(list.get(0));
    } main {
    	Scanner sc = new Scanner(System.in);
      	int n = sc.nextInt();
      	ArrayList<Double> list = new ArrayList<Double>();
      	list.add((double)(sc.nextInt()));
      	for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        }
      	while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        }
      	System.out.println(list.get(0));
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc ArrayList<Double> list = new ArrayList<Double>(); list new ArrayList<Double>() list.add((double)(sc.nextInt())) list.add list (double)(sc.nextInt()) sc.nextInt sc for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        } int i=1; int i=1; i 1 i<n i n i++ i++ i {
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        } {
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        } double a = (double)(sc.nextInt()); a (double)(sc.nextInt()) sc.nextInt sc for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            } int j=0; int j=0; j 0 j<=list.size() j list.size() list.size list j++ j++ j {
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            } {
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            } if(list.size()==j){
                	list.add(a);
                  	break;
                } list.size()==j list.size() list.size list j {
                	list.add(a);
                  	break;
                } list.add(a) list.add list a break; if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                } a<list.get(j) a list.get(j) list.get list j {
                	list.add(j,a);
                  	break;
                } list.add(j,a) list.add list j a break; while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        } list.size()!=1 list.size() list.size list 1 {
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        } double a = list.get(0); a list.get(0) list.get list 0 double b = list.get(1); b list.get(1) list.get list 1 list.remove(0) list.remove list 0 list.remove(0) list.remove list 0 list.add(0,(a+b)/2) list.add list 0 (a+b)/2 (a+b) a b 2 System.out.println(list.get(0)) System.out.println System.out System System.out list.get(0) list.get list 0 String args[] args
import java.util.*;
class Main{
	public static void main(String args[]){
    	Scanner sc = new Scanner(System.in);
      	int n = sc.nextInt();
      	ArrayList<Double> list = new ArrayList<Double>();
      	list.add((double)(sc.nextInt()));
      	for(int i=1;i<n;i++){
        	double a = (double)(sc.nextInt());
          	for(int j=0;j<=list.size();j++){
              	if(list.size()==j){
                	list.add(a);
                  	break;
                }
            	if(a<list.get(j)){
                	list.add(j,a);
                  	break;
                }
            }
        }
      	while(list.size()!=1){
          double a = list.get(0);
          double b = list.get(1);
          list.remove(0);list.remove(0);
          list.add(0,(a+b)/2);
        }
      	System.out.println(list.get(0));
    }
}