{
can_pay[j] = true;
use_ai[j] = use_ai[j - Ai[i]] + 1;
++ans;
}
}
}
printf("%d\n", ans);
return 0;
}
int main()
{
while(scanf("%d%d", &n, &m), n || m)
{
memset(can_pay, false, sizeof(can_pay));
can_pay[0] = true;
for(i = 0; i < n; ++i)
scanf("%d", &Ai[i]);
for(i = 0; i < n; ++i)
scanf("%d", &Ci[i]);
coins();
}
return 0;
}