#include <stdio.h>
FILE *f,*g;
long i,n;
int main(){
f=fopen("multimi2.in","r");
g=fopen("multimi2.out","w");
fscanf(f,"%ld",&n);
if (n%4==1){
fprintf(g,"1\n");
fprintf(g,"%ld\n",(n+1)/2);
fprintf(g,"1 ");
for (i=2;i<=n;i++)
if (i%4==1||i%4==2) fprintf(g,"%ld ",i);
fprintf(g,"\n%ld\n",n/2);
for (i=2;i<=n;i++)
if (i%4==3||i%4==0) fprintf(g,"%ld ",i);
fprintf(g,"\n");
}
else
if (n%4==2){
fprintf(g,"1\n");
fprintf(g,"%ld\n",n/2);
fprintf(g,"1 ");
for (i=3;i<=n;i++)
if (i%4==1||i%4==0) fprintf(g,"%ld ",i);
fprintf(g,"\n%ld\n",n/2);
fprintf(g,"2 ");
for (i=3;i<=n;i++)
if (i%4==3||i%4==2) fprintf(g,"%ld ",i);
fprintf(g,"\n");
}
else
if (n%4==3){
fprintf(g,"0\n");
fprintf(g,"%ld\n",(n+1)/2);
fprintf(g,"1 2 ");
for (i=4;i<=n;i++)
if (i%4==1||i%4==2) fprintf(g,"%ld ",i);
fprintf(g,"\n%ld\n",n/2);
fprintf(g,"3 ");
for (i=4;i<=n;i++)
if (i%4==3||i%4==0) fprintf(g,"%ld ",i);
fprintf(g,"\n");
}
else
if (n%4==0){
fprintf(g,"0\n");
fprintf(g,"%ld\n",n/2);
for (i=1;i<=n;i++)
if (i%4==3||i%4==2) fprintf(g,"%ld ",i);
fprintf(g,"\n%ld\n",n/2);
for (i=1;i<=n;i++)
if (i%4==1||i%4==0) fprintf(g,"%ld ",i);
fprintf(g,"\n");
}
fclose(f);
fclose(g);
return 0;
}