docs: function set() {
      function Set() {}
      var ret = new Set();
      var arg, i, len;
  
      for(i = 0, len = arguments.length; i < len; i++) {
          arg = arguments[i];
  
          if(arg.constructor.name == 'Set') Object.keys(arg).filter(
              not(prop.bind(undefined, ret))
          ).forEach(addElem.bind(undefined, ret));
          else if(!(arg in ret)) addElem(ret, arg);
      }
  
      return Object.preventExtensions(ret);
  }