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

-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 java.lang.Character;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        int numSign = 0;
        for (int i = 0; i < line.length(); i++) {
            if ('#' == line.charAt(i)) {
                numSign++;
            }
        }

        Stack<Character> stack = new Stack<Character>();
        ArrayList<Integer> sol = new ArrayList<Integer>();
        boolean beautiful = true;
        int signCnt = 0;
        for (int i = 0; i < line.length(); i++) {
            char c = line.charAt(i);
            if (c == '(') {
                stack.push(c);
            } else if (c == ')') {
                if (!stack.empty()) {
                    stack.pop();
                } else {
                    beautiful = false;
                    break;
                }
            } else {
                signCnt++;
                if (signCnt == numSign) {
                    int cnt = 0;
                    for (int j = i+1; j < line.length(); j++) {
                        char cc = line.charAt(j);
                        if (cc == '(') {
                            cnt--;
                        } else {
                            cnt++;
                        }
                    }
                    if (cnt < 0) {
                        beautiful = false;
                        break;
                    }
                    int size = stack.size();
                    if (cnt >= size) {
                        beautiful = false;
                        break;
                    } else {
                        for (int j = 0; j < size - cnt; j++) {
                            stack.pop();
                        }
                    }
                    sol.add(size-cnt);
                } else {
                    if (!stack.empty()) {
                        stack.pop();
                        sol.add(1);
                    } else {
                        beautiful = false;
                        break;
                    }
                }
            }
        }
        if (!beautiful) {
            System.out.println(-1);
        } else {
            for (int i: sol) {
                System.out.println(i);
            }
        }
    }
}
