#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int n;
const int maxn = 600005;
char p[maxn],s[2*maxn];
int len[2*maxn];
int init()
{
for(int i=1,j=0;i<=2*n;++j,i+=2)
{
s[i]='#';
s[i+1] = p[j];
}
s[0] = '$';
s[2*n+1]='#';
s[2*n+2]='@';
s[2*n+3]='\n';
return 2*n+1;
}
void manacher(int length)
{
int mx = 0;
int pp = 0;
for(int i=1;i<=length;++i)
{
if(mx>i)len[i]=min(mx-i,len[2*pp-i]);
else len[i] = 1;
while(s[i-len[i]]==s[i+len[i]])len[i]++;
if(len[i]+i>mx)mx=len[i]+i,pp=i;
}
}
void solve()
{
int m = init();
memset(len,0,sizeof(len));
manacher(m);
ll ans1 = 0;
ll ans2 = 0;
ll ans3 = 0;
for(int i=1;i<=m;++i)
{
if(len[i]==1)continue;
else if(len[i]==2)
{
if(s[i]=='k') ++ans1;
else if(s[i]=='f') ++ans2;
else if(s[i]=='c') ++ans3;
}
else if(len[i]>2)
{
for(int j=i;j<i+len[i];++j)
{
if(s[j]=='k') ++ans1;
else if(s[j]=='f') ++ans2;
else if(s[j]=='c') ++ans3;
}
}
}
cout<<ans1<<" "<<ans2<<" "<<ans3<<endl;
}
ll func()
{
int m = init();
memset(len,0,sizeof(len));
manacher(m);
ll ans = 0;
for(int i=1;i<=m;++i)
ans += len[i]/2;
return ans;
}
int maxstring()
{
int m = init();
memset(len,0,sizeof(len));
manacher(m);
int maxlen = -1;
for(int i=1;i<=m;++i)
maxlen = max(maxlen,len[i]);
return maxlen-1;
}
int main()
{
int n;
scanf("%d",&n);
return 0;
}