한 카지노가 새로운 베팅 게임을 선보였습니다. N개의 행과 M개의 열로 이루어진 표가 주어집니다. i행 j열의 칸에는 앞면이 나올 확률이 pij인 동전이 하나 놓여 있으며, 모든 동전 던지기는 서로 독립입니다.
표의 모든 칸을 N개의 그룹으로 나누어야 합니다. 각 그룹은 모든 열에서 정확히 한 칸씩을 포함하고, 표의 각 칸은 정확히 하나의 그룹에만 속합니다(즉, 한 열의 N개 칸은 그룹마다 하나씩 배분됩니다). 어떤 그룹에서 M개의 동전이 모두 앞면이 나오면 1달러를 얻습니다.
기대 상금이 최대가 되도록 그룹을 구성했을 때, 그 최대 기대 상금을 구하세요.
입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스의 첫 줄에는 두 정수 N과 M이 주어집니다 (1≤N≤100, 1≤M≤10). 이어지는 N개의 줄에는 각각 M개의 실수가 공백으로 구분되어 주어지며, 이는 표의 값 pij입니다. 입력의 끝은 N=M=0인 줄로 표시되며, 이 줄은 처리하지 않습니다.
각 테스트 케이스마다, 해당 표에서 얻을 수 있는 최대 기대 상금을 소수점 넷째 자리까지 반올림하여 한 줄에 출력하세요.