b(I):-between(1,41,I). m:-b(I),b(J),f(I,J,8),J=41,nl,fail. f(I,J,N):-J21,!,f(I,42-J,N);N>2,I>N,!,f(I-N,J-N,N-2);(I mod N=:=1;J mod N=:=1),!,write([]);write(' ').