#include<bits/stdc++.h>
using namespace std;
char str[200010];
char s1[200010], s2[200010];
int main(){
    int t;
    cin >> t;
    while (t--) {
        int n;
        cin >> n;
        scanf("%s", str);
        if (n % 2 != 0) {
            puts("NO");
            continue;
        }
        int cnt = 0;
        for (int i = 0; i < n; i++) {
            if (str[i] == '1') {
                cnt++;    
            }
        }
        if (cnt % 2 != 0){
            puts("NO");
            continue;
        }
        cnt /= 2;
        int p = 0, c1 = 0, c2 = 0;
        bool flag = 1;
        for (int i = 0; i < n; i++) {
            if (str[i] == '1') {
                p++;
                if (p <= cnt) s1[i] = '(', s2[i] = '(', c1 ++, c2 ++;
                else s1[i] = ')', s2[i] = ')', c1--, c2 --;
            }else{
                if (c1 < c2) {
                    c1 ++;
                    c2 --;
                    s1[i] = '(';
                    s2[i] = ')';
                }else{
                    c1 --;
                    c2 ++;
                    s1[i] = ')';
                    s2[i] = '(';
                }
            }
            if (c1 < 0 || c2 < 0){
                flag = 0;
            }
        }
        if (c1 != 0 || c2 != 0) flag = 0;
        if (!flag) {
            puts("NO");
        }else{
            puts("YES");
            s1[n] = s2[n] = 0;
            printf("%s\n%s\n", s1,s2);
        }
    }
}