#(#(#((##((()))(((#)(#()#(((()()(()#(##(((()(((()))#(((((()(((((((()#((#((()(#(((()(()##(()(((()((#(
 (#((((()
 (#((
 ((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((#)((##
 (())((((#)
 (#(
 (#))(#(#)((((#(##((#(#((((#(##((((((#((()(()(())((()#((((#((()((((#(((((#(##)(##()((((()())(((((#(((
 ##((((((()
 #((#
 #))))
 (((((#(#(#(#()
 ((#(()#(##
 (((((((((((((((((((###################
 )((##((###
 (((()#(#)(
 ((#)(
 )(((())#
 ()((#((#(#()
 ((#(
 ()#(#())()()#)(#)()##)#((()#)((#)()#())((#((((((((#)()()(()()(((((#)#(#((((#((##()(##(((#(()(#((#))#

-1
 -1
 -1
 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
 3
 -1
 -1
 -1
 -1
 -1
 1
1
1
5
 1
1
1
1
 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
 -1
 -1
 -1
 -1
 1
1
3
 -1
 -1

s=input()
a=s.count('(')
b=s.count(')')
c=s.count('#')
need=a-b
can=[]
i=0
siz=0
while i<len(s):
    if(s[i]=='('):
        siz+=1
    elif(s[i]==')'):
        siz-=1
    else:
        i+=1
        while i<len(s) and s[i]!='(':
            siz-=1
            i+=1
        i-=1
        if(siz<=0):
            break
        can.append(siz)
        siz=0;
    i+=1
if(i!=len(s)):
    print(-1)
else:
    can=list(map(lambda x: x-1, can))
    need-=c
    i=0
    rez=[1]*c
    while need!=0:
        if(can[i]<=need):
            need-=can[i]
            rez[i]+=can[i]
        else:
            rez[i]+=need
            need=0
        i+=1
    for i in rez:
        print(i)