//#pragma GCC optimize("Ofast")
//#pragma GCC target("avx,avx2,fma")
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fi first
#define se second
#define MOD 1000000007
#define FOR(i,a,b) for (int i = (a);i <= (b);i++)
#define FOD(i,a,b) for (int i = (b);i >= (a);i--)
#define ALL(x) (x).begin(),(x).end()
#define ii pair<int,int>
#define iii pair<int,pair<int,int>>
//const int MOD = 998244853;
const int MAXN = 1e6 + 7;
ll x,n,a[MAXN],dd;
string s,ans;
ll Try(int id,ll cur){
dd++;
if (dd > (int)1e7)return -1e18;
if (id == n){
if (cur == x){
ans = s;
return cur;
}
return -1e18;
}
ll res = -1e18;
ll mul = 1;
s.push_back('+');
FOR(i,id + 1,n){
mul = mul * a[i];
res = max(res,Try(i,cur + mul));
s.push_back('*');
}
FOR(i,id + 1,n + 1)s.pop_back();
mul = 1;
s.push_back('-');
FOR(i,id + 1,n){
mul = mul * a[i];
res = max(res,Try(i,cur - mul));
s.push_back('*');
}
FOR(i,id + 1,n + 1)s.pop_back();
return res;
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
//freopen("MENU.inp","r",stdin);
//freopen("MENU.out","w",stdout);
int tt;cin >> tt;
while(tt--){
cin >> n;
FOR(i,1,n)cin >> a[i];
cin >> x;
bool ok = false;
s = "";ll st = 1;
FOR(i,1,n){
dd = 0;
st = st * a[i];
if (Try(i,st) == x){
ok = true;
break;
}
s.push_back('*');
}
if (ok)cout << "YES\n" << ans << '\n';
else cout << "NO\n";
}
return 0^0;
}
Ly8jcHJhZ21hIEdDQyBvcHRpbWl6ZSgiT2Zhc3QiKQovLyNwcmFnbWEgR0NDIHRhcmdldCgiYXZ4LGF2eDIsZm1hIikKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBNT0QgMTAwMDAwMDAwNwojZGVmaW5lIEZPUihpLGEsYikgZm9yIChpbnQgaSA9IChhKTtpIDw9IChiKTtpKyspCiNkZWZpbmUgRk9EKGksYSxiKSBmb3IgKGludCBpID0gKGIpO2kgPj0gKGEpO2ktLSkKI2RlZmluZSBBTEwoeCkgKHgpLmJlZ2luKCksKHgpLmVuZCgpCiNkZWZpbmUgaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIGlpaSBwYWlyPGludCxwYWlyPGludCxpbnQ+PgovL2NvbnN0IGludCBNT0QgPSA5OTgyNDQ4NTM7CmNvbnN0IGludCBNQVhOID0gMWU2ICsgNzsKbGwgeCxuLGFbTUFYTl0sZGQ7CnN0cmluZyBzLGFuczsKbGwgVHJ5KGludCBpZCxsbCBjdXIpewogICAgZGQrKzsKICAgIGlmIChkZCA+IChpbnQpMWU3KXJldHVybiAtMWUxODsKICAgIGlmIChpZCA9PSBuKXsKICAgICAgICBpZiAoY3VyID09IHgpewogICAgICAgICAgICBhbnMgPSBzOwogICAgICAgICAgICByZXR1cm4gY3VyOwogICAgICAgIH0KICAgICAgICByZXR1cm4gLTFlMTg7CiAgICB9CiAgICBsbCByZXMgPSAtMWUxODsKICAgIGxsIG11bCA9IDE7CiAgICBzLnB1c2hfYmFjaygnKycpOwogICAgRk9SKGksaWQgKyAxLG4pewogICAgICAgIG11bCA9IG11bCAqIGFbaV07CiAgICAgICAgcmVzID0gbWF4KHJlcyxUcnkoaSxjdXIgKyBtdWwpKTsKICAgICAgICBzLnB1c2hfYmFjaygnKicpOwogICAgfQogICAgRk9SKGksaWQgKyAxLG4gKyAxKXMucG9wX2JhY2soKTsKICAgIG11bCA9IDE7CiAgICBzLnB1c2hfYmFjaygnLScpOwogICAgRk9SKGksaWQgKyAxLG4pewogICAgICAgIG11bCA9IG11bCAqIGFbaV07CiAgICAgICAgcmVzID0gbWF4KHJlcyxUcnkoaSxjdXIgLSBtdWwpKTsKICAgICAgICBzLnB1c2hfYmFjaygnKicpOwogICAgfQogICAgRk9SKGksaWQgKyAxLG4gKyAxKXMucG9wX2JhY2soKTsKICAgIHJldHVybiByZXM7Cn0KaW50IG1haW4oKXsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CiAgICAvL2ZyZW9wZW4oIk1FTlUuaW5wIiwiciIsc3RkaW4pOwogICAgLy9mcmVvcGVuKCJNRU5VLm91dCIsInciLHN0ZG91dCk7CiAgICBpbnQgdHQ7Y2luID4+IHR0OwogICAgd2hpbGUodHQtLSl7CiAgICAgICAgY2luID4+IG47CiAgICAgICAgRk9SKGksMSxuKWNpbiA+PiBhW2ldOwogICAgICAgIGNpbiA+PiB4OwogICAgICAgIGJvb2wgb2sgPSBmYWxzZTsKICAgICAgICBzID0gIiI7bGwgc3QgPSAxOwogICAgICAgIEZPUihpLDEsbil7CiAgICAgICAgICAgIGRkID0gMDsKICAgICAgICAgICAgc3QgPSBzdCAqIGFbaV07CiAgICAgICAgICAgIGlmIChUcnkoaSxzdCkgPT0geCl7CiAgICAgICAgICAgICAgICBvayA9IHRydWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICBzLnB1c2hfYmFjaygnKicpOwogICAgICAgIH0KICAgICAgICBpZiAob2spY291dCA8PCAiWUVTXG4iIDw8IGFucyA8PCAnXG4nOwogICAgICAgIGVsc2UgY291dCA8PCAiTk9cbiI7CiAgICB9CiAgICByZXR1cm4gMF4wOwp9