#include <bits/stdc++.h>
using namespace std;
unsigned int dp[400010];
char str[100010];
int main() {
  int len;
  scanf("%d", &len);
  scanf("%s", str);
  len = strlen(str);
  if (len & 1) {
    printf("0\n");
    return 0;
  }
  int L = 200000;
  int R = 200000;
  int used = 0;
  dp[L] = 1;
  for (int t = 0; t < len; t++) {
    if (str[t] == '?') {
      dp[R + 1] = dp[R + 2] = 0;
      R += 2;
      for (int i = R; i >= L + 2; i--) dp[i] += dp[i - 2];
      L++;
      while (R - L >= len - t) R--;
    } else {
      used++;
      L--;
      dp[L] = 0;
    }
  }
  if (used > len / 2) {
    printf("0\n");
    return 0;
  }
  unsigned int ans = dp[L];
  while (used < len / 2) {
    used++;
    ans *= 25;
  }
  cout << ans << endl;
  return 0;
}
