const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;
void async function () {
const n = parseInt(await readline());
let arr = await readline();
arr = arr.split(" ");
const mod = 1000000007
console.log(getNumAll(1*n+1,arr)%mod);
function getNumAll(n,arr){
if(n == 1){
return 0
}else if(n == 2){
return 2;
}else{
let result = 2*getNumAll(n-1,arr) + 2 - getNumAll(parseInt(arr[n-2]),arr);
result = result > 0 ? result % mod : result + mod;
return result ;
}
}
}()