#include <bits/stdc++.h>
int main() {
  int a, b, c, d, e, f, g, h, din[100001];
  int l1, r1, l2, r2;
  din[0] = 0;
  scanf("%i %i", &a, &b);
  for (int i = 1; i <= a; i++) {
    scanf("%i", &c);
    if (i <= b + 1)
      if (i + b <= a)
        din[i] = b + i;
      else
        din[i] = a;
    else {
      if (i + b <= a)
        din[i] = b + b + 1;
      else
        din[i] = a - i + 1 + b;
      if (c != 0) {
        if (c <= b + 1)
          l1 = 1;
        else
          l1 = c - b;
        if (i <= b + 1)
          l2 = 1;
        else
          l2 = i - b;
        if (c + b >= a)
          r1 = a;
        else
          r1 = c + b;
        if (i + b >= a)
          r2 = a;
        else
          r2 = i + b;
        if (l2 > r1)
          din[i] += din[c];
        else
          din[i] += din[c] - r1 + l2 - 1;
      }
    }
  }
  for (int i = 1; i <= a; i++) printf("%i ", din[i]);
}
