#include <bits/stdc++.h>
using namespace std;
string solve(string s, int x) {
  string w(s.size(), '2');
  for (int i = 0; i < x && i + x < s.size(); ++i) {
    w[i + x] = s[i];
  }
  for (int i = (int)s.size() - 1; i >= (int)s.size() - x && i - x >= 0; --i) {
    w[i - x] = s[i];
  }
  for (int i = 0; i < s.size(); ++i) {
    if (s[i] == '0') {
      if (i - x < 0 && i + x >= s.size()) continue;
      if (i - x >= 0 && w[i - x] == '1') return "-1";
      if (i + x < s.size() && w[i + x] == '1') return "-1";
      if (i - x >= 0 && w[i - x] == '2') w[i - x] = '0';
      if (i + x < s.size() && w[i + x] == '2') w[i + x] = '0';
    } else {
      if (i - x >= 0 && w[i - x] == '1') continue;
      if (i + x < s.size() && w[i + x] == '1') continue;
      if (i - x >= 0 && w[i - x] == '2') {
        w[i - x] = '1';
        continue;
      }
      if (i + x < s.size() && w[i + x] == '2') {
        w[i + x] = '1';
        continue;
      }
      return "-1";
    }
  }
  for (int i = 0; i < w.size(); ++i) {
    if (w[i] == '2') {
      w[i] = '1';
    }
  }
  return w;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  int T;
  cin >> T;
  while (T--) {
    string s;
    int x;
    cin >> s >> x;
    cout << solve(s, x) << '\n';
  }
  return 0;
}
