/*
给出一个序列,问需要最少几个LIS
统计数字出现次数最大值即可
 */
#include <cstdio>
#include <map>
using std::map;

int n,x,ans;
map<int,int>mp;

int main(int argc, char const *argv[])
{
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d",&x);
        mp[x]++;
        if(ans<mp[x]) ans=mp[x];
    }
    printf("%d\n", ans);
    return 0;
}
/*
打表发现是斐波那契
 */
#include <cstdio>
long long a[2];
int main(int argc, char const *argv[])
{
    int n;
    a[0]=a[1]=1;
    scanf("%d",&n);
    for(int i=1;i<=n;++i)
    {
        if(i%2==1) a[0]+=a[1];
        else a[1]+=a[0];
    }
    printf("%lld\n", a[1-(n%2)]);
    return 0;
}