import sys sys.setrecursionlimit(10**5) n,q=map(int,input().split()) g=[[] for _ in range(n)] for _ in range(n-1): a,b=map(int,input().split()) g[a-1].append(b-1) g[b-1].append(a-1) subnode=[[] for _ in range(n)] def dfs(now,pre): subnode[now]+=1 for to in g[now]: if to==pre: continue dfs(to,now) subnode[now]+=subnode[to] dfs(0,-1) ans=0 for _ in range(q): p,x=map(int,input().split()) ans+=subnode[p-1]*x print(ans)