N = int(input()) perm = [i + 1 for i in range(N)] canged = [False] * N maxsq = int(N ** (1/2)) sqlist = [(i + 1) ** 2 for i in range(maxsq)] for i in range(N): for j in range(int((N / (i + 1)) ** (1 / 2)), 0, -1): if not canged[sqlist[j - 1] * (i + 1) - 1]: perm[i], perm[sqlist[j - 1] * (i + 1) - 1] = perm[sqlist[j - 1] * (i + 1) - 1], perm[i] canged[sqlist[j - 1] * (i + 1) - 1] = True break print(perm[i], end = " ") print()