#include #include #include #include #include using namespace std; int inf = 1000000; void updateMin(int val, int& minVal) { if (val < minVal) minVal = val; } void updateMax(int val, int& maxVal) { if (val > maxVal) maxVal = val; } bool onEdge(int x, int y, int minX, int maxX, int minY, int maxY) { //cerr << x << ' ' << y << ' ' << minX << ' ' << maxX << ' ' << minY << ' ' << maxY << endl; return x == minX || x == maxX || y == minY || y == maxY; } bool testCase() { int n; cin >> n; vector x(n), y(n); int minX = inf, minY = inf, maxX = -inf, maxY = -inf; for (int i = 0; i < n; ++i) { cin >> x[i] >> y[i]; updateMin(x[i], minX); updateMax(x[i], maxX); updateMin(y[i], minY); updateMax(y[i], maxY); } //if (minX == maxX || minY == maxY) // return false; for (int i = 0; i < n; ++i) if (!onEdge(x[i], y[i], minX, maxX, minY, maxY)) return false; return true; } int main() { int q; cin >> q; while (q--) { if (testCase()) cout << "YES" << endl; else cout << "NO" << endl; } }