import java.util.*;
import java.util.PriorityQueue;

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

    System.out.println(ans);
  }

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

    System.out.println(ans);
  }

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

    System.out.println(ans);
  } main {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    PriorityQueue<Double> q = new PriorityQueue<Double>();
    for(int i = 0; i < n; ++i)
    {
      double x = sc.nextDouble();
      q.add(x);
    }
    while(q.size() > 1)
    {
      double a = q.poll();
      double b = q.poll();
      q.add((a+b)/2.0);
    }
    double ans = q.poll();

    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> q = new PriorityQueue<Double>(); q new PriorityQueue<Double>() for(int i = 0; i < n; ++i)
    {
      double x = sc.nextDouble();
      q.add(x);
    } int i = 0; int i = 0; i 0 i < n i n ++i ++i i {
      double x = sc.nextDouble();
      q.add(x);
    } {
      double x = sc.nextDouble();
      q.add(x);
    } double x = sc.nextDouble(); x sc.nextDouble() sc.nextDouble sc q.add(x) q.add q x while(q.size() > 1)
    {
      double a = q.poll();
      double b = q.poll();
      q.add((a+b)/2.0);
    } q.size() > 1 q.size() q.size q 1 {
      double a = q.poll();
      double b = q.poll();
      q.add((a+b)/2.0);
    } double a = q.poll(); a q.poll() q.poll q double b = q.poll(); b q.poll() q.poll q q.add((a+b)/2.0) q.add q (a+b)/2.0 (a+b) a b 2.0 double ans = q.poll(); ans q.poll() q.poll q System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main
{
  public static void main(String[] args)
  {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    PriorityQueue<Double> q = new PriorityQueue<Double>();
    for(int i = 0; i < n; ++i)
    {
      double x = sc.nextDouble();
      q.add(x);
    }
    while(q.size() > 1)
    {
      double a = q.poll();
      double b = q.poll();
      q.add((a+b)/2.0);
    }
    double ans = q.poll();

    System.out.println(ans);
  }

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

    System.out.println(ans);
  }

} Main
import java.util.*;
import java.util.PriorityQueue;

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

    System.out.println(ans);
  }

}
