#include <stdio.h>
#include <stdlib.h>

struct frilenser {
    int a;
    float p;
    double vrednost;
};

int cmp(const void *a, const void *b) {
    struct frilenser *f1 = (struct frilenser *) a;
    struct frilenser *f2 = (struct frilenser *) b;

    return (f1->vrednost < f2->vrednost) ? 1 : 0;
}


int main() {
    int n;
    scanf("%d", &n);

    struct frilenser *f = malloc(n * (sizeof *f));

    for (int i = 0; i < n; ++i) {
        scanf("%d%f", &f[i].a, &f[i].p);
        f[i].vrednost = f[i].a * 0.01 * f[i].p;
    }

    qsort(f, n, sizeof(*f), cmp);

    double max = f[0].vrednost;
    double tren = max;

    for (int i = 0; i < n-1; ++i) {
        tren = f[i + 1].vrednost + tren * (f[i + 1].p / f[i].p);
        if (tren > max) {
            max = tren;
        }
    }

    printf("%lf", max);

    return 0;
}