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

-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.InputStreamReader;
import java.nio.charset.StandardCharsets;
import java.util.LinkedList;
import java.util.StringTokenizer;


public class Treasure {

	static BufferedReader br = new BufferedReader( new InputStreamReader(System.in, StandardCharsets.US_ASCII) );
	
	public static void main(String[] args) throws Exception {
		String s = br.readLine();
		s = s.replaceAll("#", "*)");
//		System.out.println(s);
		char[] ca = s.toCharArray();
		//q2 = new LinkedList<>();
		LinkedList<Integer> q = new LinkedList<>();
		int q2= 0;
		int c = 0;
		for (int i = ca.length -1; i >= 0; --i) {
			switch (ca[i]) {
			case ')':
				++q2;
				break;
			case '(':
				--q2;
				break;
			case '*':
				c = 0;
				while (i-1 >= 0 && ca[i-1] == '(' && q2 > 0 ) {
					--i;
					--q2;
				}
				while (i-1 >= 0 && ca[i-1] == '(' && q2 == 0) {
					++c;
					--i;
				}
				q.addFirst(c+1);
				break;
			}
		}
		StringBuilder sb = new StringBuilder();
		int j = 0;
		int[] cnt = new int[q.size()];
		for (int a : q) {
			sb.append(a).append('\n');
			cnt[j++] = a;
		}
		StringBuilder check = new StringBuilder();
		j = 0;
		for (char ch : ca) {
			if ( ch == '*' ) {
				for (int i = 1; i < cnt[j]; i++) {
					check.append(')');
				}
				++j;
			} else {
				check.append(ch);
			}
		}
		if (ok(check.toString().toCharArray())) {
			System.out.print(sb);			
		} else {
			System.out.println(-1);
		}
	}

	private static boolean ok(char[] ca) {
		int s = 0;
		for (char c : ca) {
			switch (c) {
			case '(':
				++s;
				break;
			case ')':
				--s;
				if (s < 0) return false;
				break;
			}
		}
		return s == 0;
	}
}
