code: def setup(app):
      # Add new node types
      app.add_node(
          callout,
          html=(visit_callout_node, depart_callout_node),
          latex=(visit_callout_node, depart_callout_node),
          text=(visit_callout_node, depart_callout_node),
      )
      app.add_node(annotations)
  
      # Add new directives
      app.add_directive("callout", CalloutDirective)
      app.add_directive("annotations", AnnotationsDirective)
  
      # Add post-processor
      app.add_post_transform(CalloutIncludePostTransform)
  
      return {
          "version": "0.1",
          "parallel_read_safe": True,
          "parallel_write_safe": True,
      }
  
imports: from docutils import nodes
  from sphinx.util.docutils import SphinxDirective
  from sphinx.transforms import SphinxTransform
  from docutils.nodes import Node
label_desc: Use image node_id 5 for calling a global function with example usage: setup(app) and returns: dict