import std.stdio, std.math, std.algorithm, std.array, std.string, std.conv, std.container, std.range;
pragma(inline, true) T[] Reads(T)() { return readln.split.to!(T[]); }
alias reads = Reads!int;
pragma(inline, true) void scan(Args...)(ref Args args) {
    string[] ss = readln.split;
    foreach (i, ref arg ; args) arg = ss[i].parse!int;
}


void main() {
    int n; scan(n);
    int[] b = reads();
    auto a = new int[n];
    a[0] = b[0];
    foreach (i; 1..n-1)
        a[i] = min(b[i-1], b[i]);
    a[n-1] = b[$-1];
    writeln(a.sum);
}
