#include<stdio.h>
FILE*f=fopen("multimi2.in","r");
FILE*g=fopen("multimi2.out","w");
long n;
void solve(long p, long k)
{
long s,i,x=0,nr1=0,nr2=0,y=0,z=0,ok=3,pp=0;
switch(p)
{
case 1: fprintf(g,"0\n"); ok=2; break;
case 2: fprintf(g,"1\n"); y=1; ok=3; nr1++; break;
case 3: fprintf(g,"1\n"); x=2;nr1++;ok=3; nr2++; x=1; y=2; break;
case 4: fprintf(g,"0\n"); x=3; y=1;pp=1; z=2; ok=4; nr1+=2; nr2++; break;
}
fprintf(g,"%ld\n",nr1+(k-p+1)/2);
if(y)fprintf(g,"%ld ",y);
if(z) fprintf(g,"%ld ",z);
for(i=p;i<=k/2+pp;i=i+2)
fprintf(g,"%ld ",i);
for(i=k/2+ok;i<=k;i=i+2)
fprintf(g,"%ld ",i);
fprintf(g,"\n%ld\n",nr2+(k-p+1)/2);
if(x) fprintf(g,"%ld ",x);
for(i=p+1;i<=(k+p)/2;i=i+2)
fprintf(g,"%ld ",i);
for(i=(k+p)/2+1;i<=k;i=i+2)
fprintf(g,"%ld ",i);
}
int main()
{
fscanf(f,"%ld",&n);
switch(n%4)
{
case 0: solve(1,n); break;
case 1: solve(2,n); break;
case 2: solve(3,n); break;
case 3: solve(4,n); break;
}
return 0;
}