#include <bits/stdc++.h>
#define S second
#define F first
#define PB push_back
using namespace std;
int const N=1e6+1;
bool odw[N];
int PD[N],t[N];
long long DR[N], MA2[N];
pair<long long,int>MA1[N];
vector<pair<int,int>>g[N];
void dfs(int v){
odw[v]=1;
//cout<<v;
for(pair<int,int> i:g[v]){
if(odw[i.F]==0) {
dfs(i.F);
PD[v]+=PD[i.F];
if(PD[i.F]!=0) DR[v]+=DR[i.F]+i.S;
if(MA1[v].F<=MA1[i.F].F+i.S&&PD[i.F]!=0){
MA2[v]=MA1[v].F;
MA1[v].F=MA1[i.F].F+i.S;
MA1[v].S=i.F;
}
else if(MA2[v]<MA1[i.F].F+i.S&&PD[i.F]!=0) MA2[v]=MA1[i.F].F+i.S;
}
//if(v==2) cout<<PD[v];
}
}
void dfs2(int v){
odw[v]=1;
for(pair<int,int> i:g[v]){
if(PD[i.F]-PD[v]!=0){
DR[i.F]=DR[v];
if(MA1[v].S==i.F){
if(MA2[v]+i.S>MA1[i.F].F){
MA2[i.F]=MA1[i.F].F;
MA1[i.F].F=MA2[v]+i.S;
MA1[i.F].S=v;
}
else if(MA2[v]+i.S>MA2[i.F]) MA2[i.F]=MA2[v]+i.S;
}
else {
if(MA1[v].F+i.S>MA1[i.F].F){
MA2[i.F]=MA1[i.F].F;
MA1[i.F].F=MA1[v].F+i.S;
MA1[i.F].S=v;
}
else if(MA1[v].F+i.S>MA2[i.S]) MA2[i.S]=MA1[v].F+i.S;
}
PD[i.F]=PD[v];
t[i.F]=2*DR[i.F]-MA1[i.F].F;
}
else {
t[i.F]=2*DR[v]+i.S-MA1[v].F;
cout<<i.F<<' '<<2*DR[v]+i.S<<"\n";
}
if(odw[i.F]==0) dfs2(i.F);
}
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n,m,u,v,w;
cin>>n>>m;
for(int i=1;i<n;i++){
cin>>u>>v>>w;
g[u].PB({v,w});
g[v].PB({u,w});
}
for(int i=0;i<m;i++){
cin>>u;
PD[u]++;
}
dfs(1);
for(int i=1;i<=n;i++) odw[i]=0;
dfs2(1);
for(int i=1;i<=n;i++) cout<<t[i]<<"\n";
//cout<<2*DR[1]-MA1[1].F;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgUyBzZWNvbmQKI2RlZmluZSBGIGZpcnN0IAojZGVmaW5lIFBCIHB1c2hfYmFjawp1c2luZyBuYW1lc3BhY2Ugc3RkOwppbnQgY29uc3QgTj0xZTYrMTsKYm9vbCBvZHdbTl07CmludCBQRFtOXSx0W05dOwpsb25nIGxvbmcgRFJbTl0sIE1BMltOXTsKcGFpcjxsb25nIGxvbmcsaW50Pk1BMVtOXTsKdmVjdG9yPHBhaXI8aW50LGludD4+Z1tOXTsKCnZvaWQgZGZzKGludCB2KXsKCW9kd1t2XT0xOwoJLy9jb3V0PDx2OwoJZm9yKHBhaXI8aW50LGludD4gaTpnW3ZdKXsKCQlpZihvZHdbaS5GXT09MCkgewoJCQlkZnMoaS5GKTsKCQlQRFt2XSs9UERbaS5GXTsKCQlpZihQRFtpLkZdIT0wKSBEUlt2XSs9RFJbaS5GXStpLlM7CgkJaWYoTUExW3ZdLkY8PU1BMVtpLkZdLkYraS5TJiZQRFtpLkZdIT0wKXsKCQkJTUEyW3ZdPU1BMVt2XS5GOwoJCQlNQTFbdl0uRj1NQTFbaS5GXS5GK2kuUzsKCQkJTUExW3ZdLlM9aS5GOwoJCX0KCQllbHNlIGlmKE1BMlt2XTxNQTFbaS5GXS5GK2kuUyYmUERbaS5GXSE9MCkgTUEyW3ZdPU1BMVtpLkZdLkYraS5TOwoJfQoJCS8vaWYodj09MikgY291dDw8UERbdl07Cgl9Cn0KCnZvaWQgZGZzMihpbnQgdil7CglvZHdbdl09MTsKCWZvcihwYWlyPGludCxpbnQ+IGk6Z1t2XSl7CgkJaWYoUERbaS5GXS1QRFt2XSE9MCl7CgkJCURSW2kuRl09RFJbdl07CgkJCWlmKE1BMVt2XS5TPT1pLkYpewoJCQkJaWYoTUEyW3ZdK2kuUz5NQTFbaS5GXS5GKXsKCQkJCQlNQTJbaS5GXT1NQTFbaS5GXS5GOwoJCQkJCU1BMVtpLkZdLkY9TUEyW3ZdK2kuUzsKCQkJCQlNQTFbaS5GXS5TPXY7CgkJCQl9CgkJCQllbHNlIGlmKE1BMlt2XStpLlM+TUEyW2kuRl0pIE1BMltpLkZdPU1BMlt2XStpLlM7CgkJCX0KCQkJZWxzZSB7CgkJCQlpZihNQTFbdl0uRitpLlM+TUExW2kuRl0uRil7CgkJCQkJTUEyW2kuRl09TUExW2kuRl0uRjsKCQkJCQlNQTFbaS5GXS5GPU1BMVt2XS5GK2kuUzsKCQkJCQlNQTFbaS5GXS5TPXY7CgkJCQl9CgkJCQllbHNlIGlmKE1BMVt2XS5GK2kuUz5NQTJbaS5TXSkgTUEyW2kuU109TUExW3ZdLkYraS5TOwoJCQl9CgkJCVBEW2kuRl09UERbdl07CgkJCXRbaS5GXT0yKkRSW2kuRl0tTUExW2kuRl0uRjsKCQl9CgkJZWxzZSB7CgkJCXRbaS5GXT0yKkRSW3ZdK2kuUy1NQTFbdl0uRjsKCQkJY291dDw8aS5GPDwnICc8PDIqRFJbdl0raS5TPDwiXG4iOwoJCX0KCQlpZihvZHdbaS5GXT09MCkgZGZzMihpLkYpOwoJfQp9CgppbnQgbWFpbigpIHsKCWlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgljaW4udGllKDApOwoJaW50IG4sbSx1LHYsdzsKCWNpbj4+bj4+bTsKCWZvcihpbnQgaT0xO2k8bjtpKyspewoJCWNpbj4+dT4+dj4+dzsKCQlnW3VdLlBCKHt2LHd9KTsKCQlnW3ZdLlBCKHt1LHd9KTsKCX0KCWZvcihpbnQgaT0wO2k8bTtpKyspewoJCWNpbj4+dTsKCQlQRFt1XSsrOwoJfQoJZGZzKDEpOwoJZm9yKGludCBpPTE7aTw9bjtpKyspIG9kd1tpXT0wOwoJZGZzMigxKTsKCWZvcihpbnQgaT0xO2k8PW47aSsrKSBjb3V0PDx0W2ldPDwiXG4iOwoJLy9jb3V0PDwyKkRSWzFdLU1BMVsxXS5GOwp9