code: def update_tree(root, executed_acts, total_rew):
      
      root.value = max(total_rew, root.value)
      root.visits += 1
      new_nodes = 0
  
      node = root
      for step, act in enumerate(executed_acts):
          if act not in node.children:
              node.children[act] = Node()
              new_nodes += 1
          node = node.children[act]
          node.value = max(total_rew, node.value)
          node.visits += 1
  
      return new_nodes
docs: Given the tree, a list of actions that were executed before the game ended, and a reward, update the tree
      so that the path formed by the executed actions are all updated to the new reward.