Squirrel Liss loves nuts. There are n trees (numbered 1 to n from west to east) along a street and there is a delicious nut on the top of each tree. The height of the tree i is hi. Liss wants to eat all nuts.

Now Liss is on the root of the tree with the number 1. In one second Liss can perform one of the following actions:

  * Walk up or down one unit on a tree. 
  * Eat a nut on the top of the current tree. 
  * Jump to the next tree. In this action the height of Liss doesn't change. More formally, when Liss is at height h of the tree i (1 ≤ i ≤ n - 1), she jumps to height h of the tree i + 1. This action can't be performed if h > hi + 1. 



Compute the minimal time (in seconds) required to eat all nuts.

Input

The first line contains an integer n (1 ≤ n ≤ 105) — the number of trees.

Next n lines contains the height of trees: i-th line contains an integer hi (1 ≤ hi ≤ 104) — the height of the tree with the number i.

Output

Print a single integer — the minimal time required to eat all nuts in seconds.

Examples

Input

2
1
2


Output

5


Input

5
2
1
2
1
1


Output

14
import java.util.Scanner;


public class Test162B {

	public Test162B() {}
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int N = scan.nextInt();
		int M[] = new int[N];
		for (int i = 0; i < N; i++) {
			M[i] = scan.nextInt();
		}
		int W = 0;
		W += M[0]  + 1;
		for (int i = 1; i < N; i++) {
			W += Math.abs(M[i] - M[i-1]) + 1 + 1;
		}
		/*N++;
		
		
		int D[][] = new int[N][N]; //distance
		for (int i = 0; i < N; i++) 	
			for (int j = i+1; j < N; j++) {
				int min = 10000000;
				for (int k = i+1; k <= j; k++) 
					if(min > M[k]) 
						min = M[k];
				D[i][j] = Math.abs(M[i] + M[j] -min*2) + (j - i);
			}
		D[0][0] = 0;
			//D[i][i+1] = Math.abs(M[i] - M[i+1])+1;
			 * */
		scan.close();
		System.out.println(W);

	}

}
