please make it throw exception so derived should override.