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

-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

import sys

#main procedure
#sys.stdin = open('a.in', 'r')
s = raw_input()
L = len(s)
l_cnt, r_cnt, w_cnt = 0, 0, 0
for i in range(L):
    if s[i] == '(':
        l_cnt += 1
    elif s[i] == ')':
        r_cnt += 1
    else:
        w_cnt += 1
answer = [1] * w_cnt
delta = l_cnt - r_cnt - w_cnt
valid = True
if delta >= 0:
    answer[-1] += l_cnt - r_cnt - w_cnt
else:
    valid = False
stack = 0
t = 0
for i in range(L):
    if s[i] == '(':
        stack += 1
    elif s[i] == ')':
        stack -= 1
    else:
        stack -= answer[t]
        t += 1
    if stack < 0:
        valid = False
if valid:
    for item in answer:
        print item
else:
    print -1
