code: @Override
  	public void propagate(int evtmask) throws ContradictionException {
  		if (PropagatorEventType.isFullPropagation(evtmask)) {
  			for (int i = 0; i < n; i++) {
  				e1[i].set(i);
  				e2[i].set(i);
  				size[i].set(1);
  				g.removeArc(i,i,this);
  			}
  			ISet nei;
  			for (int i = 0; i < n; i++) {
  				nei = g.getMandNeighOf(i);
  				for (int j : nei) {
  					if (i < j) {
  						enforce(i, j);
  					}
  				}
  			}
  		}
  		gdm.unfreeze();
  	}
docs: ***********************************************************************************