G - Cuadrícula y triángulos

Languages: C, C++, Java, Haskell, Pascal, Python, JavaScript, Tiger, C#
Time & Memory limits: (details)

Un triángulo es una figura que puede ser formada conectando tres puntos no colineales con líneas rectas. Considere una cuadrícula rectangular formada por $n$ líneas horizontales distintas y $m$ líneas verticales distintas. Cúantos triángulos diferentes se pueden formar usando los puntos de las intersecciones? Dos triángulos se consideran distintos si el conjunto de sus vértices son diferentes.

Input

La primera línea de la entrada contiene un entero $T$ $(T \leq 300)$, la cantidad de casos de pruebas. Cada una de las siguientes $T$ líneas contendrán un caso de prueba. Cada caso es representado por dos enteros positivos $n$ y $m$ separados por un espacio. Ambos son a lo sumo $100$ y el producto $nm$ no es mayor que $1024$.

Output

Por cada caso de prueba imprima el número de triángulos.

Sample test(s)

Input
2 2 2 3 3
Output
4 76