"use strict"
function main(arg) {
    let [N,K] = arg.trim().split("\n")[0].split(" ").map(Number)
    let A = arg.trim().split("\n")[1].split(" ").map(Number)
    N = A.length
    let i = 0
    // let finish = true
    // for (i = 0; i < K; i++) {
    //     finish = true
    //     let B = new Array(N).fill(0)
    //     for (let x = 0; x < N; x++) {
    //         let d = A[x]
    //         if (d !== N) {
    //             finish = false
    //         }
    //         let l = x - d - 0.5 
    //         l = l < 0 ? 0 : l
    //         let r = x + d + 0.5
    //         r = r > (N-1) ? N-1 : r
    //         l = Math.ceil(l)
    //         r = Math.floor(r)
    //         // console.log([l,r])
    //         for (let j = l; j <= r; j++) {
    //             B[j] += 1
    //         }
    //     }
    //     console.log(A.join(" "))
    //     if (finish) {
    //         break
    //     }
    //     A = B
    // }
    // console.log(i)
    console.log(new Array(N).fill(N).join(" "))
}
main(require('fs').readFileSync('/dev/stdin', 'utf8'));