#include <bits/stdc++.h>
using namespace std;
const int N = 100000 + 7;
int n, Cnt;
unsigned Dp[2][N];
char S[N];
int main() {
  scanf("%d", &n);
  if (n & 1) return puts("0"), 0;
  cin >> S + 1;
  int Now = 1, Last = 0;
  Dp[Now][0] = 1;
  for (int i = (1), iLimit = (n); i <= iLimit; (++(i))) {
    swap(Now, Last);
    if (S[i] == '?') {
      for (int j = (i & 1 ? 1 : 0), jLimit = (min(i, n - i)); j <= jLimit;
           (++(j)))
        Dp[Now][j] = (j ? Dp[Last][j - 1] : 0) + Dp[Last][j + 1], (++(j));
    } else {
      for (int j = (i & 1 ?: 0), jLimit = (min(i, n - i)); j <= jLimit; (++(j)))
        Dp[Now][j] = (j ? Dp[Last][j - 1] : 0), (++(j));
      (++(Cnt));
    }
  }
  unsigned Ans = Dp[Now][0];
  for (int i = (1), iLimit = (n / 2 - Cnt); i <= iLimit; (++(i)))
    Ans = Ans * 25;
  cout << Ans;
  return 0;
}
