input: Write a function to create a BPMN diagram for FOMDES process 1 using Python and the bpmn_pgv library. The function 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 isinstance(create_bpmn_diagram(), type(None)) == True
  assert exists("proc4.png") == True
  assert exists("proc4.dot") == True
output: 
  def create_bpmn_diagram():
      import bpmn_pgv as bpmn
      from graphviz import Digraph
      import os
  
      g = Digraph('G', filename='proc4.dot')
  
      # Secretaría Ejecutiva cluster
      with g.subgraph(name='cluster_Secretaría_Ejecutiva') as c:
          c.attr(label='Secretaría Ejecutiva')
          c.node('Task1', 'Task 1')
          c.node('Task2', 'Task 2')
          c.edge('Task1', 'Task2')
  
      # Presidencia cluster
      with g.subgraph(name='cluster_Presidencia') as c:
          c.attr(label='Presidencia')
          c.node('Task3', 'Task 3')
          c.node('Task4', 'Task 4')
          c.edge('Task3', 'Task4')
  
      # Presupuesto/Administración cluster
      with g.subgraph(name='cluster_Presupuesto_Administración') as c:
          c.attr(label='Presupuesto/Administración')
          c.node('Task5', 'Task 5')
          c.node('Task6', 'Task 6')
          c.edge('Task5', 'Task6')
  
      # Nodes outside clusters
      g.node('SIGEFOMDES_Administración', 'SIGEFOMDES Administración')
      g.node('SISAC', 'SISAC')
  
      # Dashed edges to connect nodes to clusters
      g.edge('SIGEFOMDES_Administración', 'Task1', style='dashed')
      g.edge('SISAC', 'Task3', style='dashed')
  
      # Save the diagram
      g.render(filename='proc4', format='png')
      g.save(filename='proc4.dot')
  