spoj#JUNL. BHAAD MEI JAAO

BHAAD MEI JAAO

 

 You are on vacation on a drunken island, but you couldn't resist the temptation of solving a good old problem. It all started when a group of kids played a game they call "The Falling Coconuts". In this game, a number of coconuts fall to the ground, one by one, on a single axis, at the locations given in drops. If a coconut X lands on the ground, it remains where it is. If it lands on top of another coconut Y, one of the following things happens: 
- If coconut Y is surrounded on both sides by coconuts (denoted by 'O'), coconut X remains where it is.
     X
    OYO
- If there is no coconut directly to the right of coconut Y, coconut X slides down to the position directly to the right of coconut Y.
     X
    OY   ->  OYX
     X
     Y   ->   YX
- If there is a coconut directly to the right of coconut Y, but no coconut directly to the left of coconut Y, coconut X slides down to the position directly to the left of coconut Y.
     X
     YO  ->  XYO
Each time coconut X slides down to a different position, it will continue to slide (following the behavior outlined above) until it's in a place where it will not slide any further. 
The task is to display the final coconut configuration.
 

 

 

 You are on vacation on a drunken island, but you couldn't resist the temptation of solving a good old problem. It all started when a group of kids played a game they call "The Falling Coconuts". In this game, a number of coconuts fall to the ground, one by one, on a single axis, at the locations given in drops. If a coconut X lands on the ground, it remains where it is. If it lands on top of another coconut Y, one of the following things happens: 

 

- If coconut Y is surrounded on both sides by coconuts (denoted by 'O'), coconut X remains where it is.

     X

    OYO

- If there is no coconut directly to the right of coconut Y, coconut X slides down to the position directly to the right of coconut Y.

     X

    OY   ->  OYX

     X

     Y   ->   YX

- If there is a coconut directly to the right of coconut Y, but no coconut directly to the left of coconut Y, coconut X slides down to the position directly to the left of coconut Y.

     X

     YO  ->  XYO

Each time coconut X slides down to a different position, it will continue to slide (following the behavior outlined above) until it's in a place where it will not slide any further. 

The task is to display the final coconut configuration.

 

 

 

Input

First line is t = number of test cases.

Each test case consists of 2 lines , first line conataining the number of coconuts and second line contains n integers denoting the position of each cocnut on the x-axis. 

Output

As described in the problem statement.

Example

Input:
2
8
8 9 10 11 12 8 12 10
10
6 8 10 7 9 8 8 8 8 8
Output:
---O---
OOOOOOO
 --O---
-OOO--
OOOOOO
Explanation of test case 1:
The configuration after each fallen coconut is given below:
                                                                         				  X
X  ->  OX  ->  OOX  ->  000X  ->  0000X  ->  X00000  ->  000000X  ->  0000000
In this diagram, 'X' denotes the last fallen coconut.