#P162J. Brackets

Brackets

No submission language available for this problem.

Description

A sequence of brackets is called balanced if one can turn it into a valid math expression by adding characters "+" and "1". For example, sequences "(())()", "()" and "(()(()))" are balanced, while ")(", "(()" and "(()))(" are not.

You are given a string which consists of opening and closing round brackets. Check whether it is a balanced bracket sequence.

The only line of input contains a string between 1 and 100 characters long, inclusive. Each character in the string will be "(" or ")".

Output "YES" if the bracket sequence is balanced, and "NO" otherwise (quotes for clarity only).

Input

The only line of input contains a string between 1 and 100 characters long, inclusive. Each character in the string will be "(" or ")".

Output

Output "YES" if the bracket sequence is balanced, and "NO" otherwise (quotes for clarity only).

Samples

(()(()))()

YES

())()

NO