#include <bits/stdc++.h>
using namespace std;
const int OO = 0x3f3f3f3f, N = 1e5 + 5, mod = 1e9 + 7;
int n, p;
string str;
bool flag;
int main() {
  cin >> n >> p >> str;
  for (int i = 0; i < n; ++i) {
    if (i + p < n && str[i] == '.' && str[i + p] == '.')
      flag = 1, str[i] = '1', str[i + p] = '0';
    else if (i + p < n && str[i] == '.' && str[i + p] != '.')
      flag = 1, str[i] = ((str[i + p] == '1') ? '0' : '1');
    else if (i + p < n && str[i + p] == '.')
      flag = 1, str[i + p] = ((str[i] == '1') ? '0' : '1');
    else if (i + p < n && str[i] != str[i + p])
      flag = 1;
    if (str[i] == '.') str[i] = '1';
  }
  if (flag)
    cout << str;
  else
    cout << "No";
  return 0;
}
