Malek has recently found a treasure map. While he was looking for a treasure he found a locked door. There was a string *s* written on the door consisting of characters '(', ')' and '#'. Below there was a manual on how to open the door. After spending a long time Malek managed to decode the manual and found out that the goal is to replace each '#' with one or more ')' characters so that the final string becomes beautiful. 

Below there was also written that a string is called beautiful if for each *i* (1 ≤ *i* ≤ |*s*|) there are no more ')' characters than '(' characters among the first *i* characters of *s* and also the total number of '(' characters is equal to the total number of ')' characters. 

Help Malek open the door by telling him for each '#' character how many ')' characters he must replace it with.
The first line of the input contains a string *s* (1 ≤ |*s*| ≤ 10<sup class="upper-index">5</sup>). Each character of this string is one of the characters '(', ')' or '#'. It is guaranteed that *s* contains at least one '#' character.
def treasure():
    # s = input()
    # s = '(((#)((#)'
    s = '()((#((#(#()'
    n = len(s)
    # left, right = s.count('('), s.count(')')
    def helper(leftNum, idx):
        while idx < n:
            if s[idx] == '(':
                leftNum += 1
            elif s[idx] == ')':
                leftNum -= 1
                if leftNum < 0:
                    return False, []
            else:
                break
            idx += 1
        if idx == n:
            return leftNum == 0, []
        if leftNum == 0:
            return False, []

        for i in range(1, leftNum + 1):
            ret, ans = helper(leftNum - i, idx + 1)
            if ret:
                return True, [i] + ans
        return False, []
    ret, ans = helper(0, 0)
    if ret:
        for e in ans:
            print(e)
    else:
        print(-1)



if __name__ == '__main__':
    treasure()
