#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")