농부 Jozef는 자기 땅의 직사각형 웅덩이에 물고기 연못을 만들려고 합니다. 웅덩이의 가장 낮은 지점에 펌프를 놓고 물을 채울 예정입니다. 몇몇 칸에는 과일나무가 자라고 있는데, 그는 어떤 나무도 물에 잠기지 않기를 바랍니다. 그래서 어떤 과일나무도 잠기지 않으면서 연못이 최대한 커지도록 채울 물의 양을 정하려고 합니다.
땅은 N×M개의 단위 칸으로 이루어진 격자입니다. 펌프로 물을 원하는 높이까지 채울 수 있습니다. 어떤 칸은, 펌프에서 시작해 변을 맞댄 인접한 칸들을 따라가는 경로가 있고 그 경로에 있는 모든 칸의 높이가 물 높이 이하일 때 물에 잠깁니다 (물은 변을 맞댄 칸으로만 흐르며, 모서리만 맞댄 칸으로는 흐르지 않습니다). 연못은 물에 잠긴 칸들의 집합입니다.
어떤 과일나무 칸도 물에 잠기지 않으면서 물에 잠긴 칸의 수가 최대가 되도록 물 높이를 정할 때, 연못은 얼마나 커질 수 있을까요?
첫째 줄에 두 정수 N과 M (1≤N,M≤1000), 즉 땅의 행과 열의 개수가 주어집니다.
다음 N개의 줄에는 각각 M개의 정수가 주어지며, 각 정수의 절댓값은 10000 이하입니다. 이 값들은 칸을 행 순서대로 나타냅니다. 각 수의 절댓값은 그 칸의 지형 높이입니다. 음수는 과일나무가 자라는 칸을 뜻합니다. 유일한 0은 펌프의 위치이며, 정확히 한 번만 나타나고 가장 낮은 지점에 있습니다. 물은 변을 맞댄 칸 사이로만 퍼집니다.
정수 하나를 출력합니다: 연못의 최대 넓이(물에 잠긴 칸의 수).