import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.List;
import org.jacop.constraints.*;
import org.jacop.constraints.binpacking.BinpackingCloneable;
import org.jacop.constraints.cumulative.CumulativeBasicCloneable;
import org.jacop.constraints.cumulative.CumulativeOptionalCloneable;
import org.jacop.constraints.cumulative.CumulativeUnaryCloneable;
import org.jacop.constraints.cumulative.CumulativeUnaryOptionalCloneable;
import org.jacop.constraints.diffn.DiffnCloneable;
import org.jacop.constraints.diffn.DiffnDecomposedCloneable;
import org.jacop.constraints.diffn.NooverlapCloneable;
import org.jacop.constraints.geost.ExternalConstraintCloneable;
import org.jacop.constraints.geost.GeostCloneable;
import org.jacop.constraints.geost.GeostObjectCloneable;
import org.jacop.constraints.geost.NonOverlappingCloneable;
import org.jacop.constraints.geost.ShapeCloneable;
import org.jacop.constraints.knapsack.KnapsackCloneable;
import org.jacop.constraints.netflow.ArithmeticCloneable;
import org.jacop.constraints.netflow.NetworkBuilder;
import org.jacop.constraints.netflow.NetworkFlowCloneable;
import org.jacop.constraints.netflow.simplex.Node;
import org.jacop.constraints.regular.RegularCloneable;
import org.jacop.constraints.table.SimpleTableCloneable;
import org.jacop.constraints.table.TableCloneable;
import org.jacop.core.IntDomain;
import org.jacop.core.IntVarCloneable;
import org.jacop.core.IntervalDomain;
import org.jacop.core.StoreCloneable;
import org.jacop.util.fsm.FSMCloneable;
import org.jacop.util.fsm.FSMState;
import org.jacop.util.fsm.FSMTransition;
import frodo2.algorithms.AbstractDCOPsolver;
import frodo2.algorithms.Solution;
import frodo2.algorithms.adopt.ADOPTsolver;
import frodo2.algorithms.afb.AFBsolver;
import frodo2.algorithms.asodpop.ASODPOPsolver;
import frodo2.algorithms.dpop.DPOPsolver;
import frodo2.algorithms.dpop.privacy.P2_DPOPsolver;
import frodo2.algorithms.dpop.privacy.P3halves_DPOPsolver;
import frodo2.algorithms.dpop.privacy.P_DPOPsolver;
import frodo2.algorithms.localSearch.dsa.DSAsolver;
import frodo2.algorithms.maxsum.MaxSumSolver;
import frodo2.algorithms.localSearch.mgm.MGMsolver;
import frodo2.algorithms.localSearch.mgm.mgm2.MGM2solver;
import frodo2.algorithms.mpc_discsp.MPC_DisWCSP4solver;
import frodo2.algorithms.odpop.ODPOPsolver;
import frodo2.algorithms.synchbb.SynchBBsolver;
import frodo2.solutionSpaces.Addable;
import frodo2.solutionSpaces.AddableInteger;
import frodo2.solutionSpaces.UtilitySolutionSpace;
import frodo2.solutionSpaces.JaCoP.JaCoPproblem;
import frodo2.solutionSpaces.crypto.AddableBigInteger;
import junit.framework.TestCase;
import junit.framework.TestSuite;