@Override
    public void cloneFields(Cloner cloner, Object original) {
        super.cloneFields(cloner, original);

        this.control = cloner.clone(control);
        this.lookUp = cloner.clone(lookUp);

        HashMap<Geometry, InstancedGeometry> newIgByGeom = new HashMap<>();
        for (Map.Entry<Geometry, InstancedGeometry> e : igByGeom.entrySet()) {
            newIgByGeom.put(cloner.clone(e.getKey()), cloner.clone(e.getValue()));
        }
        this.igByGeom = newIgByGeom;

        HashMap<InstanceTypeKey, InstancedGeometry> newInstancesMap = new HashMap<>();
        for (Map.Entry<InstanceTypeKey, InstancedGeometry> e : instancesMap.entrySet()) {
            newInstancesMap.put(cloner.clone(e.getKey()), cloner.clone(e.getValue()));
        }
        this.instancesMap = newInstancesMap;
    }
Called internally by com.jme3.util.clone.Cloner.  Do not call directly.
jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java