/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
class Solution {
public static void main
(String[] args
) { int t, n, b, value, n_casas;
Scanner S
= new Scanner
(System.
in); t = S.nextInt();
int cases[] = new int[t];
for (int i = 0; i < t; i++) {
n = S.nextInt();
b = S.nextInt();
int a[] = new int[n];
for (int j = 0; j < n; j++) {
value = S.nextInt();
a[j] = value;
}
n_casas = contadorCasas(a, b);
cases[i] = n_casas;
}
for (int i = 0; i < t; i++) {
System.
out.
println("Case #" + (i
+ 1) + ": " + cases
[i
]); }
}
static int contadorCasas(int v[], int b) {
int aux = v[0];
int counter = 0;
if (aux <= b) {
counter++;
for (int i = 1; i < v.length; i++) {
if (aux + v[i] <= b) {
aux += v[i];
counter++;
}
}
}
return counter;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBTb2x1dGlvbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgaW50IHQsIG4sIGIsIHZhbHVlLCBuX2Nhc2FzOwogICAgICAgIFNjYW5uZXIgUyA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgdCA9IFMubmV4dEludCgpOwogICAgICAgIGludCBjYXNlc1tdID0gbmV3IGludFt0XTsKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHQ7IGkrKykgewogICAgICAgICAgICBuID0gUy5uZXh0SW50KCk7CiAgICAgICAgICAgIGIgPSBTLm5leHRJbnQoKTsKICAgICAgICAgICAgaW50IGFbXSA9IG5ldyBpbnRbbl07CiAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgbjsgaisrKSB7CiAgICAgICAgICAgICAgICB2YWx1ZSA9IFMubmV4dEludCgpOwogICAgICAgICAgICAgICAgYVtqXSA9IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG5fY2FzYXMgPSBjb250YWRvckNhc2FzKGEsIGIpOwogICAgICAgICAgICBjYXNlc1tpXSA9IG5fY2FzYXM7CiAgICAgICAgfQogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgdDsgaSsrKSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiQ2FzZSAjIiArIChpICsgMSkgKyAiOiAiICsgY2FzZXNbaV0pOwogICAgICAgIH0KICAgIH0KCgogICAgc3RhdGljIGludCBjb250YWRvckNhc2FzKGludCB2W10sIGludCBiKSB7CiAgICAgICAgQXJyYXlzLnNvcnQodik7CiAgICAgICAgaW50IGF1eCA9IHZbMF07CiAgICAgICAgaW50IGNvdW50ZXIgPSAwOwoKICAgICAgICBpZiAoYXV4IDw9IGIpIHsKICAgICAgICAgICAgY291bnRlcisrOwogICAgICAgICAgICBmb3IgKGludCBpID0gMTsgaSA8IHYubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgIGlmIChhdXggKyB2W2ldIDw9IGIpIHsKICAgICAgICAgICAgICAgICAgICBhdXggKz0gdltpXTsKICAgICAgICAgICAgICAgICAgICBjb3VudGVyKys7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGNvdW50ZXI7CiAgICB9Cn0K