use inlined bisection, and remove submodule