#include using namespace std; #include typedef atcoder::modint998244353 mint; int main() { int n; cin >> n; string s; cin >> s; int type = 0; if (s[1] == ')') type = 1; if (type == 0) { vector fact(n+1), factinv(n+1); fact[0] = 1; for (int i=1; i<=n; i++) fact[i] = fact[i-1] * i; factinv[n] = fact[n].inv(); for (int i=n-1; i>=0; i--) factinv[i] = factinv[i+1] * (i+1); auto cmb = [&](int n, int k) -> mint { return fact[n] * factinv[k] * factinv[n-k]; }; mint ans = 0; for (int i=0; i<=n/2; i++) { ans += cmb(n/2,i) * cmb(n/2,i); } cout << ans.val() << endl; }else{ cout << mint(2).pow(n/2).val() << endl; } }