import { __module as callBind } from "../../_virtual/index15.js";
import { __require as requireSetFunctionLength } from "../set-function-length/index.js";
import { __require as requireEsDefineProperty } from "../es-define-property/index.js";
import { __require as requireCallBindApplyHelpers } from "../call-bind-apply-helpers/index.js";
import { __require as requireApplyBind } from "../call-bind-apply-helpers/applyBind.js";
var hasRequiredCallBind;
function requireCallBind() {
  if (hasRequiredCallBind) return callBind.exports;
  hasRequiredCallBind = 1;
  (function(module) {
    var setFunctionLength = requireSetFunctionLength();
    var $defineProperty = requireEsDefineProperty();
    var callBindBasic = requireCallBindApplyHelpers();
    var applyBind = requireApplyBind();
    module.exports = function callBind2(originalFunction) {
      var func = callBindBasic(arguments);
      var adjustedLength = originalFunction.length - (arguments.length - 1);
      return setFunctionLength(
        func,
        1 + (adjustedLength > 0 ? adjustedLength : 0),
        true
      );
    };
    if ($defineProperty) {
      $defineProperty(module.exports, "apply", { value: applyBind });
    } else {
      module.exports.apply = applyBind;
    }
  })(callBind);
  return callBind.exports;
}
export {
  requireCallBind as __require
};
