#include <bits/stdc++.h>
using namespace std;
#define maxx 100005
#define base 36
#define MOD 1003472009
#define x first
#define y second
long long n, a[maxx], pre[maxx], s[maxx], dp[maxx], l, r, vt[maxx];
pair<long long, long long> p[maxx];
void update(int id, int x, int y, int u, long long v)
{
if(x>u||y<u) return;
if(x==y&&x==u)
{
s[id]=v;
return;
}
int mid=(x+y)/2;
update(id*2, x, mid, u, v);
update(id*2+1, mid+1, y, u, v);
s[id]=max(s[id*2], s[id*2+1]);
}
long long get(int id, int x, int y, int u, int v)
{
if(x>v||y<u) return -1e18;
if(x>=u&&y<=v) return s[id];
int mid=(x+y)/2;
return max(get(id*2, x, mid, u, v), get(id*2+1, mid+1, y, u, v));
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
memset(s, -61, sizeof(s));
cin>>n>>l>>r;
for(int i=1; i<=n; i++)
{
int x, y;
cin>>x>>y;
a[i]=x-y;
pre[i]=pre[i-1]+a[i];
p[i]={pre[i], i};
}
sort(p, p+n+1);
for(int i=0; i<=n; i++)
{
vt[p[i].y]=i;
//cout<<p[i].x<<" "<<p[i].y<<"\n";
}
for(int i=1; i<=n; i++)
{
dp[i]=-1e18;
if(i-l>=0) update(1, 0, n, vt[i-l], dp[i-l]);
if(i-r-1>=0) update(1, 0, n, vt[i-r-1], -1e18);
int x=0, y=n, u=vt[i], v=vt[i];
while(x<=y)
{
int mid=(x+y)/2;
if(p[mid].x<=p[vt[i]].x) v=mid, x=mid+1;
else y=mid-1;
}
x=0, y=n;
while(x<=y)
{
int mid=(x+y)/2;
if(p[mid].x>=p[vt[i]].x) u=mid, y=mid-1;
else x=mid+1;
}
//cout<<u<<" "<<v<<"\n";
dp[i]=max({get(1, 0, n, u, v), get(1, 0, n, 0, u-1)+1, get(1, 0, n, v+1, n)-1});
//cout<<dp[i]<<" ";
}
cout<<dp[n];
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIG1heHggMTAwMDA1CiNkZWZpbmUgYmFzZSAzNgojZGVmaW5lIE1PRCAxMDAzNDcyMDA5CiNkZWZpbmUgeCBmaXJzdAojZGVmaW5lIHkgc2Vjb25kCmxvbmcgbG9uZyBuLCBhW21heHhdLCBwcmVbbWF4eF0sIHNbbWF4eF0sIGRwW21heHhdLCBsLCByLCB2dFttYXh4XTsKcGFpcjxsb25nIGxvbmcsIGxvbmcgbG9uZz4gcFttYXh4XTsKdm9pZCB1cGRhdGUoaW50IGlkLCBpbnQgeCwgaW50IHksIGludCB1LCBsb25nIGxvbmcgdikKewogICAgaWYoeD51fHx5PHUpIHJldHVybjsKICAgIGlmKHg9PXkmJng9PXUpCiAgICB7CiAgICAgICAgc1tpZF09djsKICAgICAgICByZXR1cm47CiAgICB9CiAgICBpbnQgbWlkPSh4K3kpLzI7CiAgICB1cGRhdGUoaWQqMiwgeCwgbWlkLCB1LCB2KTsKICAgIHVwZGF0ZShpZCoyKzEsIG1pZCsxLCB5LCB1LCB2KTsKICAgIHNbaWRdPW1heChzW2lkKjJdLCBzW2lkKjIrMV0pOwp9CmxvbmcgbG9uZyBnZXQoaW50IGlkLCBpbnQgeCwgaW50IHksIGludCB1LCBpbnQgdikKewogICAgaWYoeD52fHx5PHUpIHJldHVybiAtMWUxODsKICAgIGlmKHg+PXUmJnk8PXYpIHJldHVybiBzW2lkXTsKICAgIGludCBtaWQ9KHgreSkvMjsKICAgIHJldHVybiBtYXgoZ2V0KGlkKjIsIHgsIG1pZCwgdSwgdiksIGdldChpZCoyKzEsIG1pZCsxLCB5LCB1LCB2KSk7Cn0KaW50IG1haW4oKQp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKDApOwogICAgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CiAgICBtZW1zZXQocywgLTYxLCBzaXplb2YocykpOwogICAgY2luPj5uPj5sPj5yOwogICAgZm9yKGludCBpPTE7IGk8PW47IGkrKykKICAgIHsKICAgICAgICBpbnQgeCwgeTsKICAgICAgICBjaW4+Png+Pnk7CiAgICAgICAgYVtpXT14LXk7CiAgICAgICAgcHJlW2ldPXByZVtpLTFdK2FbaV07CiAgICAgICAgcFtpXT17cHJlW2ldLCBpfTsKICAgIH0KICAgIHNvcnQocCwgcCtuKzEpOwogICAgZm9yKGludCBpPTA7IGk8PW47IGkrKykKICAgIHsKICAgICAgICB2dFtwW2ldLnldPWk7CiAgICAgICAgLy9jb3V0PDxwW2ldLng8PCIgIjw8cFtpXS55PDwiXG4iOwogICAgfQogICAgZm9yKGludCBpPTE7IGk8PW47IGkrKykKICAgIHsKICAgICAgICBkcFtpXT0tMWUxODsKICAgICAgICBpZihpLWw+PTApIHVwZGF0ZSgxLCAwLCBuLCB2dFtpLWxdLCBkcFtpLWxdKTsKICAgICAgICBpZihpLXItMT49MCkgdXBkYXRlKDEsIDAsIG4sIHZ0W2ktci0xXSwgLTFlMTgpOwogICAgICAgIGludCB4PTAsIHk9biwgdT12dFtpXSwgdj12dFtpXTsKICAgICAgICB3aGlsZSh4PD15KQogICAgICAgIHsKICAgICAgICAgICAgaW50IG1pZD0oeCt5KS8yOwogICAgICAgICAgICBpZihwW21pZF0ueDw9cFt2dFtpXV0ueCkgdj1taWQsIHg9bWlkKzE7CiAgICAgICAgICAgIGVsc2UgeT1taWQtMTsKICAgICAgICB9CiAgICAgICAgeD0wLCB5PW47CiAgICAgICAgd2hpbGUoeDw9eSkKICAgICAgICB7CiAgICAgICAgICAgIGludCBtaWQ9KHgreSkvMjsKICAgICAgICAgICAgaWYocFttaWRdLng+PXBbdnRbaV1dLngpIHU9bWlkLCB5PW1pZC0xOwogICAgICAgICAgICBlbHNlIHg9bWlkKzE7CiAgICAgICAgfQogICAgICAgIC8vY291dDw8dTw8IiAiPDx2PDwiXG4iOwogICAgICAgIGRwW2ldPW1heCh7Z2V0KDEsIDAsIG4sIHUsIHYpLCBnZXQoMSwgMCwgbiwgMCwgdS0xKSsxLCBnZXQoMSwgMCwgbiwgdisxLCBuKS0xfSk7CiAgICAgICAgLy9jb3V0PDxkcFtpXTw8IiAiOwogICAgfQogICAgY291dDw8ZHBbbl07CiAgICByZXR1cm4gMDsKfQo=