#include <bits/stdc++.h>
using namespace std;
char s[100000];
unsigned int dp[2][50005];
int main() {
  int n;
  scanf("%d", &n);
  scanf("%s", s);
  if (n % 2) {
    printf("0\n");
    return 0;
  }
  dp[0][0] = 1;
  for (int i = 1; i <= n; i++) {
    int now = i % 2;
    int pre = (i - 1) % 2;
    int top = (i > (n / 2) ? (n - i) : i);
    for (int j = now; j <= top; j += 2) {
      if (s[i - 1] != '?') {
        if (j) dp[now][j] = dp[pre][j - 1];
      } else {
        if (j)
          dp[now][j] = 25 * dp[pre][j - 1] + dp[pre][j + 1];
        else
          dp[now][j] = dp[pre][j + 1];
      }
    }
    for (int j = now; j <= top; j += 2) {
      if (j) dp[pre][j - 1] = 0;
      dp[pre][j + 1] = 0;
    }
  }
  printf("%u\n", dp[n % 2][0]);
  return 0;
}
