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

-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

//package practise;
import java.io.*;
public class treasure {
public static void main(String args[])throws java.lang.Exception
{
	BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
	String str;
	str=br.readLine();
	int len=str.length();
	char[]chr=new char[len];
	chr=str.toCharArray();
	int i,temp,j=0;
	int k=0,p=0;
	int fnd=0;
	int[]arr=new int[100];
	for(i=0;i<len;i++)
	{
	temp=(int)chr[i];
		if(temp==40)
		{
			k++;
		//	System.out.println("K="+k);
		}
		else	if(temp==35)//||temp==41)
		{
			//System.out.println("fnd=1");
			if(i!=len-1)
			{
				i++;
				temp=(int)chr[i];
			}
			while(temp==41&&i<len)
			{
				p++;
				i++;
				if(i<len)
				temp=(int)chr[i];
				//i++;
			}
			if(p-k!=0)
			{
				fnd=1;
			System.out.println("fnd=1"+(p-k));
			}
			arr[j]=p-k;
			j++;
			k=0;
			p=0;
			if(i<len-1)
			{
				i--;
			}
		}
		else
			if(temp==41)
			{
				k--;
			}
	}
	if(fnd==0)
	{
		System.out.println("-1");
	}
	else
	{
		for(i=0;i<j;i++)
		{
			System.out.println(arr[i]);
		}
	}
}
}
