#include <bits/stdc++.h>
using namespace std;
int m, M, n;
int num[100007];
bool ok(int t) {
  if (m == M) {
    if (t == m)
      return true;
    else if (t == m - 1 || t == m + 1)
      return true;
    else
      return false;
  } else {
    if (t == M || t == m)
      return true;
    else
      return false;
  }
}
int main() {
  while (cin >> n) {
    cin >> num[1];
    m = num[1];
    M = num[1];
    int count = 1;
    int ans = 0;
    for (int i = 2; i <= n; i++) {
      cin >> num[i];
      if (ok(num[i])) {
        if (m == M && num[i] == m - 1)
          m = num[i];
        else if (m == M && num[i] == m + 1)
          M = num[i];
        count++;
      } else {
        if (m == M) {
          M = m = num[i];
          count = 1;
        } else {
          int pos;
          if (num[i] == num[i - 1] + 1) {
            M = num[i];
            m = num[i - 1];
            for (int j = i - 1; j >= 1; j--) {
              if (num[j] != num[i - 1]) break;
              pos = j;
            }
            count = i - pos + 1;
          } else if (num[i] == num[i - 1] - 1) {
            M = num[i - 1];
            m = num[i];
            for (int j = i - 1; j >= 1; j--) {
              if (num[j] != num[i - 1]) break;
              pos = j;
            }
            count = i - pos + 1;
          } else {
            M = m = num[i];
            count = 1;
          }
        }
      }
      ans = max(ans, count);
    }
    cout << ans << endl;
  }
  return 0;
}
