fixed: throws exception if PIN is invalid.