text: var isObject = require('../internals/is-object');
  var setPrototypeOf = require('../internals/object-set-prototype-of');
  
  // makes subclassing work correct for wrapped built-ins
  module.exports = function($this, dummy, Wrapper) {
      var NewTarget, NewTargetPrototype;
      if (
          // it can work only with native `setPrototypeOf`
          setPrototypeOf &&
          // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
          typeof(NewTarget = dummy.constructor) == 'function' &&
          NewTarget !== Wrapper &&
          isObject(NewTargetPrototype = NewTarget.prototype) &&
          NewTargetPrototype !== Wrapper.prototype
      ) setPrototypeOf($this, NewTargetPrototype);
      return $this;
  };