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

-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;
long long n, c, f, ff, l, afl, ft7;
string s, k;
vector<long long> v;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> s;
  n = s.size();
  for (long long i = 0; i <= n - 1; i++) {
    if (s[i] == '#')
      f++;
    else if (s[i] == '(') {
      if (f) {
        if (c) {
          v.push_back(c);
          while (c--) k.push_back(')');
        }
        f = 0;
        c = 1;
      } else
        k.push_back(s[i]), c++;
    } else
      c--;
  }
  if (f) {
    v.push_back(c);
    while (c--) k.push_back(')');
  }
  n = k.size();
  for (long long i = 0; i <= n - 1; i++) {
    if (k[i] == '(')
      c++;
    else
      c--;
  }
  if (!c) {
    n = v.size();
    for (long long i = 0; i <= n - 1; i++) cout << v[i] << endl;
    cin >> n;
    return 0;
  }
  cout << "-1\n";
  cin >> n;
  return 0;
}
