code: def de_solve(CF):
      solver = DifferentialEvolutionSolver(ND, NP)
  
      stepmon = Monitor()
      minrange = [-1000.0, -1000.0, -100.0, -10.0]
      maxrange = [1000.0, 1000.0, 100.0, 10.0]
      solver.SetRandomInitialPoints(min=minrange, max=maxrange)
      solver.SetEvaluationLimits(generations=MAX_GENERATIONS)
      solver.SetGenerationMonitor(stepmon)
  
      solver.Solve(
          CF,
          termination=ChangeOverGeneration(generations=100),
          CrossProbability=0.5,
          ScalingFactor=0.5,
      )
  
      solution = solver.Solution()
  
      return solution, stepmon
  
imports: from test_mogi import *
  from mystic.forward_model import CostFactory
  from mystic.filters import component
label_desc: Use image node_id 1 for calling a global function with example usage: de_solve(CF) and returns: solution,  stepmon