#include<bits/stdc++.h>
using namespace std;
int a[1000010];
int main(){
int t;
cin>>t;
for(int i=0;i<t;i++)cin>>a[i];
int dp[1000010],dp2[1000010];
int s=1;
dp[0]=1;
for(int i=1;i<t;i++){
if(a[i]>a[i-1])s++,dp[i]=s;
else dp[i]=1,s=1;
}
s=1;
dp2[t-1]=1;
for(int i=t-2;i>=0;i--){
if(a[i]<a[i+1])s++,dp2[i]=s;
else dp2[i]=1,s=1;
}
int ax=0;
for(int i=0;i<t;i++){
int mm;
if(i>1&&i<t-1&&a[i-1]<a[i+1]-1)mm=dp[i-1]+dp2[i+1]+1;
else {
mm=max(dp[i],dp2[i])+1;
}
ax=max(ax,mm);
}
cout<<ax;
return 0;
}