#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,q;
map<int,int>p;
int a[200005],c[200005];
int o=0,op[200005];
struct st{
int l,r;
}sum[200005];
int ans[200005],tt[200005];
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>q;
for(int i=1;i<=q;i++){
cin>>a[i];
if(p[a[i]]==0){
p[a[i]]=1;
o++;
if(sum[a[i]].l==0){
sum[a[i]].l=i;
sum[a[i]].r=i;
tt[a[i]]++;
}
else{
ans[a[i]]+=op[sum[a[i]].r-1]-op[sum[a[i]].l-1];
sum[a[i]].l=i;
sum[a[i]].r=i;
}
}
else{
p[a[i]]=0;
o--;
sum[a[i]].r=i;
}
op[i]=op[i-1]+o;
// cout<<o<<" ";
}
// cout<<endl;
// for(int i=1;i<=q;i++){
// cout<<op[i]<<" ";
// }
// cout<<endl;
sort(a+1,a+q+1);
o=0;
for(int i=1;i<=q;i++){
c[++o]=a[i];
while(a[i]==a[i+1]){
i++;
}
}
// for(int i=1;i<=o;i++){
// cout<<c[i]<<" ";
// }
// cout<<endl;
for(int i=1;i<=o;i++){
if(tt[c[i]]==1&&sum[c[i]].l!=sum[c[i]].r){
ans[c[i]]+=op[sum[c[i]].r-1]-op[sum[c[i]].l-1];
}
else if(tt[c[i]]==1&&sum[c[i]].l==sum[c[i]].r){
sum[c[i]].r=q;
ans[c[i]]+=op[sum[c[i]].r]-op[sum[c[i]].l-1];
}
}
for(int i=1;i<=o;i++){
cout<<ans[c[i]]<<" ";
}
cout<<endl;
return 0;
}