#include <bits/stdc++.h>
using namespace std;
const int N = 1e5 + 5;
char a[N];
unsigned f[2][N];
int n, i, j, least, most, cur, pre;
void File() {
  freopen("314E.in", "r", stdin);
  freopen("314E.out", "w", stdout);
}
int main() {
  scanf("%d%s", &n, a + 1);
  f[0][0] = 1;
  for (i = 1; i <= n; i++) {
    cur = i & 1;
    pre = cur ^ 1;
    least = cur ? 1 : 2;
    most = min(n - i, i);
    if (a[i] == '?') {
      f[cur][0] = f[pre][1];
      for (j = least; j <= most; j += 2)
        f[cur][j] = f[pre][j - 1] * 25 + f[pre][j + 1];
    } else {
      f[cur][0] = 0;
      for (j = least; j <= most; j += 2) f[cur][j] = f[pre][j - 1];
    }
  }
  printf("%u\n", f[n & 1][0]);
  return 0;
}
