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

-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;
string num_to_str(int n) {
  string res = "";
  if (!n) return "0";
  while (n) {
    res += ((n % 10) + '0');
    n /= 10;
  }
  reverse(res.begin(), res.end());
  return res;
}
int str_to_num(string s) {
  int res = 0, p = 1;
  for (int i = s.size() - 1; i >= 0; i--) res += ((s[i] - '0') * p), p *= 10;
  return res;
}
int main() {
  ios::sync_with_stdio(0);
  string s;
  cin >> s;
  long long c1 = 0, c2 = 0, l = 0, ss = 0, c3;
  int idx = 0;
  for (int i = 0; i < s.size(); i++) {
    if (s[i] == ')' || s[i] == '#')
      c1++;
    else
      c2++;
    if (s[i] == '#') idx = i, ss++;
  }
  if (c1 > c2) {
    int out = -1;
    cout << out << endl;
    return 0;
  }
  c3 = c2 - c1;
  c2 = 0;
  c1 = 0;
  for (int i = 0; i < s.size(); i++) {
    if (i == idx) c1 += c3;
    if (s[i] == ')' || s[i] == '#')
      c1++;
    else
      c2++;
    if (c2 < c1) {
      int out = -1;
      cout << out << endl;
      return 0;
    }
  }
  for (int i = 0; i < ss; i++) {
    if (i == ss - 1)
      cout << c3 + 1 << endl;
    else
      cout << 1 << " ";
  }
  return 0;
}
