import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /* * To change this template, choose Tools | Templates * and open the template in the editor. */ import java.util.Arrays; import java.util.HashMap; import java.util.Map; import java.util.Stack; public class unique { public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); Map map = new HashMap(); int[] me = new int[1000001]; int[] mi = new int[1000001]; int n,m; while(true) { String line = reader.readLine(); while(line.trim().equals("")) line = reader.readLine(); String[] arr = line.trim().split(" "); m = Integer.parseInt(arr[0]); n= Integer.parseInt(arr[1]); if(m == 0 && n == 0) return; for(int i = 1; i<=m;i++) { line = reader.readLine(); me[i] = Integer.parseInt(line.trim()); } map.clear(); mi[0] = 1; int bg = 1; for(int i=1;i<=m;i++) { //System.out.println(map.toString()); if(map.containsKey(me[i])) { int ilast = map.get(me[i]); mi[i] = 1 + ilast; // for(int j = ilast;j>=bg;j--) { // map.remove(me[i]); // } bg = ilast + 1; } else { mi[i] = mi[i-1]; } map.put(me[i], i); } for(int i = 0; i < n;i++) { line = reader.readLine(); arr = line.trim().split(" "); int z = Integer.parseInt(arr[0].trim()); int k = Integer.parseInt(arr[1].trim()); if(mi[k] <= z) { System.out.println("OK"); } else { System.out.println(""+me[mi[k]-1]); } } System.out.println(); } } }