You are given set of n points in 5-dimensional space. The points are labeled from 1 to n. No two points coincide.

We will call point a bad if there are different points b and c, not equal to a, from the given set such that angle between vectors <image> and <image> is acute (i.e. strictly less than <image>). Otherwise, the point is called good.

The angle between vectors <image> and <image> in 5-dimensional space is defined as <image>, where <image> is the scalar product and <image> is length of <image>.

Given the list of points, print the indices of the good points in ascending order.

Input

The first line of input contains a single integer n (1 ≤ n ≤ 103) — the number of points.

The next n lines of input contain five integers ai, bi, ci, di, ei (|ai|, |bi|, |ci|, |di|, |ei| ≤ 103) — the coordinates of the i-th point. All points are distinct.

Output

First, print a single integer k — the number of good points.

Then, print k integers, each on their own line — the indices of the good points in ascending order.

Examples

Input

6
0 0 0 0 0
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1


Output

1
1


Input

3
0 0 1 2 0
0 0 9 2 0
0 0 5 9 0


Output

0

Note

In the first sample, the first point forms exactly a <image> angle with all other pairs of points, so it is good.

In the second sample, along the cd plane, we can see the points look as follows:

<image>

We can see that all angles here are acute, so no points are good.
def helper():
	n = int(raw_input())
	all_point = []
	for i in range(n):
		all_point.append(map(int, raw_input().split()))

	res = 0
	res_v = {i:0 for i in range(n)}
	for i_one, one in enumerate(all_point):
		flag = False
		for i_two, two in enumerate(all_point):
			if i_two == i_one:
				continue
			for i_three, three in enumerate(all_point):
				if i_three == i_one or i_three == i_two:
					continue
				v1, v2 = form_vector(one, two, three)
				comp = cal_cos(v1, v2)
				if comp > 0:
					flag = True
					res += 1
					break
			if flag:
				break
		if flag:
			res_v[i_one] = 1
	print n - res
	for i in range(n):
		if res_v[i] != 1:
			print i + 1


def form_vector(point1, point2, point3):
	v1 = []
	v2 = []
	for i in range(5):
		v1.append(point2[i] - point1[i])
		v2.append(point3[i] - point1[i])
	return (v1, v2)

def cal_cos(v1, v2):
	top = 0
	bottom1 = 0
	bottom2 = 0
	for i in range(5):
		top += v1[i]*v2[i]
		bottom1 += v1[i]**2
		bottom2 += v2[i]**2
	return float(top) / (bottom1**0.5 * bottom2**0.5)

helper()