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())