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.
s=input()
lis=[0 for i in range(len(s))]
lis1=[]
for i in range(len(s)):
    if s[i]=='(':
        lis[i]=1
    if s[i]==')':
        lis[i]=-1
    if s[i]=="#":
        lis[i]=0
        lis1.append(i)

if sum(lis)<=0:
    print(-1)
else:
    n=sum(lis)
    if n<len(lis1):
        print(-1)
    else:
        for i in range(len(lis1)-1):
            lis[lis1[i]]=-1
        lis[lis1[len(lis1)-1]]=-(n+1-len(lis1))
        lis2=[lis[0]]
        c=1
        if lis[0]<0:
            c=0
        else:
            for i in range(1,len(lis)):
                lis2.append(lis[i]+lis2[i-1])
                if lis2[i]<0:
                    c=0
                    break
        if c==0:
            print(-1)
        else:
            for i in range(len(lis1)-1):
                print(1)
            print(n+1-len(lis1))
                
                
                
    
            
