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.StringTokenizer;

public class Ladder1_36
{
	public static void main(String args[]) throws IOException
	{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		int n=Integer.parseInt(br.readLine());
		int arr[]=new int[n];
		StringTokenizer st=new StringTokenizer(br.readLine());
		for(int i=0;i<n;i++)
		{
			arr[i]=Integer.parseInt(st.nextToken());
		}
		int min=Math.abs(arr[0]-arr[n-1]);
		int first=n,sec=1;
		for(int i=1;i<n-1;i++)
		{
			if(Math.abs(arr[i]-arr[i-1])<min)
			{
				min=Math.abs(arr[i]-arr[i-1]);
				first=i;
				sec=i+1;
			}
			if(Math.abs(arr[i]-arr[i+1])<min)
			{
				min=Math.abs(arr[i]-arr[i+1]);
				first=i+1;
				sec=i+1+1;
			}
		}
		
		System.out.println(first+" "+sec);
				
	}
}
