import math
def check (num): #判断是否位素数
    b = num
    if(b == 2):
        return True
    for i in range(2,int(math.sqrt(b)) + 1):#到根号num即可,不然会超时
        if(b % i == 0):
            return False
    return True
while True:
    try:
        num = int(input())
        a = []
        b = []
        for i in range(2,int(num/2) + 1): #判断从1到num/2是否为素数
            a.append(i)
        for i in a:
            if(check(i)): #判断i
                if(check(num - i)): #判断num-i
                    num_1 = min(num - i,i)
                    num_2 = max(num - i,i)
                    b.append([num_1,num_2,num_2 - num_1]) #按照两个数的小的值,大的值,大的减小的值插入数组
                    b.sort(key = lambda ele:ele[2]) #key = lambda ele:ele[2]是按照每行的第三个值,即是第三列排序,排序后的第一行就是差值最小的两个组成素数
        print(b[0][0])
        print(b[0][1])
    except:
        break