// LonggVuz.
#include<bits/stdc++.h>
using namespace std;
// Legendary Grandmaster
void End(){
cerr << "=> Thời gian code chạy: ";
cerr << (1.0 * clock() / CLOCKS_PER_SEC) << " giây" << string(27, '\t');
}
#define Sonic() ios_base::sync_with_stdio(false); cin.tie(NULL);
#define use(x) freopen(x".inp", "r", stdin); freopen(x".out", "w", stdout);
#define fix(x) fixed << setprecision(x)
#define all(x) x.begin(), x.end()
#define len(x) (int)x.size()
#define ms(a, x) memset(a, x, sizeof(a))
#define bit(n, x) (n >> x & 1)
#define pb push_back
#define is insert
#define el '\n'
#define ld long double
#define int int64_t
const int mod = 1e9 + 7;
const int oo = 1e18 + 7;
const int maxn = 1e5 + 7;
int n, m, c[maxn], r[maxn];
int get(int u){
if(u == r[u]) return u;
return r[u] = get(r[u]);
}
void LonggVuz(){
cin >> n >> m;
for(int i=1; i<=n; i++){
cin >> c[i];
r[i] = i;
}
while(m--){
int x, y; cin >> x >> y;
x = get(x); y = get(y);
if(x != y){
if(c[x] < c[y]){
r[y] = x;
}else{
r[x] = y;
}
}
}int res = 0;
for(int i=1; i<=n; i++){
int x = get(i);
if(c[x] > 0){
res += c[x];
c[x] = 0;
}
}cout << res;
}
signed main(){
Sonic();
int TC = 1; //cin >> TC;
while(TC--) LonggVuz();
End();
}
Ly8gTG9uZ2dWdXouCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci8vIExlZ2VuZGFyeSBHcmFuZG1hc3Rlcgp2b2lkIEVuZCgpewogICAgY2VyciA8PCAiPT4gVGjhu51pIGdpYW4gY29kZSBjaOG6oXk6ICI7CiAgICBjZXJyIDw8ICgxLjAgKiBjbG9jaygpIC8gQ0xPQ0tTX1BFUl9TRUMpIDw8ICIgZ2nDonkiIDw8IHN0cmluZygyNywgJ1x0Jyk7Cn0KI2RlZmluZSBTb25pYygpIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKE5VTEwpOwojZGVmaW5lIHVzZSh4KSBmcmVvcGVuKHgiLmlucCIsICJyIiwgc3RkaW4pOyBmcmVvcGVuKHgiLm91dCIsICJ3Iiwgc3Rkb3V0KTsKI2RlZmluZSBmaXgoeCkgZml4ZWQgPDwgc2V0cHJlY2lzaW9uKHgpCiNkZWZpbmUgYWxsKHgpIHguYmVnaW4oKSwgeC5lbmQoKQojZGVmaW5lIGxlbih4KSAoaW50KXguc2l6ZSgpCiNkZWZpbmUgbXMoYSwgeCkgbWVtc2V0KGEsIHgsIHNpemVvZihhKSkKI2RlZmluZSBiaXQobiwgeCkgKG4gPj4geCAmIDEpCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgaXMgaW5zZXJ0CiNkZWZpbmUgZWwgJ1xuJwojZGVmaW5lIGxkIGxvbmcgZG91YmxlCiNkZWZpbmUgaW50IGludDY0X3QKCmNvbnN0IGludCBtb2QgPSAxZTkgKyA3Owpjb25zdCBpbnQgb28gPSAxZTE4ICsgNzsKY29uc3QgaW50IG1heG4gPSAxZTUgKyA3OwoKaW50IG4sIG0sIGNbbWF4bl0sIHJbbWF4bl07CgppbnQgZ2V0KGludCB1KXsKCWlmKHUgPT0gclt1XSkgcmV0dXJuIHU7CglyZXR1cm4gclt1XSA9IGdldChyW3VdKTsKfQoKdm9pZCBMb25nZ1Z1eigpewoJY2luID4+IG4gPj4gbTsKCWZvcihpbnQgaT0xOyBpPD1uOyBpKyspewoJCWNpbiA+PiBjW2ldOwoJCXJbaV0gPSBpOwoJfQoJd2hpbGUobS0tKXsKCQlpbnQgeCwgeTsgY2luID4+IHggPj4geTsKCQl4ID0gZ2V0KHgpOyB5ID0gZ2V0KHkpOwoJCWlmKHggIT0geSl7CgkJCWlmKGNbeF0gPCBjW3ldKXsKCQkJCXJbeV0gPSB4OwoJCQl9ZWxzZXsKCQkJCXJbeF0gPSB5OwoJCQl9CgkJfQoJfWludCByZXMgPSAwOwoJZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CgkJaW50IHggPSBnZXQoaSk7CgkJaWYoY1t4XSA+IDApewoJCQlyZXMgKz0gY1t4XTsKCQkJY1t4XSA9IDA7CgkJfQoJfWNvdXQgPDwgcmVzOwp9CgpzaWduZWQgbWFpbigpewoJU29uaWMoKTsKCQoJaW50IFRDID0gMTsgLy9jaW4gPj4gVEM7Cgl3aGlsZShUQy0tKSBMb25nZ1Z1eigpOwoJCglFbmQoKTsKfQ==