code: def get_thresholds(self) -> np.ndarray:
      if self.thresholds is not None:
          return self.thresholds
  
      node_thresholds = [-1] * self.nnodes()
      for i in range(self.nnodes()):
          if (
              self.children_left[i] != -1
              and self.children_right[i] != -1
          ):
              if self.is_categorical_split(i):
                  node_thresholds[i] = list(
                      map(
                          int,
                          self.tree_nodes[i]["threshold"].split("||"),
                      )
                  )
              else:
                  node_thresholds[i] = round(
                      self.tree_nodes[i]["threshold"], 2
                  )
  
      self.thresholds = np.array(node_thresholds, dtype=object)
      return self.thresholds
  
imports: from collections import defaultdict
  from typing import List, Mapping
  import numpy
  import pandas
  from lightgbm.basic import Booster
  from dtreeviz.models.shadow_decision_tree import ShadowDecTree, VisualisationNotYetSupportedError
  from dtreeviz import utils
label_desc: Use image node_id 7 for calling the ShadowLightGBMTree obj's underlying member method code with example usage: obj.get_thresholds() and returns: self, self