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 *h*<sub class="lower-index">*i*</sub>. 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* &gt; *h*<sub class="lower-index">*i* + 1</sub>. 
Compute the minimal time (in seconds) required to eat all nuts.
The first line contains an integer *n* (1  ≤  *n* ≤ 10<sup class="upper-index">5</sup>) — the number of trees.

Next *n* lines contains the height of trees: *i*-th line contains an integer *h*<sub class="lower-index">*i*</sub> (1 ≤ *h*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">4</sup>) — the height of the tree with the number *i*.
import math
from collections import defaultdict
from bisect import *

def is_prime(n):

    for i in range(2,math.ceil(math.sqrt(n))):
        if(n%i==0):
            return False
    return True

def sieve(n):
    arr=[True for _ in range(n+1)]

    for i in range(2,math.ceil(math.sqrt(n))):
        if(arr[i]==True):
            for j in range(i*i,n+1,i):
                arr[j]=False

    return arr

def euclidean_distance(x1,y1,x2,y2):
    return math.sqrt(abs(x1-x2)**2+abs(y1-y2)**2)

# s=input()
n=int(input())
# n,m=list(map(int,input().split()))
# k=int(input())-1
# lis=list(map(int,input().split()))
lis=[]
for i in range(n):
    lis.append(int(input()))

curr=0
ans=0
for i in range(n):
    x=abs(curr-lis[i])
    curr=lis[i]
    ans+=x
print(ans+n+n-1)