using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Takmicenje3_zad2
{
    class Program
    {
        static void sortMetodRazmene(ref double[] zarada, ref double[] porez, ref int n)
        {
            int i, j;
            for (i = 0; i < n - 1; i++)
                for (j = i + 1; j < n; j++)
                    if (porez[i] > porez[j])
                    {
                        razmeni(ref zarada[i], ref zarada[j]);
                        razmeni(ref porez[i], ref porez[j]);
                    }
        }

        static void razmeni(ref double x, ref double y)
        {
            double p = x;
            x = y;
            y = p;
        }

        static void Main(string[] args)
        {
            int n, i;
            double dosadasnjaZarada = 0, max = 0, promenjiva;
            n = int.Parse(Console.ReadLine());
            double[] zarada = new double[n];
            double[] porez = new double[n];
            for (i = 0; i < n; i++)
            {
                string[] unos = Console.ReadLine().Split();
                zarada[i] = double.Parse(unos[0]);
                porez[i] = double.Parse(unos[1]);
            }
            sortMetodRazmene(ref zarada, ref porez, ref n);
            for (i = n - 1; i >= 0; i--)
            {
                dosadasnjaZarada += zarada[i];
                promenjiva = dosadasnjaZarada * porez[i];
                if (promenjiva > max)
                {
                    max = promenjiva;
                }
            }
            Console.WriteLine("{0}", max / 100);
            Console.ReadLine();
        }
    }
}