code: def screen_entities(
      events: DataframeLike,
      entity_types: Optional[List[str]],
      defs: HyperBindings,
  ) -> List[str]:
      """
      List entity columns: Unskipped user-specified entities when provided, else unskipped cols
      """
      logger.debug("@screen_entities: skip [ %s ]", defs.skip)
      base = (
          entity_types
          if entity_types is not None
          else [x for x in events.columns]
      )
      out = [x for x in base if x not in defs.skip]
      logger.debug("////screen_entities: %s", out)
      return out
  
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 for calling a global function with example usage: screen_entities(events, entity_types, defs) and returns: out