//============================================================================
// Name        : test.cpp
// Author      : Qihan
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <bits/stdc++.h>
#define Lowbit(x) (x & (-x))
using namespace std;
typedef long long int LLI;
typedef pair<int,int> PII;
const int maxn = (300000 + 10);

struct Seg{
	int l,r,len;
}op[maxn];

bool cmp(Seg a,Seg b){
	return a.len < b.len;
}

int c[maxn];

void add(int x,int change,int n){
	while(x < n){
		c[x] += change;
		x += Lowbit(x);
	}
}

int sum(int x){
	int ans = 0;
	while(x > 0){
		ans += c[x];
		x -= Lowbit(x);
	}
	return ans;
}

int main(){
//	freopen("/home/qihan/Documents/in","r",stdin);
	int n,m;
	memset(c,0,sizeof(c));
	scanf("%d%d",&n,&m);
	for(int i = 1;i <= n;i ++){
		scanf("%d%d",&op[i].l,&op[i].r);
		op[i].len = op[i].r - op[i].l + 1;
	}
	sort(op + 1,op + 1 + n,cmp);
	int k = 1;
	for(int i = 1;i <= m;i ++){
		for(;k <= n && op[k].len < i;k ++){
			add(op[k].l,1,300000);
			add(op[k].r + 1,-1,300000);
		}
		int ans = n - k + 1;
		for(int j = i;j <= m;j += i){
			ans += sum(j);
		}
		printf("%d\n",ans);
	}
	return 0;
}
