Once Bob needed to find the second order statistics of a sequence of integer numbers. Lets choose each number from the sequence exactly once and sort them. The value on the second position is the second order statistics of the given sequence. In other words it is the smallest element strictly greater than the minimum. Help Bob solve this problem.

Input

The first input line contains integer n (1 ≤ n ≤ 100) — amount of numbers in the sequence. The second line contains n space-separated integer numbers — elements of the sequence. These numbers don't exceed 100 in absolute value.

Output

If the given sequence has the second order statistics, output this order statistics, otherwise output NO.

Examples

Input

4
1 2 2 -4


Output

1


Input

5
1 2 3 1 1


Output

2

//import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
//import java.io.OutputStream;
import java.io.PrintWriter;
//import java.util.Scanner;
import java.util.Arrays;
import java.util.StringTokenizer;
//import jdk.nashorn.internal.runtime.regexp.joni.Option;


public class Codechef1 {

    public static void main(String[] args) throws IOException {
     FastReader in = new FastReader();
     PrintWriter pw = new PrintWriter(System.out);
     int n = in.nextInt();
   
    int n1=0,n2=0;
     int a[] = new int[n];
     
     int e=0,o=0;
     for (int i = 0; i < n; i++) {
            a[i]=in.nextInt();
     }
     Arrays.sort(a);
        for (int i = 1; i < n; i++) {
            if(a[i]!=a[i-1]){System.out.println(a[i]);return;}
        }
        System.out.println("NO");
       

       
     
     pw.flush();
     pw.close();
    }

    //       a+=Integer.parseInt(String.valueOf(s.charAt(i)));
    static class FastReader {
 
        StringTokenizer st;
        BufferedReader br;
 
        public FastReader() {
            br = new BufferedReader(new InputStreamReader(System.in));
        }
 
        public String next() throws IOException {
            if (st == null || !st.hasMoreTokens()) {
                st = new StringTokenizer(br.readLine());
            }
            return st.nextToken();
        }
 
        public boolean hasNext() throws IOException {
            if (st != null && st.hasMoreTokens()) {
                return true;
            }
            String s = br.readLine();
            if (s == null || s.isEmpty()) {
                return false;
            }
            st = new StringTokenizer(s);
            return true;
        }
 
        public int nextInt() throws IOException {
            return Integer.parseInt(next());
        }
 
        public long nextLong() throws IOException {
            return Long.parseLong(next());
        }
 
        public double nextDouble() throws IOException {
            return Double.parseDouble(next());
        }
 
        public String nextLine() throws IOException {
            return br.readLine();
        }
    }
    
}

