https://www.acmicpc.net/problem/4949
while True:
string = input()
# 중단
if string == ".":
break
# 스택
stack = []
# YES 플래그
YES = True
# 문자열 순회
for c in string:
if c == "(" or c == "[":
stack.append(c)
if c == ")":
# 비어 있음 or 매칭되지 않음
if len(stack) == 0 or stack[-1] != "(":
YES = False
break
# 매칭되는 괄호를 만남
if stack[-1] == "(":
stack.pop()
elif c == "]":
# 비어 있음 or 매칭되지 않음
if len(stack) == 0 or stack[-1] != "[":
YES = False
break
# 매칭되는 괄호를 만남
if stack[-1] == "[":
stack.pop()
# 문자열 순회가 끝났을 때
# YES 플래그가 True이고, stack이 비어있을 때 yes
if YES and len(stack) == 0:
print("yes")
else:
print("no")