return true or false instead of breaking