#include<bits/stdc++.h>
using namespace std;
const int maxn=1e7;
int main(){
int N,T,m[maxn],v[maxn],r[maxn],cnt=0,value=0,t=0;
cin>>N>>T;
for(int i=0;i<N;i++){
cin>>m[i]>>v[i];
r[i]=v[i]/m[i];
}
for(int i=0;i<N;i++){
for(int j=1;j<N;j++){
if(r[j]>r[j-1]){
swap(m[j],m[j-1]);
swap(v[j],v[j-1]);
swap(r[j],r[j-1]);
}
}
}
while(true){
if(cnt+m[t]>T)break;
cnt=cnt+m[t];
value=value+v[t];
t++;
}
int rem=T-cnt;
float REST=r[t]*rem;
float ans=REST+value;
cout << fixed << setprecision(2) << ans << endl;
return 0;
}