#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
void shortestpath(vector<pair<ll,ll> > adj[], ll V, ll src)
{
priority_queue< pair<ll,ll>, vector <pair<ll,ll>> , greater<pair<ll,ll>> > pq;
vector<ll> dist(V, 1e17);
vector<ll> vis(V+1,0);
pq.push(make_pair(0, src));
dist[src] = 0;
vis[src]=1;
while (!pq.empty())
{
ll u = pq.top().second;
pq.pop();
vis[u]=1;
for (auto x : adj[u])
{
ll v = x.first;
ll weight = x.second;
if (!vis[v]&&dist[v] > dist[u] + weight)
{
dist[v] = dist[u] + weight;
pq.push(make_pair(dist[v], v));
}
}
}
// return dist;
for(int i=1;i<V;i++)cout<<dist[i]<<" ";
}
int main()
{
long long int n,m;
cin>>n>>m;
vector<pair<ll,ll>>ad[n+1];
for(int i=0;i<m;i++)
{
long long int a,b,w;
cin>>a>>b>>w;
ad[a].push_back({b,w});
}
shortestpath(ad,n+1,1);
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwoKCiAgdm9pZCBzaG9ydGVzdHBhdGgodmVjdG9yPHBhaXI8bGwsbGw+ID4gYWRqW10sIGxsIFYsIGxsIHNyYykKewogICAgcHJpb3JpdHlfcXVldWU8IHBhaXI8bGwsbGw+LCB2ZWN0b3IgPHBhaXI8bGwsbGw+PiAsIGdyZWF0ZXI8cGFpcjxsbCxsbD4+ID4gcHE7CiAgICB2ZWN0b3I8bGw+IGRpc3QoViwgMWUxNyk7CnZlY3RvcjxsbD4gdmlzKFYrMSwwKTsKICAgIHBxLnB1c2gobWFrZV9wYWlyKDAsIHNyYykpOwogICAgZGlzdFtzcmNdID0gMDsKdmlzW3NyY109MTsKICAgIHdoaWxlICghcHEuZW1wdHkoKSkKICAgIHsKICAgICAgICBsbCB1ID0gcHEudG9wKCkuc2Vjb25kOwogICAgICAgIHBxLnBvcCgpOwp2aXNbdV09MTsKICAgICAgICBmb3IgKGF1dG8geCA6IGFkalt1XSkKICAgICAgICB7CiAgICAgICAgICAgIGxsIHYgPSB4LmZpcnN0OwogICAgICAgICAgICBsbCB3ZWlnaHQgPSB4LnNlY29uZDsKCiAgICAgICAgICAgIGlmICghdmlzW3ZdJiZkaXN0W3ZdID4gZGlzdFt1XSArIHdlaWdodCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZGlzdFt2XSA9IGRpc3RbdV0gKyB3ZWlnaHQ7CiAgICAgICAgICAgICAgICBwcS5wdXNoKG1ha2VfcGFpcihkaXN0W3ZdLCB2KSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Ci8vIHJldHVybiBkaXN0OwogZm9yKGludCBpPTE7aTxWO2krKyljb3V0PDxkaXN0W2ldPDwiICI7Cn0KCgppbnQgbWFpbigpCnsKCiBsb25nIGxvbmcgaW50IG4sbTsKIGNpbj4+bj4+bTsKdmVjdG9yPHBhaXI8bGwsbGw+PmFkW24rMV07CmZvcihpbnQgaT0wO2k8bTtpKyspCnsKICAgIGxvbmcgbG9uZyBpbnQgYSxiLHc7CiAgICBjaW4+PmE+PmI+Pnc7CiAgICBhZFthXS5wdXNoX2JhY2soe2Isd30pOwp9CiBzaG9ydGVzdHBhdGgoYWQsbisxLDEpOwoKCn0K