#include<bits/stdc++.h>
using namespace std;
#define mod 100000007
#define siz 50
int dp[52][1005];
int coin[siz],cointNum[siz];
int k,n;
int call(int i,int amount)
{
if(i>=n)
{
if(amount==0)
return 1;
else
return 0;
}
if(dp[i][amount != -1])
return dp[i][amount];
int ret1=0,ret2=0;
for(int p=1;p<cointNum[i];p++)
{
if(amount - coin[i] >= 0)
ret1=call(i,amount-coin[i]);
}
ret2=call(i+1,amount);
return dp[i][amount] = (ret1+ret2)%mod;
}
int main()
{
int tc,cn,loop,num,res;
memset(dp,-1,sizeof(dp));
scanf("%d",&tc);
for(cn=1;cn<=tc;cn++)
{
scanf("%d %d",&n,&k);
//loop=2*n;
for(int i=0;i<n;i++)
{
scanf("%d",&coin[i]);
}
for(int j=0;j<n;j++)
{
scanf("%d",&cointNum[j]);
}
res=call(0,k);
printf("Case %d: %d\n",cn,res);
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIG1vZCAxMDAwMDAwMDcKI2RlZmluZSBzaXogNTAKCgppbnQgZHBbNTJdWzEwMDVdOwppbnQgY29pbltzaXpdLGNvaW50TnVtW3Npel07CmludCBrLG47CgppbnQgY2FsbChpbnQgaSxpbnQgYW1vdW50KQp7CiAgICBpZihpPj1uKQogICAgewogICAgICAgIGlmKGFtb3VudD09MCkKICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgZWxzZQogICAgICAgICAgICByZXR1cm4gMDsKICAgIH0KCiAgICBpZihkcFtpXVthbW91bnQgIT0gLTFdKQogICAgICAgIHJldHVybiBkcFtpXVthbW91bnRdOwoKICAgIGludCByZXQxPTAscmV0Mj0wOwoKICAgIGZvcihpbnQgcD0xO3A8Y29pbnROdW1baV07cCsrKQogICAgewogICAgICAgIGlmKGFtb3VudCAtIGNvaW5baV0gPj0gMCkKICAgICAgICAgICAgcmV0MT1jYWxsKGksYW1vdW50LWNvaW5baV0pOwogICAgfQoKICAgIHJldDI9Y2FsbChpKzEsYW1vdW50KTsKCiAgICByZXR1cm4gZHBbaV1bYW1vdW50XSA9IChyZXQxK3JldDIpJW1vZDsKfQoKCgppbnQgbWFpbigpCnsKICAgIGludCB0Yyxjbixsb29wLG51bSxyZXM7CgogICAgbWVtc2V0KGRwLC0xLHNpemVvZihkcCkpOwogICAgc2NhbmYoIiVkIiwmdGMpOwogICAgZm9yKGNuPTE7Y248PXRjO2NuKyspCiAgICB7CiAgICAgICAgc2NhbmYoIiVkICVkIiwmbiwmayk7CiAgICAgICAgLy9sb29wPTIqbjsKICAgICAgICBmb3IoaW50IGk9MDtpPG47aSsrKQogICAgICAgIHsKICAgICAgICAgICAgc2NhbmYoIiVkIiwmY29pbltpXSk7CgogICAgICAgIH0KCiAgICAgICAgZm9yKGludCBqPTA7ajxuO2orKykKICAgICAgICB7CiAgICAgICAgICAgIHNjYW5mKCIlZCIsJmNvaW50TnVtW2pdKTsKCiAgICAgICAgfQoKICAgICAgICByZXM9Y2FsbCgwLGspOwogICAgICAgIHByaW50ZigiQ2FzZSAlZDogJWRcbiIsY24scmVzKTsKICAgIH0KCiAgICByZXR1cm4gMDsKfQo=