#include <iostream>
#include <math.h>
using namespace std;
struct data
{
float w;
float c;
} typedef data;
int main ()
{
int t;
cin>>t;
for (int k=1; k<=t; k++)
{
int n;
cin>>n;
data arr[202];
for (int i=1; i<=n; i++)
{
cin>>arr[i].w>>arr[i].c;
}
//Khoitao:
int l[202];
for (int i=1; i<=200; i++)
{
l[i]=0;
}
//Quy Hoach:
int lenMax=1;
for (int i=1; i<=n; i++)
{
int Ans=0;
data tmp = arr[i];
for (int j=1; j<=i-1; j++)
{
if (tmp.w>arr[j].w && tmp.c<arr[j].c)
{
Ans=max (Ans, l[j]);
}
}
l[i]=Ans+1;
lenMax=max (lenMax, l[i]);
}
cout<<lenMax<<endl;
}
return 0;
}