bug: rerun twice
add manually stop feature