code: public void propagate(int evtmask) throws ContradictionException {
  		if (waitFirstSol && getModel().getSolver().getSolutionCount() == 0) {
  			return;//the UB does not allow to prune
  		}
  		// initialisation
  		rebuild();
  		setCosts();
  		int lb;
  		do {
  			lb = obj.getLB();
  			lagrangianRelaxation();
  		} while (lb < obj.getLB());
  	}
docs: ***********************************************************************************