#include <bits/stdc++.h>
using namespace std;
int n, p;
char a[20000];
int b[20000];
int main() {
  cin >> n >> p;
  scanf("%s", a);
  memset(b, -1, sizeof(b));
  for (int i = 0; i < n; ++i) {
    if (a[i] == '.') {
      if (i - p >= 0 && b[i - p] != -1) {
        b[i] = b[i - p] ^ 1;
      }
    } else {
      b[i] = a[i] - '0';
      ;
      if (i - p >= 0 && b[i - p] == -1) {
        b[i - p] = b[i] ^ 1;
      }
    }
  }
  for (int i = 0; i < n; ++i) {
    if (b[i] == -1) {
      if (i - p >= 0)
        b[i] = b[i - p] ^ 1;
      else
        b[i] = 0;
    }
  }
  int fg = 0;
  for (int i = 0; i < n; ++i) {
    if (i + p >= n) continue;
    if (b[i] != b[i + p]) fg = 1;
  }
  if (fg == 0)
    puts("No");
  else {
    for (int i = 0; i < n; ++i) {
      printf("%d", b[i]);
    }
  }
  return 0;
}
