input: 
  def create_bpmn_diagram(process_label: str, clusters: dict, global_edges: dict, output_png: str, output_dot: str) -> None:
      """
      Create a BPMN diagram for FOMDES process 1 using the bpmn_pgv library. The diagram should include clusters for Secretaría Ejecutiva,
      Presidencia, and Presupuesto/Administración, with specific tasks and edges defined within each cluster. Additionally, include nodes for
      SIGEFOMDES Administración and SISAC, and connect them to the appropriate clusters using dashed edges. Finally, save the diagram as a PNG
      file and a DOT file.
      >>> create_bpmn_diagram("Liquidación de Créditos", {"se": {"se7": ("Recibir el documento protocolizado", "start"), "se8": ("Revisar el documento protocolizado", "human"), "se9": ("", "end")}, "p": {"p1": ("Firma del cheque", "human"), "p2": ("Entregar cheque a beneficiario", "message")}, "pr": {"pr2": ("Verificar documentación legal y elaborar certificación de disponibilidad", "human"), "pr3": ("Crear las cuentas por cobrar", "human"), "pr4": ("Generar tablas de amortización", "human"), "pr5": ("Imprimir y firmar orden de liquidación y cheque", "human")}}, {"Beneficiario": {"se7": {"style": "dashed"}}, "se8": {"pr2": {"style": "dashed"}}, "pr3": {"SIGEFOMDES Administración": {"style": "dashed"}}, "pr4": {"SISAC": {"style": "dashed"}}, "pr5": {"p1": {"style": "dashed"}}, "p2": {"se9": {"style": "dashed"}, "Beneficiario": {"style": "dashed"}}}, "proc4.png", "proc4.dot")
      None
      """
  
output:     
      import bpmn_pgv as bpmn
  
      # Create a new BPMN diagram
      diagram = bpmn.BPMN()
  
      # Create clusters for each department
      se_cluster = diagram.add_cluster("se", "Secretaría Ejecutiva")
      p_cluster = diagram.add_cluster("p", "Presidencia")
      pr_cluster = diagram.add_cluster("pr", "Presupuesto/Administración")
  
      # Add nodes to each cluster
      for cluster_id, tasks in clusters.items():
          cluster = diagram.get_cluster(cluster_id)
          for task_id, (task_label, task_type) in tasks.items():
              cluster.add_node(task_id, task_label, task_type)
  
      # Add global nodes and edges
      for edge_source, edge_targets in global_edges.items():
          for edge_target, edge_style in edge_targets.items():
              diagram.add_edge(edge_source, edge_target, **edge_style)
  
      # Set the process label
      diagram.set_process_label(process_label)
  
      # Save the diagram as a PNG and DOT file
      diagram.draw(output_png, format="png")
      diagram.write(output_dot)
  