Malek has recently found a treasure map. While he was looking for a treasure he found a locked door. There was a string *s* written on the door consisting of characters '(', ')' and '#'. Below there was a manual on how to open the door. After spending a long time Malek managed to decode the manual and found out that the goal is to replace each '#' with one or more ')' characters so that the final string becomes beautiful. 

Below there was also written that a string is called beautiful if for each *i* (1 ≤ *i* ≤ |*s*|) there are no more ')' characters than '(' characters among the first *i* characters of *s* and also the total number of '(' characters is equal to the total number of ')' characters. 

Help Malek open the door by telling him for each '#' character how many ')' characters he must replace it with.
The first line of the input contains a string *s* (1 ≤ |*s*| ≤ 10<sup class="upper-index">5</sup>). Each character of this string is one of the characters '(', ')' or '#'. It is guaranteed that *s* contains at least one '#' character.
#include <cstdio>
#include <cstring>
using namespace std;

int n;
char st[100009];

int main(){
    scanf("%s",st);
    n = strlen(st);
    if(n==1 || st[0]=='#'){
        printf("-1\n");
        return 0;
    }

    int cnt = 0;
    for(int i=0; i<n; i++){
        if(st[i]=='#'){
            while(i+1 < n && st[i+1]==')') i+=1, cnt-=1;
            if(cnt<1){
                printf("-1\n");
                return 0;
            }
            printf("%d\n",cnt);
            cnt = 0;
            continue;
        }
        else if(st[i]=='(') cnt+=1;
        else if(st[i]==')') cnt-=1;
        if(cnt < 0){
            printf("-1\n");
            return 0;
        }
    }
    return 0;
}
