def line(p1, p2): return p1[0], p2[0] - p1[0], p1[1], p2[1] - p1[1] def intersect(l1, l2): a = l1[0] b = l1[1] c = l1[2] d = l1[3] e = l2[0] f = l2[1] g = l2[2] h = l2[3] if (b*h - d*f) != 0: t = (f*(c - g) - h*(a - e))/float(b*h - d*f) return [a + b*t, c + d*t] def perp_line(p, l): a,b,c,d = l[0],l[1],l[2],l[3] if d != 0: m_p = -b/float(d) b_p = p[1] - m_p * p[0] return 0, 1,b_p, m_p else: return c,d, 0, 1 def distance(A, B): return ((A[0] - B[0])**2 + (A[1] - B[1])**2) def is_between(A, B, C): return distance(A,C) + distance(B,C) == distance(A,B) def get_corners(A,B,C): AB = line(A,B) CD = perp_line(C, AB) D = intersect(AB, CD) EFC = perp_line(C, CD) E = intersect(EFC, perp_line(A, EFC)) F = intersect(EFC, perp_line(B, EFC)) if is_between(E,C,F): F = C return A,D,C,E elif is_between(F,C,E): E = C return A,B,F,E else: return A,B,F,E def lies_on_line(l, p): return p[1] == l[0]*p[0] + l[1] def test(pl): if len(pl) <= 3: return True c1,c2,c3,c4 = get_corners(*pl[:3]) l1 = line(c1,c2) l2 = line(c2,c3) l3 = line(c3,c4) l4 = line(c4,c1) for p in pl[3:]: if not (lies_on_line(l1,p) or lies_on_line(l2,p) or lies_on_line(l3,p) or lies_on_line(l4,p)): return False return True q = int(raw_input()) for i in range(q): n = int(raw_input()) pl = [] for i in range(n): pl.append(map(float, raw_input().split(' '))) print ['NO', 'YES'][test(pl)]