program main
integer :: n,i
real :: ans
real,allocatable :: a(:)
read *,n
allocate(a(n))
read *,a

call quicksort(a,1,n)

do i = 1,n-1
	a(i+1) = (a(i) + a(i+1))/2
end do

print *,a(n)
contains
recursive subroutine quicksort(a, first, last)
  implicit none