Example

Input

5 3
4
2
5


Output

5
2
4
1
3
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<set>
using namespace std;
int head=0;
struct list{
    int plast,pnext;
}L[500000];
void init(int n){
    for(int i=0;i<=n;i++){
        L[i].plast=i-1;
        L[i].pnext=i+1;
    }
    L[n].pnext=-1;
}
void doit(int t){
    L[L[t].plast].pnext=L[t].pnext;
    L[L[t].pnext].plast=L[t].plast;
    L[t].pnext=L[head].pnext;
    L[t].plast=head;
    L[L[head].pnext].plast=t;
    L[head].pnext=t;
}
int main(){
    int n,m;
    scanf("%d%d",&n,&m);
    init(n);
    for(int i=0;i<m;i++){
        int t;
        scanf("%d",&t);
        doit(t);
    }
    int t=head;
    while(L[t].pnext!=-1){
        t=L[t].pnext;
        printf("%d\n",t);
    }
    return 0;
}