n = int(input()) mip = [list(map(int, input().split())) for _ in range(n)] ans = 0 P = [0] * (1 << 6) for bit in range(1 << 6): lst = [] for i in range(6): if bit >> i & 1: lst.append(i) for i in range(n): prod = 1 for j in lst: prod *= mip[i][j] P[bit] = max(P[bit], prod) max_ = (1 << 6) - 1 for bit1 in range(1 << 6): for bit2 in range(1 << 6): if bit1 & bit2 != 0: continue for bit3 in range(1 << 6): if (bit1 | bit2) & bit3 != 0: continue bit4 = max_ ^ (bit1 | bit2 | bit3) ans = max(ans, P[bit1] * P[bit2] * P[bit3] * P[bit4]) print(ans)