#include <bits/stdc++.h>
using namespace std;
int n;
multiset<pair<long long, bool> > s;
multiset<pair<long long, bool> >::iterator it1, it2, itp;
long long ans[2 * 100 * 1000 + 10], l, r;
int main() {
  ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> l >> r;
    s.insert({l, 1});
    s.insert({r, 0});
  }
  it1 = s.begin();
  int cnt = 0;
  while (it1 != s.end()) {
    it2 = it1;
    it2++;
    int k = cnt + 1;
    if ((*it1).second) {
      cnt++;
    } else {
      cnt--;
      k--;
    }
    while (it2 != s.end() && (*it2).first == (*it1).first) {
      if ((*it2).second) {
        cnt++;
      } else {
        k--;
        cnt--;
      }
      k++, it2++;
    }
    ans[k]++;
    itp = it2;
    if (itp != s.end()) {
      ans[cnt] += ((*itp).first - (*it1).first - 1);
    }
    it1 = it2;
  }
  for (int i = 0; i < n; i++) cout << ans[i + 1] << ' ';
  return 0;
}
