| 21274 | if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!'); |
| 21275 | var tag = uid(arguments.length > 0 ? arguments[0] : undefined); |
| 21276 | var $set = function $set(value) { |
| 21277 | if (this === ObjectProto) $set.call(OPSymbols, value); |
| 21278 | if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; |
| 21279 | setSymbolDesc(this, tag, createDesc(1, value)); |
| 21280 | }; |
| 21281 | if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set }); |
| 21282 | return wrap(tag); |
| 21283 | }; |