move liberal safety implementation to BaseModelGenerator