import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Comparator;
import java.util.PriorityQueue;

public class Grooves {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] input = br.readLine().split(" ");
        int hunters = Integer.parseInt(input[0]);
        int grooves = Integer.parseInt(input[1]);

        PriorityQueue<int[]> queue = new PriorityQueue<>(new Comparator<int[]>() {
            @Override
            public int compare(int[] o1, int[] o2) {
                return Integer.compare(o1[0], o2[0]);
            }
        });

        for (int i = 0; i < grooves; i++) {
            String[] line = br.readLine().split(" ");
            int x1 = Integer.parseInt(line[0]);
            int y = Integer.parseInt(line[1]);
            int x2 = Integer.parseInt(line[2]);
            queue.add(new int[]{y, x1, x2});
        }

        int[] huntersX = new int[hunters + 1];

        for (int i = 0; i < huntersX.length; i++) {
            huntersX[i] = i;
        }

        while (!queue.isEmpty()) {
            int[] arr = queue.poll();

            for (int j = 1; j <= hunters; j++) {
                if      (huntersX[j] == arr[1]) huntersX[j] = arr[2];
                else if (huntersX[j] == arr[2]) huntersX[j] = arr[1];
            }
        }

        for (int i = 1; i < huntersX.length; i++) {
            System.out.println(huntersX[i]);
        }
    }
}
