#include <bits/stdc++.h>
using namespace std;
pair<int, pair<int, int> > a[200020];
int f[200020];
int v[200020];
int n, m;
int F(int x) {
  if (f[x] == x) {
    return x;
  }
  f[x] = F(f[x]);
  v[f[x]] |= v[x];
  return f[x];
}
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 1; i <= n; i++) {
    f[i] = i;
    v[i] = 0;
  }
  for (int i = 0; i < m; i++) {
    scanf("%d%d%d", &a[i].second.first, &a[i].second.second, &a[i].first);
  }
  sort(a, a + m);
  reverse(a, a + m);
  long long ans = 0;
  for (int i = 0; i < m; i++) {
    int x = a[i].second.first;
    int y = a[i].second.second;
    x = F(x);
    y = F(y);
    if (x == y && v[x] == 0) {
      v[x] = 1;
      ans += a[i].first;
    } else if (x != y && (v[x] == 0 || v[y] == 0)) {
      v[y] |= v[x];
      f[x] = y;
      ans += a[i].first;
    }
  }
  cout << ans << endl;
  return 0;
}
