# 0は操作で消すことができない # もし0が2つ以上あるなら明らかにだめ # 正の数だけなら、大きいほうから消すことで長さN%2を達成可能 # 負の数でも同様 # よって、0が1つもないなら明らかにOK(最後に正の数と負の数が高々1つ残って、どっちもあるならそれらは消せる) # 0が1つだけなとき # 正数/負数の個数をそれぞれn, mとしよう # N % 2 == 0 のとき: 0となにか1つが残っちゃうのでだめ # n % 2 == m % 2 == 0 のとき: どっちも消えるのでOK # 残るは n % 2 == m % 2 == 1 # 最後に足して0になるペアが残らなければいい # いったんここを適当に書いてみる、ペナないし(なんかごめんなさい...) # え、全WAになるほど間違ってます? # **ペナがないので**assertかけてチェック!! # テストケースが強かった... # あー、-8 -4 -4 0 4 4 4 みたいなだめなのもぜんぜんあるね # てきとー def solve(): N = int(input()) A = list(map(int, input().split())) M = [a for a in A if a < 0] P = [a for a in A if a > 0] n = len(M) m = len(P) if N - n - m >= 2: print("No") elif N - n - m == 0: print("Yes") elif N % 2 == 0: print("No") elif n % 2 == m % 2 == 0: print("Yes") else: M.sort(reverse=True) P.sort() if -M[0] != P[0]: print("Yes") else: ok = False for i in range(n): if M[i] == M[0]: continue left = i right = n - left - 1 if left <= right: ok = True break for i in range(m): if P[i] == P[0]: continue left = i right = m - left - 1 if left <= right: ok = True break print("Yes" if ok else "No") T = int(input()) for _ in range(T): solve()