#include<stdio.h>
int n;
int a[50],b[25],c[25];
void dfs(int j)
{ int i;
if(j==n&&a[c[n]+1]==1)
{
for(i=1;i<=n;i++)
{
if(i==1)printf("%d",c[i]);
else printf(" %d",c[i]);
}
printf("\n");
}
for(i=2;i<=n;i++)//将剩下的未选的数历遍查找符合条件的,都查找过了就会结束
{
if(b[i]!=0&&a[c[j]+i]==1)
{
c[j+1]=i;
b[i]=0;
dfs(j+1);
b[i]=i;
}
}
}
int main()
{
a[1]=a[3]=a[5]=a[7]=a[11]=a[13]=a[17]=a[19]=a[23]=a[29]=a[31]=a[33]=a[37]=a[39]=1;
int k=0,i;
for(i=1;i<20;i++)
b[i]=i;
c[1]=1;
while(scanf("%d",&n)!=EOF)
{
k++;
printf("Case %d:\n",k);
dfs(1);
printf("\n");
}
}