#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin >> t;
while(t--){
int a, b, ab, ba, con, cur = 0;
string s;
vector<int> AB, BA, X;
cin >> s >> a >> b >> ab >> ba;
for(int i = 0; i < s.size(); i++){
if(s[i] == 'A')a--;
if(s[i] == 'B')b--;
if(i == 0 || s[i] != s[i-1]){
if(con % 2)X.push_back(con / 2);
else{
if(cur)BA.push_back(con / 2);
else AB.push_back(con / 2);
}
if(s[i] == 'A')cur = 0;
if(s[i] == 'B')cur = 1;
con = 1;
}
else{
con++;
}
}
sort(BA.begin(), BA.end());
sort(AB.begin(), AB.end());
sort(X.begin(), X.end());
for(int i = 0; i < BA.size(); i++){
cout << BA[i] << " ";
if(ba >= BA[i]){
ba -= BA[i];
a += BA[i];
b += BA[i];
}
else if(ab >= BA[i]){
ab -= BA[i];
a += BA[i];
b += BA[i];
}
}
cout << "\n";
for(int i = 0; i < AB.size(); i++){
cout << AB[i] << " ";
if(ba >= AB[i]){
ba -= AB[i];
a += AB[i];
b += AB[i];
}
else if(ab >= AB[i]){
ab -= AB[i];
a += AB[i];
b += AB[i];
}
}
cout << "\n";
for(int i = 0; i < X.size(); i++){
cout << X[i] << " ";
if(ba >= X[i]){
ba -= X[i];
a += X[i];
b += X[i];
}
else if(ab >= X[i]){
ab -= X[i];
a += X[i];
b += X[i];
}
}
cout << "\n";
if(a < 0 || b < 0)cout << "No\n";
else cout << "Yes\n";
}
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHZlY3Rvcj4KI2luY2x1ZGU8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKXsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CiAgICBpbnQgdDsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUodC0tKXsKICAgICAgICBpbnQgYSwgYiwgYWIsIGJhLCBjb24sIGN1ciA9IDA7CiAgICAgICAgc3RyaW5nIHM7CiAgICAgICAgdmVjdG9yPGludD4gQUIsIEJBLCBYOwogICAgICAgIGNpbiA+PiBzID4+IGEgPj4gYiA+PiBhYiA+PiBiYTsKCiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IHMuc2l6ZSgpOyBpKyspewogICAgICAgICAgICBpZihzW2ldID09ICdBJylhLS07CiAgICAgICAgICAgIGlmKHNbaV0gPT0gJ0InKWItLTsKICAgICAgICAgICAgaWYoaSA9PSAwIHx8IHNbaV0gIT0gc1tpLTFdKXsKICAgICAgICAgICAgICAgIGlmKGNvbiAlIDIpWC5wdXNoX2JhY2soY29uIC8gMik7CiAgICAgICAgICAgICAgICBlbHNlewogICAgICAgICAgICAgICAgICAgIGlmKGN1cilCQS5wdXNoX2JhY2soY29uIC8gMik7CiAgICAgICAgICAgICAgICAgICAgZWxzZSBBQi5wdXNoX2JhY2soY29uIC8gMik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZihzW2ldID09ICdBJyljdXIgPSAwOwogICAgICAgICAgICAgICAgaWYoc1tpXSA9PSAnQicpY3VyID0gMTsKICAgICAgICAgICAgICAgIGNvbiA9IDE7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZXsKICAgICAgICAgICAgICAgIGNvbisrOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBzb3J0KEJBLmJlZ2luKCksIEJBLmVuZCgpKTsKICAgICAgICBzb3J0KEFCLmJlZ2luKCksIEFCLmVuZCgpKTsKICAgICAgICBzb3J0KFguYmVnaW4oKSwgWC5lbmQoKSk7CgogICAgICAgIGZvcihpbnQgaSA9IDA7IGkgPCBCQS5zaXplKCk7IGkrKyl7CiAgICAgICAgCWNvdXQgPDwgQkFbaV0gPDwgIiAiOwogICAgICAgICAgICBpZihiYSA+PSBCQVtpXSl7CiAgICAgICAgICAgICAgICBiYSAtPSBCQVtpXTsKICAgICAgICAgICAgICAgIGEgKz0gQkFbaV07CiAgICAgICAgICAgICAgICBiICs9IEJBW2ldOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoYWIgPj0gQkFbaV0pewogICAgICAgICAgICAgICAgYWIgLT0gQkFbaV07CiAgICAgICAgICAgICAgICBhICs9IEJBW2ldOwogICAgICAgICAgICAgICAgYiArPSBCQVtpXTsKICAgICAgICAgICAgfQogICAgICAgIH0KCQljb3V0IDw8ICJcbiI7CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IEFCLnNpemUoKTsgaSsrKXsKICAgICAgICAJY291dCA8PCBBQltpXSA8PCAiICI7CgogICAgICAgICAgICBpZihiYSA+PSBBQltpXSl7CiAgICAgICAgICAgICAgICBiYSAtPSBBQltpXTsKICAgICAgICAgICAgICAgIGEgKz0gQUJbaV07CiAgICAgICAgICAgICAgICBiICs9IEFCW2ldOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoYWIgPj0gQUJbaV0pewogICAgICAgICAgICAgICAgYWIgLT0gQUJbaV07CiAgICAgICAgICAgICAgICBhICs9IEFCW2ldOwogICAgICAgICAgICAgICAgYiArPSBBQltpXTsKICAgICAgICAgICAgfQogICAgICAgIH0KCQljb3V0IDw8ICJcbiI7CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IFguc2l6ZSgpOyBpKyspewogICAgICAgIAljb3V0IDw8IFhbaV0gPDwgIiAiOwogICAgICAgIAkKICAgICAgICAgICAgaWYoYmEgPj0gWFtpXSl7CiAgICAgICAgICAgICAgICBiYSAtPSBYW2ldOwogICAgICAgICAgICAgICAgYSArPSBYW2ldOwogICAgICAgICAgICAgICAgYiArPSBYW2ldOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoYWIgPj0gWFtpXSl7CiAgICAgICAgICAgICAgICBhYiAtPSBYW2ldOwogICAgICAgICAgICAgICAgYSArPSBYW2ldOwogICAgICAgICAgICAgICAgYiArPSBYW2ldOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvdXQgPDwgIlxuIjsKICAgICAgICBpZihhIDwgMCB8fCBiIDwgMCljb3V0IDw8ICJOb1xuIjsKICAgICAgICBlbHNlIGNvdXQgPDwgIlllc1xuIjsKICAgIH0KICAgIAp9