import itertools N = int(input()) ALL = [] MIPCBE = [0]*6 for _ in range(N): L = list(map(int, input().split())) ALL.append(L) for i in range(6): MIPCBE[i] = max(MIPCBE[i],L[i]) ans = 0 for l in list(itertools.combinations(range(6), 3)): OTHER = list(range(6)) for i in l: OTHER.remove(i) v = 1 for o in OTHER: v *= MIPCBE[o] v2 = 1 for mipcbe in ALL: temp=1 for i in l: temp*=mipcbe[i] v2 = max(temp,v2) ans = max(ans,v*v2) for l in list(itertools.combinations(range(6), 4)): OTHER = list(range(6)) for i in l: OTHER.remove(i) v = 1 for o in OTHER: v *= MIPCBE[o] for i in range(1,4): l1 = [0,i] l2 = [] for j in range(1,4): if j not in l1: l2.append(j) ll1 = [l[l1[0]],l[l1[1]]] ll2 = [l[l2[0]],l[l2[1]]] v2 = 1 for mipcbe in ALL: temp=1 for i in ll1: temp*=mipcbe[i] v2 = max(temp,v2) v3 = 1 for mipcbe in ALL: temp=1 for i in ll2: temp*=mipcbe[i] v3 = max(temp,v3) ans = max(ans,v*v2*v3) print(ans)