#include <bits/stdc++.h>
using namespace std;
int const maxN = 205;
int n, m, in[maxN];
bool visited[maxN];
set <pair <int, int>> adj[maxN];
void inp(){
  cin >> n >> m;
  for(int i=1; i<=m; i++){
    int u, v, w; cin >> u >> v >> w;
    adj[u].insert({v, w});
    adj[v].insert({u, w});
  }
}
// 1 0
// 2 2
// 3 -1
// 1 -1
 
void dfs(int u){
  visited[u] = true;
  for(auto it : adj[u]){
   int v = it.first;
    if(!visited[v]) dfs(v);
  }
}
void Count_In(){
  for(int i=1; i<=n; i++){
    in[i] += adj[i].size();
  }
}
bool check(){
  for(int x=1; x<=n; x++){
    if(in[x]!=0){
      dfs(x); break;
    } //bug7
  }
  for(int i=1; i<=n; i++){
    if(!visited[i] && in[i] != 0) return false;// bug4
    if(in[i] % 2 != 0) return false;
  }
  return true;
}
bool Euler_Cycle(int s, set <pair <int, int>> adj[maxN]){
  if(in[s]==0) return false;//bug6
  stack <pair <int, int>> st;
  vector <pair <int, int>> EC;
  st.push({s, 0});//bug1
  int sum = 0;
  // for(int i=1; i<=n; i++){
  //   cout << i << " : ";
  //   for(auto it : adj[i]){
  //     cout << "(" << it.first << " " << it.second << ")" << " ";
  //   }
  //   cout << endl;
  // }
  while(!st.empty()){
    auto it = st.top();
    auto [u, w] = it;
    if(adj[u].size()){
      auto it2 = *adj[u].begin();
      auto [v, w2] = it2;
 
      st.push(it2);
      adj[u].erase(it2);
      adj[v].erase({u, w2});//bug3
    }
    else{
      st.pop();
      EC.push_back(it);
    }
  }
 
  reverse(EC.begin(), EC.end());
  for(auto it : EC) {
    auto [x, w] = it;
    sum += w;
    if(sum < 0) return false;
  }
  for(int i=0; i<=m; i++){
    cout << EC[i].first;
    if(i != EC.size()-1) cout << " ";
  }
  cout << endl;
  return true;
}
int main() 
{
    ios_base::sync_with_stdio(false);
    cin.tie(0); cout.tie(0); 
    inp();
    Count_In();
    if(check()){
      set <pair <int, int>> adj_fake[maxN];//bug2-5
      for(int i=1; i<=n; i++){
        for(int j=1; j<=n; j++) adj_fake[j] = adj[j];//bug2
        if(Euler_Cycle(i, adj_fake)) return 0;
      }
    }
    cout << -1 << endl;
    return 0;
}
				I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBjb25zdCBtYXhOID0gMjA1OwppbnQgbiwgbSwgaW5bbWF4Tl07CmJvb2wgdmlzaXRlZFttYXhOXTsKc2V0IDxwYWlyIDxpbnQsIGludD4+IGFkalttYXhOXTsKdm9pZCBpbnAoKXsKICBjaW4gPj4gbiA+PiBtOwogIGZvcihpbnQgaT0xOyBpPD1tOyBpKyspewogICAgaW50IHUsIHYsIHc7IGNpbiA+PiB1ID4+IHYgPj4gdzsKICAgIGFkalt1XS5pbnNlcnQoe3YsIHd9KTsKICAgIGFkalt2XS5pbnNlcnQoe3UsIHd9KTsKICB9Cn0KLy8gMSAwCi8vIDIgMgovLyAzIC0xCi8vIDEgLTEKCnZvaWQgZGZzKGludCB1KXsKICB2aXNpdGVkW3VdID0gdHJ1ZTsKICBmb3IoYXV0byBpdCA6IGFkalt1XSl7CiAgIGludCB2ID0gaXQuZmlyc3Q7CiAgICBpZighdmlzaXRlZFt2XSkgZGZzKHYpOwogIH0KfQp2b2lkIENvdW50X0luKCl7CiAgZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CiAgICBpbltpXSArPSBhZGpbaV0uc2l6ZSgpOwogIH0KfQpib29sIGNoZWNrKCl7CiAgZm9yKGludCB4PTE7IHg8PW47IHgrKyl7CiAgICBpZihpblt4XSE9MCl7CiAgICAgIGRmcyh4KTsgYnJlYWs7CiAgICB9IC8vYnVnNwogIH0KICBmb3IoaW50IGk9MTsgaTw9bjsgaSsrKXsKICAgIGlmKCF2aXNpdGVkW2ldICYmIGluW2ldICE9IDApIHJldHVybiBmYWxzZTsvLyBidWc0CiAgICBpZihpbltpXSAlIDIgIT0gMCkgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gdHJ1ZTsKfQpib29sIEV1bGVyX0N5Y2xlKGludCBzLCBzZXQgPHBhaXIgPGludCwgaW50Pj4gYWRqW21heE5dKXsKICBpZihpbltzXT09MCkgcmV0dXJuIGZhbHNlOy8vYnVnNgogIHN0YWNrIDxwYWlyIDxpbnQsIGludD4+IHN0OwogIHZlY3RvciA8cGFpciA8aW50LCBpbnQ+PiBFQzsKICBzdC5wdXNoKHtzLCAwfSk7Ly9idWcxCiAgaW50IHN1bSA9IDA7CiAgLy8gZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CiAgLy8gICBjb3V0IDw8IGkgPDwgIiA6ICI7CiAgLy8gICBmb3IoYXV0byBpdCA6IGFkaltpXSl7CiAgLy8gICAgIGNvdXQgPDwgIigiIDw8IGl0LmZpcnN0IDw8ICIgIiA8PCBpdC5zZWNvbmQgPDwgIikiIDw8ICIgIjsKICAvLyAgIH0KICAvLyAgIGNvdXQgPDwgZW5kbDsKICAvLyB9CiAgd2hpbGUoIXN0LmVtcHR5KCkpewogICAgYXV0byBpdCA9IHN0LnRvcCgpOwogICAgYXV0byBbdSwgd10gPSBpdDsKICAgIGlmKGFkalt1XS5zaXplKCkpewogICAgICBhdXRvIGl0MiA9ICphZGpbdV0uYmVnaW4oKTsKICAgICAgYXV0byBbdiwgdzJdID0gaXQyOwogICAgICAKICAgICAgc3QucHVzaChpdDIpOwogICAgICBhZGpbdV0uZXJhc2UoaXQyKTsKICAgICAgYWRqW3ZdLmVyYXNlKHt1LCB3Mn0pOy8vYnVnMwogICAgfQogICAgZWxzZXsKICAgICAgc3QucG9wKCk7CiAgICAgIEVDLnB1c2hfYmFjayhpdCk7CiAgICB9CiAgfQogIAogIHJldmVyc2UoRUMuYmVnaW4oKSwgRUMuZW5kKCkpOwogIGZvcihhdXRvIGl0IDogRUMpIHsKICAgIGF1dG8gW3gsIHddID0gaXQ7CiAgICBzdW0gKz0gdzsKICAgIGlmKHN1bSA8IDApIHJldHVybiBmYWxzZTsKICB9CiAgZm9yKGludCBpPTA7IGk8PW07IGkrKyl7CiAgICBjb3V0IDw8IEVDW2ldLmZpcnN0OwogICAgaWYoaSAhPSBFQy5zaXplKCktMSkgY291dCA8PCAiICI7CiAgfQogIGNvdXQgPDwgZW5kbDsKICByZXR1cm4gdHJ1ZTsKfQppbnQgbWFpbigpIAp7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoMCk7IGNvdXQudGllKDApOyAKICAgIGlucCgpOwogICAgQ291bnRfSW4oKTsKICAgIGlmKGNoZWNrKCkpewogICAgICBzZXQgPHBhaXIgPGludCwgaW50Pj4gYWRqX2Zha2VbbWF4Tl07Ly9idWcyLTUKICAgICAgZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CiAgICAgICAgZm9yKGludCBqPTE7IGo8PW47IGorKykgYWRqX2Zha2Vbal0gPSBhZGpbal07Ly9idWcyCiAgICAgICAgaWYoRXVsZXJfQ3ljbGUoaSwgYWRqX2Zha2UpKSByZXR1cm4gMDsKICAgICAgfQogICAgfQogICAgY291dCA8PCAtMSA8PCBlbmRsOwogICAgcmV0dXJuIDA7Cn0=