#include<bits/stdc++.h>
using namespace std;
int n,m,cc,bit[100005]; 
vector<int>g[100005];
void add(int p,int x){while(p<=m)bit[p]+=x,p+=(p&(-p));}
int sum(int p){int res=0;while(p)res+=bit[p],p-=(p&(-p));return res;}
int main()
{
	scanf("%d%d",&n,&m);
	for(int i=0;i<n;i++)
	{
		int l,r;
		scanf("%d%d",&l,&r);
		g[r-l+1].push_back(l);
	}
	int ans=n;
	for(int i=1;i<=m;i++)
	{
		int res=0;
		for(int j=0;j<g[i].size();j++)
		{
			add(g[i][j],1);
			add(g[i][j]+i,-1);
			ans--;
		}
		for(int j=i;j<=m;j+=i)res+=sum(j);
		printf("%d\n",ans+res);
	}
	return 0;
}