input: Write a function to create a BPMN diagram for FOMDES process 1 using Python and 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 named "proc4.png" and a DOT file named "proc4.dot".
  
  assert create_bpmn_diagram('proc4.png', 'proc4.dot') is None
output: def create_bpmn_diagram(png_filename, dot_filename):
      from bpmn_pgv import BPMN
      import pygraphviz as pgv
  
      bpmn = BPMN()
  
      # Create clusters
      se_cluster = bpmn.add_cluster(id='Secretaría Ejecutiva', name='Secretaría Ejecutiva')
      pres_cluster = bpmn.add_cluster(id='Presidencia', name='Presidencia')
      pa_cluster = bpmn.add_cluster(id='Presupuesto/Administración', name='Presupuesto/Administración')
  
      # Add tasks to clusters
      bpmn.add_task(id='Task1', name='Task 1', cluster=se_cluster)
      bpmn.add_task(id='Task2', name='Task 2', cluster=pres_cluster)
      bpmn.add_task(id='Task3', name='Task 3', cluster=pa_cluster)
  
      # Add nodes
      sigefomdes = bpmn.add_node(id='SIGEFOMDES Administración', name='SIGEFOMDES Administración')
      sisac = bpmn.add_node(id='SISAC', name='SISAC')
  
      # Connect nodes to clusters with dashed edges
      bpmn.add_edge(sigefomdes, 'Task1', style='dashed')
      bpmn.add_edge(sisac, 'Task2', style='dashed')
  
      # Save diagram
      bpmn.draw(png_filename, prog='dot')
      bpmn.write(dot_filename)