n soldiers stand in a circle. For each soldier his height ai is known. A reconnaissance unit can be made of such two neighbouring soldiers, whose heights difference is minimal, i.e. |ai - aj| is minimal. So each of them will be less noticeable with the other. Output any pair of soldiers that can form a reconnaissance unit.

Input

The first line contains integer n (2 ≤ n ≤ 100) — amount of soldiers. Then follow the heights of the soldiers in their order in the circle — n space-separated integers a1, a2, ..., an (1 ≤ ai ≤ 1000). The soldier heights are given in clockwise or counterclockwise direction.

Output

Output two integers — indexes of neighbouring soldiers, who should form a reconnaissance unit. If there are many optimum solutions, output any of them. Remember, that the soldiers stand in a circle.

Examples

Input

5
10 12 13 15 10


Output

5 1


Input

4
10 20 30 40


Output

1 2
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

/**
 * Created by anirudhan on 4/3/15.
 */
public class Main {
    static class FastIOReader {
        BufferedReader br;
        StringTokenizer st;

        public FastIOReader() {
            br = new BufferedReader(new InputStreamReader(System.in));
        }

        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }

        int nextInt() {
            return Integer.parseInt(next());
        }

        long nextLong() {
            return Long.parseLong(next());
        }

        double nextDouble() {
            return Double.parseDouble(next());
        }

        String nextLine() {
            String str = "";
            try {
                str = br.readLine();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return str;
        }

        void printArray(int[] arr, String name) {
            System.out.print(name + " [");
            for (int i = 0; i < arr.length; i++) {
                System.out.print(arr[i] + " ");
            }
            System.out.println("]");
        }

    }

    public static void main(String[] args){
        FastIOReader reader = new FastIOReader();

        int numSoldiers = reader.nextInt();

        int[] soldiers = new int[numSoldiers];
        int[] aux = new int[numSoldiers];

        int min = 0;
        int secondMin = 0;

        for(int i = 0; i < numSoldiers; i++) {
            soldiers[i] = reader.nextInt();
            if(i == 0){
                continue;
            }
            aux[i-1] = Math.abs(soldiers[i] - soldiers[i-1]);
        }
        aux[numSoldiers-1]  = Math.abs(soldiers[numSoldiers-1]-soldiers[0]);

        int minDiff = Integer.MAX_VALUE; int minIndex = -1;
        for(int i = 0; i < numSoldiers; i++){
            if(aux[i] < minDiff){
                minDiff = aux[i];
                minIndex = i;
                min = i;
                secondMin = i+1;
            }
        }
//        System.out.println(minIndex);
        System.out.println((min+1) + " "+ (secondMin==numSoldiers?1:secondMin+1));
    }
}

	 		  	  	  			  		  	 	  					