intmain() { cin >> n >> m; for(int i = 0; i < m; i++) { int a, b, c; cin >> a >> b >> c; edges[i] = {a, b, c}; }
for(int i = 1; i <= n; i++) p[i] = i;
sort(edges, edges + m);
int res = 0, cnt = 0; for(int i = 0; i < m; i++) { auto e = edges[i]; int a = e.a, b = e.b, c = e.w; a = find(a), b = find(b); if ( a != b ) { res += c; p[a] = b; cnt ++; } } if (cnt < n - 1) puts("impossible"); elsecout << res << endl; return0; }