#include using namespace std; int main(){ #define int long long int n,m; cin >> n >> m; vector dp(m+1),A(n),B(n); vector rc(1,vector(m+1,-1)); for (int& a:A) cin >> a; for (int& a:B) cin >> a; for (int i(n-1);i > -1;--i){ rc.emplace_back(rc.back()); for (int k(m);k >= B[i];--k) if (dp[k] R; while(v==m||t!=n) p = rc[t][v],R.emplace_back(p),t = n-p-1,v -= B[p]; R.pop_back(); cout << R.size() << endl; for (int a:R) cout << a+1 << ' '; cout << endl; }