refactor error handling
optimize exception-less methods