#include <iostream>
#include <algorithm>
using namespace std;

typedef unsigned long long broj;

struct frilenser
{
    broj dolari;
    broj porez;
};

bool manji(const frilenser & a, const frilenser & b)
{
    return a.porez<b.porez;
}

int main()
{
    int n;
    cin>>n;
    frilenser gospodin[n];
    for(int i=0;i<n;i++)
    {
        double d;
        cin>>gospodin[i].dolari>>d;
        d=100.0*d+0.001;
        gospodin[i].porez=(broj)d;
    }
    sort(gospodin,gospodin+n,manji);
    broj max = 0;

    for(int i=0;i<n;i++)
    {
        broj porez=gospodin[i].porez;
        broj ukupno=0;

        for(int j=0;j<n&&porez<=gospodin[j].porez;j++)
            ukupno+=gospodin[j].dolari;
        
        ukupno*=porez;

        if(ukupno<max)
        {
            broj ceo=max/10000, deo=max%10000;
            cout<<ceo<<"."<<deo;
            break;
        }
        else
        {
            max=ukupno;
        }
    }

    return 0;
}