class CollectionCodec
        implements ObjectSerializer, ObjectDeserializer {
    public static final CollectionCodec instance = new CollectionCodec();

    @Override
    public Object deserialze(DefaultJSONParser parser, Type type, Object fieldName) {<FILL_FUNCTION_BODY>}

    @Override
    public void write(
            JSONSerializer serializer,
            Object object,
            Object fieldName,
            Type fieldType,
            int features
    ) throws IOException {
        JSONWriter raw = serializer.out.raw;
        ObjectWriter<?> objectWriter = raw.getContext().getObjectWriter(object.getClass());
        objectWriter.write(raw, object, fieldName, fieldType, 0L);
    }

    @Override
    public long getFeatures() {
        return 0L;
    }
}

        JSONReader reader = parser.getLexer().getReader();
        ObjectReader objectReader = reader.getContext().getObjectReader(type);
        return objectReader.readObject(reader, type, fieldName, 0L);
    
<no_super_class>