It is known that there are k fish species in the polar ocean, numbered from 1 to k. They are sorted by non-decreasing order of their weight, which is a positive number. Let the weight of the i-th type of fish be wi, then 0 < w1 ≤ w2 ≤ ... ≤ wk holds.

Polar bears Alice and Bob each have caught some fish, and they are guessing who has the larger sum of weight of the fish he/she's caught. Given the type of the fish they've caught, determine whether it is possible that the fish caught by Alice has a strictly larger total weight than Bob's. In other words, does there exist a sequence of weights wi (not necessary integers), such that the fish caught by Alice has a strictly larger total weight?

Input

The first line contains three integers n, m, k (1 ≤ n, m ≤ 105, 1 ≤ k ≤ 109) — the number of fish caught by Alice and Bob respectively, and the number of fish species.

The second line contains n integers each from 1 to k, the list of fish type caught by Alice. The third line contains m integers each from 1 to k, the list of fish type caught by Bob.

Note that one may have caught more than one fish for a same species.

Output

Output "YES" (without quotes) if it is possible, and "NO" (without quotes) otherwise.

Examples

Input

3 3 3
2 2 2
1 1 3


Output

YES


Input

4 7 9
5 2 7 3
3 5 2 7 3 8 7


Output

NO

Note

In the first sample, if w1 = 1, w2 = 2, w3 = 2.5, then Alice has a total of 2 + 2 + 2 = 6 weight units, while Bob only has 1 + 1 + 2.5 = 4.5.

In the second sample, the fish that Alice caught is a subset of Bob's. Therefore, the total weight of Bob’s fish is always not less than the total weight of Alice’s fish.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Comparator;
public class Main{
public static void main(String[] args) throws IOException {
    BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder output = new StringBuilder();
    String line, lines[];
    Integer m, n, k, ms[], ns[], d, min;
    lines = input.readLine().split(" ");
    m = Integer.parseInt(lines[0]);
    n = Integer.parseInt(lines[1]);
    k = Integer.parseInt(lines[2]);
    boolean flag = false;
    lines = input.readLine().split(" ");
    ns = new Integer[n];
    ms = new Integer[m];
    for ( int i = 0;i < m; i++ )
    {
        ms[i] = Integer.parseInt(lines[i]);
    }
    lines = input.readLine().split(" ");
    for ( int i = 0; i < n; i++ )
    {
        ns[i] = Integer.parseInt(lines[i]);
    }
    Comparator<Integer> c = new Comparator<Integer>() {
        
        @Override
        public int compare(Integer o1, Integer o2) {
            return -1*o1.compareTo(o2);
        }
    };
    Arrays.sort(ns, c);
    Arrays.sort(ms, c);
    min = m;
    if ( n < m) min = n;
    for ( int i = 0; i < min; i++ )
    {
        if ( ms[i] > ns[i] )
        {
            flag = true;
            break;
        }
    }
    if ( m > n) flag = true;
    if ( flag )
        System.out.println("YES");
    else
        System.out.println("NO");
    
}
}