#P1860A. Not a Substring

    ID: 9969 Type: RemoteJudge 2000ms 256MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>constructive algorithmsstrings

Not a Substring

Description

A bracket sequence is a string consisting of characters '(' and/or ')'. A regular bracket sequence is a bracket sequence that can be transformed into a correct arithmetic expression by inserting characters '1' and '+' between the original characters of the sequence. For example:

  • bracket sequences "()()" and "(())" are regular (they can be transformed into "(1)+(1)" and "((1+1)+1)", respectively);
  • bracket sequences ")(", "(" and ")" are not regular.

You are given a bracket sequence ss; let's define its length as nn. Your task is to find a regular bracket sequence tt of length 2n2n such that ss does not occur in tt as a contiguous substring, or report that there is no such sequence.

The first line contains a single integer tt (1t10001 \le t \le 1000) — the number of test cases.

The only line of each test case contains a string ss (2s502 \le |s| \le 50), consisting of characters "(" and/or ")".

For each test case, print the answer to it. If there is no required regular bracket sequence, print NO in a separate line. Otherwise, print YES in the first line, and the required regular bracket sequence tt itself in the second line. If there are multiple answers — you may print any of them.

Input

The first line contains a single integer tt (1t10001 \le t \le 1000) — the number of test cases.

The only line of each test case contains a string ss (2s502 \le |s| \le 50), consisting of characters "(" and/or ")".

Output

For each test case, print the answer to it. If there is no required regular bracket sequence, print NO in a separate line. Otherwise, print YES in the first line, and the required regular bracket sequence tt itself in the second line. If there are multiple answers — you may print any of them.

Sample Input 1

4
)(
(()
()
))()

Sample Output 1

YES
(())
YES
()()()
NO
YES
()(()())