/*
* nerdyninja
* Omkar Prabhu <omkar.prabhu15@siesgst.ac.in>
*/
#include <bits/stdc++.h>
using namespace std;
int knapSack(int W, int wt[], int val[], int n)
{
int i, w;
int K[n+1][W+1];
for (i = 0; i <= n; i++) {
for (w = 0; w <= W; w++) {
if (i==0 || w==0)
K[i][w] = 0;
else if (wt[i-1] <= w)
K[i][w] = max(val[i-1] + K[i-1][w-wt[i-1]], K[i-1][w]);
else
K[i][w] = K[i-1][w];
}
}
return K[n][W];
}
int main()
{
// freopen("in", "r", stdin);
// freopen("out", "w", stdout);
ios_base::sync_with_stdio(0);
// Start Solution here
int t;
cin >> t;
while (t--) {
int n, w;
cin >> n >> w;
int val[n], wt[n];
for (int i = 0; i < n; i++) cin >> val[i];
for (int i = 0; i < n; i++) cin >> wt[i];
printf("%d\n", knapSack(w, wt, val, n));
}
// End Solution here
cerr << "Solved in " << clock() << " ms" << endl;
return 0;
}
LyoKICoJbmVyZHluaW5qYQogKglPbWthciBQcmFiaHUgPG9ta2FyLnByYWJodTE1QHNpZXNnc3QuYWMuaW4+CiAqLwojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQga25hcFNhY2soaW50IFcsIGludCB3dFtdLCBpbnQgdmFsW10sIGludCBuKQp7CiAgIGludCBpLCB3OwogICBpbnQgS1tuKzFdW1crMV07CiAgIGZvciAoaSA9IDA7IGkgPD0gbjsgaSsrKSB7CiAgICAgICBmb3IgKHcgPSAwOyB3IDw9IFc7IHcrKykgewogICAgICAgICAgIGlmIChpPT0wIHx8IHc9PTApCiAgICAgICAgICAgICAgIEtbaV1bd10gPSAwOwogICAgICAgICAgIGVsc2UgaWYgKHd0W2ktMV0gPD0gdykKICAgICAgICAgICAgICAgICBLW2ldW3ddID0gbWF4KHZhbFtpLTFdICsgS1tpLTFdW3ctd3RbaS0xXV0sICBLW2ktMV1bd10pOwogICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBLW2ldW3ddID0gS1tpLTFdW3ddOwogICAgICAgfQogICB9CiAgIHJldHVybiBLW25dW1ddOwp9CgoKaW50IG1haW4oKQp7CgkvLyBmcmVvcGVuKCJpbiIsICJyIiwgc3RkaW4pOwoJLy8gZnJlb3Blbigib3V0IiwgInciLCBzdGRvdXQpOwoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsKCS8vIFN0YXJ0IFNvbHV0aW9uIGhlcmUKCWludCB0OyAKCWNpbiA+PiB0OwoJd2hpbGUgKHQtLSkgewoJCWludCBuLCB3OwoJCWNpbiA+PiBuID4+IHc7CgkJaW50IHZhbFtuXSwgd3Rbbl07CgkJZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIGNpbiA+PiB2YWxbaV07CgkJZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIGNpbiA+PiB3dFtpXTsKCQlwcmludGYoIiVkXG4iLCBrbmFwU2Fjayh3LCB3dCwgdmFsLCBuKSk7Cgl9CgkvLyBFbmQgU29sdXRpb24gaGVyZQoJY2VyciA8PCAiU29sdmVkIGluICIgPDwgY2xvY2soKSA8PCAiIG1zIiA8PCBlbmRsOwoJcmV0dXJuIDA7Cn0=