#include<iostream>
#include<vector>
using namespace std;
typedef long long bigint;
int main(){
long long T,N,i,j,k,xj,yj,exj,eyj;
bigint x,y,maxx,maxy,minx,miny;
vector<pair<bigint,bigint> >vec;
vector<pair<bigint,bigint> >::iterator it;
cin>>T;
for(i=0;i<T;i++){
exj=0;eyj=0;xj=0;yj=0;
cin>>N;
vec.clear();
for(j=0;j<N;j++){
cin>>x>>y;
vec.push_back(pair<bigint,bigint>(x,y));
}
it=vec.begin();
for(j=0;j<N;j++){
if(j==0){maxx=(*it).first;minx=(*it).first;maxy=(*it).second;miny=(*it).second;xj=0;yj=0;exj=0;eyj=0;}
if(maxx<=(*it).first){maxx=(*it).first;xj=j;}
if(maxy<=(*it).second){maxy=(*it).second;yj=j;}
if(minx>=(*it).first){minx=(*it).first;exj=j;}
if(miny>=(*it).second){miny=(*it).second;eyj=j;}
++it;
}
k=-1;
for(it=vec.begin();it!=vec.end();++it){
k++;
if((*it).first==maxx){if((*it).second==maxy){xj=k;yj=k;}
if((*it).second==miny){xj=k;eyj=k;}
}
else if((*it).first==minx){if((*it).second==maxy){exj=k;yj=k;}
if((*it).second==miny){exj=k;eyj=k;} }
}
int p=1;
if(yj==xj){cout<<p<<endl;
cout<<++xj<<" SW"<<endl;
continue;
}
if(yj==exj){cout<<p<<endl;
cout<<++yj<<" SE"<<endl;
continue;
}
if(eyj==xj){cout<<p<<endl;
cout<<++xj<<" NW"<<endl;
continue;
}
if(eyj==exj){cout<<p<<endl;
cout<<++exj<<" NE"<<endl;
continue;
}
if(yj==eyj){cout<<p<<endl;
cout<<++xj<<" NW"<<endl;
continue;
}
if(xj==exj){cout<<p<<endl;
cout<<++yj<<" SW"<<endl;
continue;
}
cout<<p+1<<endl;
cout<<++xj<<" NW"<<endl;
cout<<++exj<<" SE"<<endl;
}
return 0;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHZlY3Rvcj4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdHlwZWRlZiBsb25nIGxvbmcgYmlnaW50OwppbnQgbWFpbigpewpsb25nIGxvbmcgVCxOLGksaixrLHhqLHlqLGV4aixleWo7CmJpZ2ludCB4LHksbWF4eCxtYXh5LG1pbngsbWlueTsKdmVjdG9yPHBhaXI8YmlnaW50LGJpZ2ludD4gPnZlYzsKdmVjdG9yPHBhaXI8YmlnaW50LGJpZ2ludD4gPjo6aXRlcmF0b3IgaXQ7CmNpbj4+VDsKCmZvcihpPTA7aTxUO2krKyl7CmV4aj0wO2V5aj0wO3hqPTA7eWo9MDsKICAgY2luPj5OOwogICAgdmVjLmNsZWFyKCk7CiAgICBmb3Ioaj0wO2o8TjtqKyspewogICAgICAgIGNpbj4+eD4+eTsKICAgICAgICB2ZWMucHVzaF9iYWNrKHBhaXI8YmlnaW50LGJpZ2ludD4oeCx5KSk7CiAgICB9CiAgICBpdD12ZWMuYmVnaW4oKTsKICAgIGZvcihqPTA7ajxOO2orKyl7CiAgICAgICAgaWYoaj09MCl7bWF4eD0oKml0KS5maXJzdDttaW54PSgqaXQpLmZpcnN0O21heHk9KCppdCkuc2Vjb25kO21pbnk9KCppdCkuc2Vjb25kO3hqPTA7eWo9MDtleGo9MDtleWo9MDt9CiAgICAgICAgaWYobWF4eDw9KCppdCkuZmlyc3Qpe21heHg9KCppdCkuZmlyc3Q7eGo9ajt9CiAgICAgICAgaWYobWF4eTw9KCppdCkuc2Vjb25kKXttYXh5PSgqaXQpLnNlY29uZDt5aj1qO30KICAgICAgICBpZihtaW54Pj0oKml0KS5maXJzdCl7bWlueD0oKml0KS5maXJzdDtleGo9ajt9CiAgICAgICAgaWYobWlueT49KCppdCkuc2Vjb25kKXttaW55PSgqaXQpLnNlY29uZDtleWo9ajt9CiAgICArK2l0OwogICAgfQogICAgaz0tMTsKZm9yKGl0PXZlYy5iZWdpbigpO2l0IT12ZWMuZW5kKCk7KytpdCl7CmsrKzsKICAgIGlmKCgqaXQpLmZpcnN0PT1tYXh4KXtpZigoKml0KS5zZWNvbmQ9PW1heHkpe3hqPWs7eWo9azt9CiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoKCppdCkuc2Vjb25kPT1taW55KXt4aj1rO2V5aj1rO30KCgogICAgfQogICAgZWxzZSBpZigoKml0KS5maXJzdD09bWlueCl7aWYoKCppdCkuc2Vjb25kPT1tYXh5KXtleGo9azt5aj1rO30KICAgICAgICAgICAgICAgICAgICAgICAgICBpZigoKml0KS5zZWNvbmQ9PW1pbnkpe2V4aj1rO2V5aj1rO30gfQoKCn0KCgppbnQgcD0xOwogICAgaWYoeWo9PXhqKXtjb3V0PDxwPDxlbmRsOwogICAgY291dDw8Kyt4ajw8IiBTVyI8PGVuZGw7CiAgICBjb250aW51ZTsKICAgIH0KICAgIGlmKHlqPT1leGope2NvdXQ8PHA8PGVuZGw7CiAgICBjb3V0PDwrK3lqPDwiIFNFIjw8ZW5kbDsKICAgIGNvbnRpbnVlOwogICAgfQogICAgaWYoZXlqPT14ail7Y291dDw8cDw8ZW5kbDsKICAgIGNvdXQ8PCsreGo8PCIgTlciPDxlbmRsOwogICAgY29udGludWU7CiAgICB9CiAgICBpZihleWo9PWV4ail7Y291dDw8cDw8ZW5kbDsKICAgIGNvdXQ8PCsrZXhqPDwiIE5FIjw8ZW5kbDsKICAgIGNvbnRpbnVlOwogICAgfQogICAgaWYoeWo9PWV5ail7Y291dDw8cDw8ZW5kbDsKICAgIGNvdXQ8PCsreGo8PCIgTlciPDxlbmRsOwogICAgY29udGludWU7CiAgICB9CiAgICBpZih4aj09ZXhqKXtjb3V0PDxwPDxlbmRsOwogICAgY291dDw8Kyt5ajw8IiBTVyI8PGVuZGw7CiAgICBjb250aW51ZTsKICAgIH0KICAgIGNvdXQ8PHArMTw8ZW5kbDsKICAgIGNvdXQ8PCsreGo8PCIgTlciPDxlbmRsOwogICAgY291dDw8KytleGo8PCIgU0UiPDxlbmRsOwp9CnJldHVybiAwOwp9Cg==