#include #include using namespace std; using mint = atcoder::modint998244353; int main() { std::ios::sync_with_stdio(false); std::cin.tie(nullptr); int N; string S; cin >> N >> S; vector> dp(3, vector(N + 1)); dp[2][0] = 1; for(int i = 0; i < N; i++) { if (S[i] == '.') { dp[0][i + 1] += dp[0][i] + dp[2][i]; dp[1][i + 1] += dp[1][i] + dp[2][i] + dp[0][i]; dp[2][i + 1] += dp[0][i] + dp[1][i] + dp[2][i]; } else { if(S[i] == 'L') dp[0][i + 1] += dp[0][i] + dp[2][i]; if(S[i] == 'R') dp[1][i + 1] += dp[1][i] + dp[2][i] + dp[0][i]; if(S[i] == 'U') dp[2][i + 1] += dp[0][i] + dp[1][i] + dp[2][i]; } } mint ans = dp[0][N] + dp[1][N] + dp[2][N]; cout << ans.val() << endl; }