CHEFMAY - Nice Quadrangles

no tags 

There are n points with integer coordinates. We can form different quadrangles out of them by taking four different points and connecting them with lines. Let’s call a quadrangle ABCD nice if and only if:

  • Ax > 0 and Ay > 0;
  • Bx > 0 and By < 0;
  • Cx < 0 and Cy < 0;
  • Dx < 0 and Dy > 0;
  • ABCD has an integer area.

Your task is to count all different nice quadrangles that can be formed on the given points.

Input

The first line of input file contains number t – the number of test cases. Then the description of each test case follows. The first line of each test case contains number n – the number of points. Then n lines follow each consisting of two integers x, y – the coordinates of a point. No two points in the same test case coincide.

Constraints

1 <= t <= 10
1 <= n <= 30000
-30000 <= x, y <= 30000

Output

For each test case print the number of nice quadrangles that can be formed using given points.

Example

Input:
1
6
1 1
2 2
-1 -1
-2 2
2 -1
-3 -4

Output:
2


Added by:Spooky
Date:2010-06-04
Time limit:0.100s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: NODEJS OBJC PERL6 SQLITE VB.NET
Resource:CodeChef May Challenge