t = int(input())
for _ in range(t):
n = int(input())
s = input()
v = 0
res = ""
val = False
for i in range(1, n):
if s[i] == '0':
res += "-"
continue
elif not val:
res += "-"
else:
res += "+"
val = not val
print(res)
#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef unsigned long long int ull;
#define _io ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
int main()
{
_io;
ll T;
cin>>T;
while(T--)
{
ll n;
cin>>n;
string s;
cin>>s;
int sum=0;
string ans="";
for(int i=0;i<n;i++)
{
if(sum==0){ans=ans+'+';sum=sum+int(s[i])-int('0');}
else {ans=ans+'-';sum=sum-(int(s[i])-int('0'));}
//cout<<sum<<endl;
}
cout<<ans.substr(1,ans.size())<<endl;
}
}
131C - The World is a Theatre | 1696A - NIT orz |
1178D - Prime Graph | 1711D - Rain |
534A - Exam | 1472A - Cards for Friends |
315A - Sereja and Bottles | 1697C - awoo's Favorite Problem |
165A - Supercentral Point | 1493A - Anti-knapsack |
1493B - Planet Lapituletti | 747B - Mammoth's Genome Decoding |
1591C - Minimize Distance | 1182B - Plus from Picture |
1674B - Dictionary | 1426C - Increase and Copy |
520C - DNA Alignment | 767A - Snacktower |
1365A - Matrix Game | 714B - Filya and Homework |
31A - Worms Evolution | 1691A - Beat The Odds |
433B - Kuriyama Mirai's Stones | 892A - Greed |
32A - Reconnaissance | 1236D - Alice and the Doll |
1207B - Square Filling | 1676D - X-Sum |
1679A - AvtoBus | 1549A - Gregor and Cryptography |