#include<bits/stdc++.h>
#define int long long
using namespace std;
int a[500010];
int per[500010];
signed main()
{
std::ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int n,m,k;
cin>>n>>m>>k;
int i;
map<int,int>d;
int cnt=0;
for(i=1;i<=n;i++)
{
int x;
cin>>x;
if(d[x]==1)continue;
d[x]=1;
a[++cnt]=x;
}
sort(a+1,a+1+cnt);
map<int,int>id;
for(i=1;i<=cnt;i++)
{
if(a[i]-a[i-1]>1)
per[i]=per[i-1]+a[i]-a[i-1]-1;
else
per[i]=per[i-1];
if(id[per[i]]==0)
id[per[i]]=i;
}
int maxn=0;
for(i=1;i<=cnt;i++)
{
if(id[per[i]-k]==0)
{
maxn=max(maxn,i-id[per[i]]+1+k);
}
else
maxn=max(maxn,i-id[per[i]-k]+1+k);
}
if(per[cnt]<k)
{
int d=k-per[cnt];
cout<<min(n+k,min(m,n+d));
}
else
cout<<maxn;
return 0;
}