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.lang.*;
import java.io.*;
 

 public class cfA73
 {
   public static void main(String args[]) throws Exception
   { 
    try{
      BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
      int n=Integer.parseInt(br.readLine());
      String s[]=br.readLine().split(" ");
      int arr[] = new int[n];
      for(int i=0;i<n;i++){
        arr[i]=Integer.parseInt(s[i]);
      }
      int p=-1,q=-1,min=Integer.MAX_VALUE;
      for(int i=0;i<n-1;i++){
       int temp=Math.abs(arr[i]-arr[i+1]);
       if(temp<min){
         min=temp;
         p=i+1;
         q=i+2;
       }}
       int t2=Math.abs(arr[n-1]-arr[0]);
       if(t2<min){
         p=n;
         q=1;
       }
      System.out.print(p+" "+q);
    } catch (Exception e){
      
    }
   }
 }
