#include <bits/stdc++.h>
int main() {
  double i, j;
  int w, b, x, y;
  double dp[1001][1001];
  scanf("%d%d", &w, &b);
  for (x = 1; x <= 1000; x++) {
    dp[0][x] = 0;
    dp[x][0] = 1;
  }
  for (x = 1; x <= 1000; x++) {
    for (y = 1; y <= 1000; y++) {
      i = (double)x;
      j = (double)y;
      dp[x][y] = i / (i + j);
      if (y >= 2)
        dp[x][y] +=
            dp[x - 1][y - 2] *
            (((j) / (i + j)) * ((j - 1) / (i + j - 1)) * ((i) / (i + j - 2)));
      if (y >= 3)
        dp[x][y] += dp[x][y - 3] * (((j) / (i + j)) * ((j - 1) / (i + j - 1)) *
                                    ((j - 2) / (i + j - 2)));
    }
  }
  printf("%0.9lf\n", dp[w][b]);
  return 0;
}
