function processData(input) { var lines = input.split("\n"); var q = parseInt(lines[0]); var n = 0; var tmp; var t = []; var cur = 1; for (var i = 0; i < q; i++) { n = parseInt(lines[cur]); cur++; t = []; for(var j = 0; j < n; j++) { tmp = lines[cur].split(' '); cur++; t[j] = []; t[j][0] = parseInt(tmp[0]); t[j][1] = parseInt(tmp[1]); } console.log(sol(n, t)); } } function sol(n, t) { if (n <= 2) return "YES"; var slope = 1.389; for (var k = 1; k < n; k++) { if (t[k][0] == t[0][0] || t[k][1] == t[0][1] || slope == 1.389) { //console.error("good"); if (t[k][0] != t[0][0] && t[k][1] != t[0][1]) slope = (t[k][1] - t[0][1]) / (t[k][0] - t[0][0]); } else if ((t[k][1] - t[0][1]) / (t[k][0] - t[0][0]) != slope) return "NO"; } return "YES"; } process.stdin.resume(); process.stdin.setEncoding("ascii"); _input = ""; process.stdin.on("data", function (input) { _input += input; }); process.stdin.on("end", function () { processData(_input); });