All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.ortools.constraintsolver.mainJNI Maven / Gradle / Ivy

The newest version!
/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 3.0.12
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.google.ortools.constraintsolver;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html
import java.util.function.Supplier;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/BooleanSupplier.html
import java.util.function.BooleanSupplier;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongToIntFunction.html
import java.util.function.LongToIntFunction;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongUnaryOperator.html
import java.util.function.LongUnaryOperator;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongBinaryOperator.html
import java.util.function.LongBinaryOperator;

// Used to wrap std::function
// note: Java does not provide TernaryOperator so we provide it
import com.google.ortools.constraintsolver.LongTernaryOperator;

// Used to wrap std::function
// note: Java does not provide it, so we provide it.
import com.google.ortools.constraintsolver.IntIntToLongFunction;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongPredicate.html
import java.util.function.LongPredicate;

// Used to wrap std::function
// note: Java does not provide TernaryPredicate so we provide it
import com.google.ortools.constraintsolver.LongTernaryPredicate;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/Consumer.html
import java.util.function.Consumer;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/util/function/LongConsumer.html
import java.util.function.LongConsumer;

// Used to wrap std::function
// see https://docs.oracle.com/javase/8/docs/api/java/lang/Runnable.html
import java.lang.Runnable;

public class mainJNI {
  public final static native long new_IntTupleSet__SWIG_0(int jarg1);
  public final static native long new_IntTupleSet__SWIG_1(long jarg1, IntTupleSet jarg1_);
  public final static native void delete_IntTupleSet(long jarg1);
  public final static native void IntTupleSet_clear(long jarg1, IntTupleSet jarg1_);
  public final static native int IntTupleSet_insert__SWIG_0(long jarg1, IntTupleSet jarg1_, int[] jarg2);
  public final static native int IntTupleSet_insert__SWIG_1(long jarg1, IntTupleSet jarg1_, long[] jarg2);
  public final static native int IntTupleSet_insert2(long jarg1, IntTupleSet jarg1_, long jarg2, long jarg3);
  public final static native int IntTupleSet_insert3(long jarg1, IntTupleSet jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native int IntTupleSet_insert4(long jarg1, IntTupleSet jarg1_, long jarg2, long jarg3, long jarg4, long jarg5);
  public final static native void IntTupleSet_insertAll__SWIG_0(long jarg1, IntTupleSet jarg1_, long[][] jarg2);
  public final static native void IntTupleSet_insertAll__SWIG_1(long jarg1, IntTupleSet jarg1_, int[][] jarg2);
  public final static native boolean IntTupleSet_contains__SWIG_0(long jarg1, IntTupleSet jarg1_, int[] jarg2);
  public final static native boolean IntTupleSet_contains__SWIG_1(long jarg1, IntTupleSet jarg1_, long[] jarg2);
  public final static native int IntTupleSet_numTuples(long jarg1, IntTupleSet jarg1_);
  public final static native long IntTupleSet_value(long jarg1, IntTupleSet jarg1_, int jarg2, int jarg3);
  public final static native int IntTupleSet_arity(long jarg1, IntTupleSet jarg1_);
  public final static native int IntTupleSet_numDifferentValuesInColumn(long jarg1, IntTupleSet jarg1_, int jarg2);
  public final static native long IntTupleSet_sortedByColumn(long jarg1, IntTupleSet jarg1_, int jarg2);
  public final static native long IntTupleSet_sortedLexicographically(long jarg1, IntTupleSet jarg1_);
  public final static native long CpRandomSeed();
  public final static native int DefaultPhaseParameters_CHOOSE_MAX_SUM_IMPACT_get();
  public final static native int DefaultPhaseParameters_CHOOSE_MAX_AVERAGE_IMPACT_get();
  public final static native int DefaultPhaseParameters_CHOOSE_MAX_VALUE_IMPACT_get();
  public final static native int DefaultPhaseParameters_SELECT_MIN_IMPACT_get();
  public final static native int DefaultPhaseParameters_SELECT_MAX_IMPACT_get();
  public final static native int DefaultPhaseParameters_NONE_get();
  public final static native int DefaultPhaseParameters_NORMAL_get();
  public final static native int DefaultPhaseParameters_VERBOSE_get();
  public final static native void DefaultPhaseParameters_var_selection_schema_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_var_selection_schema_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_value_selection_schema_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_value_selection_schema_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_initialization_splits_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_initialization_splits_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_run_all_heuristics_set(long jarg1, DefaultPhaseParameters jarg1_, boolean jarg2);
  public final static native boolean DefaultPhaseParameters_run_all_heuristics_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_heuristic_period_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_heuristic_period_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_heuristic_num_failures_limit_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_heuristic_num_failures_limit_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_persistent_impact_set(long jarg1, DefaultPhaseParameters jarg1_, boolean jarg2);
  public final static native boolean DefaultPhaseParameters_persistent_impact_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_random_seed_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_random_seed_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_display_level_set(long jarg1, DefaultPhaseParameters jarg1_, int jarg2);
  public final static native int DefaultPhaseParameters_display_level_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_use_last_conflict_set(long jarg1, DefaultPhaseParameters jarg1_, boolean jarg2);
  public final static native boolean DefaultPhaseParameters_use_last_conflict_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native void DefaultPhaseParameters_decision_builder_set(long jarg1, DefaultPhaseParameters jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native long DefaultPhaseParameters_decision_builder_get(long jarg1, DefaultPhaseParameters jarg1_);
  public final static native long new_DefaultPhaseParameters();
  public final static native void delete_DefaultPhaseParameters(long jarg1);
  public final static native long new_Solver_IntegerCastInfo__SWIG_0();
  public final static native long new_Solver_IntegerCastInfo__SWIG_1(long jarg1, IntVar jarg1_, long jarg2, IntExpr jarg2_, long jarg3, Constraint jarg3_);
  public final static native void Solver_IntegerCastInfo_variable_set(long jarg1, Solver.IntegerCastInfo jarg1_, long jarg2, IntVar jarg2_);
  public final static native long Solver_IntegerCastInfo_variable_get(long jarg1, Solver.IntegerCastInfo jarg1_);
  public final static native void Solver_IntegerCastInfo_expression_set(long jarg1, Solver.IntegerCastInfo jarg1_, long jarg2, IntExpr jarg2_);
  public final static native long Solver_IntegerCastInfo_expression_get(long jarg1, Solver.IntegerCastInfo jarg1_);
  public final static native void Solver_IntegerCastInfo_maintainer_set(long jarg1, Solver.IntegerCastInfo jarg1_, long jarg2, Constraint jarg2_);
  public final static native long Solver_IntegerCastInfo_maintainer_get(long jarg1, Solver.IntegerCastInfo jarg1_);
  public final static native void delete_Solver_IntegerCastInfo(long jarg1);
  public final static native int Solver_kNumPriorities_get();
  public final static native int Solver_INT_VAR_DEFAULT_get();
  public final static native int Solver_INT_VAR_SIMPLE_get();
  public final static native int Solver_CHOOSE_FIRST_UNBOUND_get();
  public final static native int Solver_CHOOSE_RANDOM_get();
  public final static native int Solver_CHOOSE_MIN_SIZE_LOWEST_MIN_get();
  public final static native int Solver_CHOOSE_MIN_SIZE_HIGHEST_MIN_get();
  public final static native int Solver_CHOOSE_MIN_SIZE_LOWEST_MAX_get();
  public final static native int Solver_CHOOSE_MIN_SIZE_HIGHEST_MAX_get();
  public final static native int Solver_CHOOSE_LOWEST_MIN_get();
  public final static native int Solver_CHOOSE_HIGHEST_MAX_get();
  public final static native int Solver_CHOOSE_MIN_SIZE_get();
  public final static native int Solver_CHOOSE_MAX_SIZE_get();
  public final static native int Solver_CHOOSE_MAX_REGRET_ON_MIN_get();
  public final static native int Solver_CHOOSE_PATH_get();
  public final static native int Solver_INT_VALUE_DEFAULT_get();
  public final static native int Solver_INT_VALUE_SIMPLE_get();
  public final static native int Solver_ASSIGN_MIN_VALUE_get();
  public final static native int Solver_ASSIGN_MAX_VALUE_get();
  public final static native int Solver_ASSIGN_RANDOM_VALUE_get();
  public final static native int Solver_ASSIGN_CENTER_VALUE_get();
  public final static native int Solver_SPLIT_LOWER_HALF_get();
  public final static native int Solver_SPLIT_UPPER_HALF_get();
  public final static native int Solver_CHOOSE_STATIC_GLOBAL_BEST_get();
  public final static native int Solver_CHOOSE_DYNAMIC_GLOBAL_BEST_get();
  public final static native int Solver_SEQUENCE_DEFAULT_get();
  public final static native int Solver_SEQUENCE_SIMPLE_get();
  public final static native int Solver_CHOOSE_MIN_SLACK_RANK_FORWARD_get();
  public final static native int Solver_CHOOSE_RANDOM_RANK_FORWARD_get();
  public final static native int Solver_INTERVAL_DEFAULT_get();
  public final static native int Solver_INTERVAL_SIMPLE_get();
  public final static native int Solver_INTERVAL_SET_TIMES_FORWARD_get();
  public final static native int Solver_INTERVAL_SET_TIMES_BACKWARD_get();
  public final static native int Solver_TWOOPT_get();
  public final static native int Solver_OROPT_get();
  public final static native int Solver_RELOCATE_get();
  public final static native int Solver_EXCHANGE_get();
  public final static native int Solver_CROSS_get();
  public final static native int Solver_MAKEACTIVE_get();
  public final static native int Solver_MAKEINACTIVE_get();
  public final static native int Solver_MAKECHAININACTIVE_get();
  public final static native int Solver_SWAPACTIVE_get();
  public final static native int Solver_EXTENDEDSWAPACTIVE_get();
  public final static native int Solver_PATHLNS_get();
  public final static native int Solver_FULLPATHLNS_get();
  public final static native int Solver_UNACTIVELNS_get();
  public final static native int Solver_INCREMENT_get();
  public final static native int Solver_DECREMENT_get();
  public final static native int Solver_SIMPLELNS_get();
  public final static native int Solver_LK_get();
  public final static native int Solver_TSPOPT_get();
  public final static native int Solver_TSPLNS_get();
  public final static native int Solver_GE_get();
  public final static native int Solver_LE_get();
  public final static native int Solver_EQ_get();
  public final static native int Solver_DELAYED_PRIORITY_get();
  public final static native int Solver_VAR_PRIORITY_get();
  public final static native int Solver_NORMAL_PRIORITY_get();
  public final static native int Solver_ENDS_AFTER_END_get();
  public final static native int Solver_ENDS_AFTER_START_get();
  public final static native int Solver_ENDS_AT_END_get();
  public final static native int Solver_ENDS_AT_START_get();
  public final static native int Solver_STARTS_AFTER_END_get();
  public final static native int Solver_STARTS_AFTER_START_get();
  public final static native int Solver_STARTS_AT_END_get();
  public final static native int Solver_STARTS_AT_START_get();
  public final static native int Solver_STAYS_IN_SYNC_get();
  public final static native int Solver_ENDS_AFTER_get();
  public final static native int Solver_ENDS_AT_get();
  public final static native int Solver_ENDS_BEFORE_get();
  public final static native int Solver_STARTS_AFTER_get();
  public final static native int Solver_STARTS_AT_get();
  public final static native int Solver_STARTS_BEFORE_get();
  public final static native int Solver_CROSS_DATE_get();
  public final static native int Solver_AVOID_DATE_get();
  public final static native int Solver_NO_CHANGE_get();
  public final static native int Solver_KEEP_LEFT_get();
  public final static native int Solver_KEEP_RIGHT_get();
  public final static native int Solver_KILL_BOTH_get();
  public final static native int Solver_SWITCH_BRANCHES_get();
  public final static native int Solver_SENTINEL_get();
  public final static native int Solver_SIMPLE_MARKER_get();
  public final static native int Solver_CHOICE_POINT_get();
  public final static native int Solver_REVERSIBLE_ACTION_get();
  public final static native int Solver_OUTSIDE_SEARCH_get();
  public final static native int Solver_IN_ROOT_NODE_get();
  public final static native int Solver_IN_SEARCH_get();
  public final static native int Solver_AT_SOLUTION_get();
  public final static native int Solver_NO_MORE_SOLUTIONS_get();
  public final static native int Solver_PROBLEM_INFEASIBLE_get();
  public final static native int Solver_NOT_SET_get();
  public final static native int Solver_MAXIMIZATION_get();
  public final static native int Solver_MINIMIZATION_get();
  public final static native long new_Solver__SWIG_0(String jarg1);
  public final static native long new_Solver__SWIG_1(String jarg1, byte[] jarg2);
  public final static native void delete_Solver(long jarg1);
  public final static native byte[] Solver_parameters(long jarg1, Solver jarg1_);
  public final static native byte[] Solver_defaultSolverParameters();
  public final static native void Solver_addConstraint(long jarg1, Solver jarg1_, long jarg2, Constraint jarg2_);
  public final static native void Solver_addCastConstraint(long jarg1, Solver jarg1_, long jarg2, CastConstraint jarg2_, long jarg3, IntVar jarg3_, long jarg4, IntExpr jarg4_);
  public final static native boolean Solver_solve__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3);
  public final static native boolean Solver_solve__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native boolean Solver_solve__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_);
  public final static native boolean Solver_solve__SWIG_3(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_);
  public final static native boolean Solver_solve__SWIG_4(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_);
  public final static native boolean Solver_solve__SWIG_5(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_);
  public final static native void Solver_newSearch__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3);
  public final static native void Solver_newSearch__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native void Solver_newSearch__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_);
  public final static native void Solver_newSearch__SWIG_3(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_);
  public final static native void Solver_newSearch__SWIG_4(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_);
  public final static native void Solver_newSearch__SWIG_5(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_);
  public final static native boolean Solver_nextSolution(long jarg1, Solver jarg1_);
  public final static native void Solver_restartSearch(long jarg1, Solver jarg1_);
  public final static native void Solver_endSearch(long jarg1, Solver jarg1_);
  public final static native boolean Solver_solveAndCommit__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3);
  public final static native boolean Solver_solveAndCommit__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native boolean Solver_solveAndCommit__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_);
  public final static native boolean Solver_solveAndCommit__SWIG_3(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_);
  public final static native boolean Solver_solveAndCommit__SWIG_4(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_);
  public final static native boolean Solver_checkAssignment(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native boolean Solver_checkConstraint(long jarg1, Solver jarg1_, long jarg2, Constraint jarg2_);
  public final static native int Solver_state(long jarg1, Solver jarg1_);
  public final static native void Solver_fail(long jarg1, Solver jarg1_);
  public final static native String Solver_toString(long jarg1, Solver jarg1_);
  public final static native long Solver_memoryUsage();
  public final static native long Solver_wallTime(long jarg1, Solver jarg1_);
  public final static native long Solver_branches(long jarg1, Solver jarg1_);
  public final static native long Solver_solutions(long jarg1, Solver jarg1_);
  public final static native long Solver_unchecked_solutions(long jarg1, Solver jarg1_);
  public final static native long Solver_demon_runs(long jarg1, Solver jarg1_, int jarg2);
  public final static native long Solver_failures(long jarg1, Solver jarg1_);
  public final static native long Solver_neighbors(long jarg1, Solver jarg1_);
  public final static native long Solver_filteredNeighbors(long jarg1, Solver jarg1_);
  public final static native long Solver_acceptedNeighbors(long jarg1, Solver jarg1_);
  public final static native long Solver_stamp(long jarg1, Solver jarg1_);
  public final static native long Solver_fail_stamp(long jarg1, Solver jarg1_);
  public final static native int Solver_optimization_direction(long jarg1, Solver jarg1_);
  public final static native void Solver_set_optimization_direction(long jarg1, Solver jarg1_, int jarg2);
  public final static native long Solver_makeIntVar__SWIG_0(long jarg1, Solver jarg1_, long jarg2, long jarg3, String jarg4);
  public final static native long Solver_makeIntVar__SWIG_1(long jarg1, Solver jarg1_, long[] jarg2, String jarg3);
  public final static native long Solver_makeIntVar__SWIG_2(long jarg1, Solver jarg1_, int[] jarg2, String jarg3);
  public final static native long Solver_makeIntVar__SWIG_3(long jarg1, Solver jarg1_, long jarg2, long jarg3);
  public final static native long Solver_makeIntVar__SWIG_4(long jarg1, Solver jarg1_, long[] jarg2);
  public final static native long Solver_makeIntVar__SWIG_5(long jarg1, Solver jarg1_, int[] jarg2);
  public final static native long Solver_makeBoolVar__SWIG_0(long jarg1, Solver jarg1_, String jarg2);
  public final static native long Solver_makeBoolVar__SWIG_1(long jarg1, Solver jarg1_);
  public final static native long Solver_makeIntConst__SWIG_0(long jarg1, Solver jarg1_, long jarg2, String jarg3);
  public final static native long Solver_makeIntConst__SWIG_1(long jarg1, Solver jarg1_, long jarg2);
  public final static native long Solver_makeSum__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeSum__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeSum__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeScalProd__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3);
  public final static native long Solver_makeScalProd__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3);
  public final static native long Solver_makeDifference__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeDifference__SWIG_1(long jarg1, Solver jarg1_, long jarg2, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeOpposite(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_);
  public final static native long Solver_makeProd__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeProd__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeDiv__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeDiv__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeAbs(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_);
  public final static native long Solver_makeSquare(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_);
  public final static native long Solver_makePower(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeElement__SWIG_0(long jarg1, Solver jarg1_, long[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeElement__SWIG_1(long jarg1, Solver jarg1_, int[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeElement__SWIG_2(long jarg1, Solver jarg1_, LongUnaryOperator jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeMonotonicElement(long jarg1, Solver jarg1_, LongUnaryOperator jarg2, boolean jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeElement__SWIG_3(long jarg1, Solver jarg1_, LongBinaryOperator jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeElement__SWIG_4(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeIndexExpression(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3);
  public final static native long Solver_makeIfThenElseCt(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntExpr jarg4_, long jarg5, IntVar jarg5_);
  public final static native long Solver_makeMin__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeMin__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeMin__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeMin__SWIG_3(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeMax__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeMax__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeMax__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeMax__SWIG_3(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeConvexPiecewiseExpr(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, long jarg5, long jarg6);
  public final static native long Solver_makeSemiContinuousExpr(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeModulo__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeModulo__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeConditionalExpression(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntExpr jarg3_, long jarg4);
  public final static native long Solver_makeTrueConstraint(long jarg1, Solver jarg1_);
  public final static native long Solver_makeFalseConstraint__SWIG_0(long jarg1, Solver jarg1_);
  public final static native long Solver_makeFalseConstraint__SWIG_1(long jarg1, Solver jarg1_, String jarg2);
  public final static native long Solver_makeIsEqualCstCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsEqualCstVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsEqualVar__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsEqualVar__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeEquality__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeEquality__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeEquality__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeIsDifferentCstCt__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsDifferentCstVar__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsDifferentCstVar__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeIsDifferentCstCt__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeNonEquality__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeNonEquality__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeNonEquality__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeIsLessOrEqualCstCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsLessOrEqualCstVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsLessOrEqualVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeIsLessOrEqualCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeLessOrEqual__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeLessOrEqual__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeLessOrEqual__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeIsGreaterOrEqualCstCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsGreaterOrEqualCstVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsGreaterOrEqualVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeIsGreaterOrEqualCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeGreaterOrEqual__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeGreaterOrEqual__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeGreaterOrEqual__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeIsGreaterCstCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsGreaterCstVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsGreaterVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeIsGreaterCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeGreater__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeGreater__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeGreater__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeIsLessCstCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsLessCstVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeIsLessVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeIsLessCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeLess__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_);
  public final static native long Solver_makeLess__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native long Solver_makeLess__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native long Solver_makeSumLessOrEqual(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3);
  public final static native long Solver_makeSumGreaterOrEqual(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3);
  public final static native long Solver_makeSumEquality__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3);
  public final static native long Solver_makeSumEquality__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeScalProdEquality__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4);
  public final static native long Solver_makeScalProdEquality__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4);
  public final static native long Solver_makeScalProdEquality__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeScalProdEquality__SWIG_3(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeScalProdGreaterOrEqual__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4);
  public final static native long Solver_makeScalProdGreaterOrEqual__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4);
  public final static native long Solver_makeScalProdLessOrEqual__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4);
  public final static native long Solver_makeScalProdLessOrEqual__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4);
  public final static native long Solver_makeMinEquality(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeMaxEquality(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeElementEquality__SWIG_0(long jarg1, Solver jarg1_, long[] jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeElementEquality__SWIG_1(long jarg1, Solver jarg1_, int[] jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeElementEquality__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeElementEquality__SWIG_3(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_, long jarg4);
  public final static native long Solver_makeAbsEquality(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeIndexOfConstraint(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_, long jarg4);
  public final static native long Solver_makeConstraintInitialPropagateCallback(long jarg1, Solver jarg1_, long jarg2, Constraint jarg2_);
  public final static native long Solver_makeDelayedConstraintInitialPropagateCallback(long jarg1, Solver jarg1_, long jarg2, Constraint jarg2_);
  public final static native long Solver_makeClosureDemon(long jarg1, Solver jarg1_, Runnable jarg2);
  public final static native long Solver_makeBetweenCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeNotBetweenCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeIsBetweenCt(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4, long jarg5, IntVar jarg5_);
  public final static native long Solver_makeIsBetweenVar(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeMemberCt__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long[] jarg3);
  public final static native long Solver_makeMemberCt__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int[] jarg3);
  public final static native long Solver_makeNotMemberCt__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long[] jarg3);
  public final static native long Solver_makeNotMemberCt__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int[] jarg3);
  public final static native long Solver_makeNotMemberCt__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long[] jarg3, long[] jarg4);
  public final static native long Solver_makeNotMemberCt__SWIG_3(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int[] jarg3, int[] jarg4);
  public final static native long Solver_makeIsMemberCt__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long[] jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsMemberCt__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int[] jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeIsMemberVar__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, long[] jarg3);
  public final static native long Solver_makeIsMemberVar__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_, int[] jarg3);
  public final static native long Solver_makeCount__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, long jarg4);
  public final static native long Solver_makeCount__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeDistribute__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, IntVar[] jarg4);
  public final static native long Solver_makeDistribute__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, IntVar[] jarg4);
  public final static native long Solver_makeDistribute__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeDistribute__SWIG_3(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, long jarg4, long jarg5);
  public final static native long Solver_makeDistribute__SWIG_4(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long[] jarg4);
  public final static native long Solver_makeDistribute__SWIG_5(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, int[] jarg4);
  public final static native long Solver_makeDistribute__SWIG_6(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long[] jarg4, long[] jarg5);
  public final static native long Solver_makeDistribute__SWIG_7(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, int[] jarg4, int[] jarg5);
  public final static native long Solver_makeDeviation(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntVar jarg3_, long jarg4);
  public final static native long Solver_makeAllDifferent__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeAllDifferent__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, boolean jarg3);
  public final static native long Solver_makeAllDifferentExcept(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3);
  public final static native long Solver_makeSortingConstraint(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeLexicalLess(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeLexicalLessOrEqual(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeInversePermutationConstraint(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeIndexOfFirstMaxValueConstraint(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, IntVar[] jarg3);
  public final static native long Solver_makeIndexOfFirstMinValueConstraint(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, IntVar[] jarg3);
  public final static native long Solver_makeNullIntersect(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeNullIntersectExcept(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, long jarg4);
  public final static native long Solver_makeNoCycle__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, LongPredicate jarg4);
  public final static native long Solver_makeNoCycle__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3);
  public final static native long Solver_makeNoCycle__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, LongPredicate jarg4, boolean jarg5);
  public final static native long Solver_makeCircuit(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeSubCircuit(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makePathCumul__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, IntVar[] jarg5);
  public final static native long Solver_makeDelayedPathCumul(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, IntVar[] jarg5);
  public final static native long Solver_makePathCumul__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, LongBinaryOperator jarg5);
  public final static native long Solver_makePathCumul__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, IntVar[] jarg5, LongBinaryOperator jarg6);
  public final static native long Solver_makePathConnected(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long[] jarg4, IntVar[] jarg5);
  public final static native long Solver_makeMapDomain(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, IntVar[] jarg3);
  public final static native long Solver_makeAllowedAssignment(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntTupleSet jarg3_);
  public final static native long Solver_makeTransitionConstraint__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntTupleSet jarg3_, long jarg4, long[] jarg5);
  public final static native long Solver_makeTransitionConstraint__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, IntTupleSet jarg3_, long jarg4, int[] jarg5);
  public final static native long Solver_makeNonOverlappingBoxesConstraint__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, IntVar[] jarg5);
  public final static native long Solver_makeNonOverlappingBoxesConstraint__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, long[] jarg4, long[] jarg5);
  public final static native long Solver_makeNonOverlappingBoxesConstraint__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, int[] jarg4, int[] jarg5);
  public final static native long Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, IntVar[] jarg4, IntVar[] jarg5);
  public final static native long Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, long[] jarg4, long[] jarg5);
  public final static native long Solver_makeNonOverlappingNonStrictBoxesConstraint__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, int[] jarg4, int[] jarg5);
  public final static native long Solver_makePack(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3);
  public final static native long Solver_makeFixedDurationIntervalVar__SWIG_0(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, boolean jarg5, String jarg6);
  public final static native long Solver_makeFixedDurationIntervalVar__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, String jarg4);
  public final static native long Solver_makeFixedDurationIntervalVar__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4, IntVar jarg4_, String jarg5);
  public final static native long Solver_makeFixedInterval(long jarg1, Solver jarg1_, long jarg2, long jarg3, String jarg4);
  public final static native long Solver_makeIntervalVar(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, long jarg5, long jarg6, long jarg7, boolean jarg8, String jarg9);
  public final static native long Solver_makeMirrorInterval(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Solver_makeFixedDurationStartSyncedOnStartIntervalVar(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeFixedDurationStartSyncedOnEndIntervalVar(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeFixedDurationEndSyncedOnStartIntervalVar(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeFixedDurationEndSyncedOnEndIntervalVar(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native long Solver_makeIntervalRelaxedMin(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Solver_makeIntervalRelaxedMax(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Solver_makeIntervalVarRelation__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, int jarg3, long jarg4);
  public final static native long Solver_makeIntervalVarRelation__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, int jarg3, long jarg4, IntervalVar jarg4_);
  public final static native long Solver_makeIntervalVarRelationWithDelay(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, int jarg3, long jarg4, IntervalVar jarg4_, long jarg5);
  public final static native long Solver_makeTemporalDisjunction__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, IntervalVar jarg3_, long jarg4, IntVar jarg4_);
  public final static native long Solver_makeTemporalDisjunction__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, IntervalVar jarg3_);
  public final static native long Solver_makeDisjunctiveConstraint(long jarg1, Solver jarg1_, IntervalVar[] jarg2, String jarg3);
  public final static native long Solver_makeStrictDisjunctiveConstraint(long jarg1, Solver jarg1_, IntervalVar[] jarg2, String jarg3);
  public final static native long Solver_makeCumulative__SWIG_0(long jarg1, Solver jarg1_, IntervalVar[] jarg2, long[] jarg3, long jarg4, String jarg5);
  public final static native long Solver_makeCumulative__SWIG_1(long jarg1, Solver jarg1_, IntervalVar[] jarg2, int[] jarg3, long jarg4, String jarg5);
  public final static native long Solver_makeCumulative__SWIG_2(long jarg1, Solver jarg1_, IntervalVar[] jarg2, long[] jarg3, long jarg4, IntVar jarg4_, String jarg5);
  public final static native long Solver_makeCumulative__SWIG_3(long jarg1, Solver jarg1_, IntervalVar[] jarg2, int[] jarg3, long jarg4, IntVar jarg4_, String jarg5);
  public final static native long Solver_makeCumulative__SWIG_4(long jarg1, Solver jarg1_, IntervalVar[] jarg2, IntVar[] jarg3, long jarg4, String jarg5);
  public final static native long Solver_makeCumulative__SWIG_5(long jarg1, Solver jarg1_, IntervalVar[] jarg2, IntVar[] jarg3, long jarg4, IntVar jarg4_, String jarg5);
  public final static native long Solver_makeCover(long jarg1, Solver jarg1_, IntervalVar[] jarg2, long jarg3, IntervalVar jarg3_);
  public final static native long Solver_makeEquality__SWIG_3(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, IntervalVar jarg3_);
  public final static native long Solver_makeAssignment__SWIG_0(long jarg1, Solver jarg1_);
  public final static native long Solver_makeAssignment__SWIG_1(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeFirstSolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeFirstSolutionCollector__SWIG_1(long jarg1, Solver jarg1_);
  public final static native long Solver_makeLastSolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeLastSolutionCollector__SWIG_1(long jarg1, Solver jarg1_);
  public final static native long Solver_makeBestValueSolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, boolean jarg3);
  public final static native long Solver_makeBestValueSolutionCollector__SWIG_1(long jarg1, Solver jarg1_, boolean jarg2);
  public final static native long Solver_makeNBestValueSolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, int jarg3, boolean jarg4);
  public final static native long Solver_makeNBestValueSolutionCollector__SWIG_1(long jarg1, Solver jarg1_, int jarg2, boolean jarg3);
  public final static native long Solver_makeAllSolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeAllSolutionCollector__SWIG_1(long jarg1, Solver jarg1_);
  public final static native long Solver_makeMinimize(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeMaximize(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeOptimize(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, long jarg4);
  public final static native long Solver_makeWeightedMinimize__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4);
  public final static native long Solver_makeWeightedMinimize__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4);
  public final static native long Solver_makeWeightedMaximize__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3, long jarg4);
  public final static native long Solver_makeWeightedMaximize__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int[] jarg3, long jarg4);
  public final static native long Solver_makeWeightedOptimize__SWIG_0(long jarg1, Solver jarg1_, boolean jarg2, IntVar[] jarg3, long[] jarg4, long jarg5);
  public final static native long Solver_makeWeightedOptimize__SWIG_1(long jarg1, Solver jarg1_, boolean jarg2, IntVar[] jarg3, int[] jarg4, long jarg5);
  public final static native long Solver_makeTabuSearch(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar[] jarg5, long jarg6, long jarg7, double jarg8);
  public final static native long Solver_makeGenericTabuSearch(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, long jarg4, IntVar[] jarg5, long jarg6);
  public final static native long Solver_makeSimulatedAnnealing(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, long jarg4, long jarg5);
  public final static native long Solver_makeGuidedLocalSearch__SWIG_0(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, LongBinaryOperator jarg4, long jarg5, IntVar[] jarg6, double jarg7);
  public final static native long Solver_makeGuidedLocalSearch__SWIG_1(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, LongTernaryOperator jarg4, long jarg5, IntVar[] jarg6, IntVar[] jarg7, double jarg8);
  public final static native long Solver_makeLubyRestart(long jarg1, Solver jarg1_, int jarg2);
  public final static native long Solver_makeConstantRestart(long jarg1, Solver jarg1_, int jarg2);
  public final static native long Solver_makeTimeLimit(long jarg1, Solver jarg1_, long jarg2);
  public final static native long Solver_makeBranchesLimit(long jarg1, Solver jarg1_, long jarg2);
  public final static native long Solver_makeFailuresLimit(long jarg1, Solver jarg1_, long jarg2);
  public final static native long Solver_makeSolutionsLimit(long jarg1, Solver jarg1_, long jarg2);
  public final static native long Solver_makeLimit__SWIG_0(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, long jarg5);
  public final static native long Solver_makeLimit__SWIG_1(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, long jarg5, boolean jarg6);
  public final static native long Solver_makeLimit__SWIG_2(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, long jarg5, boolean jarg6, boolean jarg7);
  public final static native long Solver_makeLimit__SWIG_3(long jarg1, Solver jarg1_, byte[] jarg2);
  public final static native byte[] Solver_makeDefaultRegularLimitParameters(long jarg1, Solver jarg1_);
  public final static native long Solver_makeLimit__SWIG_4(long jarg1, Solver jarg1_, long jarg2, SearchLimit jarg2_, long jarg3, SearchLimit jarg3_);
  public final static native long Solver_makeCustomLimit(long jarg1, Solver jarg1_, BooleanSupplier jarg2);
  public final static native long Solver_makeSearchLog__SWIG_0(long jarg1, Solver jarg1_, int jarg2);
  public final static native long Solver_makeSearchLog__SWIG_1(long jarg1, Solver jarg1_, int jarg2, long jarg3, IntVar jarg3_);
  public final static native long Solver_makeSearchLog__SWIG_2(long jarg1, Solver jarg1_, int jarg2, Supplier jarg3);
  public final static native long Solver_makeSearchLog__SWIG_3(long jarg1, Solver jarg1_, int jarg2, long jarg3, IntVar jarg3_, Supplier jarg4);
  public final static native long Solver_makeSearchLog__SWIG_4(long jarg1, Solver jarg1_, int jarg2, long jarg3, OptimizeVar jarg3_);
  public final static native long Solver_makeSearchLog__SWIG_5(long jarg1, Solver jarg1_, int jarg2, long jarg3, OptimizeVar jarg3_, Supplier jarg4);
  public final static native long Solver_makeSearchTrace(long jarg1, Solver jarg1_, String jarg2);
  public final static native long Solver_makeEnterSearchCallback(long jarg1, Solver jarg1_, Runnable jarg2);
  public final static native long Solver_makeExitSearchCallback(long jarg1, Solver jarg1_, Runnable jarg2);
  public final static native long Solver_makeAtSolutionCallback(long jarg1, Solver jarg1_, Runnable jarg2);
  public final static native long Solver_makePrintModelVisitor(long jarg1, Solver jarg1_);
  public final static native long Solver_makeStatisticsModelVisitor(long jarg1, Solver jarg1_);
  public final static native long Solver_makeSymmetryManager__SWIG_0(long jarg1, Solver jarg1_, SymmetryBreaker[] jarg2);
  public final static native long Solver_makeSymmetryManager__SWIG_1(long jarg1, Solver jarg1_, long jarg2, SymmetryBreaker jarg2_);
  public final static native long Solver_makeSymmetryManager__SWIG_2(long jarg1, Solver jarg1_, long jarg2, SymmetryBreaker jarg2_, long jarg3, SymmetryBreaker jarg3_);
  public final static native long Solver_makeSymmetryManager__SWIG_3(long jarg1, Solver jarg1_, long jarg2, SymmetryBreaker jarg2_, long jarg3, SymmetryBreaker jarg3_, long jarg4, SymmetryBreaker jarg4_);
  public final static native long Solver_makeSymmetryManager__SWIG_4(long jarg1, Solver jarg1_, long jarg2, SymmetryBreaker jarg2_, long jarg3, SymmetryBreaker jarg3_, long jarg4, SymmetryBreaker jarg4_, long jarg5, SymmetryBreaker jarg5_);
  public final static native long Solver_makeAssignVariableValue(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeVariableLessOrEqualValue(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeVariableGreaterOrEqualValue(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeSplitVariableDomain(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, boolean jarg4);
  public final static native long Solver_makeAssignVariableValueOrFail(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_MakeAssignVariableValueOrDoNothing(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Solver_makeAssignVariablesValues(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3);
  public final static native long Solver_makeFailDecision(long jarg1, Solver jarg1_);
  public final static native long Solver_makeDecision(long jarg1, Solver jarg1_, Consumer jarg2, Consumer jarg3);
  public final static native long Solver_compose__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_);
  public final static native long Solver_compose__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_, long jarg4, DecisionBuilder jarg4_);
  public final static native long Solver_compose__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_, long jarg4, DecisionBuilder jarg4_, long jarg5, DecisionBuilder jarg5_);
  public final static native long Solver_compose__SWIG_3(long jarg1, Solver jarg1_, DecisionBuilder[] jarg2);
  public final static native long Solver_tryDecisions__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_);
  public final static native long Solver_tryDecisions__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_, long jarg4, DecisionBuilder jarg4_);
  public final static native long Solver_tryDecisions__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, DecisionBuilder jarg3_, long jarg4, DecisionBuilder jarg4_, long jarg5, DecisionBuilder jarg5_);
  public final static native long Solver_tryDecisions__SWIG_3(long jarg1, Solver jarg1_, DecisionBuilder[] jarg2);
  public final static native long Solver_makePhase__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3, int jarg4);
  public final static native long Solver_makePhase__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, LongUnaryOperator jarg3, int jarg4);
  public final static native long Solver_makePhase__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3, LongBinaryOperator jarg4);
  public final static native long Solver_makePhase__SWIG_3(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3, LongTernaryPredicate jarg4);
  public final static native long Solver_makePhase__SWIG_4(long jarg1, Solver jarg1_, IntVar[] jarg2, LongUnaryOperator jarg3, LongBinaryOperator jarg4);
  public final static native long Solver_makePhase__SWIG_5(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3, LongBinaryOperator jarg4, LongUnaryOperator jarg5);
  public final static native long Solver_makePhase__SWIG_6(long jarg1, Solver jarg1_, IntVar[] jarg2, LongUnaryOperator jarg3, LongBinaryOperator jarg4, LongUnaryOperator jarg5);
  public final static native long Solver_makeDefaultPhase__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2);
  public final static native long Solver_makeDefaultPhase__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, DefaultPhaseParameters jarg3_);
  public final static native long Solver_makePhase__SWIG_7(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, int jarg3, int jarg4);
  public final static native long Solver_makePhase__SWIG_8(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntVar jarg3_, int jarg4, int jarg5);
  public final static native long Solver_makePhase__SWIG_9(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_, int jarg5, int jarg6);
  public final static native long Solver_makePhase__SWIG_10(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntVar jarg3_, long jarg4, IntVar jarg4_, long jarg5, IntVar jarg5_, int jarg6, int jarg7);
  public final static native long Solver_makeScheduleOrPostpone(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, int[] jarg4);
  public final static native long Solver_makeScheduleOrExpedite(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, int[] jarg4);
  public final static native long Solver_makeRankFirstInterval(long jarg1, Solver jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native long Solver_makeRankLastInterval(long jarg1, Solver jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native long Solver_makePhase__SWIG_11(long jarg1, Solver jarg1_, IntVar[] jarg2, LongBinaryOperator jarg3, int jarg4);
  public final static native long Solver_makePhase__SWIG_12(long jarg1, Solver jarg1_, IntVar[] jarg2, LongBinaryOperator jarg3, LongUnaryOperator jarg4, int jarg5);
  public final static native long Solver_makePhase__SWIG_13(long jarg1, Solver jarg1_, IntervalVar[] jarg2, int jarg3);
  public final static native long Solver_makePhase__SWIG_14(long jarg1, Solver jarg1_, SequenceVar[] jarg2, int jarg3);
  public final static native long Solver_makeDecisionBuilderFromAssignment(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, long jarg3, DecisionBuilder jarg3_, IntVar[] jarg4);
  public final static native long Solver_makeConstraintAdder(long jarg1, Solver jarg1_, long jarg2, Constraint jarg2_);
  public final static native long Solver_makeSolveOnce__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native long Solver_makeSolveOnce__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_);
  public final static native long Solver_makeSolveOnce__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_);
  public final static native long Solver_makeSolveOnce__SWIG_3(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_);
  public final static native long Solver_makeSolveOnce__SWIG_4(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, SearchMonitor jarg3_, long jarg4, SearchMonitor jarg4_, long jarg5, SearchMonitor jarg5_, long jarg6, SearchMonitor jarg6_);
  public final static native long Solver_makeSolveOnce__SWIG_5(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, SearchMonitor[] jarg3);
  public final static native long Solver_makeNestedOptimize__SWIG_0(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5);
  public final static native long Solver_makeNestedOptimize__SWIG_1(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_);
  public final static native long Solver_makeNestedOptimize__SWIG_2(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_);
  public final static native long Solver_makeNestedOptimize__SWIG_3(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_, long jarg8, SearchMonitor jarg8_);
  public final static native long Solver_makeNestedOptimize__SWIG_4(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, long jarg6, SearchMonitor jarg6_, long jarg7, SearchMonitor jarg7_, long jarg8, SearchMonitor jarg8_, long jarg9, SearchMonitor jarg9_);
  public final static native long Solver_makeNestedOptimize__SWIG_5(long jarg1, Solver jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Assignment jarg3_, boolean jarg4, long jarg5, SearchMonitor[] jarg6);
  public final static native long Solver_makeRestoreAssignment(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeStoreAssignment(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeOperator__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3);
  public final static native long Solver_makeOperator__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, int jarg4);
  public final static native long Solver_makeOperator__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, LongTernaryOperator jarg3, int jarg4);
  public final static native long Solver_makeOperator__SWIG_3(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, LongTernaryOperator jarg4, int jarg5);
  public final static native long Solver_makeRandomLnsOperator__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3);
  public final static native long Solver_makeRandomLnsOperator__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3, int jarg4);
  public final static native long Solver_makeMoveTowardTargetOperator__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Solver_makeMoveTowardTargetOperator__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3);
  public final static native long Solver_concatenateOperators__SWIG_0(long jarg1, Solver jarg1_, LocalSearchOperator[] jarg2);
  public final static native long Solver_concatenateOperators__SWIG_1(long jarg1, Solver jarg1_, LocalSearchOperator[] jarg2, boolean jarg3);
  public final static native long Solver_concatenateOperators__SWIG_2(long jarg1, Solver jarg1_, LocalSearchOperator[] jarg2, IntIntToLongFunction jarg3);
  public final static native long Solver_randomConcatenateOperators__SWIG_0(long jarg1, Solver jarg1_, LocalSearchOperator[] jarg2);
  public final static native long Solver_randomConcatenateOperators__SWIG_1(long jarg1, Solver jarg1_, LocalSearchOperator[] jarg2, int jarg3);
  public final static native long Solver_makeNeighborhoodLimit(long jarg1, Solver jarg1_, long jarg2, LocalSearchOperator jarg2_, long jarg3);
  public final static native long Solver_makeLocalSearchPhase__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_, long jarg3, LocalSearchPhaseParameters jarg3_);
  public final static native long Solver_makeLocalSearchPhase__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, DecisionBuilder jarg3_, long jarg4, LocalSearchPhaseParameters jarg4_);
  public final static native long Solver_makeLocalSearchPhase__SWIG_2(long jarg1, Solver jarg1_, IntVar[] jarg2, long jarg3, DecisionBuilder jarg3_, long jarg4, DecisionBuilder jarg4_, long jarg5, LocalSearchPhaseParameters jarg5_);
  public final static native long Solver_makeLocalSearchPhase__SWIG_3(long jarg1, Solver jarg1_, SequenceVar[] jarg2, long jarg3, DecisionBuilder jarg3_, long jarg4, LocalSearchPhaseParameters jarg4_);
  public final static native long Solver_makeDefaultSolutionPool(long jarg1, Solver jarg1_);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_0(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, LocalSearchOperator jarg3_, long jarg4, DecisionBuilder jarg4_);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_1(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, LocalSearchOperator jarg3_, long jarg4, DecisionBuilder jarg4_, long jarg5, RegularLimit jarg5_);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_2(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, LocalSearchOperator jarg3_, long jarg4, DecisionBuilder jarg4_, long jarg5, RegularLimit jarg5_, LocalSearchFilter[] jarg6);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_3(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, SolutionPool jarg3_, long jarg4, LocalSearchOperator jarg4_, long jarg5, DecisionBuilder jarg5_);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_4(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, SolutionPool jarg3_, long jarg4, LocalSearchOperator jarg4_, long jarg5, DecisionBuilder jarg5_, long jarg6, RegularLimit jarg6_);
  public final static native long Solver_makeLocalSearchPhaseParameters__SWIG_5(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_, long jarg3, SolutionPool jarg3_, long jarg4, LocalSearchOperator jarg4_, long jarg5, DecisionBuilder jarg5_, long jarg6, RegularLimit jarg6_, LocalSearchFilter[] jarg7);
  public final static native long Solver_MakeAcceptFilter(long jarg1, Solver jarg1_);
  public final static native long Solver_MakeRejectFilter(long jarg1, Solver jarg1_);
  public final static native long Solver_makeVariableDomainFilter(long jarg1, Solver jarg1_);
  public final static native long Solver_makeSumObjectiveFilter__SWIG_0(long jarg1, Solver jarg1_, IntVar[] jarg2, LongBinaryOperator jarg3, int jarg4);
  public final static native long Solver_makeSumObjectiveFilter__SWIG_1(long jarg1, Solver jarg1_, IntVar[] jarg2, IntVar[] jarg3, LongTernaryOperator jarg4, int jarg5);
  public final static native void Solver_topPeriodicCheck(long jarg1, Solver jarg1_);
  public final static native int Solver_topProgressPercent(long jarg1, Solver jarg1_);
  public final static native void Solver_pushState(long jarg1, Solver jarg1_);
  public final static native void Solver_popState(long jarg1, Solver jarg1_);
  public final static native int Solver_searchDepth(long jarg1, Solver jarg1_);
  public final static native int Solver_searchLeftDepth(long jarg1, Solver jarg1_);
  public final static native int Solver_solveDepth(long jarg1, Solver jarg1_);
  public final static native long Solver_rand64(long jarg1, Solver jarg1_, long jarg2);
  public final static native int Solver_rand32(long jarg1, Solver jarg1_, int jarg2);
  public final static native void Solver_reSeed(long jarg1, Solver jarg1_, int jarg2);
  public final static native void Solver_exportProfilingOverview(long jarg1, Solver jarg1_, String jarg2);
  public final static native String Solver_localSearchProfile(long jarg1, Solver jarg1_);
  public final static native boolean Solver_currentlyInSolve(long jarg1, Solver jarg1_);
  public final static native int Solver_constraints(long jarg1, Solver jarg1_);
  public final static native void Solver_accept(long jarg1, Solver jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native long Solver_balancing_decision(long jarg1, Solver jarg1_);
  public final static native void Solver_clear_fail_intercept(long jarg1, Solver jarg1_);
  public final static native void Solver_SetUseFastLocalSearch(long jarg1, Solver jarg1_, boolean jarg2);
  public final static native boolean Solver_UseFastLocalSearch(long jarg1, Solver jarg1_);
  public final static native boolean Solver_hasName(long jarg1, Solver jarg1_, long jarg2, PropagationBaseObject jarg2_);
  public final static native long Solver_registerDemon(long jarg1, Solver jarg1_, long jarg2, Demon jarg2_);
  public final static native long Solver_registerIntExpr(long jarg1, Solver jarg1_, long jarg2, IntExpr jarg2_);
  public final static native long Solver_registerIntVar(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_);
  public final static native long Solver_registerIntervalVar(long jarg1, Solver jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Solver_cache(long jarg1, Solver jarg1_);
  public final static native boolean Solver_instrumentsDemons(long jarg1, Solver jarg1_);
  public final static native boolean Solver_isProfilingEnabled(long jarg1, Solver jarg1_);
  public final static native boolean Solver_isLocalSearchProfilingEnabled(long jarg1, Solver jarg1_);
  public final static native boolean Solver_instrumentsVariables(long jarg1, Solver jarg1_);
  public final static native boolean Solver_nameAllVariables(long jarg1, Solver jarg1_);
  public final static native String Solver_model_name(long jarg1, Solver jarg1_);
  public final static native long Solver_getPropagationMonitor(long jarg1, Solver jarg1_);
  public final static native void Solver_addPropagationMonitor(long jarg1, Solver jarg1_, long jarg2, PropagationMonitor jarg2_);
  public final static native long Solver_getLocalSearchMonitor(long jarg1, Solver jarg1_);
  public final static native void Solver_addLocalSearchMonitor(long jarg1, Solver jarg1_, long jarg2, LocalSearchMonitor jarg2_);
  public final static native long Solver_GetOrCreateLocalSearchState(long jarg1, Solver jarg1_);
  public final static native void Solver_ClearLocalSearchState(long jarg1, Solver jarg1_);
  public final static native void Solver_tmp_vector__set(long jarg1, Solver jarg1_, long[] jarg2);
  public final static native long[] Solver_tmp_vector__get(long jarg1, Solver jarg1_);
  public final static native long Solver_castExpression(long jarg1, Solver jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Solver_finishCurrentSearch(long jarg1, Solver jarg1_);
  public final static native void Solver_restartCurrentSearch(long jarg1, Solver jarg1_);
  public final static native void Solver_shouldFail(long jarg1, Solver jarg1_);
  public final static native void Solver_checkFail(long jarg1, Solver jarg1_);
  public final static native long zero();
  public final static native long One();
  public final static native long new_BaseObject();
  public final static native void delete_BaseObject(long jarg1);
  public final static native String BaseObject_toString(long jarg1, BaseObject jarg1_);
  public final static native long new_PropagationBaseObject(long jarg1, Solver jarg1_);
  public final static native void delete_PropagationBaseObject(long jarg1);
  public final static native String PropagationBaseObject_toString(long jarg1, PropagationBaseObject jarg1_);
  public final static native long PropagationBaseObject_solver(long jarg1, PropagationBaseObject jarg1_);
  public final static native void PropagationBaseObject_freezeQueue(long jarg1, PropagationBaseObject jarg1_);
  public final static native void PropagationBaseObject_unfreezeQueue(long jarg1, PropagationBaseObject jarg1_);
  public final static native void PropagationBaseObject_enqueueDelayedDemon(long jarg1, PropagationBaseObject jarg1_, long jarg2, Demon jarg2_);
  public final static native void PropagationBaseObject_enqueueVar(long jarg1, PropagationBaseObject jarg1_, long jarg2, Demon jarg2_);
  public final static native void PropagationBaseObject_reset_action_on_fail(long jarg1, PropagationBaseObject jarg1_);
  public final static native void PropagationBaseObject_set_variable_to_clean_on_fail(long jarg1, PropagationBaseObject jarg1_, long jarg2, IntVar jarg2_);
  public final static native String PropagationBaseObject_name(long jarg1, PropagationBaseObject jarg1_);
  public final static native void PropagationBaseObject_setName(long jarg1, PropagationBaseObject jarg1_, String jarg2);
  public final static native boolean PropagationBaseObject_hasName(long jarg1, PropagationBaseObject jarg1_);
  public final static native String PropagationBaseObject_baseName(long jarg1, PropagationBaseObject jarg1_);
  public final static native long new_Decision();
  public final static native void delete_Decision(long jarg1);
  public final static native void Decision_apply(long jarg1, Decision jarg1_, long jarg2, Solver jarg2_);
  public final static native void Decision_refute(long jarg1, Decision jarg1_, long jarg2, Solver jarg2_);
  public final static native String Decision_toString(long jarg1, Decision jarg1_);
  public final static native String Decision_toStringSwigExplicitDecision(long jarg1, Decision jarg1_);
  public final static native void Decision_accept(long jarg1, Decision jarg1_, long jarg2, DecisionVisitor jarg2_);
  public final static native void Decision_acceptSwigExplicitDecision(long jarg1, Decision jarg1_, long jarg2, DecisionVisitor jarg2_);
  public final static native void Decision_director_connect(Decision obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void Decision_change_ownership(Decision obj, long cptr, boolean take_or_release);
  public final static native long new_DecisionVisitor();
  public final static native void delete_DecisionVisitor(long jarg1);
  public final static native void DecisionVisitor_visitSetVariableValue(long jarg1, DecisionVisitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitSetVariableValueSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitSplitVariableDomain(long jarg1, DecisionVisitor jarg1_, long jarg2, IntVar jarg2_, long jarg3, boolean jarg4);
  public final static native void DecisionVisitor_visitSplitVariableDomainSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, IntVar jarg2_, long jarg3, boolean jarg4);
  public final static native void DecisionVisitor_visitScheduleOrPostpone(long jarg1, DecisionVisitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitScheduleOrPostponeSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitScheduleOrExpedite(long jarg1, DecisionVisitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitScheduleOrExpediteSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void DecisionVisitor_visitRankFirstInterval(long jarg1, DecisionVisitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void DecisionVisitor_visitRankFirstIntervalSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void DecisionVisitor_visitRankLastInterval(long jarg1, DecisionVisitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void DecisionVisitor_visitRankLastIntervalSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void DecisionVisitor_visitUnknownDecision(long jarg1, DecisionVisitor jarg1_);
  public final static native void DecisionVisitor_visitUnknownDecisionSwigExplicitDecisionVisitor(long jarg1, DecisionVisitor jarg1_);
  public final static native void DecisionVisitor_director_connect(DecisionVisitor obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void DecisionVisitor_change_ownership(DecisionVisitor obj, long cptr, boolean take_or_release);
  public final static native long new_DecisionBuilder();
  public final static native void delete_DecisionBuilder(long jarg1);
  public final static native long DecisionBuilder_nextWrap(long jarg1, DecisionBuilder jarg1_, long jarg2, Solver jarg2_);
  public final static native String DecisionBuilder_toString(long jarg1, DecisionBuilder jarg1_);
  public final static native String DecisionBuilder_toStringSwigExplicitDecisionBuilder(long jarg1, DecisionBuilder jarg1_);
  public final static native void DecisionBuilder_director_connect(DecisionBuilder obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void DecisionBuilder_change_ownership(DecisionBuilder obj, long cptr, boolean take_or_release);
  public final static native void delete_Demon(long jarg1);
  public final static native void Demon_run(long jarg1, Demon jarg1_, long jarg2, Solver jarg2_);
  public final static native int Demon_priority(long jarg1, Demon jarg1_);
  public final static native String Demon_toString(long jarg1, Demon jarg1_);
  public final static native void Demon_inhibit(long jarg1, Demon jarg1_, long jarg2, Solver jarg2_);
  public final static native void Demon_desinhibit(long jarg1, Demon jarg1_, long jarg2, Solver jarg2_);
  public final static native String ModelVisitor_kAbs_get();
  public final static native String ModelVisitor_kAbsEqual_get();
  public final static native String ModelVisitor_kAllDifferent_get();
  public final static native String ModelVisitor_kAllowedAssignments_get();
  public final static native String ModelVisitor_kAtMost_get();
  public final static native String ModelVisitor_kIndexOf_get();
  public final static native String ModelVisitor_kBetween_get();
  public final static native String ModelVisitor_kConditionalExpr_get();
  public final static native String ModelVisitor_kCircuit_get();
  public final static native String ModelVisitor_kConvexPiecewise_get();
  public final static native String ModelVisitor_kCountEqual_get();
  public final static native String ModelVisitor_kCover_get();
  public final static native String ModelVisitor_kCumulative_get();
  public final static native String ModelVisitor_kDeviation_get();
  public final static native String ModelVisitor_kDifference_get();
  public final static native String ModelVisitor_kDisjunctive_get();
  public final static native String ModelVisitor_kDistribute_get();
  public final static native String ModelVisitor_kDivide_get();
  public final static native String ModelVisitor_kDurationExpr_get();
  public final static native String ModelVisitor_kElement_get();
  public final static native String ModelVisitor_kElementEqual_get();
  public final static native String ModelVisitor_kEndExpr_get();
  public final static native String ModelVisitor_kEquality_get();
  public final static native String ModelVisitor_kFalseConstraint_get();
  public final static native String ModelVisitor_kGlobalCardinality_get();
  public final static native String ModelVisitor_kGreater_get();
  public final static native String ModelVisitor_kGreaterOrEqual_get();
  public final static native String ModelVisitor_kIntegerVariable_get();
  public final static native String ModelVisitor_kIntervalBinaryRelation_get();
  public final static native String ModelVisitor_kIntervalDisjunction_get();
  public final static native String ModelVisitor_kIntervalUnaryRelation_get();
  public final static native String ModelVisitor_kIntervalVariable_get();
  public final static native String ModelVisitor_kInversePermutation_get();
  public final static native String ModelVisitor_kIsBetween_get();
  public final static native String ModelVisitor_kIsDifferent_get();
  public final static native String ModelVisitor_kIsEqual_get();
  public final static native String ModelVisitor_kIsGreater_get();
  public final static native String ModelVisitor_kIsGreaterOrEqual_get();
  public final static native String ModelVisitor_kIsLess_get();
  public final static native String ModelVisitor_kIsLessOrEqual_get();
  public final static native String ModelVisitor_kIsMember_get();
  public final static native String ModelVisitor_kLess_get();
  public final static native String ModelVisitor_kLessOrEqual_get();
  public final static native String ModelVisitor_kLexLess_get();
  public final static native String ModelVisitor_kLinkExprVar_get();
  public final static native String ModelVisitor_kMapDomain_get();
  public final static native String ModelVisitor_kMax_get();
  public final static native String ModelVisitor_kMaxEqual_get();
  public final static native String ModelVisitor_kMember_get();
  public final static native String ModelVisitor_kMin_get();
  public final static native String ModelVisitor_kMinEqual_get();
  public final static native String ModelVisitor_kModulo_get();
  public final static native String ModelVisitor_kNoCycle_get();
  public final static native String ModelVisitor_kNonEqual_get();
  public final static native String ModelVisitor_kNotBetween_get();
  public final static native String ModelVisitor_kNotMember_get();
  public final static native String ModelVisitor_kNullIntersect_get();
  public final static native String ModelVisitor_kOpposite_get();
  public final static native String ModelVisitor_kPack_get();
  public final static native String ModelVisitor_kPathCumul_get();
  public final static native String ModelVisitor_kDelayedPathCumul_get();
  public final static native String ModelVisitor_kPerformedExpr_get();
  public final static native String ModelVisitor_kPower_get();
  public final static native String ModelVisitor_kProduct_get();
  public final static native String ModelVisitor_kScalProd_get();
  public final static native String ModelVisitor_kScalProdEqual_get();
  public final static native String ModelVisitor_kScalProdGreaterOrEqual_get();
  public final static native String ModelVisitor_kScalProdLessOrEqual_get();
  public final static native String ModelVisitor_kSemiContinuous_get();
  public final static native String ModelVisitor_kSequenceVariable_get();
  public final static native String ModelVisitor_kSortingConstraint_get();
  public final static native String ModelVisitor_kSquare_get();
  public final static native String ModelVisitor_kStartExpr_get();
  public final static native String ModelVisitor_kSum_get();
  public final static native String ModelVisitor_kSumEqual_get();
  public final static native String ModelVisitor_kSumGreaterOrEqual_get();
  public final static native String ModelVisitor_kSumLessOrEqual_get();
  public final static native String ModelVisitor_kTrace_get();
  public final static native String ModelVisitor_kTransition_get();
  public final static native String ModelVisitor_kTrueConstraint_get();
  public final static native String ModelVisitor_kVarBoundWatcher_get();
  public final static native String ModelVisitor_kVarValueWatcher_get();
  public final static native String ModelVisitor_kCountAssignedItemsExtension_get();
  public final static native String ModelVisitor_kCountUsedBinsExtension_get();
  public final static native String ModelVisitor_kInt64ToBoolExtension_get();
  public final static native String ModelVisitor_kInt64ToInt64Extension_get();
  public final static native String ModelVisitor_kObjectiveExtension_get();
  public final static native String ModelVisitor_kSearchLimitExtension_get();
  public final static native String ModelVisitor_kUsageEqualVariableExtension_get();
  public final static native String ModelVisitor_kUsageLessConstantExtension_get();
  public final static native String ModelVisitor_kVariableGroupExtension_get();
  public final static native String ModelVisitor_kVariableUsageLessConstantExtension_get();
  public final static native String ModelVisitor_kWeightedSumOfAssignedEqualVariableExtension_get();
  public final static native String ModelVisitor_kActiveArgument_get();
  public final static native String ModelVisitor_kAssumePathsArgument_get();
  public final static native String ModelVisitor_kBranchesLimitArgument_get();
  public final static native String ModelVisitor_kCapacityArgument_get();
  public final static native String ModelVisitor_kCardsArgument_get();
  public final static native String ModelVisitor_kCoefficientsArgument_get();
  public final static native String ModelVisitor_kCountArgument_get();
  public final static native String ModelVisitor_kCumulativeArgument_get();
  public final static native String ModelVisitor_kCumulsArgument_get();
  public final static native String ModelVisitor_kDemandsArgument_get();
  public final static native String ModelVisitor_kDurationMaxArgument_get();
  public final static native String ModelVisitor_kDurationMinArgument_get();
  public final static native String ModelVisitor_kEarlyCostArgument_get();
  public final static native String ModelVisitor_kEarlyDateArgument_get();
  public final static native String ModelVisitor_kEndMaxArgument_get();
  public final static native String ModelVisitor_kEndMinArgument_get();
  public final static native String ModelVisitor_kEndsArgument_get();
  public final static native String ModelVisitor_kExpressionArgument_get();
  public final static native String ModelVisitor_kFailuresLimitArgument_get();
  public final static native String ModelVisitor_kFinalStatesArgument_get();
  public final static native String ModelVisitor_kFixedChargeArgument_get();
  public final static native String ModelVisitor_kIndex2Argument_get();
  public final static native String ModelVisitor_kIndexArgument_get();
  public final static native String ModelVisitor_kInitialState_get();
  public final static native String ModelVisitor_kIntervalArgument_get();
  public final static native String ModelVisitor_kIntervalsArgument_get();
  public final static native String ModelVisitor_kLateCostArgument_get();
  public final static native String ModelVisitor_kLateDateArgument_get();
  public final static native String ModelVisitor_kLeftArgument_get();
  public final static native String ModelVisitor_kMaxArgument_get();
  public final static native String ModelVisitor_kMaximizeArgument_get();
  public final static native String ModelVisitor_kMinArgument_get();
  public final static native String ModelVisitor_kModuloArgument_get();
  public final static native String ModelVisitor_kNextsArgument_get();
  public final static native String ModelVisitor_kOptionalArgument_get();
  public final static native String ModelVisitor_kPartialArgument_get();
  public final static native String ModelVisitor_kPositionXArgument_get();
  public final static native String ModelVisitor_kPositionYArgument_get();
  public final static native String ModelVisitor_kRangeArgument_get();
  public final static native String ModelVisitor_kRelationArgument_get();
  public final static native String ModelVisitor_kRightArgument_get();
  public final static native String ModelVisitor_kSequenceArgument_get();
  public final static native String ModelVisitor_kSequencesArgument_get();
  public final static native String ModelVisitor_kSizeArgument_get();
  public final static native String ModelVisitor_kSizeXArgument_get();
  public final static native String ModelVisitor_kSizeYArgument_get();
  public final static native String ModelVisitor_kSmartTimeCheckArgument_get();
  public final static native String ModelVisitor_kSolutionLimitArgument_get();
  public final static native String ModelVisitor_kStartMaxArgument_get();
  public final static native String ModelVisitor_kStartMinArgument_get();
  public final static native String ModelVisitor_kStartsArgument_get();
  public final static native String ModelVisitor_kStepArgument_get();
  public final static native String ModelVisitor_kTargetArgument_get();
  public final static native String ModelVisitor_kTimeLimitArgument_get();
  public final static native String ModelVisitor_kTransitsArgument_get();
  public final static native String ModelVisitor_kTuplesArgument_get();
  public final static native String ModelVisitor_kValueArgument_get();
  public final static native String ModelVisitor_kValuesArgument_get();
  public final static native String ModelVisitor_kVariableArgument_get();
  public final static native String ModelVisitor_kVarsArgument_get();
  public final static native String ModelVisitor_kEvaluatorArgument_get();
  public final static native String ModelVisitor_kMirrorOperation_get();
  public final static native String ModelVisitor_kRelaxedMaxOperation_get();
  public final static native String ModelVisitor_kRelaxedMinOperation_get();
  public final static native String ModelVisitor_kSumOperation_get();
  public final static native String ModelVisitor_kDifferenceOperation_get();
  public final static native String ModelVisitor_kProductOperation_get();
  public final static native String ModelVisitor_kStartSyncOnStartOperation_get();
  public final static native String ModelVisitor_kStartSyncOnEndOperation_get();
  public final static native String ModelVisitor_kTraceOperation_get();
  public final static native void delete_ModelVisitor(long jarg1);
  public final static native void ModelVisitor_beginVisitModel(long jarg1, ModelVisitor jarg1_, String jarg2);
  public final static native void ModelVisitor_endVisitModel(long jarg1, ModelVisitor jarg1_, String jarg2);
  public final static native void ModelVisitor_beginVisitConstraint(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, Constraint jarg3_);
  public final static native void ModelVisitor_endVisitConstraint(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, Constraint jarg3_);
  public final static native void ModelVisitor_beginVisitExtension(long jarg1, ModelVisitor jarg1_, String jarg2);
  public final static native void ModelVisitor_endVisitExtension(long jarg1, ModelVisitor jarg1_, String jarg2);
  public final static native void ModelVisitor_beginVisitIntegerExpression(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, IntExpr jarg3_);
  public final static native void ModelVisitor_endVisitIntegerExpression(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, IntExpr jarg3_);
  public final static native void ModelVisitor_visitIntegerVariable__SWIG_0(long jarg1, ModelVisitor jarg1_, long jarg2, IntVar jarg2_, long jarg3, IntExpr jarg3_);
  public final static native void ModelVisitor_visitIntegerVariable__SWIG_1(long jarg1, ModelVisitor jarg1_, long jarg2, IntVar jarg2_, String jarg3, long jarg4, long jarg5, IntVar jarg5_);
  public final static native void ModelVisitor_visitIntervalVariable(long jarg1, ModelVisitor jarg1_, long jarg2, IntervalVar jarg2_, String jarg3, long jarg4, long jarg5, IntervalVar jarg5_);
  public final static native void ModelVisitor_visitSequenceVariable(long jarg1, ModelVisitor jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void ModelVisitor_visitIntegerArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3);
  public final static native void ModelVisitor_visitIntegerArrayArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long[] jarg3);
  public final static native void ModelVisitor_visitIntegerMatrixArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, IntTupleSet jarg3_);
  public final static native void ModelVisitor_visitIntegerExpressionArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, IntExpr jarg3_);
  public final static native void ModelVisitor_visitIntegerVariableArrayArgument(long jarg1, ModelVisitor jarg1_, String jarg2, IntVar[] jarg3);
  public final static native void ModelVisitor_visitIntervalArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, IntervalVar jarg3_);
  public final static native void ModelVisitor_visitIntervalArrayArgument(long jarg1, ModelVisitor jarg1_, String jarg2, IntervalVar[] jarg3);
  public final static native void ModelVisitor_visitSequenceArgument(long jarg1, ModelVisitor jarg1_, String jarg2, long jarg3, SequenceVar jarg3_);
  public final static native void ModelVisitor_visitSequenceArrayArgument(long jarg1, ModelVisitor jarg1_, String jarg2, SequenceVar[] jarg3);
  public final static native long new_ModelVisitor();
  public final static native void delete_Constraint(long jarg1);
  public final static native void Constraint_post(long jarg1, Constraint jarg1_);
  public final static native void Constraint_initialPropagate(long jarg1, Constraint jarg1_);
  public final static native String Constraint_toString(long jarg1, Constraint jarg1_);
  public final static native void Constraint_postAndPropagate(long jarg1, Constraint jarg1_);
  public final static native void Constraint_accept(long jarg1, Constraint jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native boolean Constraint_isCastConstraint(long jarg1, Constraint jarg1_);
  public final static native long Constraint_var(long jarg1, Constraint jarg1_);
  public final static native void delete_CastConstraint(long jarg1);
  public final static native long CastConstraint_target_var(long jarg1, CastConstraint jarg1_);
  public final static native int SearchMonitor_kNoProgress_get();
  public final static native long new_SearchMonitor(long jarg1, Solver jarg1_);
  public final static native void delete_SearchMonitor(long jarg1);
  public final static native void SearchMonitor_enterSearch(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_enterSearchSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_restartSearch(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_restartSearchSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_exitSearch(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_exitSearchSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_beginNextDecision(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native void SearchMonitor_beginNextDecisionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native void SearchMonitor_endNextDecision(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Decision jarg3_);
  public final static native void SearchMonitor_endNextDecisionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, DecisionBuilder jarg2_, long jarg3, Decision jarg3_);
  public final static native void SearchMonitor_applyDecision(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchMonitor_applyDecisionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchMonitor_refuteDecision(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchMonitor_refuteDecisionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchMonitor_afterDecision(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_, boolean jarg3);
  public final static native void SearchMonitor_afterDecisionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, Decision jarg2_, boolean jarg3);
  public final static native void SearchMonitor_beginFail(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_beginFailSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_endFail(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_endFailSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_beginInitialPropagation(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_beginInitialPropagationSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_endInitialPropagation(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_endInitialPropagationSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_acceptSolution(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_acceptSolutionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_atSolution(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_atSolutionSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_noMoreSolutions(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_noMoreSolutionsSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_localOptimum(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_localOptimumSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_acceptDelta(long jarg1, SearchMonitor jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native boolean SearchMonitor_acceptDeltaSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void SearchMonitor_acceptNeighbor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_acceptNeighborSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_AcceptUncheckedNeighbor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_AcceptUncheckedNeighborSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_IsUncheckedSolutionLimitReached(long jarg1, SearchMonitor jarg1_);
  public final static native boolean SearchMonitor_IsUncheckedSolutionLimitReachedSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native long SearchMonitor_solver(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_periodicCheck(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_periodicCheckSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native int SearchMonitor_progressPercent(long jarg1, SearchMonitor jarg1_);
  public final static native int SearchMonitor_progressPercentSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_accept(long jarg1, SearchMonitor jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native void SearchMonitor_acceptSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native void SearchMonitor_install(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_installSwigExplicitSearchMonitor(long jarg1, SearchMonitor jarg1_);
  public final static native void SearchMonitor_director_connect(SearchMonitor obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void SearchMonitor_change_ownership(SearchMonitor obj, long cptr, boolean take_or_release);
  public final static native void delete_IntExpr(long jarg1);
  public final static native long IntExpr_min(long jarg1, IntExpr jarg1_);
  public final static native void IntExpr_setMin(long jarg1, IntExpr jarg1_, long jarg2);
  public final static native long IntExpr_max(long jarg1, IntExpr jarg1_);
  public final static native void IntExpr_setMax(long jarg1, IntExpr jarg1_, long jarg2);
  public final static native void IntExpr_range(long jarg1, IntExpr jarg1_, int[] jarg2, int[] jarg3);
  public final static native void IntExpr_setRange(long jarg1, IntExpr jarg1_, long jarg2, long jarg3);
  public final static native void IntExpr_setValue(long jarg1, IntExpr jarg1_, long jarg2);
  public final static native boolean IntExpr_bound(long jarg1, IntExpr jarg1_);
  public final static native boolean IntExpr_isVar(long jarg1, IntExpr jarg1_);
  public final static native long IntExpr_var(long jarg1, IntExpr jarg1_);
  public final static native long IntExpr_varWithName(long jarg1, IntExpr jarg1_, String jarg2);
  public final static native void IntExpr_whenRange__SWIG_0(long jarg1, IntExpr jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntExpr_whenRange__SWIG_1(long jarg1, IntExpr jarg1_, Runnable jarg2);
  public final static native void IntExpr_accept(long jarg1, IntExpr jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native void delete_IntVarIterator(long jarg1);
  public final static native void IntVarIterator_init(long jarg1, IntVarIterator jarg1_);
  public final static native boolean IntVarIterator_ok(long jarg1, IntVarIterator jarg1_);
  public final static native long IntVarIterator_value(long jarg1, IntVarIterator jarg1_);
  public final static native void IntVarIterator_next(long jarg1, IntVarIterator jarg1_);
  public final static native String IntVarIterator_toString(long jarg1, IntVarIterator jarg1_);
  public final static native void delete_IntVar(long jarg1);
  public final static native boolean IntVar_isVar(long jarg1, IntVar jarg1_);
  public final static native long IntVar_var(long jarg1, IntVar jarg1_);
  public final static native long IntVar_value(long jarg1, IntVar jarg1_);
  public final static native void IntVar_removeValue(long jarg1, IntVar jarg1_, long jarg2);
  public final static native void IntVar_removeInterval(long jarg1, IntVar jarg1_, long jarg2, long jarg3);
  public final static native void IntVar_removeValues(long jarg1, IntVar jarg1_, long[] jarg2);
  public final static native void IntVar_setValue(long jarg1, IntVar jarg1_, long[] jarg2);
  public final static native void IntVar_whenBound__SWIG_0(long jarg1, IntVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntVar_whenBound__SWIG_1(long jarg1, IntVar jarg1_, Runnable jarg2);
  public final static native void IntVar_whenDomain__SWIG_0(long jarg1, IntVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntVar_whenDomain__SWIG_1(long jarg1, IntVar jarg1_, Runnable jarg2);
  public final static native long IntVar_size(long jarg1, IntVar jarg1_);
  public final static native boolean IntVar_contains(long jarg1, IntVar jarg1_, long jarg2);
  public final static native long IntVar_makeHoleIterator(long jarg1, IntVar jarg1_, boolean jarg2);
  public final static native long IntVar_makeDomainIterator(long jarg1, IntVar jarg1_, boolean jarg2);
  public final static native long IntVar_oldMin(long jarg1, IntVar jarg1_);
  public final static native long IntVar_oldMax(long jarg1, IntVar jarg1_);
  public final static native int IntVar_varType(long jarg1, IntVar jarg1_);
  public final static native void IntVar_accept(long jarg1, IntVar jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native long IntVar_isEqual(long jarg1, IntVar jarg1_, long jarg2);
  public final static native long IntVar_isDifferent(long jarg1, IntVar jarg1_, long jarg2);
  public final static native long IntVar_isGreaterOrEqual(long jarg1, IntVar jarg1_, long jarg2);
  public final static native long IntVar_isLessOrEqual(long jarg1, IntVar jarg1_, long jarg2);
  public final static native int IntVar_index(long jarg1, IntVar jarg1_);
  public final static native long new_SolutionCollector__SWIG_0(long jarg1, Solver jarg1_, long jarg2, Assignment jarg2_);
  public final static native long new_SolutionCollector__SWIG_1(long jarg1, Solver jarg1_);
  public final static native void delete_SolutionCollector(long jarg1);
  public final static native String SolutionCollector_toString(long jarg1, SolutionCollector jarg1_);
  public final static native void SolutionCollector_add__SWIG_0(long jarg1, SolutionCollector jarg1_, long jarg2, IntVar jarg2_);
  public final static native void SolutionCollector_add__SWIG_1(long jarg1, SolutionCollector jarg1_, IntVar[] jarg2);
  public final static native void SolutionCollector_add__SWIG_2(long jarg1, SolutionCollector jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void SolutionCollector_add__SWIG_3(long jarg1, SolutionCollector jarg1_, IntervalVar[] jarg2);
  public final static native void SolutionCollector_add__SWIG_4(long jarg1, SolutionCollector jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void SolutionCollector_add__SWIG_5(long jarg1, SolutionCollector jarg1_, SequenceVar[] jarg2);
  public final static native void SolutionCollector_addObjective(long jarg1, SolutionCollector jarg1_, long jarg2, IntVar jarg2_);
  public final static native void SolutionCollector_enterSearch(long jarg1, SolutionCollector jarg1_);
  public final static native int SolutionCollector_solutionCount(long jarg1, SolutionCollector jarg1_);
  public final static native long SolutionCollector_solution(long jarg1, SolutionCollector jarg1_, int jarg2);
  public final static native long SolutionCollector_wallTime(long jarg1, SolutionCollector jarg1_, int jarg2);
  public final static native long SolutionCollector_branches(long jarg1, SolutionCollector jarg1_, int jarg2);
  public final static native long SolutionCollector_failures(long jarg1, SolutionCollector jarg1_, int jarg2);
  public final static native long SolutionCollector_objectiveValue(long jarg1, SolutionCollector jarg1_, int jarg2);
  public final static native long SolutionCollector_value(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, IntVar jarg3_);
  public final static native long SolutionCollector_startValue(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, IntervalVar jarg3_);
  public final static native long SolutionCollector_endValue(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, IntervalVar jarg3_);
  public final static native long SolutionCollector_durationValue(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, IntervalVar jarg3_);
  public final static native long SolutionCollector_performedValue(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, IntervalVar jarg3_);
  public final static native int[] SolutionCollector_forwardSequence(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, SequenceVar jarg3_);
  public final static native int[] SolutionCollector_backwardSequence(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, SequenceVar jarg3_);
  public final static native int[] SolutionCollector_unperformed(long jarg1, SolutionCollector jarg1_, int jarg2, long jarg3, SequenceVar jarg3_);
  public final static native long new_OptimizeVar(long jarg1, Solver jarg1_, boolean jarg2, long jarg3, IntVar jarg3_, long jarg4);
  public final static native void delete_OptimizeVar(long jarg1);
  public final static native long OptimizeVar_best(long jarg1, OptimizeVar jarg1_);
  public final static native long OptimizeVar_var(long jarg1, OptimizeVar jarg1_);
  public final static native boolean OptimizeVar_acceptDelta(long jarg1, OptimizeVar jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void OptimizeVar_enterSearch(long jarg1, OptimizeVar jarg1_);
  public final static native void OptimizeVar_beginNextDecision(long jarg1, OptimizeVar jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native void OptimizeVar_refuteDecision(long jarg1, OptimizeVar jarg1_, long jarg2, Decision jarg2_);
  public final static native boolean OptimizeVar_atSolution(long jarg1, OptimizeVar jarg1_);
  public final static native boolean OptimizeVar_acceptSolution(long jarg1, OptimizeVar jarg1_);
  public final static native String OptimizeVar_print(long jarg1, OptimizeVar jarg1_);
  public final static native String OptimizeVar_toString(long jarg1, OptimizeVar jarg1_);
  public final static native void OptimizeVar_accept(long jarg1, OptimizeVar jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native void OptimizeVar_applyBound(long jarg1, OptimizeVar jarg1_);
  public final static native void delete_SearchLimit(long jarg1);
  public final static native boolean SearchLimit_crossed(long jarg1, SearchLimit jarg1_);
  public final static native boolean SearchLimit_check(long jarg1, SearchLimit jarg1_);
  public final static native void SearchLimit_init(long jarg1, SearchLimit jarg1_);
  public final static native void SearchLimit_copy(long jarg1, SearchLimit jarg1_, long jarg2, SearchLimit jarg2_);
  public final static native long SearchLimit_makeClone(long jarg1, SearchLimit jarg1_);
  public final static native void SearchLimit_enterSearch(long jarg1, SearchLimit jarg1_);
  public final static native void SearchLimit_beginNextDecision(long jarg1, SearchLimit jarg1_, long jarg2, DecisionBuilder jarg2_);
  public final static native void SearchLimit_periodicCheck(long jarg1, SearchLimit jarg1_);
  public final static native void SearchLimit_refuteDecision(long jarg1, SearchLimit jarg1_, long jarg2, Decision jarg2_);
  public final static native String SearchLimit_toString(long jarg1, SearchLimit jarg1_);
  public final static native long new_RegularLimit(long jarg1, Solver jarg1_, long jarg2, long jarg3, long jarg4, long jarg5, boolean jarg6, boolean jarg7);
  public final static native void delete_RegularLimit(long jarg1);
  public final static native void RegularLimit_copy(long jarg1, RegularLimit jarg1_, long jarg2, SearchLimit jarg2_);
  public final static native long RegularLimit_makeClone(long jarg1, RegularLimit jarg1_);
  public final static native long RegularLimit_MakeIdenticalClone(long jarg1, RegularLimit jarg1_);
  public final static native boolean RegularLimit_check(long jarg1, RegularLimit jarg1_);
  public final static native void RegularLimit_init(long jarg1, RegularLimit jarg1_);
  public final static native void RegularLimit_exitSearch(long jarg1, RegularLimit jarg1_);
  public final static native void RegularLimit_UpdateLimits(long jarg1, RegularLimit jarg1_, long jarg2, long jarg3, long jarg4, long jarg5);
  public final static native long RegularLimit_wall_time(long jarg1, RegularLimit jarg1_);
  public final static native long RegularLimit_branches(long jarg1, RegularLimit jarg1_);
  public final static native long RegularLimit_failures(long jarg1, RegularLimit jarg1_);
  public final static native long RegularLimit_solutions(long jarg1, RegularLimit jarg1_);
  public final static native boolean RegularLimit_IsUncheckedSolutionLimitReached(long jarg1, RegularLimit jarg1_);
  public final static native int RegularLimit_progressPercent(long jarg1, RegularLimit jarg1_);
  public final static native String RegularLimit_toString(long jarg1, RegularLimit jarg1_);
  public final static native void RegularLimit_accept(long jarg1, RegularLimit jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native long IntervalVar_kMinValidValue_get();
  public final static native long IntervalVar_kMaxValidValue_get();
  public final static native void delete_IntervalVar(long jarg1);
  public final static native long IntervalVar_startMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_startMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_setStartMin(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setStartMax(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setStartRange(long jarg1, IntervalVar jarg1_, long jarg2, long jarg3);
  public final static native long IntervalVar_oldStartMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_oldStartMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_whenStartRange__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenStartRange__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native void IntervalVar_whenStartBound__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenStartBound__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native long IntervalVar_durationMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_durationMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_setDurationMin(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setDurationMax(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setDurationRange(long jarg1, IntervalVar jarg1_, long jarg2, long jarg3);
  public final static native long IntervalVar_oldDurationMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_oldDurationMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_whenDurationRange__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenDurationRange__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native void IntervalVar_whenDurationBound__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenDurationBound__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native long IntervalVar_endMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_endMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_setEndMin(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setEndMax(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_setEndRange(long jarg1, IntervalVar jarg1_, long jarg2, long jarg3);
  public final static native long IntervalVar_oldEndMin(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_oldEndMax(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_whenEndRange__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenEndRange__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native void IntervalVar_whenEndBound__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenEndBound__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native boolean IntervalVar_mustBePerformed(long jarg1, IntervalVar jarg1_);
  public final static native boolean IntervalVar_mayBePerformed(long jarg1, IntervalVar jarg1_);
  public final static native boolean IntervalVar_cannotBePerformed(long jarg1, IntervalVar jarg1_);
  public final static native boolean IntervalVar_isPerformedBound(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_setPerformed(long jarg1, IntervalVar jarg1_, boolean jarg2);
  public final static native boolean IntervalVar_wasPerformedBound(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVar_whenPerformedBound__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenPerformedBound__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native void IntervalVar_whenAnything__SWIG_0(long jarg1, IntervalVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void IntervalVar_whenAnything__SWIG_1(long jarg1, IntervalVar jarg1_, Runnable jarg2);
  public final static native long IntervalVar_startExpr(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_durationExpr(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_endExpr(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_performedExpr(long jarg1, IntervalVar jarg1_);
  public final static native long IntervalVar_safeStartExpr(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native long IntervalVar_safeDurationExpr(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native long IntervalVar_safeEndExpr(long jarg1, IntervalVar jarg1_, long jarg2);
  public final static native void IntervalVar_accept(long jarg1, IntervalVar jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native long new_SequenceVar(long jarg1, Solver jarg1_, IntervalVar[] jarg2, IntVar[] jarg3, String jarg4);
  public final static native void delete_SequenceVar(long jarg1);
  public final static native String SequenceVar_toString(long jarg1, SequenceVar jarg1_);
  public final static native void SequenceVar_rankFirst(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native void SequenceVar_rankNotFirst(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native void SequenceVar_rankLast(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native void SequenceVar_rankNotLast(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native void SequenceVar_rankSequence(long jarg1, SequenceVar jarg1_, int[] jarg2, int[] jarg3, int[] jarg4);
  public final static native long SequenceVar_interval(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native long SequenceVar_next(long jarg1, SequenceVar jarg1_, int jarg2);
  public final static native long SequenceVar_size(long jarg1, SequenceVar jarg1_);
  public final static native void SequenceVar_accept(long jarg1, SequenceVar jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native long new_AssignmentElement();
  public final static native void AssignmentElement_activate(long jarg1, AssignmentElement jarg1_);
  public final static native void AssignmentElement_deactivate(long jarg1, AssignmentElement jarg1_);
  public final static native boolean AssignmentElement_activated(long jarg1, AssignmentElement jarg1_);
  public final static native void delete_AssignmentElement(long jarg1);
  public final static native long new_IntVarElement__SWIG_0();
  public final static native long new_IntVarElement__SWIG_1(long jarg1, IntVar jarg1_);
  public final static native void IntVarElement_reset(long jarg1, IntVarElement jarg1_, long jarg2, IntVar jarg2_);
  public final static native long IntVarElement_clone(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_copy(long jarg1, IntVarElement jarg1_, long jarg2, IntVarElement jarg2_);
  public final static native long IntVarElement_var(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_store(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_restore(long jarg1, IntVarElement jarg1_);
  public final static native long IntVarElement_min(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_setMin(long jarg1, IntVarElement jarg1_, long jarg2);
  public final static native long IntVarElement_max(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_setMax(long jarg1, IntVarElement jarg1_, long jarg2);
  public final static native long IntVarElement_value(long jarg1, IntVarElement jarg1_);
  public final static native boolean IntVarElement_bound(long jarg1, IntVarElement jarg1_);
  public final static native void IntVarElement_setRange(long jarg1, IntVarElement jarg1_, long jarg2, long jarg3);
  public final static native void IntVarElement_setValue(long jarg1, IntVarElement jarg1_, long jarg2);
  public final static native String IntVarElement_toString(long jarg1, IntVarElement jarg1_);
  public final static native void delete_IntVarElement(long jarg1);
  public final static native long new_IntervalVarElement__SWIG_0();
  public final static native long new_IntervalVarElement__SWIG_1(long jarg1, IntervalVar jarg1_);
  public final static native void IntervalVarElement_reset(long jarg1, IntervalVarElement jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long IntervalVarElement_clone(long jarg1, IntervalVarElement jarg1_);
  public final static native void IntervalVarElement_copy(long jarg1, IntervalVarElement jarg1_, long jarg2, IntervalVarElement jarg2_);
  public final static native long IntervalVarElement_var(long jarg1, IntervalVarElement jarg1_);
  public final static native void IntervalVarElement_store(long jarg1, IntervalVarElement jarg1_);
  public final static native void IntervalVarElement_restore(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_startMin(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_startMax(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_startValue(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_durationMin(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_durationMax(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_durationValue(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_endMin(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_endMax(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_endValue(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_performedMin(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_performedMax(long jarg1, IntervalVarElement jarg1_);
  public final static native long IntervalVarElement_performedValue(long jarg1, IntervalVarElement jarg1_);
  public final static native void IntervalVarElement_setStartMin(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setStartMax(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setStartRange(long jarg1, IntervalVarElement jarg1_, long jarg2, long jarg3);
  public final static native void IntervalVarElement_setStartValue(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setDurationMin(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setDurationMax(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setDurationRange(long jarg1, IntervalVarElement jarg1_, long jarg2, long jarg3);
  public final static native void IntervalVarElement_setDurationValue(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setEndMin(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setEndMax(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setEndRange(long jarg1, IntervalVarElement jarg1_, long jarg2, long jarg3);
  public final static native void IntervalVarElement_setEndValue(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setPerformedMin(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setPerformedMax(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native void IntervalVarElement_setPerformedRange(long jarg1, IntervalVarElement jarg1_, long jarg2, long jarg3);
  public final static native void IntervalVarElement_setPerformedValue(long jarg1, IntervalVarElement jarg1_, long jarg2);
  public final static native boolean IntervalVarElement_bound(long jarg1, IntervalVarElement jarg1_);
  public final static native String IntervalVarElement_toString(long jarg1, IntervalVarElement jarg1_);
  public final static native void delete_IntervalVarElement(long jarg1);
  public final static native long new_SequenceVarElement__SWIG_0();
  public final static native long new_SequenceVarElement__SWIG_1(long jarg1, SequenceVar jarg1_);
  public final static native void SequenceVarElement_reset(long jarg1, SequenceVarElement jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long SequenceVarElement_clone(long jarg1, SequenceVarElement jarg1_);
  public final static native void SequenceVarElement_copy(long jarg1, SequenceVarElement jarg1_, long jarg2, SequenceVarElement jarg2_);
  public final static native long SequenceVarElement_var(long jarg1, SequenceVarElement jarg1_);
  public final static native void SequenceVarElement_store(long jarg1, SequenceVarElement jarg1_);
  public final static native void SequenceVarElement_restore(long jarg1, SequenceVarElement jarg1_);
  public final static native int[] SequenceVarElement_forwardSequence(long jarg1, SequenceVarElement jarg1_);
  public final static native int[] SequenceVarElement_backwardSequence(long jarg1, SequenceVarElement jarg1_);
  public final static native int[] SequenceVarElement_unperformed(long jarg1, SequenceVarElement jarg1_);
  public final static native void SequenceVarElement_setSequence(long jarg1, SequenceVarElement jarg1_, int[] jarg2, int[] jarg3, int[] jarg4);
  public final static native void SequenceVarElement_setForwardSequence(long jarg1, SequenceVarElement jarg1_, int[] jarg2);
  public final static native void SequenceVarElement_setBackwardSequence(long jarg1, SequenceVarElement jarg1_, int[] jarg2);
  public final static native void SequenceVarElement_setUnperformed(long jarg1, SequenceVarElement jarg1_, int[] jarg2);
  public final static native boolean SequenceVarElement_bound(long jarg1, SequenceVarElement jarg1_);
  public final static native String SequenceVarElement_toString(long jarg1, SequenceVarElement jarg1_);
  public final static native void delete_SequenceVarElement(long jarg1);
  public final static native long new_Assignment__SWIG_0(long jarg1, Solver jarg1_);
  public final static native long new_Assignment__SWIG_1(long jarg1, Assignment jarg1_);
  public final static native void delete_Assignment(long jarg1);
  public final static native void Assignment_clear(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_empty(long jarg1, Assignment jarg1_);
  public final static native int Assignment_size(long jarg1, Assignment jarg1_);
  public final static native int Assignment_numIntVars(long jarg1, Assignment jarg1_);
  public final static native int Assignment_numIntervalVars(long jarg1, Assignment jarg1_);
  public final static native int Assignment_numSequenceVars(long jarg1, Assignment jarg1_);
  public final static native void Assignment_store(long jarg1, Assignment jarg1_);
  public final static native void Assignment_restore(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_load(long jarg1, Assignment jarg1_, String jarg2);
  public final static native boolean Assignment_save(long jarg1, Assignment jarg1_, String jarg2);
  public final static native void Assignment_addObjective(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Assignment_ClearObjective(long jarg1, Assignment jarg1_);
  public final static native long Assignment_objective(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_hasObjective(long jarg1, Assignment jarg1_);
  public final static native long Assignment_objectiveMin(long jarg1, Assignment jarg1_);
  public final static native long Assignment_objectiveMax(long jarg1, Assignment jarg1_);
  public final static native long Assignment_objectiveValue(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_objectiveBound(long jarg1, Assignment jarg1_);
  public final static native void Assignment_setObjectiveMin(long jarg1, Assignment jarg1_, long jarg2);
  public final static native void Assignment_setObjectiveMax(long jarg1, Assignment jarg1_, long jarg2);
  public final static native void Assignment_setObjectiveValue(long jarg1, Assignment jarg1_, long jarg2);
  public final static native void Assignment_setObjectiveRange(long jarg1, Assignment jarg1_, long jarg2, long jarg3);
  public final static native long Assignment_add__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Assignment_add__SWIG_1(long jarg1, Assignment jarg1_, IntVar[] jarg2);
  public final static native long Assignment_fastAdd__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native long Assignment_min(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native long Assignment_max(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native long Assignment_value(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native boolean Assignment_bound(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Assignment_setMin(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void Assignment_setMax(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void Assignment_setRange(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4);
  public final static native void Assignment_setValue(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native long Assignment_add__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void Assignment_add__SWIG_3(long jarg1, Assignment jarg1_, IntervalVar[] jarg2);
  public final static native long Assignment_fastAdd__SWIG_1(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_startMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_startMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_startValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_durationMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_durationMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_durationValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_endMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_endMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_endValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_performedMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_performedMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long Assignment_performedValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void Assignment_setStartMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setStartMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setStartRange(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void Assignment_setStartValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setDurationMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setDurationMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setDurationRange(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void Assignment_setDurationValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setEndMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setEndMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setEndRange(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void Assignment_setEndValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setPerformedMin(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setPerformedMax(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void Assignment_setPerformedRange(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void Assignment_setPerformedValue(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native long Assignment_add__SWIG_4(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void Assignment_add__SWIG_5(long jarg1, Assignment jarg1_, SequenceVar[] jarg2);
  public final static native long Assignment_fastAdd__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native int[] Assignment_forwardSequence(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native int[] Assignment_backwardSequence(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native int[] Assignment_unperformed(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void Assignment_setSequence(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3, int[] jarg4, int[] jarg5);
  public final static native void Assignment_setForwardSequence(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3);
  public final static native void Assignment_setBackwardSequence(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3);
  public final static native void Assignment_setUnperformed(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3);
  public final static native void Assignment_activate__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Assignment_deactivate__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native boolean Assignment_activated__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Assignment_activate__SWIG_1(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void Assignment_deactivate__SWIG_1(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native boolean Assignment_activated__SWIG_1(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void Assignment_activate__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void Assignment_deactivate__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native boolean Assignment_activated__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void Assignment_activateObjective(long jarg1, Assignment jarg1_);
  public final static native void Assignment_deactivateObjective(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_activatedObjective(long jarg1, Assignment jarg1_);
  public final static native String Assignment_toString(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_AreAllElementsBound(long jarg1, Assignment jarg1_);
  public final static native boolean Assignment_contains__SWIG_0(long jarg1, Assignment jarg1_, long jarg2, IntVar jarg2_);
  public final static native boolean Assignment_contains__SWIG_1(long jarg1, Assignment jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native boolean Assignment_contains__SWIG_2(long jarg1, Assignment jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native void Assignment_copyIntersection(long jarg1, Assignment jarg1_, long jarg2, Assignment jarg2_);
  public final static native void Assignment_copy(long jarg1, Assignment jarg1_, long jarg2, Assignment jarg2_);
  public final static native long Assignment_intVarContainer(long jarg1, Assignment jarg1_);
  public final static native long Assignment_mutableIntVarContainer(long jarg1, Assignment jarg1_);
  public final static native long Assignment_intervalVarContainer(long jarg1, Assignment jarg1_);
  public final static native long Assignment_mutableIntervalVarContainer(long jarg1, Assignment jarg1_);
  public final static native long Assignment_sequenceVarContainer(long jarg1, Assignment jarg1_);
  public final static native long Assignment_mutableSequenceVarContainer(long jarg1, Assignment jarg1_);
  public final static native void setAssignmentFromAssignment(long jarg1, Assignment jarg1_, IntVar[] jarg2, long jarg3, Assignment jarg3_, IntVar[] jarg4);
  public final static native long new_Pack(long jarg1, Solver jarg1_, IntVar[] jarg2, int jarg3);
  public final static native void delete_Pack(long jarg1);
  public final static native void Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_0(long jarg1, Pack jarg1_, long[] jarg2, long[] jarg3);
  public final static native void Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_1(long jarg1, Pack jarg1_, LongUnaryOperator jarg2, long[] jarg3);
  public final static native void Pack_addWeightedSumLessOrEqualConstantDimension__SWIG_2(long jarg1, Pack jarg1_, LongBinaryOperator jarg2, long[] jarg3);
  public final static native void Pack_addWeightedSumEqualVarDimension__SWIG_0(long jarg1, Pack jarg1_, long[] jarg2, IntVar[] jarg3);
  public final static native void Pack_addWeightedSumEqualVarDimension__SWIG_1(long jarg1, Pack jarg1_, LongBinaryOperator jarg2, IntVar[] jarg3);
  public final static native void Pack_addSumVariableWeightsLessOrEqualConstantDimension(long jarg1, Pack jarg1_, IntVar[] jarg2, long[] jarg3);
  public final static native void Pack_addWeightedSumOfAssignedDimension(long jarg1, Pack jarg1_, long[] jarg2, long jarg3, IntVar jarg3_);
  public final static native void Pack_addCountUsedBinDimension(long jarg1, Pack jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Pack_addCountAssignedItemsDimension(long jarg1, Pack jarg1_, long jarg2, IntVar jarg2_);
  public final static native void Pack_post(long jarg1, Pack jarg1_);
  public final static native void Pack_clearAll(long jarg1, Pack jarg1_);
  public final static native void Pack_propagateDelayed(long jarg1, Pack jarg1_);
  public final static native void Pack_initialPropagate(long jarg1, Pack jarg1_);
  public final static native void Pack_propagate(long jarg1, Pack jarg1_);
  public final static native void Pack_oneDomain(long jarg1, Pack jarg1_, int jarg2);
  public final static native String Pack_toString(long jarg1, Pack jarg1_);
  public final static native boolean Pack_isUndecided(long jarg1, Pack jarg1_, int jarg2, int jarg3);
  public final static native void Pack_setImpossible(long jarg1, Pack jarg1_, int jarg2, int jarg3);
  public final static native void Pack_assign(long jarg1, Pack jarg1_, int jarg2, int jarg3);
  public final static native boolean Pack_isAssignedStatusKnown(long jarg1, Pack jarg1_, int jarg2);
  public final static native boolean Pack_isPossible(long jarg1, Pack jarg1_, int jarg2, int jarg3);
  public final static native long Pack_assignVar(long jarg1, Pack jarg1_, int jarg2, int jarg3);
  public final static native void Pack_setAssigned(long jarg1, Pack jarg1_, int jarg2);
  public final static native void Pack_setUnassigned(long jarg1, Pack jarg1_, int jarg2);
  public final static native void Pack_removeAllPossibleFromBin(long jarg1, Pack jarg1_, int jarg2);
  public final static native void Pack_assignAllPossibleToBin(long jarg1, Pack jarg1_, int jarg2);
  public final static native void Pack_assignFirstPossibleToBin(long jarg1, Pack jarg1_, int jarg2);
  public final static native void Pack_assignAllRemainingItems(long jarg1, Pack jarg1_);
  public final static native void Pack_unassignAllRemainingItems(long jarg1, Pack jarg1_);
  public final static native void Pack_accept(long jarg1, Pack jarg1_, long jarg2, ModelVisitor jarg2_);
  public final static native void delete_DisjunctiveConstraint(long jarg1);
  public final static native long DisjunctiveConstraint_makeSequenceVar(long jarg1, DisjunctiveConstraint jarg1_);
  public final static native void DisjunctiveConstraint_setTransitionTime(long jarg1, DisjunctiveConstraint jarg1_, LongBinaryOperator jarg2);
  public final static native long DisjunctiveConstraint_transitionTime(long jarg1, DisjunctiveConstraint jarg1_, int jarg2, int jarg3);
  public final static native void delete_SolutionPool(long jarg1);
  public final static native void SolutionPool_initialize(long jarg1, SolutionPool jarg1_, long jarg2, Assignment jarg2_);
  public final static native void SolutionPool_registerNewSolution(long jarg1, SolutionPool jarg1_, long jarg2, Assignment jarg2_);
  public final static native void SolutionPool_getNextSolution(long jarg1, SolutionPool jarg1_, long jarg2, Assignment jarg2_);
  public final static native boolean SolutionPool_syncNeeded(long jarg1, SolutionPool jarg1_, long jarg2, Assignment jarg2_);
  public final static native void delete_BaseIntExpr(long jarg1);
  public final static native long BaseIntExpr_var(long jarg1, BaseIntExpr jarg1_);
  public final static native long BaseIntExpr_castToVar(long jarg1, BaseIntExpr jarg1_);
  public final static native int UNSPECIFIED_get();
  public final static native int DOMAIN_INT_VAR_get();
  public final static native int BOOLEAN_VAR_get();
  public final static native int CONST_VAR_get();
  public final static native int VAR_ADD_CST_get();
  public final static native int VAR_TIMES_CST_get();
  public final static native int CST_SUB_VAR_get();
  public final static native int OPP_VAR_get();
  public final static native int TRACE_VAR_get();
  public final static native long new_LocalSearchOperator();
  public final static native void delete_LocalSearchOperator(long jarg1);
  public final static native boolean LocalSearchOperator_nextNeighbor(long jarg1, LocalSearchOperator jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void LocalSearchOperator_start(long jarg1, LocalSearchOperator jarg1_, long jarg2, Assignment jarg2_);
  public final static native void LocalSearchOperator_reset(long jarg1, LocalSearchOperator jarg1_);
  public final static native void LocalSearchOperator_resetSwigExplicitLocalSearchOperator(long jarg1, LocalSearchOperator jarg1_);
  public final static native boolean LocalSearchOperator_HasFragments(long jarg1, LocalSearchOperator jarg1_);
  public final static native boolean LocalSearchOperator_HasFragmentsSwigExplicitLocalSearchOperator(long jarg1, LocalSearchOperator jarg1_);
  public final static native boolean LocalSearchOperator_HoldsDelta(long jarg1, LocalSearchOperator jarg1_);
  public final static native boolean LocalSearchOperator_HoldsDeltaSwigExplicitLocalSearchOperator(long jarg1, LocalSearchOperator jarg1_);
  public final static native void LocalSearchOperator_director_connect(LocalSearchOperator obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void LocalSearchOperator_change_ownership(LocalSearchOperator obj, long cptr, boolean take_or_release);
  public final static native long new_IntVarLocalSearchHandler__SWIG_0();
  public final static native long new_IntVarLocalSearchHandler__SWIG_1(long jarg1, IntVarLocalSearchHandler jarg1_);
  public final static native long new_IntVarLocalSearchHandler__SWIG_2(long jarg1, IntVarLocalSearchOperator jarg1_);
  public final static native void IntVarLocalSearchHandler_addToAssignment(long jarg1, IntVarLocalSearchHandler jarg1_, long jarg2, IntVar jarg2_, long jarg3, boolean jarg4, long jarg5, long jarg6, long jarg7, Assignment jarg7_);
  public final static native boolean IntVarLocalSearchHandler_ValueFromAssignment(long jarg1, IntVarLocalSearchHandler jarg1_, long jarg2, Assignment jarg2_, long jarg3, IntVar jarg3_, long jarg4, int[] jarg5);
  public final static native void IntVarLocalSearchHandler_onRevertChanges(long jarg1, IntVarLocalSearchHandler jarg1_, long jarg2, long jarg3);
  public final static native void IntVarLocalSearchHandler_onAddVars(long jarg1, IntVarLocalSearchHandler jarg1_);
  public final static native void delete_IntVarLocalSearchHandler(long jarg1);
  public final static native void delete_IntVarLocalSearchOperatorTemplate(long jarg1);
  public final static native boolean IntVarLocalSearchOperatorTemplate_HoldsDelta(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_);
  public final static native boolean IntVarLocalSearchOperatorTemplate_isIncremental(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_);
  public final static native int IntVarLocalSearchOperatorTemplate_size(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_);
  public final static native long IntVarLocalSearchOperatorTemplate_value(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native long IntVarLocalSearchOperatorTemplate_var(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native long IntVarLocalSearchOperatorTemplate_oldValue(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void IntVarLocalSearchOperatorTemplate_setValue(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2, long jarg3);
  public final static native boolean IntVarLocalSearchOperatorTemplate_activated(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void IntVarLocalSearchOperatorTemplate_activate(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void IntVarLocalSearchOperatorTemplate_deactivate(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void IntVarLocalSearchOperatorTemplate_addVars(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_, IntVar[] jarg2);
  public final static native void IntVarLocalSearchOperatorTemplate_onStart(long jarg1, IntVarLocalSearchOperatorTemplate jarg1_);
  public final static native long new_IntVarLocalSearchOperator__SWIG_0();
  public final static native long new_IntVarLocalSearchOperator__SWIG_1(IntVar[] jarg1, boolean jarg2);
  public final static native long new_IntVarLocalSearchOperator__SWIG_2(IntVar[] jarg1);
  public final static native void delete_IntVarLocalSearchOperator(long jarg1);
  public final static native boolean IntVarLocalSearchOperator_oneNeighbor(long jarg1, IntVarLocalSearchOperator jarg1_);
  public final static native boolean IntVarLocalSearchOperator_oneNeighborSwigExplicitIntVarLocalSearchOperator(long jarg1, IntVarLocalSearchOperator jarg1_);
  public final static native void IntVarLocalSearchOperator_director_connect(IntVarLocalSearchOperator obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void IntVarLocalSearchOperator_change_ownership(IntVarLocalSearchOperator obj, long cptr, boolean take_or_release);
  public final static native long new_SequenceVarLocalSearchHandler__SWIG_0();
  public final static native long new_SequenceVarLocalSearchHandler__SWIG_1(long jarg1, SequenceVarLocalSearchHandler jarg1_);
  public final static native long new_SequenceVarLocalSearchHandler__SWIG_2(long jarg1, SequenceVarLocalSearchOperator jarg1_);
  public final static native void SequenceVarLocalSearchHandler_addToAssignment(long jarg1, SequenceVarLocalSearchHandler jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3, boolean jarg4, long jarg5, long jarg6, long jarg7, Assignment jarg7_);
  public final static native boolean SequenceVarLocalSearchHandler_ValueFromAssignment(long jarg1, SequenceVarLocalSearchHandler jarg1_, long jarg2, Assignment jarg2_, long jarg3, SequenceVar jarg3_, long jarg4, long jarg5);
  public final static native void SequenceVarLocalSearchHandler_onRevertChanges(long jarg1, SequenceVarLocalSearchHandler jarg1_, long jarg2, int[] jarg3);
  public final static native void SequenceVarLocalSearchHandler_onAddVars(long jarg1, SequenceVarLocalSearchHandler jarg1_);
  public final static native void delete_SequenceVarLocalSearchHandler(long jarg1);
  public final static native void delete_SequenceVarLocalSearchOperatorTemplate(long jarg1);
  public final static native boolean SequenceVarLocalSearchOperatorTemplate_HoldsDelta(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_);
  public final static native boolean SequenceVarLocalSearchOperatorTemplate_isIncremental(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_);
  public final static native int SequenceVarLocalSearchOperatorTemplate_size(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_);
  public final static native int[] SequenceVarLocalSearchOperatorTemplate_value(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native long SequenceVarLocalSearchOperatorTemplate_var(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native int[] SequenceVarLocalSearchOperatorTemplate_oldValue(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void SequenceVarLocalSearchOperatorTemplate_setValue(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2, int[] jarg3);
  public final static native boolean SequenceVarLocalSearchOperatorTemplate_activated(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void SequenceVarLocalSearchOperatorTemplate_activate(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void SequenceVarLocalSearchOperatorTemplate_deactivate(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, long jarg2);
  public final static native void SequenceVarLocalSearchOperatorTemplate_addVars(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_, SequenceVar[] jarg2);
  public final static native void SequenceVarLocalSearchOperatorTemplate_onStart(long jarg1, SequenceVarLocalSearchOperatorTemplate jarg1_);
  public final static native long new_SequenceVarLocalSearchOperator__SWIG_0();
  public final static native long new_SequenceVarLocalSearchOperator__SWIG_1(SequenceVar[] jarg1);
  public final static native void delete_SequenceVarLocalSearchOperator(long jarg1);
  public final static native void SequenceVarLocalSearchOperator_director_connect(SequenceVarLocalSearchOperator obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void SequenceVarLocalSearchOperator_change_ownership(SequenceVarLocalSearchOperator obj, long cptr, boolean take_or_release);
  public final static native long new_BaseLns(IntVar[] jarg1);
  public final static native void delete_BaseLns(long jarg1);
  public final static native void BaseLns_initFragments(long jarg1, BaseLns jarg1_);
  public final static native void BaseLns_initFragmentsSwigExplicitBaseLns(long jarg1, BaseLns jarg1_);
  public final static native boolean BaseLns_nextFragment(long jarg1, BaseLns jarg1_);
  public final static native void BaseLns_appendToFragment(long jarg1, BaseLns jarg1_, int jarg2);
  public final static native int BaseLns_fragmentSize(long jarg1, BaseLns jarg1_);
  public final static native boolean BaseLns_HasFragments(long jarg1, BaseLns jarg1_);
  public final static native boolean BaseLns_HasFragmentsSwigExplicitBaseLns(long jarg1, BaseLns jarg1_);
  public final static native void BaseLns_director_connect(BaseLns obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void BaseLns_change_ownership(BaseLns obj, long cptr, boolean take_or_release);
  public final static native long new_ChangeValue(IntVar[] jarg1);
  public final static native void delete_ChangeValue(long jarg1);
  public final static native long ChangeValue_modifyValue(long jarg1, ChangeValue jarg1_, long jarg2, long jarg3);
  public final static native boolean ChangeValue_oneNeighbor(long jarg1, ChangeValue jarg1_);
  public final static native boolean ChangeValue_oneNeighborSwigExplicitChangeValue(long jarg1, ChangeValue jarg1_);
  public final static native void ChangeValue_director_connect(ChangeValue obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void ChangeValue_change_ownership(ChangeValue obj, long cptr, boolean take_or_release);
  public final static native long new_PathOperator(IntVar[] jarg1, IntVar[] jarg2, int jarg3, boolean jarg4, boolean jarg5, LongToIntFunction jarg6);
  public final static native void delete_PathOperator(long jarg1);
  public final static native boolean PathOperator_neighbor(long jarg1, PathOperator jarg1_);
  public final static native void PathOperator_reset(long jarg1, PathOperator jarg1_);
  public final static native void PathOperator_resetSwigExplicitPathOperator(long jarg1, PathOperator jarg1_);
  public final static native long PathOperator_Prev(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native boolean PathOperator_oneNeighbor(long jarg1, PathOperator jarg1_);
  public final static native boolean PathOperator_oneNeighborSwigExplicitPathOperator(long jarg1, PathOperator jarg1_);
  public final static native void PathOperator_OnNodeInitialization(long jarg1, PathOperator jarg1_);
  public final static native void PathOperator_OnNodeInitializationSwigExplicitPathOperator(long jarg1, PathOperator jarg1_);
  public final static native boolean PathOperator_restartAtPathStartOnSynchronize(long jarg1, PathOperator jarg1_);
  public final static native boolean PathOperator_restartAtPathStartOnSynchronizeSwigExplicitPathOperator(long jarg1, PathOperator jarg1_);
  public final static native boolean PathOperator_onSamePathAsPreviousBase(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native boolean PathOperator_onSamePathAsPreviousBaseSwigExplicitPathOperator(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native long PathOperator_getBaseNodeRestartPosition(long jarg1, PathOperator jarg1_, int jarg2);
  public final static native long PathOperator_getBaseNodeRestartPositionSwigExplicitPathOperator(long jarg1, PathOperator jarg1_, int jarg2);
  public final static native void PathOperator_setNextBaseToIncrement(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native void PathOperator_setNextBaseToIncrementSwigExplicitPathOperator(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native boolean PathOperator_ConsiderAlternatives(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native boolean PathOperator_ConsiderAlternativesSwigExplicitPathOperator(long jarg1, PathOperator jarg1_, long jarg2);
  public final static native boolean PathOperator_initPosition(long jarg1, PathOperator jarg1_);
  public final static native boolean PathOperator_initPositionSwigExplicitPathOperator(long jarg1, PathOperator jarg1_);
  public final static native void PathOperator_director_connect(PathOperator obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void PathOperator_change_ownership(PathOperator obj, long cptr, boolean take_or_release);
  public final static native void LocalSearchFilter_Relax(long jarg1, LocalSearchFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void LocalSearchFilter_RelaxSwigExplicitLocalSearchFilter(long jarg1, LocalSearchFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native boolean LocalSearchFilter_accept(long jarg1, LocalSearchFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_, long jarg4, long jarg5);
  public final static native boolean LocalSearchFilter_isIncremental(long jarg1, LocalSearchFilter jarg1_);
  public final static native boolean LocalSearchFilter_isIncrementalSwigExplicitLocalSearchFilter(long jarg1, LocalSearchFilter jarg1_);
  public final static native void LocalSearchFilter_synchronize(long jarg1, LocalSearchFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void LocalSearchFilter_Revert(long jarg1, LocalSearchFilter jarg1_);
  public final static native void LocalSearchFilter_RevertSwigExplicitLocalSearchFilter(long jarg1, LocalSearchFilter jarg1_);
  public final static native long LocalSearchFilter_getSynchronizedObjectiveValue(long jarg1, LocalSearchFilter jarg1_);
  public final static native long LocalSearchFilter_getSynchronizedObjectiveValueSwigExplicitLocalSearchFilter(long jarg1, LocalSearchFilter jarg1_);
  public final static native long LocalSearchFilter_getAcceptedObjectiveValue(long jarg1, LocalSearchFilter jarg1_);
  public final static native long LocalSearchFilter_getAcceptedObjectiveValueSwigExplicitLocalSearchFilter(long jarg1, LocalSearchFilter jarg1_);
  public final static native long new_LocalSearchFilter();
  public final static native void delete_LocalSearchFilter(long jarg1);
  public final static native void LocalSearchFilter_director_connect(LocalSearchFilter obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void LocalSearchFilter_change_ownership(LocalSearchFilter obj, long cptr, boolean take_or_release);
  public final static native long new_IntVarLocalSearchFilter(IntVar[] jarg1);
  public final static native void delete_IntVarLocalSearchFilter(long jarg1);
  public final static native void IntVarLocalSearchFilter_synchronize(long jarg1, IntVarLocalSearchFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_);
  public final static native void IntVarLocalSearchFilter_addVars(long jarg1, IntVarLocalSearchFilter jarg1_, IntVar[] jarg2);
  public final static native int IntVarLocalSearchFilter_size(long jarg1, IntVarLocalSearchFilter jarg1_);
  public final static native long IntVarLocalSearchFilter_var(long jarg1, IntVarLocalSearchFilter jarg1_, int jarg2);
  public final static native long IntVarLocalSearchFilter_value(long jarg1, IntVarLocalSearchFilter jarg1_, int jarg2);
  public final static native void IntVarLocalSearchFilter_onSynchronize(long jarg1, IntVarLocalSearchFilter jarg1_, long jarg2, Assignment jarg2_);
  public final static native void IntVarLocalSearchFilter_onSynchronizeSwigExplicitIntVarLocalSearchFilter(long jarg1, IntVarLocalSearchFilter jarg1_, long jarg2, Assignment jarg2_);
  public final static native int IntVarLocalSearchFilter_index(long jarg1, IntVarLocalSearchFilter jarg1_, long jarg2, IntVar jarg2_);
  public final static native void IntVarLocalSearchFilter_director_connect(IntVarLocalSearchFilter obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void IntVarLocalSearchFilter_change_ownership(IntVarLocalSearchFilter obj, long cptr, boolean take_or_release);
  public final static native void delete_PropagationMonitor(long jarg1);
  public final static native String PropagationMonitor_toString(long jarg1, PropagationMonitor jarg1_);
  public final static native void PropagationMonitor_beginConstraintInitialPropagation(long jarg1, PropagationMonitor jarg1_, long jarg2, Constraint jarg2_);
  public final static native void PropagationMonitor_endConstraintInitialPropagation(long jarg1, PropagationMonitor jarg1_, long jarg2, Constraint jarg2_);
  public final static native void PropagationMonitor_beginNestedConstraintInitialPropagation(long jarg1, PropagationMonitor jarg1_, long jarg2, Constraint jarg2_, long jarg3, Constraint jarg3_);
  public final static native void PropagationMonitor_endNestedConstraintInitialPropagation(long jarg1, PropagationMonitor jarg1_, long jarg2, Constraint jarg2_, long jarg3, Constraint jarg3_);
  public final static native void PropagationMonitor_registerDemon(long jarg1, PropagationMonitor jarg1_, long jarg2, Demon jarg2_);
  public final static native void PropagationMonitor_beginDemonRun(long jarg1, PropagationMonitor jarg1_, long jarg2, Demon jarg2_);
  public final static native void PropagationMonitor_endDemonRun(long jarg1, PropagationMonitor jarg1_, long jarg2, Demon jarg2_);
  public final static native void PropagationMonitor_startProcessingIntegerVariable(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_);
  public final static native void PropagationMonitor_endProcessingIntegerVariable(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_);
  public final static native void PropagationMonitor_pushContext(long jarg1, PropagationMonitor jarg1_, String jarg2);
  public final static native void PropagationMonitor_popContext(long jarg1, PropagationMonitor jarg1_);
  public final static native void PropagationMonitor_setMin__SWIG_0(long jarg1, PropagationMonitor jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native void PropagationMonitor_setMax__SWIG_0(long jarg1, PropagationMonitor jarg1_, long jarg2, IntExpr jarg2_, long jarg3);
  public final static native void PropagationMonitor_setRange__SWIG_0(long jarg1, PropagationMonitor jarg1_, long jarg2, IntExpr jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_setMin__SWIG_1(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setMax__SWIG_1(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setRange__SWIG_1(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_removeValue(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setValue__SWIG_0(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_removeInterval(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_setValue__SWIG_1(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long[] jarg3);
  public final static native void PropagationMonitor_removeValues(long jarg1, PropagationMonitor jarg1_, long jarg2, IntVar jarg2_, long[] jarg3);
  public final static native void PropagationMonitor_setStartMin(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setStartMax(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setStartRange(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_setEndMin(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setEndMax(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setEndRange(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_setDurationMin(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setDurationMax(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3);
  public final static native void PropagationMonitor_setDurationRange(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, long jarg3, long jarg4);
  public final static native void PropagationMonitor_setPerformed(long jarg1, PropagationMonitor jarg1_, long jarg2, IntervalVar jarg2_, boolean jarg3);
  public final static native void PropagationMonitor_rankFirst(long jarg1, PropagationMonitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void PropagationMonitor_rankNotFirst(long jarg1, PropagationMonitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void PropagationMonitor_rankLast(long jarg1, PropagationMonitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void PropagationMonitor_rankNotLast(long jarg1, PropagationMonitor jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void PropagationMonitor_rankSequence(long jarg1, PropagationMonitor jarg1_, long jarg2, SequenceVar jarg2_, int[] jarg3, int[] jarg4, int[] jarg5);
  public final static native void PropagationMonitor_install(long jarg1, PropagationMonitor jarg1_);
  public final static native void delete_LocalSearchMonitor(long jarg1);
  public final static native String LocalSearchMonitor_toString(long jarg1, LocalSearchMonitor jarg1_);
  public final static native void LocalSearchMonitor_beginOperatorStart(long jarg1, LocalSearchMonitor jarg1_);
  public final static native void LocalSearchMonitor_endOperatorStart(long jarg1, LocalSearchMonitor jarg1_);
  public final static native void LocalSearchMonitor_beginMakeNextNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_);
  public final static native void LocalSearchMonitor_endMakeNextNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_, boolean jarg3, long jarg4, Assignment jarg4_, long jarg5, Assignment jarg5_);
  public final static native void LocalSearchMonitor_beginFilterNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_);
  public final static native void LocalSearchMonitor_endFilterNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_, boolean jarg3);
  public final static native void LocalSearchMonitor_beginAcceptNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_);
  public final static native void LocalSearchMonitor_endAcceptNeighbor(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchOperator jarg2_, boolean jarg3);
  public final static native void LocalSearchMonitor_beginFiltering(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchFilter jarg2_);
  public final static native void LocalSearchMonitor_endFiltering(long jarg1, LocalSearchMonitor jarg1_, long jarg2, LocalSearchFilter jarg2_, boolean jarg3);
  public final static native void LocalSearchMonitor_install(long jarg1, LocalSearchMonitor jarg1_);
  public final static native int BooleanVar_kUnboundBooleanVarValue_get();
  public final static native void delete_BooleanVar(long jarg1);
  public final static native long BooleanVar_min(long jarg1, BooleanVar jarg1_);
  public final static native void BooleanVar_setMin(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native long BooleanVar_max(long jarg1, BooleanVar jarg1_);
  public final static native void BooleanVar_setMax(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native void BooleanVar_setRange(long jarg1, BooleanVar jarg1_, long jarg2, long jarg3);
  public final static native boolean BooleanVar_bound(long jarg1, BooleanVar jarg1_);
  public final static native long BooleanVar_value(long jarg1, BooleanVar jarg1_);
  public final static native void BooleanVar_removeValue(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native void BooleanVar_removeInterval(long jarg1, BooleanVar jarg1_, long jarg2, long jarg3);
  public final static native void BooleanVar_whenBound(long jarg1, BooleanVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void BooleanVar_whenRange(long jarg1, BooleanVar jarg1_, long jarg2, Demon jarg2_);
  public final static native void BooleanVar_whenDomain(long jarg1, BooleanVar jarg1_, long jarg2, Demon jarg2_);
  public final static native long BooleanVar_size(long jarg1, BooleanVar jarg1_);
  public final static native boolean BooleanVar_contains(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native long BooleanVar_makeHoleIterator(long jarg1, BooleanVar jarg1_, boolean jarg2);
  public final static native long BooleanVar_makeDomainIterator(long jarg1, BooleanVar jarg1_, boolean jarg2);
  public final static native String BooleanVar_toString(long jarg1, BooleanVar jarg1_);
  public final static native int BooleanVar_varType(long jarg1, BooleanVar jarg1_);
  public final static native long BooleanVar_isEqual(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native long BooleanVar_isDifferent(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native long BooleanVar_isGreaterOrEqual(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native long BooleanVar_isLessOrEqual(long jarg1, BooleanVar jarg1_, long jarg2);
  public final static native void BooleanVar_restoreValue(long jarg1, BooleanVar jarg1_);
  public final static native String BooleanVar_baseName(long jarg1, BooleanVar jarg1_);
  public final static native int BooleanVar_rawValue(long jarg1, BooleanVar jarg1_);
  public final static native long new_SymmetryBreaker();
  public final static native void delete_SymmetryBreaker(long jarg1);
  public final static native void SymmetryBreaker_addIntegerVariableEqualValueClause(long jarg1, SymmetryBreaker jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void SymmetryBreaker_addIntegerVariableGreaterOrEqualValueClause(long jarg1, SymmetryBreaker jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void SymmetryBreaker_addIntegerVariableLessOrEqualValueClause(long jarg1, SymmetryBreaker jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void SymmetryBreaker_director_connect(SymmetryBreaker obj, long cptr, boolean mem_own, boolean weak_global);
  public final static native void SymmetryBreaker_change_ownership(SymmetryBreaker obj, long cptr, boolean take_or_release);
  public final static native long new_SearchLog(long jarg1, Solver jarg1_, long jarg2, OptimizeVar jarg2_, long jarg3, IntVar jarg3_, double jarg4, double jarg5, Supplier jarg6, int jarg7);
  public final static native void delete_SearchLog(long jarg1);
  public final static native void SearchLog_enterSearch(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_exitSearch(long jarg1, SearchLog jarg1_);
  public final static native boolean SearchLog_atSolution(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_beginFail(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_noMoreSolutions(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_AcceptUncheckedNeighbor(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_applyDecision(long jarg1, SearchLog jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchLog_refuteDecision(long jarg1, SearchLog jarg1_, long jarg2, Decision jarg2_);
  public final static native void SearchLog_outputDecision(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_maintain(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_beginInitialPropagation(long jarg1, SearchLog jarg1_);
  public final static native void SearchLog_endInitialPropagation(long jarg1, SearchLog jarg1_);
  public final static native String SearchLog_toString(long jarg1, SearchLog jarg1_);
  public final static native int ModelCache_VOID_FALSE_CONSTRAINT_get();
  public final static native int ModelCache_VOID_TRUE_CONSTRAINT_get();
  public final static native int ModelCache_VOID_CONSTRAINT_MAX_get();
  public final static native int ModelCache_VAR_CONSTANT_EQUALITY_get();
  public final static native int ModelCache_VAR_CONSTANT_GREATER_OR_EQUAL_get();
  public final static native int ModelCache_VAR_CONSTANT_LESS_OR_EQUAL_get();
  public final static native int ModelCache_VAR_CONSTANT_NON_EQUALITY_get();
  public final static native int ModelCache_VAR_CONSTANT_CONSTRAINT_MAX_get();
  public final static native int ModelCache_VAR_CONSTANT_CONSTANT_BETWEEN_get();
  public final static native int ModelCache_VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX_get();
  public final static native int ModelCache_EXPR_EXPR_EQUALITY_get();
  public final static native int ModelCache_EXPR_EXPR_GREATER_get();
  public final static native int ModelCache_EXPR_EXPR_GREATER_OR_EQUAL_get();
  public final static native int ModelCache_EXPR_EXPR_LESS_get();
  public final static native int ModelCache_EXPR_EXPR_LESS_OR_EQUAL_get();
  public final static native int ModelCache_EXPR_EXPR_NON_EQUALITY_get();
  public final static native int ModelCache_EXPR_EXPR_CONSTRAINT_MAX_get();
  public final static native int ModelCache_EXPR_OPPOSITE_get();
  public final static native int ModelCache_EXPR_ABS_get();
  public final static native int ModelCache_EXPR_SQUARE_get();
  public final static native int ModelCache_EXPR_EXPRESSION_MAX_get();
  public final static native int ModelCache_EXPR_EXPR_DIFFERENCE_get();
  public final static native int ModelCache_EXPR_EXPR_PROD_get();
  public final static native int ModelCache_EXPR_EXPR_DIV_get();
  public final static native int ModelCache_EXPR_EXPR_MAX_get();
  public final static native int ModelCache_EXPR_EXPR_MIN_get();
  public final static native int ModelCache_EXPR_EXPR_SUM_get();
  public final static native int ModelCache_EXPR_EXPR_IS_LESS_get();
  public final static native int ModelCache_EXPR_EXPR_IS_LESS_OR_EQUAL_get();
  public final static native int ModelCache_EXPR_EXPR_IS_EQUAL_get();
  public final static native int ModelCache_EXPR_EXPR_IS_NOT_EQUAL_get();
  public final static native int ModelCache_EXPR_EXPR_EXPRESSION_MAX_get();
  public final static native int ModelCache_EXPR_EXPR_CONSTANT_CONDITIONAL_get();
  public final static native int ModelCache_EXPR_EXPR_CONSTANT_EXPRESSION_MAX_get();
  public final static native int ModelCache_EXPR_CONSTANT_DIFFERENCE_get();
  public final static native int ModelCache_EXPR_CONSTANT_DIVIDE_get();
  public final static native int ModelCache_EXPR_CONSTANT_PROD_get();
  public final static native int ModelCache_EXPR_CONSTANT_MAX_get();
  public final static native int ModelCache_EXPR_CONSTANT_MIN_get();
  public final static native int ModelCache_EXPR_CONSTANT_SUM_get();
  public final static native int ModelCache_EXPR_CONSTANT_IS_EQUAL_get();
  public final static native int ModelCache_EXPR_CONSTANT_IS_NOT_EQUAL_get();
  public final static native int ModelCache_EXPR_CONSTANT_IS_GREATER_OR_EQUAL_get();
  public final static native int ModelCache_EXPR_CONSTANT_IS_LESS_OR_EQUAL_get();
  public final static native int ModelCache_EXPR_CONSTANT_EXPRESSION_MAX_get();
  public final static native int ModelCache_VAR_CONSTANT_CONSTANT_SEMI_CONTINUOUS_get();
  public final static native int ModelCache_VAR_CONSTANT_CONSTANT_EXPRESSION_MAX_get();
  public final static native int ModelCache_VAR_CONSTANT_ARRAY_ELEMENT_get();
  public final static native int ModelCache_VAR_CONSTANT_ARRAY_EXPRESSION_MAX_get();
  public final static native int ModelCache_VAR_ARRAY_CONSTANT_ARRAY_SCAL_PROD_get();
  public final static native int ModelCache_VAR_ARRAY_CONSTANT_ARRAY_EXPRESSION_MAX_get();
  public final static native int ModelCache_VAR_ARRAY_MAX_get();
  public final static native int ModelCache_VAR_ARRAY_MIN_get();
  public final static native int ModelCache_VAR_ARRAY_SUM_get();
  public final static native int ModelCache_VAR_ARRAY_EXPRESSION_MAX_get();
  public final static native int ModelCache_VAR_ARRAY_CONSTANT_INDEX_get();
  public final static native int ModelCache_VAR_ARRAY_CONSTANT_EXPRESSION_MAX_get();
  public final static native void delete_ModelCache(long jarg1);
  public final static native void ModelCache_clear(long jarg1, ModelCache jarg1_);
  public final static native long ModelCache_findVoidConstraint(long jarg1, ModelCache jarg1_, int jarg2);
  public final static native void ModelCache_insertVoidConstraint(long jarg1, ModelCache jarg1_, long jarg2, Constraint jarg2_, int jarg3);
  public final static native long ModelCache_findVarConstantConstraint(long jarg1, ModelCache jarg1_, long jarg2, IntVar jarg2_, long jarg3, int jarg4);
  public final static native void ModelCache_insertVarConstantConstraint(long jarg1, ModelCache jarg1_, long jarg2, Constraint jarg2_, long jarg3, IntVar jarg3_, long jarg4, int jarg5);
  public final static native long ModelCache_findVarConstantConstantConstraint(long jarg1, ModelCache jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4, int jarg5);
  public final static native void ModelCache_insertVarConstantConstantConstraint(long jarg1, ModelCache jarg1_, long jarg2, Constraint jarg2_, long jarg3, IntVar jarg3_, long jarg4, long jarg5, int jarg6);
  public final static native long ModelCache_findExprExprConstraint(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, int jarg4);
  public final static native void ModelCache_insertExprExprConstraint(long jarg1, ModelCache jarg1_, long jarg2, Constraint jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntExpr jarg4_, int jarg5);
  public final static native long ModelCache_findExprExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, int jarg3);
  public final static native void ModelCache_insertExprExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, int jarg4);
  public final static native long ModelCache_findExprConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, int jarg4);
  public final static native void ModelCache_insertExprConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, int jarg5);
  public final static native long ModelCache_findExprExprExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, int jarg4);
  public final static native void ModelCache_insertExprExprExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntExpr jarg4_, int jarg5);
  public final static native long ModelCache_findExprExprConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, int jarg5);
  public final static native void ModelCache_insertExprExprConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntExpr jarg3_, long jarg4, IntExpr jarg4_, long jarg5, int jarg6);
  public final static native long ModelCache_findVarConstantConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntVar jarg2_, long jarg3, long jarg4, int jarg5);
  public final static native void ModelCache_insertVarConstantConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntVar jarg3_, long jarg4, long jarg5, int jarg6);
  public final static native long ModelCache_findVarConstantArrayExpression(long jarg1, ModelCache jarg1_, long jarg2, IntVar jarg2_, long[] jarg3, int jarg4);
  public final static native void ModelCache_insertVarConstantArrayExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, long jarg3, IntVar jarg3_, long[] jarg4, int jarg5);
  public final static native long ModelCache_findVarArrayExpression(long jarg1, ModelCache jarg1_, IntVar[] jarg2, int jarg3);
  public final static native void ModelCache_insertVarArrayExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, IntVar[] jarg3, int jarg4);
  public final static native long ModelCache_findVarArrayConstantArrayExpression(long jarg1, ModelCache jarg1_, IntVar[] jarg2, long[] jarg3, int jarg4);
  public final static native void ModelCache_insertVarArrayConstantArrayExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, IntVar[] jarg3, long[] jarg4, int jarg5);
  public final static native long ModelCache_findVarArrayConstantExpression(long jarg1, ModelCache jarg1_, IntVar[] jarg2, long jarg3, int jarg4);
  public final static native void ModelCache_insertVarArrayConstantExpression(long jarg1, ModelCache jarg1_, long jarg2, IntExpr jarg2_, IntVar[] jarg3, long jarg4, int jarg5);
  public final static native long ModelCache_solver(long jarg1, ModelCache jarg1_);
  public final static native long new_RevPartialSequence__SWIG_0(int[] jarg1);
  public final static native long new_RevPartialSequence__SWIG_1(int jarg1);
  public final static native void delete_RevPartialSequence(long jarg1);
  public final static native int RevPartialSequence_numFirstRanked(long jarg1, RevPartialSequence jarg1_);
  public final static native int RevPartialSequence_numLastRanked(long jarg1, RevPartialSequence jarg1_);
  public final static native int RevPartialSequence_size(long jarg1, RevPartialSequence jarg1_);
  public final static native void RevPartialSequence_rankFirst(long jarg1, RevPartialSequence jarg1_, long jarg2, Solver jarg2_, int jarg3);
  public final static native void RevPartialSequence_rankLast(long jarg1, RevPartialSequence jarg1_, long jarg2, Solver jarg2_, int jarg3);
  public final static native boolean RevPartialSequence_isRanked(long jarg1, RevPartialSequence jarg1_, int jarg2);
  public final static native String RevPartialSequence_toString(long jarg1, RevPartialSequence jarg1_);
  public final static native boolean areAllBound(IntVar[] jarg1);
  public final static native boolean areAllBooleans(IntVar[] jarg1);
  public final static native boolean areAllBoundTo(IntVar[] jarg1, long jarg2);
  public final static native long maxVarArray(IntVar[] jarg1);
  public final static native long minVarArray(IntVar[] jarg1);
  public final static native long posIntDivUp(long jarg1, long jarg2);
  public final static native long posIntDivDown(long jarg1, long jarg2);
  public final static native long new_LocalSearchPhaseParameters();
  public final static native void delete_LocalSearchPhaseParameters(long jarg1);
  public final static native long new_RevInteger(int jarg1);
  public final static native int RevInteger_value(long jarg1, RevInteger jarg1_);
  public final static native void RevInteger_setValue(long jarg1, RevInteger jarg1_, long jarg2, Solver jarg2_, int jarg3);
  public final static native void delete_RevInteger(long jarg1);
  public final static native long new_RevLong(long jarg1);
  public final static native long RevLong_value(long jarg1, RevLong jarg1_);
  public final static native void RevLong_setValue(long jarg1, RevLong jarg1_, long jarg2, Solver jarg2_, long jarg3);
  public final static native void delete_RevLong(long jarg1);
  public final static native long new_RevBool(boolean jarg1);
  public final static native boolean RevBool_value(long jarg1, RevBool jarg1_);
  public final static native void RevBool_setValue(long jarg1, RevBool jarg1_, long jarg2, Solver jarg2_, boolean jarg3);
  public final static native void delete_RevBool(long jarg1);
  public final static native long new_AssignmentIntContainer();
  public final static native long AssignmentIntContainer_add(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_);
  public final static native long AssignmentIntContainer_fastAdd(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_);
  public final static native long AssignmentIntContainer_addAtPosition(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_, int jarg3);
  public final static native void AssignmentIntContainer_clear(long jarg1, AssignmentIntContainer jarg1_);
  public final static native void AssignmentIntContainer_resize(long jarg1, AssignmentIntContainer jarg1_, long jarg2);
  public final static native boolean AssignmentIntContainer_empty(long jarg1, AssignmentIntContainer jarg1_);
  public final static native void AssignmentIntContainer_copyIntersection(long jarg1, AssignmentIntContainer jarg1_, long jarg2, AssignmentIntContainer jarg2_);
  public final static native void AssignmentIntContainer_copy(long jarg1, AssignmentIntContainer jarg1_, long jarg2, AssignmentIntContainer jarg2_);
  public final static native boolean AssignmentIntContainer_contains(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_);
  public final static native long AssignmentIntContainer_mutableElement__SWIG_0(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_);
  public final static native long AssignmentIntContainer_element__SWIG_0(long jarg1, AssignmentIntContainer jarg1_, long jarg2, IntVar jarg2_);
  public final static native long AssignmentIntContainer_mutableElement__SWIG_1(long jarg1, AssignmentIntContainer jarg1_, int jarg2);
  public final static native long AssignmentIntContainer_element__SWIG_1(long jarg1, AssignmentIntContainer jarg1_, int jarg2);
  public final static native int AssignmentIntContainer_size(long jarg1, AssignmentIntContainer jarg1_);
  public final static native void AssignmentIntContainer_store(long jarg1, AssignmentIntContainer jarg1_);
  public final static native void AssignmentIntContainer_restore(long jarg1, AssignmentIntContainer jarg1_);
  public final static native boolean AssignmentIntContainer_AreAllElementsBound(long jarg1, AssignmentIntContainer jarg1_);
  public final static native void delete_AssignmentIntContainer(long jarg1);
  public final static native long new_AssignmentIntervalContainer();
  public final static native long AssignmentIntervalContainer_add(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long AssignmentIntervalContainer_fastAdd(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long AssignmentIntervalContainer_addAtPosition(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_, int jarg3);
  public final static native void AssignmentIntervalContainer_clear(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native void AssignmentIntervalContainer_resize(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2);
  public final static native boolean AssignmentIntervalContainer_empty(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native void AssignmentIntervalContainer_copyIntersection(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, AssignmentIntervalContainer jarg2_);
  public final static native void AssignmentIntervalContainer_copy(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, AssignmentIntervalContainer jarg2_);
  public final static native boolean AssignmentIntervalContainer_contains(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long AssignmentIntervalContainer_mutableElement__SWIG_0(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long AssignmentIntervalContainer_element__SWIG_0(long jarg1, AssignmentIntervalContainer jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native long AssignmentIntervalContainer_mutableElement__SWIG_1(long jarg1, AssignmentIntervalContainer jarg1_, int jarg2);
  public final static native long AssignmentIntervalContainer_element__SWIG_1(long jarg1, AssignmentIntervalContainer jarg1_, int jarg2);
  public final static native int AssignmentIntervalContainer_size(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native void AssignmentIntervalContainer_store(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native void AssignmentIntervalContainer_restore(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native boolean AssignmentIntervalContainer_AreAllElementsBound(long jarg1, AssignmentIntervalContainer jarg1_);
  public final static native void delete_AssignmentIntervalContainer(long jarg1);
  public final static native long new_AssignmentSequenceContainer();
  public final static native long AssignmentSequenceContainer_add(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long AssignmentSequenceContainer_fastAdd(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long AssignmentSequenceContainer_addAtPosition(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_, int jarg3);
  public final static native void AssignmentSequenceContainer_clear(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native void AssignmentSequenceContainer_resize(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2);
  public final static native boolean AssignmentSequenceContainer_empty(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native void AssignmentSequenceContainer_copyIntersection(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, AssignmentSequenceContainer jarg2_);
  public final static native void AssignmentSequenceContainer_copy(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, AssignmentSequenceContainer jarg2_);
  public final static native boolean AssignmentSequenceContainer_contains(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long AssignmentSequenceContainer_mutableElement__SWIG_0(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long AssignmentSequenceContainer_element__SWIG_0(long jarg1, AssignmentSequenceContainer jarg1_, long jarg2, SequenceVar jarg2_);
  public final static native long AssignmentSequenceContainer_mutableElement__SWIG_1(long jarg1, AssignmentSequenceContainer jarg1_, int jarg2);
  public final static native long AssignmentSequenceContainer_element__SWIG_1(long jarg1, AssignmentSequenceContainer jarg1_, int jarg2);
  public final static native int AssignmentSequenceContainer_size(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native void AssignmentSequenceContainer_store(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native void AssignmentSequenceContainer_restore(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native boolean AssignmentSequenceContainer_AreAllElementsBound(long jarg1, AssignmentSequenceContainer jarg1_);
  public final static native void delete_AssignmentSequenceContainer(long jarg1);
  public final static native long new_RoutingIndexManager__SWIG_0(int jarg1, int jarg2, int jarg3);
  public final static native long new_RoutingIndexManager__SWIG_1(int jarg1, int jarg2, int[] jarg3, int[] jarg4);
  public final static native void delete_RoutingIndexManager(long jarg1);
  public final static native int RoutingIndexManager_getNumberOfNodes(long jarg1, RoutingIndexManager jarg1_);
  public final static native int RoutingIndexManager_getNumberOfVehicles(long jarg1, RoutingIndexManager jarg1_);
  public final static native int RoutingIndexManager_getNumberOfIndices(long jarg1, RoutingIndexManager jarg1_);
  public final static native long RoutingIndexManager_getStartIndex(long jarg1, RoutingIndexManager jarg1_, int jarg2);
  public final static native long RoutingIndexManager_getEndIndex(long jarg1, RoutingIndexManager jarg1_, int jarg2);
  public final static native long RoutingIndexManager_nodeToIndex(long jarg1, RoutingIndexManager jarg1_, int jarg2);
  public final static native long[] RoutingIndexManager_nodesToIndices(long jarg1, RoutingIndexManager jarg1_, int[] jarg2);
  public final static native int RoutingIndexManager_indexToNode(long jarg1, RoutingIndexManager jarg1_, long jarg2);
  public final static native byte[] defaultRoutingModelParameters();
  public final static native byte[] defaultRoutingSearchParameters();
  public final static native String findErrorInRoutingSearchParameters(byte[] jarg1);
  public final static native int RoutingModel_ROUTING_NOT_SOLVED_get();
  public final static native int RoutingModel_ROUTING_SUCCESS_get();
  public final static native int RoutingModel_ROUTING_FAIL_get();
  public final static native int RoutingModel_ROUTING_FAIL_TIMEOUT_get();
  public final static native int RoutingModel_ROUTING_INVALID_get();
  public final static native int RoutingModel_PICKUP_AND_DELIVERY_NO_ORDER_get();
  public final static native int RoutingModel_PICKUP_AND_DELIVERY_LIFO_get();
  public final static native int RoutingModel_PICKUP_AND_DELIVERY_FIFO_get();
  public final static native long RoutingModel_kNoPenalty_get();
  public final static native int RoutingModel_kNoDisjunction_get();
  public final static native int RoutingModel_kNoDimension_get();
  public final static native long new_RoutingModel__SWIG_0(long jarg1, RoutingIndexManager jarg1_);
  public final static native long new_RoutingModel__SWIG_1(long jarg1, RoutingIndexManager jarg1_, byte[] jarg2);
  public final static native void delete_RoutingModel(long jarg1);
  public final static native int RoutingModel_registerUnaryTransitCallback(long jarg1, RoutingModel jarg1_, LongUnaryOperator jarg2);
  public final static native int RoutingModel_RegisterPositiveUnaryTransitCallback(long jarg1, RoutingModel jarg1_, LongUnaryOperator jarg2);
  public final static native int RoutingModel_registerTransitCallback(long jarg1, RoutingModel jarg1_, LongBinaryOperator jarg2);
  public final static native int RoutingModel_registerPositiveTransitCallback(long jarg1, RoutingModel jarg1_, LongBinaryOperator jarg2);
  public final static native boolean RoutingModel_addDimension(long jarg1, RoutingModel jarg1_, int jarg2, long jarg3, long jarg4, boolean jarg5, String jarg6);
  public final static native boolean RoutingModel_addDimensionWithVehicleTransits(long jarg1, RoutingModel jarg1_, int[] jarg2, long jarg3, long jarg4, boolean jarg5, String jarg6);
  public final static native boolean RoutingModel_addDimensionWithVehicleCapacity(long jarg1, RoutingModel jarg1_, int jarg2, long jarg3, long[] jarg4, boolean jarg5, String jarg6);
  public final static native boolean RoutingModel_addDimensionWithVehicleTransitAndCapacity(long jarg1, RoutingModel jarg1_, int[] jarg2, long jarg3, long[] jarg4, boolean jarg5, String jarg6);
  public final static native boolean RoutingModel_addConstantDimensionWithSlack(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, long jarg4, boolean jarg5, String jarg6);
  public final static native boolean RoutingModel_addConstantDimension(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, boolean jarg4, String jarg5);
  public final static native boolean RoutingModel_addVectorDimension(long jarg1, RoutingModel jarg1_, long[] jarg2, long jarg3, boolean jarg4, String jarg5);
  public final static native long RoutingModel_MakePathSpansAndTotalSlacks(long jarg1, RoutingModel jarg1_, long jarg2, RoutingDimension jarg2_, IntVar[] jarg3, IntVar[] jarg4);
  public final static native boolean RoutingModel_hasDimension(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native long RoutingModel_getDimensionOrDie(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native long RoutingModel_getMutableDimension(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native void RoutingModel_setPrimaryConstrainedDimension(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native String RoutingModel_getPrimaryConstrainedDimension(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_addDisjunction__SWIG_0(long jarg1, RoutingModel jarg1_, long[] jarg2, long jarg3, long jarg4);
  public final static native int RoutingModel_addDisjunction__SWIG_1(long jarg1, RoutingModel jarg1_, long[] jarg2, long jarg3);
  public final static native int RoutingModel_addDisjunction__SWIG_2(long jarg1, RoutingModel jarg1_, long[] jarg2);
  public final static native int[] RoutingModel_getDisjunctionIndices__SWIG_0(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native long[] RoutingModel_getDisjunctionIndices__SWIG_1(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_getDisjunctionPenalty(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_getDisjunctionMaxCardinality(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native int RoutingModel_getNumberOfDisjunctions(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_ignoreDisjunctionsAlreadyForcedToZero(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_addSoftSameVehicleConstraint(long jarg1, RoutingModel jarg1_, long[] jarg2, long jarg3);
  public final static native void RoutingModel_setAllowedVehiclesForIndex(long jarg1, RoutingModel jarg1_, int[] jarg2, long jarg3);
  public final static native boolean RoutingModel_isVehicleAllowedForIndex(long jarg1, RoutingModel jarg1_, int jarg2, long jarg3);
  public final static native void RoutingModel_addPickupAndDelivery(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3);
  public final static native void RoutingModel_addPickupAndDeliverySets(long jarg1, RoutingModel jarg1_, int jarg2, int jarg3);
  public final static native void RoutingModel_setPickupAndDeliveryPolicyOfAllVehicles(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native void RoutingModel_setPickupAndDeliveryPolicyOfVehicle(long jarg1, RoutingModel jarg1_, int jarg2, int jarg3);
  public final static native int RoutingModel_getPickupAndDeliveryPolicyOfVehicle(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native int RoutingModel_getNumOfSingletonNodes(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_TYPE_ADDED_TO_VEHICLE_get();
  public final static native int RoutingModel_ADDED_TYPE_REMOVED_FROM_VEHICLE_get();
  public final static native int RoutingModel_TYPE_ON_VEHICLE_UP_TO_VISIT_get();
  public final static native int RoutingModel_TYPE_SIMULTANEOUSLY_ADDED_AND_REMOVED_get();
  public final static native void RoutingModel_setVisitType(long jarg1, RoutingModel jarg1_, long jarg2, int jarg3, int jarg4);
  public final static native int RoutingModel_getVisitType(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native int RoutingModel_GetVisitTypePolicy(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native int RoutingModel_getNumberOfVisitTypes(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_AddRequiredTypeAlternativesWhenAddingType(long jarg1, RoutingModel jarg1_, int jarg2, long jarg3);
  public final static native void RoutingModel_AddRequiredTypeAlternativesWhenRemovingType(long jarg1, RoutingModel jarg1_, int jarg2, long jarg3);
  public final static native long RoutingModel_GetRequiredTypeAlternativesWhenAddingType(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_GetRequiredTypeAlternativesWhenRemovingType(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_unperformedPenalty(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native long RoutingModel_unperformedPenaltyOrValue(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3);
  public final static native long RoutingModel_getDepot(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_setArcCostEvaluatorOfAllVehicles(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native void RoutingModel_setArcCostEvaluatorOfVehicle(long jarg1, RoutingModel jarg1_, int jarg2, int jarg3);
  public final static native void RoutingModel_setFixedCostOfAllVehicles(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native void RoutingModel_setFixedCostOfVehicle(long jarg1, RoutingModel jarg1_, long jarg2, int jarg3);
  public final static native long RoutingModel_getFixedCostOfVehicle(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native void RoutingModel_setAmortizedCostFactorsOfAllVehicles(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3);
  public final static native void RoutingModel_setAmortizedCostFactorsOfVehicle(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, int jarg4);
  public final static native long[] RoutingModel_getAmortizedLinearCostFactorOfVehicles(long jarg1, RoutingModel jarg1_);
  public final static native long[] RoutingModel_getAmortizedQuadraticCostFactorOfVehicles(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_ConsiderEmptyRouteCostsForVehicle(long jarg1, RoutingModel jarg1_, boolean jarg2, int jarg3);
  public final static native boolean RoutingModel_AreEmptyRouteCostsConsideredForVehicle(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native void RoutingModel_setFirstSolutionEvaluator(long jarg1, RoutingModel jarg1_, LongBinaryOperator jarg2);
  public final static native void RoutingModel_addLocalSearchOperator(long jarg1, RoutingModel jarg1_, long jarg2, LocalSearchOperator jarg2_);
  public final static native void RoutingModel_addSearchMonitor(long jarg1, RoutingModel jarg1_, long jarg2, SearchMonitor jarg2_);
  public final static native void RoutingModel_addAtSolutionCallback(long jarg1, RoutingModel jarg1_, Runnable jarg2);
  public final static native void RoutingModel_addVariableMinimizedByFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, IntVar jarg2_);
  public final static native void RoutingModel_addVariableMaximizedByFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, IntVar jarg2_);
  public final static native void RoutingModel_AddWeightedVariableMinimizedByFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void RoutingModel_AddVariableTargetToFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, IntVar jarg2_, long jarg3);
  public final static native void RoutingModel_closeModel(long jarg1, RoutingModel jarg1_);
  public final static native void RoutingModel_closeModelWithParameters(long jarg1, RoutingModel jarg1_, byte[] jarg2);
  public final static native long RoutingModel_solve__SWIG_0(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_);
  public final static native long RoutingModel_solve__SWIG_1(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_solveWithParameters(long jarg1, RoutingModel jarg1_, byte[] jarg2);
  public final static native long RoutingModel_solveFromAssignmentWithParameters(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, byte[] jarg3);
  public final static native void RoutingModel_setAssignmentFromOtherModelAssignment(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, long jarg3, RoutingModel jarg3_, long jarg4, Assignment jarg4_);
  public final static native long RoutingModel_computeLowerBound(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_status(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_applyLocks(long jarg1, RoutingModel jarg1_, long[] jarg2);
  public final static native boolean RoutingModel_applyLocksToAllVehicles(long jarg1, RoutingModel jarg1_, long[][] jarg2, boolean jarg3);
  public final static native long RoutingModel_preAssignment(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_mutablePreAssignment(long jarg1, RoutingModel jarg1_);
  public final static native boolean RoutingModel_writeAssignment(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native long RoutingModel_readAssignment(long jarg1, RoutingModel jarg1_, String jarg2);
  public final static native long RoutingModel_restoreAssignment(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_);
  public final static native long RoutingModel_readAssignmentFromRoutes(long jarg1, RoutingModel jarg1_, long[][] jarg2, boolean jarg3);
  public final static native boolean RoutingModel_routesToAssignment(long jarg1, RoutingModel jarg1_, long[][] jarg2, boolean jarg3, boolean jarg4, long jarg5, Assignment jarg5_);
  public final static native void RoutingModel_assignmentToRoutes(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, long[][] jarg3);
  public final static native long RoutingModel_compactAssignment(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_);
  public final static native long RoutingModel_compactAndCheckAssignment(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_);
  public final static native void RoutingModel_addToAssignment(long jarg1, RoutingModel jarg1_, long jarg2, IntVar jarg2_);
  public final static native void RoutingModel_addIntervalToAssignment(long jarg1, RoutingModel jarg1_, long jarg2, IntervalVar jarg2_);
  public final static native void RoutingModel_addLocalSearchFilter(long jarg1, RoutingModel jarg1_, long jarg2, LocalSearchFilter jarg2_);
  public final static native long RoutingModel_start(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_end(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native boolean RoutingModel_isStart(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native boolean RoutingModel_isEnd(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native int RoutingModel_VehicleIndex(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_next(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, long jarg3);
  public final static native boolean RoutingModel_isVehicleUsed(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, int jarg3);
  public final static native IntVar[] RoutingModel_nexts(long jarg1, RoutingModel jarg1_);
  public final static native IntVar[] RoutingModel_vehicleVars(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_nextVar(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native long RoutingModel_activeVar(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native long RoutingModel_VehicleCostsConsideredVar(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native long RoutingModel_vehicleVar(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native long RoutingModel_costVar(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_getArcCostForVehicle(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native boolean RoutingModel_costsAreHomogeneousAcrossVehicles(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_getHomogeneousCost(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3);
  public final static native long RoutingModel_getArcCostForFirstSolution(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3);
  public final static native long RoutingModel_getArcCostForClass(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native int RoutingModel_getCostClassIndexOfVehicle(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native boolean RoutingModel_hasVehicleWithCostClassIndex(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native int RoutingModel_getCostClassesCount(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_getNonZeroCostClassesCount(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_getVehicleClassIndexOfVehicle(long jarg1, RoutingModel jarg1_, long jarg2);
  public final static native int RoutingModel_getVehicleClassesCount(long jarg1, RoutingModel jarg1_);
  public final static native int[] RoutingModel_getSameVehicleIndicesOfIndex(long jarg1, RoutingModel jarg1_, int jarg2);
  public final static native boolean RoutingModel_arcIsMoreConstrainedThanArc(long jarg1, RoutingModel jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native String RoutingModel_debugOutputAssignment(long jarg1, RoutingModel jarg1_, long jarg2, Assignment jarg2_, String jarg3);
  public final static native long RoutingModel_solver(long jarg1, RoutingModel jarg1_);
  public final static native boolean RoutingModel_checkLimit(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_nodes(long jarg1, RoutingModel jarg1_);
  public final static native int RoutingModel_vehicles(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_size(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_getNumberOfDecisionsInFirstSolution(long jarg1, RoutingModel jarg1_, byte[] jarg2);
  public final static native long RoutingModel_getNumberOfRejectsInFirstSolution(long jarg1, RoutingModel jarg1_, byte[] jarg2);
  public final static native boolean RoutingModel_isMatchingModel(long jarg1, RoutingModel jarg1_);
  public final static native long RoutingModel_makeGuidedSlackFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, RoutingDimension jarg2_, LongUnaryOperator jarg3);
  public final static native long RoutingModel_makeSelfDependentDimensionFinalizer(long jarg1, RoutingModel jarg1_, long jarg2, RoutingDimension jarg2_);
  public final static native void RoutingModel_addMatrixDimension(long jarg1, RoutingModel jarg1_, long[][] jarg2, long jarg3, boolean jarg4, String jarg5);
  public final static native String RoutingModelVisitor_kLightElement_get();
  public final static native String RoutingModelVisitor_kLightElement2_get();
  public final static native String RoutingModelVisitor_kRemoveValues_get();
  public final static native long new_RoutingModelVisitor();
  public final static native void delete_RoutingModelVisitor(long jarg1);
  public final static native long new_GlobalVehicleBreaksConstraint(long jarg1, RoutingDimension jarg1_);
  public final static native String GlobalVehicleBreaksConstraint_toString(long jarg1, GlobalVehicleBreaksConstraint jarg1_);
  public final static native void GlobalVehicleBreaksConstraint_post(long jarg1, GlobalVehicleBreaksConstraint jarg1_);
  public final static native void GlobalVehicleBreaksConstraint_initialPropagate(long jarg1, GlobalVehicleBreaksConstraint jarg1_);
  public final static native void delete_GlobalVehicleBreaksConstraint(long jarg1);
  public final static native void delete_TypeRegulationsChecker(long jarg1);
  public final static native long new_TypeIncompatibilityChecker(long jarg1, RoutingModel jarg1_, boolean jarg2);
  public final static native void delete_TypeIncompatibilityChecker(long jarg1);
  public final static native long new_TypeRequirementChecker(long jarg1, RoutingModel jarg1_);
  public final static native void delete_TypeRequirementChecker(long jarg1);
  public final static native long new_TypeRegulationsConstraint(long jarg1, RoutingModel jarg1_);
  public final static native void TypeRegulationsConstraint_post(long jarg1, TypeRegulationsConstraint jarg1_);
  public final static native void TypeRegulationsConstraint_initialPropagate(long jarg1, TypeRegulationsConstraint jarg1_);
  public final static native void delete_TypeRegulationsConstraint(long jarg1);
  public final static native void delete_RoutingDimension(long jarg1);
  public final static native long RoutingDimension_model(long jarg1, RoutingDimension jarg1_);
  public final static native long RoutingDimension_getTransitValue(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native long RoutingDimension_getTransitValueFromClass(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native long RoutingDimension_cumulVar(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_transitVar(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_fixedTransitVar(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_slackVar(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native IntVar[] RoutingDimension_cumuls(long jarg1, RoutingDimension jarg1_);
  public final static native IntVar[] RoutingDimension_fixed_transits(long jarg1, RoutingDimension jarg1_);
  public final static native IntVar[] RoutingDimension_transits(long jarg1, RoutingDimension jarg1_);
  public final static native IntVar[] RoutingDimension_slacks(long jarg1, RoutingDimension jarg1_);
  public final static native void RoutingDimension_setSpanUpperBoundForVehicle(long jarg1, RoutingDimension jarg1_, long jarg2, int jarg3);
  public final static native void RoutingDimension_setSpanCostCoefficientForVehicle(long jarg1, RoutingDimension jarg1_, long jarg2, int jarg3);
  public final static native void RoutingDimension_setSpanCostCoefficientForAllVehicles(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native void RoutingDimension_setGlobalSpanCostCoefficient(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native void RoutingDimension_setCumulVarSoftUpperBound(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native boolean RoutingDimension_hasCumulVarSoftUpperBound(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_getCumulVarSoftUpperBound(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_getCumulVarSoftUpperBoundCoefficient(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native void RoutingDimension_setCumulVarSoftLowerBound(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native boolean RoutingDimension_hasCumulVarSoftLowerBound(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_getCumulVarSoftLowerBound(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native long RoutingDimension_getCumulVarSoftLowerBoundCoefficient(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native void RoutingDimension_setBreakIntervalsOfVehicle__SWIG_0(long jarg1, RoutingDimension jarg1_, IntervalVar[] jarg2, int jarg3, int jarg4, int jarg5);
  public final static native void RoutingDimension_setBreakIntervalsOfVehicle__SWIG_1(long jarg1, RoutingDimension jarg1_, IntervalVar[] jarg2, int jarg3, long[] jarg4);
  public final static native void RoutingDimension_SetBreakDistanceDurationOfVehicle(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, int jarg4);
  public final static native void RoutingDimension_InitializeBreaks(long jarg1, RoutingDimension jarg1_);
  public final static native boolean RoutingDimension_HasBreakConstraints(long jarg1, RoutingDimension jarg1_);
  public final static native void RoutingDimension_setBreakIntervalsOfVehicle__SWIG_2(long jarg1, RoutingDimension jarg1_, IntervalVar[] jarg2, int jarg3, long[] jarg4, LongBinaryOperator jarg5);
  public final static native IntervalVar[] RoutingDimension_getBreakIntervalsOfVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native int RoutingDimension_GetPreTravelEvaluatorOfVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native int RoutingDimension_GetPostTravelEvaluatorOfVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native long RoutingDimension_base_dimension(long jarg1, RoutingDimension jarg1_);
  public final static native long RoutingDimension_shortestTransitionSlack(long jarg1, RoutingDimension jarg1_, long jarg2);
  public final static native String RoutingDimension_name(long jarg1, RoutingDimension jarg1_);
  public final static native void RoutingDimension_setPickupToDeliveryLimitFunctionForPair(long jarg1, RoutingDimension jarg1_, IntIntToLongFunction jarg2, int jarg3);
  public final static native boolean RoutingDimension_hasPickupToDeliveryLimits(long jarg1, RoutingDimension jarg1_);
  public final static native void RoutingDimension_addNodePrecedence(long jarg1, RoutingDimension jarg1_, long jarg2, long jarg3, long jarg4);
  public final static native long RoutingDimension_getSpanUpperBoundForVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native long RoutingDimension_getSpanCostCoefficientForVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native long RoutingDimension_getGlobalSpanCostCoefficient(long jarg1, RoutingDimension jarg1_);
  public final static native long RoutingDimension_GetGlobalOptimizerOffset(long jarg1, RoutingDimension jarg1_);
  public final static native long RoutingDimension_GetLocalOptimizerOffsetForVehicle(long jarg1, RoutingDimension jarg1_, int jarg2);
  public final static native long makeSetValuesFromTargets(long jarg1, Solver jarg1_, IntVar[] jarg2, long[] jarg3);
  public final static native boolean SolveModelWithSat(long jarg1, RoutingModel jarg1_, byte[] jarg2, long jarg3, Assignment jarg3_, long jarg4, Assignment jarg4_);
  public final static native void delete_BasePathFilter(long jarg1);
  public final static native boolean BasePathFilter_accept(long jarg1, BasePathFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_, long jarg4, long jarg5);
  public final static native void BasePathFilter_onSynchronize(long jarg1, BasePathFilter jarg1_, long jarg2, Assignment jarg2_);
  public final static native long new_CPFeasibilityFilter(long jarg1, RoutingModel jarg1_);
  public final static native void delete_CPFeasibilityFilter(long jarg1);
  public final static native String CPFeasibilityFilter_toString(long jarg1, CPFeasibilityFilter jarg1_);
  public final static native boolean CPFeasibilityFilter_accept(long jarg1, CPFeasibilityFilter jarg1_, long jarg2, Assignment jarg2_, long jarg3, Assignment jarg3_, long jarg4, long jarg5);
  public final static native void CPFeasibilityFilter_onSynchronize(long jarg1, CPFeasibilityFilter jarg1_, long jarg2, Assignment jarg2_);
  public final static native long PropagationBaseObject_SWIGUpcast(long jarg1);
  public final static native long Decision_SWIGUpcast(long jarg1);
  public final static native long DecisionVisitor_SWIGUpcast(long jarg1);
  public final static native long DecisionBuilder_SWIGUpcast(long jarg1);
  public final static native long Demon_SWIGUpcast(long jarg1);
  public final static native long ModelVisitor_SWIGUpcast(long jarg1);
  public final static native long Constraint_SWIGUpcast(long jarg1);
  public final static native long CastConstraint_SWIGUpcast(long jarg1);
  public final static native long SearchMonitor_SWIGUpcast(long jarg1);
  public final static native long IntExpr_SWIGUpcast(long jarg1);
  public final static native long IntVarIterator_SWIGUpcast(long jarg1);
  public final static native long IntVar_SWIGUpcast(long jarg1);
  public final static native long SolutionCollector_SWIGUpcast(long jarg1);
  public final static native long OptimizeVar_SWIGUpcast(long jarg1);
  public final static native long SearchLimit_SWIGUpcast(long jarg1);
  public final static native long RegularLimit_SWIGUpcast(long jarg1);
  public final static native long IntervalVar_SWIGUpcast(long jarg1);
  public final static native long SequenceVar_SWIGUpcast(long jarg1);
  public final static native long IntVarElement_SWIGUpcast(long jarg1);
  public final static native long IntervalVarElement_SWIGUpcast(long jarg1);
  public final static native long SequenceVarElement_SWIGUpcast(long jarg1);
  public final static native long Assignment_SWIGUpcast(long jarg1);
  public final static native long Pack_SWIGUpcast(long jarg1);
  public final static native long DisjunctiveConstraint_SWIGUpcast(long jarg1);
  public final static native long SolutionPool_SWIGUpcast(long jarg1);
  public final static native long BaseIntExpr_SWIGUpcast(long jarg1);
  public final static native long LocalSearchOperator_SWIGUpcast(long jarg1);
  public final static native long IntVarLocalSearchOperatorTemplate_SWIGUpcast(long jarg1);
  public final static native long IntVarLocalSearchOperator_SWIGUpcast(long jarg1);
  public final static native long SequenceVarLocalSearchOperatorTemplate_SWIGUpcast(long jarg1);
  public final static native long SequenceVarLocalSearchOperator_SWIGUpcast(long jarg1);
  public final static native long BaseLns_SWIGUpcast(long jarg1);
  public final static native long ChangeValue_SWIGUpcast(long jarg1);
  public final static native long PathOperator_SWIGUpcast(long jarg1);
  public final static native long LocalSearchFilter_SWIGUpcast(long jarg1);
  public final static native long IntVarLocalSearchFilter_SWIGUpcast(long jarg1);
  public final static native long PropagationMonitor_SWIGUpcast(long jarg1);
  public final static native long LocalSearchMonitor_SWIGUpcast(long jarg1);
  public final static native long BooleanVar_SWIGUpcast(long jarg1);
  public final static native long SymmetryBreaker_SWIGUpcast(long jarg1);
  public final static native long SearchLog_SWIGUpcast(long jarg1);
  public final static native long RoutingModelVisitor_SWIGUpcast(long jarg1);
  public final static native long GlobalVehicleBreaksConstraint_SWIGUpcast(long jarg1);
  public final static native long TypeIncompatibilityChecker_SWIGUpcast(long jarg1);
  public final static native long TypeRequirementChecker_SWIGUpcast(long jarg1);
  public final static native long TypeRegulationsConstraint_SWIGUpcast(long jarg1);
  public final static native long BasePathFilter_SWIGUpcast(long jarg1);
  public final static native long CPFeasibilityFilter_SWIGUpcast(long jarg1);

  public static String SwigDirector_Decision_toString(Decision jself) {
    return jself.toString();
  }
  public static void SwigDirector_Decision_apply(Decision jself, long s) {
    jself.apply((s == 0) ? null : new Solver(s, false));
  }
  public static void SwigDirector_Decision_refute(Decision jself, long s) {
    jself.refute((s == 0) ? null : new Solver(s, false));
  }
  public static void SwigDirector_Decision_accept(Decision jself, long visitor) {
    jself.accept((visitor == 0) ? null : new DecisionVisitor(visitor, false));
  }
  public static String SwigDirector_DecisionVisitor_toString(DecisionVisitor jself) {
    return jself.toString();
  }
  public static void SwigDirector_DecisionVisitor_visitSetVariableValue(DecisionVisitor jself, long var, long value) {
    jself.visitSetVariableValue((var == 0) ? null : new IntVar(var, false), value);
  }
  public static void SwigDirector_DecisionVisitor_visitSplitVariableDomain(DecisionVisitor jself, long var, long value, boolean start_with_lower_half) {
    jself.visitSplitVariableDomain((var == 0) ? null : new IntVar(var, false), value, start_with_lower_half);
  }
  public static void SwigDirector_DecisionVisitor_visitScheduleOrPostpone(DecisionVisitor jself, long var, long est) {
    jself.visitScheduleOrPostpone((var == 0) ? null : new IntervalVar(var, false), est);
  }
  public static void SwigDirector_DecisionVisitor_visitScheduleOrExpedite(DecisionVisitor jself, long var, long est) {
    jself.visitScheduleOrExpedite((var == 0) ? null : new IntervalVar(var, false), est);
  }
  public static void SwigDirector_DecisionVisitor_visitRankFirstInterval(DecisionVisitor jself, long sequence, int index) {
    jself.visitRankFirstInterval((sequence == 0) ? null : new SequenceVar(sequence, false), index);
  }
  public static void SwigDirector_DecisionVisitor_visitRankLastInterval(DecisionVisitor jself, long sequence, int index) {
    jself.visitRankLastInterval((sequence == 0) ? null : new SequenceVar(sequence, false), index);
  }
  public static void SwigDirector_DecisionVisitor_visitUnknownDecision(DecisionVisitor jself) {
    jself.visitUnknownDecision();
  }
  public static String SwigDirector_DecisionBuilder_toString(DecisionBuilder jself) {
    return jself.toString();
  }
  public static long SwigDirector_DecisionBuilder_nextWrap(DecisionBuilder jself, long s) {
    return Decision.getCPtr(jself.nextWrap((s == 0) ? null : new Solver(s, false)));
  }
  public static String SwigDirector_SearchMonitor_toString(SearchMonitor jself) {
    return jself.toString();
  }
  public static void SwigDirector_SearchMonitor_enterSearch(SearchMonitor jself) {
    jself.enterSearch();
  }
  public static void SwigDirector_SearchMonitor_restartSearch(SearchMonitor jself) {
    jself.restartSearch();
  }
  public static void SwigDirector_SearchMonitor_exitSearch(SearchMonitor jself) {
    jself.exitSearch();
  }
  public static void SwigDirector_SearchMonitor_beginNextDecision(SearchMonitor jself, long b) {
    jself.beginNextDecision((b == 0) ? null : new DecisionBuilder(b, false));
  }
  public static void SwigDirector_SearchMonitor_endNextDecision(SearchMonitor jself, long b, long d) {
    jself.endNextDecision((b == 0) ? null : new DecisionBuilder(b, false), (d == 0) ? null : new Decision(d, false));
  }
  public static void SwigDirector_SearchMonitor_applyDecision(SearchMonitor jself, long d) {
    jself.applyDecision((d == 0) ? null : new Decision(d, false));
  }
  public static void SwigDirector_SearchMonitor_refuteDecision(SearchMonitor jself, long d) {
    jself.refuteDecision((d == 0) ? null : new Decision(d, false));
  }
  public static void SwigDirector_SearchMonitor_afterDecision(SearchMonitor jself, long d, boolean apply) {
    jself.afterDecision((d == 0) ? null : new Decision(d, false), apply);
  }
  public static void SwigDirector_SearchMonitor_beginFail(SearchMonitor jself) {
    jself.beginFail();
  }
  public static void SwigDirector_SearchMonitor_endFail(SearchMonitor jself) {
    jself.endFail();
  }
  public static void SwigDirector_SearchMonitor_beginInitialPropagation(SearchMonitor jself) {
    jself.beginInitialPropagation();
  }
  public static void SwigDirector_SearchMonitor_endInitialPropagation(SearchMonitor jself) {
    jself.endInitialPropagation();
  }
  public static boolean SwigDirector_SearchMonitor_acceptSolution(SearchMonitor jself) {
    return jself.acceptSolution();
  }
  public static boolean SwigDirector_SearchMonitor_atSolution(SearchMonitor jself) {
    return jself.atSolution();
  }
  public static void SwigDirector_SearchMonitor_noMoreSolutions(SearchMonitor jself) {
    jself.noMoreSolutions();
  }
  public static boolean SwigDirector_SearchMonitor_localOptimum(SearchMonitor jself) {
    return jself.localOptimum();
  }
  public static boolean SwigDirector_SearchMonitor_acceptDelta(SearchMonitor jself, long delta, long deltadelta) {
    return jself.acceptDelta((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false));
  }
  public static void SwigDirector_SearchMonitor_acceptNeighbor(SearchMonitor jself) {
    jself.acceptNeighbor();
  }
  public static void SwigDirector_SearchMonitor_AcceptUncheckedNeighbor(SearchMonitor jself) {
    jself.AcceptUncheckedNeighbor();
  }
  public static boolean SwigDirector_SearchMonitor_IsUncheckedSolutionLimitReached(SearchMonitor jself) {
    return jself.IsUncheckedSolutionLimitReached();
  }
  public static void SwigDirector_SearchMonitor_periodicCheck(SearchMonitor jself) {
    jself.periodicCheck();
  }
  public static int SwigDirector_SearchMonitor_progressPercent(SearchMonitor jself) {
    return jself.progressPercent();
  }
  public static void SwigDirector_SearchMonitor_accept(SearchMonitor jself, long visitor) {
    jself.accept((visitor == 0) ? null : new ModelVisitor(visitor, false));
  }
  public static void SwigDirector_SearchMonitor_install(SearchMonitor jself) {
    jself.install();
  }
  public static String SwigDirector_LocalSearchOperator_toString(LocalSearchOperator jself) {
    return jself.toString();
  }
  public static boolean SwigDirector_LocalSearchOperator_nextNeighbor(LocalSearchOperator jself, long delta, long deltadelta) {
    return jself.nextNeighbor((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false));
  }
  public static void SwigDirector_LocalSearchOperator_start(LocalSearchOperator jself, long assignment) {
    jself.start((assignment == 0) ? null : new Assignment(assignment, false));
  }
  public static void SwigDirector_LocalSearchOperator_reset(LocalSearchOperator jself) {
    jself.reset();
  }
  public static boolean SwigDirector_LocalSearchOperator_HasFragments(LocalSearchOperator jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_LocalSearchOperator_HoldsDelta(LocalSearchOperator jself) {
    return jself.HoldsDelta();
  }
  public static String SwigDirector_IntVarLocalSearchOperator_toString(IntVarLocalSearchOperator jself) {
    return jself.toString();
  }
  public static void SwigDirector_IntVarLocalSearchOperator_reset(IntVarLocalSearchOperator jself) {
    jself.reset();
  }
  public static boolean SwigDirector_IntVarLocalSearchOperator_HasFragments(IntVarLocalSearchOperator jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_IntVarLocalSearchOperator_HoldsDelta(IntVarLocalSearchOperator jself) {
    return jself.HoldsDelta();
  }
  public static boolean SwigDirector_IntVarLocalSearchOperator_isIncremental(IntVarLocalSearchOperator jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_IntVarLocalSearchOperator_onStart(IntVarLocalSearchOperator jself) {
    jself.onStart();
  }
  public static boolean SwigDirector_IntVarLocalSearchOperator_oneNeighbor(IntVarLocalSearchOperator jself) {
    return jself.oneNeighbor();
  }
  public static String SwigDirector_SequenceVarLocalSearchOperator_toString(SequenceVarLocalSearchOperator jself) {
    return jself.toString();
  }
  public static boolean SwigDirector_SequenceVarLocalSearchOperator_nextNeighbor(SequenceVarLocalSearchOperator jself, long delta, long deltadelta) {
    return jself.nextNeighbor((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false));
  }
  public static void SwigDirector_SequenceVarLocalSearchOperator_reset(SequenceVarLocalSearchOperator jself) {
    jself.reset();
  }
  public static boolean SwigDirector_SequenceVarLocalSearchOperator_HasFragments(SequenceVarLocalSearchOperator jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_SequenceVarLocalSearchOperator_HoldsDelta(SequenceVarLocalSearchOperator jself) {
    return jself.HoldsDelta();
  }
  public static boolean SwigDirector_SequenceVarLocalSearchOperator_isIncremental(SequenceVarLocalSearchOperator jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_SequenceVarLocalSearchOperator_onStart(SequenceVarLocalSearchOperator jself) {
    jself.onStart();
  }
  public static String SwigDirector_BaseLns_toString(BaseLns jself) {
    return jself.toString();
  }
  public static void SwigDirector_BaseLns_reset(BaseLns jself) {
    jself.reset();
  }
  public static boolean SwigDirector_BaseLns_HasFragments(BaseLns jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_BaseLns_HoldsDelta(BaseLns jself) {
    return jself.HoldsDelta();
  }
  public static boolean SwigDirector_BaseLns_isIncremental(BaseLns jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_BaseLns_initFragments(BaseLns jself) {
    jself.initFragments();
  }
  public static boolean SwigDirector_BaseLns_nextFragment(BaseLns jself) {
    return jself.nextFragment();
  }
  public static String SwigDirector_ChangeValue_toString(ChangeValue jself) {
    return jself.toString();
  }
  public static void SwigDirector_ChangeValue_reset(ChangeValue jself) {
    jself.reset();
  }
  public static boolean SwigDirector_ChangeValue_HasFragments(ChangeValue jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_ChangeValue_HoldsDelta(ChangeValue jself) {
    return jself.HoldsDelta();
  }
  public static boolean SwigDirector_ChangeValue_isIncremental(ChangeValue jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_ChangeValue_onStart(ChangeValue jself) {
    jself.onStart();
  }
  public static boolean SwigDirector_ChangeValue_oneNeighbor(ChangeValue jself) {
    return jself.oneNeighbor();
  }
  public static long SwigDirector_ChangeValue_modifyValue(ChangeValue jself, long index, long value) {
    return jself.modifyValue(index, value);
  }
  public static String SwigDirector_PathOperator_toString(PathOperator jself) {
    return jself.toString();
  }
  public static void SwigDirector_PathOperator_reset(PathOperator jself) {
    jself.reset();
  }
  public static boolean SwigDirector_PathOperator_HasFragments(PathOperator jself) {
    return jself.HasFragments();
  }
  public static boolean SwigDirector_PathOperator_HoldsDelta(PathOperator jself) {
    return jself.HoldsDelta();
  }
  public static boolean SwigDirector_PathOperator_isIncremental(PathOperator jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_PathOperator_onStart(PathOperator jself) {
    jself.onStart();
  }
  public static boolean SwigDirector_PathOperator_oneNeighbor(PathOperator jself) {
    return jself.oneNeighbor();
  }
  public static boolean SwigDirector_PathOperator_neighbor(PathOperator jself) {
    return jself.neighbor();
  }
  public static void SwigDirector_PathOperator_OnNodeInitialization(PathOperator jself) {
    jself.OnNodeInitialization();
  }
  public static boolean SwigDirector_PathOperator_restartAtPathStartOnSynchronize(PathOperator jself) {
    return jself.restartAtPathStartOnSynchronize();
  }
  public static boolean SwigDirector_PathOperator_onSamePathAsPreviousBase(PathOperator jself, long base_index) {
    return jself.onSamePathAsPreviousBase(base_index);
  }
  public static long SwigDirector_PathOperator_getBaseNodeRestartPosition(PathOperator jself, int base_index) {
    return jself.getBaseNodeRestartPosition(base_index);
  }
  public static void SwigDirector_PathOperator_setNextBaseToIncrement(PathOperator jself, long base_index) {
    jself.setNextBaseToIncrement(base_index);
  }
  public static boolean SwigDirector_PathOperator_ConsiderAlternatives(PathOperator jself, long base_index) {
    return jself.ConsiderAlternatives(base_index);
  }
  public static boolean SwigDirector_PathOperator_initPosition(PathOperator jself) {
    return jself.initPosition();
  }
  public static String SwigDirector_LocalSearchFilter_toString(LocalSearchFilter jself) {
    return jself.toString();
  }
  public static void SwigDirector_LocalSearchFilter_Relax(LocalSearchFilter jself, long delta, long deltadelta) {
    jself.Relax((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false));
  }
  public static boolean SwigDirector_LocalSearchFilter_accept(LocalSearchFilter jself, long delta, long deltadelta, long objective_min, long objective_max) {
    return jself.accept((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false), objective_min, objective_max);
  }
  public static boolean SwigDirector_LocalSearchFilter_isIncremental(LocalSearchFilter jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_LocalSearchFilter_synchronize(LocalSearchFilter jself, long assignment, long delta) {
    jself.synchronize((assignment == 0) ? null : new Assignment(assignment, false), (delta == 0) ? null : new Assignment(delta, false));
  }
  public static void SwigDirector_LocalSearchFilter_Revert(LocalSearchFilter jself) {
    jself.Revert();
  }
  public static long SwigDirector_LocalSearchFilter_getSynchronizedObjectiveValue(LocalSearchFilter jself) {
    return jself.getSynchronizedObjectiveValue();
  }
  public static long SwigDirector_LocalSearchFilter_getAcceptedObjectiveValue(LocalSearchFilter jself) {
    return jself.getAcceptedObjectiveValue();
  }
  public static String SwigDirector_IntVarLocalSearchFilter_toString(IntVarLocalSearchFilter jself) {
    return jself.toString();
  }
  public static void SwigDirector_IntVarLocalSearchFilter_Relax(IntVarLocalSearchFilter jself, long delta, long deltadelta) {
    jself.Relax((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false));
  }
  public static boolean SwigDirector_IntVarLocalSearchFilter_accept(IntVarLocalSearchFilter jself, long delta, long deltadelta, long objective_min, long objective_max) {
    return jself.accept((delta == 0) ? null : new Assignment(delta, false), (deltadelta == 0) ? null : new Assignment(deltadelta, false), objective_min, objective_max);
  }
  public static boolean SwigDirector_IntVarLocalSearchFilter_isIncremental(IntVarLocalSearchFilter jself) {
    return jself.isIncremental();
  }
  public static void SwigDirector_IntVarLocalSearchFilter_Revert(IntVarLocalSearchFilter jself) {
    jself.Revert();
  }
  public static long SwigDirector_IntVarLocalSearchFilter_getSynchronizedObjectiveValue(IntVarLocalSearchFilter jself) {
    return jself.getSynchronizedObjectiveValue();
  }
  public static long SwigDirector_IntVarLocalSearchFilter_getAcceptedObjectiveValue(IntVarLocalSearchFilter jself) {
    return jself.getAcceptedObjectiveValue();
  }
  public static void SwigDirector_IntVarLocalSearchFilter_onSynchronize(IntVarLocalSearchFilter jself, long delta) {
    jself.onSynchronize((delta == 0) ? null : new Assignment(delta, false));
  }
  public static String SwigDirector_SymmetryBreaker_toString(SymmetryBreaker jself) {
    return jself.toString();
  }
  public static void SwigDirector_SymmetryBreaker_visitSetVariableValue(SymmetryBreaker jself, long var, long value) {
    jself.visitSetVariableValue((var == 0) ? null : new IntVar(var, false), value);
  }
  public static void SwigDirector_SymmetryBreaker_visitSplitVariableDomain(SymmetryBreaker jself, long var, long value, boolean start_with_lower_half) {
    jself.visitSplitVariableDomain((var == 0) ? null : new IntVar(var, false), value, start_with_lower_half);
  }
  public static void SwigDirector_SymmetryBreaker_visitScheduleOrPostpone(SymmetryBreaker jself, long var, long est) {
    jself.visitScheduleOrPostpone((var == 0) ? null : new IntervalVar(var, false), est);
  }
  public static void SwigDirector_SymmetryBreaker_visitScheduleOrExpedite(SymmetryBreaker jself, long var, long est) {
    jself.visitScheduleOrExpedite((var == 0) ? null : new IntervalVar(var, false), est);
  }
  public static void SwigDirector_SymmetryBreaker_visitRankFirstInterval(SymmetryBreaker jself, long sequence, int index) {
    jself.visitRankFirstInterval((sequence == 0) ? null : new SequenceVar(sequence, false), index);
  }
  public static void SwigDirector_SymmetryBreaker_visitRankLastInterval(SymmetryBreaker jself, long sequence, int index) {
    jself.visitRankLastInterval((sequence == 0) ? null : new SequenceVar(sequence, false), index);
  }
  public static void SwigDirector_SymmetryBreaker_visitUnknownDecision(SymmetryBreaker jself) {
    jself.visitUnknownDecision();
  }

  private final static native void swig_module_init();
  static {
    swig_module_init();
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy