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.util.*;
import java.io.*;
//harish reddy anumula
public class CodeForces{
    public static void main (String[] args)throws java.lang.Exception{
        BufferedReader br = new BufferedReader (new InputStreamReader(System.in));
        PrintWriter pw = new PrintWriter(new BufferedOutputStream(System.out));
        String[] z = br.readLine().split(" ");
        int n = Integer.parseInt(z[0]);
        int[] arr = new int[n];
        z = br.readLine().split(" ");
        for(int i = 0;i<n;i++){
            arr[i] = Integer.parseInt(z[i]);
        }
        int low = Math.abs(arr[1]-arr[0]);
        int i1 = 1,i2=2;
        for(int i = 2;i<n;i++ ){
            int sum = Math.abs(arr[i] - arr[i-1]);
            if(sum<low){
                low = sum;
                i1 = i;
                i2 = i+1;
            }
        }
        int sum = Math.abs(arr[0] - arr[n-1]);
        if(sum<low){
            i1 = n;
            i2 = 1;
        }
        pw.printf("%d %d",i1,i2);
        pw.close();
    }
}