#include <bits/stdc++.h>
using namespace std;
struct str2 {
  unsigned long long l;
  unsigned long long r;
  str2() : l(), r(){};
  str2(unsigned long long aa, unsigned long long bb) : l(aa), r(bb){};
};
const size_t SIZE = 400005;
int n, amount;
str2 segm[SIZE];
unsigned long long cur[SIZE];
unsigned long long ans[SIZE];
int sum[SIZE];
int dif[SIZE];
map<unsigned long long, int> m;
int main() {
  cin.tie();
  ios_base::sync_with_stdio(0);
  cin >> n;
  unsigned long long l, r;
  for (int i = 0; i < n; ++i) {
    cin >> l >> r;
    segm[i] = str2(l, r);
    ++m[l];
    --m[r + 1];
  }
  for (auto it = m.begin(); it != m.end(); ++it) {
    cur[amount] = it->first;
    dif[amount] = it->second;
    ++amount;
  }
  sum[0] = dif[0];
  for (int i = 1; i < amount; ++i) {
    sum[i] = sum[i - 1] + dif[i];
    ans[sum[i - 1]] += cur[i] - cur[i - 1];
  }
  for (int i = 1; i <= n; ++i) {
    cout << ans[i] << " ";
  }
  return 0;
}
