A triangular number is the number of dots in an equilateral triangle uniformly filled with dots. For example, three dots can be arranged in a triangle; thus three is a triangular number. The n-th triangular number is the number of dots in a triangle with n dots on a side. <image>. You can learn more about these numbers from Wikipedia (http://en.wikipedia.org/wiki/Triangular_number).

Your task is to find out if a given integer is a triangular number.

Input

The first line contains the single number n (1 ≤ n ≤ 500) — the given integer.

Output

If the given integer is a triangular number output YES, otherwise output NO.

Examples

Input

1


Output

YES


Input

2


Output

NO


Input

3


Output

YES
import sys
import math
ri = lambda: raw_input().strip()

n = float(ri())
#n, m = map(int, ri().split())

tmp = int((math.sqrt(8 * n + 1) - 1) / 2)
if (tmp * 2 + 1 ) ** 2 == (8.0 * n + 1.0):
    print "YES"
else:
    print "NO"

# n = int(ri())
# triangular = 1
# i = 1
# while triangular < n:
#     i += 1
#     triangular += i
# if triangular == n:
#     print("YES")
# else:
#     print("NO")