N,M = map(int,input().split())
choose = []
s = 0
for _ in range(N):
arr = list(map(int,input().split()))
mx = max(arr)#選擇每一個裡面最大的
choose.append(mx)
s+=mx
print(s)
# print(S)
dis = [str(x) for x in choose if s % x == 0]
#把x取出來利判斷可不可以被s整除可以的話加入dis
print(" ".join(dis) if dis else -1)
#join用途把串列的東西利用 ""來分隔開來
# if dis 同於 if len(dis) > 0
解法利用輸入串列選出最大後,在用if/elif/else判斷可不可以整除,以及是否有餘數