//这道题有点坑爹,注意输入为1的情况,这个也是素数环
#include <iostream>
using namespace std;
bool is_prim(int n);
void dfs(int cur);
int prim[50];
int a[25];
int num;
int n;
int main()
{
for(int i = 1; i <= 42; i++)
if(is_prim(i))
prim[i] = 1;
else
prim[i] = 0;
a[1] = 1;
int T = 0;
while(cin >> n, n)
{
T++;
num = 0;
cout << "Case " << T << ":\n";
if(n % 2 == 1 && n != 1)
{
cout << "No Answer\n";
continue;
}
dfs(2);
if(num == 0)
cout << "No Answer\n";
}
}
bool is_prim(int n)
{
if(n == 1)
return false;
for(int i = 2; i <= n / 2; i++)
{
if(n % i == 0)
return false;
}
return true;
}
void dfs(int cur)
{
if(cur > n && prim[a[n]+a[1]])
{
for(int i = 1; i <= n; i++)
{
if(i == 1)
cout << a[i];
else
cout << ' ' << a[i];
}
cout << '\n';
num++;
return ;
}
for(int i = 2; i <= n; i++)
{
int flag = 1;
for(int j = 2; j < cur; j++)
{
if(a[j] == i)
{
flag = 0;
break;
}
}
if(flag == 1 && prim[ a[cur-1]+i ])
{
a[cur] = i;
dfs(cur+1);
}
}
}