import std; const ulong MOD = 998244353; void main(){ auto input = readln.chomp.split.to!(int[]); int h = input[0]; int w = input[1]; int k = input[2]; string[] s; for(auto i = 0; i < h; i++){ s ~= readln.chomp; } auto dp = new ulong[][][](h, w, k); dp[0][0][0] = 1; for(auto i = 0; i < h; i++){ for(auto j = 0; j < w; j++){ for(auto d = 0; d < k; d++){ dp[i][j][d] %= MOD; if(i < h - 1){ switch(s[i + 1][j]){ case '.': dp[i + 1][j][d] += dp[i][j][d]; break; case 'o': if(d < k - 1){ dp[i + 1][j][d + 1] += dp[i][j][d]; } break; default: break; } } if(j < w - 1){ switch(s[i][j + 1]){ case '.': dp[i][j + 1][d] += dp[i][j][d]; break; case 'o': if(d < k - 1){ dp[i][j + 1][d + 1] += dp[i][j][d]; } break; default: break; } } } } } writeln(dp[$ - 1][$ - 1].sum % MOD); }