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 ;
    }
}
    
}()