code: def mutate(self, config):
          
  
          # TODO: Make a configuration item to choose whether or not multiple
          # mutations can happen simultaneously.
          if random() < config.node_add_prob:
              self.mutate_add_node(config)
  
          if random() < config.node_delete_prob:
              self.mutate_delete_node(config)
  
          if random() < config.conn_add_prob:
              self.mutate_add_connection(config)
  
          if random() < config.conn_delete_prob:
              self.mutate_delete_connection()
  
          # Mutate connection genes.
          for cg in self.connections.values():
              cg.mutate(config)
  
          # Mutate node genes (bias, response, etc.).
          for ng in self.nodes.values():
              ng.mutate(config)
docs: Mutates this genome.