@Override
public void duplicate(Solver solver, THashMap<Object, Object> identitymap) {
if (!identitymap.containsKey(this)) {
this.vars[0].duplicate(solver, identitymap);
IntVar X = (IntVar) identitymap.get(this.vars[0]);
this.vars[1].duplicate(solver, identitymap);
IntVar Y = (IntVar) identitymap.get(this.vars[1]);
this.vars[2].duplicate(solver, identitymap);
IntVar Z = (IntVar) identitymap.get(this.vars[2]);
this.absX.duplicate(solver, identitymap);
IntVar absX = (IntVar) identitymap.get(this.absX);
this.absY.duplicate(solver, identitymap);
IntVar absY = (IntVar) identitymap.get(this.absY);
this.absZ.duplicate(solver, identitymap);
IntVar absZ = (IntVar) identitymap.get(this.absZ);
identitymap.put(this, new PropDivXYZ(X, Y, Z, absX, absY, absZ));
}
}