#include #include #include using namespace std; int main( void ) { int H, W, K; cin >> H >> W >> K; string S[H]; for( int i = 0; i < H; i++ ) { cin >> S[i]; } vector>> dp( H + 2, vector>( W + 2, vector( K, 0 ) ) ); dp[1][1][0] = 1; for( int i = 1; i <= H; i++ ) { for( int j = 1; j <= W; j++ ) { if( S[i - 1][j - 1] == '#' ) continue; for( int k = 0; k < K; k++ ) { if( S[i - 1][j - 1] == '.' ) { dp[i][j][k] += dp[i - 1][j][k] + dp[i][j - 1][k]; } else if( S[i - 1][j - 1] == 'o' && k != 0 ) { dp[i][j][k] += dp[i - 1][j][k - 1] + dp[i][j - 1][k - 1]; } } } } atcoder::modint998244353 ans = 0; for( int k = 0; k < K; k++ ) { ans += dp[H][W][k]; } cout << ans.val() << endl; return 0; }