wrap IllegalAccessException(checked) to IllegalStateException(unchecked)