code: def _exec(self, node: AbstractPlan, depth: int):
      cur_str = (
          " " * depth * 4 + "|__ " + str(node.__class__.__name__) + "\n"
      )
      for child in node.children:
          cur_str += self._exec(child, depth + 1)
      return cur_str
  
file_path: evadb/evadb/executor/explain_executor.py
imports: import pandas
  from evadb.database import EvaDBDatabase
  from evadb.executor.abstract_executor import AbstractExecutor
  from evadb.models.storage.batch import Batch
  from evadb.plan_nodes.abstract_plan import AbstractPlan
  from evadb.plan_nodes.explain_plan import ExplainPlan
label_desc: Use image node_id 3 for calling the ExplainExecutor obj's underlying member method code with example usage: obj._exec(node, depth) and returns: cur_str