class_docstr: Jointly trains 2 surrogate decision trees.
  Refines diff (or sim) regions by sample generation.
code: def _get_prediction(self, row, tree):
      cur_layer = tree
      # print(cur_layer['col'],cur_layer['index_col'])
      while cur_layer and ("cutoff" in cur_layer):
          # print(cur_layer['col'],cur_layer['index_col'], cur_layer['cutoff'], row[cur_layer['index_col']])
          if row[cur_layer["index_col"]] < cur_layer["cutoff"]:
              if not cur_layer[
                  "left"
              ]:  # true if `cur_layer['left'] is None`
                  return cur_layer["val"]
              cur_layer = cur_layer["left"]
          else:
              if not cur_layer["right"]:
                  return cur_layer["val"]
              cur_layer = cur_layer["right"]
      else:
          return cur_layer.get("val")
  
imports: import numpy
  import pandas
  from aix360.algorithms.imd.rule import Rule
label_desc: Use image node_id 13 for calling the JointSurrogateTree obj's underlying member method code with example usage: obj._get_prediction(row, tree) and returns: cur_layer, cur_layer, cur_layer