import java.util.Scanner ;
import java.util.Arrays ;
import java.lang.Comparable ;
{
int distance;
Point ( char name,
int x,
int y
) {
this .name = name + " " + x + " " + y;
this .distance = ( x * x) + ( y * y) ;
}
@Override
public int compareTo
( Object t
) {
if ( this .distance > second_Point.distance )
return 1 ;
else
return - 1 ;
}
@Override
{
return this .name ;
}
}
class Main
{
public static void main
( String [ ] args
) {
Scanner input
= new Scanner
( System .
in ) ; int t = input.nextInt ( ) ;
for ( int i = 0 ; i < t; i++ )
{
int n = input.nextInt ( ) ;
input.nextLine ( ) ;
for ( int j = 0 ; j < n; j++ )
{
char name = input.next ( ) .charAt ( 0 ) ;
int x = input.nextInt ( ) ;
int y = input.nextInt ( ) ;
points
[ j
] = new Point ( name, x, y
) ; }
for ( Point point
: points
) {
}
}
String enter
= input.
nextLine ( ) ; input.nextLine ( ) ;
input.close ( ) ;
}
}
aW1wb3J0IGphdmEudXRpbC5TY2FubmVyOwppbXBvcnQgamF2YS51dGlsLkFycmF5czsKaW1wb3J0IGphdmEubGFuZy5Db21wYXJhYmxlOwogCmNsYXNzIFBvaW50IGltcGxlbWVudHMgQ29tcGFyYWJsZQp7CiAgICBTdHJpbmcgbmFtZTsKICAgIGludCBkaXN0YW5jZTsKIAogICAgUG9pbnQoY2hhciBuYW1lLCBpbnQgeCwgaW50IHkpCiAgICB7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZSArICIgIiArIHggKyAiICIgKyB5OwogICAgICAgIHRoaXMuZGlzdGFuY2UgPSAoeCAqIHgpICsgKHkgKiB5KTsKICAgIH0KIAogICAgQE92ZXJyaWRlCiAgICBwdWJsaWMgaW50IGNvbXBhcmVUbyhPYmplY3QgdCkKICAgIHsKICAgICAgICBQb2ludCBzZWNvbmRfUG9pbnQgPSAoUG9pbnQpIHQ7CiAgICAgICAgaWYodGhpcy5kaXN0YW5jZSA+IHNlY29uZF9Qb2ludC5kaXN0YW5jZSkKICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgZWxzZQogICAgICAgICAgICByZXR1cm4gLTE7CiAgICB9CiAKICAgIEBPdmVycmlkZQogICAgcHVibGljIFN0cmluZyB0b1N0cmluZygpCiAgICB7CiAgICAgICAgcmV0dXJuIHRoaXMubmFtZTsKICAgIH0KfQogCmNsYXNzIE1haW4KewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgCiAgICB7CiAgICAgICAgU2Nhbm5lciBpbnB1dCA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IHQgPSBpbnB1dC5uZXh0SW50KCk7CiAgICAgICAgZm9yKGludCBpID0gMDsgaSA8IHQ7IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIGludCBuID0gaW5wdXQubmV4dEludCgpOwogICAgICAgICAgICBpbnB1dC5uZXh0TGluZSgpOwogICAgICAgICAgICBQb2ludFtdIHBvaW50cyA9IG5ldyBQb2ludFtuXTsKICAgICAgICAgICAgZm9yKGludCBqID0gMDsgaiA8IG47IGorKykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgY2hhciBuYW1lID0gaW5wdXQubmV4dCgpLmNoYXJBdCgwKTsKICAgICAgICAgICAgICAgIGludCB4ID0gaW5wdXQubmV4dEludCgpOwogICAgICAgICAgICAgICAgaW50IHkgPSBpbnB1dC5uZXh0SW50KCk7CiAgICAgICAgICAgICAgICBwb2ludHNbal0gPSBuZXcgUG9pbnQobmFtZSwgeCwgeSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgQXJyYXlzLnNvcnQocG9pbnRzKTsKICAgICAgICAgICAgZm9yKFBvaW50IHBvaW50IDogcG9pbnRzKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4ocG9pbnQpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIFN0cmluZyBlbnRlciA9IGlucHV0Lm5leHRMaW5lKCk7CiAgICAgICAgaW5wdXQubmV4dExpbmUoKTsKICAgICAgICBpbnB1dC5jbG9zZSgpOwogICAgfQp9