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.ArrayList;
import java.util.PriorityQueue;

public class A34Reconnaissance2 
{
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n = Integer.parseInt(br.readLine());
		String line [] = br.readLine().split(" ");
		ArrayList<Integer> arr = new ArrayList<Integer>();
		for(int i=0;i<line.length;i++)
		{
			arr.add(Integer.parseInt(line[i]));
		}
		PriorityQueue<pair> pq = new PriorityQueue<pair>();
		for(int i=0;i<line.length-1;i++)
		{		pq.add(new pair(Math.abs(arr.get(i)-arr.get(i+1)),i+1,i+2));
			
			
			
		}pq.add(new pair(Math.abs((arr.get(0)-arr.get(line.length-1))),1,line.length));
		pair x1 = pq.remove();
		
		System.out.println(x1.i+" "+x1.ii);
	}
	static class pair implements Comparable<pair> 
	{
		int x;
		int ii;
		int i;
		public pair (int x , int i,int ii)
		{
			this.x =x;
			this.i =i;
			this.ii = ii;
		}
		@Override
		public int compareTo(pair o) {
			
			return this.x-o.x;
		} 
	}
	

}
