def main(): N,Q = map(int,input().split()) G = [[] for _ in range(N)] for i in range(N-1): a,b = map(int,input().split()) a -= 1; b -= 1 G[a].append(b) G[b].append(a) chi = [0]*N par = [0]*N par[0] = -1 stack = [] stack.append(~0) stack.append(0) while stack: v = stack.pop() if v >= 0: for u in G[v]: if u == par[v]: continue par[u] = v stack.append(~u) stack.append(u) else: v = ~v ret = 1 for u in G[v]: ret += chi[u] chi[v] = ret #print(chi) ans = 0 for i in range(Q): p,x = map(int,input().split()) p -= 1 ans += chi[p]*x print(ans) if __name__ == '__main__': main()