숫자로만 이루어진 부분 직사각형
시간 제한3초메모리 제한1024 MB
숫자만 있는 부분 직사각형마다 숫자 합의 제곱을 구해 모두 더한 값을 998244353으로 나눈 나머지를 구합니다.
문제
행 열로 이루어진 정사각형 칸이 있다. 각 칸에는 숫자 하나 또는 별표(‘*’)가 적혀 있다. 위에서 번째 행, 왼쪽에서 번째 열에 있는 칸을 로 나타낸다.
부분 직사각형은 직사각형 모양을 이루는 칸들의 집합이다. 정확히는 , 를 만족하는 정수 , , , 이 있고 일 때, 집합 를 부분 직사각형이라고 한다. 부분 직사각형의 모든 칸에 숫자가 적혀 있으면 숫자로만 이루어진 부분 직사각형이다. 숫자로만 이루어진 부분 직사각형의 점수는 그 안에 있는 숫자의 합의 제곱이다.
숫자로만 이루어진 모든 부분 직사각형의 점수 합을 으로 나눈 나머지를 구하라.
입력
입력은 다음 형식으로 주어진다.
첫 줄에는 와 가 주어진다 (, ). 이어지는 개의 줄에는 각각 개의 문자가 주어진다. 는 칸 의 문자로, 0부터 9까지의 숫자 또는 별표(‘*’)이다. 숫자로만 이루어진 부분 직사각형이 적어도 하나 있음이 보장된다.
출력
숫자로만 이루어진 모든 부분 직사각형의 점수 합을 으로 나눈 나머지를 한 줄에 출력한다.
힌트
첫 번째 테스트 케이스에는 아래 그림과 같이 숫자로만 이루어진 부분 직사각형이 5개 있다. 이들 점수의 합은 이다.

그림 F.1. 첫 번째 테스트 케이스의 숫자로만 이루어진 부분 직사각형