#include<bits/stdc++.h>
using namespace std;
int n,m,k;
pair<int,int>a[200005];
set<pair<int,int>>dp[15];
int main() {
int t;
scanf("%d",&t);
while(t--) {
scanf("%d%d%d",&n,&m,&k);
for(int i=0; i<=k; i++) {
dp[i].clear();
}
for(int i=1; i<=m; i++) {
scanf("%d%d",&a[i].second,&a[i].first);
}
sort(a+1,a+1+m);
dp[0].emplace(n+1,0);
for(int i=m; i>=1; i--) {
for(int j=k; j>=0; j--) {
int mx=-1;
while(!dp[j].empty()&&a[i].second<prev(dp[j].end())->first) {
auto it=prev(dp[j].end());
mx=max(mx,max(it->first-a[i].first-1,0)+it->second);
dp[j+1].insert(*it),dp[j].erase(it);
}
if(mx>=0)dp[j].emplace(a[i].second,mx);
}
}
int ans=0;
for(pair<int,int>x:dp[k]) {
ans=max(ans,x.first+x.second-1);
}
printf("%d\n",ans);
}
return 0;
}