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

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n,k;
    cin>>n>>k;
    int out=0,insert=0;
    deque<int>dq;
    int dir=0;
    vector<int>res;
    auto push=[&](int x){
        dir==0?dq.push_back(x):dq.push_front(x);
    };
    auto pop=[&](){
        res.push_back(dir==0?dq.front():dq.back());
        dir==0?dq.pop_front():dq.pop_back();
    };
    while(k--){
        int l,r;
        cin>>l>>r;
        while(insert<r){
            push(insert+1);
            insert++;
        }
        while(out<l-1){
            pop();
            out++;
        }
        dir^=1;
    }
    while(insert<n){
        push(insert+1);
        insert++;
    }
    while(out<n){
        pop();
        out++;
    }
    for(int i=0;i<res.size();i++){
        if(i>0)cout<<" ";
        cout<<res[i];
    }
    cout<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")