#include<bits/stdc++.h>
using namespace std;
const int MAXN = 100 + 10;
struct Node{
int m;
int v;
int p;
}Money[MAXN];
bool cmp(Node a,Node b){
return a.p > b.p;
}
int n,t;
double ans = 0.00;
int a[MAXN];
int main(){
scanf("%d%d",&n,&t);
for(int i = 1;i <= n;i++){
scanf("%d%d",&Money[i].m,&Money[i].v);
Money[i].p = Money[i].v / Money[i].m;
}
sort(Money + 1,Money + n + 1,cmp);
for(int i = 1;i <= n;++i){
if(Money[i].m <= t){
t -= Money[i].m;
ans += Money[i].v;
}
else{
ans += t * Money[i].p; break;
}
}
printf("%.2f",ans);
return 0;
}