class Stack:
def __init__(self) -> None:
self.items = []
def push(self,x):
self.items.append(x)
def pop(self):
if self.items:
return self.items.pop()
return None
def is_empty(self):
return len(self.items) == 0
def is_match(s):
stack = Stack()
for char in s:
if char in "([":
stack.push(char)
elif char in ")]":
if not stack:
return False
top = stack.pop()
if (char == ")" and top != "(") or (char == ']' and top != "["):
return False
return stack.is_empty()
s = input().strip()
print(str(is_match(s)).lower())