#include <iostream>
#include <bits/stdc++.h>
using namespace std;


void dfs(int node, vector<int> g[], vector<int>& visited, vector<int>& parent){
	
	cout<<node;
	cout<<"\n";
	visited[node]=1;
	
	
	for(auto u: g[node]){
		
		if(visited[u]==0){
			parent[u] = node;
			dfs(u, g, visited, parent);
		}
	}
}


int main() {
	
	int n;
	cin>>n;
	int e;
	cin>>e;

	vector<int> g[n+1];

	for(int i=1; i<=e; i++){
		int u,v;
		cin>>u;
		cin>>v;
		g[u].push_back(v);
		g[v].push_back(u);
	}
	
	// visited
	vector<int> visited(n+1, 0);
	
	// parent
	vector<int> parent(n+1, 0);
	
	
	
	dfs(1, g, visited, parent);
	
	
	

	



	return 0;
}