Vanya got bored and he painted *n* distinct points on the plane. After that he connected all the points pairwise and saw that as a result many triangles were formed with vertices in the painted points. He asks you to count the number of the formed triangles with the non-zero area.
The first line contains integer *n* (1 ≤ *n* ≤ 2000) — the number of the points painted on the plane. 

Next *n* lines contain two integers each *x*<sub class="lower-index">*i*</sub>, *y*<sub class="lower-index">*i*</sub> ( - 100 ≤ *x*<sub class="lower-index">*i*</sub>, *y*<sub class="lower-index">*i*</sub> ≤ 100) — the coordinates of the *i*-th point. It is guaranteed that no two given points coincide.
class NumberTriangles:       
    def solution(self):
        num_points = int(input())
        points = []
        for _ in range(num_points):
            point = input()
            point = point.split(" ")
            points.append((int(point[0]), int(point[1])))
 
        num_triangles = 0
        for i in range(num_points):
            for j in range(i + 1, num_points):
                for k in range(j + 1, num_points):
                    vector_1 = (points[j][0] - points[i][0], points[j][1] - points[i][1])
                    vector_2 = (points[k][0] - points[i][0], points[k][1] - points[i][1])
                    area = vector_1[0] * vector_2[1] - vector_1[1] * vector_2[0]
                    if area != 0:
                        num_triangles += 1
        
        print(num_triangles)
 
 
if __name__ == "__main__":
    num_triangles = NumberTriangles()
    num_triangles.solution()