#include <bits/stdc++.h>
#define X first
#define Y second
#define mp make_pair
using namespace std;
typedef pair<int,int> PII;
const int N = 300010;
int n,m,c[N];
PII p[N];

bool cmp(PII a,PII b){
	return a.Y-a.X<b.Y-b.X;
}
inline int sum(int x){
	int ret = 0;
	while(x){
		ret+=c[x];
		x-=x&-x;
	}
	return ret;
}
inline void add(int x,int t){
	while(x<=m+1){
		c[x]+=t;
		x+=x&-x;
	}
}

int main(){
	scanf("%d%d",&n,&m);
	for(int i=0;i<n;i++){
		scanf("%d%d",&p[i].X,&p[i].Y);
	}
	sort(p,p+n,cmp);
	int j = 0;
	//cout<<"----";	for(int i=0;i<n;i++) cout<<p[i].X<<' '<<p[i].Y<<endl;
	for(int i=1;i<=m;i++){
		while(j<n && p[j].Y-p[j].X+1<i){
			add(p[j].X,1);
			add(p[j].Y+1,-1);
			j++;
		}
		int ans = n-j;
		for(int k = i;k<=m;k+=i) ans += sum(k);
		printf("%d\n",ans);
	}
	return 0;
}