#include <stdlib.h>

#include <string>
#include <vector>
#include <algorithm>
#include <iostream>

/*
Drawing Lots

º}Ìæ¤È¢íÉ­¶ª èÜ·B±ÌáÅÍcüÌªT{ èAS{Ì¡üªø©êÄ¢Ü·B¡üÍcüðÜ½¢Åàæ¢ÆµÜ·B

}ÌãÅÍ 1, 2, 3, 4, 5 ÌÔÅ Á½àÌªAQÔÚÆSÔÚÌÔÅÌð·i±êð (2, 4) Ìæ¤É­jðµA³çÉA(3, 5)(1, 2)(3, 4) Ìð·ðµ½ÌÅA}ÌºÉ½Æ«ÍA4, 1, 2, 5, 3 ÉÈèÜµ½B

ÅÌóÔ@1, 2, 3, 4.... ªA^¦çê½¡_ÌXgi±ÌáÅÍA(2, 4)(3, 5)(1, 2)(3, 4) ðÊßµ½Ì¿AÇÌæ¤ÈÔÉÈé©ðoÍµÄI¹·évOðì¬µÄº³¢B
Input

cüÌ{ w (®Fw  30)
¡_Ì{ n (®Fn  30)
¡_Xg a1, b1 (®F¼pJ}æØè) ¡_Xg a2, b2 (®F¼pJ}æØè) .
.
.
¡_Xg an, bn (®F¼pJ}æØè)
Output

¶©çEÉA
1 ÔÚÌ_Éé
2 ÔÚÌ_Éé
.
.
w ÔÚÌ_Éé
Sample Input

5
4
2,4
3,5
1,2
3,4

Output for the Sample Input

4
1
2
5
3

*/

using namespace std;

void swap(int *a, int *b)
{
	int t = *a;
	*a = *b;
	*b = t;
}

int main()
{
	string s;
	int w, n;

	getline(cin, s);
	sscanf(s.c_str(), "%ld", &w);
	getline(cin, s);
	sscanf(s.c_str(), "%ld", &n);
	
	vector<int> v;
	for (int i = 0; i < w; i++)
	{
		v.push_back(i + 1);
	}
	
	for (int i = 0; i < n; i++)
	{
		int a, b;
		getline(cin, s);
		sscanf(s.c_str(), "%ld,%ld", &a, &b);
		swap(&v[a - 1], &v[b - 1]);
	}
	
	for (int i = 0; i < w; i++)
	{
		printf("%d\n", v[i]);
	}

	return 0;
}