code: def split(content: str, sep: str) -> List[str]:
      r"""Splits :obj:`content` based on :obj:`sep`.
      :obj:`sep` inside parentheses or square brackets are ignored.
      """
      assert len(sep) == 1
      outs: List[str] = []
  
      start = depth = 0
      for end, char in enumerate(content):
          if char == "[" or char == "(":
              depth += 1
          elif char == "]" or char == ")":
              depth -= 1
          elif char == sep and depth == 0:
              outs.append(content[start:end].strip())
              start = end + 1
      if start != len(content):  # Respect dangling `sep`:
          outs.append(content[start:].strip())
      return outs
  
imports: import inspect
  import re
  import sys
  import typing
  from typing import Any, Callable, Dict, List, NamedTuple, Optional, Type, Union
  from torch import Tensor
label_desc: Use image node_id 2 for calling a global function with example usage: split(content, sep) and returns: outs