added "throws exception"