from math import floor, sqrt

def sieve(n):
	bs = [True] * (n + 1); bs[0] = bs[1] = False
	for m in range (2, floor(sqrt(n)) + 1):
		if bs[m]:
			for p in range (m * m, n + 1, m):
				bs[p] = False
	return bs

n = 35

matr = [[' '] * n for _ in range (0, n)]
bs = sieve(n * n)
m = n * n; k = n; i = 0; j = -1; ii = 0; jj = 1
while k > 0:
	for _ in range (0, k):
		i += ii; j += jj; 
		if bs[m]:
			matr[i][j] = '*'
		m -= 1
	ii, jj = jj, -ii; k -= abs(ii)

for i in range (0, n):
	print(' '.join(matr[i]))