code: def _tree_traversal(
      node, lefts, rights, features, thresholds, values, count
  ):
      """
      Recursive function for parsing a tree and filling the input data structures.
      """
      if "left_child" in node:
          features.append(node["split_feature"])
          thresholds.append(node["threshold"])
          values.append([-1])
          lefts.append(count + 1)
          rights.append(-1)
          pos = len(rights) - 1
          count = _tree_traversal(
              node["left_child"],
              lefts,
              rights,
              features,
              thresholds,
              values,
              count + 1,
          )
          rights[pos] = count + 1
          return _tree_traversal(
              node["right_child"],
              lefts,
              rights,
              features,
              thresholds,
              values,
              count + 1,
          )
      else:
          features.append(0)
          thresholds.append(0)
          values.append([node["leaf_value"]])
          lefts.append(-1)
          rights.append(-1)
          return count
  
file_path: hummingbird/hummingbird/ml/operator_converters/lightgbm.py
imports: import numpy
  from onnxconverter_common.registration import register_converter
  from .None import constants
  from ._gbdt_commons import convert_gbdt_classifier_common, convert_gbdt_common
  from ._tree_commons import TreeParameters
label_desc: Use image node_id 1 for calling a global function with example usage: _tree_traversal(node, lefts, rights, features, thresholds, values, count) and returns: _tree_traversal, count