#include <bits/stdc++.h>
using namespace std;
long double a[1001][1001];
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long n, t, m, w, b;
  cout.precision(12);
  cin >> w >> b;
  for (int i = 0; i <= w; i++) {
    for (int j = 0; j <= b; j++) {
      if (!i && !j) continue;
      long double x = i * 1.0;
      long double y = j * 1.0;
      a[i][j] = (x / (x + y));
      long double z = (y - 2) / (x + y - 2);
      if ((i >= 0) && ((j - 3) >= 0)) {
        a[i][j] += (a[i][j - 3] * z * (y / (x + y)) * ((y - 1) / (x + y - 1)));
      }
      if (((i - 1) >= 0) && ((j - 2) >= 0)) {
        a[i][j] += (a[i - 1][j - 2] * (1 - z) * (y / (x + y)) *
                    ((y - 1) / (x + y - 1)));
      }
    }
  }
  cout << fixed << a[w][b];
  return 0;
}
