#include <iostream>#include <ostream>#include <vector>using namespace std;void f(vector<vector<int>>& vv,int x,int y,int mx,int my,int &count,vector<vector<int>>& tt){if(x<0||y<0||x>mx||y>my){return ;}if(vv[x][y]==0){return;}if( tt[x][y]==1){return ;}if(tt[x][y]==0){tt[x][y]=1;count++;}// cout<<x<<":"<<y<<" "<<"vv[x][y]"<<vv[x][y]<<endl;for(int i=1;i<=vv[x][y];i++){f(vv,x+i,y,mx,my,count,tt);f(vv,x,y+i,mx,my,count,tt);f(vv,x-i,y,mx,my,count,tt);f(vv,x,y-i,mx,my,count,tt);}}int main() {int n;cin>>n;while(n--){int k;cin>>k;vector<vector<int>> v(k,vector<int>(3,0));int mx=0;int my=0;for(int i=0;i<k;i++){int x,y;int value;cin>>x>>y>>value;if(x>mx)mx=x;if(y>my)my=y;v[i][0]=x;v[i][1]=y;v[i][2]=value;}for(int i=0;i<k;i++){v[i].resize(0);}// cout<<"mx"<<mx<<"my"<<my<<endl;vector<vector<int>> vv(mx+1,vector<int>(my+1,0));vector<vector<int>> tt(mx+1,vector<int>(my+1,0));for(int i=0;i<k;i++){vv[v[i][0]][v[i][1]]=v[i][2];}// for(int i=0;i<mx+1;i++)// {// for(int j=0;j<my+1;j++)// {// cout<<vv[i][j]<<" ";// }// cout<<endl;// }// cout<<endl;int r=0;// cout<<"r"<<r<<endl;for(int i=0;i<mx+1;i++){for(int j=0;j<my+1;j++){int count=0;f(vv,i,j,mx,my,count,tt);if(count>r)r=count;cout<<"r"<<r<<endl;}}cout<<r<<endl;}}