#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
    int n, m;
    cin >> n >> m;
    vector<int> seq(n);
    for (int i = 0; i < n; ++i) {
        seq[i] = i + 1;
    }
    vector<int> commands(m);
    for (int i = 0; i < m; ++i) {
        cin >> commands[i];
    }
    // 按照指令倒序处理
    for (int i = m - 1; i >= 0; --i) {
        int target = commands[i];
        // 找到要移到最前面的元素在当前序列中的位置
        auto it = find(seq.begin(), seq.end(), target);
        if (it!= seq.end()) {
            int pos = it - seq.begin();
            // 将该元素移到序列最前面
            rotate(seq.begin(), it, it + 1);
        }
    }
    for (int num : seq) {
        cout << num << " ";
    }
    cout << endl;
    return 0;
}
/**************************************************************
	Problem: 1527
	User: zhuangsongyu
	Language: C++
	Result: Time Limit Exceed
****************************************************************/