#include<bits/stdc++.h>

using namespace std;

int main(){
    ios_base::sync_with_stdio(0);
    cin.tie();
    cout.tie();

    int tt;
    cin>>tt;
    while(tt--){
        long long n,s=0;
        cin>>n;
        vector < pair <long long,long long> > a(n);
        for(long long i=0;i<n;i++){
            long long x;
            cin>>x;
            a[i]={x,i};
            s+=x;
        }
        vector <long long> d(n);
        for(long long i=0;i<n-1;i++){
            long long p,q;
            cin>>p>>q;
            p--,q--;
            d[p]++,d[q]++;
        }
        sort(a.rbegin(),a.rend());
        long long ptr=0;
        cout<<s<<' ';
        for(long long i=0;i<n-2;i++){
            if(d[a[ptr].second]>1){
                d[a[ptr].second]--;
                s+=a[ptr].first;
                cout<<s<<' ';
            }
            else{
                ptr++;
                i--;
            }
        }
        cout<<'\n';
    }

    return 0;
}
