#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define mp make_pair
int connectivity[500009] = {0};
int parent[200001];
bool visited[200001] = {0};
vector < pair < int , int > > v[200001];
vector < int > tree[200001];
class compare
{
public:
bool operator()(const pair < int ,pair <int ,int > > &n1 , const pair <int , pair <int , int > > &n2)
{
return n1.second.second > n2.second.second;
}
};
bool cmp(const pair <int, int> &n1 , const pair <int , int> &n2)
{
if(n1.first != n2.first)
return n1.first < n2.first;
else
return n1.second > n2.second;
}
int calc(int x , vector <int> v[])
{
int i = 0;
visited[x] = 1;
for(i = 0;i < v[x].size();i++)
{
if(!visited[v[x][i]])
{
parent[v[x][i]] = x;
connectivity[x] += calc(v[x][i] , v);
}
}
if(parent[x] == 0)
return connectivity[x];
else
return 1 + connectivity[x];
}
int main()
{
// freopen("/home/bigdaddy/Documents/testgoogol03/3.in", "r", stdin);
int n , m ,a ,j ,b, c ,i, cnt = 0 , strt;
cin >> n >> m;
for(i = 0;i < m;i++)
{
scanf("%d%d%d", &a, &b, &c);
// cin >> a >> b >> c;
v[a].pb(mp(b, c));
v[b].pb(mp(a, c));
}
bool visited[500009] = {0};
priority_queue <pair < int , pair <int ,long long int> > , vector <pair < int , pair <int ,long long int> > >,compare > q ;
priority_queue <pair < int , int > > q2;
q.push(mp(0,mp(1,0)));
while(cnt < n)
{
// cout << q.size() << endl;
b = q.top().first;
a = q.top().second.first;
q.pop();
// cout << a << endl;
if(!visited[a])
{
cnt++;
visited[a] = 1;
if(b > 0)
{
tree[b].pb(a);
tree[a].pb(b);
}
for(i = 0;i < v[a].size() ; i++)
{
if(!visited[v[a][i].first])
{
q.push(mp(a ,v[a][i]));
}
}
}
}
parent[1] = 0;
int ans[n+1];
calc(1 , tree);
for(i = 1;i <= n;i++)
{
ans[i] = 0;
cnt = n-1;
for(j = 0;j < tree[i].size() ;j++)
{
if(parent[tree[i][j]] == i)
{
cnt -= connectivity[tree[i][j]] + 1;
ans[i] += cnt * (connectivity[tree[i][j]] + 1);
}
}
}
vector < pair <int , int> > v1;
for(i = 1;i <= n;i++)
v1.pb(mp(ans[i] , i));
sort(v1.begin() , v1.end() , cmp);
for(i = n-1 ; i >= 0 ; i--)
cout << v1[i].second << endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgbXAgbWFrZV9wYWlyCmludCBjb25uZWN0aXZpdHlbNTAwMDA5XSA9IHswfTsKaW50IHBhcmVudFsyMDAwMDFdOwpib29sIHZpc2l0ZWRbMjAwMDAxXSA9IHswfTsKdmVjdG9yIDwgcGFpciA8IGludCAsIGludCA+ID4gdlsyMDAwMDFdOwp2ZWN0b3IgPCBpbnQgPiB0cmVlWzIwMDAwMV07CmNsYXNzIGNvbXBhcmUKewpwdWJsaWM6Cglib29sIG9wZXJhdG9yKCkoY29uc3QgcGFpciA8IGludCAgLHBhaXIgPGludCAsaW50ID4gPiAgJm4xICwgY29uc3QgcGFpciA8aW50ICwgcGFpciA8aW50ICwgaW50ID4gPiAmbjIpCgl7CQkKCQlyZXR1cm4gbjEuc2Vjb25kLnNlY29uZCA+IG4yLnNlY29uZC5zZWNvbmQ7Cgl9Cn07CmJvb2wgY21wKGNvbnN0IHBhaXIgPGludCwgaW50PiAmbjEgLCBjb25zdCBwYWlyIDxpbnQgLCBpbnQ+ICZuMikKewoJaWYobjEuZmlyc3QgIT0gbjIuZmlyc3QpCgkJcmV0dXJuIG4xLmZpcnN0IDwgbjIuZmlyc3Q7CgllbHNlCgkJcmV0dXJuIG4xLnNlY29uZCA+IG4yLnNlY29uZDsKfQppbnQgY2FsYyhpbnQgeCAsIHZlY3RvciA8aW50PiB2W10pCnsKCWludCBpID0gMDsKCXZpc2l0ZWRbeF0gPSAxOwoJZm9yKGkgPSAwO2kgPCB2W3hdLnNpemUoKTtpKyspCgl7CgkJaWYoIXZpc2l0ZWRbdlt4XVtpXV0pCgkJewoJCQlwYXJlbnRbdlt4XVtpXV0gPSB4OwoJCQljb25uZWN0aXZpdHlbeF0gKz0gY2FsYyh2W3hdW2ldICwgdik7CgkJfQoJfQoJaWYocGFyZW50W3hdID09IDApCgkJcmV0dXJuIGNvbm5lY3Rpdml0eVt4XTsKCWVsc2UKCQlyZXR1cm4gMSArIGNvbm5lY3Rpdml0eVt4XTsKfQppbnQgbWFpbigpCnsKLy8JZnJlb3BlbigiL2hvbWUvYmlnZGFkZHkvRG9jdW1lbnRzL3Rlc3Rnb29nb2wwMy8zLmluIiwgInIiLCBzdGRpbik7CglpbnQgbiAsIG0gLGEgLGogLGIsIGMgLGksIGNudCA9IDAgLCBzdHJ0OwoJY2luID4+IG4gPj4gbTsKCQoKCWZvcihpID0gMDtpIDwgbTtpKyspCgl7CgkJc2NhbmYoIiVkJWQlZCIsICZhLCAmYiwgJmMpOwoJLy8JY2luID4+IGEgPj4gYiA+PiBjOwoJCXZbYV0ucGIobXAoYiwgYykpOwoJCXZbYl0ucGIobXAoYSwgYykpOwoJfQoKCWJvb2wgdmlzaXRlZFs1MDAwMDldID0gezB9OwoJcHJpb3JpdHlfcXVldWUgPHBhaXIgPCBpbnQgLCBwYWlyIDxpbnQgLGxvbmcgbG9uZyBpbnQ+ID4gLCB2ZWN0b3IgPHBhaXIgPCBpbnQgLCBwYWlyIDxpbnQgLGxvbmcgbG9uZyBpbnQ+ID4gPixjb21wYXJlID4gcSA7Cglwcmlvcml0eV9xdWV1ZSA8cGFpciA8IGludCAsIGludCA+ID4gcTI7CgoJcS5wdXNoKG1wKDAsbXAoMSwwKSkpOwoJCgl3aGlsZShjbnQgPCBuKQoJewoJLy8JY291dCA8PCBxLnNpemUoKSA8PCBlbmRsOwoJCWIgPSBxLnRvcCgpLmZpcnN0OwoJCWEgPSBxLnRvcCgpLnNlY29uZC5maXJzdDsKCQlxLnBvcCgpOwoJLy8JY291dCA8PCBhIDw8IGVuZGw7CgkJaWYoIXZpc2l0ZWRbYV0pCgkJewoJCQljbnQrKzsKCQkJdmlzaXRlZFthXSA9IDE7CgkJCWlmKGIgPiAwKQoJCQl7CgkJCQl0cmVlW2JdLnBiKGEpOwoJCQkJdHJlZVthXS5wYihiKTsKCQkJfQoJCQlmb3IoaSA9IDA7aSA8IHZbYV0uc2l6ZSgpIDsgaSsrKQoJCQl7CgkJCQlpZighdmlzaXRlZFt2W2FdW2ldLmZpcnN0XSkKCQkJCXsKCQkJCQlxLnB1c2gobXAoYSAsdlthXVtpXSkpOwoJCQkJfQoJCQl9CgkJfQoJfQoJcGFyZW50WzFdID0gMDsKCWludCBhbnNbbisxXTsKCWNhbGMoMSAsIHRyZWUpOwoKCWZvcihpID0gMTtpIDw9IG47aSsrKQoJewoJCWFuc1tpXSA9IDA7CgkJY250ID0gbi0xOwoJCWZvcihqID0gMDtqIDwgdHJlZVtpXS5zaXplKCkgO2orKykKCQl7CgkJCWlmKHBhcmVudFt0cmVlW2ldW2pdXSA9PSBpKQoJCQl7CgkJCQljbnQgLT0gY29ubmVjdGl2aXR5W3RyZWVbaV1bal1dICsgMTsKCQkJCWFuc1tpXSArPSBjbnQgKiAoY29ubmVjdGl2aXR5W3RyZWVbaV1bal1dICsgMSk7CgkJCX0KCQl9Cgl9Cgl2ZWN0b3IgPCBwYWlyIDxpbnQgLCBpbnQ+ID4gdjE7Cglmb3IoaSA9IDE7aSA8PSBuO2krKykKCQl2MS5wYihtcChhbnNbaV0gLCBpKSk7CgoJc29ydCh2MS5iZWdpbigpICwgdjEuZW5kKCkgLCBjbXApOwoKCWZvcihpID0gbi0xIDsgaSA+PSAwIDsgaS0tKQoJCWNvdXQgPDwgdjFbaV0uc2Vjb25kIDw8IGVuZGw7CgoJcmV0dXJuIDA7Cn0=