Problem: Iahub has drawn a set of n points in the cartesian plane which he calls "special points". A quadrilateral is a simple polygon without self-intersections with four sides (also called edges) and four vertices (also called corners). Please note that a quadrilateral doesn't have to be convex. A special quadrilateral is one which has all four vertices in the set of special points. Given the set of special points, please calculate the maximal area of a special quadrilateral. 

Input

The first line contains integer n (4 ≤ n ≤ 300). Each of the next n lines contains two integers: xi, yi ( - 1000 ≤ xi, yi ≤ 1000) — the cartesian coordinates of ith special point. It is guaranteed that no three points are on the same line. It is guaranteed that no two points coincide. 

Output

Output a single real number — the maximal area of a special quadrilateral. The answer will be considered correct if its absolute or relative error does't exceed 10 - 9.

Examples

Input

5
0 0
0 4
4 0
4 4
2 3


Output

16.000000

Note

In the test example we can choose first 4 points to be the vertices of the quadrilateral. They form a square by side 4, so the area is 4·4 = 16.

Solution (in PYTHON):

Solution:
n = int(input())
a = []
area = 0
for i in range(n):
    a.append([int(i) for i in raw_input().split(' ')])


def get_s(p1, p2, p3):
    return ((p2[0] - p1[0]) * (p3[1] - p1[1]) - (p2[1] - p1[1]) * (p3[0] - p1[0])) / 2.0


for i in range(len(a) - 1):
    for j in range(i + 1, len(a)):
        positive = 0
        negative = 0
        for k in range(len(a)):
            if k == i or k == j:
                continue
            s = get_s(a[i], a[j], a[k])
            if s > 0:
                positive = max(positive, s)
            if s == 0:
                pass
            else:
                negative = min(negative, s)
        if positive != 0 and negative != 0:
            area = max(area, positive - negative)

print area