#include <fstream>
#define NMAX 1500
using namespace std;
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");
int n,m,nrviz;
int ma[NMAX][NMAX];
int sol[NMAX];
void citire();
void dfs_euler(int start);
int main()
{
citire();
dfs_euler(1);
int i;
for(i=1;i<=nrviz;i++)
fout<<sol[i]<<' ';
return 0;
}
void citire()
{
int x,y;
int i;
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x>>y;
ma[x][y]++;
ma[y][x]++;
}
}
void dfs_euler(int start)
{
int i;
sol[++nrviz]=start;
for(i=1;i<=n;i++)
if(ma[start][i])
{
ma[start][i]--;
ma[i][start]--;
dfs_euler(i);
}
}