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

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

public class A {
	public static void main(String[] args) throws IOException{
		Scanner scan = new Scanner(System.in);
		String temp = scan.nextLine();
		char[] s = temp.toCharArray();
		boolean canBeDone = true;
		int current = 0;
		int numHashtags = 0;
		for (int i = 0; i < s.length; i++){
			if (s[i] == '(')
				current++;
			if (s[i] == ')' || s[i] == '#')
				current--;
			if (s[i] == '#')
				numHashtags++;
			if (current < 0){
				canBeDone = false;
				break;
			}
		}
		if (canBeDone){
			for (int i = 0; i < numHashtags - 1; i++)
				System.out.println("1");
			System.out.println(current - (numHashtags - 1));
		}
		else
			System.out.println("-1");
	}
}
