refactoring, better handling of errors encapsulation