#include<cstdio>
#include<string>
#include<iostream>
#include<algorithm>
#include<stdlib.h>
using namespace std;
const int n=1005;
struct anode
{
int j,f;
double r;//不能直接算
}node[n];
bool cmp(anode a1,anode b1)
{
return a1.r>b1.r;
}
int main()
{
int n,t;
while(scanf("%d %d",&n,&t)!=EOF)
{
if(n==-1&&t==-1)break;
for(int i=0;i<t;i++)
{
scanf("%d%d",&node[i].j,&node[i].f);
node[i].r=(double)node[i].j/node[i].f;
}
sort(node,node+t,cmp);
double sum=0;
for(int i=0;i<t;i++)
{
if(n>node[i].f)
{
sum+=node[i].j;
n-=node[i].f;
}
else
{
sum+=(node[i].r*n);
n=0;
break;
}
}
printf("%.3lf\n",sum);
}
return 0;
}