#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, c, i, j;
  scanf("%d %d", &n, &c);
  int a[n + 1], flag = 1;
  ;
  for (i = 1; i <= n; i++) {
    scanf("%d", &a[i]);
  }
  int min = a[1];
  for (i = 1; i <= n; i++) {
    if (a[i] < min) {
      min = a[i];
    }
  }
  for (i = 1; i <= n; i++) {
    if (min + c < a[i]) {
      flag = 0;
      break;
    }
  }
  if (flag == 0) {
    printf("NO\n");
  } else {
    printf("YES\n");
    for (i = 1; i <= n; i++) {
      for (j = 1; j <= a[i]; j++) {
        if (j % c != 0) {
          printf("%d ", j % c);
        } else {
          printf("%d ", c);
        }
      }
      printf("\n");
    }
  }
  return 0;
}
