class ListValue extends PropertyValue {

    @Override
    protected ListValue deepClone(){
        ListValue newProp = new ListValue(getKey());
        newProp.setParent(getParent());
        newProp.setMeta(getMeta());
        list.forEach(c -> newProp.addPropertyValue(c.deepClone().mutable()));
        newProp.setVersion(getVersion());
        return newProp;
    }

      ListValue(String key);

}