#include using namespace std; #define vec vector #define ALL(x) (x).begin(), (x).end() #define mp make_pair #define mt make_tuple typedef pair< int, int > pii; typedef long long ll; typedef unsigned long long ull; typedef long double ld; int const inf = 1000 * 1000 * 1000; ll const inf64 = 1ll * inf * inf; bool solve() { int n; scanf("%d", &n); vec< pii > crd(n); for(int i = 0;i < n;i++) { scanf("%d %d", &crd[i].first, &crd[i].second); } sort(ALL(crd)); crd.resize(n = unique(ALL(crd)) - crd.begin()); if(n == 1) { printf("YES\n"); return true; } vec< int > x(n); vec< int > y(n); for(int i = 0;i < n;i++) { x[i] = crd[i].first; y[i] = crd[i].second; } int min_x = *min_element(ALL(x)); int max_x = *max_element(ALL(x)); int min_y = *min_element(ALL(y)); int max_y = *max_element(ALL(y)); if(min_x == max_x && min_y == max_y) { printf("NO\n"); return true; } for(int i = 0;i < n;i++) { if(min_x == x[i] || max_x == x[i]) continue; if(min_y == y[i] || max_y == y[i]) continue; printf("NO\n"); return true; } printf("YES\n"); return true; } int main() { int q; scanf("%d", &q); for(int iter = 0;iter < q;iter++) { solve(); } return 0; }