#include <bits/stdc++.h>
int main() {
  int n, m;
  scanf("%d%d", &n, &m);
  std::vector<int> souvenir(m + 2);
  for (int i = 0; i < n; i++) {
    int l, r;
    scanf("%d%d", &l, &r);
    int min_r{r - l + 1};
    if (l - 1 <= min_r) {
      souvenir[1]++;
      souvenir[r + 1]--;
      continue;
    }
    int j;
    souvenir[1]++;
    souvenir[min_r + 1]--;
    souvenir[l]++;
    souvenir[r + 1]--;
    if (min_r * min_r < l) {
      for (int j = 2; j <= min_r; j++) {
        for (int k = std::max(min_r + 1, (l + j - 1) / j); k <= r / j; k++) {
          souvenir[k]++;
          souvenir[k + 1]--;
        }
      }
      for (int j = min_r + 1; j * j < l; j++) {
        if ((l + j - 1) / j * j == r / j * j) {
          souvenir[j]++;
          souvenir[(l + j - 1) / j]++;
        }
      }
      if (j * j <= r) souvenir[j]++;
    } else {
      int j;
      for (j = 2; j * j < l; j++) {
        for (int k = std::max(min_r + 1, (l + j - 1) / j); k <= r / j; k++) {
          souvenir[k]++;
          souvenir[k + 1]--;
        }
      }
      for (; j <= min_r; j++) {
        for (int k = min_r + 1; j * k <= r; k++) {
          souvenir[k]++;
          souvenir[k + 1]--;
        }
      }
    }
  }
  souvenir[0] = 0;
  for (int i = 1; i <= m; i++) {
    souvenir[i] += souvenir[i - 1];
    printf("%d\n", souvenir[i]);
  }
  return 0;
}
