modifications with move all exceptions to package exceptions and throws exception in the needed methods