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

-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

#include <bits/stdc++.h>
using namespace std;
int main() {
  char ac[110000];
  int acc[110000], sum, z, y, t, k, z1, y1, sum1;
  while (scanf("%s", ac) != EOF) {
    sum = 0;
    z = 0;
    y = 0;
    t = 0;
    k = 0;
    if (ac[0] == ')' || ac[strlen(ac) - 1] == '(' || ac[0] == '#') {
      printf("-1\n");
    } else {
      for (int i = 0; i < strlen(ac); i++) {
        if (ac[i] == '(') {
          z++;
        }
        if (ac[i] == ')') {
          z--;
        }
        if (ac[i] == '#') {
          sum++;
        }
        if ((z - sum) < 0) {
          k = 1;
          break;
        }
      }
      z1 = 0;
      y1 = 0;
      sum1 = 0;
      for (int i = strlen(ac) - 1; i >= 0; i--) {
        if (ac[i] == '(') {
          y1--;
        }
        if (ac[i] == ')') {
          y1++;
        }
        if (ac[i] == '#') {
          sum1++;
        }
        if (y1 < 0 && sum1 == 0) {
          k = 1;
          break;
        }
      }
      if (z < sum || k == 1) {
        printf("-1\n");
      } else {
        for (int i = 0; i < sum; i++) acc[t++] = 1;
        acc[t - 1] = acc[t - 1] + z - sum;
        for (int k = 0; k < sum; k++) printf("%d\n", acc[k]);
      }
    }
  }
}
