#include <bits/stdc++.h>
using namespace std;
const int N = 81;
int n, m, i, seg, j, pre, cur, bef, k;
double temp, P, ans[N], node[N * 2], f[N][N];
struct arr {
  double l, r, len;
} a[N];
struct brr {
  double pre, suc, cur;
} man[N];
void File() {
  freopen("303E.in", "r", stdin);
  freopen("303E.out", "w", stdout);
}
void Getinf() {
  scanf("%d", &n);
  for (i = 1; i <= n; i++) {
    scanf("%lf%lf", &a[i].l, &a[i].r);
    node[i] = a[i].l;
    node[i + n] = a[i].r;
    a[i].len = a[i].r - a[i].l;
  }
  sort(node + 1, node + 1 + n * 2);
  m = unique(node + 1, node + 1 + n * 2) - node - 1;
}
void Init() {
  k = bef = 0;
  P = (node[seg] - node[seg - 1]) / a[i].len;
  for (j = 1; j <= n; j++)
    if (j != i)
      if (a[j].r <= node[seg - 1])
        bef++;
      else if (a[j].l < node[seg]) {
        man[++k].pre = (node[seg - 1] - min(a[j].l, node[seg - 1])) / a[j].len;
        man[k].cur =
            (min(node[seg], a[j].r) - max(node[seg - 1], a[j].l)) / a[j].len;
        man[k].suc = (max(node[seg], a[j].r) - node[seg]) / a[j].len;
      }
}
void solve() {
  for (i = 1; i <= n; i++) {
    memset(ans, 0, sizeof(ans));
    for (seg = 2; seg <= m; seg++)
      if (a[i].l <= node[seg - 1] && node[seg] <= a[i].r) {
        Init();
        memset(f, 0, sizeof(f));
        f[0][0] = 1.0;
        for (j = 1; j <= k; j++)
          for (pre = j; pre >= 0; pre--)
            for (cur = j - pre; cur >= 0; cur--) {
              double org = f[pre][cur];
              f[pre][cur] = 0;
              if (pre) f[pre][cur] += f[pre - 1][cur] * man[j].pre;
              if (cur) f[pre][cur] += f[pre][cur - 1] * man[j].cur;
              f[pre][cur] += org * man[j].suc;
            }
        for (pre = 0; pre <= k; pre++)
          for (cur = 0; cur <= k - pre; cur++) {
            double val = f[pre][cur] / (cur + 1) * P;
            ans[bef + pre + 1] += val;
            ans[bef + pre + cur + 2] -= val;
          }
      }
    temp = 0;
    for (j = 1; j <= n; j++) {
      temp += ans[j];
      printf("%.7lf", temp);
      if (j < n)
        printf(" ");
      else
        printf("\n");
    }
  }
}
int main() {
  Getinf();
  solve();
  return 0;
}
