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

-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.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class Main {
	public static void main(String[] args) throws IOException {
		String s = new BufferedReader(new InputStreamReader(System.in))
				.readLine();

		ArrayList<Integer> res = new ArrayList<Integer>();
		boolean valid = true;
		boolean flag = false;
		int open = 0;
		for (int i = 0; i < s.length(); i++) {
			if (s.charAt(i) == '(') {
				if (flag) {
					if (open > 0)
						res.add(open);
					else
						valid = false;
					flag = false;
					open = 0;
				}
				open++;
			} else if (s.charAt(i) == '#') {
				if (!flag)
					flag = true;
				else res.add(0);
			} else
				open--;
			if(open < 0)
				valid = false;
		}

		if (flag) {
			if (open > 0)
				res.add(open);
			else
				valid = false;
			open = 0;
		}

		valid &= (open == 0);
		if (valid)
			for (int i : res)
				System.out.println(i);
		else
			System.out.println(-1);
	}
}
