code: def _parse_tree_json_vertices(self, vertices, metadata_mapping):
      nodes = {}
  
      for v in vertices:
          node_id = v.get("id", None)
          split_feature = v.get("name", None)
          if split_feature is not None:
              idx = int(split_feature.strip("{").strip("}"))
              split_feature = metadata_mapping[idx]
          value = v.get("value", None)
          node_type = v.get("type", None)
          left_id = v.get("yes_child", None)
          right_id = v.get("no_child", None)
          missing_id = v.get("missing_child", None)
          nodes[node_id] = Node(
              node_id,
              split_feature,
              value,
              node_type,
              left_id,
              right_id,
              missing_id,
          )
      return nodes
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  from turicreate.util import _raise_error_if_not_of_type
  from turicreate.toolkits._internal_utils import _numeric_param_check_range
  import sys
label_desc: Use image node_id 4 for calling the DecisionTree obj's underlying member method code with example usage: obj._parse_tree_json_vertices(vertices, metadata_mapping) and returns: nodes