#include <bits/stdc++.h>


using namespace std;
 
double IzracunajMax(double fl[],double porez[],int n,double neto){
	double max=neto*porez[0];
	double sum=0.0;
 	for(int i=0; i<n-1; i++){
		sum=(neto-fl[i])*porez[i+1];		 			
		if(sum>max){
			max=sum;
		}
		neto-=fl[i];
 	}
 	return max;
 }

void Razmeni(double *a,double *b){
	double t = *a;
	*a = *b;
	*b = t;

}
int Partition(double fl[],double porez[],int l,int r,int n){
	double p = porez[r];
	int i = l-1;
	for (int j = l; j <= r - 1; j++) {
        if (porez[j] < p) {
            i++;
            Razmeni(&fl[i],&fl[j]);
            Razmeni(&porez[i],&porez[j]);         
        }                    
    } 
    Razmeni(&fl[r],&fl[i+1]);
    Razmeni(&porez[r],&porez[i+1]);
    return i+1;
}
void QuickSort(double fl[],double porez[], int l, int r,int n) {
     if (l >= r) {
        return;
     }
     int p = Partition(fl,porez, l,r,n);
     QuickSort(fl,porez, l, p - 1,n);
	 QuickSort(fl,porez, p + 1, r,n);   
 }

int main(){
	ios_base::sync_with_stdio(false);
    cin.tie(nullptr); cout.tie(nullptr);
	int n;
	cin>>n;
	double fl[n];
	double porez[n];
	double neto=0;
	for(int i=0; i<n; i++){
		double temp;
		cin>>fl[i];
		cin>>temp;
		porez[i] = temp/100;
		neto+=fl[i];
	}
	QuickSort(fl,porez,0,n-1,n);
	printf("%.4f",IzracunajMax(fl,porez,n,neto));

}