#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
int main() {
  char s1[15], s2[15], s3[15];
  int p[15];
  scanf("%s%s", s1, s2);
  int len = strlen(s1);
  int pos = 0;
  for (int i = 0; i < len; i++) {
    if (s1[i] == '+')
      pos++;
    else
      pos--;
  }
  int cnt = 0;
  for (int i = 0; i < len; i++)
    if (s2[i] == '?') p[cnt++] = i;
  int m = 1 << cnt, ans = 0;
  for (int i = 0; i < m; i++) {
    int k = i, u = 0;
    strcpy(s3, s2);
    for (int j = 0; j < cnt; j++) {
      if (k & 1)
        s3[p[u]] = '+';
      else
        s3[p[u]] = '-';
      k >>= 1;
      u++;
    }
    int w = 0;
    for (int j = 0; j < len; j++) {
      if (s3[j] == '+')
        w++;
      else
        w--;
    }
    if (w == pos) ans++;
  }
  printf("%.12f\n", ans * 1.0 / m);
  return 0;
}
