n, m = map(int, input().split())
box = [i for i in range(1, n + 1)]
for _ in range(m):
i, j = map(int, input().split())
length = j - i + 1 #역순으로 바꿀 문자열의 길이
for _ in range(length//2):
t = box[i-1]
box[i-1] = box[j-1]
box[j-1] = t
i += 1
j -= 1
for i in range(n):
print(box[i], end = " ")
i번부터 j번까지의 범위 내에 있는 바구니를 역순으로 배열하는 것은 i번째 바구니와 j번째 바구니, i+1번째 바구니와 j-1번째 바구니, i+2번째 바구니와 j-2번째 바구니,... 를 바꾸는 것과 같다.
예를 들어 1번부터 5번까지의 바구니를 역순으로 배열하는 것은 1번 바구니와 5번 바구니, 2번 바구니와 4번 바구니를 바꾸는 것이랑 같다. 바꿔야하는 바구니의 전체 수를 n이라고 할 때, n은 j-i+1
이다.
n 이 짝수일 경우, 즉, 짝수개의 바구니를 바꿀 때에는 바구니끼리 바꾸는 행동을 n/2 번 하면 되지만, n 이 홀수인 경우, 즉 홀수개의 바구니를 바꿔야할 때는 (n-1)/2 번 바꾸는 행동을 해야한다. 이는 정수 몫을 구하는 연산자인 //
를 이용하여 다음과 같이 간단히 표현할 수 있다: n//2