///////////////////////////////////////////////////////////////////////////////////////////
        ///////////////////////////////////////////////////////////////////////////////////////////

        public UnassignOrdersOperation(SolverContext context,
                                       Schedule schedule,
                                       UnassignOrdersParams inputParams,
                                       SolveOptions options)
            : base(context, schedule, options)
        {
            Debug.Assert(inputParams != null);
            _inputParams = inputParams;
        }
        public UnassignOrdersOperation(SolverContext context,
                                       Schedule schedule,
                                       UnassignOrdersParams inputParams,
                                       SolveOptions options,
                                       SolveRequestData reqData,
                                       List <Violation> violations)
            : base(context, schedule, options)
        {
            Debug.Assert(inputParams != null);
            Debug.Assert(reqData != null);
            Debug.Assert(violations != null);

            _inputParams = inputParams;
            _reqData     = reqData;
            _violations  = violations;
        }