from copy import deepcopy

def sumBoxes(listOfBoxes, listOfIndexes):
    suma = 0
    for counter in listOfIndexes:
        suma += int(listOfBoxes[counter][0]) + int(listOfBoxes[counter][1])
        print("This a sum:", sum)
    return suma

def verifySum(lista):
    pass

def bktrCaller(element, lista, limit, bigList):
    while(element< limit*2):
        bktrString(limit,lista, element, bigList)
        lista = []
        element = element + 1
        
        
def bktrString(limit, lista, element, bigList):       
    if element > limit*2 - 1:
        return "Error"
    if(len(lista) < limit):
        if element in lista:
            bktrString(limit, lista, element + 1, bigList)
        else:
            lista.append(element)
            bktrString(limit, lista, element, bigList)
    
    else:
        bigList.append(deepcopy(lista))
        lista.pop() 
        bktrString(limit,lista, element + 1, bigList) 
        
#list = 1234352463
#match = 2134 (limita)

newInput = input()
newInput = newInput.split(" ")
numberOfBoxes = int(newInput[0])
numberOfMarbles = int(newInput[1])
listOfBoxes = []
maxList = []
listOfIndexes = []
for counter in range(0,numberOfBoxes):
    newInput = input()
    newInput = newInput.split(" ")
    listOfBoxes.append(newInput)

lista = []
limit = 4
bigList = []
bktrCaller(0, lista, numberOfBoxes / 2, bigList)
maxWhiteMarbles = 0
maxBlackMarbles = 0
maxMarb = 0
for counter in bigList:
    tempWhiteMarbles = 0
    tempBlackMarbles = 0
    for counter2 in range(0,numberOfBoxes):
        if(counter2 in counter):
            tempWhiteMarbles += int(listOfBoxes[counter2][0])
        else:
            tempBlackMarbles += int(listOfBoxes[counter2][1])
    if tempWhiteMarbles + tempBlackMarbles > maxMarb:
        maxMarb = tempWhiteMarbles + tempBlackMarbles
        maxWhiteMarbles = tempWhiteMarbles
        maxBlackMarbles = tempBlackMarbles    

print(str(maxWhiteMarbles)+ " "+ str(maxBlackMarbles))