#include <bits/stdc++.h>
using namespace std;
#define ll __int128_t
#define SIZE 100001
inline ll read(){
ll x=0,f=1;char ch=getchar();
while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
while (ch>='0'&&ch<='9'){x=(x*10+ch-48);ch=getchar();}
return x*f;
}
inline void write(ll x) {
ll pointer=0;
char c[41]={};
if(!x){putchar('0');putchar('\n');return;}
if(x < 0){putchar('-');x=-x;}
while(x){c[++pointer]=x%10+48;x/=10;}
while(pointer) putchar(c[pointer --]);
putchar('\n');
}
struct data{
ll a,b;
};
bool cmp(data f1,data f2){
return f1.a*f1.b<f2.a*f2.b;
}
ll n,sum,res;
data f[SIZE];
int main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
n=read();
for(ll i=0;i<=n;i++)
f[i].a=read(),f[i].b=read();
sort(f+1,f+n+1,cmp);
for(ll i=1;i<=n;i++){
f[i].a*=f[i-1].a;
res=max(res,f[i-1].a/f[i].b);
}
write(res);
return 0;
}