code: function baseMerge(object, source, srcIndex, customizer, stack) {
    if (object === source) {
      return;
    }
    _baseFor(source, function(srcValue, key) {
      if (isObject_1(srcValue)) {
        stack || (stack = new _Stack);
        _baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
      }
      else {
        var newValue = customizer
          ? customizer(object[key], srcValue, (key + ''), object, source, stack)
          : undefined;
  
        if (newValue === undefined) {
          newValue = srcValue;
        }
        _assignMergeValue(object, key, newValue);
      }
    }, keysIn_1);
  }
docs: The base implementation of `_.merge` without support for multiple sources.
  
  @private
  @param {Object} object The destination object.
  @param {Object} source The source object.
  @param {number} srcIndex The index of `source`.
  @param {Function} [customizer] The function to customize merged values.
  @param {Object} [stack] Tracks traversed source values and their merged
  counterparts.