code: def __init__(
      self,
      TITLE: str = "nodeTitle",
      DELIM: str = "::",
      NODEID: str = "nodeID",
      ATTRIBID: str = "attribID",
      EVENTID: str = "EventID",
      EVENTTYPE: str = "event",
      SOURCE: str = "src",
      DESTINATION: str = "dst",
      CATEGORY: str = "category",
      NODETYPE: str = "type",
      EDGETYPE: str = "edgeType",
      NULLVAL: str = "null",
      SKIP: Optional[List[str]] = None,
      CATEGORIES: Dict[str, List[str]] = {},
      EDGES: Optional[Dict[str, List[str]]] = None,
  ):
      self.title = TITLE
      self.delim = DELIM
      self.node_id = NODEID
      self.attrib_id = ATTRIBID
      self.event_id = EVENTID
      self.event_type = EVENTTYPE
      self.source = SOURCE
      self.destination = DESTINATION
      self.category = CATEGORY
      self.node_type = NODETYPE
      self.edge_type = EDGETYPE
      self.categories = CATEGORIES
      self.edges = EDGES
      self.null_val = NULLVAL
  
      self.skip = (SKIP or []).copy()
      # Prevent metadata fields from turning into nodes
      bindings = vars(self)
      if SKIP is None:
          key: str
          for key in [
              #'title', 'node_id', 'attrib_id', 'event_id', 'node_type', 'edge_type'
          ]:
              if (key in bindings) and (bindings[key] not in self.skip):
                  self.skip.append(bindings[key])
          self.skip.sort()
  
imports: from typing import TYPE_CHECKING, Any, Dict, List, Optional
  from .Engine import Engine, DataframeLike, DataframeLocalLike
  import numpy, pandas, pyarrow, sys
  from .util import setup_logger
label_desc: Use image node_id 1 to create a new HyperBindings object  with example: obj = HyperBindings(TITLE, DELIM, NODEID, ATTRIBID, EVENTID, EVENTTYPE, SOURCE, DESTINATION, CATEGORY, NODETYPE, EDGETYPE, NULLVAL, SKIP, CATEGORIES, EDGES)