class ObjectReaderImplAtomicReference
        extends ObjectReaderPrimitive {
    static final ObjectReaderImplAtomicReference INSTANCE = new ObjectReaderImplAtomicReference(Object.class);

    final Type referenceType;

    public ObjectReaderImplAtomicReference(Type referenceType) {
        super(AtomicReference.class);
        this.referenceType = referenceType;
    }

    @Override
    public Object readObject(JSONReader jsonReader, Type fieldType, Object fieldName, long features) {
        if (jsonReader.nextIfNull()) {
            return null;
        }

        Object value = jsonReader.read(referenceType);
        return new AtomicReference<>(value);
    }

    @Override
    public Object readJSONBObject(JSONReader jsonReader, Type fieldType, Object fieldName, long features) {<FILL_FUNCTION_BODY>}
}

        if (jsonReader.nextIfNull()) {
            return null;
        }

        Object value = jsonReader.read(referenceType);
        return new AtomicReference<>(value);
    
<methods>public void <init>(Class#RAW) ,public java.lang.Object createInstance(long) ,public Class#RAW getObjectClass() ,public abstract java.lang.Object readJSONBObject(com.alibaba.fastjson2.JSONReader, java.lang.reflect.Type, java.lang.Object, long) <variables>protected final non-sealed Class#RAW objectClass