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.
import functools
import math
import random
from collections import defaultdict,deque
from heapq import  heapify,heappop,heappush
import bisect
from collections import Counter
import collections
from functools import lru_cache
import time
from typing import List
from math import log
from  random import  randint,seed
from time import time
from bisect import bisect_left,bisect_right



l=0
cnt=0
f=True
for c in input():
    if c=='(':l+=1
    elif c==')':
        l-=1
        if l<0:
            f=False
            break
    else:
        l-=1
        cnt+=1
        if l<0:
            f=False
            break

if not f:print(-1)
else:
    for _ in range(cnt-1):
        print(1)
    if cnt:print(1+l)
