#include <bits/stdc++.h>
#define ll long long int
#define ld double
#define M 100010
using namespace std;
ll n;ld ans=99999999999999999LL,k;
pair<ld,ld> line[M];
ld f(ld t) {
ld tmp=0,tmp2=99999999999999999LL;
for (int i=0;i<n;i++) {
tmp=max(tmp,line[i].first*t+line[i].second);
tmp2=min(tmp2,line[i].first*t+line[i].second);
}
return (tmp-tmp2);
}
int main() {
ios::sync_with_stdio(false);cin.tie(0);
cin>>n>>k;
for (int i=0;i<n;i++) cin>>line[i].first>>line[i].second;
ld L=0.0,R=k,lp=100;
while (lp--) {
ld mid1 = L+(R-L)/3;
ld mid2 = R-(R-L)/3;
ld q=f(mid1),w=f(mid2);
ans=min(ans,min(q,w));
if (q<w) R=mid2; else L=mid1;
}
cout<<fixed<<setprecision(6)<<ans<<endl;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nIGludAojZGVmaW5lIGxkIGRvdWJsZQojZGVmaW5lIE0gMTAwMDEwCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmxsIG47bGQgYW5zPTk5OTk5OTk5OTk5OTk5OTk5TEwsazsKcGFpcjxsZCxsZD4gbGluZVtNXTsKbGQgZihsZCB0KSB7CglsZCB0bXA9MCx0bXAyPTk5OTk5OTk5OTk5OTk5OTk5TEw7Cglmb3IgKGludCBpPTA7aTxuO2krKykgewoJCXRtcD1tYXgodG1wLGxpbmVbaV0uZmlyc3QqdCtsaW5lW2ldLnNlY29uZCk7CgkJdG1wMj1taW4odG1wMixsaW5lW2ldLmZpcnN0KnQrbGluZVtpXS5zZWNvbmQpOwoJfQoJcmV0dXJuICh0bXAtdG1wMik7Cn0KaW50IG1haW4oKSB7Cglpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7Y2luLnRpZSgwKTsKCWNpbj4+bj4+azsKCWZvciAoaW50IGk9MDtpPG47aSsrKSBjaW4+PmxpbmVbaV0uZmlyc3Q+PmxpbmVbaV0uc2Vjb25kOwoJbGQgTD0wLjAsUj1rLGxwPTEwMDsKCXdoaWxlIChscC0tKSB7CgkJbGQgbWlkMSA9IEwrKFItTCkvMzsKCQlsZCBtaWQyID0gUi0oUi1MKS8zOwoJCWxkIHE9ZihtaWQxKSx3PWYobWlkMik7CgkJYW5zPW1pbihhbnMsbWluKHEsdykpOwoJCWlmIChxPHcpIFI9bWlkMjsgZWxzZSBMPW1pZDE7Cgl9Cgljb3V0PDxmaXhlZDw8c2V0cHJlY2lzaW9uKDYpPDxhbnM8PGVuZGw7Cn0gIA==