#include <cstdio>
#include <vector>
using std::vector;

vector<int> v;
vector<bool> p;

int n, q, tmp;
bool prom(bool);
int podn();
void print();

int main(){
	scanf ("%d%d", &n, &q);
	for (int i=0; i<q; ++i){
		scanf ("%d", &tmp);
		v.push_back(tmp-1);
	}
	for (int i=0; i<n; ++i)
		p.push_back(0);
		
	if (p[v[0]]==1 || p[v[0]]==n) printf ("2\n");
	else printf ("3\n");
	p[v[0]]=prom(p[v[0]]);
	for (int i=1; i<q; ++i){
		p[v[i]]=prom(p[v[i]]);
		//print();
		printf ("%d\n", podn());
	}
		

	//scanf ("%*c%*c");
	return 0;
}
bool prom(bool x){
	if (x==0) return 1;
	return 0;
}
int podn(){
	int a=1, max=0;
	for (int i=0; i<n-1; ++i)
		if (p[i]!=p[i+1]) a++;
		else{
			if (a>max) max=a;
			a=1;
		}
	if (a>max) max=a;
	return max;
}
void print(){
	for (int i=0; i<n; ++i)
		printf ("%d ", (int)p[i]);
	printf ("\n\n");
}
