In a flower bed, there are N flowers, numbered 1,2,......,N. Initially, the heights of all flowers are 0. You are given a sequence h=\\{h_1,h_2,h_3,......\\} as input. You would like to change the height of Flower k to h_k for all k (1 \leq k \leq N), by repeating the following "watering" operation:

* Specify integers l and r. Increase the height of Flower x by 1 for all x such that l \leq x \leq r.



Find the minimum number of watering operations required to satisfy the condition.

Constraints

* 1 \leq N \leq 100
* 0 \leq h_i \leq 100
* All values in input are integers.

Input

Input is given from Standard Input in the following format:


N
h_1 h_2 h_3 ...... h_N


Output

Print the minimum number of watering operations required to satisfy the condition.

Examples

Input

4
1 2 2 1


Output

2


Input

5
3 1 2 3 1


Output

5


Input

8
4 23 75 0 23 96 50 100


Output

221
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        ArrayList<Integer> h = new ArrayList<>();
        for (int i=0;i<n;i++){
            h.add(scanner.nextInt());
        }
        int count = 0;

        while (Collections.max(h)>0){
            count += counter(h);
            for (int i=0;i<n;i++){
                if (h.get(i)>0){
                    h.set(i,h.get(i)-1);
                }
            }
        }
        System.out.println(count);

    }
    public static int counter(ArrayList<Integer> num){
        int count = 0;
        for (int i=0;i<num.size()-1;i++){

            if ((num.get(i)==0)!=(num.get(i+1)==0)){
                count++;
            }
        }
        if (num.get(0)>0) count++;
        if (num.get(num.size()-1)>0) count++;
        count /= 2;
        return count;
    }

}
