UNPKG

@libp2p/interface-stream-muxer-compliance-tests

Version:
4 lines 138 kB
(function (root, factory) {(typeof module === 'object' && module.exports) ? module.exports = factory() : root.Libp2PInterfaceStreamMuxerComplianceTests = factory()}(typeof self !== 'undefined' ? self : this, function () { "use strict";var Libp2PInterfaceStreamMuxerComplianceTests=(()=>{var ki=Object.create;var At=Object.defineProperty;var Fi=Object.getOwnPropertyDescriptor;var zi=Object.getOwnPropertyNames;var Bi=Object.getPrototypeOf,Li=Object.prototype.hasOwnProperty;var Et=(n=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(n,{get:(t,e)=>(typeof require<"u"?require:t)[e]}):n)(function(n){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+n+'" is not supported')});var z=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),de=(n,t)=>{for(var e in t)At(n,e,{get:t[e],enumerable:!0})},Br=(n,t,e,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of zi(t))!Li.call(n,r)&&r!==e&&At(n,r,{get:()=>t[r],enumerable:!(a=Fi(t,r))||a.enumerable});return n};var De=(n,t,e)=>(e=n!=null?ki(Bi(n)):{},Br(t||!n||!n.__esModule?At(e,"default",{value:n,enumerable:!0}):e,n)),Ui=n=>Br(At({},"__esModule",{value:!0}),n);var Lt=z((vu,Ur)=>{function Lr(){var n=[].slice.call(arguments);function t(e,a){Object.keys(a).forEach(function(r){~n.indexOf(r)||(e[r]=a[r])})}return function(){for(var a=[].slice.call(arguments),r=0,i={};r<a.length;r++)t(i,a[r]);return i}}Ur.exports=ke;function ke(n,t,e){var a=Lr("name","message","stack","constructor","toJSON"),r=a(t||{});this.message=n||"Unspecified AssertionError",this.showDiff=!1;for(var i in r)this[i]=r[i];if(e=e||ke,Error.captureStackTrace)Error.captureStackTrace(this,e);else try{throw new Error}catch(o){this.stack=o.stack}}ke.prototype=Object.create(Error.prototype);ke.prototype.name="AssertionError";ke.prototype.constructor=ke;ke.prototype.toJSON=function(n){var t=Lr("constructor","toJSON","stack"),e=t({name:this.name},this);return n!==!1&&this.stack&&(e.stack=this.stack),e}});var Kr=z((xu,$r)=>{"use strict";function Rr(n,t){return typeof n>"u"||n===null?!1:t in Object(n)}function _r(n){var t=n.replace(/([^\\])\[/g,"$1.["),e=t.match(/(\\\.|[^.]+?)+/g);return e.map(function(r){if(r==="constructor"||r==="__proto__"||r==="prototype")return{};var i=/^\[(\d+)\]$/,o=i.exec(r),s=null;return o?s={i:parseFloat(o[1])}:s={p:r.replace(/\\([.[\]])/g,"$1")},s})}function Vr(n,t,e){var a=n,r=null;e=typeof e>"u"?t.length:e;for(var i=0;i<e;i++){var o=t[i];a&&(typeof o.p>"u"?a=a[o.i]:a=a[o.p],i===e-1&&(r=a))}return r}function Vi(n,t,e){for(var a=n,r=e.length,i=null,o=0;o<r;o++){var s=null,u=null;if(i=e[o],o===r-1)s=typeof i.p>"u"?i.i:i.p,a[s]=t;else if(typeof i.p<"u"&&a[i.p])a=a[i.p];else if(typeof i.i<"u"&&a[i.i])a=a[i.i];else{var h=e[o+1];s=typeof i.p>"u"?i.i:i.p,u=typeof h.p>"u"?[]:{},a[s]=u,a=a[s]}}}function Wr(n,t){var e=_r(t),a=e[e.length-1],r={parent:e.length>1?Vr(n,e,e.length-1):n,name:a.p||a.i,value:Vr(n,e)};return r.exists=Rr(r.parent,r.name),r}function Ri(n,t){var e=Wr(n,t);return e.value}function _i(n,t,e){var a=_r(t);return Vi(n,e,a),n}$r.exports={hasProperty:Rr,getPathInfo:Wr,getPathValue:Ri,setPathValue:_i}});var be=z((Su,Gr)=>{Gr.exports=function(t,e,a){var r=t.__flags||(t.__flags=Object.create(null));if(arguments.length===3)r[e]=a;else return r[e]}});var Qr=z((Au,Jr)=>{var Wi=be();Jr.exports=function(t,e){var a=Wi(t,"negate"),r=e[0];return a?!r:r}});var st=z((Ut,Vt)=>{(function(n,t){typeof Ut=="object"&&typeof Vt<"u"?Vt.exports=t():typeof define=="function"&&define.amd?define(t):n.typeDetect=t()})(Ut,function(){"use strict";var n=typeof Promise=="function",t=typeof self=="object"?self:globalThis,e=typeof Symbol<"u",a=typeof Map<"u",r=typeof Set<"u",i=typeof WeakMap<"u",o=typeof WeakSet<"u",s=typeof DataView<"u",u=e&&typeof Symbol.iterator<"u",h=e&&typeof Symbol.toStringTag<"u",p=r&&typeof Set.prototype.entries=="function",S=a&&typeof Map.prototype.entries=="function",D=p&&Object.getPrototypeOf(new Set().entries()),C=S&&Object.getPrototypeOf(new Map().entries()),M=u&&typeof Array.prototype[Symbol.iterator]=="function",w=M&&Object.getPrototypeOf([][Symbol.iterator]()),q=u&&typeof String.prototype[Symbol.iterator]=="function",F=q&&Object.getPrototypeOf(""[Symbol.iterator]()),W=8,Q=-1;function Y(m){var E=typeof m;if(E!=="object")return E;if(m===null)return"null";if(m===t)return"global";if(Array.isArray(m)&&(h===!1||!(Symbol.toStringTag in m)))return"Array";if(typeof window=="object"&&window!==null){if(typeof window.location=="object"&&m===window.location)return"Location";if(typeof window.document=="object"&&m===window.document)return"Document";if(typeof window.navigator=="object"){if(typeof window.navigator.mimeTypes=="object"&&m===window.navigator.mimeTypes)return"MimeTypeArray";if(typeof window.navigator.plugins=="object"&&m===window.navigator.plugins)return"PluginArray"}if((typeof window.HTMLElement=="function"||typeof window.HTMLElement=="object")&&m instanceof window.HTMLElement){if(m.tagName==="BLOCKQUOTE")return"HTMLQuoteElement";if(m.tagName==="TD")return"HTMLTableDataCellElement";if(m.tagName==="TH")return"HTMLTableHeaderCellElement"}}var I=h&&m[Symbol.toStringTag];if(typeof I=="string")return I;var L=Object.getPrototypeOf(m);return L===RegExp.prototype?"RegExp":L===Date.prototype?"Date":n&&L===Promise.prototype?"Promise":r&&L===Set.prototype?"Set":a&&L===Map.prototype?"Map":o&&L===WeakSet.prototype?"WeakSet":i&&L===WeakMap.prototype?"WeakMap":s&&L===DataView.prototype?"DataView":a&&L===C?"Map Iterator":r&&L===D?"Set Iterator":M&&L===w?"Array Iterator":q&&L===F?"String Iterator":L===null?"Object":Object.prototype.toString.call(m).slice(W,Q)}return Y})});var Xr=z((Eu,Zr)=>{var $i=Lt(),Rt=be(),Ki=st();Zr.exports=function(t,e){var a=Rt(t,"message"),r=Rt(t,"ssfi");a=a?a+": ":"",t=Rt(t,"object"),e=e.map(function(s){return s.toLowerCase()}),e.sort();var i=e.map(function(s,u){var h=~["a","e","i","o","u"].indexOf(s.charAt(0))?"an":"a",p=e.length>1&&u===e.length-1?"or ":"";return p+h+" "+s}).join(", "),o=Ki(t).toLowerCase();if(!e.some(function(s){return o===s}))throw new $i(a+"object tested must be "+i+", but "+o+" given",void 0,r)}});var _t=z((Pu,Yr)=>{Yr.exports=function(t,e){return e.length>4?e[4]:t._obj}});var Wt=z((Mu,Hr)=>{"use strict";var Gi=Function.prototype.toString,Ji=/\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\s\(\/]+)/;function Qi(n){if(typeof n!="function")return null;var t="";if(typeof Function.prototype.name>"u"&&typeof n.name>"u"){var e=Gi.call(n).match(Ji);e&&(t=e[1])}else t=n.name;return t}Hr.exports=Qi});var en=z(()=>{});var rn=z((Pt,tn)=>{(function(n,t){typeof Pt=="object"&&typeof tn<"u"?t(Pt):typeof define=="function"&&define.amd?define(["exports"],t):(n=typeof globalThis<"u"?globalThis:n||self,t(n.loupe={}))})(Pt,function(n){"use strict";function t(f){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?t=function(l){return typeof l}:t=function(l){return l&&typeof Symbol=="function"&&l.constructor===Symbol&&l!==Symbol.prototype?"symbol":typeof l},t(f)}function e(f,l){return a(f)||r(f,l)||i(f,l)||s()}function a(f){if(Array.isArray(f))return f}function r(f,l){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(f)))){var g=[],O=!0,N=!1,U=void 0;try{for(var K=f[Symbol.iterator](),Z;!(O=(Z=K.next()).done)&&(g.push(Z.value),!(l&&g.length===l));O=!0);}catch(ue){N=!0,U=ue}finally{try{!O&&K.return!=null&&K.return()}finally{if(N)throw U}}return g}}function i(f,l){if(f){if(typeof f=="string")return o(f,l);var g=Object.prototype.toString.call(f).slice(8,-1);if(g==="Object"&&f.constructor&&(g=f.constructor.name),g==="Map"||g==="Set")return Array.from(f);if(g==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(g))return o(f,l)}}function o(f,l){(l==null||l>f.length)&&(l=f.length);for(var g=0,O=new Array(l);g<l;g++)O[g]=f[g];return O}function s(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var u={bold:["1","22"],dim:["2","22"],italic:["3","23"],underline:["4","24"],inverse:["7","27"],hidden:["8","28"],strike:["9","29"],black:["30","39"],red:["31","39"],green:["32","39"],yellow:["33","39"],blue:["34","39"],magenta:["35","39"],cyan:["36","39"],white:["37","39"],brightblack:["30;1","39"],brightred:["31;1","39"],brightgreen:["32;1","39"],brightyellow:["33;1","39"],brightblue:["34;1","39"],brightmagenta:["35;1","39"],brightcyan:["36;1","39"],brightwhite:["37;1","39"],grey:["90","39"]},h={special:"cyan",number:"yellow",bigint:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",symbol:"green",date:"magenta",regexp:"red"},p="\u2026";function S(f,l){var g=u[h[l]]||u[l];return g?"\x1B[".concat(g[0],"m").concat(String(f),"\x1B[").concat(g[1],"m"):String(f)}function D(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},l=f.showHidden,g=l===void 0?!1:l,O=f.depth,N=O===void 0?2:O,U=f.colors,K=U===void 0?!1:U,Z=f.customInspect,ue=Z===void 0?!0:Z,ne=f.showProxy,ye=ne===void 0?!1:ne,Ce=f.maxArrayLength,zt=Ce===void 0?1/0:Ce,nt=f.breakLength,Ge=nt===void 0?1/0:nt,ot=f.seen,Ti=ot===void 0?[]:ot,Fr=f.truncate,Ci=Fr===void 0?1/0:Fr,zr=f.stylize,Di=zr===void 0?String:zr,Bt={showHidden:!!g,depth:Number(N),colors:!!K,customInspect:!!ue,showProxy:!!ye,maxArrayLength:Number(zt),breakLength:Number(Ge),truncate:Number(Ci),seen:Ti,stylize:Di};return Bt.colors&&(Bt.stylize=S),Bt}function C(f,l){var g=arguments.length>2&&arguments[2]!==void 0?arguments[2]:p;f=String(f);var O=g.length,N=f.length;return O>l&&N>O?g:N>l&&N>O?"".concat(f.slice(0,l-O)).concat(g):f}function M(f,l,g){var O=arguments.length>3&&arguments[3]!==void 0?arguments[3]:", ";g=g||l.inspect;var N=f.length;if(N===0)return"";for(var U=l.truncate,K="",Z="",ue="",ne=0;ne<N;ne+=1){var ye=ne+1===f.length,Ce=ne+2===f.length;ue="".concat(p,"(").concat(f.length-ne,")");var zt=f[ne];l.truncate=U-K.length-(ye?0:O.length);var nt=Z||g(zt,l)+(ye?"":O),Ge=K.length+nt.length,ot=Ge+ue.length;if(ye&&Ge>U&&K.length+ue.length<=U||!ye&&!Ce&&ot>U||(Z=ye?"":g(f[ne+1],l)+(Ce?"":O),!ye&&Ce&&ot>U&&Ge+Z.length>U))break;if(K+=nt,!ye&&!Ce&&Ge+Z.length>=U){ue="".concat(p,"(").concat(f.length-ne-1,")");break}ue=""}return"".concat(K).concat(ue)}function w(f){return f.match(/^[a-zA-Z_][a-zA-Z_0-9]*$/)?f:JSON.stringify(f).replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'")}function q(f,l){var g=e(f,2),O=g[0],N=g[1];return l.truncate-=2,typeof O=="string"?O=w(O):typeof O!="number"&&(O="[".concat(l.inspect(O,l),"]")),l.truncate-=O.length,N=l.inspect(N,l),"".concat(O,": ").concat(N)}function F(f,l){var g=Object.keys(f).slice(f.length);if(!f.length&&!g.length)return"[]";l.truncate-=4;var O=M(f,l);l.truncate-=O.length;var N="";return g.length&&(N=M(g.map(function(U){return[U,f[U]]}),l,q)),"[ ".concat(O).concat(N?", ".concat(N):""," ]")}var W=Function.prototype.toString,Q=/\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\s\(\/]+)/;function Y(f){if(typeof f!="function")return null;var l="";if(typeof Function.prototype.name>"u"&&typeof f.name>"u"){var g=W.call(f).match(Q);g&&(l=g[1])}else l=f.name;return l}var m=Y,E=function(l){return typeof Buffer=="function"&&l instanceof Buffer?"Buffer":l[Symbol.toStringTag]?l[Symbol.toStringTag]:m(l.constructor)};function I(f,l){var g=E(f);l.truncate-=g.length+4;var O=Object.keys(f).slice(f.length);if(!f.length&&!O.length)return"".concat(g,"[]");for(var N="",U=0;U<f.length;U++){var K="".concat(l.stylize(C(f[U],l.truncate),"number")).concat(U===f.length-1?"":", ");if(l.truncate-=K.length,f[U]!==f.length&&l.truncate<=3){N+="".concat(p,"(").concat(f.length-f[U]+1,")");break}N+=K}var Z="";return O.length&&(Z=M(O.map(function(ue){return[ue,f[ue]]}),l,q)),"".concat(g,"[ ").concat(N).concat(Z?", ".concat(Z):""," ]")}function L(f,l){var g=f.toJSON();if(g===null)return"Invalid Date";var O=g.split("T"),N=O[0];return l.stylize("".concat(N,"T").concat(C(O[1],l.truncate-N.length-1)),"date")}function H(f,l){var g=m(f);return g?l.stylize("[Function ".concat(C(g,l.truncate-11),"]"),"special"):l.stylize("[Function]","special")}function xe(f,l){var g=e(f,2),O=g[0],N=g[1];return l.truncate-=4,O=l.inspect(O,l),l.truncate-=O.length,N=l.inspect(N,l),"".concat(O," => ").concat(N)}function se(f){var l=[];return f.forEach(function(g,O){l.push([O,g])}),l}function $e(f,l){var g=f.size-1;return g<=0?"Map{}":(l.truncate-=7,"Map{ ".concat(M(se(f),l,xe)," }"))}var he=Number.isNaN||function(f){return f!==f};function we(f,l){return he(f)?l.stylize("NaN","number"):f===1/0?l.stylize("Infinity","number"):f===-1/0?l.stylize("-Infinity","number"):f===0?l.stylize(1/f===1/0?"+0":"-0","number"):l.stylize(C(f,l.truncate),"number")}function me(f,l){var g=C(f.toString(),l.truncate-1);return g!==p&&(g+="n"),l.stylize(g,"bigint")}function Te(f,l){var g=f.toString().split("/")[2],O=l.truncate-(2+g.length),N=f.source;return l.stylize("/".concat(C(N,O),"/").concat(g),"regexp")}function gt(f){var l=[];return f.forEach(function(g){l.push(g)}),l}function kt(f,l){return f.size===0?"Set{}":(l.truncate-=7,"Set{ ".concat(M(gt(f),l)," }"))}var c=new RegExp("['\\u0000-\\u001f\\u007f-\\u009f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]","g"),d={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","'":"\\'","\\":"\\\\"},b=16,v=4;function A(f){return d[f]||"\\u".concat("0000".concat(f.charCodeAt(0).toString(b)).slice(-v))}function P(f,l){return c.test(f)&&(f=f.replace(c,A)),l.stylize("'".concat(C(f,l.truncate-2),"'"),"string")}function x(f){return"description"in Symbol.prototype?f.description?"Symbol(".concat(f.description,")"):"Symbol()":f.toString()}var y=function(){return"Promise{\u2026}"};try{var j=process.binding("util"),T=j.getPromiseDetails,_=j.kPending,J=j.kRejected;Array.isArray(T(Promise.resolve()))&&(y=function(l,g){var O=T(l),N=e(O,2),U=N[0],K=N[1];return U===_?"Promise{<pending>}":"Promise".concat(U===J?"!":"","{").concat(g.inspect(K,g),"}")})}catch{}var V=y;function k(f,l){var g=Object.getOwnPropertyNames(f),O=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(f):[];if(g.length===0&&O.length===0)return"{}";if(l.truncate-=4,l.seen=l.seen||[],l.seen.indexOf(f)>=0)return"[Circular]";l.seen.push(f);var N=M(g.map(function(Z){return[Z,f[Z]]}),l,q),U=M(O.map(function(Z){return[Z,f[Z]]}),l,q);l.seen.pop();var K="";return N&&U&&(K=", "),"{ ".concat(N).concat(K).concat(U," }")}var $=typeof Symbol<"u"&&Symbol.toStringTag?Symbol.toStringTag:!1;function te(f,l){var g="";return $&&$ in f&&(g=f[$]),g=g||m(f.constructor),(!g||g==="_class")&&(g="<Anonymous Class>"),l.truncate-=g.length,"".concat(g).concat(k(f,l))}function ae(f,l){return f.length===0?"Arguments[]":(l.truncate-=13,"Arguments[ ".concat(M(f,l)," ]"))}var re=["stack","line","column","name","message","fileName","lineNumber","columnNumber","number","description"];function Ae(f,l){var g=Object.getOwnPropertyNames(f).filter(function(K){return re.indexOf(K)===-1}),O=f.name;l.truncate-=O.length;var N="";typeof f.message=="string"?N=C(f.message,l.truncate):g.unshift("message"),N=N?": ".concat(N):"",l.truncate-=N.length+5;var U=M(g.map(function(K){return[K,f[K]]}),l,q);return"".concat(O).concat(N).concat(U?" { ".concat(U," }"):"")}function Pi(f,l){var g=e(f,2),O=g[0],N=g[1];return l.truncate-=3,N?"".concat(l.stylize(O,"yellow"),"=").concat(l.stylize('"'.concat(N,'"'),"string")):"".concat(l.stylize(O,"yellow"))}function Ft(f,l){return M(f,l,Tr,` `)}function Tr(f,l){var g=f.getAttributeNames(),O=f.tagName.toLowerCase(),N=l.stylize("<".concat(O),"special"),U=l.stylize(">","special"),K=l.stylize("</".concat(O,">"),"special");l.truncate-=O.length*2+5;var Z="";g.length>0&&(Z+=" ",Z+=M(g.map(function(ye){return[ye,f.getAttribute(ye)]}),l,Pi," ")),l.truncate-=Z.length;var ue=l.truncate,ne=Ft(f.children,l);return ne&&ne.length>ue&&(ne="".concat(p,"(").concat(f.children.length,")")),"".concat(N).concat(Z).concat(U).concat(ne).concat(K)}var Mi=typeof Symbol=="function"&&typeof Symbol.for=="function",wt=Mi?Symbol.for("chai/inspect"):"@@chai/inspect",Ke=!1;try{var Cr=en();Ke=Cr.inspect?Cr.inspect.custom:!1}catch{Ke=!1}function Dr(){this.key="chai/loupe__"+Math.random()+Date.now()}Dr.prototype={get:function(l){return l[this.key]},has:function(l){return this.key in l},set:function(l,g){Object.isExtensible(l)&&Object.defineProperty(l,this.key,{value:g,configurable:!0})}};var vt=new(typeof WeakMap=="function"?WeakMap:Dr),xt={},kr={undefined:function(l,g){return g.stylize("undefined","undefined")},null:function(l,g){return g.stylize(null,"null")},boolean:function(l,g){return g.stylize(l,"boolean")},Boolean:function(l,g){return g.stylize(l,"boolean")},number:we,Number:we,bigint:me,BigInt:me,string:P,String:P,function:H,Function:H,symbol:x,Symbol:x,Array:F,Date:L,Map:$e,Set:kt,RegExp:Te,Promise:V,WeakSet:function(l,g){return g.stylize("WeakSet{\u2026}","special")},WeakMap:function(l,g){return g.stylize("WeakMap{\u2026}","special")},Arguments:ae,Int8Array:I,Uint8Array:I,Uint8ClampedArray:I,Int16Array:I,Uint16Array:I,Int32Array:I,Uint32Array:I,Float32Array:I,Float64Array:I,Generator:function(){return""},DataView:function(){return""},ArrayBuffer:function(){return""},Error:Ae,HTMLCollection:Ft,NodeList:Ft},Oi=function(l,g,O){return wt in l&&typeof l[wt]=="function"?l[wt](g):Ke&&Ke in l&&typeof l[Ke]=="function"?l[Ke](g.depth,g):"inspect"in l&&typeof l.inspect=="function"?l.inspect(g.depth,g):"constructor"in l&&vt.has(l.constructor)?vt.get(l.constructor)(l,g):xt[O]?xt[O](l,g):""},ji=Object.prototype.toString;function St(f,l){l=D(l),l.inspect=St;var g=l,O=g.customInspect,N=f===null?"null":t(f);if(N==="object"&&(N=ji.call(f).slice(8,-1)),kr[N])return kr[N](f,l);if(O&&f){var U=Oi(f,l,N);if(U)return typeof U=="string"?U:St(U,l)}var K=f?Object.getPrototypeOf(f):!1;return K===Object.prototype||K===null?k(f,l):f&&typeof HTMLElement=="function"&&f instanceof HTMLElement?Tr(f,l):"constructor"in f?f.constructor!==Object?te(f,l):k(f,l):f===Object(f)?k(f,l):l.stylize(String(f),N)}function qi(f,l){return vt.has(f)?!1:(vt.set(f,l),!0)}function Ni(f,l){return f in xt?!1:(xt[f]=l,!0)}var Ii=wt;n.custom=Ii,n.default=St,n.inspect=St,n.registerConstructor=qi,n.registerStringTag=Ni,Object.defineProperty(n,"__esModule",{value:!0})})});var Fe=z((qu,nn)=>{nn.exports={includeStack:!1,showDiff:!0,truncateThreshold:40,useProxy:!0,proxyExcludedKeys:["then","catch","inspect","toJSON"]}});var Mt=z((Iu,sn)=>{var Nu=Wt(),Zi=rn(),on=Fe();sn.exports=Xi;function Xi(n,t,e,a){var r={colors:a,depth:typeof e>"u"?2:e,showHidden:t,truncate:on.truncateThreshold?on.truncateThreshold:1/0};return Zi.inspect(n,r)}});var $t=z((Tu,un)=>{var Yi=Mt(),an=Fe();un.exports=function(t){var e=Yi(t),a=Object.prototype.toString.call(t);if(an.truncateThreshold&&e.length>=an.truncateThreshold){if(a==="[object Function]")return!t.name||t.name===""?"[Function]":"[Function: "+t.name+"]";if(a==="[object Array]")return"[ Array("+t.length+") ]";if(a==="[object Object]"){var r=Object.keys(t),i=r.length>2?r.splice(0,2).join(", ")+", ...":r.join(", ");return"{ Object ("+i+") }"}else return e}else return e}});var fn=z((Cu,cn)=>{var Kt=be(),Hi=_t(),Gt=$t();cn.exports=function(t,e){var a=Kt(t,"negate"),r=Kt(t,"object"),i=e[3],o=Hi(t,e),s=a?e[2]:e[1],u=Kt(t,"message");return typeof s=="function"&&(s=s()),s=s||"",s=s.replace(/#\{this\}/g,function(){return Gt(r)}).replace(/#\{act\}/g,function(){return Gt(o)}).replace(/#\{exp\}/g,function(){return Gt(i)}),u?u+": "+s:s}});var Oe=z((Du,ln)=>{ln.exports=function(t,e,a){var r=t.__flags||(t.__flags=Object.create(null));e.__flags||(e.__flags=Object.create(null)),a=arguments.length===3?a:!0;for(var i in r)(a||i!=="object"&&i!=="ssfi"&&i!=="lockSsfi"&&i!="message")&&(e.__flags[i]=r[i])}});var An=z((ku,Zt)=>{"use strict";var hn=st();function vn(){this._key="chai/deep-eql__"+Math.random()+Date.now()}vn.prototype={get:function(t){return t[this._key]},set:function(t,e){Object.isExtensible(t)&&Object.defineProperty(t,this._key,{value:e,configurable:!0})}};var Qt=typeof WeakMap=="function"?WeakMap:vn;function dn(n,t,e){if(!e||Qe(n)||Qe(t))return null;var a=e.get(n);if(a){var r=a.get(t);if(typeof r=="boolean")return r}return null}function Ot(n,t,e,a){if(!(!e||Qe(n)||Qe(t))){var r=e.get(n);r?r.set(t,a):(r=new Qt,r.set(t,a),e.set(n,r))}}Zt.exports=jt;Zt.exports.MemoizeMap=Qt;function jt(n,t,e){if(e&&e.comparator)return pn(n,t,e);var a=xn(n,t);return a!==null?a:pn(n,t,e)}function xn(n,t){return n===t?n!==0||1/n===1/t:n!==n&&t!==t?!0:Qe(n)||Qe(t)?!1:null}function pn(n,t,e){e=e||{},e.memoize=e.memoize===!1?!1:e.memoize||new Qt;var a=e&&e.comparator,r=dn(n,t,e.memoize);if(r!==null)return r;var i=dn(t,n,e.memoize);if(i!==null)return i;if(a){var o=a(n,t);if(o===!1||o===!0)return Ot(n,t,e.memoize,o),o;var s=xn(n,t);if(s!==null)return s}var u=hn(n);if(u!==hn(t))return Ot(n,t,e.memoize,!1),!1;Ot(n,t,e.memoize,!0);var h=es(n,t,u,e);return Ot(n,t,e.memoize,h),h}function es(n,t,e,a){switch(e){case"String":case"Number":case"Boolean":case"Date":return jt(n.valueOf(),t.valueOf());case"Promise":case"Symbol":case"function":case"WeakMap":case"WeakSet":return n===t;case"Error":return Sn(n,t,["name","message","code"],a);case"Arguments":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"Array":return ze(n,t,a);case"RegExp":return ts(n,t);case"Generator":return rs(n,t,a);case"DataView":return ze(new Uint8Array(n.buffer),new Uint8Array(t.buffer),a);case"ArrayBuffer":return ze(new Uint8Array(n),new Uint8Array(t),a);case"Set":return mn(n,t,a);case"Map":return mn(n,t,a);case"Temporal.PlainDate":case"Temporal.PlainTime":case"Temporal.PlainDateTime":case"Temporal.Instant":case"Temporal.ZonedDateTime":case"Temporal.PlainYearMonth":case"Temporal.PlainMonthDay":return n.equals(t);case"Temporal.Duration":return n.total("nanoseconds")===t.total("nanoseconds");case"Temporal.TimeZone":case"Temporal.Calendar":return n.toString()===t.toString();default:return os(n,t,a)}}function ts(n,t){return n.toString()===t.toString()}function mn(n,t,e){if(n.size!==t.size)return!1;if(n.size===0)return!0;var a=[],r=[];return n.forEach(function(o,s){a.push([o,s])}),t.forEach(function(o,s){r.push([o,s])}),ze(a.sort(),r.sort(),e)}function ze(n,t,e){var a=n.length;if(a!==t.length)return!1;if(a===0)return!0;for(var r=-1;++r<a;)if(jt(n[r],t[r],e)===!1)return!1;return!0}function rs(n,t,e){return ze(Jt(n),Jt(t),e)}function ns(n){return typeof Symbol<"u"&&typeof n=="object"&&typeof Symbol.iterator<"u"&&typeof n[Symbol.iterator]=="function"}function yn(n){if(ns(n))try{return Jt(n[Symbol.iterator]())}catch{return[]}return[]}function Jt(n){for(var t=n.next(),e=[t.value];t.done===!1;)t=n.next(),e.push(t.value);return e}function bn(n){var t=[];for(var e in n)t.push(e);return t}function gn(n){for(var t=[],e=Object.getOwnPropertySymbols(n),a=0;a<e.length;a+=1){var r=e[a];Object.getOwnPropertyDescriptor(n,r).enumerable&&t.push(r)}return t}function Sn(n,t,e,a){var r=e.length;if(r===0)return!0;for(var i=0;i<r;i+=1)if(jt(n[e[i]],t[e[i]],a)===!1)return!1;return!0}function os(n,t,e){var a=bn(n),r=bn(t),i=gn(n),o=gn(t);if(a=a.concat(i),r=r.concat(o),a.length&&a.length===r.length)return ze(wn(a).sort(),wn(r).sort())===!1?!1:Sn(n,t,a,e);var s=yn(n),u=yn(t);return s.length&&s.length===u.length?(s.sort(),u.sort(),ze(s,u,e)):a.length===0&&s.length===0&&r.length===0&&u.length===0}function Qe(n){return n===null||typeof n!="object"}function wn(n){return n.map(function(e){return typeof e=="symbol"?e.toString():e})}});var at=z((Fu,En)=>{var is=Fe();En.exports=function(){return is.useProxy&&typeof Proxy<"u"&&typeof Reflect<"u"}});var On=z((zu,Mn)=>{var ss=je(),Pn=be(),as=at(),us=Oe();Mn.exports=function(t,e,a){a=a===void 0?function(){}:a,Object.defineProperty(t,e,{get:function r(){!as()&&!Pn(this,"lockSsfi")&&Pn(this,"ssfi",r);var i=a.call(this);if(i!==void 0)return i;var o=new ss.Assertion;return us(this,o),o},configurable:!0})}});var ut=z((Bu,jn)=>{var cs=Object.getOwnPropertyDescriptor(function(){},"length");jn.exports=function(t,e,a){return cs.configurable&&Object.defineProperty(t,"length",{get:function(){throw Error(a?"Invalid Chai property: "+e+'.length. Due to a compatibility issue, "length" cannot directly follow "'+e+'". Use "'+e+'.lengthOf" instead.':"Invalid Chai property: "+e+'.length. See docs for proper usage of "'+e+'".')}}),t}});var Nn=z((Lu,qn)=>{qn.exports=function(t){var e=Object.getOwnPropertyNames(t);function a(i){e.indexOf(i)===-1&&e.push(i)}for(var r=Object.getPrototypeOf(t);r!==null;)Object.getOwnPropertyNames(r).forEach(a),r=Object.getPrototypeOf(r);return e}});var ct=z((Uu,Cn)=>{var fs=Fe(),In=be(),ls=Nn(),hs=at();var Tn=["__flags","__methods","_obj","assert"];Cn.exports=function(t,e){return hs()?new Proxy(t,{get:function a(r,i){if(typeof i=="string"&&fs.proxyExcludedKeys.indexOf(i)===-1&&!Reflect.has(r,i)){if(e)throw Error("Invalid Chai property: "+e+"."+i+'. See docs for proper usage of "'+e+'".');var o=null,s=4;throw ls(r).forEach(function(u){if(!Object.prototype.hasOwnProperty(u)&&Tn.indexOf(u)===-1){var h=ds(i,u,s);h<s&&(o=u,s=h)}}),Error(o!==null?"Invalid Chai property: "+i+'. Did you mean "'+o+'"?':"Invalid Chai property: "+i)}return Tn.indexOf(i)===-1&&!In(r,"lockSsfi")&&In(r,"ssfi",a),Reflect.get(r,i)}}):t};function ds(n,t,e){if(Math.abs(n.length-t.length)>=e)return e;for(var a=[],r=0;r<=n.length;r++)a[r]=Array(t.length+1).fill(0),a[r][0]=r;for(var i=0;i<t.length;i++)a[0][i]=i;for(var r=1;r<=n.length;r++)for(var o=n.charCodeAt(r-1),i=1;i<=t.length;i++){if(Math.abs(r-i)>=e){a[r][i]=e;continue}a[r][i]=Math.min(a[r-1][i]+1,a[r][i-1]+1,a[r-1][i-1]+(o===t.charCodeAt(i-1)?0:1))}return a[n.length][t.length]}});var Fn=z((Vu,kn)=>{var ps=ut(),ms=je(),Dn=be(),ys=ct(),bs=Oe();kn.exports=function(t,e,a){var r=function(){Dn(this,"lockSsfi")||Dn(this,"ssfi",r);var i=a.apply(this,arguments);if(i!==void 0)return i;var o=new ms.Assertion;return bs(this,o),o};ps(r,e,!1),t[e]=ys(r,e)}});var Bn=z((Ru,zn)=>{var gs=je(),ft=be(),ws=at(),vs=Oe();zn.exports=function(t,e,a){var r=Object.getOwnPropertyDescriptor(t,e),i=function(){};r&&typeof r.get=="function"&&(i=r.get),Object.defineProperty(t,e,{get:function o(){!ws()&&!ft(this,"lockSsfi")&&ft(this,"ssfi",o);var s=ft(this,"lockSsfi");ft(this,"lockSsfi",!0);var u=a(i).call(this);if(ft(this,"lockSsfi",s),u!==void 0)return u;var h=new gs.Assertion;return vs(this,h),h},configurable:!0})}});var Un=z((_u,Ln)=>{var xs=ut(),Ss=je(),lt=be(),As=ct(),Es=Oe();Ln.exports=function(t,e,a){var r=t[e],i=function(){throw new Error(e+" is not a function")};r&&typeof r=="function"&&(i=r);var o=function(){lt(this,"lockSsfi")||lt(this,"ssfi",o);var s=lt(this,"lockSsfi");lt(this,"lockSsfi",!0);var u=a(i).apply(this,arguments);if(lt(this,"lockSsfi",s),u!==void 0)return u;var h=new Ss.Assertion;return Es(this,h),h};xs(o,e,!1),t[e]=As(o,e)}});var $n=z((Wu,Wn)=>{var Ps=ut(),Ms=je(),Vn=be(),Os=ct(),Rn=Oe();var js=typeof Object.setPrototypeOf=="function",_n=function(){},qs=Object.getOwnPropertyNames(_n).filter(function(n){var t=Object.getOwnPropertyDescriptor(_n,n);return typeof t!="object"?!0:!t.configurable}),Ns=Function.prototype.call,Is=Function.prototype.apply;Wn.exports=function(t,e,a,r){typeof r!="function"&&(r=function(){});var i={method:a,chainingBehavior:r};t.__methods||(t.__methods={}),t.__methods[e]=i,Object.defineProperty(t,e,{get:function(){i.chainingBehavior.call(this);var s=function(){Vn(this,"lockSsfi")||Vn(this,"ssfi",s);var p=i.method.apply(this,arguments);if(p!==void 0)return p;var S=new Ms.Assertion;return Rn(this,S),S};if(Ps(s,e,!0),js){var u=Object.create(this);u.call=Ns,u.apply=Is,Object.setPrototypeOf(s,u)}else{var h=Object.getOwnPropertyNames(t);h.forEach(function(p){if(qs.indexOf(p)===-1){var S=Object.getOwnPropertyDescriptor(t,p);Object.defineProperty(s,p,S)}})}return Rn(this,s),Os(s)},configurable:!0})}});var Qn=z(($u,Jn)=>{var Kn=je(),Gn=Oe();Jn.exports=function(t,e,a,r){var i=t.__methods[e],o=i.chainingBehavior;i.chainingBehavior=function(){var h=r(o).call(this);if(h!==void 0)return h;var p=new Kn.Assertion;return Gn(this,p),p};var s=i.method;i.method=function(){var h=a(s).apply(this,arguments);if(h!==void 0)return h;var p=new Kn.Assertion;return Gn(this,p),p}}});var Yn=z((Ku,Xn)=>{var Zn=Mt();Xn.exports=function(t,e){return Zn(t)<Zn(e)?-1:1}});var Xt=z((Gu,Hn)=>{Hn.exports=function(t){return typeof Object.getOwnPropertySymbols!="function"?[]:Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})}});var to=z((Ju,eo)=>{var Ts=Xt();eo.exports=function(t){return Object.keys(t).concat(Ts(t))}});var Ht=z((Qu,ro)=>{"use strict";function Cs(n,t){return t instanceof Error&&n===t}function Ds(n,t){return t instanceof Error?n.constructor===t.constructor||n instanceof t.constructor:t.prototype instanceof Error||t===Error?n.constructor===t||n instanceof t:!1}function ks(n,t){var e=typeof n=="string"?n:n.message;return t instanceof RegExp?t.test(e):typeof t=="string"?e.indexOf(t)!==-1:!1}var Fs=/\s*function(?:\s|\s*\/\*[^(?:*\/)]+\*\/\s*)*([^\(\/]+)/;function Yt(n){var t="";if(typeof n.name>"u"){var e=String(n).match(Fs);e&&(t=e[1])}else t=n.name;return t}function zs(n){var t=n;return n instanceof Error?t=Yt(n.constructor):typeof n=="function"&&(t=Yt(n).trim()||Yt(new n)),t}function Bs(n){var t="";return n&&n.message?t=n.message:typeof n=="string"&&(t=n),t}ro.exports={compatibleInstance:Cs,compatibleConstructor:Ds,compatibleMessage:ks,getMessage:Bs,getConstructorName:zs}});var oo=z((Zu,no)=>{function Ls(n){return n!==n}no.exports=Number.isNaN||Ls});var ao=z((Xu,so)=>{var Us=st(),io=be();function Vs(n){var t=Us(n),e=["Array","Object","function"];return e.indexOf(t)!==-1}so.exports=function(t,e){var a=io(t,"operator"),r=io(t,"negate"),i=e[3],o=r?e[2]:e[1];if(a)return a;if(typeof o=="function"&&(o=o()),o=o||"",!!o&&!/\shave\s/.test(o)){var s=Vs(i);return/\snot\s/.test(o)?s?"notDeepStrictEqual":"notStrictEqual":s?"deepStrictEqual":"strictEqual"}}});var co=z(G=>{var uo=Kr();G.test=Qr();G.type=st();G.expectTypes=Xr();G.getMessage=fn();G.getActual=_t();G.inspect=Mt();G.objDisplay=$t();G.flag=be();G.transferFlags=Oe();G.eql=An();G.getPathInfo=uo.getPathInfo;G.hasProperty=uo.hasProperty;G.getName=Wt();G.addProperty=On();G.addMethod=Fn();G.overwriteProperty=Bn();G.overwriteMethod=Un();G.addChainableMethod=$n();G.overwriteChainableMethod=Qn();G.compareByInspect=Yn();G.getOwnEnumerablePropertySymbols=Xt();G.getOwnEnumerableProperties=to();G.checkError=Ht();G.proxify=ct();G.addLengthGuard=ut();G.isProxyEnabled=at();G.isNaN=oo();G.getOperator=ao()});var lo=z((Hu,fo)=>{var Ze=Fe();fo.exports=function(n,t){var e=n.AssertionError,a=t.flag;n.Assertion=r;function r(i,o,s,u){return a(this,"ssfi",s||r),a(this,"lockSsfi",u),a(this,"object",i),a(this,"message",o),t.proxify(this)}Object.defineProperty(r,"includeStack",{get:function(){return console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),Ze.includeStack},set:function(i){console.warn("Assertion.includeStack is deprecated, use chai.config.includeStack instead."),Ze.includeStack=i}}),Object.defineProperty(r,"showDiff",{get:function(){return console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),Ze.showDiff},set:function(i){console.warn("Assertion.showDiff is deprecated, use chai.config.showDiff instead."),Ze.showDiff=i}}),r.addProperty=function(i,o){t.addProperty(this.prototype,i,o)},r.addMethod=function(i,o){t.addMethod(this.prototype,i,o)},r.addChainableMethod=function(i,o,s){t.addChainableMethod(this.prototype,i,o,s)},r.overwriteProperty=function(i,o){t.overwriteProperty(this.prototype,i,o)},r.overwriteMethod=function(i,o){t.overwriteMethod(this.prototype,i,o)},r.overwriteChainableMethod=function(i,o,s){t.overwriteChainableMethod(this.prototype,i,o,s)},r.prototype.assert=function(i,o,s,u,h,p){var S=t.test(this,arguments);if(p!==!1&&(p=!0),u===void 0&&h===void 0&&(p=!1),Ze.showDiff!==!0&&(p=!1),!S){o=t.getMessage(this,arguments);var D=t.getActual(this,arguments),C={actual:D,expected:u,showDiff:p},M=t.getOperator(this,arguments);throw M&&(C.operator=M),new e(o,C,Ze.includeStack?this.assert:a(this,"ssfi"))}};Object.defineProperty(r.prototype,"_obj",{get:function(){return a(this,"object")},set:function(i){a(this,"object",i)}})}});var po=z((ec,ho)=>{ho.exports=function(n,t){var e=n.Assertion,a=n.AssertionError,r=t.flag;["to","be","been","is","and","has","have","with","that","which","at","of","same","but","does","still","also"].forEach(function(c){e.addProperty(c)}),e.addProperty("not",function(){r(this,"negate",!0)}),e.addProperty("deep",function(){r(this,"deep",!0)}),e.addProperty("nested",function(){r(this,"nested",!0)}),e.addProperty("own",function(){r(this,"own",!0)}),e.addProperty("ordered",function(){r(this,"ordered",!0)}),e.addProperty("any",function(){r(this,"any",!0),r(this,"all",!1)}),e.addProperty("all",function(){r(this,"all",!0),r(this,"any",!1)});function i(c,d){d&&r(this,"message",d),c=c.toLowerCase();var b=r(this,"object"),v=~["a","e","i","o","u"].indexOf(c.charAt(0))?"an ":"a ";this.assert(c===t.type(b).toLowerCase(),"expected #{this} to be "+v+c,"expected #{this} not to be "+v+c)}e.addChainableMethod("an",i),e.addChainableMethod("a",i);function o(c,d){return t.isNaN(c)&&t.isNaN(d)||c===d}function s(){r(this,"contains",!0)}function u(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=t.type(b).toLowerCase(),A=r(this,"message"),P=r(this,"negate"),x=r(this,"ssfi"),y=r(this,"deep"),j=y?"deep ":"";A=A?A+": ":"";var T=!1;switch(v){case"string":T=b.indexOf(c)!==-1;break;case"weakset":if(y)throw new a(A+"unable to use .deep.include with WeakSet",void 0,x);T=b.has(c);break;case"map":var _=y?t.eql:o;b.forEach(function($){T=T||_($,c)});break;case"set":y?b.forEach(function($){T=T||t.eql($,c)}):T=b.has(c);break;case"array":y?T=b.some(function($){return t.eql($,c)}):T=b.indexOf(c)!==-1;break;default:if(c!==Object(c))throw new a(A+"the given combination of arguments ("+v+" and "+t.type(c).toLowerCase()+") is invalid for this assertion. You can use an array, a map, an object, a set, a string, or a weakset instead of a "+t.type(c).toLowerCase(),void 0,x);var J=Object.keys(c),V=null,k=0;if(J.forEach(function($){var te=new e(b);if(t.transferFlags(this,te,!0),r(te,"lockSsfi",!0),!P||J.length===1){te.property($,c[$]);return}try{te.property($,c[$])}catch(ae){if(!t.checkError.compatibleConstructor(ae,a))throw ae;V===null&&(V=ae),k++}},this),P&&J.length>1&&k===J.length)throw V;return}this.assert(T,"expected #{this} to "+j+"include "+t.inspect(c),"expected #{this} to not "+j+"include "+t.inspect(c))}e.addChainableMethod("include",u,s),e.addChainableMethod("contain",u,s),e.addChainableMethod("contains",u,s),e.addChainableMethod("includes",u,s),e.addProperty("ok",function(){this.assert(r(this,"object"),"expected #{this} to be truthy","expected #{this} to be falsy")}),e.addProperty("true",function(){this.assert(r(this,"object")===!0,"expected #{this} to be true","expected #{this} to be false",!r(this,"negate"))}),e.addProperty("false",function(){this.assert(r(this,"object")===!1,"expected #{this} to be false","expected #{this} to be true",!!r(this,"negate"))}),e.addProperty("null",function(){this.assert(r(this,"object")===null,"expected #{this} to be null","expected #{this} not to be null")}),e.addProperty("undefined",function(){this.assert(r(this,"object")===void 0,"expected #{this} to be undefined","expected #{this} not to be undefined")}),e.addProperty("NaN",function(){this.assert(t.isNaN(r(this,"object")),"expected #{this} to be NaN","expected #{this} not to be NaN")});function h(){var c=r(this,"object");this.assert(c!=null,"expected #{this} to exist","expected #{this} to not exist")}e.addProperty("exist",h),e.addProperty("exists",h),e.addProperty("empty",function(){var c=r(this,"object"),d=r(this,"ssfi"),b=r(this,"message"),v;switch(b=b?b+": ":"",t.type(c).toLowerCase()){case"array":case"string":v=c.length;break;case"map":case"set":v=c.size;break;case"weakmap":case"weakset":throw new a(b+".empty was passed a weak collection",void 0,d);case"function":var A=b+".empty was passed a function "+t.getName(c);throw new a(A.trim(),void 0,d);default:if(c!==Object(c))throw new a(b+".empty was passed non-string primitive "+t.inspect(c),void 0,d);v=Object.keys(c).length}this.assert(v===0,"expected #{this} to be empty","expected #{this} not to be empty")});function p(){var c=r(this,"object"),d=t.type(c);this.assert(d==="Arguments","expected #{this} to be arguments but got "+d,"expected #{this} to not be arguments")}e.addProperty("arguments",p),e.addProperty("Arguments",p);function S(c,d){d&&r(this,"message",d);var b=r(this,"object");if(r(this,"deep")){var v=r(this,"lockSsfi");r(this,"lockSsfi",!0),this.eql(c),r(this,"lockSsfi",v)}else this.assert(c===b,"expected #{this} to equal #{exp}","expected #{this} to not equal #{exp}",c,this._obj,!0)}e.addMethod("equal",S),e.addMethod("equals",S),e.addMethod("eq",S);function D(c,d){d&&r(this,"message",d),this.assert(t.eql(c,r(this,"object")),"expected #{this} to deeply equal #{exp}","expected #{this} to not deeply equal #{exp}",c,this._obj,!0)}e.addMethod("eql",D),e.addMethod("eqls",D);function C(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"doLength"),A=r(this,"message"),P=A?A+": ":"",x=r(this,"ssfi"),y=t.type(b).toLowerCase(),j=t.type(c).toLowerCase(),T,_=!0;if(v&&y!=="map"&&y!=="set"&&new e(b,A,x,!0).to.have.property("length"),!v&&y==="date"&&j!=="date")T=P+"the argument to above must be a date";else if(j!=="number"&&(v||y==="number"))T=P+"the argument to above must be a number";else if(!v&&y!=="date"&&y!=="number"){var J=y==="string"?"'"+b+"'":b;T=P+"expected "+J+" to be a number or a date"}else _=!1;if(_)throw new a(T,void 0,x);if(v){var V="length",k;y==="map"||y==="set"?(V="size",k=b.size):k=b.length,this.assert(k>c,"expected #{this} to have a "+V+" above #{exp} but got #{act}","expected #{this} to not have a "+V+" above #{exp}",c,k)}else this.assert(b>c,"expected #{this} to be above #{exp}","expected #{this} to be at most #{exp}",c)}e.addMethod("above",C),e.addMethod("gt",C),e.addMethod("greaterThan",C);function M(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"doLength"),A=r(this,"message"),P=A?A+": ":"",x=r(this,"ssfi"),y=t.type(b).toLowerCase(),j=t.type(c).toLowerCase(),T,_=!0;if(v&&y!=="map"&&y!=="set"&&new e(b,A,x,!0).to.have.property("length"),!v&&y==="date"&&j!=="date")T=P+"the argument to least must be a date";else if(j!=="number"&&(v||y==="number"))T=P+"the argument to least must be a number";else if(!v&&y!=="date"&&y!=="number"){var J=y==="string"?"'"+b+"'":b;T=P+"expected "+J+" to be a number or a date"}else _=!1;if(_)throw new a(T,void 0,x);if(v){var V="length",k;y==="map"||y==="set"?(V="size",k=b.size):k=b.length,this.assert(k>=c,"expected #{this} to have a "+V+" at least #{exp} but got #{act}","expected #{this} to have a "+V+" below #{exp}",c,k)}else this.assert(b>=c,"expected #{this} to be at least #{exp}","expected #{this} to be below #{exp}",c)}e.addMethod("least",M),e.addMethod("gte",M),e.addMethod("greaterThanOrEqual",M);function w(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"doLength"),A=r(this,"message"),P=A?A+": ":"",x=r(this,"ssfi"),y=t.type(b).toLowerCase(),j=t.type(c).toLowerCase(),T,_=!0;if(v&&y!=="map"&&y!=="set"&&new e(b,A,x,!0).to.have.property("length"),!v&&y==="date"&&j!=="date")T=P+"the argument to below must be a date";else if(j!=="number"&&(v||y==="number"))T=P+"the argument to below must be a number";else if(!v&&y!=="date"&&y!=="number"){var J=y==="string"?"'"+b+"'":b;T=P+"expected "+J+" to be a number or a date"}else _=!1;if(_)throw new a(T,void 0,x);if(v){var V="length",k;y==="map"||y==="set"?(V="size",k=b.size):k=b.length,this.assert(k<c,"expected #{this} to have a "+V+" below #{exp} but got #{act}","expected #{this} to not have a "+V+" below #{exp}",c,k)}else this.assert(b<c,"expected #{this} to be below #{exp}","expected #{this} to be at least #{exp}",c)}e.addMethod("below",w),e.addMethod("lt",w),e.addMethod("lessThan",w);function q(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"doLength"),A=r(this,"message"),P=A?A+": ":"",x=r(this,"ssfi"),y=t.type(b).toLowerCase(),j=t.type(c).toLowerCase(),T,_=!0;if(v&&y!=="map"&&y!=="set"&&new e(b,A,x,!0).to.have.property("length"),!v&&y==="date"&&j!=="date")T=P+"the argument to most must be a date";else if(j!=="number"&&(v||y==="number"))T=P+"the argument to most must be a number";else if(!v&&y!=="date"&&y!=="number"){var J=y==="string"?"'"+b+"'":b;T=P+"expected "+J+" to be a number or a date"}else _=!1;if(_)throw new a(T,void 0,x);if(v){var V="length",k;y==="map"||y==="set"?(V="size",k=b.size):k=b.length,this.assert(k<=c,"expected #{this} to have a "+V+" at most #{exp} but got #{act}","expected #{this} to have a "+V+" above #{exp}",c,k)}else this.assert(b<=c,"expected #{this} to be at most #{exp}","expected #{this} to be above #{exp}",c)}e.addMethod("most",q),e.addMethod("lte",q),e.addMethod("lessThanOrEqual",q),e.addMethod("within",function(c,d,b){b&&r(this,"message",b);var v=r(this,"object"),A=r(this,"doLength"),P=r(this,"message"),x=P?P+": ":"",y=r(this,"ssfi"),j=t.type(v).toLowerCase(),T=t.type(c).toLowerCase(),_=t.type(d).toLowerCase(),J,V=!0,k=T==="date"&&_==="date"?c.toISOString()+".."+d.toISOString():c+".."+d;if(A&&j!=="map"&&j!=="set"&&new e(v,P,y,!0).to.have.property("length"),!A&&j==="date"&&(T!=="date"||_!=="date"))J=x+"the arguments to within must be dates";else if((T!=="number"||_!=="number")&&(A||j==="number"))J=x+"the arguments to within must be numbers";else if(!A&&j!=="date"&&j!=="number"){var $=j==="string"?"'"+v+"'":v;J=x+"expected "+$+" to be a number or a date"}else V=!1;if(V)throw new a(J,void 0,y);if(A){var te="length",ae;j==="map"||j==="set"?(te="size",ae=v.size):ae=v.length,this.assert(ae>=c&&ae<=d,"expected #{this} to have a "+te+" within "+k,"expected #{this} to not have a "+te+" within "+k)}else this.assert(v>=c&&v<=d,"expected #{this} to be within "+k,"expected #{this} to not be within "+k)});function F(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"ssfi"),A=r(this,"message");try{var P=b instanceof c}catch(y){throw y instanceof TypeError?(A=A?A+": ":"",new a(A+"The instanceof assertion needs a constructor but "+t.type(c)+" was given.",void 0,v)):y}var x=t.getName(c);x===null&&(x="an unnamed constructor"),this.assert(P,"expected #{this} to be an instance of "+x,"expected #{this} to not be an instance of "+x)}e.addMethod("instanceof",F),e.addMethod("instanceOf",F);function W(c,d,b){b&&r(this,"message",b);var v=r(this,"nested"),A=r(this,"own"),P=r(this,"message"),x=r(this,"object"),y=r(this,"ssfi"),j=typeof c;if(P=P?P+": ":"",v){if(j!=="string")throw new a(P+"the argument to property must be a string when using nested syntax",void 0,y)}else if(j!=="string"&&j!=="number"&&j!=="symbol")throw new a(P+"the argument to property must be a string, number, or symbol",void 0,y);if(v&&A)throw new a(P+'The "nested" and "own" flags cannot be combined.',void 0,y);if(x==null)throw new a(P+"Target cannot be null or undefined.",void 0,y);var T=r(this,"deep"),_=r(this,"negate"),J=v?t.getPathInfo(x,c):null,V=v?J.value:x[c],k="";T&&(k+="deep "),A&&(k+="own "),v&&(k+="nested "),k+="property ";var $;A?$=Object.prototype.hasOwnProperty.call(x,c):v?$=J.exists:$=t.hasProperty(x,c),(!_||arguments.length===1)&&this.assert($,"expected #{this} to have "+k+t.inspect(c),"expected #{this} to not have "+k+t.inspect(c)),arguments.length>1&&this.assert($&&(T?t.eql(d,V):d===V),"expected #{this} to have "+k+t.inspect(c)+" of #{exp}, but got #{act}","expected #{this} to not have "+k+t.inspect(c)+" of #{act}",d,V),r(this,"object",V)}e.addMethod("property",W);function Q(c,d,b){r(this,"own",!0),W.apply(this,arguments)}e.addMethod("ownProperty",Q),e.addMethod("haveOwnProperty",Q);function Y(c,d,b){typeof d=="string"&&(b=d,d=null),b&&r(this,"message",b);var v=r(this,"object"),A=Object.getOwnPropertyDescriptor(Object(v),c);A&&d?this.assert(t.eql(d,A),"expected the own property descriptor for "+t.inspect(c)+" on #{this} to match "+t.inspect(d)+", got "+t.inspect(A),"expected the own property descriptor for "+t.inspect(c)+" on #{this} to not match "+t.inspect(d),d,A,!0):this.assert(A,"expected #{this} to have an own property descriptor for "+t.inspect(c),"expected #{this} to not have an own property descriptor for "+t.inspect(c)),r(this,"object",A)}e.addMethod("ownPropertyDescriptor",Y),e.addMethod("haveOwnPropertyDescriptor",Y);function m(){r(this,"doLength",!0)}function E(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=t.type(b).toLowerCase(),A=r(this,"message"),P=r(this,"ssfi"),x="length",y;switch(v){case"map":case"set":x="size",y=b.size;break;default:new e(b,A,P,!0).to.have.property("length"),y=b.length}this.assert(y==c,"expected #{this} to have a "+x+" of #{exp} but got #{act}","expected #{this} to not have a "+x+" of #{act}",c,y)}e.addChainableMethod("length",E,m),e.addChainableMethod("lengthOf",E,m);function I(c,d){d&&r(this,"message",d);var b=r(this,"object");this.assert(c.exec(b),"expected #{this} to match "+c,"expected #{this} not to match "+c)}e.addMethod("match",I),e.addMethod("matches",I),e.addMethod("string",function(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"message"),A=r(this,"ssfi");new e(b,v,A,!0).is.a("string"),this.assert(~b.indexOf(c),"expected #{this} to contain "+t.inspect(c),"expected #{this} to not contain "+t.inspect(c))});function L(c){var d=r(this,"object"),b=t.type(d),v=t.type(c),A=r(this,"ssfi"),P=r(this,"deep"),x,y="",j,T=!0,_=r(this,"message");_=_?_+": ":"";var J=_+"when testing keys against an object or an array you must give a single Array|Object|String argument or multiple String arguments";if(b==="Map"||b==="Set")y=P?"deeply ":"",j=[],d.forEach(function(re,Ae){j.push(Ae)}),v!=="Array"&&(c=Array.prototype.slice.call(arguments));else{switch(j=t.getOwnEnumerableProperties(d),v){case"Array":if(arguments.length>1)throw new a(J,void 0,A);break;case"Object":if(arguments.length>1)throw new a(J,void 0,A);c=Object.keys(c);break;default:c=Array.prototype.slice.call(arguments)}c=c.map(function(re){return typeof re=="symbol"?re:String(re)})}if(!c.length)throw new a(_+"keys required",void 0,A);var V=c.length,k=r(this,"any"),$=r(this,"all"),te=c;if(!k&&!$&&($=!0),k&&(T=te.some(function(re){return j.some(function(Ae){return P?t.eql(re,Ae):re===Ae})})),$&&(T=te.every(function(re){return j.some(function(Ae){return P?t.eql(re,Ae):re===Ae})}),r(this,"contains")||(T=T&&c.length==j.length)),V>1){c=c.map(function(re){return t.inspect(re)});var ae=c.pop();$&&(x=c.join(", ")+", and "+ae),k&&(x=c.join(", ")+", or "+ae)}else x=t.inspect(c[0]);x=(V>1?"keys ":"key ")+x,x=(r(this,"contains")?"contain ":"have ")+x,this.assert(T,"expected #{this} to "+y+x,"expected #{this} to not "+y+x,te.slice(0).sort(t.compareByInspect),j.sort(t.compareByInspect),!0)}e.addMethod("keys",L),e.addMethod("key",L);function H(c,d,b){b&&r(this,"message",b);var v=r(this,"object"),A=r(this,"ssfi"),P=r(this,"message"),x=r(this,"negate")||!1;new e(v,P,A,!0).is.a("function"),(c instanceof RegExp||typeof c=="string")&&(d=c,c=null);var y;try{v()}catch(re){y=re}var j=c===void 0&&d===void 0,T=!!(c&&d),_=!1,J=!1;if(j||!j&&!x){var V="an error";c instanceof Error?V="#{exp}":c&&(V=t.checkError.getConstructorName(c)),this.assert(y,"expected #{this} to throw "+V,"expected #{this} to not throw an error but #{act} was thrown",c&&c.toString(),y instanceof Error?y.toString():typeof y=="string"?y:y&&t.checkError.getConstructorName(y))}if(c&&y){if(c instanceof Error){var k=t.checkError.compatibleInstance(y,c);k===x&&(T&&x?_=!0:this.assert(x,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(y&&!x?" but #{act} was thrown":""),c.toString(),y.toString()))}var $=t.checkError.compatibleConstructor(y,c);$===x&&(T&&x?_=!0:this.assert(x,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(y?" but #{act} was thrown":""),c instanceof Error?c.toString():c&&t.checkError.getConstructorName(c),y instanceof Error?y.toString():y&&t.checkError.getConstructorName(y)))}if(y&&d!==void 0&&d!==null){var te="including";d instanceof RegExp&&(te="matching");var ae=t.checkError.compatibleMessage(y,d);ae===x&&(T&&x?J=!0:this.assert(x,"expected #{this} to throw error "+te+" #{exp} but got #{act}","expected #{this} to throw error not "+te+" #{exp}",d,t.checkError.getMessage(y)))}_&&J&&this.assert(x,"expected #{this} to throw #{exp} but #{act} was thrown","expected #{this} to not throw #{exp}"+(y?" but #{act} was thrown":""),c instanceof Error?c.toString():c&&t.checkError.getConstructorName(c),y instanceof Error?y.toString():y&&t.checkError.getConstructorName(y)),r(this,"object",y)}e.addMethod("throw",H),e.addMethod("throws",H),e.addMethod("Throw",H);function xe(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=r(this,"itself"),A=typeof b=="function"&&!v?b.prototype[c]:b[c];this.assert(typeof A=="function","expected #{this} to respond to "+t.inspect(c),"expected #{this} to not respond to "+t.inspect(c))}e.addMethod("respondTo",xe),e.addMethod("respondsTo",xe),e.addProperty("itself",function(){r(this,"itself",!0)});function se(c,d){d&&r(this,"message",d);var b=r(this,"object"),v=c(b);this.assert(v,"expected #{this} to satisfy "+t.objDisplay(c),"expected #{this} to not satisfy"+t.objDisplay(c),!r(this,"negate"),v)}e.addMethod("satisfy",se),e.addMethod("satisfies",se);function $e(c,d,b){b&&r(this,"message",b);var v=r(this,"object"),A=r(this,"message"),P=r(this,"ssfi");if(new e(v,A,P,!0).is.a("number"),typeof c!="number"||typeof d!="number"){A=A?A+": ":"";var x=d===void 0?", and a delta is required":"";throw new a(A+"the arguments to closeTo or approximately must be numbers"+x,void 0,P)}this.assert(Math.abs(v-c)<=d,"expected #{this} to be close to "+c+" +/- "+d,"expected #{this} not to be close to "+c+" +/- "+d)}e.addMethod("closeTo",$e),e.addMethod("approximately",$e);function