docs: def is_causal_source(graph: BELGraph, node: BaseEntity) -> bool:
      """Return true of the node is a causal source.
  
      - Doesn't have any causal in edge(s)
      - Does have causal out edge(s)
      """
      # TODO reimplement to be faster
      return not has_causal_in_edges(graph, node) and has_causal_out_edges(graph, node)