#include<iostream>
#include<cmath>
#include<cstring>
using namespace std;
int n,a[20];
bool vis[20];
int ii;
bool p(int n){
int i;
if(n==2) return true;
if(n<2) return false;
for(int i=2;i<=sqrt(n);i++)
if(n%i==0)
return false;
return true;
}
void dfs(int a,int s){
if(s==n){
bool pd=0;
for(int i=1;i<n;i++){
if(!p(a[i]+a[i+1])){
pd=1;
break;
}
}
if(pd==0&&p(a[1]+a[n])){
for(int i=1;i<=n;i++) cout<<a[i]<<" ";
cout<<endl;
}
}
if(a%2==0){
for(int i=1;i<=n;i+=2){
if(vis[i]==0){
vis[i]=1;
a[s+1]=i;
dfs(i,s+1);
vis[i]=0;
}
}
}
else{
for(int i=2;i<=n;i+=2){
if(vis[i]==0){
vis[i]=1;
a[s+1]=i;
dfs(i,s+1);
vis[i]=0;
}
}
}
}
int main(){
while(scanf("%d",&n)!='EOF'){
ii++;
cout<<"Case "<<ii<<":"<<endl;
dfs(0,0);
}
return 0;
}