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.
from operator import itemgetter

N = int(input())
A = []

def valid(i,j,k):
	global A
	V1x = A[j][0] - A[i][0]
	V1y = A[j][1] - A[i][1]
	V2x = A[k][0] - A[i][0]
	V2y = A[k][1] - A[i][1]
	return V1x*V2y - V2x*V1y != 0

for i in range(N):
	A.append([int(j) for j in input().split()])

# A.sort(key=itemgetter(1))
# A.sort(key=itemgetter(0))

ans = 0
for i in range(N):
	for j in range(i+1,N):
		for k in range(j+1,N):
			if(valid(i,j,k)):
				ans+=1
print(ans)
