List<BoolVar> lbvars = new ArrayList<BoolVar>();
for (int i = 0; i < alldiffLayers.length; i++) {
BitSet disjoint = alldiffLayers[i];
IntVar[] _vars = new IntVar[disjoint.cardinality()];
int[] _durs = new int[disjoint.cardinality()];
for (int k = 0, j = disjoint.nextSetBit(0); j >= 0; j = disjoint.nextSetBit(j + 1), k++) {
_vars[k] = vars[j];
_durs[k] = 1;
}
for (int l = 0; l < _vars.length - 1; l++) {
for (int m = l + 1; m < _vars.length; m++) {