#include <iostream>
#include <vector>

void recorre(int actual, std::vector<bool>& visitados, const std::vector<std::vector<int>>& listas) {
   std::cout << actual << " ";
   for (int v : listas[actual]) {
      if (visitados[v] == false) {
         visitados[v] = true;
         recorre(v, visitados, listas);
      }
   }
}

int main( ) {
   int n, m;
   std::cin >> n >> m;

   std::vector<std::vector<int>> listas(n);
   for (int i = 0; i < m; ++i) {
      int v1, v2;
      std::cin >> v1 >> v2;
      listas[v1].push_back(v2);
      listas[v2].push_back(v1);
   }

   std::vector<bool> visitados(n, false);
   visitados[0] = true;
   recorre(0, visitados, listas);
}
