#include <bits/stdc++.h>
using namespace std;
int pos(int64_t x, const vector<int64_t> &c) {
  return lower_bound(c.begin(), c.end(), x) - c.begin();
}
int main() {
  ios::sync_with_stdio(false);
  int n;
  cin >> n;
  vector<int64_t> l(n), r(n), c(2 * n);
  for (int i = 0; i < n; ++i) {
    cin >> l[i] >> r[i];
    c[2 * i] = l[i];
    c[2 * i + 1] = r[i] + 1;
  }
  sort(c.begin(), c.end());
  c.resize(unique(c.begin(), c.end()) - c.begin());
  vector<int> s(c.size(), 0);
  for (int i = 0; i < n; ++i) {
    int lp = pos(l[i], c), rp = pos(r[i] + 1, c);
    s[lp] += 1;
    s[rp] -= 1;
  }
  int sum = s[0];
  vector<int64_t> res(n + 1, 0);
  for (size_t i = 1; i < s.size(); ++i) {
    res[sum] += c[i] - c[i - 1];
    sum += s[i];
  }
  for (int i = 1; i <= n; ++i) {
    cout << res[i] << ' ';
  }
}
