var n,i,k,t:longint;
    a,b,c:array[1..100] of integer;


procedure find(g:integer);
   var i,j,j2,sum:longint;

   begin
     if g>n then begin for i:=1 to n-1 do write(a[i],' '); writeln(a[n]); exit;end;

     for i:=2 to n do
       begin
         t:=0;
         for j:=1 to g-1 do
            if i=a[j] then begin t:=1;break;end;

         if t=0 then
            begin
            if g<n then sum:=a[g]+i else sum:=a[g]+1;
             for j2:=2 to sum div 2 do
                if sum mod j2 =0 then  begin t:=1;break;end;
            end;

         if t=0 then begin a[g+1]:=i;find(g+1);end;
       end;
    end;


begin
   k:=0;
  while not eof do
    begin
      inc(k);
      writeln('Case ',k,':');
      readln(n);
      fillchar(a,sizeof(a),0);
      a[1]:=1;
      find(1);
      writeln;
    end;
end.


/**************************************************************
	Problem: 2128
	User: admin
	Language: Pascal
	Result: Wrong Answer
****************************************************************/