#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int n, nq;
char a[maxn];
unsigned int dp[maxn];
int main() {
  scanf("%d %s", &n, a + 1);
  nq = 0;
  for (int i = 1; i <= n; i++)
    if (a[i] == '?') nq++;
  if (n % 2 || n / 2 > nq) {
    puts("0");
    return 0;
  }
  for (int i = 0; i <= n; i++) dp[i] = 0ll;
  dp[0] = 1ll;
  for (int i = 1; i <= n; i++) {
    int upbd = i / 2, lobd = max(0, i - n / 2);
    if (a[i] == '?') {
      for (int j = upbd; j >= lobd; j--) dp[j] += dp[j - 1];
    }
  }
  unsigned int ans = dp[n / 2];
  for (int i = 1; i <= nq - n / 2; i++) ans *= 25;
  cout << ans << endl;
  return 0;
}
