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.
from math import *

#t = int(input())
m = []
nn = []
for i in range(1):
    #nn.append(int(input()))
    #x = list(map(int, input().split()))
    m.append(input())
flag = -1
for i in range(1):
    c1 = 0
    c2 = 0
    c3 = 0
    s = m[0]
    ss = []
    l = len(s)
    last = -1
    flag = 0
    for j in range(l):
        if s[l-1-j] == '#':
            last = l-1-j
            break
    for j in range(l):
        if c2 + c3 > c1:
            print(-1)
            flag = 1
            break
        if s[j] == '(':
            c1 = c1 + 1
        elif s[j] == ')':
            c2 = c2 + 1
        elif s[j] == '#' and j!=last:
            c3 = c3 + 1
            ss.append(1)
        elif s[j] == '#' and j==last:
            c3 = c3 + 1
        if c2 + c3 > c1:
            print(-1)
            flag = 1
            break
    ss.append(c1 - c2 - c3 + 1)
    if flag == 0:
        print(*ss,sep=' ')