thinko
more obvious way to break out on error
earlier break