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

-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;
char str[100010];
int a[100010];
stack<char> s;
int main() {
  while (cin >> str) {
    int len = strlen(str);
    bool flag = true;
    int i = 0, in = 0;
    memset(a, 0, sizeof(a));
    for (int j = 0; j < len; j++) {
      if (str[j] == ')' && !s.empty() && s.top() == '(') {
        s.pop();
      } else
        s.push(str[j]);
    }
    len = s.size();
    for (int j = len - 1; j >= 0; j--) {
      str[j] = s.top();
      s.pop();
    }
    i = 0;
    while (i < len) {
      if (str[i] == '(') {
        s.push(str[i]);
        i++;
      } else if (str[i] == ')') {
        if (!s.empty() && s.top() == '(') {
          s.pop();
          i++;
        } else {
          flag = false;
          break;
        }
      } else {
        if (!s.empty() && s.top() == '(') {
          i++;
          while (i < len && str[i] == ')' && !s.empty()) {
            s.pop();
            i++;
          }
          if (!s.empty()) {
            int cnt = 0;
            if (str[i] == '#') {
              s.pop();
              a[in++] = 1;
            } else {
              while (!s.empty() && s.top() == '(') {
                s.pop();
                cnt++;
              }
              a[in++] = cnt;
            }
          } else {
            flag = false;
            break;
          }
        } else {
          flag = false;
          break;
        }
      }
    }
    if (!flag)
      cout << -1 << endl;
    else {
      for (i = 0; i < in; i++) cout << a[i] << endl;
    }
    while (!s.empty()) s.pop();
  }
  return 0;
}
