#include<stdio.h> int v[105],time[105],f[105][1005]; int max(int x,int y) { return x>y?x:y; } int main() { int t,i,j,k; scanf("%d",&t); while(t--) { int n,m,l; scanf("%d%d%d",&n,&m,&l); for(i=1;i<=n;i++) { scanf("%d%d",&time[i],&v[i]); } for(i=0;i<=m;i++) { for(j=0;j<=l;j++) { if(i==0) f[i][j]=0; else f[i][j]=-9999999; } } for(i=1;i<=n;i++) { for(j=m;j>=1;j--) { for(k=l;k>=time[i];k--) { f[j][k]=max(f[j][k],f[j-1][k-time[i]]+v[i]); } } } if(f[m][l]<0) f[m][l]=0; printf("%d\n",f[m][l]); } return 0; }