#include<iostream>
#include<vector>
#include<map>
#include<algorithm>
using namespace std;
int main(){
int t;
cin >> t;
while(t--){
string s;
int a, b, ab, ba, suma = 0, sumb = 0;
cin >> s >> a >> b >> ab >> ba;
int n = s.size();
vector<vector<int> > v(n, vector<int>(4, 0));
if(n > 1 && s[0] == 'A' && s[1] == 'B')v[1][0] ++;
if(n > 1 && s[0] == 'B' && s[1] == 'A')v[1][1] ++;
if(n > 1)v[1][2] = v[1][0] + v[1][1];
for(int i = 0; i < n; i++){
if(s[i] == 'A')suma++;
if(s[i] == 'B')sumb++;
}
for(int i = 2; i < n; i++){
v[i][0] = v[i-1][0];
v[i][1] = v[i-1][1];
v[i][2] = v[i-1][2];
if(s[i-1] == 'A' && s[i] == 'B'){
v[i][0] = max(v[i][0], v[i-2][0]+1);
v[i][2] = max(v[i][2], v[i-2][2]+1);
}
if(s[i-1] == 'B' && s[i] == 'A'){
v[i][1] = max(v[i][1], v[i-2][1]+1);
v[i][2] = max(v[i][2], v[i-2][2]+1);
}
}
for(int i = 0; i < n; i++){
cout << v[i][0] << " " << v[i][1] << " " << v[i][2] << endl;
}
int x = min(v[n-1][2], min(v[n-1][0], ab) + min(v[n-1][1], ba));
if(x + a < suma || x + b < sumb)cout << "No\n";
else cout << "Yes\n";
}
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHZlY3Rvcj4KI2luY2x1ZGU8bWFwPgojaW5jbHVkZTxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpewogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlKHQtLSl7CiAgICAgICAgc3RyaW5nIHM7CiAgICAgICAgaW50IGEsIGIsIGFiLCBiYSwgc3VtYSA9IDAsIHN1bWIgPSAwOwogICAgICAgIGNpbiA+PiBzID4+IGEgPj4gYiA+PiBhYiA+PiBiYTsKICAgICAgICBpbnQgbiA9IHMuc2l6ZSgpOwogICAgICAgIHZlY3Rvcjx2ZWN0b3I8aW50PiA+IHYobiwgdmVjdG9yPGludD4oNCwgMCkpOwogICAgICAgIGlmKG4gPiAxICYmIHNbMF0gPT0gJ0EnICYmIHNbMV0gPT0gJ0InKXZbMV1bMF0gKys7CiAgICAgICAgaWYobiA+IDEgJiYgc1swXSA9PSAnQicgJiYgc1sxXSA9PSAnQScpdlsxXVsxXSArKzsKICAgICAgICBpZihuID4gMSl2WzFdWzJdID0gdlsxXVswXSArIHZbMV1bMV07CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgICAgIGlmKHNbaV0gPT0gJ0EnKXN1bWErKzsKICAgICAgICAgICAgaWYoc1tpXSA9PSAnQicpc3VtYisrOwogICAgICAgIH0KICAgICAgICBmb3IoaW50IGkgPSAyOyBpIDwgbjsgaSsrKXsKICAgICAgICAJdltpXVswXSA9IHZbaS0xXVswXTsKICAgICAgICAJdltpXVsxXSA9IHZbaS0xXVsxXTsKICAgICAgICAJdltpXVsyXSA9IHZbaS0xXVsyXTsKICAgICAgICAgICAgaWYoc1tpLTFdID09ICdBJyAmJiBzW2ldID09ICdCJyl7CiAgICAgICAgICAgICAgICB2W2ldWzBdID0gbWF4KHZbaV1bMF0sIHZbaS0yXVswXSsxKTsKICAgICAgICAgICAgICAgIHZbaV1bMl0gPSBtYXgodltpXVsyXSwgdltpLTJdWzJdKzEpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKHNbaS0xXSA9PSAnQicgJiYgc1tpXSA9PSAnQScpewogICAgICAgICAgICAgICAgdltpXVsxXSA9IG1heCh2W2ldWzFdLCB2W2ktMl1bMV0rMSk7CiAgICAgICAgICAgICAgICB2W2ldWzJdID0gbWF4KHZbaV1bMl0sIHZbaS0yXVsyXSsxKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKXsKICAgICAgICAJY291dCA8PCB2W2ldWzBdIDw8ICIgIiA8PCB2W2ldWzFdIDw8ICIgIiA8PCB2W2ldWzJdIDw8IGVuZGw7CiAgICAgICAgfQogICAgICAgIGludCB4ID0gbWluKHZbbi0xXVsyXSwgbWluKHZbbi0xXVswXSwgYWIpICsgbWluKHZbbi0xXVsxXSwgYmEpKTsKICAgICAgICBpZih4ICsgYSA8IHN1bWEgfHwgeCArIGIgPCBzdW1iKWNvdXQgPDwgIk5vXG4iOwogICAgICAgIGVsc2UgY291dCA8PCAiWWVzXG4iOwogICAgfQp9