#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
#define all(var) var.begin(),var.end()
#define f(i,l,n) for(int i=l;i<n;i++)
#define revloop(var,l,n) for(int var=l;var>=n;var--)
#define scan(var) scanf("%d",&var)
#define scan2(var,var2) scanf("%d %d",&var,&var2)
#define scanvector(var,n) f(i,0,n)scanf("%d",&var[i])
#define printvector(var,n) f(i,0,n)printf("%d ",var[i]);printf("\n")
#define scanvectorlong(var,n) f(i,0,n)scanf("%lld",&var[i])
#define printvectorlong(var,n) f(i,0,n)printf("%lld ",var[i]);printf("\n")
#define print(var) printf("%d\n",var)
#define print2(var,var2) printf("%d %d\n",var,var2)
#define mp(var,var2) make_pair(var,var2)
#define ll long long 
#define pairint pair<int,int>
#define pairlong pair<long long,long long>
#define debug(zz) cout<<#zz<<" == "<<zz<<endl;
#define M 1000000007


//bool prime[1000001]; void primearray(){memset(prime,1,sizeof(prime));prime[0] = prime[1] = false;for(int i = 2; i * i < sizeof(prime); i++) if(prime[i])for(int j = i * 2; j < sizeof(prime); j += i) prime[j] = false;}
 
bool cmp(pairint a,pairint b)
{
  if(a.ss==b.ss)return a.ff<b.ff;
  return a.ss<b.ss;
}
int main()
{
    //   primearray();
    

    int t;
    scan(t);
    while(t--)
    {
      int n;
      scan(n);
      vector< pair<int,int>  >v(n,mp(0,0));
      f(i,0,n)scanf("%d %d",&v[i].ff,&v[i].ss);

      sort(all(v),cmp);

      int count=1;
      int curr=v[0].ss;
      f(i,1,n)
      {
        if(v[i].ff>=curr)
        {
          ++count;
          curr=v[i].ss;
        }

      }
      cout<<count<<endl;

    }
    
  
}