#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll start[200001];
ll endd[200001];
vector<ll>ans;
vector<ll>vect[200001];
ll visited[200001];
ll level[200001];
ll arr[200001];
ll b;
//
void dfs(int node,int par,int lvl)
{
b++;
start[node]=b;
ans.push_back(node);
level[node]=lvl;
for(auto child:vect[node])
{
if(child!=par)
{
dfs(child,node,lvl+1);
}
}
endd[node]=b;
}
//
void solve(ll x)
{
if(start[x]!=endd[x])
{
for(int j=start[x]+1;j<=endd[x];j++)
{ if(visited[ans[j-1]]==0){
if((level[x]-level[ans[j-1]])%2==0)
{arr[x]+=arr[ans[j-1]];
arr[ans[j-1]]=0;
visited[ans[j-1]]=1;
}
}
}
}
}
int main()
{
ll t; cin>>t;
while(t--)
{
ll n,q; cin>>n>>q;
for(ll i =1;i<=n;i++)
{
vect[i].clear();
visited[i]=0;
level[i]=0;
arr[i]=0;
ans.clear();
start[i]=0;
endd[i]=0;
}
for(ll i=1;i<=n;i++) cin>>arr[i];
//
for(int i=1;i<n;i++)
{
int a,b;
cin>>a>>b;
vect[a].push_back(b);
vect[b].push_back(a);
}
//
b=0;
dfs(1,-1,0);
//
while(q--)
{
ll x; cin>>x;
solve(x);
}
for(int i=1;i<=n;i++)
{
cout<<arr[i]<<" ";
}
cout<<endl;
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBsbCBsb25nIGxvbmcKbGwgc3RhcnRbMjAwMDAxXTsgCmxsIGVuZGRbMjAwMDAxXTsgCiAKdmVjdG9yPGxsPmFuczsgCnZlY3RvcjxsbD52ZWN0WzIwMDAwMV07IApsbCB2aXNpdGVkWzIwMDAwMV07IApsbCBsZXZlbFsyMDAwMDFdOwpsbCBhcnJbMjAwMDAxXTsKbGwgYjsKLy8Kdm9pZCBkZnMoaW50IG5vZGUsaW50IHBhcixpbnQgbHZsKQp7CiAgICBiKys7IAogICAgc3RhcnRbbm9kZV09YjsgCiAgICBhbnMucHVzaF9iYWNrKG5vZGUpOyAKICAgIGxldmVsW25vZGVdPWx2bDsKICAgIGZvcihhdXRvIGNoaWxkOnZlY3Rbbm9kZV0pCiAgICB7CiAgICAgICAgaWYoY2hpbGQhPXBhcikKICAgICAgICB7CiAgICAgICAgICAgIGRmcyhjaGlsZCxub2RlLGx2bCsxKTsKICAgICAgICB9CiAgICB9CiAgICBlbmRkW25vZGVdPWI7IAp9Ci8vCnZvaWQgc29sdmUobGwgeCkKewogICAgICBpZihzdGFydFt4XSE9ZW5kZFt4XSkgCiAgICAgICAgeyAKICAgICAgICAgICAgZm9yKGludCBqPXN0YXJ0W3hdKzE7ajw9ZW5kZFt4XTtqKyspIAogICAgICAgICAgICB7IGlmKHZpc2l0ZWRbYW5zW2otMV1dPT0wKXsKICAgICAgICAgICAgICAgIGlmKChsZXZlbFt4XS1sZXZlbFthbnNbai0xXV0pJTI9PTApCiAgICAgICAgICAgICAgICAgICB7YXJyW3hdKz1hcnJbYW5zW2otMV1dOwogICAgICAgICAgICAgICAgICAgIGFyclthbnNbai0xXV09MDsKICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgdmlzaXRlZFthbnNbai0xXV09MTsKICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICB9IAogCiAgICAgICAgfSAKfQogCmludCBtYWluKCkKewogbGwgdDsgY2luPj50Owogd2hpbGUodC0tKQogewogICAgIGxsIG4scTsgIGNpbj4+bj4+cTsKIAogICAgIGZvcihsbCBpID0xO2k8PW47aSsrKQogICAgIHsKICAgICAgICAgdmVjdFtpXS5jbGVhcigpOwogICAgICAgICB2aXNpdGVkW2ldPTA7CiAgICAgICAgIGxldmVsW2ldPTA7CiAgICAgICAgIGFycltpXT0wOwogICAgICAgICBhbnMuY2xlYXIoKTsKICAgICAgICAgc3RhcnRbaV09MDsKICAgICAgICAgZW5kZFtpXT0wOwogCiAgICAgfQogICAgIGZvcihsbCBpPTE7aTw9bjtpKyspIGNpbj4+YXJyW2ldOwogICAgIC8vCiAgICAgZm9yKGludCBpPTE7aTxuO2krKykKICAgICB7CiAgICAgICAgIGludCBhLGI7CiAgICAgICAgIGNpbj4+YT4+YjsKICAgICAgICAgdmVjdFthXS5wdXNoX2JhY2soYik7CiAgICAgICAgIHZlY3RbYl0ucHVzaF9iYWNrKGEpOwogICAgIH0KICAgICAvLwogICAgIGI9MDsKICAgICBkZnMoMSwtMSwwKTsKICAgICAvLwogICAgIHdoaWxlKHEtLSkKICAgICB7CiAgICAgICAgIGxsIHg7IGNpbj4+eDsKICAgICAgICAgc29sdmUoeCk7CiAgICAgIAogICAgIH0KICAgICAgICBmb3IoaW50IGk9MTtpPD1uO2krKykKICAgICB7CiAgICAgICAgIGNvdXQ8PGFycltpXTw8IiAiOwogICAgIH0KICAgICBjb3V0PDxlbmRsOwogCiAgICAgCiB9CiAKfQ==