def METHOD_NAME():
  lambda0 = 0.0    
  # Communicator
  comm    = Epetra.PyComm()
  myPID   = comm.MyPID()
  numProc = comm.NumProc()
  # Suppress 'Aztec status AZ_loss: loss of precision' messages
  comm.SetTracebackMode(0)
  # Get the number of elements from the command line
  numGlobalElements = options.numelem + 1
  if numGlobalElements < numProc:
    msg = "numGlobalBlocks = %d cannot be < number of processors = %d" % \
          (numGlobalElements,numProc)
    msg += "\nTest failed!"
    raise RuntimeError(msg)
  # Get parameters
  scale = options.scale
  maxNewtonIters = options.maxNewtonIters
  N = options.N
  paramList = \
    LOCA.Epetra.defaultContinuationParameters(comm=comm,
                                              verbosity=options.verbosity)
  printParams = paramList["NOX"]["Printing"]
  lsParams    = paramList["NOX"]["Direction"]["Newton"]["Linear Solver"]
  stepper     = paramList["LOCA"]["Stepper"]
  stepSize    = paramList["LOCA"]["Step Size"]
  stepper["Continuation Parameter"] = "lambda_"
  stepper["Initial Value"] = 1.09
  stepper["Max Value"] = 2.8
  stepper["Max Steps"] = 400
  stepSize["Initial Step Size"] = -0.001
  stepSize["Max Step Size"] = 0.001
  lsParams["Size of Krylov Subspace"] = 200
  p = LOCA.ParameterVector()
  p.addParameter("lambda_", lambda0)
  interface = ChanProblemInterface(comm, N)
  soln      = interface.InitialGuess()
  noxSoln   = NOX.Epetra.Vector(soln, NOX.Epetra.Vector.CreateView)
  print('--> initial guess, done!')
  # Define the Jacobian linear system
  mfJac = NOX.Epetra.MatrixFree(printParams, interface, noxSoln)
  iReq = interface
  iJac = mfJac
  linSys = NOX.Epetra.LinearSystemAztecOO(printParams, lsParams, interface, mfJac, mfJac, soln) 
  # Create the Group
  locaSoln = NOX.Epetra.Vector(soln, NOX.Epetra.Vector.CreateView)
  globalData = LOCA.createGlobalData(paramList)
  group = LOCA.Epetra.Group(globalData, printParams, interface, locaSoln, linSys, p)
  print('--> group done!')
  # Create the convergence tests
  normF = NOX.StatusTest.NormF(1.0e-8)
  maxIters = NOX.StatusTest.MaxIters(maxNewtonIters)
  converged = NOX.StatusTest.Combo(NOX.StatusTest.Combo.OR, normF, maxIters)
  # Create the stepper
  stepper = LOCA.Stepper(globalData, group, converged, paramList)
  # Perform continuation run
  status = stepper.run()
  #
  # *** IMPORTANT ***
  # If you create a GlobalData object, as above with the line
  #     globalData = LOCA.createGlobalData(paramList)
  # you should destroy it with the following command in order to resolve
  # circular dependencies
  #
  LOCA.destroyGlobalData(globalData)
  return 0