회색 사진

주어진 각 회색 값이 세 채널 평균의 내림으로 나오는 RGB 조합의 수를 모두 곱해 10007로 나눈 나머지를 구한다.

보통6조합론수학동적 계획법아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

미르코는 생일 선물로 디지털 카메라를 받은 뒤로 사진 찍기에 푹 빠졌다. 매일 컬러 사진을 수천 장 찍고, 집에 돌아오면 그 사진을 인쇄해 벽에 붙인다. 미르코의 프린터는 흑백이라서, 카메라에 저장된 사진은 인쇄하기 전에 회색 사진으로 바꿔야 한다.

카메라는 사진을 다음과 같이 저장한다. 행의 수 RR과 열의 수 SS에 이어 3×R×S3 \times R \times S개의 수가 사진 파일에 들어 있다. 각 픽셀은 빨강, 초록, 파랑의 세기를 나타내는 세 수로 적히고, 세기는 00 이상 255255 이하의 정수다. 컬러 픽셀은 세 값을 평균해서 그에 해당하는 회색 명도로 바뀐다.

회색=빨강+초록+파랑3\text{회색} = \left\lfloor \frac{\text{빨강} + \text{초록} + \text{파랑}}{3} \right\rfloor

위 식에서 x\lfloor x \rfloor는 내림을 뜻한다. 예를 들어 0.3=0\lfloor 0.3 \rfloor = 0, 1.5=1\lfloor 1.5 \rfloor = 1, 2.9=2\lfloor 2.9 \rfloor = 2이다.

어느 날 슬라브코가 미르코의 작업실에 와서 놀렸다. "네 프린터가 서로 다른 컬러 사진을 아주 많이 똑같이 인쇄한다는 걸 너는 모르는구나!" 미르코는 그 수가 얼마인지 알고 싶어졌다. 정확히 말하면, 위 식에 따라 주어진 회색 사진으로 바뀌는 컬러 사진이 몇 개인지 세려고 한다. 이 수가 매우 클 수 있으므로 1000710007로 나눈 나머지를 구한다.

입력

첫째 줄에 회색 사진의 행의 수 RR과 열의 수 SS가 주어진다. (1R10001 \le R \le 1000, 1S10001 \le S \le 1000)

다음 RR개의 줄에는 각각 정수 xr,sx_{r,s}SS개씩 주어진다. (0xr,s<2560 \le x_{r,s} < 256) 이 수는 각 픽셀의 회색 명도다.

출력

주어진 회색 사진이 되는 서로 다른 컬러 사진의 개수를 1000710007로 나눈 나머지를 출력한다.