#include <bits/stdc++.h>
#define pb push_back
#define pi 2*acos(0.0)
#define f first
#define s second
#define inf INT_MAX
#define MXN 500001
#define endl "\n"
#define eps 1e-6
#define mod 1000000007
#define all(x) x.begin(), x.end()
#define rev(x) x.rbegin(), x.rend()
#define spc(x) cout << fixed << setprecision(x)
#define fastio {ios_base::sync_with_stdio(false); cin.tie(NULL);}
typedef long long ll;
using namespace std;
void solve() {
ll n, k;
cin >> n >> k;
string s;
cin >> s;
vector<ll> v;
ll cnt = 0;
for (int i = 0; i < s.size(); i++) {
if (s[i] == '1') {
cnt++;
} else {
if (cnt > 0) {
v.pb(cnt);
}
cnt = 0;
}
}
if (cnt > 0) {
v.pb(cnt);
}
if (v.empty()) {
cout << 0 << endl;
return;
}
ll left = 0, right = 0, sum = 0, mx = 0;
while (right < v.size()) {
sum += v[right];
while (right - left + 1 > k + 1) {
sum -= v[left];
left++;
}
mx = max(mx, sum);
right++;
}
cout << mx << endl;
}
int32_t main() {
fastio
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}