#include <bits/stdc++.h>
using namespace std;
int n, m;
double dp[1010][1010];
bool vis[1010][1010];
double f(int x, int y) {
  if (!x) return 1. / (y + 1);
  if (!y) return 1;
  if (vis[x][y]) return dp[x][y];
  vis[x][y] = 1;
  double p = f(y, x - 1) / (1. / (y + 1) + f(y, x - 1));
  return dp[x][y] = p * y / (y + 1) * (1 - f(y - 1, x)) + (1 - p);
}
int main() {
  scanf("%d%d", &n, &m);
  printf("%.10lf %.10lf", f(n, m), 1 - f(n, m));
  return 0;
}
