class FastJsonFeature
        implements Feature {
    private static final String JSON_FEATURE = FastJsonFeature.class.getSimpleName();

    @Override
    public boolean configure(final FeatureContext context) {<FILL_FUNCTION_BODY>}
}

        try {
            final Configuration config = context.getConfiguration();

            final String jsonFeature = CommonProperties.getValue(
                    config.getProperties(),
                    config.getRuntimeType(),
                    InternalProperties.JSON_FEATURE,
                    JSON_FEATURE,
                    String.class
            );

            // Other JSON providers registered.
            if (!JSON_FEATURE.equalsIgnoreCase(jsonFeature)) {
                return false;
            }

            // Disable other JSON providers.
            context.property(
                    PropertiesHelper.getPropertyNameForRuntime(
                            InternalProperties.JSON_FEATURE,
                            config.getRuntimeType()
                    ),
                    JSON_FEATURE
            );

            // Register FastJson.
            if (!config.isRegistered(FastJsonProvider.class)) {
                context.register(FastJsonProvider.class, MessageBodyReader.class, MessageBodyWriter.class);
            }
        } catch (NoSuchMethodError e) {
            // skip
        }

        return true;
    
<no_super_class>