CspSolver
class's
+ * {@link jopt.csp.CspSolver#reset()} and
+ * {@link jopt.csp.CspSolver#restoreNeighboringSolution(SolverSolution, SolverSolution)}
+ *
+ * This action is not a replacement of the restore neighboring solution
+ * method in the CspSolver class. It is just a convenient way of calling
+ * the restore during a search.
+ *
+ * @param initial Initial solution related to neighbor
+ * @param neighbors Array of neighboring solutions to be browsed
+ */
+ public SearchAction browseNeighbors(SolverSolution initial, SolverSolution neighbors[]);
+
+ /**
+ * Restores a neighboring solution to the solver
+ *
+ * @param initial Initial solution related to neighbor
+ * @param neighbor Neighboring solution to be restored
+ */
+ public SearchAction moveToNeighbor(SolverSolution initial, SolverSolution neighbor);
+
+ /**
+ * Creates a neighborhood that is useful for flipping 0 and 1
+ * values on binary variables. For each variable defined, a
+ * neighboring solution will be defined that either assigns
+ * the variable's value to 1 or the variable's value to 0.
+ *
+ * @param vars Array of variables to be flipped to produce neighborhood
+ */
+ public Neighborhood flipNeighborhood(CspIntVariable vars[]);
+
+ /**
+ * Creates a neighborhood where each neighbor selects two
+ * variables from the initial solution and swaps their values
+ *
+ * @param vars Array of variables to be swapped
+ */
+ public Neighborhood swapNeighborhood(CspIntVariable vars[]);
+
+ /**
+ * Creates a neighborhood from a combination of several neighborhoods
+ *
+ * @param neighborhoods the neighborhoods to "combine"
+ */
+ public Neighborhood unifiedNeighborhood(Neighborhood[] neighborhoods);
+
+ /**
+ * Creates a unified, randomized neighborhood from the specified neighborhoods
+ *
+ * @param neighborhoods the neighborhoods to "combine" and randomize
+ */
+ public Neighborhood randomize(Neighborhood[] neighborhoods);
+
+ /**
+ * Creates a randomized neighborhood from the specified neighborhood
+ *
+ * @param neighborhood to be randomized
+ */
+ public Neighborhood randomize(Neighborhood neighborhood);
+
+ /**
+ * Creates a unified, randomized, weighted neighborhood using the specified
+ * neighbors and weights. Note that the number of neighborhoods used must
+ * match the number of weights specified.
+ *
+ * @param neighborhoods the neighborhoods to unify and randomize
+ * @param weights the weights determining how frequently neighbors
+ * from the associated neighborhood are returned
+ */
+ public Neighborhood weightedRandomize(Neighborhood[] neighborhoods, double[] weights);
+
+ /**
+ * This action will browse a list of neighbors produced from a {@link jopt.csp.search.Neighborhood}
+ * and attempt to apply each in turn in order to locate other valid solutions to
+ * the problem. The application of a neighboring solution is very similar to
+ * restoring a solution. It does not reset any of the variables, but simply constrains
+ * them further to conform to the values of the currently selected neighbor.
+ *
+ * If you want to want to apply a neighboring solution to a problem so the
+ * exact solution is restored, you may want to refer to the CspSolver
class's
+ * {@link jopt.csp.CspSolver#reset()} and
+ * {@link jopt.csp.CspSolver#restoreNeighboringSolution(SolverSolution, SolverSolution)}
+ *
+ * This action is not a replacement of the restore neighboring solution
+ * method in the CspSolver class. It is just a convenient way of calling
+ * the restore during a search.
+ *
+ * @param initial Initial solution related to neighbor
+ * @param hood Neighborhood of solutions, each to be applied as an alternative choices
+ * @param current Updated as neighbors are restored to solver to store the currently selected neighbor
+ * @see #browseNeighbors(SolverSolution, SolverSolution[])
+ * @see #selectCurrentNeighbor(SolverSolution, CurrentNeighbor)
+ */
+ public SearchAction browseNeighborhood(SolverSolution initial,
+ Neighborhood hood, CurrentNeighbor current);
+
+ /**
+ * This action will browse a list of neighboring solutions with the guidance of
+ * a metaheuristic used to determine which solutions are acceptable.
+ *
+ * @param initial Initial solution related to neighbor
+ * @param hood Neighborhood of solutions, each to be applied as an alternative choice
+ * @param meta Metaheuristic used to guide the search
+ * @param current Updated as neighbors are restored to solver to store the currently selected neighbor
+ * @see #browseNeighborhood(SolverSolution, Neighborhood, CurrentNeighbor)
+ */
+ public SearchAction browseNeighborhood(SolverSolution initial, Neighborhood hood,
+ Metaheuristic meta, CurrentNeighbor current);
+
+ /**
+ * Advises neighborhoods that the current neighbor is about
+ * to be made the new initial solution. This is preferable to the
+ * {@link jopt.csp.spi.search.actions.StoreSolutionAction StoreSolutionAction}
+ * since it will call the neighborSelected() method on the
+ * neighborhood that produced the solution before the initial solution is
+ * updated.
+ *
+ * @param initial Initial solution neighbor is based upon that will be updated
+ * @param current Current neighboring solution that is applied to the problem
+ */
+ public SearchAction selectCurrentNeighbor(SolverSolution initial, CurrentNeighbor current);
+
+ /**
+ * Action that will post a constraint during searching that will require additional
+ * solutions located to be better than the solution given to this action. The constraint
+ * is based upon the objective expression and value stored in the solution.
+ *
+ * @param solution Solution that should be improved upon
+ * @param step Positive value indicating amount objective value should be improved
+ */
+ public SearchAction improve(SolverSolution solution, int step);
+
+ /**
+ * Action that will post a constraint during searching that will require additional
+ * solutions located to be better than the solution given to this action. The constraint
+ * is based upon the objective expression and value stored in the solution.
+ *
+ * @param solution Solution that should be improved upon
+ * @param step Positive value indicating amount objective value should be improved
+ */
+ public SearchAction improve(SolverSolution solution, float step);
+
+ /**
+ * Action that will post a constraint during searching that will require additional
+ * solutions located to be better than the solution given to this action. The constraint
+ * is based upon the objective expression and value stored in the solution.
+ *
+ * @param solution Solution that should be improved upon
+ * @param step Positive value indicating amount objective value should be improved
+ */
+ public SearchAction improve(SolverSolution solution, long step);
+
+ /**
+ * Action that will post a constraint during searching that will require additional
+ * solutions located to be better than the solution given to this action. The constraint
+ * is based upon the objective expression and value stored in the solution.
+ *
+ * @param solution Solution that should be improved upon
+ * @param step Positive value indicating amount objective value should be improved
+ */
+ public SearchAction improve(SolverSolution solution, double step);
+
+ /**
+ * Advanced action that performs all actions necessary to move to a neighboring solution during
+ * local search operations and will only return the first valid neighboring solution
+ *
+ * @param solution Solution that move is based upon and result will be stored in
+ * @param hood Neighborhood of solutions relative to initial
+ * @param meta Metaheuristic used to guide the search
+ * @param goal Search goal used to select neighboring solution
+ */
+ public SearchAction neighborMove(SolverSolution solution, Neighborhood hood,
+ Metaheuristic meta, SearchGoal goal);
+
+ /**
+ * Advanced action that performs all actions necessary to move to a neighboring solution during
+ * local search operations and will only return the first valid neighboring solution
+ *
+ * @param solution Solution that move is based upon and result will be stored in
+ * @param hood Neighborhood of solutions relative to initial
+ * @param meta Metaheuristic used to guide the search
+ */
+ public SearchAction neighborMove(SolverSolution solution, Neighborhood hood, Metaheuristic meta);
+
+ /**
+ * Advanced action that performs all actions necessary to move to a neighboring solution during
+ * local search operations and will only return the first valid neighboring solution
+ *
+ * @param solution Solution that move is based upon and result will be stored in
+ * @param hood Neighborhood of solutions relative to initial
+ * @param goal Search goal used to select neighboring solution
+ */
+ public SearchAction neighborMove(SolverSolution solution, Neighborhood hood, SearchGoal goal);
+
+ /**
+ * Advanced action that performs all actions necessary to move to a neighboring solution during
+ * local search operations and will only return the first valid neighboring solution
+ *
+ * @param solution Solution that move is based upon and result will be stored in
+ * @param hood Neighborhood of solutions relative to initial
+ */
+ public SearchAction neighborMove(SolverSolution solution, Neighborhood hood);
+
+ /**
+ * Tabu Search metaheuristic that tracks moves performed during a local search
+ * and maintains lists of moves that are forbidden.
+ *
+ * @param forbiddenUndoMoves Number of moves that will return a variable to a previous value that are not allowed
+ * @param forbiddenAlterMoves Number of moves that will alter a previously changed variable in any way that are not allowed
+ * @param objectiveGap Amount objective value of move must be within initial objective value
+ * @see #browseNeighborhood(SolverSolution, Neighborhood, Metaheuristic, CurrentNeighbor)
+ */
+ public Metaheuristic tabu(int forbiddenUndoMoves, int forbiddenAlterMoves, double objectiveGap);
+
+ /**
+ * Tabu Search metaheuristic that tracks moves performed during a local search
+ * and maintains lists of moves that are forbidden.
+ *
+ * @param forbiddenUndoMoves Number of moves that will return a variable to a previous value that are not allowed
+ * @param objectiveGap Amount objective value of move must be within initial objective value
+ * @see #browseNeighborhood(SolverSolution, Neighborhood, Metaheuristic, CurrentNeighbor)
+ */
+ public Metaheuristic tabu(int forbiddenUndoMoves, double objectiveGap);
+
+ /**
+ * Tabu Search metaheuristic that tracks moves performed during a local search
+ * and maintains lists of moves that are forbidden.
+ *
+ * @param forbiddenUndoMoves Number of moves that will return a variable to a previous value that are not allowed
+ * @see #browseNeighborhood(SolverSolution, Neighborhood, Metaheuristic, CurrentNeighbor)
+ */
+ public Metaheuristic tabu(int forbiddenUndoMoves);
+}
\ No newline at end of file
diff --git a/jOptCSRecover/bin/jOpt csp api/src/java/jopt/csp/util/.#IntIntervalSet.java.1.15 b/jOptCSRecover/bin/jOpt csp api/src/java/jopt/csp/util/.#IntIntervalSet.java.1.15
new file mode 100644
index 0000000..6b86990
--- /dev/null
+++ b/jOptCSRecover/bin/jOpt csp api/src/java/jopt/csp/util/.#IntIntervalSet.java.1.15
@@ -0,0 +1,1165 @@
+package jopt.csp.util;
+
+
+
+/**
+ * A sorted set of integer intervals
+ */
+public class IntIntervalSet extends IntSet implements IntervalSet {
+
+ protected IntIntervalSetListener cpsListener;
+ protected int cpsCallback;
+
+ protected long longSize;
+ protected int size;
+
+ protected int firstIntervalIdx;
+ protected int lastIntervalIdx;
+ protected int intervalEntries;
+ protected SortableIntList startVals;
+ protected SortableIntList endVals;
+ protected SortableIntList prevIdxList;
+ protected SortableIntList nextIdxList;
+ protected int emptyCount;
+ protected SortableIntList emptyIdxList;
+
+ /**
+ * Creates a new set
+ */
+ public IntIntervalSet() {
+ startVals = new SortableIntList();
+ endVals = new SortableIntList();
+ prevIdxList = new SortableIntList();
+ nextIdxList = new SortableIntList();
+ emptyIdxList = new SortableIntList();
+ clear();
+ }
+
+ /**
+ * Constructor for cloning a set
+ *
+ * @param set set to be cloned
+ */
+ protected IntIntervalSet(IntIntervalSet set) {
+ this.longSize = set.longSize;
+ this.size = set.size;
+ this.firstIntervalIdx = set.firstIntervalIdx;
+ this.lastIntervalIdx = set.lastIntervalIdx;
+ this.startVals = new SortableIntList(set.startVals);
+ this.endVals = new SortableIntList(set.endVals);
+ this.intervalEntries = set.intervalEntries;
+ this.prevIdxList = new SortableIntList(set.prevIdxList);
+ this.nextIdxList = new SortableIntList(set.nextIdxList);
+ this.emptyCount = set.emptyCount;
+ this.emptyIdxList = new SortableIntList(set.emptyIdxList);
+ }
+
+ /**
+ * Returns the size of the set
+ */
+ public int size() {
+ return size;
+ }
+
+ /**
+ * Removes all values from the set
+ */
+ public void clear() {
+ firstIntervalIdx = -1;
+ lastIntervalIdx = -1;
+ intervalEntries = 0;
+ emptyCount = 0;
+ prevIdxList.set(0, -1);
+ nextIdxList.set(0, -1);
+ longSize = 0;
+ size = 0;
+ }
+
+ /**
+ * Returns first interval index in list
+ */
+ public int getFirstIntervalIndex() {
+ return firstIntervalIdx;
+ }
+
+ /**
+ * Returns the last index in list
+ */
+ public int getLastIntervalIndex() {
+ return lastIntervalIdx;
+ }
+
+ /**
+ * Returns next interval index in list
+ *
+ * @param idx Index preceding index that is to be found
+ */
+ public int getNextIntervalIndex(int idx) {
+ return nextIdxList.get(idx);
+ }
+
+ /**
+ * Returns previous interval index in list
+ *
+ * @param idx Index following index that is to be found
+ */
+ public int getPreviousIntervalIndex(int idx) {
+ return prevIdxList.get(idx);
+ }
+
+ /**
+ * Returns start value for interval at a given index
+ */
+ public int getIntervalStart(int idx) {
+ return startVals.get(idx);
+ }
+
+ /**
+ * Returns end value for interval at a given index
+ */
+ public int getIntervalEnd(int idx) {
+ return endVals.get(idx);
+ }
+
+ /**
+ * Returns minimum value for set
+ */
+ public int getMin() {
+ if (firstIntervalIdx == -1)
+ return Integer.MAX_VALUE;
+ return startVals.get(firstIntervalIdx);
+ }
+
+ /**
+ * Returns the start of the interval at the specified index
+ */
+ public int getMin(int intervalIdx) {
+ return startVals.get(intervalIdx);
+ }
+
+ /**
+ * Returns maximum value for set
+ */
+ public int getMax() {
+ if (lastIntervalIdx == -1)
+ return Integer.MIN_VALUE;
+ return endVals.get(lastIntervalIdx);
+ }
+
+ /**
+ * Returns the end of the interval at the specified index
+ */
+ public int getMax(int intervalIdx) {
+ return endVals.get(intervalIdx);
+ }
+
+ public boolean isIntervalContained(int start, int end) {
+ return (indexOfValue(start)>=0)&&(indexOfValue(start)==indexOfValue(end));
+ }
+
+ public boolean isIntervalEmpty(int start, int end) {
+ return (indexOfValue(start)<0)&&(indexOfValue(start)==indexOfValue(end));
+ }
+
+ public boolean isEmpty() {
+ return (firstIntervalIdx<0);
+ }
+
+ /**
+ * Returns an an int interval set of all the intervals that are free between the specified start and end time
+ * @param start - start of the interval
+ * @param end - end of the interval
+ * @return
+ */
+ public IntIntervalSet getFreeIntervalsBetween(int start, int end) {
+ IntIntervalSet iis = new IntIntervalSet();
+ iis.add(start,end);
+
+ int index = indexOfValue(start);
+ int endIndex = indexOfValue(end);
+ if ((index==endIndex)&&(index<0)) {
+ return iis;
+ }
+ if (index<0) {
+ index = -(index+1);
+ }
+ else {
+ iis.remove(start, getIntervalEnd(index));
+ index = getNextIntervalIndex(index);
+ }
+ if (endIndex<0) {
+ endIndex = -(endIndex+1);
+ }
+ else {
+ iis.remove(getIntervalStart(endIndex),end);
+ }
+ while ((index>=0)&&(index!=endIndex)) {
+ iis.remove(getIntervalStart(index),getIntervalEnd(index));
+ index = getNextIntervalIndex(index);
+ }
+ return iis;
+ }
+
+ /**
+ * Returns index of a value in the list
+ */
+ public int indexOfValue(int val) {
+ if (size == 0) return -1;
+
+ int idx = firstIntervalIdx;
+ while (idx >= 0) {
+ int start = startVals.get(idx);
+
+ // if value is not in any interval, capture
+ // index that interval should be recorded within
+ if (val < start) {
+ return -(idx+1);
+ }
+
+ // value is below end, interval is located
+ if (val <= endVals.get(idx)) {
+ return idx;
+ }
+
+ idx = nextIdxList.get(idx);
+ }
+
+ return Integer.MIN_VALUE;
+ }
+
+ /**
+ * Utility function to add interval data into storage arrays and return
+ * index of location where data was stored
+ */
+ protected int recordInterval(int start, int end) {
+ // determine index to store interval data
+ int idx = (emptyCount>0) ? emptyIdxList.get(--emptyCount) : intervalEntries++;
+
+ // store interval data
+ startVals.set(idx, start);
+ endVals.set(idx, end);
+
+ return idx;
+ }
+
+ /**
+ * Returns true if value is contained in set
+ */
+ public boolean contains(int val) {
+ return indexOfValue(val) >= 0;
+ }
+
+ /**
+ * Adds a value to set
+ */
+ public void add(int val) {
+ add(val, val);
+ }
+
+ /**
+ * Adds a value to set
+ */
+ public void add(IntIntervalSet iis) {
+ int index = iis.getFirstIntervalIndex();
+ while(index>=0) {
+ this.add(iis.getMin(index),iis.getMax(index));
+ index = iis.getNextIntervalIndex(index);
+ }
+ }
+
+ /**
+ * Utility function to remove interval from storage arrays and update
+ * previous and next interval indices
+ */
+ protected void freeInterval(int idx) {
+ // record removed index in empty array
+ emptyIdxList.set(emptyCount++, idx);
+ startVals.set(idx, 0);
+ endVals.set(idx, 0);
+ int tempPrev = prevIdxList.get(idx);
+ int tempNext = nextIdxList.get(idx);
+ prevIdxList.set(idx, -1);
+ nextIdxList.set(idx, -1);
+ if ((idx ==firstIntervalIdx)&&(idx ==lastIntervalIdx)) {
+ firstIntervalIdx = -1;
+ lastIntervalIdx = -1;
+ }
+ else if (idx == firstIntervalIdx) {
+ firstIntervalIdx = tempNext;
+ if (tempNext>=0)
+ prevIdxList.set(tempNext,tempPrev);
+ }
+ else if (idx == lastIntervalIdx) {
+ lastIntervalIdx = tempPrev;
+ if (tempPrev>=0)
+ nextIdxList.set(tempPrev,tempNext);
+ }
+ else {
+ if (tempNext>=0)
+ prevIdxList.set(tempNext,tempPrev);
+ if (tempPrev>=0)
+ nextIdxList.set(tempPrev,tempNext);
+ }
+ }
+
+ /**
+ * Utility function to adjust size of set
+ */
+ protected void adjustSize(long change) {
+ // update size of set
+ longSize += change;
+ if (longSize >= Integer.MAX_VALUE)
+ size = Integer.MAX_VALUE;
+ else
+ size = (int) longSize;
+ }
+
+ /**
+ * Adds a range of values to set
+ */
+ public void add(int start, int end) {
+ if (start > end) return;
+
+ // determine index of first [potentially] affected interval
+ // by getting the index of the start of the added interval
+ int idx = indexOfValue(start);
+
+ // check if interval is before first interval, completely between two intervals, or after last interval
+ if ((idx < 0 && indexOfValue(end) == idx) || idx == Integer.MIN_VALUE)
+ idx = this.addWithoutOverlap(start, end, idx);
+ else
+ idx = this.addWithOverlap(start, end, idx);
+
+ // check for adjacent intervals
+ if (idx >= 0)
+ this.checkForAdjacentIntervals(idx);
+ }
+
+ /**
+ * Removes any parts that both do not have in common from this.
+ */
+ public void intersect( IntIntervalSet intersector) {
+ this.removeEndingBefore(intersector.getMin());
+ this.removeStartingAfter(intersector.getMax());
+ int index = intersector.firstIntervalIdx;
+ if (index<0) {
+ return;
+ }
+ int nextIndex = intersector.getNextIntervalIndex(index);
+ while ((index>=0) && (nextIndex>=0)) {
+ int gapStart = intersector.getIntervalEnd(index)+1;
+ int gapEnd = intersector.getIntervalStart(nextIndex)-1;
+ this.remove(gapStart,gapEnd);
+ index = nextIndex;
+ nextIndex = intersector.getNextIntervalIndex(nextIndex);
+ }
+ }
+
+
+ /**
+ * Handles adding intervals that do not overlap any exisiting intervals
+ */
+ private int addWithoutOverlap(int start, int end, int idx) {
+ // create interval data
+ int newIdx = recordInterval(start, end);
+
+ // the added interval is the first interval added to this set, hurray!
+ if ((size == 0)||((firstIntervalIdx==-1)&&(lastIntervalIdx==-1))) {
+ size=0;
+ firstIntervalIdx = newIdx;
+ lastIntervalIdx = newIdx;
+ }
+ // the added interval lies completely before the first interval
+ else if (idx == -(firstIntervalIdx+1)) {
+ // adjust prev / next index lists
+ prevIdxList.set(firstIntervalIdx, newIdx);
+ nextIdxList.set(newIdx, firstIntervalIdx);
+
+ // indicate that the new interval is the first
+ prevIdxList.set(newIdx, -1);
+ firstIntervalIdx = newIdx;
+ }
+ // the added interval lies completely after the last interval
+ else if (idx == Integer.MIN_VALUE) {
+ // adjust prev / next index lists
+ nextIdxList.set(lastIntervalIdx, newIdx);
+ prevIdxList.set(newIdx, lastIntervalIdx);
+
+ // indicate that the new interval is the last
+ nextIdxList.set(newIdx, -1);
+ lastIntervalIdx = newIdx;
+ }
+ // the added interval lies completely between two existing intervals
+ else {
+ // convert idx to non-negative value indicating the index of the
+ // interval that the added interval precedes, see example:
+ // Existing Intervals
+ // |---| |---| |---|
+ // 1 2 3
+ // Added Interval
+ // xxxx
+ // idx = 3
+ idx = -idx - 1;
+
+ // adjust prev / next index lists
+ int prev = prevIdxList.get(idx);
+ nextIdxList.set(newIdx, idx);
+ prevIdxList.set(idx, newIdx);
+ nextIdxList.set(prev, newIdx);
+ prevIdxList.set(newIdx, prev);
+ }
+
+ long lEnd = end;
+ long lStart = start;
+ adjustSize(lEnd-lStart+1);
+ notifyIntervalAddition(start, end);
+
+ return newIdx;
+ }
+
+ /**
+ * Handles adding intervals that overlap at least one exisiting interval
+ */
+ private int addWithOverlap(int start, int end, int idx) {
+ // if the start of the interval to add is not in any existing interval,
+ // convert idx to the index of the first interval the interval to add overlaps
+ if (idx < 0) idx = -idx - 1;
+
+ // check if interval to add is completely contained within another interval
+ int s = startVals.get(idx);
+ int e = endVals.get(idx);
+ if (s <= start && end <= e) return -1;
+
+ // determine start of new interval and record value of previous / next indexes
+ int newStart = (s=0) ? startVals.get(nextIdx) : 0;
+ while (nextIdx>=0 && nextStart <= end) {
+ // notify of gap being filled
+ int gapStart = e+1;
+ growth += nextStart - gapStart;
+ notifyIntervalAddition(gapStart, nextStart-1);
+
+ // retrieve start and end of interval that will be removed
+ idx = nextIdx;
+ s = startVals.get(idx);
+ e = endVals.get(idx);
+
+ // retrieve index of next interval range
+ nextIdx = nextIdxList.get(idx);
+ if (nextIdx>=0)
+ nextStart = startVals.get(nextIdx);
+
+ // remove overlapping interval
+ freeInterval(idx);
+ }
+
+ // notify of gap !!! being filled
+ //
+ // |------------------|
+ // .... ..... xxxx xxxxx xxxx!!! .... .....
+ int newEnd = end;
+ if (eend) {
+ newEnd = e;
+ }
+
+ // create interval data
+ idx = recordInterval(newStart, newEnd);
+
+ // connect new index with previous and next lists
+ prevIdxList.set(idx, prevIdx);
+ nextIdxList.set(idx, nextIdx);
+
+ // adjust prev/next/first/last indexes
+ if (prevIdx >= 0)
+ nextIdxList.set(prevIdx, idx);
+ else
+ firstIntervalIdx = idx;
+
+ if (nextIdx >= 0)
+ prevIdxList.set(nextIdx, idx);
+ else
+ lastIntervalIdx = idx;
+
+ // update size of set
+ adjustSize(growth);
+
+ return idx;
+ }
+
+ /**
+ * Checks for and combines with intervals adjacent to the interval
+ * at the specified index.
+ */
+ private void checkForAdjacentIntervals(int newIdx) {
+
+ // if the interval has no previous interval, its start is clearly not adjacent to anything
+ if (newIdx != firstIntervalIdx) {
+ int previousIdx = prevIdxList.get(newIdx);
+ if (previousIdx==-1) {
+ System.out.println("newIDx: "+newIdx);
+ System.out.println("firstIntervalIdx: "+firstIntervalIdx);
+ System.out.println("PROBLEMS!");
+ return;
+ }
+ if (startVals.get(newIdx)-1 == endVals.get(previousIdx)) {
+ // the start of the added interval is adjacent to the end of an exisiting interval
+ startVals.set(newIdx, startVals.get(previousIdx));
+ int idxBeforePrevious = prevIdxList.get(previousIdx);
+ prevIdxList.set(newIdx, idxBeforePrevious);
+ if (idxBeforePrevious != -1)
+ nextIdxList.set(idxBeforePrevious, newIdx);
+ else
+ firstIntervalIdx = newIdx;
+
+ freeInterval(previousIdx);
+ }
+ }
+
+ // if the the interval has no next interval, its end is clearly not adjacent to anything
+ if (newIdx != lastIntervalIdx) {
+ int nextIdx = nextIdxList.get(newIdx);
+ if (endVals.get(newIdx)+1 == startVals.get(nextIdx)) {
+ // the end of the added interval is adjacent to the start of an existing interval
+ endVals.set(newIdx, endVals.get(nextIdx));
+ int idxAfterNext = nextIdxList.get(nextIdx);
+ nextIdxList.set(newIdx, idxAfterNext);
+ if (idxAfterNext != -1)
+ prevIdxList.set(nextIdxList.get(nextIdx), newIdx);
+ else
+ lastIntervalIdx = newIdx;
+
+ freeInterval(nextIdx);
+ }
+ }
+ }
+
+ /**
+ * Removes a value from the set
+ */
+ public void remove(int val) {
+ remove(val, val);
+ }
+
+ /**
+ * Removes a range of values from the set
+ */
+ public void remove(int start, int end) {
+ int intRemoveStart=Integer.MIN_VALUE;
+ int intRemoveEnd=Integer.MIN_VALUE;
+ if (start > end || size==0) return;
+
+ // determine index of first affected interval
+ int idx = indexOfValue(start);
+
+ // return if specified start is beyond the end of all intervals
+ //
+ // |---|
+ // ..... xxxx
+ if (idx == Integer.MIN_VALUE) return;
+
+ // specified start lies between exisiting intervals;
+ // convert returned value to index of first
+ // [potentially] affected interval
+ if (idx < 0) idx = -idx - 1;
+
+ // retrieve start and end of first [potentially] affected interval
+ int s = startVals.get(idx);
+ int e = endVals.get(idx);
+
+ // return if specified end is before the start of the [potentially]
+ // affected interval
+ //
+ // |---|
+ // ..... sxxe ..... xxxx
+ if (end < s) return;
+
+
+ // initialize indices of previous and next intervals that will be
+ // connected together later
+ int prevIdx = prevIdxList.get(idx);
+ int nextIdx = nextIdxList.get(idx);
+ int sizeChange = 0;
+
+ // block for range where end is within first (and only) affected interval
+ //
+ // |---|
+ // ..... sxxxxe .....
+ //
+ // |---|
+ // ..... sxxxxxe .....
+ //
+ // |---|
+ // ..... sxxxxxe .....
+ //
+ // |---|
+ // ..... sxxxxxxxe .....
+ //
+ // |---|
+ // ..... sxxxe .....
+ if (end <= e) {
+ // determine start and end of values to remove
+ int removeStart = (s>start) ? s : start;
+ int removeEnd = (e= 0) {
+ int nextEnd = endVals.get(nextIdx);
+ while (nextIdx>=0 && nextEnd <= end) {
+ // retrieve start and end of interval that will be removed
+ idx = nextIdx;
+ s = startVals.get(idx);
+ e = endVals.get(idx);
+
+ // notify of removal
+ sizeChange += e-s+1;
+ notifyIntervalRemoval(s, e);
+// intRemoveStart=s;
+// intRemoveEnd=e;
+ // retrieve index of next interval
+ nextIdx = nextIdxList.get(idx);
+ if (nextIdx>=0)
+ nextEnd = endVals.get(nextIdx);
+
+ // remove overlapping interval
+ freeInterval(idx);
+ }
+ }
+
+ // Interval yyyxxx is removed in this block and interval
+ // yyy is notified to listener
+ //
+ // |-------------|
+ // .... .....ooooo ooo ooo yyyxx
+ //
+ // |---------------|
+ // .... .....ooooo ooo ooo yyyyy
+ if (nextIdx >= 0) {
+ int nextStart = startVals.get(nextIdx);
+ if (nextIdx >= 0 && nextStart <= end) {
+ // retrieve start and end of interval that will be removed
+ idx = nextIdx;
+ s = startVals.get(idx);
+ e = endVals.get(idx);
+
+ // remove overlapping interval
+ sizeChange += end-s+1;
+ intRemoveStart=s;
+ intRemoveEnd=end;
+ // retrieve index of next interval range
+ nextIdx = nextIdxList.get(idx);
+
+ // replace nextIdx with new index that
+ // will be connected to prevIdx later
+ if (end < e) {
+ int tmp = recordInterval(end+1, e);
+
+ if(nextIdx < 0)
+ lastIntervalIdx = tmp;
+ else
+ prevIdxList.set(nextIdx, tmp);
+
+ nextIdxList.set(tmp, nextIdx);
+ nextIdx = tmp;
+ }
+ }
+ }
+ }
+
+ // adjust prev/next/first/last indexes
+ if (prevIdx >= 0)
+ nextIdxList.set(prevIdx, nextIdx);
+ else
+ firstIntervalIdx = nextIdx;
+
+ if (nextIdx >= 0)
+ prevIdxList.set(nextIdx, prevIdx);
+ else
+ lastIntervalIdx = prevIdx;
+
+ // update size of set
+ adjustSize(-sizeChange);
+ if (intRemoveStart>Integer.MIN_VALUE){
+ notifyIntervalRemoval(intRemoveStart,intRemoveEnd);
+ }
+ }
+
+ /**
+ * Removes all values above and including given value
+ */
+ public void removeStartingFrom(int val) {
+ if (size==0) return;
+ remove(val, endVals.get(lastIntervalIdx));
+ }
+
+ /**
+ * Removes all values below and including given value
+ */
+ public void removeEndingAt(int val) {
+ if (size==0) return;
+ remove(startVals.get(firstIntervalIdx), val);
+ }
+
+ /**
+ * Returns the next higher value in the domain or current value if none
+ * exists
+ */
+ public int getNextHigher(int val) {
+ if (size==0) return val;
+
+ // if value is before minimum value, return min
+ int min = startVals.get(firstIntervalIdx);
+ if (val < min) return min;
+
+ // if value is beyond max value, return value passed
+ int max = endVals.get(lastIntervalIdx);
+ if (val >= max) return val;
+
+ // retrieve index of next value
+ int next = val+1;
+ int idx = indexOfValue(next);
+
+ // if value exists, return it
+ if (idx>=0) return next;
+
+ // return next value
+ if (idx!=Integer.MIN_VALUE) {
+ idx = -idx - 1;
+ return startVals.get(idx);
+ }
+ else {
+ return val;
+ }
+ }
+
+ /**
+ * Returns the next lower value in the domain or current value if none
+ * exists
+ */
+ public int getNextLower(int val) {
+ if (size==0) return val;
+
+ // if value is beyond max value, return max
+ int max = endVals.get(lastIntervalIdx);
+ if (val > max) return max;
+
+ // if value is before minimum value, return value passed
+ int min = startVals.get(firstIntervalIdx);
+ if (val <= min) return val;
+
+ // retrieve index of previous value
+ int prev = val-1;
+ int idx = indexOfValue(prev);
+
+ // if value exists, return it
+ if (idx>=0) return prev;
+
+ // return next value
+ if (idx!=Integer.MIN_VALUE) {
+ idx = -idx - 1;
+ idx = getPreviousIntervalIndex(idx);
+ if (idx<0) {
+ return val;
+ }
+ return endVals.get(idx);
+ }
+ else {
+ return val;
+ }
+ }
+
+ // javadoc inherited
+ public IntervalIterator intervals() {
+ return new IntIntervalIterator();
+ }
+
+ // javadoc inherited
+ public NumberIterator values() {
+ return new IntIntervalNumberIterator();
+ }
+
+ /**
+ * Creates a duplicate of this set
+ */
+ public Object clone() {
+ return new IntIntervalSet(this);
+ }
+
+ /**
+ * Sets listener for set to be notified of changes
+ */
+ public void setListener(IntIntervalSetListener listener, int callback) {
+ cpsListener = listener;
+ cpsCallback = callback;
+
+ }
+
+
+ /**
+ * Returns listener that is currently assigned to set
+ */
+ public IntIntervalSetListener getListener() {
+ return cpsListener;
+ }
+
+ /**
+ * Notifies listener of addition of an interval
+ */
+ protected void notifyIntervalAddition(int start, int end) {
+ if (cpsListener==null) return;
+ cpsListener.intervalAdded(cpsCallback,start,end);
+ }
+
+ /**
+ * Notifies listener of removal of an interval
+ */
+ protected void notifyIntervalRemoval(int start, int end) {
+ if (cpsListener==null) return;
+ cpsListener.intervalRemoved(cpsCallback,start,end);
+ }
+
+ public String toString() {
+ StringBuffer buf = new StringBuffer("{");
+
+ int idx = firstIntervalIdx;
+ while (idx>=0) {
+ buf.append("[");
+ buf.append(startVals.get(idx));
+ buf.append("..");
+ buf.append(endVals.get(idx));
+ buf.append("]");
+
+ idx = nextIdxList.get(idx);
+ if (idx>=0) buf.append(", ");
+ }
+
+ buf.append("}");
+
+ return buf.toString();
+ }
+
+ /**
+ * Iterator for integer intervals
+ */
+ private class IntIntervalIterator implements IntervalIterator {
+ private boolean empty;
+ private boolean first;
+ private int idx;
+
+ public IntIntervalIterator() {
+ empty = size > 0;
+ first = empty;
+ }
+
+ public boolean hasNext() {
+ if (empty) {
+ return false;
+ }
+ else {
+ return first || (idx>=0 && nextIdxList.get(idx) >= 0);
+ }
+ }
+
+ public int nextInt() {
+ if (first) {
+ idx = firstIntervalIdx;
+ first = false;
+ }
+ else {
+ idx = nextIdxList.get(idx);
+ }
+
+ return startVals.get(idx);
+ }
+
+ public long nextLong() {
+ return nextInt();
+ }
+
+ public float nextFloat() {
+ return nextInt();
+ }
+
+ public double nextDouble() {
+ return nextInt();
+ }
+
+ public int endInt() {
+ return endVals.get(idx);
+ }
+
+ public long endLong() {
+ return endInt();
+ }
+
+ public float endFloat() {
+ return endInt();
+ }
+
+ public double endDouble() {
+ return endInt();
+ }
+ }
+
+ /**
+ * Iterator for integer values
+ */
+ private class IntIntervalNumberIterator extends NumberIterator {
+ private int curIntervalIdx;
+ private int nextIntervalIdx;
+ private int n;
+ private int endVal;
+
+ public IntIntervalNumberIterator() {
+ this.curIntervalIdx = -1;
+ this.nextIntervalIdx = firstIntervalIdx;
+ }
+
+ /**
+ * returns true if more elements exist
+ */
+ public boolean hasNext() {
+ return curIntervalIdx >= 0 || nextIntervalIdx >= 0;
+ }
+
+ /**
+ * Returns next element
+ */
+ public Number next() {
+ // Check if returning values from an interval
+ if (curIntervalIdx<0) {
+ // make next interval as current interval
+ curIntervalIdx = nextIntervalIdx;
+ nextIntervalIdx = nextIdxList.get(curIntervalIdx);
+
+ // retrieve start and end values of interval
+ n = startVals.get(curIntervalIdx);
+ endVal = endVals.get(curIntervalIdx);
+
+ // If start equals end, reset interval
+ if (n == endVal) curIntervalIdx = -1;
+
+ return this;
+ }
+
+ n++;
+
+ // Reset interval if n equals last value
+ if (n == endVal) curIntervalIdx = -1;
+
+ // Return next value in enumeration
+ return this;
+ }
+
+ public int intValue() {
+ return n;
+ }
+
+ public long longValue() {
+ return n;
+ }
+
+ public float floatValue() {
+ return n;
+ }
+
+ public double doubleValue() {
+ return n;
+ }
+ }
+
+ /**
+ * An equals method for comparing if two iis objects are equivalent
+ * @param iis - JSIntIntervalSet to compare this to
+ * @return - true if the objects are determined to be equal
+ */
+ public boolean equals(IntIntervalSet iis) {
+ if ((iis.getMin()!=getMin())||
+ (iis.getMax()!=getMax())) {
+ return false;
+ }
+ int thisIndex = firstIntervalIdx;
+ int otherIndex = iis.firstIntervalIdx;
+ while((thisIndex>=0)&&(otherIndex>=0)) {
+ if (getIntervalStart(thisIndex)!= iis.getIntervalStart(otherIndex)) {
+ return false;
+ }
+ if (getIntervalEnd(thisIndex)!= iis.getIntervalEnd(otherIndex)) {
+ return false;
+ }
+ thisIndex = getNextIntervalIndex(thisIndex);
+ otherIndex = iis.getNextIntervalIndex(otherIndex);
+ }
+ return ((thisIndex<0)&&(otherIndex<0));
+ }
+
+ /**
+ * An equals method for comparing if two iis objects are equivalent
+ * @param ivis - JSIntValIntervalSet to compare this to
+ * @return - true if the objects are determined to be equal
+ */
+ public boolean equals(IntValIntervalSet ivis) {
+ if ((ivis.getMin()!=getMin())||
+ (ivis.getMax()!=getMax())) {
+ return false;
+ }
+ int thisIndex = firstIntervalIdx;
+ int otherIndex = ivis.firstIntervalIdx;
+ while((thisIndex>=0)&&(otherIndex>=0)) {
+ if (getIntervalStart(thisIndex)!= ivis.getIntervalStart(otherIndex)) {
+ return false;
+ }
+ int nextOther = ivis.getNextIntervalIndex(otherIndex);
+ while ((nextOther>=0) && (ivis.getIntervalStart(nextOther)-1==ivis.getIntervalEnd(otherIndex))
+ && (ivis.getIntervalEnd(nextOther)>ivis.getIntervalEnd(otherIndex))) {
+ otherIndex = nextOther;
+ nextOther = ivis.getNextIntervalIndex(nextOther);
+ }
+
+ if (getIntervalEnd(thisIndex)!= ivis.getIntervalEnd(otherIndex)) {
+ return false;
+ }
+ thisIndex = getNextIntervalIndex(thisIndex);
+ otherIndex = ivis.getNextIntervalIndex(otherIndex);
+ }
+ return ((thisIndex<0)&&(otherIndex<0));
+ }
+
+}
+
diff --git a/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/arcalgorithm/package.html b/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/arcalgorithm/package.html
new file mode 100644
index 0000000..8133903
--- /dev/null
+++ b/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/arcalgorithm/package.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+The heart of the constraint satisfaction functionality.
+
+Contains the algorithm(s) used during the propagation of constraints and all of the related classes.
+The related classes include the constraints and the variables upon which those constraints operate in
+addition to the arcs and nodes and the graph into which the arcs and nodes are put. Several supporting
+structures including utilites and domains also form a signifant component of this important package.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/search/.#LocalSearchImpl.java.1.8 b/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/search/.#LocalSearchImpl.java.1.8
new file mode 100644
index 0000000..6258bcc
--- /dev/null
+++ b/jOptCSRecover/bin/jOpt csp spi/src/java/jopt/csp/spi/search/.#LocalSearchImpl.java.1.8
@@ -0,0 +1,188 @@
+/*
+ * LocalSearchImpl.java
+ *
+ * Created on Jun 22, 2005
+ */
+package jopt.csp.spi.search;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Iterator;
+
+import jopt.csp.search.CurrentNeighbor;
+import jopt.csp.search.LocalSearch;
+import jopt.csp.search.Metaheuristic;
+import jopt.csp.search.Neighborhood;
+import jopt.csp.search.RandomizedNeighborhood;
+import jopt.csp.search.SearchAction;
+import jopt.csp.search.SearchGoal;
+import jopt.csp.search.UnifiedNeighborhood;
+import jopt.csp.search.WeightedRandomizedNeighborhood;
+import jopt.csp.solution.SolverSolution;
+import jopt.csp.spi.search.localsearch.BrowseNeighborhoodAction;
+import jopt.csp.spi.search.localsearch.BrowseNeighborsAction;
+import jopt.csp.spi.search.localsearch.FlipNeighborhood;
+import jopt.csp.spi.search.localsearch.ImproveSolutionAction;
+import jopt.csp.spi.search.localsearch.NeighborMoveAction;
+import jopt.csp.spi.search.localsearch.SelectCurrentNeighborAction;
+import jopt.csp.spi.search.localsearch.SwapNeighborhood;
+import jopt.csp.spi.search.localsearch.TabuMetaheuristic;
+import jopt.csp.spi.solver.ConstraintStore;
+import jopt.csp.variable.CspIntVariable;
+import jopt.csp.variable.CspVariable;
+
+/**
+ * Creates and returns common local search objects that can be used
+ * to build searches
+ *
+ * @author Nick Coleman
+ * @version $Revision: 1.8 $
+ */
+public class LocalSearchImpl implements LocalSearch {
+ private ConstraintStore store;
+
+ public LocalSearchImpl(ConstraintStore store) {
+ this.store = store;
+ }
+
+ //clone constructor
+ protected LocalSearchImpl(LocalSearchImpl lsi) {
+ this.store = lsi.store;
+ }
+
+ /**
+ * Adds all variables to the constraint store to ensure their states are
+ * maintained correctly while searching
+ */
+ private void addVarsToCs(CspVariable vars[]) {
+ for (int i=0; i System.currentTimeMillis();
+ }
+
+ public Object clone() {
+ return new DeadlineLimit(endTime);
+ }
+
+}
diff --git a/jOptCSRecover/bin/jopt/csp/CspSolver.class b/jOptCSRecover/bin/jopt/csp/CspSolver.class
new file mode 100644
index 0000000..9d15a6a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/CspSolver.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/NQueenBFS.class b/jOptCSRecover/bin/jopt/csp/example/api/NQueenBFS.class
new file mode 100644
index 0000000..6d1cb63
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/NQueenBFS.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/NQueenBase.class b/jOptCSRecover/bin/jopt/csp/example/api/NQueenBase.class
new file mode 100644
index 0000000..458f769
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/NQueenBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/NQueenDFS.class b/jOptCSRecover/bin/jopt/csp/example/api/NQueenDFS.class
new file mode 100644
index 0000000..6b65761
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/NQueenDFS.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/NQueenLocalSearch.class b/jOptCSRecover/bin/jopt/csp/example/api/NQueenLocalSearch.class
new file mode 100644
index 0000000..0c210f4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/NQueenLocalSearch.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/SetExample.class b/jOptCSRecover/bin/jopt/csp/example/api/SetExample.class
new file mode 100644
index 0000000..0f25740
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/SetExample.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/StartHere.class b/jOptCSRecover/bin/jopt/csp/example/api/StartHere.class
new file mode 100644
index 0000000..c8e4db9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/StartHere.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/Sudoku.class b/jOptCSRecover/bin/jopt/csp/example/api/Sudoku.class
new file mode 100644
index 0000000..6ed16fc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/Sudoku.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/api/Sudoku16.class b/jOptCSRecover/bin/jopt/csp/example/api/Sudoku16.class
new file mode 100644
index 0000000..fa1652c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/api/Sudoku16.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/spi/FiveQueenMultipleSolutions.class b/jOptCSRecover/bin/jopt/csp/example/spi/FiveQueenMultipleSolutions.class
new file mode 100644
index 0000000..6020d82
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/spi/FiveQueenMultipleSolutions.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/spi/FourQueen.class b/jOptCSRecover/bin/jopt/csp/example/spi/FourQueen.class
new file mode 100644
index 0000000..e4455cb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/spi/FourQueen.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/spi/FourQueenAutoPropagation.class b/jOptCSRecover/bin/jopt/csp/example/spi/FourQueenAutoPropagation.class
new file mode 100644
index 0000000..632e45b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/spi/FourQueenAutoPropagation.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/example/spi/Nqueen.class b/jOptCSRecover/bin/jopt/csp/example/spi/Nqueen.class
new file mode 100644
index 0000000..8b22bf0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/example/spi/Nqueen.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/CurrentNeighbor.class b/jOptCSRecover/bin/jopt/csp/search/CurrentNeighbor.class
new file mode 100644
index 0000000..c975ec1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/CurrentNeighbor.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/IntegerSelector.class b/jOptCSRecover/bin/jopt/csp/search/IntegerSelector.class
new file mode 100644
index 0000000..ce96ba0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/IntegerSelector.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/LocalSearch.class b/jOptCSRecover/bin/jopt/csp/search/LocalSearch.class
new file mode 100644
index 0000000..eb201dc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/LocalSearch.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/LongSelector.class b/jOptCSRecover/bin/jopt/csp/search/LongSelector.class
new file mode 100644
index 0000000..1d8e02c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/LongSelector.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/Metaheuristic.class b/jOptCSRecover/bin/jopt/csp/search/Metaheuristic.class
new file mode 100644
index 0000000..53892c3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/Metaheuristic.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/Neighborhood.class b/jOptCSRecover/bin/jopt/csp/search/Neighborhood.class
new file mode 100644
index 0000000..eb6d6f1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/Neighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/RandomizedNeighborhood.class b/jOptCSRecover/bin/jopt/csp/search/RandomizedNeighborhood.class
new file mode 100644
index 0000000..a9e72e2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/RandomizedNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/Search.class b/jOptCSRecover/bin/jopt/csp/search/Search.class
new file mode 100644
index 0000000..8be1e3a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/Search.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchAction.class b/jOptCSRecover/bin/jopt/csp/search/SearchAction.class
new file mode 100644
index 0000000..9d4c1cd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchActions.class b/jOptCSRecover/bin/jopt/csp/search/SearchActions.class
new file mode 100644
index 0000000..3030cb8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchActions.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchGoal.class b/jOptCSRecover/bin/jopt/csp/search/SearchGoal.class
new file mode 100644
index 0000000..eb13f69
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchGoals.class b/jOptCSRecover/bin/jopt/csp/search/SearchGoals.class
new file mode 100644
index 0000000..c72837e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchGoals.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchLimit.class b/jOptCSRecover/bin/jopt/csp/search/SearchLimit.class
new file mode 100644
index 0000000..0257e88
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchLimits.class b/jOptCSRecover/bin/jopt/csp/search/SearchLimits.class
new file mode 100644
index 0000000..ea59e1c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchLimits.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchManager.class b/jOptCSRecover/bin/jopt/csp/search/SearchManager.class
new file mode 100644
index 0000000..857c0b3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchNode.class b/jOptCSRecover/bin/jopt/csp/search/SearchNode.class
new file mode 100644
index 0000000..f450dd9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchNodeReference.class b/jOptCSRecover/bin/jopt/csp/search/SearchNodeReference.class
new file mode 100644
index 0000000..d922267
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchNodeReference.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchTechnique.class b/jOptCSRecover/bin/jopt/csp/search/SearchTechnique.class
new file mode 100644
index 0000000..841550b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchTechnique.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SearchTechniques.class b/jOptCSRecover/bin/jopt/csp/search/SearchTechniques.class
new file mode 100644
index 0000000..a9d4497
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SearchTechniques.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SetSelector.class b/jOptCSRecover/bin/jopt/csp/search/SetSelector.class
new file mode 100644
index 0000000..b20d320
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SetSelector.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/SimpleNeighborhood.class b/jOptCSRecover/bin/jopt/csp/search/SimpleNeighborhood.class
new file mode 100644
index 0000000..4d84de5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/SimpleNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/UnifiedNeighborhood.class b/jOptCSRecover/bin/jopt/csp/search/UnifiedNeighborhood.class
new file mode 100644
index 0000000..30d45d4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/UnifiedNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/WeightedRandomizedNeighborhood.class b/jOptCSRecover/bin/jopt/csp/search/WeightedRandomizedNeighborhood.class
new file mode 100644
index 0000000..141d5b3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/search/WeightedRandomizedNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/search/package.html b/jOptCSRecover/bin/jopt/csp/search/package.html
new file mode 100644
index 0000000..0827dd5
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/search/package.html
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+The interfaces to all your searching needs.
+
+Defines several interfaces (and some implementations) related to searching. This includes interfaces
+for classes defining common search actions such as storing solutions or
+adding constraints, common search techniques like breadth-first or depth-first, search goals like
+maximize or minimize, and search limits based on elapsed time, number of failures, or other
+criteria. Also defines required operations for metaheuristics and neighborhoods - two essential elements
+of local searching - in addition to a variety of other search-related resources.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/solution/BooleanSolution.class b/jOptCSRecover/bin/jopt/csp/solution/BooleanSolution.class
new file mode 100644
index 0000000..404421a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/BooleanSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/DoubleSolution.class b/jOptCSRecover/bin/jopt/csp/solution/DoubleSolution.class
new file mode 100644
index 0000000..57b82aa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/DoubleSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/FloatSolution.class b/jOptCSRecover/bin/jopt/csp/solution/FloatSolution.class
new file mode 100644
index 0000000..573fd83
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/FloatSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/IntSolution.class b/jOptCSRecover/bin/jopt/csp/solution/IntSolution.class
new file mode 100644
index 0000000..62985f7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/IntSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/LongSolution.class b/jOptCSRecover/bin/jopt/csp/solution/LongSolution.class
new file mode 100644
index 0000000..0765112
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/LongSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/SetSolution.class b/jOptCSRecover/bin/jopt/csp/solution/SetSolution.class
new file mode 100644
index 0000000..bb78e07
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/SetSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/SolutionScope.class b/jOptCSRecover/bin/jopt/csp/solution/SolutionScope.class
new file mode 100644
index 0000000..2401699
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/SolutionScope.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/SolverSolution.class b/jOptCSRecover/bin/jopt/csp/solution/SolverSolution.class
new file mode 100644
index 0000000..6b43aaf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/SolverSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/VariableSolution.class b/jOptCSRecover/bin/jopt/csp/solution/VariableSolution.class
new file mode 100644
index 0000000..a5907eb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/solution/VariableSolution.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/solution/package.html b/jOptCSRecover/bin/jopt/csp/solution/package.html
new file mode 100644
index 0000000..11570fe
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/solution/package.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+Defines structures for storing solutions to constraint satisfaction problems
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/spi/AC1.class b/jOptCSRecover/bin/jopt/csp/spi/AC1.class
new file mode 100644
index 0000000..a0e5cc7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/AC1.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/AC3.class b/jOptCSRecover/bin/jopt/csp/spi/AC3.class
new file mode 100644
index 0000000..fc67bd0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/AC3.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/AC5.class b/jOptCSRecover/bin/jopt/csp/spi/AC5.class
new file mode 100644
index 0000000..a87f9dd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/AC5.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/SolverImpl.class b/jOptCSRecover/bin/jopt/csp/spi/SolverImpl.class
new file mode 100644
index 0000000..909a63e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/SolverImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcBasedAcAlg.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcBasedAcAlg.class
new file mode 100644
index 0000000..844e959
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcBasedAcAlg.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcQueueAcAlg.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcQueueAcAlg.class
new file mode 100644
index 0000000..8f6efda
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/ArcQueueAcAlg.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/NodeQueueAcAlg.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/NodeQueueAcAlg.class
new file mode 100644
index 0000000..a423cad
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/NodeQueueAcAlg.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/AbstractConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/AbstractConstraint.class
new file mode 100644
index 0000000..559f6c9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/AbstractConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BoolExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BoolExpr.class
new file mode 100644
index 0000000..78c1a26
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BoolExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanAndConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanAndConstraint.class
new file mode 100644
index 0000000..b0e3a20
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanAndConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanConstraint.class
new file mode 100644
index 0000000..b2b5289
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqThreeVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqThreeVarConstraint.class
new file mode 100644
index 0000000..95cb083
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqThreeVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqTwoVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqTwoVarConstraint.class
new file mode 100644
index 0000000..9a852b0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanEqTwoVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesThreeVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesThreeVarConstraint.class
new file mode 100644
index 0000000..3c0d85d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesThreeVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesTwoVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesTwoVarConstraint.class
new file mode 100644
index 0000000..fe121db
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanImpliesTwoVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanNotConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanNotConstraint.class
new file mode 100644
index 0000000..baa662a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanNotConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanOrConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanOrConstraint.class
new file mode 100644
index 0000000..35c4e41
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanOrConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanXorConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanXorConstraint.class
new file mode 100644
index 0000000..32eb52a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/BooleanXorConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/GenericBoolExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/GenericBoolExpr.class
new file mode 100644
index 0000000..dff269e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/GenericBoolExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/ThreeVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/ThreeVarConstraint.class
new file mode 100644
index 0000000..3265f39
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/ThreeVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/TwoVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/TwoVarConstraint.class
new file mode 100644
index 0000000..1deec66
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/bool/TwoVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AbsConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AbsConstraint.class
new file mode 100644
index 0000000..2c61833
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AbsConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AcosConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AcosConstraint.class
new file mode 100644
index 0000000..f854d19
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AcosConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AsinConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AsinConstraint.class
new file mode 100644
index 0000000..096f136
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AsinConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AtanConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AtanConstraint.class
new file mode 100644
index 0000000..a6bdc86
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/AtanConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/CosConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/CosConstraint.class
new file mode 100644
index 0000000..924a41a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/CosConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/DiffConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/DiffConstraint.class
new file mode 100644
index 0000000..e7bfb13
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/DiffConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ExpConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ExpConstraint.class
new file mode 100644
index 0000000..a848ec4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ExpConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/GenericNumExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/GenericNumExpr.class
new file mode 100644
index 0000000..b6e079e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/GenericNumExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NatLogConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NatLogConstraint.class
new file mode 100644
index 0000000..3c23b04
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NatLogConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumConstraint.class
new file mode 100644
index 0000000..ab2eec7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumExpr.class
new file mode 100644
index 0000000..d6c06bb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumNotBetweenConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumNotBetweenConstraint.class
new file mode 100644
index 0000000..22c96f6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumNotBetweenConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRangeConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRangeConstraint.class
new file mode 100644
index 0000000..2bb6879
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRangeConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRelationConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRelationConstraint.class
new file mode 100644
index 0000000..193b753
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/NumRelationConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/PowerConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/PowerConstraint.class
new file mode 100644
index 0000000..15083d9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/PowerConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ProdConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ProdConstraint.class
new file mode 100644
index 0000000..45ddae7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ProdConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/QuotConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/QuotConstraint.class
new file mode 100644
index 0000000..96f613b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/QuotConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SinConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SinConstraint.class
new file mode 100644
index 0000000..d442088
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SinConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SquareConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SquareConstraint.class
new file mode 100644
index 0000000..f0c6ecf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SquareConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SumConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SumConstraint.class
new file mode 100644
index 0000000..91be521
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SumConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SummationConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SummationConstraint.class
new file mode 100644
index 0000000..7b3fc71
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/SummationConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TanConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TanConstraint.class
new file mode 100644
index 0000000..f0d04b6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TanConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ThreeVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ThreeVarConstraint.class
new file mode 100644
index 0000000..def7fd0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/ThreeVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarConstraint.class
new file mode 100644
index 0000000..e753d55
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarTrigConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarTrigConstraint.class
new file mode 100644
index 0000000..a26fd32
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/TwoVarTrigConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityConstraint.class
new file mode 100644
index 0000000..26c4290
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityCountConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityCountConstraint.class
new file mode 100644
index 0000000..f7c2fc4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/GlobalCardinalityCountConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/MemberOfArray.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/MemberOfArray.class
new file mode 100644
index 0000000..a490b2f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/MemberOfArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NotMemberOfArray.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NotMemberOfArray.class
new file mode 100644
index 0000000..e4ee9da
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NotMemberOfArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumAllDiffConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumAllDiffConstraint.class
new file mode 100644
index 0000000..2b868cf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumAllDiffConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumBetweenConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumBetweenConstraint.class
new file mode 100644
index 0000000..098ea92
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/num/global/NumBetweenConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqIntersection.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqIntersection.class
new file mode 100644
index 0000000..68bd02f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqIntersection.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqPartition.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqPartition.class
new file mode 100644
index 0000000..2e71811
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqPartition.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqSubset.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqSubset.class
new file mode 100644
index 0000000..43cb32d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqSubset.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqUnion.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqUnion.class
new file mode 100644
index 0000000..13f33ee
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/EqUnion.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/MemberOfSet.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/MemberOfSet.class
new file mode 100644
index 0000000..b08fc20
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/MemberOfSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NotMemberOfSet.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NotMemberOfSet.class
new file mode 100644
index 0000000..895066e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NotMemberOfSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NullIntersection.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NullIntersection.class
new file mode 100644
index 0000000..361ab3e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/NullIntersection.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetConstraint.class
new file mode 100644
index 0000000..baddd6d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetVariable.class
new file mode 100644
index 0000000..5614c97
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/SetVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/StrictSubset.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/StrictSubset.class
new file mode 100644
index 0000000..5613db6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/constraint/set/StrictSubset.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractDomain.class
new file mode 100644
index 0000000..c209614
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractSetDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractSetDomain.class
new file mode 100644
index 0000000..3eac1cb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/AbstractSetDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseDoubleDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseDoubleDomain.class
new file mode 100644
index 0000000..ef969d7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseDoubleDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseFloatDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseFloatDomain.class
new file mode 100644
index 0000000..e43db02
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseFloatDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseIntDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseIntDomain.class
new file mode 100644
index 0000000..3fa6e3c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseIntDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseLongDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseLongDomain.class
new file mode 100644
index 0000000..352644a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseLongDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseNumDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseNumDomain.class
new file mode 100644
index 0000000..3e693bb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BaseNumDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..5b61c23
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain.class
new file mode 100644
index 0000000..8900675
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanDomain.class
new file mode 100644
index 0000000..2f507c8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanIntDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanIntDomain.class
new file mode 100644
index 0000000..8a3202a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/BooleanIntDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/Domain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/Domain.class
new file mode 100644
index 0000000..ba2e9e2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/Domain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeEvent.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeEvent.class
new file mode 100644
index 0000000..2868bf3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeEvent.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeListener.class
new file mode 100644
index 0000000..74a3217
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeSource.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeSource.class
new file mode 100644
index 0000000..057136e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DomainChangeSource.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..6d6dd57
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain.class
new file mode 100644
index 0000000..7c21666
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomain.class
new file mode 100644
index 0000000..1297302
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomainWrapper.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomainWrapper.class
new file mode 100644
index 0000000..01b2938
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleDomainWrapper.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleIntervalDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleIntervalDomain.class
new file mode 100644
index 0000000..f858c6c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleIntervalDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleSparseDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleSparseDomain.class
new file mode 100644
index 0000000..25cf774
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/DoubleSparseDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..d021683
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain.class
new file mode 100644
index 0000000..81c9286
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomain.class
new file mode 100644
index 0000000..47e8c34
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomainWrapper.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomainWrapper.class
new file mode 100644
index 0000000..4bf7e69
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatDomainWrapper.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatIntervalDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatIntervalDomain.class
new file mode 100644
index 0000000..6fd27a3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatIntervalDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatSparseDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatSparseDomain.class
new file mode 100644
index 0000000..95f3f15
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/FloatSparseDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..59be731
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain.class
new file mode 100644
index 0000000..24f46b1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntDomain.class
new file mode 100644
index 0000000..f97272d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntIntervalDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntIntervalDomain.class
new file mode 100644
index 0000000..d4ab8dd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntIntervalDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSetDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSetDomain.class
new file mode 100644
index 0000000..44075e2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSetDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSparseDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSparseDomain.class
new file mode 100644
index 0000000..5192774
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/IntSparseDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..302ef89
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain.class
new file mode 100644
index 0000000..4cfaa91
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomain.class
new file mode 100644
index 0000000..de47343
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomainWrapper.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomainWrapper.class
new file mode 100644
index 0000000..a230c01
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongDomainWrapper.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongIntervalDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongIntervalDomain.class
new file mode 100644
index 0000000..c1de02d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongIntervalDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongSparseDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongSparseDomain.class
new file mode 100644
index 0000000..abb1c65
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/LongSparseDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/NumDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/NumDomain.class
new file mode 100644
index 0000000..ee0f8e6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/NumDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomain.class
new file mode 100644
index 0000000..fbbb6cb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase$SetDomainIterator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase$SetDomainIterator.class
new file mode 100644
index 0000000..a9cdb51
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase$SetDomainIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase.class
new file mode 100644
index 0000000..bb3f80c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SetDomainBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..fa65c1d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain.class
new file mode 100644
index 0000000..07a5354
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleDomainExpression.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleDomainExpression.class
new file mode 100644
index 0000000..f9aa8db
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationDoubleDomainExpression.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..2621776
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain.class
new file mode 100644
index 0000000..c5463be
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatDomainExpression.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatDomainExpression.class
new file mode 100644
index 0000000..a3a08ea
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationFloatDomainExpression.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..5d26d10
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain.class
new file mode 100644
index 0000000..fb12806
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntDomainExpression.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntDomainExpression.class
new file mode 100644
index 0000000..3a6bb7a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationIntDomainExpression.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain$DelegatedDomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain$DelegatedDomainListener.class
new file mode 100644
index 0000000..e5232b7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain$DelegatedDomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain.class
new file mode 100644
index 0000000..b2ec209
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongComputedDomain.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongDomainExpression.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongDomainExpression.class
new file mode 100644
index 0000000..d4986d8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/domain/SummationLongDomainExpression.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/GraphConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/GraphConstraint.class
new file mode 100644
index 0000000..60f949a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/GraphConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraph.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraph.class
new file mode 100644
index 0000000..3cb17b2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraph.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphImpl.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphImpl.class
new file mode 100644
index 0000000..f91c215
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphListener.class
new file mode 100644
index 0000000..4fa6d77
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/NodeArcGraphListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/AbstractArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/AbstractArc.class
new file mode 100644
index 0000000..a005142
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/AbstractArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/Arc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/Arc.class
new file mode 100644
index 0000000..3b4e2f4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/Arc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/NumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/NumArc.class
new file mode 100644
index 0000000..038e1d2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/NumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/PostableConstraint.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/PostableConstraint.class
new file mode 100644
index 0000000..c7e2d1f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/PostableConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SchedulerArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SchedulerArc.class
new file mode 100644
index 0000000..bbb2218
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SchedulerArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SetArc.class
new file mode 100644
index 0000000..a6d908f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/SetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryArc.class
new file mode 100644
index 0000000..d5a35a0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolArc.class
new file mode 100644
index 0000000..8045a1d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstAndReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstAndReflexArc.class
new file mode 100644
index 0000000..6b90541
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstAndReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrArc.class
new file mode 100644
index 0000000..cd614f2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrReflexArc.class
new file mode 100644
index 0000000..468bf71
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstOrReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstSourceAndArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstSourceAndArc.class
new file mode 100644
index 0000000..d833054
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstSourceAndArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetAndArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetAndArc.class
new file mode 100644
index 0000000..173712d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetAndArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetOrArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetOrArc.class
new file mode 100644
index 0000000..d2b1510
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetOrArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXImpliesArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXImpliesArc.class
new file mode 100644
index 0000000..ae208be
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXImpliesArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXorArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXorArc.class
new file mode 100644
index 0000000..3bbfd7b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetXorArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetYImpliesArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetYImpliesArc.class
new file mode 100644
index 0000000..af0d9e4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstTargetYImpliesArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstXorArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstXorArc.class
new file mode 100644
index 0000000..0b92c35
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolConstXorArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqThreeVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqThreeVarArc.class
new file mode 100644
index 0000000..3db994c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqThreeVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqTwoVarArc.class
new file mode 100644
index 0000000..6c58f78
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolEqTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesReflexTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesReflexTwoVarArc.class
new file mode 100644
index 0000000..026ba90
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesReflexTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesThreeVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesThreeVarArc.class
new file mode 100644
index 0000000..1d09507
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesThreeVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesTwoVarArc.class
new file mode 100644
index 0000000..c247d92
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesXReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesXReflexArc.class
new file mode 100644
index 0000000..d2ffe44
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryBoolImpliesXReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsArc.class
new file mode 100644
index 0000000..d89e19c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsReflectArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsReflectArc.class
new file mode 100644
index 0000000..1209283
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAbsReflectArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAcosArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAcosArc.class
new file mode 100644
index 0000000..b8c97ed
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAcosArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumArc.class
new file mode 100644
index 0000000..f5f491b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAsinArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAsinArc.class
new file mode 100644
index 0000000..4732e3f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAsinArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAtanArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAtanArc.class
new file mode 100644
index 0000000..2fe2f98
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumAtanArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityArc.class
new file mode 100644
index 0000000..67d52b7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityReflexArc.class
new file mode 100644
index 0000000..8269079
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCardinalityReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCosArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCosArc.class
new file mode 100644
index 0000000..6f8c470
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumCosArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumDiffArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumDiffArc.class
new file mode 100644
index 0000000..b19d1a6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumDiffArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumExpArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumExpArc.class
new file mode 100644
index 0000000..df4bfa9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumExpArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumLogArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumLogArc.class
new file mode 100644
index 0000000..a39fbaa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumLogArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumNatLogArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumNatLogArc.class
new file mode 100644
index 0000000..c33cd35
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumNatLogArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumPowerArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumPowerArc.class
new file mode 100644
index 0000000..cb5cd58
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumPowerArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdArc.class
new file mode 100644
index 0000000..f19b1ca
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdReflexArc.class
new file mode 100644
index 0000000..e17c040
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumProdReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotAlternateArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotAlternateArc.class
new file mode 100644
index 0000000..ce46f4d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotAlternateArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotArc.class
new file mode 100644
index 0000000..b8f9e27
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotReflexArc.class
new file mode 100644
index 0000000..29bb718
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumQuotReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumRelationArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumRelationArc.class
new file mode 100644
index 0000000..8888894
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumRelationArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSinArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSinArc.class
new file mode 100644
index 0000000..51dd230
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSinArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareArc.class
new file mode 100644
index 0000000..535b8f0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareReflexArc.class
new file mode 100644
index 0000000..90aa421
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSquareReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSumArc.class
new file mode 100644
index 0000000..d48bb3f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumSumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumTanArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumTanArc.class
new file mode 100644
index 0000000..81e54d7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinaryNumTanArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetArc.class
new file mode 100644
index 0000000..047cc4c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetArc.class
new file mode 100644
index 0000000..e30bab9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetReflexArc.class
new file mode 100644
index 0000000..cc9605a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetMemberOfSetReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetArc.class
new file mode 100644
index 0000000..b3f6c00
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetReflexArc.class
new file mode 100644
index 0000000..552e297
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetNotMemberOfSetReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSubsetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSubsetArc.class
new file mode 100644
index 0000000..185c348
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSubsetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSupersetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSupersetArc.class
new file mode 100644
index 0000000..ecbd545
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/binary/BinarySetSupersetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericArc.class
new file mode 100644
index 0000000..33c3070
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndArc.class
new file mode 100644
index 0000000..7c5abb8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndReflexArc.class
new file mode 100644
index 0000000..b153898
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolAndReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolArc.class
new file mode 100644
index 0000000..a7c8ce6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetAndArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetAndArc.class
new file mode 100644
index 0000000..381a25d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetAndArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetOrArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetOrArc.class
new file mode 100644
index 0000000..c8128cc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetOrArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXImpliesArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXImpliesArc.class
new file mode 100644
index 0000000..842ccde
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXImpliesArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXorArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXorArc.class
new file mode 100644
index 0000000..9c09861
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetXorArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetYImpliesArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetYImpliesArc.class
new file mode 100644
index 0000000..5e94a95
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolConstTargetYImpliesArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqThreeVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqThreeVarArc.class
new file mode 100644
index 0000000..0c6954f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqThreeVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqTwoVarArc.class
new file mode 100644
index 0000000..07c6064
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolEqTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesReflexTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesReflexTwoVarArc.class
new file mode 100644
index 0000000..84ab1f0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesReflexTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesThreeVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesThreeVarArc.class
new file mode 100644
index 0000000..3b6b19e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesThreeVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesTwoVarArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesTwoVarArc.class
new file mode 100644
index 0000000..430e11f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesTwoVarArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesXReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesXReflexArc.class
new file mode 100644
index 0000000..cbd0b51
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesXReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesYReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesYReflexArc.class
new file mode 100644
index 0000000..e949245
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolImpliesYReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrArc.class
new file mode 100644
index 0000000..92fc1bf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrReflexArc.class
new file mode 100644
index 0000000..3d7261c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolOrReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolXorArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolXorArc.class
new file mode 100644
index 0000000..a701afd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericBoolXorArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericConstraint2BoolArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericConstraint2BoolArc.class
new file mode 100644
index 0000000..876e435
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericConstraint2BoolArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsArc.class
new file mode 100644
index 0000000..3755b1c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsReflectArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsReflectArc.class
new file mode 100644
index 0000000..8394b29
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAbsReflectArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAcosArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAcosArc.class
new file mode 100644
index 0000000..017c0a9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAcosArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumArc.class
new file mode 100644
index 0000000..546cecf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAsinArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAsinArc.class
new file mode 100644
index 0000000..2ab2078
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAsinArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAtanArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAtanArc.class
new file mode 100644
index 0000000..c118b29
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumAtanArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumBetweenArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumBetweenArc.class
new file mode 100644
index 0000000..0392e67
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumBetweenArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumCosArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumCosArc.class
new file mode 100644
index 0000000..6794281
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumCosArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumDiffArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumDiffArc.class
new file mode 100644
index 0000000..c4c4fa0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumDiffArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumExpArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumExpArc.class
new file mode 100644
index 0000000..42b8077
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumExpArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumLogArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumLogArc.class
new file mode 100644
index 0000000..5b472fb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumLogArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumNatLogArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumNatLogArc.class
new file mode 100644
index 0000000..d338303
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumNatLogArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumPowerArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumPowerArc.class
new file mode 100644
index 0000000..a1e6c56
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumPowerArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdArc.class
new file mode 100644
index 0000000..d753b54
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdReflexArc.class
new file mode 100644
index 0000000..2dc2f3e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumProdReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotAlternateArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotAlternateArc.class
new file mode 100644
index 0000000..96364c7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotAlternateArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotArc.class
new file mode 100644
index 0000000..88ea09e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotReflexArc.class
new file mode 100644
index 0000000..9db17bc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumQuotReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRangeArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRangeArc.class
new file mode 100644
index 0000000..b19e7ab
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRangeArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRelationArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRelationArc.class
new file mode 100644
index 0000000..447054f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumRelationArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSinArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSinArc.class
new file mode 100644
index 0000000..925340e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSinArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareArc.class
new file mode 100644
index 0000000..86009bc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareReflexArc.class
new file mode 100644
index 0000000..e9a06bf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSquareReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSumArc.class
new file mode 100644
index 0000000..4fde487
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationArc.class
new file mode 100644
index 0000000..9ac8f34
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationReflexArc.class
new file mode 100644
index 0000000..6cb6b3d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumSummationReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTanArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTanArc.class
new file mode 100644
index 0000000..a626f74
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTanArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTrigArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTrigArc.class
new file mode 100644
index 0000000..d0345b5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericNumTrigArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetArc.class
new file mode 100644
index 0000000..ec48571
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetNullIntersectionArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetNullIntersectionArc.class
new file mode 100644
index 0000000..98f20be
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetNullIntersectionArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionAdvancedFilterArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionAdvancedFilterArc.class
new file mode 100644
index 0000000..acaaf91
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionAdvancedFilterArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionIntersectFilterArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionIntersectFilterArc.class
new file mode 100644
index 0000000..67ea764
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/generic/GenericSetUnionIntersectFilterArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NodeSizeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NodeSizeComparator.class
new file mode 100644
index 0000000..3181043
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NodeSizeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeComparator.class
new file mode 100644
index 0000000..5ae7dc4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeSizeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeSizeComparator.class
new file mode 100644
index 0000000..2330531
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc$NumNodeSizeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc.class
new file mode 100644
index 0000000..fb7d9f2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllDiffArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllSameArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllSameArc.class
new file mode 100644
index 0000000..7629b2f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumAllSameArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumMemberOfArrayReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumMemberOfArrayReflexArc.class
new file mode 100644
index 0000000..35f5e84
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumMemberOfArrayReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotBetweenArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotBetweenArc.class
new file mode 100644
index 0000000..942995f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotBetweenArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotMemberOfArrayReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotMemberOfArrayReflexArc.class
new file mode 100644
index 0000000..562bedd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GenericNumNotMemberOfArrayReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeComparator.class
new file mode 100644
index 0000000..649e6d5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeSizeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeSizeComparator.class
new file mode 100644
index 0000000..d386992
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc$NumNodeSizeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc.class
new file mode 100644
index 0000000..114e845
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeComparator.class
new file mode 100644
index 0000000..12bfa55
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeMaxComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeMaxComparator.class
new file mode 100644
index 0000000..ec7dacb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeMaxComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeSizeComparator.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeSizeComparator.class
new file mode 100644
index 0000000..55727d8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc$NumNodeSizeComparator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc.class
new file mode 100644
index 0000000..7f001aa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCardinalityCountArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCountCardinalityArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCountCardinalityArc.class
new file mode 100644
index 0000000..2161800
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/global/GlobalCountCardinalityArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperArc.class
new file mode 100644
index 0000000..27b14ca
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumMemberOfArrayArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumMemberOfArrayArc.class
new file mode 100644
index 0000000..73a8cb5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumMemberOfArrayArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumNotMemberOfArrayArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumNotMemberOfArrayArc.class
new file mode 100644
index 0000000..0bfb34c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperNumNotMemberOfArrayArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetArc.class
new file mode 100644
index 0000000..fc93632
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetIntersectionArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetIntersectionArc.class
new file mode 100644
index 0000000..84dc98a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetIntersectionArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetUnionArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetUnionArc.class
new file mode 100644
index 0000000..ea26dc1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/HyperSetUnionArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndArc.class
new file mode 100644
index 0000000..9e47209
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndReflexArc.class
new file mode 100644
index 0000000..3261ff5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolAndReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolArc.class
new file mode 100644
index 0000000..1f2e8b1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolEqArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolEqArc.class
new file mode 100644
index 0000000..2cf75bc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolEqArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesArc.class
new file mode 100644
index 0000000..f1df123
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesXReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesXReflexArc.class
new file mode 100644
index 0000000..af4f7fe
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesXReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesYReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesYReflexArc.class
new file mode 100644
index 0000000..bdfa9ec
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolImpliesYReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrArc.class
new file mode 100644
index 0000000..9e44edc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrReflexArc.class
new file mode 100644
index 0000000..4f59fe2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolOrReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolXorArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolXorArc.class
new file mode 100644
index 0000000..f6acaec
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryBoolXorArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumArc.class
new file mode 100644
index 0000000..09449d6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumBetweenArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumBetweenArc.class
new file mode 100644
index 0000000..695c208
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumBetweenArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumDiffArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumDiffArc.class
new file mode 100644
index 0000000..2c757ba
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumDiffArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumLogArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumLogArc.class
new file mode 100644
index 0000000..37ffc05
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumLogArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumNotBetweenArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumNotBetweenArc.class
new file mode 100644
index 0000000..6a08844
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumNotBetweenArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumPowerArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumPowerArc.class
new file mode 100644
index 0000000..f8c909b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumPowerArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdArc.class
new file mode 100644
index 0000000..1f85cd9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdReflexArc.class
new file mode 100644
index 0000000..4897532
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumProdReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotAlternateArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotAlternateArc.class
new file mode 100644
index 0000000..e1ccec7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotAlternateArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotArc.class
new file mode 100644
index 0000000..76dcde1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotReflexArc.class
new file mode 100644
index 0000000..f273ab9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumQuotReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumRangeArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumRangeArc.class
new file mode 100644
index 0000000..1b92e0f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumRangeArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumSumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumSumArc.class
new file mode 100644
index 0000000..dd82ce3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/hyper/TernaryNumSumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeArc.class
new file mode 100644
index 0000000..aec1608
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumAbsArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumAbsArc.class
new file mode 100644
index 0000000..c835995
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumAbsArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumArc.class
new file mode 100644
index 0000000..bbbb1a5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareArc.class
new file mode 100644
index 0000000..0901d62
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareReflexArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareReflexArc.class
new file mode 100644
index 0000000..5093ede
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeNumSquareReflexArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetArc.class
new file mode 100644
index 0000000..387d8d4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetNullIntersectionArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetNullIntersectionArc.class
new file mode 100644
index 0000000..6bf866c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetNullIntersectionArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetSubsetEqArc.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetSubsetEqArc.class
new file mode 100644
index 0000000..d8e884e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/NodeSetSubsetEqArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/package.html b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/package.html
new file mode 100644
index 0000000..73bef4b
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/arc/node/package.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+The source for all your searching needs.
+
+Defines implementations of several important interfaces including those related to local search, search
+actions (add constraint, store solution, generate, instantiate, etc.), search goals (minimize, maximize, etc.), search techniques
+(breadth-first, depth-first, etc.), and search limits. Also contains all supporting classes.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode$DomainListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode$DomainListener.class
new file mode 100644
index 0000000..715e928
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode$DomainListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode.class
new file mode 100644
index 0000000..948057b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/AbstractNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/BooleanNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/BooleanNode.class
new file mode 100644
index 0000000..171c7a5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/BooleanNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/DoubleNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/DoubleNode.class
new file mode 100644
index 0000000..ec2ac6d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/DoubleNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/FloatNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/FloatNode.class
new file mode 100644
index 0000000..542186a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/FloatNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericBooleanNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericBooleanNode.class
new file mode 100644
index 0000000..b8b89cc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericBooleanNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericDoubleNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericDoubleNode.class
new file mode 100644
index 0000000..e6edad4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericDoubleNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericFloatNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericFloatNode.class
new file mode 100644
index 0000000..c01c0f3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericFloatNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericIntNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericIntNode.class
new file mode 100644
index 0000000..49bcd9d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericIntNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericLongNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericLongNode.class
new file mode 100644
index 0000000..64fea20
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericLongNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNode.class
new file mode 100644
index 0000000..cad6a30
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNodeIndexManager.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNodeIndexManager.class
new file mode 100644
index 0000000..f609bc7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNodeIndexManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNumNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNumNode.class
new file mode 100644
index 0000000..c6eecda
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/GenericNumNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntNode.class
new file mode 100644
index 0000000..8d3c978
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntSetNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntSetNode.class
new file mode 100644
index 0000000..37087b8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/IntSetNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/LongNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/LongNode.class
new file mode 100644
index 0000000..36b998d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/LongNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/Node.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/Node.class
new file mode 100644
index 0000000..f2abbc6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/Node.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeEvent.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeEvent.class
new file mode 100644
index 0000000..e0c4d4b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeEvent.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeListener.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeListener.class
new file mode 100644
index 0000000..5ac754f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeSource.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeSource.class
new file mode 100644
index 0000000..c4dd968
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeChangeSource.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeMath.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeMath.class
new file mode 100644
index 0000000..26f79b9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NodeMath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NumNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NumNode.class
new file mode 100644
index 0000000..479bcaa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/NumNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/SetNode.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/SetNode.class
new file mode 100644
index 0000000..2b9cdea
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/graph/node/SetNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/ArcQueue.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/ArcQueue.class
new file mode 100644
index 0000000..ef44e33
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/ArcQueue.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/NodeQueue.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/NodeQueue.class
new file mode 100644
index 0000000..a396738
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/util/NodeQueue.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanExpr.class
new file mode 100644
index 0000000..3aabfcb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanVariable.class
new file mode 100644
index 0000000..30625f2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/BooleanVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleCast.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleCast.class
new file mode 100644
index 0000000..5de38c0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleExpr.class
new file mode 100644
index 0000000..f54db05
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleVariable.class
new file mode 100644
index 0000000..d65e208
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/DoubleVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatCast.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatCast.class
new file mode 100644
index 0000000..429384d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatExpr.class
new file mode 100644
index 0000000..c1962c2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatVariable.class
new file mode 100644
index 0000000..cc0d3d3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/FloatVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanConstant.class
new file mode 100644
index 0000000..fe91eb3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanExpr.class
new file mode 100644
index 0000000..a10031a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericBooleanExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericConstant.class
new file mode 100644
index 0000000..5617d2e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleConstant.class
new file mode 100644
index 0000000..bc90909
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleExpr.class
new file mode 100644
index 0000000..1348661
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericDoubleExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatConstant.class
new file mode 100644
index 0000000..b0c5cf7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatExpr.class
new file mode 100644
index 0000000..315f7b3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericFloatExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntConstant.class
new file mode 100644
index 0000000..d1c8c6d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntExpr.class
new file mode 100644
index 0000000..b41ee8f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericIntExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongConstant.class
new file mode 100644
index 0000000..b6729f0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongExpr.class
new file mode 100644
index 0000000..7b71832
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericLongExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumConstant.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumConstant.class
new file mode 100644
index 0000000..70e230c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumExprBase.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumExprBase.class
new file mode 100644
index 0000000..a637cf3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/GenericNumExprBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntExpr.class
new file mode 100644
index 0000000..3e55ade
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntSetVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntSetVariable.class
new file mode 100644
index 0000000..b022d9d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntSetVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntVariable.class
new file mode 100644
index 0000000..f800887
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/IntVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongCast.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongCast.class
new file mode 100644
index 0000000..4253005
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongExpr.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongExpr.class
new file mode 100644
index 0000000..e32d460
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongVariable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongVariable.class
new file mode 100644
index 0000000..3c833c8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/LongVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/NumExprBase.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/NumExprBase.class
new file mode 100644
index 0000000..1a6a62d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/NumExprBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetConstraints.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetConstraints.class
new file mode 100644
index 0000000..f93740a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetConstraints.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetVariableBase.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetVariableBase.class
new file mode 100644
index 0000000..e334aca
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/SetVariableBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarFactory.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarFactory.class
new file mode 100644
index 0000000..bed08d9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarFactory.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarMath.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarMath.class
new file mode 100644
index 0000000..c6aae00
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VarMath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/Variable.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/Variable.class
new file mode 100644
index 0000000..895b0e2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/Variable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VariableChangeBase.class b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VariableChangeBase.class
new file mode 100644
index 0000000..d72697f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/arcalgorithm/variable/VariableChangeBase.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectPool.class b/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectPool.class
new file mode 100644
index 0000000..cfb3b90
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectPool.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectQueue.class b/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectQueue.class
new file mode 100644
index 0000000..c0da1f1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/pool/WeakObjectQueue.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/pool/package.html b/jOptCSRecover/bin/jopt/csp/spi/pool/package.html
new file mode 100644
index 0000000..11abe69
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/spi/pool/package.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+Provides utilities for the re-use of objects for memory management purposes.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/LocalSearchImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/LocalSearchImpl.class
new file mode 100644
index 0000000..c9a42b5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/LocalSearchImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/SearchActionsImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/SearchActionsImpl.class
new file mode 100644
index 0000000..a03bdac
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/SearchActionsImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/SearchGoalsImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/SearchGoalsImpl.class
new file mode 100644
index 0000000..d9e7b50
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/SearchGoalsImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/SearchLimitsImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/SearchLimitsImpl.class
new file mode 100644
index 0000000..9e48159
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/SearchLimitsImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/SearchManagerImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/SearchManagerImpl.class
new file mode 100644
index 0000000..746507d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/SearchManagerImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/SearchTechniquesImpl.class b/jOptCSRecover/bin/jopt/csp/spi/search/SearchTechniquesImpl.class
new file mode 100644
index 0000000..1918047
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/SearchTechniquesImpl.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/AddConstraintAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AddConstraintAction.class
new file mode 100644
index 0000000..3bc8007
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AddConstraintAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignDoubleAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignDoubleAction.class
new file mode 100644
index 0000000..c0dca54
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignDoubleAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignFloatAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignFloatAction.class
new file mode 100644
index 0000000..f439bf8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignFloatAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignIntegerAction.class
new file mode 100644
index 0000000..e4da58a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignLongAction.class
new file mode 100644
index 0000000..3da6815
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/AssignLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateDoubleAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateDoubleAction.class
new file mode 100644
index 0000000..5c33755
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateDoubleAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateFloatAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateFloatAction.class
new file mode 100644
index 0000000..e490b0a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateFloatAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateIntegerAction.class
new file mode 100644
index 0000000..1a21eb9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateLongAction.class
new file mode 100644
index 0000000..739bb35
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateSetAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateSetAction.class
new file mode 100644
index 0000000..f8fe4fc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/GenerateSetAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction$AssignRange.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction$AssignRange.class
new file mode 100644
index 0000000..ddf0684
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction$AssignRange.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction.class
new file mode 100644
index 0000000..02f2516
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateDoubleAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction$AssignRange.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction$AssignRange.class
new file mode 100644
index 0000000..453b7ed
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction$AssignRange.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction.class
new file mode 100644
index 0000000..4b070df
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateFloatAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateIntegerAction.class
new file mode 100644
index 0000000..78cd2dd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateLongAction.class
new file mode 100644
index 0000000..1191a90
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$AssignSet.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$AssignSet.class
new file mode 100644
index 0000000..95501cc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$AssignSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$RemoveSet.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$RemoveSet.class
new file mode 100644
index 0000000..badca7d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction$RemoveSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction.class
new file mode 100644
index 0000000..12b4553
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/InstantiateSetAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryGenerateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryGenerateIntegerAction.class
new file mode 100644
index 0000000..1e40de2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryGenerateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryInstantiateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryInstantiateIntegerAction.class
new file mode 100644
index 0000000..c817cd8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/NonBinaryInstantiateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveDoubleAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveDoubleAction.class
new file mode 100644
index 0000000..0873a5e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveDoubleAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveFloatAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveFloatAction.class
new file mode 100644
index 0000000..883f20b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveFloatAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveIntegerAction.class
new file mode 100644
index 0000000..14ef60a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveLongAction.class
new file mode 100644
index 0000000..7fde0e4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RemoveLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/RestoreSolutionAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RestoreSolutionAction.class
new file mode 100644
index 0000000..e19760d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/RestoreSolutionAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateIntegerAction.class
new file mode 100644
index 0000000..4237f51
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateLongAction.class
new file mode 100644
index 0000000..6e40466
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitGenerateLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction$AssignRange.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction$AssignRange.class
new file mode 100644
index 0000000..03c8760
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction$AssignRange.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction.class
new file mode 100644
index 0000000..074e15b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateIntegerAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction$AssignRange.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction$AssignRange.class
new file mode 100644
index 0000000..955897f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction$AssignRange.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction.class
new file mode 100644
index 0000000..941d5af
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/SplitInstantiateLongAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/StoreSolutionAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/actions/StoreSolutionAction.class
new file mode 100644
index 0000000..e7cef69
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/actions/StoreSolutionAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/myDemoClassDiag.mgc b/jOptCSRecover/bin/jopt/csp/spi/search/actions/myDemoClassDiag.mgc
new file mode 100644
index 0000000..ea5cddb
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/spi/search/actions/myDemoClassDiag.mgc
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/actions/myDemoDreamUpNewClasses.mgc b/jOptCSRecover/bin/jopt/csp/spi/search/actions/myDemoDreamUpNewClasses.mgc
new file mode 100644
index 0000000..e69de29
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/FirstSolutionGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/FirstSolutionGoal.class
new file mode 100644
index 0000000..d745973
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/FirstSolutionGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/MaximizeGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MaximizeGoal.class
new file mode 100644
index 0000000..a114179
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MaximizeGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinMaxSearchGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinMaxSearchGoal.class
new file mode 100644
index 0000000..4c425d1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinMaxSearchGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinimizeGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinimizeGoal.class
new file mode 100644
index 0000000..ef48645
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/MinimizeGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMaximizeGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMaximizeGoal.class
new file mode 100644
index 0000000..328b089
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMaximizeGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMinimizeGoal.class b/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMinimizeGoal.class
new file mode 100644
index 0000000..63906b9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/goal/StrictlyMinimizeGoal.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/limit/ChoiceLimit.class b/jOptCSRecover/bin/jopt/csp/spi/search/limit/ChoiceLimit.class
new file mode 100644
index 0000000..9eae592
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/limit/ChoiceLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/limit/CombinedLimit.class b/jOptCSRecover/bin/jopt/csp/spi/search/limit/CombinedLimit.class
new file mode 100644
index 0000000..8f5b0b3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/limit/CombinedLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/limit/DeadlineLimit.class b/jOptCSRecover/bin/jopt/csp/spi/search/limit/DeadlineLimit.class
new file mode 100644
index 0000000..420ce85
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/limit/DeadlineLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/limit/FailLimit.class b/jOptCSRecover/bin/jopt/csp/spi/search/limit/FailLimit.class
new file mode 100644
index 0000000..2c77df6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/limit/FailLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/limit/TimeLimit.class b/jOptCSRecover/bin/jopt/csp/spi/search/limit/TimeLimit.class
new file mode 100644
index 0000000..877f509
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/limit/TimeLimit.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction$RestoreNeighbor.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction$RestoreNeighbor.class
new file mode 100644
index 0000000..61e3efb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction$RestoreNeighbor.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction.class
new file mode 100644
index 0000000..d08b1a8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborhoodAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction$RestoreNeighbor.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction$RestoreNeighbor.class
new file mode 100644
index 0000000..90b1e0a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction$RestoreNeighbor.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction.class
new file mode 100644
index 0000000..61678bd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/BrowseNeighborsAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/FlipNeighborhood.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/FlipNeighborhood.class
new file mode 100644
index 0000000..97069d6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/FlipNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/ImproveSolutionAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/ImproveSolutionAction.class
new file mode 100644
index 0000000..2853fc9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/ImproveSolutionAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/NeighborMoveAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/NeighborMoveAction.class
new file mode 100644
index 0000000..254e97a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/NeighborMoveAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SelectCurrentNeighborAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SelectCurrentNeighborAction.class
new file mode 100644
index 0000000..88fcea7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SelectCurrentNeighborAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SwapNeighborhood.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SwapNeighborhood.class
new file mode 100644
index 0000000..32281d0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/SwapNeighborhood.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuList.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuList.class
new file mode 100644
index 0000000..e01622d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMetaheuristic.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMetaheuristic.class
new file mode 100644
index 0000000..7c11c41
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMetaheuristic.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMove.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMove.class
new file mode 100644
index 0000000..273d0ac
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMove.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMoveAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMoveAction.class
new file mode 100644
index 0000000..9e80199
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuMoveAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction$RestoreNeighbor.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction$RestoreNeighbor.class
new file mode 100644
index 0000000..5dd7808
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction$RestoreNeighbor.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction.class
new file mode 100644
index 0000000..059b82c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/localsearch/TabuSearchBrowseAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/BreadthFirstSearch.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/BreadthFirstSearch.class
new file mode 100644
index 0000000..2baae0b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/BreadthFirstSearch.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/DepthFirstSearch.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/DepthFirstSearch.class
new file mode 100644
index 0000000..3e16df2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/DepthFirstSearch.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch$PreviousTechniqueInfo.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch$PreviousTechniqueInfo.class
new file mode 100644
index 0000000..f5a796f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch$PreviousTechniqueInfo.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch.class
new file mode 100644
index 0000000..52a21a1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearch.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique$Move.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique$Move.class
new file mode 100644
index 0000000..3be5152
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique$Move.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique.class b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique.class
new file mode 100644
index 0000000..4457161
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/technique/TreeSearchTechnique.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchNodeAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchNodeAction.class
new file mode 100644
index 0000000..c45cc72
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchNodeAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchTree.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchTree.class
new file mode 100644
index 0000000..c9ca8dc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/AbstractSearchTree.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode$BinaryPath.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode$BinaryPath.class
new file mode 100644
index 0000000..3569628
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode$BinaryPath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode.class
new file mode 100644
index 0000000..d88f9f2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/BasicSearchNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/ChoicePoint.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/ChoicePoint.class
new file mode 100644
index 0000000..d1e8bf0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/ChoicePoint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/CombinedAction.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CombinedAction.class
new file mode 100644
index 0000000..a692dbc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CombinedAction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree$CrawlingNodeRef.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree$CrawlingNodeRef.class
new file mode 100644
index 0000000..d775d74
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree$CrawlingNodeRef.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree.class
new file mode 100644
index 0000000..a8d9aec
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/CrawlingSearchTree.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/DeltaStateManager.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/DeltaStateManager.class
new file mode 100644
index 0000000..8ceeea2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/DeltaStateManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree$JumpingNodeRef.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree$JumpingNodeRef.class
new file mode 100644
index 0000000..5f8756c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree$JumpingNodeRef.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree.class
new file mode 100644
index 0000000..3a67b60
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/JumpingSearchTree.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/ProblemStateManager.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/ProblemStateManager.class
new file mode 100644
index 0000000..c2e4d22
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/ProblemStateManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/RecalculatingStateManager.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/RecalculatingStateManager.class
new file mode 100644
index 0000000..f31d018
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/RecalculatingStateManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTechniqueChange.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTechniqueChange.class
new file mode 100644
index 0000000..467530d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTechniqueChange.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTree.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTree.class
new file mode 100644
index 0000000..744bad7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/SearchTree.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeNode.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeNode.class
new file mode 100644
index 0000000..614a188
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeNode.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeStateManager.class b/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeStateManager.class
new file mode 100644
index 0000000..fb839c5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/search/tree/TreeStateManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointAlgorithm.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointAlgorithm.class
new file mode 100644
index 0000000..886fa71
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointAlgorithm.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMap.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMap.class
new file mode 100644
index 0000000..d267ff5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMap.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapCloseListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapCloseListener.class
new file mode 100644
index 0000000..c69d99a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapCloseListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapListener.class
new file mode 100644
index 0000000..65a6943
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataMapListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataSource.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataSource.class
new file mode 100644
index 0000000..f77039f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDataSource.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDoubleArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDoubleArray.class
new file mode 100644
index 0000000..60131ec
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointDoubleArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntry.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntry.class
new file mode 100644
index 0000000..1b17c2c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntry.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryCloseListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryCloseListener.class
new file mode 100644
index 0000000..37132c4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryCloseListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryListener.class
new file mode 100644
index 0000000..d867904
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEntryListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEventListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEventListener.class
new file mode 100644
index 0000000..a120de7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointEventListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointFloatArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointFloatArray.class
new file mode 100644
index 0000000..17a3726
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointFloatArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointIntArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointIntArray.class
new file mode 100644
index 0000000..ca05161
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointIntArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointLongArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointLongArray.class
new file mode 100644
index 0000000..e711f32
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointLongArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiDoubleArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiDoubleArray.class
new file mode 100644
index 0000000..e46047a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiDoubleArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiFloatArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiFloatArray.class
new file mode 100644
index 0000000..8315dc2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiFloatArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiIntArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiIntArray.class
new file mode 100644
index 0000000..424457f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiIntArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiLongArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiLongArray.class
new file mode 100644
index 0000000..a81abbd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointMultiLongArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet$StackList.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet$StackList.class
new file mode 100644
index 0000000..c9e5f1c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet$StackList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet.class
new file mode 100644
index 0000000..c9aa42a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointNumArraySet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointStack.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointStack.class
new file mode 100644
index 0000000..4859164
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ChoicePointStack.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ConstraintStore.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ConstraintStore.class
new file mode 100644
index 0000000..e3a1ce6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ConstraintStore.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleDoubleArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleDoubleArray.class
new file mode 100644
index 0000000..1863b13
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleDoubleArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleFloatArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleFloatArray.class
new file mode 100644
index 0000000..10305b2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleFloatArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleIntArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleIntArray.class
new file mode 100644
index 0000000..458b8ba
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleIntArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleLongArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleLongArray.class
new file mode 100644
index 0000000..30beb68
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleLongArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumber.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumber.class
new file mode 100644
index 0000000..fefe351
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumber.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumberArray.class b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumberArray.class
new file mode 100644
index 0000000..fdde15d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/ReversibleNumberArray.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeEvent.class b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeEvent.class
new file mode 100644
index 0000000..62022e4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeEvent.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeListener.class b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeListener.class
new file mode 100644
index 0000000..ebbd9cc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeSource.class b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeSource.class
new file mode 100644
index 0000000..eb3ce60
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/solver/VariableChangeSource.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/solver/package.html b/jOptCSRecover/bin/jopt/csp/spi/solver/package.html
new file mode 100644
index 0000000..30b08ed
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/spi/solver/package.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+Provides important backtracking utilities that are used during the solving of a CSP problem.
+
+The ChoicePoint-related functionality allows the state of the problem to be pushed onto
+and popped from a stack structure. This allows changes to be made, recorded, undone, and
+redone with relative ease. The importance of this structure in the context of searching
+and decision-making should be obvious.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/BoolOperation.class b/jOptCSRecover/bin/jopt/csp/spi/util/BoolOperation.class
new file mode 100644
index 0000000..385fa2c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/BoolOperation.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/DomainChangeType.class b/jOptCSRecover/bin/jopt/csp/spi/util/DomainChangeType.class
new file mode 100644
index 0000000..304d774
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/DomainChangeType.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndex.class b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndex.class
new file mode 100644
index 0000000..671adfa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndex.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexCombination.class b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexCombination.class
new file mode 100644
index 0000000..a71ccc2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexCombination.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexManager.class b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexManager.class
new file mode 100644
index 0000000..1048bdb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/GenericIndexManager.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/IndexIterator.class b/jOptCSRecover/bin/jopt/csp/spi/util/IndexIterator.class
new file mode 100644
index 0000000..b9f44c4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/IndexIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/MutableNumber.class b/jOptCSRecover/bin/jopt/csp/spi/util/MutableNumber.class
new file mode 100644
index 0000000..35afd71
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/MutableNumber.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NameUtil.class b/jOptCSRecover/bin/jopt/csp/spi/util/NameUtil.class
new file mode 100644
index 0000000..27d4a8b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NameUtil.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumConstants.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumConstants.class
new file mode 100644
index 0000000..513d3fb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumConstants.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumOperation.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumOperation.class
new file mode 100644
index 0000000..2017d95
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumOperation.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumSequence.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumSequence.class
new file mode 100644
index 0000000..43c84a2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumSequence.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$Pool.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$Pool.class
new file mode 100644
index 0000000..bda74d0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$Pool.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$PoolObjectFactory.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$PoolObjectFactory.class
new file mode 100644
index 0000000..56d94b4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList$PoolObjectFactory.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumberList.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList.class
new file mode 100644
index 0000000..257ba07
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumberList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/NumberMath.class b/jOptCSRecover/bin/jopt/csp/spi/util/NumberMath.class
new file mode 100644
index 0000000..b9cf312
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/NumberMath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/StateStore.class b/jOptCSRecover/bin/jopt/csp/spi/util/StateStore.class
new file mode 100644
index 0000000..f64bdad
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/StateStore.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/Storable.class b/jOptCSRecover/bin/jopt/csp/spi/util/Storable.class
new file mode 100644
index 0000000..6c34044
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/Storable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/TrigExpr.class b/jOptCSRecover/bin/jopt/csp/spi/util/TrigExpr.class
new file mode 100644
index 0000000..51524fe
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/TrigExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/TrigMath.class b/jOptCSRecover/bin/jopt/csp/spi/util/TrigMath.class
new file mode 100644
index 0000000..4069f23
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/spi/util/TrigMath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/spi/util/package.html b/jOptCSRecover/bin/jopt/csp/spi/util/package.html
new file mode 100644
index 0000000..3b0a45d
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/spi/util/package.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+Contains several miscellaneous utility classes and reusable functionality that does not belong elsewhere.
+
+Of primary importance are the {@link jopt.csp.spi.util.NumberMath} and {@link jopt.csp.spi.util.TrigMath}
+classes that perform all of the integer, long, float, and double based mathematical operations.
+Also contained in this package are utilities related to storing problem solutions, indexing variables,
+and providing unique names.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/test/AllTests.class b/jOptCSRecover/bin/jopt/csp/test/AllTests.class
new file mode 100644
index 0000000..1ec504e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/AllTests.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcAlgorithmUtilTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcAlgorithmUtilTestSuite.class
new file mode 100644
index 0000000..d83919c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcAlgorithmUtilTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest$DummyArc.class b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest$DummyArc.class
new file mode 100644
index 0000000..6a48a6c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest$DummyArc.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest.class b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest.class
new file mode 100644
index 0000000..50fa471
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/arcalgorithm/util/ArcQueueTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/AndConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/AndConstraintTest.class
new file mode 100644
index 0000000..a333630
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/AndConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/BoolOppositeConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/BoolOppositeConstraintTest.class
new file mode 100644
index 0000000..44d1665
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/BoolOppositeConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/BooleanTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/bool/BooleanTestSuite.class
new file mode 100644
index 0000000..d0bf25d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/BooleanTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/BooleansWithConstraintsTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/BooleansWithConstraintsTest.class
new file mode 100644
index 0000000..a1b0c1e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/BooleansWithConstraintsTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/ConstraintToBooleanTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/ConstraintToBooleanTest.class
new file mode 100644
index 0000000..53b7e56
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/ConstraintToBooleanTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest$BoolToVarConstraint.class b/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest$BoolToVarConstraint.class
new file mode 100644
index 0000000..e2a33bd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest$BoolToVarConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest.class
new file mode 100644
index 0000000..c6a71df
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/EqConstraintToBooleanNodeTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/EqThreeVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/EqThreeVarConstraintTest.class
new file mode 100644
index 0000000..7d963e3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/EqThreeVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/EqTwoVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/EqTwoVarConstraintTest.class
new file mode 100644
index 0000000..71ff451
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/EqTwoVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesThreeVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesThreeVarConstraintTest.class
new file mode 100644
index 0000000..2d9173b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesThreeVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesTwoVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesTwoVarConstraintTest.class
new file mode 100644
index 0000000..a330a58
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/ImpliesTwoVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/NotConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/NotConstraintTest.class
new file mode 100644
index 0000000..e8d0f6d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/NotConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/OrConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/OrConstraintTest.class
new file mode 100644
index 0000000..d80a345
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/OrConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/XorConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/XorConstraintTest.class
new file mode 100644
index 0000000..7a1609a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/XorConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericAndConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericAndConstraintTest.class
new file mode 100644
index 0000000..ae90336
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericAndConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolExprImplicationTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolExprImplicationTest.class
new file mode 100644
index 0000000..b12c94b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolExprImplicationTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolTestSuite.class
new file mode 100644
index 0000000..6723949
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericBoolTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericConstraintToGenericBooleanTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericConstraintToGenericBooleanTest.class
new file mode 100644
index 0000000..97d8951
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericConstraintToGenericBooleanTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqThreeVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqThreeVarConstraintTest.class
new file mode 100644
index 0000000..5802189
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqThreeVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqTwoVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqTwoVarConstraintTest.class
new file mode 100644
index 0000000..3c3c4f8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericEqTwoVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesThreeVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesThreeVarConstraintTest.class
new file mode 100644
index 0000000..59c88d3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesThreeVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesTwoVarConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesTwoVarConstraintTest.class
new file mode 100644
index 0000000..c81fcd0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericImpliesTwoVarConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericOrConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericOrConstraintTest.class
new file mode 100644
index 0000000..5fc0435
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericOrConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericXorConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericXorConstraintTest.class
new file mode 100644
index 0000000..8fed187
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/bool/generics/GenericXorConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointPushMapTest.class b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointPushMapTest.class
new file mode 100644
index 0000000..88ee29c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointPushMapTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointTestSuite.class
new file mode 100644
index 0000000..785422c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointWithConstraintsTest.class b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointWithConstraintsTest.class
new file mode 100644
index 0000000..530e6e2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/choicepoint/ChoicePointWithConstraintsTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/CombinationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/CombinationConstraintTest.class
new file mode 100644
index 0000000..b7760dc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/CombinationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/ConstraintTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/constraint/ConstraintTestSuite.class
new file mode 100644
index 0000000..64894e3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/ConstraintTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleDiffConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleDiffConstraintTest.class
new file mode 100644
index 0000000..625e5de
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleDiffConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSumConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSumConstraintTest.class
new file mode 100644
index 0000000..e860272
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSumConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest$IdxRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest$IdxRestriction.class
new file mode 100644
index 0000000..6053e90
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest$IdxRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest.class
new file mode 100644
index 0000000..459b409
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/DoubleSummationTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntDiffConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntDiffConstraintTest.class
new file mode 100644
index 0000000..2c6d314
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntDiffConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqIntersectionTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqIntersectionTest.class
new file mode 100644
index 0000000..442ef1c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqIntersectionTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqPartitionTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqPartitionTest.class
new file mode 100644
index 0000000..65c8928
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqPartitionTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqUnionTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqUnionTest.class
new file mode 100644
index 0000000..a3ed722
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntEqUnionTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntNullIntersectionTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntNullIntersectionTest.class
new file mode 100644
index 0000000..bc56100
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntNullIntersectionTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntSumConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSumConstraintTest.class
new file mode 100644
index 0000000..c1fc1f1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSumConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest$IdxRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest$IdxRestriction.class
new file mode 100644
index 0000000..99f5f92
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest$IdxRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest.class
new file mode 100644
index 0000000..b6184c0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/IntSummationTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/NumRelationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/NumRelationConstraintTest.class
new file mode 100644
index 0000000..ab01a69
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/NumRelationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/Preceding1SquareTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/Preceding1SquareTest.class
new file mode 100644
index 0000000..78160d3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/Preceding1SquareTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/ProdDoubleConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/ProdDoubleConstraintTest.class
new file mode 100644
index 0000000..fee9328
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/ProdDoubleConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/ProdIntConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/ProdIntConstraintTest.class
new file mode 100644
index 0000000..b810ffa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/ProdIntConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/QuotConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/QuotConstraintTest.class
new file mode 100644
index 0000000..fb47304
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/QuotConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/SquareConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/SquareConstraintTest.class
new file mode 100644
index 0000000..26072a2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/SquareConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/SummationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/SummationConstraintTest.class
new file mode 100644
index 0000000..e4f7bcf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/SummationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/FragmentTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/FragmentTestSuite.class
new file mode 100644
index 0000000..0eb8b0b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/FragmentTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/SumConstraintFragmentTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/SumConstraintFragmentTest.class
new file mode 100644
index 0000000..fdfe843
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/fragments/SumConstraintFragmentTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericCombinationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericCombinationConstraintTest.class
new file mode 100644
index 0000000..394ebb4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericCombinationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericDiffConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericDiffConstraintTest.class
new file mode 100644
index 0000000..2796d5a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericDiffConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericIndexTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericIndexTest.class
new file mode 100644
index 0000000..61331a6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericIndexTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericNumRelationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericNumRelationConstraintTest.class
new file mode 100644
index 0000000..0bb4976
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericNumRelationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericProdConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericProdConstraintTest.class
new file mode 100644
index 0000000..9d88e03
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericProdConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericQuotConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericQuotConstraintTest.class
new file mode 100644
index 0000000..160510b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericQuotConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSquareConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSquareConstraintTest.class
new file mode 100644
index 0000000..02fc8c1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSquareConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSumConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSumConstraintTest.class
new file mode 100644
index 0000000..0233ea7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericSumConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericTestSuite.class
new file mode 100644
index 0000000..dffe9f3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/GenericTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$IdxRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$IdxRestriction.class
new file mode 100644
index 0000000..ca825c6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$IdxRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanThreeIndexRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanThreeIndexRestriction.class
new file mode 100644
index 0000000..f8541de
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanThreeIndexRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanTwoIndexRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanTwoIndexRestriction.class
new file mode 100644
index 0000000..433de8a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest$LessThanTwoIndexRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest.class
new file mode 100644
index 0000000..f247105
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/SummationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericNumRelationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericNumRelationConstraintTest.class
new file mode 100644
index 0000000..8143aed
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericNumRelationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSumConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSumConstraintTest.class
new file mode 100644
index 0000000..ab927d0
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSumConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest$IdxRestriction.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest$IdxRestriction.class
new file mode 100644
index 0000000..520c8e3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest$IdxRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest.class
new file mode 100644
index 0000000..b830a55
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/ConstantGenericSummationConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTest.class
new file mode 100644
index 0000000..8f6e3e9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTestSuite.class
new file mode 100644
index 0000000..3f7325c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/generics/constantGen/GenericConstantTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityConstraintTest.class
new file mode 100644
index 0000000..344090e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityCountConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityCountConstraintTest.class
new file mode 100644
index 0000000..a435ca2
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalCardinalityCountConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalTestSuite.class
new file mode 100644
index 0000000..9cbf450
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/global/GlobalTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/constraint/global/NumAllDifferentConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/constraint/global/NumAllDifferentConstraintTest.class
new file mode 100644
index 0000000..f2dd3e5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/constraint/global/NumAllDifferentConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSeperateIdxTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSeperateIdxTest.class
new file mode 100644
index 0000000..ca4f12f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSeperateIdxTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSharedIdxTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSharedIdxTest.class
new file mode 100644
index 0000000..30dd399
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericDiffSharedIdxTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumComboIdxTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumComboIdxTest.class
new file mode 100644
index 0000000..6045480
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumComboIdxTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSeperateIdxTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSeperateIdxTest.class
new file mode 100644
index 0000000..494c2f3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSeperateIdxTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSharedIdxTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSharedIdxTest.class
new file mode 100644
index 0000000..d133212
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSharedIdxTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSourceControlTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSourceControlTest.class
new file mode 100644
index 0000000..a9c7c8c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GenericSumSourceControlTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/GraphTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/graph/GraphTestSuite.class
new file mode 100644
index 0000000..b34c6db
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/GraphTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/graph/TernaryNumSumArcTest.class b/jOptCSRecover/bin/jopt/csp/test/graph/TernaryNumSumArcTest.class
new file mode 100644
index 0000000..ff4f58b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/graph/TernaryNumSumArcTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/BreadthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/BreadthFirstSearchTest.class
new file mode 100644
index 0000000..38952b1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/BreadthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/DepthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/DepthFirstSearchTest.class
new file mode 100644
index 0000000..a46db97
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/DepthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/LocalSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/LocalSearchTest.class
new file mode 100644
index 0000000..857d57b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/LocalSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/MetaheuristicTest.class b/jOptCSRecover/bin/jopt/csp/test/search/MetaheuristicTest.class
new file mode 100644
index 0000000..20f4f21
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/MetaheuristicTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryBreadthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryBreadthFirstSearchTest.class
new file mode 100644
index 0000000..0700c56
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryBreadthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryDepthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryDepthFirstSearchTest.class
new file mode 100644
index 0000000..47b300a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/NonBinaryDepthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SearchGoalTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SearchGoalTest.class
new file mode 100644
index 0000000..f051793
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SearchGoalTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SearchRealTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SearchRealTest.class
new file mode 100644
index 0000000..309ee39
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SearchRealTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SearchTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/search/SearchTestSuite.class
new file mode 100644
index 0000000..fc0d9ce
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SearchTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SetSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SetSearchTest.class
new file mode 100644
index 0000000..217d201
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SetSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SolutionStoreTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SolutionStoreTest.class
new file mode 100644
index 0000000..59bcffb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SolutionStoreTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SplitBreadthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SplitBreadthFirstSearchTest.class
new file mode 100644
index 0000000..e8a8d3e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SplitBreadthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/search/SplitDepthFirstSearchTest.class b/jOptCSRecover/bin/jopt/csp/test/search/SplitDepthFirstSearchTest.class
new file mode 100644
index 0000000..a08412e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/search/SplitDepthFirstSearchTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/solution/SavedSolutionRestoreTest.class b/jOptCSRecover/bin/jopt/csp/test/solution/SavedSolutionRestoreTest.class
new file mode 100644
index 0000000..b81fcc9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/solution/SavedSolutionRestoreTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/solution/SolutionTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/solution/SolutionTestSuite.class
new file mode 100644
index 0000000..05b4503
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/solution/SolutionTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/CosConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/CosConstraintTest.class
new file mode 100644
index 0000000..c3653e6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/CosConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/ExpConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/ExpConstraintTest.class
new file mode 100644
index 0000000..5682045
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/ExpConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/NatLogConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/NatLogConstraintTest.class
new file mode 100644
index 0000000..6b4a35b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/NatLogConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/PowerConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/PowerConstraintTest.class
new file mode 100644
index 0000000..d53e320
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/PowerConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/SinConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/SinConstraintTest.class
new file mode 100644
index 0000000..a3a2def
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/SinConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/TanConstraintTest.class b/jOptCSRecover/bin/jopt/csp/test/trig/TanConstraintTest.class
new file mode 100644
index 0000000..feb6d63
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/TanConstraintTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/trig/TrigTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/trig/TrigTestSuite.class
new file mode 100644
index 0000000..23a5d01
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/trig/TrigTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest$TestListener.class b/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest$TestListener.class
new file mode 100644
index 0000000..9e4cfa5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest$TestListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest.class b/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest.class
new file mode 100644
index 0000000..2ec7d40
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/DoubleIntervalSetTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/DoubleUtilTest.class b/jOptCSRecover/bin/jopt/csp/test/util/DoubleUtilTest.class
new file mode 100644
index 0000000..c0033d6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/DoubleUtilTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest$TestListener.class b/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest$TestListener.class
new file mode 100644
index 0000000..3fc7249
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest$TestListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest.class b/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest.class
new file mode 100644
index 0000000..5d7eedc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/FloatIntervalSetTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/GenericIndexTest.class b/jOptCSRecover/bin/jopt/csp/test/util/GenericIndexTest.class
new file mode 100644
index 0000000..42fa553
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/GenericIndexTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/IndexIteratorTest.class b/jOptCSRecover/bin/jopt/csp/test/util/IndexIteratorTest.class
new file mode 100644
index 0000000..930b2ba
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/IndexIteratorTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest$TestListener.class b/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest$TestListener.class
new file mode 100644
index 0000000..51e662a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest$TestListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest.class b/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest.class
new file mode 100644
index 0000000..d18ae00
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/IntIntervalSetTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/IntValIntervalSetTest.class b/jOptCSRecover/bin/jopt/csp/test/util/IntValIntervalSetTest.class
new file mode 100644
index 0000000..846e31b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/IntValIntervalSetTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest$TestListener.class b/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest$TestListener.class
new file mode 100644
index 0000000..d1167fd
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest$TestListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest.class b/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest.class
new file mode 100644
index 0000000..d86b22f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/LongIntervalSetTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/NumSequenceTest.class b/jOptCSRecover/bin/jopt/csp/test/util/NumSequenceTest.class
new file mode 100644
index 0000000..74b3e8c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/NumSequenceTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/NumUtilsTest.class b/jOptCSRecover/bin/jopt/csp/test/util/NumUtilsTest.class
new file mode 100644
index 0000000..30cead1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/NumUtilsTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/NumberMathTest.class b/jOptCSRecover/bin/jopt/csp/test/util/NumberMathTest.class
new file mode 100644
index 0000000..8c29a21
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/NumberMathTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/SortableListTest.class b/jOptCSRecover/bin/jopt/csp/test/util/SortableListTest.class
new file mode 100644
index 0000000..482d184
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/SortableListTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/util/UtilTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/util/UtilTestSuite.class
new file mode 100644
index 0000000..4e82990
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/util/UtilTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/variable/GenericDoubleTest.class b/jOptCSRecover/bin/jopt/csp/test/variable/GenericDoubleTest.class
new file mode 100644
index 0000000..2c275a3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/variable/GenericDoubleTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/variable/GenericFragmentTest.class b/jOptCSRecover/bin/jopt/csp/test/variable/GenericFragmentTest.class
new file mode 100644
index 0000000..bf2e40a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/variable/GenericFragmentTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/variable/GenericIntTest.class b/jOptCSRecover/bin/jopt/csp/test/variable/GenericIntTest.class
new file mode 100644
index 0000000..61b2f64
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/variable/GenericIntTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/variable/GenericNumConstantTest.class b/jOptCSRecover/bin/jopt/csp/test/variable/GenericNumConstantTest.class
new file mode 100644
index 0000000..1069020
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/variable/GenericNumConstantTest.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/test/variable/VariableTestSuite.class b/jOptCSRecover/bin/jopt/csp/test/variable/VariableTestSuite.class
new file mode 100644
index 0000000..53d0346
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/test/variable/VariableTestSuite.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet$DoubleIntervalIterator.class b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet$DoubleIntervalIterator.class
new file mode 100644
index 0000000..27a48a6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet$DoubleIntervalIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet.class
new file mode 100644
index 0000000..43c9f39
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSetListener.class b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSetListener.class
new file mode 100644
index 0000000..04d3250
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleIntervalSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleSet.class b/jOptCSRecover/bin/jopt/csp/util/DoubleSet.class
new file mode 100644
index 0000000..48514ef
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet$DoubleSparseIterator.class b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet$DoubleSparseIterator.class
new file mode 100644
index 0000000..345d1e7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet$DoubleSparseIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet.class b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet.class
new file mode 100644
index 0000000..83f6289
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSetListener.class b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSetListener.class
new file mode 100644
index 0000000..0e7215c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleSparseSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/DoubleUtil.class b/jOptCSRecover/bin/jopt/csp/util/DoubleUtil.class
new file mode 100644
index 0000000..60ef55d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/DoubleUtil.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet$FloatIntervalIterator.class b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet$FloatIntervalIterator.class
new file mode 100644
index 0000000..df28938
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet$FloatIntervalIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet.class
new file mode 100644
index 0000000..f87e723
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSetListener.class b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSetListener.class
new file mode 100644
index 0000000..82792ce
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatIntervalSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatSet.class b/jOptCSRecover/bin/jopt/csp/util/FloatSet.class
new file mode 100644
index 0000000..4084379
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet$FloatSparseIterator.class b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet$FloatSparseIterator.class
new file mode 100644
index 0000000..09883be
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet$FloatSparseIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet.class b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet.class
new file mode 100644
index 0000000..7c0af99
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatSparseSetListener.class b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSetListener.class
new file mode 100644
index 0000000..4e1204f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatSparseSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/FloatUtil.class b/jOptCSRecover/bin/jopt/csp/util/FloatUtil.class
new file mode 100644
index 0000000..8e8b40c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/FloatUtil.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalIterator.class b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalIterator.class
new file mode 100644
index 0000000..c69905a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalNumberIterator.class b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalNumberIterator.class
new file mode 100644
index 0000000..83dadce
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet$IntIntervalNumberIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet.class
new file mode 100644
index 0000000..d8779f4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntIntervalSetListener.class b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSetListener.class
new file mode 100644
index 0000000..81ea2bf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntIntervalSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntMap.class b/jOptCSRecover/bin/jopt/csp/util/IntMap.class
new file mode 100644
index 0000000..de3373a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntMap.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntSet.class b/jOptCSRecover/bin/jopt/csp/util/IntSet.class
new file mode 100644
index 0000000..8022059
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntSparseSet$IntSparseIterator.class b/jOptCSRecover/bin/jopt/csp/util/IntSparseSet$IntSparseIterator.class
new file mode 100644
index 0000000..c01d2cf
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntSparseSet$IntSparseIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntSparseSet.class b/jOptCSRecover/bin/jopt/csp/util/IntSparseSet.class
new file mode 100644
index 0000000..553beff
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntSparseSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntSparseSetListener.class b/jOptCSRecover/bin/jopt/csp/util/IntSparseSetListener.class
new file mode 100644
index 0000000..ed1fe4b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntSparseSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntValIntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/IntValIntervalSet.class
new file mode 100644
index 0000000..debb089
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntValIntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntegerUtil.class b/jOptCSRecover/bin/jopt/csp/util/IntegerUtil.class
new file mode 100644
index 0000000..7f14943
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntegerUtil.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntervalIterator.class b/jOptCSRecover/bin/jopt/csp/util/IntervalIterator.class
new file mode 100644
index 0000000..5bef418
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntervalIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/IntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/IntervalSet.class
new file mode 100644
index 0000000..611017c
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/IntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalIterator.class b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalIterator.class
new file mode 100644
index 0000000..373d5bc
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalNumberIterator.class b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalNumberIterator.class
new file mode 100644
index 0000000..8e22bef
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet$LongIntervalNumberIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet.class b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet.class
new file mode 100644
index 0000000..8c4f801
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongIntervalSetListener.class b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSetListener.class
new file mode 100644
index 0000000..0a2b76b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongIntervalSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongSet.class b/jOptCSRecover/bin/jopt/csp/util/LongSet.class
new file mode 100644
index 0000000..2cab047
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongSparseSet$LongSparseIterator.class b/jOptCSRecover/bin/jopt/csp/util/LongSparseSet$LongSparseIterator.class
new file mode 100644
index 0000000..5522ce3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongSparseSet$LongSparseIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongSparseSet.class b/jOptCSRecover/bin/jopt/csp/util/LongSparseSet.class
new file mode 100644
index 0000000..6e87031
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongSparseSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongSparseSetListener.class b/jOptCSRecover/bin/jopt/csp/util/LongSparseSetListener.class
new file mode 100644
index 0000000..4c80379
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongSparseSetListener.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/LongUtil.class b/jOptCSRecover/bin/jopt/csp/util/LongUtil.class
new file mode 100644
index 0000000..4d714d1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/LongUtil.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/NumSet.class b/jOptCSRecover/bin/jopt/csp/util/NumSet.class
new file mode 100644
index 0000000..ce8a366
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/NumSet.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/NumberIterator.class b/jOptCSRecover/bin/jopt/csp/util/NumberIterator.class
new file mode 100644
index 0000000..8f59f50
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/NumberIterator.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/SortableDoubleList.class b/jOptCSRecover/bin/jopt/csp/util/SortableDoubleList.class
new file mode 100644
index 0000000..2e50474
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/SortableDoubleList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/SortableFloatList.class b/jOptCSRecover/bin/jopt/csp/util/SortableFloatList.class
new file mode 100644
index 0000000..f909a22
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/SortableFloatList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/SortableIntList.class b/jOptCSRecover/bin/jopt/csp/util/SortableIntList.class
new file mode 100644
index 0000000..7027431
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/SortableIntList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/SortableLongList.class b/jOptCSRecover/bin/jopt/csp/util/SortableLongList.class
new file mode 100644
index 0000000..757955f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/util/SortableLongList.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/util/package.html b/jOptCSRecover/bin/jopt/csp/util/package.html
new file mode 100644
index 0000000..8241016
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/util/package.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+Contains several foundational utility classes and associated interfaces.
+
+Primarily offers classes used to efficiently maintain sets of numbers providing operations that are
+the key building-blocks of the variable/domain functionality. Contains support for integer-, long-,
+double-, and float-based numbers. This package also offers associated classes and miscellaneous related
+utilities.
+
+@since JDK1.4
+
+
+
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithm.class b/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithm.class
new file mode 100644
index 0000000..0c908e3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithm.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithmStrength.class b/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithmStrength.class
new file mode 100644
index 0000000..2a9d198
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspAlgorithmStrength.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspBooleanExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspBooleanExpr.class
new file mode 100644
index 0000000..2e9aa5e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspBooleanExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspBooleanVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspBooleanVariable.class
new file mode 100644
index 0000000..e267814
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspBooleanVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspConstraint.class b/jOptCSRecover/bin/jopt/csp/variable/CspConstraint.class
new file mode 100644
index 0000000..37f7136
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspConstraint.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspDoubleCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleCast.class
new file mode 100644
index 0000000..c77e2b8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspDoubleExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleExpr.class
new file mode 100644
index 0000000..f53a089
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspDoubleVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleVariable.class
new file mode 100644
index 0000000..5d16492
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspDoubleVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspFloatCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspFloatCast.class
new file mode 100644
index 0000000..68e2cf3
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspFloatCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspFloatExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspFloatExpr.class
new file mode 100644
index 0000000..01bf453
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspFloatExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspFloatVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspFloatVariable.class
new file mode 100644
index 0000000..8395873
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspFloatVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanConstant.class
new file mode 100644
index 0000000..26f6bfa
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanExpr.class
new file mode 100644
index 0000000..a6903c5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericBooleanExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericConstant.class
new file mode 100644
index 0000000..241e24f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleCast.class
new file mode 100644
index 0000000..139190a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleConstant.class
new file mode 100644
index 0000000..135fc8e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleExpr.class
new file mode 100644
index 0000000..42299fb
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericDoubleExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatCast.class
new file mode 100644
index 0000000..b116208
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatConstant.class
new file mode 100644
index 0000000..7a301b9
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatExpr.class
new file mode 100644
index 0000000..9152d9b
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericFloatExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndex.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndex.class
new file mode 100644
index 0000000..53001a1
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndex.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndexRestriction.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndexRestriction.class
new file mode 100644
index 0000000..08ee847
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIndexRestriction.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntConstant.class
new file mode 100644
index 0000000..473e11e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntExpr.class
new file mode 100644
index 0000000..22454f7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericIntExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongCast.class
new file mode 100644
index 0000000..29c950e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongConstant.class
new file mode 100644
index 0000000..0b1e970
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongExpr.class
new file mode 100644
index 0000000..e20dc6f
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericLongExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumConstant.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumConstant.class
new file mode 100644
index 0000000..af72c8e
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumConstant.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumExpr.class
new file mode 100644
index 0000000..9aa7b21
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspGenericNumExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspIntExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspIntExpr.class
new file mode 100644
index 0000000..3960534
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspIntExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspIntSetVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspIntSetVariable.class
new file mode 100644
index 0000000..eb25c8a
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspIntSetVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspIntVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspIntVariable.class
new file mode 100644
index 0000000..648a457
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspIntVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspLongCast.class b/jOptCSRecover/bin/jopt/csp/variable/CspLongCast.class
new file mode 100644
index 0000000..7eadd3d
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspLongCast.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspLongExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspLongExpr.class
new file mode 100644
index 0000000..bf6f2e4
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspLongExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspLongVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspLongVariable.class
new file mode 100644
index 0000000..a896175
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspLongVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspMath.class b/jOptCSRecover/bin/jopt/csp/variable/CspMath.class
new file mode 100644
index 0000000..f194ea5
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspMath.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspNumExpr.class b/jOptCSRecover/bin/jopt/csp/variable/CspNumExpr.class
new file mode 100644
index 0000000..d64a1db
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspNumExpr.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspNumVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspNumVariable.class
new file mode 100644
index 0000000..0cdb148
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspNumVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspSetConstraints.class b/jOptCSRecover/bin/jopt/csp/variable/CspSetConstraints.class
new file mode 100644
index 0000000..1314c41
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspSetConstraints.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspSetVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspSetVariable.class
new file mode 100644
index 0000000..b6a9a78
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspSetVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspVariable.class b/jOptCSRecover/bin/jopt/csp/variable/CspVariable.class
new file mode 100644
index 0000000..f3f93c6
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspVariable.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/CspVariableFactory.class b/jOptCSRecover/bin/jopt/csp/variable/CspVariableFactory.class
new file mode 100644
index 0000000..7d373a8
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/CspVariableFactory.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/PropagationFailureException.class b/jOptCSRecover/bin/jopt/csp/variable/PropagationFailureException.class
new file mode 100644
index 0000000..437ffd7
Binary files /dev/null and b/jOptCSRecover/bin/jopt/csp/variable/PropagationFailureException.class differ
diff --git a/jOptCSRecover/bin/jopt/csp/variable/package.html b/jOptCSRecover/bin/jopt/csp/variable/package.html
new file mode 100644
index 0000000..d4150d0
--- /dev/null
+++ b/jOptCSRecover/bin/jopt/csp/variable/package.html
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+The interfaces for building, combining, and constraining variables and expressions
+
+Offers classes for "making" constraint satisfaction problems. Defines interfaces for integer, long,
+double, float, and boolean forms of variables and expressions. Defines the mathematical operations
+commonly associated with aforementioned constructs and the format for defining constraints on them.
+Also includes the concept of generic constants and expressions - 'generic' indicating the use of indexes
+(commonly written as subscripts) to relate groups of variables like Xi or Yj (read "X sub i" or
+"Y sub j," respectively).
+
+@since JDK1.4
+
+
+
diff --git a/jOptJSRecover/maintainj/META-INF/aop.xml b/jOptJSRecover/maintainj/META-INF/aop.xml
index d980841..e739e2f 100644
--- a/jOptJSRecover/maintainj/META-INF/aop.xml
+++ b/jOptJSRecover/maintainj/META-INF/aop.xml
@@ -1,13 +1,15 @@
-
+
-
+
+
+
\ No newline at end of file