#include<iostream>
#include<algorithm>
using namespace std;
typedef struct Value{
int v,w; //v是价值 w是重量
}Value;
bool cmp(Value a,Value b) //按物品的价值从大到小排序
{
return a.v>b.v||(a.v==b.w && a.w>b.w);
}
int main()
{
int n,m,s,i,V;
Value a[10];
cin>>n;
while(n--)
{
V=0;
cin>>s>>m;
for(i=0;i<s;i++)
cin>>a[i].v>>a[i].w;
sort(a,a+s,cmp);
// for(i=0;i<s;i++)
// cout<<a[i].v<<" "<<a[i].w<<endl;
for(i=0;i<s && m!=0;i++)
{
m-=a[i].w;
if(m>=0)
V+=a[i].v * a[i].w;
else
{
V+=a[i].v * (a[i].w+m);
break;
}
}
cout<<V<<endl;
}
return 0;
}