added bisection algorithm