# 2021. 03. 10. 수
# 11653
# 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.

n = int(input())

while n != 1:   # n이 1이 아니면 계속 반복 -> n이 1이 되면 더 이상 소인수분해x 이므로 반복문 멈춤
    for i in range(2, n + 1):
        if(n % i == 0):
            print(i)    # n을 i로 나누어 떨어지면 i가 소인수 -> i 출력
            n = n // i  # n에 i로 나눈 몫을 다시 대입
            break   # n이 1이 된다면 break
2bf32688e0e349dbff9b58f17f17b3732cbcd5ac
<mask token>

<mask token>
while n != 1:
    for i in range(2, n + 1):
        if n % i == 0:
            print(i)
            n = n // i
            break

n = int(input())
while n != 1:
    for i in range(2, n + 1):
        if n % i == 0:
            print(i)
            n = n // i
            break

# 2021. 03. 10. 수
# 11653
# 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오.

n = int(input())

while n != 1:   # n이 1이 아니면 계속 반복 -> n이 1이 되면 더 이상 소인수분해x 이므로 반복문 멈춤
    for i in range(2, n + 1):
        if(n % i == 0):
            print(i)    # n을 i로 나누어 떨어지면 i가 소인수 -> i 출력
            n = n // i  # n에 i로 나눈 몫을 다시 대입
            break   # n이 1이 된다면 break