#include <iostream>
#include <vector>
#include <unordered_set>
using namespace std;
int main () {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin>>n;
vector<int>nums(n);
for (int i = 0 ; i<n;i++) {
cin >> nums[i];
}
int left =0 , right = 0 , window_size=0;
unordered_set<int> seen;
while (right<n) {
if (seen.find(nums[right]) == seen.end() ) {
seen.insert( nums[right] );
window_size = max(window_size, right - left + 1);
right++;
}
else {
seen.erase(nums[left]);
left++;
}
}
cout <<window_size;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8dW5vcmRlcmVkX3NldD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCgoKaW50IG1haW4gKCkgewoKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUobnVsbHB0cik7CgogICAgaW50IG47CiAgICBjaW4+Pm47CgogICAgdmVjdG9yPGludD5udW1zKG4pOwoKCiAgICBmb3IgKGludCBpID0gMCA7IGk8bjtpKyspIHsKICAgIGNpbiA+PiBudW1zW2ldOwogICAgfQoKCiAgICBpbnQgbGVmdCA9MCAsIHJpZ2h0ID0gMCAgLCB3aW5kb3dfc2l6ZT0wOwoKCiAgICB1bm9yZGVyZWRfc2V0PGludD4gc2VlbjsKCiAgICB3aGlsZSAocmlnaHQ8bikgewoKICAgICAgICBpZiAoc2Vlbi5maW5kKG51bXNbcmlnaHRdKSA9PSBzZWVuLmVuZCgpICkgewogICAgICAgICAgICBzZWVuLmluc2VydCggbnVtc1tyaWdodF0gKTsKICAgICAgICAgICAgd2luZG93X3NpemUgPSBtYXgod2luZG93X3NpemUsIHJpZ2h0IC0gbGVmdCArIDEpOwogICAgICAgICAgICByaWdodCsrOwogICAgICAgIH0KCiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHNlZW4uZXJhc2UobnVtc1tsZWZ0XSk7CiAgICAgICAgICAgIGxlZnQrKzsKCiAgICAgICAgfQoKCgogICAgfQoKCiAgICAgICAgY291dCA8PHdpbmRvd19zaXplOwoKCiAgICByZXR1cm4gMDsKCgoKfQ==