refactor of secant solver