docs: function FactorInstantiator() {
    var Ctor = getFactorConstructor.apply(this, arguments);
    var argsWithContext = Array.prototype.slice.call(arguments);
  
    // Adds an initial parameter. It will be the function context (this)
    // for the bind call. It does not matter because `new` overwrites, it,
    // however, so we're just setting it to null here for syntactic reasons.
    argsWithContext.unshift(null);
  
    return new (Ctor.bind.apply(Ctor, argsWithContext))();
  }