Vanya got n cubes. He decided to build a pyramid from them. Vanya wants to build the pyramid as follows: the top level of the pyramid must consist of 1 cube, the second level must consist of 1 + 2 = 3 cubes, the third level must have 1 + 2 + 3 = 6 cubes, and so on. Thus, the i-th level of the pyramid must have 1 + 2 + ... + (i - 1) + i cubes.

Vanya wants to know what is the maximum height of the pyramid that he can make using the given cubes.

Input

The first line contains integer n (1 ≤ n ≤ 104) — the number of cubes given to Vanya.

Output

Print the maximum possible height of the pyramid in the single line.

Examples

Input

1


Output

1


Input

25


Output

4

Note

Illustration to the second sample: 

<image>
# cubes = int(input())
# level = 0
# next_level = 3
# count_cubes_in_level_n = 0
#
# while count_cubes_in_level_n < cubes and level < 2:
#     level += 1
#     count_cubes_in_level_n = (level - 1) + level
#     cubes -= count_cubes_in_level_n
#     while level >= 2 and count_cubes_in_level_n < cubes:
#         level += 1
#         count_cubes_in_level_n = count_cubes_in_level_n + next_level
#         next_level += 1
#         cubes -= count_cubes_in_level_n
# print(level)
cubes = int(input())

level = 0
count_cubes_in_level = 0
all_cubes_in_form = 0

while all_cubes_in_form < cubes:
    level += 1
    count_cubes_in_level += level
    all_cubes_in_form += count_cubes_in_level
if all_cubes_in_form == cubes:
    print(level)
else:
    print(level - 1)
