@nuxt/devtools-nightly 0.0.0 → 2.0.0-28980754.13f6fd0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/.discoveryrc.cjs +13 -0
  2. package/LICENSE +21 -0
  3. package/README.md +129 -0
  4. package/cli.mjs +2 -0
  5. package/dist/chunks/analyze-build.mjs +58 -0
  6. package/dist/chunks/module-main.mjs +18277 -0
  7. package/dist/chunks/plugin-metrics.mjs +68 -0
  8. package/dist/chunks/timeline.mjs +73 -0
  9. package/dist/chunks/vite-inspect.mjs +61 -0
  10. package/dist/chunks/vscode.mjs +202 -0
  11. package/dist/chunks/vue-devtools.mjs +18 -0
  12. package/dist/chunks/vue-inspector.mjs +15 -0
  13. package/dist/client/200.html +29 -0
  14. package/dist/client/404.html +29 -0
  15. package/dist/client/_nuxt/__blank-lg13rweu.js +1 -0
  16. package/dist/client/_nuxt/analyze-build-iq7xh3z1.js +1 -0
  17. package/dist/client/_nuxt/assets-gh0s06d1.js +16 -0
  18. package/dist/client/_nuxt/assets.css-hmxl533k.css +1 -0
  19. package/dist/client/_nuxt/builds/latest.json +1 -0
  20. package/dist/client/_nuxt/builds/meta/49cca9aa-555f-4765-adf5-305615694a06.json +1 -0
  21. package/dist/client/_nuxt/client-kpmlv67d.js +1 -0
  22. package/dist/client/_nuxt/code-diff.vue-n76oqanv.js +8 -0
  23. package/dist/client/_nuxt/code-snippets.vue-mo56dnf7.js +1 -0
  24. package/dist/client/_nuxt/components-lsb65kqi.js +1 -0
  25. package/dist/client/_nuxt/composable-item.vue-ou7mghhp.js +1 -0
  26. package/dist/client/_nuxt/constants-b32h69zq.js +1 -0
  27. package/dist/client/_nuxt/custom-_name_-jtqok9n0.js +1 -0
  28. package/dist/client/_nuxt/data-schema-button.vue-c1grymka.js +1 -0
  29. package/dist/client/_nuxt/data-schema-drawer-d4rpskxd.js +2 -0
  30. package/dist/client/_nuxt/default-g4qh1jek.js +1 -0
  31. package/dist/client/_nuxt/duration-display.vue-dzttyi5n.js +1 -0
  32. package/dist/client/_nuxt/e6dj4v2s.js +17 -0
  33. package/dist/client/_nuxt/entry.css-mj1nvcy6.css +1 -0
  34. package/dist/client/_nuxt/error-404-kkixf30c.js +1 -0
  35. package/dist/client/_nuxt/error-404.css-fwe7gpvk.css +1 -0
  36. package/dist/client/_nuxt/error-500-m1ccut5u.js +1 -0
  37. package/dist/client/_nuxt/error-500.css-djemplc9.css +1 -0
  38. package/dist/client/_nuxt/error-ow5xdwzf.js +9 -0
  39. package/dist/client/_nuxt/filepath-item.vue-emq61mdv.js +1 -0
  40. package/dist/client/_nuxt/full-nu44fgoz.js +1 -0
  41. package/dist/client/_nuxt/help-fab.css-ms50khsu.css +1 -0
  42. package/dist/client/_nuxt/help-fab.vue-pnejmv3y.js +1 -0
  43. package/dist/client/_nuxt/hooks-mgy9fbq4.js +1 -0
  44. package/dist/client/_nuxt/imports-hjuvh4if.js +1 -0
  45. package/dist/client/_nuxt/index-g2a9x4et.js +1 -0
  46. package/dist/client/_nuxt/index-ioxrnncp.js +2 -0
  47. package/dist/client/_nuxt/index-obsucz0g.js +1 -0
  48. package/dist/client/_nuxt/launch-page.vue-kdqfy3so.js +1 -0
  49. package/dist/client/_nuxt/modules-k3t829jl.js +1 -0
  50. package/dist/client/_nuxt/nbadge-drglxech.js +1 -0
  51. package/dist/client/_nuxt/ncheckbox.vue-n4yvgmy3.js +1 -0
  52. package/dist/client/_nuxt/ncode-block.css-lvdc77tw.css +1 -0
  53. package/dist/client/_nuxt/ncode-block.vue-dt6krs6h.js +2 -0
  54. package/dist/client/_nuxt/ndrawer.vue-dekxbytt.js +1 -0
  55. package/dist/client/_nuxt/ndropdown.vue-ftpt7kxg.js +1 -0
  56. package/dist/client/_nuxt/nicon-title.vue-hzhi6u0u.js +1 -0
  57. package/dist/client/_nuxt/nlink.vue-mgfv3kxu.js +1 -0
  58. package/dist/client/_nuxt/nmarkdown.vue-jpbjhala.js +1 -0
  59. package/dist/client/_nuxt/nnavbar.vue-ifbz2rxx.js +1 -0
  60. package/dist/client/_nuxt/none-vukmnfqm.js +1 -0
  61. package/dist/client/_nuxt/nsection-block-c3li7360.js +1 -0
  62. package/dist/client/_nuxt/nsection-block.css-e7kbjm7k.css +1 -0
  63. package/dist/client/_nuxt/nselect-tabs.vue-7ode1s40.js +1 -0
  64. package/dist/client/_nuxt/nselect.vue-g1dfz7uv.js +1 -0
  65. package/dist/client/_nuxt/nswitch.vue-iu20lc9i.js +1 -0
  66. package/dist/client/_nuxt/open-graph-fqsf6nxz.js +3 -0
  67. package/dist/client/_nuxt/open-graph.css-e21qzmvj.css +1 -0
  68. package/dist/client/_nuxt/overview-fu25jfez.js +1 -0
  69. package/dist/client/_nuxt/pages-krmwwon2.js +1 -0
  70. package/dist/client/_nuxt/payload-brwibidn.js +1 -0
  71. package/dist/client/_nuxt/pinia-jwh05bbu.js +1 -0
  72. package/dist/client/_nuxt/plugins-ct1odttb.js +1 -0
  73. package/dist/client/_nuxt/render-tree-btmc22jz.js +1 -0
  74. package/dist/client/_nuxt/runtime-configs-n2sp6jan.js +1 -0
  75. package/dist/client/_nuxt/server-discovery-jimy0pfh.js +1 -0
  76. package/dist/client/_nuxt/server-route-inputs.vue-ldyagniy.js +1 -0
  77. package/dist/client/_nuxt/server-routes-hly5t016.js +9 -0
  78. package/dist/client/_nuxt/server-tasks-morkovw5.js +1 -0
  79. package/dist/client/_nuxt/settings-ic9nbnp8.js +1 -0
  80. package/dist/client/_nuxt/stacktrace-list.vue-nqi994si.js +1 -0
  81. package/dist/client/_nuxt/state-components-ka9yswzm.js +1 -0
  82. package/dist/client/_nuxt/state-editor.vue-nbrmuzl0.js +1 -0
  83. package/dist/client/_nuxt/state-modules-fi6koj0q.js +1 -0
  84. package/dist/client/_nuxt/storage-kce0wh6l.js +1 -0
  85. package/dist/client/_nuxt/terminals-bz0knva4.js +1 -0
  86. package/dist/client/_nuxt/terminals.css-mejv43xm.css +1 -0
  87. package/dist/client/_nuxt/timeline-eie3snk2.js +31 -0
  88. package/dist/client/_nuxt/timeline.css-lhkpu01p.css +1 -0
  89. package/dist/client/_nuxt/unocss-runtime-cb61k1ql.js +1 -0
  90. package/dist/client/_nuxt/vendor/json-editor-vue-kcahofzr.js +3818 -0
  91. package/dist/client/_nuxt/vendor/json-editor-vue.css-mqq5uooj.css +1 -0
  92. package/dist/client/_nuxt/vendor/markdown-it-fvu08dbs.js +16 -0
  93. package/dist/client/_nuxt/vendor/quicktype-core-lnbp3n5r.js +1006 -0
  94. package/dist/client/_nuxt/vendor/shiki-bpva4tco.js +282 -0
  95. package/dist/client/_nuxt/vendor/unocss-mstcul8h.js +2 -0
  96. package/dist/client/_nuxt/vendor/unocss.css-mhvipxpl.css +1 -0
  97. package/dist/client/_nuxt/vendor/vis-fzckz0r6.js +98 -0
  98. package/dist/client/_nuxt/vendor/xterm-b1jefe3j.js +9 -0
  99. package/dist/client/_nuxt/vendor/xterm.css-egmhki83.css +32 -0
  100. package/dist/client/_nuxt/virtual-files-ffma32j9.js +1 -0
  101. package/dist/client/_nuxt/virtual-files.css-gqpg2wnb.css +1 -0
  102. package/dist/client/_nuxt/vue-virtual-scroller.esm-ryb7s73q.js +2 -0
  103. package/dist/client/discovery/index.html +611 -0
  104. package/dist/client/index.html +29 -0
  105. package/dist/client/nuxt.svg +3 -0
  106. package/dist/dirs.d.mts +7 -0
  107. package/dist/dirs.d.ts +7 -0
  108. package/dist/dirs.mjs +28 -0
  109. package/dist/module.cjs +5 -0
  110. package/dist/module.d.mts +9 -0
  111. package/dist/module.d.ts +9 -0
  112. package/dist/module.json +9 -0
  113. package/dist/module.mjs +6 -0
  114. package/dist/runtime/auth/index.html +76 -0
  115. package/dist/runtime/function-metrics-helpers.d.ts +3 -0
  116. package/dist/runtime/function-metrics-helpers.js +69 -0
  117. package/dist/runtime/nitro/inline.d.ts +3 -0
  118. package/dist/runtime/nitro/inline.js +6 -0
  119. package/dist/runtime/plugins/devtools.client.d.ts +2 -0
  120. package/dist/runtime/plugins/devtools.client.js +56 -0
  121. package/dist/runtime/plugins/devtools.server.d.ts +2 -0
  122. package/dist/runtime/plugins/devtools.server.js +7 -0
  123. package/dist/runtime/plugins/view/FrameBox.vue +167 -0
  124. package/dist/runtime/plugins/view/Main.vue +415 -0
  125. package/dist/runtime/plugins/view/client.d.ts +12 -0
  126. package/dist/runtime/plugins/view/client.js +332 -0
  127. package/dist/runtime/plugins/view/state.d.ts +5 -0
  128. package/dist/runtime/plugins/view/state.js +17 -0
  129. package/dist/runtime/plugins/view/utils.d.ts +31 -0
  130. package/dist/runtime/plugins/view/utils.js +156 -0
  131. package/dist/runtime/settings.d.ts +4 -0
  132. package/dist/runtime/settings.js +2 -0
  133. package/dist/runtime/shared/hooks.d.ts +2 -0
  134. package/dist/runtime/shared/hooks.js +33 -0
  135. package/dist/runtime/use-nuxt-devtools.d.ts +8 -0
  136. package/dist/runtime/use-nuxt-devtools.js +23 -0
  137. package/dist/runtime/vue-devtools-client.d.ts +2 -0
  138. package/dist/runtime/vue-devtools-client.js +8 -0
  139. package/dist/shared/devtools-nightly.2a48a9e5.d.mts +62 -0
  140. package/dist/shared/devtools-nightly.2a48a9e5.d.ts +62 -0
  141. package/dist/shared/devtools-nightly.60b2ba4d.mjs +122 -0
  142. package/dist/types.d.mts +42 -0
  143. package/dist/types.d.ts +42 -0
  144. package/dist/types.mjs +1 -0
  145. package/package.json +128 -2
  146. package/types.d.ts +1 -0
@@ -0,0 +1,1006 @@
1
+ import{g as Bc,c as Gr}from"./json-editor-vue-kcahofzr.js";var ll={},nr={},Xo={},Vh;function et(){return Vh||(Vh=1,function(e){var t=Xo.__awaiter||function(Y,te,K,j){return new(K||(K=Promise))(function(J,ce){function X(De){try{Se(j.next(De))}catch(we){ce(we)}}function ge(De){try{Se(j.throw(De))}catch(we){ce(we)}}function Se(De){De.done?J(De.value):new K(function(we){we(De.value)}).then(X,ge)}Se((j=j.apply(Y,te||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.hashCodeInit=17;function n(Y){let te=0;for(let K=0;K<Y.length;K++){const j=Y.charCodeAt(K);te=(te<<5)-te+j,te=te&te}return te}e.hashString=n;function a(Y,te){return Y*31+(te|0)|0}e.addHashCode=a;function l(Y,te){return Y!==void 0?Y:te}e.withDefault=l;function d(Y,te){if(Y!==void 0)return te(Y)}e.definedMap=d;function u(Y,te,K){return l(d(Y,K),te)}e.definedMapWithDefault=u;function c(Y,te){return Y==null?!1:Object.prototype.hasOwnProperty.call(Y,te)}e.hasOwnProperty=c;function w(Y,te){for(const K of Y)if(te(K))return K}e.iterableFind=w;function U(Y,te){for(const K of Y)if(!te(K))return!1;return!0}e.iterableEvery=U;function P(Y,te){for(const K of Y)if(te(K))return!0;return!1}e.iterableSome=P;function O(Y){for(const te of Y)return te}e.iterableFirst=O;function R(Y){let te;for(const K of Y)(te===void 0||K>te)&&(te=K);return te}e.iterableMax=R;function _(Y,te){let K,j;for(const J of Y){const ce=te(J);(K===void 0||ce<K)&&(K=ce,j=J)}return j}e.iterableMinBy=_;function L(Y,te,K){let j=te;for(const J of Y)j=K(j,J);return j}e.iterableReduce=L;function*g(Y){let te=0;for(const K of Y)yield[te,K],te+=1}e.iterableEnumerate=g;function*y(Y,te){let K=0;for(const j of Y)K>=te?yield j:K+=1}e.iterableSkip=y;function h(Y,te){const K=Y.length;if(!(te>K))return Y[K-te]}e.arrayGetFromEnd=h;function p(Y){return h(Y,1)}e.arrayLast=p;function k(Y){const te=Y.length;if(te===0)throw new Error("Cannot pop empty array");return Y.slice(0,te-1)}e.arrayPop=k;function D(Y,te){const K=[];for(const j of te)K.length>0&&K.push(Y),K.push(j);return K}e.arrayIntercalate=D;function C(Y,te){return t(this,void 0,void 0,function*(){const K=[];let j=0;for(const J of Y)K.push(yield te(J,j)),j+=1;return K})}e.arrayMapSync=C;function I(Y,te){return Y<te?-1:Y>te?1:0}function A(Y,te){return Y.sort((K,j)=>I(te(K),te(j)))}e.arraySortByInto=A;function f(Y){return Array.isArray(Y)?Y:Array.from(Y)}e.toReadonlyArray=f;function E(Y,te){const K=new Map;for(const[j,J]of Y)K.set(j,te(J,j));return K}e.mapMap=E;function b(Y){for(const te of Y.values())return te}e.mapFirst=b;function F(Y,te){for(const K of Y.values())if(K===te)return!0;return!1}e.mapContains=F;function m(Y,te){for(const[K,j]of Y)if(te(j,K))return!0;return!1}e.mapSome=m;function r(Y,te){for(const[K,j]of te)Y.set(K,j);return Y}e.mapMergeInto=r;function s(Y,te){const K=new Map(Y);return r(K,te),K}e.mapMerge=s;function T(Y,te,K){for(const[j,J]of K){const ce=Y.get(j),X=ce===void 0?J:te(ce,J,j);Y.set(j,X)}return Y}e.mapMergeWithInto=T;function v(Y,te,K){const j=new Map(Y);return T(j,te,K),j}e.mapMergeWith=v;function M(Y,te){const K=new Map;for(const[j,J]of Y)te(J,j)&&K.set(j,J);return K}e.mapFilter=M;function x(Y,te){const K=new Map;for(const[j,J]of Y){const ce=te(J,j);ce!==void 0&&K.set(j,ce)}return K}e.mapFilterMap=x;function W(Y,te){return A(Array.from(Y),([K,j])=>te(j,K))}e.mapSortToArray=W;function S(Y,te){return new Map(W(Y,te))}e.mapSortBy=S;function B(Y){return S(Y,(te,K)=>K)}e.mapSortByKey=B;function q(Y,te){const K=new Map;for(const[j,J]of Y){const[ce,X]=te(J,j);K.set(ce,X)}return K}e.mapMapEntries=q;function G(Y,te,K){return Y.set(te,K(Y.get(te))),Y}e.mapUpdateInto=G;function $(Y){const te=new Map;for(const K of Object.getOwnPropertyNames(Y))te.set(K,Y[K]);return te}e.mapFromObject=$;function ee(Y){const te={};for(const[K,j]of Y)te[K]=j;return te}e.mapToObject=ee;function ue(Y,te){const K=new Map;for(const j of Y)K.set(j,te(j));return K}e.mapFromIterable=ue;function se(Y,te){for(const[K,j]of Y)if(te(j,K))return j}e.mapFind=se;function ie(Y){const te=new Map;for(const K of Y)for(const[j,J]of K){let ce=te.get(j);ce===void 0&&(ce=[],te.set(j,ce)),ce.push(J)}return te}e.mapTranspose=ie;function ye(Y,te){return t(this,void 0,void 0,function*(){const K=new Map;for(const[j,J]of Y)K.set(j,yield te(J,j));return K})}e.mapMapSync=ye;function be(Y,te){for(const K of te)if(!Y.has(K))return!1;return!0}e.setIsSuperset=be;function Ae(Y,te){for(const K of te)for(const j of K)Y.add(j);return Y}e.setUnionManyInto=Ae;function pe(Y,...te){return Ae(Y,te)}e.setUnionInto=pe;function le(Y,te){const K=new Set;for(const j of Y)te.has(j)&&K.add(j);return K}e.setIntersect=le;function me(Y,te){const K=new Set(Y);for(const j of te)K.delete(j);return K}e.setSubtract=me;function de(...Y){const te=new Set;return pe(te,...Y),te}e.setUnion=de;function Q(Y,te){const K=new Set;for(const j of Y)K.add(te(j));return K}e.setMap=Q;function z(Y,te){const K=new Set;for(const j of Y)te(j)&&K.add(j);return K}e.setFilter=z;function V(Y,te){const K=new Set;for(const j of Y){const J=te(j);J!==void 0&&K.add(J)}return K}e.setFilterMap=V;function ae(Y,te){return new Set(A(Array.from(Y),te))}e.setSortBy=ae;function Te(Y,te){const K=new Map;for(const j of Y){const J=te(j);let ce=K.get(J);ce===void 0&&(ce=new Set,K.set(J,ce)),ce.add(j)}return K}e.setGroupBy=Te;function Ie(Y){return Y instanceof Set?Y:new Set(Y)}e.toReadonlySet=Ie;class Ce{constructor(){this._map=new Map}set(te,K){let j=Ge(te)|0;for(;;){const J=this._map.get(j);if(J===void 0){this._map.set(j,[te,K]);return}if(We(te,J[0])){J[1]=K;return}j=j+1|0}}get(te){let K=Ge(te)|0;for(;;){const j=this._map.get(K);if(j===void 0)return;if(We(te,j[0]))return j[1];K=K+1|0}}has(te){return this.get(te)!==void 0}*values(){for(const[,[,te]]of this._map)yield te}}e.EqualityMap=Ce;function We(Y,te){if(Y===te)return!0;if(Y===void 0||te===void 0||Y===null||te===null)return!1;if(typeof Y.equals=="function"&&typeof te.equals=="function")return Y.equals(te);if(Y instanceof Set&&te instanceof Set){if(Y.size!==te.size)return!1;for(const K of Y)if(!te.has(K))return!1;return!0}if(Y instanceof Map&&te instanceof Map){if(Y.size!==te.size)return!1;for(const[K,j]of Y){const J=te.get(K);if(!We(j,J))return!1}return!0}if(Array.isArray(Y)&&Array.isArray(te)){const K=Y.length;if(K!==te.length)return!1;for(let j=0;j<K;j++)if(!We(Y[j],te[j]))return!1;return!0}return!1}e.areEqual=We;function Ge(Y){if(typeof Y=="number")return Y|0;if(typeof Y=="string")return n(Y);let te=e.hashCodeInit;if(Y===void 0)return te;if(Y===!0)return te+1|0;if(Y===!1)return te+2|0;if(Y===null)return te+3|0;if(typeof Y.hashCode=="function")return Y.hashCode();if(Y instanceof Set){for(const K of Y)te+=Ge(K);return te}if(Y instanceof Map){let K=e.hashCodeInit;for(const[j,J]of Y)K+=Ge(j),te+=Ge(J);return a(K,te)}if(Array.isArray(Y)){for(const K of Y)te=a(te,Ge(K));return te}throw new Error(`Cannot hash ${Y}`)}e.hashCodeOf=Ge}(Xo)),Xo}var cl={},Yo={},fl={},at={};const jc="3.7.7",Jy=jc,ts=typeof Buffer=="function",Zh=typeof TextDecoder=="function"?new TextDecoder:void 0,Qh=typeof TextEncoder=="function"?new TextEncoder:void 0,JL="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",Ws=Array.prototype.slice.call(JL),$o=(e=>{let t={};return e.forEach((n,a)=>t[n]=a),t})(Ws),GL=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,Yt=String.fromCharCode.bind(String),Xh=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):e=>new Uint8Array(Array.prototype.slice.call(e,0)),Gy=e=>e.replace(/=/g,"").replace(/[+\/]/g,t=>t=="+"?"-":"_"),Hy=e=>e.replace(/[^A-Za-z0-9\+\/]/g,""),Uc=e=>{let t,n,a,l,d="";const u=e.length%3;for(let c=0;c<e.length;){if((n=e.charCodeAt(c++))>255||(a=e.charCodeAt(c++))>255||(l=e.charCodeAt(c++))>255)throw new TypeError("invalid character found");t=n<<16|a<<8|l,d+=Ws[t>>18&63]+Ws[t>>12&63]+Ws[t>>6&63]+Ws[t&63]}return u?d.slice(0,u-3)+"===".substring(u):d},Aa=typeof btoa=="function"?e=>btoa(e):ts?e=>Buffer.from(e,"binary").toString("base64"):Uc,Ec=ts?e=>Buffer.from(e).toString("base64"):e=>{let n=[];for(let a=0,l=e.length;a<l;a+=4096)n.push(Yt.apply(null,e.subarray(a,a+4096)));return Aa(n.join(""))},Ks=(e,t=!1)=>t?Gy(Ec(e)):Ec(e),HL=e=>{if(e.length<2){var t=e.charCodeAt(0);return t<128?e:t<2048?Yt(192|t>>>6)+Yt(128|t&63):Yt(224|t>>>12&15)+Yt(128|t>>>6&63)+Yt(128|t&63)}else{var t=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return Yt(240|t>>>18&7)+Yt(128|t>>>12&63)+Yt(128|t>>>6&63)+Yt(128|t&63)}},KL=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,xc=e=>e.replace(KL,HL),Yh=ts?e=>Buffer.from(e,"utf8").toString("base64"):Qh?e=>Ec(Qh.encode(e)):e=>Aa(xc(e)),zi=(e,t=!1)=>t?Gy(Yh(e)):Yh(e),ka=e=>zi(e,!0),VL=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,ZL=e=>{switch(e.length){case 4:var t=(7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3),n=t-65536;return Yt((n>>>10)+55296)+Yt((n&1023)+56320);case 3:return Yt((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return Yt((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},zc=e=>e.replace(VL,ZL),Wc=e=>{if(e=e.replace(/\s+/g,""),!GL.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(e.length&3));let t,n="",a,l;for(let d=0;d<e.length;)t=$o[e.charAt(d++)]<<18|$o[e.charAt(d++)]<<12|(a=$o[e.charAt(d++)])<<6|(l=$o[e.charAt(d++)]),n+=a===64?Yt(t>>16&255):l===64?Yt(t>>16&255,t>>8&255):Yt(t>>16&255,t>>8&255,t&255);return n},Fa=typeof atob=="function"?e=>atob(Hy(e)):ts?e=>Buffer.from(e,"base64").toString("binary"):Wc,Ky=ts?e=>Xh(Buffer.from(e,"base64")):e=>Xh(Fa(e).split("").map(t=>t.charCodeAt(0))),qc=e=>Ky(Vy(e)),QL=ts?e=>Buffer.from(e,"base64").toString("utf8"):Zh?e=>Zh.decode(Ky(e)):e=>zc(Fa(e)),Vy=e=>Hy(e.replace(/[-_]/g,t=>t=="-"?"+":"/")),Zs=e=>QL(Vy(e)),Zy=e=>{if(typeof e!="string")return!1;const t=e.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(t)||!/[^\s0-9a-zA-Z\-_]/.test(t)},Qy=e=>({value:e,enumerable:!1,writable:!0,configurable:!0}),Jc=function(){const e=(t,n)=>Object.defineProperty(String.prototype,t,Qy(n));e("fromBase64",function(){return Zs(this)}),e("toBase64",function(t){return zi(this,t)}),e("toBase64URI",function(){return zi(this,!0)}),e("toBase64URL",function(){return zi(this,!0)}),e("toUint8Array",function(){return qc(this)})},Gc=function(){const e=(t,n)=>Object.defineProperty(Uint8Array.prototype,t,Qy(n));e("toBase64",function(t){return Ks(this,t)}),e("toBase64URI",function(){return Ks(this,!0)}),e("toBase64URL",function(){return Ks(this,!0)})},Xy=()=>{Jc(),Gc()},XL={version:jc,VERSION:Jy,atob:Fa,atobPolyfill:Wc,btoa:Aa,btoaPolyfill:Uc,fromBase64:Zs,toBase64:zi,encode:zi,encodeURI:ka,encodeURL:ka,utob:xc,btou:zc,decode:Zs,isValid:Zy,fromUint8Array:Ks,toUint8Array:qc,extendString:Jc,extendUint8Array:Gc,extendBuiltins:Xy},YL=Object.freeze(Object.defineProperty({__proto__:null,Base64:XL,VERSION:Jy,atob:Fa,atobPolyfill:Wc,btoa:Aa,btoaPolyfill:Uc,btou:zc,decode:Zs,encode:zi,encodeURI:ka,encodeURL:ka,extendBuiltins:Xy,extendString:Jc,extendUint8Array:Gc,fromBase64:Zs,fromUint8Array:Ks,isValid:Zy,toBase64:zi,toUint8Array:qc,utob:xc,version:jc},Symbol.toStringTag,{value:"Module"})),$L=Bc(YL);var dl={},$h;function Ji(){return $h||($h=1,function(e){var t=typeof Uint8Array<"u"&&typeof Uint16Array<"u"&&typeof Int32Array<"u";function n(d,u){return Object.prototype.hasOwnProperty.call(d,u)}e.assign=function(d){for(var u=Array.prototype.slice.call(arguments,1);u.length;){var c=u.shift();if(c){if(typeof c!="object")throw new TypeError(c+"must be non-object");for(var w in c)n(c,w)&&(d[w]=c[w])}}return d},e.shrinkBuf=function(d,u){return d.length===u?d:d.subarray?d.subarray(0,u):(d.length=u,d)};var a={arraySet:function(d,u,c,w,U){if(u.subarray&&d.subarray){d.set(u.subarray(c,c+w),U);return}for(var P=0;P<w;P++)d[U+P]=u[c+P]},flattenChunks:function(d){var u,c,w,U,P,O;for(w=0,u=0,c=d.length;u<c;u++)w+=d[u].length;for(O=new Uint8Array(w),U=0,u=0,c=d.length;u<c;u++)P=d[u],O.set(P,U),U+=P.length;return O}},l={arraySet:function(d,u,c,w,U){for(var P=0;P<w;P++)d[U+P]=u[c+P]},flattenChunks:function(d){return[].concat.apply([],d)}};e.setTyped=function(d){d?(e.Buf8=Uint8Array,e.Buf16=Uint16Array,e.Buf32=Int32Array,e.assign(e,a)):(e.Buf8=Array,e.Buf16=Array,e.Buf32=Array,e.assign(e,l))},e.setTyped(t)}(dl)),dl}var Br={},Hn={},ir={},ep;function e_(){if(ep)return ir;ep=1;var e=Ji(),t=4,n=0,a=1,l=2;function d(X){for(var ge=X.length;--ge>=0;)X[ge]=0}var u=0,c=1,w=2,U=3,P=258,O=29,R=256,_=R+1+O,L=30,g=19,y=2*_+1,h=15,p=16,k=7,D=256,C=16,I=17,A=18,f=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],E=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],b=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],F=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],m=512,r=new Array((_+2)*2);d(r);var s=new Array(L*2);d(s);var T=new Array(m);d(T);var v=new Array(P-U+1);d(v);var M=new Array(O);d(M);var x=new Array(L);d(x);function W(X,ge,Se,De,we){this.static_tree=X,this.extra_bits=ge,this.extra_base=Se,this.elems=De,this.max_length=we,this.has_stree=X&&X.length}var S,B,q;function G(X,ge){this.dyn_tree=X,this.max_code=0,this.stat_desc=ge}function $(X){return X<256?T[X]:T[256+(X>>>7)]}function ee(X,ge){X.pending_buf[X.pending++]=ge&255,X.pending_buf[X.pending++]=ge>>>8&255}function ue(X,ge,Se){X.bi_valid>p-Se?(X.bi_buf|=ge<<X.bi_valid&65535,ee(X,X.bi_buf),X.bi_buf=ge>>p-X.bi_valid,X.bi_valid+=Se-p):(X.bi_buf|=ge<<X.bi_valid&65535,X.bi_valid+=Se)}function se(X,ge,Se){ue(X,Se[ge*2],Se[ge*2+1])}function ie(X,ge){var Se=0;do Se|=X&1,X>>>=1,Se<<=1;while(--ge>0);return Se>>>1}function ye(X){X.bi_valid===16?(ee(X,X.bi_buf),X.bi_buf=0,X.bi_valid=0):X.bi_valid>=8&&(X.pending_buf[X.pending++]=X.bi_buf&255,X.bi_buf>>=8,X.bi_valid-=8)}function be(X,ge){var Se=ge.dyn_tree,De=ge.max_code,we=ge.stat_desc.static_tree,Pe=ge.stat_desc.has_stree,re=ge.stat_desc.extra_bits,Re=ge.stat_desc.extra_base,ze=ge.stat_desc.max_length,H,ke,Ne,oe,Le,Fe,He=0;for(oe=0;oe<=h;oe++)X.bl_count[oe]=0;for(Se[X.heap[X.heap_max]*2+1]=0,H=X.heap_max+1;H<y;H++)ke=X.heap[H],oe=Se[Se[ke*2+1]*2+1]+1,oe>ze&&(oe=ze,He++),Se[ke*2+1]=oe,!(ke>De)&&(X.bl_count[oe]++,Le=0,ke>=Re&&(Le=re[ke-Re]),Fe=Se[ke*2],X.opt_len+=Fe*(oe+Le),Pe&&(X.static_len+=Fe*(we[ke*2+1]+Le)));if(He!==0){do{for(oe=ze-1;X.bl_count[oe]===0;)oe--;X.bl_count[oe]--,X.bl_count[oe+1]+=2,X.bl_count[ze]--,He-=2}while(He>0);for(oe=ze;oe!==0;oe--)for(ke=X.bl_count[oe];ke!==0;)Ne=X.heap[--H],!(Ne>De)&&(Se[Ne*2+1]!==oe&&(X.opt_len+=(oe-Se[Ne*2+1])*Se[Ne*2],Se[Ne*2+1]=oe),ke--)}}function Ae(X,ge,Se){var De=new Array(h+1),we=0,Pe,re;for(Pe=1;Pe<=h;Pe++)De[Pe]=we=we+Se[Pe-1]<<1;for(re=0;re<=ge;re++){var Re=X[re*2+1];Re!==0&&(X[re*2]=ie(De[Re]++,Re))}}function pe(){var X,ge,Se,De,we,Pe=new Array(h+1);for(Se=0,De=0;De<O-1;De++)for(M[De]=Se,X=0;X<1<<f[De];X++)v[Se++]=De;for(v[Se-1]=De,we=0,De=0;De<16;De++)for(x[De]=we,X=0;X<1<<E[De];X++)T[we++]=De;for(we>>=7;De<L;De++)for(x[De]=we<<7,X=0;X<1<<E[De]-7;X++)T[256+we++]=De;for(ge=0;ge<=h;ge++)Pe[ge]=0;for(X=0;X<=143;)r[X*2+1]=8,X++,Pe[8]++;for(;X<=255;)r[X*2+1]=9,X++,Pe[9]++;for(;X<=279;)r[X*2+1]=7,X++,Pe[7]++;for(;X<=287;)r[X*2+1]=8,X++,Pe[8]++;for(Ae(r,_+1,Pe),X=0;X<L;X++)s[X*2+1]=5,s[X*2]=ie(X,5);S=new W(r,f,R+1,_,h),B=new W(s,E,0,L,h),q=new W(new Array(0),b,0,g,k)}function le(X){var ge;for(ge=0;ge<_;ge++)X.dyn_ltree[ge*2]=0;for(ge=0;ge<L;ge++)X.dyn_dtree[ge*2]=0;for(ge=0;ge<g;ge++)X.bl_tree[ge*2]=0;X.dyn_ltree[D*2]=1,X.opt_len=X.static_len=0,X.last_lit=X.matches=0}function me(X){X.bi_valid>8?ee(X,X.bi_buf):X.bi_valid>0&&(X.pending_buf[X.pending++]=X.bi_buf),X.bi_buf=0,X.bi_valid=0}function de(X,ge,Se,De){me(X),ee(X,Se),ee(X,~Se),e.arraySet(X.pending_buf,X.window,ge,Se,X.pending),X.pending+=Se}function Q(X,ge,Se,De){var we=ge*2,Pe=Se*2;return X[we]<X[Pe]||X[we]===X[Pe]&&De[ge]<=De[Se]}function z(X,ge,Se){for(var De=X.heap[Se],we=Se<<1;we<=X.heap_len&&(we<X.heap_len&&Q(ge,X.heap[we+1],X.heap[we],X.depth)&&we++,!Q(ge,De,X.heap[we],X.depth));)X.heap[Se]=X.heap[we],Se=we,we<<=1;X.heap[Se]=De}function V(X,ge,Se){var De,we,Pe=0,re,Re;if(X.last_lit!==0)do De=X.pending_buf[X.d_buf+Pe*2]<<8|X.pending_buf[X.d_buf+Pe*2+1],we=X.pending_buf[X.l_buf+Pe],Pe++,De===0?se(X,we,ge):(re=v[we],se(X,re+R+1,ge),Re=f[re],Re!==0&&(we-=M[re],ue(X,we,Re)),De--,re=$(De),se(X,re,Se),Re=E[re],Re!==0&&(De-=x[re],ue(X,De,Re)));while(Pe<X.last_lit);se(X,D,ge)}function ae(X,ge){var Se=ge.dyn_tree,De=ge.stat_desc.static_tree,we=ge.stat_desc.has_stree,Pe=ge.stat_desc.elems,re,Re,ze=-1,H;for(X.heap_len=0,X.heap_max=y,re=0;re<Pe;re++)Se[re*2]!==0?(X.heap[++X.heap_len]=ze=re,X.depth[re]=0):Se[re*2+1]=0;for(;X.heap_len<2;)H=X.heap[++X.heap_len]=ze<2?++ze:0,Se[H*2]=1,X.depth[H]=0,X.opt_len--,we&&(X.static_len-=De[H*2+1]);for(ge.max_code=ze,re=X.heap_len>>1;re>=1;re--)z(X,Se,re);H=Pe;do re=X.heap[1],X.heap[1]=X.heap[X.heap_len--],z(X,Se,1),Re=X.heap[1],X.heap[--X.heap_max]=re,X.heap[--X.heap_max]=Re,Se[H*2]=Se[re*2]+Se[Re*2],X.depth[H]=(X.depth[re]>=X.depth[Re]?X.depth[re]:X.depth[Re])+1,Se[re*2+1]=Se[Re*2+1]=H,X.heap[1]=H++,z(X,Se,1);while(X.heap_len>=2);X.heap[--X.heap_max]=X.heap[1],be(X,ge),Ae(Se,ze,X.bl_count)}function Te(X,ge,Se){var De,we=-1,Pe,re=ge[0*2+1],Re=0,ze=7,H=4;for(re===0&&(ze=138,H=3),ge[(Se+1)*2+1]=65535,De=0;De<=Se;De++)Pe=re,re=ge[(De+1)*2+1],!(++Re<ze&&Pe===re)&&(Re<H?X.bl_tree[Pe*2]+=Re:Pe!==0?(Pe!==we&&X.bl_tree[Pe*2]++,X.bl_tree[C*2]++):Re<=10?X.bl_tree[I*2]++:X.bl_tree[A*2]++,Re=0,we=Pe,re===0?(ze=138,H=3):Pe===re?(ze=6,H=3):(ze=7,H=4))}function Ie(X,ge,Se){var De,we=-1,Pe,re=ge[0*2+1],Re=0,ze=7,H=4;for(re===0&&(ze=138,H=3),De=0;De<=Se;De++)if(Pe=re,re=ge[(De+1)*2+1],!(++Re<ze&&Pe===re)){if(Re<H)do se(X,Pe,X.bl_tree);while(--Re!==0);else Pe!==0?(Pe!==we&&(se(X,Pe,X.bl_tree),Re--),se(X,C,X.bl_tree),ue(X,Re-3,2)):Re<=10?(se(X,I,X.bl_tree),ue(X,Re-3,3)):(se(X,A,X.bl_tree),ue(X,Re-11,7));Re=0,we=Pe,re===0?(ze=138,H=3):Pe===re?(ze=6,H=3):(ze=7,H=4)}}function Ce(X){var ge;for(Te(X,X.dyn_ltree,X.l_desc.max_code),Te(X,X.dyn_dtree,X.d_desc.max_code),ae(X,X.bl_desc),ge=g-1;ge>=3&&X.bl_tree[F[ge]*2+1]===0;ge--);return X.opt_len+=3*(ge+1)+5+5+4,ge}function We(X,ge,Se,De){var we;for(ue(X,ge-257,5),ue(X,Se-1,5),ue(X,De-4,4),we=0;we<De;we++)ue(X,X.bl_tree[F[we]*2+1],3);Ie(X,X.dyn_ltree,ge-1),Ie(X,X.dyn_dtree,Se-1)}function Ge(X){var ge=4093624447,Se;for(Se=0;Se<=31;Se++,ge>>>=1)if(ge&1&&X.dyn_ltree[Se*2]!==0)return n;if(X.dyn_ltree[9*2]!==0||X.dyn_ltree[10*2]!==0||X.dyn_ltree[13*2]!==0)return a;for(Se=32;Se<R;Se++)if(X.dyn_ltree[Se*2]!==0)return a;return n}var Y=!1;function te(X){Y||(pe(),Y=!0),X.l_desc=new G(X.dyn_ltree,S),X.d_desc=new G(X.dyn_dtree,B),X.bl_desc=new G(X.bl_tree,q),X.bi_buf=0,X.bi_valid=0,le(X)}function K(X,ge,Se,De){ue(X,(u<<1)+(De?1:0),3),de(X,ge,Se)}function j(X){ue(X,c<<1,3),se(X,D,r),ye(X)}function J(X,ge,Se,De){var we,Pe,re=0;X.level>0?(X.strm.data_type===l&&(X.strm.data_type=Ge(X)),ae(X,X.l_desc),ae(X,X.d_desc),re=Ce(X),we=X.opt_len+3+7>>>3,Pe=X.static_len+3+7>>>3,Pe<=we&&(we=Pe)):we=Pe=Se+5,Se+4<=we&&ge!==-1?K(X,ge,Se,De):X.strategy===t||Pe===we?(ue(X,(c<<1)+(De?1:0),3),V(X,r,s)):(ue(X,(w<<1)+(De?1:0),3),We(X,X.l_desc.max_code+1,X.d_desc.max_code+1,re+1),V(X,X.dyn_ltree,X.dyn_dtree)),le(X),De&&me(X)}function ce(X,ge,Se){return X.pending_buf[X.d_buf+X.last_lit*2]=ge>>>8&255,X.pending_buf[X.d_buf+X.last_lit*2+1]=ge&255,X.pending_buf[X.l_buf+X.last_lit]=Se&255,X.last_lit++,ge===0?X.dyn_ltree[Se*2]++:(X.matches++,ge--,X.dyn_ltree[(v[Se]+R+1)*2]++,X.dyn_dtree[$(ge)*2]++),X.last_lit===X.lit_bufsize-1}return ir._tr_init=te,ir._tr_stored_block=K,ir._tr_flush_block=J,ir._tr_tally=ce,ir._tr_align=j,ir}var hl,tp;function Yy(){if(tp)return hl;tp=1;function e(t,n,a,l){for(var d=t&65535|0,u=t>>>16&65535|0,c=0;a!==0;){c=a>2e3?2e3:a,a-=c;do d=d+n[l++]|0,u=u+d|0;while(--c);d%=65521,u%=65521}return d|u<<16|0}return hl=e,hl}var pl,np;function $y(){if(np)return pl;np=1;function e(){for(var a,l=[],d=0;d<256;d++){a=d;for(var u=0;u<8;u++)a=a&1?3988292384^a>>>1:a>>>1;l[d]=a}return l}var t=e();function n(a,l,d,u){var c=t,w=u+d;a^=-1;for(var U=u;U<w;U++)a=a>>>8^c[(a^l[U])&255];return a^-1}return pl=n,pl}var ml,ip;function Hc(){return ip||(ip=1,ml={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}),ml}var rp;function t_(){if(rp)return Hn;rp=1;var e=Ji(),t=e_(),n=Yy(),a=$y(),l=Hc(),d=0,u=1,c=3,w=4,U=5,P=0,O=1,R=-2,_=-3,L=-5,g=-1,y=1,h=2,p=3,k=4,D=0,C=2,I=8,A=9,f=15,E=8,b=29,F=256,m=F+1+b,r=30,s=19,T=2*m+1,v=15,M=3,x=258,W=x+M+1,S=32,B=42,q=69,G=73,$=91,ee=103,ue=113,se=666,ie=1,ye=2,be=3,Ae=4,pe=3;function le(H,ke){return H.msg=l[ke],ke}function me(H){return(H<<1)-(H>4?9:0)}function de(H){for(var ke=H.length;--ke>=0;)H[ke]=0}function Q(H){var ke=H.state,Ne=ke.pending;Ne>H.avail_out&&(Ne=H.avail_out),Ne!==0&&(e.arraySet(H.output,ke.pending_buf,ke.pending_out,Ne,H.next_out),H.next_out+=Ne,ke.pending_out+=Ne,H.total_out+=Ne,H.avail_out-=Ne,ke.pending-=Ne,ke.pending===0&&(ke.pending_out=0))}function z(H,ke){t._tr_flush_block(H,H.block_start>=0?H.block_start:-1,H.strstart-H.block_start,ke),H.block_start=H.strstart,Q(H.strm)}function V(H,ke){H.pending_buf[H.pending++]=ke}function ae(H,ke){H.pending_buf[H.pending++]=ke>>>8&255,H.pending_buf[H.pending++]=ke&255}function Te(H,ke,Ne,oe){var Le=H.avail_in;return Le>oe&&(Le=oe),Le===0?0:(H.avail_in-=Le,e.arraySet(ke,H.input,H.next_in,Le,Ne),H.state.wrap===1?H.adler=n(H.adler,ke,Le,Ne):H.state.wrap===2&&(H.adler=a(H.adler,ke,Le,Ne)),H.next_in+=Le,H.total_in+=Le,Le)}function Ie(H,ke){var Ne=H.max_chain_length,oe=H.strstart,Le,Fe,He=H.prev_length,qe=H.nice_match,Ke=H.strstart>H.w_size-W?H.strstart-(H.w_size-W):0,ct=H.window,xn=H.w_mask,wt=H.prev,dt=H.strstart+x,Pt=ct[oe+He-1],Vt=ct[oe+He];H.prev_length>=H.good_match&&(Ne>>=2),qe>H.lookahead&&(qe=H.lookahead);do if(Le=ke,!(ct[Le+He]!==Vt||ct[Le+He-1]!==Pt||ct[Le]!==ct[oe]||ct[++Le]!==ct[oe+1])){oe+=2,Le++;do;while(ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&ct[++oe]===ct[++Le]&&oe<dt);if(Fe=x-(dt-oe),oe=dt-x,Fe>He){if(H.match_start=ke,He=Fe,Fe>=qe)break;Pt=ct[oe+He-1],Vt=ct[oe+He]}}while((ke=wt[ke&xn])>Ke&&--Ne!==0);return He<=H.lookahead?He:H.lookahead}function Ce(H){var ke=H.w_size,Ne,oe,Le,Fe,He;do{if(Fe=H.window_size-H.lookahead-H.strstart,H.strstart>=ke+(ke-W)){e.arraySet(H.window,H.window,ke,ke,0),H.match_start-=ke,H.strstart-=ke,H.block_start-=ke,oe=H.hash_size,Ne=oe;do Le=H.head[--Ne],H.head[Ne]=Le>=ke?Le-ke:0;while(--oe);oe=ke,Ne=oe;do Le=H.prev[--Ne],H.prev[Ne]=Le>=ke?Le-ke:0;while(--oe);Fe+=ke}if(H.strm.avail_in===0)break;if(oe=Te(H.strm,H.window,H.strstart+H.lookahead,Fe),H.lookahead+=oe,H.lookahead+H.insert>=M)for(He=H.strstart-H.insert,H.ins_h=H.window[He],H.ins_h=(H.ins_h<<H.hash_shift^H.window[He+1])&H.hash_mask;H.insert&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[He+M-1])&H.hash_mask,H.prev[He&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=He,He++,H.insert--,!(H.lookahead+H.insert<M)););}while(H.lookahead<W&&H.strm.avail_in!==0)}function We(H,ke){var Ne=65535;for(Ne>H.pending_buf_size-5&&(Ne=H.pending_buf_size-5);;){if(H.lookahead<=1){if(Ce(H),H.lookahead===0&&ke===d)return ie;if(H.lookahead===0)break}H.strstart+=H.lookahead,H.lookahead=0;var oe=H.block_start+Ne;if((H.strstart===0||H.strstart>=oe)&&(H.lookahead=H.strstart-oe,H.strstart=oe,z(H,!1),H.strm.avail_out===0)||H.strstart-H.block_start>=H.w_size-W&&(z(H,!1),H.strm.avail_out===0))return ie}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?be:Ae):(H.strstart>H.block_start&&(z(H,!1),H.strm.avail_out===0),ie)}function Ge(H,ke){for(var Ne,oe;;){if(H.lookahead<W){if(Ce(H),H.lookahead<W&&ke===d)return ie;if(H.lookahead===0)break}if(Ne=0,H.lookahead>=M&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+M-1])&H.hash_mask,Ne=H.prev[H.strstart&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=H.strstart),Ne!==0&&H.strstart-Ne<=H.w_size-W&&(H.match_length=Ie(H,Ne)),H.match_length>=M)if(oe=t._tr_tally(H,H.strstart-H.match_start,H.match_length-M),H.lookahead-=H.match_length,H.match_length<=H.max_lazy_match&&H.lookahead>=M){H.match_length--;do H.strstart++,H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+M-1])&H.hash_mask,Ne=H.prev[H.strstart&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=H.strstart;while(--H.match_length!==0);H.strstart++}else H.strstart+=H.match_length,H.match_length=0,H.ins_h=H.window[H.strstart],H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+1])&H.hash_mask;else oe=t._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++;if(oe&&(z(H,!1),H.strm.avail_out===0))return ie}return H.insert=H.strstart<M-1?H.strstart:M-1,ke===w?(z(H,!0),H.strm.avail_out===0?be:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ie:ye}function Y(H,ke){for(var Ne,oe,Le;;){if(H.lookahead<W){if(Ce(H),H.lookahead<W&&ke===d)return ie;if(H.lookahead===0)break}if(Ne=0,H.lookahead>=M&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+M-1])&H.hash_mask,Ne=H.prev[H.strstart&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=H.strstart),H.prev_length=H.match_length,H.prev_match=H.match_start,H.match_length=M-1,Ne!==0&&H.prev_length<H.max_lazy_match&&H.strstart-Ne<=H.w_size-W&&(H.match_length=Ie(H,Ne),H.match_length<=5&&(H.strategy===y||H.match_length===M&&H.strstart-H.match_start>4096)&&(H.match_length=M-1)),H.prev_length>=M&&H.match_length<=H.prev_length){Le=H.strstart+H.lookahead-M,oe=t._tr_tally(H,H.strstart-1-H.prev_match,H.prev_length-M),H.lookahead-=H.prev_length-1,H.prev_length-=2;do++H.strstart<=Le&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+M-1])&H.hash_mask,Ne=H.prev[H.strstart&H.w_mask]=H.head[H.ins_h],H.head[H.ins_h]=H.strstart);while(--H.prev_length!==0);if(H.match_available=0,H.match_length=M-1,H.strstart++,oe&&(z(H,!1),H.strm.avail_out===0))return ie}else if(H.match_available){if(oe=t._tr_tally(H,0,H.window[H.strstart-1]),oe&&z(H,!1),H.strstart++,H.lookahead--,H.strm.avail_out===0)return ie}else H.match_available=1,H.strstart++,H.lookahead--}return H.match_available&&(oe=t._tr_tally(H,0,H.window[H.strstart-1]),H.match_available=0),H.insert=H.strstart<M-1?H.strstart:M-1,ke===w?(z(H,!0),H.strm.avail_out===0?be:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ie:ye}function te(H,ke){for(var Ne,oe,Le,Fe,He=H.window;;){if(H.lookahead<=x){if(Ce(H),H.lookahead<=x&&ke===d)return ie;if(H.lookahead===0)break}if(H.match_length=0,H.lookahead>=M&&H.strstart>0&&(Le=H.strstart-1,oe=He[Le],oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le])){Fe=H.strstart+x;do;while(oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&oe===He[++Le]&&Le<Fe);H.match_length=x-(Fe-Le),H.match_length>H.lookahead&&(H.match_length=H.lookahead)}if(H.match_length>=M?(Ne=t._tr_tally(H,1,H.match_length-M),H.lookahead-=H.match_length,H.strstart+=H.match_length,H.match_length=0):(Ne=t._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++),Ne&&(z(H,!1),H.strm.avail_out===0))return ie}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?be:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ie:ye}function K(H,ke){for(var Ne;;){if(H.lookahead===0&&(Ce(H),H.lookahead===0)){if(ke===d)return ie;break}if(H.match_length=0,Ne=t._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++,Ne&&(z(H,!1),H.strm.avail_out===0))return ie}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?be:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ie:ye}function j(H,ke,Ne,oe,Le){this.good_length=H,this.max_lazy=ke,this.nice_length=Ne,this.max_chain=oe,this.func=Le}var J;J=[new j(0,0,0,0,We),new j(4,4,8,4,Ge),new j(4,5,16,8,Ge),new j(4,6,32,32,Ge),new j(4,4,16,16,Y),new j(8,16,32,32,Y),new j(8,16,128,128,Y),new j(8,32,128,256,Y),new j(32,128,258,1024,Y),new j(32,258,258,4096,Y)];function ce(H){H.window_size=2*H.w_size,de(H.head),H.max_lazy_match=J[H.level].max_lazy,H.good_match=J[H.level].good_length,H.nice_match=J[H.level].nice_length,H.max_chain_length=J[H.level].max_chain,H.strstart=0,H.block_start=0,H.lookahead=0,H.insert=0,H.match_length=H.prev_length=M-1,H.match_available=0,H.ins_h=0}function X(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=I,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new e.Buf16(T*2),this.dyn_dtree=new e.Buf16((2*r+1)*2),this.bl_tree=new e.Buf16((2*s+1)*2),de(this.dyn_ltree),de(this.dyn_dtree),de(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new e.Buf16(v+1),this.heap=new e.Buf16(2*m+1),de(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new e.Buf16(2*m+1),de(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ge(H){var ke;return!H||!H.state?le(H,R):(H.total_in=H.total_out=0,H.data_type=C,ke=H.state,ke.pending=0,ke.pending_out=0,ke.wrap<0&&(ke.wrap=-ke.wrap),ke.status=ke.wrap?B:ue,H.adler=ke.wrap===2?0:1,ke.last_flush=d,t._tr_init(ke),P)}function Se(H){var ke=ge(H);return ke===P&&ce(H.state),ke}function De(H,ke){return!H||!H.state||H.state.wrap!==2?R:(H.state.gzhead=ke,P)}function we(H,ke,Ne,oe,Le,Fe){if(!H)return R;var He=1;if(ke===g&&(ke=6),oe<0?(He=0,oe=-oe):oe>15&&(He=2,oe-=16),Le<1||Le>A||Ne!==I||oe<8||oe>15||ke<0||ke>9||Fe<0||Fe>k)return le(H,R);oe===8&&(oe=9);var qe=new X;return H.state=qe,qe.strm=H,qe.wrap=He,qe.gzhead=null,qe.w_bits=oe,qe.w_size=1<<qe.w_bits,qe.w_mask=qe.w_size-1,qe.hash_bits=Le+7,qe.hash_size=1<<qe.hash_bits,qe.hash_mask=qe.hash_size-1,qe.hash_shift=~~((qe.hash_bits+M-1)/M),qe.window=new e.Buf8(qe.w_size*2),qe.head=new e.Buf16(qe.hash_size),qe.prev=new e.Buf16(qe.w_size),qe.lit_bufsize=1<<Le+6,qe.pending_buf_size=qe.lit_bufsize*4,qe.pending_buf=new e.Buf8(qe.pending_buf_size),qe.d_buf=1*qe.lit_bufsize,qe.l_buf=3*qe.lit_bufsize,qe.level=ke,qe.strategy=Fe,qe.method=Ne,Se(H)}function Pe(H,ke){return we(H,ke,I,f,E,D)}function re(H,ke){var Ne,oe,Le,Fe;if(!H||!H.state||ke>U||ke<0)return H?le(H,R):R;if(oe=H.state,!H.output||!H.input&&H.avail_in!==0||oe.status===se&&ke!==w)return le(H,H.avail_out===0?L:R);if(oe.strm=H,Ne=oe.last_flush,oe.last_flush=ke,oe.status===B)if(oe.wrap===2)H.adler=0,V(oe,31),V(oe,139),V(oe,8),oe.gzhead?(V(oe,(oe.gzhead.text?1:0)+(oe.gzhead.hcrc?2:0)+(oe.gzhead.extra?4:0)+(oe.gzhead.name?8:0)+(oe.gzhead.comment?16:0)),V(oe,oe.gzhead.time&255),V(oe,oe.gzhead.time>>8&255),V(oe,oe.gzhead.time>>16&255),V(oe,oe.gzhead.time>>24&255),V(oe,oe.level===9?2:oe.strategy>=h||oe.level<2?4:0),V(oe,oe.gzhead.os&255),oe.gzhead.extra&&oe.gzhead.extra.length&&(V(oe,oe.gzhead.extra.length&255),V(oe,oe.gzhead.extra.length>>8&255)),oe.gzhead.hcrc&&(H.adler=a(H.adler,oe.pending_buf,oe.pending,0)),oe.gzindex=0,oe.status=q):(V(oe,0),V(oe,0),V(oe,0),V(oe,0),V(oe,0),V(oe,oe.level===9?2:oe.strategy>=h||oe.level<2?4:0),V(oe,pe),oe.status=ue);else{var He=I+(oe.w_bits-8<<4)<<8,qe=-1;oe.strategy>=h||oe.level<2?qe=0:oe.level<6?qe=1:oe.level===6?qe=2:qe=3,He|=qe<<6,oe.strstart!==0&&(He|=S),He+=31-He%31,oe.status=ue,ae(oe,He),oe.strstart!==0&&(ae(oe,H.adler>>>16),ae(oe,H.adler&65535)),H.adler=1}if(oe.status===q)if(oe.gzhead.extra){for(Le=oe.pending;oe.gzindex<(oe.gzhead.extra.length&65535)&&!(oe.pending===oe.pending_buf_size&&(oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),Q(H),Le=oe.pending,oe.pending===oe.pending_buf_size));)V(oe,oe.gzhead.extra[oe.gzindex]&255),oe.gzindex++;oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),oe.gzindex===oe.gzhead.extra.length&&(oe.gzindex=0,oe.status=G)}else oe.status=G;if(oe.status===G)if(oe.gzhead.name){Le=oe.pending;do{if(oe.pending===oe.pending_buf_size&&(oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),Q(H),Le=oe.pending,oe.pending===oe.pending_buf_size)){Fe=1;break}oe.gzindex<oe.gzhead.name.length?Fe=oe.gzhead.name.charCodeAt(oe.gzindex++)&255:Fe=0,V(oe,Fe)}while(Fe!==0);oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),Fe===0&&(oe.gzindex=0,oe.status=$)}else oe.status=$;if(oe.status===$)if(oe.gzhead.comment){Le=oe.pending;do{if(oe.pending===oe.pending_buf_size&&(oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),Q(H),Le=oe.pending,oe.pending===oe.pending_buf_size)){Fe=1;break}oe.gzindex<oe.gzhead.comment.length?Fe=oe.gzhead.comment.charCodeAt(oe.gzindex++)&255:Fe=0,V(oe,Fe)}while(Fe!==0);oe.gzhead.hcrc&&oe.pending>Le&&(H.adler=a(H.adler,oe.pending_buf,oe.pending-Le,Le)),Fe===0&&(oe.status=ee)}else oe.status=ee;if(oe.status===ee&&(oe.gzhead.hcrc?(oe.pending+2>oe.pending_buf_size&&Q(H),oe.pending+2<=oe.pending_buf_size&&(V(oe,H.adler&255),V(oe,H.adler>>8&255),H.adler=0,oe.status=ue)):oe.status=ue),oe.pending!==0){if(Q(H),H.avail_out===0)return oe.last_flush=-1,P}else if(H.avail_in===0&&me(ke)<=me(Ne)&&ke!==w)return le(H,L);if(oe.status===se&&H.avail_in!==0)return le(H,L);if(H.avail_in!==0||oe.lookahead!==0||ke!==d&&oe.status!==se){var Ke=oe.strategy===h?K(oe,ke):oe.strategy===p?te(oe,ke):J[oe.level].func(oe,ke);if((Ke===be||Ke===Ae)&&(oe.status=se),Ke===ie||Ke===be)return H.avail_out===0&&(oe.last_flush=-1),P;if(Ke===ye&&(ke===u?t._tr_align(oe):ke!==U&&(t._tr_stored_block(oe,0,0,!1),ke===c&&(de(oe.head),oe.lookahead===0&&(oe.strstart=0,oe.block_start=0,oe.insert=0))),Q(H),H.avail_out===0))return oe.last_flush=-1,P}return ke!==w?P:oe.wrap<=0?O:(oe.wrap===2?(V(oe,H.adler&255),V(oe,H.adler>>8&255),V(oe,H.adler>>16&255),V(oe,H.adler>>24&255),V(oe,H.total_in&255),V(oe,H.total_in>>8&255),V(oe,H.total_in>>16&255),V(oe,H.total_in>>24&255)):(ae(oe,H.adler>>>16),ae(oe,H.adler&65535)),Q(H),oe.wrap>0&&(oe.wrap=-oe.wrap),oe.pending!==0?P:O)}function Re(H){var ke;return!H||!H.state?R:(ke=H.state.status,ke!==B&&ke!==q&&ke!==G&&ke!==$&&ke!==ee&&ke!==ue&&ke!==se?le(H,R):(H.state=null,ke===ue?le(H,_):P))}function ze(H,ke){var Ne=ke.length,oe,Le,Fe,He,qe,Ke,ct,xn;if(!H||!H.state||(oe=H.state,He=oe.wrap,He===2||He===1&&oe.status!==B||oe.lookahead))return R;for(He===1&&(H.adler=n(H.adler,ke,Ne,0)),oe.wrap=0,Ne>=oe.w_size&&(He===0&&(de(oe.head),oe.strstart=0,oe.block_start=0,oe.insert=0),xn=new e.Buf8(oe.w_size),e.arraySet(xn,ke,Ne-oe.w_size,oe.w_size,0),ke=xn,Ne=oe.w_size),qe=H.avail_in,Ke=H.next_in,ct=H.input,H.avail_in=Ne,H.next_in=0,H.input=ke,Ce(oe);oe.lookahead>=M;){Le=oe.strstart,Fe=oe.lookahead-(M-1);do oe.ins_h=(oe.ins_h<<oe.hash_shift^oe.window[Le+M-1])&oe.hash_mask,oe.prev[Le&oe.w_mask]=oe.head[oe.ins_h],oe.head[oe.ins_h]=Le,Le++;while(--Fe);oe.strstart=Le,oe.lookahead=M-1,Ce(oe)}return oe.strstart+=oe.lookahead,oe.block_start=oe.strstart,oe.insert=oe.lookahead,oe.lookahead=0,oe.match_length=oe.prev_length=M-1,oe.match_available=0,H.next_in=Ke,H.input=ct,H.avail_in=qe,oe.wrap=He,P}return Hn.deflateInit=Pe,Hn.deflateInit2=we,Hn.deflateReset=Se,Hn.deflateResetKeep=ge,Hn.deflateSetHeader=De,Hn.deflate=re,Hn.deflateEnd=Re,Hn.deflateSetDictionary=ze,Hn.deflateInfo="pako deflate (from Nodeca project)",Hn}var rr={},sp;function eg(){if(sp)return rr;sp=1;var e=Ji(),t=!0,n=!0;try{String.fromCharCode.apply(null,[0])}catch{t=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{n=!1}for(var a=new e.Buf8(256),l=0;l<256;l++)a[l]=l>=252?6:l>=248?5:l>=240?4:l>=224?3:l>=192?2:1;a[254]=a[254]=1,rr.string2buf=function(u){var c,w,U,P,O,R=u.length,_=0;for(P=0;P<R;P++)w=u.charCodeAt(P),(w&64512)===55296&&P+1<R&&(U=u.charCodeAt(P+1),(U&64512)===56320&&(w=65536+(w-55296<<10)+(U-56320),P++)),_+=w<128?1:w<2048?2:w<65536?3:4;for(c=new e.Buf8(_),O=0,P=0;O<_;P++)w=u.charCodeAt(P),(w&64512)===55296&&P+1<R&&(U=u.charCodeAt(P+1),(U&64512)===56320&&(w=65536+(w-55296<<10)+(U-56320),P++)),w<128?c[O++]=w:w<2048?(c[O++]=192|w>>>6,c[O++]=128|w&63):w<65536?(c[O++]=224|w>>>12,c[O++]=128|w>>>6&63,c[O++]=128|w&63):(c[O++]=240|w>>>18,c[O++]=128|w>>>12&63,c[O++]=128|w>>>6&63,c[O++]=128|w&63);return c};function d(u,c){if(c<65534&&(u.subarray&&n||!u.subarray&&t))return String.fromCharCode.apply(null,e.shrinkBuf(u,c));for(var w="",U=0;U<c;U++)w+=String.fromCharCode(u[U]);return w}return rr.buf2binstring=function(u){return d(u,u.length)},rr.binstring2buf=function(u){for(var c=new e.Buf8(u.length),w=0,U=c.length;w<U;w++)c[w]=u.charCodeAt(w);return c},rr.buf2string=function(u,c){var w,U,P,O,R=c||u.length,_=new Array(R*2);for(U=0,w=0;w<R;){if(P=u[w++],P<128){_[U++]=P;continue}if(O=a[P],O>4){_[U++]=65533,w+=O-1;continue}for(P&=O===2?31:O===3?15:7;O>1&&w<R;)P=P<<6|u[w++]&63,O--;if(O>1){_[U++]=65533;continue}P<65536?_[U++]=P:(P-=65536,_[U++]=55296|P>>10&1023,_[U++]=56320|P&1023)}return d(_,U)},rr.utf8border=function(u,c){var w;for(c=c||u.length,c>u.length&&(c=u.length),w=c-1;w>=0&&(u[w]&192)===128;)w--;return w<0||w===0?c:w+a[u[w]]>c?w:c},rr}var yl,op;function tg(){if(op)return yl;op=1;function e(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}return yl=e,yl}var ap;function n_(){if(ap)return Br;ap=1;var e=t_(),t=Ji(),n=eg(),a=Hc(),l=tg(),d=Object.prototype.toString,u=0,c=4,w=0,U=1,P=2,O=-1,R=0,_=8;function L(p){if(!(this instanceof L))return new L(p);this.options=t.assign({level:O,method:_,chunkSize:16384,windowBits:15,memLevel:8,strategy:R,to:""},p||{});var k=this.options;k.raw&&k.windowBits>0?k.windowBits=-k.windowBits:k.gzip&&k.windowBits>0&&k.windowBits<16&&(k.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0;var D=e.deflateInit2(this.strm,k.level,k.method,k.windowBits,k.memLevel,k.strategy);if(D!==w)throw new Error(a[D]);if(k.header&&e.deflateSetHeader(this.strm,k.header),k.dictionary){var C;if(typeof k.dictionary=="string"?C=n.string2buf(k.dictionary):d.call(k.dictionary)==="[object ArrayBuffer]"?C=new Uint8Array(k.dictionary):C=k.dictionary,D=e.deflateSetDictionary(this.strm,C),D!==w)throw new Error(a[D]);this._dict_set=!0}}L.prototype.push=function(p,k){var D=this.strm,C=this.options.chunkSize,I,A;if(this.ended)return!1;A=k===~~k?k:k===!0?c:u,typeof p=="string"?D.input=n.string2buf(p):d.call(p)==="[object ArrayBuffer]"?D.input=new Uint8Array(p):D.input=p,D.next_in=0,D.avail_in=D.input.length;do{if(D.avail_out===0&&(D.output=new t.Buf8(C),D.next_out=0,D.avail_out=C),I=e.deflate(D,A),I!==U&&I!==w)return this.onEnd(I),this.ended=!0,!1;(D.avail_out===0||D.avail_in===0&&(A===c||A===P))&&(this.options.to==="string"?this.onData(n.buf2binstring(t.shrinkBuf(D.output,D.next_out))):this.onData(t.shrinkBuf(D.output,D.next_out)))}while((D.avail_in>0||D.avail_out===0)&&I!==U);return A===c?(I=e.deflateEnd(this.strm),this.onEnd(I),this.ended=!0,I===w):(A===P&&(this.onEnd(w),D.avail_out=0),!0)},L.prototype.onData=function(p){this.chunks.push(p)},L.prototype.onEnd=function(p){p===w&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=t.flattenChunks(this.chunks)),this.chunks=[],this.err=p,this.msg=this.strm.msg};function g(p,k){var D=new L(k);if(D.push(p,!0),D.err)throw D.msg||a[D.err];return D.result}function y(p,k){return k=k||{},k.raw=!0,g(p,k)}function h(p,k){return k=k||{},k.gzip=!0,g(p,k)}return Br.Deflate=L,Br.deflate=g,Br.deflateRaw=y,Br.gzip=h,Br}var jr={},Dn={},gl,up;function i_(){if(up)return gl;up=1;var e=30,t=12;return gl=function(a,l){var d,u,c,w,U,P,O,R,_,L,g,y,h,p,k,D,C,I,A,f,E,b,F,m,r;d=a.state,u=a.next_in,m=a.input,c=u+(a.avail_in-5),w=a.next_out,r=a.output,U=w-(l-a.avail_out),P=w+(a.avail_out-257),O=d.dmax,R=d.wsize,_=d.whave,L=d.wnext,g=d.window,y=d.hold,h=d.bits,p=d.lencode,k=d.distcode,D=(1<<d.lenbits)-1,C=(1<<d.distbits)-1;e:do{h<15&&(y+=m[u++]<<h,h+=8,y+=m[u++]<<h,h+=8),I=p[y&D];t:for(;;){if(A=I>>>24,y>>>=A,h-=A,A=I>>>16&255,A===0)r[w++]=I&65535;else if(A&16){f=I&65535,A&=15,A&&(h<A&&(y+=m[u++]<<h,h+=8),f+=y&(1<<A)-1,y>>>=A,h-=A),h<15&&(y+=m[u++]<<h,h+=8,y+=m[u++]<<h,h+=8),I=k[y&C];n:for(;;){if(A=I>>>24,y>>>=A,h-=A,A=I>>>16&255,A&16){if(E=I&65535,A&=15,h<A&&(y+=m[u++]<<h,h+=8,h<A&&(y+=m[u++]<<h,h+=8)),E+=y&(1<<A)-1,E>O){a.msg="invalid distance too far back",d.mode=e;break e}if(y>>>=A,h-=A,A=w-U,E>A){if(A=E-A,A>_&&d.sane){a.msg="invalid distance too far back",d.mode=e;break e}if(b=0,F=g,L===0){if(b+=R-A,A<f){f-=A;do r[w++]=g[b++];while(--A);b=w-E,F=r}}else if(L<A){if(b+=R+L-A,A-=L,A<f){f-=A;do r[w++]=g[b++];while(--A);if(b=0,L<f){A=L,f-=A;do r[w++]=g[b++];while(--A);b=w-E,F=r}}}else if(b+=L-A,A<f){f-=A;do r[w++]=g[b++];while(--A);b=w-E,F=r}for(;f>2;)r[w++]=F[b++],r[w++]=F[b++],r[w++]=F[b++],f-=3;f&&(r[w++]=F[b++],f>1&&(r[w++]=F[b++]))}else{b=w-E;do r[w++]=r[b++],r[w++]=r[b++],r[w++]=r[b++],f-=3;while(f>2);f&&(r[w++]=r[b++],f>1&&(r[w++]=r[b++]))}}else if(A&64){a.msg="invalid distance code",d.mode=e;break e}else{I=k[(I&65535)+(y&(1<<A)-1)];continue n}break}}else if(A&64)if(A&32){d.mode=t;break e}else{a.msg="invalid literal/length code",d.mode=e;break e}else{I=p[(I&65535)+(y&(1<<A)-1)];continue t}break}}while(u<c&&w<P);f=h>>3,u-=f,h-=f<<3,y&=(1<<h)-1,a.next_in=u,a.next_out=w,a.avail_in=u<c?5+(c-u):5-(u-c),a.avail_out=w<P?257+(P-w):257-(w-P),d.hold=y,d.bits=h},gl}var bl,lp;function r_(){if(lp)return bl;lp=1;var e=Ji(),t=15,n=852,a=592,l=0,d=1,u=2,c=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],w=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],U=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],P=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];return bl=function(R,_,L,g,y,h,p,k){var D=k.bits,C=0,I=0,A=0,f=0,E=0,b=0,F=0,m=0,r=0,s=0,T,v,M,x,W,S=null,B=0,q,G=new e.Buf16(t+1),$=new e.Buf16(t+1),ee=null,ue=0,se,ie,ye;for(C=0;C<=t;C++)G[C]=0;for(I=0;I<g;I++)G[_[L+I]]++;for(E=D,f=t;f>=1&&G[f]===0;f--);if(E>f&&(E=f),f===0)return y[h++]=1<<24|64<<16|0,y[h++]=1<<24|64<<16|0,k.bits=1,0;for(A=1;A<f&&G[A]===0;A++);for(E<A&&(E=A),m=1,C=1;C<=t;C++)if(m<<=1,m-=G[C],m<0)return-1;if(m>0&&(R===l||f!==1))return-1;for($[1]=0,C=1;C<t;C++)$[C+1]=$[C]+G[C];for(I=0;I<g;I++)_[L+I]!==0&&(p[$[_[L+I]]++]=I);if(R===l?(S=ee=p,q=19):R===d?(S=c,B-=257,ee=w,ue-=257,q=256):(S=U,ee=P,q=-1),s=0,I=0,C=A,W=h,b=E,F=0,M=-1,r=1<<E,x=r-1,R===d&&r>n||R===u&&r>a)return 1;for(;;){se=C-F,p[I]<q?(ie=0,ye=p[I]):p[I]>q?(ie=ee[ue+p[I]],ye=S[B+p[I]]):(ie=96,ye=0),T=1<<C-F,v=1<<b,A=v;do v-=T,y[W+(s>>F)+v]=se<<24|ie<<16|ye|0;while(v!==0);for(T=1<<C-1;s&T;)T>>=1;if(T!==0?(s&=T-1,s+=T):s=0,I++,--G[C]===0){if(C===f)break;C=_[L+p[I]]}if(C>E&&(s&x)!==M){for(F===0&&(F=E),W+=A,b=C-F,m=1<<b;b+F<f&&(m-=G[b+F],!(m<=0));)b++,m<<=1;if(r+=1<<b,R===d&&r>n||R===u&&r>a)return 1;M=s&x,y[M]=E<<24|b<<16|W-h|0}}return s!==0&&(y[W+s]=C-F<<24|64<<16|0),k.bits=E,0},bl}var cp;function s_(){if(cp)return Dn;cp=1;var e=Ji(),t=Yy(),n=$y(),a=i_(),l=r_(),d=0,u=1,c=2,w=4,U=5,P=6,O=0,R=1,_=2,L=-2,g=-3,y=-4,h=-5,p=8,k=1,D=2,C=3,I=4,A=5,f=6,E=7,b=8,F=9,m=10,r=11,s=12,T=13,v=14,M=15,x=16,W=17,S=18,B=19,q=20,G=21,$=22,ee=23,ue=24,se=25,ie=26,ye=27,be=28,Ae=29,pe=30,le=31,me=32,de=852,Q=592,z=15,V=z;function ae(we){return(we>>>24&255)+(we>>>8&65280)+((we&65280)<<8)+((we&255)<<24)}function Te(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new e.Buf16(320),this.work=new e.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function Ie(we){var Pe;return!we||!we.state?L:(Pe=we.state,we.total_in=we.total_out=Pe.total=0,we.msg="",Pe.wrap&&(we.adler=Pe.wrap&1),Pe.mode=k,Pe.last=0,Pe.havedict=0,Pe.dmax=32768,Pe.head=null,Pe.hold=0,Pe.bits=0,Pe.lencode=Pe.lendyn=new e.Buf32(de),Pe.distcode=Pe.distdyn=new e.Buf32(Q),Pe.sane=1,Pe.back=-1,O)}function Ce(we){var Pe;return!we||!we.state?L:(Pe=we.state,Pe.wsize=0,Pe.whave=0,Pe.wnext=0,Ie(we))}function We(we,Pe){var re,Re;return!we||!we.state||(Re=we.state,Pe<0?(re=0,Pe=-Pe):(re=(Pe>>4)+1,Pe<48&&(Pe&=15)),Pe&&(Pe<8||Pe>15))?L:(Re.window!==null&&Re.wbits!==Pe&&(Re.window=null),Re.wrap=re,Re.wbits=Pe,Ce(we))}function Ge(we,Pe){var re,Re;return we?(Re=new Te,we.state=Re,Re.window=null,re=We(we,Pe),re!==O&&(we.state=null),re):L}function Y(we){return Ge(we,V)}var te=!0,K,j;function J(we){if(te){var Pe;for(K=new e.Buf32(512),j=new e.Buf32(32),Pe=0;Pe<144;)we.lens[Pe++]=8;for(;Pe<256;)we.lens[Pe++]=9;for(;Pe<280;)we.lens[Pe++]=7;for(;Pe<288;)we.lens[Pe++]=8;for(l(u,we.lens,0,288,K,0,we.work,{bits:9}),Pe=0;Pe<32;)we.lens[Pe++]=5;l(c,we.lens,0,32,j,0,we.work,{bits:5}),te=!1}we.lencode=K,we.lenbits=9,we.distcode=j,we.distbits=5}function ce(we,Pe,re,Re){var ze,H=we.state;return H.window===null&&(H.wsize=1<<H.wbits,H.wnext=0,H.whave=0,H.window=new e.Buf8(H.wsize)),Re>=H.wsize?(e.arraySet(H.window,Pe,re-H.wsize,H.wsize,0),H.wnext=0,H.whave=H.wsize):(ze=H.wsize-H.wnext,ze>Re&&(ze=Re),e.arraySet(H.window,Pe,re-Re,ze,H.wnext),Re-=ze,Re?(e.arraySet(H.window,Pe,re-Re,Re,0),H.wnext=Re,H.whave=H.wsize):(H.wnext+=ze,H.wnext===H.wsize&&(H.wnext=0),H.whave<H.wsize&&(H.whave+=ze))),0}function X(we,Pe){var re,Re,ze,H,ke,Ne,oe,Le,Fe,He,qe,Ke,ct,xn,wt=0,dt,Pt,Vt,en,Sr,wr,Mt,ln,Jt=new e.Buf8(4),zn,bn,ao=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!we||!we.state||!we.output||!we.input&&we.avail_in!==0)return L;re=we.state,re.mode===s&&(re.mode=T),ke=we.next_out,ze=we.output,oe=we.avail_out,H=we.next_in,Re=we.input,Ne=we.avail_in,Le=re.hold,Fe=re.bits,He=Ne,qe=oe,ln=O;e:for(;;)switch(re.mode){case k:if(re.wrap===0){re.mode=T;break}for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(re.wrap&2&&Le===35615){re.check=0,Jt[0]=Le&255,Jt[1]=Le>>>8&255,re.check=n(re.check,Jt,2,0),Le=0,Fe=0,re.mode=D;break}if(re.flags=0,re.head&&(re.head.done=!1),!(re.wrap&1)||(((Le&255)<<8)+(Le>>8))%31){we.msg="incorrect header check",re.mode=pe;break}if((Le&15)!==p){we.msg="unknown compression method",re.mode=pe;break}if(Le>>>=4,Fe-=4,Mt=(Le&15)+8,re.wbits===0)re.wbits=Mt;else if(Mt>re.wbits){we.msg="invalid window size",re.mode=pe;break}re.dmax=1<<Mt,we.adler=re.check=1,re.mode=Le&512?m:s,Le=0,Fe=0;break;case D:for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(re.flags=Le,(re.flags&255)!==p){we.msg="unknown compression method",re.mode=pe;break}if(re.flags&57344){we.msg="unknown header flags set",re.mode=pe;break}re.head&&(re.head.text=Le>>8&1),re.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,re.check=n(re.check,Jt,2,0)),Le=0,Fe=0,re.mode=C;case C:for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.head&&(re.head.time=Le),re.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,Jt[2]=Le>>>16&255,Jt[3]=Le>>>24&255,re.check=n(re.check,Jt,4,0)),Le=0,Fe=0,re.mode=I;case I:for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.head&&(re.head.xflags=Le&255,re.head.os=Le>>8),re.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,re.check=n(re.check,Jt,2,0)),Le=0,Fe=0,re.mode=A;case A:if(re.flags&1024){for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.length=Le,re.head&&(re.head.extra_len=Le),re.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,re.check=n(re.check,Jt,2,0)),Le=0,Fe=0}else re.head&&(re.head.extra=null);re.mode=f;case f:if(re.flags&1024&&(Ke=re.length,Ke>Ne&&(Ke=Ne),Ke&&(re.head&&(Mt=re.head.extra_len-re.length,re.head.extra||(re.head.extra=new Array(re.head.extra_len)),e.arraySet(re.head.extra,Re,H,Ke,Mt)),re.flags&512&&(re.check=n(re.check,Re,Ke,H)),Ne-=Ke,H+=Ke,re.length-=Ke),re.length))break e;re.length=0,re.mode=E;case E:if(re.flags&2048){if(Ne===0)break e;Ke=0;do Mt=Re[H+Ke++],re.head&&Mt&&re.length<65536&&(re.head.name+=String.fromCharCode(Mt));while(Mt&&Ke<Ne);if(re.flags&512&&(re.check=n(re.check,Re,Ke,H)),Ne-=Ke,H+=Ke,Mt)break e}else re.head&&(re.head.name=null);re.length=0,re.mode=b;case b:if(re.flags&4096){if(Ne===0)break e;Ke=0;do Mt=Re[H+Ke++],re.head&&Mt&&re.length<65536&&(re.head.comment+=String.fromCharCode(Mt));while(Mt&&Ke<Ne);if(re.flags&512&&(re.check=n(re.check,Re,Ke,H)),Ne-=Ke,H+=Ke,Mt)break e}else re.head&&(re.head.comment=null);re.mode=F;case F:if(re.flags&512){for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Le!==(re.check&65535)){we.msg="header crc mismatch",re.mode=pe;break}Le=0,Fe=0}re.head&&(re.head.hcrc=re.flags>>9&1,re.head.done=!0),we.adler=re.check=0,re.mode=s;break;case m:for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}we.adler=re.check=ae(Le),Le=0,Fe=0,re.mode=r;case r:if(re.havedict===0)return we.next_out=ke,we.avail_out=oe,we.next_in=H,we.avail_in=Ne,re.hold=Le,re.bits=Fe,_;we.adler=re.check=1,re.mode=s;case s:if(Pe===U||Pe===P)break e;case T:if(re.last){Le>>>=Fe&7,Fe-=Fe&7,re.mode=ye;break}for(;Fe<3;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}switch(re.last=Le&1,Le>>>=1,Fe-=1,Le&3){case 0:re.mode=v;break;case 1:if(J(re),re.mode=q,Pe===P){Le>>>=2,Fe-=2;break e}break;case 2:re.mode=W;break;case 3:we.msg="invalid block type",re.mode=pe}Le>>>=2,Fe-=2;break;case v:for(Le>>>=Fe&7,Fe-=Fe&7;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if((Le&65535)!==(Le>>>16^65535)){we.msg="invalid stored block lengths",re.mode=pe;break}if(re.length=Le&65535,Le=0,Fe=0,re.mode=M,Pe===P)break e;case M:re.mode=x;case x:if(Ke=re.length,Ke){if(Ke>Ne&&(Ke=Ne),Ke>oe&&(Ke=oe),Ke===0)break e;e.arraySet(ze,Re,H,Ke,ke),Ne-=Ke,H+=Ke,oe-=Ke,ke+=Ke,re.length-=Ke;break}re.mode=s;break;case W:for(;Fe<14;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(re.nlen=(Le&31)+257,Le>>>=5,Fe-=5,re.ndist=(Le&31)+1,Le>>>=5,Fe-=5,re.ncode=(Le&15)+4,Le>>>=4,Fe-=4,re.nlen>286||re.ndist>30){we.msg="too many length or distance symbols",re.mode=pe;break}re.have=0,re.mode=S;case S:for(;re.have<re.ncode;){for(;Fe<3;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.lens[ao[re.have++]]=Le&7,Le>>>=3,Fe-=3}for(;re.have<19;)re.lens[ao[re.have++]]=0;if(re.lencode=re.lendyn,re.lenbits=7,zn={bits:re.lenbits},ln=l(d,re.lens,0,19,re.lencode,0,re.work,zn),re.lenbits=zn.bits,ln){we.msg="invalid code lengths set",re.mode=pe;break}re.have=0,re.mode=B;case B:for(;re.have<re.nlen+re.ndist;){for(;wt=re.lencode[Le&(1<<re.lenbits)-1],dt=wt>>>24,Pt=wt>>>16&255,Vt=wt&65535,!(dt<=Fe);){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Vt<16)Le>>>=dt,Fe-=dt,re.lens[re.have++]=Vt;else{if(Vt===16){for(bn=dt+2;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Le>>>=dt,Fe-=dt,re.have===0){we.msg="invalid bit length repeat",re.mode=pe;break}Mt=re.lens[re.have-1],Ke=3+(Le&3),Le>>>=2,Fe-=2}else if(Vt===17){for(bn=dt+3;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}Le>>>=dt,Fe-=dt,Mt=0,Ke=3+(Le&7),Le>>>=3,Fe-=3}else{for(bn=dt+7;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}Le>>>=dt,Fe-=dt,Mt=0,Ke=11+(Le&127),Le>>>=7,Fe-=7}if(re.have+Ke>re.nlen+re.ndist){we.msg="invalid bit length repeat",re.mode=pe;break}for(;Ke--;)re.lens[re.have++]=Mt}}if(re.mode===pe)break;if(re.lens[256]===0){we.msg="invalid code -- missing end-of-block",re.mode=pe;break}if(re.lenbits=9,zn={bits:re.lenbits},ln=l(u,re.lens,0,re.nlen,re.lencode,0,re.work,zn),re.lenbits=zn.bits,ln){we.msg="invalid literal/lengths set",re.mode=pe;break}if(re.distbits=6,re.distcode=re.distdyn,zn={bits:re.distbits},ln=l(c,re.lens,re.nlen,re.ndist,re.distcode,0,re.work,zn),re.distbits=zn.bits,ln){we.msg="invalid distances set",re.mode=pe;break}if(re.mode=q,Pe===P)break e;case q:re.mode=G;case G:if(Ne>=6&&oe>=258){we.next_out=ke,we.avail_out=oe,we.next_in=H,we.avail_in=Ne,re.hold=Le,re.bits=Fe,a(we,qe),ke=we.next_out,ze=we.output,oe=we.avail_out,H=we.next_in,Re=we.input,Ne=we.avail_in,Le=re.hold,Fe=re.bits,re.mode===s&&(re.back=-1);break}for(re.back=0;wt=re.lencode[Le&(1<<re.lenbits)-1],dt=wt>>>24,Pt=wt>>>16&255,Vt=wt&65535,!(dt<=Fe);){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Pt&&!(Pt&240)){for(en=dt,Sr=Pt,wr=Vt;wt=re.lencode[wr+((Le&(1<<en+Sr)-1)>>en)],dt=wt>>>24,Pt=wt>>>16&255,Vt=wt&65535,!(en+dt<=Fe);){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}Le>>>=en,Fe-=en,re.back+=en}if(Le>>>=dt,Fe-=dt,re.back+=dt,re.length=Vt,Pt===0){re.mode=ie;break}if(Pt&32){re.back=-1,re.mode=s;break}if(Pt&64){we.msg="invalid literal/length code",re.mode=pe;break}re.extra=Pt&15,re.mode=$;case $:if(re.extra){for(bn=re.extra;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.length+=Le&(1<<re.extra)-1,Le>>>=re.extra,Fe-=re.extra,re.back+=re.extra}re.was=re.length,re.mode=ee;case ee:for(;wt=re.distcode[Le&(1<<re.distbits)-1],dt=wt>>>24,Pt=wt>>>16&255,Vt=wt&65535,!(dt<=Fe);){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(!(Pt&240)){for(en=dt,Sr=Pt,wr=Vt;wt=re.distcode[wr+((Le&(1<<en+Sr)-1)>>en)],dt=wt>>>24,Pt=wt>>>16&255,Vt=wt&65535,!(en+dt<=Fe);){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}Le>>>=en,Fe-=en,re.back+=en}if(Le>>>=dt,Fe-=dt,re.back+=dt,Pt&64){we.msg="invalid distance code",re.mode=pe;break}re.offset=Vt,re.extra=Pt&15,re.mode=ue;case ue:if(re.extra){for(bn=re.extra;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}re.offset+=Le&(1<<re.extra)-1,Le>>>=re.extra,Fe-=re.extra,re.back+=re.extra}if(re.offset>re.dmax){we.msg="invalid distance too far back",re.mode=pe;break}re.mode=se;case se:if(oe===0)break e;if(Ke=qe-oe,re.offset>Ke){if(Ke=re.offset-Ke,Ke>re.whave&&re.sane){we.msg="invalid distance too far back",re.mode=pe;break}Ke>re.wnext?(Ke-=re.wnext,ct=re.wsize-Ke):ct=re.wnext-Ke,Ke>re.length&&(Ke=re.length),xn=re.window}else xn=ze,ct=ke-re.offset,Ke=re.length;Ke>oe&&(Ke=oe),oe-=Ke,re.length-=Ke;do ze[ke++]=xn[ct++];while(--Ke);re.length===0&&(re.mode=G);break;case ie:if(oe===0)break e;ze[ke++]=re.length,oe--,re.mode=G;break;case ye:if(re.wrap){for(;Fe<32;){if(Ne===0)break e;Ne--,Le|=Re[H++]<<Fe,Fe+=8}if(qe-=oe,we.total_out+=qe,re.total+=qe,qe&&(we.adler=re.check=re.flags?n(re.check,ze,qe,ke-qe):t(re.check,ze,qe,ke-qe)),qe=oe,(re.flags?Le:ae(Le))!==re.check){we.msg="incorrect data check",re.mode=pe;break}Le=0,Fe=0}re.mode=be;case be:if(re.wrap&&re.flags){for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Le!==(re.total&4294967295)){we.msg="incorrect length check",re.mode=pe;break}Le=0,Fe=0}re.mode=Ae;case Ae:ln=R;break e;case pe:ln=g;break e;case le:return y;case me:default:return L}return we.next_out=ke,we.avail_out=oe,we.next_in=H,we.avail_in=Ne,re.hold=Le,re.bits=Fe,(re.wsize||qe!==we.avail_out&&re.mode<pe&&(re.mode<ye||Pe!==w))&&ce(we,we.output,we.next_out,qe-we.avail_out),He-=we.avail_in,qe-=we.avail_out,we.total_in+=He,we.total_out+=qe,re.total+=qe,re.wrap&&qe&&(we.adler=re.check=re.flags?n(re.check,ze,qe,we.next_out-qe):t(re.check,ze,qe,we.next_out-qe)),we.data_type=re.bits+(re.last?64:0)+(re.mode===s?128:0)+(re.mode===q||re.mode===M?256:0),(He===0&&qe===0||Pe===w)&&ln===O&&(ln=h),ln}function ge(we){if(!we||!we.state)return L;var Pe=we.state;return Pe.window&&(Pe.window=null),we.state=null,O}function Se(we,Pe){var re;return!we||!we.state||(re=we.state,!(re.wrap&2))?L:(re.head=Pe,Pe.done=!1,O)}function De(we,Pe){var re=Pe.length,Re,ze,H;return!we||!we.state||(Re=we.state,Re.wrap!==0&&Re.mode!==r)?L:Re.mode===r&&(ze=1,ze=t(ze,Pe,re,0),ze!==Re.check)?g:(H=ce(we,Pe,re,re),H?(Re.mode=le,y):(Re.havedict=1,O))}return Dn.inflateReset=Ce,Dn.inflateReset2=We,Dn.inflateResetKeep=Ie,Dn.inflateInit=Y,Dn.inflateInit2=Ge,Dn.inflate=X,Dn.inflateEnd=ge,Dn.inflateGetHeader=Se,Dn.inflateSetDictionary=De,Dn.inflateInfo="pako inflate (from Nodeca project)",Dn}var Tl,fp;function ng(){return fp||(fp=1,Tl={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}),Tl}var vl,dp;function o_(){if(dp)return vl;dp=1;function e(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}return vl=e,vl}var hp;function a_(){if(hp)return jr;hp=1;var e=s_(),t=Ji(),n=eg(),a=ng(),l=Hc(),d=tg(),u=o_(),c=Object.prototype.toString;function w(O){if(!(this instanceof w))return new w(O);this.options=t.assign({chunkSize:16384,windowBits:0,to:""},O||{});var R=this.options;R.raw&&R.windowBits>=0&&R.windowBits<16&&(R.windowBits=-R.windowBits,R.windowBits===0&&(R.windowBits=-15)),R.windowBits>=0&&R.windowBits<16&&!(O&&O.windowBits)&&(R.windowBits+=32),R.windowBits>15&&R.windowBits<48&&(R.windowBits&15||(R.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d,this.strm.avail_out=0;var _=e.inflateInit2(this.strm,R.windowBits);if(_!==a.Z_OK)throw new Error(l[_]);if(this.header=new u,e.inflateGetHeader(this.strm,this.header),R.dictionary&&(typeof R.dictionary=="string"?R.dictionary=n.string2buf(R.dictionary):c.call(R.dictionary)==="[object ArrayBuffer]"&&(R.dictionary=new Uint8Array(R.dictionary)),R.raw&&(_=e.inflateSetDictionary(this.strm,R.dictionary),_!==a.Z_OK)))throw new Error(l[_])}w.prototype.push=function(O,R){var _=this.strm,L=this.options.chunkSize,g=this.options.dictionary,y,h,p,k,D,C=!1;if(this.ended)return!1;h=R===~~R?R:R===!0?a.Z_FINISH:a.Z_NO_FLUSH,typeof O=="string"?_.input=n.binstring2buf(O):c.call(O)==="[object ArrayBuffer]"?_.input=new Uint8Array(O):_.input=O,_.next_in=0,_.avail_in=_.input.length;do{if(_.avail_out===0&&(_.output=new t.Buf8(L),_.next_out=0,_.avail_out=L),y=e.inflate(_,a.Z_NO_FLUSH),y===a.Z_NEED_DICT&&g&&(y=e.inflateSetDictionary(this.strm,g)),y===a.Z_BUF_ERROR&&C===!0&&(y=a.Z_OK,C=!1),y!==a.Z_STREAM_END&&y!==a.Z_OK)return this.onEnd(y),this.ended=!0,!1;_.next_out&&(_.avail_out===0||y===a.Z_STREAM_END||_.avail_in===0&&(h===a.Z_FINISH||h===a.Z_SYNC_FLUSH))&&(this.options.to==="string"?(p=n.utf8border(_.output,_.next_out),k=_.next_out-p,D=n.buf2string(_.output,p),_.next_out=k,_.avail_out=L-k,k&&t.arraySet(_.output,_.output,p,k,0),this.onData(D)):this.onData(t.shrinkBuf(_.output,_.next_out))),_.avail_in===0&&_.avail_out===0&&(C=!0)}while((_.avail_in>0||_.avail_out===0)&&y!==a.Z_STREAM_END);return y===a.Z_STREAM_END&&(h=a.Z_FINISH),h===a.Z_FINISH?(y=e.inflateEnd(this.strm),this.onEnd(y),this.ended=!0,y===a.Z_OK):(h===a.Z_SYNC_FLUSH&&(this.onEnd(a.Z_OK),_.avail_out=0),!0)},w.prototype.onData=function(O){this.chunks.push(O)},w.prototype.onEnd=function(O){O===a.Z_OK&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=t.flattenChunks(this.chunks)),this.chunks=[],this.err=O,this.msg=this.strm.msg};function U(O,R){var _=new w(R);if(_.push(O,!0),_.err)throw _.msg||l[_.err];return _.result}function P(O,R){return R=R||{},R.raw=!0,U(O,R)}return jr.Inflate=w,jr.inflate=U,jr.inflateRaw=P,jr.ungzip=U,jr}var Sl,pp;function u_(){if(pp)return Sl;pp=1;var e=Ji().assign,t=n_(),n=a_(),a=ng(),l={};return e(l,t,n,a),Sl=l,Sl}var pi={},mp;function yn(){if(mp)return pi;mp=1,Object.defineProperty(pi,"__esModule",{value:!0}),pi.messageAssert=pi.messageError=pi.QuickTypeError=void 0;const e={InternalError:"Internal error: ${message}",MiscJSONParseError:"Syntax error in ${description} JSON ${address}: ${message}",MiscReadError:"Cannot read from file or URL ${fileOrURL}: ${message}",MiscUnicodeHighSurrogateWithoutLowSurrogate:"Malformed unicode: High surrogate not followed by low surrogate",MiscInvalidMinMaxConstraint:"Invalid min-max constraint: ${min}-${max}",InferenceJSONReferenceNotRooted:"JSON reference doesn't start with '#/': ${reference}",InferenceJSONReferenceToUnion:"JSON reference points to a union type: ${reference}",InferenceJSONReferenceWrongProperty:"JSON reference points to a non-existant property: ${reference}",InferenceJSONReferenceInvalidArrayIndex:"JSON reference uses invalid array index: ${reference}",SchemaArrayIsInvalidSchema:"An array is not a valid JSON Schema at ${ref}",SchemaNullIsInvalidSchema:"null is not a valid JSON Schema at ${ref}",SchemaRefMustBeString:"$ref must be a string, but is an ${actual} at ${ref}",SchemaAdditionalTypesForbidRequired:"Can't have non-specified required properties but forbidden additionalTypes at ${ref}",SchemaNoTypeSpecified:"JSON Schema must specify at least one type at ${ref}",SchemaInvalidType:"Invalid type ${type} in JSON Schema at ${ref}",SchemaFalseNotSupported:'Schema "false" is not supported at ${ref}',SchemaInvalidJSONSchemaType:"Value of type ${type} is not valid JSON Schema at ${ref}",SchemaRequiredMustBeStringOrStringArray:"`required` must be string or array of strings, but is ${actual} at ${ref}",SchemaRequiredElementMustBeString:"`required` must contain only strings, but it has ${element}, at ${ref}",SchemaTypeMustBeStringOrStringArray:"`type` must be string or array of strings, but is ${actual}",SchemaTypeElementMustBeString:"`type` must contain only strings, but it has ${element}",SchemaArrayItemsMustBeStringOrArray:"Array items must be an array or an object, but is ${actual}",SchemaIDMustHaveAddress:"$id ${id} doesn't have an address at ${ref}",SchemaWrongAccessorEntryArrayLength:"Accessor entry array must have the same number of entries as the ${operation} at ${ref}",SchemaSetOperationCasesIsNotArray:"${operation} cases must be an array, but is ${cases}, at ${ref}",SchemaMoreThanOneUnionMemberName:"More than one name given for union member: ${names}",SchemaCannotGetTypesFromBoolean:"Schema value to get top-level types from must be an object, but is boolean, at ${ref}",SchemaCannotIndexArrayWithNonNumber:"Trying to index array in schema with key that is not a number, but is ${actual} at ${ref}",SchemaIndexNotInArray:"Index ${index} out of range of schema array at ${ref}",SchemaKeyNotInObject:"Key ${key} not in schema object at ${ref}",SchemaFetchError:"Could not fetch schema ${address}, referred to from ${base}",SchemaFetchErrorTopLevel:"Could not fetch top-level schema ${address}",SchemaFetchErrorAdditional:"Could not fetch additional schema ${address}",GraphQLNoQueriesDefined:"GraphQL file doesn't have any queries defined.",DriverUnknownSourceLanguage:"Unknown source language ${lang}",DriverUnknownOutputLanguage:"Unknown output language ${lang}",DriverMoreThanOneInputGiven:"More than one input given for top-level ${topLevel}",DriverCannotInferNameForSchema:"Cannot infer name for schema ${uri}",DriverNoGraphQLQueryGiven:"Please specify at least one GraphQL query as input",DriverNoGraphQLSchemaInDir:"No GraphQL schema in ${dir}",DriverMoreThanOneGraphQLSchemaInDir:"More than one GraphQL schema in ${dir}",DriverSourceLangMustBeGraphQL:"If a GraphQL schema is specified, the source language must be GraphQL",DriverGraphQLSchemaNeeded:"Please specify a GraphQL schema with --graphql-schema or --graphql-introspect",DriverInputFileDoesNotExist:"Input file ${filename} does not exist",DriverCannotMixJSONWithOtherSamples:"Cannot mix JSON samples with JSON Schems, GraphQL, or TypeScript in input subdirectory ${dir}",DriverCannotMixNonJSONInputs:"Cannot mix JSON Schema, GraphQL, and TypeScript in an input subdirectory ${dir}",DriverUnknownDebugOption:"Unknown debug option ${option}",DriverNoLanguageOrExtension:"Please specify a language (--lang) or an output file extension",DriverCLIOptionParsingFailed:"Option parsing failed: ${message}",IRNoForwardDeclarableTypeInCycle:"Cannot resolve cycle because it doesn't contain types that can be forward declared",IRTypeAttributesNotPropagated:"Type attributes for ${count} types were not carried over to the new graph: ${indexes}",IRNoEmptyUnions:"Trying to make an empty union - do you have an impossible type in your schema?",RendererUnknownOptionValue:"Unknown value ${value} for option ${name}",TypeScriptCompilerError:"TypeScript error: ${message}"};class t extends Error{constructor(d,u,c,w){super(c),this.errorMessage=d,this.messageName=u,this.properties=w}}pi.QuickTypeError=t;function n(l,d){const u=e[l];let c=u;const w=d;for(const U of Object.getOwnPropertyNames(w)){let P=w[U];typeof P=="object"&&typeof P.toString=="function"?P=P.toString():typeof P.message=="string"?P=P.message:typeof P!="string"&&(P=JSON.stringify(P)),c=c.replace("${"+U+"}",P)}throw new t(u,l,c,w)}pi.messageError=n;function a(l,d,u){if(!l)return n(d,u)}return pi.messageAssert=a,pi}const Kc=Symbol.for("yaml.alias"),Ac=Symbol.for("yaml.document"),Wi=Symbol.for("yaml.map"),ig=Symbol.for("yaml.pair"),ri=Symbol.for("yaml.scalar"),ns=Symbol.for("yaml.seq"),Un=Symbol.for("yaml.node.type"),Gi=e=>!!e&&typeof e=="object"&&e[Un]===Kc,Hi=e=>!!e&&typeof e=="object"&&e[Un]===Ac,hr=e=>!!e&&typeof e=="object"&&e[Un]===Wi,kt=e=>!!e&&typeof e=="object"&&e[Un]===ig,vt=e=>!!e&&typeof e=="object"&&e[Un]===ri,pr=e=>!!e&&typeof e=="object"&&e[Un]===ns;function Ct(e){if(e&&typeof e=="object")switch(e[Un]){case Wi:case ns:return!0}return!1}function Et(e){if(e&&typeof e=="object")switch(e[Un]){case Kc:case Wi:case ri:case ns:return!0}return!1}const l_=e=>(vt(e)||Ct(e))&&!!e.anchor,pn=Symbol("break visit"),rg=Symbol("skip children"),ii=Symbol("remove node");function Li(e,t){const n=sg(t);Hi(e)?Hr(null,e.contents,n,Object.freeze([e]))===ii&&(e.contents=null):Hr(null,e,n,Object.freeze([]))}Li.BREAK=pn;Li.SKIP=rg;Li.REMOVE=ii;function Hr(e,t,n,a){const l=og(e,t,n,a);if(Et(l)||kt(l))return ag(e,a,l),Hr(e,l,n,a);if(typeof l!="symbol"){if(Ct(t)){a=Object.freeze(a.concat(t));for(let d=0;d<t.items.length;++d){const u=Hr(d,t.items[d],n,a);if(typeof u=="number")d=u-1;else{if(u===pn)return pn;u===ii&&(t.items.splice(d,1),d-=1)}}}else if(kt(t)){a=Object.freeze(a.concat(t));const d=Hr("key",t.key,n,a);if(d===pn)return pn;d===ii&&(t.key=null);const u=Hr("value",t.value,n,a);if(u===pn)return pn;u===ii&&(t.value=null)}}return l}async function $s(e,t){const n=sg(t);Hi(e)?await Kr(null,e.contents,n,Object.freeze([e]))===ii&&(e.contents=null):await Kr(null,e,n,Object.freeze([]))}$s.BREAK=pn;$s.SKIP=rg;$s.REMOVE=ii;async function Kr(e,t,n,a){const l=await og(e,t,n,a);if(Et(l)||kt(l))return ag(e,a,l),Kr(e,l,n,a);if(typeof l!="symbol"){if(Ct(t)){a=Object.freeze(a.concat(t));for(let d=0;d<t.items.length;++d){const u=await Kr(d,t.items[d],n,a);if(typeof u=="number")d=u-1;else{if(u===pn)return pn;u===ii&&(t.items.splice(d,1),d-=1)}}}else if(kt(t)){a=Object.freeze(a.concat(t));const d=await Kr("key",t.key,n,a);if(d===pn)return pn;d===ii&&(t.key=null);const u=await Kr("value",t.value,n,a);if(u===pn)return pn;u===ii&&(t.value=null)}}return l}function sg(e){return typeof e=="object"&&(e.Collection||e.Node||e.Value)?Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e):e}function og(e,t,n,a){if(typeof n=="function")return n(e,t,a);if(hr(t))return n.Map?.(e,t,a);if(pr(t))return n.Seq?.(e,t,a);if(kt(t))return n.Pair?.(e,t,a);if(vt(t))return n.Scalar?.(e,t,a);if(Gi(t))return n.Alias?.(e,t,a)}function ag(e,t,n){const a=t[t.length-1];if(Ct(a))a.items[e]=n;else if(kt(a))e==="key"?a.key=n:a.value=n;else if(Hi(a))a.contents=n;else{const l=Gi(a)?"alias":"scalar";throw new Error(`Cannot replace node with ${l} parent`)}}const c_={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},f_=e=>e.replace(/[!,[\]{}]/g,t=>c_[t]);class un{constructor(t,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},un.defaultYaml,t),this.tags=Object.assign({},un.defaultTags,n)}clone(){const t=new un(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){const t=new un(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:un.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},un.defaultTags);break}return t}add(t,n){this.atNextDocument&&(this.yaml={explicit:un.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},un.defaultTags),this.atNextDocument=!1);const a=t.trim().split(/[ \t]+/),l=a.shift();switch(l){case"%TAG":{if(a.length!==2&&(n(0,"%TAG directive should contain exactly two parts"),a.length<2))return!1;const[d,u]=a;return this.tags[d]=u,!0}case"%YAML":{if(this.yaml.explicit=!0,a.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;const[d]=a;if(d==="1.1"||d==="1.2")return this.yaml.version=d,!0;{const u=/^\d+\.\d+$/.test(d);return n(6,`Unsupported YAML version ${d}`,u),!1}}default:return n(0,`Unknown directive ${l}`,!0),!1}}tagName(t,n){if(t==="!")return"!";if(t[0]!=="!")return n(`Not a valid tag: ${t}`),null;if(t[1]==="<"){const u=t.slice(2,-1);return u==="!"||u==="!!"?(n(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&n("Verbatim tags must end with a >"),u)}const[,a,l]=t.match(/^(.*!)([^!]*)$/s);l||n(`The ${t} tag has no suffix`);const d=this.tags[a];if(d)try{return d+decodeURIComponent(l)}catch(u){return n(String(u)),null}return a==="!"?t:(n(`Could not resolve tag: ${t}`),null)}tagString(t){for(const[n,a]of Object.entries(this.tags))if(t.startsWith(a))return n+f_(t.substring(a.length));return t[0]==="!"?t:`!<${t}>`}toString(t){const n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],a=Object.entries(this.tags);let l;if(t&&a.length>0&&Et(t.contents)){const d={};Li(t.contents,(u,c)=>{Et(c)&&c.tag&&(d[c.tag]=!0)}),l=Object.keys(d)}else l=[];for(const[d,u]of a)d==="!!"&&u==="tag:yaml.org,2002:"||(!t||l.some(c=>c.startsWith(u)))&&n.push(`%TAG ${d} ${u}`);return n.join(`
2
+ `)}}un.defaultYaml={explicit:!1,version:"1.2"};un.defaultTags={"!!":"tag:yaml.org,2002:"};function ug(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){const n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(n)}return!0}function lg(e){const t=new Set;return Li(e,{Value(n,a){a.anchor&&t.add(a.anchor)}}),t}function cg(e,t){for(let n=1;;++n){const a=`${e}${n}`;if(!t.has(a))return a}}function d_(e,t){const n=[],a=new Map;let l=null;return{onAnchor:d=>{n.push(d),l||(l=lg(e));const u=cg(t,l);return l.add(u),u},setAnchors:()=>{for(const d of n){const u=a.get(d);if(typeof u=="object"&&u.anchor&&(vt(u.node)||Ct(u.node)))u.node.anchor=u.anchor;else{const c=new Error("Failed to resolve repeated object (this should not happen)");throw c.source=d,c}}},sourceObjects:a}}function Vr(e,t,n,a){if(a&&typeof a=="object")if(Array.isArray(a))for(let l=0,d=a.length;l<d;++l){const u=a[l],c=Vr(e,a,String(l),u);c===void 0?delete a[l]:c!==u&&(a[l]=c)}else if(a instanceof Map)for(const l of Array.from(a.keys())){const d=a.get(l),u=Vr(e,a,l,d);u===void 0?a.delete(l):u!==d&&a.set(l,u)}else if(a instanceof Set)for(const l of Array.from(a)){const d=Vr(e,a,l,l);d===void 0?a.delete(l):d!==l&&(a.delete(l),a.add(d))}else for(const[l,d]of Object.entries(a)){const u=Vr(e,a,l,d);u===void 0?delete a[l]:u!==d&&(a[l]=u)}return e.call(t,n,a)}function jn(e,t,n){if(Array.isArray(e))return e.map((a,l)=>jn(a,String(l),n));if(e&&typeof e.toJSON=="function"){if(!n||!l_(e))return e.toJSON(t,n);const a={aliasCount:0,count:1,res:void 0};n.anchors.set(e,a),n.onCreate=d=>{a.res=d,delete n.onCreate};const l=e.toJSON(t,n);return n.onCreate&&n.onCreate(l),l}return typeof e=="bigint"&&!n?.keep?Number(e):e}class Vc{constructor(t){Object.defineProperty(this,Un,{value:t})}clone(){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:n,maxAliasCount:a,onAnchor:l,reviver:d}={}){if(!Hi(t))throw new TypeError("A document argument is required");const u={anchors:new Map,doc:t,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},c=jn(this,"",u);if(typeof l=="function")for(const{count:w,res:U}of u.anchors.values())l(U,w);return typeof d=="function"?Vr(d,{"":c},"",c):c}}class eo extends Vc{constructor(t){super(Kc),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t){let n;return Li(t,{Node:(a,l)=>{if(l===this)return Li.BREAK;l.anchor===this.source&&(n=l)}}),n}toJSON(t,n){if(!n)return{source:this.source};const{anchors:a,doc:l,maxAliasCount:d}=n,u=this.resolve(l);if(!u){const w=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(w)}let c=a.get(u);if(c||(jn(u,null,n),c=a.get(u)),!c||c.res===void 0){const w="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(w)}if(d>=0&&(c.count+=1,c.aliasCount===0&&(c.aliasCount=ya(l,u,a)),c.count*c.aliasCount>d)){const w="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(w)}return c.res}toString(t,n,a){const l=`*${this.source}`;if(t){if(ug(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){const d=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(d)}if(t.implicitKey)return`${l} `}return l}}function ya(e,t,n){if(Gi(t)){const a=t.resolve(e),l=n&&a&&n.get(a);return l?l.count*l.aliasCount:0}else if(Ct(t)){let a=0;for(const l of t.items){const d=ya(e,l,n);d>a&&(a=d)}return a}else if(kt(t)){const a=ya(e,t.key,n),l=ya(e,t.value,n);return Math.max(a,l)}return 1}const fg=e=>!e||typeof e!="function"&&typeof e!="object";class tt extends Vc{constructor(t){super(ri),this.value=t}toJSON(t,n){return n?.keep?this.value:jn(this.value,t,n)}toString(){return String(this.value)}}tt.BLOCK_FOLDED="BLOCK_FOLDED";tt.BLOCK_LITERAL="BLOCK_LITERAL";tt.PLAIN="PLAIN";tt.QUOTE_DOUBLE="QUOTE_DOUBLE";tt.QUOTE_SINGLE="QUOTE_SINGLE";const h_="tag:yaml.org,2002:";function p_(e,t,n){if(t){const a=n.filter(d=>d.tag===t),l=a.find(d=>!d.format)??a[0];if(!l)throw new Error(`Tag ${t} not found`);return l}return n.find(a=>a.identify?.(e)&&!a.format)}function Qs(e,t,n){if(Hi(e)&&(e=e.contents),Et(e))return e;if(kt(e)){const O=n.schema[Wi].createNode?.(n.schema,null,n);return O.items.push(e),O}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());const{aliasDuplicateObjects:a,onAnchor:l,onTagObj:d,schema:u,sourceObjects:c}=n;let w;if(a&&e&&typeof e=="object"){if(w=c.get(e),w)return w.anchor||(w.anchor=l(e)),new eo(w.anchor);w={anchor:null,node:null},c.set(e,w)}t?.startsWith("!!")&&(t=h_+t.slice(2));let U=p_(e,t,u.tags);if(!U){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){const O=new tt(e);return w&&(w.node=O),O}U=e instanceof Map?u[Wi]:Symbol.iterator in Object(e)?u[ns]:u[Wi]}d&&(d(U),delete n.onTagObj);const P=U?.createNode?U.createNode(n.schema,e,n):typeof U?.nodeClass?.from=="function"?U.nodeClass.from(n.schema,e,n):new tt(e);return t?P.tag=t:U.default||(P.tag=U.tag),w&&(w.node=P),P}function Na(e,t,n){let a=n;for(let l=t.length-1;l>=0;--l){const d=t[l];if(typeof d=="number"&&Number.isInteger(d)&&d>=0){const u=[];u[d]=a,a=u}else a=new Map([[d,a]])}return Qs(a,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}const qs=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done;class dg extends Vc{constructor(t,n){super(t),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(t){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(n.schema=t),n.items=n.items.map(a=>Et(a)||kt(a)?a.clone(t):a),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(qs(t))this.add(n);else{const[a,...l]=t,d=this.get(a,!0);if(Ct(d))d.addIn(l,n);else if(d===void 0&&this.schema)this.set(a,Na(this.schema,l,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${l}`)}}deleteIn(t){const[n,...a]=t;if(a.length===0)return this.delete(n);const l=this.get(n,!0);if(Ct(l))return l.deleteIn(a);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${a}`)}getIn(t,n){const[a,...l]=t,d=this.get(a,!0);return l.length===0?!n&&vt(d)?d.value:d:Ct(d)?d.getIn(l,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!kt(n))return!1;const a=n.value;return a==null||t&&vt(a)&&a.value==null&&!a.commentBefore&&!a.comment&&!a.tag})}hasIn(t){const[n,...a]=t;if(a.length===0)return this.has(n);const l=this.get(n,!0);return Ct(l)?l.hasIn(a):!1}setIn(t,n){const[a,...l]=t;if(l.length===0)this.set(a,n);else{const d=this.get(a,!0);if(Ct(d))d.setIn(l,n);else if(d===void 0&&this.schema)this.set(a,Na(this.schema,l,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${l}`)}}}const m_=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function Si(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}const cr=(e,t,n)=>e.endsWith(`
3
+ `)?Si(n,t):n.includes(`
4
+ `)?`
5
+ `+Si(n,t):(e.endsWith(" ")?"":" ")+n,hg="flow",Fc="block",ga="quoted";function Pa(e,t,n="flow",{indentAtStart:a,lineWidth:l=80,minContentWidth:d=20,onFold:u,onOverflow:c}={}){if(!l||l<0)return e;l<d&&(d=0);const w=Math.max(1+d,1+l-t.length);if(e.length<=w)return e;const U=[],P={};let O=l-t.length;typeof a=="number"&&(a>l-Math.max(2,d)?U.push(0):O=l-a);let R,_,L=!1,g=-1,y=-1,h=-1;n===Fc&&(g=yp(e,g,t.length),g!==-1&&(O=g+w));for(let k;k=e[g+=1];){if(n===ga&&k==="\\"){switch(y=g,e[g+1]){case"x":g+=3;break;case"u":g+=5;break;case"U":g+=9;break;default:g+=1}h=g}if(k===`
6
+ `)n===Fc&&(g=yp(e,g,t.length)),O=g+t.length+w,R=void 0;else{if(k===" "&&_&&_!==" "&&_!==`
7
+ `&&_!==" "){const D=e[g+1];D&&D!==" "&&D!==`
8
+ `&&D!==" "&&(R=g)}if(g>=O)if(R)U.push(R),O=R+w,R=void 0;else if(n===ga){for(;_===" "||_===" ";)_=k,k=e[g+=1],L=!0;const D=g>h+1?g-2:y-1;if(P[D])return e;U.push(D),P[D]=!0,O=D+w,R=void 0}else L=!0}_=k}if(L&&c&&c(),U.length===0)return e;u&&u();let p=e.slice(0,U[0]);for(let k=0;k<U.length;++k){const D=U[k],C=U[k+1]||e.length;D===0?p=`
9
+ ${t}${e.slice(0,C)}`:(n===ga&&P[D]&&(p+=`${e[D]}\\`),p+=`
10
+ ${t}${e.slice(D+1,C)}`)}return p}function yp(e,t,n){let a=t,l=t+1,d=e[l];for(;d===" "||d===" ";)if(t<l+n)d=e[++t];else{do d=e[++t];while(d&&d!==`
11
+ `);a=t,l=t+1,d=e[l]}return a}const Ia=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Ra=e=>/^(%|---|\.\.\.)/m.test(e);function y_(e,t,n){if(!t||t<0)return!1;const a=t-n,l=e.length;if(l<=a)return!1;for(let d=0,u=0;d<l;++d)if(e[d]===`
12
+ `){if(d-u>a)return!0;if(u=d+1,l-u<=a)return!1}return!0}function Vs(e,t){const n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;const{implicitKey:a}=t,l=t.options.doubleQuotedMinMultiLineLength,d=t.indent||(Ra(e)?" ":"");let u="",c=0;for(let w=0,U=n[w];U;U=n[++w])if(U===" "&&n[w+1]==="\\"&&n[w+2]==="n"&&(u+=n.slice(c,w)+"\\ ",w+=1,c=w,U="\\"),U==="\\")switch(n[w+1]){case"u":{u+=n.slice(c,w);const P=n.substr(w+2,4);switch(P){case"0000":u+="\\0";break;case"0007":u+="\\a";break;case"000b":u+="\\v";break;case"001b":u+="\\e";break;case"0085":u+="\\N";break;case"00a0":u+="\\_";break;case"2028":u+="\\L";break;case"2029":u+="\\P";break;default:P.substr(0,2)==="00"?u+="\\x"+P.substr(2):u+=n.substr(w,6)}w+=5,c=w+1}break;case"n":if(a||n[w+2]==='"'||n.length<l)w+=1;else{for(u+=n.slice(c,w)+`
13
+
14
+ `;n[w+2]==="\\"&&n[w+3]==="n"&&n[w+4]!=='"';)u+=`
15
+ `,w+=2;u+=d,n[w+2]===" "&&(u+="\\"),w+=1,c=w+1}break;default:w+=1}return u=c?u+n.slice(c):n,a?u:Pa(u,d,ga,Ia(t,!1))}function Pc(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
16
+ `)||/[ \t]\n|\n[ \t]/.test(e))return Vs(e,t);const n=t.indent||(Ra(e)?" ":""),a="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
17
+ ${n}`)+"'";return t.implicitKey?a:Pa(a,n,hg,Ia(t,!1))}function Zr(e,t){const{singleQuote:n}=t.options;let a;if(n===!1)a=Vs;else{const l=e.includes('"'),d=e.includes("'");l&&!d?a=Pc:d&&!l?a=Vs:a=n?Pc:Vs}return a(e,t)}let Ic;try{Ic=new RegExp(`(^|(?<!
18
+ ))
19
+ +(?!
20
+ |$)`,"g")}catch{Ic=/\n+(?!\n|$)/g}function ba({comment:e,type:t,value:n},a,l,d){const{blockQuote:u,commentString:c,lineWidth:w}=a.options;if(!u||/\n[\t ]+$/.test(n)||/^\s*$/.test(n))return Zr(n,a);const U=a.indent||(a.forceBlockIndent||Ra(n)?" ":""),P=u==="literal"?!0:u==="folded"||t===tt.BLOCK_FOLDED?!1:t===tt.BLOCK_LITERAL?!0:!y_(n,w,U.length);if(!n)return P?`|
21
+ `:`>
22
+ `;let O,R;for(R=n.length;R>0;--R){const C=n[R-1];if(C!==`
23
+ `&&C!==" "&&C!==" ")break}let _=n.substring(R);const L=_.indexOf(`
24
+ `);L===-1?O="-":n===_||L!==_.length-1?(O="+",d&&d()):O="",_&&(n=n.slice(0,-_.length),_[_.length-1]===`
25
+ `&&(_=_.slice(0,-1)),_=_.replace(Ic,`$&${U}`));let g=!1,y,h=-1;for(y=0;y<n.length;++y){const C=n[y];if(C===" ")g=!0;else if(C===`
26
+ `)h=y;else break}let p=n.substring(0,h<y?h+1:y);p&&(n=n.substring(p.length),p=p.replace(/\n+/g,`$&${U}`));let D=(g?U?"2":"1":"")+O;if(e&&(D+=" "+c(e.replace(/ ?[\r\n]+/g," ")),l&&l()),!P){const C=n.replace(/\n+/g,`
27
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`);let I=!1;const A=Ia(a,!0);u!=="folded"&&t!==tt.BLOCK_FOLDED&&(A.onOverflow=()=>{I=!0});const f=Pa(`${p}${C}${_}`,U,Fc,A);if(!I)return`>${D}
28
+ ${U}${f}`}return n=n.replace(/\n+/g,`$&${U}`),`|${D}
29
+ ${U}${p}${n}${_}`}function g_(e,t,n,a){const{type:l,value:d}=e,{actualString:u,implicitKey:c,indent:w,indentStep:U,inFlow:P}=t;if(c&&d.includes(`
30
+ `)||P&&/[[\]{},]/.test(d))return Zr(d,t);if(!d||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(d))return c||P||!d.includes(`
31
+ `)?Zr(d,t):ba(e,t,n,a);if(!c&&!P&&l!==tt.PLAIN&&d.includes(`
32
+ `))return ba(e,t,n,a);if(Ra(d)){if(w==="")return t.forceBlockIndent=!0,ba(e,t,n,a);if(c&&w===U)return Zr(d,t)}const O=d.replace(/\n+/g,`$&
33
+ ${w}`);if(u){const R=g=>g.default&&g.tag!=="tag:yaml.org,2002:str"&&g.test?.test(O),{compat:_,tags:L}=t.doc.schema;if(L.some(R)||_?.some(R))return Zr(d,t)}return c?O:Pa(O,w,hg,Ia(t,!1))}function to(e,t,n,a){const{implicitKey:l,inFlow:d}=t,u=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)});let{type:c}=e;c!==tt.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(u.value)&&(c=tt.QUOTE_DOUBLE);const w=P=>{switch(P){case tt.BLOCK_FOLDED:case tt.BLOCK_LITERAL:return l||d?Zr(u.value,t):ba(u,t,n,a);case tt.QUOTE_DOUBLE:return Vs(u.value,t);case tt.QUOTE_SINGLE:return Pc(u.value,t);case tt.PLAIN:return g_(u,t,n,a);default:return null}};let U=w(c);if(U===null){const{defaultKeyType:P,defaultStringType:O}=t.options,R=l&&P||O;if(U=w(R),U===null)throw new Error(`Unsupported default string type ${R}`)}return U}function pg(e,t){const n=Object.assign({blockQuote:!0,commentString:m_,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t);let a;switch(n.collectionStyle){case"block":a=!1;break;case"flow":a=!0;break;default:a=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:a,options:n}}function b_(e,t){if(t.tag){const l=e.filter(d=>d.tag===t.tag);if(l.length>0)return l.find(d=>d.format===t.format)??l[0]}let n,a;if(vt(t)){a=t.value;let l=e.filter(d=>d.identify?.(a));if(l.length>1){const d=l.filter(u=>u.test);d.length>0&&(l=d)}n=l.find(d=>d.format===t.format)??l.find(d=>!d.format)}else a=t,n=e.find(l=>l.nodeClass&&a instanceof l.nodeClass);if(!n){const l=a?.constructor?.name??typeof a;throw new Error(`Tag not resolved for ${l} value`)}return n}function T_(e,t,{anchors:n,doc:a}){if(!a.directives)return"";const l=[],d=(vt(e)||Ct(e))&&e.anchor;d&&ug(d)&&(n.add(d),l.push(`&${d}`));const u=e.tag?e.tag:t.default?null:t.tag;return u&&l.push(a.directives.tagString(u)),l.join(" ")}function $r(e,t,n,a){if(kt(e))return e.toString(t,n,a);if(Gi(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let l;const d=Et(e)?e:t.doc.createNode(e,{onTagObj:w=>l=w});l||(l=b_(t.doc.schema.tags,d));const u=T_(d,l,t);u.length>0&&(t.indentAtStart=(t.indentAtStart??0)+u.length+1);const c=typeof l.stringify=="function"?l.stringify(d,t,n,a):vt(d)?to(d,t,n,a):d.toString(t,n,a);return u?vt(d)||c[0]==="{"||c[0]==="["?`${u} ${c}`:`${u}
34
+ ${t.indent}${c}`:c}function v_({key:e,value:t},n,a,l){const{allNullValues:d,doc:u,indent:c,indentStep:w,options:{commentString:U,indentSeq:P,simpleKeys:O}}=n;let R=Et(e)&&e.comment||null;if(O){if(R)throw new Error("With simple keys, key nodes cannot have comments");if(Ct(e)||!Et(e)&&typeof e=="object"){const A="With simple keys, collection cannot be used as a key value";throw new Error(A)}}let _=!O&&(!e||R&&t==null&&!n.inFlow||Ct(e)||(vt(e)?e.type===tt.BLOCK_FOLDED||e.type===tt.BLOCK_LITERAL:typeof e=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!_&&(O||!d),indent:c+w});let L=!1,g=!1,y=$r(e,n,()=>L=!0,()=>g=!0);if(!_&&!n.inFlow&&y.length>1024){if(O)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");_=!0}if(n.inFlow){if(d||t==null)return L&&a&&a(),y===""?"?":_?`? ${y}`:y}else if(d&&!O||t==null&&_)return y=`? ${y}`,R&&!L?y+=cr(y,n.indent,U(R)):g&&l&&l(),y;L&&(R=null),_?(R&&(y+=cr(y,n.indent,U(R))),y=`? ${y}
35
+ ${c}:`):(y=`${y}:`,R&&(y+=cr(y,n.indent,U(R))));let h,p,k;Et(t)?(h=!!t.spaceBefore,p=t.commentBefore,k=t.comment):(h=!1,p=null,k=null,t&&typeof t=="object"&&(t=u.createNode(t))),n.implicitKey=!1,!_&&!R&&vt(t)&&(n.indentAtStart=y.length+1),g=!1,!P&&w.length>=2&&!n.inFlow&&!_&&pr(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let D=!1;const C=$r(t,n,()=>D=!0,()=>g=!0);let I=" ";if(R||h||p){if(I=h?`
36
+ `:"",p){const A=U(p);I+=`
37
+ ${Si(A,n.indent)}`}C===""&&!n.inFlow?I===`
38
+ `&&(I=`
39
+
40
+ `):I+=`
41
+ ${n.indent}`}else if(!_&&Ct(t)){const A=C[0],f=C.indexOf(`
42
+ `),E=f!==-1,b=n.inFlow??t.flow??t.items.length===0;if(E||!b){let F=!1;if(E&&(A==="&"||A==="!")){let m=C.indexOf(" ");A==="&"&&m!==-1&&m<f&&C[m+1]==="!"&&(m=C.indexOf(" ",m+1)),(m===-1||f<m)&&(F=!0)}F||(I=`
43
+ ${n.indent}`)}}else(C===""||C[0]===`
44
+ `)&&(I="");return y+=I+C,n.inFlow?D&&a&&a():k&&!D?y+=cr(y,n.indent,U(k)):g&&l&&l(),y}function mg(e,t){(e==="debug"||e==="warn")&&console.warn(t)}const ea="<<",wi={identify:e=>e===ea||typeof e=="symbol"&&e.description===ea,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new tt(Symbol(ea)),{addToJSMap:yg}),stringify:()=>ea},S_=(e,t)=>(wi.identify(t)||vt(t)&&(!t.type||t.type===tt.PLAIN)&&wi.identify(t.value))&&e?.doc.schema.tags.some(n=>n.tag===wi.tag&&n.default);function yg(e,t,n){if(n=e&&Gi(n)?n.resolve(e.doc):n,pr(n))for(const a of n.items)wl(e,t,a);else if(Array.isArray(n))for(const a of n)wl(e,t,a);else wl(e,t,n)}function wl(e,t,n){const a=e&&Gi(n)?n.resolve(e.doc):n;if(!hr(a))throw new Error("Merge sources must be maps or map aliases");const l=a.toJSON(null,e,Map);for(const[d,u]of l)t instanceof Map?t.has(d)||t.set(d,u):t instanceof Set?t.add(d):Object.prototype.hasOwnProperty.call(t,d)||Object.defineProperty(t,d,{value:u,writable:!0,enumerable:!0,configurable:!0});return t}function gg(e,t,{key:n,value:a}){if(Et(n)&&n.addToJSMap)n.addToJSMap(e,t,a);else if(S_(e,n))yg(e,t,a);else{const l=jn(n,"",e);if(t instanceof Map)t.set(l,jn(a,l,e));else if(t instanceof Set)t.add(l);else{const d=w_(n,l,e),u=jn(a,d,e);d in t?Object.defineProperty(t,d,{value:u,writable:!0,enumerable:!0,configurable:!0}):t[d]=u}}return t}function w_(e,t,n){if(t===null)return"";if(typeof t!="object")return String(t);if(Et(e)&&n?.doc){const a=pg(n.doc,{});a.anchors=new Set;for(const d of n.anchors.keys())a.anchors.add(d.anchor);a.inFlow=!0,a.inStringifyKey=!0;const l=e.toString(a);if(!n.mapKeyWarned){let d=JSON.stringify(l);d.length>40&&(d=d.substring(0,36)+'..."'),mg(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${d}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return l}return JSON.stringify(t)}function Zc(e,t,n){const a=Qs(e,void 0,n),l=Qs(t,void 0,n);return new $t(a,l)}class $t{constructor(t,n=null){Object.defineProperty(this,Un,{value:ig}),this.key=t,this.value=n}clone(t){let{key:n,value:a}=this;return Et(n)&&(n=n.clone(t)),Et(a)&&(a=a.clone(t)),new $t(n,a)}toJSON(t,n){const a=n?.mapAsMap?new Map:{};return gg(n,a,this)}toString(t,n,a){return t?.doc?v_(this,t,n,a):JSON.stringify(this)}}function bg(e,t,n){return(t.inFlow??e.flow?__:L_)(e,t,n)}function L_({comment:e,items:t},n,{blockItemPrefix:a,flowChars:l,itemIndent:d,onChompKeep:u,onComment:c}){const{indent:w,options:{commentString:U}}=n,P=Object.assign({},n,{indent:d,type:null});let O=!1;const R=[];for(let L=0;L<t.length;++L){const g=t[L];let y=null;if(Et(g))!O&&g.spaceBefore&&R.push(""),Oa(n,R,g.commentBefore,O),g.comment&&(y=g.comment);else if(kt(g)){const p=Et(g.key)?g.key:null;p&&(!O&&p.spaceBefore&&R.push(""),Oa(n,R,p.commentBefore,O))}O=!1;let h=$r(g,P,()=>y=null,()=>O=!0);y&&(h+=cr(h,d,U(y))),O&&y&&(O=!1),R.push(a+h)}let _;if(R.length===0)_=l.start+l.end;else{_=R[0];for(let L=1;L<R.length;++L){const g=R[L];_+=g?`
45
+ ${w}${g}`:`
46
+ `}}return e?(_+=`
47
+ `+Si(U(e),w),c&&c()):O&&u&&u(),_}function __({items:e},t,{flowChars:n,itemIndent:a}){const{indent:l,indentStep:d,flowCollectionPadding:u,options:{commentString:c}}=t;a+=d;const w=Object.assign({},t,{indent:a,inFlow:!0,type:null});let U=!1,P=0;const O=[];for(let L=0;L<e.length;++L){const g=e[L];let y=null;if(Et(g))g.spaceBefore&&O.push(""),Oa(t,O,g.commentBefore,!1),g.comment&&(y=g.comment);else if(kt(g)){const p=Et(g.key)?g.key:null;p&&(p.spaceBefore&&O.push(""),Oa(t,O,p.commentBefore,!1),p.comment&&(U=!0));const k=Et(g.value)?g.value:null;k?(k.comment&&(y=k.comment),k.commentBefore&&(U=!0)):g.value==null&&p?.comment&&(y=p.comment)}y&&(U=!0);let h=$r(g,w,()=>y=null);L<e.length-1&&(h+=","),y&&(h+=cr(h,a,c(y))),!U&&(O.length>P||h.includes(`
48
+ `))&&(U=!0),O.push(h),P=O.length}const{start:R,end:_}=n;if(O.length===0)return R+_;if(!U){const L=O.reduce((g,y)=>g+y.length+2,2);U=t.options.lineWidth>0&&L>t.options.lineWidth}if(U){let L=R;for(const g of O)L+=g?`
49
+ ${d}${l}${g}`:`
50
+ `;return`${L}
51
+ ${l}${_}`}else return`${R}${u}${O.join(" ")}${u}${_}`}function Oa({indent:e,options:{commentString:t}},n,a,l){if(a&&l&&(a=a.replace(/^\n+/,"")),a){const d=Si(t(a),e);n.push(d.trimStart())}}function fr(e,t){const n=vt(t)?t.value:t;for(const a of e)if(kt(a)&&(a.key===t||a.key===n||vt(a.key)&&a.key.value===n))return a}class mn extends dg{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(Wi,t),this.items=[]}static from(t,n,a){const{keepUndefined:l,replacer:d}=a,u=new this(t),c=(w,U)=>{if(typeof d=="function")U=d.call(n,w,U);else if(Array.isArray(d)&&!d.includes(w))return;(U!==void 0||l)&&u.items.push(Zc(w,U,a))};if(n instanceof Map)for(const[w,U]of n)c(w,U);else if(n&&typeof n=="object")for(const w of Object.keys(n))c(w,n[w]);return typeof t.sortMapEntries=="function"&&u.items.sort(t.sortMapEntries),u}add(t,n){let a;kt(t)?a=t:!t||typeof t!="object"||!("key"in t)?a=new $t(t,t?.value):a=new $t(t.key,t.value);const l=fr(this.items,a.key),d=this.schema?.sortMapEntries;if(l){if(!n)throw new Error(`Key ${a.key} already set`);vt(l.value)&&fg(a.value)?l.value.value=a.value:l.value=a.value}else if(d){const u=this.items.findIndex(c=>d(a,c)<0);u===-1?this.items.push(a):this.items.splice(u,0,a)}else this.items.push(a)}delete(t){const n=fr(this.items,t);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(t,n){const l=fr(this.items,t)?.value;return(!n&&vt(l)?l.value:l)??void 0}has(t){return!!fr(this.items,t)}set(t,n){this.add(new $t(t,n),!0)}toJSON(t,n,a){const l=a?new a:n?.mapAsMap?new Map:{};n?.onCreate&&n.onCreate(l);for(const d of this.items)gg(n,l,d);return l}toString(t,n,a){if(!t)return JSON.stringify(this);for(const l of this.items)if(!kt(l))throw new Error(`Map items must all be pairs; found ${JSON.stringify(l)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),bg(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:a,onComment:n})}}const is={collection:"map",default:!0,nodeClass:mn,tag:"tag:yaml.org,2002:map",resolve(e,t){return hr(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,n)=>mn.from(e,t,n)};class _i extends dg{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(ns,t),this.items=[]}add(t){this.items.push(t)}delete(t){const n=ta(t);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(t,n){const a=ta(t);if(typeof a!="number")return;const l=this.items[a];return!n&&vt(l)?l.value:l}has(t){const n=ta(t);return typeof n=="number"&&n<this.items.length}set(t,n){const a=ta(t);if(typeof a!="number")throw new Error(`Expected a valid index, not ${t}.`);const l=this.items[a];vt(l)&&fg(n)?l.value=n:this.items[a]=n}toJSON(t,n){const a=[];n?.onCreate&&n.onCreate(a);let l=0;for(const d of this.items)a.push(jn(d,String(l++),n));return a}toString(t,n,a){return t?bg(this,t,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(t.indent||"")+" ",onChompKeep:a,onComment:n}):JSON.stringify(this)}static from(t,n,a){const{replacer:l}=a,d=new this(t);if(n&&Symbol.iterator in Object(n)){let u=0;for(let c of n){if(typeof l=="function"){const w=n instanceof Set?c:String(u++);c=l.call(n,w,c)}d.items.push(Qs(c,void 0,a))}}return d}}function ta(e){let t=vt(e)?e.value:e;return t&&typeof t=="string"&&(t=Number(t)),typeof t=="number"&&Number.isInteger(t)&&t>=0?t:null}const rs={collection:"seq",default:!0,nodeClass:_i,tag:"tag:yaml.org,2002:seq",resolve(e,t){return pr(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,n)=>_i.from(e,t,n)},Ma={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,n,a){return t=Object.assign({actualString:!0},t),to(e,t,n,a)}},Da={identify:e=>e==null,createNode:()=>new tt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new tt(null),stringify:({source:e},t)=>typeof e=="string"&&Da.test.test(e)?e:t.options.nullStr},Qc={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new tt(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},n){if(e&&Qc.test.test(e)){const a=e[0]==="t"||e[0]==="T";if(t===a)return e}return t?n.options.trueStr:n.options.falseStr}};function Qn({format:e,minFractionDigits:t,tag:n,value:a}){if(typeof a=="bigint")return String(a);const l=typeof a=="number"?a:Number(a);if(!isFinite(l))return isNaN(l)?".nan":l<0?"-.inf":".inf";let d=JSON.stringify(a);if(!e&&t&&(!n||n==="tag:yaml.org,2002:float")&&/^\d/.test(d)){let u=d.indexOf(".");u<0&&(u=d.length,d+=".");let c=t-(d.length-u-1);for(;c-- >0;)d+="0"}return d}const Tg={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Qn},vg={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():Qn(e)}},Sg={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){const t=new tt(parseFloat(e)),n=e.indexOf(".");return n!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-n-1),t},stringify:Qn},Ba=e=>typeof e=="bigint"||Number.isInteger(e),Xc=(e,t,n,{intAsBigInt:a})=>a?BigInt(e):parseInt(e.substring(t),n);function wg(e,t,n){const{value:a}=e;return Ba(a)&&a>=0?n+a.toString(t):Qn(e)}const Lg={identify:e=>Ba(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,n)=>Xc(e,2,8,n),stringify:e=>wg(e,8,"0o")},_g={identify:Ba,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,n)=>Xc(e,0,10,n),stringify:Qn},kg={identify:e=>Ba(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,n)=>Xc(e,2,16,n),stringify:e=>wg(e,16,"0x")},k_=[is,rs,Ma,Da,Qc,Lg,_g,kg,Tg,vg,Sg];function gp(e){return typeof e=="bigint"||Number.isInteger(e)}const na=({value:e})=>JSON.stringify(e),N_=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:na},{identify:e=>e==null,createNode:()=>new tt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:na},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:e=>e==="true",stringify:na},{identify:gp,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>gp(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:na}],O_={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},C_=[is,rs].concat(N_,O_),Yc={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof atob=="function"){const n=atob(e.replace(/[\n\r]/g,"")),a=new Uint8Array(n.length);for(let l=0;l<n.length;++l)a[l]=n.charCodeAt(l);return a}else return t("This environment does not support reading binary tags; either Buffer or atob is required"),e},stringify({comment:e,type:t,value:n},a,l,d){const u=n;let c;if(typeof btoa=="function"){let w="";for(let U=0;U<u.length;++U)w+=String.fromCharCode(u[U]);c=btoa(w)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(t||(t=tt.BLOCK_LITERAL),t!==tt.QUOTE_DOUBLE){const w=Math.max(a.options.lineWidth-a.indent.length,a.options.minContentWidth),U=Math.ceil(c.length/w),P=new Array(U);for(let O=0,R=0;O<U;++O,R+=w)P[O]=c.substr(R,w);c=P.join(t===tt.BLOCK_LITERAL?`
52
+ `:" ")}return to({comment:e,type:t,value:c},a,l,d)}};function Ng(e,t){if(pr(e))for(let n=0;n<e.items.length;++n){let a=e.items[n];if(!kt(a)){if(hr(a)){a.items.length>1&&t("Each pair must have its own sequence indicator");const l=a.items[0]||new $t(new tt(null));if(a.commentBefore&&(l.key.commentBefore=l.key.commentBefore?`${a.commentBefore}
53
+ ${l.key.commentBefore}`:a.commentBefore),a.comment){const d=l.value??l.key;d.comment=d.comment?`${a.comment}
54
+ ${d.comment}`:a.comment}a=l}e.items[n]=kt(a)?a:new $t(a)}}else t("Expected a sequence for this tag");return e}function Og(e,t,n){const{replacer:a}=n,l=new _i(e);l.tag="tag:yaml.org,2002:pairs";let d=0;if(t&&Symbol.iterator in Object(t))for(let u of t){typeof a=="function"&&(u=a.call(t,String(d++),u));let c,w;if(Array.isArray(u))if(u.length===2)c=u[0],w=u[1];else throw new TypeError(`Expected [key, value] tuple: ${u}`);else if(u&&u instanceof Object){const U=Object.keys(u);if(U.length===1)c=U[0],w=u[c];else throw new TypeError(`Expected tuple with one key, not ${U.length} keys`)}else c=u;l.items.push(Zc(c,w,n))}return l}const $c={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Ng,createNode:Og};class Qr extends _i{constructor(){super(),this.add=mn.prototype.add.bind(this),this.delete=mn.prototype.delete.bind(this),this.get=mn.prototype.get.bind(this),this.has=mn.prototype.has.bind(this),this.set=mn.prototype.set.bind(this),this.tag=Qr.tag}toJSON(t,n){if(!n)return super.toJSON(t);const a=new Map;n?.onCreate&&n.onCreate(a);for(const l of this.items){let d,u;if(kt(l)?(d=jn(l.key,"",n),u=jn(l.value,d,n)):d=jn(l,"",n),a.has(d))throw new Error("Ordered maps must not include duplicate keys");a.set(d,u)}return a}static from(t,n,a){const l=Og(t,n,a),d=new this;return d.items=l.items,d}}Qr.tag="tag:yaml.org,2002:omap";const ef={collection:"seq",identify:e=>e instanceof Map,nodeClass:Qr,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){const n=Ng(e,t),a=[];for(const{key:l}of n.items)vt(l)&&(a.includes(l.value)?t(`Ordered maps must not include duplicate keys: ${l.value}`):a.push(l.value));return Object.assign(new Qr,n)},createNode:(e,t,n)=>Qr.from(e,t,n)};function Cg({value:e,source:t},n){return t&&(e?Eg:Ag).test.test(t)?t:e?n.options.trueStr:n.options.falseStr}const Eg={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new tt(!0),stringify:Cg},Ag={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new tt(!1),stringify:Cg},E_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Qn},A_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():Qn(e)}},F_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){const t=new tt(parseFloat(e.replace(/_/g,""))),n=e.indexOf(".");if(n!==-1){const a=e.substring(n+1).replace(/_/g,"");a[a.length-1]==="0"&&(t.minFractionDigits=a.length)}return t},stringify:Qn},no=e=>typeof e=="bigint"||Number.isInteger(e);function ja(e,t,n,{intAsBigInt:a}){const l=e[0];if((l==="-"||l==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),a){switch(n){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}const u=BigInt(e);return l==="-"?BigInt(-1)*u:u}const d=parseInt(e,n);return l==="-"?-1*d:d}function tf(e,t,n){const{value:a}=e;if(no(a)){const l=a.toString(t);return a<0?"-"+n+l.substr(1):n+l}return Qn(e)}const P_={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,n)=>ja(e,2,2,n),stringify:e=>tf(e,2,"0b")},I_={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,n)=>ja(e,1,8,n),stringify:e=>tf(e,8,"0")},R_={identify:no,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,n)=>ja(e,0,10,n),stringify:Qn},M_={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,n)=>ja(e,2,16,n),stringify:e=>tf(e,16,"0x")};class Xr extends mn{constructor(t){super(t),this.tag=Xr.tag}add(t){let n;kt(t)?n=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?n=new $t(t.key,null):n=new $t(t,null),fr(this.items,n.key)||this.items.push(n)}get(t,n){const a=fr(this.items,t);return!n&&kt(a)?vt(a.key)?a.key.value:a.key:a}set(t,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const a=fr(this.items,t);a&&!n?this.items.splice(this.items.indexOf(a),1):!a&&n&&this.items.push(new $t(t))}toJSON(t,n){return super.toJSON(t,n,Set)}toString(t,n,a){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),n,a);throw new Error("Set items must all have null values")}static from(t,n,a){const{replacer:l}=a,d=new this(t);if(n&&Symbol.iterator in Object(n))for(let u of n)typeof l=="function"&&(u=l.call(n,u,u)),d.items.push(Zc(u,null,a));return d}}Xr.tag="tag:yaml.org,2002:set";const nf={collection:"map",identify:e=>e instanceof Set,nodeClass:Xr,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,n)=>Xr.from(e,t,n),resolve(e,t){if(hr(e)){if(e.hasAllNullValues(!0))return Object.assign(new Xr,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};function rf(e,t){const n=e[0],a=n==="-"||n==="+"?e.substring(1):e,l=u=>t?BigInt(u):Number(u),d=a.replace(/_/g,"").split(":").reduce((u,c)=>u*l(60)+l(c),l(0));return n==="-"?l(-1)*d:d}function Fg(e){let{value:t}=e,n=u=>u;if(typeof t=="bigint")n=u=>BigInt(u);else if(isNaN(t)||!isFinite(t))return Qn(e);let a="";t<0&&(a="-",t*=n(-1));const l=n(60),d=[t%l];return t<60?d.unshift(0):(t=(t-d[0])/l,d.unshift(t%l),t>=60&&(t=(t-d[0])/l,d.unshift(t))),a+d.map(u=>String(u).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const Pg={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:n})=>rf(e,n),stringify:Fg},Ig={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>rf(e,!1),stringify:Fg},Ua={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){const t=e.match(Ua.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,n,a,l,d,u,c]=t.map(Number),w=t[7]?Number((t[7]+"00").substr(1,3)):0;let U=Date.UTC(n,a-1,l,d||0,u||0,c||0,w);const P=t[8];if(P&&P!=="Z"){let O=rf(P,!1);Math.abs(O)<30&&(O*=60),U-=6e4*O}return new Date(U)},stringify:({value:e})=>e.toISOString().replace(/(T00:00:00)?\.000Z$/,"")},bp=[is,rs,Ma,Da,Eg,Ag,P_,I_,R_,M_,E_,A_,F_,Yc,wi,ef,$c,nf,Pg,Ig,Ua],Tp=new Map([["core",k_],["failsafe",[is,rs,Ma]],["json",C_],["yaml11",bp],["yaml-1.1",bp]]),vp={binary:Yc,bool:Qc,float:Sg,floatExp:vg,floatNaN:Tg,floatTime:Ig,int:_g,intHex:kg,intOct:Lg,intTime:Pg,map:is,merge:wi,null:Da,omap:ef,pairs:$c,seq:rs,set:nf,timestamp:Ua},D_={"tag:yaml.org,2002:binary":Yc,"tag:yaml.org,2002:merge":wi,"tag:yaml.org,2002:omap":ef,"tag:yaml.org,2002:pairs":$c,"tag:yaml.org,2002:set":nf,"tag:yaml.org,2002:timestamp":Ua};function Ll(e,t,n){const a=Tp.get(t);if(a&&!e)return n&&!a.includes(wi)?a.concat(wi):a.slice();let l=a;if(!l)if(Array.isArray(e))l=[];else{const d=Array.from(Tp.keys()).filter(u=>u!=="yaml11").map(u=>JSON.stringify(u)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${d} or define customTags array`)}if(Array.isArray(e))for(const d of e)l=l.concat(d);else typeof e=="function"&&(l=e(l.slice()));return n&&(l=l.concat(wi)),l.reduce((d,u)=>{const c=typeof u=="string"?vp[u]:u;if(!c){const w=JSON.stringify(u),U=Object.keys(vp).map(P=>JSON.stringify(P)).join(", ");throw new Error(`Unknown custom tag ${w}; use one of ${U}`)}return d.includes(c)||d.push(c),d},[])}const B_=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;class io{constructor({compat:t,customTags:n,merge:a,resolveKnownTags:l,schema:d,sortMapEntries:u,toStringDefaults:c}){this.compat=Array.isArray(t)?Ll(t,"compat"):t?Ll(null,t):null,this.name=typeof d=="string"&&d||"core",this.knownTags=l?D_:{},this.tags=Ll(n,this.name,a),this.toStringOptions=c??null,Object.defineProperty(this,Wi,{value:is}),Object.defineProperty(this,ri,{value:Ma}),Object.defineProperty(this,ns,{value:rs}),this.sortMapEntries=typeof u=="function"?u:u===!0?B_:null}clone(){const t=Object.create(io.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}}function j_(e,t){const n=[];let a=t.directives===!0;if(t.directives!==!1&&e.directives){const w=e.directives.toString(e);w?(n.push(w),a=!0):e.directives.docStart&&(a=!0)}a&&n.push("---");const l=pg(e,t),{commentString:d}=l.options;if(e.commentBefore){n.length!==1&&n.unshift("");const w=d(e.commentBefore);n.unshift(Si(w,""))}let u=!1,c=null;if(e.contents){if(Et(e.contents)){if(e.contents.spaceBefore&&a&&n.push(""),e.contents.commentBefore){const P=d(e.contents.commentBefore);n.push(Si(P,""))}l.forceBlockIndent=!!e.comment,c=e.contents.comment}const w=c?void 0:()=>u=!0;let U=$r(e.contents,l,()=>c=null,w);c&&(U+=cr(U,"",d(c))),(U[0]==="|"||U[0]===">")&&n[n.length-1]==="---"?n[n.length-1]=`--- ${U}`:n.push(U)}else n.push($r(e.contents,l));if(e.directives?.docEnd)if(e.comment){const w=d(e.comment);w.includes(`
55
+ `)?(n.push("..."),n.push(Si(w,""))):n.push(`... ${w}`)}else n.push("...");else{let w=e.comment;w&&u&&(w=w.replace(/^\n+/,"")),w&&((!u||c)&&n[n.length-1]!==""&&n.push(""),n.push(Si(d(w),"")))}return n.join(`
56
+ `)+`
57
+ `}class mr{constructor(t,n,a){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Un,{value:Ac});let l=null;typeof n=="function"||Array.isArray(n)?l=n:a===void 0&&n&&(a=n,n=void 0);const d=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},a);this.options=d;let{version:u}=d;a?._directives?(this.directives=a._directives.atDocument(),this.directives.yaml.explicit&&(u=this.directives.yaml.version)):this.directives=new un({version:u}),this.setSchema(u,a),this.contents=t===void 0?null:this.createNode(t,l,a)}clone(){const t=Object.create(mr.prototype,{[Un]:{value:Ac}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=Et(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){Ur(this.contents)&&this.contents.add(t)}addIn(t,n){Ur(this.contents)&&this.contents.addIn(t,n)}createAlias(t,n){if(!t.anchor){const a=lg(this);t.anchor=!n||a.has(n)?cg(n||"a",a):n}return new eo(t.anchor)}createNode(t,n,a){let l;if(typeof n=="function")t=n.call({"":t},"",t),l=n;else if(Array.isArray(n)){const y=p=>typeof p=="number"||p instanceof String||p instanceof Number,h=n.filter(y).map(String);h.length>0&&(n=n.concat(h)),l=n}else a===void 0&&n&&(a=n,n=void 0);const{aliasDuplicateObjects:d,anchorPrefix:u,flow:c,keepUndefined:w,onTagObj:U,tag:P}=a??{},{onAnchor:O,setAnchors:R,sourceObjects:_}=d_(this,u||"a"),L={aliasDuplicateObjects:d??!0,keepUndefined:w??!1,onAnchor:O,onTagObj:U,replacer:l,schema:this.schema,sourceObjects:_},g=Qs(t,P,L);return c&&Ct(g)&&(g.flow=!0),R(),g}createPair(t,n,a={}){const l=this.createNode(t,null,a),d=this.createNode(n,null,a);return new $t(l,d)}delete(t){return Ur(this.contents)?this.contents.delete(t):!1}deleteIn(t){return qs(t)?this.contents==null?!1:(this.contents=null,!0):Ur(this.contents)?this.contents.deleteIn(t):!1}get(t,n){return Ct(this.contents)?this.contents.get(t,n):void 0}getIn(t,n){return qs(t)?!n&&vt(this.contents)?this.contents.value:this.contents:Ct(this.contents)?this.contents.getIn(t,n):void 0}has(t){return Ct(this.contents)?this.contents.has(t):!1}hasIn(t){return qs(t)?this.contents!==void 0:Ct(this.contents)?this.contents.hasIn(t):!1}set(t,n){this.contents==null?this.contents=Na(this.schema,[t],n):Ur(this.contents)&&this.contents.set(t,n)}setIn(t,n){qs(t)?this.contents=n:this.contents==null?this.contents=Na(this.schema,Array.from(t),n):Ur(this.contents)&&this.contents.setIn(t,n)}setSchema(t,n={}){typeof t=="number"&&(t=String(t));let a;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new un({version:"1.1"}),a={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new un({version:t}),a={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,a=null;break;default:{const l=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${l}`)}}if(n.schema instanceof Object)this.schema=n.schema;else if(a)this.schema=new io(Object.assign(a,n));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:n,mapAsMap:a,maxAliasCount:l,onAnchor:d,reviver:u}={}){const c={anchors:new Map,doc:this,keep:!t,mapAsMap:a===!0,mapKeyWarned:!1,maxAliasCount:typeof l=="number"?l:100},w=jn(this.contents,n??"",c);if(typeof d=="function")for(const{count:U,res:P}of c.anchors.values())d(P,U);return typeof u=="function"?Vr(u,{"":w},"",w):w}toJSON(t,n){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:n})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){const n=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${n}`)}return j_(this,t)}}function Ur(e){if(Ct(e))return!0;throw new Error("Expected a YAML collection as document contents")}class xa extends Error{constructor(t,n,a,l){super(),this.name=t,this.code=a,this.message=l,this.pos=n}}class xi extends xa{constructor(t,n,a){super("YAMLParseError",t,n,a)}}class sf extends xa{constructor(t,n,a){super("YAMLWarning",t,n,a)}}const Ca=(e,t)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(c=>t.linePos(c));const{line:a,col:l}=n.linePos[0];n.message+=` at line ${a}, column ${l}`;let d=l-1,u=e.substring(t.lineStarts[a-1],t.lineStarts[a]).replace(/[\n\r]+$/,"");if(d>=60&&u.length>80){const c=Math.min(d-39,u.length-79);u="…"+u.substring(c),d-=c-1}if(u.length>80&&(u=u.substring(0,79)+"…"),a>1&&/^ *$/.test(u.substring(0,d))){let c=e.substring(t.lineStarts[a-2],t.lineStarts[a-1]);c.length>80&&(c=c.substring(0,79)+`…
58
+ `),u=c+u}if(/[^ ]/.test(u)){let c=1;const w=n.linePos[1];w&&w.line===a&&w.col>l&&(c=Math.max(1,Math.min(w.col-l,80-d)));const U=" ".repeat(d)+"^".repeat(c);n.message+=`:
59
+
60
+ ${u}
61
+ ${U}
62
+ `}};function es(e,{flow:t,indicator:n,next:a,offset:l,onError:d,parentIndent:u,startOnNewline:c}){let w=!1,U=c,P=c,O="",R="",_=!1,L=!1,g=null,y=null,h=null,p=null,k=null,D=null,C=null;for(const f of e)switch(L&&(f.type!=="space"&&f.type!=="newline"&&f.type!=="comma"&&d(f.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),L=!1),g&&(U&&f.type!=="comment"&&f.type!=="newline"&&d(g,"TAB_AS_INDENT","Tabs are not allowed as indentation"),g=null),f.type){case"space":!t&&(n!=="doc-start"||a?.type!=="flow-collection")&&f.source.includes(" ")&&(g=f),P=!0;break;case"comment":{P||d(f,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const E=f.source.substring(1)||" ";O?O+=R+E:O=E,R="",U=!1;break}case"newline":U?O?O+=f.source:(!D||n!=="seq-item-ind")&&(w=!0):R+=f.source,U=!0,_=!0,(y||h)&&(p=f),P=!0;break;case"anchor":y&&d(f,"MULTIPLE_ANCHORS","A node can have at most one anchor"),f.source.endsWith(":")&&d(f.offset+f.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),y=f,C===null&&(C=f.offset),U=!1,P=!1,L=!0;break;case"tag":{h&&d(f,"MULTIPLE_TAGS","A node can have at most one tag"),h=f,C===null&&(C=f.offset),U=!1,P=!1,L=!0;break}case n:(y||h)&&d(f,"BAD_PROP_ORDER",`Anchors and tags must be after the ${f.source} indicator`),D&&d(f,"UNEXPECTED_TOKEN",`Unexpected ${f.source} in ${t??"collection"}`),D=f,U=n==="seq-item-ind"||n==="explicit-key-ind",P=!1;break;case"comma":if(t){k&&d(f,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),k=f,U=!1,P=!1;break}default:d(f,"UNEXPECTED_TOKEN",`Unexpected ${f.type} token`),U=!1,P=!1}const I=e[e.length-1],A=I?I.offset+I.source.length:l;return L&&a&&a.type!=="space"&&a.type!=="newline"&&a.type!=="comma"&&(a.type!=="scalar"||a.source!=="")&&d(a.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),g&&(U&&g.indent<=u||a?.type==="block-map"||a?.type==="block-seq")&&d(g,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:k,found:D,spaceBefore:w,comment:O,hasNewline:_,anchor:y,tag:h,newlineAfterProp:p,end:A,start:C??A}}function Xs(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(`
63
+ `))return!0;if(e.end){for(const t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(const t of e.items){for(const n of t.start)if(n.type==="newline")return!0;if(t.sep){for(const n of t.sep)if(n.type==="newline")return!0}if(Xs(t.key)||Xs(t.value))return!0}return!1;default:return!0}}function Rc(e,t,n){if(t?.type==="flow-collection"){const a=t.end[0];a.indent===e&&(a.source==="]"||a.source==="}")&&Xs(t)&&n(a,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function Rg(e,t,n){const{uniqueKeys:a}=e.options;if(a===!1)return!1;const l=typeof a=="function"?a:(d,u)=>d===u||vt(d)&&vt(u)&&d.value===u.value;return t.some(d=>l(d.key,n))}const Sp="All mapping items must start at the same column";function U_({composeNode:e,composeEmptyNode:t},n,a,l,d){const u=d?.nodeClass??mn,c=new u(n.schema);n.atRoot&&(n.atRoot=!1);let w=a.offset,U=null;for(const P of a.items){const{start:O,key:R,sep:_,value:L}=P,g=es(O,{indicator:"explicit-key-ind",next:R??_?.[0],offset:w,onError:l,parentIndent:a.indent,startOnNewline:!0}),y=!g.found;if(y){if(R&&(R.type==="block-seq"?l(w,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in R&&R.indent!==a.indent&&l(w,"BAD_INDENT",Sp)),!g.anchor&&!g.tag&&!_){U=g.end,g.comment&&(c.comment?c.comment+=`
64
+ `+g.comment:c.comment=g.comment);continue}(g.newlineAfterProp||Xs(R))&&l(R??O[O.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else g.found?.indent!==a.indent&&l(w,"BAD_INDENT",Sp);n.atKey=!0;const h=g.end,p=R?e(n,R,g,l):t(n,h,O,null,g,l);n.schema.compat&&Rc(a.indent,R,l),n.atKey=!1,Rg(n,c.items,p)&&l(h,"DUPLICATE_KEY","Map keys must be unique");const k=es(_??[],{indicator:"map-value-ind",next:L,offset:p.range[2],onError:l,parentIndent:a.indent,startOnNewline:!R||R.type==="block-scalar"});if(w=k.end,k.found){y&&(L?.type==="block-map"&&!k.hasNewline&&l(w,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),n.options.strict&&g.start<k.found.offset-1024&&l(p.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const D=L?e(n,L,k,l):t(n,w,_,null,k,l);n.schema.compat&&Rc(a.indent,L,l),w=D.range[2];const C=new $t(p,D);n.options.keepSourceTokens&&(C.srcToken=P),c.items.push(C)}else{y&&l(p.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),k.comment&&(p.comment?p.comment+=`
65
+ `+k.comment:p.comment=k.comment);const D=new $t(p);n.options.keepSourceTokens&&(D.srcToken=P),c.items.push(D)}}return U&&U<w&&l(U,"IMPOSSIBLE","Map comment with trailing content"),c.range=[a.offset,w,U??w],c}function x_({composeNode:e,composeEmptyNode:t},n,a,l,d){const u=d?.nodeClass??_i,c=new u(n.schema);n.atRoot&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let w=a.offset,U=null;for(const{start:P,value:O}of a.items){const R=es(P,{indicator:"seq-item-ind",next:O,offset:w,onError:l,parentIndent:a.indent,startOnNewline:!0});if(!R.found)if(R.anchor||R.tag||O)O&&O.type==="block-seq"?l(R.end,"BAD_INDENT","All sequence items must start at the same column"):l(w,"MISSING_CHAR","Sequence item without - indicator");else{U=R.end,R.comment&&(c.comment=R.comment);continue}const _=O?e(n,O,R,l):t(n,R.end,P,null,R,l);n.schema.compat&&Rc(a.indent,O,l),w=_.range[2],c.items.push(_)}return c.range=[a.offset,w,U??w],c}function ro(e,t,n,a){let l="";if(e){let d=!1,u="";for(const c of e){const{source:w,type:U}=c;switch(U){case"space":d=!0;break;case"comment":{n&&!d&&a(c,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const P=w.substring(1)||" ";l?l+=u+P:l=P,u="";break}case"newline":l&&(u+=w),d=!0;break;default:a(c,"UNEXPECTED_TOKEN",`Unexpected ${U} at node end`)}t+=w.length}}return{comment:l,offset:t}}const _l="Block collections are not allowed within flow collections",kl=e=>e&&(e.type==="block-map"||e.type==="block-seq");function z_({composeNode:e,composeEmptyNode:t},n,a,l,d){const u=a.start.source==="{",c=u?"flow map":"flow sequence",w=d?.nodeClass??(u?mn:_i),U=new w(n.schema);U.flow=!0;const P=n.atRoot;P&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let O=a.offset+a.start.source.length;for(let y=0;y<a.items.length;++y){const h=a.items[y],{start:p,key:k,sep:D,value:C}=h,I=es(p,{flow:c,indicator:"explicit-key-ind",next:k??D?.[0],offset:O,onError:l,parentIndent:a.indent,startOnNewline:!1});if(!I.found){if(!I.anchor&&!I.tag&&!D&&!C){y===0&&I.comma?l(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${c}`):y<a.items.length-1&&l(I.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${c}`),I.comment&&(U.comment?U.comment+=`
66
+ `+I.comment:U.comment=I.comment),O=I.end;continue}!u&&n.options.strict&&Xs(k)&&l(k,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(y===0)I.comma&&l(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${c}`);else if(I.comma||l(I.start,"MISSING_CHAR",`Missing , between ${c} items`),I.comment){let A="";e:for(const f of p)switch(f.type){case"comma":case"space":break;case"comment":A=f.source.substring(1);break e;default:break e}if(A){let f=U.items[U.items.length-1];kt(f)&&(f=f.value??f.key),f.comment?f.comment+=`
67
+ `+A:f.comment=A,I.comment=I.comment.substring(A.length+1)}}if(!u&&!D&&!I.found){const A=C?e(n,C,I,l):t(n,I.end,D,null,I,l);U.items.push(A),O=A.range[2],kl(C)&&l(A.range,"BLOCK_IN_FLOW",_l)}else{n.atKey=!0;const A=I.end,f=k?e(n,k,I,l):t(n,A,p,null,I,l);kl(k)&&l(f.range,"BLOCK_IN_FLOW",_l),n.atKey=!1;const E=es(D??[],{flow:c,indicator:"map-value-ind",next:C,offset:f.range[2],onError:l,parentIndent:a.indent,startOnNewline:!1});if(E.found){if(!u&&!I.found&&n.options.strict){if(D)for(const m of D){if(m===E.found)break;if(m.type==="newline"){l(m,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}I.start<E.found.offset-1024&&l(E.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else C&&("source"in C&&C.source&&C.source[0]===":"?l(C,"MISSING_CHAR",`Missing space after : in ${c}`):l(E.start,"MISSING_CHAR",`Missing , or : between ${c} items`));const b=C?e(n,C,E,l):E.found?t(n,E.end,D,null,E,l):null;b?kl(C)&&l(b.range,"BLOCK_IN_FLOW",_l):E.comment&&(f.comment?f.comment+=`
68
+ `+E.comment:f.comment=E.comment);const F=new $t(f,b);if(n.options.keepSourceTokens&&(F.srcToken=h),u){const m=U;Rg(n,m.items,f)&&l(A,"DUPLICATE_KEY","Map keys must be unique"),m.items.push(F)}else{const m=new mn(n.schema);m.flow=!0,m.items.push(F);const r=(b??f).range;m.range=[f.range[0],r[1],r[2]],U.items.push(m)}O=b?b.range[2]:E.end}}const R=u?"}":"]",[_,...L]=a.end;let g=O;if(_&&_.source===R)g=_.offset+_.source.length;else{const y=c[0].toUpperCase()+c.substring(1),h=P?`${y} must end with a ${R}`:`${y} in block collection must be sufficiently indented and end with a ${R}`;l(O,P?"MISSING_CHAR":"BAD_INDENT",h),_&&_.source.length!==1&&L.unshift(_)}if(L.length>0){const y=ro(L,g,n.options.strict,l);y.comment&&(U.comment?U.comment+=`
69
+ `+y.comment:U.comment=y.comment),U.range=[a.offset,g,y.offset]}else U.range=[a.offset,g,g];return U}function Nl(e,t,n,a,l,d){const u=n.type==="block-map"?U_(e,t,n,a,d):n.type==="block-seq"?x_(e,t,n,a,d):z_(e,t,n,a,d),c=u.constructor;return l==="!"||l===c.tagName?(u.tag=c.tagName,u):(l&&(u.tag=l),u)}function W_(e,t,n,a,l){const d=a.tag,u=d?t.directives.tagName(d.source,R=>l(d,"TAG_RESOLVE_FAILED",R)):null;if(n.type==="block-seq"){const{anchor:R,newlineAfterProp:_}=a,L=R&&d?R.offset>d.offset?R:d:R??d;L&&(!_||_.offset<L.offset)&&l(L,"MISSING_CHAR","Missing newline after block sequence props")}const c=n.type==="block-map"?"map":n.type==="block-seq"?"seq":n.start.source==="{"?"map":"seq";if(!d||!u||u==="!"||u===mn.tagName&&c==="map"||u===_i.tagName&&c==="seq")return Nl(e,t,n,l,u);let w=t.schema.tags.find(R=>R.tag===u&&R.collection===c);if(!w){const R=t.schema.knownTags[u];if(R&&R.collection===c)t.schema.tags.push(Object.assign({},R,{default:!1})),w=R;else return R?.collection?l(d,"BAD_COLLECTION_TYPE",`${R.tag} used for ${c} collection, but expects ${R.collection}`,!0):l(d,"TAG_RESOLVE_FAILED",`Unresolved tag: ${u}`,!0),Nl(e,t,n,l,u)}const U=Nl(e,t,n,l,u,w),P=w.resolve?.(U,R=>l(d,"TAG_RESOLVE_FAILED",R),t.options)??U,O=Et(P)?P:new tt(P);return O.range=U.range,O.tag=u,w?.format&&(O.format=w.format),O}function Mg(e,t,n){const a=t.offset,l=q_(t,e.options.strict,n);if(!l)return{value:"",type:null,comment:"",range:[a,a,a]};const d=l.mode===">"?tt.BLOCK_FOLDED:tt.BLOCK_LITERAL,u=t.source?J_(t.source):[];let c=u.length;for(let g=u.length-1;g>=0;--g){const y=u[g][1];if(y===""||y==="\r")c=g;else break}if(c===0){const g=l.chomp==="+"&&u.length>0?`
70
+ `.repeat(Math.max(1,u.length-1)):"";let y=a+l.length;return t.source&&(y+=t.source.length),{value:g,type:d,comment:l.comment,range:[a,y,y]}}let w=t.indent+l.indent,U=t.offset+l.length,P=0;for(let g=0;g<c;++g){const[y,h]=u[g];if(h===""||h==="\r")l.indent===0&&y.length>w&&(w=y.length);else{y.length<w&&n(U+y.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),l.indent===0&&(w=y.length),P=g,w===0&&!e.atRoot&&n(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=y.length+h.length+1}for(let g=u.length-1;g>=c;--g)u[g][0].length>w&&(c=g+1);let O="",R="",_=!1;for(let g=0;g<P;++g)O+=u[g][0].slice(w)+`
71
+ `;for(let g=P;g<c;++g){let[y,h]=u[g];U+=y.length+h.length+1;const p=h[h.length-1]==="\r";if(p&&(h=h.slice(0,-1)),h&&y.length<w){const D=`Block scalar lines must not be less indented than their ${l.indent?"explicit indentation indicator":"first line"}`;n(U-h.length-(p?2:1),"BAD_INDENT",D),y=""}d===tt.BLOCK_LITERAL?(O+=R+y.slice(w)+h,R=`
72
+ `):y.length>w||h[0]===" "?(R===" "?R=`
73
+ `:!_&&R===`
74
+ `&&(R=`
75
+
76
+ `),O+=R+y.slice(w)+h,R=`
77
+ `,_=!0):h===""?R===`
78
+ `?O+=`
79
+ `:R=`
80
+ `:(O+=R+h,R=" ",_=!1)}switch(l.chomp){case"-":break;case"+":for(let g=c;g<u.length;++g)O+=`
81
+ `+u[g][0].slice(w);O[O.length-1]!==`
82
+ `&&(O+=`
83
+ `);break;default:O+=`
84
+ `}const L=a+l.length+t.source.length;return{value:O,type:d,comment:l.comment,range:[a,L,L]}}function q_({offset:e,props:t},n,a){if(t[0].type!=="block-scalar-header")return a(t[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:l}=t[0],d=l[0];let u=0,c="",w=-1;for(let R=1;R<l.length;++R){const _=l[R];if(!c&&(_==="-"||_==="+"))c=_;else{const L=Number(_);!u&&L?u=L:w===-1&&(w=e+R)}}w!==-1&&a(w,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${l}`);let U=!1,P="",O=l.length;for(let R=1;R<t.length;++R){const _=t[R];switch(_.type){case"space":U=!0;case"newline":O+=_.source.length;break;case"comment":n&&!U&&a(_,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),O+=_.source.length,P=_.source.substring(1);break;case"error":a(_,"UNEXPECTED_TOKEN",_.message),O+=_.source.length;break;default:{const L=`Unexpected token in block scalar header: ${_.type}`;a(_,"UNEXPECTED_TOKEN",L);const g=_.source;g&&typeof g=="string"&&(O+=g.length)}}}return{mode:d,indent:u,chomp:c,comment:P,length:O}}function J_(e){const t=e.split(/\n( *)/),n=t[0],a=n.match(/^( *)/),d=[a?.[1]?[a[1],n.slice(a[1].length)]:["",n]];for(let u=1;u<t.length;u+=2)d.push([t[u],t[u+1]]);return d}function Dg(e,t,n){const{offset:a,type:l,source:d,end:u}=e;let c,w;const U=(R,_,L)=>n(a+R,_,L);switch(l){case"scalar":c=tt.PLAIN,w=G_(d,U);break;case"single-quoted-scalar":c=tt.QUOTE_SINGLE,w=H_(d,U);break;case"double-quoted-scalar":c=tt.QUOTE_DOUBLE,w=K_(d,U);break;default:return n(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${l}`),{value:"",type:null,comment:"",range:[a,a+d.length,a+d.length]}}const P=a+d.length,O=ro(u,P,t,n);return{value:w,type:c,comment:O.comment,range:[a,P,O.offset]}}function G_(e,t){let n="";switch(e[0]){case" ":n="a tab character";break;case",":n="flow indicator character ,";break;case"%":n="directive indicator character %";break;case"|":case">":{n=`block scalar indicator ${e[0]}`;break}case"@":case"`":{n=`reserved character ${e[0]}`;break}}return n&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${n}`),Bg(e)}function H_(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),Bg(e.slice(1,-1)).replace(/''/g,"'")}function Bg(e){let t,n;try{t=new RegExp(`(.*?)(?<![ ])[ ]*\r?
85
+ `,"sy"),n=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
86
+ `,"sy")}catch{t=/(.*?)[ \t]*\r?\n/sy,n=/[ \t]*(.*?)[ \t]*\r?\n/sy}let a=t.exec(e);if(!a)return e;let l=a[1],d=" ",u=t.lastIndex;for(n.lastIndex=u;a=n.exec(e);)a[1]===""?d===`
87
+ `?l+=d:d=`
88
+ `:(l+=d+a[1],d=" "),u=n.lastIndex;const c=/[ \t]*(.*)/sy;return c.lastIndex=u,a=c.exec(e),l+d+(a?.[1]??"")}function K_(e,t){let n="";for(let a=1;a<e.length-1;++a){const l=e[a];if(!(l==="\r"&&e[a+1]===`
89
+ `))if(l===`
90
+ `){const{fold:d,offset:u}=V_(e,a);n+=d,a=u}else if(l==="\\"){let d=e[++a];const u=Z_[d];if(u)n+=u;else if(d===`
91
+ `)for(d=e[a+1];d===" "||d===" ";)d=e[++a+1];else if(d==="\r"&&e[a+1]===`
92
+ `)for(d=e[++a+1];d===" "||d===" ";)d=e[++a+1];else if(d==="x"||d==="u"||d==="U"){const c={x:2,u:4,U:8}[d];n+=Q_(e,a+1,c,t),a+=c}else{const c=e.substr(a-1,2);t(a-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${c}`),n+=c}}else if(l===" "||l===" "){const d=a;let u=e[a+1];for(;u===" "||u===" ";)u=e[++a+1];u!==`
93
+ `&&!(u==="\r"&&e[a+2]===`
94
+ `)&&(n+=a>d?e.slice(d,a+1):l)}else n+=l}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),n}function V_(e,t){let n="",a=e[t+1];for(;(a===" "||a===" "||a===`
95
+ `||a==="\r")&&!(a==="\r"&&e[t+2]!==`
96
+ `);)a===`
97
+ `&&(n+=`
98
+ `),t+=1,a=e[t+1];return n||(n=" "),{fold:n,offset:t}}const Z_={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
99
+ `,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function Q_(e,t,n,a){const l=e.substr(t,n),u=l.length===n&&/^[0-9a-fA-F]+$/.test(l)?parseInt(l,16):NaN;if(isNaN(u)){const c=e.substr(t-2,n+2);return a(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${c}`),c}return String.fromCodePoint(u)}function jg(e,t,n,a){const{value:l,type:d,comment:u,range:c}=t.type==="block-scalar"?Mg(e,t,a):Dg(t,e.options.strict,a),w=n?e.directives.tagName(n.source,O=>a(n,"TAG_RESOLVE_FAILED",O)):null;let U;e.options.stringKeys&&e.atKey?U=e.schema[ri]:w?U=X_(e.schema,l,w,n,a):t.type==="scalar"?U=Y_(e,l,t,a):U=e.schema[ri];let P;try{const O=U.resolve(l,R=>a(n??t,"TAG_RESOLVE_FAILED",R),e.options);P=vt(O)?O:new tt(O)}catch(O){const R=O instanceof Error?O.message:String(O);a(n??t,"TAG_RESOLVE_FAILED",R),P=new tt(l)}return P.range=c,P.source=l,d&&(P.type=d),w&&(P.tag=w),U.format&&(P.format=U.format),u&&(P.comment=u),P}function X_(e,t,n,a,l){if(n==="!")return e[ri];const d=[];for(const c of e.tags)if(!c.collection&&c.tag===n)if(c.default&&c.test)d.push(c);else return c;for(const c of d)if(c.test?.test(t))return c;const u=e.knownTags[n];return u&&!u.collection?(e.tags.push(Object.assign({},u,{default:!1,test:void 0})),u):(l(a,"TAG_RESOLVE_FAILED",`Unresolved tag: ${n}`,n!=="tag:yaml.org,2002:str"),e[ri])}function Y_({atKey:e,directives:t,schema:n},a,l,d){const u=n.tags.find(c=>(c.default===!0||e&&c.default==="key")&&c.test?.test(a))||n[ri];if(n.compat){const c=n.compat.find(w=>w.default&&w.test?.test(a))??n[ri];if(u.tag!==c.tag){const w=t.tagString(u.tag),U=t.tagString(c.tag),P=`Value may be parsed as either ${w} or ${U}`;d(l,"TAG_RESOLVE_FAILED",P,!0)}}return u}function $_(e,t,n){if(t){n===null&&(n=t.length);for(let a=n-1;a>=0;--a){let l=t[a];switch(l.type){case"space":case"comment":case"newline":e-=l.source.length;continue}for(l=t[++a];l?.type==="space";)e+=l.source.length,l=t[++a];break}}return e}const ek={composeNode:Ug,composeEmptyNode:of};function Ug(e,t,n,a){const l=e.atKey,{spaceBefore:d,comment:u,anchor:c,tag:w}=n;let U,P=!0;switch(t.type){case"alias":U=tk(e,t,a),(c||w)&&a(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":U=jg(e,t,w,a),c&&(U.anchor=c.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":U=W_(ek,e,t,n,a),c&&(U.anchor=c.source.substring(1));break;default:{const O=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;a(t,"UNEXPECTED_TOKEN",O),U=of(e,t.offset,void 0,null,n,a),P=!1}}return c&&U.anchor===""&&a(c,"BAD_ALIAS","Anchor cannot be an empty string"),l&&e.options.stringKeys&&(!vt(U)||typeof U.value!="string"||U.tag&&U.tag!=="tag:yaml.org,2002:str")&&a(w??t,"NON_STRING_KEY","With stringKeys, all keys must be strings"),d&&(U.spaceBefore=!0),u&&(t.type==="scalar"&&t.source===""?U.comment=u:U.commentBefore=u),e.options.keepSourceTokens&&P&&(U.srcToken=t),U}function of(e,t,n,a,{spaceBefore:l,comment:d,anchor:u,tag:c,end:w},U){const P={type:"scalar",offset:$_(t,n,a),indent:-1,source:""},O=jg(e,P,c,U);return u&&(O.anchor=u.source.substring(1),O.anchor===""&&U(u,"BAD_ALIAS","Anchor cannot be an empty string")),l&&(O.spaceBefore=!0),d&&(O.comment=d,O.range[2]=w),O}function tk({options:e},{offset:t,source:n,end:a},l){const d=new eo(n.substring(1));d.source===""&&l(t,"BAD_ALIAS","Alias cannot be an empty string"),d.source.endsWith(":")&&l(t+n.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const u=t+n.length,c=ro(a,u,e.strict,l);return d.range=[t,u,c.offset],c.comment&&(d.comment=c.comment),d}function nk(e,t,{offset:n,start:a,value:l,end:d},u){const c=Object.assign({_directives:t},e),w=new mr(void 0,c),U={atKey:!1,atRoot:!0,directives:w.directives,options:w.options,schema:w.schema},P=es(a,{indicator:"doc-start",next:l??d?.[0],offset:n,onError:u,parentIndent:0,startOnNewline:!0});P.found&&(w.directives.docStart=!0,l&&(l.type==="block-map"||l.type==="block-seq")&&!P.hasNewline&&u(P.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),w.contents=l?Ug(U,l,P,u):of(U,P.end,a,null,P,u);const O=w.contents.range[2],R=ro(d,O,!1,u);return R.comment&&(w.comment=R.comment),w.range=[n,O,R.offset],w}function ws(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];const{offset:t,source:n}=e;return[t,t+(typeof n=="string"?n.length:1)]}function wp(e){let t="",n=!1,a=!1;for(let l=0;l<e.length;++l){const d=e[l];switch(d[0]){case"#":t+=(t===""?"":a?`
100
+
101
+ `:`
102
+ `)+(d.substring(1)||" "),n=!0,a=!1;break;case"%":e[l+1]?.[0]!=="#"&&(l+=1),n=!1;break;default:n||(a=!0),n=!1}}return{comment:t,afterEmptyLine:a}}class za{constructor(t={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(n,a,l,d)=>{const u=ws(n);d?this.warnings.push(new sf(u,a,l)):this.errors.push(new xi(u,a,l))},this.directives=new un({version:t.version||"1.2"}),this.options=t}decorate(t,n){const{comment:a,afterEmptyLine:l}=wp(this.prelude);if(a){const d=t.contents;if(n)t.comment=t.comment?`${t.comment}
103
+ ${a}`:a;else if(l||t.directives.docStart||!d)t.commentBefore=a;else if(Ct(d)&&!d.flow&&d.items.length>0){let u=d.items[0];kt(u)&&(u=u.key);const c=u.commentBefore;u.commentBefore=c?`${a}
104
+ ${c}`:a}else{const u=d.commentBefore;d.commentBefore=u?`${a}
105
+ ${u}`:a}}n?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:wp(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,n=!1,a=-1){for(const l of t)yield*this.next(l);yield*this.end(n,a)}*next(t){switch(t.type){case"directive":this.directives.add(t.source,(n,a,l)=>{const d=ws(t);d[0]+=n,this.onError(d,"BAD_DIRECTIVE",a,l)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{const n=nk(this.options,this.directives,t,this.onError);this.atDirectives&&!n.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(n,!1),this.doc&&(yield this.doc),this.doc=n,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{const n=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,a=new xi(ws(t),"UNEXPECTED_TOKEN",n);this.atDirectives||!this.doc?this.errors.push(a):this.doc.errors.push(a);break}case"doc-end":{if(!this.doc){const a="Unexpected doc-end without preceding document";this.errors.push(new xi(ws(t),"UNEXPECTED_TOKEN",a));break}this.doc.directives.docEnd=!0;const n=ro(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),n.comment){const a=this.doc.comment;this.doc.comment=a?`${a}
106
+ ${n.comment}`:n.comment}this.doc.range[2]=n.offset;break}default:this.errors.push(new xi(ws(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){const a=Object.assign({_directives:this.directives},this.options),l=new mr(void 0,a);this.atDirectives&&this.onError(n,"MISSING_CHAR","Missing directives-end indicator line"),l.range=[0,n,n],this.decorate(l,!1),yield l}}}function ik(e,t=!0,n){if(e){const a=(l,d,u)=>{const c=typeof l=="number"?l:Array.isArray(l)?l[0]:l.offset;if(n)n(c,d,u);else throw new xi([c,c+1],d,u)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return Dg(e,t,a);case"block-scalar":return Mg({options:{strict:t}},e,a)}}return null}function rk(e,t){const{implicitKey:n=!1,indent:a,inFlow:l=!1,offset:d=-1,type:u="PLAIN"}=t,c=to({type:u,value:e},{implicitKey:n,indent:a>0?" ".repeat(a):"",inFlow:l,options:{blockQuote:!0,lineWidth:-1}}),w=t.end??[{type:"newline",offset:-1,indent:a,source:`
107
+ `}];switch(c[0]){case"|":case">":{const U=c.indexOf(`
108
+ `),P=c.substring(0,U),O=c.substring(U+1)+`
109
+ `,R=[{type:"block-scalar-header",offset:d,indent:a,source:P}];return xg(R,w)||R.push({type:"newline",offset:-1,indent:a,source:`
110
+ `}),{type:"block-scalar",offset:d,indent:a,props:R,source:O}}case'"':return{type:"double-quoted-scalar",offset:d,indent:a,source:c,end:w};case"'":return{type:"single-quoted-scalar",offset:d,indent:a,source:c,end:w};default:return{type:"scalar",offset:d,indent:a,source:c,end:w}}}function sk(e,t,n={}){let{afterKey:a=!1,implicitKey:l=!1,inFlow:d=!1,type:u}=n,c="indent"in e?e.indent:null;if(a&&typeof c=="number"&&(c+=2),!u)switch(e.type){case"single-quoted-scalar":u="QUOTE_SINGLE";break;case"double-quoted-scalar":u="QUOTE_DOUBLE";break;case"block-scalar":{const U=e.props[0];if(U.type!=="block-scalar-header")throw new Error("Invalid block scalar header");u=U.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:u="PLAIN"}const w=to({type:u,value:t},{implicitKey:l||c===null,indent:c!==null&&c>0?" ".repeat(c):"",inFlow:d,options:{blockQuote:!0,lineWidth:-1}});switch(w[0]){case"|":case">":ok(e,w);break;case'"':Ol(e,w,"double-quoted-scalar");break;case"'":Ol(e,w,"single-quoted-scalar");break;default:Ol(e,w,"scalar")}}function ok(e,t){const n=t.indexOf(`
111
+ `),a=t.substring(0,n),l=t.substring(n+1)+`
112
+ `;if(e.type==="block-scalar"){const d=e.props[0];if(d.type!=="block-scalar-header")throw new Error("Invalid block scalar header");d.source=a,e.source=l}else{const{offset:d}=e,u="indent"in e?e.indent:-1,c=[{type:"block-scalar-header",offset:d,indent:u,source:a}];xg(c,"end"in e?e.end:void 0)||c.push({type:"newline",offset:-1,indent:u,source:`
113
+ `});for(const w of Object.keys(e))w!=="type"&&w!=="offset"&&delete e[w];Object.assign(e,{type:"block-scalar",indent:u,props:c,source:l})}}function xg(e,t){if(t)for(const n of t)switch(n.type){case"space":case"comment":e.push(n);break;case"newline":return e.push(n),!0}return!1}function Ol(e,t,n){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=n,e.source=t;break;case"block-scalar":{const a=e.props.slice(1);let l=t.length;e.props[0].type==="block-scalar-header"&&(l-=e.props[0].source.length);for(const d of a)d.offset+=l;delete e.props,Object.assign(e,{type:n,source:t,end:a});break}case"block-map":case"block-seq":{const l={type:"newline",offset:e.offset+t.length,indent:e.indent,source:`
114
+ `};delete e.items,Object.assign(e,{type:n,source:t,end:[l]});break}default:{const a="indent"in e?e.indent:-1,l="end"in e&&Array.isArray(e.end)?e.end.filter(d=>d.type==="space"||d.type==="comment"||d.type==="newline"):[];for(const d of Object.keys(e))d!=="type"&&d!=="offset"&&delete e[d];Object.assign(e,{type:n,indent:a,source:t,end:l})}}}const ak=e=>"type"in e?Ea(e):Ta(e);function Ea(e){switch(e.type){case"block-scalar":{let t="";for(const n of e.props)t+=Ea(n);return t+e.source}case"block-map":case"block-seq":{let t="";for(const n of e.items)t+=Ta(n);return t}case"flow-collection":{let t=e.start.source;for(const n of e.items)t+=Ta(n);for(const n of e.end)t+=n.source;return t}case"document":{let t=Ta(e);if(e.end)for(const n of e.end)t+=n.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(const n of e.end)t+=n.source;return t}}}function Ta({start:e,key:t,sep:n,value:a}){let l="";for(const d of e)l+=d.source;if(t&&(l+=Ea(t)),n)for(const d of n)l+=d.source;return a&&(l+=Ea(a)),l}const Mc=Symbol("break visit"),uk=Symbol("skip children"),zg=Symbol("remove item");function dr(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),Wg(Object.freeze([]),e,t)}dr.BREAK=Mc;dr.SKIP=uk;dr.REMOVE=zg;dr.itemAtPath=(e,t)=>{let n=e;for(const[a,l]of t){const d=n?.[a];if(d&&"items"in d)n=d.items[l];else return}return n};dr.parentCollection=(e,t)=>{const n=dr.itemAtPath(e,t.slice(0,-1)),a=t[t.length-1][0],l=n?.[a];if(l&&"items"in l)return l;throw new Error("Parent collection not found")};function Wg(e,t,n){let a=n(t,e);if(typeof a=="symbol")return a;for(const l of["key","value"]){const d=t[l];if(d&&"items"in d){for(let u=0;u<d.items.length;++u){const c=Wg(Object.freeze(e.concat([[l,u]])),d.items[u],n);if(typeof c=="number")u=c-1;else{if(c===Mc)return Mc;c===zg&&(d.items.splice(u,1),u-=1)}}typeof a=="function"&&l==="key"&&(a=a(t,e))}}return typeof a=="function"?a(t,e):a}const Wa="\uFEFF",qa="",Ja="",Ys="",lk=e=>!!e&&"items"in e,ck=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function fk(e){switch(e){case Wa:return"<BOM>";case qa:return"<DOC>";case Ja:return"<FLOW_END>";case Ys:return"<SCALAR>";default:return JSON.stringify(e)}}function qg(e){switch(e){case Wa:return"byte-order-mark";case qa:return"doc-mode";case Ja:return"flow-error-end";case Ys:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
115
+ `:case`\r
116
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const Jg=Object.freeze(Object.defineProperty({__proto__:null,BOM:Wa,DOCUMENT:qa,FLOW_END:Ja,SCALAR:Ys,createScalarToken:rk,isCollection:lk,isScalar:ck,prettyToken:fk,resolveAsScalar:ik,setScalarValue:sk,stringify:ak,tokenType:qg,visit:dr},Symbol.toStringTag,{value:"Module"}));function Kn(e){switch(e){case void 0:case" ":case`
117
+ `:case"\r":case" ":return!0;default:return!1}}const Lp=new Set("0123456789ABCDEFabcdef"),dk=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),ia=new Set(",[]{}"),hk=new Set(` ,[]{}
118
+ \r `),Cl=e=>!e||hk.has(e);class af{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,n=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!n;let a=this.next??"stream";for(;a&&(n||this.hasChars(1));)a=yield*this.parseNext(a)}atLineEnd(){let t=this.pos,n=this.buffer[t];for(;n===" "||n===" ";)n=this.buffer[++t];return!n||n==="#"||n===`
119
+ `?!0:n==="\r"?this.buffer[t+1]===`
120
+ `:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let n=this.buffer[t];if(this.indentNext>0){let a=0;for(;n===" ";)n=this.buffer[++a+t];if(n==="\r"){const l=this.buffer[a+t+1];if(l===`
121
+ `||!l&&!this.atEnd)return t+a+1}return n===`
122
+ `||a>=this.indentNext||!n&&!this.atEnd?t+a:-1}if(n==="-"||n==="."){const a=this.buffer.substr(t,3);if((a==="---"||a==="...")&&Kn(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&t<this.pos)&&(t=this.buffer.indexOf(`
123
+ `,this.pos),this.lineEndPos=t),t===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[t-1]==="\r"&&(t-=1),this.buffer.substring(this.pos,t))}hasChars(t){return this.pos+t<=this.buffer.length}setNext(t){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=t,null}peek(t){return this.buffer.substr(this.pos,t)}*parseNext(t){switch(t){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let t=this.getLine();if(t===null)return this.setNext("stream");if(t[0]===Wa&&(yield*this.pushCount(1),t=t.substring(1)),t[0]==="%"){let n=t.length,a=t.indexOf("#");for(;a!==-1;){const d=t[a-1];if(d===" "||d===" "){n=a-1;break}else a=t.indexOf("#",a+1)}for(;;){const d=t[n-1];if(d===" "||d===" ")n-=1;else break}const l=(yield*this.pushCount(n))+(yield*this.pushSpaces(!0));return yield*this.pushCount(t.length-l),this.pushNewline(),"stream"}if(this.atLineEnd()){const n=yield*this.pushSpaces(!0);return yield*this.pushCount(t.length-n),yield*this.pushNewline(),"stream"}return yield qa,yield*this.parseLineStart()}*parseLineStart(){const t=this.charAt(0);if(!t&&!this.atEnd)return this.setNext("line-start");if(t==="-"||t==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const n=this.peek(3);if((n==="---"||n==="...")&&Kn(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,n==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!Kn(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[t,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&Kn(n)){const a=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=a,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const t=this.getLine();if(t===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(t[n]){case"#":yield*this.pushCount(t.length-n);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Cl),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,n,a=-1;do t=yield*this.pushNewline(),t>0?(n=yield*this.pushSpaces(!1),this.indentValue=a=n):n=0,n+=yield*this.pushSpaces(!0);while(t+n>0);const l=this.getLine();if(l===null)return this.setNext("flow");if((a!==-1&&a<this.indentNext&&l[0]!=="#"||a===0&&(l.startsWith("---")||l.startsWith("..."))&&Kn(l[3]))&&!(a===this.indentNext-1&&this.flowLevel===1&&(l[0]==="]"||l[0]==="}")))return this.flowLevel=0,yield Ja,yield*this.parseLineStart();let d=0;for(;l[d]===",";)d+=yield*this.pushCount(1),d+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(d+=yield*this.pushIndicators(),l[d]){case void 0:return"flow";case"#":return yield*this.pushCount(l.length-d),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(Cl),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{const u=this.charAt(1);if(this.flowKey||Kn(u)||u===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){const t=this.charAt(0);let n=this.buffer.indexOf(t,this.pos+1);if(t==="'")for(;n!==-1&&this.buffer[n+1]==="'";)n=this.buffer.indexOf("'",n+2);else for(;n!==-1;){let d=0;for(;this.buffer[n-1-d]==="\\";)d+=1;if(d%2===0)break;n=this.buffer.indexOf('"',n+1)}const a=this.buffer.substring(0,n);let l=a.indexOf(`
124
+ `,this.pos);if(l!==-1){for(;l!==-1;){const d=this.continueScalar(l+1);if(d===-1)break;l=a.indexOf(`
125
+ `,d)}l!==-1&&(n=l-(a[l-1]==="\r"?2:1))}if(n===-1){if(!this.atEnd)return this.setNext("quoted-scalar");n=this.buffer.length}return yield*this.pushToIndex(n+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let t=this.pos;for(;;){const n=this.buffer[++t];if(n==="+")this.blockScalarKeep=!0;else if(n>"0"&&n<="9")this.blockScalarIndent=Number(n)-1;else if(n!=="-")break}return yield*this.pushUntil(n=>Kn(n)||n==="#")}*parseBlockScalar(){let t=this.pos-1,n=0,a;e:for(let d=this.pos;a=this.buffer[d];++d)switch(a){case" ":n+=1;break;case`
126
+ `:t=d,n=0;break;case"\r":{const u=this.buffer[d+1];if(!u&&!this.atEnd)return this.setNext("block-scalar");if(u===`
127
+ `)break}default:break e}if(!a&&!this.atEnd)return this.setNext("block-scalar");if(n>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=n:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const d=this.continueScalar(t+1);if(d===-1)break;t=this.buffer.indexOf(`
128
+ `,d)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let l=t+1;for(a=this.buffer[l];a===" ";)a=this.buffer[++l];if(a===" "){for(;a===" "||a===" "||a==="\r"||a===`
129
+ `;)a=this.buffer[++l];t=l-1}else if(!this.blockScalarKeep)do{let d=t-1,u=this.buffer[d];u==="\r"&&(u=this.buffer[--d]);const c=d;for(;u===" ";)u=this.buffer[--d];if(u===`
130
+ `&&d>=this.pos&&d+1+n>c)t=d;else break}while(!0);return yield Ys,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const t=this.flowLevel>0;let n=this.pos-1,a=this.pos-1,l;for(;l=this.buffer[++a];)if(l===":"){const d=this.buffer[a+1];if(Kn(d)||t&&ia.has(d))break;n=a}else if(Kn(l)){let d=this.buffer[a+1];if(l==="\r"&&(d===`
131
+ `?(a+=1,l=`
132
+ `,d=this.buffer[a+1]):n=a),d==="#"||t&&ia.has(d))break;if(l===`
133
+ `){const u=this.continueScalar(a+1);if(u===-1)break;a=Math.max(a,u-2)}}else{if(t&&ia.has(l))break;n=a}return!l&&!this.atEnd?this.setNext("plain-scalar"):(yield Ys,yield*this.pushToIndex(n+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,n){const a=this.buffer.slice(this.pos,t);return a?(yield a,this.pos+=a.length,a.length):(n&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Cl))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const t=this.flowLevel>0,n=this.charAt(1);if(Kn(n)||t&&ia.has(n))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,n=this.buffer[t];for(;!Kn(n)&&n!==">";)n=this.buffer[++t];return yield*this.pushToIndex(n===">"?t+1:t,!1)}else{let t=this.pos+1,n=this.buffer[t];for(;n;)if(dk.has(n))n=this.buffer[++t];else if(n==="%"&&Lp.has(this.buffer[t+1])&&Lp.has(this.buffer[t+2]))n=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){const t=this.buffer[this.pos];return t===`
134
+ `?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===`
135
+ `?yield*this.pushCount(2):0}*pushSpaces(t){let n=this.pos-1,a;do a=this.buffer[++n];while(a===" "||t&&a===" ");const l=n-this.pos;return l>0&&(yield this.buffer.substr(this.pos,l),this.pos=n),l}*pushUntil(t){let n=this.pos,a=this.buffer[n];for(;!t(a);)a=this.buffer[++n];return yield*this.pushToIndex(n,!1)}}class uf{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let n=0,a=this.lineStarts.length;for(;n<a;){const d=n+a>>1;this.lineStarts[d]<t?n=d+1:a=d}if(this.lineStarts[n]===t)return{line:n+1,col:1};if(n===0)return{line:0,col:t};const l=this.lineStarts[n-1];return{line:n,col:t-l+1}}}}function lr(e,t){for(let n=0;n<e.length;++n)if(e[n].type===t)return!0;return!1}function _p(e){for(let t=0;t<e.length;++t)switch(e[t].type){case"space":case"comment":case"newline":break;default:return t}return-1}function Gg(e){switch(e?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function ra(e){switch(e.type){case"document":return e.start;case"block-map":{const t=e.items[e.items.length-1];return t.sep??t.start}case"block-seq":return e.items[e.items.length-1].start;default:return[]}}function xr(e){if(e.length===0)return[];let t=e.length;e:for(;--t>=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++t]?.type==="space";);return e.splice(t,e.length)}function kp(e){if(e.start.type==="flow-seq-start")for(const t of e.items)t.sep&&!t.value&&!lr(t.start,"explicit-key-ind")&&!lr(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,Gg(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}class Ga{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new af,this.onNewLine=t}*parse(t,n=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const a of this.lexer.lex(t,n))yield*this.next(a);n||(yield*this.end())}*next(t){if(this.source=t,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}const n=qg(t);if(n)if(n==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=n,yield*this.step(),n){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{const a=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:a,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const t=this.peek(1);if(this.type==="doc-end"&&(!t||t.type!=="doc-end")){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){const n=t??this.stack.pop();if(!n)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield n;else{const a=this.peek(1);switch(n.type==="block-scalar"?n.indent="indent"in a?a.indent:0:n.type==="flow-collection"&&a.type==="document"&&(n.indent=0),n.type==="flow-collection"&&kp(n),a.type){case"document":a.value=n;break;case"block-scalar":a.props.push(n);break;case"block-map":{const l=a.items[a.items.length-1];if(l.value){a.items.push({start:[],key:n,sep:[]}),this.onKeyLine=!0;return}else if(l.sep)l.value=n;else{Object.assign(l,{key:n,sep:[]}),this.onKeyLine=!l.explicitKey;return}break}case"block-seq":{const l=a.items[a.items.length-1];l.value?a.items.push({start:[],value:n}):l.value=n;break}case"flow-collection":{const l=a.items[a.items.length-1];!l||l.value?a.items.push({start:[],key:n,sep:[]}):l.sep?l.value=n:Object.assign(l,{key:n,sep:[]});return}default:yield*this.pop(),yield*this.pop(n)}if((a.type==="document"||a.type==="block-map"||a.type==="block-seq")&&(n.type==="block-map"||n.type==="block-seq")){const l=n.items[n.items.length-1];l&&!l.sep&&!l.value&&l.start.length>0&&_p(l.start)===-1&&(n.indent===0||l.start.every(d=>d.type!=="comment"||d.indent<n.indent))&&(a.type==="document"?a.end=l.start:a.items.push({start:l.start}),n.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{const t={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&t.start.push(this.sourceToken),this.stack.push(t);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(t){if(t.value)return yield*this.lineEnd(t);switch(this.type){case"doc-start":{_p(t.start)!==-1?(yield*this.pop(),yield*this.step()):t.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":t.start.push(this.sourceToken);return}const n=this.startBlockValue(t);n?this.stack.push(n):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(t){if(this.type==="map-value-ind"){const n=ra(this.peek(2)),a=xr(n);let l;t.end?(l=t.end,l.push(this.sourceToken),delete t.end):l=[this.sourceToken];const d={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:a,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=d}else yield*this.lineEnd(t)}*blockScalar(t){switch(this.type){case"space":case"comment":case"newline":t.props.push(this.sourceToken);return;case"scalar":if(t.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let n=this.source.indexOf(`
136
+ `)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(`
137
+ `,n)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(t){const n=t.items[t.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,n.value){const a="end"in n.value?n.value.end:void 0;(Array.isArray(a)?a[a.length-1]:void 0)?.type==="comment"?a?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)t.items.push({start:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else{if(this.atIndentedComment(n.start,t.indent)){const l=t.items[t.items.length-2]?.value?.end;if(Array.isArray(l)){Array.prototype.push.apply(l,n.start),l.push(this.sourceToken),t.items.pop();return}}n.start.push(this.sourceToken)}return}if(this.indent>=t.indent){const a=!this.onKeyLine&&this.indent===t.indent,l=a&&(n.sep||n.explicitKey)&&this.type!=="seq-item-ind";let d=[];if(l&&n.sep&&!n.value){const u=[];for(let c=0;c<n.sep.length;++c){const w=n.sep[c];switch(w.type){case"newline":u.push(c);break;case"space":break;case"comment":w.indent>t.indent&&(u.length=0);break;default:u.length=0}}u.length>=2&&(d=n.sep.splice(u[1]))}switch(this.type){case"anchor":case"tag":l||n.value?(d.push(this.sourceToken),t.items.push({start:d}),this.onKeyLine=!0):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"explicit-key-ind":!n.sep&&!n.explicitKey?(n.start.push(this.sourceToken),n.explicitKey=!0):l||n.value?(d.push(this.sourceToken),t.items.push({start:d,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(n.explicitKey)if(n.sep)if(n.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(lr(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:d,key:null,sep:[this.sourceToken]}]});else if(Gg(n.key)&&!lr(n.sep,"newline")){const u=xr(n.start),c=n.key,w=n.sep;w.push(this.sourceToken),delete n.key,delete n.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:u,key:c,sep:w}]})}else d.length>0?n.sep=n.sep.concat(d,this.sourceToken):n.sep.push(this.sourceToken);else if(lr(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{const u=xr(n.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:u,key:null,sep:[this.sourceToken]}]})}else n.sep?n.value||l?t.items.push({start:d,key:null,sep:[this.sourceToken]}):lr(n.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const u=this.flowScalar(this.type);l||n.value?(t.items.push({start:d,key:u,sep:[]}),this.onKeyLine=!0):n.sep?this.stack.push(u):(Object.assign(n,{key:u,sep:[]}),this.onKeyLine=!0);return}default:{const u=this.startBlockValue(t);if(u){a&&u.type!=="block-seq"&&t.items.push({start:d}),this.stack.push(u);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){const n=t.items[t.items.length-1];switch(this.type){case"newline":if(n.value){const a="end"in n.value?n.value.end:void 0;(Array.isArray(a)?a[a.length-1]:void 0)?.type==="comment"?a?.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,t.indent)){const l=t.items[t.items.length-2]?.value?.end;if(Array.isArray(l)){Array.prototype.push.apply(l,n.start),l.push(this.sourceToken),t.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=t.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;n.value||lr(n.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return}if(this.indent>t.indent){const a=this.startBlockValue(t);if(a){this.stack.push(a);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){const n=t.items[t.items.length-1];if(this.type==="flow-error-end"){let a;do yield*this.pop(),a=this.peek(1);while(a&&a.type==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!n||n.sep?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return;case"map-value-ind":!n||n.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!n||n.value?t.items.push({start:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const l=this.flowScalar(this.type);!n||n.value?t.items.push({start:[],key:l,sep:[]}):n.sep?this.stack.push(l):Object.assign(n,{key:l,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}const a=this.startBlockValue(t);a?this.stack.push(a):(yield*this.pop(),yield*this.step())}else{const a=this.peek(2);if(a.type==="block-map"&&(this.type==="map-value-ind"&&a.indent===t.indent||this.type==="newline"&&!a.items[a.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&a.type!=="flow-collection"){const l=ra(a),d=xr(l);kp(t);const u=t.end.splice(1,t.end.length);u.push(this.sourceToken);const c={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:d,key:t,sep:u}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=c}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let n=this.source.indexOf(`
138
+ `)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(`
139
+ `,n)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const n=ra(t),a=xr(n);return a.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const n=ra(t),a=xr(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,n){return this.type!=="comment"||this.indent<=n?!1:t.every(a=>a.type==="newline"||a.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function Hg(e){const t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new uf||null,prettyErrors:t}}function Kg(e,t={}){const{lineCounter:n,prettyErrors:a}=Hg(t),l=new Ga(n?.addNewLine),d=new za(t),u=Array.from(d.compose(l.parse(e)));if(a&&n)for(const c of u)c.errors.forEach(Ca(e,n)),c.warnings.forEach(Ca(e,n));return u.length>0?u:Object.assign([],{empty:!0},d.streamInfo())}function lf(e,t={}){const{lineCounter:n,prettyErrors:a}=Hg(t),l=new Ga(n?.addNewLine),d=new za(t);let u=null;for(const c of d.compose(l.parse(e),!0,e.length))if(!u)u=c;else if(u.options.logLevel!=="silent"){u.errors.push(new xi(c.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return a&&n&&(u.errors.forEach(Ca(e,n)),u.warnings.forEach(Ca(e,n))),u}function Vg(e,t,n){let a;typeof t=="function"?a=t:n===void 0&&t&&typeof t=="object"&&(n=t);const l=lf(e,n);if(!l)return null;if(l.warnings.forEach(d=>mg(l.options.logLevel,d)),l.errors.length>0){if(l.options.logLevel!=="silent")throw l.errors[0];l.errors=[]}return l.toJS(Object.assign({reviver:a},n))}function Zg(e,t,n){let a=null;if(typeof t=="function"||Array.isArray(t)?a=t:n===void 0&&t&&(n=t),typeof n=="string"&&(n=n.length),typeof n=="number"){const l=Math.round(n);n=l<1?void 0:l>8?{indent:8}:{indent:l}}if(e===void 0){const{keepUndefined:l}=n??t??{};if(!l)return}return Hi(e)&&!a?e.toString(n):new mr(e,a,n).toString(n)}const pk=Object.freeze(Object.defineProperty({__proto__:null,Alias:eo,CST:Jg,Composer:za,Document:mr,Lexer:af,LineCounter:uf,Pair:$t,Parser:Ga,Scalar:tt,Schema:io,YAMLError:xa,YAMLMap:mn,YAMLParseError:xi,YAMLSeq:_i,YAMLWarning:sf,isAlias:Gi,isCollection:Ct,isDocument:Hi,isMap:hr,isNode:Et,isPair:kt,isScalar:vt,isSeq:pr,parse:Vg,parseAllDocuments:Kg,parseDocument:lf,stringify:Zg,visit:Li,visitAsync:$s},Symbol.toStringTag,{value:"Module"})),mk=Object.freeze(Object.defineProperty({__proto__:null,Alias:eo,CST:Jg,Composer:za,Document:mr,Lexer:af,LineCounter:uf,Pair:$t,Parser:Ga,Scalar:tt,Schema:io,YAMLError:xa,YAMLMap:mn,YAMLParseError:xi,YAMLSeq:_i,YAMLWarning:sf,default:pk,isAlias:Gi,isCollection:Ct,isDocument:Hi,isMap:hr,isNode:Et,isPair:kt,isScalar:vt,isSeq:pr,parse:Vg,parseAllDocuments:Kg,parseDocument:lf,stringify:Zg,visit:Li,visitAsync:$s},Symbol.toStringTag,{value:"Module"})),yk=Bc(mk);var Np;function Qe(){if(Np)return at;Np=1;var e=at.__createBinding||(Object.create?function(f,E,b,F){F===void 0&&(F=b);var m=Object.getOwnPropertyDescriptor(E,b);(!m||("get"in m?!E.__esModule:m.writable||m.configurable))&&(m={enumerable:!0,get:function(){return E[b]}}),Object.defineProperty(f,F,m)}:function(f,E,b,F){F===void 0&&(F=b),f[F]=E[b]}),t=at.__setModuleDefault||(Object.create?function(f,E){Object.defineProperty(f,"default",{enumerable:!0,value:E})}:function(f,E){f.default=E}),n=at.__importStar||function(f){if(f&&f.__esModule)return f;var E={};if(f!=null)for(var b in f)b!=="default"&&Object.prototype.hasOwnProperty.call(f,b)&&e(E,f,b);return t(E,f),E};Object.defineProperty(at,"__esModule",{value:!0}),at.numberEnumValues=at.indentationString=at.parseJSON=at.inflateBase64=at.errorMessage=at.repeatedCall=at.repeated=at.mustNotHappen=at.panic=at.assert=at.assertNever=at.nonNull=at.defined=at.checkArray=at.checkStringMap=at.checkString=at.isStringMap=void 0;const a=$L,l=n(u_()),d=yn(),u=n(yk);function c(f,E){if(typeof f!="object"||Array.isArray(f)||f===null)return!1;if(E!==void 0)for(const b of Object.getOwnPropertyNames(f)){const F=f[b];if(!E(F))return!1}return!0}at.isStringMap=c;function w(f){return typeof f=="string"}at.checkString=w;function U(f,E){return c(f,E)?f:g(`Value must be an object, but is ${f}`)}at.checkStringMap=U;function P(f,E){if(!Array.isArray(f))return g(`Value must be an array, but is ${f}`);if(E!==void 0){for(const b of f)if(!E(b))return g(`Array item does not satisfy constraint: ${b}`)}return f}at.checkArray=P;function O(f){return f!==void 0?f:g("Defined value expected, but got undefined")}at.defined=O;function R(f){return f!==null?f:g("Non-null value expected, but got null")}at.nonNull=R;function _(f){return(0,d.messageError)("InternalError",{message:`Unexpected object ${f}`})}at.assertNever=_;function L(f,E="Assertion failed"){if(!f)return(0,d.messageError)("InternalError",{message:E})}at.assert=L;function g(f){return(0,d.messageError)("InternalError",{message:f})}at.panic=g;function y(){return g("This must not happen")}at.mustNotHappen=y;function h(f,E){const b=[];for(let F=0;F<f;F++)b.push(E);return b}at.repeated=h;function p(f,E){const b=[];for(let F=0;F<f;F++)b.push(E());return b}at.repeatedCall=p;function k(f){return f instanceof Error?f.message:f.toString()}at.errorMessage=k;function D(f){const E=a.Base64.atob(f);return l.inflate(E,{to:"string"})}at.inflateBase64=D;function C(f,E,b="<unknown>"){try{return f.charCodeAt(0)===65279&&(f=f.slice(1)),u.parse(f)}catch(F){let m;return F instanceof SyntaxError?m=F.message:m=`Unknown exception ${F}`,(0,d.messageError)("MiscJSONParseError",{description:E,address:b,message:m})}}at.parseJSON=C;function I(f){return" ".repeat(f)}at.indentationString=I;function A(f){const E=[];for(const b of Object.keys(f)){const F=f[b];typeof F=="number"&&E.push(F)}return E}return at.numberEnumValues=A,at}var zr={};function gk(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var va={exports:{}},bk=va.exports,Op;function Qg(){return Op||(Op=1,function(e,t){(function(n,a){typeof gk=="function"?e.exports=a():n.pluralize=a()})(bk,function(){var n=[],a=[],l={},d={},u={};function c(g){return typeof g=="string"?new RegExp("^"+g+"$","i"):g}function w(g,y){return g===y?y:g===g.toLowerCase()?y.toLowerCase():g===g.toUpperCase()?y.toUpperCase():g[0]===g[0].toUpperCase()?y.charAt(0).toUpperCase()+y.substr(1).toLowerCase():y.toLowerCase()}function U(g,y){return g.replace(/\$(\d{1,2})/g,function(h,p){return y[p]||""})}function P(g,y){return g.replace(y[0],function(h,p){var k=U(y[1],arguments);return w(h===""?g[p-1]:h,k)})}function O(g,y,h){if(!g.length||l.hasOwnProperty(g))return y;for(var p=h.length;p--;){var k=h[p];if(k[0].test(y))return P(y,k)}return y}function R(g,y,h){return function(p){var k=p.toLowerCase();return y.hasOwnProperty(k)?w(p,k):g.hasOwnProperty(k)?w(p,g[k]):O(k,p,h)}}function _(g,y,h,p){return function(k){var D=k.toLowerCase();return y.hasOwnProperty(D)?!0:g.hasOwnProperty(D)?!1:O(D,D,h)===D}}function L(g,y,h){var p=y===1?L.singular(g):L.plural(g);return(h?y+" ":"")+p}return L.plural=R(u,d,n),L.isPlural=_(u,d,n),L.singular=R(d,u,a),L.isSingular=_(d,u,a),L.addPluralRule=function(g,y){n.push([c(g),y])},L.addSingularRule=function(g,y){a.push([c(g),y])},L.addUncountableRule=function(g){if(typeof g=="string"){l[g.toLowerCase()]=!0;return}L.addPluralRule(g,"$0"),L.addSingularRule(g,"$0")},L.addIrregularRule=function(g,y){y=y.toLowerCase(),g=g.toLowerCase(),u[g]=y,d[y]=g},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach(function(g){return L.addIrregularRule(g[0],g[1])}),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach(function(g){return L.addPluralRule(g[0],g[1])}),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach(function(g){return L.addSingularRule(g[0],g[1])}),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[eé]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(L.addUncountableRule),L})}(va)),va.exports}var kn={},Cp;function At(){if(Cp)return kn;Cp=1,Object.defineProperty(kn,"__esModule",{value:!0}),kn.increaseTypeAttributesDistance=kn.makeTypeAttributesInferred=kn.combineTypeAttributes=kn.emptyTypeAttributes=kn.TypeAttributeKind=void 0;const e=et(),t=Qe();class n{constructor(c){this.name=c}appliesToTypeKind(c){return c!=="any"}combine(c){return(0,t.panic)(`Cannot combine type attribute ${this.name}`)}intersect(c){return this.combine(c)}makeInferred(c){return(0,t.panic)(`Cannot make type attribute ${this.name} inferred`)}increaseDistance(c){return c}addToSchema(c,w,U){}children(c){return new Set}stringify(c){}get inIdentity(){return!1}requiresUniqueIdentity(c){return!1}reconstitute(c,w){return w}makeAttributes(c){const w=[[this,c]];return new Map(w)}tryGetInAttributes(c){return c.get(this)}setInAttributes(c,w){return new Map(c).set(this,w)}modifyInAttributes(c,w){const U=w(this.tryGetInAttributes(c));if(U===void 0){const P=new Map(c);return P.delete(this),P}return this.setInAttributes(c,U)}setDefaultInAttributes(c,w){return this.tryGetInAttributes(c)!==void 0?c:this.modifyInAttributes(c,w)}removeInAttributes(c){return(0,e.mapFilter)(c,(w,U)=>U!==this)}equals(c){return c instanceof n?this.name===c.name:!1}hashCode(){return(0,e.hashString)(this.name)}}kn.TypeAttributeKind=n,kn.emptyTypeAttributes=new Map;function a(u,c,w){const U=u==="union";let P;if(Array.isArray(c))P=c;else{if(w===void 0)return(0,t.panic)("Must have on array or two attributes");P=[c,w]}const O=(0,e.mapTranspose)(P);function R(_,L){return(0,t.assert)(_.length>0,"Cannot combine zero type attributes"),_.length===1?_[0]:U?L.combine(_):L.intersect(_)}return(0,e.mapFilterMap)(O,R)}kn.combineTypeAttributes=a;function l(u){return(0,e.mapFilterMap)(u,(c,w)=>w.makeInferred(c))}kn.makeTypeAttributesInferred=l;function d(u){return(0,e.mapFilterMap)(u,(c,w)=>w.increaseDistance(c))}return kn.increaseTypeAttributesDistance=d,kn}var sa={},El={},Nn={},Ep;function zt(){if(Ep)return Nn;Ep=1,Object.defineProperty(Nn,"__esModule",{value:!0}),Nn.EnumOption=Nn.StringOption=Nn.BooleanOption=Nn.getOptionValues=Nn.Option=void 0;const e=Qe(),t=yn(),n=et();class a{constructor(U){U.renderer=!0,this.definition=U,(0,e.assert)(U.kind!==void 0,"Renderer option kind must be defined")}getValue(U){const P=U[this.definition.name];return P===void 0?this.definition.defaultValue:P}get cliDefinitions(){return{actual:[this.definition],display:[this.definition]}}}Nn.Option=a;function l(w,U){const P={};for(const O of Object.getOwnPropertyNames(w))P[O]=w[O].getValue(U);return P}Nn.getOptionValues=l;class d extends a{constructor(U,P,O,R="primary"){super({name:U,kind:R,type:Boolean,description:P,defaultValue:O})}get cliDefinitions(){const U=Object.assign({},this.definition,{name:`no-${this.definition.name}`,defaultValue:!this.definition.defaultValue});return{display:[Object.assign({},this.definition,{name:`[no-]${this.definition.name}`,description:`${this.definition.description} (${this.definition.defaultValue?"on":"off"} by default)`})],actual:[this.definition,U]}}getValue(U){let P=U[this.definition.name];P===void 0&&(P=this.definition.defaultValue);let O=U[`no-${this.definition.name}`];return O===void 0&&(O=!this.definition.defaultValue),P==="true"?P=!0:P==="false"&&(P=!1),this.definition.defaultValue?P&&!O:P||!O}}Nn.BooleanOption=d;class u extends a{constructor(U,P,O,R,_="primary"){const L={name:U,kind:_,type:String,description:P,typeLabel:O,defaultValue:R};super(L)}}Nn.StringOption=u;class c extends a{constructor(U,P,O,R=void 0,_="primary"){R===void 0&&(R=O[0][0]);const L={name:U,kind:_,type:String,description:P,typeLabel:O.map(([g,y])=>g).join("|"),legalValues:O.map(([g,y])=>g),defaultValue:R};super(L),this._values={};for(const[g,y]of O)this._values[g]=y}getValue(U){let P=U[this.definition.name];return P===void 0&&(P=this.definition.defaultValue),(0,n.hasOwnProperty)(this._values,P)?this._values[P]:(0,t.messageError)("RendererUnknownOptionValue",{value:P,name:this.definition.name})}}return Nn.EnumOption=c,Nn}var Ap;function yr(){return Ap||(Ap=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.acronymStyle=e.acronymOption=e.AcronymStyleOptions=e.acronyms=void 0;const t=zt(),n=Nt();e.acronyms=["aaa","aabb","aac","aal","aalc","aarp","abac","abcl","abi","abm","abr","ac","acd","ack","acl","acm","acme","acp","acpi","acr","adb","adc","adccp","ado","adsl","adt","ae","aes","af","afp","agp","ai","aix","alac","algol","alsa","alu","amd","amoled","amqp","amr","ann","ansi","aop","apci","api","apic","apipa","apl","apr","arin","aros","arp","arpa","arpanet","ascii","aset","asg","asic","asimo","aslr","asm","asmp","asp","asr","assp","ast","ata","atag","atapi","atm","av","avc","avi","awfl","awk","awt","bal","bam","bbp","bbs","bcd","bcnf","beep","ber","bfd","bfs","bft","bgp","bi","binac","bios","bjt","bmp","bnc","boinc","bom","bootp","bpdu","bpel","bpl","bpm","brm","brms","brr","brs","bsa","bsb","bsd","bss","bt","bw","byod","ca","cad","cae","cai","caid","captcha","caq","cd","cde","cdfs","cdma","cdn","cdp","cdsa","cert","ces","cf","cfd","cfg","cg","cga","cgi","cgt","chs","cidr","cifs","cim","cio","cir","cisc","cjk","cjkv","cli","clr","cm","cmdb","cmmi","cmo","cmos","cms","cn","cnc","cng","cnr","cobol","com","corba","cots","cpa","cpan","cpri","cps","cpu","cr","cran","crc","crlf","crm","crs","crt","crud","cs","cse","csi","csm","csp","csrf","css","csv","ct","ctan","ctcp","ctfe","cti","ctl","ctm","cts","ctss","cua","cvs","dac","dal","dao","dap","darpa","dat","db","dba","dbcs","dbms","dcc","dcca","dccp","dcl","dcmi","dcom","dcs","dd","dde","ddi","ddl","ddr","dec","des","dfa","dfd","dfs","dgd","dhcp","dhtml","dif","dimm","din","dip","dism","divx","dkim","dl","dll","dlna","dlp","dma","dmca","dmi","dml","dmr","dmz","dn","dnd","dns","doa","docsis","dom","dos","dp","dpc","dpi","dpmi","dpms","dr","dram","dri","drm","dsa","dsdl","dsdm","dsl","dslam","dsn","dsp","dsssl","dtd","dte","dtp","dtr","dvd","dvi","dvr","dw","eai","eap","eas","ebcdic","ebml","ecc","ecma","ecn","ecos","ecrs","eda","edi","edo","edsac","edvac","eeprom","eff","efi","efm","efs","ega","egp","eide","eigrp","eisa","elf","emacs","ems","eniac","eod","eof","eol","eom","eos","eprom","erd","erm","erp","esb","escon","esd","esr","etl","etw","euc","eula","ewmh","ext","fap","faq","fasm","fbdimm","fcb","fcs","fdc","fdd","fddi","fdm","fdma","fds","fec","femb","fet","fhs","ficon","fifo","fips","fl","flac","flops","fmc","fmo","foldoc","fosdem","fosi","foss","fp","fpga","fps","fpu","fqdn","fru","fs","fsb","fsf","fsm","ftp","ftta","fttc","ftth","fttp","fud","fvek","fws","fxp","fyi","gb","gcc","gcj","gcr","gdb","gdi","geran","gfdl","gif","gigo","gimps","gis","gml","gnu","goms","gpasm","gpfs","gpg","gpgpu","gpib","gpl","gprs","gpt","gpu","gsm","gui","guid","gwt","gyr","hal","hasp","hba","hci","hcl","hd","hdd","hdl","hdmi","hf","hfs","hhd","hid","hig","hird","hlasm","hls","hma","hp","hpc","hpfs","hsdpa","hsm","ht","htc","htm","html","http","https","htx","hurd","hvd","iana","ibm","ic","icann","ich","icmp","icp","ics","ict","id","ide","idf","idl","ids","iec","ieee","ietf","ifl","igmp","igrp","ihv","iiop","iis","ike","il","im","imap","ime","infosec","ip","ipam","ipc","ipl","ipmi","ipo","ipp","ips","iptv","ipx","ir","irc","iri","irp","irq","isa","isam","isatap","isc","isdn","iso","isp","ispf","isr","isv","itil","itl","itu","ivcr","ivrs","jaxb","jaxp","jbod","jce","jcl","jcp","jdbc","jdk","jds","jee","jes","jfc","jfet","jfs","jini","jit","jme","jms","jmx","jndi","jni","jnz","jpeg","jre","js","jse","json","jsp","jtag","jvm","kb","kde","km","krl","kvm","lacp","lan","lb","lba","lcd","lcos","lcr","ldap","le","led","lf","lfs","lga","lgpl","lib","lif","lifo","lilo","lisp","lkml","lm","loc","lpc","lpi","lpt","lru","lsb","lsi","lte","ltl","ltr","lun","lv","lvd","lvm","lzw","mac","manet","mapi","mb","mbcs","mbd","mbr","mca","mcad","mcas","mcdba","mcdst","mcitp","mcm","mcp","mcpc","mcpd","mcsa","mcsd","mcse","mct","mcts","mda","mdf","mdi","mf","mfc","mfm","mgcp","mib","micr","midi","mimd","mime","mimo","minix","mips","mis","misd","mit","mmc","mmds","mmf","mmi","mmio","mmorpg","mmu","mmx","mng","mom","mos","mosfet","motd","mous","mov","mpaa","mpeg","mpl","mpls","mpu","ms","msa","msb","msdn","msi","msn","mt","mta","mtbf","mtu","mua","mvc","mvp","mvs","mwc","mx","mxf","nack","nak","nas","nasm","ncp","ncq","ncsa","ndis","ndps","nds","nep","nfa","nfc","nfs","ngl","ngscb","ni","nic","nim","nio","nist","nlp","nls","nmi","nntp","noc","nop","nos","np","npl","nptl","npu","ns","nsa","nsi","nspr","nss","nt","ntfs","ntlm","ntp","numa","nurbs","nvr","nvram","oat","obsai","odbc","oem","oes","ofdm","oftc","oid","olap","ole","oled","olpc","oltp","omf","omg","omr","oo","ooe","oom","oop","ootb","opml","orb","orm","os","oscon","osdn","osi","ospf","oss","ostg","oui","pap","parc","pata","pbs","pc","pcb","pci","pcl","pcm","pcmcia","pcre","pd","pda","pdf","pdh","pdp","pe","perl","pfa","pg","pga","pgo","pgp","php","pid","pim","pio","pkcs","pki","plc","pld","plt","pmm","png","pnrp","poid","pojo","posix","ppc","ppi","ppp","pptp","pr","ps","psa","psm","psu","psvi","pv","pvg","pvr","pxe","pxi","qa","qdr","qfp","qotd","qsop","qtam","racf","rad","raid","raii","rait","ram","rarp","ras","rc","rcs","rd","rdbms","rdc","rdf","rdm","rdos","rdp","rds","refal","rest","rf","rfc","rfi","rfid","rgb","rgba","rhel","rhl","ria","riaa","rip","rir","risc","rje","rle","rll","rmi","rms","rom","romb","rpc","rpg","rpm","rras","rsa","rsi","rss","rtai","rtc","rte","rtems","rtl","rtos","rtp","rts","rtsp","rtti","rwd","san","sas","sata","sax","sbod","sbu","scada","scid","scm","scp","scpc","scpi","scsa","scsi","sctp","sd","sddl","sdh","sdi","sdio","sdk","sdl","sdn","sdp","sdr","sdram","sdsl","se","sec","sei","seo","sftp","sgi","sgml","sgr","sha","shdsl","sigcat","siggraph","simd","simm","sip","sisd","siso","sles","sli","slm","sloc","sma","smb","smbios","sme","smf","smil","smp","smps","sms","smt","smtp","sna","snmp","sntp","soa","soe","soho","soi","sopa","sp","spa","sparc","spf","spi","spm","spmd","sql","sram","ssa","ssd","ssdp","sse","ssh","ssi","ssid","ssl","ssp","ssse","sssp","sstp","sus","suse","svc","svd","svg","svga","swf","swt","tao","tapi","tasm","tb","tcp","tcu","tdma","tft","tftp","ti","tla","tld","tls","tlv","tnc","tpf","tpm","troff","tron","trsdos","tso","tsp","tsr","tta","ttf","ttl","tts","tty","tucows","twain","uaag","uac","uart","uat","ucs","uddi","udma","udp","uefi","uhf","ui","ul","ula","uma","umb","uml","umpc","umts","unc","univac","ups","uri","url","usb","usr","utc","utf","utp","utran","uucp","uuid","uun","uvc","uwp","ux","vax","vb","vba","vbs","vcpi","vdm","vdsl","vesa","vfat","vfs","vg","vga","vhf","vlan","vlb","vlf","vliw","vlsi","vlsm","vm","vmm","vnc","vod","vpn","vpu","vr","vram","vrml","vsam","vsat","vt","vtam","vtl","wafs","wai","wais","wan","wap","wasm","wbem","wcag","wcf","wdm","wep","wfi","wins","wlan","wma","wmi","wmv","wns","wol","wor","wora","wpa","wpad","wpan","wpf","wsdl","wsfl","wusb","wwan","wwdc","wwid","wwn","www","wysiwyg","wzc","xag","xaml","xcbl","xdm","xdmcp","xhtml","xilp","xml","xmms","xmpp","xms","xns","xp","xpcom","xpi","xpidl","xps","xsd","xsl","xslt","xss","xtf","xul","xvga","yaaf","yacc","yaml","zcav","zcs","zif","zifs","zisc","zma","zoi","zope","zpl"];var a;(function(u){u.Pascal="pascal",u.Camel="camel",u.Original="original",u.Lower="lowerCase"})(a=e.AcronymStyleOptions||(e.AcronymStyleOptions={}));const l=function(u){return new t.EnumOption("acronym-style","Acronym naming style",[[a.Original,a.Original],[a.Pascal,a.Pascal],[a.Camel,a.Camel],[a.Lower,a.Lower]],u,"secondary")};e.acronymOption=l;function d(u){return{[a.Pascal]:n.allUpperWordStyle,[a.Camel]:n.firstUpperWordStyle,[a.Original]:n.originalWord,[a.Lower]:n.allLowerWordStyle}[u]}e.acronymStyle=d}(El)),El}var Al={exports:{}},Ls={},Fp;function cf(){if(Fp)return Ls;Fp=1,Ls.byteLength=c,Ls.toByteArray=U,Ls.fromByteArray=R;for(var e=[],t=[],n=typeof Uint8Array<"u"?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",l=0,d=a.length;l<d;++l)e[l]=a[l],t[a.charCodeAt(l)]=l;t[45]=62,t[95]=63;function u(_){var L=_.length;if(L%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var g=_.indexOf("=");g===-1&&(g=L);var y=g===L?0:4-g%4;return[g,y]}function c(_){var L=u(_),g=L[0],y=L[1];return(g+y)*3/4-y}function w(_,L,g){return(L+g)*3/4-g}function U(_){var L,g=u(_),y=g[0],h=g[1],p=new n(w(_,y,h)),k=0,D=h>0?y-4:y,C;for(C=0;C<D;C+=4)L=t[_.charCodeAt(C)]<<18|t[_.charCodeAt(C+1)]<<12|t[_.charCodeAt(C+2)]<<6|t[_.charCodeAt(C+3)],p[k++]=L>>16&255,p[k++]=L>>8&255,p[k++]=L&255;return h===2&&(L=t[_.charCodeAt(C)]<<2|t[_.charCodeAt(C+1)]>>4,p[k++]=L&255),h===1&&(L=t[_.charCodeAt(C)]<<10|t[_.charCodeAt(C+1)]<<4|t[_.charCodeAt(C+2)]>>2,p[k++]=L>>8&255,p[k++]=L&255),p}function P(_){return e[_>>18&63]+e[_>>12&63]+e[_>>6&63]+e[_&63]}function O(_,L,g){for(var y,h=[],p=L;p<g;p+=3)y=(_[p]<<16&16711680)+(_[p+1]<<8&65280)+(_[p+2]&255),h.push(P(y));return h.join("")}function R(_){for(var L,g=_.length,y=g%3,h=[],p=16383,k=0,D=g-y;k<D;k+=p)h.push(O(_,k,k+p>D?D:k+p));return y===1?(L=_[g-1],h.push(e[L>>2]+e[L<<4&63]+"==")):y===2&&(L=(_[g-2]<<8)+_[g-1],h.push(e[L>>10]+e[L>>4&63]+e[L<<2&63]+"=")),h.join("")}return Ls}var Fl,Pp;function Tk(){if(Pp)return Fl;Pp=1;var e=0,t=-3;function n(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function a(f,E){this.source=f,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=E,this.destLen=0,this.ltree=new n,this.dtree=new n}var l=new n,d=new n,u=new Uint8Array(30),c=new Uint16Array(30),w=new Uint8Array(30),U=new Uint16Array(30),P=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),O=new n,R=new Uint8Array(320);function _(f,E,b,F){var m,r;for(m=0;m<b;++m)f[m]=0;for(m=0;m<30-b;++m)f[m+b]=m/b|0;for(r=F,m=0;m<30;++m)E[m]=r,r+=1<<f[m]}function L(f,E){var b;for(b=0;b<7;++b)f.table[b]=0;for(f.table[7]=24,f.table[8]=152,f.table[9]=112,b=0;b<24;++b)f.trans[b]=256+b;for(b=0;b<144;++b)f.trans[24+b]=b;for(b=0;b<8;++b)f.trans[168+b]=280+b;for(b=0;b<112;++b)f.trans[176+b]=144+b;for(b=0;b<5;++b)E.table[b]=0;for(E.table[5]=32,b=0;b<32;++b)E.trans[b]=b}var g=new Uint16Array(16);function y(f,E,b,F){var m,r;for(m=0;m<16;++m)f.table[m]=0;for(m=0;m<F;++m)f.table[E[b+m]]++;for(f.table[0]=0,r=0,m=0;m<16;++m)g[m]=r,r+=f.table[m];for(m=0;m<F;++m)E[b+m]&&(f.trans[g[E[b+m]]++]=m)}function h(f){f.bitcount--||(f.tag=f.source[f.sourceIndex++],f.bitcount=7);var E=f.tag&1;return f.tag>>>=1,E}function p(f,E,b){if(!E)return b;for(;f.bitcount<24;)f.tag|=f.source[f.sourceIndex++]<<f.bitcount,f.bitcount+=8;var F=f.tag&65535>>>16-E;return f.tag>>>=E,f.bitcount-=E,F+b}function k(f,E){for(;f.bitcount<24;)f.tag|=f.source[f.sourceIndex++]<<f.bitcount,f.bitcount+=8;var b=0,F=0,m=0,r=f.tag;do F=2*F+(r&1),r>>>=1,++m,b+=E.table[m],F-=E.table[m];while(F>=0);return f.tag=r,f.bitcount-=m,E.trans[b+F]}function D(f,E,b){var F,m,r,s,T,v;for(F=p(f,5,257),m=p(f,5,1),r=p(f,4,4),s=0;s<19;++s)R[s]=0;for(s=0;s<r;++s){var M=p(f,3,0);R[P[s]]=M}for(y(O,R,0,19),T=0;T<F+m;){var x=k(f,O);switch(x){case 16:var W=R[T-1];for(v=p(f,2,3);v;--v)R[T++]=W;break;case 17:for(v=p(f,3,3);v;--v)R[T++]=0;break;case 18:for(v=p(f,7,11);v;--v)R[T++]=0;break;default:R[T++]=x;break}}y(E,R,0,F),y(b,R,F,m)}function C(f,E,b){for(;;){var F=k(f,E);if(F===256)return e;if(F<256)f.dest[f.destLen++]=F;else{var m,r,s,T;for(F-=257,m=p(f,u[F],c[F]),r=k(f,b),s=f.destLen-p(f,w[r],U[r]),T=s;T<s+m;++T)f.dest[f.destLen++]=f.dest[T]}}}function I(f){for(var E,b,F;f.bitcount>8;)f.sourceIndex--,f.bitcount-=8;if(E=f.source[f.sourceIndex+1],E=256*E+f.source[f.sourceIndex],b=f.source[f.sourceIndex+3],b=256*b+f.source[f.sourceIndex+2],E!==(~b&65535))return t;for(f.sourceIndex+=4,F=E;F;--F)f.dest[f.destLen++]=f.source[f.sourceIndex++];return f.bitcount=0,e}function A(f,E){var b=new a(f,E),F,m,r;do{switch(F=h(b),m=p(b,2,0),m){case 0:r=I(b);break;case 1:r=C(b,l,d);break;case 2:D(b,b.ltree,b.dtree),r=C(b,b.ltree,b.dtree);break;default:r=t}if(r!==e)throw new Error("Data error")}while(!F);return b.destLen<b.dest.length?typeof b.dest.slice=="function"?b.dest.slice(0,b.destLen):b.dest.subarray(0,b.destLen):b.dest}return L(l,d),_(u,c,4,3),_(w,U,2,1),u[28]=0,c[28]=258,Fl=A,Fl}var Pl,Ip;function vk(){if(Ip)return Pl;Ip=1;const e=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,t=(l,d,u)=>{let c=l[d];l[d]=l[u],l[u]=c},n=l=>{const d=l.length;for(let u=0;u<d;u+=4)t(l,u,u+3),t(l,u+1,u+2)};return Pl={swap32LE:l=>{e&&n(l)}},Pl}var Il,Rp;function Sk(){if(Rp)return Il;Rp=1;const e=Tk(),{swap32LE:t}=vk(),n=11,a=5,l=n-a,d=65536>>n,c=(1<<l)-1,w=2,P=(1<<a)-1,O=65536>>a,R=1024>>a,y=O+R+32,h=1<<w;class p{constructor(D){const C=typeof D.readUInt32BE=="function"&&typeof D.slice=="function";if(C||D instanceof Uint8Array){let I;if(C)this.highStart=D.readUInt32LE(0),this.errorValue=D.readUInt32LE(4),I=D.readUInt32LE(8),D=D.slice(12);else{const A=new DataView(D.buffer);this.highStart=A.getUint32(0,!0),this.errorValue=A.getUint32(4,!0),I=A.getUint32(8,!0),D=D.subarray(12)}D=e(D,new Uint8Array(I)),D=e(D,new Uint8Array(I)),t(D),this.data=new Uint32Array(D.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=D)}get(D){let C;return D<0||D>1114111?this.errorValue:D<55296||D>56319&&D<=65535?(C=(this.data[D>>a]<<w)+(D&P),this.data[C]):D<=65535?(C=(this.data[O+(D-55296>>a)]<<w)+(D&P),this.data[C]):D<this.highStart?(C=this.data[y-d+(D>>n)],C=this.data[C+(D>>a&c)],C=(C<<w)+(D&P),this.data[C]):this.data[this.data.length-h]}}return Il=p,Il}var Mp;function so(){return Mp||(Mp=1,function(e){var t=cf(),n=Sk();function a(G){return G&&G.__esModule?G.default:G}function l(G){Object.defineProperty(G,"__esModule",{value:!0,configurable:!0})}function d(G,$,ee,ue){Object.defineProperty(G,$,{get:ee,set:ue,enumerable:!0,configurable:!0})}l(e.exports),d(e.exports,"getCategory",()=>f),d(e.exports,"getCombiningClass",()=>E),d(e.exports,"getScript",()=>b),d(e.exports,"getEastAsianWidth",()=>F),d(e.exports,"getNumericValue",()=>m),d(e.exports,"isAlphabetic",()=>r),d(e.exports,"isDigit",()=>s),d(e.exports,"isPunctuation",()=>T),d(e.exports,"isLowerCase",()=>v),d(e.exports,"isUpperCase",()=>M),d(e.exports,"isTitleCase",()=>x),d(e.exports,"isWhiteSpace",()=>W),d(e.exports,"isBaseForm",()=>S),d(e.exports,"isMark",()=>B),d(e.exports,"default",()=>q);var u={};u=JSON.parse('{"categories":["Cc","Zs","Po","Sc","Ps","Pe","Sm","Pd","Nd","Lu","Sk","Pc","Ll","So","Lo","Pi","Cf","No","Pf","Lt","Lm","Mn","Me","Mc","Nl","Zl","Zp","Cs","Co"],"combiningClasses":["Not_Reordered","Above","Above_Right","Below","Attached_Above_Right","Attached_Below","Overlay","Iota_Subscript","Double_Below","Double_Above","Below_Right","Above_Left","CCC10","CCC11","CCC12","CCC13","CCC14","CCC15","CCC16","CCC17","CCC18","CCC19","CCC20","CCC21","CCC22","CCC23","CCC24","CCC25","CCC30","CCC31","CCC32","CCC27","CCC28","CCC29","CCC33","CCC34","CCC35","CCC36","Nukta","Virama","CCC84","CCC91","CCC103","CCC107","CCC118","CCC122","CCC129","CCC130","CCC132","Attached_Above","Below_Left","Left","Kana_Voicing","CCC26","Right"],"scripts":["Common","Latin","Bopomofo","Inherited","Greek","Coptic","Cyrillic","Armenian","Hebrew","Arabic","Syriac","Thaana","Nko","Samaritan","Mandaic","Devanagari","Bengali","Gurmukhi","Gujarati","Oriya","Tamil","Telugu","Kannada","Malayalam","Sinhala","Thai","Lao","Tibetan","Myanmar","Georgian","Hangul","Ethiopic","Cherokee","Canadian_Aboriginal","Ogham","Runic","Tagalog","Hanunoo","Buhid","Tagbanwa","Khmer","Mongolian","Limbu","Tai_Le","New_Tai_Lue","Buginese","Tai_Tham","Balinese","Sundanese","Batak","Lepcha","Ol_Chiki","Braille","Glagolitic","Tifinagh","Han","Hiragana","Katakana","Yi","Lisu","Vai","Bamum","Syloti_Nagri","Phags_Pa","Saurashtra","Kayah_Li","Rejang","Javanese","Cham","Tai_Viet","Meetei_Mayek","null","Linear_B","Lycian","Carian","Old_Italic","Gothic","Old_Permic","Ugaritic","Old_Persian","Deseret","Shavian","Osmanya","Osage","Elbasan","Caucasian_Albanian","Linear_A","Cypriot","Imperial_Aramaic","Palmyrene","Nabataean","Hatran","Phoenician","Lydian","Meroitic_Hieroglyphs","Meroitic_Cursive","Kharoshthi","Old_South_Arabian","Old_North_Arabian","Manichaean","Avestan","Inscriptional_Parthian","Inscriptional_Pahlavi","Psalter_Pahlavi","Old_Turkic","Old_Hungarian","Hanifi_Rohingya","Old_Sogdian","Sogdian","Elymaic","Brahmi","Kaithi","Sora_Sompeng","Chakma","Mahajani","Sharada","Khojki","Multani","Khudawadi","Grantha","Newa","Tirhuta","Siddham","Modi","Takri","Ahom","Dogra","Warang_Citi","Nandinagari","Zanabazar_Square","Soyombo","Pau_Cin_Hau","Bhaiksuki","Marchen","Masaram_Gondi","Gunjala_Gondi","Makasar","Cuneiform","Egyptian_Hieroglyphs","Anatolian_Hieroglyphs","Mro","Bassa_Vah","Pahawh_Hmong","Medefaidrin","Miao","Tangut","Nushu","Duployan","SignWriting","Nyiakeng_Puachue_Hmong","Wancho","Mende_Kikakui","Adlam"],"eaw":["N","Na","A","W","H","F"]}');const c=new(a(n))(a(t).toByteArray("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")),w=Math.log2||(G=>Math.log(G)/Math.LN2),U=G=>w(G)+1|0,P=U(a(u).categories.length-1),O=U(a(u).combiningClasses.length-1),R=U(a(u).scripts.length-1),_=U(a(u).eaw.length-1),L=10,g=O+R+_+L,y=R+_+L,h=_+L,p=L,k=(1<<P)-1,D=(1<<O)-1,C=(1<<R)-1,I=(1<<_)-1,A=(1<<L)-1;function f(G){const $=c.get(G);return a(u).categories[$>>g&k]}function E(G){const $=c.get(G);return a(u).combiningClasses[$>>y&D]}function b(G){const $=c.get(G);return a(u).scripts[$>>h&C]}function F(G){const $=c.get(G);return a(u).eaw[$>>p&I]}function m(G){let $=c.get(G),ee=$&A;if(ee===0)return null;if(ee<=50)return ee-1;if(ee<480){const ue=(ee>>4)-12,se=(ee&15)+1;return ue/se}else if(ee<768){$=(ee>>5)-14;let ue=(ee&31)+2;for(;ue>0;)$*=10,ue--;return $}else{$=(ee>>2)-191;let ue=(ee&3)+1;for(;ue>0;)$*=60,ue--;return $}}function r(G){const $=f(G);return $==="Lu"||$==="Ll"||$==="Lt"||$==="Lm"||$==="Lo"||$==="Nl"}function s(G){return f(G)==="Nd"}function T(G){const $=f(G);return $==="Pc"||$==="Pd"||$==="Pe"||$==="Pf"||$==="Pi"||$==="Po"||$==="Ps"}function v(G){return f(G)==="Ll"}function M(G){return f(G)==="Lu"}function x(G){return f(G)==="Lt"}function W(G){const $=f(G);return $==="Zs"||$==="Zl"||$==="Zp"}function S(G){const $=f(G);return $==="Nd"||$==="No"||$==="Nl"||$==="Lu"||$==="Ll"||$==="Lt"||$==="Lm"||$==="Lo"||$==="Me"||$==="Mc"}function B(G){const $=f(G);return $==="Mn"||$==="Me"||$==="Mc"}var q={getCategory:f,getCombiningClass:E,getScript:b,getEastAsianWidth:F,getNumericValue:m,isAlphabetic:r,isDigit:s,isPunctuation:T,isLowerCase:v,isUpperCase:M,isTitleCase:x,isWhiteSpace:W,isBaseForm:S,isMark:B}}(Al)),Al.exports}var Dp;function Nt(){return Dp||(Dp=1,function(e){var t=sa.__importDefault||function(de){return de&&de.__esModule?de:{default:de}};Object.defineProperty(e,"__esModule",{value:!0}),e.makeNameStyle=e.addPrefixIfNecessary=e.combineWords=e.allLowerWordStyle=e.originalWord=e.allUpperWordStyle=e.firstUpperWordStyle=e.splitIntoWords=e.fastIsUpperCase=e.startWithLetter=e.snakeCase=e.camelCase=e.pascalCase=e.decapitalize=e.capitalize=e.trimEnd=e.isWordCharacter=e.isLetterOrUnderscoreOrDigit=e.isLetterOrUnderscore=e.isLetterOrDigit=e.isNumeric=e.isDigit=e.isLetter=e.isAscii=e.isPrintable=e.stringEscape=e.utf16StringEscape=e.escapeNonPrintableMapper=e.standardUnicodeHexEscape=e.intToHex=e.repeatString=e.legalizeCharacters=e.utf16LegalizeCharacters=e.utf32ConcatMap=e.utf16ConcatMap=void 0;const n=Qe(),a=yr(),l=yn(),d=t(so());function u(de){const Q=[],z=[];for(let V=0;V<128;V++){let ae=0;const Te=de(V);Te===String.fromCharCode(V)&&(ae=1),Q.push(Te),z.push(ae)}return{charStringMap:Q,charNoEscapeMap:z}}function c(de){const Q=[];for(let z=0;z<128;z++)Q.push(de(z));return function(z){return z<128?Q[z]:de(z)}}function w(de){const{charStringMap:Q,charNoEscapeMap:z}=u(de);return function(ae){let Te=null,Ie=0,Ce=0;for(;Ce<ae.length;){const We=ae.charCodeAt(Ce);if(z[We]!==1){Te===null&&(Te=[]),Te.push(ae.substring(Ie,Ce));const Ge=Q[We];Ge===void 0?Te.push(de(ae.charCodeAt(Ce))):Te.push(Ge),Ie=Ce+1}Ce++}return Te===null?ae:(Te.push(ae.substring(Ie,Ce)),Te.join(""))}}e.utf16ConcatMap=w;function U(de){return de>=55296&&de<=56319}function P(de){return de>=56320&&de<=57343}function O(de){const{charStringMap:Q,charNoEscapeMap:z}=u(de);return function(ae){let Te=null,Ie=0,Ce=0;for(;Ce<ae.length;){let We=ae.charCodeAt(Ce);if(z[We]!==1){if(Te===null&&(Te=[]),Te.push(ae.substring(Ie,Ce)),U(We)){const Y=We;Ce++;const te=ae.charCodeAt(Ce);(0,l.messageAssert)(P(te),"MiscUnicodeHighSurrogateWithoutLowSurrogate",{});const K=Y-55296;We=65536+(te-56320)+(K<<10)}const Ge=Q[We];Ge===void 0?Te.push(de(We)):Te.push(Ge),Ie=Ce+1}Ce++}return Te===null?ae:(Te.push(ae.substring(Ie,Ce)),Te.join(""))}}e.utf32ConcatMap=O;function R(de){return w(Q=>de(Q)?String.fromCharCode(Q):"")}e.utf16LegalizeCharacters=R;function _(de){return O(Q=>Q<=65535&&de(Q)?String.fromCharCode(Q):"")}e.legalizeCharacters=_;function L(de,Q){if((0,n.assert)(Q>=0,"Cannot repeat a string a negative number of times"),Q===0)return"";let z="";do Q%2!==0&&(z+=de),Q=Math.floor(Q/2),Q>0&&(de+=de);while(Q>0);return z}e.repeatString=L;function g(de,Q){let z=de.toString(16);return z.length>=Q?z:L("0",Q-z.length)+z}e.intToHex=g;function y(de){return de<=65535?"\\u"+g(de,4):"\\U"+g(de,8)}e.standardUnicodeHexEscape=y;function h(de,Q){function z(V){switch(V){case 92:return"\\\\";case 34:return'\\"';case 10:return"\\n";case 9:return"\\t";default:return de(V)?String.fromCharCode(V):Q(V)}}return z}e.escapeNonPrintableMapper=h,e.utf16StringEscape=w(h(p,y)),e.stringEscape=O(h(p,y));function p(de){if(de>65535)return!1;const Q=d.default.getCategory(de);return["Mc","No","Sk","Me","Nd","Po","Lt","Pc","Sm","Zs","Lu","Pd","So","Pe","Pf","Ps","Sc","Ll","Lm","Pi","Nl","Mn","Lo"].indexOf(Q)>=0}e.isPrintable=p;function k(de){return de<128}e.isAscii=k;function D(de){const Q=d.default.getCategory(de);return["Lu","Ll","Lt","Lo"].indexOf(Q)>=0}e.isLetter=D;function C(de){const Q=d.default.getCategory(de);return["Nd"].indexOf(Q)>=0}e.isDigit=C;function I(de){const Q=d.default.getCategory(de);return["No","Nd","Nl"].indexOf(Q)>=0}e.isNumeric=I;function A(de){return D(de)||C(de)}e.isLetterOrDigit=A;function f(de){return D(de)||de===95}e.isLetterOrUnderscore=f;function E(de){return f(de)||C(de)}e.isLetterOrUnderscoreOrDigit=E;function b(de){return D(de)||C(de)}e.isWordCharacter=b;function F(de){const Q=de.length;let z=Q;for(let V=Q-1;V>=0&&d.default.isWhiteSpace(de.charCodeAt(V));V--)z=V;return z===Q?de:de.slice(0,z)}e.trimEnd=F;function m(de,Q){return Q===""?Q:de(Q[0])+Q.slice(1)}function r(de){return m(Q=>Q.toUpperCase(),de)}e.capitalize=r;function s(de){return m(Q=>Q.toLowerCase(),de)}e.decapitalize=s;const T=/[-_. ]+/;function v(de){return de.split(T).map(r).join("")}e.pascalCase=v;function M(de){return s(v(de))}e.camelCase=M;function x(de){return ue(de).map(({word:z})=>z.toLowerCase()).join("_")}e.snakeCase=x;function W(de,Q,z){const V=Q?r:s;return z===""?V("empty"):de(z.charCodeAt(0))?V(z):V("the"+z)}e.startWithLetter=W;const S=new Set(a.acronyms),B=c(b),q=c(de=>!b(de)),G=c(de=>d.default.isLowerCase(de));e.fastIsUpperCase=c(de=>d.default.isUpperCase(de));const $=c(de=>!d.default.isLowerCase(de)&&!d.default.isUpperCase(de)),ee=c(C);function ue(de){const Q=[];let z;const V=de.length;let ae=0,Te;function Ie(){return ae>=V}function Ce(){return(0,n.defined)(de.codePointAt(ae))}function We(Se){for(;!Ie();){const De=Ce();if(!Se(De))break;G(De)&&(Te=ae),ae++}}function Ge(){We(q)}function Y(){We(G)}function te(){We(e.fastIsUpperCase)}function K(){We($)}function j(){We(ee)}function J(){(0,n.assert)(z===void 0,"Interval started before last one was committed"),z=ae}function ce(){if(z===void 0)return(0,n.panic)("Tried to commit interval without starting one");(0,n.assert)(ae>z,"Interval must be non-empty"),!Ie()&&P(Ce())&&(ae+=1);const Se=Te===void 0||Te<z;Q.push([z,ae,Se]),z=void 0}function X(){return z===void 0?(0,n.panic)("Tried to get interval length without starting one"):ae-z}for(;Ge(),!Ie();)J(),G(Ce())?(Y(),j(),ce()):(0,e.fastIsUpperCase)(Ce())?(te(),Ie()?ce():X()===1?(Y(),j(),ce()):C(Ce())?(j(),ce()):(B(Ce())&&(ae-=1),ce())):(K(),ce());const ge=[];for(const[Se,De,we]of Q){const Pe=de.slice(Se,De),re=Te!==void 0&&we||S.has(Pe.toLowerCase());ge.push({word:Pe,isAcronym:re})}return ge}e.splitIntoWords=ue;function se(de){return(0,n.assert)(de.length>0,"Cannot style an empty string"),de[0].toUpperCase()+de.slice(1).toLowerCase()}e.firstUpperWordStyle=se;function ie(de){return de.toUpperCase()}e.allUpperWordStyle=ie;function ye(de){return de}e.originalWord=ye;function be(de){return de.toLowerCase()}e.allLowerWordStyle=be;function Ae(de,Q){(0,n.assert)(Q.length>0,"Tried to style an empty word");const z=de(Q);return(0,n.assert)(z.length>0,"Word style must not make word empty"),z}function pe(de,Q,z,V,ae,Te,Ie,Ce){const We=[];for(const J of de){const ce=Q(J.word);ce.length!==0&&We.push({word:ce,isAcronym:J.isAcronym})}if(We.length===0){const J=Q("empty");(0,n.assert)(J.length>0,'Word "empty" is invalid in target language'),We.push({word:J,isAcronym:!1})}const Ge=[],Y=We[0],te=Y.isAcronym?ae:z,K=Ae(te,Y.word);let j;if(Ce((0,n.defined)(K.codePointAt(0))))Ge.push(K),j=We.slice(1);else{const J=Q("the");(0,n.assert)(J.length>0,'Word "the" is invalid in the target language');const ce=Ae(z,J);(0,n.assert)(Ce((0,n.defined)(ce.codePointAt(0))),'The first character of styling "the" is not a start character'),Ge.push(ce),j=We}for(const J of j){const ce=J.isAcronym?Te:V;Ge.push(Ae(ce,J.word))}return Ge.join(Ie)}e.combineWords=pe;function le(de,Q){return Q.startsWith(de)?Q:de+Q}e.addPrefixIfNecessary=le;function me(de,Q,z){let V,ae,Te,Ie,Ce;switch(de==="pascal"||de==="camel"||de==="pascal-upper-acronyms"||de==="camel-upper-acronyms"?(V="",de==="pascal-upper-acronyms"||de==="camel-upper-acronyms"?(Te=se,Ce=ie):Te=Ce=se):V="_",de){case"pascal":case"pascal-upper-acronyms":ae=Ie=se;break;case"camel":case"camel-upper-acronyms":ae=Ie=be;break;case"underscore":ae=Te=Ie=Ce=be;break;case"upper-underscore":ae=Te=Ie=Ce=ie;break;default:return(0,n.assertNever)(de)}return We=>{const Ge=ue(We),Y=pe(Ge,Q,ae,Te,Ie,Ce,V,f);return z!==void 0?le(z,Y):Y}}e.makeNameStyle=me}(sa)),sa}var _s={},Bp;function wk(){if(Bp)return _s;Bp=1,Object.defineProperty(_s,"__esModule",{value:!0}),_s.Chance=void 0;class e{constructor(d){d===void 0&&(d=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(d)}init_genrand(d){for(this.mt[0]=d>>>0,this.mti=1;this.mti<this.N;this.mti++)d=this.mt[this.mti-1]^this.mt[this.mti-1]>>>30,this.mt[this.mti]=(((d&4294901760)>>>16)*1812433253<<16)+(d&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0}genrand_int32(){let d,u=new Array(0,this.MATRIX_A);if(this.mti>=this.N){let c;for(this.mti===this.N+1&&this.init_genrand(5489),c=0;c<this.N-this.M;c++)d=this.mt[c]&this.UPPER_MASK|this.mt[c+1]&this.LOWER_MASK,this.mt[c]=this.mt[c+this.M]^d>>>1^u[d&1];for(;c<this.N-1;c++)d=this.mt[c]&this.UPPER_MASK|this.mt[c+1]&this.LOWER_MASK,this.mt[c]=this.mt[c+(this.M-this.N)]^d>>>1^u[d&1];d=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^d>>>1^u[d&1],this.mti=0}return d=this.mt[this.mti++],d^=d>>>11,d^=d<<7&2636928640,d^=d<<15&4022730752,d^=d>>>18,d>>>0}random(){return this.genrand_int32()*(1/4294967296)}}let t=class{constructor(d){this.seed=d,this.mt=new e(this.seed)}random(){return this.mt.random()}integer(d){return Math.floor(this.random()*(d.max-d.min+1)+d.min)}natural(d){return this.integer({min:0,max:d.max})}pick(d){if(d.length===0)throw new RangeError("Chance: Cannot pick() from an empty array");return d[this.natural({max:d.length-1})]}animal(){const d=["desert","forest","ocean","zoo","farm","pet","grassland"];return this.pick(n[this.pick(d)])}city(){return this.pick(a)}};_s.Chance=t;const n={ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},a=["Alert","Nord","Eureka","Ny-Ålesund","Longyearbyen","Qaanaaq","Grise Fiord","Dikson","Upernavik","Tiksi","Belushya Guba","Barrow","Honningsvåg","Hammerfest","Deadhorse","Nuorgam","Vadsø","Alta","Utsjoki","Kirkenes","Tromsø","Tuktoyaktuk","Norilsk","Murmansk","Harstad","Narvik","Inuvik","Kiruna","Verkhoyansk","Bodø","Gällivare","Kemijärvi","Rovaniemi","Ísafjörður","Kuusamo","Tornio","Boden","Haparanda","Kemi","Akureyri","Luleå","Pudasjärvi","Piteå","Oulu","Fairbanks","Skellefteå","Anadyr","Arkhangelsk","Nome","Nuuk (Godthåb)","Reykjavík","Umeå","Iqaluit","Stjørdal","Trondheim","Örnsköldsvik","Östersund","Vaasa","Kuopio","Yellowknife","Sundsvall","Jyväskylä","Yakutsk","Tórshavn","Petrozavodsk","Tampere","Anchorage","Lillehammer","Lahti","Qaqortoq","Whitehorse","Turku","Bergen","Vantaa","Lerwick","Espoo","Helsinki","Oslo","Saint Petersburg","Uppsala","Fritz Creek","Magadan","Tallinn","Stockholm","Sarpsborg","Örebro","Vologda","Norrköping","Linköping","Tartu","Juneau","Arendal","Kristiansand","Perm","Valga","Gothenburg","Visby","Yaroslavl","Inverness","Aberdeen","Sitka","Riga","Izhevsk","Yekaterinburg","Fort McMurray","Dundee","Nizhny Novgorod","Stirling","Bratsk","Aarhus","Krasnoyarsk","Edinburgh","Glasgow","Kazan","Moscow","Copenhagen","Malmö","Esbjerg","Odense","Grande Prairie","Chelyabinsk","Novosibirsk","Derry","Omsk","Newcastle upon Tyne","Sunderland","Petropavl","Flensburg","Ufa","Kaliningrad","Vilnius","Belfast","Middlesbrough","Gdynia","Gdańsk","Kiel","Douglas","Rostock","Lancaster","York","Prince George","Minsk","Bradford","Leeds","Hamburg","Edmonton","Tolyatti","Manchester","Liverpool","Sheffield","Dublin","Groningen","Samara","Bremen","Petropavlovsk-Kamchatsky","Nottingham","Derby","Leicester","Norwich","Peterborough","Berlin","Birmingham","Gomel","Coventry","Poznań","Haarlem","Amsterdam","Hannover","Irkutsk","Warsaw","Enschede","Cambridge","Leiden","Saskatoon","Utrecht","The Hague","Münster","Rotterdam","Cork","Adak","Gloucester","Oxford","Voronezh","Swansea","Saratov","Dortmund","London","Cardiff","Greenwich","Bristol","Bath","Leipzig","Düsseldorf","Antwerp","Astana","Winchester","Calgary","Ghent","Dresden","Erfurt","Calais","Cologne","Southampton","Maastricht","Brussels","Brighton and Hove","Portsmouth","Exeter","Kamloops","Lille","Regina","Kiev","Charleroi","Plymouth","Frankfurt am Main","Prague","Kraków","Kharkiv","Winnipeg","Kelowna","Lviv","Luxembourg","Le Havre","Nuremberg","Rouen","Vancouver","Paris","Stuttgart","Bellingham","Volgograd","Strasbourg","Dnipro","Victoria","Saguenay","Brest","Thunder Bay","Linz","Vienna","Bratislava","Munich","Donetsk","Ulaanbaatar","Orléans","Salzburg","Seattle","St. John's","Basel","Budapest","Qiqihar","Zürich","Innsbruck","Rostov-on-Don","Nantes","Vaduz","Atyrau","Graz","Chişinău","Bern","Tiraspol","Quebec City","Bismarck","Duluth","Saint-Pierre","Cluj-Napoca","Moscow","Helena","Sault Ste. Marie","Lausanne","Sudbury","Odessa","North Bay","Charlottetown","Geneva","Moncton","Ljubljana","Fredericton","Zagreb","Lyon","Harbin","New Glasgow","Portland","Montreal","Milan","Venice","Ottawa","Wakkanai","Saint John","Novi Sad","Turin","Krasnodar","Minneapolis","Simferopol","Halifax","Bordeaux","Belgrade","Šabac","Drobeta Turnu Severin","Bologna","Bucharest","Ravenna","Genoa","Pierre","Craiova","Augusta","Montpelier","Bath","San Marino","Changchun","Sarajevo","Yarmouth","Ürümqi","Florence","Asahikawa","Monaco","Nice","Toronto","Boise","Toulouse","Sochi","Cannes","Gijón","Sioux Falls","Split","Oviedo","Nemuro","San Sebastián","Marseille","Almaty","Bilbao","Concord","Rochester","Vladivostok","Sapporo","Milwaukee","Sukhumi","Kushiro","London","Follonica","Obihiro","Buffalo","Santiago de Compostela","Bishkek","Vitoria-Gasteiz","Sofia","Pristina","Andorra la Vella","Nukus","Podgorica","Boston","Detroit","Windsor","Vigo","Tskhinvali","Avezzano","Skopje","Colchester","Rome","Vatican City","Chicago","Providence","Shenyang","Chongjin","Hartford","Hakodate","Tbilisi","Valladolid","Zaragoza","Des Moines","Braga","Cleveland","Barcelona","Tirana","Tashkent","Porto","Cheyenne","Bari","Fort Wayne","Istanbul","Trabzon","Namangan","Naples","Aomori","Lincoln","Eureka","Salt Lake City","Jersey City","New York City","Thessaloniki","Lleida","Pittsburgh","Baku","Madrid","Trenton","Bursa","Yerevan","Boulder","Columbus","Ankara","Philadelphia","Beijing","Stepanakert","Forked River","Eskisehir","Indianapolis","Denver","Akita","Morioka","Palma","Reno","Flores Island","Valencia","Baltimore","Cagliari","Dover","Wonsan","Tianjin","Cincinnati","Kansas City","Pyongyang","Ibiza","Dalian","Washington","Lisbon","St. Louis","Horta","Sacramento","Dushanbe","Angra do Heroísmo","Halkida","İzmir","Charleston","Alicante","Sendai","Louisville","Yamagata","Messina","Palermo","Tabriz","Shijiazhuang","Trapani","Athena","Kaesong","Ashgabat","Niigata","Taiyuan","Konya","Ponta Delgada","Oakland","San Francisco","Fukushima","Wichita","Seoul","San Jose","Catania","Incheon","Sevilla","Mugla","Springfield","Gaziantep","Adana","Virginia Beach","Almería","Tunis","Mersin","Algiers","Málaga","Toyama","Jinan","Nagano","Xining","Handan","Kanazawa","Utsunomiya","Maebashi","Mito","Mosul","Mashhad","Arbil","Las Vegas","Nashville","Gibraltar","Tulsa","Fukui","Qingdao","Lanzhou","Knoxville","Valletta","Birkirkara","Los Alamos","Daegu","Raleigh","Tangier","Tehran","Tokyo","Santa Fe","Kōfu","Chiba","Latakia","Kawasaki","Tottori","Oklahoma City","Matsue","Kirkuk","Yokohama","Gifu","Tiaret","Heraklion","Melilla","Charlotte","Nagoya","Busan","Nicosia","Memphis","Albuquerque","Ōtsu","Kyoto","Shizuoka","Zhengzhou","Little Rock","Sfax","Tsu","Osaka","Kōbe","Nara","Okayama","Kabul","Santa Barbara","Hiroshima","Takamatsu","Xi'an","Wakayama","Wilmington","Yamaguchi","Arak","Srinagar","Tokushima","Los Angeles","Rabat","Peshawar","Columbia","Riverside","Beirut","Matsuyama","Atlanta","Islamabad","Birmingham","Rawalpindi","Fukuoka","Kōchi","Casablanca","Damascus","Phoenix","Lubbock","Baghdad","Saga","Ōita","Tripoli","Charleston","Dallas","Nagasaki","Kumamoto","San Diego","Mexicali","Funchal","El Centro","Isfahan","Karbala","Tijuana","Shreveport","Jackson","Hamilton","Tucson","Benghazi","Tel Aviv","Nanjing","Najaf","Amman","Miyazaki","Ramallah","Ensenada","El Paso","Jerusalem","Ciudad Juárez","Amritsar","Marrakech","Kandahar","Kagoshima","Lahore","Gaza","Faisalabad","Port Said","Alexandria","Shanghai","Shimla","Ludhiana","Chandigarh","Mobile","Chengdu","Wuhan","Basra","Agadir","Jacksonville","Austin","Hangzhou","Multan","Cairo","New Orleans","Suez","Houston","Lhasa","Chongqing","Eilat","San Antonio","Kuwait City","Shigatse","Hermosillo","Chihuahua","New Delhi","Santa Cruz de Tenerife","Orlando","Las Palmas de Gran Canaria","Tampa","Corpus Christi","Maspalomas","Kathmandu","Dibrugarh","Thimphu","Gangtok","Agra","El Aaiún","Sabha","Jaipur","Lucknow","Siliguri","Tezpur","Kanpur","Dammam","Naha","Manama","Guwahati","Brownsville","Miami","Luxor","Monterrey","Patna","Shillong","Torreón","Kulpahar","Doha","Dubai","Hyderabad","Nassau","Kunming","Taipei","Karachi","Culiacán","Riyadh","Key West","Medina","Abu Dhabi","Al Ain","Taichung","Durango","Agartala","Dhaka","Muscat","Havana","Guangzhou","Ahmedabad","Dongguan","Tainan","Cabo San Lucas","Nanning","Kaohsiung","Kolkata (Calcutta)","Shenzhen","Chittagong","Hong Kong","Tampico","San Luis Potosí","Aguascalientes","Jeddah","Cockburn Town","Mecca","Honolulu","Chhattisgarh","Cancún","Surat","Nagpur","León","Hanoi","Mérida","Hai Phong","Zapopan","Puerto Vallarta","Guadalajara","Querétaro","Haikou","Santiago de Cuba","Chiang Rai","Naypyidaw","Hilo","George Town","Veracruz","Puebla","Mumbai","Chiang Mai","Port-au-Prince","Pune","Santo Domingo","San Juan","Road Town","Charlotte Amalie","The Valley","Nouakchott","Kingston","Vientiane","Visakhapatnam","Belize City","Udon Thani","Hyderabad","Basseterre","Belmopan","St. John's","Salalah","Acapulco","Yangon","Timbuktu","Huế","Khon Kaen","Da Nang","Basse-Terre","Omdurman","Khartoum","Sana'a","Asmara","Roseau","Saipan","Son My","Nakhon Ratchasima","Praia","Tapachula","Quetzaltenango","Thiès","Dakar","Quezon City","Guatemala City","Fort-de-France","Manila","Makati","Ayutthaya","Tegucigalpa","Castries","Bangkok","San Salvador","Niamey","Dededo","Hagåtña","Banjul","Serekunda","Siem Reap","Brikama","Kingstown","Bridgetown","Chennai (Madras)","Bangalore","Pattaya","Koulikoro","Bamako","Chinandega","Oranjestad","Ouagadougou","Managua","Willemstad","N'Djamena","St. George's","Kano","Bissau","Port Blair","Djibouti","Phnom Penh","Bobo-Dioulasso","Barranquilla","Ho Chi Minh City","Iloilo City","Port of Spain","Maracaibo","Liberia","Caracas","Chaguanas","Cartagena","San Fernando","Cebu City","Maracay","Valencia","Alajuela","Limón","Jaffna","Hargeisa","Puntarenas","Kochi","San José","Tagbilaran","Conakry","Tamale","Surat Thani","Abuja","Addis Ababa","Panama City","Mérida","Moundou","Trivandrum","Freetown","Ciudad Bolívar","Cúcuta","Phuket","San Cristóbal","Nzérékoré","Batticaloa","Melekeok","Weno","Ibadan","Koror","Kandy","Majuro","Davao City","Hat Yai","Colombo","Palikir","Sri Jayawardenapura-Kotte","Zamboanga City","Yamoussoukro","Georgetown","Kumasi","Porto-Novo","Lagos","Enugu","Cotonou","Benin City","Monrovia","Medellín","Lomé","Kota Bharu","Alor Setar","Kota Kinabalu","Paramaribo","Puerto Ayacucho","Accra","Banda Aceh","George Town","Abidjan","Cayenne","Sekondi-Takoradi","Bandar Seri Begawan","Juba","Port Harcourt","Ipoh","Bogotá","Miri","Bangui","Malé","Douala","Yaoundé","Malabo","Medan","Santiago de Cali","Kuala Lumpur","Boa Vista","Malacca Town","Mogadishu","Kuching","Johor Bahru","South Tarawa","Singapore","Pekanbaru","Libreville","São Tomé","Kampala","Entebbe","Mbandaka","Macapá","Pontianak","Quito","Kismayo","Yaren District","Padang","Balikpapan","Nairobi","Belém","Kigali","Guayaquil","Mwanza","São Luís","Jayapura","Palembang","Manaus","Bujumbura","Sobral","Ambon","Fortaleza","Iquitos","Fernando de Noronha","Mombasa","Brazzaville","Kinshasa","Victoria","Teresina","Makassar","Imperatriz","Natal","Zanzibar City","Dodoma","Jakarta","Bogor","Dar es Salaam","Bandung","Semarang","João Pessoa","Juazeiro do Norte","Campina Grande","Surabaya","Yogyakarta","Malang","Recife","Trujillo","Caruaru","Funafuti","Dili","Denpasar","Porto Velho","Luanda","Garanhuns","Nukulaelae","Petrolina","Honiara","Port Moresby","Maceió","Rio Branco","Aracaju","Palmas","Lubumbashi","Moroni","Sinop","Lima","Darwin","Huambo","Mamoudzou","Ndola","Salvador","Ayacucho","Mata-Utu","Cusco","Apia","Lilongwe","Pago Pago","Ilhéus","Lusaka","Cuiabá","Blantyre","Brasília","Jamestown","Arequipa","Labasa","Rabi Island","La Paz","Goiânia","Cairns","Papeete","Port Vila","Santa Cruz de la Sierra","Livingstone","Harare","Suva","Arica","Governador Valadares","Uberlândia","Antananarivo","Mutare","Sucre","Alofi","Townsville","Gweru","Belo Horizonte","Port Louis","Bulawayo","Iquique","Port Hedland","Vitória","Campo Grande","São José do Rio Preto","Saint-Denis","Nukuʻalofa","Francistown","Ribeirão Preto","Avarua","Juiz de Fora","Poços de Caldas","Araraquara","Nouméa","Bauru","Calama","Windhoek","Assis","Campinas","Rio de Janeiro","São José dos Campos","Rockhampton","São Paulo","Antofagasta","Polokwane","Gaborone","Salta","Adamstown","Asunción","Curitiba","Nelspruit","Ciudad del Este","Pretoria","Mafikeng","Maputo","Johannesburg","Mbabane","Lobamba","Manzini","San Miguel de Tucumán","Hanga Roa","Copiapó","Brisbane","Corrientes","Florianópolis","Gold Coast","Kimberley","Kingston","Bloemfontein","Maseru","Pietermaritzburg","Durban","La Serena","Córdoba","Santa Fe","Pelotas","Perth","San Juan","Mandurah","Bhisho","Mendoza","Newcastle","Rosario","Viña del Mar","Valparaíso","Santiago","Chuí","Sydney","Cape Town","Port Elizabeth","Wollongong","Buenos Aires","Montevideo","Adelaide","Canberra","Concepción","Auckland","Edinburgh of the Seven Seas","Hamilton","Melbourne","Mar del Plata","Geelong","Bahía Blanca","Temuco","Neuquén","Hastings","Valdivia","San Carlos de Bariloche","Nelson","Wellington","Puerto Montt","Launceston, Tasmania","Hobart","Trelew","Christchurch","Waitangi","Puerto Aisén","Coihaique","Comodoro Rivadavia","Dunedin","Invercargill","Río Gallegos","Stanley","Punta Arenas","Grytviken","Ushuaia","Puerto Williams","Puerto Toro","Villa Las Estrellas","Esperanza","Rothera","Concordia"];return _s}var jp;function qi(){return jp||(jp=1,function(e){var t=zr.__createBinding||(Object.create?function(I,A,f,E){E===void 0&&(E=f);var b=Object.getOwnPropertyDescriptor(A,f);(!b||("get"in b?!A.__esModule:b.writable||b.configurable))&&(b={enumerable:!0,get:function(){return A[f]}}),Object.defineProperty(I,E,b)}:function(I,A,f,E){E===void 0&&(E=f),I[E]=A[f]}),n=zr.__setModuleDefault||(Object.create?function(I,A){Object.defineProperty(I,"default",{enumerable:!0,value:A})}:function(I,A){I.default=A}),a=zr.__importStar||function(I){if(I&&I.__esModule)return I;var A={};if(I!=null)for(var f in I)f!=="default"&&Object.prototype.hasOwnProperty.call(I,f)&&t(A,I,f);return n(A,I),A};Object.defineProperty(e,"__esModule",{value:!0}),e.makeNamesTypeAttributes=e.singularizeTypeNames=e.modifyTypeNames=e.namesTypeAttributeKind=e.TooManyTypeNames=e.RegularTypeNames=e.TypeNames=e.tooManyNamesThreshold=e.initTypeNames=void 0;const l=a(Qg()),d=et(),u=Qe(),c=At(),w=Nt(),U=wk();let P,O;function R(){P=new U.Chance(31415),O=new Set}e.initTypeNames=R,R();function _(){for(;;){const I=`${P.city()} ${P.animal()}`;if(!O.has(I))return O.add(I),I}}function L(I){let A=(0,d.iterableFirst)(I);if(A===void 0)return(0,u.panic)("Named type has no names");if(I.size===1)return A;const f=(0,d.setMap)(I,T=>(0,w.splitIntoWords)(T).map(v=>v.word.toLowerCase()).join("_")),E=(0,u.defined)((0,d.iterableFirst)(f));if(f.size===1)return E;let b=E.length,F=E.length;for(const T of(0,d.iterableSkip)(f,1)){b=Math.min(b,T.length);for(let v=0;v<b;v++)if(E[v]!==T[v]){b=v;break}F=Math.min(F,T.length);for(let v=0;v<F;v++)if(E[E.length-v-1]!==T[T.length-v-1]){F=v;break}}const m=b>2?E.slice(0,b):"",r=F>2?E.slice(E.length-F):"",s=m+r;return s.length>2?s:E}e.tooManyNamesThreshold=1e3;let g=class Xg{static makeWithDistance(A,f,E){return A.size>=e.tooManyNamesThreshold?new h(E):((f===void 0||f.size>e.tooManyNamesThreshold)&&(f=void 0),new y(A,f,E))}static make(A,f,E){return Xg.makeWithDistance(A,f,E?1:0)}constructor(A){this.distance=A}get areInferred(){return this.distance>0}};e.TypeNames=g;class y extends g{constructor(A,f,E){super(E),this.names=A,this._alternativeNames=f}add(A,f=0){let E=new Set(this.names),b=this.distance,F=(0,d.definedMap)(this._alternativeNames,m=>new Set(m));for(let m=f;m<A.length;m++){const r=A[m];if(r instanceof y&&r._alternativeNames!==void 0&&(F===void 0&&(F=new Set),(0,d.setUnionInto)(F,r._alternativeNames)),!(r.distance>b)){if(!(r instanceof y))return(0,u.assert)(r instanceof h,"Unknown TypeNames instance"),r.add(A,m+1);r.distance<b?(E=new Set(r.names),b=r.distance,F=(0,d.definedMap)(r._alternativeNames,s=>new Set(s))):((0,u.assert)(r.distance===b,"This should be the only case left"),(0,d.setUnionInto)(E,r.names))}}return g.makeWithDistance(E,F,b)}clearInferred(){const A=this.areInferred?new Set:this.names;return g.makeWithDistance(A,new Set,this.distance)}get combinedName(){return L(this.names)}get proposedNames(){const A=new Set([this.combinedName]);return this._alternativeNames===void 0||(0,d.setUnionInto)(A,this._alternativeNames),A}makeInferred(){return g.makeWithDistance(this.names,this._alternativeNames,this.distance+1)}singularize(){return g.makeWithDistance((0,d.setMap)(this.names,l.singular),(0,d.definedMap)(this._alternativeNames,A=>(0,d.setMap)(A,l.singular)),this.distance+1)}toString(){const f=`${this.areInferred?`distance ${this.distance}`:"given"} ${Array.from(this.names).join(",")}`;return this._alternativeNames===void 0?f:`${f} (${Array.from(this._alternativeNames).join(",")})`}}e.RegularTypeNames=y;class h extends g{constructor(A,f){super(A),f===void 0&&(f=_()),this.names=new Set([f])}get combinedName(){return(0,u.defined)((0,d.iterableFirst)(this.names))}get proposedNames(){return this.names}add(A,f=0){if(!this.areInferred)return this;for(let E=f;E<A.length;E++){const b=A[E];if(b.distance<this.distance)return b.add(A,E+1)}return this}clearInferred(){return this.areInferred?g.makeWithDistance(new Set,new Set,this.distance):this}makeInferred(){return new h(this.distance+1,(0,d.iterableFirst)(this.names))}singularize(){return this}toString(){return`too many ${this.combinedName}`}}e.TooManyTypeNames=h;class p extends c.TypeAttributeKind{constructor(){super("names")}combine(A){return(0,u.assert)(A.length>0,"Can't combine zero type names"),A[0].add(A,1)}makeInferred(A){return A.makeInferred()}increaseDistance(A){return A.makeInferred()}stringify(A){return A.toString()}}e.namesTypeAttributeKind=new p;function k(I,A){return e.namesTypeAttributeKind.modifyInAttributes(I,A)}e.modifyTypeNames=k;function D(I){return k(I,A=>{if(A!==void 0)return A.singularize()})}e.singularizeTypeNames=D;function C(I,A){let f;return typeof I=="string"?f=g.make(new Set([I]),new Set,(0,u.defined)(A)):f=I,e.namesTypeAttributeKind.makeAttributes(f)}e.makeNamesTypeAttributes=C}(zr)),zr}var Tt={},st={},mi={},Rl={},Up;function ss(){return Up||(Up=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeBuilder=e.getNoStringTypeMapping=e.stringTypeMappingGet=e.provenanceTypeAttributeKind=void 0;const t=et(),n=mt(),a=Xn(),l=At(),d=Qe(),u=Oi();class c extends l.TypeAttributeKind{constructor(){super("provenance")}appliesToTypeKind(_){return!0}combine(_){return(0,t.setUnionManyInto)(new Set,_)}makeInferred(_){return _}stringify(_){return Array.from(_).sort().map(L=>L.toString()).join(",")}}e.provenanceTypeAttributeKind=new c;function w(R,_){const L=R.get(_);return L===void 0?"string":L}e.stringTypeMappingGet=w;let U;function P(){return U===void 0&&(U=new Map(Array.from(n.transformedStringTypeKinds).map(R=>[R,R]))),U}e.getNoStringTypeMapping=P;class O{constructor(_,L,g,y,h,p){this._stringTypeMapping=L,this.canonicalOrder=g,this._allPropertiesOptional=y,this._addProvenanceAttributes=h,this.topLevels=new Map,this.types=[],this.typeAttributes=[],this._addedForwardingIntersection=!1,this._typeForIdentity=new t.EqualityMap,(0,d.assert)(!h||!p,"We can't both inherit as well as add provenance"),this.typeGraph=new a.TypeGraph(this,_,h||p)}addTopLevel(_,L){(0,d.assert)(!this.topLevels.has(_),"Trying to add top-level with existing name"),(0,d.assert)(this.types[(0,a.typeRefIndex)(L)]!==void 0,"Trying to add a top-level type that doesn't exist (yet?)"),this.topLevels.set(_,L)}reserveTypeRef(){const _=this.types.length;this.types.push(void 0);const L=(0,a.makeTypeRef)(this.typeGraph,_),g=this._addProvenanceAttributes?e.provenanceTypeAttributeKind.makeAttributes(new Set([_])):l.emptyTypeAttributes;return this.typeAttributes.push(g),L}assertTypeRefGraph(_){_!==void 0&&(0,a.assertTypeRefGraph)(_,this.typeGraph)}assertTypeRefSetGraph(_){_!==void 0&&_.forEach(L=>this.assertTypeRefGraph(L))}filterTypeAttributes(_,L){const g=(0,t.mapFilter)(L,(y,h)=>h.appliesToTypeKind(_.kind));return L.size!==g.size&&this.setLostTypeAttributes(),g}commitType(_,L){this.assertTypeRefGraph(_);const g=(0,a.typeRefIndex)(_);(0,d.assert)(this.types[g]===void 0,"A type index was committed twice"),this.types[g]=L,this.typeAttributes[g]=this.filterTypeAttributes(L,this.typeAttributes[g])}addType(_,L,g){_!==void 0&&(this.assertTypeRefGraph(_),(0,d.assert)(this.types[(0,a.typeRefIndex)(_)]===void 0));const y=_!==void 0?_:this.reserveTypeRef();if(g!==void 0){const p=(0,a.typeRefIndex)(y);this.typeAttributes[p]=(0,l.combineTypeAttributes)("union",this.typeAttributes[p],g)}const h=L(y);return this.commitType(y,h),y}typeAtIndex(_){const L=this.types[_];return L===void 0?(0,d.panic)("Trying to deref an undefined type in a type builder"):L}atIndex(_){const L=this.typeAtIndex(_),g=this.typeAttributes[_];return[L,g]}addAttributes(_,L){this.assertTypeRefGraph(_);const g=(0,a.typeRefIndex)(_),y=this.typeAttributes[g];(0,d.assert)((0,t.iterableEvery)(L,([k,D])=>{if(!k.inIdentity)return!0;const C=y.get(k);return C===void 0?!1:(0,t.areEqual)(C,D)}),"Can't add different identity type attributes to an existing type");const h=this.types[g];h!==void 0&&(L=this.filterTypeAttributes(h,L));const p=(0,t.mapFilter)(L,(k,D)=>!D.inIdentity);this.typeAttributes[g]=(0,l.combineTypeAttributes)("union",y,p)}finish(){return this.typeGraph.freeze(this.topLevels,this.types.map(d.defined),this.typeAttributes),this.typeGraph}addForwardingIntersection(_,L){return this.assertTypeRefGraph(L),this._addedForwardingIntersection=!0,this.addType(_,g=>new n.IntersectionType(g,this.typeGraph,new Set([L])),void 0)}forwardIfNecessary(_,L){if(L!==void 0)return _===void 0?L:this.addForwardingIntersection(_,L)}get didAddForwardingIntersection(){return this._addedForwardingIntersection}registerTypeForIdentity(_,L){_!==void 0&&this._typeForIdentity.set(_,L)}makeIdentity(_){return _()}getOrAddType(_,L,g,y){const h=this.makeIdentity(_);let p;if(h===void 0?p=void 0:p=this._typeForIdentity.get(h),p!==void 0){const D=this.forwardIfNecessary(y,p);return g!==void 0&&this.addAttributes(D,(0,t.mapFilter)(g,(C,I)=>!I.inIdentity)),D}const k=this.addType(y,L,g);return this.registerTypeForIdentity(h,k),k}registerType(_){this.registerTypeForIdentity(_.identity,_.typeRef)}getPrimitiveType(_,L,g){const y=(0,t.withDefault)(L,l.emptyTypeAttributes);let h=_==="string"?void 0:u.StringTypes.unrestricted;return(0,n.isPrimitiveStringTypeKind)(_)&&_!=="string"&&(_=w(this._stringTypeMapping,_)),_==="string"?this.getStringType(y,h,g):this.getOrAddType(()=>(0,n.primitiveTypeIdentity)(_,y),p=>new n.PrimitiveType(p,this.typeGraph,_),y,g)}getStringType(_,L,g){const y=(0,t.mapFind)(_,(h,p)=>p===u.stringTypesTypeAttributeKind);return(0,d.assert)(L===void 0!=(y===void 0),"Must instantiate string type with one enum case attribute"),y===void 0&&(_=(0,l.combineTypeAttributes)("union",_,u.stringTypesTypeAttributeKind.makeAttributes((0,d.defined)(L)))),this.getOrAddType(()=>(0,n.primitiveTypeIdentity)("string",_),h=>new n.PrimitiveType(h,this.typeGraph,"string"),_,g)}getEnumType(_,L,g){return this.getOrAddType(()=>(0,n.enumTypeIdentity)(_,L),y=>new n.EnumType(y,this.typeGraph,L),_,g)}makeClassProperty(_,L){return new n.ClassProperty(_,this.typeGraph,L)}getUniqueObjectType(_,L,g,y){return this.assertTypeRefGraph(g),L=(0,t.definedMap)(L,h=>this.modifyPropertiesIfNecessary(h)),this.addType(y,h=>new n.ObjectType(h,this.typeGraph,"object",!0,L,g),_)}getUniqueMapType(_){return this.addType(_,L=>new n.MapType(L,this.typeGraph,void 0),void 0)}getMapType(_,L,g){return this.assertTypeRefGraph(L),this.getOrAddType(()=>(0,n.mapTypeIdentify)(_,L),y=>new n.MapType(y,this.typeGraph,L),_,g)}setObjectProperties(_,L,g){this.assertTypeRefGraph(g);const y=(0,a.derefTypeRef)(_,this.typeGraph);if(!(y instanceof n.ObjectType))return(0,d.panic)("Tried to set properties of non-object type");y.setProperties(this.modifyPropertiesIfNecessary(L),g),this.registerType(y)}getUniqueArrayType(_){return this.addType(_,L=>new n.ArrayType(L,this.typeGraph,void 0),void 0)}getArrayType(_,L,g){return this.assertTypeRefGraph(L),this.getOrAddType(()=>(0,n.arrayTypeIdentity)(_,L),y=>new n.ArrayType(y,this.typeGraph,L),_,g)}setArrayItems(_,L){this.assertTypeRefGraph(L);const g=(0,a.derefTypeRef)(_,this.typeGraph);if(!(g instanceof n.ArrayType))return(0,d.panic)("Tried to set items of non-array type");g.setItems(L),this.registerType(g)}modifyPropertiesIfNecessary(_){return _.forEach(L=>this.assertTypeRefGraph(L.typeRef)),this.canonicalOrder&&(_=(0,t.mapSortByKey)(_)),this._allPropertiesOptional&&(_=(0,t.mapMap)(_,L=>this.makeClassProperty(L.typeRef,!0))),_}getClassType(_,L,g){return L=this.modifyPropertiesIfNecessary(L),this.getOrAddType(()=>(0,n.classTypeIdentity)(_,L),y=>new n.ClassType(y,this.typeGraph,!1,L),_,g)}getUniqueClassType(_,L,g,y){return g=(0,t.definedMap)(g,h=>this.modifyPropertiesIfNecessary(h)),this.addType(y,h=>new n.ClassType(h,this.typeGraph,L,g),_)}getUnionType(_,L,g){return this.assertTypeRefSetGraph(L),this.getOrAddType(()=>(0,n.unionTypeIdentity)(_,L),y=>new n.UnionType(y,this.typeGraph,L),_,g)}getUniqueUnionType(_,L,g){return this.assertTypeRefSetGraph(L),this.addType(g,y=>new n.UnionType(y,this.typeGraph,L),_)}getIntersectionType(_,L,g){return this.assertTypeRefSetGraph(L),this.getOrAddType(()=>(0,n.intersectionTypeIdentity)(_,L),y=>new n.IntersectionType(y,this.typeGraph,L),_,g)}getUniqueIntersectionType(_,L,g){return this.assertTypeRefSetGraph(L),this.addType(g,y=>new n.IntersectionType(y,this.typeGraph,L),_)}setSetOperationMembers(_,L){this.assertTypeRefSetGraph(L);const g=(0,a.derefTypeRef)(_,this.typeGraph);if(!(g instanceof n.UnionType||g instanceof n.IntersectionType))return(0,d.panic)("Tried to set members of non-set-operation type");g.setMembers(L),this.registerType(g)}setLostTypeAttributes(){}}e.TypeBuilder=O}(Rl)),Rl}var xp;function Oi(){if(xp)return mi;xp=1,Object.defineProperty(mi,"__esModule",{value:!0}),mi.inferTransformedStringTypeKindForString=mi.stringTypesTypeAttributeKind=mi.StringTypes=void 0;const e=et(),t=At(),n=Qe(),a=ss();let l=class Ui{static fromCase(y,h){return new Ui(new Map([[y,h]]),new Set)}static fromCases(y){for(const h of y);return new Ui(new Map(y.map(h=>[h,1])),new Set)}constructor(y,h){this.cases=y,this.transformations=h,y===void 0&&(0,n.assert)(h.size===0,"We can't have an unrestricted string that also allows transformations")}get isRestricted(){return this.cases!==void 0}union(y,h){if(this.cases===void 0)return this;const p=new Map(this.cases),k=new Set(this.transformations);for(let D=h;D<y.length;D++){const C=y[D];if(C.cases===void 0)return C;(0,e.mapMergeWithInto)(p,(I,A)=>I+A,C.cases),(0,e.setUnionInto)(k,C.transformations)}return new Ui(p,k)}intersect(y,h){let p=this.cases,k=this.transformations;for(let D=h;D<y.length;D++){const C=y[D];if(p===void 0)p=(0,e.definedMap)(C.cases,I=>new Map(I));else if(C.cases!==void 0){const I=p,A=C.cases;p=(0,e.mapMap)((0,e.setIntersect)(I.keys(),new Set(A.keys())).entries(),f=>Math.min((0,n.defined)(I.get(f)),(0,n.defined)(A.get(f))))}k=(0,e.setIntersect)(k,C.transformations)}return new Ui(p,k)}applyStringTypeMapping(y){if(!this.isRestricted)return this;const h=new Set;for(const p of this.transformations){const k=(0,a.stringTypeMappingGet)(y,p);if(k==="string")return Ui.unrestricted;h.add(k)}return new Ui(this.cases,new Set(h))}equals(y){return y instanceof Ui?(0,e.areEqual)(this.cases,y.cases)&&(0,e.areEqual)(this.transformations,y.transformations):!1}hashCode(){let y=(0,e.hashCodeOf)(this.cases);return y=(0,e.addHashCode)(y,(0,e.hashCodeOf)(this.transformations)),y}toString(){const y=[],h=this.cases;if(h===void 0)y.push("unrestricted");else{const p=(0,e.iterableFirst)(h.keys());p===void 0?y.push("enum with no cases"):y.push(`${h.size.toString()} enums: ${p} (${h.get(p)}), ...`)}return y.concat(Array.from(this.transformations)).join(",")}};mi.StringTypes=l,l.unrestricted=new l(void 0,new Set);class d extends t.TypeAttributeKind{constructor(){super("stringTypes")}get inIdentity(){return!0}requiresUniqueIdentity(y){return y.cases!==void 0&&y.cases.size>0}combine(y){return(0,n.assert)(y.length>0),y[0].union(y,1)}intersect(y){return(0,n.assert)(y.length>0),y[0].intersect(y,1)}makeInferred(y){}stringify(y){return y.toString()}}mi.stringTypesTypeAttributeKind=new d;const u=/^(0|-?[1-9]\d*)$/,c=1<<31,w=2147483647;function U(g){if(g.match(u)===null)return!1;const y=parseInt(g,10);return y>=c&&y<=w}const P=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function O(g){return g.match(P)!==null}const R=/^(https?|ftp):\/\/[^{}]+$/;function _(g){return g.match(R)!==null}function L(g,y){if(!(g.length===0||"0123456789-abcdefth".indexOf(g[0])<0)){if(y.isDate(g))return"date";if(y.isTime(g))return"time";if(y.isDateTime(g))return"date-time";if(U(g))return"integer-string";if(g==="false"||g==="true")return"bool-string";if(O(g))return"uuid";if(_(g))return"uri"}}return mi.inferTransformedStringTypeKindForString=L,mi}var zp;function pt(){if(zp)return st;zp=1,Object.defineProperty(st,"__esModule",{value:!0}),st.matchCompoundType=st.matchType=st.matchTypeExhaustive=st.stringTypesForType=st.directlyReachableSingleNamedType=st.directlyReachableTypes=st.separateNamedTypes=st.isNamedType=st.getNullAsOptional=st.nonNullTypeCases=st.nullableFromUnion=st.removeNullFromType=st.removeNullFromUnion=st.isAnyOrNull=st.combineTypeAttributesOfTypes=st.makeGroupsToFlatten=st.setOperationMembersRecursively=st.assertIsClass=st.assertIsObject=void 0;const e=et(),t=Qe(),n=At(),a=mt(),l=Oi();function d(f){return f instanceof a.ObjectType?f:(0,t.panic)("Supposed object type is not an object type")}st.assertIsObject=d;function u(f){return f instanceof a.ClassType?f:(0,t.panic)("Supposed class type is not a class type")}st.assertIsClass=u;function c(f,E){const b=Array.isArray(f)?f:[f],F=b[0].kind,m=F!=="intersection",r=new Set,s=new Set;let T=n.emptyTypeAttributes;function v(M){if(M.kind===F){const x=M;if(r.has(x))return;r.add(x),E!==void 0&&(T=(0,n.combineTypeAttributes)(E,T,M.getAttributes()));for(const W of x.members)v(W)}else m||M.kind!=="any"?s.add(M):E!==void 0&&(T=(0,n.combineTypeAttributes)(E,T,M.getAttributes()))}for(const M of b)v(M);return[s,T]}st.setOperationMembersRecursively=c;function w(f,E){const b=new e.EqualityMap;for(const F of f){const m=new Set(c(F,void 0)[0]);if(E!==void 0&&!E(m))continue;let r=b.get(m);r===void 0&&(r=new Set,m.size===1&&r.add((0,t.defined)((0,e.iterableFirst)(m)))),r.add(F),b.set(m,r)}return Array.from(b.values()).map(F=>Array.from(F))}st.makeGroupsToFlatten=w;function U(f,E){return(0,n.combineTypeAttributes)(f,Array.from(E).map(b=>b.getAttributes()))}st.combineTypeAttributesOfTypes=U;function P(f){return f.kind==="any"||f.kind==="null"}st.isAnyOrNull=P;function O(f,E=!1){function b(m){return E===!1?m:E===!0?(0,e.setSortBy)(m,r=>r.kind):(0,e.setSortBy)(m,E)}const F=f.findMember("null");return F===void 0?[null,b(f.members)]:[F,b((0,e.setFilter)(f.members,m=>m.kind!=="null"))]}st.removeNullFromUnion=O;function R(f){return f.kind==="null"?[f,new Set]:f instanceof a.UnionType?O(f):[null,new Set([f])]}st.removeNullFromType=R;function _(f){const[E,b]=O(f);return E===null||b.size!==1?null:(0,t.defined)((0,e.iterableFirst)(b))}st.nullableFromUnion=_;function L(f){return R(f)[1]}st.nonNullTypeCases=L;function g(f){const[E,b]=R(f.type);return f.isOptional?[!0,b]:[E!==null,b]}st.getNullAsOptional=g;function y(f){return["class","union","enum","object"].indexOf(f.kind)>=0}st.isNamedType=y;function h(f){const E=(0,e.setFilter)(f,m=>m.kind==="object"||m.kind==="class"),b=(0,e.setFilter)(f,m=>m instanceof a.EnumType),F=(0,e.setFilter)(f,m=>m instanceof a.UnionType);return{objects:E,enums:b,unions:F}}st.separateNamedTypes=h;function p(f,E){const b=E(f);return b!==null?b:(0,e.setUnion)(...Array.from(f.getNonAttributeChildren()).map(F=>p(F,E)))}st.directlyReachableTypes=p;function k(f){const E=p(f,b=>!(b instanceof a.UnionType)&&y(b)||b instanceof a.UnionType&&_(b)===null?new Set([b]):null);return(0,t.assert)(E.size<=1,"Cannot have more than one defined type per top-level"),(0,e.iterableFirst)(E)}st.directlyReachableSingleNamedType=k;function D(f){(0,t.assert)(f.kind==="string","Only strings can have string types");const E=l.stringTypesTypeAttributeKind.tryGetInAttributes(f.getAttributes());return E===void 0?(0,t.panic)("All strings must have a string type attribute"):E}st.stringTypesForType=D;function C(f,E,b,F,m,r,s,T,v,M,x,W,S,B,q){if(f.isPrimitive()){if((0,a.isPrimitiveStringTypeKind)(f.kind))return f.kind==="string"?T(f):q(f);const G=f.kind,$={none:E,any:b,null:F,bool:m,integer:r,double:s}[G];return $!==void 0?$(f):(0,t.assertNever)($)}else{if(f instanceof a.ArrayType)return v(f);if(f instanceof a.ClassType)return M(f);if(f instanceof a.MapType)return x(f);if(f instanceof a.ObjectType)return W(f);if(f instanceof a.EnumType)return S(f);if(f instanceof a.UnionType)return B(f)}return(0,t.panic)(`Unknown type ${f.kind}`)}st.matchTypeExhaustive=C;function I(f,E,b,F,m,r,s,T,v,M,x,W,S){function B(q){return(0,t.panic)(`Unsupported type ${q.kind} in non-exhaustive match`)}return C(f,B,E,b,F,m,r,s,T,v,M,B,x,W,S||B)}st.matchType=I;function A(f,E,b,F,m,r){function s(T){}return C(f,s,s,s,s,s,s,s,E,b,F,m,s,r,s)}return st.matchCompoundType=A,st}var Vn={},Wp;function Lk(){if(Wp)return Vn;Wp=1,Object.defineProperty(Vn,"__esModule",{value:!0}),Vn.GraphRewriteBuilder=Vn.GraphRemapBuilder=Vn.BaseGraphRewriteBuilder=Vn.TypeReconstituter=void 0;const e=et(),t=pt(),n=Xn(),a=At(),l=Qe(),d=ss();class u{constructor(O,R,_,L,g){this._typeBuilder=O,this._makeClassUnique=R,this._typeAttributes=_,this._forwardingRef=L,this._register=g,this._wasUsed=!1,this._typeRef=void 0}builderForNewType(){return(0,l.assert)(!this._wasUsed,"TypeReconstituter used more than once"),this._wasUsed=!0,this._typeBuilder}builderForSetting(){return(0,l.assert)(this._wasUsed&&this._typeRef!==void 0,"Can't set type members before constructing a type"),this._typeBuilder}getResult(){return this._typeRef===void 0?(0,l.panic)("Type was not reconstituted"):this._typeRef}register(O){(0,l.assert)(this._typeRef===void 0,"Cannot register a type twice"),this._typeRef=O,this._register(O)}registerAndAddAttributes(O){this._typeBuilder.addAttributes(O,this._typeAttributes),this.register(O)}lookup(O){if((0,l.assert)(!this._wasUsed,"Cannot lookup constituents after building type"),(0,n.isTypeRef)(O))return this._typeBuilder.lookupTypeRefs([O],void 0,!1);{const R=Array.from(O).map(_=>this._typeBuilder.lookupTypeRefs([_],void 0,!1));return R.some(_=>_===void 0)?void 0:R}}lookupMap(O){const R=this.lookup(O.values());if(R===void 0)return;(0,l.assert)(R.length===O.size,"Didn't get back the correct number of types");const _=new Map;let L=0;for(const g of O.keys())_.set(g,R[L]),L+=1;return _}reconstitute(O){return(0,l.assert)(this._wasUsed,"Cannot reconstitute constituents before building type"),(0,n.isTypeRef)(O)?this._typeBuilder.reconstituteTypeRef(O):Array.from(O).map(R=>this._typeBuilder.reconstituteTypeRef(R))}reconstituteMap(O){return(0,e.mapMap)(O,R=>this._typeBuilder.reconstituteTypeRef(R))}getPrimitiveType(O){this.register(this.builderForNewType().getPrimitiveType(O,this._typeAttributes,this._forwardingRef))}getEnumType(O){this.register(this.builderForNewType().getEnumType(this._typeAttributes,O,this._forwardingRef))}getUniqueMapType(){this.registerAndAddAttributes(this.builderForNewType().getUniqueMapType(this._forwardingRef))}getMapType(O){this.register(this.builderForNewType().getMapType(this._typeAttributes,O,this._forwardingRef))}getUniqueArrayType(){this.registerAndAddAttributes(this.builderForNewType().getUniqueArrayType(this._forwardingRef))}getArrayType(O){this.register(this.builderForNewType().getArrayType(this._typeAttributes,O,this._forwardingRef))}setArrayItems(O){this.builderForSetting().setArrayItems(this.getResult(),O)}makeClassProperty(O,R){return this._typeBuilder.makeClassProperty(O,R)}getObjectType(O,R){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,O,R,this._forwardingRef))}getUniqueObjectType(O,R){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,O,R,this._forwardingRef))}getClassType(O){if(this._makeClassUnique){this.getUniqueClassType(!1,O);return}this.register(this.builderForNewType().getClassType(this._typeAttributes,O,this._forwardingRef))}getUniqueClassType(O,R){this.register(this.builderForNewType().getUniqueClassType(this._typeAttributes,O,R,this._forwardingRef))}setObjectProperties(O,R){this.builderForSetting().setObjectProperties(this.getResult(),O,R)}getUnionType(O){this.register(this.builderForNewType().getUnionType(this._typeAttributes,O,this._forwardingRef))}getUniqueUnionType(){this.register(this.builderForNewType().getUniqueUnionType(this._typeAttributes,void 0,this._forwardingRef))}getIntersectionType(O){this.register(this.builderForNewType().getIntersectionType(this._typeAttributes,O,this._forwardingRef))}getUniqueIntersectionType(O){this.register(this.builderForNewType().getUniqueIntersectionType(this._typeAttributes,O,this._forwardingRef))}setSetOperationMembers(O){this.builderForSetting().setSetOperationMembers(this.getResult(),O)}}Vn.TypeReconstituter=u;class c extends d.TypeBuilder{constructor(O,R,_,L,g){super(O.serial+1,R,_,!1,!1,L),this.originalGraph=O,this.debugPrint=g,this.reconstitutedTypes=new Map,this._lostTypeAttributes=!1,this._printIndent=0}withForwardingRef(O,R){if(O!==void 0)return R(O);const _=this.reserveTypeRef(),L=R(_);return(0,l.assert)(L===_,"Type creator didn't return its forwarding ref"),L}reconstituteType(O,R,_){return this.reconstituteTypeRef(O.typeRef,R,_)}reconstituteTypeRef(O,R,_){const L=this.lookupTypeRefs([O],_);return L!==void 0?(R!==void 0&&this.addAttributes(L,R),L):this.forceReconstituteTypeRef(O,R,_)}reconstituteTypeAttributes(O){return(0,e.mapMap)(O,(R,_)=>_.reconstitute(this,R))}assertTypeRefsToReconstitute(O,R){(0,l.assert)(O.length>0,"Must have at least one type to reconstitute");for(const _ of O)(0,n.assertTypeRefGraph)(_,this.originalGraph);R!==void 0&&(0,n.assertTypeRefGraph)(R,this.typeGraph)}changeDebugPrintIndent(O){this._printIndent+=O}get debugPrintIndentation(){return(0,l.indentationString)(this._printIndent)}finish(){for(const[O,R]of this.originalGraph.topLevels)this.addTopLevel(O,this.reconstituteType(R));return super.finish()}setLostTypeAttributes(){this._lostTypeAttributes=!0}get lostTypeAttributes(){return this._lostTypeAttributes}}Vn.BaseGraphRewriteBuilder=c;class w extends c{constructor(O,R,_,L,g,y){super(O,R,_,L,y),this._map=g,this._attributeSources=new Map;for(const[h,p]of g){let k=this._attributeSources.get(p);k===void 0&&(k=[p],this._attributeSources.set(p,k)),k.push(h)}}makeIdentity(O){}getMapTarget(O){const R=this._map.get((0,n.derefTypeRef)(O,this.originalGraph));return R===void 0?O:((0,l.assert)(this._map.get(R)===void 0,"We have a type that's remapped to a remapped type"),R.typeRef)}addForwardingIntersection(O,R){return(0,l.panic)("We can't add forwarding intersections when we're removing forwarding intersections")}lookupTypeRefs(O,R){(0,l.assert)(R===void 0,"We can't have a forwarding ref when we remap"),this.assertTypeRefsToReconstitute(O,R);const _=this.reconstitutedTypes.get((0,n.typeRefIndex)(this.getMapTarget(O[0])));if(_!==void 0){for(let L=1;L<O.length;L++){const g=this.reconstitutedTypes.get((0,n.typeRefIndex)(this.getMapTarget(O[L])));if(_!==g)return}return _}}forceReconstituteTypeRef(O,R,_){O=this.getMapTarget(O);const L=(0,n.typeRefIndex)(O);return(0,l.assert)(this.reconstitutedTypes.get(L)===void 0,"Type has already been reconstituted"),(0,l.assert)(_===void 0,"We can't have a forwarding ref when we remap"),this.withForwardingRef(void 0,g=>{this.reconstitutedTypes.set(L,g),this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${L} as ${(0,n.typeRefIndex)(g)}`),this.changeDebugPrintIndent(1));const[y,h]=(0,n.typeAndAttributesForTypeRef)(O,this.originalGraph),p=this._attributeSources.get(y);R===void 0&&(R=a.emptyTypeAttributes),p===void 0?R=(0,a.combineTypeAttributes)("union",R,this.reconstituteTypeAttributes(h)):R=(0,a.combineTypeAttributes)("union",R,this.reconstituteTypeAttributes((0,t.combineTypeAttributesOfTypes)("union",p)));const k=R,D=new u(this,this.canonicalOrder,k,g,C=>{(0,l.assert)(C===g,"Reconstituted type as a different ref"),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${L} as ${(0,n.typeRefIndex)(C)}`))});return y.reconstitute(D,this.canonicalOrder),D.getResult()})}}Vn.GraphRemapBuilder=w;class U extends c{constructor(O,R,_,L,g,y,h){super(O,R,_,L,y),this._replacer=h,this._reconstitutedUnions=new e.EqualityMap,this._setsToReplaceByMember=new Map;for(const p of g){const k=new Set(p);for(const D of k){const C=D.index;(0,l.assert)(!this._setsToReplaceByMember.has(C),"A type is member of more than one set to be replaced"),this._setsToReplaceByMember.set(C,k)}}}registerUnion(O,R){const _=new Set(O);(0,l.assert)(!this._reconstitutedUnions.has(_),"Cannot register reconstituted set twice"),this._reconstitutedUnions.set(_,R)}replaceSet(O,R){return this.withForwardingRef(R,_=>{this.debugPrint&&(console.log(`${this.debugPrintIndentation}replacing set ${Array.from(O).map(g=>g.index.toString()).join(",")} as ${(0,n.typeRefIndex)(_)}`),this.changeDebugPrintIndent(1));for(const g of O){const y=g.typeRef,h=(0,n.typeRefIndex)(y);this.reconstitutedTypes.set(h,_),this._setsToReplaceByMember.delete(h)}const L=this._replacer(O,this,_);return(0,l.assert)(L===_,"The forwarding ref got lost when replacing"),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}replaced set ${Array.from(O).map(g=>g.index.toString()).join(",")} as ${(0,n.typeRefIndex)(_)}`)),L})}forceReconstituteTypeRef(O,R,_){const[L,g]=(0,n.typeAndAttributesForTypeRef)(O,this.originalGraph),y=(0,n.typeRefIndex)(O);this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${y}`),this.changeDebugPrintIndent(1)),R===void 0?R=this.reconstituteTypeAttributes(g):R=(0,a.combineTypeAttributes)("union",R,this.reconstituteTypeAttributes(g));const h=new u(this,this.canonicalOrder,R,_,p=>{this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${y} as ${(0,n.typeRefIndex)(p)}`)),_!==void 0&&(0,l.assert)(p===_,"We didn't pass the forwarding ref");const k=this.reconstitutedTypes.get(y);k===void 0?this.reconstitutedTypes.set(y,p):(0,l.assert)(p===k,"We reconstituted a type twice differently")});return L.reconstitute(h,this.canonicalOrder),h.getResult()}lookupTypeRefs(O,R,_=!0){this.assertTypeRefsToReconstitute(O,R);let L=this.reconstitutedTypes.get((0,n.typeRefIndex)(O[0]));if(L!==void 0&&L!==R){let y=!0;for(let h=1;h<O.length;h++)if(this.reconstitutedTypes.get((0,n.typeRefIndex)(O[h]))!==L){y=!1;break}if(y)return this.forwardIfNecessary(R,L)}if(L=this._reconstitutedUnions.get(new Set(O)),L!==void 0&&L!==R)return this.forwardIfNecessary(R,L);const g=this._setsToReplaceByMember.get((0,n.typeRefIndex)(O[0]));if(g!==void 0){for(let y=1;y<O.length;y++)if(this._setsToReplaceByMember.get((0,n.typeRefIndex)(O[y]))!==g)return;if(_)return this.replaceSet(g,R)}}}return Vn.GraphRewriteBuilder=U,Vn}var ks={},qp;function $g(){if(qp)return ks;qp=1,Object.defineProperty(ks,"__esModule",{value:!0}),ks.Graph=void 0;const e=et(),t=Qe();function n(P){if(P.length===0)return 0;let O=-1,R=0;for(const _ of P){(0,t.assert)(_.length>0,"Empty component not allowed");for(const L of _)(0,t.assert)(L>=0,"Negative vertex index is invalid"),O=Math.max(O,L),R+=1}return(0,t.assert)(O+1===R,"Vertex indexes and count don't match up"),R}function a(P){let O=0;const R=[],_=P.length,L=(0,t.repeated)(_,-1),g=(0,t.repeated)(_,-1),y=(0,t.repeated)(_,!1),h=[];function p(k){L[k]=O,g[k]=O,O+=1,R.push(k),y[k]=!0;for(const D of P[k])L[D]<0?(p(D),g[k]=Math.min(g[k],g[D])):y[D]&&(g[k]=Math.min(g[k],L[D]));if(g[k]===L[k]){const D=[];let C;do C=(0,t.defined)(R.pop()),y[C]=!1,D.push(C);while(C!==k);h.push(D)}}for(let k=0;k<_;k++)L[k]<0&&p(k);return(0,t.assert)(n(h)===_,"We didn't put all the nodes into SCCs"),h}function l(P,O){const R=O.length,_=P.length;(0,t.assert)(_===n(O),"Components don't match up with graph");const L=(0,t.repeated)(_,-1);for(let g=0;g<R;g++)for(const y of O[g])(0,t.assert)(L[y]<0,"We have a node that's in two components"),L[y]=g;return L}function d(P,O){const R=O.length,_=l(P,O),L=(0,t.repeated)(R,!1),g=[];for(let y=0;y<R;y++){const h=[];for(const p of O[y])for(const k of P[p]){const D=_[k];D===y||L[D]||(h.push(D),L[D]=!0)}for(const p of h)(0,t.assert)(L[p]),L[p]=!1;g.push(h)}return g}function u(P){const O=P.length,R=(0,t.repeatedCall)(O,()=>[]);for(let _=0;_<O;_++)for(const L of P[_])R[L].push(_);return R}function c(P){const O=P.length,R=(0,t.repeated)(O,0);for(const _ of P)for(const L of _)R[L]+=1;return R}function w(P){const O=P.length,R=c(P),_=[];for(let L=0;L<O;L++)R[L]===0&&_.push(L);return _}let U=class Yg{constructor(O,R,_){this._nodes=Array.from(O),this._indexByNode=new Map(this._nodes.map((g,y)=>[g,y]));let L;Array.isArray(_)?L=_:L=this._nodes.map(g=>Array.from(_(g)).map(y=>(0,t.defined)(this._indexByNode.get(y)))),R&&(L=u(L)),this._successors=L}get size(){return this._nodes.length}get nodes(){return this._nodes}findRoots(){const O=w(this._successors);return new Set(O.map(R=>this._nodes[R]))}dfsTraversal(O,R,_){const L=(0,t.repeated)(this.size,!1),g=y=>{if(!L[y]){L[y]=!0,R&&_(this._nodes[y]);for(const h of this._successors[y])g(h);R||_(this._nodes[y])}};g((0,t.defined)(this._indexByNode.get(O)))}stronglyConnectedComponents(){const O=a(this._successors),R=d(this._successors,O);return new Yg(O.map(_=>(0,e.setMap)(_,L=>this._nodes[L])),!1,R)}makeDot(O,R){const _=[];_.push("digraph G {"),_.push(" ordering = out;"),_.push("");for(let L=0;L<this.size;L++){const g=this._nodes[L];O(g)&&_.push(` node${L} [label="${R(g)}"];`)}for(let L=0;L<this.size;L++)if(O(this._nodes[L]))for(const g of this._successors[L])O(this._nodes[g])&&_.push(` node${L} -> node${g};`);return _.push("}"),_.push(""),_.join(`
140
+ `)}};return ks.Graph=U,ks}var Jp;function Xn(){if(Jp)return Tt;Jp=1,Object.defineProperty(Tt,"__esModule",{value:!0}),Tt.removeIndirectionIntersections=Tt.optionalToNullable=Tt.noneToAny=Tt.TypeGraph=Tt.TypeAttributeStoreView=Tt.TypeAttributeStore=Tt.typeAndAttributesForTypeRef=Tt.attributesForTypeRef=Tt.derefTypeRef=Tt.assertTypeRefGraph=Tt.typeRefIndex=Tt.makeTypeRef=Tt.isTypeRef=void 0;const e=et(),t=mt(),n=pt(),a=Qe(),l=ss(),d=Lk(),u=qi(),c=$g(),w=At(),U=yn(),P=26,O=(1<<P)-1,_=(1<<31-P)-1;function L(m){return typeof m=="number"}Tt.isTypeRef=L;function g(m,r){return(0,a.assert)(r<=O,"Too many types in graph"),(m.serial&_)<<P|r}Tt.makeTypeRef=g;function y(m){return m&O}Tt.typeRefIndex=y;function h(m,r){(0,a.assert)((m>>P&_)===(r.serial&_),"Mixing the wrong type reference and graph")}Tt.assertTypeRefGraph=h;function p(m){return m instanceof f?m:m.originalGraph}function k(m,r){const s=p(r);return h(m,s),s.typeAtIndex(y(m))}Tt.derefTypeRef=k;function D(m,r){const s=p(r);return h(m,s),s.atIndex(y(m))[1]}Tt.attributesForTypeRef=D;function C(m,r){const s=p(r);return h(m,s),s.atIndex(y(m))}Tt.typeAndAttributesForTypeRef=C;class I{constructor(r,s){this._typeGraph=r,this._values=s,this._topLevelValues=new Map}getTypeIndex(r){const s=r.typeRef;return h(s,this._typeGraph),y(s)}attributesForType(r){const s=this.getTypeIndex(r),T=this._values[s];return T!==void 0?T:w.emptyTypeAttributes}attributesForTopLevel(r){const s=this._topLevelValues.get(r);return s!==void 0?s:w.emptyTypeAttributes}setInMap(r,s,T){return new Map(r).set(s,T)}set(r,s,T){const v=this.getTypeIndex(s);for(;v>=this._values.length;)this._values.push(void 0);this._values[v]=this.setInMap(this.attributesForType(s),r,T)}setForTopLevel(r,s,T){this._topLevelValues.set(s,this.setInMap(this.attributesForTopLevel(s),r,T))}tryGetInMap(r,s){return r.get(s)}tryGet(r,s){return this.tryGetInMap(this.attributesForType(s),r)}tryGetForTopLevel(r,s){return this.tryGetInMap(this.attributesForTopLevel(s),r)}}Tt.TypeAttributeStore=I;class A{constructor(r,s){this._attributeStore=r,this._definition=s}set(r,s){this._attributeStore.set(this._definition,r,s)}setForTopLevel(r,s){this._attributeStore.setForTopLevel(this._definition,r,s)}tryGet(r){return this._attributeStore.tryGet(this._definition,r)}get(r){return(0,a.defined)(this.tryGet(r))}tryGetForTopLevel(r){return this._attributeStore.tryGetForTopLevel(this._definition,r)}getForTopLevel(r){return(0,a.defined)(this.tryGetForTopLevel(r))}}Tt.TypeAttributeStoreView=A;let f=class{constructor(r,s,T){this.serial=s,this._haveProvenanceAttributes=T,this._attributeStore=void 0,this._topLevels=new Map,this._parents=void 0,this._printOnRewrite=!1,this._typeBuilder=r}get isFrozen(){return this._typeBuilder===void 0}get attributeStore(){return(0,a.defined)(this._attributeStore)}freeze(r,s,T){(0,a.assert)(!this.isFrozen,"Tried to freeze TypeGraph a second time");for(const v of s)h(v.typeRef,this);this._attributeStore=new I(this,T),this._types=s,this._typeBuilder=void 0,this._topLevels=(0,e.mapMap)(r,v=>k(v,this))}get topLevels(){return(0,a.assert)(this.isFrozen,"Cannot get top-levels from a non-frozen graph"),this._topLevels}typeAtIndex(r){return this._typeBuilder!==void 0?this._typeBuilder.typeAtIndex(r):(0,a.defined)(this._types)[r]}atIndex(r){if(this._typeBuilder!==void 0)return this._typeBuilder.atIndex(r);const s=this.typeAtIndex(r);return[s,(0,a.defined)(this._attributeStore).attributesForType(s)]}filterTypes(r){const s=new Set;let T=[];function v(M){if(s.has(M))return;s.add(M),(r===void 0||r(M))&&T.push(M);for(const W of M.getChildren())v(W)}for(const[,M]of this.topLevels)v(M);return new Set(T)}allNamedTypes(){return this.filterTypes(n.isNamedType)}allNamedTypesSeparated(){const r=this.allNamedTypes();return(0,n.separateNamedTypes)(r)}allProvenance(){(0,a.assert)(this._haveProvenanceAttributes);const r=new A(this.attributeStore,l.provenanceTypeAttributeKind),s=Array.from(this.allTypesUnordered()).map(v=>{const M=r.tryGet(v);return M!==void 0?M:new Set}),T=new Set;return(0,e.setUnionManyInto)(T,s),T}setPrintOnRewrite(){this._printOnRewrite=!0}checkLostTypeAttributes(r,s){if(!this._haveProvenanceAttributes||r.lostTypeAttributes)return;const T=this.allProvenance(),v=s.allProvenance();if(T.size!==v.size){const M=(0,e.setSubtract)(T,v),x=Array.from(M);return(0,U.messageError)("IRTypeAttributesNotPropagated",{count:M.size,indexes:x})}}printRewrite(r){this._printOnRewrite&&console.log(`
141
+ # ${r}`)}rewrite(r,s,T,v,M,x,W=!1){if(this.printRewrite(r),!W&&v.length===0)return this;const S=new d.GraphRewriteBuilder(this,s,T,this._haveProvenanceAttributes,v,M,x),B=S.finish();return this.checkLostTypeAttributes(S,B),this._printOnRewrite&&(B.setPrintOnRewrite(),B.printGraph()),S.didAddForwardingIntersection?F(B,s,M):B}remap(r,s,T,v,M,x=!1){if(this.printRewrite(r),!x&&v.size===0)return this;const W=new d.GraphRemapBuilder(this,s,T,this._haveProvenanceAttributes,v,M),S=W.finish();return this.checkLostTypeAttributes(W,S),this._printOnRewrite&&(S.setPrintOnRewrite(),S.printGraph()),(0,a.assert)(!W.didAddForwardingIntersection),S}garbageCollect(r,s){return this.remap("GC",(0,l.getNoStringTypeMapping)(),r,new Map,s,!0)}rewriteFixedPoint(r,s){let T=this;for(;;){const v=this.rewrite("fixed-point",(0,l.getNoStringTypeMapping)(),r,[],s,a.mustNotHappen,!0);if(T.allTypesUnordered().size===v.allTypesUnordered().size)return T;T=v}}allTypesUnordered(){return(0,a.assert)(this.isFrozen,"Tried to get all graph types before it was frozen"),new Set((0,a.defined)(this._types))}makeGraph(r,s){return new c.Graph((0,a.defined)(this._types),r,s)}getParentsOfType(r){if(h(r.typeRef,this),this._parents===void 0){const s=(0,a.defined)(this._types).map(T=>new Set);for(const T of this.allTypesUnordered())for(const v of T.getChildren()){const M=v.index;s[M]=s[M].add(T)}this._parents=s}return this._parents[r.index]}printGraph(){const r=(0,a.defined)(this._types);for(let s=0;s<r.length;s++){const T=r[s],v=[];v.push(`${T.debugPrintKind}${T.hasNames?` ${T.getCombinedName()}`:""}`);const M=T.getChildren();M.size>0&&v.push(`children ${Array.from(M).map(x=>x.index).join(",")}`);for(const[x,W]of T.getAttributes()){const S=x.stringify(W);S!==void 0&&v.push(S)}console.log(`${s}: ${v.join(" | ")}`)}}};Tt.TypeGraph=f;function E(m,r,s){const T=(0,e.setFilter)(m.allTypesUnordered(),v=>v.kind==="none");return T.size===0?m:((0,a.assert)(T.size===1,"Cannot have more than one none type"),m.rewrite("none to any",r,!1,[Array.from(T)],s,(v,M,x)=>{const W=(0,n.combineTypeAttributesOfTypes)("union",v);return M.getPrimitiveType("any",W,x)}))}Tt.noneToAny=E;function b(m,r,s){function T(x,W,S){const B=(0,e.mapMap)(x.getProperties(),(q,G)=>{const $=q.type;let ee;if(!q.isOptional||$.isNullable)ee=W.reconstituteType($);else{const ue=W.getPrimitiveType("null");let se;$ instanceof t.UnionType?se=(0,e.setMap)($.members,ye=>W.reconstituteType(ye)).add(ue):se=new Set([W.reconstituteType($),ue]);const ie=u.namesTypeAttributeKind.setDefaultInAttributes($.getAttributes(),()=>u.TypeNames.make(new Set([G]),new Set,!0));ee=W.getUnionType(ie,se)}return W.makeClassProperty(ee,q.isOptional)});return x.isFixed?W.getUniqueClassType(x.getAttributes(),!0,B,S):W.getClassType(x.getAttributes(),B,S)}const v=(0,e.setFilter)(m.allTypesUnordered(),x=>x instanceof t.ClassType&&(0,e.mapSome)(x.getProperties(),W=>W.isOptional)),M=Array.from(v).map(x=>[x]);return v.size===0?m:m.rewrite("optional to nullable",r,!1,M,s,(x,W,S)=>{(0,a.assert)(x.size===1);const B=(0,a.defined)((0,e.iterableFirst)(x));return T(B,W,S)})}Tt.optionalToNullable=b;function F(m,r,s){const T=[];for(const v of m.allTypesUnordered()){if(!(v instanceof t.IntersectionType))continue;const M=new Set([v]);let x=v;for(;x.members.size===1;){const W=(0,a.defined)((0,e.iterableFirst)(x.members));if(!(W instanceof t.IntersectionType)){T.push([v,W]);break}if(M.has(W))return(0,a.panic)("There's a cycle of intersection types");M.add(W),x=W}}return m.remap("remove indirection intersections",r,!1,new Map(T),s)}return Tt.removeIndirectionIntersections=F,Tt}var oa={},Sa={exports:{}},Js={exports:{}};/*! https://mths.be/punycode v1.4.0 by @mathias */var _k=Js.exports,Gp;function kk(){return Gp||(Gp=1,function(e,t){(function(n){var a=t&&!t.nodeType&&t,l=!e.nodeType&&e,d=typeof Gr=="object"&&Gr;(d.global===d||d.window===d||d.self===d)&&(n=d);var u,c=2147483647,w=36,U=1,P=26,O=38,R=700,_=72,L=128,g="-",y=/^xn--/,h=/[^\x20-\x7E]/,p=/[\x2E\u3002\uFF0E\uFF61]/g,k={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},D=w-U,C=Math.floor,I=String.fromCharCode,A;function f(S){throw new RangeError(k[S])}function E(S,B){for(var q=S.length,G=[];q--;)G[q]=B(S[q]);return G}function b(S,B){var q=S.split("@"),G="";q.length>1&&(G=q[0]+"@",S=q[1]),S=S.replace(p,".");var $=S.split("."),ee=E($,B).join(".");return G+ee}function F(S){for(var B=[],q=0,G=S.length,$,ee;q<G;)$=S.charCodeAt(q++),$>=55296&&$<=56319&&q<G?(ee=S.charCodeAt(q++),(ee&64512)==56320?B.push((($&1023)<<10)+(ee&1023)+65536):(B.push($),q--)):B.push($);return B}function m(S){return E(S,function(B){var q="";return B>65535&&(B-=65536,q+=I(B>>>10&1023|55296),B=56320|B&1023),q+=I(B),q}).join("")}function r(S){return S-48<10?S-22:S-65<26?S-65:S-97<26?S-97:w}function s(S,B){return S+22+75*(S<26)-((B!=0)<<5)}function T(S,B,q){var G=0;for(S=q?C(S/R):S>>1,S+=C(S/B);S>D*P>>1;G+=w)S=C(S/D);return C(G+(D+1)*S/(S+O))}function v(S){var B=[],q=S.length,G,$=0,ee=L,ue=_,se,ie,ye,be,Ae,pe,le,me,de;for(se=S.lastIndexOf(g),se<0&&(se=0),ie=0;ie<se;++ie)S.charCodeAt(ie)>=128&&f("not-basic"),B.push(S.charCodeAt(ie));for(ye=se>0?se+1:0;ye<q;){for(be=$,Ae=1,pe=w;ye>=q&&f("invalid-input"),le=r(S.charCodeAt(ye++)),(le>=w||le>C((c-$)/Ae))&&f("overflow"),$+=le*Ae,me=pe<=ue?U:pe>=ue+P?P:pe-ue,!(le<me);pe+=w)de=w-me,Ae>C(c/de)&&f("overflow"),Ae*=de;G=B.length+1,ue=T($-be,G,be==0),C($/G)>c-ee&&f("overflow"),ee+=C($/G),$%=G,B.splice($++,0,ee)}return m(B)}function M(S){var B,q,G,$,ee,ue,se,ie,ye,be,Ae,pe=[],le,me,de,Q;for(S=F(S),le=S.length,B=L,q=0,ee=_,ue=0;ue<le;++ue)Ae=S[ue],Ae<128&&pe.push(I(Ae));for(G=$=pe.length,$&&pe.push(g);G<le;){for(se=c,ue=0;ue<le;++ue)Ae=S[ue],Ae>=B&&Ae<se&&(se=Ae);for(me=G+1,se-B>C((c-q)/me)&&f("overflow"),q+=(se-B)*me,B=se,ue=0;ue<le;++ue)if(Ae=S[ue],Ae<B&&++q>c&&f("overflow"),Ae==B){for(ie=q,ye=w;be=ye<=ee?U:ye>=ee+P?P:ye-ee,!(ie<be);ye+=w)Q=ie-be,de=w-be,pe.push(I(s(be+Q%de,0))),ie=C(Q/de);pe.push(I(s(ie,0))),ee=T(q,me,G==$),q=0,++G}++q,++B}return pe.join("")}function x(S){return b(S,function(B){return y.test(B)?v(B.slice(4).toLowerCase()):B})}function W(S){return b(S,function(B){return h.test(B)?"xn--"+M(B):B})}if(u={version:"1.3.2",ucs2:{decode:F,encode:m},decode:v,encode:M,toASCII:W,toUnicode:x},a&&l)if(e.exports==a)l.exports=u;else for(A in u)u.hasOwnProperty(A)&&(a[A]=u[A]);else n.punycode=u})(_k)}(Js,Js.exports)),Js.exports}var wa={exports:{}};/*!
142
+ * URI.js - Mutating URLs
143
+ * IPv6 Support
144
+ *
145
+ * Version: 1.19.11
146
+ *
147
+ * Author: Rodney Rehm
148
+ * Web: http://medialize.github.io/URI.js/
149
+ *
150
+ * Licensed under
151
+ * MIT License http://www.opensource.org/licenses/mit-license
152
+ *
153
+ */var Nk=wa.exports,Hp;function Ok(){return Hp||(Hp=1,function(e){(function(t,n){e.exports?e.exports=n():t.IPv6=n(t)})(Nk,function(t){var n=t&&t.IPv6;function a(d){var u=d.toLowerCase(),c=u.split(":"),w=c.length,U=8;c[0]===""&&c[1]===""&&c[2]===""?(c.shift(),c.shift()):c[0]===""&&c[1]===""?c.shift():c[w-1]===""&&c[w-2]===""&&c.pop(),w=c.length,c[w-1].indexOf(".")!==-1&&(U=7);var P;for(P=0;P<w&&c[P]!=="";P++);if(P<U)for(c.splice(P,1,"0000");c.length<U;)c.splice(P,0,"0000");for(var O,R=0;R<U;R++){O=c[R].split("");for(var _=0;_<3&&(O[0]==="0"&&O.length>1);_++)O.splice(0,1);c[R]=O.join("")}var L=-1,g=0,y=0,h=-1,p=!1;for(R=0;R<U;R++)p?c[R]==="0"?y+=1:(p=!1,y>g&&(L=h,g=y)):c[R]==="0"&&(p=!0,h=R,y=1);y>g&&(L=h,g=y),g>1&&c.splice(L,g,""),w=c.length;var k="";for(c[0]===""&&(k=":"),R=0;R<w&&(k+=c[R],R!==w-1);R++)k+=":";return c[w-1]===""&&(k+=":"),k}function l(){return t.IPv6===this&&(t.IPv6=n),this}return{best:a,noConflict:l}})}(wa)),wa.exports}var La={exports:{}};/*!
154
+ * URI.js - Mutating URLs
155
+ * Second Level Domain (SLD) Support
156
+ *
157
+ * Version: 1.19.11
158
+ *
159
+ * Author: Rodney Rehm
160
+ * Web: http://medialize.github.io/URI.js/
161
+ *
162
+ * Licensed under
163
+ * MIT License http://www.opensource.org/licenses/mit-license
164
+ *
165
+ */var Ck=La.exports,Kp;function Ek(){return Kp||(Kp=1,function(e){(function(t,n){e.exports?e.exports=n():t.SecondLevelDomains=n(t)})(Ck,function(t){var n=t&&t.SecondLevelDomains,a={list:{ac:" com gov mil net org ",ae:" ac co gov mil name net org pro sch ",af:" com edu gov net org ",al:" com edu gov mil net org ",ao:" co ed gv it og pb ",ar:" com edu gob gov int mil net org tur ",at:" ac co gv or ",au:" asn com csiro edu gov id net org ",ba:" co com edu gov mil net org rs unbi unmo unsa untz unze ",bb:" biz co com edu gov info net org store tv ",bh:" biz cc com edu gov info net org ",bn:" com edu gov net org ",bo:" com edu gob gov int mil net org tv ",br:" adm adv agr am arq art ato b bio blog bmd cim cng cnt com coop ecn edu eng esp etc eti far flog fm fnd fot fst g12 ggf gov imb ind inf jor jus lel mat med mil mus net nom not ntr odo org ppg pro psc psi qsl rec slg srv tmp trd tur tv vet vlog wiki zlg ",bs:" com edu gov net org ",bz:" du et om ov rg ",ca:" ab bc mb nb nf nl ns nt nu on pe qc sk yk ",ck:" biz co edu gen gov info net org ",cn:" ac ah bj com cq edu fj gd gov gs gx gz ha hb he hi hl hn jl js jx ln mil net nm nx org qh sc sd sh sn sx tj tw xj xz yn zj ",co:" com edu gov mil net nom org ",cr:" ac c co ed fi go or sa ",cy:" ac biz com ekloges gov ltd name net org parliament press pro tm ",do:" art com edu gob gov mil net org sld web ",dz:" art asso com edu gov net org pol ",ec:" com edu fin gov info med mil net org pro ",eg:" com edu eun gov mil name net org sci ",er:" com edu gov ind mil net org rochest w ",es:" com edu gob nom org ",et:" biz com edu gov info name net org ",fj:" ac biz com info mil name net org pro ",fk:" ac co gov net nom org ",fr:" asso com f gouv nom prd presse tm ",gg:" co net org ",gh:" com edu gov mil org ",gn:" ac com gov net org ",gr:" com edu gov mil net org ",gt:" com edu gob ind mil net org ",gu:" com edu gov net org ",hk:" com edu gov idv net org ",hu:" 2000 agrar bolt casino city co erotica erotika film forum games hotel info ingatlan jogasz konyvelo lakas media news org priv reklam sex shop sport suli szex tm tozsde utazas video ",id:" ac co go mil net or sch web ",il:" ac co gov idf k12 muni net org ",in:" ac co edu ernet firm gen gov i ind mil net nic org res ",iq:" com edu gov i mil net org ",ir:" ac co dnssec gov i id net org sch ",it:" edu gov ",je:" co net org ",jo:" com edu gov mil name net org sch ",jp:" ac ad co ed go gr lg ne or ",ke:" ac co go info me mobi ne or sc ",kh:" com edu gov mil net org per ",ki:" biz com de edu gov info mob net org tel ",km:" asso com coop edu gouv k medecin mil nom notaires pharmaciens presse tm veterinaire ",kn:" edu gov net org ",kr:" ac busan chungbuk chungnam co daegu daejeon es gangwon go gwangju gyeongbuk gyeonggi gyeongnam hs incheon jeju jeonbuk jeonnam k kg mil ms ne or pe re sc seoul ulsan ",kw:" com edu gov net org ",ky:" com edu gov net org ",kz:" com edu gov mil net org ",lb:" com edu gov net org ",lk:" assn com edu gov grp hotel int ltd net ngo org sch soc web ",lr:" com edu gov net org ",lv:" asn com conf edu gov id mil net org ",ly:" com edu gov id med net org plc sch ",ma:" ac co gov m net org press ",mc:" asso tm ",me:" ac co edu gov its net org priv ",mg:" com edu gov mil nom org prd tm ",mk:" com edu gov inf name net org pro ",ml:" com edu gov net org presse ",mn:" edu gov org ",mo:" com edu gov net org ",mt:" com edu gov net org ",mv:" aero biz com coop edu gov info int mil museum name net org pro ",mw:" ac co com coop edu gov int museum net org ",mx:" com edu gob net org ",my:" com edu gov mil name net org sch ",nf:" arts com firm info net other per rec store web ",ng:" biz com edu gov mil mobi name net org sch ",ni:" ac co com edu gob mil net nom org ",np:" com edu gov mil net org ",nr:" biz com edu gov info net org ",om:" ac biz co com edu gov med mil museum net org pro sch ",pe:" com edu gob mil net nom org sld ",ph:" com edu gov i mil net ngo org ",pk:" biz com edu fam gob gok gon gop gos gov net org web ",pl:" art bialystok biz com edu gda gdansk gorzow gov info katowice krakow lodz lublin mil net ngo olsztyn org poznan pwr radom slupsk szczecin torun warszawa waw wroc wroclaw zgora ",pr:" ac biz com edu est gov info isla name net org pro prof ",ps:" com edu gov net org plo sec ",pw:" belau co ed go ne or ",ro:" arts com firm info nom nt org rec store tm www ",rs:" ac co edu gov in org ",sb:" com edu gov net org ",sc:" com edu gov net org ",sh:" co com edu gov net nom org ",sl:" com edu gov net org ",st:" co com consulado edu embaixada gov mil net org principe saotome store ",sv:" com edu gob org red ",sz:" ac co org ",tr:" av bbs bel biz com dr edu gen gov info k12 name net org pol tel tsk tv web ",tt:" aero biz cat co com coop edu gov info int jobs mil mobi museum name net org pro tel travel ",tw:" club com ebiz edu game gov idv mil net org ",mu:" ac co com gov net or org ",mz:" ac co edu gov org ",na:" co com ",nz:" ac co cri geek gen govt health iwi maori mil net org parliament school ",pa:" abo ac com edu gob ing med net nom org sld ",pt:" com edu gov int net nome org publ ",py:" com edu gov mil net org ",qa:" com edu gov mil net org ",re:" asso com nom ",ru:" ac adygeya altai amur arkhangelsk astrakhan bashkiria belgorod bir bryansk buryatia cbg chel chelyabinsk chita chukotka chuvashia com dagestan e-burg edu gov grozny int irkutsk ivanovo izhevsk jar joshkar-ola kalmykia kaluga kamchatka karelia kazan kchr kemerovo khabarovsk khakassia khv kirov koenig komi kostroma kranoyarsk kuban kurgan kursk lipetsk magadan mari mari-el marine mil mordovia mosreg msk murmansk nalchik net nnov nov novosibirsk nsk omsk orenburg org oryol penza perm pp pskov ptz rnd ryazan sakhalin samara saratov simbirsk smolensk spb stavropol stv surgut tambov tatarstan tom tomsk tsaritsyn tsk tula tuva tver tyumen udm udmurtia ulan-ude vladikavkaz vladimir vladivostok volgograd vologda voronezh vrn vyatka yakutia yamal yekaterinburg yuzhno-sakhalinsk ",rw:" ac co com edu gouv gov int mil net ",sa:" com edu gov med net org pub sch ",sd:" com edu gov info med net org tv ",se:" a ac b bd c d e f g h i k l m n o org p parti pp press r s t tm u w x y z ",sg:" com edu gov idn net org per ",sn:" art com edu gouv org perso univ ",sy:" com edu gov mil net news org ",th:" ac co go in mi net or ",tj:" ac biz co com edu go gov info int mil name net nic org test web ",tn:" agrinet com defense edunet ens fin gov ind info intl mincom nat net org perso rnrt rns rnu tourism ",tz:" ac co go ne or ",ua:" biz cherkassy chernigov chernovtsy ck cn co com crimea cv dn dnepropetrovsk donetsk dp edu gov if in ivano-frankivsk kh kharkov kherson khmelnitskiy kiev kirovograd km kr ks kv lg lugansk lutsk lviv me mk net nikolaev od odessa org pl poltava pp rovno rv sebastopol sumy te ternopil uzhgorod vinnica vn zaporizhzhe zhitomir zp zt ",ug:" ac co go ne or org sc ",uk:" ac bl british-library co cym gov govt icnet jet lea ltd me mil mod national-library-scotland nel net nhs nic nls org orgn parliament plc police sch scot soc ",us:" dni fed isa kids nsn ",uy:" com edu gub mil net org ",ve:" co com edu gob info mil net org web ",vi:" co com k12 net org ",vn:" ac biz com edu gov health info int name net org pro ",ye:" co com gov ltd me net org plc ",yu:" ac co edu gov org ",za:" ac agric alt bourse city co cybernet db edu gov grondar iaccess imt inca landesign law mil net ngo nis nom olivetti org pix school tm web ",zm:" ac co com edu gov net org sch ",com:"ar br cn de eu gb gr hu jpn kr no qc ru sa se uk us uy za ",net:"gb jp se uk ",org:"ae",de:"com "},has:function(l){var d=l.lastIndexOf(".");if(d<=0||d>=l.length-1)return!1;var u=l.lastIndexOf(".",d-1);if(u<=0||u>=d-1)return!1;var c=a.list[l.slice(d+1)];return c?c.indexOf(" "+l.slice(u+1,d)+" ")>=0:!1},is:function(l){var d=l.lastIndexOf(".");if(d<=0||d>=l.length-1)return!1;var u=l.lastIndexOf(".",d-1);if(u>=0)return!1;var c=a.list[l.slice(d+1)];return c?c.indexOf(" "+l.slice(0,d)+" ")>=0:!1},get:function(l){var d=l.lastIndexOf(".");if(d<=0||d>=l.length-1)return null;var u=l.lastIndexOf(".",d-1);if(u<=0||u>=d-1)return null;var c=a.list[l.slice(d+1)];return!c||c.indexOf(" "+l.slice(u+1,d)+" ")<0?null:l.slice(u+1)},noConflict:function(){return t.SecondLevelDomains===this&&(t.SecondLevelDomains=n),this}};return a})}(La)),La.exports}/*!
166
+ * URI.js - Mutating URLs
167
+ *
168
+ * Version: 1.19.11
169
+ *
170
+ * Author: Rodney Rehm
171
+ * Web: http://medialize.github.io/URI.js/
172
+ *
173
+ * Licensed under
174
+ * MIT License http://www.opensource.org/licenses/mit-license
175
+ *
176
+ */var Ak=Sa.exports,Vp;function eb(){return Vp||(Vp=1,function(e){(function(t,n){e.exports?e.exports=n(kk(),Ok(),Ek()):t.URI=n(t.punycode,t.IPv6,t.SecondLevelDomains,t)})(Ak,function(t,n,a,l){var d=l&&l.URI;function u(r,s){var T=arguments.length>=1,v=arguments.length>=2;if(!(this instanceof u))return T?v?new u(r,s):new u(r):new u;if(r===void 0){if(T)throw new TypeError("undefined is not a valid argument for URI");typeof location<"u"?r=location.href+"":r=""}if(r===null&&T)throw new TypeError("null is not a valid argument for URI");return this.href(r),s!==void 0?this.absoluteTo(s):this}function c(r){return/^[0-9]+$/.test(r)}u.version="1.19.11";var w=u.prototype,U=Object.prototype.hasOwnProperty;function P(r){return r.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}function O(r){return r===void 0?"Undefined":String(Object.prototype.toString.call(r)).slice(8,-1)}function R(r){return O(r)==="Array"}function _(r,s){var T={},v,M;if(O(s)==="RegExp")T=null;else if(R(s))for(v=0,M=s.length;v<M;v++)T[s[v]]=!0;else T[s]=!0;for(v=0,M=r.length;v<M;v++){var x=T&&T[r[v]]!==void 0||!T&&s.test(r[v]);x&&(r.splice(v,1),M--,v--)}return r}function L(r,s){var T,v;if(R(s)){for(T=0,v=s.length;T<v;T++)if(!L(r,s[T]))return!1;return!0}var M=O(s);for(T=0,v=r.length;T<v;T++)if(M==="RegExp"){if(typeof r[T]=="string"&&r[T].match(s))return!0}else if(r[T]===s)return!0;return!1}function g(r,s){if(!R(r)||!R(s)||r.length!==s.length)return!1;r.sort(),s.sort();for(var T=0,v=r.length;T<v;T++)if(r[T]!==s[T])return!1;return!0}function y(r){var s=/^\/+|\/+$/g;return r.replace(s,"")}u._parts=function(){return{protocol:null,username:null,password:null,hostname:null,urn:null,port:null,path:null,query:null,fragment:null,preventInvalidHostname:u.preventInvalidHostname,duplicateQueryParameters:u.duplicateQueryParameters,escapeQuerySpace:u.escapeQuerySpace}},u.preventInvalidHostname=!1,u.duplicateQueryParameters=!1,u.escapeQuerySpace=!0,u.protocol_expression=/^[a-z][a-z0-9.+-]*$/i,u.idn_expression=/[^a-z0-9\._-]/i,u.punycode_expression=/(xn--)/i,u.ip4_expression=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,u.ip6_expression=/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/,u.find_uri_expression=/\b((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/ig,u.findUri={start:/\b(?:([a-z][a-z0-9.+-]*:\/\/)|www\.)/gi,end:/[\s\r\n]|$/,trim:/[`!()\[\]{};:'".,<>?«»“”„‘’]+$/,parens:/(\([^\)]*\)|\[[^\]]*\]|\{[^}]*\}|<[^>]*>)/g},u.leading_whitespace_expression=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,u.ascii_tab_whitespace=/[\u0009\u000A\u000D]+/g,u.defaultPorts={http:"80",https:"443",ftp:"21",gopher:"70",ws:"80",wss:"443"},u.hostProtocols=["http","https"],u.invalid_hostname_characters=/[^a-zA-Z0-9\.\-:_]/,u.domAttributes={a:"href",blockquote:"cite",link:"href",base:"href",script:"src",form:"action",img:"src",area:"href",iframe:"src",embed:"src",source:"src",track:"src",input:"src",audio:"src",video:"src"},u.getDomAttribute=function(r){if(!(!r||!r.nodeName)){var s=r.nodeName.toLowerCase();if(!(s==="input"&&r.type!=="image"))return u.domAttributes[s]}};function h(r){return escape(r)}function p(r){return encodeURIComponent(r).replace(/[!'()*]/g,h).replace(/\*/g,"%2A")}u.encode=p,u.decode=decodeURIComponent,u.iso8859=function(){u.encode=escape,u.decode=unescape},u.unicode=function(){u.encode=p,u.decode=decodeURIComponent},u.characters={pathname:{encode:{expression:/%(24|26|2B|2C|3B|3D|3A|40)/ig,map:{"%24":"$","%26":"&","%2B":"+","%2C":",","%3B":";","%3D":"=","%3A":":","%40":"@"}},decode:{expression:/[\/\?#]/g,map:{"/":"%2F","?":"%3F","#":"%23"}}},reserved:{encode:{expression:/%(21|23|24|26|27|28|29|2A|2B|2C|2F|3A|3B|3D|3F|40|5B|5D)/ig,map:{"%3A":":","%2F":"/","%3F":"?","%23":"#","%5B":"[","%5D":"]","%40":"@","%21":"!","%24":"$","%26":"&","%27":"'","%28":"(","%29":")","%2A":"*","%2B":"+","%2C":",","%3B":";","%3D":"="}}},urnpath:{encode:{expression:/%(21|24|27|28|29|2A|2B|2C|3B|3D|40)/ig,map:{"%21":"!","%24":"$","%27":"'","%28":"(","%29":")","%2A":"*","%2B":"+","%2C":",","%3B":";","%3D":"=","%40":"@"}},decode:{expression:/[\/\?#:]/g,map:{"/":"%2F","?":"%3F","#":"%23",":":"%3A"}}}},u.encodeQuery=function(r,s){var T=u.encode(r+"");return s===void 0&&(s=u.escapeQuerySpace),s?T.replace(/%20/g,"+"):T},u.decodeQuery=function(r,s){r+="",s===void 0&&(s=u.escapeQuerySpace);try{return u.decode(s?r.replace(/\+/g,"%20"):r)}catch{return r}};var k={encode:"encode",decode:"decode"},D,C=function(r,s){return function(T){try{return u[s](T+"").replace(u.characters[r][s].expression,function(v){return u.characters[r][s].map[v]})}catch{return T}}};for(D in k)u[D+"PathSegment"]=C("pathname",k[D]),u[D+"UrnPathSegment"]=C("urnpath",k[D]);var I=function(r,s,T){return function(v){var M;T?M=function(B){return u[s](u[T](B))}:M=u[s];for(var x=(v+"").split(r),W=0,S=x.length;W<S;W++)x[W]=M(x[W]);return x.join(r)}};u.decodePath=I("/","decodePathSegment"),u.decodeUrnPath=I(":","decodeUrnPathSegment"),u.recodePath=I("/","encodePathSegment","decode"),u.recodeUrnPath=I(":","encodeUrnPathSegment","decode"),u.encodeReserved=C("reserved","encode"),u.parse=function(r,s){var T;return s||(s={preventInvalidHostname:u.preventInvalidHostname}),r=r.replace(u.leading_whitespace_expression,""),r=r.replace(u.ascii_tab_whitespace,""),T=r.indexOf("#"),T>-1&&(s.fragment=r.substring(T+1)||null,r=r.substring(0,T)),T=r.indexOf("?"),T>-1&&(s.query=r.substring(T+1)||null,r=r.substring(0,T)),r=r.replace(/^(https?|ftp|wss?)?:+[/\\]*/i,"$1://"),r=r.replace(/^[/\\]{2,}/i,"//"),r.substring(0,2)==="//"?(s.protocol=null,r=r.substring(2),r=u.parseAuthority(r,s)):(T=r.indexOf(":"),T>-1&&(s.protocol=r.substring(0,T)||null,s.protocol&&!s.protocol.match(u.protocol_expression)?s.protocol=void 0:r.substring(T+1,T+3).replace(/\\/g,"/")==="//"?(r=r.substring(T+3),r=u.parseAuthority(r,s)):(r=r.substring(T+1),s.urn=!0))),s.path=r,s},u.parseHost=function(r,s){r||(r=""),r=r.replace(/\\/g,"/");var T=r.indexOf("/"),v,M;if(T===-1&&(T=r.length),r.charAt(0)==="[")v=r.indexOf("]"),s.hostname=r.substring(1,v)||null,s.port=r.substring(v+2,T)||null,s.port==="/"&&(s.port=null);else{var x=r.indexOf(":"),W=r.indexOf("/"),S=r.indexOf(":",x+1);S!==-1&&(W===-1||S<W)?(s.hostname=r.substring(0,T)||null,s.port=null):(M=r.substring(0,T).split(":"),s.hostname=M[0]||null,s.port=M[1]||null)}return s.hostname&&r.substring(T).charAt(0)!=="/"&&(T++,r="/"+r),s.preventInvalidHostname&&u.ensureValidHostname(s.hostname,s.protocol),s.port&&u.ensureValidPort(s.port),r.substring(T)||"/"},u.parseAuthority=function(r,s){return r=u.parseUserinfo(r,s),u.parseHost(r,s)},u.parseUserinfo=function(r,s){var T=r,v=r.indexOf("\\");v!==-1&&(r=r.replace(/\\/g,"/"));var M=r.indexOf("/"),x=r.lastIndexOf("@",M>-1?M:r.length-1),W;return x>-1&&(M===-1||x<M)?(W=r.substring(0,x).split(":"),s.username=W[0]?u.decode(W[0]):null,W.shift(),s.password=W[0]?u.decode(W.join(":")):null,r=T.substring(x+1)):(s.username=null,s.password=null),r},u.parseQuery=function(r,s){if(!r)return{};if(r=r.replace(/&+/g,"&").replace(/^\?*&*|&+$/g,""),!r)return{};for(var T={},v=r.split("&"),M=v.length,x,W,S,B=0;B<M;B++)x=v[B].split("="),W=u.decodeQuery(x.shift(),s),S=x.length?u.decodeQuery(x.join("="),s):null,W!=="__proto__"&&(U.call(T,W)?((typeof T[W]=="string"||T[W]===null)&&(T[W]=[T[W]]),T[W].push(S)):T[W]=S);return T},u.build=function(r){var s="",T=!1;return r.protocol&&(s+=r.protocol+":"),!r.urn&&(s||r.hostname)&&(s+="//",T=!0),s+=u.buildAuthority(r)||"",typeof r.path=="string"&&(r.path.charAt(0)!=="/"&&T&&(s+="/"),s+=r.path),typeof r.query=="string"&&r.query&&(s+="?"+r.query),typeof r.fragment=="string"&&r.fragment&&(s+="#"+r.fragment),s},u.buildHost=function(r){var s="";if(r.hostname)u.ip6_expression.test(r.hostname)?s+="["+r.hostname+"]":s+=r.hostname;else return"";return r.port&&(s+=":"+r.port),s},u.buildAuthority=function(r){return u.buildUserinfo(r)+u.buildHost(r)},u.buildUserinfo=function(r){var s="";return r.username&&(s+=u.encode(r.username)),r.password&&(s+=":"+u.encode(r.password)),s&&(s+="@"),s},u.buildQuery=function(r,s,T){var v="",M,x,W,S;for(x in r)if(x!=="__proto__"&&U.call(r,x))if(R(r[x]))for(M={},W=0,S=r[x].length;W<S;W++)r[x][W]!==void 0&&M[r[x][W]+""]===void 0&&(v+="&"+u.buildQueryParameter(x,r[x][W],T),s!==!0&&(M[r[x][W]+""]=!0));else r[x]!==void 0&&(v+="&"+u.buildQueryParameter(x,r[x],T));return v.substring(1)},u.buildQueryParameter=function(r,s,T){return u.encodeQuery(r,T)+(s!==null?"="+u.encodeQuery(s,T):"")},u.addQuery=function(r,s,T){if(typeof s=="object")for(var v in s)U.call(s,v)&&u.addQuery(r,v,s[v]);else if(typeof s=="string"){if(r[s]===void 0){r[s]=T;return}else typeof r[s]=="string"&&(r[s]=[r[s]]);R(T)||(T=[T]),r[s]=(r[s]||[]).concat(T)}else throw new TypeError("URI.addQuery() accepts an object, string as the name parameter")},u.setQuery=function(r,s,T){if(typeof s=="object")for(var v in s)U.call(s,v)&&u.setQuery(r,v,s[v]);else if(typeof s=="string")r[s]=T===void 0?null:T;else throw new TypeError("URI.setQuery() accepts an object, string as the name parameter")},u.removeQuery=function(r,s,T){var v,M,x;if(R(s))for(v=0,M=s.length;v<M;v++)r[s[v]]=void 0;else if(O(s)==="RegExp")for(x in r)s.test(x)&&(r[x]=void 0);else if(typeof s=="object")for(x in s)U.call(s,x)&&u.removeQuery(r,x,s[x]);else if(typeof s=="string")T!==void 0?O(T)==="RegExp"?!R(r[s])&&T.test(r[s])?r[s]=void 0:r[s]=_(r[s],T):r[s]===String(T)&&(!R(T)||T.length===1)?r[s]=void 0:R(r[s])&&(r[s]=_(r[s],T)):r[s]=void 0;else throw new TypeError("URI.removeQuery() accepts an object, string, RegExp as the first parameter")},u.hasQuery=function(r,s,T,v){switch(O(s)){case"String":break;case"RegExp":for(var M in r)if(U.call(r,M)&&s.test(M)&&(T===void 0||u.hasQuery(r,M,T)))return!0;return!1;case"Object":for(var x in s)if(U.call(s,x)&&!u.hasQuery(r,x,s[x]))return!1;return!0;default:throw new TypeError("URI.hasQuery() accepts a string, regular expression or object as the name parameter")}switch(O(T)){case"Undefined":return s in r;case"Boolean":var W=!!(R(r[s])?r[s].length:r[s]);return T===W;case"Function":return!!T(r[s],s,r);case"Array":if(!R(r[s]))return!1;var S=v?L:g;return S(r[s],T);case"RegExp":return R(r[s])?v?L(r[s],T):!1:!!(r[s]&&r[s].match(T));case"Number":T=String(T);case"String":return R(r[s])?v?L(r[s],T):!1:r[s]===T;default:throw new TypeError("URI.hasQuery() accepts undefined, boolean, string, number, RegExp, Function as the value parameter")}},u.joinPaths=function(){for(var r=[],s=[],T=0,v=0;v<arguments.length;v++){var M=new u(arguments[v]);r.push(M);for(var x=M.segment(),W=0;W<x.length;W++)typeof x[W]=="string"&&s.push(x[W]),x[W]&&T++}if(!s.length||!T)return new u("");var S=new u("").segment(s);return(r[0].path()===""||r[0].path().slice(0,1)==="/")&&S.path("/"+S.path()),S.normalize()},u.commonPath=function(r,s){var T=Math.min(r.length,s.length),v;for(v=0;v<T;v++)if(r.charAt(v)!==s.charAt(v)){v--;break}return v<1?r.charAt(0)===s.charAt(0)&&r.charAt(0)==="/"?"/":"":((r.charAt(v)!=="/"||s.charAt(v)!=="/")&&(v=r.substring(0,v).lastIndexOf("/")),r.substring(0,v+1))},u.withinString=function(r,s,T){T||(T={});var v=T.start||u.findUri.start,M=T.end||u.findUri.end,x=T.trim||u.findUri.trim,W=T.parens||u.findUri.parens,S=/[a-z0-9-]=["']?$/i;for(v.lastIndex=0;;){var B=v.exec(r);if(!B)break;var q=B.index;if(T.ignoreHtml){var G=r.slice(Math.max(q-3,0),q);if(G&&S.test(G))continue}for(var $=q+r.slice(q).search(M),ee=r.slice(q,$),ue=-1;;){var se=W.exec(ee);if(!se)break;var ie=se.index+se[0].length;ue=Math.max(ue,ie)}if(ue>-1?ee=ee.slice(0,ue)+ee.slice(ue).replace(x,""):ee=ee.replace(x,""),!(ee.length<=B[0].length)&&!(T.ignore&&T.ignore.test(ee))){$=q+ee.length;var ye=s(ee,q,$,r);if(ye===void 0){v.lastIndex=$;continue}ye=String(ye),r=r.slice(0,q)+ye+r.slice($),v.lastIndex=q+ye.length}}return v.lastIndex=0,r},u.ensureValidHostname=function(r,s){var T=!!r,v=!!s,M=!1;if(v&&(M=L(u.hostProtocols,s)),M&&!T)throw new TypeError("Hostname cannot be empty, if protocol is "+s);if(r&&r.match(u.invalid_hostname_characters)){if(!t)throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-:_] and Punycode.js is not available');if(t.toASCII(r).match(u.invalid_hostname_characters))throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-:_]')}},u.ensureValidPort=function(r){if(r){var s=Number(r);if(!(c(s)&&s>0&&s<65536))throw new TypeError('Port "'+r+'" is not a valid port')}},u.noConflict=function(r){if(r){var s={URI:this.noConflict()};return l.URITemplate&&typeof l.URITemplate.noConflict=="function"&&(s.URITemplate=l.URITemplate.noConflict()),l.IPv6&&typeof l.IPv6.noConflict=="function"&&(s.IPv6=l.IPv6.noConflict()),l.SecondLevelDomains&&typeof l.SecondLevelDomains.noConflict=="function"&&(s.SecondLevelDomains=l.SecondLevelDomains.noConflict()),s}else l.URI===this&&(l.URI=d);return this},w.build=function(r){return r===!0?this._deferred_build=!0:(r===void 0||this._deferred_build)&&(this._string=u.build(this._parts),this._deferred_build=!1),this},w.clone=function(){return new u(this)},w.valueOf=w.toString=function(){return this.build(!1)._string};function A(r){return function(s,T){return s===void 0?this._parts[r]||"":(this._parts[r]=s||null,this.build(!T),this)}}function f(r,s){return function(T,v){return T===void 0?this._parts[r]||"":(T!==null&&(T=T+"",T.charAt(0)===s&&(T=T.substring(1))),this._parts[r]=T,this.build(!v),this)}}w.protocol=A("protocol"),w.username=A("username"),w.password=A("password"),w.hostname=A("hostname"),w.port=A("port"),w.query=f("query","?"),w.fragment=f("fragment","#"),w.search=function(r,s){var T=this.query(r,s);return typeof T=="string"&&T.length?"?"+T:T},w.hash=function(r,s){var T=this.fragment(r,s);return typeof T=="string"&&T.length?"#"+T:T},w.pathname=function(r,s){if(r===void 0||r===!0){var T=this._parts.path||(this._parts.hostname?"/":"");return r?(this._parts.urn?u.decodeUrnPath:u.decodePath)(T):T}else return this._parts.urn?this._parts.path=r?u.recodeUrnPath(r):"":this._parts.path=r?u.recodePath(r):"/",this.build(!s),this},w.path=w.pathname,w.href=function(r,s){var T;if(r===void 0)return this.toString();this._string="",this._parts=u._parts();var v=r instanceof u,M=typeof r=="object"&&(r.hostname||r.path||r.pathname);if(r.nodeName){var x=u.getDomAttribute(r);r=r[x]||"",M=!1}if(!v&&M&&r.pathname!==void 0&&(r=r.toString()),typeof r=="string"||r instanceof String)this._parts=u.parse(String(r),this._parts);else if(v||M){var W=v?r._parts:r;for(T in W)T!=="query"&&U.call(this._parts,T)&&(this._parts[T]=W[T]);W.query&&this.query(W.query,!1)}else throw new TypeError("invalid input");return this.build(!s),this},w.is=function(r){var s=!1,T=!1,v=!1,M=!1,x=!1,W=!1,S=!1,B=!this._parts.urn;switch(this._parts.hostname&&(B=!1,T=u.ip4_expression.test(this._parts.hostname),v=u.ip6_expression.test(this._parts.hostname),s=T||v,M=!s,x=M&&a&&a.has(this._parts.hostname),W=M&&u.idn_expression.test(this._parts.hostname),S=M&&u.punycode_expression.test(this._parts.hostname)),r.toLowerCase()){case"relative":return B;case"absolute":return!B;case"domain":case"name":return M;case"sld":return x;case"ip":return s;case"ip4":case"ipv4":case"inet4":return T;case"ip6":case"ipv6":case"inet6":return v;case"idn":return W;case"url":return!this._parts.urn;case"urn":return!!this._parts.urn;case"punycode":return S}return null};var E=w.protocol,b=w.port,F=w.hostname;w.protocol=function(r,s){if(r&&(r=r.replace(/:(\/\/)?$/,""),!r.match(u.protocol_expression)))throw new TypeError('Protocol "'+r+`" contains characters other than [A-Z0-9.+-] or doesn't start with [A-Z]`);return E.call(this,r,s)},w.scheme=w.protocol,w.port=function(r,s){return this._parts.urn?r===void 0?"":this:(r!==void 0&&(r===0&&(r=null),r&&(r+="",r.charAt(0)===":"&&(r=r.substring(1)),u.ensureValidPort(r))),b.call(this,r,s))},w.hostname=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r!==void 0){var T={preventInvalidHostname:this._parts.preventInvalidHostname},v=u.parseHost(r,T);if(v!=="/")throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-]');r=T.hostname,this._parts.preventInvalidHostname&&u.ensureValidHostname(r,this._parts.protocol)}return F.call(this,r,s)},w.origin=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0){var T=this.protocol(),v=this.authority();return v?(T?T+"://":"")+this.authority():""}else{var M=u(r);return this.protocol(M.protocol()).authority(M.authority()).build(!s),this}},w.host=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0)return this._parts.hostname?u.buildHost(this._parts):"";var T=u.parseHost(r,this._parts);if(T!=="/")throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-]');return this.build(!s),this},w.authority=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0)return this._parts.hostname?u.buildAuthority(this._parts):"";var T=u.parseAuthority(r,this._parts);if(T!=="/")throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-]');return this.build(!s),this},w.userinfo=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0){var T=u.buildUserinfo(this._parts);return T&&T.substring(0,T.length-1)}else return r[r.length-1]!=="@"&&(r+="@"),u.parseUserinfo(r,this._parts),this.build(!s),this},w.resource=function(r,s){var T;return r===void 0?this.path()+this.search()+this.hash():(T=u.parse(r),this._parts.path=T.path,this._parts.query=T.query,this._parts.fragment=T.fragment,this.build(!s),this)},w.subdomain=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0){if(!this._parts.hostname||this.is("IP"))return"";var T=this._parts.hostname.length-this.domain().length-1;return this._parts.hostname.substring(0,T)||""}else{var v=this._parts.hostname.length-this.domain().length,M=this._parts.hostname.substring(0,v),x=new RegExp("^"+P(M));if(r&&r.charAt(r.length-1)!=="."&&(r+="."),r.indexOf(":")!==-1)throw new TypeError("Domains cannot contain colons");return r&&u.ensureValidHostname(r,this._parts.protocol),this._parts.hostname=this._parts.hostname.replace(x,r),this.build(!s),this}},w.domain=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(typeof r=="boolean"&&(s=r,r=void 0),r===void 0){if(!this._parts.hostname||this.is("IP"))return"";var T=this._parts.hostname.match(/\./g);if(T&&T.length<2)return this._parts.hostname;var v=this._parts.hostname.length-this.tld(s).length-1;return v=this._parts.hostname.lastIndexOf(".",v-1)+1,this._parts.hostname.substring(v)||""}else{if(!r)throw new TypeError("cannot set domain empty");if(r.indexOf(":")!==-1)throw new TypeError("Domains cannot contain colons");if(u.ensureValidHostname(r,this._parts.protocol),!this._parts.hostname||this.is("IP"))this._parts.hostname=r;else{var M=new RegExp(P(this.domain())+"$");this._parts.hostname=this._parts.hostname.replace(M,r)}return this.build(!s),this}},w.tld=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(typeof r=="boolean"&&(s=r,r=void 0),r===void 0){if(!this._parts.hostname||this.is("IP"))return"";var T=this._parts.hostname.lastIndexOf("."),v=this._parts.hostname.substring(T+1);return s!==!0&&a&&a.list[v.toLowerCase()]&&a.get(this._parts.hostname)||v}else{var M;if(r)if(r.match(/[^a-zA-Z0-9-]/))if(a&&a.is(r))M=new RegExp(P(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(M,r);else throw new TypeError('TLD "'+r+'" contains characters other than [A-Z0-9]');else{if(!this._parts.hostname||this.is("IP"))throw new ReferenceError("cannot set TLD on non-domain host");M=new RegExp(P(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(M,r)}else throw new TypeError("cannot set TLD empty");return this.build(!s),this}},w.directory=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0||r===!0){if(!this._parts.path&&!this._parts.hostname)return"";if(this._parts.path==="/")return"/";var T=this._parts.path.length-this.filename().length-1,v=this._parts.path.substring(0,T)||(this._parts.hostname?"/":"");return r?u.decodePath(v):v}else{var M=this._parts.path.length-this.filename().length,x=this._parts.path.substring(0,M),W=new RegExp("^"+P(x));return this.is("relative")||(r||(r="/"),r.charAt(0)!=="/"&&(r="/"+r)),r&&r.charAt(r.length-1)!=="/"&&(r+="/"),r=u.recodePath(r),this._parts.path=this._parts.path.replace(W,r),this.build(!s),this}},w.filename=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(typeof r!="string"){if(!this._parts.path||this._parts.path==="/")return"";var T=this._parts.path.lastIndexOf("/"),v=this._parts.path.substring(T+1);return r?u.decodePathSegment(v):v}else{var M=!1;r.charAt(0)==="/"&&(r=r.substring(1)),r.match(/\.?\//)&&(M=!0);var x=new RegExp(P(this.filename())+"$");return r=u.recodePath(r),this._parts.path=this._parts.path.replace(x,r),M?this.normalizePath(s):this.build(!s),this}},w.suffix=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0||r===!0){if(!this._parts.path||this._parts.path==="/")return"";var T=this.filename(),v=T.lastIndexOf("."),M,x;return v===-1?"":(M=T.substring(v+1),x=/^[a-z0-9%]+$/i.test(M)?M:"",r?u.decodePathSegment(x):x)}else{r.charAt(0)==="."&&(r=r.substring(1));var W=this.suffix(),S;if(W)r?S=new RegExp(P(W)+"$"):S=new RegExp(P("."+W)+"$");else{if(!r)return this;this._parts.path+="."+u.recodePath(r)}return S&&(r=u.recodePath(r),this._parts.path=this._parts.path.replace(S,r)),this.build(!s),this}},w.segment=function(r,s,T){var v=this._parts.urn?":":"/",M=this.path(),x=M.substring(0,1)==="/",W=M.split(v);if(r!==void 0&&typeof r!="number"&&(T=s,s=r,r=void 0),r!==void 0&&typeof r!="number")throw new Error('Bad segment "'+r+'", must be 0-based integer');if(x&&W.shift(),r<0&&(r=Math.max(W.length+r,0)),s===void 0)return r===void 0?W:W[r];if(r===null||W[r]===void 0)if(R(s)){W=[];for(var S=0,B=s.length;S<B;S++)!s[S].length&&(!W.length||!W[W.length-1].length)||(W.length&&!W[W.length-1].length&&W.pop(),W.push(y(s[S])))}else(s||typeof s=="string")&&(s=y(s),W[W.length-1]===""?W[W.length-1]=s:W.push(s));else s?W[r]=y(s):W.splice(r,1);return x&&W.unshift(""),this.path(W.join(v),T)},w.segmentCoded=function(r,s,T){var v,M,x;if(typeof r!="number"&&(T=s,s=r,r=void 0),s===void 0){if(v=this.segment(r,s,T),!R(v))v=v!==void 0?u.decode(v):void 0;else for(M=0,x=v.length;M<x;M++)v[M]=u.decode(v[M]);return v}if(!R(s))s=typeof s=="string"||s instanceof String?u.encode(s):s;else for(M=0,x=s.length;M<x;M++)s[M]=u.encode(s[M]);return this.segment(r,s,T)};var m=w.query;return w.query=function(r,s){if(r===!0)return u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if(typeof r=="function"){var T=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace),v=r.call(this,T);return this._parts.query=u.buildQuery(v||T,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!s),this}else return r!==void 0&&typeof r!="string"?(this._parts.query=u.buildQuery(r,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!s),this):m.call(this,r,s)},w.setQuery=function(r,s,T){var v=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if(typeof r=="string"||r instanceof String)v[r]=s!==void 0?s:null;else if(typeof r=="object")for(var M in r)U.call(r,M)&&(v[M]=r[M]);else throw new TypeError("URI.addQuery() accepts an object, string as the name parameter");return this._parts.query=u.buildQuery(v,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(T=s),this.build(!T),this},w.addQuery=function(r,s,T){var v=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.addQuery(v,r,s===void 0?null:s),this._parts.query=u.buildQuery(v,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(T=s),this.build(!T),this},w.removeQuery=function(r,s,T){var v=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.removeQuery(v,r,s),this._parts.query=u.buildQuery(v,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(T=s),this.build(!T),this},w.hasQuery=function(r,s,T){var v=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.hasQuery(v,r,s,T)},w.setSearch=w.setQuery,w.addSearch=w.addQuery,w.removeSearch=w.removeQuery,w.hasSearch=w.hasQuery,w.normalize=function(){return this._parts.urn?this.normalizeProtocol(!1).normalizePath(!1).normalizeQuery(!1).normalizeFragment(!1).build():this.normalizeProtocol(!1).normalizeHostname(!1).normalizePort(!1).normalizePath(!1).normalizeQuery(!1).normalizeFragment(!1).build()},w.normalizeProtocol=function(r){return typeof this._parts.protocol=="string"&&(this._parts.protocol=this._parts.protocol.toLowerCase(),this.build(!r)),this},w.normalizeHostname=function(r){return this._parts.hostname&&(this.is("IDN")&&t?this._parts.hostname=t.toASCII(this._parts.hostname):this.is("IPv6")&&n&&(this._parts.hostname=n.best(this._parts.hostname)),this._parts.hostname=this._parts.hostname.toLowerCase(),this.build(!r)),this},w.normalizePort=function(r){return typeof this._parts.protocol=="string"&&this._parts.port===u.defaultPorts[this._parts.protocol]&&(this._parts.port=null,this.build(!r)),this},w.normalizePath=function(r){var s=this._parts.path;if(!s)return this;if(this._parts.urn)return this._parts.path=u.recodeUrnPath(this._parts.path),this.build(!r),this;if(this._parts.path==="/")return this;s=u.recodePath(s);var T,v="",M,x;for(s.charAt(0)!=="/"&&(T=!0,s="/"+s),(s.slice(-3)==="/.."||s.slice(-2)==="/.")&&(s+="/"),s=s.replace(/(\/(\.\/)+)|(\/\.$)/g,"/").replace(/\/{2,}/g,"/"),T&&(v=s.substring(1).match(/^(\.\.\/)+/)||"",v&&(v=v[0]));M=s.search(/\/\.\.(\/|$)/),M!==-1;){if(M===0){s=s.substring(3);continue}x=s.substring(0,M).lastIndexOf("/"),x===-1&&(x=M),s=s.substring(0,x)+s.substring(M+3)}return T&&this.is("relative")&&(s=v+s.substring(1)),this._parts.path=s,this.build(!r),this},w.normalizePathname=w.normalizePath,w.normalizeQuery=function(r){return typeof this._parts.query=="string"&&(this._parts.query.length?this.query(u.parseQuery(this._parts.query,this._parts.escapeQuerySpace)):this._parts.query=null,this.build(!r)),this},w.normalizeFragment=function(r){return this._parts.fragment||(this._parts.fragment=null,this.build(!r)),this},w.normalizeSearch=w.normalizeQuery,w.normalizeHash=w.normalizeFragment,w.iso8859=function(){var r=u.encode,s=u.decode;u.encode=escape,u.decode=decodeURIComponent;try{this.normalize()}finally{u.encode=r,u.decode=s}return this},w.unicode=function(){var r=u.encode,s=u.decode;u.encode=p,u.decode=unescape;try{this.normalize()}finally{u.encode=r,u.decode=s}return this},w.readable=function(){var r=this.clone();r.username("").password("").normalize();var s="";if(r._parts.protocol&&(s+=r._parts.protocol+"://"),r._parts.hostname&&(r.is("punycode")&&t?(s+=t.toUnicode(r._parts.hostname),r._parts.port&&(s+=":"+r._parts.port)):s+=r.host()),r._parts.hostname&&r._parts.path&&r._parts.path.charAt(0)!=="/"&&(s+="/"),s+=r.path(!0),r._parts.query){for(var T="",v=0,M=r._parts.query.split("&"),x=M.length;v<x;v++){var W=(M[v]||"").split("=");T+="&"+u.decodeQuery(W[0],this._parts.escapeQuerySpace).replace(/&/g,"%26"),W[1]!==void 0&&(T+="="+u.decodeQuery(W[1],this._parts.escapeQuerySpace).replace(/&/g,"%26"))}s+="?"+T.substring(1)}return s+=u.decodeQuery(r.hash(),!0),s},w.absoluteTo=function(r){var s=this.clone(),T=["protocol","username","password","hostname","port"],v,M,x;if(this._parts.urn)throw new Error("URNs do not have any generally defined hierarchical components");if(r instanceof u||(r=new u(r)),s._parts.protocol||(s._parts.protocol=r._parts.protocol,this._parts.hostname))return s;for(M=0;x=T[M];M++)s._parts[x]=r._parts[x];return s._parts.path?(s._parts.path.substring(-2)===".."&&(s._parts.path+="/"),s.path().charAt(0)!=="/"&&(v=r.directory(),v=v||(r.path().indexOf("/")===0?"/":""),s._parts.path=(v?v+"/":"")+s._parts.path,s.normalizePath())):(s._parts.path=r._parts.path,s._parts.query||(s._parts.query=r._parts.query)),s.build(),s},w.relativeTo=function(r){var s=this.clone().normalize(),T,v,M,x,W;if(s._parts.urn)throw new Error("URNs do not have any generally defined hierarchical components");if(r=new u(r).normalize(),T=s._parts,v=r._parts,x=s.path(),W=r.path(),x.charAt(0)!=="/")throw new Error("URI is already relative");if(W.charAt(0)!=="/")throw new Error("Cannot calculate a URI relative to another relative URI");if(T.protocol===v.protocol&&(T.protocol=null),T.username!==v.username||T.password!==v.password||T.protocol!==null||T.username!==null||T.password!==null)return s.build();if(T.hostname===v.hostname&&T.port===v.port)T.hostname=null,T.port=null;else return s.build();if(x===W)return T.path="",s.build();if(M=u.commonPath(x,W),!M)return s.build();var S=v.path.substring(M.length).replace(/[^\/]*$/,"").replace(/.*?\//g,"../");return T.path=S+T.path.substring(M.length)||"./",s.build()},w.equals=function(r){var s=this.clone(),T=new u(r),v={},M={},x={},W,S,B;if(s.normalize(),T.normalize(),s.toString()===T.toString())return!0;if(W=s.query(),S=T.query(),s.query(""),T.query(""),s.toString()!==T.toString()||W.length!==S.length)return!1;v=u.parseQuery(W,this._parts.escapeQuerySpace),M=u.parseQuery(S,this._parts.escapeQuerySpace);for(B in v)if(U.call(v,B)){if(R(v[B])){if(!g(v[B],M[B]))return!1}else if(v[B]!==M[B])return!1;x[B]=!0}for(B in M)if(U.call(M,B)&&!x[B])return!1;return!0},w.preventInvalidHostname=function(r){return this._parts.preventInvalidHostname=!!r,this},w.duplicateQueryParameters=function(r){return this._parts.duplicateQueryParameters=!!r,this},w.escapeQuerySpace=function(r){return this._parts.escapeQuerySpace=!!r,this},u})}(Sa)),Sa.exports}var Zp;function ff(){return Zp||(Zp=1,function(e){var t=oa.__importDefault||function(_){return _&&_.__esModule?_:{default:_}};Object.defineProperty(e,"__esModule",{value:!0}),e.uriSchemaAttributesProducer=e.uriInferenceAttributesProducer=e.uriTypeAttributeKind=void 0;const n=t(eb()),a=At(),l=et(),d=Qe(),u="qt-uri-protocols",c="qt-uri-extensions";class w extends a.TypeAttributeKind{constructor(){super("uriAttributes")}get inIdentity(){return!0}combine(L){const g=L.map(h=>h[0]),y=L.map(h=>h[1]);return[(0,l.setUnionManyInto)(new Set,g),(0,l.setUnionManyInto)(new Set,y)]}makeInferred(L){}addToSchema(L,g,y){if(g.kind!=="string"&&g.kind!=="uri")return;const[h,p]=y;h.size>0&&(L[u]=Array.from(h).sort()),p.size>0&&(L[c]=Array.from(p).sort())}}e.uriTypeAttributeKind=new w;const U=/^.+(\.[^./\\]+)$/;function P(_){const L=_.match(U);if(L!==null)return L[1]}function O(_){try{const L=(0,n.default)(_),g=P(L.path()),y=g===void 0?[]:[g.toLowerCase()];return e.uriTypeAttributeKind.makeAttributes([new Set([L.protocol().toLowerCase()]),new Set(y)])}catch{return a.emptyTypeAttributes}}e.uriInferenceAttributesProducer=O;function R(_,L,g){if(typeof _!="object"||!g.has("string"))return;let y;const h=_[u];h!==void 0?y=new Set((0,d.checkArray)(h,d.checkString)):y=new Set;let p;const k=_[c];if(k!==void 0?p=new Set((0,d.checkArray)(k,d.checkString)):p=new Set,!(y.size===0&&p.size===0))return{forString:e.uriTypeAttributeKind.makeAttributes([y,p])}}e.uriSchemaAttributesProducer=R}(oa)),oa}var Qp;function mt(){return Qp||(Qp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.UnionType=e.IntersectionType=e.SetOperationType=e.intersectionTypeIdentity=e.unionTypeIdentity=e.setOperationTypeIdentity=e.setOperationCasesEqual=e.EnumType=e.enumTypeIdentity=e.MapType=e.ClassType=e.ObjectType=e.mapTypeIdentify=e.classTypeIdentity=e.ClassProperty=e.GenericClassProperty=e.ArrayType=e.arrayTypeIdentity=e.PrimitiveType=e.primitiveTypeIdentity=e.Type=e.TypeIdentity=e.isPrimitiveTypeKind=e.isNumberTypeKind=e.targetTypeKindForTransformedStringTypeKind=e.isPrimitiveStringTypeKind=e.transformedStringTypeKinds=e.transformedStringTypeTargetTypeKindsMap=void 0;const t=et(),n=Qe(),a=qi(),l=yn(),d=Xn(),u=ff(),c={date:{jsonSchema:"date",primitive:void 0},time:{jsonSchema:"time",primitive:void 0},"date-time":{jsonSchema:"date-time",primitive:void 0},uuid:{jsonSchema:"uuid",primitive:void 0},uri:{jsonSchema:"uri",primitive:void 0,attributesProducer:u.uriInferenceAttributesProducer},"integer-string":{jsonSchema:"integer",primitive:"integer"},"bool-string":{jsonSchema:"boolean",primitive:"bool"}};e.transformedStringTypeTargetTypeKindsMap=(0,t.mapFromObject)(c),e.transformedStringTypeKinds=new Set(Object.getOwnPropertyNames(c));function w(q){return q==="string"||(0,t.hasOwnProperty)(c,q)}e.isPrimitiveStringTypeKind=w;function U(q){const G=e.transformedStringTypeTargetTypeKindsMap.get(q);if(G!==void 0)return G.primitive}e.targetTypeKindForTransformedStringTypeKind=U;function P(q){return q==="integer"||q==="double"}e.isNumberTypeKind=P;function O(q){return w(q)||P(q)?!0:q==="none"||q==="any"||q==="null"||q==="bool"}e.isPrimitiveTypeKind=O;function R(q,G){return q.index===G.index||q.kind==="none"||G.kind==="none"}class _{constructor(G,$){this._kind=G,this._components=$;let ee=t.hashCodeInit;ee=(0,t.addHashCode)(ee,(0,t.hashCodeOf)(this._kind));for(const ue of $)ee=(0,t.addHashCode)(ee,(0,t.hashCodeOf)(ue));this._hashCode=ee}equals(G){if(!(G instanceof _)||this._kind!==G._kind)return!1;const $=this._components.length;(0,n.assert)($===G._components.length,"Components of a type kind's identity must have the same length");for(let ee=0;ee<$;ee++)if(!(0,t.areEqual)(this._components[ee],G._components[ee]))return!1;return!0}hashCode(){return this._hashCode}}e.TypeIdentity=_;class L{constructor(G,$){this.typeRef=G,this.graph=$}get index(){return(0,d.typeRefIndex)(this.typeRef)}getChildren(){let G=this.getNonAttributeChildren();for(const[$,ee]of this.getAttributes())$.children!==void 0&&(0,t.setUnionInto)(G,$.children(ee));return G}getAttributes(){return(0,d.attributesForTypeRef)(this.typeRef,this.graph)}get hasNames(){return a.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes())!==void 0}getNames(){return(0,n.defined)(a.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes()))}getCombinedName(){return this.getNames().combinedName}get debugPrintKind(){return this.kind}equals(G){return G instanceof L?this.typeRef===G.typeRef:!1}hashCode(){return(0,t.hashCodeOf)(this.typeRef)}structurallyCompatible(G,$=!1){function ee(be,Ae){return be===Ae?!0:$?be==="integer"?Ae==="double":be==="double"?Ae==="integer":!1:!1}if(R(this,G))return!0;if(!ee(this.kind,G.kind))return!1;const ue=[[this,G]],se=[];let ie;const ye=(be,Ae)=>R(be,Ae)?!0:ee(be.kind,Ae.kind)?(ue.push([be,Ae]),!0):(ie=!0,!1);for(;ue.length>0;){let[be,Ae]=(0,n.defined)(ue.pop());if(be.index>Ae.index&&([be,Ae]=[Ae,be]),!be.isPrimitive()){let pe=be.index,le=Ae.index,me=!1;for(const[de,Q]of se)if(de===pe&&Q===le){me=!0;break}if(me)continue;se.push([pe,le])}if(ie=!1,!be.structuralEqualityStep(Ae,$,ye)||ie)return!1}return!0}getParentTypes(){return this.graph.getParentsOfType(this)}getAncestorsNotInSet(G){const $=[this],ee=new Set,ue=new Set;for(;;){const se=$.pop();if(se===void 0)break;const ie=se.getParentTypes();console.log(`${ie.size} parents`);for(const ye of ie)ee.has(ye)||(ee.add(ye),G.has(ye.typeRef)?(console.log(`adding ${ye.kind}`),$.push(ye)):(console.log(`found ${ye.kind}`),ue.add(ye)))}return ue}}e.Type=L;function g(q){return(0,t.mapSome)(q,(G,$)=>$.requiresUniqueIdentity(G))}function y(q){return(0,t.mapFilter)(q,(G,$)=>$.inIdentity)}function h(q,G){if(!g(G))return new _(q,[y(G)])}e.primitiveTypeIdentity=h;class p extends L{constructor(G,$,ee){super(G,$),this.kind=ee}get isNullable(){return this.kind==="null"||this.kind==="any"||this.kind==="none"}isPrimitive(){return!0}getNonAttributeChildren(){return new Set}get identity(){return h(this.kind,this.getAttributes())}reconstitute(G){G.getPrimitiveType(this.kind)}structuralEqualityStep(G,$,ee){return!0}}e.PrimitiveType=p;function k(q,G){if(!g(q))return new _("array",[y(q),G])}e.arrayTypeIdentity=k;class D extends L{constructor(G,$,ee){super(G,$),this._itemsRef=ee,this.kind="array"}setItems(G){if(this._itemsRef!==void 0)return(0,n.panic)("Can only set array items once");this._itemsRef=G}getItemsRef(){return this._itemsRef===void 0?(0,n.panic)("Array items accessed before they were set"):this._itemsRef}get items(){return(0,d.derefTypeRef)(this.getItemsRef(),this.graph)}getNonAttributeChildren(){return new Set([this.items])}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return k(this.getAttributes(),this.getItemsRef())}reconstitute(G){const $=this.getItemsRef(),ee=G.lookup($);ee===void 0?(G.getUniqueArrayType(),G.setArrayItems(G.reconstitute(this.getItemsRef()))):G.getArrayType(ee)}structuralEqualityStep(G,$,ee){return ee(this.items,G.items)}}e.ArrayType=D;class C{constructor(G,$){this.typeData=G,this.isOptional=$}equals(G){return G instanceof C?(0,t.areEqual)(this.typeData,G.typeData)&&this.isOptional===G.isOptional:!1}hashCode(){return(0,t.hashCodeOf)(this.typeData)+(this.isOptional?17:23)}}e.GenericClassProperty=C;class I extends C{constructor(G,$,ee){super(G,ee),this.graph=$}get typeRef(){return this.typeData}get type(){return(0,d.derefTypeRef)(this.typeRef,this.graph)}}e.ClassProperty=I;function A(q,G,$,ee){if(!g(G))return new _(q,[y(G),$,ee])}function f(q,G){return A("class",q,G,void 0)}e.classTypeIdentity=f;function E(q,G){return A("map",q,new Map,G)}e.mapTypeIdentify=E;class b extends L{constructor(G,$,ee,ue,se,ie){super(G,$),this.kind=ee,this.isFixed=ue,this._properties=se,this._additionalPropertiesRef=ie,ee==="map"?(se!==void 0&&(0,n.assert)(se.size===0),(0,n.assert)(!ue)):ee==="class"?(0,n.assert)(ie===void 0):(0,n.assert)(ue)}setProperties(G,$){(0,n.assert)(this._properties===void 0,"Tried to set object properties twice"),this instanceof m&&(0,n.assert)(G.size===0,"Cannot set properties on map type"),this instanceof F&&(0,n.assert)($===void 0,"Cannot set additional properties of class type"),this._properties=G,this._additionalPropertiesRef=$}getProperties(){return(0,n.defined)(this._properties)}getSortedProperties(){return(0,t.mapSortByKey)(this.getProperties())}getAdditionalPropertiesRef(){return(0,n.assert)(this._properties!==void 0,"Properties are not set yet"),this._additionalPropertiesRef}getAdditionalProperties(){const G=this.getAdditionalPropertiesRef();if(G!==void 0)return(0,d.derefTypeRef)(G,this.graph)}getNonAttributeChildren(){const G=(0,t.mapSortToArray)(this.getProperties(),(ee,ue)=>ue).map(([ee,ue])=>ue.type),$=this.getAdditionalProperties();return $!==void 0&&G.push($),new Set(G)}get isNullable(){return!1}isPrimitive(){return!1}get identity(){if(!this.isFixed)return A(this.kind,this.getAttributes(),this.getProperties(),this.getAdditionalPropertiesRef())}reconstitute(G,$){const ee=this.getSortedProperties(),ue=$?ee:this.getProperties(),se=G.lookupMap((0,t.mapMap)(ee,ye=>ye.typeRef)),ie=(0,t.definedMap)(this._additionalPropertiesRef,ye=>G.lookup(ye));if(se!==void 0&&(ie!==void 0||this._additionalPropertiesRef===void 0)){const ye=(0,t.mapMap)(ue,(be,Ae)=>G.makeClassProperty((0,n.defined)(se.get(Ae)),be.isOptional));switch(this.kind){case"object":(0,n.assert)(this.isFixed),G.getObjectType(ye,ie);break;case"map":G.getMapType((0,n.defined)(ie));break;case"class":this.isFixed?G.getUniqueClassType(!0,ye):G.getClassType(ye);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}}else{switch(this.kind){case"object":(0,n.assert)(this.isFixed),G.getUniqueObjectType(void 0,void 0);break;case"map":G.getUniqueMapType();break;case"class":G.getUniqueClassType(this.isFixed,void 0);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}const ye=(0,t.mapMap)(ee,pe=>G.reconstitute(pe.typeRef)),be=(0,t.mapMap)(ue,(pe,le)=>G.makeClassProperty((0,n.defined)(ye.get(le)),pe.isOptional)),Ae=(0,t.definedMap)(this._additionalPropertiesRef,pe=>G.reconstitute(pe));G.setObjectProperties(be,Ae)}}structuralEqualityStep(G,$,ee){const ue=this.getProperties(),se=G.getProperties();if(ue.size!==se.size)return!1;let ie=!1;for(const[Ae,pe]of ue){const le=se.get(Ae);if(le===void 0||pe.isOptional!==le.isOptional||!ee(pe.type,le.type))return ie=!0,!1}if(ie)return!1;const ye=this.getAdditionalProperties(),be=G.getAdditionalProperties();return ye===void 0!=(be===void 0)?!1:ye===void 0||be===void 0?!0:ee(ye,be)}}e.ObjectType=b;class F extends b{constructor(G,$,ee,ue){super(G,$,"class",ee,ue,void 0)}}e.ClassType=F;class m extends b{constructor(G,$,ee){super(G,$,"map",!1,(0,t.definedMap)(ee,()=>new Map),ee)}get values(){return(0,n.defined)(this.getAdditionalProperties())}}e.MapType=m;function r(q,G){if(!g(q))return new _("enum",[y(q),G])}e.enumTypeIdentity=r;class s extends L{constructor(G,$,ee){super(G,$),this.cases=ee,this.kind="enum"}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return r(this.getAttributes(),this.cases)}getNonAttributeChildren(){return new Set}reconstitute(G){G.getEnumType(this.cases)}structuralEqualityStep(G,$,ee){return(0,t.areEqual)(this.cases,G.cases)}}e.EnumType=s;function T(q,G,$,ee){const ue=(0,t.toReadonlySet)(q),se=(0,t.toReadonlySet)(G);return ue.size!==se.size?!1:(0,t.iterableEvery)(ue,ie=>{const ye=(0,t.iterableFind)(se,be=>be.kind===ie.kind);return!!(ye!==void 0&&ee(ie,ye)||$&&(ie.kind==="integer"&&(0,t.iterableSome)(se,be=>be.kind==="double")||ie.kind==="double"&&(0,t.iterableSome)(se,be=>be.kind==="integer")))})}e.setOperationCasesEqual=T;function v(q,G,$){if(!g(G))return new _(q,[y(G),$])}e.setOperationTypeIdentity=v;function M(q,G){return v("union",q,G)}e.unionTypeIdentity=M;function x(q,G){return v("intersection",q,G)}e.intersectionTypeIdentity=x;class W extends L{constructor(G,$,ee,ue){super(G,$),this.kind=ee,this._memberRefs=ue}setMembers(G){if(this._memberRefs!==void 0)return(0,n.panic)("Can only set map members once");this._memberRefs=G}getMemberRefs(){return this._memberRefs===void 0?(0,n.panic)("Map members accessed before they were set"):this._memberRefs}get members(){return(0,t.setMap)(this.getMemberRefs(),G=>(0,d.derefTypeRef)(G,this.graph))}get sortedMembers(){return this.getNonAttributeChildren()}getNonAttributeChildren(){return(0,t.setSortBy)(this.members,G=>G.kind)}isPrimitive(){return!1}get identity(){return v(this.kind,this.getAttributes(),this.getMemberRefs())}reconstituteSetOperation(G,$,ee){const ue=(0,t.mapMap)(this.sortedMembers.entries(),ye=>ye.typeRef),se=$?this.sortedMembers:this.members,ie=G.lookupMap(ue);if(ie===void 0){ee(void 0);const ye=G.reconstituteMap(ue);G.setSetOperationMembers((0,t.setMap)(se,be=>(0,n.defined)(ye.get(be))))}else ee((0,t.setMap)(se,ye=>(0,n.defined)(ie.get(ye))))}structuralEqualityStep(G,$,ee){return T(this.members,G.members,$,ee)}}e.SetOperationType=W;class S extends W{constructor(G,$,ee){super(G,$,"intersection",ee)}get isNullable(){return(0,n.panic)("isNullable not implemented for IntersectionType")}reconstitute(G,$){this.reconstituteSetOperation(G,$,ee=>{ee===void 0?G.getUniqueIntersectionType():G.getIntersectionType(ee)})}}e.IntersectionType=S;class B extends W{constructor(G,$,ee){super(G,$,"union",ee),ee!==void 0&&(0,l.messageAssert)(ee.size>0,"IRNoEmptyUnions",{})}setMembers(G){(0,l.messageAssert)(G.size>0,"IRNoEmptyUnions",{}),super.setMembers(G)}get stringTypeMembers(){return(0,t.setFilter)(this.members,G=>w(G.kind)||G.kind==="enum")}findMember(G){return(0,t.iterableFind)(this.members,$=>$.kind===G)}get isNullable(){return this.findMember("null")!==void 0}get isCanonical(){const G=this.members;if(G.size<=1)return!1;const $=(0,t.setMap)(G,ue=>ue.kind);if($.size<G.size||$.has("union")||$.has("intersection")||$.has("none")||$.has("any")||$.has("string")&&$.has("enum"))return!1;let ee=0;return $.has("class")&&(ee+=1),$.has("map")&&(ee+=1),$.has("object")&&(ee+=1),!(ee>1)}reconstitute(G,$){this.reconstituteSetOperation(G,$,ee=>{ee===void 0?G.getUniqueUnionType():G.getUnionType(ee)})}}e.UnionType=B}(fl)),fl}var xt={},Rt={},Xp;function Ft(){if(Xp)return Rt;Xp=1,Object.defineProperty(Rt,"__esModule",{value:!0}),Rt.assignNames=Rt.keywordNamespace=Rt.DependencyName=Rt.AssociatedName=Rt.SimpleName=Rt.FixedName=Rt.Name=Rt.funPrefixNamer=Rt.Namer=Rt.Namespace=void 0;const e=et(),t=Qe();class n{constructor(y,h,p,k){this._children=new Set,this._members=new Set,this.forbiddenNamespaces=new Set(p),this.additionalForbidden=new Set(k),h!==void 0&&h.addChild(this)}addChild(y){this._children.add(y)}get children(){return this._children}get members(){return this._members}get forbiddenNameds(){return(0,e.setUnion)(this.additionalForbidden,...Array.from(this.forbiddenNamespaces).map(y=>y.members))}add(y){return this._members.add(y),y}}Rt.Namespace=n;class a{constructor(y,h,p){this.name=y,this.nameStyle=h,this._prefixes=new Set(p)}assignNames(y,h,p){const k=new Set(h),D=Array.from(p);(0,t.assert)(D.length>0,"Number of names can't be less than 1");const C=new Map;let I=[];for(const E of D){const b=E.proposeUnstyledNames(y),F=E.namingFunction,m=(0,e.iterableFind)(b,r=>!k.has(F.nameStyle(r))&&D.every(s=>s===E||!s.proposeUnstyledNames(y).has(r)));if(m!==void 0){const r=F.nameStyle(m),s=E.nameAssignments(k,r);if(s!==null){(0,e.mapMergeInto)(C,s),(0,e.setUnionInto)(k,s.values());continue}}I.push(E)}let A=this._prefixes.values(),f=1;for(const E of I){const b=(0,t.defined)((0,e.iterableFirst)(E.proposeUnstyledNames(y)));for(;;){let F;const{done:m,value:r}=A.next();m?(F=`${b}_${f.toString()}`,f++):F=`${r}_${b}`;const s=E.namingFunction.nameStyle(F),T=E.nameAssignments(k,s);if(T!==null){(0,e.mapMergeInto)(C,T),(0,e.setUnionInto)(k,T.values());break}}}return C}}Rt.Namer=a;const l=["Purple","Fluffy","Tentacled","Sticky","Indigo","Indecent","Hilarious","Ambitious","Cunning","Magenta","Frisky","Mischievous","Braggadocious"];function d(g,y){return new a(g,y,l)}Rt.funPrefixNamer=d;class u{constructor(y,h){this._namingFunction=y,this.order=h,this._associates=new Set}addAssociate(y){this._associates.add(y)}isFixed(){return this instanceof c}get namingFunction(){return(0,t.defined)(this._namingFunction)}firstProposedName(y){return(0,t.defined)((0,e.iterableFirst)(this.proposeUnstyledNames(y)))}nameAssignments(y,h){if(y.has(h))return null;const p=new Map([[this,h]]);for(const k of this._associates){const D=k.getName(h);if(y.has(D))return null;p.set(k,D)}return p}}Rt.Name=u;class c extends u{constructor(y){super(void 0,0),this._fixedName=y}get dependencies(){return[]}addAssociate(y){return(0,t.panic)("Cannot add associates to fixed names")}get fixedName(){return this._fixedName}proposeUnstyledNames(y){return(0,t.panic)("Only fixedName should be called on FixedName.")}}Rt.FixedName=c;class w extends u{constructor(y,h,p){super(h,p),this._unstyledNames=new Set(y)}get dependencies(){return[]}proposeUnstyledNames(y){return this._unstyledNames}}Rt.SimpleName=w;class U extends u{constructor(y,h,p){super(void 0,h),this._sponsor=y,this.getName=p}get dependencies(){return[this._sponsor]}proposeUnstyledNames(y){return(0,t.panic)("AssociatedName must be assigned via its sponsor")}}Rt.AssociatedName=U;class P extends u{constructor(y,h,p){super(y,h),this._proposeUnstyledName=p;const k=[];p(D=>(k.push(D),"0xDEADBEEF")),this._dependencies=new Set(k)}get dependencies(){return Array.from(this._dependencies)}proposeUnstyledNames(y){return new Set([this._proposeUnstyledName(h=>((0,t.assert)(this._dependencies.has(h),"DependencyName proposer is not pure"),(0,t.defined)(y.get(h))))])}}Rt.DependencyName=P;function O(g,y){const h=new n(g,void 0,[],[]);for(const p of y)h.add(new c(p));return h}Rt.keywordNamespace=O;function R(g){return(0,e.setUnion)(g,...Array.from((0,e.setMap)(g,y=>R(y.children))))}class _{constructor(y){this._names=new Map,this._namedsForName=new Map,this.isReadyToBeNamed=h=>this._names.has(h)?!1:h.dependencies.every(p=>this._names.has(p)),this.isConflicting=(h,p)=>{const k=this._namedsForName.get(p);if(k===void 0)return!1;for(const D of k)if(h.members.has(D)||h.forbiddenNameds.has(D))return!0;return!1},this.assign=(h,p,k)=>{(0,t.assert)(!this.names.has(h),`Name "${k}" assigned twice`),(0,t.assert)(!this.isConflicting(p,k),`Assigned name "${k}" conflicts`),this._names.set(h,k);let D=this._namedsForName.get(k);D===void 0&&(D=new Set,this._namedsForName.set(k,D)),D.add(h)},this.namespaces=R(y)}get names(){return this._names}areForbiddensFullyNamed(y){return(0,e.iterableEvery)(y.forbiddenNameds,h=>this._names.has(h))}}function L(g){const y=new _(g);for(const h of y.namespaces)for(const p of h.members)p.isFixed()&&y.assign(p,h,p.fixedName);for(;;){const h=(0,e.setFilter)(y.namespaces,C=>y.areForbiddensFullyNamed(C)),p=(0,e.iterableFind)(h,C=>(0,e.iterableSome)(C.members,y.isReadyToBeNamed));if(p===void 0)return y.names;const k=(0,e.setUnion)(p.members,p.forbiddenNameds);let D=(0,e.setFilterMap)(k,C=>y.names.get(C));for(;;){const C=(0,e.setFilter)(p.members,y.isReadyToBeNamed),I=(0,e.iterableMinBy)(C,b=>b.order);if(I===void 0)break;const A=I.order,f=(0,e.setFilter)(C,b=>b.order===A),E=(0,e.setGroupBy)(f,b=>b.namingFunction);for(const[b,F]of E){const m=(0,e.setGroupBy)(F,r=>r.namingFunction.nameStyle(r.firstProposedName(y.names)));for(const[,r]of m){const s=b.assignNames(y.names,D,r);for(const[T,v]of s)y.assign(T,p,v);(0,e.setUnionInto)(D,s.values())}}}}}return Rt.assignNames=L,Rt}var Yp;function Bt(){if(Yp)return xt;Yp=1,Object.defineProperty(xt,"__esModule",{value:!0}),xt.parenIfNeeded=xt.multiWord=xt.singleWord=xt.serializeRenderResult=xt.modifySource=xt.maybeAnnotated=xt.annotated=xt.sourcelikeToSource=xt.newline=void 0;const e=et(),t=Ft(),n=Qe(),a=Nt();function l(){return{kind:"newline",indentationChange:0}}xt.newline=l;function d(L){if(L instanceof Array)return{kind:"sequence",sequence:L.map(d)};if(typeof L=="string"){const g=L.split(`
177
+ `);return g.length===1?{kind:"text",text:L}:{kind:"sequence",sequence:(0,e.arrayIntercalate)(l(),g.map(y=>({kind:"text",text:y})))}}return L instanceof t.Name?{kind:"name",named:L}:L}xt.sourcelikeToSource=d;function u(L,g){return{kind:"annotated",annotation:L,source:d(g)}}xt.annotated=u;function c(L,g,y){return L?u(g,y):y}xt.maybeAnnotated=c;function w(L,g){return{kind:"modified",modifier:L,source:d(g)}}xt.modifySource=w;function U(L,g){switch(L.kind){case"text":return L.text.length;case"newline":return(0,n.panic)("Newline must not occur within a line.");case"sequence":return L.sequence.map(y=>U(y,g)).reduce((y,h)=>y+h,0);case"table":return(0,n.panic)("Table must not occur within a line.");case"annotated":return U(L.source,g);case"name":return(0,n.defined)(g.get(L.named)).length;case"modified":return P(L,g,"").lines.join(`
178
+ `).length;default:return(0,n.assertNever)(L)}}function P(L,g,y){let h=0,p=0;const k=[];let D=[];const C=[];function I(){p!==0&&(D.push((0,a.repeatString)(y,p)),p=0)}function A(){const F=D.join("");return D=[F],F}function f(){return{line:k.length,column:A().length}}function E(){k.push(A()),D=[]}function b(F){switch(F.kind){case"text":I(),D.push(F.text);break;case"newline":E(),h+=F.indentationChange,p=h;break;case"sequence":for(const S of F.sequence)b(S);break;case"table":const m=F.table,r=m.length;if(r===0)break;const s=m.map(S=>S.map(B=>U(B,g))),T=(0,n.defined)((0,e.iterableMax)(m.map(S=>S.length)));if(T===0)break;const v=[];for(let S=0;S<T;S++)v.push((0,n.defined)((0,e.iterableMax)(s.map(B=>(0,e.withDefault)(B[S],0)))));for(let S=0;S<r;S++){I();const B=(0,n.defined)(m[S]),q=(0,n.defined)(s[S]);for(let G=0;G<T;G++){const $=v[G],ee=(0,e.withDefault)(B[G],{kind:"text",text:""}),ue=(0,e.withDefault)(q[G],0);b(ee),G<T-1&&ue<$&&D.push((0,a.repeatString)(" ",$-ue))}S<r-1&&(E(),p=h)}break;case"annotated":const M=f();b(F.source);const x=f();C.push({annotation:F.annotation,span:{start:M,end:x}});break;case"name":(0,n.assert)(g.has(F.named),"No name for Named"),I(),D.push((0,n.defined)(g.get(F.named)));break;case"modified":I();const W=P(F.source,g,y).lines;(0,n.assert)(W.length===1,"Cannot modify more than one line."),D.push(F.modifier(W[0]));break;default:return(0,n.assertNever)(F)}}return b(L),E(),{lines:k,annotations:C}}xt.serializeRenderResult=P;function O(...L){return{source:L,needsParens:!1}}xt.singleWord=O;function R(L,...g){if((0,n.assert)(g.length>0,"Zero words is not multiple"),g.length===1)return O(g[0]);const y=[];for(let h=0;h<g.length;h++)h>0&&y.push(L),y.push(g[h]);return{source:y,needsParens:!0}}xt.multiWord=R;function _({source:L,needsParens:g}){return g?["(",L,")"]:L}return xt.parenIfNeeded=_,xt}var Ml={},Ns={},Zn={},$p;function On(){if($p)return Zn;$p=1,Object.defineProperty(Zn,"__esModule",{value:!0}),Zn.nullTypeIssueAnnotation=Zn.anyTypeIssueAnnotation=Zn.IssueAnnotationData=Zn.AnnotationData=void 0;class e{}Zn.AnnotationData=e;class t extends e{constructor(a){super(),this.message=a}}return Zn.IssueAnnotationData=t,Zn.anyTypeIssueAnnotation=new t("quicktype cannot infer this type because there is no data about it in the input."),Zn.nullTypeIssueAnnotation=new t("The only value for this in the input is null, which means you probably need a more complete input sample."),Zn}var em;function Fk(){if(em)return Ns;em=1,Object.defineProperty(Ns,"__esModule",{value:!0}),Ns.Renderer=void 0;const e=et(),t=Ft(),n=Bt(),a=On(),l=Qe();function d(U){return Array.isArray(U)?{position:U[0],count:U[1]}:{position:U,count:1}}function u(U){const P=U.length;let O=0;for(let R=0;R<P;R++){const _=U.charAt(R);if(_===" ")O+=1;else if(_===" ")O=(O/4+1)*4;else return{indent:O,text:U.substring(R)}}return{indent:0,text:null}}class c{constructor(){this._currentEmitTarget=this._emitted=[],this._numBlankLinesNeeded=0,this._preventBlankLine=!0}get isEmpty(){return this._emitted.length===0}get isNested(){return this._emitted!==this._currentEmitTarget}get source(){return this._emitted}pushItem(P){this._currentEmitTarget.push(P),this._preventBlankLine=!1}emitNewline(){const P=(0,n.newline)();this.pushItem(P),this._lastNewline=P}emitItem(P){if(!this.isEmpty)for(let O=0;O<this._numBlankLinesNeeded;O++)this.emitNewline();this._numBlankLinesNeeded=0,this.pushItem(P)}containsItem(P){return this._currentEmitTarget.find(R=>P===R)!==void 0}ensureBlankLine(P){this._preventBlankLine||(this._numBlankLinesNeeded=Math.max(this._numBlankLinesNeeded,P))}preventBlankLine(){this._numBlankLinesNeeded=0,this._preventBlankLine=!0}changeIndent(P){if(this._lastNewline===void 0)return(0,l.panic)("Cannot change indent for the first line");this._lastNewline.indentationChange+=P}}let w=class{constructor(P,O){this.targetLanguage=P,this.emitTable=R=>{if(R.length===0)return;const _=R.map(L=>L.map(g=>(0,n.sourcelikeToSource)(g)));this._emitContext.emitItem({kind:"table",table:_}),this._emitContext.emitNewline()},this.typeGraph=O.typeGraph,this.leadingComments=O.leadingComments,this._finishedFiles=new Map,this._finishedEmitContexts=new Map,this._emitContext=new c}ensureBlankLine(P=1){this._emitContext.ensureBlankLine(P)}preventBlankLine(){this._emitContext.preventBlankLine()}emitItem(P){this._emitContext.emitItem(P)}emitItemOnce(P){return this._emitContext.containsItem(P)?!1:(this.emitItem(P),!0)}emitLineOnce(...P){let O=!0;P.length===1?O=this.emitItemOnce(P[0]):P.length>1&&(O=this.emitItemOnce(P)),O&&this._emitContext.emitNewline()}emitLine(...P){P.length===1?this._emitContext.emitItem(P[0]):P.length>1&&this._emitContext.emitItem(P),this._emitContext.emitNewline()}emitMultiline(P){const O=P.split(`
179
+ `),R=O.length;if(R===0)return;this.emitLine(O[0]);let _=0;for(let L=1;L<R;L++){const g=O[L],{indent:y,text:h}=u(g);if((0,l.assert)(y%4===0,"Indentation is not a multiple of 4."),h!==null){const p=y/4;this.changeIndent(p-_),_=p,this.emitLine(h)}else this._emitContext.emitNewline()}_!==0&&this.changeIndent(-_)}gatherSource(P){const O=this._emitContext;this._emitContext=new c,P(),(0,l.assert)(!this._emitContext.isNested,"emit context not restored correctly");const R=this._emitContext.source;return this._emitContext=O,R}emitGatheredSource(P){for(const O of P)this._emitContext.emitItem(O)}emitAnnotated(P,O){const R=this.gatherSource(O),_=(0,n.sourcelikeToSource)(R);this._emitContext.emitItem((0,n.annotated)(P,_))}emitIssue(P,O){this.emitAnnotated(new a.IssueAnnotationData(P),O)}changeIndent(P){this._emitContext.changeIndent(P)}iterableForEach(P,O){const R=Array.from(P);let _=!0;for(const[L,g]of(0,e.iterableEnumerate)(R)){const y=R.length===1?"only":_?"first":L===R.length-1?"last":"middle";O(g,y),_=!1}}forEach(P,O,R,_){let L=!1;return this.iterableForEach(P,([g,y],h)=>{h==="only"||h==="first"?this.ensureBlankLine(R):this.ensureBlankLine(O),_(y,g,h),L=!0}),L}forEachWithBlankLines(P,O,R){const{position:_,count:L}=d(O),g=["interposing","leading-and-interposing"].indexOf(_)>=0,y=["leading","leading-and-interposing"].indexOf(_)>=0;return this.forEach(P,g?L:0,y?L:0,R)}indent(P){this.changeIndent(1),P(),this.changeIndent(-1)}assignNames(){return(0,t.assignNames)(this.setUpNaming())}initializeEmitContextForFilename(P){if(this._finishedEmitContexts.has(P.toLowerCase())){const O=this._finishedEmitContexts.get(P.toLowerCase());O!==void 0&&(this._emitContext=O)}}finishFile(P){this._finishedFiles.has(P)&&console.log(`[WARNING] Tried to emit file ${P} more than once. If performing multi-file output this warning can be safely ignored.`);const O=(0,n.sourcelikeToSource)(this._emitContext.source);this._finishedFiles.set(P,O),this._finishedEmitContexts.set(P.toLowerCase(),this._emitContext),this._emitContext=new c}render(P){return this._names=this.assignNames(),this.emitSource(P),this._emitContext.isEmpty||this.finishFile(P),{sources:this._finishedFiles,names:this._names}}get names(){return this._names===void 0?(0,l.panic)("Names accessed before they were assigned"):this._names}};return Ns.Renderer=w,Ns}var yi={},tm;function Pk(){if(tm)return yi;tm=1,Object.defineProperty(yi,"__esModule",{value:!0}),yi.declarationsForGraph=yi.cycleBreakerTypesForGraph=yi.DeclarationIR=void 0;const e=et(),t=Qe(),n=$g(),a=yn();let l=class{constructor(U,P){this.forwardedTypes=P,this.declarations=Array.from(U)}};yi.DeclarationIR=l;function d(w,U,P){const O=U.indexOf(w);if(O<0)return;if(P===void 0)return U[O];const _=U.slice(0,O+1).reverse().find(P);return _===void 0?(0,t.panic)("Found a cycle that cannot be broken"):_}function u(w,U,P){const O=new Set,R=new Set,_=Array.from(w.topLevels.values());function L(g,y){if(!O.has(g)){if(U(g))for(const h of g.getChildren())_.push(h);else{const h=d(g,y,P);if(h!==void 0){R.add(h);return}for(const p of g.getChildren())y.unshift(g),L(p,y),y.shift()}O.add(g)}}for(;;){const g=_.pop();if(g===void 0)break;const y=[];L(g,y),(0,t.assert)(y.length===0)}return R}yi.cycleBreakerTypesForGraph=u;function c(w,U,P,O){const R=U===void 0,_=[],L=new Set,g=new Set;function y(p,k){const D=p.stronglyConnectedComponents();function C(f){if(g.has(f))return;g.add(f);const E=(0,e.setFilter)(f,O);if(E.size===1){_.push({kind:"define",type:(0,t.defined)((0,e.iterableFirst)(E))});return}if(E.size===0&&f.size===1)return;if(E.size===0){_.push({kind:"define",type:(0,t.defined)((0,e.iterableFirst)(f))});return}if(U===void 0){for(const r of E)_.push({kind:"define",type:r});return}const b=(0,e.setFilter)(f,U);if(b.size===0)return(0,a.messageError)("IRNoForwardDeclarableTypeInCycle",{});for(const r of b)_.push({kind:"forward",type:r});(0,e.setUnionInto)(L,b);const F=(0,e.setSubtract)(f,b),m=new n.Graph(F,!0,r=>(0,e.setIntersect)(P(r),F));y(m);for(const r of b)_.push({kind:"define",type:r})}const A=D.findRoots();for(const f of A)D.dfsTraversal(f,R,C)}const h=w.makeGraph(!1,P);return y(h),new l(_,L)}return yi.declarationsForGraph=c,yi}var Dl={},Os={},Wr={},nm;function df(){if(nm)return Wr;nm=1;var e=Wr.__awaiter||function(a,l,d,u){function c(w){return w instanceof d?w:new d(function(U){U(w)})}return new(d||(d=Promise))(function(w,U){function P(_){try{R(u.next(_))}catch(L){U(L)}}function O(_){try{R(u.throw(_))}catch(L){U(L)}}function R(_){_.done?w(_.value):c(_.value).then(P,O)}R((u=u.apply(a,l||[])).next())})};Object.defineProperty(Wr,"__esModule",{value:!0}),Wr.JSONSchemaStore=void 0;const t=Qe();let n=class{constructor(){this._schemas=new Map}add(l,d){(0,t.assert)(!this._schemas.has(l),"Cannot set a schema for an address twice"),this._schemas.set(l,d)}get(l,d){return e(this,void 0,void 0,function*(){let u=this._schemas.get(l);if(u!==void 0)return u;d&&console.log(`trying to fetch ${l}`);try{u=yield this.fetch(l)}catch{}if(u===void 0){d&&console.log(`couldn't fetch ${l}`);return}return d&&console.log(`successully fetched ${l}`),this.add(l,u),u})}};return Wr.JSONSchemaStore=n,Wr}var Bl={},im;function Ha(){return im||(im=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.accessorNamesAttributeProducer=e.makeAccessorNames=e.unionMemberName=e.makeUnionMemberNamesAttribute=e.unionMemberNamesTypeAttributeKind=e.makeUnionIdentifierAttribute=e.unionIdentifierTypeAttributeKind=e.getAccessorName=e.enumCaseNames=e.objectPropertyNames=e.lookupKey=e.accessorNamesTypeAttributeKind=void 0;const t=et(),n=At(),a=Qe(),l=yn();class d extends n.TypeAttributeKind{constructor(){super("accessorNames")}makeInferred(I){}}e.accessorNamesTypeAttributeKind=new d;function u(C,I){if(typeof C=="string")return[C,!1];const A=C.get(I);if(A!==void 0)return[A,!0];const f=C.get("*");if(f!==void 0)return[f,!1]}function c(C,I,A){const f=C.get(I);if(f!==void 0)return u(f,A)}e.lookupKey=c;function w(C,I){const A=e.accessorNamesTypeAttributeKind.tryGetInAttributes(C.getAttributes()),f=C.getProperties();return A===void 0?(0,t.mapMap)(f,E=>{}):(0,t.mapMap)(f,(E,b)=>c(A,b,I))}e.objectPropertyNames=w;function U(C,I){const A=e.accessorNamesTypeAttributeKind.tryGetInAttributes(C.getAttributes());return A===void 0?(0,t.mapMap)(C.cases.entries(),f=>{}):(0,t.mapMap)(C.cases.entries(),f=>c(A,f,I))}e.enumCaseNames=U;function P(C,I){const A=C.get(I);return A===void 0?[void 0,!1]:A}e.getAccessorName=P;class O extends n.TypeAttributeKind{constructor(){super("unionIdentifier")}combine(I){return(0,t.setUnionManyInto)(new Set,I)}makeInferred(I){return new Set}}e.unionIdentifierTypeAttributeKind=new O;let R=0;function _(){const C=e.unionIdentifierTypeAttributeKind.makeAttributes(new Set([R]));return R+=1,C}e.makeUnionIdentifierAttribute=_;class L extends n.TypeAttributeKind{constructor(){super("unionMemberNames")}combine(I){const A=new Map;for(const f of I)(0,t.mapMergeInto)(A,f);return A}}e.unionMemberNamesTypeAttributeKind=new L;function g(C,I){const A=(0,a.defined)(e.unionIdentifierTypeAttributeKind.tryGetInAttributes(C)),f=(0,t.mapFromIterable)(A,E=>I);return e.unionMemberNamesTypeAttributeKind.makeAttributes(f)}e.makeUnionMemberNamesAttribute=g;function y(C,I,A){const f=e.unionIdentifierTypeAttributeKind.tryGetInAttributes(C.getAttributes());if(f===void 0)return[void 0,!1];const E=e.unionMemberNamesTypeAttributeKind.tryGetInAttributes(I.getAttributes());if(E===void 0)return[void 0,!1];const b=new Set,F=new Set;for(const T of f){const v=E.get(T);if(v===void 0)continue;const M=u(v,A);if(M===void 0)continue;const[x,W]=M;W?F.add(x):b.add(x)}let m,r,s=(0,t.iterableFirst)(F);if(s!==void 0)m=F.size,r=!0;else{if(s=(0,t.iterableFirst)(b),s===void 0)return[void 0,!1];m=b.size,r=!1}return(0,l.messageAssert)(m===1,"SchemaMoreThanOneUnionMemberName",{names:Array.from(b)}),[s,r]}e.unionMemberName=y;function h(C){return typeof C=="string"?!0:(0,a.isStringMap)(C,I=>typeof I=="string")}function p(C){return typeof C=="string"?C:(0,t.mapFromObject)(C)}function k(C){const I=(0,a.checkStringMap)(C,h);return(0,t.mapMap)((0,t.mapFromObject)(I),p)}e.makeAccessorNames=k;function D(C,I,A,f){if(typeof C!="object")return;const E=C["qt-accessors"];if(E!==void 0){if(f===void 0)return{forType:e.accessorNamesTypeAttributeKind.makeAttributes(k(E))};{const b=_(),F=(0,a.checkArray)(E,h);(0,l.messageAssert)(f.length===F.length,"SchemaWrongAccessorEntryArrayLength",{operation:"oneOf",ref:I.push("oneOf")});const m=F.map(r=>g(b,p(r)));return{forUnion:b,forCases:m}}}}e.accessorNamesAttributeProducer=D}(Bl)),Bl}var jl={},rm;function tb(){return rm||(rm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.enumValuesAttributeProducer=e.enumCaseValues=e.enumValuesTypeAttributeKind=void 0;const t=et(),n=Ha(),a=At();class l extends a.TypeAttributeKind{constructor(){super("enumValues")}makeInferred(w){}}e.enumValuesTypeAttributeKind=new l;function d(c,w){const U=e.enumValuesTypeAttributeKind.tryGetInAttributes(c.getAttributes());return U===void 0?(0,t.mapMap)(c.cases.entries(),P=>{}):(0,t.mapMap)(c.cases.entries(),P=>(0,n.lookupKey)(U,P,w))}e.enumCaseValues=d;function u(c,w,U){if(typeof c!="object")return;const P=c["qt-enum-values"];if(P!==void 0)return{forType:e.enumValuesTypeAttributeKind.makeAttributes((0,n.makeAccessorNames)(P))}}e.enumValuesAttributeProducer=u}(jl)),jl}var Ul={},sm;function Yr(){return sm||(sm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.patternForType=e.patternAttributeProducer=e.patternTypeAttributeKind=e.PatternTypeAttributeKind=e.minMaxLengthForType=e.minMaxValueForType=e.minMaxLengthAttributeProducer=e.minMaxAttributeProducer=e.minMaxLengthTypeAttributeKind=e.minMaxTypeAttributeKind=e.MinMaxConstraintTypeAttributeKind=void 0;const t=At(),n=Qe(),a=yn();function l(L){const[g,y]=L;if(typeof g=="number"&&typeof y=="number"&&g>y)return(0,a.messageError)("MiscInvalidMinMaxConstraint",{min:g,max:y});if(!(g===void 0&&y===void 0))return L}class d extends t.TypeAttributeKind{constructor(g,y,h,p){super(g),this._typeKinds=y,this._minSchemaProperty=h,this._maxSchemaProperty=p}get inIdentity(){return!0}combine(g){(0,n.assert)(g.length>0);let[y,h]=g[0];for(let p=1;p<g.length;p++){const[k,D]=g[p];typeof y=="number"&&typeof k=="number"?y=Math.min(y,k):y=void 0,typeof h=="number"&&typeof D=="number"?h=Math.max(h,D):h=void 0}return l([y,h])}intersect(g){(0,n.assert)(g.length>0);let[y,h]=g[0];for(let p=1;p<g.length;p++){const[k,D]=g[p];typeof y=="number"&&typeof k=="number"?y=Math.max(y,k):y===void 0&&(y=k),typeof h=="number"&&typeof D=="number"?h=Math.min(h,D):h===void 0&&(h=D)}return l([y,h])}makeInferred(g){}addToSchema(g,y,h){if(this._typeKinds.has(y.kind))return;const[p,k]=h;p!==void 0&&(g[this._minSchemaProperty]=p),k!==void 0&&(g[this._maxSchemaProperty]=k)}stringify([g,y]){return`${g}-${y}`}}e.MinMaxConstraintTypeAttributeKind=d,e.minMaxTypeAttributeKind=new d("minMax",new Set(["integer","double"]),"minimum","maximum"),e.minMaxLengthTypeAttributeKind=new d("minMaxLength",new Set(["string"]),"minLength","maxLength");function u(L,g,y){if(typeof L!="object")return;let h,p;if(typeof L[g]=="number"&&(h=L[g]),typeof L[y]=="number"&&(p=L[y]),!(h===void 0&&p===void 0))return[h,p]}function c(L,g,y){if(!y.has("number")&&!y.has("integer"))return;const h=u(L,"minimum","maximum");if(h!==void 0)return{forNumber:e.minMaxTypeAttributeKind.makeAttributes(h)}}e.minMaxAttributeProducer=c;function w(L,g,y){if(!y.has("string"))return;const h=u(L,"minLength","maxLength");if(h!==void 0)return{forString:e.minMaxLengthTypeAttributeKind.makeAttributes(h)}}e.minMaxLengthAttributeProducer=w;function U(L){return e.minMaxTypeAttributeKind.tryGetInAttributes(L.getAttributes())}e.minMaxValueForType=U;function P(L){return e.minMaxLengthTypeAttributeKind.tryGetInAttributes(L.getAttributes())}e.minMaxLengthForType=P;class O extends t.TypeAttributeKind{constructor(){super("pattern")}get inIdentity(){return!0}combine(g){return(0,n.assert)(g.length>0),g.map(y=>`(${y})`).join("|")}intersect(g){}makeInferred(g){}addToSchema(g,y,h){y.kind==="string"&&(g.pattern=h)}}e.PatternTypeAttributeKind=O,e.patternTypeAttributeKind=new O;function R(L,g,y){if(typeof L!="object"||!y.has("string"))return;const h=L.pattern;if(typeof h=="string")return{forString:e.patternTypeAttributeKind.makeAttributes(h)}}e.patternAttributeProducer=R;function _(L){return e.patternTypeAttributeKind.tryGetInAttributes(L.getAttributes())}e.patternForType=_}(Ul)),Ul}var om;function Dc(){return om||(om=1,function(e){var t=Os.__awaiter||function(se,ie,ye,be){function Ae(pe){return pe instanceof ye?pe:new ye(function(le){le(pe)})}return new(ye||(ye=Promise))(function(pe,le){function me(z){try{Q(be.next(z))}catch(V){le(V)}}function de(z){try{Q(be.throw(z))}catch(V){le(V)}}function Q(z){z.done?pe(z.value):Ae(z.value).then(me,de)}Q((be=be.apply(se,ie||[])).next())})},n=Os.__importDefault||function(se){return se&&se.__esModule?se:{default:se}};Object.defineProperty(e,"__esModule",{value:!0}),e.JSONSchemaInput=e.schemaTypeDict=e.Ref=e.PathElementKind=void 0;const a=n(eb()),l=et(),d=mt(),u=Qe(),c=qi(),w=qi(),U=At(),P=df(),O=yn(),R=Oi(),_=Ka(),L=Ha(),g=tb(),y=Yr(),h=Yr(),p=Yr(),k=ff();var D;(function(se){se[se.Root=0]="Root",se[se.KeyOrIndex=1]="KeyOrIndex",se[se.Type=2]="Type",se[se.Object=3]="Object"})(D=e.PathElementKind||(e.PathElementKind={}));function C(se){if(se.kind===D.KeyOrIndex)return se.key}function I(se,ie){if(se.kind!==ie.kind)return!1;switch(se.kind){case D.Type:return se.index===ie.index;case D.KeyOrIndex:return se.key===ie.key;default:return!0}}function A(se,ie){const ye=typeof se=="function"?se():se instanceof m?se:se.canonicalRef;return Object.assign({ref:ye},ie===void 0?{}:ie)}function f(se,ie){return Array.isArray(se)?(0,O.messageError)("SchemaArrayIsInvalidSchema",A(ie)):se===null?(0,O.messageError)("SchemaNullIsInvalidSchema",A(ie)):typeof se!="object"?(0,O.messageError)("SchemaInvalidJSONSchemaType",A(ie,{type:typeof se})):se}function E(se,ie){return typeof se=="boolean"?se:f(se,ie)}const b=new RegExp("^[0-9]+$");function F(se){return typeof se=="string"&&(se=new a.default(se)),new a.default(a.default.decode(se.clone().normalize().toString()))}class m{static root(ie){const ye=(0,l.definedMap)(ie,be=>new a.default(be));return new m(ye,[])}static parsePath(ie){const ye=[];if(ie.startsWith("/")&&(ye.push({kind:D.Root}),ie=ie.slice(1)),ie!==""){const be=ie.split("/");for(let Ae=0;Ae<be.length;Ae++)ye.push({kind:D.KeyOrIndex,key:be[Ae]})}return ye}static parseURI(ie,ye=!1){ye||(ie=ie.clone());let be=ie.fragment();ie.fragment(""),(ie.host()!==""||ie.filename()!=="")&&be===""&&(be="/");const Ae=m.parsePath(be);return new m(ie,Ae)}static parse(ie){return m.parseURI(new a.default(ie),!0)}constructor(ie,ye){this.path=ye,ie!==void 0?((0,u.assert)(ie.fragment()==="",`Ref URI with fragment is not allowed: ${ie.toString()}`),this.addressURI=F(ie)):this.addressURI=void 0}get hasAddress(){return this.addressURI!==void 0}get address(){return(0,u.defined)(this.addressURI).toString()}get isRoot(){return this.path.length===1&&this.path[0].kind===D.Root}pushElement(ie){const ye=Array.from(this.path);return ye.push(ie),new m(this.addressURI,ye)}push(...ie){let ye=this;for(const be of ie)ye=ye.pushElement({kind:D.KeyOrIndex,key:be});return ye}pushObject(){return this.pushElement({kind:D.Object})}pushType(ie){return this.pushElement({kind:D.Type,index:ie})}resolveAgainst(ie){let ye=this.addressURI;return ie!==void 0&&ie.addressURI!==void 0&&(ye=ye===void 0?ie.addressURI:ye.absoluteTo(ie.addressURI)),new m(ye,this.path)}get name(){const ie=Array.from(this.path);for(;;){const ye=ie.pop();if(ye===void 0||ye.kind===D.Root){let be=this.addressURI!==void 0?this.addressURI.filename():"";const Ae=this.addressURI!==void 0?this.addressURI.suffix():"";return be.length>Ae.length+1&&(be=be.slice(0,be.length-Ae.length-1)),be===""?"Something":be}switch(ye.kind){case D.KeyOrIndex:if(b.test(ye.key))return ye.key;break;case D.Type:case D.Object:return(0,u.panic)("We shouldn't try to get the name of Type or Object refs");default:return(0,u.assertNever)(ye)}}}get definitionName(){const ie=(0,l.arrayGetFromEnd)(this.path,2);if(ie!==void 0&&C(ie)==="definitions")return C((0,u.defined)((0,l.arrayLast)(this.path)))}toString(){function ie(be){switch(be.kind){case D.Root:return"";case D.Type:return`type/${be.index.toString()}`;case D.Object:return"object";case D.KeyOrIndex:return be.key;default:return(0,u.assertNever)(be)}}return(this.addressURI===void 0?"":this.addressURI.toString())+"#"+this.path.map(ie).join("/")}lookup(ie,ye,be){const Ae=()=>new m(this.addressURI,ye),pe=ye[0];if(pe===void 0)return E(ie,Ae);const le=ye.slice(1);switch(pe.kind){case D.Root:return this.lookup(be,le,be);case D.KeyOrIndex:const me=pe.key;if(Array.isArray(ie)){if(!/^\d+$/.test(me))return(0,O.messageError)("SchemaCannotIndexArrayWithNonNumber",A(Ae,{actual:me}));const de=parseInt(pe.key,10);return de>=ie.length?(0,O.messageError)("SchemaIndexNotInArray",A(Ae,{index:de})):this.lookup(ie[de],le,be)}else return(0,l.hasOwnProperty)(ie,me)?this.lookup(f(ie,Ae)[pe.key],le,be):(0,O.messageError)("SchemaKeyNotInObject",A(Ae,{key:me}));case D.Type:return(0,u.panic)('Cannot look up path that indexes "type"');case D.Object:return(0,u.panic)('Cannot look up path that indexes "object"');default:return(0,u.assertNever)(pe)}}lookupRef(ie){return this.lookup(ie,this.path,ie)}equals(ie){if(!(ie instanceof m))return!1;if(this.addressURI!==void 0&&ie.addressURI!==void 0){if(!this.addressURI.equals(ie.addressURI))return!1}else if(this.addressURI===void 0!=(ie.addressURI===void 0))return!1;const ye=this.path.length;if(ye!==ie.path.length)return!1;for(let be=0;be<ye;be++)if(!I(this.path[be],ie.path[be]))return!1;return!0}hashCode(){let ie=(0,l.hashCodeOf)((0,l.definedMap)(this.addressURI,ye=>ye.toString()));for(const ye of this.path)switch(ie=(0,l.addHashCode)(ie,ye.kind),ye.kind){case D.Type:ie=(0,l.addHashCode)(ie,ye.index);break;case D.KeyOrIndex:ie=(0,l.addHashCode)(ie,(0,l.hashString)(ye.key));break}return ie}}e.Ref=m;class r{constructor(ie,ye,be=!1){this.haveID=be,this.canonicalRef=ie,this.virtualRef=ye!==void 0?ye:ie}updateWithID(ie){if(typeof ie!="string")return this;const ye=m.parse(ie),be=this.haveID?ye.resolveAgainst(this.virtualRef):ye;return this.haveID||(0,O.messageAssert)(be.hasAddress,"SchemaIDMustHaveAddress",A(this,{id:ie})),new r(this.canonicalRef,be,!0)}push(...ie){return new r(this.canonicalRef.push(...ie),this.virtualRef.push(...ie),this.haveID)}pushObject(){return new r(this.canonicalRef.pushObject(),this.virtualRef.pushObject(),this.haveID)}pushType(ie){return new r(this.canonicalRef.pushType(ie),this.virtualRef.pushType(ie),this.haveID)}toString(){return`${this.virtualRef.toString()} (${this.canonicalRef.toString()})`}}class s{constructor(ie){this._ctx=ie,this._map=new l.EqualityMap,this._schemaAddressesAdded=new Set}addIDs(ie,ye){if(ie===null)return;if(Array.isArray(ie)){for(let pe=0;pe<ie.length;pe++)this.addIDs(ie[pe],ye.push(pe.toString()));return}if(typeof ie!="object")return;const be=ye,Ae=ie.$id;typeof Ae=="string"&&(ye=ye.updateWithID(Ae)),ye.haveID&&(this._ctx.debugPrintSchemaResolving&&console.log(`adding mapping ${ye.toString()}`),this._map.set(ye.virtualRef,be));for(const pe of Object.getOwnPropertyNames(ie))this.addIDs(ie[pe],ye.push(pe))}addSchema(ie,ye){return this._schemaAddressesAdded.has(ye)?!1:(this.addIDs(ie,new r(m.root(ye),m.root(void 0))),this._schemaAddressesAdded.add(ye),!0)}canonize(ie,ye){const be=ye.resolveAgainst(ie.virtualRef),Ae=this._map.get(be);if(Ae!==void 0)return Ae;const pe=be.addressURI===void 0?new m(ie.canonicalRef.addressURI,be.path):be;return new r(pe,new m(void 0,be.path))}}function T(se,ie){let ye;if(typeof se=="string")ye=new Set([se]);else if(Array.isArray(se)){const pe=[];for(const le of se){if(typeof le!="string")return(0,O.messageError)("SchemaTypeElementMustBeString",A(ie,{element:le}));pe.push(le)}ye=new Set(pe)}else return(0,O.messageError)("SchemaTypeMustBeStringOrStringArray",A(ie,{actual:se}));(0,O.messageAssert)(ye.size>0,"SchemaNoTypeSpecified",A(ie));const be=["null","boolean","object","array","number","string","integer"],Ae=(0,l.iterableFind)(ye,pe=>be.indexOf(pe)<0);return Ae!==void 0?(0,O.messageError)("SchemaInvalidType",A(ie,{type:Ae})):ye}function v(se,ie){if(!Array.isArray(se))return(0,O.messageError)("SchemaRequiredMustBeStringOrStringArray",A(ie,{actual:se}));for(const ye of se)if(typeof ye!="string")return(0,O.messageError)("SchemaRequiredElementMustBeString",A(ie,{element:ye}));return se}e.schemaTypeDict={null:!0,boolean:!0,string:!0,integer:!0,number:!0,array:!0,object:!0};const M=Object.getOwnPropertyNames(e.schemaTypeDict);function x(se){const ie=(0,l.iterableFind)(d.transformedStringTypeTargetTypeKindsMap,([ye,{jsonSchema:be}])=>be===se);if(ie!==void 0)return ie[0]}function W(se,ie){return se===void 0?(0,O.messageError)("SchemaFetchErrorTopLevel",{address:ie}):(0,O.messageError)("SchemaFetchError",{address:ie,base:se.canonicalRef})}class S{constructor(ie,ye,be){this._ctx=ie,this._store=ye,this._canonizer=be}tryResolveVirtualRef(ie,ye,be){return t(this,void 0,void 0,function*(){let Ae=!1;for(;;){const pe=this._canonizer.canonize(ie,be),le=pe.canonicalRef;(0,u.assert)(le.hasAddress,"Canonical ref can't be resolved without an address");const me=le.address;let de=le.addressURI===void 0?void 0:yield this._store.get(me,this._ctx.debugPrintSchemaResolving);if(de===void 0)return[void 0,pe];if(this._canonizer.addSchema(de,me))(0,u.assert)(!Ae,"We can't add a schema twice"),Ae=!0;else{let Q=this._canonizer.canonize(ye,be);return ie!==void 0&&(Q=new r(new m(pe.canonicalRef.addressURI,Q.canonicalRef.path),Q.virtualRef,Q.haveID)),[Q.canonicalRef.lookupRef(de),Q]}}})}resolveVirtualRef(ie,ye){return t(this,void 0,void 0,function*(){this._ctx.debugPrintSchemaResolving&&console.log(`resolving ${ye.toString()} relative to ${ie.toString()}`);let be=yield this.tryResolveVirtualRef(ie,ie,ye),Ae=be[0];if(Ae!==void 0)return this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${be[1].toString()}`),[Ae,be[1]];const pe=new r(ie.canonicalRef,new m(ie.canonicalRef.addressURI,ie.virtualRef.path),ie.haveID);return be=yield this.tryResolveVirtualRef(pe,ie,ye),Ae=be[0],Ae!==void 0?(this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${be[1].toString()}`),[Ae,be[1]]):W(ie,ye.address)})}resolveTopLevelRef(ie){return t(this,void 0,void 0,function*(){return yield this.resolveVirtualRef(new r(new m(ie.addressURI,[])),new m(void 0,ie.path))})}}function B(se,ie,ye,be){return t(this,void 0,void 0,function*(){let Ae=new l.EqualityMap;function pe(Q,z){const V=Ae.get(Q.canonicalRef);V!==void 0&&(0,u.assert)(V===z,"Trying to set path again to different type"),Ae.set(Q.canonicalRef,z)}function le(Q,z,V,ae,Te,Ie=Ce=>Ce.toLowerCase()){return t(this,void 0,void 0,function*(){const Ce=new Set(ae),We=(0,l.mapSortBy)((0,l.mapFromObject)(V),(K,j)=>Ie(j)),Ge=yield(0,l.mapMapSync)(We,(K,j)=>t(this,void 0,void 0,function*(){const J=Q.push("properties",j),ce=yield de(E(K,J.canonicalRef),J,(0,w.makeNamesTypeAttributes)(j,!0)),X=!Ce.has(j);return ie.makeClassProperty(ce,X)}));let Y;if(Te===void 0||Te===!0)Y=ie.getPrimitiveType("any");else if(Te===!1)Y=void 0;else{const K=Q.push("additionalProperties");Y=yield de(E(Te,K.canonicalRef),K,(0,w.singularizeTypeNames)(z))}const te=(0,l.setSubtract)(Ce,Ge.keys());if(te.size>0){const K=Y;if(K===void 0)return(0,O.messageError)("SchemaAdditionalTypesForbidRequired",A(Q));const j=(0,l.mapFromIterable)(te,J=>ie.makeClassProperty(K,!1));(0,l.mapMergeInto)(Ge,j)}return ie.getUniqueObjectType(z,Ge,Y)})}function me(Q,z,V){return t(this,void 0,void 0,function*(){const ae=Array.isArray(Q.enum)?Q.enum:void 0,Te=(0,l.definedMap)(Q.type,ze=>T(ze,z));function Ie(ze){if(Te!==void 0&&!Te.has(ze))return!1;if(ae!==void 0){let H;switch(ze){case"null":H=ke=>ke===null;break;case"integer":H=ke=>typeof ke=="number"&&ke===Math.floor(ke);break;default:H=ke=>typeof ke===ze;break}return ae.find(H)!==void 0}return!0}const Ce=(0,l.setFilter)(M,Ie);let We;function Ge(ze,H){let ke;if(ze===void 0&&We!==void 0)ke=We;else{ke=[];for(const Ne of be){const oe=Ne(Q,z.canonicalRef,Ce,ze);oe!==void 0&&ke.push(oe)}ze===void 0&&(We=ke)}for(const Ne of ke)H(Ne)}function Y(ze){let H=U.emptyTypeAttributes;return Ge(void 0,ke=>{const Ne=ze(ke);Ne!==void 0&&(H=(0,U.combineTypeAttributes)("union",H,Ne))}),H}function te(ze){return Q.oneOf===void 0&&(ze=(0,U.combineTypeAttributes)("union",ze,Y(({forType:H,forUnion:ke,forCases:Ne})=>((0,u.assert)(ke===void 0&&Ne===void 0,"We can't have attributes for unions and cases if we don't have a union"),H)))),(0,w.modifyTypeNames)(ze,H=>{const ke=(0,u.defined)(H);if(!ke.areInferred)return ke;let Ne=Q.title;return typeof Ne!="string"&&(Ne=z.canonicalRef.definitionName),typeof Ne=="string"?c.TypeNames.make(new Set([Ne]),new Set,Q.$ref!==void 0):ke.makeInferred()})}V=te(V);const K=(0,U.makeTypeAttributesInferred)(V);function j(ze){const H=x(Q.format);return H===void 0?ie.getStringType(ze,R.StringTypes.unrestricted):ie.getPrimitiveType(H,ze)}function J(){return t(this,void 0,void 0,function*(){const ze=(0,w.singularizeTypeNames)(V),H=Q.items;let ke;if(Array.isArray(H)){const Ne=z.push("items"),oe=yield(0,l.arrayMapSync)(H,(Le,Fe)=>t(this,void 0,void 0,function*(){const He=Ne.push(Fe.toString());return yield de(E(Le,He.canonicalRef),He,ze)}));ke=ie.getUnionType(U.emptyTypeAttributes,new Set(oe))}else if(typeof H=="object"){const Ne=z.push("items");ke=yield de(E(H,Ne.canonicalRef),Ne,ze)}else{if(H!==void 0)return(0,O.messageError)("SchemaArrayItemsMustBeStringOrArray",A(z,{actual:H}));ke=ie.getPrimitiveType("any")}return ie.addAttributes(ke,ze),ie.getArrayType(U.emptyTypeAttributes,ke)})}function ce(){return t(this,void 0,void 0,function*(){let ze;Q.required===void 0||typeof Q.required=="boolean"?ze=[]:ze=Array.from(v(Q.required,z));let H;Q.properties===void 0?H={}:H=f(Q.properties,z.canonicalRef);for(const Fe of Object.getOwnPropertyNames(H))H[Fe].required===!0&&ze.indexOf(Fe)<0&&ze.push(Fe);let ke=Q.additionalProperties;ke===void 0&&typeof Q.patternProperties=="object"&&(0,l.hasOwnProperty)(Q.patternProperties,".*")&&(ke=Q.patternProperties[".*"]);const Ne=(0,U.combineTypeAttributes)("union",K,Y(({forObject:Fe})=>Fe)),oe=Q.quicktypePropertyOrder?Q.quicktypePropertyOrder:[];return yield le(z,Ne,H,ze,ke,Fe=>{const He=oe.indexOf(Fe);return He!==-1?He:Fe.toLowerCase()})})}function X(ze,H){return t(this,void 0,void 0,function*(){const ke=z.push(H);return Array.isArray(ze)?yield(0,l.arrayMapSync)(ze,(Ne,oe)=>t(this,void 0,void 0,function*(){const Le=ke.push(oe.toString());return yield de(E(Ne,Le.canonicalRef),Le,(0,U.makeTypeAttributesInferred)(V))})):(0,O.messageError)("SchemaSetOperationCasesIsNotArray",A(ke,{operation:H,cases:ze}))})}const ge=ie.getUniqueIntersectionType(V,void 0);pe(z,ge);function Se(ze,H){return t(this,void 0,void 0,function*(){const ke=yield X(ze,H);let Ne=(0,U.makeTypeAttributesInferred)(V);H==="oneOf"&&Ge(ze,({forType:Le,forUnion:Fe,forCases:He})=>{if(Le!==void 0&&ie.addAttributes(ge,Le),Fe!==void 0&&(Ne=(0,U.combineTypeAttributes)("union",Ne,Fe)),He!==void 0){(0,u.assert)(He.length===ke.length,"Number of case attributes doesn't match number of cases");for(let qe=0;qe<ke.length;qe++)ie.addAttributes(ke[qe],He[qe])}});const oe=ie.getUniqueUnionType(Ne,void 0);return ie.setSetOperationMembers(oe,new Set(ke)),oe})}const De=ae===void 0&&(Te===void 0||Te.has("object")),we=ae===void 0&&(Te===void 0||Te.has("array")),Pe=Ce.has("string")&&ae!==void 0&&ae.find(ze=>typeof ze=="string")!==void 0,re=Te!==void 0||Q.properties!==void 0||Q.additionalProperties!==void 0||Q.items!==void 0||Q.required!==void 0||ae!==void 0,Re=[];if(re){const ze=[],H=Y(({forNumber:Ne})=>Ne);for(const[Ne,oe]of[["null","null"],["number","double"],["integer","integer"],["boolean","bool"]]){if(!Ce.has(Ne))continue;const Le=(0,d.isNumberTypeKind)(oe)?H:void 0;ze.push(ie.getPrimitiveType(oe,Le))}const ke=(0,U.combineTypeAttributes)("union",K,Y(({forString:Ne})=>Ne));if(Pe){const Ne=ae.filter(oe=>typeof oe=="string");ze.push(ie.getStringType(ke,R.StringTypes.fromCases(Ne)))}else Ce.has("string")&&ze.push(j(ke));we&&ze.push(yield J()),De&&ze.push(yield ce()),Re.push(ie.getUniqueUnionType(K,new Set(ze)))}if(Q.$ref!==void 0){if(typeof Q.$ref!="string")return(0,O.messageError)("SchemaRefMustBeString",A(z,{actual:typeof Q.$ref}));const ze=m.parse(Q.$ref),[H,ke]=yield se.resolveVirtualRef(z,ze),Ne=(0,w.modifyTypeNames)(V,oe=>(0,u.defined)(oe).areInferred?c.TypeNames.make(new Set([ke.canonicalRef.name]),new Set,!0):oe);Re.push(yield de(H,ke,Ne))}return Q.allOf!==void 0&&Re.push(...yield X(Q.allOf,"allOf")),Q.oneOf!==void 0&&Re.push(yield Se(Q.oneOf,"oneOf")),Q.anyOf!==void 0&&Re.push(yield Se(Q.anyOf,"anyOf")),ie.setSetOperationMembers(ge,new Set(Re)),ge})}function de(Q,z,V){return t(this,void 0,void 0,function*(){const ae=Ae.get(z.canonicalRef);if(ae!==void 0)return ae;let Te;return typeof Q=="boolean"?((0,O.messageAssert)(Q===!0,"SchemaFalseNotSupported",A(z)),Te=ie.getPrimitiveType("any")):(z=z.updateWithID(Q.$id),Te=yield me(Q,z,V)),pe(z,Te),Te})}for(const[Q,z]of ye){const[V,ae]=yield se.resolveTopLevelRef(z),Te=yield de(V,ae,(0,w.makeNamesTypeAttributes)(Q,!1));ie.addTopLevel(Q,Te)}})}function q(se){const ie=se.toLowerCase(),ye=[".json",".schema"];for(const be of ye)if(ie.endsWith(be)){const Ae=se.slice(0,se.length-be.length);if(Ae.length>0)return Ae}return se}function G(se){const ie=se.fragment();if(ie!==""){const be=ie.split("/"),Ae=be.length;if(be[Ae-1]!=="")return q(be[Ae-1]);if(Ae>1&&be[Ae-2]!=="")return q(be[Ae-2])}const ye=se.filename();return ye!==""?q(ye):(0,O.messageError)("DriverCannotInferNameForSchema",{uri:se.toString()})}function $(se,ie,ye){return t(this,void 0,void 0,function*(){const be=ie.fragment();let Ae=be.endsWith("/");Ae&&(ie=ie.clone().fragment(be.slice(0,-1)));const pe=m.parseURI(ie);pe.isRoot&&(Ae=!1);const le=(yield se.resolveTopLevelRef(pe))[0];if(Ae)return typeof le!="object"?(0,O.messageError)("SchemaCannotGetTypesFromBoolean",{ref:pe.toString()}):(0,l.mapMap)((0,l.mapFromObject)(le),(me,de)=>pe.push(de));{let me;if(typeof le=="object"&&typeof le.title=="string")me=le.title;else{const de=G(ie);me=de!==void 0?de:ye}return[me,pe]}})}class ee extends P.JSONSchemaStore{constructor(ie,ye){super(),this._inputs=ie,this._delegate=ye}fetch(ie){return t(this,void 0,void 0,function*(){const ye=this._inputs.get(ie);return ye!==void 0?E((0,u.parseJSON)(ye,"JSON Schema",ie),()=>m.root(ie)):this._delegate===void 0?(0,u.panic)(`Schema URI ${ie} requested, but no store given`):yield this._delegate.fetch(ie)})}}let ue=class{constructor(ie,ye=[],be=[]){this._schemaStore=ie,this._additionalSchemaAddresses=be,this.kind="schema",this.needSchemaProcessing=!0,this._schemaInputs=new Map,this._schemaSources=[],this._topLevels=new Map,this._needIR=!1,this._attributeProducers=[_.descriptionAttributeProducer,L.accessorNamesAttributeProducer,g.enumValuesAttributeProducer,k.uriSchemaAttributesProducer,y.minMaxAttributeProducer,h.minMaxLengthAttributeProducer,p.patternAttributeProducer].concat(ye)}get needIR(){return this._needIR}addTopLevel(ie,ye){this._topLevels.set(ie,ye)}addTypes(ie,ye){return t(this,void 0,void 0,function*(){if(this._schemaSources.length===0)return;let be=this._schemaStore;if(this._schemaInputs.size===0){if(be===void 0)return(0,u.panic)("Must have a schema store to process JSON Schema")}else be=this._schemaStore=new ee(this._schemaInputs,be);const Ae=be,pe=new s(ie);for(const me of this._additionalSchemaAddresses){const de=yield Ae.get(me,ie.debugPrintSchemaResolving);if(de===void 0)return(0,O.messageError)("SchemaFetchErrorAdditional",{address:me});pe.addSchema(de,me)}const le=new S(ie,(0,u.defined)(this._schemaStore),pe);for(const[me,de]of this._schemaSources){const Q=de.name,z=yield $(le,me,Q);if(Array.isArray(z)){let V;this._schemaSources.length===1?V=Q:V=z[0],this.addTopLevel(V,z[1])}else for(const[V,ae]of z)this.addTopLevel(V,ae)}yield B(le,ye,this._topLevels,this._attributeProducers)})}addTypesSync(){return(0,u.panic)("addTypesSync not supported in JSONSchemaInput")}addSource(ie){return t(this,void 0,void 0,function*(){return this.addSourceSync(ie)})}addSourceSync(ie){const{name:ye,uris:be,schema:Ae,isConverted:pe}=ie;pe!==!0&&(this._needIR=!0);let le;if(be===void 0?le=[new a.default(ye)]:le=be.map(me=>{const de=F(me);return de.clone().hash("").toString()===""&&de.path(ye),de}),Ae===void 0)(0,u.assert)(be!==void 0,"URIs must be given if schema source is not specified");else for(let me=0;me<le.length;me++){const de=le[me],Q=de.clone().hash(""),z=Q.path();let V=0;do V>0&&Q.path(`${z}-${V}`),V++;while(this._schemaInputs.has(Q.toString()));this._schemaInputs.set(Q.toString(),Ae),le[me]=Q.hash(de.hash())}for(const me of le)this._schemaSources.push([me,ie])}singleStringSchemaSource(){if(!this._schemaSources.every(([ye,{schema:be}])=>typeof be=="string"))return;const ie=new Set(this._schemaSources.map(([ye,{schema:be}])=>be));if(ie.size===1)return(0,u.defined)((0,l.iterableFirst)(ie))}};e.JSONSchemaInput=ue}(Os)),Os}var am;function Ka(){return am||(am=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.descriptionAttributeProducer=e.propertyDescriptionsTypeAttributeKind=e.descriptionTypeAttributeKind=e.addDescriptionToSchema=void 0;const t=et(),n=At(),a=Dc();function l(U,P){P!==void 0&&(U.description=Array.from(P).join(`
180
+ `))}e.addDescriptionToSchema=l;class d extends n.TypeAttributeKind{constructor(){super("description")}combine(P){return(0,t.setUnionManyInto)(new Set,P)}makeInferred(P){}addToSchema(P,O,R){l(P,R)}stringify(P){let O=(0,t.iterableFirst)(P);if(O!==void 0)return O.length>8&&(O=`${O.slice(0,5)}...`),P.size>1&&(O=`${O}, ...`),O}}e.descriptionTypeAttributeKind=new d;class u extends n.TypeAttributeKind{constructor(){super("propertyDescriptions")}combine(P){const O=new Map;for(const R of P)(0,t.mapMergeWithInto)(O,(_,L)=>(0,t.setUnion)(_,L),R);return O}makeInferred(P){}stringify(P){if(P.size!==0)return`prop descs: ${P.size}`}}e.propertyDescriptionsTypeAttributeKind=new u;function c(U){return U.kind===a.PathElementKind.KeyOrIndex&&U.key==="properties"}function w(U,P,O){if(typeof U!="object")return;let R=n.emptyTypeAttributes,_=n.emptyTypeAttributes;const L=P.path.length;if(O.has("object")||(0,t.setSubtract)(O,["null"]).size>1||U.enum!==void 0||L<2||!c(P.path[L-2])){const g=U.description;typeof g=="string"&&(R=e.descriptionTypeAttributeKind.makeAttributes(new Set([g])))}if(O.has("object")&&typeof U.properties=="object"){const g=(0,t.mapFilterMap)((0,t.mapFromObject)(U.properties),y=>{if(typeof y=="object"){const h=y.description;if(typeof h=="string")return new Set([h])}});g.size>0&&(_=e.propertyDescriptionsTypeAttributeKind.makeAttributes(g))}return{forType:R,forObject:_}}e.descriptionAttributeProducer=w}(Dl)),Dl}var xl={},um;function oo(){return um||(um=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.followTargetType=e.transformationForType=e.transformationTypeAttributeKind=e.Transformation=e.MinMaxValueTransformer=e.MinMaxLengthCheckTransformer=e.StringifyTransformer=e.ParseStringTransformer=e.StringProducerTransformer=e.UnionInstantiationTransformer=e.StringMatchTransformer=e.UnionMemberMatchTransformer=e.DecodingChoiceTransformer=e.ChoiceTransformer=e.ArrayEncodingTransformer=e.ArrayDecodingTransformer=e.EncodingTransformer=e.DecodingTransformer=e.MatchTransformer=e.ProducerTransformer=e.Transformer=void 0;const t=et(),n=mt(),a=At(),l=Qe(),d=Xn();function u(r){const s=m(r);return r===s?r.kind:`${r.kind} (${s.kind})`}function c(r){return(0,t.definedMapWithDefault)(r,0,s=>s.getNumberOfNodes())}class w{constructor(s,T,v){this.kind=s,this.graph=T,this.sourceTypeRef=v}get sourceType(){return(0,d.derefTypeRef)(this.sourceTypeRef,this.graph)}getChildren(){return new Set([this.sourceType])}getNumberOfNodes(){return 1}equals(s){return s instanceof w?this.sourceTypeRef===s.sourceTypeRef:!1}hashCode(){return(0,t.hashCodeOf)(this.sourceTypeRef)}debugDescription(){return`${u(this.sourceType)} -> ${this.kind}`}debugPrintContinuations(s){}debugPrint(s){console.log((0,l.indentationString)(s)+this.debugDescription()),this.debugPrintContinuations(s+1)}}e.Transformer=w;class U extends w{constructor(s,T,v,M){super(s,T,v),this.consumer=M}getChildren(){const s=super.getChildren();return this.consumer===void 0?s:(0,t.setUnionInto)(s,this.consumer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+c(this.consumer)}equals(s){return!super.equals(s)||!(s instanceof U)?!1:(0,t.areEqual)(this.consumer,s.consumer)}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.consumer))}debugPrintContinuations(s){this.consumer!==void 0&&this.consumer.debugPrint(s)}}e.ProducerTransformer=U;class P extends w{constructor(s,T,v,M){super(s,T,v),this.transformer=M}getChildren(){return(0,t.setUnionInto)(super.getChildren(),this.transformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.transformer.getNumberOfNodes()}equals(s){return!super.equals(s)||!(s instanceof P)?!1:this.transformer.equals(s.transformer)}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,this.transformer.hashCode())}debugPrintContinuations(s){this.transformer.debugPrint(s)}}e.MatchTransformer=P;class O extends U{constructor(s,T,v){super("decode",s,T,v)}get canFail(){return!1}reverse(s,T){return T!==void 0?(0,l.panic)("Reversing a decoding transformer cannot have a continuation"):this.consumer===void 0?new R(this.graph,s):this.consumer.reverse(s,new R(this.graph,this.consumer.sourceTypeRef))}reconstitute(s){return new O(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof O:!1}}e.DecodingTransformer=O;class R extends w{constructor(s,T){super("encode",s,T)}get canFail(){return!1}reverse(s,T){return(0,l.panic)("Can't reverse encoding transformer")}reconstitute(s){return new R(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef))}equals(s){return!(!super.equals(s)||!(s instanceof R))}}e.EncodingTransformer=R;class _ extends U{constructor(s,T,v,M,x){super("decode-array",s,T,v),this._itemTargetTypeRef=M,this.itemTransformer=x}getChildren(){const s=super.getChildren();return s.add(this.itemTargetType),(0,t.setUnionInto)(s,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return(0,d.derefTypeRef)(this._itemTargetTypeRef,this.graph)}reverse(s,T){if(T!==void 0)return(0,l.panic)("Reversing a decoding transformer cannot have a continuation");const v=this.itemTransformer.reverse(this._itemTargetTypeRef,void 0);return this.consumer===void 0?new L(this.graph,s,this.itemTransformer.sourceTypeRef,v):this.consumer.reverse(s,new L(this.graph,this.consumer.sourceTypeRef,this.itemTransformer.sourceTypeRef,v))}reconstitute(s){return new _(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)),s.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(s))}hashCode(){let s=super.hashCode();return s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this._itemTargetTypeRef)),s=(0,t.addHashCode)(s,this.itemTransformer.hashCode()),s}equals(s){return!super.equals(s)||!(s instanceof _)||!(0,t.areEqual)(this._itemTargetTypeRef,s._itemTargetTypeRef)?!1:this.itemTransformer.equals(s.itemTransformer)}debugPrintContinuations(s){this.itemTransformer.debugPrint(s),super.debugPrintContinuations(s)}}e.ArrayDecodingTransformer=_;class L extends w{constructor(s,T,v,M){super("encode-array",s,T),this._itemTargetTypeRef=v,this.itemTransformer=M}getChildren(){const s=super.getChildren();return s.add(this.itemTargetType),(0,t.setUnionInto)(s,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return(0,d.derefTypeRef)(this._itemTargetTypeRef,this.graph)}reverse(s,T){return(0,l.panic)("Can't reverse array encoding transformer")}reconstitute(s){return new L(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),s.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(s))}hashCode(){let s=super.hashCode();return s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this._itemTargetTypeRef)),(0,t.addHashCode)(s,this.itemTransformer.hashCode())}equals(s){return!super.equals(s)||!(s instanceof L)||!(0,t.areEqual)(this._itemTargetTypeRef,s._itemTargetTypeRef)?!1:this.itemTransformer.equals(s.itemTransformer)}debugPrintContinuations(s){this.itemTransformer.debugPrint(s),super.debugPrintContinuations(s)}}e.ArrayEncodingTransformer=L;class g extends w{constructor(s,T,v){super("choice",s,T),this.transformers=v,(0,l.assert)(v.length>0,"Choice must have at least one transformer")}getChildren(){let s=super.getChildren();for(const T of this.transformers)(0,t.setUnionInto)(s,T.getChildren());return s}getNumberOfNodes(){let s=0;for(const T of this.transformers)s+=T.getNumberOfNodes();return super.getNumberOfNodes()+s}get canFail(){return this.transformers.some(s=>s.canFail)}reverse(s,T){const v=this.transformers.map(M=>M.reverse(s,T));if(v.every(M=>M instanceof h)){const M=v,x=M[0];if(M.every(W=>x.memberType.equals(W.memberType))){const W=M.map(S=>S.transformer);return new h(this.graph,s,new g(this.graph,W[0].sourceTypeRef,W),x.memberTypeRef)}}return new g(this.graph,s,v)}reconstitute(s){return new g(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),this.transformers.map(T=>T.reconstitute(s)))}equals(s){return!super.equals(s)||!(s instanceof g)?!1:(0,t.areEqual)(this.transformers,s.transformers)}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.transformers))}debugPrintContinuations(s){for(const T of this.transformers)T.debugPrint(s)}}e.ChoiceTransformer=g;class y extends w{constructor(s,T,v,M,x,W,S,B,q){super("decoding-choice",s,T),this.nullTransformer=v,this.integerTransformer=M,this.doubleTransformer=x,this.boolTransformer=W,this.stringTransformer=S,this.arrayTransformer=B,this.objectTransformer=q}get transformers(){const s=[];function T(v){v!==void 0&&s.push(v)}return T(this.nullTransformer),T(this.integerTransformer),T(this.doubleTransformer),T(this.boolTransformer),T(this.stringTransformer),T(this.arrayTransformer),T(this.objectTransformer),s}getChildren(){let s=super.getChildren();for(const T of this.transformers)(0,t.setUnionInto)(s,T.getChildren());return s}getNumberOfNodes(){let s=super.getNumberOfNodes();for(const T of this.transformers)s+=c(T);return s}get canFail(){return!1}reverse(s,T){(0,l.assert)(T===void 0,"Reversing a decoding transformer can't have a target transformer");let v=new Map,M=new Map;function x(G){if(G instanceof h){const $=G.memberType;let ee=M.get($);ee===void 0&&(ee=[],M.set($,ee)),ee.push(G)}else{const $=G.sourceType.kind;let ee=v.get($);ee===void 0&&(ee=[],v.set($,ee)),ee.push(G)}}function W(G){const $=G.reverse(s,void 0);let ee=[];$ instanceof g?ee=$.transformers:ee=[$];for(const ue of ee)x(ue)}function S(G){(0,l.assert)(G.length>0,"Must have at least one transformer");const $=G.filter(ue=>ue instanceof h?!ue.transformer.canFail:!ue.canFail);return $.length===0?G:[(0,t.arraySortByInto)($.map(ue=>[ue.getNumberOfNodes(),ue]),([ue,se])=>ue)[0][1]]}this.transformers.forEach(W);const B=Array.from(v.values()).concat(Array.from(M.values())),q=[].concat(...B.map(S));return q.length===1?q[0]:new g(this.graph,s,q)}reconstitute(s){function T(v){if(v!==void 0)return v.reconstitute(s)}return new y(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),T(this.nullTransformer),T(this.integerTransformer),T(this.doubleTransformer),T(this.boolTransformer),T(this.stringTransformer),T(this.arrayTransformer),T(this.objectTransformer))}equals(s){return!(!super.equals(s)||!(s instanceof y)||!(0,t.areEqual)(this.nullTransformer,s.nullTransformer)||!(0,t.areEqual)(this.integerTransformer,s.integerTransformer)||!(0,t.areEqual)(this.doubleTransformer,s.doubleTransformer)||!(0,t.areEqual)(this.boolTransformer,s.boolTransformer)||!(0,t.areEqual)(this.stringTransformer,s.stringTransformer)||!(0,t.areEqual)(this.arrayTransformer,s.arrayTransformer)||!(0,t.areEqual)(this.objectTransformer,s.objectTransformer))}hashCode(){let s=super.hashCode();return s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.nullTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.integerTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.doubleTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.boolTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.stringTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.arrayTransformer)),s=(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.objectTransformer)),s}debugPrintContinuations(s){for(const T of this.transformers)T.debugPrint(s)}}e.DecodingChoiceTransformer=y;class h extends P{constructor(s,T,v,M){super("union-member-match",s,T,v),this.memberTypeRef=M}get sourceType(){const s=(0,d.derefTypeRef)(this.sourceTypeRef,this.graph);return s instanceof n.UnionType?s:(0,l.panic)("The source of a union member match transformer must be a union type")}get canFail(){return!0}get memberType(){return(0,d.derefTypeRef)(this.memberTypeRef,this.graph)}getChildren(){return super.getChildren().add(this.memberType)}reverse(s,T){return(0,l.panic)("Can't reverse union member match transformer")}reconstitute(s){return new h(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(s),s.reconstituteTypeRef(this.memberTypeRef))}equals(s){return!super.equals(s)||!(s instanceof h)?!1:this.memberTypeRef===s.memberTypeRef}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.memberTypeRef))}debugDescription(){return`${super.debugDescription()} - member: ${u(this.memberType)}`}}e.UnionMemberMatchTransformer=h;class p extends P{constructor(s,T,v,M){super("string-match",s,T,v),this.stringCase=M}get sourceType(){const s=(0,d.derefTypeRef)(this.sourceTypeRef,this.graph);return!(s instanceof n.EnumType)&&!(s instanceof n.PrimitiveType&&s.kind==="string")?(0,l.panic)("The source of a string match transformer must be an enum or string type"):s}get canFail(){return!0}reverse(s,T){return this.transformer.reverse(s,new D(this.graph,this.transformer.sourceTypeRef,T,this.stringCase))}reconstitute(s){return new p(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(s),this.stringCase)}equals(s){return!super.equals(s)||!(s instanceof p)?!1:this.stringCase!==s.stringCase}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,(0,t.hashString)(this.stringCase))}debugDescription(){return`${super.debugDescription()} - case: ${this.stringCase}`}}e.StringMatchTransformer=p;class k extends w{constructor(s,T){super("union-instantiation",s,T)}get canFail(){return!1}reverse(s,T){return T===void 0?(0,l.panic)("Union instantiation transformer reverse must have a continuation"):new h(this.graph,s,T,this.sourceTypeRef)}reconstitute(s){return new k(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef))}equals(s){return super.equals(s)?s instanceof k:!1}}e.UnionInstantiationTransformer=k;class D extends U{constructor(s,T,v,M){super("string-producer",s,T,v),this.result=M}get canFail(){return!1}reverse(s,T){return T===void 0?(0,l.panic)("Reversing a string producer transformer must have a continuation"):this.consumer===void 0?new p(this.graph,s,T,this.result):this.consumer.reverse(s,new p(this.graph,this.consumer.sourceTypeRef,T,this.result))}reconstitute(s){return new D(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)),this.result)}equals(s){return!super.equals(s)||!(s instanceof D)?!1:this.result===s.result}hashCode(){const s=super.hashCode();return(0,t.addHashCode)(s,(0,t.hashCodeOf)(this.consumer))}debugDescription(){return`${super.debugDescription()} - result: ${this.result}`}}e.StringProducerTransformer=D;class C extends U{constructor(s,T,v){super("parse-string",s,T,v)}get canFail(){return!0}reverse(s,T){return this.consumer===void 0?new I(this.graph,s,T):this.consumer.reverse(s,new I(this.graph,this.consumer.sourceTypeRef,T))}reconstitute(s){return new C(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof C:!1}}e.ParseStringTransformer=C;class I extends U{constructor(s,T,v){super("stringify",s,T,v)}get canFail(){return!1}reverse(s,T){return this.consumer===void 0?new C(this.graph,s,T):this.consumer.reverse(s,new C(this.graph,this.consumer.sourceTypeRef,T))}reconstitute(s){return new I(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof I:!1}}e.StringifyTransformer=I;class A extends U{constructor(s,T,v,M,x){super("min-max-length-check",s,T,v),this.minLength=M,this.maxLength=x}get canFail(){return!0}reverse(s,T){return this.consumer===void 0?new A(this.graph,s,T,this.minLength,this.maxLength):this.consumer.reverse(s,new A(this.graph,this.consumer.sourceTypeRef,T,this.minLength,this.maxLength))}reconstitute(s){return new A(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)),this.minLength,this.maxLength)}equals(s){return super.equals(s)?s instanceof A&&this.minLength===s.minLength&&this.maxLength===s.maxLength:!1}}e.MinMaxLengthCheckTransformer=A;class f extends U{constructor(s,T,v,M,x){super("min-max-value-check",s,T,v),this.minimum=M,this.maximum=x}get canFail(){return!0}reverse(s,T){return this.consumer===void 0?new f(this.graph,s,T,this.minimum,this.maximum):this.consumer.reverse(s,new f(this.graph,this.consumer.sourceTypeRef,T,this.minimum,this.maximum))}reconstitute(s){return new f(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,T=>T.reconstitute(s)),this.minimum,this.maximum)}equals(s){return super.equals(s)?s instanceof f&&this.minimum===s.minimum&&this.maximum===s.maximum:!1}}e.MinMaxValueTransformer=f;class E{constructor(s,T,v){this._graph=s,this._targetTypeRef=T,this.transformer=v}get sourceType(){return this.transformer.sourceType}get targetType(){return(0,d.derefTypeRef)(this._targetTypeRef,this._graph)}get reverse(){return new E(this._graph,this.transformer.sourceTypeRef,this.transformer.reverse(this._targetTypeRef,void 0))}getChildren(){return this.transformer.getChildren().add(this.targetType)}reconstitute(s){return new E(s.typeGraph,s.reconstituteTypeRef(this._targetTypeRef),this.transformer.reconstitute(s))}equals(s){return s instanceof E?this._targetTypeRef===s._targetTypeRef&&this.transformer.equals(s.transformer):!1}hashCode(){let s=(0,t.hashCodeOf)(this._targetTypeRef);return s=(0,t.addHashCode)(s,this.transformer.hashCode()),s}debugPrint(){this.transformer.debugPrint(0),console.log(`-> ${u(this.targetType)}`)}}e.Transformation=E;class b extends a.TypeAttributeKind{constructor(){super("transformation")}appliesToTypeKind(s){return!0}get inIdentity(){return!0}children(s){return s.getChildren()}reconstitute(s,T){return T.reconstitute(s)}stringify(s){return"transformation"}}e.transformationTypeAttributeKind=new b;function F(r){return e.transformationTypeAttributeKind.tryGetInAttributes(r.getAttributes())}e.transformationForType=F;function m(r){for(;;){const s=F(r);if(s===void 0)return r;r=s.targetType}}e.followTargetType=m}(xl)),xl}var zl={exports:{}},lm;function Ik(){if(lm)return zl.exports;lm=1;var e=zl.exports=function(t,n,a){typeof t=="object"&&(a=t,t=a.start,n=a.stop),typeof n=="object"&&(a=n,t=t||a.start,n=void 0),n||(n=t,t=0),a||(a={});var l=a.mode||"soft",d=l==="hard"?/\b/:/(\S+\s+)/;return function(u){var c=u.toString().split(d).reduce(function(w,U){if(l==="hard")for(var P=0;P<U.length;P+=n-t)w.push(U.slice(P,P+n-t));else w.push(U);return w},[]);return c.reduce(function(w,U){if(U==="")return w;var P=U.replace(/\t/g," "),O=w.length-1;if(w[O].length+P.length>n)w[O]=w[O].replace(/\s+$/,""),P.split(/\n/).forEach(function(_){w.push(new Array(t+1).join(" ")+_.replace(/^\s+/,""))});else if(P.match(/\n/)){var R=P.split(/\n/);w[O]+=R.shift(),R.forEach(function(_){w.push(new Array(t+1).join(" ")+_.replace(/^\s+/,""))})}else w[O]+=P;return w},[new Array(t+1).join(" ")]).join(`
181
+ `)}};return e.soft=e,e.hard=function(t,n){return e(t,n,{mode:"hard"})},zl.exports}var cm;function Wt(){return cm||(cm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConvenienceRenderer=e.inferredNameOrder=e.topLevelNameOrder=void 0;const t=et(),n=mt(),a=pt(),l=Ft(),d=Fk(),u=Qe(),c=Nt(),w=Bt(),U=Pk(),P=Xn(),O=At(),R=Ka(),_=Ha(),L=oo(),g=Ik()(90);e.topLevelNameOrder=1;const y=10;e.inferredNameOrder=30;const h=20,p=10,k=20,D=10,C=40;function I(m){if(m===void 0)return;const r=Array.from(m).join(`
182
+
183
+ `).trim();if(r!=="")return g(r).split(`
184
+ `).map(s=>s.trim())}const A=new O.TypeAttributeKind("assignedName"),f=new O.TypeAttributeKind("assignedPropertyNames"),E=new O.TypeAttributeKind("assignedMemberNames"),b=new O.TypeAttributeKind("assignedCaseNames");class F extends d.Renderer{constructor(r,s){super(r,s),this._alphabetizeProperties=!1}get topLevels(){return this.typeGraph.topLevels}forbiddenNamesForGlobalNamespace(){return[]}forbiddenForObjectProperties(r,s){return{names:[],includeGlobalForbidden:!1}}forbiddenForUnionMembers(r,s){return{names:[],includeGlobalForbidden:!1}}forbiddenForEnumCases(r,s){return{names:[],includeGlobalForbidden:!1}}makeTopLevelDependencyNames(r,s){return[]}makeNamedTypeDependencyNames(r,s){return[]}makeNameForTransformation(r,s){}namedTypeToNameForTopLevel(r){if((0,a.isNamedType)(r))return r}get unionMembersInGlobalNamespace(){return!1}get enumCasesInGlobalNamespace(){return!1}get needsTypeDeclarationBeforeUse(){return!1}canBeForwardDeclared(r){return(0,u.panic)("If needsTypeDeclarationBeforeUse returns true, canBeForwardDeclared must be implemented")}unionNeedsName(r){return(0,a.nullableFromUnion)(r)===null}get globalNamespace(){return(0,u.defined)(this._globalNamespace)}get nameStoreView(){return(0,u.defined)(this._nameStoreView)}descriptionForType(r){let s=this.typeGraph.attributeStore.tryGet(R.descriptionTypeAttributeKind,r);return I(s)}descriptionForClassProperty(r,s){const T=this.typeGraph.attributeStore.tryGet(R.propertyDescriptionsTypeAttributeKind,r);if(T!==void 0)return I(T.get(s))}setUpNaming(){this._nameStoreView=new P.TypeAttributeStoreView(this.typeGraph.attributeStore,A),this._propertyNamesStoreView=new P.TypeAttributeStoreView(this.typeGraph.attributeStore,f),this._memberNamesStoreView=new P.TypeAttributeStoreView(this.typeGraph.attributeStore,E),this._caseNamesStoreView=new P.TypeAttributeStoreView(this.typeGraph.attributeStore,b),this._namesForTransformations=new Map,this._namedTypeNamer=this.makeNamedTypeNamer(),this._unionMemberNamer=this.makeUnionMemberNamer(),this._enumCaseNamer=this.makeEnumCaseNamer(),this._globalForbiddenNamespace=(0,l.keywordNamespace)("forbidden",this.forbiddenNamesForGlobalNamespace()),this._otherForbiddenNamespaces=new Map,this._globalNamespace=new l.Namespace("global",void 0,[this._globalForbiddenNamespace],[]);const{objects:r,enums:s,unions:T}=this.typeGraph.allNamedTypesSeparated(),v=(0,t.setFilter)(T,M=>this.unionNeedsName(M));for(const[M,x]of this.topLevels)this.nameStoreView.setForTopLevel(M,this.addNameForTopLevel(x,M));for(const M of r){const x=this.addNameForNamedType(M);this.addPropertyNames(M,x)}for(const M of s){const x=this.addNameForNamedType(M);this.addEnumCaseNames(M,x)}for(const M of v){const x=this.addNameForNamedType(M);this.addUnionMemberNames(M,x)}for(const M of this.typeGraph.allTypesUnordered())this.addNameForTransformation(M);return(0,t.setUnion)([this._globalForbiddenNamespace,this._globalNamespace],this._otherForbiddenNamespaces.values())}addDependenciesForNamedType(r,s){const T=this.makeNamedTypeDependencyNames(r,s);for(const v of T)this.globalNamespace.add(v)}makeNameForTopLevel(r,s,T){return new l.SimpleName([s],(0,u.defined)(this._namedTypeNamer),e.topLevelNameOrder)}addNameForTopLevel(r,s){const T=this.namedTypeToNameForTopLevel(r),v=this.makeNameForTopLevel(r,s,T);this.globalNamespace.add(v);const M=this.makeTopLevelDependencyNames(r,v);for(const x of M)this.globalNamespace.add(x);return T!==void 0&&(this.addDependenciesForNamedType(T,v),this.nameStoreView.set(T,v)),v}makeNameForType(r,s,T,v){const M=r.getNames(),x=M.areInferred?v:T;return new l.SimpleName(M.proposedNames,s,x)}makeNameForNamedType(r){return this.makeNameForType(r,(0,u.defined)(this._namedTypeNamer),y,e.inferredNameOrder)}addNameForNamedType(r){const s=this.nameStoreView.tryGet(r);if(s!==void 0)return s;const T=this.globalNamespace.add(this.makeNameForNamedType(r));return this.addDependenciesForNamedType(r,T),this.nameStoreView.set(r,T),T}get typesWithNamedTransformations(){return(0,u.defined)(this._namesForTransformations)}nameForTransformation(r){if((0,L.transformationForType)(r)===void 0)return;const T=(0,u.defined)(this._namesForTransformations).get(r);return T===void 0?(0,u.panic)("No name for transformation"):T}addNameForTransformation(r){const s=(0,L.transformationForType)(r);if(s===void 0)return;(0,u.assert)((0,u.defined)(this._namesForTransformations).get(r)===void 0,"Tried to give two names to the same transformation");const T=this.makeNameForTransformation(s,this.nameStoreView.tryGet(s.targetType));T!==void 0&&(this.globalNamespace.add(T),(0,u.defined)(this._namesForTransformations).set(r,T))}processForbiddenWordsInfo(r,s){const T=[],v=[];for(const W of r.names)typeof W=="string"?v.push(W):T.push(W);let M=(0,u.defined)(this._otherForbiddenNamespaces).get(s);v.length>0&&M===void 0&&(M=(0,l.keywordNamespace)(s,v),this._otherForbiddenNamespaces=(0,u.defined)(this._otherForbiddenNamespaces).set(s,M));let x=new Set;return r.includeGlobalForbidden&&(x=x.add((0,u.defined)(this._globalForbiddenNamespace))),M!==void 0&&(x=x.add(M)),{forbiddenNames:new Set(T),forbiddenNamespaces:x}}makeNameForProperty(r,s,T,v,M){const x=this.namerForObjectProperty(r,T);if(x===null)return;const W=`${r.getCombinedName()}_${v}`,S=M===void 0?h:p,B=M===void 0?[v,W]:[M];return new l.SimpleName(B,x,S)}makePropertyDependencyNames(r,s,T,v,M){return[]}addPropertyNames(r,s){const{forbiddenNames:T,forbiddenNamespaces:v}=this.processForbiddenWordsInfo(this.forbiddenForObjectProperties(r,s),"forbidden-for-properties");let M;const x=(0,_.objectPropertyNames)(r,this.targetLanguage.name),W=(0,t.mapFilterMap)(r.getSortedProperties(),(S,B)=>{const[q,G]=(0,_.getAccessorName)(x,B);let $;if(G?$=new l.FixedName((0,u.defined)(q)):$=this.makeNameForProperty(r,s,S,B,q),$!==void 0){M===void 0&&(M=new l.Namespace(r.getCombinedName(),this.globalNamespace,v,T)),M.add($);for(const ee of this.makePropertyDependencyNames(r,s,S,B,$))M.add(ee);return $}});(0,u.defined)(this._propertyNamesStoreView).set(r,W)}makeNameForUnionMember(r,s,T){const[v,M]=(0,_.unionMemberName)(r,T,this.targetLanguage.name);return M?new l.FixedName((0,u.defined)(v)):new l.DependencyName((0,u.nonNull)(this._unionMemberNamer),C,x=>v!==void 0?v:this.proposeUnionMemberName(r,s,T,x))}addUnionMemberNames(r,s){if(this._unionMemberNamer===null)return;const{forbiddenNames:v,forbiddenNamespaces:M}=this.processForbiddenWordsInfo(this.forbiddenForUnionMembers(r,s),"forbidden-for-union-members");let x;this.unionMembersInGlobalNamespace?x=this.globalNamespace:x=new l.Namespace(r.getCombinedName(),this.globalNamespace,M,v);let W=new Map;for(const S of r.members){const B=this.makeNameForUnionMember(r,s,(0,L.followTargetType)(S));W.set(S,x.add(B))}(0,u.defined)(this._memberNamesStoreView).set(r,W)}makeNameForEnumCase(r,s,T,v){const M=`${r.getCombinedName()}_${T}`,x=v===void 0?k:D,W=v===void 0?[T,M]:[v];return new l.SimpleName(W,(0,u.nonNull)(this._enumCaseNamer),x)}addEnumCaseNames(r,s){if(this._enumCaseNamer===null)return;const{forbiddenNames:T,forbiddenNamespaces:v}=this.processForbiddenWordsInfo(this.forbiddenForEnumCases(r,s),"forbidden-for-enum-cases");let M;this.enumCasesInGlobalNamespace?M=this.globalNamespace:M=new l.Namespace(r.getCombinedName(),this.globalNamespace,v,T);let x=new Map;const W=(0,_.enumCaseNames)(r,this.targetLanguage.name);for(const S of r.cases){const[B,q]=(0,_.getAccessorName)(W,S);let G;q?G=new l.FixedName((0,u.defined)(B)):G=this.makeNameForEnumCase(r,s,S,B),x.set(S,M.add(G))}(0,u.defined)(this._caseNamesStoreView).set(r,x)}childrenOfType(r){const s=this.names;if(r instanceof n.ClassType){const T=(0,u.defined)(this._propertyNamesStoreView).get(r),v=(0,t.mapFilterMap)(r.getProperties(),(x,W)=>{if(T.get(W)!==void 0)return x.type}),M=(0,t.mapSortBy)(v,(x,W)=>(0,u.defined)(s.get((0,u.defined)(T.get(W)))));return new Set(M.values())}return r.getChildren()}get namedUnions(){return(0,u.defined)(this._namedUnions)}get haveNamedUnions(){return this.namedUnions.size>0}get haveNamedTypes(){return(0,u.defined)(this._namedTypes).length>0}get haveUnions(){return(0,u.defined)(this._haveUnions)}get haveMaps(){return(0,u.defined)(this._haveMaps)}get haveOptionalProperties(){return(0,u.defined)(this._haveOptionalProperties)}get enums(){return(0,u.defined)(this._namedEnums)}get haveEnums(){return this.enums.size>0}proposedUnionMemberNameForTypeKind(r){return null}proposeUnionMemberName(r,s,T,v){const M=this.proposedUnionMemberNameForTypeKind(T.kind);if(M!==null)return M;const x=W=>(0,a.matchTypeExhaustive)(W,S=>(0,u.panic)("none type should have been replaced"),S=>"anything",S=>"null",S=>"bool",S=>"integer",S=>"double",S=>"string",S=>x(S.items)+"_array",S=>v(this.nameForNamedType(S)),S=>x(S.values)+"_map",S=>((0,u.assert)(this.targetLanguage.supportsFullObjectType,"Object type should have been replaced in `replaceObjectType`"),v(this.nameForNamedType(S))),S=>"enum",S=>"union",S=>S.kind.replace("-","_"));return x(T)}nameForNamedType(r){return this.nameStoreView.get(r)}isForwardDeclaredType(r){return(0,u.defined)(this._declarationIR).forwardedTypes.has(r)}isImplicitCycleBreaker(r){return(0,u.panic)("A renderer that invokes isCycleBreakerType must implement isImplicitCycleBreaker")}canBreakCycles(r){return!0}isCycleBreakerType(r){return this._cycleBreakerTypes===void 0&&(this._cycleBreakerTypes=(0,U.cycleBreakerTypesForGraph)(this.typeGraph,s=>this.isImplicitCycleBreaker(s),s=>this.canBreakCycles(s))),this._cycleBreakerTypes.has(r)}forEachTopLevel(r,s,T){let v;return T!==void 0?v=(0,t.mapFilter)(this.topLevels,T):v=this.topLevels,this.forEachWithBlankLines(v,r,(M,x,W)=>s(M,this.nameStoreView.getForTopLevel(x),W))}forEachDeclaration(r,s){this.forEachWithBlankLines((0,t.iterableEnumerate)((0,u.defined)(this._declarationIR).declarations),r,(T,v,M)=>s(T,M))}setAlphabetizeProperties(r){this._alphabetizeProperties=r}getAlphabetizeProperties(){return this._alphabetizeProperties}propertyCount(r){return(0,u.defined)(this._propertyNamesStoreView).get(r).size}sortClassProperties(r,s){return this._alphabetizeProperties?(0,t.mapSortBy)(r,(T,v)=>{const M=(0,u.defined)(s.get(v));return(0,u.defined)(this.names.get(M))}):r}forEachClassProperty(r,s,T){const v=(0,u.defined)(this._propertyNamesStoreView).get(r),M=this.sortClassProperties(r.getProperties(),v);this.forEachWithBlankLines(M,s,(x,W,S)=>{const B=(0,u.defined)(v.get(W));T(B,W,x,S)})}nameForUnionMember(r,s){return(0,u.defined)((0,u.defined)(this._memberNamesStoreView).get(r).get(s))}nameForEnumCase(r,s){const T=(0,u.defined)(this._caseNamesStoreView).get(r);return(0,u.defined)(T.get(s))}forEachUnionMember(r,s,T,v,M){const x=s===null?r.members:s;v===null&&(v=B=>(0,u.defined)(this.names.get(B)));const W=(0,t.mapFilter)((0,u.defined)(this._memberNamesStoreView).get(r),(B,q)=>x.has(q)),S=(0,t.mapSortBy)(W,v);this.forEachWithBlankLines(S,T,M)}forEachEnumCase(r,s,T){const v=(0,u.defined)(this._caseNamesStoreView).get(r),M=(0,t.mapSortBy)(v,x=>(0,u.defined)(this.names.get(x)));this.forEachWithBlankLines(M,s,T)}forEachTransformation(r,s){this.forEachWithBlankLines((0,u.defined)(this._namesForTransformations),r,s)}forEachSpecificNamedType(r,s,T){this.forEachWithBlankLines(s,r,(v,M,x)=>T(v,this.nameForNamedType(v),x))}forEachObject(r,s){this.forEachSpecificNamedType(r,(0,u.defined)(this._namedObjects).entries(),s)}forEachEnum(r,s){this.forEachSpecificNamedType(r,this.enums.entries(),s)}forEachUnion(r,s){this.forEachSpecificNamedType(r,this.namedUnions.entries(),s)}forEachUniqueUnion(r,s,T){const v=new Map;for(const M of this.namedUnions){const x=s(M);v.has(x)||v.set(x,M)}this.forEachWithBlankLines(v,r,T)}forEachNamedType(r,s,T,v){this.forEachWithBlankLines((0,u.defined)(this._namedTypes).entries(),r,(M,x,W)=>{const S=this.nameForNamedType(M);if(M instanceof n.ObjectType)s(M,S,W);else if(M instanceof n.EnumType)T(M,S,W);else if(M instanceof n.UnionType)v(M,S,W);else return(0,u.panic)("Named type that's neither a class nor union")})}sourcelikeToString(r){return(0,w.serializeRenderResult)((0,w.sourcelikeToSource)(r),this.names,"").lines.join(`
185
+ `)}get commentLineStart(){return"// "}emitCommentLines(r,s,T,v,M){s===void 0&&(s=this.commentLineStart),M===void 0&&(M=s),T!==void 0&&this.emitLine(T);let x=!0;for(const W of r){let S=x?M:s;this.sourcelikeToString(W)===""&&(S=(0,c.trimEnd)(S)),this.emitLine(S,W),x=!1}v!==void 0&&this.emitLine(v)}emitDescription(r){r!==void 0&&this.emitDescriptionBlock(r)}emitDescriptionBlock(r){this.emitCommentLines(r)}emitPropertyTable(r,s){let T=[];const v=()=>{T.length!==0&&(this.emitTable(T),T=[])};this.forEachClassProperty(r,"none",(M,x,W)=>{const S=this.descriptionForClassProperty(r,x);S!==void 0&&(v(),this.emitDescription(S)),T.push(s(M,x,W))}),v()}processGraph(){this._declarationIR=(0,U.declarationsForGraph)(this.typeGraph,this.needsTypeDeclarationBeforeUse?x=>this.canBeForwardDeclared(x):void 0,x=>this.childrenOfType(x),x=>x instanceof n.UnionType?this.unionNeedsName(x):(0,a.isNamedType)(x));const r=this.typeGraph.allTypesUnordered();this._haveUnions=(0,t.iterableSome)(r,x=>x instanceof n.UnionType),this._haveMaps=(0,t.iterableSome)(r,x=>x instanceof n.MapType);const s=(0,t.setFilter)(r,x=>x instanceof n.ClassType);this._haveOptionalProperties=(0,t.iterableSome)(s,x=>(0,t.mapSome)(x.getProperties(),W=>W.isOptional)),this._namedTypes=this._declarationIR.declarations.filter(x=>x.kind==="define").map(x=>x.type);const{objects:T,enums:v,unions:M}=(0,a.separateNamedTypes)(this._namedTypes);this._namedObjects=new Set(T),this._namedEnums=new Set(v),this._namedUnions=new Set(M)}emitSource(r){this.processGraph(),this.emitSourceStructure(r)}forEachType(r){const s=new Set,T=new Set,v=Array.from(this.typeGraph.topLevels.values());function M(x){if(!s.has(x)){for(const W of x.getChildren())v.push(W);s.add(x),T.add(r(x))}}for(;;){const x=v.pop();if(x===void 0)break;M(x)}return T}}e.ConvenienceRenderer=F}(Ml)),Ml}var Cs={},Es={},fm;function nb(){if(fm)return Es;fm=1,Object.defineProperty(Es,"__esModule",{value:!0}),Es.DefaultDateTimeRecognizer=void 0;const e=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,t=[0,31,29,31,30,31,30,31,31,30,31,30,31],n=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i,a=/t|\s/i;class l{isDate(u){const c=u.match(e);if(c===null)return!1;const w=+c[2],U=+c[3];return w>=1&&w<=12&&U>=1&&U<=t[w]}isTime(u){const c=u.match(n);if(c===null)return!1;const w=+c[1],U=+c[2],P=+c[3];return w<=23&&U<=59&&P<=59}isDateTime(u){const c=u.split(a);return c.length===2&&this.isDate(c[0])&&this.isTime(c[1])}}return Es.DefaultDateTimeRecognizer=l,Es}var dm;function qt(){if(dm)return Cs;dm=1,Object.defineProperty(Cs,"__esModule",{value:!0}),Cs.TargetLanguage=void 0;const e=et(),t=Bt(),n=Qe(),a=nb();let l=class{constructor(u,c,w){this.displayName=u,this.names=c,this.extension=w}get optionDefinitions(){return this.getOptions().map(u=>u.definition)}get cliOptionDefinitions(){let u=[],c=[];for(const{cliDefinitions:w}of this.getOptions())u=u.concat(w.actual),c=c.concat(w.display);return{actual:u,display:c}}get name(){return(0,n.defined)(this.names[0])}renderGraphAndSerialize(u,c,w,U,P,O){O===void 0&&(O=this.defaultIndentation);const R={typeGraph:u,leadingComments:U},_=this.makeRenderer(R,P);_.setAlphabetizeProperties!==void 0&&_.setAlphabetizeProperties(w);const L=_.render(c);return(0,e.mapMap)(L.sources,g=>(0,t.serializeRenderResult)(g,L.names,(0,n.defined)(O)))}get defaultIndentation(){return" "}get stringTypeMapping(){return new Map}get supportsOptionalClassProperties(){return!1}get supportsUnionsWithBothNumberTypes(){return!1}get supportsFullObjectType(){return!1}needsTransformerForType(u){return!1}get dateTimeRecognizer(){return new a.DefaultDateTimeRecognizer}};return Cs.TargetLanguage=l,Cs}var hm;function ib(){return hm||(hm=1,function(e){var t=Yo.__importDefault||function(W){return W&&W.__esModule?W:{default:W}};Object.defineProperty(e,"__esModule",{value:!0}),e.SystemTextJsonCSharpRenderer=e.systemTextJsonCSharpOptions=e.NewtonsoftCSharpRenderer=e.newtonsoftCSharpOptions=e.CSharpRenderer=e.CSharpTargetLanguage=e.cSharpOptions=e.AccessModifier=e.Framework=void 0;const n=et(),a=mt(),l=pt(),d=Bt(),u=Nt(),c=Qe(),w=Ft(),U=Wt(),P=qt(),O=zt(),R=On(),_=oo(),L=Yr(),g=t(so());var y;(function(W){W[W.Newtonsoft=0]="Newtonsoft",W[W.SystemTextJson=1]="SystemTextJson"})(y=e.Framework||(e.Framework={}));var h;(function(W){W[W.None=0]="None",W[W.Public=1]="Public",W[W.Internal=2]="Internal"})(h=e.AccessModifier||(e.AccessModifier={}));function p(W){return W}function k(W){if(W instanceof a.UnionType){const S=(0,l.nullableFromUnion)(W);return S===null?"automatic":k(S)==="manual"?"nullable":"none"}if(W instanceof a.ArrayType){const S=k(W.items);return S==="manual"||S==="nullable"?"automatic":"none"}return W instanceof a.EnumType?"automatic":W.kind==="double"?(0,L.minMaxValueForType)(W)!==void 0?"manual":"none":W.kind==="integer-string"||W.kind==="bool-string"||W.kind==="string"&&(0,L.minMaxLengthForType)(W)!==void 0?"manual":"none"}function D(W){const S=W.targetType;return S instanceof a.EnumType?!0:S instanceof a.UnionType?(0,l.nullableFromUnion)(S)===null:!1}function C(W){switch(W.kind){case"date-time":return"DateTimeOffset";case"uuid":return"Guid";case"uri":return"Uri";default:return(0,c.panic)(`Transformed string type ${W.kind} not supported`)}}e.cSharpOptions={framework:new O.EnumOption("framework","Serialization framework",[["NewtonSoft",y.Newtonsoft],["SystemTextJson",y.SystemTextJson]],"NewtonSoft"),useList:new O.EnumOption("array-type","Use T[] or List<T>",[["array",!1],["list",!0]]),dense:new O.EnumOption("density","Property density",[["normal",!1],["dense",!0]],"normal","secondary"),namespace:new O.StringOption("namespace","Generated namespace","NAME","QuickType"),version:new O.EnumOption("csharp-version","C# version",[["5",5],["6",6]],"6","secondary"),virtual:new O.BooleanOption("virtual","Generate virtual properties",!1),typeForAny:new O.EnumOption("any-type",'Type to use for "any"',[["object","object"],["dynamic","dynamic"]],"object","secondary"),useDecimal:new O.EnumOption("number-type","Type to use for numbers",[["double",!1],["decimal",!0]],"double","secondary"),features:new O.EnumOption("features","Output features",[["complete",{namespaces:!0,helpers:!0,attributes:!0}],["attributes-only",{namespaces:!0,helpers:!1,attributes:!0}],["just-types-and-namespace",{namespaces:!0,helpers:!1,attributes:!1}],["just-types",{namespaces:!0,helpers:!1,attributes:!1}]]),baseclass:new O.EnumOption("base-class","Base class",[["EntityData","EntityData"],["Object",void 0]],"Object","secondary"),checkRequired:new O.BooleanOption("check-required","Fail if required properties are missing",!1)};class I extends P.TargetLanguage{constructor(){super("C#",["cs","csharp"],"cs")}getOptions(){return[e.cSharpOptions.framework,e.cSharpOptions.namespace,e.cSharpOptions.version,e.cSharpOptions.dense,e.cSharpOptions.useList,e.cSharpOptions.useDecimal,e.cSharpOptions.typeForAny,e.cSharpOptions.virtual,e.cSharpOptions.features,e.cSharpOptions.baseclass,e.cSharpOptions.checkRequired]}get stringTypeMapping(){const S=new Map;return S.set("date","date-time"),S.set("time","date-time"),S.set("date-time","date-time"),S.set("uuid","uuid"),S.set("uri","uri"),S.set("integer-string","integer-string"),S.set("bool-string","bool-string"),S}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}needsTransformerForType(S){const B=k(S);return B!=="none"&&B!=="nullable"}makeRenderer(S,B){const q=(0,O.getOptionValues)(e.cSharpOptions,B);switch(q.framework){case y.Newtonsoft:return new M(this,S,(0,O.getOptionValues)(e.newtonsoftCSharpOptions,B));case y.SystemTextJson:return new x(this,S,(0,O.getOptionValues)(e.systemTextJsonCSharpOptions,B));default:return(0,c.assertNever)(q.framework)}}}e.CSharpTargetLanguage=I;const A=(0,w.funPrefixNamer)("namer",s),f="J",E="R",b="N";function F(W){return g.default.isAlphabetic(W)?!0:W===95}function m(W){const S=g.default.getCategory(W);return["Nd","Pc","Mn","Mc"].indexOf(S)>=0?!0:F(W)}const r=(0,u.utf16LegalizeCharacters)(m);function s(W){const S=(0,u.splitIntoWords)(W);return(0,u.combineWords)(S,r,u.firstUpperWordStyle,u.firstUpperWordStyle,u.firstUpperWordStyle,u.firstUpperWordStyle,"",F)}function T(W){return W instanceof a.UnionType?(0,l.nullableFromUnion)(W)===null:["integer","double","bool","enum","date-time","uuid"].indexOf(W.kind)>=0}class v extends U.ConvenienceRenderer{constructor(S,B,q){super(S,B),this._csOptions=q}forbiddenNamesForGlobalNamespace(){return["QuickType","Type","System","Console","Exception","DateTimeOffset","Guid","Uri"]}forbiddenForObjectProperties(S,B){return{names:[B,"ToString","GetHashCode","Finalize","Equals","GetType","MemberwiseClone","ReferenceEquals"],includeGlobalForbidden:!1}}forbiddenForUnionMembers(S,B){return{names:[B],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return A}namerForObjectProperty(){return A}makeUnionMemberNamer(){return A}makeEnumCaseNamer(){return A}unionNeedsName(S){return(0,l.nullableFromUnion)(S)===null}namedTypeToNameForTopLevel(S){return(0,l.directlyReachableSingleNamedType)(S)}emitBlock(S,B=!1){this.emitLine("{"),this.indent(S),this.emitLine("}",B?";":"")}get doubleType(){return this._csOptions.useDecimal?"decimal":"double"}csType(S,B=_.followTargetType,q=!1){const G=B(S);return(0,l.matchType)(G,$=>(0,d.maybeAnnotated)(q,R.anyTypeIssueAnnotation,this._csOptions.typeForAny),$=>(0,d.maybeAnnotated)(q,R.nullTypeIssueAnnotation,this._csOptions.typeForAny),$=>"bool",$=>"long",$=>this.doubleType,$=>"string",$=>{const ee=this.csType($.items,B,q);return this._csOptions.useList?["List<",ee,">"]:[ee,"[]"]},$=>this.nameForNamedType($),$=>["Dictionary<string, ",this.csType($.values,B,q),">"],$=>this.nameForNamedType($),$=>{const ee=(0,l.nullableFromUnion)($);return ee!==null?this.nullableCSType(ee,p):this.nameForNamedType($)},$=>C($))}nullableCSType(S,B=_.followTargetType,q=!1){S=(0,_.followTargetType)(S);const G=this.csType(S,B,q);return T(S)?[G,"?"]:G}baseclassForType(S){}emitType(S,B,q,G,$,ee){switch(B){case h.Public:q=["public ",q];break;case h.Internal:q=["internal ",q];break}this.emitDescription(S),$===void 0?this.emitLine(q," ",G):this.emitLine(q," ",G," : ",$),this.emitBlock(ee)}attributesForProperty(S,B,q,G){}propertyDefinition(S,B,q,G){const $=S.type,ee=S.isOptional?this.nullableCSType($,_.followTargetType,!0):this.csType($,_.followTargetType,!0),ue=["public "];return this._csOptions.virtual&&ue.push("virtual "),[...ue,ee," ",B," { get; set; }"]}emitDescriptionBlock(S){const B="/// <summary>";this._csOptions.dense?this.emitLine(B,S.join("; "),"</summary>"):this.emitCommentLines(S,"/// ",B,"/// </summary>")}blankLinesBetweenAttributes(){return!1}emitClassDefinition(S,B){this.emitType(this.descriptionForType(S),h.Public,"partial class",B,this.baseclassForType(S),()=>{if(S.getProperties().size===0)return;const q=this.blankLinesBetweenAttributes()?"interposing":"none";let G=[],$=!0,ee;this.forEachClassProperty(S,q,(ue,se,ie)=>{const ye=this.attributesForProperty(ie,ue,S,se),be=this.descriptionForClassProperty(S,se),Ae=this.propertyDefinition(ie,ue,S,se);if(ye===void 0)(!$&&be!==void 0||ee!==void 0)&&this.ensureBlankLine(),this.emitDescription(be),this.emitLine(Ae);else if(this._csOptions.dense&&ye.length>0){const pe=be===void 0?"":` // ${be.join("; ")}`;G.push([ye," ",Ae,pe])}else{this.emitDescription(be);for(const pe of ye)this.emitLine(pe);this.emitLine(Ae)}$=!1,ee=be}),G.length>0&&this.emitTable(G)})}emitUnionDefinition(S,B){const q=(0,l.removeNullFromUnion)(S,!0)[1];this.emitType(this.descriptionForType(S),h.Public,"partial struct",B,this.baseclassForType(S),()=>{this.forEachUnionMember(S,q,"none",null,($,ee)=>{const ue=this.nullableCSType(ee);this.emitLine("public ",ue," ",$,";")}),this.ensureBlankLine();const G=Array.from(q).map($=>[this.nameForUnionMember(S,$)," == null"]);this.ensureBlankLine(),this.forEachUnionMember(S,q,"none",null,($,ee)=>{const ue=this.csType(ee);this.emitExpressionMember(["public static implicit operator ",B,"(",ue," ",$,")"],["new ",B," { ",$," = ",$," }"])}),S.findMember("null")!==void 0&&this.emitExpressionMember("public bool IsNull",(0,n.arrayIntercalate)(" && ",G),!0)})}emitEnumDefinition(S,B){const q=[];this.forEachEnumCase(S,"none",G=>{q.length>0&&q.push(", "),q.push(G)}),this.emitDescription(this.descriptionForType(S)),this.emitLine("public enum ",B," { ",q," };")}emitExpressionMember(S,B,q=!1){this._csOptions.version===5?(this.emitLine(S),this.emitBlock(()=>{const G=["return ",B,";"];q?(this.emitLine("get"),this.emitBlock(()=>this.emitLine(G))):this.emitLine(G)})):this.emitLine(S," => ",B,";")}emitTypeSwitch(S,B,q,G,$){(0,c.assert)(!G||q,"Can only have return with block");for(const ee of S)this.emitLine("if (",B(ee),")"),q?this.emitBlock(()=>{$(ee),G&&this.emitLine("return;")}):this.indent(()=>$(ee))}emitUsing(S){this.emitLine("using ",S,";")}emitUsings(){for(const S of["System","System.Collections.Generic"])this.emitUsing(S)}emitRequiredHelpers(){}emitTypesAndSupport(){this.forEachObject("leading-and-interposing",(S,B)=>this.emitClassDefinition(S,B)),this.forEachEnum("leading-and-interposing",(S,B)=>this.emitEnumDefinition(S,B)),this.forEachUnion("leading-and-interposing",(S,B)=>this.emitUnionDefinition(S,B)),this.emitRequiredHelpers()}emitDefaultLeadingComments(){}emitDefaultFollowingComments(){}needNamespace(){return!0}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitDefaultLeadingComments(),this.ensureBlankLine(),this.needNamespace()?(this.emitLine("namespace ",this._csOptions.namespace),this.emitBlock(()=>{this.emitUsings(),this.emitTypesAndSupport()})):(this.emitUsings(),this.emitTypesAndSupport()),this.emitDefaultFollowingComments()}}e.CSharpRenderer=v,e.newtonsoftCSharpOptions=Object.assign({},e.cSharpOptions,{});class M extends v{constructor(S,B,q){super(S,B,q),this._options=q,this._enumExtensionsNames=new Map,this._needHelpers=q.features.helpers,this._needAttributes=q.features.attributes,this._needNamespaces=q.features.namespaces}forbiddenNamesForGlobalNamespace(){const S=["Converter","JsonConverter","JsonSerializer","JsonWriter","JsonToken","Serialize","Newtonsoft","MetadataPropertyHandling","DateParseHandling","FromJson","Required"];return this._options.dense&&S.push("J","R","N"),this._options.baseclass!==void 0&&S.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(S)}forbiddenForObjectProperties(S,B){const q=super.forbiddenForObjectProperties(S,B);return q.names=q.names.concat(["ToJson","FromJson","Required"]),q}makeNameForTransformation(S,B){if(B===void 0){let q=S.transformer;return q instanceof _.DecodingTransformer&&q.consumer!==void 0&&(q=q.consumer),new w.SimpleName([`${q.kind}_converter`],A,U.inferredNameOrder+30)}return new w.DependencyName(A,B.order+30,q=>`${q(B)}_converter`)}makeNamedTypeDependencyNames(S,B){if(!(S instanceof a.EnumType))return[];const q=new w.DependencyName(A,B.order+30,G=>`${G(B)}_extensions`);return this._enumExtensionsNames.set(B,q),[q]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(const S of["System.Globalization","Newtonsoft.Json","Newtonsoft.Json.Converters"])this.emitUsing(S);this._options.dense&&(this.emitUsing([f," = Newtonsoft.Json.JsonPropertyAttribute"]),this.emitUsing([E," = Newtonsoft.Json.Required"]),this.emitUsing([b," = Newtonsoft.Json.NullValueHandling"])),this._options.baseclass==="EntityData"&&this.emitUsing("Microsoft.Azure.Mobile.Server")}}baseclassForType(S){return this._options.baseclass}emitDefaultLeadingComments(){this._needHelpers&&(this.emitLine("// <auto-generated />"),this.emitLine("//"),this.emitLine("// To parse this JSON data, add NuGet 'Newtonsoft.Json' then do",this.topLevels.size===1?"":" one of these",":"),this.emitLine("//"),this.emitLine("// using ",this._options.namespace,";"),this.emitLine("//"),this.forEachTopLevel("none",(S,B)=>{let q;S instanceof a.EnumType?q=["JsonConvert.DeserializeObject<",B,">(jsonString)"]:q=[B,".FromJson(jsonString)"],this.emitLine("// var ",(0,d.modifySource)(u.camelCase,B)," = ",q,";")}))}converterForType(S){let B=(0,_.transformationForType)(S);if(B===void 0&&S instanceof a.UnionType){const q=(0,l.nullableFromUnion)(S);q!==null&&(S=q,B=(0,_.transformationForType)(S))}if(B!==void 0&&!D(B))return(0,c.defined)(this.nameForTransformation(S))}attributesForProperty(S,B,q,G){if(!this._needAttributes)return;const $=[],ee=this._options.dense?f:"JsonProperty",ue=(0,u.utf16StringEscape)(G),se=(0,_.followTargetType)(S.type).isNullable,ie=S.isOptional,ye=this._options.dense?"R":"Required",be=this._options.dense?"N":"NullValueHandling",Ae=ie&&!se?[", NullValueHandling = ",be,".Ignore"]:[];let pe;!this._options.checkRequired||ie&&se?pe=[Ae]:ie&&!se?pe=[", Required = ",ye,".DisallowNull",Ae]:!ie&&se?pe=[", Required = ",ye,".AllowNull"]:pe=[", Required = ",ye,".Always",Ae],$.push(["[",ee,'("',ue,'"',pe,")]"]);const le=this.converterForType(S.type);return le!==void 0&&$.push(["[JsonConverter(typeof(",le,"))]"]),$}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(S){return S.kind==="any"||S.kind==="none"?"object":this.csType(S)}emitFromJsonForTopLevel(S,B){if(S instanceof a.EnumType)return;let q,G;const $=this.namedTypeToNameForTopLevel(S);$!==void 0?(q="partial ",G=$ instanceof a.ClassType?"class":"struct"):(q="",G="class");const ee=this.topLevelResultType(S);this.emitType(void 0,h.Public,[q,G],B,this.baseclassForType(S),()=>{this.emitExpressionMember(["public static ",ee," FromJson(string json)"],["JsonConvert.DeserializeObject<",ee,">(json, ",this._options.namespace,".Converter.Settings)"])})}emitDecoderSwitch(S){this.emitLine("switch (reader.TokenType)"),this.emitBlock(S)}emitTokenCase(S){this.emitLine("case JsonToken.",S,":")}emitThrow(S){this.emitLine("throw new Exception(",S,");")}deserializeTypeCode(S){return["serializer.Deserialize<",S,">(reader)"]}serializeValueCode(S){return["serializer.Serialize(writer, ",S,")"]}emitSerializeClass(){this.emitType(void 0,h.Public,"static class","Serialize",void 0,()=>{const S=new Set;this.forEachTopLevel("none",B=>{S.has(B)||(S.add(B),this.emitExpressionMember(["public static string ToJson(this ",this.topLevelResultType(B)," self)"],["JsonConvert.SerializeObject(self, ",this._options.namespace,".Converter.Settings)"]))})})}emitCanConvert(S){this.emitExpressionMember("public override bool CanConvert(Type t)",S)}emitReadJson(S){this.emitLine("public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer)"),this.emitBlock(S)}emitWriteJson(S,B){this.emitLine("public override void WriteJson(JsonWriter writer, object ",S,", JsonSerializer serializer)"),this.emitBlock(B)}converterObject(S){return[S,".Singleton"]}emitConverterClass(){const S=["Converter"];this.emitType(void 0,h.Internal,"static class",S,void 0,()=>{this.emitLine("public static readonly JsonSerializerSettings Settings = new JsonSerializerSettings"),this.emitBlock(()=>{this.emitLine("MetadataPropertyHandling = MetadataPropertyHandling.Ignore,"),this.emitLine("DateParseHandling = DateParseHandling.None,"),this.emitLine("Converters ="),this.emitLine("{"),this.indent(()=>{for(const[B,q]of this.typesWithNamedTransformations)D((0,c.defined)((0,_.transformationForType)(B)))&&this.emitLine(this.converterObject(q),",");this.emitLine("new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AssumeUniversal }")}),this.emitLine("},")},!0)})}emitDecoderTransformerCase(S,B,q,G,$){if(q!==void 0){for(const ee of S)this.emitTokenCase(ee);this.indent(()=>{this.emitDecodeTransformer(q,G,$,B)||this.emitLine("break;")})}}emitConsume(S,B,q,G){return B===void 0?(G(S),!0):this.emitTransformer(S,B,q,G)}emitDecodeTransformer(S,B,q,G="value"){if(S instanceof _.DecodingTransformer){const $=S.sourceType,ee=this.converterForType(B);if(ee!==void 0){const ue=this.csType(B);this.emitLine("var converter = ",this.converterObject(ee),";"),this.emitLine("var ",G," = (",ue,")converter.ReadJson(reader, typeof(",ue,"), null, serializer);")}else if($.kind!=="null"){let ue=B.kind==="double"?B:$;this.emitLine("var ",G," = ",this.deserializeTypeCode(this.csType(ue)),";")}return this.emitConsume(G,S.consumer,B,q)}else if(S instanceof _.ArrayDecodingTransformer){if(!(B instanceof a.ArrayType))return(0,c.panic)("Array decoding must produce an array type");this.emitLine("reader.Read();"),this.emitLine("var ",G," = new List<",this.csType(B.items),">();"),this.emitLine("while (reader.TokenType != JsonToken.EndArray)"),this.emitBlock(()=>{this.emitDecodeTransformer(S.itemTransformer,S.itemTargetType,ee=>this.emitLine(G,".Add(",ee,");"),"arrayItem"),this.emitLine("reader.Read();")});let $=G;return this._options.useList||($=[$,".ToArray()"]),q($),!0}else return S instanceof _.DecodingChoiceTransformer?(this.emitDecoderSwitch(()=>{const $=S.nullTransformer;$!==void 0&&(this.emitTokenCase("Null"),this.indent(()=>{this.emitDecodeTransformer($,B,q,"null")||this.emitLine("break")})),this.emitDecoderTransformerCase(["Integer"],"integerValue",S.integerTransformer,B,q),this.emitDecoderTransformerCase(S.integerTransformer===void 0?["Integer","Float"]:["Float"],"doubleValue",S.doubleTransformer,B,q),this.emitDecoderTransformerCase(["Boolean"],"boolValue",S.boolTransformer,B,q),this.emitDecoderTransformerCase(["String","Date"],"stringValue",S.stringTransformer,B,q),this.emitDecoderTransformerCase(["StartObject"],"objectValue",S.objectTransformer,B,q),this.emitDecoderTransformerCase(["StartArray"],"arrayValue",S.arrayTransformer,B,q)}),!1):(0,c.panic)("Unknown transformer")}stringCaseValue(S,B){return S.kind==="string"?['"',(0,u.utf16StringEscape)(B),'"']:S instanceof a.EnumType?[this.nameForNamedType(S),".",this.nameForEnumCase(S,B)]:(0,c.panic)(`Type ${S.kind} does not have string cases`)}emitTransformer(S,B,q,G){function $(ee){return ee===void 0?q:(0,_.followTargetType)(ee.sourceType)}if(B instanceof _.ChoiceTransformer){const ee=B.transformers;if(ee.length>1&&ee.every(ue=>ue instanceof _.StringMatchTransformer))return this.emitLine("switch (",S,")"),this.emitBlock(()=>{for(const ue of ee){const se=ue,ie=this.stringCaseValue((0,_.followTargetType)(se.sourceType),se.stringCase);this.emitLine("case ",ie,":"),this.indent(()=>{this.emitTransformer(S,se.transformer,q,G)||this.emitLine("break;")})}}),!1;for(const ue of ee)this.emitTransformer(S,ue,q,G)}else if(B instanceof _.UnionMemberMatchTransformer){const ee=B.memberType,ue=(0,l.nullableFromUnion)(B.sourceType);let se,ie;if(ue!==null)ee.kind==="null"?(se=[S," == null"],ie="null"):(se=[S," != null"],ie=S);else if(ee.kind==="null")se=[S,".IsNull"],ie="null";else{const ye=this.nameForUnionMember(B.sourceType,ee);ie=[S,".",ye],se=[ie," != null"]}ee.kind!=="null"&&T(ee)&&(ie=[ie,".Value"]),this.emitLine("if (",se,")"),this.emitBlock(()=>this.emitTransformer(ie,B.transformer,q,G))}else if(B instanceof _.StringMatchTransformer){const ee=this.stringCaseValue((0,_.followTargetType)(B.sourceType),B.stringCase);this.emitLine("if (",S," == ",ee,")"),this.emitBlock(()=>this.emitTransformer(S,B.transformer,q,G))}else if(B instanceof _.EncodingTransformer){const ee=this.converterForType(B.sourceType);return ee!==void 0?(this.emitLine("var converter = ",this.converterObject(ee),";"),this.emitLine("converter.WriteJson(writer, ",S,", serializer);")):this.emitLine(this.serializeValueCode(S),";"),G([]),!0}else if(B instanceof _.ArrayEncodingTransformer){this.emitLine("writer.WriteStartArray();");const ee="arrayItem";return this.emitLine("foreach (var ",ee," in ",S,")"),this.emitBlock(()=>{this.emitTransformer(ee,B.itemTransformer,B.itemTargetType,()=>{})}),this.emitLine("writer.WriteEndArray();"),G([]),!0}else if(B instanceof _.ParseStringTransformer){const ee=B.consumer===void 0?q:B.consumer.sourceType;switch(ee.kind){case"date-time":this.emitLine("DateTimeOffset dt;"),this.emitLine("if (DateTimeOffset.TryParse(",S,", out dt))"),this.emitBlock(()=>this.emitConsume("dt",B.consumer,q,G));break;case"uuid":this.emitLine("Guid guid;"),this.emitLine("if (Guid.TryParse(",S,", out guid))"),this.emitBlock(()=>this.emitConsume("guid",B.consumer,q,G));break;case"uri":this.emitLine("try"),this.emitBlock(()=>{this.emitLine("var uri = new Uri(",S,");"),this.emitConsume("uri",B.consumer,q,G)}),this.emitLine("catch (UriFormatException) {}");break;case"integer":this.emitLine("long l;"),this.emitLine("if (Int64.TryParse(",S,", out l))"),this.emitBlock(()=>this.emitConsume("l",B.consumer,q,G));break;case"bool":this.emitLine("bool b;"),this.emitLine("if (Boolean.TryParse(",S,", out b))"),this.emitBlock(()=>this.emitConsume("b",B.consumer,q,G));break;default:return(0,c.panic)(`Parsing string to ${ee.kind} not supported`)}}else if(B instanceof _.StringifyTransformer)switch(B.sourceType.kind){case"date-time":return this.emitConsume([S,'.ToString("o", System.Globalization.CultureInfo.InvariantCulture)'],B.consumer,q,G);case"uuid":return this.emitConsume([S,'.ToString("D", System.Globalization.CultureInfo.InvariantCulture)'],B.consumer,q,G);case"integer":case"uri":return this.emitConsume([S,".ToString()"],B.consumer,q,G);case"bool":return this.emitLine("var boolString = ",S,' ? "true" : "false";'),this.emitConsume("boolString",B.consumer,q,G);default:return(0,c.panic)(`Stringifying ${B.sourceType.kind} not supported`)}else if(B instanceof _.StringProducerTransformer){const ee=this.stringCaseValue($(B.consumer),B.result);return this.emitConsume(ee,B.consumer,q,G)}else if(B instanceof _.MinMaxLengthCheckTransformer){const ee=B.minLength,ue=B.maxLength,se=[];return ee!==void 0&&se.push([S,".Length >= ",ee.toString()]),ue!==void 0&&se.push([S,".Length <= ",ue.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(S,B.consumer,q,G)),!1}else if(B instanceof _.MinMaxValueTransformer){const ee=B.minimum,ue=B.maximum,se=[];return ee!==void 0&&se.push([S," >= ",ee.toString()]),ue!==void 0&&se.push([S," <= ",ue.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(S,B.consumer,q,G)),!1}else if(B instanceof _.UnionInstantiationTransformer){if(!(q instanceof a.UnionType))return(0,c.panic)("Union instantiation transformer must produce a union type");if((0,l.nullableFromUnion)(q)!==null)G(S);else{const ue=this.nameForNamedType(q);let se;B.sourceType.kind==="null"?se=" ":se=[" ",this.nameForUnionMember(q,B.sourceType)," = ",S," "],G(["new ",ue," {",se,"}"])}return!0}else return(0,c.panic)("Unknown transformer");return!1}emitTransformation(S,B){const q=(0,c.defined)((0,_.transformationForType)(B)),G=q.reverse,$=q.targetType,ee=q.transformer;this.emitType(void 0,h.Internal,"class",S,"JsonConverter",()=>{const ue=this.csType($);let se=["t == typeof(",ue,")"];const ie=T($);ie&&(se=[se," || t == typeof(",ue,"?)"]),this.emitCanConvert(se),this.ensureBlankLine(),this.emitReadJson(()=>{ie&&!($ instanceof a.UnionType)&&this.emitLine("if (reader.TokenType == JsonToken.Null) return null;"),this.emitDecodeTransformer(ee,$,be=>this.emitLine("return ",be,";"))||this.emitThrow(['"Cannot unmarshal type ',ue,'"'])}),this.ensureBlankLine(),this.emitWriteJson("untypedValue",()=>{ie&&!($ instanceof a.UnionType)&&(this.emitLine("if (untypedValue == null)"),this.emitBlock(()=>{this.emitLine("serializer.Serialize(writer, null);"),this.emitLine("return;")})),this.emitLine("var value = (",ue,")untypedValue;"),this.emitTransformer("value",G.transformer,G.targetType,()=>this.emitLine("return;"))||this.emitThrow(['"Cannot marshal type ',ue,'"'])}),this.ensureBlankLine(),this.emitLine("public static readonly ",S," Singleton = new ",S,"();")})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel("leading-and-interposing",(S,B)=>this.emitFromJsonForTopLevel(S,B)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation("leading-and-interposing",(S,B)=>this.emitTransformation(S,B)))}needNamespace(){return this._needNamespaces}}e.NewtonsoftCSharpRenderer=M,e.systemTextJsonCSharpOptions=Object.assign({},e.cSharpOptions,{});class x extends v{constructor(S,B,q){super(S,B,q),this._options=q,this._enumExtensionsNames=new Map,this._needHelpers=q.features.helpers,this._needAttributes=q.features.attributes,this._needNamespaces=q.features.namespaces}forbiddenNamesForGlobalNamespace(){const S=["Converter","JsonConverter","JsonSerializer","JsonWriter","JsonToken","Serialize","JsonSerializerOptions","FromJson","Required"];return this._options.dense&&S.push("J","R","N"),this._options.baseclass!==void 0&&S.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(S)}forbiddenForObjectProperties(S,B){const q=super.forbiddenForObjectProperties(S,B);return q.names=q.names.concat(["ToJson","FromJson","Required"]),q}makeNameForTransformation(S,B){if(B===void 0){let q=S.transformer;return q instanceof _.DecodingTransformer&&q.consumer!==void 0&&(q=q.consumer),new w.SimpleName([`${q.kind}_converter`],A,U.inferredNameOrder+30)}return new w.DependencyName(A,B.order+30,q=>`${q(B)}_converter`)}makeNamedTypeDependencyNames(S,B){if(!(S instanceof a.EnumType))return[];const q=new w.DependencyName(A,B.order+30,G=>`${G(B)}_extensions`);return this._enumExtensionsNames.set(B,q),[q]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(const S of["System.Text.Json","System.Text.Json.Serialization","System.Globalization"])this.emitUsing(S);this._options.dense&&(this.emitUsing([f," = System.Text.Json.Serialization.JsonPropertyNameAttribute"]),this.emitUsing([b," = System.Text.Json.Serialization.JsonIgnoreCondition"])),this._options.baseclass==="EntityData"&&this.emitUsing("Microsoft.Azure.Mobile.Server")}}baseclassForType(S){return this._options.baseclass}emitDefaultFollowingComments(){this._needHelpers&&(this.emitLine("#pragma warning restore CS8618"),this.emitLine("#pragma warning restore CS8601"),this.emitLine("#pragma warning restore CS8603"))}emitDefaultLeadingComments(){this._needHelpers&&(this.emitLine("// <auto-generated />"),this.emitLine("//"),this.emitLine("// To parse this JSON data, add NuGet 'System.Text.Json' then do",this.topLevels.size===1?"":" one of these",":"),this.emitLine("//"),this.emitLine("// using ",this._options.namespace,";"),this.emitLine("//"),this.forEachTopLevel("none",(S,B)=>{let q;S instanceof a.EnumType?q=["JsonSerializer.Deserialize<",B,">(jsonString)"]:q=[B,".FromJson(jsonString)"],this.emitLine("// var ",(0,d.modifySource)(u.camelCase,B)," = ",q,";")}),this.emitLine("#nullable enable"),this.emitLine("#pragma warning disable CS8618"),this.emitLine("#pragma warning disable CS8601"),this.emitLine("#pragma warning disable CS8603"))}converterForType(S){let B=(0,_.transformationForType)(S);if(B===void 0&&S instanceof a.UnionType){const q=(0,l.nullableFromUnion)(S);q!==null&&(S=q,B=(0,_.transformationForType)(S))}if(B!==void 0&&!D(B))return(0,c.defined)(this.nameForTransformation(S))}attributesForProperty(S,B,q,G){if(!this._needAttributes)return;const $=[],ee=this._options.dense?f:"JsonPropertyName",ue=(0,u.utf16StringEscape)(G),se=(0,_.followTargetType)(S.type).isNullable;S.isOptional&&!se&&$.push(["[","JsonIgnore","(Condition = JsonIgnoreCondition.WhenWritingNull)]"]),$.push(["[",ee,'("',ue,'")]']);const ye=this.converterForType(S.type);return ye!==void 0&&$.push(["[JsonConverter(typeof(",ye,"))]"]),$}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(S){return S.kind==="any"||S.kind==="none"?"object":this.csType(S)}emitFromJsonForTopLevel(S,B){if(S instanceof a.EnumType)return;let q,G;const $=this.namedTypeToNameForTopLevel(S);$!==void 0?(q="partial ",G=$ instanceof a.ClassType?"class":"struct"):(q="",G="class");const ee=this.topLevelResultType(S);this.emitType(void 0,h.Public,[q,G],B,this.baseclassForType(S),()=>{this.emitExpressionMember(["public static ",ee," FromJson(string json)"],["JsonSerializer.Deserialize<",ee,">(json, ",this._options.namespace,".Converter.Settings)"])})}emitDecoderSwitch(S){this.emitLine("switch (reader.TokenType)"),this.emitBlock(S)}emitTokenCase(S){this.emitLine("case JsonTokenType.",S,":")}emitThrow(S){this.emitLine("throw new Exception(",S,");")}deserializeTypeCode(S){switch(S){case"bool":return["reader.GetBoolean()"];case"long":return["reader.GetInt64()"];case"decimal":return["reader.GetDecimal()"];case"double":return["reader.GetDouble()"];case"string":return["reader.GetString()"];default:return["JsonSerializer.Deserialize<",S,">(ref reader, options)"]}}serializeValueCode(S){return S!=="null"?["JsonSerializer.Serialize(writer, ",S,", options)"]:["writer.WriteNullValue()"]}emitSerializeClass(){this.emitType(void 0,h.Public,"static class","Serialize",void 0,()=>{const S=new Set;this.forEachTopLevel("none",B=>{S.has(B)||(S.add(B),this.emitExpressionMember(["public static string ToJson(this ",this.topLevelResultType(B)," self)"],["JsonSerializer.Serialize(self, ",this._options.namespace,".Converter.Settings)"]))})})}emitCanConvert(S){this.emitExpressionMember("public override bool CanConvert(Type t)",S)}emitReadJson(S,B){this.emitLine("public override ",B," Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)"),this.emitBlock(S)}emitWriteJson(S,B,q){this.emitLine("public override void Write(Utf8JsonWriter writer, ",q," ",S,", JsonSerializerOptions options)"),this.emitBlock(B)}converterObject(S){return[S,".Singleton"]}emitConverterClass(){const S=["Converter"];this.emitType(void 0,h.Internal,"static class",S,void 0,()=>{this.emitLine("public static readonly JsonSerializerOptions Settings = new(JsonSerializerDefaults.General)"),this.emitBlock(()=>{this.emitLine("Converters ="),this.emitLine("{"),this.indent(()=>{for(const[B,q]of this.typesWithNamedTransformations)D((0,c.defined)((0,_.transformationForType)(B)))&&this.emitLine(this.converterObject(q),",");this.emitLine("new DateOnlyConverter(),"),this.emitLine("new TimeOnlyConverter(),"),this.emitLine("IsoDateTimeOffsetConverter.Singleton")}),this.emitLine("},")},!0)})}emitDecoderTransformerCase(S,B,q,G,$){if(q!==void 0){for(const ee of S)this.emitTokenCase(ee);this.indent(()=>{this.emitDecodeTransformer(q,G,$,B)||this.emitLine("break;")})}}emitConsume(S,B,q,G){return B===void 0?(G(S),!0):this.emitTransformer(S,B,q,G)}emitDecodeTransformer(S,B,q,G="value"){if(S instanceof _.DecodingTransformer){const $=S.sourceType,ee=this.converterForType(B);if(ee!==void 0){const ue=this.csType(B);this.emitLine("var converter = ",this.converterObject(ee),";"),this.emitLine("var ",G," = (",ue,")converter.ReadJson(reader, typeof(",ue,"), null, serializer);")}else if($.kind!=="null"){let ue=B.kind==="double"?B:$;this.emitLine("var ",G," = ",this.deserializeTypeCode(this.csType(ue)),";")}return this.emitConsume(G,S.consumer,B,q)}else if(S instanceof _.ArrayDecodingTransformer){if(!(B instanceof a.ArrayType))return(0,c.panic)("Array decoding must produce an array type");this.emitLine("reader.Read();"),this.emitLine("var ",G," = new List<",this.csType(B.items),">();"),this.emitLine("while (reader.TokenType != JsonToken.EndArray)"),this.emitBlock(()=>{this.emitDecodeTransformer(S.itemTransformer,S.itemTargetType,ee=>this.emitLine(G,".Add(",ee,");"),"arrayItem"),this.emitLine("reader.Read();")});let $=G;return this._options.useList||($=[$,".ToArray()"]),q($),!0}else return S instanceof _.DecodingChoiceTransformer?(this.emitDecoderSwitch(()=>{const $=S.nullTransformer;$!==void 0&&(this.emitTokenCase("Null"),this.indent(()=>{this.emitDecodeTransformer($,B,q,"null")||this.emitLine("break")})),this.emitDecoderTransformerCase(["Number"],"integerValue",S.integerTransformer,B,q),this.emitDecoderTransformerCase(["Number"],"doubleValue",S.doubleTransformer,B,q),this.emitDecoderTransformerCase(["True","False"],"boolValue",S.boolTransformer,B,q),this.emitDecoderTransformerCase(["String"],"stringValue",S.stringTransformer,B,q),this.emitDecoderTransformerCase(["StartObject"],"objectValue",S.objectTransformer,B,q),this.emitDecoderTransformerCase(["StartArray"],"arrayValue",S.arrayTransformer,B,q)}),!1):(0,c.panic)("Unknown transformer")}stringCaseValue(S,B){return S.kind==="string"?['"',(0,u.utf16StringEscape)(B),'"']:S instanceof a.EnumType?[this.nameForNamedType(S),".",this.nameForEnumCase(S,B)]:(0,c.panic)(`Type ${S.kind} does not have string cases`)}emitTransformer(S,B,q,G){function $(ee){return ee===void 0?q:(0,_.followTargetType)(ee.sourceType)}if(B instanceof _.ChoiceTransformer){const ee=B.transformers;if(ee.length>1&&ee.every(ue=>ue instanceof _.StringMatchTransformer))return this.emitLine("switch (",S,")"),this.emitBlock(()=>{for(const ue of ee){const se=ue,ie=this.stringCaseValue((0,_.followTargetType)(se.sourceType),se.stringCase);this.emitLine("case ",ie,":"),this.indent(()=>{this.emitTransformer(S,se.transformer,q,G)||this.emitLine("break;")})}}),!1;for(const ue of ee)this.emitTransformer(S,ue,q,G)}else if(B instanceof _.UnionMemberMatchTransformer){const ee=B.memberType,ue=(0,l.nullableFromUnion)(B.sourceType);let se,ie;if(ue!==null)ee.kind==="null"?(se=[S," == null"],ie="null"):(se=[S," != null"],ie=S);else if(ee.kind==="null")se=[S,".IsNull"],ie="null";else{const ye=this.nameForUnionMember(B.sourceType,ee);ie=[S,".",ye],se=[ie," != null"]}ee.kind!=="null"&&T(ee)&&(ie=[ie,".Value"]),this.emitLine("if (",se,")"),this.emitBlock(()=>this.emitTransformer(ie,B.transformer,q,G))}else if(B instanceof _.StringMatchTransformer){const ee=this.stringCaseValue((0,_.followTargetType)(B.sourceType),B.stringCase);this.emitLine("if (",S," == ",ee,")"),this.emitBlock(()=>this.emitTransformer(S,B.transformer,q,G))}else if(B instanceof _.EncodingTransformer){const ee=this.converterForType(B.sourceType);return ee!==void 0?(this.emitLine("var converter = ",this.converterObject(ee),";"),this.emitLine("converter.WriteJson(writer, ",S,", serializer);")):this.emitLine(this.serializeValueCode(S),";"),G([]),!0}else if(B instanceof _.ArrayEncodingTransformer){this.emitLine("writer.WriteStartArray();");const ee="arrayItem";return this.emitLine("foreach (var ",ee," in ",S,")"),this.emitBlock(()=>{this.emitTransformer(ee,B.itemTransformer,B.itemTargetType,()=>{})}),this.emitLine("writer.WriteEndArray();"),G([]),!0}else if(B instanceof _.ParseStringTransformer){const ee=B.consumer===void 0?q:B.consumer.sourceType;switch(ee.kind){case"date-time":this.emitLine("DateTimeOffset dt;"),this.emitLine("if (DateTimeOffset.TryParse(",S,", out dt))"),this.emitBlock(()=>this.emitConsume("dt",B.consumer,q,G));break;case"uuid":this.emitLine("Guid guid;"),this.emitLine("if (Guid.TryParse(",S,", out guid))"),this.emitBlock(()=>this.emitConsume("guid",B.consumer,q,G));break;case"uri":this.emitLine("try"),this.emitBlock(()=>{this.emitLine('var uri = new Uri("about:blank");'),this.emitLine("if (!string.IsNullOrEmpty(stringValue))"),this.emitBlock(()=>{this.emitLine("uri = new Uri(",S,");")}),this.emitConsume("uri",B.consumer,q,G)}),this.emitLine("catch (UriFormatException) {}");break;case"integer":this.emitLine("long l;"),this.emitLine("if (Int64.TryParse(",S,", out l))"),this.emitBlock(()=>this.emitConsume("l",B.consumer,q,G));break;case"bool":this.emitLine("bool b;"),this.emitLine("if (Boolean.TryParse(",S,", out b))"),this.emitBlock(()=>this.emitConsume("b",B.consumer,q,G));break;default:return(0,c.panic)(`Parsing string to ${ee.kind} not supported`)}}else if(B instanceof _.StringifyTransformer)switch(B.sourceType.kind){case"date-time":return this.emitConsume([S,'.ToString("o", System.Globalization.CultureInfo.InvariantCulture)'],B.consumer,q,G);case"uuid":return this.emitConsume([S,'.ToString("D", System.Globalization.CultureInfo.InvariantCulture)'],B.consumer,q,G);case"integer":case"uri":return this.emitConsume([S,".ToString()"],B.consumer,q,G);case"bool":return this.emitLine("var boolString = ",S,' ? "true" : "false";'),this.emitConsume("boolString",B.consumer,q,G);default:return(0,c.panic)(`Stringifying ${B.sourceType.kind} not supported`)}else if(B instanceof _.StringProducerTransformer){const ee=this.stringCaseValue($(B.consumer),B.result);return this.emitConsume(ee,B.consumer,q,G)}else if(B instanceof _.MinMaxLengthCheckTransformer){const ee=B.minLength,ue=B.maxLength,se=[];return ee!==void 0&&se.push([S,".Length >= ",ee.toString()]),ue!==void 0&&se.push([S,".Length <= ",ue.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(S,B.consumer,q,G)),!1}else if(B instanceof _.MinMaxValueTransformer){const ee=B.minimum,ue=B.maximum,se=[];return ee!==void 0&&se.push([S," >= ",ee.toString()]),ue!==void 0&&se.push([S," <= ",ue.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(S,B.consumer,q,G)),!1}else if(B instanceof _.UnionInstantiationTransformer){if(!(q instanceof a.UnionType))return(0,c.panic)("Union instantiation transformer must produce a union type");if((0,l.nullableFromUnion)(q)!==null)G(S);else{const ue=this.nameForNamedType(q);let se;B.sourceType.kind==="null"?se=" ":se=[" ",this.nameForUnionMember(q,B.sourceType)," = ",S," "],G(["new ",ue," {",se,"}"])}return!0}else return(0,c.panic)("Unknown transformer");return!1}emitTransformation(S,B){const q=(0,c.defined)((0,_.transformationForType)(B)),G=q.reverse,$=q.targetType,ee=q.transformer,ue=this.csType($);this.emitType(void 0,h.Internal,"class",S,["JsonConverter<",ue,">"],()=>{let se=["t == typeof(",ue,")"];this.emitCanConvert(se),this.ensureBlankLine(),this.emitReadJson(()=>{this.emitDecodeTransformer(ee,$,ye=>this.emitLine("return ",ye,";"))||this.emitThrow(['"Cannot unmarshal type ',ue,'"'])},ue),this.ensureBlankLine(),this.emitWriteJson("value",()=>{this.emitTransformer("value",G.transformer,G.targetType,()=>this.emitLine("return;"))||this.emitThrow(['"Cannot marshal type ',ue,'"'])},ue),this.ensureBlankLine(),this.emitLine("public static readonly ",S," Singleton = new ",S,"();")})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel("leading-and-interposing",(S,B)=>this.emitFromJsonForTopLevel(S,B)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation("leading-and-interposing",(S,B)=>this.emitTransformation(S,B)),this.emitMultiline(`
186
+ public class DateOnlyConverter : JsonConverter<DateOnly>
187
+ {
188
+ private readonly string serializationFormat;
189
+ public DateOnlyConverter() : this(null) { }
190
+
191
+ public DateOnlyConverter(string? serializationFormat)
192
+ {
193
+ this.serializationFormat = serializationFormat ?? "yyyy-MM-dd";
194
+ }
195
+
196
+ public override DateOnly Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
197
+ {
198
+ var value = reader.GetString();
199
+ return DateOnly.Parse(value!);
200
+ }
201
+
202
+ public override void Write(Utf8JsonWriter writer, DateOnly value, JsonSerializerOptions options)
203
+ => writer.WriteStringValue(value.ToString(serializationFormat));
204
+ }
205
+
206
+ public class TimeOnlyConverter : JsonConverter<TimeOnly>
207
+ {
208
+ private readonly string serializationFormat;
209
+
210
+ public TimeOnlyConverter() : this(null) { }
211
+
212
+ public TimeOnlyConverter(string? serializationFormat)
213
+ {
214
+ this.serializationFormat = serializationFormat ?? "HH:mm:ss.fff";
215
+ }
216
+
217
+ public override TimeOnly Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
218
+ {
219
+ var value = reader.GetString();
220
+ return TimeOnly.Parse(value!);
221
+ }
222
+
223
+ public override void Write(Utf8JsonWriter writer, TimeOnly value, JsonSerializerOptions options)
224
+ => writer.WriteStringValue(value.ToString(serializationFormat));
225
+ }
226
+
227
+ internal class IsoDateTimeOffsetConverter : JsonConverter<DateTimeOffset>
228
+ {
229
+ public override bool CanConvert(Type t) => t == typeof(DateTimeOffset);
230
+
231
+ private const string DefaultDateTimeFormat = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK";
232
+
233
+ private DateTimeStyles _dateTimeStyles = DateTimeStyles.RoundtripKind;
234
+ private string? _dateTimeFormat;
235
+ private CultureInfo? _culture;
236
+
237
+ public DateTimeStyles DateTimeStyles
238
+ {
239
+ get => _dateTimeStyles;
240
+ set => _dateTimeStyles = value;
241
+ }
242
+
243
+ public string? DateTimeFormat
244
+ {
245
+ get => _dateTimeFormat ?? string.Empty;
246
+ set => _dateTimeFormat = (string.IsNullOrEmpty(value)) ? null : value;
247
+ }
248
+
249
+ public CultureInfo Culture
250
+ {
251
+ get => _culture ?? CultureInfo.CurrentCulture;
252
+ set => _culture = value;
253
+ }
254
+
255
+ public override void Write(Utf8JsonWriter writer, DateTimeOffset value, JsonSerializerOptions options)
256
+ {
257
+ string text;
258
+
259
+
260
+ if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal
261
+ || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal)
262
+ {
263
+ value = value.ToUniversalTime();
264
+ }
265
+
266
+ text = value.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture);
267
+
268
+ writer.WriteStringValue(text);
269
+ }
270
+
271
+ public override DateTimeOffset Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
272
+ {
273
+ string? dateText = reader.GetString();
274
+
275
+ if (string.IsNullOrEmpty(dateText) == false)
276
+ {
277
+ if (!string.IsNullOrEmpty(_dateTimeFormat))
278
+ {
279
+ return DateTimeOffset.ParseExact(dateText, _dateTimeFormat, Culture, _dateTimeStyles);
280
+ }
281
+ else
282
+ {
283
+ return DateTimeOffset.Parse(dateText, Culture, _dateTimeStyles);
284
+ }
285
+ }
286
+ else
287
+ {
288
+ return default(DateTimeOffset);
289
+ }
290
+ }
291
+
292
+
293
+ public static readonly IsoDateTimeOffsetConverter Singleton = new IsoDateTimeOffsetConverter();
294
+ }`))}needNamespace(){return this._needNamespaces}}e.SystemTextJsonCSharpRenderer=x}(Yo)),Yo}var Wl={},pm;function rb(){return pm||(pm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.GoRenderer=e.GoTargetLanguage=e.goOptions=void 0;const t=mt(),n=pt(),a=Ft(),l=Nt(),d=Qe(),u=zt(),c=Bt(),w=On(),U=qt(),P=Wt();e.goOptions={justTypes:new u.BooleanOption("just-types","Plain types only",!1),justTypesAndPackage:new u.BooleanOption("just-types-and-package","Plain types with package only",!1),packageName:new u.StringOption("package","Generated package name","NAME","main"),multiFileOutput:new u.BooleanOption("multi-file-output","Renders each top-level object in its own Go file",!1)};class O extends U.TargetLanguage{constructor(){super("Go",["go","golang"],"go")}getOptions(){return[e.goOptions.justTypes,e.goOptions.packageName,e.goOptions.multiFileOutput,e.goOptions.justTypesAndPackage]}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}makeRenderer(C,I){return new k(this,C,(0,u.getOptionValues)(e.goOptions,I))}get defaultIndentation(){return" "}}e.GoTargetLanguage=O;const R=(0,a.funPrefixNamer)("namer",L),_=(0,l.legalizeCharacters)(l.isLetterOrUnderscoreOrDigit);function L(D){const C=(0,l.splitIntoWords)(D);return(0,l.combineWords)(C,_,l.firstUpperWordStyle,l.firstUpperWordStyle,l.allUpperWordStyle,l.allUpperWordStyle,"",l.isLetterOrUnderscore)}const g=["integer","double","bool","string"],y=["array","class","map","enum"];function h(D){const C=D.kind;return g.indexOf(C)>=0||C==="class"||C==="enum"}function p(D){if(!D.isOptional)return!1;const C=D.type;return["union","null","any"].indexOf(C.kind)<0}class k extends P.ConvenienceRenderer{constructor(C,I,A){super(C,I),this._options=A,this._topLevelUnmarshalNames=new Map}makeNamedTypeNamer(){return R}namerForObjectProperty(){return R}makeUnionMemberNamer(){return R}makeEnumCaseNamer(){return R}get enumCasesInGlobalNamespace(){return!0}makeTopLevelDependencyNames(C,I){const A=new a.DependencyName(R,I.order,f=>`unmarshal_${f(I)}`);return this._topLevelUnmarshalNames.set(I,A),[A]}startFile(C){this._options.multiFileOutput!==!1&&((0,d.assert)(this._currentFilename===void 0,"Previous file wasn't finished: "+this._currentFilename),this._currentFilename=`${this.sourcelikeToString(C)}.go`.toLowerCase(),this.initializeEmitContextForFilename(this._currentFilename))}endFile(){this._options.multiFileOutput!==!1&&(this.finishFile((0,d.defined)(this._currentFilename)),this._currentFilename=void 0)}emitBlock(C,I){this.emitLine(C," {"),this.indent(I),this.emitLine("}")}emitFunc(C,I){this.emitBlock(["func ",C],I)}emitStruct(C,I){this.emitBlock(["type ",C," struct"],()=>this.emitTable(I))}nullableGoType(C,I){const A=this.goType(C,I);return h(C)?["*",A]:A}propertyGoType(C){const I=C.type;return I instanceof t.UnionType&&(0,n.nullableFromUnion)(I)===null?["*",this.goType(I,!0)]:C.isOptional?this.nullableGoType(I,!0):this.goType(I,!0)}goType(C,I=!1){return(0,n.matchType)(C,A=>(0,c.maybeAnnotated)(I,w.anyTypeIssueAnnotation,"interface{}"),A=>(0,c.maybeAnnotated)(I,w.nullTypeIssueAnnotation,"interface{}"),A=>"bool",A=>"int64",A=>"float64",A=>"string",A=>["[]",this.goType(A.items,I)],A=>this.nameForNamedType(A),A=>{let f;const E=A.values;return E instanceof t.UnionType&&(0,n.nullableFromUnion)(E)===null?f=["*",this.nameForNamedType(E)]:f=this.goType(E,I),["map[string]",f]},A=>this.nameForNamedType(A),A=>{const f=(0,n.nullableFromUnion)(A);return f!==null?this.nullableGoType(f,I):this.nameForNamedType(A)})}emitTopLevel(C,I){if(this.startFile(I),this._options.multiFileOutput&&this._options.justTypes===!1&&this._options.justTypesAndPackage===!1&&this.leadingComments===void 0){this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse and unparse this JSON data, add this code to your project and do:"),this.emitLineOnce("//");const f=(0,c.modifySource)(l.camelCase,I);this.emitLineOnce("// ",f,", err := ",(0,d.defined)(this._topLevelUnmarshalNames.get(I)),"(bytes)"),this.emitLineOnce("// bytes, err = ",f,".Marshal()")}this.emitPackageDefinitons(!0);const A=(0,d.defined)(this._topLevelUnmarshalNames.get(I));this.namedTypeToNameForTopLevel(C)===void 0&&this.emitLine("type ",I," ",this.goType(C)),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc([A,"(data []byte) (",I,", error)"],()=>{this.emitLine("var r ",I),this.emitLine("err := json.Unmarshal(data, &r)"),this.emitLine("return r, err")}),this.ensureBlankLine(),this.emitFunc(["(r *",I,") Marshal() ([]byte, error)"],()=>{this.emitLine("return json.Marshal(r)")}),this.endFile())}emitClass(C,I){this.startFile(I),this.emitPackageDefinitons(!1);let A=[];this.forEachClassProperty(C,"none",(f,E,b)=>{const F=this.descriptionForClassProperty(C,E),m=F!==void 0&&F.length>0?F.map(T=>"// "+T):[],r=this.propertyGoType(b),s=p(b)?",omitempty":[];m.forEach(T=>A.push([T])),A.push([[f," "],[r," "],['`json:"',(0,l.stringEscape)(E),s,'"`']])}),this.emitDescription(this.descriptionForType(C)),this.emitStruct(I,A),this.endFile()}emitEnum(C,I){this.startFile(I),this.emitPackageDefinitons(!1),this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",I," string"),this.emitLine("const ("),this.indent(()=>this.forEachEnumCase(C,"none",(A,f)=>{this.emitLine(A," ",I,' = "',(0,l.stringEscape)(f),'"')})),this.emitLine(")"),this.endFile()}emitUnion(C,I){this.startFile(I),this.emitPackageDefinitons(!1);const[A,f]=(0,n.removeNullFromUnion)(C),E=A!==null?"true":"false",b=(s,T,v)=>{const M=C.findMember(s);return M===void 0?T:v(M,this.nameForUnionMember(C,M),this.goType(M))},F=s=>{b(s,void 0,(T,v,M)=>{this.emitLine("x.",v," = nil")})},m=(s,T)=>{const v=[];for(const M of g)v.push(b(M,"nil",(x,W,S)=>s(W)),", ");for(const M of y)v.push(b(M,"false, nil",(x,W,S)=>T(x.kind==="class",W)),", ");return v.push(E),v};let r=[];this.forEachUnionMember(C,f,"none",null,(s,T)=>{const v=this.nullableGoType(T,!0);r.push([[s," "],v])}),this.emitDescription(this.descriptionForType(C)),this.emitStruct(I,r),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc(["(x *",I,") UnmarshalJSON(data []byte) error"],()=>{for(const T of y)F(T);b("class",void 0,(T,v,M)=>{this.emitLine("var c ",M)});const s=m(T=>["&x.",T],(T,v)=>T?"true, &c":["true, &x.",v]);this.emitLine("object, err := unmarshalUnion(data, ",s,")"),this.emitBlock("if err != nil",()=>{this.emitLine("return err")}),this.emitBlock("if object",()=>{b("class",void 0,(T,v,M)=>{this.emitLine("x.",v," = &c")})}),this.emitLine("return nil")}),this.ensureBlankLine(),this.emitFunc(["(x *",I,") MarshalJSON() ([]byte, error)"],()=>{const s=m(T=>["x.",T],(T,v)=>["x.",v," != nil, x.",v]);this.emitLine("return marshalUnion(",s,")")}),this.endFile())}emitSingleFileHeaderComments(){this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse and unparse this JSON data, add this code to your project and do:"),this.forEachTopLevel("none",(C,I)=>{this.emitLine("//");const A=(0,c.modifySource)(l.camelCase,I);this.emitLine("// ",A,", err := ",(0,d.defined)(this._topLevelUnmarshalNames.get(I)),"(bytes)"),this.emitLine("// bytes, err = ",A,".Marshal()")})}emitPackageDefinitons(C){if(!this._options.justTypes||this._options.justTypesAndPackage){this.ensureBlankLine();const I="package "+this._options.packageName;this.emitLineOnce(I),this.ensureBlankLine()}!this._options.justTypes&&!this._options.justTypesAndPackage&&(this.ensureBlankLine(),this.haveNamedUnions&&this._options.multiFileOutput===!1&&(this.emitLineOnce('import "bytes"'),this.emitLineOnce('import "errors"')),C&&this.emitLineOnce('import "encoding/json"'),this.ensureBlankLine())}emitHelperFunctions(){this.haveNamedUnions&&(this.startFile("JSONSchemaSupport"),this.emitPackageDefinitons(!0),this._options.multiFileOutput&&(this.emitLineOnce('import "bytes"'),this.emitLineOnce('import "errors"')),this.ensureBlankLine(),this.emitMultiline(`func unmarshalUnion(data []byte, pi **int64, pf **float64, pb **bool, ps **string, haveArray bool, pa interface{}, haveObject bool, pc interface{}, haveMap bool, pm interface{}, haveEnum bool, pe interface{}, nullable bool) (bool, error) {
295
+ if pi != nil {
296
+ *pi = nil
297
+ }
298
+ if pf != nil {
299
+ *pf = nil
300
+ }
301
+ if pb != nil {
302
+ *pb = nil
303
+ }
304
+ if ps != nil {
305
+ *ps = nil
306
+ }
307
+
308
+ dec := json.NewDecoder(bytes.NewReader(data))
309
+ dec.UseNumber()
310
+ tok, err := dec.Token()
311
+ if err != nil {
312
+ return false, err
313
+ }
314
+
315
+ switch v := tok.(type) {
316
+ case json.Number:
317
+ if pi != nil {
318
+ i, err := v.Int64()
319
+ if err == nil {
320
+ *pi = &i
321
+ return false, nil
322
+ }
323
+ }
324
+ if pf != nil {
325
+ f, err := v.Float64()
326
+ if err == nil {
327
+ *pf = &f
328
+ return false, nil
329
+ }
330
+ return false, errors.New("Unparsable number")
331
+ }
332
+ return false, errors.New("Union does not contain number")
333
+ case float64:
334
+ return false, errors.New("Decoder should not return float64")
335
+ case bool:
336
+ if pb != nil {
337
+ *pb = &v
338
+ return false, nil
339
+ }
340
+ return false, errors.New("Union does not contain bool")
341
+ case string:
342
+ if haveEnum {
343
+ return false, json.Unmarshal(data, pe)
344
+ }
345
+ if ps != nil {
346
+ *ps = &v
347
+ return false, nil
348
+ }
349
+ return false, errors.New("Union does not contain string")
350
+ case nil:
351
+ if nullable {
352
+ return false, nil
353
+ }
354
+ return false, errors.New("Union does not contain null")
355
+ case json.Delim:
356
+ if v == '{' {
357
+ if haveObject {
358
+ return true, json.Unmarshal(data, pc)
359
+ }
360
+ if haveMap {
361
+ return false, json.Unmarshal(data, pm)
362
+ }
363
+ return false, errors.New("Union does not contain object")
364
+ }
365
+ if v == '[' {
366
+ if haveArray {
367
+ return false, json.Unmarshal(data, pa)
368
+ }
369
+ return false, errors.New("Union does not contain array")
370
+ }
371
+ return false, errors.New("Cannot handle delimiter")
372
+ }
373
+ return false, errors.New("Cannot unmarshal union")
374
+
375
+ }
376
+
377
+ func marshalUnion(pi *int64, pf *float64, pb *bool, ps *string, haveArray bool, pa interface{}, haveObject bool, pc interface{}, haveMap bool, pm interface{}, haveEnum bool, pe interface{}, nullable bool) ([]byte, error) {
378
+ if pi != nil {
379
+ return json.Marshal(*pi)
380
+ }
381
+ if pf != nil {
382
+ return json.Marshal(*pf)
383
+ }
384
+ if pb != nil {
385
+ return json.Marshal(*pb)
386
+ }
387
+ if ps != nil {
388
+ return json.Marshal(*ps)
389
+ }
390
+ if haveArray {
391
+ return json.Marshal(pa)
392
+ }
393
+ if haveObject {
394
+ return json.Marshal(pc)
395
+ }
396
+ if haveMap {
397
+ return json.Marshal(pm)
398
+ }
399
+ if haveEnum {
400
+ return json.Marshal(pe)
401
+ }
402
+ if nullable {
403
+ return json.Marshal(nil)
404
+ }
405
+ return nil, errors.New("Union must not be null")
406
+ }`),this.endFile())}emitSourceStructure(){this._options.multiFileOutput===!1&&this._options.justTypes===!1&&this._options.justTypesAndPackage===!1&&this.leadingComments===void 0&&this.emitSingleFileHeaderComments(),this.forEachTopLevel("leading-and-interposing",(C,I)=>this.emitTopLevel(C,I),C=>!(this._options.justTypes||this._options.justTypesAndPackage)||this.namedTypeToNameForTopLevel(C)===void 0),this.forEachObject("leading-and-interposing",(C,I)=>this.emitClass(C,I)),this.forEachEnum("leading-and-interposing",(C,I)=>this.emitEnum(C,I)),this.forEachUnion("leading-and-interposing",(C,I)=>this.emitUnion(C,I)),!(this._options.justTypes||this._options.justTypesAndPackage)&&this.emitHelperFunctions()}}e.GoRenderer=k}(Wl)),Wl}var ql={},mm;function sb(){return mm||(mm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CPlusPlusRenderer=e.MemberNames=e.GlobalNames=e.IncludeKind=e.CPlusPlusTargetLanguage=e.cPlusPlusOptions=void 0;const t=et(),n=qt(),a=mt(),l=pt(),d=Ft(),u=Bt(),c=On(),w=Nt(),U=Qe(),P=Wt(),O=zt(),R=Qe(),_=Ha(),L=tb(),g=Yr(),y=["pascal-case","pascal"],h=["underscore-case","underscore"],p=["camel-case","camel"],k=["upper-underscore-case","upper-underscore"],D=["pascal-case-upper-acronyms","pascal-upper-acronyms"],C=["camel-case-upper-acronyms","camel-upper-acronyms"];e.cPlusPlusOptions={typeSourceStyle:new O.EnumOption("source-style","Source code generation type, whether to generate single or multiple source files",[["single-source",!0],["multi-source",!1]],"single-source","secondary"),includeLocation:new O.EnumOption("include-location","Whether json.hpp is to be located globally or locally",[["local-include",!0],["global-include",!1]],"local-include","secondary"),codeFormat:new O.EnumOption("code-format","Generate classes with getters/setters, instead of structs",[["with-struct",!1],["with-getter-setter",!0]],"with-getter-setter"),wstring:new O.EnumOption("wstring","Store strings using Utf-16 std::wstring, rather than Utf-8 std::string",[["use-string",!1],["use-wstring",!0]],"use-string"),westConst:new O.EnumOption("const-style","Put const to the left/west (const T) or right/east (T const)",[["west-const",!0],["east-const",!1]],"west-const"),justTypes:new O.BooleanOption("just-types","Plain types only",!1),namespace:new O.StringOption("namespace","Name of the generated namespace(s)","NAME","quicktype"),enumType:new O.StringOption("enum-type","Type of enum class","NAME","int","secondary"),typeNamingStyle:new O.EnumOption("type-style","Naming style for types",[y,h,p,k,D,C]),memberNamingStyle:new O.EnumOption("member-style","Naming style for members",[h,y,p,k,D,C]),enumeratorNamingStyle:new O.EnumOption("enumerator-style","Naming style for enumerators",[k,h,y,p,D,C]),boost:new O.BooleanOption("boost","Require a dependency on boost. Without boost, C++17 is required",!0),hideNullOptional:new O.BooleanOption("hide-null-optional","Hide null value for optional field",!1)};class I extends n.TargetLanguage{constructor(S="C++",B=["c++","cpp","cplusplus"],q="cpp"){super(S,B,q)}getOptions(){return[e.cPlusPlusOptions.justTypes,e.cPlusPlusOptions.namespace,e.cPlusPlusOptions.codeFormat,e.cPlusPlusOptions.wstring,e.cPlusPlusOptions.westConst,e.cPlusPlusOptions.typeSourceStyle,e.cPlusPlusOptions.includeLocation,e.cPlusPlusOptions.typeNamingStyle,e.cPlusPlusOptions.memberNamingStyle,e.cPlusPlusOptions.enumeratorNamingStyle,e.cPlusPlusOptions.enumType,e.cPlusPlusOptions.boost,e.cPlusPlusOptions.hideNullOptional]}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}makeRenderer(S,B){return new x(this,S,(0,O.getOptionValues)(e.cPlusPlusOptions,B))}}e.CPlusPlusTargetLanguage=I;function A(W){const S=(0,g.minMaxValueForType)(W),B=(0,g.minMaxLengthForType)(W),q=(0,g.patternForType)(W);if(!(S===void 0&&B===void 0&&q===void 0))return{minMax:S,minMaxLength:B,pattern:q}}const f=(0,w.legalizeCharacters)(W=>(0,w.isAscii)(W)&&(0,w.isLetterOrUnderscoreOrDigit)(W)),E=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","bool","break","case","catch","char","char16_t","char32_t","class","compl","concept","const","constexpr","const_cast","continue","co_await","co_return","co_yield","decltype","default","delete","do","double","dynamic_cast","else","enum","explicit","export","extern","false","float","for","friend","goto","if","import","inline","int","long","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","private","protected","public","register","reinterpret_cast","requires","return","short","signed","sizeof","static","static_assert","static_cast","struct","switch","synchronized","template","this","thread_local","throw","true","try","typedef","typeid","typename","union","unsigned","using","virtual","void","volatile","wchar_t","while","xor","xor_eq","override","final","transaction_safe","transaction_safe_dynamic","NULL"],b="std::shared_ptr",F="std::make_shared";var m;(function(W){W[W.ForwardDeclare=0]="ForwardDeclare",W[W.Include=1]="Include"})(m=e.IncludeKind||(e.IncludeKind={}));var r;(function(W){W[W.ClassMemberConstraints=0]="ClassMemberConstraints",W[W.ClassMemberConstraintException=1]="ClassMemberConstraintException",W[W.ValueTooLowException=2]="ValueTooLowException",W[W.ValueTooHighException=3]="ValueTooHighException",W[W.ValueTooShortException=4]="ValueTooShortException",W[W.ValueTooLongException=5]="ValueTooLongException",W[W.InvalidPatternException=6]="InvalidPatternException",W[W.CheckConstraint=7]="CheckConstraint"})(r=e.GlobalNames||(e.GlobalNames={}));var s;(function(W){W[W.MinValue=0]="MinValue",W[W.GetMinValue=1]="GetMinValue",W[W.SetMinValue=2]="SetMinValue",W[W.MaxValue=3]="MaxValue",W[W.GetMaxValue=4]="GetMaxValue",W[W.SetMaxValue=5]="SetMaxValue",W[W.MinLength=6]="MinLength",W[W.GetMinLength=7]="GetMinLength",W[W.SetMinLength=8]="SetMinLength",W[W.MaxLength=9]="MaxLength",W[W.GetMaxLength=10]="GetMaxLength",W[W.SetMaxLength=11]="SetMaxLength",W[W.Pattern=12]="Pattern",W[W.GetPattern=13]="GetPattern",W[W.SetPattern=14]="SetPattern"})(s=e.MemberNames||(e.MemberNames={}));function T(W,S){return S.length===0?[]:[W,S]}class v{constructor(S,B){this._start=S,this._end=B}wrap(S,B){return[T(S,this._start),B,this._end]}}class M{constructor(S,B,q,G,$,ee,ue,se){this._stringType=S,this._constStringType=B,this._smatch=q,this._regex=G,this._stringLiteralPrefix=$,this._toString=ee,this._encodingClass=ue,this._encodingFunction=se}getType(){return this._stringType}getConstType(){return this._constStringType}getSMatch(){return this._smatch}getRegex(){return this._regex}createStringLiteral(S){return[this._stringLiteralPrefix,'"',S,'"']}wrapToString(S){return this._toString.wrap([],S)}}class x extends P.ConvenienceRenderer{constructor(S,B,q){super(S,B),this._options=q,this._gettersAndSettersForPropertyName=new Map,this.NarrowString=new class extends M{constructor(){super("std::string","const std::string & ","std::smatch","std::regex","",new v(["std::to_string("],[")"]),"","")}wrapEncodingChange(G,$,ee,ue){return ue}emitHelperFunctions(){}},this.WideString=new class extends M{constructor(G){super("std::wstring","const std::wstring & ","std::wsmatch","std::wregex","L",new v(["std::to_wstring("],[")"]),"Utf16_Utf8","convert"),this.superThis=G}wrapEncodingChange(G,$,ee,ue){return this.superThis.sourcelikeToString($)===this.superThis.sourcelikeToString(ee)?ue:[T(G,[this._encodingClass]),"<",$,", ",ee,">::",this._encodingFunction,"(",ue,")"]}emitHelperFunctions(){this.superThis.emitLine("template<typename T>"),this.superThis.emitLine("struct tag {};"),this.superThis.ensureBlankLine(),this.superThis.emitLine("template<typename fromType, typename toType>"),this.superThis.emitBlock(["class Utf16_Utf8"],!0,()=>{this.superThis.emitLine("private:"),this.superThis.emitLine("template<typename TF, typename TT>"),this.superThis.emitBlock(["static toType convert(tag<std::shared_ptr<TF> >, tag<std::shared_ptr<TT> >, fromType ptr)"],!1,()=>{this.superThis.emitLine("if (ptr == nullptr) return std::unique_ptr<TT>(); else return std::unique_ptr<TT>(new TT(Utf16_Utf8<TF,TT>::convert(*ptr)));")}),this.superThis.ensureBlankLine(),this.superThis.emitLine("template<typename TF, typename TT>"),this.superThis.emitBlock(["static toType convert(tag<std::vector<TF> >, tag<std::vector<TT> >, fromType v)"],!1,()=>{this.superThis.emitLine("auto it = v.begin();"),this.superThis.emitLine("auto newVector = std::vector<TT>();"),this.superThis.emitBlock(["while (it != v.end())"],!1,()=>{this.superThis.emitLine("newVector.push_back(Utf16_Utf8<TF,TT>::convert(*it));"),this.superThis.emitLine("it++;")}),this.superThis.emitLine("return newVector;")}),this.superThis.ensureBlankLine(),this.superThis.emitLine("template<typename KF, typename VF, typename KT, typename VT>"),this.superThis.emitBlock(["static toType convert(tag<std::map<KF,VF> >, tag<std::map<KT,VT> >, fromType m)"],!1,()=>{this.superThis.emitLine("auto it = m.begin();"),this.superThis.emitLine("auto newMap = std::map<KT, VT>();"),this.superThis.emitBlock(["while (it != m.end())"],!1,()=>{this.superThis.emitLine("newMap.insert(std::pair<KT, VT>(Utf16_Utf8<KF, KT>::convert(it->first), Utf16_Utf8<VF, VT>::convert(it->second)));"),this.superThis.emitLine("it++;")}),this.superThis.emitLine("return newMap;")}),this.superThis.ensureBlankLine(),this.superThis.emitLine("template<typename TF, typename TT>"),this.superThis.emitBlock(["static fromType convert(tag<TF>, tag<TT>, fromType from)"],!1,()=>{this.superThis.emitLine("return from;")}),this.superThis.ensureBlankLine(),this.superThis.emitBlock(["static std::wstring convert(tag<std::string>, tag<std::wstring>, std::string str)"],!1,()=>{this.superThis.emitLine("return std::wstring_convert<std::codecvt_utf8_utf16<wchar_t, 0x10ffff, std::little_endian>, wchar_t>{}.from_bytes(str.data());")}),this.superThis.ensureBlankLine(),this.superThis.emitBlock(["static std::string convert(tag<std::wstring>, tag<std::string>, std::wstring str)"],!1,()=>{this.superThis.emitLine("return std::wstring_convert<std::codecvt_utf8_utf16<wchar_t, 0x10ffff, std::little_endian>, wchar_t>{}.to_bytes(str.data());")}),this.superThis.ensureBlankLine(),this.superThis.emitLine("public:"),this.superThis.emitBlock(["static toType convert(fromType in)"],!1,()=>{this.superThis.emitLine("return convert(tag<fromType>(), tag<toType>(), in);")})}),this.superThis.ensureBlankLine(),this.superThis.emitLine("template<typename T>"),this.superThis.emitBlock(["std::wstring wdump(const T& j)"],!1,()=>{this.superThis.emitLine("std::ostringstream s;"),this.superThis.emitLine("s << j;"),this.superThis.emitLine("return ",this.superThis.ourQualifier(!1),"Utf16_Utf8<std::string, std::wstring>::convert(s.str()); ")}),this.superThis.ensureBlankLine()}}(this),this._enumType=q.enumType,this._namespaceNames=q.namespace.split("::"),this.typeNamingStyle=q.typeNamingStyle,this._namedTypeNameStyle=(0,w.makeNameStyle)(this.typeNamingStyle,f),this.enumeratorNamingStyle=q.enumeratorNamingStyle,this._memberNameStyle=(0,w.makeNameStyle)(q.memberNamingStyle,f),this._memberNamingFunction=(0,d.funPrefixNamer)("members",this._memberNameStyle),this._gettersAndSettersForPropertyName=new Map,this._allTypeNames=new Set,this._generatedFiles=new Set,this._generatedGlobalNames=new Map,this._generatedMemberNames=new Map,this._forbiddenGlobalNames=[],q.wstring?this._stringType=this.WideString:this._stringType=this.NarrowString,q.boost?(this._optionalType="boost::optional",this._optionalFactory="boost::optional",this._nulloptType="boost::none",this._variantType="boost::variant",this._variantIndexMethodName="which"):(this._optionalType="std::optional",this._optionalFactory="std::make_optional",this._nulloptType="std::nullopt",this._variantType="std::variant",this._variantIndexMethodName="index"),this.setupGlobalNames()}isUnion(S){return S.kind==="union"}isOptionalAsValuePossible(S){if(this.isForwardDeclaredType(S))return!1;if(this.isUnion(S)){const[,B]=(0,l.removeNullFromUnion)(S);if(B.size===1){const q=(0,U.defined)((0,t.iterableFirst)(B));return!this.isCycleBreakerType(q)}}return!this.isCycleBreakerType(S)}isImplicitCycleBreaker(S){const B=S.kind;return B==="array"||B==="map"}optionalTypeStack(){return this._optionalType}optionalFactoryStack(){return this._optionalFactory}optionalTypeHeap(){return b}optionalFactoryHeap(){return F}optionalType(S){return this.isOptionalAsValuePossible(S)?this.optionalTypeStack():this.optionalTypeHeap()}optionalTypeLabel(S){return this.isOptionalAsValuePossible(S)?"stack":"heap"}getConstraintMembers(){return[{name:s.MinValue,getter:s.GetMinValue,setter:s.SetMinValue,cppType:"int64_t"},{name:s.MaxValue,getter:s.GetMaxValue,setter:s.SetMaxValue,cppType:"int64_t"},{name:s.MinLength,getter:s.GetMinLength,setter:s.SetMinLength,cppType:"size_t"},{name:s.MaxLength,getter:s.GetMaxLength,setter:s.SetMaxLength,cppType:"size_t"},{name:s.Pattern,getter:s.GetPattern,setter:s.SetPattern,cppType:this._stringType.getType(),cppConstType:this._stringType.getConstType()}]}lookupGlobalName(S){return(0,U.defined)(this._generatedGlobalNames.get(S))}lookupMemberName(S){return(0,U.defined)(this._generatedMemberNames.get(S))}addGlobalName(S){const B=this._namedTypeNameStyle(r[S]);this._generatedGlobalNames.set(S,B),this._forbiddenGlobalNames.push(B)}addMemberName(S){this._generatedMemberNames.set(S,this._memberNameStyle(s[S]))}setupGlobalNames(){for(const S of(0,U.numberEnumValues)(r))this.addGlobalName(S);for(const S of(0,U.numberEnumValues)(s))this.addMemberName(S)}forbiddenNamesForGlobalNamespace(){return[...E,...this._forbiddenGlobalNames]}forbiddenForObjectProperties(S,B){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(S,B){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,d.funPrefixNamer)("types",this._namedTypeNameStyle)}namerForObjectProperty(){return this._memberNamingFunction}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,d.funPrefixNamer)("enumerators",(0,w.makeNameStyle)(this.enumeratorNamingStyle,f))}makeNamesForPropertyGetterAndSetter(S,B,q,G,$){const ee=new d.DependencyName(this._memberNamingFunction,$.order,ie=>`get_${ie($)}`),ue=new d.DependencyName(this._memberNamingFunction,$.order,ie=>`getMutable_${ie($)}`),se=new d.DependencyName(this._memberNamingFunction,$.order,ie=>`set_${ie($)}`);return[ee,ue,se]}makePropertyDependencyNames(S,B,q,G,$){const ee=this.makeNamesForPropertyGetterAndSetter(S,B,q,G,$);return this._gettersAndSettersForPropertyName.set($,ee),ee}withConst(S){return this._options.westConst?["const ",S]:[S," const"]}emitInclude(S,B){this.emitLine("#include ",S?"<":'"',B,S?">":'"')}startFile(S,B=!0){(0,R.assert)(this._currentFilename===void 0,"Previous file wasn't finished"),S!==void 0&&(this._currentFilename=this.sourcelikeToString(S)),this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines([" To parse this JSON data, first install",""]),this._options.boost&&this.emitCommentLines([" Boost http://www.boost.org"]),this.emitCommentLines([" json.hpp https://github.com/nlohmann/json",""," Then include this file, and then do",""]),this._options.typeSourceStyle?this.forEachTopLevel("none",(q,G)=>{this.emitLine("// ",G," data = nlohmann::json::parse(jsonString);")}):this.emitLine("// ",S," data = nlohmann::json::parse(jsonString);"),this._options.wstring&&(this.emitLine("//"),this.emitLine("// You can get std::wstring data back out using"),this.emitLine("//"),this.forEachTopLevel("none",(q,G)=>{this.emitLine("// std::wcout << ","wdump((nlohmann::json) ",G,");")}))),this.ensureBlankLine(),this.emitLine("#pragma once"),this.ensureBlankLine(),this.haveNamedUnions&&(this._options.boost?this.emitInclude(!0,"boost/variant.hpp"):this.emitInclude(!0,"variant")),this._options.justTypes||(this._options.includeLocation?this.emitInclude(!1,"json.hpp"):this.emitInclude(!0,"nlohmann/json.hpp"),B&&!this._options.typeSourceStyle&&this.emitInclude(!1,"helper.hpp")),this.ensureBlankLine()}finishFile(){super.finishFile((0,U.defined)(this._currentFilename)),this._currentFilename=void 0}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(S){return S.kind==="class"}emitDescriptionBlock(S){this.emitCommentLines(S," * ","/**"," */")}emitBlock(S,B,q,G=!0){this.emitLine(S," {"),this.preventBlankLine(),G?this.indent(q):q(),this.preventBlankLine(),B?this.emitLine("};"):this.emitLine("}")}emitNamespaces(S,B){const q=(0,t.toReadonlyArray)(S),G=q[0];G===void 0?B():this.emitBlock(["namespace ",G],!1,()=>this.emitNamespaces(q.slice(1),B),q.length===1)}cppTypeInOptional(S,B,q,G){if(S.size===1)return this.cppType((0,U.defined)((0,t.iterableFirst)(S)),B,q,G,!1);const $=[];for(const ee of S)$.length!==0&&$.push(", "),$.push(this.cppType(ee,{needsForwardIndirection:!0,needsOptionalIndirection:!1,inJsonNamespace:B.inJsonNamespace},q,!1,!1));return[this._variantType,"<",$,">"]}variantType(S,B){const[q,G]=(0,l.removeNullFromUnion)(S,!0);(0,R.assert)(G.size>=2,"Variant not needed for less than two types.");const $=q!==null,ee=this.cppTypeInOptional(G,{needsForwardIndirection:!$,needsOptionalIndirection:!$,inJsonNamespace:B},!0,!1);return $?[this.optionalType(S),"<",ee,">"]:ee}ourQualifier(S){return S?[(0,t.arrayIntercalate)("::",this._namespaceNames),"::"]:[]}jsonQualifier(S){return S?[]:"nlohmann::"}variantIndirection(S,B,q){return B?[this.optionalType(S),"<",q,">"]:q}cppType(S,B,q,G,$){const ee=B.inJsonNamespace;if($&&S instanceof a.UnionType){for(const se of S.getChildren())if(se.isNullable){$=!1;break}}let ue=(0,l.matchType)(S,se=>($=!1,(0,u.maybeAnnotated)(q,c.anyTypeIssueAnnotation,[this.jsonQualifier(ee),"json"])),se=>($=!1,(0,u.maybeAnnotated)(q,c.nullTypeIssueAnnotation,[this.jsonQualifier(ee),"json"])),se=>"bool",se=>"int64_t",se=>"double",se=>G?"std::string":this._stringType.getType(),se=>["std::vector<",this.cppType(se.items,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:ee},q,G,!1),">"],se=>this.variantIndirection(se,B.needsForwardIndirection&&this.isForwardDeclaredType(se)&&!$,[this.ourQualifier(ee),this.nameForNamedType(se)]),se=>{let ie=this._stringType.getType();return G&&(ie="std::string"),["std::map<",ie,", ",this.cppType(se.values,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:ee},q,G,!1),">"]},se=>[this.ourQualifier(ee),this.nameForNamedType(se)],se=>{const ie=(0,l.nullableFromUnion)(se);return ie!==null?($=!0,this.cppType(ie,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:ee},q,G,!1)):[this.ourQualifier(ee),this.nameForNamedType(se)]});return $?[this.optionalType(S),"<",ue,">"]:ue}generatedTypes(S,B){const q=[],G=($,ee,ue,se)=>{if(se instanceof a.ArrayType)G($,ee,ue+1,se.items);else if(se instanceof a.ClassType)q.push({name:this.nameForNamedType(se),type:se,level:ue,variant:ee,forceInclude:$});else if(se instanceof a.MapType)G($,ee,ue+1,se.values);else if(se instanceof a.EnumType)q.push({name:this.nameForNamedType(se),type:se,level:ue,variant:ee,forceInclude:!1});else if(se instanceof a.UnionType){this.unionNeedsName(se)&&S&&($=!0,q.push({name:this.nameForNamedType(se),type:se,level:ue,variant:!0,forceInclude:$}));const[ie,ye]=(0,l.removeNullFromUnion)(se);ee=ie!==null;for(const be of ye)G($,ee,ue+1,be)}};return G(!1,!1,0,B),q}constraintMember(S){return this._memberNameStyle(S+"Constraint")}emitMember(S,B){this.emitLine(S," ",B,";")}emitClassMembers(S,B){this._options.codeFormat&&(this.emitLine("private:"),this.forEachClassProperty(S,"none",(q,G,$)=>{if(this.emitMember(this.cppType($.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,$.isOptional),q),B!==void 0&&B.has(G)){const ee=this.lookupGlobalName(r.ClassMemberConstraints);this.emitMember(ee,this.constraintMember(G))}}),this.ensureBlankLine(),this.emitLine("public:")),this.forEachClassProperty(S,"none",(q,G,$)=>{if(this.emitDescription(this.descriptionForClassProperty(S,G)),!this._options.codeFormat)this.emitMember(this.cppType($.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,$.isOptional),q);else{const[ee,ue,se]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(q)),ie=this.cppType($.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,$.isOptional),ye=this.lookupGlobalName(r.CheckConstraint);$.type instanceof a.UnionType&&$.type.findMember("null")!==void 0||$.isOptional&&$.type.kind!=="null"&&$.type.kind!=="any"?(this.emitLine(ie," ",ee,"() const { return ",q,"; }"),B!==void 0&&B.has(G)?this.emitLine("void ",se,"(",ie," value) { if (value) ",ye,"(",this._stringType.createStringLiteral([q]),", ",this.constraintMember(G),", *value); this->",q," = value; }"):this.emitLine("void ",se,"(",ie," value) { this->",q," = value; }")):(this.emitLine(this.withConst(ie)," & ",ee,"() const { return ",q,"; }"),this.emitLine(ie," & ",ue,"() { return ",q,"; }"),B!==void 0&&B.has(G)?this.emitLine("void ",se,"(",this.withConst(ie)," & value) { ",ye,"(",this._stringType.createStringLiteral([q]),", ",this.constraintMember(G),", value); this->",q," = value; }"):this.emitLine("void ",se,"(",this.withConst(ie)," & value) { this->",q," = value; }")),this.ensureBlankLine()}})}generateClassConstraints(S){let B=new Map;return this.forEachClassProperty(S,"none",(q,G,$)=>{const ee=A($.type);if(ee===void 0)return;const{minMax:ue,minMaxLength:se,pattern:ie}=ee;B.set(G,[this.constraintMember(G),"(",ue!==void 0&&ue[0]!==void 0?String(ue[0]):this._nulloptType,", ",ue!==void 0&&ue[1]!==void 0?String(ue[1]):this._nulloptType,", ",se!==void 0&&se[0]!==void 0?String(se[0]):this._nulloptType,", ",se!==void 0&&se[1]!==void 0?String(se[1]):this._nulloptType,", ",ie===void 0?this._nulloptType:[this._stringType.getType(),"(",this._stringType.createStringLiteral([(0,w.stringEscape)(ie)]),")"],")"])}),B.size===0?void 0:B}emitClass(S,B){this.emitDescription(this.descriptionForType(S)),this.emitBlock([this._options.codeFormat?"class ":"struct ",B],!0,()=>{const q=this.generateClassConstraints(S);if(this._options.codeFormat){if(this.emitLine("public:"),q===void 0)this.emitLine(B,"() = default;");else{this.emitLine(B,"() :");let G=0;q.forEach(($,ee)=>{G++,this.indent(()=>{G===q.size?this.emitLine($):this.emitLine($,",")})}),this.emitLine("{}")}this.emitLine("virtual ~",B,"() = default;"),this.ensureBlankLine()}this.emitClassMembers(S,q)})}emitTopLevelHeaders(S,B){if(S instanceof a.MapType&&this._stringType!==this.NarrowString){const q=this.ourQualifier(!0);this.emitBlock(["struct adl_serializer<",q,B,">"],!0,()=>{this.emitLine("template <>"),this.emitLine("static void from_json(",this.withConst("json")," & j, ",q,B," & x);"),this.emitLine("static void to_json(json & j, ",this.withConst([q,B])," & x);")})}}emitClassHeaders(S){const B=this.ourQualifier(!1);this.emitLine("void from_json(",this.withConst("json")," & j, ",B,S," & x);"),this.emitLine("void to_json(json & j, ",this.withConst([B,S])," & x);")}emitTopLevelFunction(S,B){if(S instanceof a.MapType&&this._stringType!==this.NarrowString){const q=this.ourQualifier(!0);let G,$;this.emitBlock(["inline void adl_serializer<",q,B,">::from_json(",this.withConst("json")," & j, ",q,B,"& x)"],!1,()=>{G=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),$=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),this.emitLine(["x = ",this._stringType.wrapEncodingChange([q],G,$,["j.get<",G,">()"]),";"])}),this.emitBlock(["inline void adl_serializer<",q,B,">::to_json(json & j, ",this.withConst([q,B])," & x)"],!1,()=>{G=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),$=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),this.emitLine(["j = ",this._stringType.wrapEncodingChange([q],G,$,"x"),";"])})}}emitClassFunctions(S,B){const q=this.ourQualifier(!1);let G,$;this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",q,B,"& x)"],!1,()=>{this.forEachClassProperty(S,"none",(ee,ue,se)=>{const[,,ie]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(ee)),ye=se.type;let be;if(this._options.codeFormat?be=new v(["x.",ie,"("],[")"]):be=new v(["x.",ee," = "],[]),ye.kind==="null"||ye.kind==="any"){this.emitLine(be.wrap([],[q,"get_untyped(j, ",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(ue)])]),")"]),";");return}if(se.isOptional||ye instanceof a.UnionType){const[Ae,pe]=function(){if(ye instanceof a.UnionType){const[le,me]=(0,l.removeNullFromUnion)(ye,!0);return[le!==null||se.isOptional,me]}else{let le=new Set;return le.add(ye),[!0,le]}}();if(Ae){G=this.cppTypeInOptional(pe,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!0),$=this.cppTypeInOptional(pe,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!1),this.emitLine(be.wrap([],[this._stringType.wrapEncodingChange([q],[this.optionalType(ye),"<",G,">"],[this.optionalType(ye),"<",$,">"],[q,`get_${this.optionalTypeLabel(ye)}_optional<`,G,">(j, ",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(ue)])]),")"])]),";");return}}G=this.cppType(ye,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,se.isOptional),$=this.cppType(ye,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,se.isOptional),this.emitLine(be.wrap([],this._stringType.wrapEncodingChange([q],G,$,["j.at(",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,w.stringEscape)(ue)])),").get<",G,">()"])),";")})}),this.ensureBlankLine(),this.emitBlock(["inline void to_json(json & j, ",this.withConst([q,B])," & x)"],!1,()=>{this.emitLine("j = json::object();"),this.forEachClassProperty(S,"none",(ee,ue,se)=>{const ie=se.type;G=this.cppType(ie,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,se.isOptional),$=this.cppType(ie,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,se.isOptional);const[ye,,]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(ee));let be;this._options.codeFormat?be=[ye,"()"]:be=[ee];let Ae=["j[",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,w.stringEscape)(ue)])),"] = ",this._stringType.wrapEncodingChange([q],G,$,["x.",be]),";"];se.isOptional&&this._options.hideNullOptional?this.emitBlock(["if (",this._stringType.wrapEncodingChange([q],G,$,["x.",be]),")"],!1,()=>{this.emitLine(Ae)}):this.emitLine(Ae)})})}emitEnum(S,B){const q=[],G=(0,L.enumCaseValues)(S,this.targetLanguage.name);this.forEachEnumCase(S,"none",($,ee)=>{if(q.length>0&&q.push(", "),q.push($),G!==void 0){const[ue]=(0,_.getAccessorName)(G,ee);ue!==void 0&&q.push(" = ",ue.toString())}}),this.emitDescription(this.descriptionForType(S)),this.emitLine("enum class ",B," : ",this._enumType," { ",q," };")}emitUnionTypedefs(S,B){this.emitLine("using ",B," = ",this.variantType(S,!1),";")}emitUnionHeaders(S){const B=(0,l.removeNullFromUnion)(S,!0)[1],q=this.cppTypeInOptional(B,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitLine("template <>"),this.emitBlock(["struct adl_serializer<",q,">"],!0,()=>{this.emitLine("static void from_json(",this.withConst("json")," & j, ",q," & x);"),this.emitLine("static void to_json(json & j, ",this.withConst(q)," & x);")})}emitUnionFunctions(S){const B=this.ourQualifier(!0),q=[["bool","is_boolean"],["integer","is_number_integer"],["double","is_number"],["string","is_string"],["class","is_object"],["map","is_object"],["array","is_array"],["enum","is_string"]],G=(0,l.removeNullFromUnion)(S,!0)[1],$=this.cppTypeInOptional(G,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitBlock(["inline void adl_serializer<",$,">::from_json(",this.withConst("json")," & j, ",$," & x)"],!1,()=>{let ee=!0;for(const[ue,se]of q){const ie=(0,t.iterableFind)(G,ye=>ye.kind===ue);ie!==void 0&&(this.emitLine(ee?"if":"else if"," (j.",se,"())"),this.indent(()=>{const ye=this.cppType(ie,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);let be=this.cppType(ie,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1);this.emitLine("x = ",this._stringType.wrapEncodingChange([B],ye,be,["j.get<",ye,">()"]),";")}),ee=!1)}this.emitLine('else throw "Could not deserialize";')}),this.ensureBlankLine(),this.emitBlock(["inline void adl_serializer<",$,">::to_json(json & j, ",this.withConst($)," & x)"],!1,()=>{this.emitBlock(["switch (x.",this._variantIndexMethodName,"())"],!1,()=>{let ee=0;for(const ue of G)this.emitLine("case ",ee.toString(),":"),this.indent(()=>{const se=this.cppType(ue,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),ie=this.cppType(ue,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);this.emitLine("j = ",this._stringType.wrapEncodingChange([B],se,ie,[this._options.boost?"boost::get<":"std::get<",se,">(x)"]),";"),this.emitLine("break;")}),ee++;this.emitLine('default: throw "Input JSON does not conform to schema";')})})}emitEnumHeaders(S){const B=this.ourQualifier(!1);this.emitLine("void from_json(",this.withConst("json")," & j, ",B,S," & x);"),this.emitLine("void to_json(json & j, ",this.withConst([B,S])," & x);")}isLargeEnum(S){return S.cases.size>15}emitEnumFunctions(S,B){const q=this.ourQualifier(!1);this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",q,B," & x)"],!1,()=>{if(this.isLargeEnum(S))this.emitBlock(["static std::unordered_map<",this._stringType.getType(),", ",q,B,"> enumValues"],!0,()=>{this.forEachEnumCase(S,"none",(G,$)=>{this.emitLine("{",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)($)])]),", ",q,B,"::",G,"},")})}),this.emitLine(`auto iter = enumValues.find(j.get<${this._stringType.getType()}>());`),this.emitBlock("if (iter != enumValues.end())",!1,()=>{this.emitLine("x = iter->second;")});else{let G=!0;this.forEachEnumCase(S,"none",($,ee)=>{const ue=G?"":"else ";this.emitLine(ue,"if (j == ",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(ee)])]),") x = ",q,B,"::",$,";"),G=!1}),this.emitLine('else throw "Input JSON does not conform to schema";')}}),this.ensureBlankLine(),this.emitBlock(["inline void to_json(json & j, ",this.withConst([q,B])," & x)"],!1,()=>{this.emitBlock("switch (x)",!1,()=>{this.forEachEnumCase(S,"none",(G,$)=>{this.emitLine("case ",q,B,"::",G,": j = ",this._stringType.wrapEncodingChange([q],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)($)])]),"; break;")}),this.emitLine('default: throw "This should not happen";')})})}emitTopLevelTypedef(S,B){this.emitLine("using ",B," = ",this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,!1),";")}emitAllUnionFunctions(){this.forEachUniqueUnion("leading-and-interposing",S=>this.sourcelikeToString(this.cppTypeInOptional((0,l.removeNullFromUnion)(S,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),S=>this.emitUnionFunctions(S))}emitAllUnionHeaders(){this.forEachUniqueUnion("interposing",S=>this.sourcelikeToString(this.cppTypeInOptional((0,l.removeNullFromUnion)(S,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),S=>this.emitUnionHeaders(S))}emitOptionalHelpers(){this.emitLine("#ifndef NLOHMANN_OPT_HELPER"),this.emitLine("#define NLOHMANN_OPT_HELPER"),this.emitNamespaces(["nlohmann"],()=>{const S=(B,q)=>{this.emitLine("template <typename T>"),this.emitBlock(["struct adl_serializer<",B,"<T>>"],!0,()=>{this.emitBlock(["static void to_json(json & j, ",this.withConst([B,"<T>"])," & opt)"],!1,()=>{this.emitLine("if (!opt) j = nullptr; else j = *opt;")}),this.ensureBlankLine(),this.emitBlock(["static ",B,"<T> from_json(",this.withConst("json")," & j)"],!1,()=>{this.emitLine(`if (j.is_null()) return ${q}<T>(); else return ${q}<T>(j.get<T>());`)})})};S(this.optionalTypeHeap(),this.optionalFactoryHeap()),S(this.optionalTypeStack(),this.optionalFactoryStack())}),this.emitLine("#endif")}emitDeclaration(S){if(S.kind==="forward")this._options.codeFormat?this.emitLine("class ",this.nameForNamedType(S.type),";"):this.emitLine("struct ",this.nameForNamedType(S.type),";");else if(S.kind==="define"){const B=S.type,q=this.nameForNamedType(B);if(B instanceof a.ClassType)this.emitClass(B,q);else if(B instanceof a.EnumType)this.emitEnum(B,q);else if(B instanceof a.UnionType)this.emitUnionTypedefs(B,q);else return(0,U.panic)(`Cannot declare type ${B.kind}`)}else return(0,U.assertNever)(S.kind)}emitGetterSetter(S,B,q,G){this.emitLine("void ",q,"(",S," ",G,") { this->",G," = ",G,"; }"),this.emitLine("auto ",B,"() const { return ",G,"; }")}emitConstraintClasses(){const S=this.ourQualifier(!1),B=this.lookupMemberName(s.GetMinValue),q=this.lookupMemberName(s.GetMaxValue),G=this.lookupMemberName(s.GetMinLength),$=this.lookupMemberName(s.GetMaxLength),ee=this.lookupMemberName(s.GetPattern),ue=this.lookupGlobalName(r.ClassMemberConstraints);this.emitBlock(["class ",ue],!0,()=>{this.emitLine("private:");let be=this.getConstraintMembers();for(const pe of be)this.emitMember([this._optionalType,"<",pe.cppType,">"],this.lookupMemberName(pe.name));this.ensureBlankLine(),this.emitLine("public:"),this.emitLine(ue,"("),this.indent(()=>{this.iterableForEach(be,({name:pe,cppType:le},me)=>{const de=me==="first"||me==="middle"?",":[];this.emitLine(this._optionalType,"<",le,"> ",this.lookupMemberName(pe),de)})});const Ae=be.map(({name:pe})=>{const le=this.lookupMemberName(pe);return[le,"(",le,")"]});this.emitLine(") : ",(0,t.arrayIntercalate)([", "],Ae)," {}"),this.emitLine(ue,"() = default;"),this.emitLine("virtual ~",ue,"() = default;");for(const pe of be)this.ensureBlankLine(),this.emitGetterSetter((0,t.withDefault)(pe.cppConstType,pe.cppType),this.lookupMemberName(pe.getter),this.lookupMemberName(pe.setter),this.lookupMemberName(pe.name))}),this.ensureBlankLine();const se=this.lookupGlobalName(r.ClassMemberConstraintException);this.emitBlock(["class ",se," : public std::runtime_error"],!0,()=>{this.emitLine("public:"),this.emitLine(se,"(",this._stringType.getConstType()," msg) : std::runtime_error(",this._stringType.wrapEncodingChange([S],this._stringType.getType(),this.NarrowString.getType(),["msg"]),") {}")}),this.ensureBlankLine();const ie=[r.ValueTooLowException,r.ValueTooHighException,r.ValueTooShortException,r.ValueTooLongException,r.InvalidPatternException];for(const be of ie){const Ae=this.lookupGlobalName(be);this.emitBlock(["class ",Ae," : public ",se],!0,()=>{this.emitLine("public:"),this.emitLine(Ae,"(",this._stringType.getConstType()," msg) : ",se,"(msg) {}")}),this.ensureBlankLine()}const ye=this.lookupGlobalName(r.CheckConstraint);this.emitBlock(["inline void ",ye,"(",this._stringType.getConstType()," name, ",this.withConst(ue)," & c, int64_t value)"],!1,()=>{this.emitBlock(["if (c.",B,"() != ",this._nulloptType," && value < *c.",B,"())"],!1,()=>{this.emitLine("throw ",this.lookupGlobalName(r.ValueTooLowException)," (",this._stringType.createStringLiteral(["Value too low for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value"])," + ",this._stringType.createStringLiteral(["<"])," + ",this._stringType.wrapToString(["*c.",B,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",q,"() != ",this._nulloptType," && value > *c.",q,"())"],!1,()=>{this.emitLine("throw ",this.lookupGlobalName(r.ValueTooHighException)," (",this._stringType.createStringLiteral(["Value too high for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value"])," + ",this._stringType.createStringLiteral([">"])," + ",this._stringType.wrapToString(["*c.",q,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine()}),this.ensureBlankLine(),this.emitBlock(["inline void ",ye,"(",this._stringType.getConstType()," name, ",this.withConst(ue)," & c, ",this._stringType.getConstType()," value)"],!1,()=>{this.emitBlock(["if (c.",G,"() != ",this._nulloptType," && value.length() < *c.",G,"())"],!1,()=>{this.emitLine("throw ",this.lookupGlobalName(r.ValueTooShortException)," (",this._stringType.createStringLiteral(["Value too short for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value.length()"])," + ",this._stringType.createStringLiteral(["<"])," + ",this._stringType.wrapToString(["*c.",G,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",$,"() != ",this._nulloptType," && value.length() > *c.",$,"())"],!1,()=>{this.emitLine("throw ",this.lookupGlobalName(r.ValueTooLongException)," (",this._stringType.createStringLiteral(["Value too long for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value.length()"])," + ",this._stringType.createStringLiteral([">"])," + ",this._stringType.wrapToString(["*c.",$,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",ee,"() != ",this._nulloptType,")"],!1,()=>{this.emitLine(this._stringType.getSMatch()," result;"),this.emitLine("std::regex_search(value, result, ",this._stringType.getRegex(),"( *c.",ee,"() ));"),this.emitBlock(["if (result.empty())"],!1,()=>{this.emitLine("throw ",this.lookupGlobalName(r.InvalidPatternException)," (",this._stringType.createStringLiteral(["Value doesn't match pattern for "])," + name + ",this._stringType.createStringLiteral([" ("])," + value +",this._stringType.createStringLiteral([" != "])," + *c.",ee,"() + ",this._stringType.createStringLiteral([")"]),");")})}),this.ensureBlankLine()})}emitHelperFunctions(){this._stringType.emitHelperFunctions(),this._options.codeFormat&&(0,t.iterableSome)(this.typeGraph.allTypesUnordered(),q=>A(q)!==void 0)&&(this.emitConstraintClasses(),this.ensureBlankLine()),this.ensureBlankLine();let S="NLOHMANN_UNTYPED_",B="NLOHMANN_OPTIONAL_";if(this._namespaceNames.forEach(q=>{S+=q,S+="_",B+=q,B+="_"}),S+="HELPER",S+="HELPER",this.emitLine("#ifndef "+S),this.emitLine("#define "+S),this.emitBlock(["inline json get_untyped(",this.withConst("json")," & j, ",this.withConst("char")," * property)"],!1,()=>{this.emitBlock(["if (j.find(property) != j.end())"],!1,()=>{this.emitLine("return j.at(property).get<json>();")}),this.emitLine("return json();")}),this.ensureBlankLine(),this.emitBlock(["inline json get_untyped(",this.withConst("json")," & j, std::string property)"],!1,()=>{this.emitLine("return get_untyped(j, property.data());")}),this.emitLine("#endif"),this.ensureBlankLine(),this.haveUnions||this.haveOptionalProperties){this.ensureBlankLine(),this.emitLine("#ifndef "+B),this.emitLine("#define "+B);const q=(G,$)=>{this.emitLine("template <typename T>"),this.emitBlock(["inline ",G,`<T> get_${$}_optional(`,this.withConst("json")," & j, ",this.withConst("char")," * property)"],!1,()=>{this.emitLine(["auto it = j.find(property);"]),this.emitBlock(["if (it != j.end() && !it->is_null())"],!1,()=>{this.emitLine("return j.at(property).get<",G,"<T>>();")}),this.emitLine("return ",G,"<T>();")}),this.ensureBlankLine(),this.emitLine("template <typename T>"),this.emitBlock(["inline ",G,`<T> get_${$}_optional(`,this.withConst("json")," & j, std::string property)"],!1,()=>{this.emitLine(`return get_${$}_optional<T>(j, property.data());`)})};q(this.optionalTypeHeap(),"heap"),q(this.optionalTypeStack(),"stack"),this.emitLine("#endif"),this.ensureBlankLine()}}emitExtraIncludes(){this.ensureBlankLine(),this._options.codeFormat&&(this._options.boost?this.emitInclude(!0,"boost/optional.hpp"):this.emitInclude(!0,"optional"),this.emitInclude(!0,"stdexcept"),this.emitInclude(!0,"regex")),this._options.wstring&&(this.emitInclude(!0,"codecvt"),this.emitInclude(!0,"locale")),Array.from(this.enums).some(S=>this.isLargeEnum(S))&&this.emitInclude(!0,"unordered_map"),this.ensureBlankLine()}emitHelper(){this.startFile("helper.hpp",!1),this.emitExtraIncludes(),this.emitInclude(!0,"sstream"),this.ensureBlankLine(),this.emitNamespaces(this._namespaceNames,()=>{this.emitLine("using nlohmann::json;"),this.ensureBlankLine(),this.emitHelperFunctions()}),(this.haveUnions||this.haveOptionalProperties)&&(this.ensureBlankLine(),this.emitOptionalHelpers()),this.finishFile()}emitTypes(){this._options.justTypes||(this.emitLine("using nlohmann::json;"),this.ensureBlankLine(),this.emitHelperFunctions()),this.forEachDeclaration("interposing",S=>this.emitDeclaration(S)),!this._options.justTypes&&this.forEachTopLevel("leading",(S,B)=>this.emitTopLevelTypedef(S,B),S=>this.namedTypeToNameForTopLevel(S)===void 0)}gatherUserNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachObject("leading-and-interposing",(S,B)=>this.emitClassHeaders(B)),this.forEachEnum("leading-and-interposing",(S,B)=>this.emitEnumHeaders(B))})}gatherNlohmannNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachTopLevel("leading-and-interposing",(S,B)=>this.emitTopLevelHeaders(S,B)),this.ensureBlankLine(),this.emitAllUnionHeaders()})}emitUserNamespaceImpls(){this.forEachObject("leading-and-interposing",(S,B)=>this.emitClassFunctions(S,B)),this.forEachEnum("leading-and-interposing",(S,B)=>this.emitEnumFunctions(S,B))}emitNlohmannNamespaceImpls(){this.forEachTopLevel("leading-and-interposing",(S,B)=>this.emitTopLevelFunction(S,B),S=>this.namedTypeToNameForTopLevel(S)===void 0),this.ensureBlankLine(),this.emitAllUnionFunctions()}emitGenerators(){if(this._options.justTypes){let S=!1;const B=this.gatherSource(()=>this.emitNamespaces(this._namespaceNames,()=>{S=this.forEachTopLevel("none",(q,G)=>this.emitTopLevelTypedef(q,G),q=>this.namedTypeToNameForTopLevel(q)===void 0)}));S&&(this.emitGatheredSource(B),this.ensureBlankLine())}else{let S=this.gatherUserNamespaceForwardDecls(),B=this.gatherNlohmannNamespaceForwardDecls();S.length==0&&B.length>0?this.emitNamespaces(["nlohmann"],()=>{this.emitGatheredSource(B),this.emitNlohmannNamespaceImpls()}):S.length>0&&B.length==0?this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(S),this.emitUserNamespaceImpls()}):S.length>0&&B.length>0&&(this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(S)}),this.emitNamespaces(["nlohmann"],()=>{this.emitGatheredSource(B)}),this.emitNamespaces(this._namespaceNames,()=>{this.emitUserNamespaceImpls()}),this.emitNamespaces(["nlohmann"],()=>{this.emitNlohmannNamespaceImpls()}))}}emitSingleSourceStructure(S){this.startFile(S),this._generatedFiles.add(S),this.emitExtraIncludes(),this._options.justTypes?this.emitTypes():(!this._options.justTypes&&this.haveNamedTypes&&(this.haveUnions||this.haveOptionalProperties)&&(this.emitOptionalHelpers(),this.ensureBlankLine()),this.emitNamespaces(this._namespaceNames,()=>this.emitTypes())),this.ensureBlankLine(),this.emitGenerators(),this.finishFile()}updateIncludes(S,B,q,G){const $=this.generatedTypes(S,q);for(const ee of $){const ue=this.sourcelikeToString(ee.name);let se={kind:void 0,typeKind:void 0};if(ee.type instanceof a.ClassType)se.typeKind="class",se.kind=ee.level===0?m.Include:m.ForwardDeclare,ee.forceInclude&&(se.kind=m.Include);else if(ee.type instanceof a.EnumType)se.typeKind="enum",se.kind=m.ForwardDeclare;else if(ee.type instanceof a.UnionType){se.typeKind="union";const[ie]=(0,l.removeNullFromUnion)(ee.type,!0);ie!==void 0||ee.forceInclude?se.kind=m.Include:se.kind=m.ForwardDeclare}if(B.has(ue)){const ie=B.get(ue);ie!==void 0&&ie.kind===m.ForwardDeclare&&B.set(ue,se)}else B.set(ue,se)}}emitIncludes(S,B){let q=new Map;if(S instanceof a.UnionType?this.updateIncludes(!1,q,S,B):S instanceof a.ClassType&&this.forEachClassProperty(S,"none",(G,$,ee)=>{this.updateIncludes(!0,q,ee.type,B)}),q.size!==0){let G=0,$=0;q.forEach((ee,ue)=>{ue!==B&&(ee.kind!==m.ForwardDeclare?(this.emitInclude(!1,[ue,".hpp"]),$++):G++)}),$>0&&this.ensureBlankLine(),G>0&&this.emitNamespaces(this._namespaceNames,()=>{q.forEach((ee,ue)=>{ue!==B&&ee.kind===m.ForwardDeclare&&(ee.typeKind==="class"||ee.typeKind==="union"?this._options.codeFormat?this.emitLine("class ",ue,";"):this.emitLine("struct ",ue,";"):ee.typeKind==="enum"?this.emitLine("enum class ",ue," : ",this._enumType,";"):(0,U.panic)(`Invalid type "${ee.typeKind}" to forward declare`))})}),this.ensureBlankLine()}}emitDefinition(S,B){const q=this.sourcelikeToString(B)+".hpp";this.startFile(q,!0),this._generatedFiles.add(q),this.emitIncludes(S,this.sourcelikeToString(B)),this.emitNamespaces(this._namespaceNames,()=>{this.emitDescription(this.descriptionForType(S)),this.ensureBlankLine(),this.emitLine("using nlohmann::json;"),this.ensureBlankLine(),S instanceof a.ClassType?this.emitClass(S,B):S instanceof a.EnumType?this.emitEnum(S,B):S instanceof a.UnionType&&this.emitUnionTypedefs(S,B)}),this.finishFile()}emitMultiSourceStructure(S){!this._options.justTypes&&this.haveNamedTypes&&(this.emitHelper(),this.startFile("Generators.hpp",!0),this._allTypeNames.forEach(B=>{this.emitInclude(!1,[B,".hpp"])}),this.ensureBlankLine(),this.emitGenerators(),this.finishFile()),this.forEachNamedType("leading-and-interposing",(B,q)=>{this.emitDefinition(B,q)},(B,q)=>{this.emitDefinition(B,q)},(B,q)=>{this.emitDefinition(B,q)}),this._generatedFiles.has(S)||(this.haveNamedTypes||this.emitHelper(),this.startFile(S),this._generatedFiles.forEach(B=>{this.emitInclude(!1,B)}),this.emitNamespaces(this._namespaceNames,()=>{this.forEachTopLevel("leading",(B,q)=>this.emitTopLevelTypedef(B,q),B=>this.namedTypeToNameForTopLevel(B)===void 0)}),this.finishFile())}emitSourceStructure(S){this._generatedFiles.clear(),this._allTypeNames.clear(),this.forEachDeclaration("none",B=>{const q=(0,l.directlyReachableTypes)(B.type,G=>(0,l.isNamedType)(G)&&(G instanceof a.ClassType||G instanceof a.EnumType||G instanceof a.UnionType)?new Set([this.sourcelikeToString(this.cppType(G,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!0,!1,!1))]):null);this._allTypeNames=(0,t.setUnion)(q,this._allTypeNames)}),this._options.typeSourceStyle?this.emitSingleSourceStructure(S):this.emitMultiSourceStructure(S)}isConversionRequired(S){let B=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),q=this.cppType(S,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);return B!==q}}e.CPlusPlusRenderer=x}(ql)),ql}var aa={},ym;function ob(){return ym||(ym=1,function(e){var t=aa.__importDefault||function(F){return F&&F.__esModule?F:{default:F}};Object.defineProperty(e,"__esModule",{value:!0}),e.ObjectiveCRenderer=e.ObjectiveCTargetLanguage=e.objcOptions=void 0;const n=et(),a=qt(),l=mt(),d=pt(),u=Ft(),c=Bt(),w=Nt(),U=Wt(),P=zt(),O=Qe(),R=t(so()),_="QT";e.objcOptions={features:new P.EnumOption("features","Interface and implementation",[["all",{interface:!0,implementation:!0}],["interface",{interface:!0,implementation:!1}],["implementation",{interface:!1,implementation:!0}]]),justTypes:new P.BooleanOption("just-types","Plain types only",!1),marshallingFunctions:new P.BooleanOption("functions","C-style functions",!1),classPrefix:new P.StringOption("class-prefix","Class prefix","PREFIX",_),extraComments:new P.BooleanOption("extra-comments","Extra comments",!1)};class L extends a.TargetLanguage{constructor(){super("Objective-C",["objc","objective-c","objectivec"],"m")}getOptions(){return[e.objcOptions.justTypes,e.objcOptions.classPrefix,e.objcOptions.features,e.objcOptions.extraComments,e.objcOptions.marshallingFunctions]}makeRenderer(m,r){return new b(this,m,(0,P.getOptionValues)(e.objcOptions,r))}}e.ObjectiveCTargetLanguage=L;function g(F,m){const r=(0,w.splitIntoWords)(m),s=(0,w.combineWords)(r,I,w.firstUpperWordStyle,w.firstUpperWordStyle,w.allUpperWordStyle,w.allUpperWordStyle,"",D);return(0,w.addPrefixIfNecessary)(F,s)}function y(F,m=!1){F==="id"&&(F="identifier");let r=(0,w.splitIntoWords)(F);return m&&(r.length===0?r=[{word:"flag",isAcronym:!1}]:!r[0].isAcronym&&k.indexOf(r[0].word)<0&&(r=[{word:"is",isAcronym:!1},...r])),r.length>0&&p.indexOf(r[0].word)>=0&&(r=[{word:"the",isAcronym:!1},...r]),(0,w.combineWords)(r,I,w.allLowerWordStyle,w.firstUpperWordStyle,w.allLowerWordStyle,w.allUpperWordStyle,"",D)}const h=["asm","atomic","auto","bool","break","case","char","const","continue","default","do","double","else","enum","extern","false","float","for","goto","if","inline","int","long","nil","nonatomic","register","restrict","retain","return","short","signed","sizeof","static","struct","switch","typedef","typeof","true","union","unsigned","void","volatile","while"],p=["id","hash","description","init","copy","mutableCopy","superclass","debugDescription","new"],k=["is","are","were","was","will","all","some","many","has","have","had","does","do","requires","require","needs","need"];function D(F){return R.default.isAlphabetic(F)||F===95}function C(F){const m=R.default.getCategory(F);return["Nd","Pc","Mn","Mc"].indexOf(m)>=0||D(F)}const I=(0,w.utf16LegalizeCharacters)(C),A="values",f=["new",A];function E(F){const m=F.lastIndexOf("."),r=m!==-1?F.split(".").pop():"m";return F=m!==-1?F.slice(0,m):F,[F,r===void 0?"m":r]}class b extends U.ConvenienceRenderer{constructor(m,r,s){if(super(m,r),this._options=s,s.classPrefix===_){const T=(0,O.defined)((0,n.iterableFirst)(this.topLevels.keys()));this._classPrefix=this.inferClassPrefix(T)}else this._classPrefix=s.classPrefix}inferClassPrefix(m){const r=m.length;let s=0;for(;s<r&&(0,w.fastIsUpperCase)(m.charCodeAt(s));)s+=1;return s<2?_:m.slice(0,s-1)}forbiddenNamesForGlobalNamespace(){return h}forbiddenForObjectProperties(m,r){return{names:p,includeGlobalForbidden:!0}}forbiddenForEnumCases(m,r){return{names:f,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("types",m=>g(this._classPrefix,m))}namerForObjectProperty(m,r){return new u.Namer("properties",s=>y(s,r.type.kind==="bool"),["_","the","one","some","another"])}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return new u.Namer("enum-cases",y,[])}namedTypeToNameForTopLevel(m){return m}emitDescriptionBlock(m){this.emitCommentLines(m,"/// ")}emitBlock(m,r){this.emitLine(m," {"),this.indent(r),this.emitLine("}")}emitMethod(m,r){this.emitLine(m),this.emitLine("{"),this.indent(r),this.emitLine("}")}emitExtraComments(...m){if(this._options.extraComments)for(const r of m)this.emitLine("// ",r)}startFile(m,r){(0,O.assert)(this._currentFilename===void 0,"Previous file wasn't finished"),this._currentFilename=`${this.sourcelikeToString(m)}.${r}`}finishFile(){super.finishFile((0,O.defined)(this._currentFilename)),this._currentFilename=void 0}memoryAttribute(m,r){return(0,d.matchType)(m,s=>"copy",s=>"copy",s=>r?"strong":"assign",s=>r?"strong":"assign",s=>r?"strong":"assign",s=>"copy",s=>"copy",s=>"strong",s=>"copy",s=>"assign",s=>{const T=(0,d.nullableFromUnion)(s);return T!==null?this.memoryAttribute(T,!0):"copy"})}objcType(m,r=!1){return(0,d.matchType)(m,s=>["id",""],s=>["id",""],s=>r?["NSNumber"," *"]:["BOOL",""],s=>r?["NSNumber"," *"]:["NSInteger",""],s=>r?["NSNumber"," *"]:["double",""],s=>["NSString"," *"],s=>{const T=s.items,v=this.objcType(T,!0);return(0,d.isAnyOrNull)(T)?["NSArray"," *"]:[["NSArray<",v,">"]," *"]},s=>[this.nameForNamedType(s)," *"],s=>[["NSDictionary<NSString *, ",this.objcType(s.values,!0),">"]," *"],s=>[this.nameForNamedType(s)," *"],s=>{const T=(0,d.nullableFromUnion)(s);return T!==null?this.objcType(T,!0):["id",""]})}jsonType(m){return(0,d.matchType)(m,r=>["id",""],r=>["id",""],r=>["NSNumber"," *"],r=>["NSNumber"," *"],r=>["NSNumber"," *"],r=>["NSString"," *"],r=>["NSArray"," *"],r=>["NSDictionary<NSString *, id>"," *"],r=>[["NSDictionary<NSString *, ",this.jsonType(r.values),">"]," *"],r=>["NSString"," *"],r=>{const s=(0,d.nullableFromUnion)(r);return s!==null?this.jsonType(s):["id",""]})}fromDynamicExpression(m,...r){return(0,d.matchType)(m,s=>r,s=>r,s=>r,s=>r,s=>r,s=>r,s=>["map(",r,", λ(id x, ",this.fromDynamicExpression(s.items,"x"),"))"],s=>["[",this.nameForNamedType(s)," fromJSONDictionary:",r,"]"],s=>["map(",r,", λ(id x, ",this.fromDynamicExpression(s.values,"x"),"))"],s=>["[",this.nameForNamedType(s)," withValue:",r,"]"],s=>{const T=(0,d.nullableFromUnion)(s);return T!==null?this.fromDynamicExpression(T,r):r})}toDynamicExpression(m,r){return(0,d.matchType)(m,s=>["NSNullify(",r,")"],s=>["NSNullify(",r,")"],s=>[r," ? @YES : @NO"],s=>r,s=>r,s=>r,s=>this.implicitlyConvertsFromJSON(s)?r:["map(",r,", λ(id x, ",this.toDynamicExpression(s.items,"x"),"))"],s=>["[",r," JSONDictionary]"],s=>this.implicitlyConvertsFromJSON(s)?r:["map(",r,", λ(id x, ",this.toDynamicExpression(s.values,"x"),"))"],s=>["[",r," value]"],s=>{const T=(0,d.nullableFromUnion)(s);return T!==null?this.implicitlyConvertsFromJSON(T)?["NSNullify(",r,")"]:["NSNullify(",this.toDynamicExpression(T,r),")"]:r})}implicitlyConvertsFromJSON(m){if(m instanceof l.ClassType)return!1;if(m instanceof l.EnumType)return!1;if(m instanceof l.ArrayType)return this.implicitlyConvertsFromJSON(m.items);if(m instanceof l.MapType)return this.implicitlyConvertsFromJSON(m.values);if(m.isPrimitive())return!0;if(m instanceof l.UnionType){const r=(0,d.nullableFromUnion)(m);return r!==null?this.implicitlyConvertsFromJSON(r):!0}else return!1}implicitlyConvertsToJSON(m){return this.implicitlyConvertsFromJSON(m)&&m.kind!=="bool"}emitPropertyAssignment(m,r,s){const T=["_",m];(0,d.matchType)(s,v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,T),";"),v=>this.emitLine(T," = ",this.fromDynamicExpression(v,["(id)",T]),";"),v=>{const M=v.values;this.emitLine(T," = map(",T,", ",["λ(id x, ",this.fromDynamicExpression(M,"x"),")"],");")},v=>this.emitLine(T," = ",this.fromDynamicExpression(v,["(id)",T]),";"),v=>{const M=(0,d.nullableFromUnion)(v);M!==null?this.emitPropertyAssignment(m,r,M):this.emitLine(T," = ",this.fromDynamicExpression(v,T),";")})}emitPrivateClassInterface(m,r){this.emitLine("@interface ",r," (JSONConversion)"),this.emitLine("+ (instancetype)fromJSONDictionary:(NSDictionary *)dict;"),this.emitLine("- (NSDictionary *)JSONDictionary;"),this.emitLine("@end")}pointerAwareTypeName(m){const r=m instanceof l.Type?this.objcType(m):m;return r[1]!==""?r:[r," "]}emitNonClassTopLevelTypedef(m,r){let s=this.objcType(m)[0];this.emitLine("typedef ",s," ",r,";")}topLevelFromDataPrototype(m){return[m," *_Nullable ",m,"FromData(NSData *data, NSError **error)"]}topLevelFromJSONPrototype(m){return[m," *_Nullable ",m,"FromJSON(NSString *json, NSStringEncoding encoding, NSError **error)"]}topLevelToDataPrototype(m,r=!1){const s=this.variableNameForTopLevel(m);return["NSData",r?(0,w.repeatString)(" ",this.sourcelikeToString(m).length-6):""," *_Nullable ",m,"ToData(",m," *",s,", NSError **error)"]}topLevelToJSONPrototype(m,r=!1){const s=this.variableNameForTopLevel(m);return["NSString",r?(0,w.repeatString)(" ",this.sourcelikeToString(m).length-8):""," *_Nullable ",m,"ToJSON(",m," *",s,", NSStringEncoding encoding, NSError **error)"]}emitTopLevelFunctionDeclarations(m,r){this.emitLine(this.topLevelFromDataPrototype(r),";"),this.emitLine(this.topLevelFromJSONPrototype(r),";"),this.emitLine(this.topLevelToDataPrototype(r,!0),";"),this.emitLine(this.topLevelToJSONPrototype(r,!0),";")}emitTryCatchAsError(m,r){this.emitLine("@try {"),this.indent(m),this.emitLine("} @catch (NSException *exception) {"),this.indent(()=>{this.emitLine('*error = [NSError errorWithDomain:@"JSONSerialization" code:-1 userInfo:@{ @"exception": exception }];'),r()}),this.emitLine("}")}emitTopLevelFunctions(m,r){const s=this.variableNameForTopLevel(r);this.ensureBlankLine(),this.emitMethod(this.topLevelFromDataPrototype(r),()=>{this.emitTryCatchAsError(()=>{this.emitLine("id json = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:error];"),this.emitLine("return *error ? nil : ",this.fromDynamicExpression(m,"json"),";")},()=>this.emitLine("return nil;"))}),this.ensureBlankLine(),this.emitMethod(this.topLevelFromJSONPrototype(r),()=>{this.emitLine("return ",r,"FromData([json dataUsingEncoding:encoding], error);")}),this.ensureBlankLine(),this.emitMethod(this.topLevelToDataPrototype(r),()=>{this.emitTryCatchAsError(()=>{this.emitLine("id json = ",this.toDynamicExpression(m,s),";"),this.emitLine("NSData *data = [NSJSONSerialization dataWithJSONObject:json options:kNilOptions error:error];"),this.emitLine("return *error ? nil : data;")},()=>this.emitLine("return nil;"))}),this.ensureBlankLine(),this.emitMethod(this.topLevelToJSONPrototype(r),()=>{this.emitLine("NSData *data = ",r,"ToData(",s,", error);"),this.emitLine("return data ? [[NSString alloc] initWithData:data encoding:encoding] : nil;")})}emitClassInterface(m,r){const s=(0,n.mapContains)(this.topLevels,m);this.emitDescription(this.descriptionForType(m)),this.emitLine("@interface ",r," : NSObject"),this.emitPropertyTable(m,(T,v,M)=>{let x=["nonatomic"];return M.type.isNullable&&x.push("nullable"),x.push(this.memoryAttribute(M.type,M.type.isNullable)),[["@property ",["(",x.join(", "),")"]," "],[this.pointerAwareTypeName(M.type),T,";"]]}),!this._options.justTypes&&s&&(m.getProperties().size>0&&this.ensureBlankLine(),this.emitLine("+ (_Nullable instancetype)fromJSON:(NSString *)json encoding:(NSStringEncoding)encoding error:(NSError *_Nullable *)error;"),this.emitLine("+ (_Nullable instancetype)fromData:(NSData *)data error:(NSError *_Nullable *)error;"),this.emitLine("- (NSString *_Nullable)toJSON:(NSStringEncoding)encoding error:(NSError *_Nullable *)error;"),this.emitLine("- (NSData *_Nullable)toData:(NSError *_Nullable *)error;")),this.emitLine("@end")}hasIrregularProperties(m){let r=!1;return this.forEachClassProperty(m,"none",(s,T)=>{r=r||(0,w.stringEscape)(T)!==this.sourcelikeToString(s)}),r}hasUnsafeProperties(m){let r=!1;return this.forEachClassProperty(m,"none",(s,T,v)=>{r=r||!this.implicitlyConvertsToJSON(v.type)}),r}emitClassImplementation(m,r){const s=(0,n.mapContains)(this.topLevels,m),T=this.hasIrregularProperties(m),v=this.hasUnsafeProperties(m);this.emitLine("@implementation ",r),this._options.justTypes||(this.emitMethod("+ (NSDictionary<NSString *, NSString *> *)properties",()=>{this.emitLine("static NSDictionary<NSString *, NSString *> *properties;"),this.emitLine("return properties = properties ? properties : @{"),this.indent(()=>{this.forEachClassProperty(m,"none",(M,x)=>this.emitLine(`@"${(0,w.stringEscape)(x)}": @"`,M,'",'))}),this.emitLine("};")}),this.ensureBlankLine(),s&&(this.emitMethod("+ (_Nullable instancetype)fromData:(NSData *)data error:(NSError *_Nullable *)error",()=>{this.emitLine("return ",r,"FromData(data, error);")}),this.ensureBlankLine(),this.emitMethod("+ (_Nullable instancetype)fromJSON:(NSString *)json encoding:(NSStringEncoding)encoding error:(NSError *_Nullable *)error",()=>{this.emitLine("return ",r,"FromJSON(json, encoding, error);")}),this.ensureBlankLine()),this.emitMethod("+ (instancetype)fromJSONDictionary:(NSDictionary *)dict",()=>{this.emitLine("return dict ? [[",r," alloc] initWithJSONDictionary:dict] : nil;")}),this.ensureBlankLine(),this.emitMethod("- (instancetype)initWithJSONDictionary:(NSDictionary *)dict",()=>{this.emitBlock("if (self = [super init])",()=>{this.emitLine("[self setValuesForKeysWithDictionary:dict];"),this.forEachClassProperty(m,"none",(M,x,W)=>{this.implicitlyConvertsFromJSON(W.type)||this.emitPropertyAssignment(M,x,W.type)})}),this.emitLine("return self;")}),this.ensureBlankLine(),this.emitMethod("- (void)setValue:(nullable id)value forKey:(NSString *)key",()=>{this.emitLine("id resolved = ",r,".properties[key];"),this.emitLine("if (resolved) [super setValue:value forKey:resolved];")}),this.ensureBlankLine(),this.emitMethod("- (void)setNilValueForKey:(NSString *)key",()=>{this.emitLine("id resolved = ",r,".properties[key];"),this.emitLine("if (resolved) [super setValue:@(0) forKey:resolved];")}),this.ensureBlankLine(),this.emitMethod("- (NSDictionary *)JSONDictionary",()=>{if(!T&&!v){this.emitLine("return [self dictionaryWithValuesForKeys:",r,".properties.allValues];");return}this.emitLine("id dict = [[self dictionaryWithValuesForKeys:",r,".properties.allValues] mutableCopy];"),this.ensureBlankLine(),T&&(this.emitExtraComments("Rewrite property names that differ in JSON"),this.emitBlock(["for (id jsonName in ",r,".properties)"],()=>{this.emitLine("id propertyName = ",r,".properties[jsonName];"),this.emitBlock("if (![jsonName isEqualToString:propertyName])",()=>{this.emitLine("dict[jsonName] = dict[propertyName];"),this.emitLine("[dict removeObjectForKey:propertyName];")})})),v&&(this.ensureBlankLine(),this.emitExtraComments("Map values that need translation"),this.emitLine("[dict addEntriesFromDictionary:@{"),this.indent(()=>{this.forEachClassProperty(m,"none",(M,x,W)=>{if(!this.implicitlyConvertsToJSON(W.type)){const S=(0,w.stringEscape)(x),B=["_",M];this.emitLine('@"',S,'": ',this.toDynamicExpression(W.type,B),",")}})}),this.emitLine("}];")),this.ensureBlankLine(),this.emitLine("return dict;")}),s&&(this.ensureBlankLine(),this.emitMethod("- (NSData *_Nullable)toData:(NSError *_Nullable *)error",()=>{this.emitLine("return ",r,"ToData(self, error);")}),this.ensureBlankLine(),this.emitMethod("- (NSString *_Nullable)toJSON:(NSStringEncoding)encoding error:(NSError *_Nullable *)error",()=>{this.emitLine("return ",r,"ToJSON(self, encoding, error);")}))),this.emitLine("@end")}emitMark(m){this.ensureBlankLine(),this.emitLine(`#pragma mark - ${m}`),this.ensureBlankLine()}variableNameForTopLevel(m){return(0,c.modifySource)(s=>(s=s.slice(this._classPrefix.length),(0,w.camelCase)(s)),m)}emitPseudoEnumInterface(m,r){this.emitDescription(this.descriptionForType(m)),this.emitLine("@interface ",r," : NSObject"),this.emitLine("@property (nonatomic, readonly, copy) NSString *value;"),this.emitLine("+ (instancetype _Nullable)withValue:(NSString *)value;"),this.forEachEnumCase(m,"none",(s,T)=>{this.emitLine("+ (",r," *)",s,";")}),this.emitLine("@end")}emitPseudoEnumImplementation(m,r){this.emitLine("@implementation ",r);const s=[r,".",A];this.emitMethod(["+ (NSDictionary<NSString *, ",r," *> *)",A],()=>{this.emitLine("static NSDictionary<NSString *, ",r," *> *",A,";"),this.emitLine("return ",A," = ",A," ? ",A," : @{"),this.indent(()=>{this.forEachEnumCase(m,"none",(T,v)=>{const M=['@"',(0,w.stringEscape)(v),'"'];this.emitLine(M,": [[",r," alloc] initWithValue:",M,"],")})}),this.emitLine("};")}),this.ensureBlankLine(),this.forEachEnumCase(m,"none",(T,v)=>{this.emitLine("+ (",r," *)",T," { return ",s,'[@"',(0,w.stringEscape)(v),'"]; }')}),this.ensureBlankLine(),this.emitMethod("+ (instancetype _Nullable)withValue:(NSString *)value",()=>this.emitLine("return ",s,"[value];")),this.ensureBlankLine(),this.emitMethod("- (instancetype)initWithValue:(NSString *)value",()=>{this.emitLine("if (self = [super init]) _value = value;"),this.emitLine("return self;")}),this.ensureBlankLine(),this.emitLine("- (NSUInteger)hash { return _value.hash; }"),this.emitLine("@end")}emitSourceStructure(m){if(!(m!=="stdout")){const v=(0,O.defined)((0,n.mapFirst)(this.topLevels));m=this.sourcelikeToString(this.nameForNamedType(v))+".m"}const[s,T]=E(m);if(this._options.features.interface){this.startFile(s,"h"),this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines(["To parse this JSON:",""]),this.emitLine("// NSError *error;"),this.forEachTopLevel("none",(M,x)=>{const W=M instanceof l.ClassType?["[",x," fromJSON:json encoding:NSUTF8Encoding error:&error];"]:[x,"FromJSON(json, NSUTF8Encoding, &error);"];this.emitLine("// ",x," *",this.variableNameForTopLevel(x)," = ",W)})),this.ensureBlankLine(),this.emitLine("#import <Foundation/Foundation.h>"),this.ensureBlankLine(),this.forEachNamedType("none",(M,x)=>this.emitLine("@class ",x,";"),(M,x)=>this.emitLine("@class ",x,";"),()=>null),this.ensureBlankLine(),this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_BEGIN"),this.ensureBlankLine(),this.haveEnums&&(this.emitMark("Boxed enums"),this.forEachEnum("leading-and-interposing",(M,x)=>this.emitPseudoEnumInterface(M,x))),this.forEachTopLevel("leading-and-interposing",(M,x)=>this.emitNonClassTopLevelTypedef(M,x),M=>!(M instanceof l.ClassType));const v=(0,n.iterableSome)(this.topLevels,([M,x])=>!(x instanceof l.ClassType));!this._options.justTypes&&(v||this._options.marshallingFunctions)&&(this.ensureBlankLine(),this.emitMark("Top-level marshaling functions"),this.forEachTopLevel("leading-and-interposing",(M,x)=>this.emitTopLevelFunctionDeclarations(M,x),M=>this._options.marshallingFunctions||!(M instanceof l.ClassType))),this.emitMark("Object interfaces"),this.forEachNamedType("leading-and-interposing",(M,x)=>this.emitClassInterface(M,x),()=>null,()=>null),this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_END"),this.finishFile()}this._options.features.implementation&&(this.startFile(s,T),this.emitLine(`#import "${s}.h"`),this.ensureBlankLine(),this._options.justTypes||(this.ensureBlankLine(),this.emitExtraComments("Shorthand for simple blocks"),this.emitLine("#define λ(decl, expr) (^(decl) { return (expr); })"),this.ensureBlankLine(),this.emitExtraComments("nil → NSNull conversion for JSON dictionaries"),this.emitBlock("static id NSNullify(id _Nullable x)",()=>this.emitLine("return (x == nil || x == NSNull.null) ? NSNull.null : x;")),this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_BEGIN"),this.ensureBlankLine(),this._options.extraComments&&this.emitMark("Private model interfaces"),this.forEachNamedType("leading-and-interposing",(v,M)=>this.emitPrivateClassInterface(v,M),()=>null,()=>null),this.haveEnums&&(this._options.extraComments&&(this.ensureBlankLine(),this.emitExtraComments("These enum-like reference types are needed so that enum","values can be contained by NSArray and NSDictionary."),this.ensureBlankLine()),this.forEachEnum("leading-and-interposing",(v,M)=>this.emitPseudoEnumImplementation(v,M))),this.ensureBlankLine(),this.emitMapFunction(),this.ensureBlankLine(),this.emitMark("JSON serialization"),this.forEachTopLevel("leading-and-interposing",(v,M)=>this.emitTopLevelFunctions(v,M))),this.forEachNamedType("leading-and-interposing",(v,M)=>this.emitClassImplementation(v,M),()=>null,()=>null),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_END")),this.finishFile())}get needsMap(){function m(r){return r instanceof l.MapType||r instanceof l.ArrayType||r instanceof l.ClassType&&(0,n.mapSome)(r.getProperties(),s=>m(s.type))}return(0,n.iterableSome)(this.typeGraph.allTypesUnordered(),m)}emitMapFunction(){this.needsMap&&this.emitMultiline(`static id map(id collection, id (^f)(id value)) {
407
+ id result = nil;
408
+ if ([collection isKindOfClass:NSArray.class]) {
409
+ result = [NSMutableArray arrayWithCapacity:[collection count]];
410
+ for (id x in collection) [result addObject:f(x)];
411
+ } else if ([collection isKindOfClass:NSDictionary.class]) {
412
+ result = [NSMutableDictionary dictionaryWithCapacity:[collection count]];
413
+ for (id key in collection) [result setObject:f([collection objectForKey:key]) forKey:key];
414
+ }
415
+ return result;
416
+ }`)}}e.ObjectiveCRenderer=b}(aa)),aa}var Jl={},gm;function ab(){return gm||(gm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JacksonRenderer=e.JavaRenderer=e.javaNameStyle=e.stringEscape=e.JavaTargetLanguage=e.javaOptions=void 0;const t=On(),n=Wt(),a=Ft(),l=zt(),d=Bt(),u=yr(),c=Nt(),w=Qe(),U=qt(),P=mt(),O=pt();e.javaOptions={classStyle:new l.EnumOption("class-style","Style of generated Java classes",[["java","java"],["java-record","java-record"],["lombok","lombok"]],"java"),useList:new l.EnumOption("array-type","Use T[] or List<T>",[["array",!1],["list",!0]],"array"),justTypes:new l.BooleanOption("just-types","Plain types only",!1),dateTimeProvider:new l.EnumOption("datetime-provider","Date time provider type",[["java8","java8"],["legacy","legacy"]],"java8"),acronymStyle:(0,u.acronymOption)(u.AcronymStyleOptions.Pascal),packageName:new l.StringOption("package","Generated package name","NAME","io.quicktype"),lombokCopyAnnotations:new l.BooleanOption("lombok-copy-annotations","Copy accessor annotations",!0,"secondary")};class R extends U.TargetLanguage{constructor(){super("Java",["java"],"java")}getOptions(){return[e.javaOptions.classStyle,e.javaOptions.useList,e.javaOptions.justTypes,e.javaOptions.dateTimeProvider,e.javaOptions.acronymStyle,e.javaOptions.packageName,e.javaOptions.lombokCopyAnnotations]}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(f,E){const b=(0,l.getOptionValues)(e.javaOptions,E);return b.justTypes?new C(this,f,b):new I(this,f,b)}get stringTypeMapping(){const f=new Map;return f.set("date","date"),f.set("time","time"),f.set("date-time","date-time"),f.set("uuid","uuid"),f}}e.JavaTargetLanguage=R;const _=["Object","Class","System","Long","Double","Boolean","String","List","Map","UUID","Exception","IOException","Override","abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","null","false","true"];e.stringEscape=(0,c.utf16ConcatMap)((0,c.escapeNonPrintableMapper)(c.isAscii,c.standardUnicodeHexEscape));function L(A){return A===95?!0:(0,c.isAscii)(A)&&(0,c.isLetter)(A)}function g(A){return L(A)||(0,c.isAscii)(A)&&(0,c.isDigit)(A)}const y=(0,c.utf16LegalizeCharacters)(g);function h(A,f,E,b=c.allUpperWordStyle){const F=(0,c.splitIntoWords)(E);return(0,c.combineWords)(F,y,f?c.allUpperWordStyle:A?c.firstUpperWordStyle:c.allLowerWordStyle,f?c.allUpperWordStyle:c.firstUpperWordStyle,f||A?c.allUpperWordStyle:c.allLowerWordStyle,b,f?"_":"",L)}e.javaNameStyle=h;class p{constructor(f,E){this._renderer=f,this._className=E,this.shouldEmitDateTimeConverter=!0,this.shouldEmitTimeConverter=!0,this.shouldEmitDateConverter=!0}}class k extends p{constructor(){super(...arguments),this.keywords=["LocalDate","OffsetDateTime","OffsetTime","ZoneOffset","ZonedDateTime","DateTimeFormatter","DateTimeFormatterBuilder","ChronoField"],this.dateTimeImports=["java.time.OffsetDateTime"],this.dateImports=["java.time.LocalDate"],this.timeImports=["java.time.OffsetTime"],this.converterImports=["java.time.LocalDate","java.time.OffsetDateTime","java.time.OffsetTime","java.time.ZoneOffset","java.time.ZonedDateTime","java.time.format.DateTimeFormatter","java.time.format.DateTimeFormatterBuilder","java.time.temporal.ChronoField"],this.dateTimeType="OffsetDateTime",this.dateType="LocalDate",this.timeType="OffsetTime",this.dateTimeJacksonAnnotations=[],this.dateJacksonAnnotations=[],this.timeJacksonAnnotations=[]}emitDateTimeConverters(){this._renderer.ensureBlankLine(),this._renderer.emitLine("private static final DateTimeFormatter DATE_TIME_FORMATTER = new DateTimeFormatterBuilder()"),this._renderer.indent(()=>this._renderer.indent(()=>{this._renderer.emitLine(".appendOptional(DateTimeFormatter.ISO_DATE_TIME)"),this._renderer.emitLine(".appendOptional(DateTimeFormatter.ISO_OFFSET_DATE_TIME)"),this._renderer.emitLine(".appendOptional(DateTimeFormatter.ISO_INSTANT)"),this._renderer.emitLine('.appendOptional(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SX"))'),this._renderer.emitLine('.appendOptional(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ssX"))'),this._renderer.emitLine('.appendOptional(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))'),this._renderer.emitLine(".toFormatter()"),this._renderer.emitLine(".withZone(ZoneOffset.UTC);")})),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static OffsetDateTime parseDateTimeString(String str)",()=>{this._renderer.emitLine("return ZonedDateTime.from(Converter.DATE_TIME_FORMATTER.parse(str)).toOffsetDateTime();")}),this._renderer.ensureBlankLine(),this._renderer.emitLine("private static final DateTimeFormatter TIME_FORMATTER = new DateTimeFormatterBuilder()"),this._renderer.indent(()=>this._renderer.indent(()=>{this._renderer.emitLine(".appendOptional(DateTimeFormatter.ISO_TIME)"),this._renderer.emitLine(".appendOptional(DateTimeFormatter.ISO_OFFSET_TIME)"),this._renderer.emitLine(".parseDefaulting(ChronoField.YEAR, 2020)"),this._renderer.emitLine(".parseDefaulting(ChronoField.MONTH_OF_YEAR, 1)"),this._renderer.emitLine(".parseDefaulting(ChronoField.DAY_OF_MONTH, 1)"),this._renderer.emitLine(".toFormatter()"),this._renderer.emitLine(".withZone(ZoneOffset.UTC);")})),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static OffsetTime parseTimeString(String str)",()=>{this._renderer.emitLine("return ZonedDateTime.from(Converter.TIME_FORMATTER.parse(str)).toOffsetDateTime().toOffsetTime();")})}convertStringToDateTime(f){return[this._className,".parseDateTimeString(",f,")"]}convertStringToTime(f){return[this._className,".parseTimeString(",f,")"]}convertStringToDate(f){return["LocalDate.parse(",f,")"]}convertDateTimeToString(f){return[f,".format(java.time.format.DateTimeFormatter.ISO_OFFSET_DATE_TIME)"]}convertTimeToString(f){return[f,".format(java.time.format.DateTimeFormatter.ISO_OFFSET_TIME)"]}convertDateToString(f){return[f,".format(java.time.format.DateTimeFormatter.ISO_DATE)"]}}class D extends p{constructor(){super(...arguments),this.keywords=["SimpleDateFormat","Date"],this.dateTimeImports=["java.util.Date"],this.dateImports=["java.util.Date"],this.timeImports=["java.util.Date"],this.converterImports=["java.util.Date","java.text.SimpleDateFormat"],this.dateTimeType="Date",this.dateType="Date",this.timeType="Date",this.dateTimeJacksonAnnotations=[`@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ssX", timezone = "UTC")`],this.dateJacksonAnnotations=['@JsonFormat(pattern = "yyyy-MM-dd")'],this.timeJacksonAnnotations=['@JsonFormat(pattern = "HH:mm:ssX", timezone = "UTC")'],this.shouldEmitTimeConverter=!1,this.shouldEmitDateConverter=!1}emitDateTimeConverters(){this._renderer.ensureBlankLine(),this._renderer.emitLine("private static final String[] DATE_TIME_FORMATS = {"),this._renderer.indent(()=>this._renderer.indent(()=>{this._renderer.emitLine(`"yyyy-MM-dd'T'HH:mm:ss.SX",`),this._renderer.emitLine(`"yyyy-MM-dd'T'HH:mm:ss.S",`),this._renderer.emitLine(`"yyyy-MM-dd'T'HH:mm:ssX",`),this._renderer.emitLine(`"yyyy-MM-dd'T'HH:mm:ss",`),this._renderer.emitLine('"yyyy-MM-dd HH:mm:ss.SX",'),this._renderer.emitLine('"yyyy-MM-dd HH:mm:ss.S",'),this._renderer.emitLine('"yyyy-MM-dd HH:mm:ssX",'),this._renderer.emitLine('"yyyy-MM-dd HH:mm:ss",'),this._renderer.emitLine('"HH:mm:ss.SZ",'),this._renderer.emitLine('"HH:mm:ss.S",'),this._renderer.emitLine('"HH:mm:ssZ",'),this._renderer.emitLine('"HH:mm:ss",'),this._renderer.emitLine('"yyyy-MM-dd",')})),this._renderer.emitLine("};"),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static Date parseAllDateTimeString(String str)",()=>{this._renderer.emitBlock("for (String format : DATE_TIME_FORMATS)",()=>{this._renderer.emitIgnoredTryCatchBlock(()=>{this._renderer.emitLine("return new SimpleDateFormat(format).parse(str);")})}),this._renderer.emitLine("return null;")}),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static String serializeDateTime(Date datetime)",()=>{this._renderer.emitLine(`return new SimpleDateFormat("yyyy-MM-dd'T'hh:mm:ssZ").format(datetime);`)}),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static String serializeDate(Date datetime)",()=>{this._renderer.emitLine('return new SimpleDateFormat("yyyy-MM-dd").format(datetime);')}),this._renderer.ensureBlankLine(),this._renderer.emitBlock("public static String serializeTime(Date datetime)",()=>{this._renderer.emitLine('return new SimpleDateFormat("hh:mm:ssZ").format(datetime);')})}convertStringToDateTime(f){return[this._className,".parseAllDateTimeString(",f,")"]}convertStringToTime(f){return[this._className,".parseAllDateTimeString(",f,")"]}convertStringToDate(f){return[this._className,".parseAllDateTimeString(",f,")"]}convertDateTimeToString(f){return[this._className,".serializeDateTime(",f,")"]}convertTimeToString(f){return[this._className,".serializeTime(",f,")"]}convertDateToString(f){return[this._className,".serializeDate(",f,")"]}}class C extends n.ConvenienceRenderer{constructor(f,E,b){switch(super(f,E),this._options=b,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname="Converter",this._converterKeywords=[],b.dateTimeProvider){default:case"java8":this._dateTimeProvider=new k(this,this._converterClassname);break;case"legacy":this._dateTimeProvider=new D(this,this._converterClassname);break}}forbiddenNamesForGlobalNamespace(){return[..._,...this._converterKeywords,this._converterClassname,...this._dateTimeProvider.keywords]}forbiddenForObjectProperties(f,E){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return this.getNameStyling("typeNamingFunction")}namerForObjectProperty(){return this.getNameStyling("propertyNamingFunction")}makeUnionMemberNamer(){return this.getNameStyling("propertyNamingFunction")}makeEnumCaseNamer(){return this.getNameStyling("enumCaseNamingFunction")}unionNeedsName(f){return(0,O.nullableFromUnion)(f)===null}namedTypeToNameForTopLevel(f){return(0,O.directlyReachableSingleNamedType)(f)}makeNamesForPropertyGetterAndSetter(f,E,b,F,m){const r=new a.DependencyName(this.getNameStyling("propertyNamingFunction"),m.order,T=>`get_${T(m)}`),s=new a.DependencyName(this.getNameStyling("propertyNamingFunction"),m.order,T=>`set_${T(m)}`);return[r,s]}makePropertyDependencyNames(f,E,b,F,m){const r=this.makeNamesForPropertyGetterAndSetter(f,E,b,F,m);return this._gettersAndSettersForPropertyName.set(m,r),r}getNameStyling(f){return{typeNamingFunction:(0,a.funPrefixNamer)("types",b=>h(!0,!1,b,(0,u.acronymStyle)(this._options.acronymStyle))),propertyNamingFunction:(0,a.funPrefixNamer)("properties",b=>h(!1,!1,b,(0,u.acronymStyle)(this._options.acronymStyle))),enumCaseNamingFunction:(0,a.funPrefixNamer)("enum-cases",b=>h(!0,!0,b,(0,u.acronymStyle)(this._options.acronymStyle)))}[f]}fieldOrMethodName(f,E){return this.topLevels.size===1?f:[E,(0,c.capitalize)(f)]}methodName(f,E,b){return this.topLevels.size===1?[f,E]:[f,b,E]}decoderName(f){return this.fieldOrMethodName("fromJsonString",f)}encoderName(f){return this.fieldOrMethodName("toJsonString",f)}readerGetterName(f){return this.methodName("get","ObjectReader",f)}writerGetterName(f){return this.methodName("get","ObjectWriter",f)}startFile(f){(0,w.assert)(this._currentFilename===void 0,"Previous file wasn't finished"),this._currentFilename=`${this.sourcelikeToString(f)}.java`,this.ensureBlankLine(),!this._haveEmittedLeadingComments&&this.leadingComments!==void 0&&(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){super.finishFile((0,w.defined)(this._currentFilename)),this._currentFilename=void 0}emitPackageAndImports(f){this.emitLine("package ",this._options.packageName,";"),this.ensureBlankLine();for(const E of f)this.emitLine("import ",E,";")}emitFileHeader(f,E){this.startFile(f),this.emitPackageAndImports(E),this.ensureBlankLine()}emitDescriptionBlock(f){this.emitCommentLines(f," * ","/**"," */")}emitBlock(f,E){this.emitLine(f," {"),this.indent(E),this.emitLine("}")}emitTryCatch(f,E,b="Exception"){this.emitLine("try {"),this.indent(f),this.emitLine("} catch (",b," ex) {"),this.indent(E),this.emitLine("}")}emitIgnoredTryCatchBlock(f){this.emitTryCatch(f,()=>this.emitLine("// Ignored"))}javaType(f,E,b=!1){return(0,O.matchType)(E,F=>(0,d.maybeAnnotated)(b,t.anyTypeIssueAnnotation,"Object"),F=>(0,d.maybeAnnotated)(b,t.nullTypeIssueAnnotation,"Object"),F=>f?"Boolean":"boolean",F=>f?"Long":"long",F=>f?"Double":"double",F=>"String",F=>this._options.useList?["List<",this.javaType(!0,F.items,b),">"]:[this.javaType(!1,F.items,b),"[]"],F=>this.nameForNamedType(F),F=>["Map<String, ",this.javaType(!0,F.values,b),">"],F=>this.nameForNamedType(F),F=>{const m=(0,O.nullableFromUnion)(F);return m!==null?this.javaType(!0,m,b):this.nameForNamedType(F)},F=>F.kind==="time"?this._dateTimeProvider.timeType:F.kind==="date"?this._dateTimeProvider.dateType:F.kind==="date-time"?this._dateTimeProvider.dateTimeType:F.kind==="uuid"?"UUID":"String")}javaImport(f){return(0,O.matchType)(f,E=>[],E=>[],E=>[],E=>[],E=>[],E=>[],E=>this._options.useList?[...this.javaImport(E.items),"java.util.List"]:[...this.javaImport(E.items)],E=>[],E=>[...this.javaImport(E.values),"java.util.Map"],E=>[],E=>{const b=[];return E.members.forEach(F=>this.javaImport(F).forEach(m=>b.push(m))),b},E=>E.kind==="time"?this._dateTimeProvider.timeImports:E.kind==="date"?this._dateTimeProvider.dateImports:E.kind==="date-time"?this._dateTimeProvider.dateTimeImports:E.kind==="uuid"?["java.util.UUID"]:[])}javaTypeWithoutGenerics(f,E){if(E instanceof P.ArrayType)return this._options.useList?["List"]:[this.javaTypeWithoutGenerics(!1,E.items),"[]"];if(E instanceof P.MapType)return"Map";if(E instanceof P.UnionType){const b=(0,O.nullableFromUnion)(E);return b!==null?this.javaTypeWithoutGenerics(!0,b):this.nameForNamedType(E)}else return this.javaType(f,E)}emitClassAttributes(f,E){this._options.classStyle==="lombok"&&this.emitLine("@lombok.Data")}annotationsForAccessor(f,E,b,F,m,r){return[]}importsForType(f){return f instanceof P.ClassType?[]:f instanceof P.UnionType?["java.io.IOException"]:f instanceof P.EnumType?["java.io.IOException"]:(0,w.assertNever)(f)}importsForClass(f){const E=[];return this.forEachClassProperty(f,"none",(b,F,m)=>{this.javaImport(m.type).forEach(r=>E.push(r))}),E.sort(),[...new Set(E)]}importsForUnionMembers(f){const E=[],[,b]=(0,O.removeNullFromUnion)(f);return this.forEachUnionMember(f,b,"none",null,(F,m)=>{this.javaImport(m).forEach(r=>E.push(r))}),E.sort(),[...new Set(E)]}emitClassDefinition(f,E){let b=[...this.importsForType(f),...this.importsForClass(f)];if(this.emitFileHeader(E,b),this.emitDescription(this.descriptionForType(f)),this.emitClassAttributes(f,E),this._options.classStyle==="java-record")return this.emitClassRecordDefinition(f,E);this.emitBlock(["public class ",E],()=>{this.forEachClassProperty(f,"none",(F,m,r)=>{if(this._options.classStyle==="lombok"&&this._options.lombokCopyAnnotations){const s=this.annotationsForAccessor(f,E,F,m,r,!1),T=this.annotationsForAccessor(f,E,F,m,r,!0);s.length!==0&&this.emitLine("@lombok.Getter(onMethod_ = {"+s.join(", ")+"})"),T.length!==0&&this.emitLine("@lombok.Setter(onMethod_ = {"+T.join(", ")+"})")}this.emitLine("private ",this.javaType(!1,r.type,!0)," ",F,";")}),this._options.classStyle!=="lombok"&&this.forEachClassProperty(f,"leading-and-interposing",(F,m,r)=>{this.emitDescription(this.descriptionForClassProperty(f,m));const[s,T]=(0,w.defined)(this._gettersAndSettersForPropertyName.get(F)),v=this.javaType(!1,r.type);this.annotationsForAccessor(f,E,F,m,r,!1).forEach(M=>this.emitLine(M)),this.emitLine("public ",v," ",s,"() { return ",F,"; }"),this.annotationsForAccessor(f,E,F,m,r,!0).forEach(M=>this.emitLine(M)),this.emitLine("public void ",T,"(",v," value) { this.",F," = value; }")})}),this.finishFile()}emitClassRecordDefinition(f,E){this.emitLine("public record ",E," ("),this.indent(()=>{this.forEachClassProperty(f,"leading-and-interposing",(b,F,m,r)=>{this.annotationsForAccessor(f,E,b,F,m,!1).forEach(v=>this.emitLine(v));const s=this.javaType(!1,m.type),T=r==="first"||r==="middle"?",":[];this.emitLine(s," ",b,T)})}),this.emitLine(") {}"),this.finishFile()}unionField(f,E,b=!1){const F=this.javaType(!0,E,b),m=[this.nameForUnionMember(f,E),"Value"];return{fieldType:F,fieldName:m}}emitUnionAttributes(f,E){}emitUnionSerializer(f,E){}emitUnionDefinition(f,E){const b=[...this.importsForType(f),...this.importsForUnionMembers(f)];this.emitFileHeader(E,b),this.emitDescription(this.descriptionForType(f));const[,F]=(0,O.removeNullFromUnion)(f);this.emitUnionAttributes(f,E),this.emitBlock(["public class ",E],()=>{for(const m of F){const{fieldType:r,fieldName:s}=this.unionField(f,m,!0);this.emitLine("public ",r," ",s,";")}this.emitUnionSerializer(f,E)}),this.finishFile()}emitEnumSerializationAttributes(f){}emitEnumDeserializationAttributes(f){}emitEnumDefinition(f,E){this.emitFileHeader(E,this.importsForType(f)),this.emitDescription(this.descriptionForType(f));const b=[];this.forEachEnumCase(f,"none",F=>{b.length>0&&b.push(", "),b.push(F)}),b.push(";"),this.emitBlock(["public enum ",E],()=>{this.emitLine(b),this.ensureBlankLine(),this.emitEnumSerializationAttributes(f),this.emitBlock("public String toValue()",()=>{this.emitLine("switch (this) {"),this.indent(()=>{this.forEachEnumCase(f,"none",(F,m)=>{this.emitLine("case ",F,': return "',(0,e.stringEscape)(m),'";')})}),this.emitLine("}"),this.emitLine("return null;")}),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(f),this.emitBlock(["public static ",E," forValue(String value) throws IOException"],()=>{this.forEachEnumCase(f,"none",(F,m)=>{this.emitLine('if (value.equals("',(0,e.stringEscape)(m),'")) return ',F,";")}),this.emitLine('throw new IOException("Cannot deserialize ',E,'");')})}),this.finishFile()}emitSourceStructure(){this.forEachNamedType("leading-and-interposing",(f,E)=>this.emitClassDefinition(f,E),(f,E)=>this.emitEnumDefinition(f,E),(f,E)=>this.emitUnionDefinition(f,E))}}e.JavaRenderer=C;class I extends C{constructor(f,E,b){super(f,E,b),this._converterKeywords=["JsonProperty","JsonDeserialize","JsonDeserializer","JsonSerialize","JsonSerializer","JsonParser","JsonProcessingException","DeserializationContext","SerializerProvider"]}emitClassAttributes(f,E){f.getProperties().size===0&&this.emitLine("@JsonAutoDetect(fieldVisibility=JsonAutoDetect.Visibility.NONE)"),super.emitClassAttributes(f,E)}annotationsForAccessor(f,E,b,F,m,r){const s=super.annotationsForAccessor(f,E,b,F,m,r),T=['@JsonProperty("'+(0,e.stringEscape)(F)+'")'];switch(m.type.kind){case"date-time":this._dateTimeProvider.dateTimeJacksonAnnotations.forEach(v=>T.push(v));break;case"date":this._dateTimeProvider.dateJacksonAnnotations.forEach(v=>T.push(v));break;case"time":this._dateTimeProvider.timeJacksonAnnotations.forEach(v=>T.push(v));break}return[...s,...T]}importsForType(f){if(f instanceof P.ClassType){const E=super.importsForType(f);return E.push("com.fasterxml.jackson.annotation.*"),E}if(f instanceof P.UnionType){const E=super.importsForType(f);return E.push("java.io.IOException","com.fasterxml.jackson.core.*","com.fasterxml.jackson.databind.*","com.fasterxml.jackson.databind.annotation.*"),this._options.useList&&E.push("com.fasterxml.jackson.core.type.*"),E}if(f instanceof P.EnumType){const E=super.importsForType(f);return E.push("com.fasterxml.jackson.annotation.*"),E}return(0,w.assertNever)(f)}emitUnionAttributes(f,E){this.emitLine("@JsonDeserialize(using = ",E,".Deserializer.class)"),this.emitLine("@JsonSerialize(using = ",E,".Serializer.class)")}emitUnionSerializer(f,E){const b=["uuid","time","date","date-time"],F=G=>{this.emitLine("case ",G,":")},m=()=>{this.indent(()=>{F("VALUE_NULL"),this.indent(()=>this.emitLine("break;"))})},r=(G,$,ee)=>{switch($){case"date":this.emitLine("value.",G," = ",this._dateTimeProvider.convertStringToDate(ee),";");break;case"time":this.emitLine("value.",G," = ",this._dateTimeProvider.convertStringToTime(ee),";");break;case"date-time":this.emitLine("value.",G," = ",this._dateTimeProvider.convertStringToDateTime(ee),";");break;case"uuid":this.emitLine("value.",G," = UUID.fromString(",ee,");");break;default:return(0,w.panic)("Requested type isnt an object!")}},s=(G,$="")=>{const{fieldName:ee}=this.unionField(f,G),ue=this.javaTypeWithoutGenerics(!0,G);if(this._options.useList&&G instanceof P.ArrayType)this.emitLine("value.",ee," = jsonParser.readValueAs(new TypeReference<",ue,">() {});");else if(b.some(se=>G.kind===se))r(ee,G.kind,$);else if(G.kind==="string")this.emitLine("value.",ee," = ",$,";");else if(G.kind==="enum"){const{fieldType:se}=this.unionField(f,G,!0);this.emitLine("value.",ee," = ",se,".forValue(",$,");")}else this.emitLine("value.",ee," = jsonParser.readValueAs(",ue,".class);")},T=(G,$)=>{const ee=f.findMember($);ee!==void 0&&this.indent(()=>{for(const ue of G)F(ue);this.indent(()=>{s(ee),this.emitLine("break;")})})},v=()=>{const G=f.findMember("enum"),$=f.findMember("string");b.every(ee=>f.findMember(ee)===void 0)&&$===void 0&&G===void 0||this.indent(()=>{F("VALUE_STRING"),this.indent(()=>{const ee="string";this.emitLine("String "+ee+" = jsonParser.readValueAs(String.class);"),b.forEach(ue=>{const se=f.findMember(ue);se!==void 0&&this.emitIgnoredTryCatchBlock(()=>{s(se,ee)})}),G!==void 0&&this.emitIgnoredTryCatchBlock(()=>{s(G,ee)}),$!==void 0&&s($,ee),this.emitLine("break;")})})},M=()=>{const G=f.findMember("integer"),$=f.findMember("double");$===void 0&&G===void 0||this.indent(()=>{F("VALUE_NUMBER_INT"),G!==void 0&&this.indent(()=>{s(G),this.emitLine("break;")}),$!==void 0&&(F("VALUE_NUMBER_FLOAT"),this.indent(()=>{s($),this.emitLine("break;")}))})},x=["time","date","date-time"],W=(G,$)=>{switch(G.kind){case"date":return this._dateTimeProvider.convertDateToString($);case"time":return this._dateTimeProvider.convertTimeToString($);case"date-time":return this._dateTimeProvider.convertDateTimeToString($);default:return(0,w.panic)("Requested type doesn't have custom serializer code!")}},S=G=>{let{fieldName:$}=this.unionField(f,G,!0);this.emitBlock(["if (obj.",$," != null)"],()=>{x.some(ee=>G.kind===ee)?this.emitLine("jsonGenerator.writeObject(",W(G,["obj.",$]),");"):this.emitLine("jsonGenerator.writeObject(obj.",$,");"),this.emitLine("return;")})},[B,q]=(0,O.removeNullFromUnion)(f);this.ensureBlankLine(),this.emitBlock(["static class Deserializer extends JsonDeserializer<",E,">"],()=>{this.emitLine("@Override"),this.emitBlock(["public ",E," deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException, JsonProcessingException"],()=>{this.emitLine(E," value = new ",E,"();"),this.emitLine("switch (jsonParser.currentToken()) {"),B!==null&&m(),M(),T(["VALUE_TRUE","VALUE_FALSE"],"bool"),v(),T(["START_ARRAY"],"array"),T(["START_OBJECT"],"class"),T(["START_OBJECT"],"map"),this.indent(()=>this.emitLine('default: throw new IOException("Cannot deserialize ',E,'");')),this.emitLine("}"),this.emitLine("return value;")})}),this.ensureBlankLine(),this.emitBlock(["static class Serializer extends JsonSerializer<",E,">"],()=>{this.emitLine("@Override"),this.emitBlock(["public void serialize(",E," obj, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException"],()=>{for(const G of q)S(G);B!==null?this.emitLine("jsonGenerator.writeNull();"):this.emitLine('throw new IOException("',E,' must not be null");')})})}emitEnumSerializationAttributes(f){this.emitLine("@JsonValue")}emitEnumDeserializationAttributes(f){this.emitLine("@JsonCreator")}emitOffsetDateTimeConverterModule(){this.emitLine("SimpleModule module = new SimpleModule();"),this._dateTimeProvider.shouldEmitDateTimeConverter&&(this.emitLine("module.addDeserializer(",this._dateTimeProvider.dateTimeType,".class, new JsonDeserializer<",this._dateTimeProvider.dateTimeType,">() {"),this.indent(()=>{this.emitLine("@Override"),this.emitBlock(["public ",this._dateTimeProvider.dateTimeType," deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) ","throws IOException, JsonProcessingException"],()=>{this.emitLine("String value = jsonParser.getText();"),this.emitLine("return ",this._dateTimeProvider.convertStringToDateTime("value"),";")})}),this.emitLine("});")),this._dateTimeProvider.shouldEmitTimeConverter||(this.emitLine("module.addDeserializer(",this._dateTimeProvider.timeType,".class, new JsonDeserializer<",this._dateTimeProvider.timeType,">() {"),this.indent(()=>{this.emitLine("@Override"),this.emitBlock(["public ",this._dateTimeProvider.timeType," deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) ","throws IOException, JsonProcessingException"],()=>{this.emitLine("String value = jsonParser.getText();"),this.emitLine("return ",this._dateTimeProvider.convertStringToTime("value"),";")})}),this.emitLine("});")),this._dateTimeProvider.shouldEmitDateConverter||(this.emitLine("module.addDeserializer(",this._dateTimeProvider.dateType,".class, new JsonDeserializer<",this._dateTimeProvider.dateType,">() {"),this.indent(()=>{this.emitLine("@Override"),this.emitBlock(["public ",this._dateTimeProvider.dateType," deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) ","throws IOException, JsonProcessingException"],()=>{this.emitLine("String value = jsonParser.getText();"),this.emitLine("return ",this._dateTimeProvider.convertStringToDate("value"),";")})}),this.emitLine("});")),this.emitLine("mapper.registerModule(module);")}emitConverterClass(){this.startFile(this._converterClassname),this.emitCommentLines(["To use this code, add the following Maven dependency to your project:","",this._options.classStyle==="lombok"?" org.projectlombok : lombok : 1.18.2":""," com.fasterxml.jackson.core : jackson-databind : 2.9.0",this._options.dateTimeProvider==="java8"?" com.fasterxml.jackson.datatype : jackson-datatype-jsr310 : 2.9.0":"","","Import this package:",""]),this.emitLine("// import ",this._options.packageName,".Converter;"),this.emitMultiline(`//
417
+ // Then you can deserialize a JSON string with
418
+ //`),this.forEachTopLevel("none",(E,b)=>{this.emitLine("// ",this.javaType(!1,E)," data = Converter.",this.decoderName(b),"(jsonString);")}),this.ensureBlankLine();const f=["java.io.IOException","com.fasterxml.jackson.databind.*","com.fasterxml.jackson.databind.module.SimpleModule","com.fasterxml.jackson.core.JsonParser","com.fasterxml.jackson.core.JsonProcessingException","java.util.*"].concat(this._dateTimeProvider.converterImports);this.emitPackageAndImports(f),this.ensureBlankLine(),this.emitBlock(["public class Converter"],()=>{this.emitLine("// Date-time helpers"),this._dateTimeProvider.emitDateTimeConverters(),this.emitLine("// Serialize/deserialize helpers"),this.forEachTopLevel("leading-and-interposing",(E,b)=>{const F=this.javaType(!1,E);this.emitBlock(["public static ",F," ",this.decoderName(b),"(String json) throws IOException"],()=>{this.emitLine("return ",this.readerGetterName(b),"().readValue(json);")}),this.ensureBlankLine(),this.emitBlock(["public static String ",this.encoderName(b),"(",F," obj) throws JsonProcessingException"],()=>{this.emitLine("return ",this.writerGetterName(b),"().writeValueAsString(obj);")})}),this.forEachTopLevel("leading-and-interposing",(E,b)=>{const F=this.fieldOrMethodName("reader",b),m=this.fieldOrMethodName("writer",b);this.emitLine("private static ObjectReader ",F,";"),this.emitLine("private static ObjectWriter ",m,";"),this.ensureBlankLine(),this.emitBlock(["private static void ",this.methodName("instantiate","Mapper",b),"()"],()=>{const r=this.javaTypeWithoutGenerics(!1,E);this.emitLine("ObjectMapper mapper = new ObjectMapper();"),this.emitLine("mapper.findAndRegisterModules();"),this.emitLine("mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);"),this.emitLine("mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);"),this.emitOffsetDateTimeConverterModule(),this.emitLine(F," = mapper.readerFor(",r,".class);"),this.emitLine(m," = mapper.writerFor(",r,".class);")}),this.ensureBlankLine(),this.emitBlock(["private static ObjectReader ",this.readerGetterName(b),"()"],()=>{this.emitLine("if (",F," == null) ",this.methodName("instantiate","Mapper",b),"();"),this.emitLine("return ",F,";")}),this.ensureBlankLine(),this.emitBlock(["private static ObjectWriter ",this.writerGetterName(b),"()"],()=>{this.emitLine("if (",m," == null) ",this.methodName("instantiate","Mapper",b),"();"),this.emitLine("return ",m,";")})})}),this.finishFile()}emitSourceStructure(){this.emitConverterClass(),super.emitSourceStructure()}}e.JacksonRenderer=I}(Jl)),Jl}var Gl={},Hl={},bm;function ub(){return bm||(bm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.convertersOption=e.ConvertersOptions=void 0;const t=zt();var n;(function(l){l.TopLevel="top-level",l.AllObjects="all-objects"})(n=e.ConvertersOptions||(e.ConvertersOptions={}));function a(){return new t.EnumOption("converters","Which converters to generate (top-level by default)",[[n.TopLevel,n.TopLevel],[n.AllObjects,n.AllObjects]],n.TopLevel,"secondary")}e.convertersOption=a}(Hl)),Hl}var sr={},Tm;function hf(){if(Tm)return sr;Tm=1,Object.defineProperty(sr,"__esModule",{value:!0}),sr.isES3IdentifierPart=sr.isES3IdentifierStart=void 0;function e(d,u){if(d<u[0])return!1;let c=0,w=u.length,U;for(;c+1<w;){if(U=c+(w-c)/2,U-=U%2,u[U]<=d&&d<=u[U+1])return!0;d<u[U]?w=U:c=U+2}return!1}function t(d){return d>=65&&d<=90||d>=97&&d<=122||d===36||d===95||d>127&&e(d,a)}sr.isES3IdentifierStart=t;function n(d){return d>=65&&d<=90||d>=97&&d<=122||d>=48&&d<=57||d===36||d===95||d>127&&e(d,l)}sr.isES3IdentifierPart=n;const a=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],l=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500];return sr}var vm;function Va(){return vm||(vm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JavaScriptRenderer=e.legalizeName=e.JavaScriptTargetLanguage=e.javaScriptOptions=void 0;const t=et(),n=pt(),a=yr(),l=ub(),d=Nt(),u=Qe(),c=Bt(),w=Ft(),U=Wt(),P=qt(),O=zt(),R=hf();e.javaScriptOptions={acronymStyle:(0,a.acronymOption)(a.AcronymStyleOptions.Pascal),runtimeTypecheck:new O.BooleanOption("runtime-typecheck","Verify JSON.parse results at runtime",!0),runtimeTypecheckIgnoreUnknownProperties:new O.BooleanOption("runtime-typecheck-ignore-unknown-properties","Ignore unknown properties when verifying at runtime",!1,"secondary"),converters:(0,l.convertersOption)(),rawType:new O.EnumOption("raw-type","Type of raw input (json by default)",[["json","json"],["any","any"]],"json","secondary")};class _ extends P.TargetLanguage{constructor(h="JavaScript",p=["javascript","js","jsx"],k="js"){super(h,p,k)}getOptions(){return[e.javaScriptOptions.runtimeTypecheck,e.javaScriptOptions.runtimeTypecheckIgnoreUnknownProperties,e.javaScriptOptions.acronymStyle,e.javaScriptOptions.converters,e.javaScriptOptions.rawType]}get stringTypeMapping(){const h=new Map,p="date-time";return h.set("date",p),h.set("date-time",p),h}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(h,p){return new g(this,h,(0,O.getOptionValues)(e.javaScriptOptions,p))}}e.JavaScriptTargetLanguage=_,e.legalizeName=(0,d.utf16LegalizeCharacters)(R.isES3IdentifierPart);const L=(0,w.funPrefixNamer)("properties",y=>y);class g extends U.ConvenienceRenderer{constructor(h,p,k){super(h,p),this._jsOptions=k}nameStyle(h,p){const k=(0,a.acronymStyle)(this._jsOptions.acronymStyle),D=(0,d.splitIntoWords)(h);return(0,d.combineWords)(D,e.legalizeName,p?d.firstUpperWordStyle:d.allLowerWordStyle,d.firstUpperWordStyle,p?C=>(0,d.capitalize)(k(C)):d.allLowerWordStyle,k,"",R.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,w.funPrefixNamer)("types",h=>this.nameStyle(h,!0))}namerForObjectProperty(){return L}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,w.funPrefixNamer)("enum-cases",h=>this.nameStyle(h,!0))}namedTypeToNameForTopLevel(h){return(0,n.directlyReachableSingleNamedType)(h)}makeNameForProperty(h,p,k,D,C){return super.makeNameForProperty(h,p,k,D,void 0)}emitDescriptionBlock(h){this.emitCommentLines(h," * ","/**"," */")}typeMapTypeFor(h){return["class","object","enum"].indexOf(h.kind)>=0?['r("',this.nameForNamedType(h),'")']:(0,n.matchType)(h,p=>'"any"',p=>"null",p=>"true",p=>"0",p=>"3.14",p=>'""',p=>["a(",this.typeMapTypeFor(p.items),")"],p=>(0,u.panic)("We handled this above"),p=>["m(",this.typeMapTypeFor(p.values),")"],p=>(0,u.panic)("We handled this above"),p=>{const k=Array.from(p.getChildren()).map(D=>this.typeMapTypeFor(D));return["u(",...(0,t.arrayIntercalate)(", ",k),")"]},p=>p.kind==="date-time"?"Date":'""')}typeMapTypeForProperty(h){const p=this.typeMapTypeFor(h.type);return h.isOptional?["u(undefined, ",p,")"]:p}emitBlock(h,p,k){this.emitLine(h,"{"),this.indent(k),this.emitLine("}",p)}emitTypeMap(){const{any:h}=this.typeAnnotations;this.emitBlock(`const typeMap${h} = `,";",()=>{this.forEachObject("none",(p,k)=>{const D=p.getAdditionalProperties(),C=D!==void 0?this.typeMapTypeFor(D):"false";this.emitLine('"',k,'": o(['),this.indent(()=>{this.forEachClassProperty(p,"none",(I,A,f)=>{this.emitLine('{ json: "',(0,d.utf16StringEscape)(A),'", js: "',(0,c.modifySource)(d.utf16StringEscape,I),'", typ: ',this.typeMapTypeForProperty(f)," },")})}),this.emitLine("], ",C,"),")}),this.forEachEnum("none",(p,k)=>{this.emitLine('"',k,'": ['),this.indent(()=>{this.forEachEnumCase(p,"none",(D,C)=>{this.emitLine(`"${(0,d.utf16StringEscape)(C)}",`)})}),this.emitLine("],")})})}deserializerFunctionName(h){return["to",h]}deserializerFunctionLine(h,p){return["function ",this.deserializerFunctionName(p),"(json)"]}serializerFunctionName(h){return[(0,c.modifySource)(d.camelCase,h),"ToJson"]}serializerFunctionLine(h,p){return["function ",this.serializerFunctionName(p),"(value)"]}get moduleLine(){}get castFunctionLines(){return["function cast(val, typ)","function uncast(val, typ)"]}get typeAnnotations(){return{any:"",anyArray:"",anyMap:"",string:"",stringArray:"",boolean:"",never:""}}emitConvertModuleBody(){const h=(p,k)=>{const D=this.typeMapTypeFor(p);this.emitBlock([this.deserializerFunctionLine(p,k)," "],"",()=>{const C=this._jsOptions.rawType==="json"?"JSON.parse(json)":"json";this._jsOptions.runtimeTypecheck?this.emitLine("return cast(",C,", ",D,");"):this.emitLine("return ",C,";")}),this.ensureBlankLine(),this.emitBlock([this.serializerFunctionLine(p,k)," "],"",()=>{this._jsOptions.rawType==="json"?this._jsOptions.runtimeTypecheck?this.emitLine("return JSON.stringify(uncast(value, ",D,"), null, 2);"):this.emitLine("return JSON.stringify(value);"):this._jsOptions.runtimeTypecheck?this.emitLine("return uncast(value, ",D,");"):this.emitLine("return value;")})};switch(this._jsOptions.converters){case l.ConvertersOptions.AllObjects:this.forEachObject("interposing",h);break;default:this.forEachTopLevel("interposing",h);break}}emitConvertModuleHelpers(){if(this._jsOptions.runtimeTypecheck){const{any:h,anyArray:p,anyMap:k,string:D,stringArray:C,never:I}=this.typeAnnotations;this.ensureBlankLine(),this.emitMultiline(`function invalidValue(typ${h}, val${h}, key${h}, parent${h} = '')${I} {
419
+ const prettyTyp = prettyTypeName(typ);
420
+ const parentText = parent ? \` on \${parent}\` : '';
421
+ const keyText = key ? \` for key "\${key}"\` : '';
422
+ throw Error(\`Invalid value\${keyText}\${parentText}. Expected \${prettyTyp} but got \${JSON.stringify(val)}\`);
423
+ }
424
+
425
+ function prettyTypeName(typ${h})${D} {
426
+ if (Array.isArray(typ)) {
427
+ if (typ.length === 2 && typ[0] === undefined) {
428
+ return \`an optional \${prettyTypeName(typ[1])}\`;
429
+ } else {
430
+ return \`one of [\${typ.map(a => { return prettyTypeName(a); }).join(", ")}]\`;
431
+ }
432
+ } else if (typeof typ === "object" && typ.literal !== undefined) {
433
+ return typ.literal;
434
+ } else {
435
+ return typeof typ;
436
+ }
437
+ }
438
+
439
+ function jsonToJSProps(typ${h})${h} {
440
+ if (typ.jsonToJS === undefined) {
441
+ const map${h} = {};
442
+ typ.props.forEach((p${h}) => map[p.json] = { key: p.js, typ: p.typ });
443
+ typ.jsonToJS = map;
444
+ }
445
+ return typ.jsonToJS;
446
+ }
447
+
448
+ function jsToJSONProps(typ${h})${h} {
449
+ if (typ.jsToJSON === undefined) {
450
+ const map${h} = {};
451
+ typ.props.forEach((p${h}) => map[p.js] = { key: p.json, typ: p.typ });
452
+ typ.jsToJSON = map;
453
+ }
454
+ return typ.jsToJSON;
455
+ }
456
+
457
+ function transform(val${h}, typ${h}, getProps${h}, key${h} = '', parent${h} = '')${h} {
458
+ function transformPrimitive(typ${D}, val${h})${h} {
459
+ if (typeof typ === typeof val) return val;
460
+ return invalidValue(typ, val, key, parent);
461
+ }
462
+
463
+ function transformUnion(typs${p}, val${h})${h} {
464
+ // val must validate against one typ in typs
465
+ const l = typs.length;
466
+ for (let i = 0; i < l; i++) {
467
+ const typ = typs[i];
468
+ try {
469
+ return transform(val, typ, getProps);
470
+ } catch (_) {}
471
+ }
472
+ return invalidValue(typs, val, key, parent);
473
+ }
474
+
475
+ function transformEnum(cases${C}, val${h})${h} {
476
+ if (cases.indexOf(val) !== -1) return val;
477
+ return invalidValue(cases.map(a => { return l(a); }), val, key, parent);
478
+ }
479
+
480
+ function transformArray(typ${h}, val${h})${h} {
481
+ // val must be an array with no invalid elements
482
+ if (!Array.isArray(val)) return invalidValue(l("array"), val, key, parent);
483
+ return val.map(el => transform(el, typ, getProps));
484
+ }
485
+
486
+ function transformDate(val${h})${h} {
487
+ if (val === null) {
488
+ return null;
489
+ }
490
+ const d = new Date(val);
491
+ if (isNaN(d.valueOf())) {
492
+ return invalidValue(l("Date"), val, key, parent);
493
+ }
494
+ return d;
495
+ }
496
+
497
+ function transformObject(props${k}, additional${h}, val${h})${h} {
498
+ if (val === null || typeof val !== "object" || Array.isArray(val)) {
499
+ return invalidValue(l(ref || "object"), val, key, parent);
500
+ }
501
+ const result${h} = {};
502
+ Object.getOwnPropertyNames(props).forEach(key => {
503
+ const prop = props[key];
504
+ const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
505
+ result[prop.key] = transform(v, prop.typ, getProps, key, ref);
506
+ });
507
+ Object.getOwnPropertyNames(val).forEach(key => {
508
+ if (!Object.prototype.hasOwnProperty.call(props, key)) {
509
+ result[key] = ${this._jsOptions.runtimeTypecheckIgnoreUnknownProperties?"val[key]":"transform(val[key], additional, getProps, key, ref)"};
510
+ }
511
+ });
512
+ return result;
513
+ }
514
+
515
+ if (typ === "any") return val;
516
+ if (typ === null) {
517
+ if (val === null) return val;
518
+ return invalidValue(typ, val, key, parent);
519
+ }
520
+ if (typ === false) return invalidValue(typ, val, key, parent);
521
+ let ref${h} = undefined;
522
+ while (typeof typ === "object" && typ.ref !== undefined) {
523
+ ref = typ.ref;
524
+ typ = typeMap[typ.ref];
525
+ }
526
+ if (Array.isArray(typ)) return transformEnum(typ, val);
527
+ if (typeof typ === "object") {
528
+ return typ.hasOwnProperty("unionMembers") ? transformUnion(typ.unionMembers, val)
529
+ : typ.hasOwnProperty("arrayItems") ? transformArray(typ.arrayItems, val)
530
+ : typ.hasOwnProperty("props") ? transformObject(getProps(typ), typ.additional, val)
531
+ : invalidValue(typ, val, key, parent);
532
+ }
533
+ // Numbers can be parsed by Date but shouldn't be.
534
+ if (typ === Date && typeof val !== "number") return transformDate(val);
535
+ return transformPrimitive(typ, val);
536
+ }
537
+
538
+ ${this.castFunctionLines[0]} {
539
+ return transform(val, typ, jsonToJSProps);
540
+ }
541
+
542
+ ${this.castFunctionLines[1]} {
543
+ return transform(val, typ, jsToJSONProps);
544
+ }
545
+
546
+ function l(typ${h}) {
547
+ return { literal: typ };
548
+ }
549
+
550
+ function a(typ${h}) {
551
+ return { arrayItems: typ };
552
+ }
553
+
554
+ function u(...typs${p}) {
555
+ return { unionMembers: typs };
556
+ }
557
+
558
+ function o(props${p}, additional${h}) {
559
+ return { props, additional };
560
+ }
561
+
562
+ function m(additional${h}) {
563
+ return { props: [], additional };
564
+ }
565
+
566
+ function r(name${D}) {
567
+ return { ref: name };
568
+ }
569
+ `),this.emitTypeMap()}}emitConvertModule(){this.ensureBlankLine(),this.emitMultiline(`// Converts JSON ${this._jsOptions.rawType==="json"?"strings":"types"} to/from your types`),this._jsOptions.runtimeTypecheck&&this.emitMultiline(`// and asserts the results${this._jsOptions.rawType==="json"?" of JSON.parse":""} at runtime`);const h=this.moduleLine;h===void 0?this.emitConvertModuleBody():this.emitBlock([h," "],"",()=>this.emitConvertModuleBody())}emitTypes(){}emitUsageImportComment(){this.emitLine('// const Convert = require("./file");')}emitUsageComments(){this.emitMultiline(`// To parse this data:
570
+ //`),this.emitUsageImportComment(),this.emitLine("//"),this.forEachTopLevel("none",(h,p)=>{const k=(0,c.modifySource)(d.camelCase,p);this.emitLine("// const ",k," = Convert.to",p,"(json);")}),this._jsOptions.runtimeTypecheck&&(this.emitLine("//"),this.emitLine("// These functions will throw an error if the JSON doesn't"),this.emitLine("// match the expected interface, even if the JSON is valid."))}emitModuleExports(){this.ensureBlankLine(),this.emitBlock("module.exports = ",";",()=>{this.forEachTopLevel("none",(h,p)=>{const k=this.serializerFunctionName(p),D=this.deserializerFunctionName(p);this.emitLine('"',k,'": ',k,","),this.emitLine('"',D,'": ',D,",")})})}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitTypes(),this.emitConvertModule(),this.emitConvertModuleHelpers(),this.emitModuleExports()}}e.JavaScriptRenderer=g}(Gl)),Gl}var Kl={},Sm;function lb(){return Sm||(Sm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JavaScriptPropTypesRenderer=e.JavaScriptPropTypesTargetLanguage=e.javaScriptPropTypesOptions=void 0;const t=qt(),n=zt(),a=Wt(),l=Ft(),d=yr(),u=Ya(),c=Nt(),w=hf(),U=Va(),P=ub(),O=pt(),R=et(),_=mt();e.javaScriptPropTypesOptions={acronymStyle:(0,d.acronymOption)(d.AcronymStyleOptions.Pascal),converters:(0,P.convertersOption)(),moduleSystem:new n.EnumOption("module-system","Which module system to use",[["common-js",!1],["es6",!0]],"es6")};class L extends t.TargetLanguage{getOptions(){return[e.javaScriptPropTypesOptions.acronymStyle,e.javaScriptPropTypesOptions.converters]}constructor(p="JavaScript PropTypes",k=["javascript-prop-types"],D="js"){super(p,k,D)}makeRenderer(p,k){return new y(this,p,(0,n.getOptionValues)(e.javaScriptPropTypesOptions,k))}}e.JavaScriptPropTypesTargetLanguage=L;const g=(0,l.funPrefixNamer)("properties",h=>h);class y extends a.ConvenienceRenderer{constructor(p,k,D){super(p,k),this._jsOptions=D}nameStyle(p,k){const D=(0,d.acronymStyle)(this._jsOptions.acronymStyle),C=(0,u.splitIntoWords)(p);return(0,u.combineWords)(C,U.legalizeName,k?u.firstUpperWordStyle:c.allLowerWordStyle,u.firstUpperWordStyle,k?I=>(0,u.capitalize)(D(I)):c.allLowerWordStyle,D,"",w.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,l.funPrefixNamer)("types",p=>this.nameStyle(p,!0))}namerForObjectProperty(){return g}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,l.funPrefixNamer)("enum-cases",p=>this.nameStyle(p,!1))}namedTypeToNameForTopLevel(p){return(0,O.directlyReachableSingleNamedType)(p)}makeNameForProperty(p,k,D,C,I){return super.makeNameForProperty(p,k,D,C,void 0)}typeMapTypeFor(p,k=!0){if(["class","object","enum"].indexOf(p.kind)>=0)return["_",this.nameForNamedType(p)];const D=(0,u.matchType)(p,C=>"PropTypes.any",C=>"PropTypes.any",C=>"PropTypes.bool",C=>"PropTypes.number",C=>"PropTypes.number",C=>"PropTypes.string",C=>["PropTypes.arrayOf(",this.typeMapTypeFor(C.items,!1),")"],C=>(0,u.panic)("Should already be handled."),C=>"PropTypes.object",C=>(0,u.panic)("Should already be handled."),C=>{const I=Array.from(C.getChildren()).map(A=>this.typeMapTypeFor(A,!1));return["PropTypes.oneOfType([",...(0,R.arrayIntercalate)(", ",I),"])"]},C=>"PropTypes.string");return k?[D]:D}typeMapTypeForProperty(p){return this.typeMapTypeFor(p.type)}importStatement(p,k){return this._jsOptions.moduleSystem?["import ",p," from ",k,";"]:["const ",p," = require(",k,");"]}emitUsageComments(){this.emitCommentLines(["Example usage:","",this.importStatement("{ MyShape }","./myShape.js"),"","class MyComponent extends React.Component {"," //","}","","MyComponent.propTypes = {"," input: MyShape","};"],"// ")}emitBlock(p,k,D){this.emitLine(p,"{"),this.indent(D),this.emitLine("}",k)}emitImports(){this.ensureBlankLine(),this.emitLine(this.importStatement("PropTypes",'"prop-types"'))}emitExport(p,k){this._jsOptions.moduleSystem?this.emitLine("export const ",p," = ",k,";"):this.emitLine("module.exports = exports = { ",p,": ",k," };")}emitTypes(){this.ensureBlankLine(),this.forEachObject("none",(C,I)=>{this.emitLine("let _",I,";")}),this.forEachEnum("none",(C,I)=>{const A=[];this.forEachEnumCase(C,"none",(f,E,b)=>{A.push("'"),A.push(f),A.push("'"),A.push(", ")}),A.pop(),this.emitLine(["const _",I," = PropTypes.oneOfType([",...A,"]);"])});const p=[],k=[],D=[];this.forEachObject("none",(C,I)=>{k.push(I),D.push(this.gatherSource(()=>this.emitObject(I,C)))}),k.forEach((C,I)=>{let A=0;const E=D[I].filter(b=>b);for(let b=0;b<E.length;b++){const F=E[b];for(let m=0;m<p.length;m++){const r=p[m];k[r]===F&&(A=Math.max(A,r+1))}}p.splice(A,0,I)}),p.forEach(C=>this.emitGatheredSource(D[C])),this.forEachTopLevel("none",(C,I)=>{C instanceof _.PrimitiveType?(this.ensureBlankLine(),this.emitExport(I,this.typeMapTypeFor(C))):C.kind==="array"?(this.ensureBlankLine(),this.emitExport(I,["PropTypes.arrayOf(",this.typeMapTypeFor(C.items),")"])):(this.ensureBlankLine(),this.emitExport(I,["_",I]))})}emitObject(p,k){this.ensureBlankLine(),this.emitLine("_",p," = PropTypes.shape({"),this.indent(()=>{this.forEachClassProperty(k,"none",(D,C,I)=>{this.emitLine(`"${(0,c.utf16StringEscape)(C)}"`,": ",this.typeMapTypeForProperty(I),",")})}),this.emitLine("});")}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitImports(),this.emitTypes()}}e.JavaScriptPropTypesRenderer=y}(Kl)),Kl}var Vl={},wm;function cb(){return wm||(wm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.FlowRenderer=e.FlowTargetLanguage=e.TypeScriptRenderer=e.TypeScriptFlowBaseRenderer=e.TypeScriptTargetLanguage=e.TypeScriptFlowBaseTargetLanguage=e.tsFlowOptions=void 0;const t=mt(),n=pt(),a=Nt(),l=Bt(),d=Ft(),u=zt(),c=Va(),w=Qe(),U=hf();e.tsFlowOptions=Object.assign({},c.javaScriptOptions,{justTypes:new u.BooleanOption("just-types","Interfaces only",!1),nicePropertyNames:new u.BooleanOption("nice-property-names","Transform property names to be JavaScripty",!1),declareUnions:new u.BooleanOption("explicit-unions","Explicitly name unions",!1),preferUnions:new u.BooleanOption("prefer-unions","Use union type instead of enum",!1),preferTypes:new u.BooleanOption("prefer-types","Use types instead of interfaces",!1)});const P={any:": any",anyArray:": any[]",anyMap:": { [k: string]: any }",string:": string",stringArray:": string[]",boolean:": boolean"};class O extends c.JavaScriptTargetLanguage{getOptions(){return[e.tsFlowOptions.justTypes,e.tsFlowOptions.nicePropertyNames,e.tsFlowOptions.declareUnions,e.tsFlowOptions.runtimeTypecheck,e.tsFlowOptions.runtimeTypecheckIgnoreUnknownProperties,e.tsFlowOptions.acronymStyle,e.tsFlowOptions.converters,e.tsFlowOptions.rawType,e.tsFlowOptions.preferUnions,e.tsFlowOptions.preferTypes]}get supportsOptionalClassProperties(){return!0}}e.TypeScriptFlowBaseTargetLanguage=O;class R extends O{constructor(){super("TypeScript",["typescript","ts","tsx"],"ts")}makeRenderer(k,D){return new g(this,k,(0,u.getOptionValues)(e.tsFlowOptions,D))}}e.TypeScriptTargetLanguage=R;function _(p){const k=(0,a.utf16StringEscape)(p),D=`"${k}"`;return p.length===0?D:(0,U.isES3IdentifierStart)(p.codePointAt(0))?k!==p||(0,c.legalizeName)(p)!==p?D:p:D}class L extends c.JavaScriptRenderer{constructor(k,D,C){super(k,D,C),this._tsFlowOptions=C}namerForObjectProperty(){return this._tsFlowOptions.nicePropertyNames?(0,d.funPrefixNamer)("properties",k=>this.nameStyle(k,!1)):super.namerForObjectProperty()}sourceFor(k){return["class","object","enum"].indexOf(k.kind)>=0?(0,l.singleWord)(this.nameForNamedType(k)):(0,n.matchType)(k,D=>(0,l.singleWord)("any"),D=>(0,l.singleWord)("null"),D=>(0,l.singleWord)("boolean"),D=>(0,l.singleWord)("number"),D=>(0,l.singleWord)("number"),D=>(0,l.singleWord)("string"),D=>{const C=this.sourceFor(D.items);return D.items instanceof t.UnionType&&!this._tsFlowOptions.declareUnions||D.items instanceof t.ArrayType?(0,l.singleWord)(["Array<",C.source,">"]):(0,l.singleWord)([(0,l.parenIfNeeded)(C),"[]"])},D=>(0,w.panic)("We handled this above"),D=>(0,l.singleWord)(["{ [key: string]: ",this.sourceFor(D.values).source," }"]),D=>(0,w.panic)("We handled this above"),D=>{if(!this._tsFlowOptions.declareUnions||(0,n.nullableFromUnion)(D)!==null){const C=Array.from(D.getChildren()).map(I=>(0,l.parenIfNeeded)(this.sourceFor(I)));return(0,l.multiWord)(" | ",...C)}else return(0,l.singleWord)(this.nameForNamedType(D))},D=>D.kind==="date-time"?(0,l.singleWord)("Date"):(0,l.singleWord)("string"))}emitClassBlockBody(k){this.emitPropertyTable(k,(C,I,A)=>{const f=A.type;return[[(0,l.modifySource)(_,C),A.isOptional?"?":"",": "],[this.sourceFor(f).source,";"]]});const D=k.getAdditionalProperties();D&&this.emitTable([["[property: string]",": ",this.sourceFor(D).source,";"]])}emitClass(k,D){this.emitDescription(this.descriptionForType(k)),this.emitClassBlock(k,D)}emitUnion(k,D){if(!this._tsFlowOptions.declareUnions)return;this.emitDescription(this.descriptionForType(k));const C=(0,l.multiWord)(" | ",...Array.from(k.getChildren()).map(I=>(0,l.parenIfNeeded)(this.sourceFor(I))));this.emitLine("export type ",D," = ",C.source,";")}emitTypes(){this.forEachNamedType("leading-and-interposing",(k,D)=>this.emitClass(k,D),(k,D)=>this.emitEnum(k,D),(k,D)=>this.emitUnion(k,D))}emitUsageComments(){this._tsFlowOptions.justTypes||super.emitUsageComments()}deserializerFunctionLine(k,D){const C=this._tsFlowOptions.rawType==="json"?"string":"any";return["function to",D,"(json: ",C,"): ",this.sourceFor(k).source]}serializerFunctionLine(k,D){const C=(0,l.modifySource)(a.camelCase,D),I=this._tsFlowOptions.rawType==="json"?"string":"any";return["function ",C,"ToJson(value: ",this.sourceFor(k).source,"): ",I]}get moduleLine(){}get castFunctionLines(){return["function cast<T>(val: any, typ: any): T","function uncast<T>(val: T, typ: any): any"]}get typeAnnotations(){throw new Error("not implemented")}emitConvertModule(){this._tsFlowOptions.justTypes||super.emitConvertModule()}emitConvertModuleHelpers(){this._tsFlowOptions.justTypes||super.emitConvertModuleHelpers()}emitModuleExports(){this._tsFlowOptions.justTypes||super.emitModuleExports()}}e.TypeScriptFlowBaseRenderer=L;class g extends L{forbiddenNamesForGlobalNamespace(){return["Array","Date"]}deserializerFunctionLine(k,D){const C=this._tsFlowOptions.rawType==="json"?"string":"any";return["public static to",D,"(json: ",C,"): ",this.sourceFor(k).source]}serializerFunctionLine(k,D){const C=(0,l.modifySource)(a.camelCase,D),I=this._tsFlowOptions.rawType==="json"?"string":"any";return["public static ",C,"ToJson(value: ",this.sourceFor(k).source,"): ",I]}get moduleLine(){return"export class Convert"}get typeAnnotations(){return Object.assign({never:": never"},P)}emitModuleExports(){}emitUsageImportComment(){const k=[];this.forEachTopLevel("none",(D,C)=>{k.push(", ",C)},n.isNamedType),this.emitLine("// import { Convert",k,' } from "./file";')}emitEnum(k,D){if(this.emitDescription(this.descriptionForType(k)),this._tsFlowOptions.preferUnions){let C="";k.cases.forEach(I=>{if(C===""){C+=`"${(0,a.utf16StringEscape)(I)}"`;return}C+=` | "${(0,a.utf16StringEscape)(I)}"`}),this.emitLine("export type ",D," = ",C,";")}else this.emitBlock(["export enum ",D," "],"",()=>{this.forEachEnumCase(k,"none",(C,I)=>{this.emitLine(C,` = "${(0,a.utf16StringEscape)(I)}",`)})})}emitClassBlock(k,D){this.emitBlock(this._tsFlowOptions.preferTypes?["export type ",D," = "]:["export interface ",D," "],"",()=>{this.emitClassBlockBody(k)})}}e.TypeScriptRenderer=g;class y extends O{constructor(){super("Flow",["flow"],"js")}makeRenderer(k,D){return new h(this,k,(0,u.getOptionValues)(e.tsFlowOptions,D))}}e.FlowTargetLanguage=y;class h extends L{forbiddenNamesForGlobalNamespace(){return["Class","Date","Object","String","Array","JSON","Error"]}get typeAnnotations(){return Object.assign({never:""},P)}emitEnum(k,D){this.emitDescription(this.descriptionForType(k));const C=[];this.forEachEnumCase(k,"none",(I,A)=>{const f=C.length===0?" ":"| ";C.push([f,'"',(0,a.utf16StringEscape)(A),'"'])}),(0,w.defined)(C[C.length-1]).push(";"),this.emitLine("export type ",D," ="),this.indent(()=>{for(const I of C)this.emitLine(I)})}emitClassBlock(k,D){this.emitBlock(["export type ",D," = "],";",()=>{this.emitClassBlockBody(k)})}emitSourceStructure(){this.emitLine("// @flow"),this.ensureBlankLine(),super.emitSourceStructure()}}e.FlowRenderer=h}(Vl)),Vl}var Zl={},Lm;function fb(){return Lm||(Lm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SwiftRenderer=e.SwiftTargetLanguage=e.swiftOptions=void 0;const t=et(),n=Qe(),a=qt(),l=mt(),d=pt(),u=Ft(),c=zt(),w=Bt(),U=On(),P=Wt(),O=Nt(),R=Qe(),_=nb(),L=yr(),g=4;e.swiftOptions={justTypes:new c.BooleanOption("just-types","Plain types only",!1),convenienceInitializers:new c.BooleanOption("initializers","Generate initializers and mutators",!0),explicitCodingKeys:new c.BooleanOption("coding-keys","Explicit CodingKey values in Codable types",!0),alamofire:new c.BooleanOption("alamofire","Alamofire extensions",!1),namedTypePrefix:new c.StringOption("type-prefix","Prefix for type names","PREFIX","","secondary"),useClasses:new c.EnumOption("struct-or-class","Structs or classes",[["struct",!1],["class",!0]]),mutableProperties:new c.BooleanOption("mutable-properties","Use var instead of let for object properties",!1),acronymStyle:(0,L.acronymOption)(L.AcronymStyleOptions.Pascal),dense:new c.EnumOption("density","Code density",[["dense",!0],["normal",!1]],"dense","secondary"),linux:new c.BooleanOption("support-linux","Support Linux",!1,"secondary"),objcSupport:new c.BooleanOption("objective-c-support","Objects inherit from NSObject and @objcMembers is added to classes",!1),optionalEnums:new c.BooleanOption("optional-enums","If no matching case is found enum value is set to null",!1),swift5Support:new c.BooleanOption("swift-5-support","Renders output in a Swift 5 compatible mode",!1),multiFileOutput:new c.BooleanOption("multi-file-output","Renders each top-level object in its own Swift file",!1),accessLevel:new c.EnumOption("access-level","Access level",[["internal","internal"],["public","public"]],"internal","secondary"),protocol:new c.EnumOption("protocol","Make types implement protocol",[["none",{equatable:!1,hashable:!1}],["equatable",{equatable:!0,hashable:!1}],["hashable",{equatable:!1,hashable:!0}]],"none","secondary")};const y=/^\d+-\d+-\d+T\d+:\d+:\d+([zZ]|[+-]\d+(:\d+)?)$/;class h extends _.DefaultDateTimeRecognizer{isDateTime(m){return m.match(y)!==null}}class p extends a.TargetLanguage{constructor(){super("Swift",["swift","swift4"],"swift")}getOptions(){return[e.swiftOptions.justTypes,e.swiftOptions.useClasses,e.swiftOptions.dense,e.swiftOptions.convenienceInitializers,e.swiftOptions.explicitCodingKeys,e.swiftOptions.accessLevel,e.swiftOptions.alamofire,e.swiftOptions.linux,e.swiftOptions.namedTypePrefix,e.swiftOptions.protocol,e.swiftOptions.acronymStyle,e.swiftOptions.objcSupport,e.swiftOptions.optionalEnums,e.swiftOptions.swift5Support,e.swiftOptions.multiFileOutput,e.swiftOptions.mutableProperties]}get stringTypeMapping(){const m=new Map;return m.set("date-time","date-time"),m}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(m,r){return new b(this,m,(0,c.getOptionValues)(e.swiftOptions,r))}get dateTimeRecognizer(){return new h}}e.SwiftTargetLanguage=p;const k=["await","associatedtype","class","deinit","enum","extension","fileprivate","func","import","init","inout","internal","let","open","operator","private","protocol","public","static","struct","subscript","typealias","var","break","case","continue","default","defer","do","else","fallthrough","for","guard","if","in","repeat","return","switch","where","while","as","Any","catch","false","is","nil","rethrows","super","self","Self","throw","throws","true","try","_","associativity","convenience","dynamic","didSet","final","get","infix","indirect","lazy","left","mutating","nonmutating","optional","override","postfix","precedence","prefix","Protocol","required","right","set","Type","unowned","weak","willSet","String","Int","Double","Bool","Data","Date","URL","CommandLine","FileHandle","JSONSerialization","checkNull","removeNSNull","nilToNSNull","convertArray","convertOptional","convertDict","convertDouble","jsonString","jsonData"];function D(F){return(0,O.isLetterOrUnderscore)(F)||(0,O.isNumeric)(F)}function C(F){return D(F)&&!(0,O.isDigit)(F)}const I=(0,O.legalizeCharacters)(D);function A(F,m,r,s=O.allUpperWordStyle){const T=(0,O.splitIntoWords)(r),v=(0,O.combineWords)(T,I,m?O.firstUpperWordStyle:O.allLowerWordStyle,O.firstUpperWordStyle,m?O.allUpperWordStyle:O.allLowerWordStyle,s,"",C);return(0,O.addPrefixIfNecessary)(F,v)}function f(F){return"\\u{"+(0,O.intToHex)(F,0)+"}"}const E=(0,O.utf32ConcatMap)((0,O.escapeNonPrintableMapper)(O.isPrintable,f));class b extends P.ConvenienceRenderer{constructor(m,r,s){super(m,r),this._options=s,this._needAny=!1,this._needNull=!1,this.emitSupportFunctions4=()=>{this.startFile("JSONSchemaSupport"),this.emitLineOnce("import Foundation"),this.forEachTopLevel("leading",(T,v)=>this.renderTopLevelAlias(T,v),T=>this.namedTypeToNameForTopLevel(T)===void 0),this._options.convenienceInitializers&&(this.ensureBlankLine(),this.forEachTopLevel("leading-and-interposing",(T,v)=>this.emitTopLevelMapAndArrayConvenienceInitializerExtensions(T,v))),(!this._options.justTypes&&this._options.convenienceInitializers||this._options.alamofire)&&(this.ensureBlankLine(),this.emitMark("Helper functions for creating encoders and decoders",!0),this.ensureBlankLine(),this.emitNewEncoderDecoder()),this._options.alamofire&&(this.ensureBlankLine(),this.emitMark("Alamofire response handlers",!0),this.ensureBlankLine(),this.emitAlamofireExtension()),(this._needAny||this._needNull)&&(this.ensureBlankLine(),this.emitMark("Encode/decode helpers",!0),this.ensureBlankLine(),this._options.objcSupport?this.emitLine(this.objcMembersDeclaration,this.accessLevel,"class JSONNull: NSObject, Codable {"):this.emitLine(this.accessLevel,"class JSONNull: Codable, Hashable {"),this.ensureBlankLine(),this.emitMultiline(` public static func == (lhs: JSONNull, rhs: JSONNull) -> Bool {
571
+ return true
572
+ }`),this._options.objcSupport===!1&&(this.ensureBlankLine(),this.emitMultiline(` public var hashValue: Int {
573
+ return 0
574
+ }`),this._options.swift5Support&&(this.ensureBlankLine(),this.emitMultiline(` public func hash(into hasher: inout Hasher) {
575
+ // No-op
576
+ }`))),this.ensureBlankLine(),this._options.objcSupport?this.emitItem(" override "):this.emitItem(" "),this.emitMultiline(`public init() {}
577
+
578
+ public required init(from decoder: Decoder) throws {
579
+ let container = try decoder.singleValueContainer()
580
+ if !container.decodeNil() {
581
+ throw DecodingError.typeMismatch(JSONNull.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for JSONNull"))
582
+ }
583
+ }
584
+
585
+ public func encode(to encoder: Encoder) throws {
586
+ var container = encoder.singleValueContainer()
587
+ try container.encodeNil()
588
+ }
589
+ }`)),this._needAny&&(this.ensureBlankLine(),this.emitMultiline(`class JSONCodingKey: CodingKey {
590
+ let key: String
591
+
592
+ required init?(intValue: Int) {
593
+ return nil
594
+ }
595
+
596
+ required init?(stringValue: String) {
597
+ key = stringValue
598
+ }
599
+
600
+ var intValue: Int? {
601
+ return nil
602
+ }
603
+
604
+ var stringValue: String {
605
+ return key
606
+ }
607
+ }`),this.ensureBlankLine(),this._options.objcSupport?this.emitLine(this.objcMembersDeclaration,this.accessLevel,"class JSONAny: NSObject, Codable {"):this.emitLine(this.accessLevel,"class JSONAny: Codable {"),this.ensureBlankLine(),this.emitMultiline(` ${this.accessLevel}let value: Any
608
+
609
+ static func decodingError(forCodingPath codingPath: [CodingKey]) -> DecodingError {
610
+ let context = DecodingError.Context(codingPath: codingPath, debugDescription: "Cannot decode JSONAny")
611
+ return DecodingError.typeMismatch(JSONAny.self, context)
612
+ }
613
+
614
+ static func encodingError(forValue value: Any, codingPath: [CodingKey]) -> EncodingError {
615
+ let context = EncodingError.Context(codingPath: codingPath, debugDescription: "Cannot encode JSONAny")
616
+ return EncodingError.invalidValue(value, context)
617
+ }
618
+
619
+ static func decode(from container: SingleValueDecodingContainer) throws -> Any {
620
+ if let value = try? container.decode(Bool.self) {
621
+ return value
622
+ }
623
+ if let value = try? container.decode(Int64.self) {
624
+ return value
625
+ }
626
+ if let value = try? container.decode(Double.self) {
627
+ return value
628
+ }
629
+ if let value = try? container.decode(String.self) {
630
+ return value
631
+ }
632
+ if container.decodeNil() {
633
+ return JSONNull()
634
+ }
635
+ throw decodingError(forCodingPath: container.codingPath)
636
+ }
637
+
638
+ static func decode(from container: inout UnkeyedDecodingContainer) throws -> Any {
639
+ if let value = try? container.decode(Bool.self) {
640
+ return value
641
+ }
642
+ if let value = try? container.decode(Int64.self) {
643
+ return value
644
+ }
645
+ if let value = try? container.decode(Double.self) {
646
+ return value
647
+ }
648
+ if let value = try? container.decode(String.self) {
649
+ return value
650
+ }
651
+ if let value = try? container.decodeNil() {
652
+ if value {
653
+ return JSONNull()
654
+ }
655
+ }
656
+ if var container = try? container.nestedUnkeyedContainer() {
657
+ return try decodeArray(from: &container)
658
+ }
659
+ if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self) {
660
+ return try decodeDictionary(from: &container)
661
+ }
662
+ throw decodingError(forCodingPath: container.codingPath)
663
+ }
664
+
665
+ static func decode(from container: inout KeyedDecodingContainer<JSONCodingKey>, forKey key: JSONCodingKey) throws -> Any {
666
+ if let value = try? container.decode(Bool.self, forKey: key) {
667
+ return value
668
+ }
669
+ if let value = try? container.decode(Int64.self, forKey: key) {
670
+ return value
671
+ }
672
+ if let value = try? container.decode(Double.self, forKey: key) {
673
+ return value
674
+ }
675
+ if let value = try? container.decode(String.self, forKey: key) {
676
+ return value
677
+ }
678
+ if let value = try? container.decodeNil(forKey: key) {
679
+ if value {
680
+ return JSONNull()
681
+ }
682
+ }
683
+ if var container = try? container.nestedUnkeyedContainer(forKey: key) {
684
+ return try decodeArray(from: &container)
685
+ }
686
+ if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key) {
687
+ return try decodeDictionary(from: &container)
688
+ }
689
+ throw decodingError(forCodingPath: container.codingPath)
690
+ }
691
+
692
+ static func decodeArray(from container: inout UnkeyedDecodingContainer) throws -> [Any] {
693
+ var arr: [Any] = []
694
+ while !container.isAtEnd {
695
+ let value = try decode(from: &container)
696
+ arr.append(value)
697
+ }
698
+ return arr
699
+ }
700
+
701
+ static func decodeDictionary(from container: inout KeyedDecodingContainer<JSONCodingKey>) throws -> [String: Any] {
702
+ var dict = [String: Any]()
703
+ for key in container.allKeys {
704
+ let value = try decode(from: &container, forKey: key)
705
+ dict[key.stringValue] = value
706
+ }
707
+ return dict
708
+ }
709
+
710
+ static func encode(to container: inout UnkeyedEncodingContainer, array: [Any]) throws {
711
+ for value in array {
712
+ if let value = value as? Bool {
713
+ try container.encode(value)
714
+ } else if let value = value as? Int64 {
715
+ try container.encode(value)
716
+ } else if let value = value as? Double {
717
+ try container.encode(value)
718
+ } else if let value = value as? String {
719
+ try container.encode(value)
720
+ } else if value is JSONNull {
721
+ try container.encodeNil()
722
+ } else if let value = value as? [Any] {
723
+ var container = container.nestedUnkeyedContainer()
724
+ try encode(to: &container, array: value)
725
+ } else if let value = value as? [String: Any] {
726
+ var container = container.nestedContainer(keyedBy: JSONCodingKey.self)
727
+ try encode(to: &container, dictionary: value)
728
+ } else {
729
+ throw encodingError(forValue: value, codingPath: container.codingPath)
730
+ }
731
+ }
732
+ }
733
+
734
+ static func encode(to container: inout KeyedEncodingContainer<JSONCodingKey>, dictionary: [String: Any]) throws {
735
+ for (key, value) in dictionary {
736
+ let key = JSONCodingKey(stringValue: key)!
737
+ if let value = value as? Bool {
738
+ try container.encode(value, forKey: key)
739
+ } else if let value = value as? Int64 {
740
+ try container.encode(value, forKey: key)
741
+ } else if let value = value as? Double {
742
+ try container.encode(value, forKey: key)
743
+ } else if let value = value as? String {
744
+ try container.encode(value, forKey: key)
745
+ } else if value is JSONNull {
746
+ try container.encodeNil(forKey: key)
747
+ } else if let value = value as? [Any] {
748
+ var container = container.nestedUnkeyedContainer(forKey: key)
749
+ try encode(to: &container, array: value)
750
+ } else if let value = value as? [String: Any] {
751
+ var container = container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key)
752
+ try encode(to: &container, dictionary: value)
753
+ } else {
754
+ throw encodingError(forValue: value, codingPath: container.codingPath)
755
+ }
756
+ }
757
+ }
758
+
759
+ static func encode(to container: inout SingleValueEncodingContainer, value: Any) throws {
760
+ if let value = value as? Bool {
761
+ try container.encode(value)
762
+ } else if let value = value as? Int64 {
763
+ try container.encode(value)
764
+ } else if let value = value as? Double {
765
+ try container.encode(value)
766
+ } else if let value = value as? String {
767
+ try container.encode(value)
768
+ } else if value is JSONNull {
769
+ try container.encodeNil()
770
+ } else {
771
+ throw encodingError(forValue: value, codingPath: container.codingPath)
772
+ }
773
+ }
774
+
775
+ public required init(from decoder: Decoder) throws {
776
+ if var arrayContainer = try? decoder.unkeyedContainer() {
777
+ self.value = try JSONAny.decodeArray(from: &arrayContainer)
778
+ } else if var container = try? decoder.container(keyedBy: JSONCodingKey.self) {
779
+ self.value = try JSONAny.decodeDictionary(from: &container)
780
+ } else {
781
+ let container = try decoder.singleValueContainer()
782
+ self.value = try JSONAny.decode(from: container)
783
+ }
784
+ }
785
+
786
+ public func encode(to encoder: Encoder) throws {
787
+ if let arr = self.value as? [Any] {
788
+ var container = encoder.unkeyedContainer()
789
+ try JSONAny.encode(to: &container, array: arr)
790
+ } else if let dict = self.value as? [String: Any] {
791
+ var container = encoder.container(keyedBy: JSONCodingKey.self)
792
+ try JSONAny.encode(to: &container, dictionary: dict)
793
+ } else {
794
+ var container = encoder.singleValueContainer()
795
+ try JSONAny.encode(to: &container, value: self.value)
796
+ }
797
+ }
798
+ }`)),this.endFile()}}forbiddenNamesForGlobalNamespace(){return this._options.alamofire?["DataRequest",...k]:k}forbiddenForObjectProperties(m,r){return{names:["fromURL","json"],includeGlobalForbidden:!0}}forbiddenForEnumCases(m,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(m,r){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("upper",m=>A(this._options.namedTypePrefix,!0,m,(0,L.acronymStyle)(this._options.acronymStyle)))}namerForObjectProperty(){return this.lowerNamingFunction}makeUnionMemberNamer(){return this.lowerNamingFunction}makeEnumCaseNamer(){return this.lowerNamingFunction}isImplicitCycleBreaker(m){const r=m.kind;return r==="array"||r==="map"}emitDescriptionBlock(m){this.emitCommentLines(m,"/// ")}emitBlock(m,r){this.emitLine(m," {"),this.indent(r),this.emitLine("}")}emitBlockWithAccess(m,r){this.emitBlock([this.accessLevel,m],r)}justTypesCase(m,r){return this._options.justTypes?m:r}get lowerNamingFunction(){return(0,u.funPrefixNamer)("lower",m=>A("",!1,m,(0,L.acronymStyle)(this._options.acronymStyle)))}swiftPropertyType(m){return m.isOptional||this._options.optionalEnums&&m.type.kind==="enum"?[this.swiftType(m.type,!0,!0),"?"]:this.swiftType(m.type,!0)}swiftType(m,r=!1,s=!1){const T=s?"":"?";return(0,d.matchType)(m,v=>(this._needAny=!0,(0,w.maybeAnnotated)(r,U.anyTypeIssueAnnotation,this.justTypesCase(["Any",T],"JSONAny"))),v=>(this._needNull=!0,(0,w.maybeAnnotated)(r,U.nullTypeIssueAnnotation,this.justTypesCase("NSNull",["JSONNull",T]))),v=>"Bool",v=>"Int",v=>"Double",v=>"String",v=>["[",this.swiftType(v.items,r),"]"],v=>this.nameForNamedType(v),v=>["[String: ",this.swiftType(v.values,r),"]"],v=>this.nameForNamedType(v),v=>{const M=(0,d.nullableFromUnion)(v);return M!==null?[this.swiftType(M,r),T]:this.nameForNamedType(v)},v=>v.kind==="date-time"?"Date":(0,R.panic)(`Transformed string type ${v.kind} not supported`))}proposedUnionMemberNameForTypeKind(m){return m==="enum"?"enumeration":m==="union"?"one_of":null}renderSingleFileHeaderComments(){this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse the JSON, add this file to your project and do:"),this.emitLineOnce("//"),this.forEachTopLevel("none",(m,r)=>{this._options.convenienceInitializers&&!(m instanceof l.EnumType)?this.emitLineOnce("// let ",(0,w.modifySource)(O.camelCase,r)," = try ",r,"(json)"):this.emitLineOnce("// let ",(0,w.modifySource)(O.camelCase,r)," = ","try? JSONDecoder().decode(",r,".self, from: jsonData)")})}renderHeader(m,r){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this._options.multiFileOutput&&(this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse the JSON, add this file to your project and do:"),this.emitLineOnce("//"),this._options.convenienceInitializers&&!(m instanceof l.EnumType)?this.emitLine("// let ",(0,w.modifySource)(O.camelCase,r)," = try ",r,"(json)"):this.emitLine("// let ",(0,w.modifySource)(O.camelCase,r)," = ","try? newJSONDecoder().decode(",r,".self, from: jsonData)")),this._options.alamofire&&(this.emitLine("//"),this.emitLine("// To parse values from Alamofire responses:"),this.emitLine("//"),this.emitLine("// Alamofire.request(url).response",r," { response in"),this.emitLine("// if let ",(0,w.modifySource)(O.camelCase,r)," = response.result.value {"),this.emitLine("// ..."),this.emitLine("// }"),this.emitLine("// }")),(this._options.protocol.hashable||this._options.protocol.equatable)&&(this.emitLine("//"),this.emitLine("// Hashable or Equatable:"),this.emitLine("// The compiler will not be able to synthesize the implementation of Hashable or Equatable"),this.emitLine("// for types that require the use of JSONAny, nor will the implementation of Hashable be"),this.emitLine("// synthesized for types that have collections (such as arrays or dictionaries)."))),this.ensureBlankLine(),this.emitLineOnce("import Foundation"),!this._options.justTypes&&this._options.alamofire&&this.emitLineOnce("import Alamofire"),this.ensureBlankLine()}renderTopLevelAlias(m,r){this.emitLine(this.accessLevel,"typealias ",r," = ",this.swiftType(m,!0))}getProtocolsArray(m,r){const s=[];return r&&this._options.objcSupport&&s.push("NSObject"),this._options.justTypes||s.push("Codable"),this._options.protocol.hashable&&s.push("Hashable"),this._options.protocol.equatable&&s.push("Equatable"),s}getProtocolString(m,r){const s=this.getProtocolsArray(m,r);return s.length>0?": "+s.join(", "):""}getEnumPropertyGroups(m){let r=[],s=[];return this.forEachClassProperty(m,"none",(T,v)=>{const M=E(v),x=this.sourcelikeToString(T)===M;this._options.dense&&x?s.push({name:T}):(s.length>0&&(r.push(s),s=[]),r.push([{name:T,label:M}]))}),s.length>0&&r.push(s),r}get accessLevel(){return this._options.accessLevel==="internal"?"":this._options.accessLevel+" "}get objcMembersDeclaration(){return this._options.objcSupport?"@objcMembers ":""}startFile(m){this._options.multiFileOutput!==!1&&((0,n.assert)(this._currentFilename===void 0,"Previous file wasn't finished: "+this._currentFilename),this._currentFilename=`${this.sourcelikeToString(m)}.swift`,this.initializeEmitContextForFilename(this._currentFilename))}endFile(){this._options.multiFileOutput!==!1&&(this.finishFile((0,n.defined)(this._currentFilename)),this._currentFilename=void 0)}propertyLinesDefinition(m,r){const s=this._options.mutableProperties;return[this.accessLevel,s?"var ":"let ",m,": ",this.swiftPropertyType(r)]}renderClassDefinition(m,r){this.startFile(r),this.renderHeader(m,r),this.emitDescription(this.descriptionForType(m)),this.emitMark(this.sourcelikeToString(r),!0);const s=this._options.useClasses||this.isCycleBreakerType(m),T=s?"class":"struct";s&&this._options.objcSupport&&this.emitItem(this.objcMembersDeclaration),this.emitBlockWithAccess([T," ",r,this.getProtocolString(m,s)],()=>{if(this._options.dense){let v,M=[];const x=()=>{if(v===void 0)return;const W=this._options.mutableProperties;let S=[[this._options.optionalEnums&&v.type.kind==="enum"?`@NilOnFail${this._options.namedTypePrefix} `:"",this.accessLevel,W||this._options.optionalEnums&&v.type.kind==="enum"?"var ":"let "]];M.forEach((B,q)=>{q>0&&S.push(", "),S.push(B)}),S.push(": "),S.push(this.swiftPropertyType(v)),this.emitLine(S),v=void 0,M=[]};this.forEachClassProperty(m,"none",(W,S,B)=>{const q=this.descriptionForClassProperty(m,S);(!B.equals(v)||M.length>=g||q!==void 0)&&x(),v===void 0&&(v=B),M.push(W),q!==void 0&&(this.emitDescription(q),x())}),x()}else this.forEachClassProperty(m,"none",(v,M,x)=>{const W=this.descriptionForClassProperty(m,M),S=this.propertyLinesDefinition(v,x);this.emitDescription(W),this.emitLine(S)});if(!this._options.justTypes){const v=this.getEnumPropertyGroups(m);!v.every(x=>x.every(W=>W.label===void 0))&&m.getProperties().size>0&&(this.ensureBlankLine(),this.emitBlock("enum CodingKeys: String, CodingKey",()=>{for(const x of v){const{name:W,label:S}=x[0];if(this._options.explicitCodingKeys&&S!==void 0)this.emitLine("case ",W,' = "',S,'"');else{const B=(0,t.arrayIntercalate)(", ",x.map(q=>q.name));this.emitLine("case ",B)}}}))}if(s||this._options.accessLevel==="public"){this.ensureBlankLine();let v=this.initializableProperties(m),M=[];for(let x of v)M.length>0&&M.push(", "),M.push(x.name,": ",this.swiftPropertyType(x.parameter));this.propertyCount(m)===0&&this._options.objcSupport?this.emitBlockWithAccess(["override init()"],()=>""):this.emitBlockWithAccess(["init(",...M,")"],()=>{for(let x of v)this.emitLine("self.",x.name," = ",x.name)})}}),this._options.justTypes||this._options.convenienceInitializers&&(this.ensureBlankLine(),this.emitMark(this.sourcelikeToString(r)+" convenience initializers and mutators"),this.ensureBlankLine(),this.emitConvenienceInitializersExtension(m,r),this.ensureBlankLine()),this.endFile()}initializableProperties(m){const r=[];return this.forEachClassProperty(m,"none",(s,T,v,M)=>{const x={name:s,jsonName:T,parameter:v,position:M};r.push(x)}),r}emitNewEncoderDecoder(){this.emitBlock("func newJSONDecoder() -> JSONDecoder",()=>{this.emitLine("let decoder = JSONDecoder()"),this._options.linux?this.emitMultiline(`decoder.dateDecodingStrategy = .custom({ (decoder) -> Date in
799
+ let container = try decoder.singleValueContainer()
800
+ let dateStr = try container.decode(String.self)
801
+
802
+ let formatter = DateFormatter()
803
+ formatter.calendar = Calendar(identifier: .iso8601)
804
+ formatter.locale = Locale(identifier: "en_US_POSIX")
805
+ formatter.timeZone = TimeZone(secondsFromGMT: 0)
806
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSXXXXX"
807
+ if let date = formatter.date(from: dateStr) {
808
+ return date
809
+ }
810
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssXXXXX"
811
+ if let date = formatter.date(from: dateStr) {
812
+ return date
813
+ }
814
+ throw DecodingError.typeMismatch(Date.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Could not decode date"))
815
+ })`):this.emitBlock("if #available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *)",()=>{this.emitLine("decoder.dateDecodingStrategy = .iso8601")}),this.emitLine("return decoder")}),this.ensureBlankLine(),this.emitBlock("func newJSONEncoder() -> JSONEncoder",()=>{this.emitLine("let encoder = JSONEncoder()"),this._options.linux?this.emitMultiline(`let formatter = DateFormatter()
816
+ formatter.calendar = Calendar(identifier: .iso8601)
817
+ formatter.locale = Locale(identifier: "en_US_POSIX")
818
+ formatter.timeZone = TimeZone(secondsFromGMT: 0)
819
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssXXXXX"
820
+ encoder.dateEncodingStrategy = .formatted(formatter)`):this.emitBlock("if #available(iOS 10.0, OSX 10.12, tvOS 10.0, watchOS 3.0, *)",()=>{this.emitLine("encoder.dateEncodingStrategy = .iso8601")}),this.emitLine("return encoder")})}emitConvenienceInitializersExtension(m,r){const s=this._options.useClasses||this.isCycleBreakerType(m),T=s?"convenience ":"";this.emitBlockWithAccess(["extension ",r],()=>{s?this.emitBlock("convenience init(data: Data) throws",()=>{this.propertyCount(m)>0?this.emitLine("let me = try newJSONDecoder().decode(",this.swiftType(m),".self, from: data)"):this.emitLine("let _ = try newJSONDecoder().decode(",this.swiftType(m),".self, from: data)");let v=[];this.forEachClassProperty(m,"none",M=>{v.length>0&&v.push(", "),v.push(M,": ","me.",M)}),this.emitLine("self.init(",...v,")")}):this.emitBlock("init(data: Data) throws",()=>{this.emitLine("self = try newJSONDecoder().decode(",this.swiftType(m),".self, from: data)")}),this.ensureBlankLine(),this.emitBlock([T,"init(_ json: String, using encoding: String.Encoding = .utf8) throws"],()=>{this.emitBlock("guard let data = json.data(using: encoding) else",()=>{this.emitLine('throw NSError(domain: "JSONDecoding", code: 0, userInfo: nil)')}),this.emitLine("try self.init(data: data)")}),this.ensureBlankLine(),this.emitBlock([T,"init(fromURL url: URL) throws"],()=>{this.emitLine("try self.init(data: try Data(contentsOf: url))")}),this.ensureBlankLine(),this.emitConvenienceMutator(m,r),this.ensureBlankLine(),this.emitBlock("func jsonData() throws -> Data",()=>{this.emitLine("return try newJSONEncoder().encode(self)")}),this.ensureBlankLine(),this.emitBlock("func jsonString(encoding: String.Encoding = .utf8) throws -> String?",()=>{this.emitLine("return String(data: try self.jsonData(), encoding: encoding)")})})}renderEnumDefinition(m,r){this.startFile(r),this.emitLineOnce("import Foundation"),this.ensureBlankLine(),this.emitDescription(this.descriptionForType(m));const s=[];this._options.justTypes||(s.push("String"),s.push("Codable")),this._options.protocol.hashable&&s.push("Hashable"),this._options.protocol.equatable&&s.push("Equatable");const T=s.length>0?": "+s.join(", "):"";this._options.justTypes?this.emitBlockWithAccess(["enum ",r,T],()=>{this.forEachEnumCase(m,"none",v=>{this.emitLine("case ",v)})}):this.emitBlockWithAccess(["enum ",r,T],()=>{this.forEachEnumCase(m,"none",(v,M)=>{this.emitLine("case ",v,' = "',E(M),'"')})}),this.endFile()}renderUnionDefinition(m,r){this.startFile(r),this.emitLineOnce("import Foundation"),this.ensureBlankLine();function s(W){const S=W.kind;return S==="class"?S:"_"+S}const T=W=>{this.emitBlock(["if let x = try? container.decode(",this.swiftType(W),".self)"],()=>{this.emitLine("self = .",this.nameForUnionMember(m,W),"(x)"),this.emitLine("return")})};this.emitDescription(this.descriptionForType(m));const v=this.isCycleBreakerType(m)?"indirect ":"",[M,x]=(0,d.removeNullFromUnion)(m,s);this.emitBlockWithAccess([v,"enum ",r,this.getProtocolString(m,!1)],()=>{this.forEachUnionMember(m,x,"none",null,(W,S)=>{this.emitLine("case ",W,"(",this.swiftType(S),")")}),M!==null&&this.emitLine("case ",this.nameForUnionMember(m,M)),this._options.justTypes||(this.ensureBlankLine(),this.emitBlockWithAccess("init(from decoder: Decoder) throws",()=>{this.emitLine("let container = try decoder.singleValueContainer()");const W=m.findMember("bool");W!==void 0&&T(W);const S=m.findMember("integer");S!==void 0&&T(S);for(const B of x)B.kind==="bool"||B.kind==="integer"||T(B);M!==null&&this.emitBlock("if container.decodeNil()",()=>{this.emitLine("self = .",this.nameForUnionMember(m,M)),this.emitLine("return")}),this.emitDecodingError(r)}),this.ensureBlankLine(),this.emitBlockWithAccess("func encode(to encoder: Encoder) throws",()=>{this.emitLine("var container = encoder.singleValueContainer()"),this.emitLine("switch self {"),this.forEachUnionMember(m,x,"none",null,(W,S)=>{this.emitLine("case .",W,"(let x):"),this.indent(()=>this.emitLine("try container.encode(x)"))}),M!==null&&(this.emitLine("case .",this.nameForUnionMember(m,M),":"),this.indent(()=>this.emitLine("try container.encodeNil()"))),this.emitLine("}")}))}),this.endFile()}emitTopLevelMapAndArrayConvenienceInitializerExtensions(m,r){let s;if(m instanceof l.ArrayType)s=["Array where Element == ",r,".Element"];else if(m instanceof l.MapType)s=["Dictionary where Key == String, Value == ",this.swiftType(m.values)];else return;this.emitBlockWithAccess(["extension ",s],()=>{this.emitBlock(["init(data: Data) throws"],()=>{this.emitLine("self = try newJSONDecoder().decode(",r,".self, from: data)")}),this.ensureBlankLine(),this.emitBlock("init(_ json: String, using encoding: String.Encoding = .utf8) throws",()=>{this.emitBlock("guard let data = json.data(using: encoding) else",()=>{this.emitLine('throw NSError(domain: "JSONDecoding", code: 0, userInfo: nil)')}),this.emitLine("try self.init(data: data)")}),this.ensureBlankLine(),this.emitBlock("init(fromURL url: URL) throws",()=>{this.emitLine("try self.init(data: try Data(contentsOf: url))")}),this.ensureBlankLine(),this.emitBlock("func jsonData() throws -> Data",()=>{this.emitLine("return try newJSONEncoder().encode(self)")}),this.ensureBlankLine(),this.emitBlock("func jsonString(encoding: String.Encoding = .utf8) throws -> String?",()=>{this.emitLine("return String(data: try self.jsonData(), encoding: encoding)")})})}emitDecodingError(m){this.emitLine("throw DecodingError.typeMismatch(",m,'.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for ',m,'"))')}emitConvenienceMutator(m,r){this.emitLine("func with("),this.indent(()=>{this.forEachClassProperty(m,"none",(s,T,v,M)=>{this.emitLine(s,": ",this.swiftPropertyType(v),"? = nil",M!=="only"&&M!=="last"?",":"")})}),this.emitBlock([") -> ",r],()=>{this.emitLine("return ",r,"("),this.indent(()=>{this.forEachClassProperty(m,"none",(s,T,v,M)=>{this.emitLine(s,": ",s," ?? self.",s,M!=="only"&&M!=="last"?",":"")})}),this.emitLine(")")})}emitMark(m,r=!1){this.emitLine("// MARK:",r?" - ":" ",m)}emitSourceStructure(){this._options.multiFileOutput===!1&&this.renderSingleFileHeaderComments(),this.forEachNamedType("leading-and-interposing",(m,r)=>this.renderClassDefinition(m,r),(m,r)=>this.renderEnumDefinition(m,r),(m,r)=>this.renderUnionDefinition(m,r)),this._options.justTypes||this.emitSupportFunctions4(),this._options.optionalEnums&&this.emitBlockWithAccess(`@propertyWrapper public struct NilOnFail${this._options.namedTypePrefix}<T: Codable>: Codable`,()=>{this.emitMultiline(`
821
+ public let wrappedValue: T?
822
+ public init(from decoder: Decoder) throws {
823
+ wrappedValue = try? T(from: decoder)
824
+ }
825
+ public init(_ wrappedValue: T?) {
826
+ self.wrappedValue = wrappedValue
827
+ }`)})}emitAlamofireExtension(){this.ensureBlankLine(),this.emitBlockWithAccess("extension DataRequest",()=>{this.emitMultiline(`fileprivate func decodableResponseSerializer<T: Decodable>() -> DataResponseSerializer<T> {
828
+ return DataResponseSerializer { _, response, data, error in
829
+ guard error == nil else { return .failure(error!) }
830
+
831
+ guard let data = data else {
832
+ return .failure(AFError.responseSerializationFailed(reason: .inputDataNil))
833
+ }
834
+
835
+ return Result { try newJSONDecoder().decode(T.self, from: data) }
836
+ }
837
+ }
838
+
839
+ @discardableResult
840
+ fileprivate func responseDecodable<T: Decodable>(queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse<T>) -> Void) -> Self {
841
+ return response(queue: queue, responseSerializer: decodableResponseSerializer(), completionHandler: completionHandler)
842
+ }`),this.ensureBlankLine(),this.forEachTopLevel("leading-and-interposing",(m,r)=>{this.emitLine("@discardableResult"),this.emitBlock(["func response",r,"(queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse<",r,">) -> Void) -> Self"],()=>{this.emitLine("return responseDecodable(queue: queue, completionHandler: completionHandler)")})})})}}e.SwiftRenderer=b}(Zl)),Zl}var Ql={},_m;function db(){return _m||(_m=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.KotlinXRenderer=e.KotlinJacksonRenderer=e.KotlinKlaxonRenderer=e.KotlinRenderer=e.KotlinTargetLanguage=e.kotlinOptions=e.Framework=void 0;const t=et(),n=On(),a=Wt(),l=Ft(),d=zt(),u=Bt(),c=Nt(),w=Qe(),U=qt(),P=mt(),O=pt(),R=yr();var _;(function(F){F[F.None=0]="None",F[F.Jackson=1]="Jackson",F[F.Klaxon=2]="Klaxon",F[F.KotlinX=3]="KotlinX"})(_=e.Framework||(e.Framework={})),e.kotlinOptions={framework:new d.EnumOption("framework","Serialization framework",[["just-types",_.None],["jackson",_.Jackson],["klaxon",_.Klaxon],["kotlinx",_.KotlinX]],"klaxon"),acronymStyle:(0,R.acronymOption)(R.AcronymStyleOptions.Pascal),packageName:new d.StringOption("package","Package","PACKAGE","quicktype")};class L extends U.TargetLanguage{constructor(){super("Kotlin",["kotlin"],"kt")}getOptions(){return[e.kotlinOptions.framework,e.kotlinOptions.acronymStyle,e.kotlinOptions.packageName]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(m,r){const s=(0,d.getOptionValues)(e.kotlinOptions,r);switch(s.framework){case _.None:return new A(this,m,s);case _.Jackson:return new E(this,m,s);case _.Klaxon:return new f(this,m,s);case _.KotlinX:return new b(this,m,s);default:return(0,w.assertNever)(s.framework)}}}e.KotlinTargetLanguage=L;const g=["package","as","typealias","class","this","super","val","var","fun","for","null","true","false","is","in","throw","return","break","continue","object","if","try","else","while","do","when","interface","typeof","klaxon","toJson","Any","Boolean","Double","Float","Long","Int","Short","System","Byte","String","Array","List","Map","Enum","Class","JsonObject","JsonValue","Converter","Klaxon"];function y(F){return(0,c.isLetterOrUnderscore)(F)||(0,c.isNumeric)(F)}function h(F){return y(F)&&!(0,c.isDigit)(F)}const p=(0,c.legalizeCharacters)(y);function k(F,m,r=c.allUpperWordStyle){const s=(0,c.splitIntoWords)(m);return(0,c.combineWords)(s,p,F?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,F?c.allUpperWordStyle:c.allLowerWordStyle,r,"",h)}function D(F){return"\\u"+(0,c.intToHex)(F,4)}const C=(0,c.utf32ConcatMap)((0,c.escapeNonPrintableMapper)(c.isPrintable,D));function I(F){return C(F).replace(/\$/g,"\\$")}class A extends a.ConvenienceRenderer{constructor(m,r,s){super(m,r),this._kotlinOptions=s}forbiddenNamesForGlobalNamespace(){return g}forbiddenForObjectProperties(m,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(m,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(m,r){return{names:[],includeGlobalForbidden:!1}}topLevelNameStyle(m){return k(!0,m)}makeNamedTypeNamer(){return(0,l.funPrefixNamer)("upper",m=>k(!0,m,(0,R.acronymStyle)(this._kotlinOptions.acronymStyle)))}namerForObjectProperty(){return(0,l.funPrefixNamer)("lower",m=>k(!1,m,(0,R.acronymStyle)(this._kotlinOptions.acronymStyle)))}makeUnionMemberNamer(){return(0,l.funPrefixNamer)("upper",m=>k(!0,m)+"Value")}makeEnumCaseNamer(){return(0,l.funPrefixNamer)("upper",m=>k(!0,m,(0,R.acronymStyle)(this._kotlinOptions.acronymStyle)))}emitDescriptionBlock(m){this.emitCommentLines(m," * ","/**"," */")}emitBlock(m,r,s="curly"){const[T,v]=s==="curly"?["{","}"]:s==="paren"?["(",")"]:["{","})"];this.emitLine(m," ",T),this.indent(r),this.emitLine(v)}anySourceType(m){return["Any",m]}arrayType(m,r=!1,s=!1){return["List<",this.kotlinType(m.items,r),">"]}mapType(m,r=!1,s=!1){return["Map<String, ",this.kotlinType(m.values,r),">"]}kotlinType(m,r=!1,s=!1){const T=s?"":"?";return(0,O.matchType)(m,v=>(0,u.maybeAnnotated)(r,n.anyTypeIssueAnnotation,this.anySourceType(T)),v=>(0,u.maybeAnnotated)(r,n.nullTypeIssueAnnotation,this.anySourceType(T)),v=>"Boolean",v=>"Long",v=>"Double",v=>"String",v=>this.arrayType(v,r),v=>this.nameForNamedType(v),v=>this.mapType(v,r),v=>this.nameForNamedType(v),v=>{const M=(0,O.nullableFromUnion)(v);return M!==null?[this.kotlinType(M,r),T]:this.nameForNamedType(v)})}emitUsageHeader(){}emitHeader(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageHeader(),this.ensureBlankLine(),this.emitLine("package ",this._kotlinOptions.packageName),this.ensureBlankLine()}emitTopLevelArray(m,r){const s=this.kotlinType(m.items);this.emitLine(["typealias ",r," = ArrayList<",s,">"])}emitTopLevelMap(m,r){const s=this.kotlinType(m.values);this.emitLine(["typealias ",r," = HashMap<String, ",s,">"])}emitEmptyClassDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitClassAnnotations(m,r),this.emitLine("class ",r,"()")}emitClassDefinition(m,r){if(m.getProperties().size===0){this.emitEmptyClassDefinition(m,r);return}const s=T=>T.isOptional?[this.kotlinType(T.type,!0,!0),"?"]:this.kotlinType(T.type,!0);this.emitDescription(this.descriptionForType(m)),this.emitClassAnnotations(m,r),this.emitLine("data class ",r," ("),this.indent(()=>{let T=m.getProperties().size,v=!0;this.forEachClassProperty(m,"none",(M,x,W)=>{const S=W.type.kind==="union"&&(0,O.nullableFromUnion)(W.type)!==null,B=W.isOptional||W.type.kind==="null"||S,q=--T===0;let G=[];const $=this.descriptionForClassProperty(m,x);$!==void 0&&G.push(()=>this.emitDescription($)),this.renameAttribute(M,x,!B,G),G.length>0&&!v&&this.ensureBlankLine();for(const ee of G)ee();this.emitLine("val ",M,": ",s(W),B?" = null":"",q?"":","),G.length>0&&!q&&this.ensureBlankLine(),v=!1})}),this.emitClassDefinitionMethods(m,r)}emitClassDefinitionMethods(m,r){this.emitLine(")")}emitClassAnnotations(m,r){}renameAttribute(m,r,s,T){}emitEnumDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitBlock(["enum class ",r],()=>{let s=m.cases.size;this.forEachEnumCase(m,"none",T=>{this.emitLine(T,--s===0?"":",")})})}emitUnionDefinition(m,r){function s(M){const x=M.kind;return x==="class"?x:"_"+x}this.emitDescription(this.descriptionForType(m));const[T,v]=(0,O.removeNullFromUnion)(m,s);this.emitClassAnnotations(m,r),this.emitBlock(["sealed class ",r],()=>{{let M=[];this.forEachUnionMember(m,v,"none",null,(x,W)=>{M.push([["class ",x,"(val value: ",this.kotlinType(W),")"],[" : ",r,"()"]])}),T!==null&&M.push([["class ",this.nameForUnionMember(m,T),"()"],[" : ",r,"()"]]),this.emitTable(M)}this.emitUnionDefinitionMethods(m,v,T,r)})}emitUnionDefinitionMethods(m,r,s,T){}emitSourceStructure(){this.emitHeader(),this.forEachTopLevel("leading",(m,r)=>{m instanceof P.ArrayType?this.emitTopLevelArray(m,r):m instanceof P.MapType&&this.emitTopLevelMap(m,r)}),this.forEachNamedType("leading-and-interposing",(m,r)=>this.emitClassDefinition(m,r),(m,r)=>this.emitEnumDefinition(m,r),(m,r)=>this.emitUnionDefinition(m,r))}}e.KotlinRenderer=A;class f extends A{constructor(m,r,s){super(m,r,s)}unionMemberFromJsonValue(m,r){return(0,O.matchType)(m,s=>[r,".inside"],s=>"null",s=>[r,".boolean"],s=>["(",r,".int?.toLong() ?: ",r,".longValue)"],s=>[r,".double"],s=>[r,".string"],s=>[r,".array?.let { klaxon.parseFromJsonArray<",this.kotlinType(s.items),">(it) }"],s=>[r,".obj?.let { klaxon.parseFromJsonObject<",this.kotlinType(m),">(it) }"],s=>[r,".obj?.let { klaxon.parseFromJsonObject<",this.kotlinType(m),">(it) }"],s=>[r,".string?.let { ",this.kotlinType(s),".fromValue(it) }"],s=>(0,w.mustNotHappen)())}unionMemberJsonValueGuard(m,r){return(0,O.matchType)(m,s=>"is Any",s=>"null",s=>"is Boolean",s=>"is Int, is Long",s=>"is Double",s=>"is String",s=>"is JsonArray<*>",s=>"is JsonObject",s=>"is JsonObject",s=>"is String",s=>(0,w.mustNotHappen)())}emitUsageHeader(){this.emitLine("// To parse the JSON, install Klaxon and do:"),this.emitLine("//"),this.forEachTopLevel("none",(m,r)=>{this.emitLine("// val ",(0,u.modifySource)(c.camelCase,r)," = ",r,".fromJson(jsonString)")})}emitHeader(){super.emitHeader(),this.emitLine("import com.beust.klaxon.*");const m=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),T=>T instanceof P.UnionType&&(0,O.nullableFromUnion)(T)===null),r=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),T=>T instanceof P.ClassType&&T.getProperties().size===0);(m||this.haveEnums||r)&&this.emitGenericConverter();let s=[];r&&s.push([[".convert(JsonObject::class,"],[" { it.obj!! },"],[" { it.toJsonString() })"]]),this.forEachEnum("none",(T,v)=>{s.push([[".convert(",v,"::class,"],[" { ",v,".fromValue(it.string!!) },"],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion("none",(T,v)=>{s.push([[".convert(",v,"::class,"],[" { ",v,".fromJson(it) },"],[" { it.toJson() }, true)"]])}),this.ensureBlankLine(),this.emitLine("private val klaxon = Klaxon()"),s.length>0&&this.indent(()=>this.emitTable(s))}emitTopLevelArray(m,r){const s=this.kotlinType(m.items);this.emitBlock(["class ",r,"(elements: Collection<",s,">) : ArrayList<",s,">(elements)"],()=>{this.emitLine("public fun toJson() = klaxon.toJsonString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("public fun fromJson(json: String) = ",r,"(klaxon.parseArray<",s,">(json)!!)")})})}emitTopLevelMap(m,r){const s=this.kotlinType(m.values);this.emitBlock(["class ",r,"(elements: Map<String, ",s,">) : HashMap<String, ",s,">(elements)"],()=>{this.emitLine("public fun toJson() = klaxon.toJsonString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitBlock(["public fun fromJson(json: String) = ",r],()=>{this.emitLine("klaxon.parseJsonObject(java.io.StringReader(json)) as Map<String, ",s,">")},"paren")})})}klaxonRenameAttribute(m,r,s=!1){const T=I(r),v=this.sourcelikeToString(m)!==T,M=[];return v&&M.push(['name = "',T,'"']),s&&M.push("ignored = true"),M.length===0?void 0:["@Json(",(0,t.arrayIntercalate)(", ",M),")"]}emitEmptyClassDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitLine("typealias ",r," = JsonObject")}emitClassDefinitionMethods(m,r){(0,t.iterableSome)(this.topLevels,([T,v])=>v===m)?this.emitBlock(")",()=>{this.emitLine("public fun toJson() = klaxon.toJsonString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("public fun fromJson(json: String) = klaxon.parse<",r,">(json)")})}):this.emitLine(")")}renameAttribute(m,r,s,T){const v=this.klaxonRenameAttribute(m,r);v!==void 0&&T.push(()=>this.emitLine(v))}emitEnumDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=m.cases.size;this.forEachEnumCase(m,"none",(T,v)=>{this.emitLine(T,`("${I(v)}")`,--s===0?";":",")}),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitBlock(["public fun fromValue(value: String): ",r," = when (value)"],()=>{let T=[];this.forEachEnumCase(m,"none",(v,M)=>{T.push([[`"${I(M)}"`],[" -> ",v]])}),T.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(T)})})})}emitGenericConverter(){this.ensureBlankLine(),this.emitLine("private fun <T> Klaxon.convert(k: kotlin.reflect.KClass<*>, fromJson: (JsonValue) -> T, toJson: (T) -> String, isUnion: Boolean = false) ="),this.indent(()=>{this.emitLine("this.converter(object: Converter {"),this.indent(()=>{this.emitLine('@Suppress("UNCHECKED_CAST")'),this.emitTable([["override fun toJson(value: Any)"," = toJson(value as T)"],["override fun fromJson(jv: JsonValue)"," = fromJson(jv) as Any"],["override fun canConvert(cls: Class<*>)"," = cls == k.java || (isUnion && cls.superclass == k.java)"]])}),this.emitLine("})")})}emitUnionDefinitionMethods(m,r,s,T){this.ensureBlankLine(),this.emitLine("public fun toJson(): String = klaxon.toJsonString(when (this) {"),this.indent(()=>{let v=[];if(this.forEachUnionMember(m,r,"none",null,M=>{v.push([["is ",M],[" -> this.value"]])}),s!==null){const M=this.nameForUnionMember(m,s);v.push([["is ",M],[' -> "null"']])}this.emitTable(v)}),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("public fun fromJson(jv: JsonValue): ",T," = when (jv.inside) {"),this.indent(()=>{let v=[];if(this.forEachUnionMember(m,r,"none",null,(M,x)=>{v.push([[this.unionMemberJsonValueGuard(x,"jv.inside")],[" -> ",M,"(",this.unionMemberFromJsonValue(x,"jv"),"!!)"]])}),s!==null){const M=this.nameForUnionMember(m,s);v.push([[this.unionMemberJsonValueGuard(s,"jv.inside")],[" -> ",M,"()"]])}v.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(v)}),this.emitLine("}")})}}e.KotlinKlaxonRenderer=f;class E extends A{constructor(m,r,s){super(m,r,s)}unionMemberJsonValueGuard(m,r){return(0,O.matchType)(m,s=>"is Any",s=>"null",s=>"is BooleanNode",s=>"is IntNode, is LongNode",s=>"is DoubleNode",s=>"is TextNode",s=>"is ArrayNode",s=>"is ObjectNode",s=>"is ObjectNode",s=>"is TextNode",s=>(0,w.mustNotHappen)())}emitUsageHeader(){this.emitLine("// To parse the JSON, install jackson-module-kotlin and do:"),this.emitLine("//"),this.forEachTopLevel("none",(m,r)=>{this.emitLine("// val ",(0,u.modifySource)(c.camelCase,r)," = ",r,".fromJson(jsonString)")})}emitHeader(){super.emitHeader(),this.emitMultiline(`import com.fasterxml.jackson.annotation.*
843
+ import com.fasterxml.jackson.core.*
844
+ import com.fasterxml.jackson.databind.*
845
+ import com.fasterxml.jackson.databind.deser.std.StdDeserializer
846
+ import com.fasterxml.jackson.databind.module.SimpleModule
847
+ import com.fasterxml.jackson.databind.node.*
848
+ import com.fasterxml.jackson.databind.ser.std.StdSerializer
849
+ import com.fasterxml.jackson.module.kotlin.*`);const m=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),T=>T instanceof P.UnionType&&(0,O.nullableFromUnion)(T)===null),r=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),T=>T instanceof P.ClassType&&T.getProperties().size===0);(m||this.haveEnums||r)&&this.emitGenericConverter();let s=[];this.forEachEnum("none",(T,v)=>{s.push([["convert(",v,"::class,"],[" { ",v,".fromValue(it.asText()) },"],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion("none",(T,v)=>{s.push([["convert(",v,"::class,"],[" { ",v,".fromJson(it) },"],[" { it.toJson() }, true)"]])}),this.ensureBlankLine(),this.emitLine("val mapper = jacksonObjectMapper().apply {"),this.indent(()=>{this.emitLine("propertyNamingStrategy = PropertyNamingStrategy.LOWER_CAMEL_CASE"),this.emitLine("setSerializationInclusion(JsonInclude.Include.NON_NULL)")}),s.length>0&&this.indent(()=>this.emitTable(s)),this.emitLine("}")}emitTopLevelArray(m,r){const s=this.kotlinType(m.items);this.emitBlock(["class ",r,"(elements: Collection<",s,">) : ArrayList<",s,">(elements)"],()=>{this.emitLine("fun toJson() = mapper.writeValueAsString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("fun fromJson(json: String) = mapper.readValue<",r,">(json)")})})}emitTopLevelMap(m,r){const s=this.kotlinType(m.values);this.emitBlock(["class ",r,"(elements: Map<String, ",s,">) : HashMap<String, ",s,">(elements)"],()=>{this.emitLine("fun toJson() = mapper.writeValueAsString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("fun fromJson(json: String) = mapper.readValue<",r,">(json)")})})}jacksonRenameAttribute(m,r,s,T=!1){const v=I(r),M=this.sourcelikeToString(m)!==v,x=[],W=r.startsWith("is"),S=[];return(M||W)&&S.push('"'+v+'"'),s&&S.push("required=true"),S.length>0&&(x.push(["@get:JsonProperty(",(0,t.arrayIntercalate)(", ",S),")"]),x.push(["@field:JsonProperty(",(0,t.arrayIntercalate)(", ",S),")"])),T&&(x.push("@get:JsonIgnore"),x.push("@field:JsonIgnore")),x.length===0?void 0:x}emitEmptyClassDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitLine("typealias ",r," = JsonNode")}emitClassDefinitionMethods(m,r){(0,t.iterableSome)(this.topLevels,([T,v])=>v===m)?this.emitBlock(")",()=>{this.emitLine("fun toJson() = mapper.writeValueAsString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("fun fromJson(json: String) = mapper.readValue<",r,">(json)")})}):this.emitLine(")")}renameAttribute(m,r,s,T){const v=this.jacksonRenameAttribute(m,r,s);v!==void 0&&T.push(()=>this.emitLine(v))}emitEnumDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=m.cases.size;this.forEachEnumCase(m,"none",(T,v)=>{this.emitLine(T,`("${I(v)}")`,--s===0?";":",")}),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitBlock(["fun fromValue(value: String): ",r," = when (value)"],()=>{let T=[];this.forEachEnumCase(m,"none",(v,M)=>{T.push([[`"${I(M)}"`],[" -> ",v]])}),T.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(T)})})})}emitGenericConverter(){this.ensureBlankLine(),this.emitMultiline(`
850
+ @Suppress("UNCHECKED_CAST")
851
+ private fun <T> ObjectMapper.convert(k: kotlin.reflect.KClass<*>, fromJson: (JsonNode) -> T, toJson: (T) -> String, isUnion: Boolean = false) = registerModule(SimpleModule().apply {
852
+ addSerializer(k.java as Class<T>, object : StdSerializer<T>(k.java as Class<T>) {
853
+ override fun serialize(value: T, gen: JsonGenerator, provider: SerializerProvider) = gen.writeRawValue(toJson(value))
854
+ })
855
+ addDeserializer(k.java as Class<T>, object : StdDeserializer<T>(k.java as Class<T>) {
856
+ override fun deserialize(p: JsonParser, ctxt: DeserializationContext) = fromJson(p.readValueAsTree())
857
+ })
858
+ })`)}emitUnionDefinitionMethods(m,r,s,T){this.ensureBlankLine(),this.emitLine("fun toJson(): String = mapper.writeValueAsString(when (this) {"),this.indent(()=>{let v=[];if(this.forEachUnionMember(m,r,"none",null,M=>{v.push([["is ",M],[" -> this.value"]])}),s!==null){const M=this.nameForUnionMember(m,s);v.push([["is ",M],[' -> "null"']])}this.emitTable(v)}),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("fun fromJson(jn: JsonNode): ",T," = when (jn) {"),this.indent(()=>{let v=[];if(this.forEachUnionMember(m,r,"none",null,(M,x)=>{v.push([[this.unionMemberJsonValueGuard(x,"jn")],[" -> ",M,"(mapper.treeToValue(jn))"]])}),s!==null){const M=this.nameForUnionMember(m,s);v.push([[this.unionMemberJsonValueGuard(s,"jn")],[" -> ",M,"()"]])}v.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(v)}),this.emitLine("}")})}}e.KotlinJacksonRenderer=E;class b extends A{constructor(m,r,s){super(m,r,s)}anySourceType(m){return["JsonElement",m]}arrayType(m,r=!1,s=!1){const T=this.kotlinType(m.items,r,!0),v=this.sourcelikeToString(T);return v==="JsonObject"||v==="JsonElement"?"JsonArray":super.arrayType(m,r,s)}mapType(m,r=!1,s=!1){const T=this.kotlinType(m.values,r,!0),v=this.sourcelikeToString(T);return v==="JsonObject"||v==="JsonElement"?"JsonObject":super.mapType(m,r,s)}emitTopLevelMap(m,r){this.kotlinType(m.values)==="JsonObject"?this.emitLine(["typealias ",r," = JsonObject"]):super.emitTopLevelMap(m,r)}emitTopLevelArray(m,r){const s=this.kotlinType(m.items);this.emitLine(["typealias ",r," = JsonArray<",s,">"])}emitUsageHeader(){this.emitLine("// To parse the JSON, install kotlin's serialization plugin and do:"),this.emitLine("//");const m=[];m.push(["// val ","json"," = Json { allowStructuredMapKeys = true }"]),this.forEachTopLevel("none",(r,s)=>{m.push(["// val ",(0,u.modifySource)(c.camelCase,s),` = json.parse(${this.sourcelikeToString(s)}.serializer(), jsonString)`])}),this.emitTable(m)}emitHeader(){super.emitHeader(),this.emitLine("import kotlinx.serialization.*"),this.emitLine("import kotlinx.serialization.json.*"),this.emitLine("import kotlinx.serialization.descriptors.*"),this.emitLine("import kotlinx.serialization.encoding.*")}emitClassAnnotations(m,r){this.emitLine("@Serializable")}renameAttribute(m,r,s,T){const v=this._rename(m,r);v!==void 0&&T.push(()=>this.emitLine(v))}_rename(m,r){const s=I(r);if(this.sourcelikeToString(m)!==s)return['@SerialName("',s,'")']}emitEnumDefinition(m,r){this.emitDescription(this.descriptionForType(m)),this.emitLine(["@Serializable"]),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=m.cases.size;this.forEachEnumCase(m,"none",(T,v)=>{const M=I(v);this.emitLine(`@SerialName("${M}") `,T,`("${M}")`,--s===0?";":",")})})}}e.KotlinXRenderer=b}(Ql)),Ql}var Xl={},km;function hb(){return km||(km=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ElmRenderer=e.ElmTargetLanguage=e.elmOptions=void 0;const t=et(),n=qt(),a=zt(),l=mt(),d=pt(),u=Wt(),c=Ft(),w=Nt(),U=Qe(),P=Bt(),O=On();e.elmOptions={justTypes:new a.BooleanOption("just-types","Plain types only",!1),useList:new a.EnumOption("array-type","Use Array or List",[["array",!1],["list",!0]]),moduleName:new a.StringOption("module","Generated module name","NAME","QuickType")};class R extends n.TargetLanguage{constructor(){super("Elm",["elm"],"elm")}getOptions(){return[e.elmOptions.justTypes,e.elmOptions.moduleName,e.elmOptions.useList]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(C,I){return new k(this,C,(0,a.getOptionValues)(e.elmOptions,I))}}e.ElmTargetLanguage=R;const _=["if","then","else","case","of","let","in","infix","type","module","where","import","exposing","as","port","int","float","bool","string","Jenc","Jdec","Jpipe","always","identity","Array","List","Dict","Maybe","map","toList","makeArrayEncoder","makeDictEncoder","makeNullableEncoder","Int","True","False","String","Float"],L=(0,w.legalizeCharacters)(D=>(0,w.isAscii)(D)&&(0,w.isLetterOrUnderscoreOrDigit)(D));function g(D,C){const I=(0,w.splitIntoWords)(D);return(0,w.combineWords)(I,L,C?w.firstUpperWordStyle:w.allLowerWordStyle,w.firstUpperWordStyle,C?w.allUpperWordStyle:w.allLowerWordStyle,w.allUpperWordStyle,"",w.isLetterOrUnderscore)}const y=(0,c.funPrefixNamer)("upper",D=>g(D,!0)),h=(0,c.funPrefixNamer)("lower",D=>g(D,!1));function p(D){function C(A){return{reqOrOpt:"Jpipe.optional",fallback:A}}const I=D.type;return D.isOptional||I instanceof l.UnionType&&(0,d.nullableFromUnion)(I)!==null?C(" Nothing"):I.kind==="null"?C(" ()"):{reqOrOpt:"Jpipe.required",fallback:""}}class k extends u.ConvenienceRenderer{constructor(C,I,A){super(C,I),this._options=A,this._topLevelDependents=new Map,this._namedTypeDependents=new Map}forbiddenNamesForGlobalNamespace(){return _}makeTopLevelDependencyNames(C,I){const A=new c.DependencyName(h,I.order,E=>`${E(I)}_to_string`);let f;return this.namedTypeToNameForTopLevel(C)===void 0&&(f=new c.DependencyName(h,I.order,E=>E(I))),this._topLevelDependents.set(I,{encoder:A,decoder:f}),f!==void 0?[A,f]:[A]}makeNamedTypeNamer(){return y}makeNamedTypeDependencyNames(C,I){const A=new c.DependencyName(h,I.order,E=>`encode_${E(I)}`),f=new c.DependencyName(h,I.order,E=>E(I));return this._namedTypeDependents.set(I,{encoder:A,decoder:f}),[A,f]}namerForObjectProperty(){return h}forbiddenForObjectProperties(C,I){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return y}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return y}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(C,I,A,f){return`${super.proposeUnionMemberName(C,I,A,f)}_in_${f(I)}`}get commentLineStart(){return"-- "}emitDescriptionBlock(C){C.length===1?this.emitLine("{-| ",C[0]," -}"):this.emitCommentLines(C,"",void 0,"-}","{-| ")}get arrayType(){return this._options.useList?"List":"Array"}elmType(C,I=!1){return(0,d.matchType)(C,A=>(0,P.singleWord)((0,P.annotated)(O.anyTypeIssueAnnotation,"Jdec.Value")),A=>(0,P.singleWord)((0,P.annotated)(O.nullTypeIssueAnnotation,"()")),A=>(0,P.singleWord)("Bool"),A=>(0,P.singleWord)("Int"),A=>(0,P.singleWord)("Float"),A=>(0,P.singleWord)("String"),A=>(0,P.multiWord)(" ",this.arrayType,(0,P.parenIfNeeded)(this.elmType(A.items))),A=>(0,P.singleWord)(this.nameForNamedType(A)),A=>(0,P.multiWord)(" ","Dict String",(0,P.parenIfNeeded)(this.elmType(A.values))),A=>(0,P.singleWord)(this.nameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.elmType(f);return I?E:(0,P.multiWord)(" ","Maybe",(0,P.parenIfNeeded)(E))}return(0,P.singleWord)(this.nameForNamedType(A))})}elmProperty(C){return C.isOptional?(0,P.multiWord)(" ","Maybe",(0,P.parenIfNeeded)(this.elmType(C.type,!0))).source:this.elmType(C.type).source}decoderNameForNamedType(C){const I=this.nameForNamedType(C);return(0,U.defined)(this._namedTypeDependents.get(I)).decoder}decoderNameForType(C,I=!1){return(0,d.matchType)(C,A=>(0,P.singleWord)("Jdec.value"),A=>(0,P.multiWord)(" ","Jdec.null","()"),A=>(0,P.singleWord)("Jdec.bool"),A=>(0,P.singleWord)("Jdec.int"),A=>(0,P.singleWord)("Jdec.float"),A=>(0,P.singleWord)("Jdec.string"),A=>(0,P.multiWord)(" ",["Jdec.",(0,w.decapitalize)(this.arrayType)],(0,P.parenIfNeeded)(this.decoderNameForType(A.items))),A=>(0,P.singleWord)(this.decoderNameForNamedType(A)),A=>(0,P.multiWord)(" ","Jdec.dict",(0,P.parenIfNeeded)(this.decoderNameForType(A.values))),A=>(0,P.singleWord)(this.decoderNameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.decoderNameForType(f);return I?E:(0,P.multiWord)(" ","Jdec.nullable",(0,P.parenIfNeeded)(E))}return(0,P.singleWord)(this.decoderNameForNamedType(A))})}decoderNameForProperty(C){return C.isOptional?(0,P.multiWord)(" ","Jdec.nullable",(0,P.parenIfNeeded)(this.decoderNameForType(C.type,!0))):this.decoderNameForType(C.type)}encoderNameForNamedType(C){const I=this.nameForNamedType(C);return(0,U.defined)(this._namedTypeDependents.get(I)).encoder}encoderNameForType(C,I=!1){return(0,d.matchType)(C,A=>(0,P.singleWord)("identity"),A=>(0,P.multiWord)(" ","always","Jenc.null"),A=>(0,P.singleWord)("Jenc.bool"),A=>(0,P.singleWord)("Jenc.int"),A=>(0,P.singleWord)("Jenc.float"),A=>(0,P.singleWord)("Jenc.string"),A=>(0,P.multiWord)(" ",["make",this.arrayType,"Encoder"],(0,P.parenIfNeeded)(this.encoderNameForType(A.items))),A=>(0,P.singleWord)(this.encoderNameForNamedType(A)),A=>(0,P.multiWord)(" ","makeDictEncoder",(0,P.parenIfNeeded)(this.encoderNameForType(A.values))),A=>(0,P.singleWord)(this.encoderNameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.encoderNameForType(f);return I?E:(0,P.multiWord)(" ","makeNullableEncoder",(0,P.parenIfNeeded)(E))}return(0,P.singleWord)(this.encoderNameForNamedType(A))})}encoderNameForProperty(C){return C.isOptional?(0,P.multiWord)(" ","makeNullableEncoder",(0,P.parenIfNeeded)(this.encoderNameForType(C.type,!0))):this.encoderNameForType(C.type)}emitTopLevelDefinition(C,I){this.emitLine("type alias ",I," = ",this.elmType(C).source)}emitClassDefinition(C,I){let A=this.descriptionForType(C);this.forEachClassProperty(C,"none",(f,E)=>{const b=this.descriptionForClassProperty(C,E);b!==void 0&&(A===void 0?A=[]:A.push(""),A.push(`${this.sourcelikeToString(f)}:`),A.push(...b))}),this.emitDescription(A),this.emitLine("type alias ",I," ="),this.indent(()=>{let f=!0;this.forEachClassProperty(C,"none",(E,b,F)=>{this.emitLine(f?"{":","," ",E," : ",this.elmProperty(F)),f=!1}),f&&this.emitLine("{"),this.emitLine("}")})}emitEnumDefinition(C,I){this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",I),this.indent(()=>{let A=!0;this.forEachEnumCase(C,"none",f=>{const E=A?"=":"|";this.emitLine(E," ",f),A=!1})})}emitUnionDefinition(C,I){this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",I),this.indent(()=>{let A=!0;this.forEachUnionMember(C,null,"none",null,(f,E)=>{const b=A?"=":"|";E.kind==="null"?this.emitLine(b," ",f):this.emitLine(b," ",f," ",(0,P.parenIfNeeded)(this.elmType(E))),A=!1})})}emitTopLevelFunctions(C,I){const{encoder:A,decoder:f}=(0,U.defined)(this._topLevelDependents.get(I));this.namedTypeToNameForTopLevel(C)===void 0&&(this.emitLine((0,U.defined)(f)," : Jdec.Decoder ",I),this.emitLine((0,U.defined)(f)," = ",this.decoderNameForType(C).source),this.ensureBlankLine()),this.emitLine(A," : ",I," -> String"),this.emitLine(A," r = Jenc.encode 0 (",this.encoderNameForType(C).source," r)")}emitClassFunctions(C,I){const A=this.decoderNameForNamedType(C);this.emitLine(A," : Jdec.Decoder ",I),this.emitLine(A," ="),this.indent(()=>{this.emitLine("Jpipe.decode ",I),this.indent(()=>{this.forEachClassProperty(C,"none",(E,b,F)=>{const m=(0,P.parenIfNeeded)(this.decoderNameForProperty(F)),{reqOrOpt:r,fallback:s}=p(F);this.emitLine("|> ",r,' "',(0,w.stringEscape)(b),'" ',m,s)})})}),this.ensureBlankLine();const f=this.encoderNameForNamedType(C);this.emitLine(f," : ",I," -> Jenc.Value"),this.emitLine(f," x ="),this.indent(()=>{this.emitLine("Jenc.object"),this.indent(()=>{let E=!0;this.forEachClassProperty(C,"none",(b,F,m)=>{const r=E?"[":",",s=this.encoderNameForProperty(m).source;this.emitLine(r,' ("',(0,w.stringEscape)(F),'", ',s," x.",b,")"),E=!1}),E&&this.emitLine("["),this.emitLine("]")})})}emitEnumFunctions(C,I){const A=this.decoderNameForNamedType(C);this.emitLine(A," : Jdec.Decoder ",I),this.emitLine(A," ="),this.indent(()=>{this.emitLine("Jdec.string"),this.indent(()=>{this.emitLine("|> Jdec.andThen (\\str ->"),this.indent(()=>{this.emitLine("case str of"),this.indent(()=>{this.forEachEnumCase(C,"none",(E,b)=>{this.emitLine('"',(0,w.stringEscape)(b),'" -> Jdec.succeed ',E)}),this.emitLine('somethingElse -> Jdec.fail <| "Invalid ',I,': " ++ somethingElse')})}),this.emitLine(")")})}),this.ensureBlankLine();const f=this.encoderNameForNamedType(C);this.emitLine(f," : ",I," -> Jenc.Value"),this.emitLine(f," x = case x of"),this.indent(()=>{this.forEachEnumCase(C,"none",(E,b)=>{this.emitLine(E,' -> Jenc.string "',(0,w.stringEscape)(b),'"')})})}emitUnionFunctions(C,I){function A(b,F){return F.kind==="array"?" array":F.kind==="double"?" xdouble":F.isPrimitive()?" "+F.kind:F.kind}const f=this.decoderNameForNamedType(C);this.emitLine(f," : Jdec.Decoder ",I),this.emitLine(f," ="),this.indent(()=>{this.emitLine("Jdec.oneOf"),this.indent(()=>{let b=!0;this.forEachUnionMember(C,null,"none",A,(F,m)=>{const r=b?"[":",";if(m.kind==="null")this.emitLine(r," Jdec.null ",F);else{const s=(0,P.parenIfNeeded)(this.decoderNameForType(m));this.emitLine(r," Jdec.map ",F," ",s)}b=!1}),this.emitLine("]")})}),this.ensureBlankLine();const E=this.encoderNameForNamedType(C);this.emitLine(E," : ",I," -> Jenc.Value"),this.emitLine(E," x = case x of"),this.indent(()=>{this.forEachUnionMember(C,null,"none",A,(b,F)=>{if(F.kind==="null")this.emitLine(b," -> Jenc.null");else{const m=this.encoderNameForType(F).source;this.emitLine(b," y -> ",m," y")}})})}emitSourceStructure(){const C=[],I=[];this.forEachTopLevel("none",(A,f)=>{let{encoder:E,decoder:b}=(0,U.defined)(this._topLevelDependents.get(f));b===void 0&&(b=(0,U.defined)(this._namedTypeDependents.get(f)).decoder),I.push(b),C.push(f,E,b)}),this.forEachObject("none",(A,f)=>{(0,t.mapContains)(this.topLevels,A)||C.push(f)}),this.forEachEnum("none",(A,f)=>{(0,t.mapContains)(this.topLevels,A)||C.push([f,"(..)"])}),this.forEachUnion("none",(A,f)=>{(0,t.mapContains)(this.topLevels,A)||C.push([f,"(..)"])}),this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines(["To decode the JSON data, add this file to your project, run",""," elm-package install NoRedInk/elm-decode-pipeline","","add these imports",""," import Json.Decode exposing (decodeString)`);"]),this.emitLine("-- import ",this._options.moduleName," exposing (",(0,t.arrayIntercalate)(", ",I),")"),this.emitMultiline(`--
859
+ -- and you're off to the races with
860
+ --`),this.forEachTopLevel("none",(A,f)=>{let{decoder:E}=(0,U.defined)(this._topLevelDependents.get(f));E===void 0&&(E=(0,U.defined)(this._namedTypeDependents.get(f)).decoder),this.emitLine("-- decodeString ",E," myJsonString")})),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("module ",this._options.moduleName," exposing"),this.indent(()=>{for(let A=0;A<C.length;A++)this.emitLine(A===0?"(":","," ",C[A]);this.emitLine(")")}),this.ensureBlankLine(),this.emitMultiline(`import Json.Decode as Jdec
861
+ import Json.Decode.Pipeline as Jpipe
862
+ import Json.Encode as Jenc
863
+ import Dict exposing (Dict, map, toList)`),this._options.useList?this.emitLine("import List exposing (map)"):this.emitLine("import Array exposing (Array, map)")),this.forEachTopLevel("leading-and-interposing",(A,f)=>this.emitTopLevelDefinition(A,f),A=>this.namedTypeToNameForTopLevel(A)===void 0),this.forEachNamedType("leading-and-interposing",(A,f)=>this.emitClassDefinition(A,f),(A,f)=>this.emitEnumDefinition(A,f),(A,f)=>this.emitUnionDefinition(A,f)),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine("-- decoders and encoders"),this.forEachTopLevel("leading-and-interposing",(A,f)=>this.emitTopLevelFunctions(A,f)),this.forEachNamedType("leading-and-interposing",(A,f)=>this.emitClassFunctions(A,f),(A,f)=>this.emitEnumFunctions(A,f),(A,f)=>this.emitUnionFunctions(A,f)),this.ensureBlankLine(),this.emitLine("--- encoder helpers"),this.ensureBlankLine(),this.emitLine("make",this.arrayType,"Encoder : (a -> Jenc.Value) -> ",this.arrayType," a -> Jenc.Value"),this.emitLine("make",this.arrayType,"Encoder f arr ="),this.indent(()=>{this.emitLine("Jenc.",(0,w.decapitalize)(this.arrayType)," (",this.arrayType,".map f arr)")}),this.ensureBlankLine(),this.emitMultiline(`makeDictEncoder : (a -> Jenc.Value) -> Dict String a -> Jenc.Value
864
+ makeDictEncoder f dict =
865
+ Jenc.object (toList (Dict.map (\\k -> f) dict))
866
+
867
+ makeNullableEncoder : (a -> Jenc.Value) -> Maybe a -> Jenc.Value
868
+ makeNullableEncoder f m =
869
+ case m of
870
+ Just x -> f x
871
+ Nothing -> Jenc.null`))}}e.ElmRenderer=k}(Xl)),Xl}var or={},Nm;function pb(){if(Nm)return or;Nm=1,Object.defineProperty(or,"__esModule",{value:!0}),or.JSONSchemaRenderer=or.JSONSchemaTargetLanguage=void 0;const e=et(),t=qt(),n=mt(),a=pt(),l=Wt(),d=Ft(),u=Nt(),c=Qe(),w=ss(),U=Ka();class P extends t.TargetLanguage{constructor(){super("JSON Schema",["schema","json-schema"],"schema")}getOptions(){return[]}get stringTypeMapping(){return(0,w.getNoStringTypeMapping)()}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(y,h){return new L(this,y)}}or.JSONSchemaTargetLanguage=P;const O=(0,d.funPrefixNamer)("namer",_),R=(0,u.legalizeCharacters)(g=>g>=32&&g<128&&g!==47);function _(g){const y=(0,u.splitIntoWords)(g);return(0,u.combineWords)(y,R,u.firstUpperWordStyle,u.firstUpperWordStyle,u.allUpperWordStyle,u.allUpperWordStyle,"",h=>!0)}class L extends l.ConvenienceRenderer{makeNamedTypeNamer(){return O}namerForObjectProperty(){return null}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return null}nameForType(y){return(0,c.defined)(this.names.get(this.nameForNamedType(y)))}makeOneOf(y){const h=(0,e.iterableFirst)(y);return h===void 0?(0,c.panic)("Must have at least one type for oneOf"):y.size===1?this.schemaForType(h):{anyOf:Array.from(y).map(p=>this.schemaForType(p))}}makeRef(y){return{$ref:`#/definitions/${this.nameForType(y)}`}}addAttributesToSchema(y,h){const p=this.typeGraph.attributeStore.attributesForType(y);for(const[k,D]of p)k.addToSchema(h,y,D)}schemaForType(y){const h=(0,a.matchTypeExhaustive)(y,p=>(0,c.panic)("none type should have been replaced"),p=>({}),p=>({type:"null"}),p=>({type:"boolean"}),p=>({type:"integer"}),p=>({type:"number"}),p=>({type:"string"}),p=>({type:"array",items:this.schemaForType(p.items)}),p=>this.makeRef(p),p=>this.definitionForObject(p,void 0),p=>this.makeRef(p),p=>this.makeRef(p),p=>this.unionNeedsName(p)?this.makeRef(p):this.definitionForUnion(p),p=>{const k=n.transformedStringTypeTargetTypeKindsMap.get(p.kind);return k===void 0?(0,c.panic)(`Unknown transformed string type ${p.kind}`):{type:"string",format:k.jsonSchema}});return h.$ref===void 0&&this.addAttributesToSchema(y,h),h}definitionForObject(y,h){let p,k;if(y.getProperties().size===0)p=void 0,k=void 0;else{const A={},f=[];for(const[E,b]of y.getProperties()){const F=this.schemaForType(b.type);F.description===void 0&&(0,U.addDescriptionToSchema)(F,this.descriptionForClassProperty(y,E)),A[E]=F,b.isOptional||f.push(E)}p=A,k=f.sort()}const D=y.getAdditionalProperties(),I={type:"object",additionalProperties:D!==void 0?this.schemaForType(D):!1,properties:p,required:k,title:h};return this.addAttributesToSchema(y,I),I}definitionForUnion(y,h){const p=this.makeOneOf(y.sortedMembers);return h!==void 0&&(p.title=h),this.addAttributesToSchema(y,p),p}definitionForEnum(y,h){const p={type:"string",enum:Array.from(y.cases),title:h};return this.addAttributesToSchema(y,p),p}emitSourceStructure(){const y=this.topLevels.size===1?this.schemaForType((0,c.defined)((0,e.mapFirst)(this.topLevels))):{},h=Object.assign({$schema:"http://json-schema.org/draft-06/schema#"},y),p={};this.forEachObject("none",(k,D)=>{const C=(0,c.defined)(this.names.get(D));p[C]=this.definitionForObject(k,C)}),this.forEachUnion("none",(k,D)=>{if(!this.unionNeedsName(k))return;const C=(0,c.defined)(this.names.get(D));p[C]=this.definitionForUnion(k,C)}),this.forEachEnum("none",(k,D)=>{const C=(0,c.defined)(this.names.get(D));p[C]=this.definitionForEnum(k,C)}),h.definitions=p,this.emitMultiline(JSON.stringify(h,void 0," "))}}return or.JSONSchemaRenderer=L,or}var Yl={},Om;function mb(){return Om||(Om=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.RustRenderer=e.RustTargetLanguage=e.rustOptions=e.Visibility=e.Density=void 0;const t=et(),n=qt(),a=Wt(),l=Nt(),d=Ft(),u=pt(),c=Bt(),w=On(),U=zt(),P=Qe();var O;(function(f){f[f.Normal=0]="Normal",f[f.Dense=1]="Dense"})(O=e.Density||(e.Density={}));var R;(function(f){f[f.Private=0]="Private",f[f.Crate=1]="Crate",f[f.Public=2]="Public"})(R=e.Visibility||(e.Visibility={})),e.rustOptions={density:new U.EnumOption("density","Density",[["normal",O.Normal],["dense",O.Dense]]),visibility:new U.EnumOption("visibility","Field visibility",[["private",R.Private],["crate",R.Crate],["public",R.Public]]),deriveDebug:new U.BooleanOption("derive-debug","Derive Debug impl",!1),edition2018:new U.BooleanOption("edition-2018","Edition 2018",!0),leadingComments:new U.BooleanOption("leading-comments","Leading Comments",!0)};class _ extends n.TargetLanguage{makeRenderer(E,b){return new A(this,E,(0,U.getOptionValues)(e.rustOptions,b))}constructor(){super("Rust",["rust","rs","rustlang"],"rs")}getOptions(){return[e.rustOptions.density,e.rustOptions.visibility,e.rustOptions.deriveDebug,e.rustOptions.edition2018,e.rustOptions.leadingComments]}}e.RustTargetLanguage=_;const L=["Serialize","Deserialize","{{root}}","$crate","as","box","break","const","continue","crate","else","enum","extern","false","fn","for","if","impl","in","let","loop","match","mod","move","mut","pub","ref","return","self","Self","static","struct","super","trait","true","type","unsafe","use","where","while","abstract","alignof","become","do","final","macro","offsetof","override","priv","proc","pure","sizeof","typeof","unsized","virtual","yield","catch","default","dyn","'static","union"],g=f=>(0,l.isAscii)(f)?(0,l.isLetterOrUnderscoreOrDigit)(f):!1,y=f=>(0,l.isAscii)(f)?(0,l.isLetterOrUnderscore)(f):!1,h=(0,l.legalizeCharacters)(g);function p(f,E){const b=(0,l.splitIntoWords)(f),F=E?l.allLowerWordStyle:l.firstUpperWordStyle,m=(0,l.combineWords)(b,h,F,F,F,F,E?"_":"",y);return m==="_"?"_underscore":m}const k=(0,d.funPrefixNamer)("default",f=>p(f,!0)),D=(0,d.funPrefixNamer)("camel",f=>p(f,!1)),C=f=>f<=65535?"\\u{"+(0,l.intToHex)(f,4)+"}":"\\u{"+(0,l.intToHex)(f,6)+"}",I=(0,l.utf32ConcatMap)((0,l.escapeNonPrintableMapper)(l.isPrintable,C));class A extends a.ConvenienceRenderer{constructor(E,b,F){super(E,b),this._options=F}makeNamedTypeNamer(){return D}namerForObjectProperty(){return k}makeUnionMemberNamer(){return D}makeEnumCaseNamer(){return D}forbiddenNamesForGlobalNamespace(){return L}forbiddenForObjectProperties(E,b){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(E,b){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(E,b){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return"/// "}nullableRustType(E,b){return["Option<",this.breakCycle(E,b),">"]}isImplicitCycleBreaker(E){const b=E.kind;return b==="array"||b==="map"}rustType(E,b=!1){return(0,u.matchType)(E,F=>(0,c.maybeAnnotated)(b,w.anyTypeIssueAnnotation,"Option<serde_json::Value>"),F=>(0,c.maybeAnnotated)(b,w.nullTypeIssueAnnotation,"Option<serde_json::Value>"),F=>"bool",F=>"i64",F=>"f64",F=>"String",F=>["Vec<",this.rustType(F.items,b),">"],F=>this.nameForNamedType(F),F=>["HashMap<String, ",this.rustType(F.values,b),">"],F=>this.nameForNamedType(F),F=>{const m=(0,u.nullableFromUnion)(F);if(m!==null)return this.nullableRustType(m,b);const[r]=(0,u.removeNullFromUnion)(F),T=this.isCycleBreakerType(F)?["Box<",this.nameForNamedType(F),">"]:this.nameForNamedType(F);return r!==null?["Option<",T,">"]:T})}breakCycle(E,b){const F=this.rustType(E,b);return this.isCycleBreakerType(E)?["Box<",F,">"]:F}emitRenameAttribute(E,b){const F=I(b);(this.sourcelikeToString(E)!==F||this._options.density===O.Normal)&&this.emitLine('#[serde(rename = "',F,'")]')}get visibility(){return this._options.visibility===R.Crate?"pub(crate) ":this._options.visibility===R.Public?"pub ":""}emitStructDefinition(E,b){this.emitDescription(this.descriptionForType(E)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]");const F=this._options.density===O.Dense?"none":"interposing",m=()=>this.forEachClassProperty(E,F,(r,s,T)=>{this.emitDescription(this.descriptionForClassProperty(E,s)),this.emitRenameAttribute(r,s),this.emitLine(this.visibility,r,": ",this.breakCycle(T.type,!0),",")});this.emitBlock(["pub struct ",b],m)}emitBlock(E,b){this.emitLine(E," {"),this.indent(b),this.emitLine("}")}emitUnion(E,b){if((0,u.nullableFromUnion)(E)!==null)return;this.emitDescription(this.descriptionForType(E)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]"),this.emitLine("#[serde(untagged)]");const[,m]=(0,u.removeNullFromUnion)(E),r=this._options.density===O.Dense?"none":"interposing";this.emitBlock(["pub enum ",b],()=>this.forEachUnionMember(E,m,r,null,(s,T)=>{const v=this.breakCycle(T,!0);this.emitLine([s,"(",v,"),"])}))}emitEnumDefinition(E,b){this.emitDescription(this.descriptionForType(E)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]");const F=this._options.density===O.Dense?"none":"interposing";this.emitBlock(["pub enum ",b],()=>this.forEachEnumCase(E,F,(m,r)=>{this.emitRenameAttribute(m,r),this.emitLine([m,","])}))}emitTopLevelAlias(E,b){this.emitLine("pub type ",b," = ",this.rustType(E),";")}emitLeadingComments(){if(this.leadingComments!==void 0){this.emitCommentLines(this.leadingComments);return}const E=(0,P.defined)((0,t.mapFirst)(this.topLevels)).getCombinedName();this.emitMultiline(`// Example code that deserializes and serializes the model.
872
+ // extern crate serde;
873
+ // #[macro_use]
874
+ // extern crate serde_derive;
875
+ // extern crate serde_json;
876
+ //
877
+ // use generated_module::${E};
878
+ //
879
+ // fn main() {
880
+ // let json = r#"{"answer": 42}"#;
881
+ // let model: ${E} = serde_json::from_str(&json).unwrap();
882
+ // }`)}emitSourceStructure(){this._options.leadingComments&&this.emitLeadingComments(),this.ensureBlankLine(),this._options.edition2018?this.emitLine("use serde::{Serialize, Deserialize};"):this.emitLine("extern crate serde_derive;"),this.haveMaps&&this.emitLine("use std::collections::HashMap;"),this.forEachTopLevel("leading",(E,b)=>this.emitTopLevelAlias(E,b),E=>this.namedTypeToNameForTopLevel(E)===void 0),this.forEachObject("leading-and-interposing",(E,b)=>this.emitStructDefinition(E,b)),this.forEachUnion("leading-and-interposing",(E,b)=>this.emitUnion(E,b)),this.forEachEnum("leading-and-interposing",(E,b)=>this.emitEnumDefinition(E,b))}}e.RustRenderer=A}(Yl)),Yl}var ar={},Cm;function yb(){if(Cm)return ar;Cm=1,Object.defineProperty(ar,"__esModule",{value:!0}),ar.CrystalRenderer=ar.CrystalTargetLanguage=void 0;const e=qt(),t=Wt(),n=Nt(),a=Ft(),l=pt(),d=Bt(),u=On();class c extends e.TargetLanguage{makeRenderer(k){return new h(this,k)}constructor(){super("Crystal",["crystal","cr","crystallang"],"cr")}get defaultIndentation(){return" "}getOptions(){return[]}}ar.CrystalTargetLanguage=c;const w=["Any","Array","Atomic","Bool","Channel","Char","Class","Enum","Enumerable","Event","Extern","Exception","File","Float","Float32","Float64","GC","GZip","Hash","HTML","HTTP","Int","Int128","Int16","Int32","Int64","Int8","Iterable","Link","Logger","Math","Mutex","Nil","Number","JSON","IO","Object","Pointer","Proc","Process","Range","Random","Regex","Reference","Set","Signal","Slice","Spec","StaticArray","String","Struct","Symbol","System","TCPServer","TCPSocket","Socket","Tempfile","Termios","Time","Tuple","ThreadLocal","UDPSocket","UInt128","UInt16","UInt32","UInt64","UInt8","Union","UNIXServer","UNIXSocket","UUID","URI","VaList","Value","Void","WeakRef","XML","YAML","Zip","Zlib","abstract","alias","as","as?","asm","begin","break","case","class","def","do","else","elsif","end","ensure","enum","extend","false","for","fun","if","in","include","instance_sizeof","is_a?","lib","macro","module","next","nil","nil?","of","out","pointerof","private","protected","require","rescue","return","select","self","sizeof","struct","super","then","true","type","typeof","uninitialized","union","unless","until","when","while","with","yield"];function U(p){return(0,n.isAscii)(p)?(0,n.isLetterOrUnderscoreOrDigit)(p):!1}function P(p){return(0,n.isAscii)(p)?(0,n.isLetterOrUnderscore)(p):!1}const O=(0,n.legalizeCharacters)(U);function R(p,k){const D=(0,n.splitIntoWords)(p),C=k?n.allLowerWordStyle:n.firstUpperWordStyle,I=(0,n.combineWords)(D,O,C,C,C,C,k?"_":"",P);return I==="_"?"_underscore":I}const _=(0,a.funPrefixNamer)("default",p=>R(p,!0)),L=(0,a.funPrefixNamer)("camel",p=>R(p,!1));function g(p){return p<=65535?"\\u{"+(0,n.intToHex)(p,4)+"}":"\\u{"+(0,n.intToHex)(p,6)+"}"}const y=(0,n.utf32ConcatMap)((0,n.escapeNonPrintableMapper)(n.isPrintable,g));class h extends t.ConvenienceRenderer{constructor(k,D){super(k,D)}makeNamedTypeNamer(){return L}namerForObjectProperty(){return _}makeUnionMemberNamer(){return L}makeEnumCaseNamer(){return L}forbiddenNamesForGlobalNamespace(){return w}forbiddenForObjectProperties(k,D){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(k,D){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(k,D){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return"# "}nullableCrystalType(k,D){return[this.crystalType(k,D),"?"]}isImplicitCycleBreaker(k){const D=k.kind;return D==="array"||D==="map"}crystalType(k,D=!1){return(0,l.matchType)(k,C=>(0,d.maybeAnnotated)(D,u.anyTypeIssueAnnotation,"JSON::Any?"),C=>(0,d.maybeAnnotated)(D,u.nullTypeIssueAnnotation,"Nil"),C=>"Bool",C=>"Int32",C=>"Float64",C=>"String",C=>["Array(",this.crystalType(C.items,D),")"],C=>this.nameForNamedType(C),C=>["Hash(String, ",this.crystalType(C.values,D),")"],C=>"String",C=>{const I=(0,l.nullableFromUnion)(C);if(I!==null)return this.nullableCrystalType(I,D);const[A]=(0,l.removeNullFromUnion)(C),f=this.nameForNamedType(C);return A!==null?[f,"?"]:f})}breakCycle(k,D){return this.crystalType(k,D)}emitRenameAttribute(k,D){const C=y(D);this.sourcelikeToString(k)!==C&&this.emitLine('@[JSON::Field(key: "',C,'")]')}emitStructDefinition(k,D){this.emitDescription(this.descriptionForType(k));const C=()=>this.forEachClassProperty(k,"none",(I,A,f)=>{this.ensureBlankLine(),this.emitDescription(this.descriptionForClassProperty(k,A)),this.emitRenameAttribute(I,A),this.emitLine("property ",I," : ",this.crystalType(f.type,!0))});this.emitBlock(["class ",D],C)}emitBlock(k,D){this.emitLine(k),this.indent(()=>{this.emitLine("include JSON::Serializable")}),this.ensureBlankLine(),this.indent(D),this.emitLine("end")}emitEnum(k,D){this.emitLine(k),this.indent(D),this.emitLine("end")}emitUnion(k,D){if((0,l.nullableFromUnion)(k)!==null)return;this.emitDescription(this.descriptionForType(k));const[,I]=(0,l.removeNullFromUnion)(k);let A=[];this.forEachUnionMember(k,I,"none",null,(f,E)=>{const b=this.breakCycle(E,!0);A.push([b])}),this.emitLine(["alias ",D," = ",A.map(f=>f.map(E=>this.sourcelikeToString(E))).join(" | ")])}emitTopLevelAlias(k,D){this.emitLine("alias ",D," = ",this.crystalType(k))}emitLeadingComments(){if(this.leadingComments!==void 0){this.emitCommentLines(this.leadingComments);return}this.emitMultiline(`# Example code that deserializes and serializes the model:
883
+ #
884
+ # require "json"
885
+ #
886
+ # class Location
887
+ # include JSON::Serializable
888
+ #
889
+ # @[JSON::Field(key: "lat")]
890
+ # property latitude : Float64
891
+ #
892
+ # @[JSON::Field(key: "lng")]
893
+ # property longitude : Float64
894
+ # end
895
+ #
896
+ # class House
897
+ # include JSON::Serializable
898
+ # property address : String
899
+ # property location : Location?
900
+ # end
901
+ #
902
+ # house = House.from_json(%({"address": "Crystal Road 1234", "location": {"lat": 12.3, "lng": 34.5}}))
903
+ # house.address # => "Crystal Road 1234"
904
+ # house.location # => #<Location:0x10cd93d80 @latitude=12.3, @longitude=34.5>
905
+ `)}emitSourceStructure(){this.emitLeadingComments(),this.ensureBlankLine(),this.emitLine('require "json"'),this.forEachTopLevel("leading",(k,D)=>this.emitTopLevelAlias(k,D),k=>this.namedTypeToNameForTopLevel(k)===void 0),this.forEachObject("leading-and-interposing",(k,D)=>this.emitStructDefinition(k,D)),this.forEachUnion("leading-and-interposing",(k,D)=>this.emitUnion(k,D))}}return ar.CrystalRenderer=h,ar}var ur={},gi={},Em;function Rk(){if(Em)return gi;Em=1,Object.defineProperty(gi,"__esModule",{value:!0}),gi.reservedProperties=gi.globals=gi.keywords=void 0,gi.keywords=["__ENCODING__","__FILE__","__LINE__","alias","and","begin","BEGIN","break","case","class","def","defined?","do","else","elsif","end","END","ensure","false","for","if","in","module","next","nil","not","or","redo","rescue","retry","return","self","super","then","true","undef","unless","until","when","while","yield"];const e=["ArgumentError","Array","BasicObject","Class","ClosedQueueError","Comparable","Complex","ConditionVariable","Continuation","Data","Date","Dir","ENV","EOFError","Encoding","EncodingError","Enumerable","Enumerator","Errno","Exception","FalseClass","Fiber","FiberError","File","FileTest","Float","FloatDomainError","FrozenError","GC","Hash","IO","IOError","IndexError","Integer","Interrupt","KeyError","LoadError","LocalJumpError","Marshal","MatchData","Math","Method","Module","Mutex","NameError","NilClass","NoMemoryError","NoMethodError","NotImplementedError","Numeric","Object","ObjectSpace","Proc","Process","Queue","Random","Range","RangeError","Rational","Regexp","RegexpError","RubyVM","RuntimeError","ScriptError","SecurityError","Set","Signal","SignalException","SizedQueue","StandardError","StopIteration","String","Struct","Symbol","SyntaxError","SystemCallError","SystemExit","SystemStackError","Thread","ThreadError","ThreadGroup","Time","TracePoint","TrueClass","TypeError","UnboundMethod","UncaughtThrowError","Undefined","UnicodeNormalize","Warning","ZeroDivisionError"],t=["__callee__","__dir__","__id__","__method__","__send__","!","!=","!~","<","<=","<=>","==","===","=~",">",">=","abort","ancestors","at_exit","autoload","autoload?","binding","block_given?","caller","caller_locations","catch","class","class_eval","class_exec","class_variable_defined?","class_variable_get","class_variable_set","class_variables","clone","const_defined?","const_get","const_missing","const_set","constants","define_singleton_method","deprecate_constant","display","dup","enum_for","eql?","equal?","eval","exec","exit","exit!","extend","fail","fork","format","freeze","frozen?","gets","global_variables","hash","include","include?","included_modules","inspect","instance_eval","instance_exec","instance_method","instance_methods","instance_of?","instance_variable_defined?","instance_variable_get","instance_variable_set","instance_variables","is_a?","iterator?","itself","kind_of?","lambda","load","local_variables","loop","method","method_defined?","methods","module_eval","module_exec","name","new","nil?","object_id","open","p","prepend","print","printf","private_class_method","private_constant","private_instance_methods","private_method_defined?","private_methods","proc","protected_instance_methods","protected_method_defined?","protected_methods","public_class_method","public_constant","public_instance_method","public_instance_methods","public_method","public_method_defined?","public_methods","public_send","putc","puts","raise","rand","readline","readlines","remove_class_variable","remove_instance_variable","require","require_relative","respond_to?","select","send","set_trace_func","singleton_class","singleton_class?","singleton_method","singleton_methods","sleep","spawn","sprintf","srand","syscall","system","taint","tainted?","tap","test","throw","to_enum","to_s","trace_var","trap","trust","untaint","untrace_var","untrust","untrusted?","warn"];return gi.globals=t.concat(e),gi.reservedProperties=["__id__","__send__","break","call","case","class","clone","constrained_type","constrained?","constrained","constructor","default","define_singleton_method","display","dup","enum_for","enum","extend","freeze","gem","hash","inspect","instance_eval","instance_exec","instance_variable_defined?","instance_variable_get","instance_variable_set","instance_variables","itself","meta","method","methods","next","object_id","optional","options","pristine","private_methods","protected_methods","public_method","public_methods","public_send","remove_instance_variable","rule","safe","self","send","singleton_class","singleton_method","singleton_methods","taint","tap","to_ast","to_enum","to_json","to_s","trust","try","type","untaint","undef","untrust","while","with"],gi}var Am;function gb(){return Am||(Am=1,function(e){var t=ur.__createBinding||(Object.create?function(b,F,m,r){r===void 0&&(r=m);var s=Object.getOwnPropertyDescriptor(F,m);(!s||("get"in s?!F.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return F[m]}}),Object.defineProperty(b,r,s)}:function(b,F,m,r){r===void 0&&(r=m),b[r]=F[m]}),n=ur.__setModuleDefault||(Object.create?function(b,F){Object.defineProperty(b,"default",{enumerable:!0,value:F})}:function(b,F){b.default=F}),a=ur.__importStar||function(b){if(b&&b.__esModule)return b;var F={};if(b!=null)for(var m in b)m!=="default"&&Object.prototype.hasOwnProperty.call(b,m)&&t(F,b,m);return n(F,b),F},l=ur.__importDefault||function(b){return b&&b.__esModule?b:{default:b}};Object.defineProperty(e,"__esModule",{value:!0}),e.RubyRenderer=e.RubyTargetLanguage=e.rubyOptions=e.Strictness=void 0;const d=l(so()),u=Bt(),c=Ft(),w=Wt(),U=qt(),P=zt(),O=a(Rk()),R=Array.from(new Set([...O.keywords,...O.reservedProperties])),_=mt(),L=pt(),g=Nt();function y(b){return"\\u{"+(0,g.intToHex)(b,0)+"}"}const h=(0,g.utf32ConcatMap)((0,g.escapeNonPrintableMapper)(g.isPrintable,y));var p;(function(b){b.Strict="Strict::",b.Coercible="Coercible::",b.None="Types::"})(p=e.Strictness||(e.Strictness={})),e.rubyOptions={justTypes:new P.BooleanOption("just-types","Plain types only",!1),strictness:new P.EnumOption("strictness","Type strictness",[["strict",p.Strict],["coercible",p.Coercible],["none",p.None]]),namespace:new P.StringOption("namespace","Specify a wrapping Namespace","NAME","","secondary")};class k extends U.TargetLanguage{constructor(){super("Ruby",["ruby"],"rb")}getOptions(){return[e.rubyOptions.justTypes,e.rubyOptions.strictness,e.rubyOptions.namespace]}get supportsOptionalClassProperties(){return!0}get defaultIndentation(){return" "}makeRenderer(F,m){return new E(this,F,(0,P.getOptionValues)(e.rubyOptions,m))}}e.RubyTargetLanguage=k;const D=g.isLetterOrUnderscore;function C(b){const F=d.default.getCategory(b);return["Nd","Pc","Mn","Mc"].indexOf(F)>=0||D(b)}const I=(0,g.legalizeCharacters)(C);function A(b,F){/^[0-9]+$/.test(b)&&(b=b+"N");const m=(0,g.splitIntoWords)(b);return(0,g.combineWords)(m,I,g.firstUpperWordStyle,g.firstUpperWordStyle,g.allUpperWordStyle,g.allUpperWordStyle,"",D)}function f(b){const F=(0,g.splitIntoWords)(b);return(0,g.combineWords)(F,I,g.allLowerWordStyle,g.allLowerWordStyle,g.allLowerWordStyle,g.allLowerWordStyle,"_",D)}class E extends w.ConvenienceRenderer{constructor(F,m,r){super(F,m),this._options=r}get commentLineStart(){return"# "}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(F){return F.kind==="class"}forbiddenNamesForGlobalNamespace(){return O.globals.concat(["Types","JSON","Dry","Constructor","Self"])}forbiddenForObjectProperties(F,m){return{names:R,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return new c.Namer("types",F=>A(F),[])}namerForObjectProperty(){return new c.Namer("properties",f,[])}makeUnionMemberNamer(){return new c.Namer("properties",f,[])}makeEnumCaseNamer(){return new c.Namer("enum-cases",F=>A(F),[])}dryType(F,m=!1){const r=m?".optional":"";return(0,L.matchType)(F,s=>["Types::Any",r],s=>["Types::Nil",r],s=>["Types::Bool",r],s=>["Types::Integer",r],s=>["Types::Double",r],s=>["Types::String",r],s=>["Types.Array(",this.dryType(s.items),")",r],s=>[this.nameForNamedType(s),r],s=>["Types::Hash.meta(of: ",this.dryType(s.values),")",r],s=>["Types::",this.nameForNamedType(s),r],s=>{const T=(0,L.nullableFromUnion)(s);return T!==null?[this.dryType(T),".optional"]:["Types.Instance(",this.nameForNamedType(s),")",r]})}exampleUse(F,m,r=6,s=!1){if(r--<=0)return m;const T=s?"&":"";return(0,L.matchType)(F,v=>m,v=>[m,".nil?"],v=>m,v=>[m,".even?"],v=>m,v=>m,v=>this.exampleUse(v.items,[m,T,".first"],r),v=>{let M;return this.forEachClassProperty(v,"none",(x,W,S)=>{["class","map","array"].indexOf(S.type.kind)>=0?M={name:x,prop:S}:M===void 0&&(M={name:x,prop:S})}),M!==void 0?this.exampleUse(M.prop.type,[m,T,".",M.name],r,M.prop.isOptional):m},v=>this.exampleUse(v.values,[m,T,'["…"]'],r),v=>{let M;return this.forEachEnumCase(v,"none",x=>{M===void 0&&(M=x)}),M!==void 0?[m," == ",this.nameForNamedType(v),"::",M]:m},v=>{const M=(0,L.nullableFromUnion)(v);return M!==null?["class","map","array"].indexOf(M.kind)>=0?this.exampleUse(M,m,r,!0):[m,".nil?"]:m})}jsonSample(F){function m(){return F instanceof _.ArrayType?"[…]":F instanceof _.MapType||F instanceof _.ClassType?"{…}":"…"}return`"${m()}"`}fromDynamic(F,m,r=!1,s=!1){const T=[this.dryType(F,r),"[",m,"]"],v=s?T:m,M=r?"&":"";return(0,L.matchType)(F,x=>v,x=>v,x=>v,x=>v,x=>v,x=>v,x=>[m,M,".map { |x| ",this.fromDynamic(x.items,"x",!1,!0)," }"],x=>{const W=[this.nameForNamedType(x),".from_dynamic!(",m,")"];return r?[m," ? ",W," : nil"]:W},x=>[["Types::Hash",r?".optional":"","[",m,"]"],M,".map { |k, v| [k, ",this.fromDynamic(x.values,"v",!1,!0),"] }",M,".to_h"],x=>{const W=["Types::",this.nameForNamedType(x),"[",m,"]"];return r?[m,".nil? ? nil : ",W]:W},x=>{const W=(0,L.nullableFromUnion)(x);if(W!==null)return this.fromDynamic(W,m,!0);const S=[this.nameForNamedType(x),".from_dynamic!(",m,")"];return r?[m," ? ",S," : nil"]:S})}toDynamic(F,m,r=!1){return this.marshalsImplicitlyToDynamic(F)?m:(0,L.matchType)(F,s=>m,s=>m,s=>m,s=>m,s=>m,s=>m,s=>[m,r?"&":"",".map { |x| ",this.toDynamic(s.items,"x")," }"],s=>[m,r?"&":"",".to_dynamic"],s=>[m,r?"&":"",".map { |k, v| [k, ",this.toDynamic(s.values,"v"),"] }.to_h"],s=>m,s=>{const T=(0,L.nullableFromUnion)(s);return T!==null?this.toDynamic(T,m,!0):this.marshalsImplicitlyToDynamic(s)?m:[m,r?"&":"",".to_dynamic"]})}marshalsImplicitlyToDynamic(F){return(0,L.matchType)(F,m=>!0,m=>!0,m=>!0,m=>!0,m=>!0,m=>!0,m=>this.marshalsImplicitlyToDynamic(m.items),m=>!1,m=>this.marshalsImplicitlyToDynamic(m.values),m=>!0,m=>{const r=(0,L.nullableFromUnion)(m);return r!==null?this.marshalsImplicitlyToDynamic(r):!1})}propertyTypeMarshalsImplicitlyFromDynamic(F){return(0,L.matchType)(F,m=>!0,m=>!0,m=>!0,m=>!0,m=>!0,m=>!0,m=>this.propertyTypeMarshalsImplicitlyFromDynamic(m.items),m=>!1,m=>!1,m=>!0,m=>{const r=(0,L.nullableFromUnion)(m);return r!==null?this.propertyTypeMarshalsImplicitlyFromDynamic(r):!1})}emitBlock(F,m){this.emitLine(F),this.indent(m),this.emitLine("end")}emitModule(F){const m=r=>{const[s,...T]=r.split("::");T.length>0?this.emitBlock(["module ",s],()=>{m(T.join("::"))}):this.emitBlock(["module ",r],F)};this._options.namespace!==void 0&&this._options.namespace!==""?m(this._options.namespace):F()}emitClass(F,m){this.emitDescription(this.descriptionForType(F)),this.emitBlock(["class ",m," < Dry::Struct"],()=>{let r=[],s=F.getProperties().size;this.forEachClassProperty(F,"none",(T,v,M)=>{const x=--s===0,W=this.descriptionForClassProperty(F,v),S=[["attribute :",T,","],[" ",this.dryType(M.type),M.isOptional?".optional":""]];W!==void 0?(r.length>0&&(this.emitTable(r),r=[]),this.ensureBlankLine(),this.emitDescriptionBlock(W),this.emitLine(S),x||this.ensureBlankLine()):r.push(S)}),r.length>0&&this.emitTable(r),!this._options.justTypes&&(this.ensureBlankLine(),this.emitBlock(["def self.from_dynamic!(d)"],()=>{this.emitLine("d = Types::Hash[d]"),this.emitLine("new("),this.indent(()=>{const T=[];this.forEachClassProperty(F,"none",(v,M,x)=>{const W=x.isOptional?`d["${h(M)}"]`:`d.fetch("${h(M)}")`;if(this.propertyTypeMarshalsImplicitlyFromDynamic(x.type))T.push([[v,": "],[W,","]]);else{const S=this.fromDynamic(x.type,W,x.isOptional);T.push([[v,": "],[S,","]])}}),this.emitTable(T)}),this.emitLine(")")}),this.ensureBlankLine(),this.emitBlock("def self.from_json!(json)",()=>{this.emitLine("from_dynamic!(JSON.parse(json))")}),this.ensureBlankLine(),this.emitBlock(["def to_dynamic"],()=>{this.emitLine("{"),this.indent(()=>{const T=[];this.forEachClassProperty(F,"none",(v,M,x)=>{const W=this.toDynamic(x.type,v,x.isOptional);T.push([[`"${h(M)}"`],[" => ",W,","]])}),this.emitTable(T)}),this.emitLine("}")}),this.ensureBlankLine(),this.emitBlock("def to_json(options = nil)",()=>{this.emitLine("JSON.generate(to_dynamic, options)")}))})}emitEnum(F,m){this.emitDescription(this.descriptionForType(F)),this.emitBlock(["module ",m],()=>{const r=[];this.forEachEnumCase(F,"none",(s,T)=>{r.push([[s],[` = "${h(T)}"`]])}),this.emitTable(r)})}emitUnion(F,m){this.emitDescription(this.descriptionForType(F)),this.emitBlock(["class ",m," < Dry::Struct"],()=>{const r=[];if(this.forEachUnionMember(F,F.getChildren(),"none",null,(v,M)=>{r.push([["attribute :",v,", "],[this.dryType(M,!0)]])}),this.emitTable(r),this._options.justTypes)return;this.ensureBlankLine();const[s,T]=(0,L.removeNullFromUnion)(F,!1);this.emitBlock("def self.from_dynamic!(d)",()=>{const v=Array.from(F.getChildren()).map(M=>this.nameForUnionMember(F,M));this.forEachUnionMember(F,F.getChildren(),"none",null,(M,x)=>{const W=v.filter(S=>S!==M).map(S=>[", ",S,": nil"]);this.propertyTypeMarshalsImplicitlyFromDynamic(x)?this.emitBlock(["if schema[:",M,"].right.valid? d"],()=>{this.emitLine("return new(",M,": d",W,")")}):(this.emitLine("begin"),this.indent(()=>{this.emitLine("value = ",this.fromDynamic(x,"d")),this.emitBlock(["if schema[:",M,"].right.valid? value"],()=>{this.emitLine("return new(",M,": value",W,")")})}),this.emitLine("rescue"),this.emitLine("end"))}),this.emitLine('raise "Invalid union"')}),this.ensureBlankLine(),this.emitBlock("def self.from_json!(json)",()=>{this.emitLine("from_dynamic!(JSON.parse(json))")}),this.ensureBlankLine(),this.emitBlock("def to_dynamic",()=>{let v=!0;this.forEachUnionMember(F,T,"none",null,(M,x)=>{this.emitLine(v?"if":"elsif"," ",M," != nil"),this.indent(()=>{this.emitLine(this.toDynamic(x,M))}),v=!1}),s!==null&&(this.emitLine("else"),this.indent(()=>{this.emitLine("nil")})),this.emitLine("end")}),this.ensureBlankLine(),this.emitBlock("def to_json(options = nil)",()=>{this.emitLine("JSON.generate(to_dynamic, options)")})})}emitTypesModule(){this.emitBlock(["module Types"],()=>{this.emitLine("include Dry.Types(default: :nominal)");const F=[];if(this._options.strictness!==p.None){let m={int:!1,nil:!1,bool:!1,hash:!1,string:!1,double:!1};this.forEachType(r=>{m={int:m.int||r.kind==="integer",nil:m.nil||r.kind==="null",bool:m.bool||r.kind==="bool",hash:m.hash||r.kind==="map"||r.kind==="class",string:m.string||r.kind==="string"||r.kind==="enum",double:m.double||r.kind==="double"}}),m.int&&F.push([["Integer"],[` = ${this._options.strictness}Integer`]]),this._options.strictness===p.Strict&&m.nil&&F.push([["Nil"],[` = ${this._options.strictness}Nil`]]),m.bool&&F.push([["Bool"],[` = ${this._options.strictness}Bool`]]),m.hash&&F.push([["Hash"],[` = ${this._options.strictness}Hash`]]),m.string&&F.push([["String"],[` = ${this._options.strictness}String`]]),m.double&&F.push([["Double"],[` = ${this._options.strictness}Float | ${this._options.strictness}Integer`]])}this.forEachEnum("none",(m,r)=>{const s=[];this.forEachEnumCase(m,"none",(T,v)=>{s.push([s.length===0?"":", ",`"${h(v)}"`])}),F.push([[r],[" = ",this._options.strictness,"String.enum(",...s,")"]])}),F.length>0&&(this.ensureBlankLine(),this.emitTable(F))})}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitLine("# This code may look unusually verbose for Ruby (and it is), but"),this.emitLine("# it performs some subtle and complex validation of JSON data."),this.emitLine("#"),this.emitLine("# To parse this JSON, add 'dry-struct' and 'dry-types' gems, then do:"),this.emitLine("#"),this.forEachTopLevel("none",(F,m)=>{const r=(0,u.modifySource)(g.snakeCase,m);this.emitLine("# ",r," = ",m,".from_json! ",this.jsonSample(F)),this.emitLine("# puts ",this.exampleUse(F,r)),this.emitLine("#")}),this.emitLine("# If from_json! succeeds, the value returned matches the schema.")),this.ensureBlankLine(),this.emitLine("require 'json'"),this.emitLine("require 'dry-types'"),this.emitLine("require 'dry-struct'"),this.ensureBlankLine(),this.emitModule(()=>{this.emitTypesModule(),this.forEachDeclaration("leading-and-interposing",F=>{F.kind==="forward"&&(this.emitCommentLines(["(forward declaration)"]),this.emitModule(()=>{this.emitLine("class ",this.nameForNamedType(F.type)," < Dry::Struct; end")}))}),this.forEachNamedType("leading-and-interposing",(F,m)=>this.emitClass(F,m),(F,m)=>this.emitEnum(F,m),(F,m)=>this.emitUnion(F,m)),this._options.justTypes||this.forEachTopLevel("leading-and-interposing",(F,m)=>{const r=(0,u.modifySource)(g.snakeCase,m),s=F.kind==="array",T=()=>{this.emitBlock(["class ",m],()=>{this.emitBlock(["def self.from_json!(json)"],()=>{s?(this.emitLine(r," = ",this.fromDynamic(F,"JSON.parse(json, quirks_mode: true)")),this.emitBlock([r,".define_singleton_method(:to_json) do"],()=>{this.emitLine("JSON.generate(",this.toDynamic(F,"self"),")")}),this.emitLine(r)):this.emitLine(this.fromDynamic(F,"JSON.parse(json, quirks_mode: true)"))})})};this.emitModule(()=>{T()})},F=>this.namedTypeToNameForTopLevel(F)===void 0)})}}e.RubyRenderer=E}(ur)),ur}var $l={},Fm;function bb(){return Fm||(Fm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DartRenderer=e.DartTargetLanguage=e.dartOptions=void 0;const t=mt(),n=pt(),a=Bt(),l=Nt(),d=Ft(),u=Wt(),c=qt(),w=zt(),U=On(),P=Qe(),O=et();e.dartOptions={nullSafety:new w.BooleanOption("null-safety","Null Safety",!0),justTypes:new w.BooleanOption("just-types","Types only",!1),codersInClass:new w.BooleanOption("coders-in-class","Put encoder & decoder in Class",!1),methodNamesWithMap:new w.BooleanOption("from-map","Use method names fromMap() & toMap()",!1,"secondary"),requiredProperties:new w.BooleanOption("required-props","Make all properties required",!1),finalProperties:new w.BooleanOption("final-props","Make all properties final",!1),generateCopyWith:new w.BooleanOption("copy-with","Generate CopyWith method",!1),useFreezed:new w.BooleanOption("use-freezed","Generate class definitions with @freezed compatibility",!1,"secondary"),useHive:new w.BooleanOption("use-hive","Generate annotations for Hive type adapters",!1,"secondary"),partName:new w.StringOption("part-name","Use this name in `part` directive","NAME","","secondary")};class R extends c.TargetLanguage{constructor(){super("Dart",["dart"],"dart")}getOptions(){return[e.dartOptions.nullSafety,e.dartOptions.justTypes,e.dartOptions.codersInClass,e.dartOptions.methodNamesWithMap,e.dartOptions.requiredProperties,e.dartOptions.finalProperties,e.dartOptions.generateCopyWith,e.dartOptions.useFreezed,e.dartOptions.useHive,e.dartOptions.partName]}get supportsUnionsWithBothNumberTypes(){return!0}get stringTypeMapping(){const f=new Map;return f.set("date","date"),f.set("date-time","date-time"),f}makeRenderer(f,E){const b=(0,w.getOptionValues)(e.dartOptions,E);return new I(this,f,b)}}e.DartTargetLanguage=R;const _=["abstract","do","import","super","as","dynamic","in","switch","assert","else","interface","sync*","async","enum","is","this","async*","export","library","throw","await","external","mixin","true","break","extends","new","try","case","factory","null","typedef","catch","false","operator","var","class","final","part","void","const","finally","rethrow","while","continue","for","return","with","covariant","get","set","yield","default","if","static","yield*","deferred","implements","int","double","bool","Map","List","String","File","fromJson","toJson","fromMap","toMap"],L=(0,d.funPrefixNamer)("types",A=>C(!0,!1,A)),g=(0,d.funPrefixNamer)("properties",A=>C(!1,!1,A)),y=(0,d.funPrefixNamer)("enum-cases",A=>C(!0,!0,A)),h=(0,l.utf16ConcatMap)((0,l.escapeNonPrintableMapper)(A=>(0,l.isPrintable)(A)&&A!==36,l.standardUnicodeHexEscape));function p(A){return A===95?!1:(0,l.isAscii)(A)&&(0,l.isLetter)(A)}function k(A){return p(A)||(0,l.isAscii)(A)&&(0,l.isDigit)(A)}const D=(0,l.utf16LegalizeCharacters)(k);function C(A,f,E){const b=(0,l.splitIntoWords)(E),F=f?l.allUpperWordStyle:A?l.firstUpperWordStyle:l.allLowerWordStyle,m=f?l.allUpperWordStyle:l.firstUpperWordStyle;return(0,l.combineWords)(b,D,F,m,F,m,f?"_":"",p)}class I extends u.ConvenienceRenderer{constructor(f,E,b){super(f,E),this._options=b,this._gettersAndSettersForPropertyName=new Map,this._needEnumValues=!1,this.classCounter=0,this.classPropertyCounter=0,this._topLevelDependents=new Map,this._enumValues=new Map}forbiddenNamesForGlobalNamespace(){return _}forbiddenForObjectProperties(f,E){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return L}namerForObjectProperty(){return g}makeUnionMemberNamer(){return g}makeEnumCaseNamer(){return y}unionNeedsName(f){return(0,n.nullableFromUnion)(f)===null}namedTypeToNameForTopLevel(f){return(0,n.directlyReachableSingleNamedType)(f)}get toJson(){return`to${this._options.methodNamesWithMap?"Map":"Json"}`}get fromJson(){return`from${this._options.methodNamesWithMap?"Map":"Json"}`}makeTopLevelDependencyNames(f,E){const b=new d.DependencyName(g,E.order,m=>`${m(E)}_${this.toJson}`),F=new d.DependencyName(g,E.order,m=>`${m(E)}_${this.fromJson}`);return this._topLevelDependents.set(E,{encoder:b,decoder:F}),[b,F]}makeNamesForPropertyGetterAndSetter(f,E,b,F,m){const r=new d.DependencyName(g,m.order,T=>`get_${T(m)}`),s=new d.DependencyName(g,m.order,T=>`set_${T(m)}`);return[r,s]}makePropertyDependencyNames(f,E,b,F,m){const r=this.makeNamesForPropertyGetterAndSetter(f,E,b,F,m);return this._gettersAndSettersForPropertyName.set(m,r),r}makeNamedTypeDependencyNames(f,E){if(!(f instanceof t.EnumType))return[];const b=new d.DependencyName(g,E.order,F=>`${F(E)}_values`);return this._enumValues.set(f,b),[b]}emitFileHeader(){if(this.leadingComments!==void 0&&this.emitCommentLines(this.leadingComments),!this._options.justTypes&&(this.emitLine("// To parse this JSON data, do"),this.emitLine("//"),this.forEachTopLevel("none",(f,E)=>{const{decoder:b}=(0,P.defined)(this._topLevelDependents.get(E));this.emitLine("// final ",(0,a.modifySource)(l.decapitalize,E)," = ",b,"(jsonString);")}),this.ensureBlankLine(),this._options.requiredProperties&&this.emitLine("import 'package:meta/meta.dart';"),this._options.useFreezed&&this.emitLine("import 'package:freezed_annotation/freezed_annotation.dart';"),this._options.useHive&&this.emitLine("import 'package:hive/hive.dart';"),this.emitLine("import 'dart:convert';"),this._options.useFreezed||this._options.useHive)){this.ensureBlankLine();const f=this._options.partName.length===0,E=(0,a.modifySource)(l.snakeCase,f?[...this.topLevels.keys()][0]:this._options.partName);this._options.useFreezed&&this.emitLine("part '",E,".freezed.dart';"),this._options.justTypes||this.emitLine("part '",E,".g.dart';")}}emitDescriptionBlock(f){this.emitCommentLines(f,"///","")}emitBlock(f,E){this.emitLine(f," {"),this.indent(E),this.emitLine("}")}dartType(f,E=!1){const b=this._options.nullSafety&&f.isNullable&&!this._options.requiredProperties,F=m=>b?[m,"?"]:m;return(0,n.matchType)(f,m=>(0,a.maybeAnnotated)(E,U.anyTypeIssueAnnotation,"dynamic"),m=>(0,a.maybeAnnotated)(E,U.nullTypeIssueAnnotation,"dynamic"),m=>F("bool"),m=>F("int"),m=>F("double"),m=>F("String"),m=>F(["List<",this.dartType(m.items,E),">"]),m=>F(this.nameForNamedType(m)),m=>F(["Map<String, ",this.dartType(m.values,E),">"]),m=>F(this.nameForNamedType(m)),m=>{const r=(0,n.nullableFromUnion)(m);return r===null?"dynamic":F(this.dartType(r,E))},m=>{switch(m.kind){case"date-time":case"date":return F("DateTime");default:return F("String")}})}mapList(f,E,b,F){return this._options.nullSafety&&f&&!this._options.requiredProperties?[b," == null ? [] : ","List<",E,">.from(",b,"!.map((x) => ",F,"))"]:["List<",E,">.from(",b,".map((x) => ",F,"))"]}mapMap(f,E,b,F){return this._options.nullSafety&&f&&!this._options.requiredProperties?["Map.from(",b,"!).map((k, v) => MapEntry<String, ",E,">(k, ",F,"))"]:["Map.from(",b,").map((k, v) => MapEntry<String, ",E,">(k, ",F,"))"]}mapClass(f,E,b){return this._options.nullSafety&&f&&!this._options.requiredProperties?[b," == null ? null : ",this.nameForNamedType(E),".",this.fromJson,"(",b,")"]:[this.nameForNamedType(E),".",this.fromJson,"(",b,")"]}fromDynamicExpression(f=!1,E,...b){return(0,n.matchType)(E,F=>b,F=>b,F=>b,F=>b,F=>[b,this._options.nullSafety?"?.toDouble()":".toDouble()"],F=>b,F=>this.mapList(f||F.isNullable,this.dartType(F.items),b,this.fromDynamicExpression(F.items.isNullable,F.items,"x")),F=>this.mapClass(f||F.isNullable,F,b),F=>this.mapMap(F.isNullable||f,this.dartType(F.values),b,this.fromDynamicExpression(F.values.isNullable,F.values,"v")),F=>[(0,P.defined)(this._enumValues.get(F)),".map[",b,this._options.nullSafety?"]!":"]"],F=>{const m=(0,n.nullableFromUnion)(F);return m===null?b:this.fromDynamicExpression(F.isNullable,m,b)},F=>{switch(F.kind){case"date-time":case"date":return(F.isNullable||f)&&!this._options.requiredProperties&&this._options.nullSafety?[b," == null ? null : ","DateTime.parse(",b,")"]:["DateTime.parse(",b,")"];default:return b}})}toDynamicExpression(f=!1,E,...b){return(0,n.matchType)(E,F=>b,F=>b,F=>b,F=>b,F=>b,F=>b,F=>this.mapList(F.isNullable||f,"dynamic",b,this.toDynamicExpression(F.items.isNullable,F.items,"x")),F=>this._options.nullSafety&&(F.isNullable||f)&&!this._options.requiredProperties?[b,"?.",this.toJson,"()"]:[b,".",this.toJson,"()"],F=>this.mapMap(F.isNullable||f,"dynamic",b,this.toDynamicExpression(F.values.isNullable,F.values,"v")),F=>[(0,P.defined)(this._enumValues.get(F)),".reverse[",b,"]"],F=>{const m=(0,n.nullableFromUnion)(F);return m===null?b:this.toDynamicExpression(F.isNullable,m,b)},F=>{switch(F.kind){case"date-time":return this._options.nullSafety&&!this._options.requiredProperties&&(F.isNullable||f)?[b,"?.toIso8601String()"]:[b,".toIso8601String()"];case"date":return this._options.nullSafety&&!this._options.requiredProperties&&(F.isNullable||f)?['"${',b,"!.year.toString().padLeft(4, '0')","}-${",b,"!.month.toString().padLeft(2, '0')}-${",b,`!.day.toString().padLeft(2, '0')}"`]:['"${',b,".year.toString().padLeft(4, '0')","}-${",b,".month.toString().padLeft(2, '0')}-${",b,`.day.toString().padLeft(2, '0')}"`];default:return b}})}emitClassDefinition(f,E){this.emitDescription(this.descriptionForType(f)),this._options.useHive&&(this.classCounter++,this.emitLine(`@HiveType(typeId: ${this.classCounter})`),this.classPropertyCounter=0),this.emitBlock(["class ",E],()=>{f.getProperties().size===0?this.emitLine(E,"();"):(this.emitLine(E,"({"),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{const r=this._options.requiredProperties||this._options.nullSafety&&!m.type.isNullable;this.emitLine(r?"required ":"","this.",b,",")})}),this.emitLine("});"),this.ensureBlankLine(),this.forEachClassProperty(f,"none",(b,F,m)=>{const r=this.descriptionForClassProperty(f,F);r!==void 0&&this.emitDescription(r),this._options.useHive&&(this.classPropertyCounter++,this.emitLine(`@HiveField(${this.classPropertyCounter})`)),this.emitLine(this._options.finalProperties?"final ":"",this.dartType(m.type,!0)," ",b,";")})),this._options.generateCopyWith&&(this.ensureBlankLine(),this.emitLine(E," copyWith({"),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{this.emitLine(this.dartType(m.type,!0)," ",b,",")})}),this.emitLine("}) => "),this.indent(()=>{this.emitLine(E,"("),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{this.emitLine(b,": ",b," ?? ","this.",b,",")})}),this.emitLine(");")})),!this._options.justTypes&&(this._options.codersInClass&&(this.ensureBlankLine(),this.emitLine("factory ",E,".from",this._options.methodNamesWithMap?"Json":"RawJson","(String str) => ",E,".",this.fromJson,"(json.decode(str));"),this.ensureBlankLine(),this.emitLine("String ",this._options.methodNamesWithMap?"toJson() => ":"toRawJson() => ","json.encode(",this.toJson,"());")),this.ensureBlankLine(),this.emitLine("factory ",E,".",this.fromJson,"(Map<String, dynamic> json) => ",E,"("),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{this.emitLine(b,": ",this.fromDynamicExpression(m.type.isNullable,m.type,'json["',h(F),'"]'),",")})}),this.emitLine(");"),this.ensureBlankLine(),this.emitLine("Map<String, dynamic> ",this.toJson,"() => {"),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{this.emitLine('"',h(F),'": ',this.toDynamicExpression(m.type.isNullable,m.type,b),",")})}),this.emitLine("};"))})}emitFreezedClassDefinition(f,E){this.emitDescription(this.descriptionForType(f)),this.emitLine("@freezed"),this.emitBlock(["class ",E," with _$",E],()=>{f.getProperties().size===0?this.emitLine("const factory ",E,"() = _",E,";"):(this.emitLine("const factory ",E,"({"),this.indent(()=>{this.forEachClassProperty(f,"none",(b,F,m)=>{this.emitLine(this._options.requiredProperties?"required ":"",this.dartType(m.type,!0),this._options.requiredProperties?"":"?"," ",b,",")})}),this.emitLine("}) = _",E,";")),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine("factory ",E,".fromJson(Map<String, dynamic> json) => ","_$",E,"FromJson(json);"))})}emitEnumDefinition(f,E){const b=Array.from(f.cases).map(F=>this.nameForEnumCase(f,F));this.emitDescription(this.descriptionForType(f)),this.emitLine("enum ",E," { ",(0,O.arrayIntercalate)(", ",b)," }"),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine("final ",(0,P.defined)(this._enumValues.get(f))," = EnumValues({"),this.indent(()=>{this.forEachEnumCase(f,"none",(F,m,r)=>{const s=r==="first"||r==="middle"?",":[];this.emitLine('"',h(m),'": ',E,".",F,s)})}),this.emitLine("});"),this._needEnumValues=!0)}emitEnumValues(){this.ensureBlankLine(),this.emitMultiline(`class EnumValues<T> {
906
+ Map<String, T> map;
907
+ late Map<T, String> reverseMap;
908
+
909
+ EnumValues(this.map);
910
+
911
+ Map<T, String> get reverse {
912
+ reverseMap = map.map((k, v) => MapEntry(v, k));
913
+ return reverseMap;
914
+ }
915
+ }`)}emitSourceStructure(){this.emitFileHeader(),!this._options.justTypes&&!this._options.codersInClass&&this.forEachTopLevel("leading-and-interposing",(f,E)=>{const{encoder:b,decoder:F}=(0,P.defined)(this._topLevelDependents.get(E));this.emitLine(this.dartType(f)," ",F,"(String str) => ",this.fromDynamicExpression(f.isNullable,f,"json.decode(str)"),";"),this.ensureBlankLine(),this.emitLine("String ",b,"(",this.dartType(f)," data) => json.encode(",this.toDynamicExpression(f.isNullable,f,"data"),");")}),this.forEachNamedType("leading-and-interposing",(f,E)=>this._options.useFreezed?this.emitFreezedClassDefinition(f,E):this.emitClassDefinition(f,E),(f,E)=>this.emitEnumDefinition(f,E),(f,E)=>{}),this._needEnumValues&&this.emitEnumValues()}}e.DartRenderer=I}($l)),$l}var ua={},Pm;function Tb(){return Pm||(Pm=1,function(e){var t=ua.__importDefault||function(T){return T&&T.__esModule?T:{default:T}};Object.defineProperty(e,"__esModule",{value:!0}),e.JSONPythonRenderer=e.PythonRenderer=e.PythonTargetLanguage=e.pythonOptions=void 0;const n=qt(),a=mt(),l=zt(),d=Wt(),u=Ft(),c=Nt(),w=Qe(),U=Bt(),P=pt(),O=oo(),R=et(),_=t(so()),L=["Any","True","False","None","Enum","List","Dict","Optional","Union","Iterable","Type","TypeVar","T","EnumT"],g=["and","as","assert","async","await","bool","break","class","continue","datetime","def","del","dict","elif","else","except","finally","float","for","from","global","if","import","in","int","is","lambda","nonlocal","not","or","pass","print","raise","return","self","str","try","while","with","yield"];e.pythonOptions={features:new l.EnumOption("python-version","Python version",[["3.5",{typeHints:!1,dataClasses:!1}],["3.6",{typeHints:!0,dataClasses:!1}],["3.7",{typeHints:!0,dataClasses:!0}]],"3.6"),justTypes:new l.BooleanOption("just-types","Classes only",!1),nicePropertyNames:new l.BooleanOption("nice-property-names","Transform property names to be Pythonic",!0)};class y extends n.TargetLanguage{getOptions(){return[e.pythonOptions.features,e.pythonOptions.justTypes,e.pythonOptions.nicePropertyNames]}get stringTypeMapping(){const v=new Map,M="date-time";return v.set("date",M),v.set("time",M),v.set("date-time",M),v.set("uuid","uuid"),v.set("integer-string","integer-string"),v.set("bool-string","bool-string"),v}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!1}needsTransformerForType(v){return v instanceof a.UnionType?(0,R.iterableSome)(v.members,M=>this.needsTransformerForType(M)):v.kind==="integer-string"||v.kind==="bool-string"}makeRenderer(v,M){const x=(0,l.getOptionValues)(e.pythonOptions,M);return x.justTypes?new E(this,v,x):new s(this,v,x)}}e.PythonTargetLanguage=y;function h(T){const v=_.default.getCategory(T);return["Lu","Ll","Lt","Lm","Lo","Nl"].indexOf(v)>=0}function p(T){if(h(T))return!0;const v=_.default.getCategory(T);return["Mn","Mc","Nd","Pc"].indexOf(v)>=0}function k(T){const v=String.fromCharCode(T).normalize("NFKC"),M=v.length;if(M===0||!h(v.charCodeAt(0)))return!1;for(let x=1;x<M;x++)if(!p(v.charCodeAt(x)))return!1;return!0}function D(T){const v=String.fromCharCode(T).normalize("NFKC"),M=v.length;for(let x=0;x<M;x++)if(!p(v.charCodeAt(x)))return!1;return!0}const C=(0,c.utf16LegalizeCharacters)(D);function I(T){const v=(0,c.splitIntoWords)(T);return(0,c.combineWords)(v,C,c.firstUpperWordStyle,c.firstUpperWordStyle,c.allUpperWordStyle,c.allUpperWordStyle,"",k)}function A(T,v){return v?T?c.allUpperWordStyle:c.allLowerWordStyle:c.originalWord}function f(T,v,M){const x=A(v,M),W=M?"_":"",S=(0,c.splitIntoWords)(T);return(0,c.combineWords)(S,C,x,x,x,x,W,k)}class E extends d.ConvenienceRenderer{constructor(v,M,x){super(v,M),this.pyOptions=x,this.imports=new Map,this.declaredTypes=new Set}forbiddenNamesForGlobalNamespace(){return L}forbiddenForObjectProperties(v,M){return{names:g,includeGlobalForbidden:!1}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("type",I)}namerForObjectProperty(){return(0,u.funPrefixNamer)("property",v=>f(v,!1,this.pyOptions.nicePropertyNames))}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,u.funPrefixNamer)("enum-case",v=>f(v,!0,this.pyOptions.nicePropertyNames))}get commentLineStart(){return"# "}emitDescriptionBlock(v){v.length===1?this.emitLine('"""',v[0],'"""'):this.emitCommentLines(v,"",void 0,'"""','"""')}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(v){const M=v.kind;return M==="class"||M==="enum"}emitBlock(v,M){this.emitLine(v),this.indent(M)}string(v){return['"',(0,c.stringEscape)(v),'"']}withImport(v,M){return(this.pyOptions.features.typeHints||v!=="typing")&&(0,R.mapUpdateInto)(this.imports,v,x=>x?(0,R.setUnionInto)(x,[M]):new Set([M])),M}withTyping(v){return this.withImport("typing",v)}namedType(v){const M=this.nameForNamedType(v);return this.declaredTypes.has(v)?M:["'",M,"'"]}pythonType(v){const M=(0,O.followTargetType)(v);return(0,P.matchType)(M,x=>this.withTyping("Any"),x=>"None",x=>"bool",x=>"int",x=>"float",x=>"str",x=>[this.withTyping("List"),"[",this.pythonType(x.items),"]"],x=>this.namedType(x),x=>[this.withTyping("Dict"),"[str, ",this.pythonType(x.values),"]"],x=>this.namedType(x),x=>{const[W,S]=(0,P.removeNullFromUnion)(x),B=Array.from(S).map(q=>this.pythonType(q));if(W!==null){let q=[];return!this.getAlphabetizeProperties()&&this.pyOptions.features.dataClasses&&q.push(" = None"),S.size>1?(this.withImport("typing","Union"),[this.withTyping("Optional"),"[Union[",(0,R.arrayIntercalate)(", ",B),"]]",...q]):[this.withTyping("Optional"),"[",(0,w.defined)((0,R.iterableFirst)(B)),"]",...q]}else return[this.withTyping("Union"),"[",(0,R.arrayIntercalate)(", ",B),"]"]},x=>x.kind==="date-time"?this.withImport("datetime","datetime"):x.kind==="uuid"?this.withImport("uuid","UUID"):(0,w.panic)(`Transformed type ${x.kind} not supported`))}declarationLine(v){return v instanceof a.ClassType?["class ",this.nameForNamedType(v),":"]:v instanceof a.EnumType?["class ",this.nameForNamedType(v),"(",this.withImport("enum","Enum"),"):"]:(0,w.panic)(`Can't declare type ${v.kind}`)}declareType(v,M){this.emitBlock(this.declarationLine(v),()=>{this.emitDescription(this.descriptionForType(v)),M()}),this.declaredTypes.add(v)}emitClassMembers(v){if(this.pyOptions.features.dataClasses)return;const M=[];this.forEachClassProperty(v,"none",(x,W,S)=>{M.push([x,this.typeHint(": ",this.pythonType(S.type))])}),this.emitBlock(["def __init__(self, ",(0,R.arrayIntercalate)(", ",M),")",this.typeHint(" -> None"),":"],()=>{M.length===0?this.emitLine("pass"):this.forEachClassProperty(v,"none",x=>{this.emitLine("self.",x," = ",x)})})}typeHint(...v){return this.pyOptions.features.typeHints?v:[]}typingDecl(v,M){return[v,this.typeHint(": ",this.withTyping(M))]}typingReturn(v){return this.typeHint(" -> ",this.withTyping(v))}sortClassProperties(v,M){return this.pyOptions.features.dataClasses?(0,R.mapSortBy)(v,x=>x.type instanceof a.UnionType&&(0,P.nullableFromUnion)(x.type)!=null?1:0):super.sortClassProperties(v,M)}emitClass(v){this.pyOptions.features.dataClasses&&this.emitLine("@",this.withImport("dataclasses","dataclass")),this.declareType(v,()=>{this.pyOptions.features.typeHints&&(v.getProperties().size===0?this.emitLine("pass"):this.forEachClassProperty(v,"none",(M,x,W)=>{this.emitDescription(this.descriptionForClassProperty(v,x)),this.emitLine(M,this.typeHint(": ",this.pythonType(W.type)))}),this.ensureBlankLine()),this.emitClassMembers(v)})}emitEnum(v){this.declareType(v,()=>{this.forEachEnumCase(v,"none",(M,x)=>{this.emitLine([M," = ",this.string(x)])})})}emitImports(){this.imports.forEach((v,M)=>{this.emitLine("from ",M," import ",Array.from(v).join(", "))})}emitSupportCode(){}emitClosingCode(){}emitSourceStructure(v){const M=this.gatherSource(()=>{this.forEachNamedType(["interposing",2],S=>this.emitClass(S),S=>this.emitEnum(S),S=>{})}),x=this.gatherSource(()=>this.emitClosingCode()),W=this.gatherSource(()=>this.emitSupportCode());this.leadingComments!==void 0&&this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitImports(),this.ensureBlankLine(2),this.emitGatheredSource(W),this.ensureBlankLine(2),this.emitGatheredSource(M),this.ensureBlankLine(2),this.emitGatheredSource(x)}}e.PythonRenderer=E;function b(T,v){return typeof v=="function"?T.value!==void 0?{value:v(r(T))}:T.lambda!==void 0?{lambda:(0,U.multiWord)(" ","lambda x:",v([(0,U.parenIfNeeded)(T.lambda),"(x)"])),value:void 0}:{lambda:(0,U.multiWord)(" ","lambda x:",v("x")),value:void 0}:v.value!==void 0?(0,w.panic)("Cannot compose into a value"):v.lambda===void 0?T:T.value===void 0?T.lambda===void 0?v:{lambda:(0,U.multiWord)("","lambda x: ",(0,U.parenIfNeeded)(v.lambda),"(",(0,U.parenIfNeeded)(T.lambda),"(x))"),value:void 0}:{lambda:v.lambda,value:r(T)}}const F={value:void 0};function m(T){return T.lambda!==void 0?T.value===void 0?T.lambda:(0,U.multiWord)("","lambda x: ",(0,U.parenIfNeeded)(T.lambda),"(",T.value,")"):T.value!==void 0?(0,U.multiWord)(" ","lambda x:",T.value):(0,U.multiWord)(" ","lambda x:","x")}function r(T){return T.value===void 0?(0,w.panic)("Cannot make value from lambda without value"):T.lambda!==void 0?[(0,U.parenIfNeeded)(T.lambda),"(",T.value,")"]:T.value}class s extends E{constructor(){super(...arguments),this._deserializerFunctions=new Set,this._converterNamer=(0,u.funPrefixNamer)("converter",v=>f(v,!1,this.pyOptions.nicePropertyNames)),this._topLevelConverterNames=new Map,this._haveTypeVar=!1,this._haveEnumTypeVar=!1,this._haveDateutil=!1}emitTypeVar(v,M){this.pyOptions.features.typeHints&&this.emitLine(v," = ",this.withTyping("TypeVar"),"(",this.string(v),M,")")}typeVar(){return this._haveTypeVar=!0,this.withTyping("TypeVar"),"T"}enumTypeVar(){return this._haveEnumTypeVar=!0,this.withTyping("TypeVar"),this.withImport("enum","Enum"),"EnumT"}cast(v,M){return this.pyOptions.features.typeHints?[this.withTyping("cast"),"(",v,", ",M,")"]:M}emitNoneConverter(){this.emitBlock(["def from_none(",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withTyping("Any")),":"],()=>{this.emitLine("assert x is None"),this.emitLine("return x")})}emitBoolConverter(){this.emitBlock(["def from_bool(",this.typingDecl("x","Any"),")",this.typeHint(" -> bool"),":"],()=>{this.emitLine("assert isinstance(x, bool)"),this.emitLine("return x")})}emitIntConverter(){this.emitBlock(["def from_int(",this.typingDecl("x","Any"),")",this.typeHint(" -> int"),":"],()=>{this.emitLine("assert isinstance(x, int) and not isinstance(x, bool)"),this.emitLine("return x")})}emitFromFloatConverter(){this.emitBlock(["def from_float(",this.typingDecl("x","Any"),")",this.typeHint(" -> float"),":"],()=>{this.emitLine("assert isinstance(x, (float, int)) and not isinstance(x, bool)"),this.emitLine("return float(x)")})}emitToFloatConverter(){this.emitBlock(["def to_float(",this.typingDecl("x","Any"),")",this.typeHint(" -> float"),":"],()=>{this.emitLine("assert isinstance(x, float)"),this.emitLine("return x")})}emitStrConverter(){this.emitBlock(["def from_str(",this.typingDecl("x","Any"),")",this.typeHint(" -> str"),":"],()=>{this.emitLine("assert isinstance(x, ","str",")"),this.emitLine("return x")})}emitToEnumConverter(){const v=this.enumTypeVar();this.emitBlock(["def to_enum(c",this.typeHint(": ",this.withTyping("Type"),"[",v,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",v),":"],()=>{this.emitLine("assert isinstance(x, c)"),this.emitLine("return x.value")})}emitListConverter(){const v=this.typeVar();this.emitBlock(["def from_list(f",this.typeHint(": ",this.withTyping("Callable"),"[[",this.withTyping("Any"),"], ",v,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withTyping("List"),"[",v,"]"),":"],()=>{this.emitLine("assert isinstance(x, list)"),this.emitLine("return [f(y) for y in x]")})}emitToClassConverter(){const v=this.typeVar();this.emitBlock(["def to_class(c",this.typeHint(": ",this.withTyping("Type"),"[",v,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> dict"),":"],()=>{this.emitLine("assert isinstance(x, c)"),this.emitLine("return ",this.cast(this.withTyping("Any"),"x"),".to_dict()")})}emitDictConverter(){const v=this.typeVar();this.emitBlock(["def from_dict(f",this.typeHint(": ",this.withTyping("Callable"),"[[",this.withTyping("Any"),"], ",v,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withTyping("Dict"),"[str, ",v,"]"),":"],()=>{this.emitLine("assert isinstance(x, dict)"),this.emitLine("return { k: f(v) for (k, v) in x.items() }")})}emitUnionConverter(){this.emitMultiline(`def from_union(fs, x):
916
+ for f in fs:
917
+ try:
918
+ return f(x)
919
+ except:
920
+ pass
921
+ assert False`)}emitFromDatetimeConverter(){this.emitBlock(["def from_datetime(",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withImport("datetime","datetime")),":"],()=>{this._haveDateutil=!0,this.emitLine("return dateutil.parser.parse(x)")})}emitFromStringifiedBoolConverter(){this.emitBlock(["def from_stringified_bool(x",this.typeHint(": str"),")",this.typeHint(" -> bool"),":"],()=>{this.emitBlock('if x == "true":',()=>this.emitLine("return True")),this.emitBlock('if x == "false":',()=>this.emitLine("return False")),this.emitLine("assert False")})}emitIsTypeConverter(){const v=this.typeVar();this.emitBlock(["def is_type(t",this.typeHint(": ",this.withTyping("Type"),"[",v,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",v),":"],()=>{this.emitLine("assert isinstance(x, t)"),this.emitLine("return x")})}emitConverter(v){switch(v){case"none":return this.emitNoneConverter();case"bool":return this.emitBoolConverter();case"int":return this.emitIntConverter();case"from-float":return this.emitFromFloatConverter();case"to-float":return this.emitToFloatConverter();case"str":return this.emitStrConverter();case"to-enum":return this.emitToEnumConverter();case"list":return this.emitListConverter();case"to-class":return this.emitToClassConverter();case"dict":return this.emitDictConverter();case"union":return this.emitUnionConverter();case"from-datetime":return this.emitFromDatetimeConverter();case"from-stringified-bool":return this.emitFromStringifiedBoolConverter();case"is-type":return this.emitIsTypeConverter();default:return(0,w.assertNever)(v)}}conv(v){this._deserializerFunctions.add(v);const M=v.replace(/-/g,"_");return v.startsWith("from-")||v.startsWith("to-")||v.startsWith("is-")?M:["from_",M]}convFn(v,M){return b(M,{lambda:(0,U.singleWord)(this.conv(v)),value:void 0})}typeObject(v){const M=(0,P.matchType)(v,x=>{},x=>"type(None)",x=>"bool",x=>"int",x=>"float",x=>"str",x=>"List",x=>this.nameForNamedType(x),x=>"dict",x=>this.nameForNamedType(x),x=>{},x=>{if(x.kind==="date-time")return this.withImport("datetime","datetime");if(x.kind==="uuid")return this.withImport("uuid","UUID")});return M===void 0?(0,w.panic)(`No type object for ${v.kind}`):M}transformer(v,M,x){const W=(B,q)=>B===void 0?q:this.transformer(q,B,x),S=(B,q)=>b(q,G=>[this.conv("is-type"),"(",this.typeObject(B),", ",G,")"]);if(M instanceof O.DecodingChoiceTransformer||M instanceof O.ChoiceTransformer){const B=M.transformers.map(q=>m(this.transformer(F,q,x)).source);return b(v,q=>[this.conv("union"),"([",(0,R.arrayIntercalate)(", ",B),"], ",q,")"])}else if(M instanceof O.DecodingTransformer){const B=M.consumer,q=this.deserializer(v,M.sourceType);return W(B,q)}else{if(M instanceof O.EncodingTransformer)return this.serializer(v,M.sourceType);if(M instanceof O.UnionInstantiationTransformer)return v;if(M instanceof O.UnionMemberMatchTransformer){const B=M.transformer,q=S(M.memberType,v);return W(B,q)}else if(M instanceof O.ParseStringTransformer){const B=M.consumer,q=B===void 0?x:B.sourceType;let G;switch(q.kind){case"integer":G=b(v,$=>["int(",$,")"]);break;case"bool":G=this.convFn("from-stringified-bool",v);break;case"enum":G=this.deserializer(v,q);break;case"date-time":G=this.convFn("from-datetime",v);break;case"uuid":G=b(v,$=>[this.withImport("uuid","UUID"),"(",$,")"]);break;default:return(0,w.panic)(`Parsing of ${q.kind} in a transformer is not supported`)}return W(B,G)}else if(M instanceof O.StringifyTransformer){const B=M.consumer;let q;switch(M.sourceType.kind){case"integer":q=b(v,G=>["str(",G,")"]);break;case"bool":q=b(v,G=>["str(",G,").lower()"]);break;case"enum":q=this.serializer(v,M.sourceType);break;case"date-time":q=b(v,G=>[G,".isoformat()"]);break;case"uuid":q=b(v,G=>["str(",G,")"]);break;default:return(0,w.panic)(`Parsing of ${M.sourceType.kind} in a transformer is not supported`)}return W(B,q)}else return(0,w.panic)(`Transformer ${M.kind} is not supported`)}}deserializer(v,M){const x=(0,O.transformationForType)(M);return x!==void 0?this.transformer(v,x.transformer,x.targetType):(0,P.matchType)(M,W=>v,W=>this.convFn("none",v),W=>this.convFn("bool",v),W=>this.convFn("int",v),W=>this.convFn("from-float",v),W=>this.convFn("str",v),W=>b(v,S=>[this.conv("list"),"(",m(this.deserializer(F,W.items)).source,", ",S,")"]),W=>b(v,{lambda:(0,U.singleWord)(this.nameForNamedType(W),".from_dict"),value:void 0}),W=>b(v,S=>[this.conv("dict"),"(",m(this.deserializer(F,W.values)).source,", ",S,")"]),W=>b(v,{lambda:(0,U.singleWord)(this.nameForNamedType(W)),value:void 0}),W=>{const S=Array.from(W.members).map(B=>m(this.deserializer(F,B)).source);return b(v,B=>[this.conv("union"),"([",(0,R.arrayIntercalate)(", ",S),"], ",B,")"])},W=>W.kind==="date-time"?this.convFn("from-datetime",v):W.kind==="uuid"?b(v,S=>[this.withImport("uuid","UUID"),"(",S,")"]):(0,w.panic)(`Transformed type ${W.kind} not supported`))}serializer(v,M){const x=(0,O.transformationForType)(M);if(x!==void 0){const W=x.reverse;return this.transformer(v,W.transformer,W.targetType)}return(0,P.matchType)(M,W=>v,W=>this.convFn("none",v),W=>this.convFn("bool",v),W=>this.convFn("int",v),W=>this.convFn("to-float",v),W=>this.convFn("str",v),W=>b(v,S=>[this.conv("list"),"(",m(this.serializer(F,W.items)).source,", ",S,")"]),W=>b(v,S=>[this.conv("to-class"),"(",this.nameForNamedType(W),", ",S,")"]),W=>b(v,S=>[this.conv("dict"),"(",m(this.serializer(F,W.values)).source,", ",S,")"]),W=>b(v,S=>[this.conv("to-enum"),"(",this.nameForNamedType(W),", ",S,")"]),W=>{const S=Array.from(W.members).map(B=>m(this.serializer(F,B)).source);return b(v,B=>[this.conv("union"),"([",(0,R.arrayIntercalate)(", ",S),"], ",B,")"])},W=>W.kind==="date-time"?b(v,S=>[S,".isoformat()"]):W.kind==="uuid"?b(v,S=>["str(",S,")"]):(0,w.panic)(`Transformed type ${W.kind} not supported`))}emitClassMembers(v){super.emitClassMembers(v),this.ensureBlankLine();const M=this.nameForNamedType(v);this.emitLine("@staticmethod"),this.emitBlock(["def from_dict(",this.typingDecl("obj","Any"),")",this.typeHint(" -> ",this.namedType(v)),":"],()=>{const x=[];this.emitLine("assert isinstance(obj, dict)"),this.forEachClassProperty(v,"none",(W,S,B)=>{const q={value:["obj.get(",this.string(S),")"]};this.emitLine(W," = ",r(this.deserializer(q,B.type))),x.push(W)}),this.emitLine("return ",M,"(",(0,R.arrayIntercalate)(", ",x),")")}),this.ensureBlankLine(),this.emitBlock(["def to_dict(self)",this.typeHint(" -> dict"),":"],()=>{this.emitLine("result",this.typeHint(": dict")," = {}"),this.forEachClassProperty(v,"none",(x,W,S)=>{const B={value:["self.",x]};S.isOptional?this.emitBlock(["if self.",x," is not None:"],()=>{this.emitLine("result[",this.string(W),"] = ",r(this.serializer(B,S.type)))}):this.emitLine("result[",this.string(W),"] = ",r(this.serializer(B,S.type)))}),this.emitLine("return result")})}emitImports(){super.emitImports(),this._haveDateutil&&this.emitLine("import dateutil.parser"),!(!this._haveTypeVar&&!this._haveEnumTypeVar)&&(this.ensureBlankLine(2),this._haveTypeVar&&this.emitTypeVar(this.typeVar(),[]),this._haveEnumTypeVar&&this.emitTypeVar(this.enumTypeVar(),[", bound=",this.withImport("enum","Enum")]))}emitSupportCode(){const v=Array.from(this._deserializerFunctions).map(M=>[M,M]);this.forEachWithBlankLines(v,["interposing",2],M=>{this.emitConverter(M)})}makeTopLevelDependencyNames(v,M){const x=new u.DependencyName(this._converterNamer,d.topLevelNameOrder,S=>`${S(M)}_from_dict`),W=new u.DependencyName(this._converterNamer,d.topLevelNameOrder,S=>`${S(M)}_to_dict`);return this._topLevelConverterNames.set(M,{fromDict:x,toDict:W}),[x,W]}emitDefaultLeadingComments(){this.ensureBlankLine(),this._haveDateutil&&this.emitCommentLines(["This code parses date/times, so please",""," pip install python-dateutil",""]),this.emitCommentLines(["To use this code, make sure you",""," import json","","and then, to convert JSON from a string, do",""]),this.forEachTopLevel("none",(v,M)=>{const{fromDict:x}=(0,w.defined)(this._topLevelConverterNames.get(M));this.emitLine(this.commentLineStart," result = ",x,"(json.loads(json_string))")})}emitClosingCode(){this.forEachTopLevel(["interposing",2],(v,M)=>{const{fromDict:x,toDict:W}=(0,w.defined)(this._topLevelConverterNames.get(M)),S=this.pythonType(v);this.emitBlock(["def ",x,"(",this.typingDecl("s","Any"),")",this.typeHint(" -> ",S),":"],()=>{this.emitLine("return ",r(this.deserializer({value:"s"},v)))}),this.ensureBlankLine(2),this.emitBlock(["def ",W,"(x",this.typeHint(": ",S),")",this.typingReturn("Any"),":"],()=>{this.emitLine("return ",r(this.serializer({value:"x"},v)))})})}}e.JSONPythonRenderer=s}(ua)),ua}var bi={},Im;function Mk(){if(Im)return bi;Im=1,Object.defineProperty(bi,"__esModule",{value:!0}),bi.PikeRenderer=bi.PikeTargetLanguage=bi.pikeOptions=void 0;const e=Wt(),t=Ft(),n=Bt(),a=qt(),l=mt(),d=pt(),u=Nt();bi.pikeOptions={};const c=["auto","nomask","final","static","extern","private","local","public","protected","inline","optional","variant","void","mixed","array","__attribute__","__deprecated__","mapping","multiset","object","function","__func__","program","string","float","int","enum","typedef","if","do","for","while","else","foreach","catch","gauge","class","break","case","const","constant","continue","default","import","inherit","lambda","predef","return","sscanf","switch","typeof","global"],w=(0,u.legalizeCharacters)(u.isLetterOrUnderscoreOrDigit),U=(0,t.funPrefixNamer)("enumNamer",(0,u.makeNameStyle)("upper-underscore",w)),P=(0,t.funPrefixNamer)("genericNamer",(0,u.makeNameStyle)("underscore",w)),O=(0,t.funPrefixNamer)("typeNamer",(0,u.makeNameStyle)("pascal",w));class R extends a.TargetLanguage{constructor(){super("Pike",["pike","pikelang"],"pmod")}getOptions(){return[]}makeRenderer(g){return new _(this,g)}}bi.PikeTargetLanguage=R;class _ extends e.ConvenienceRenderer{emitSourceStructure(){this.emitInformationComment(),this.ensureBlankLine(),this.forEachTopLevel("leading",(g,y)=>{this.emitTopLevelTypedef(g,y),this.ensureBlankLine(),this.emitTopLevelConverter(g,y),this.ensureBlankLine()},g=>this.namedTypeToNameForTopLevel(g)===void 0),this.ensureBlankLine(),this.forEachNamedType("leading-and-interposing",(g,y)=>this.emitClassDefinition(g,y),(g,y)=>this.emitEnum(g,y),(g,y)=>this.emitUnion(g,y))}get enumCasesInGlobalNamespace(){return!0}makeEnumCaseNamer(){return U}makeNamedTypeNamer(){return O}makeUnionMemberNamer(){return P}namerForObjectProperty(){return P}forbiddenNamesForGlobalNamespace(){return[...c]}forbiddenForObjectProperties(g,y){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(g,y){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(g,y){return{names:[],includeGlobalForbidden:!0}}sourceFor(g){return["class","object","enum"].indexOf(g.kind)>=0?(0,n.singleWord)(this.nameForNamedType(g)):(0,d.matchType)(g,y=>(0,n.singleWord)("mixed"),y=>(0,n.singleWord)("mixed"),y=>(0,n.singleWord)("bool"),y=>(0,n.singleWord)("int"),y=>(0,n.singleWord)("float"),y=>(0,n.singleWord)("string"),y=>(0,n.singleWord)(["array(",this.sourceFor(y.items).source,")"]),y=>(0,n.singleWord)(this.nameForNamedType(y)),y=>{let h;const p=y.values;return h=this.sourceFor(p).source,(0,n.singleWord)(["mapping(string:",h,")"])},y=>(0,n.singleWord)("enum"),y=>{if((0,d.nullableFromUnion)(y)!==null){const h=Array.from(y.getChildren()).map(p=>(0,n.parenIfNeeded)(this.sourceFor(p)));return(0,n.multiWord)("|",...h)}else return(0,n.singleWord)(this.nameForNamedType(y))})}emitClassDefinition(g,y){this.emitDescription(this.descriptionForType(g)),this.emitBlock(["class ",y],()=>{this.emitClassMembers(g),this.ensureBlankLine(),this.emitEncodingFunction(g)}),this.ensureBlankLine(),this.emitDecodingFunction(y,g)}emitEnum(g,y){this.emitBlock([g.kind," ",y],()=>{let h=[];this.forEachEnumCase(g,"none",(p,k)=>{h.push([[p,' = "',(0,u.stringEscape)(k),'", '],['// json: "',k,'"']])}),this.emitTable(h)})}emitUnion(g,y){if((0,d.nullableFromUnion)(g)!==null)return;this.emitDescription(this.descriptionForType(g));const[,p]=(0,d.removeNullFromUnion)(g);let k=[];this.forEachUnionMember(g,p,"none",null,(D,C)=>{const I=this.sourceFor(C).source;k.push([I])}),this.emitLine(["typedef ",k.map(D=>D.map(C=>this.sourcelikeToString(C))).join("|")," ",y,";"]),this.ensureBlankLine(),this.emitBlock([y," ",y,"_from_JSON(mixed json)"],()=>{this.emitLine(["return json;"])})}emitBlock(g,y,h=" {",p="}"){this.emitLine(g,h),this.indent(y),this.emitLine(p)}emitMappingBlock(g,y){this.emitBlock(g,y,"([","]);")}emitClassMembers(g){let y=[];this.forEachClassProperty(g,"none",(h,p,k)=>{const D=this.sourceFor(k.type).source;y.push([[D," "],[h,"; "],['// json: "',p,'"']])}),this.emitTable(y)}emitInformationComment(){this.emitCommentLines(["This source has been automatically generated by quicktype.","( https://github.com/quicktype/quicktype )","","To use this code, simply import it into your project as a Pike module.","To JSON-encode your object, you can pass it to `Standards.JSON.encode`","or call `encode_json` on it.","","To decode a JSON string, first pass it to `Standards.JSON.decode`,","and then pass the result to `<YourClass>_from_JSON`.","It will return an instance of <YourClass>.","Bear in mind that these functions have unexpected behavior,","and will likely throw an error, if the JSON string does not","match the expected interface, even if the JSON itself is valid."],"// ")}emitTopLevelTypedef(g,y){this.emitLine("typedef ",this.sourceFor(g).source," ",y,";")}emitTopLevelConverter(g,y){this.emitBlock([y," ",y,"_from_JSON(mixed json)"],()=>{if(g instanceof l.PrimitiveType)this.emitLine(["return json;"]);else if(g instanceof l.ArrayType)g.items instanceof l.PrimitiveType?this.emitLine(["return json;"]):this.emitLine(["return map(json, ",this.sourceFor(g.items).source,"_from_JSON);"]);else if(g instanceof l.MapType){const h=this.sourceFor(g.values).source;this.emitLine(["mapping(string:",h,") retval = ([]);"]);let p;g.values instanceof l.PrimitiveType?p=["(",h,") v"]:p=[h,"_from_JSON(v)"],this.emitBlock(["foreach (json; string k; mixed v)"],()=>{this.emitLine(["retval[k] = ",p,";"])}),this.emitLine(["return retval;"])}})}emitEncodingFunction(g){this.emitBlock(["string encode_json()"],()=>{this.emitMappingBlock(["mapping(string:mixed) json = "],()=>{this.forEachClassProperty(g,"none",(y,h)=>{this.emitLine(['"',(0,u.stringEscape)(h),'" : ',y,","])})}),this.ensureBlankLine(),this.emitLine(["return Standards.JSON.encode(json);"])})}emitDecodingFunction(g,y){this.emitBlock([g," ",g,"_from_JSON(mixed json)"],()=>{this.emitLine([g," retval = ",g,"();"]),this.ensureBlankLine(),this.forEachClassProperty(y,"none",(h,p)=>{this.emitLine(["retval.",h,' = json["',(0,u.stringEscape)(p),'"];'])}),this.ensureBlankLine(),this.emitLine(["return retval;"])})}}return bi.PikeRenderer=_,bi}var ec={},Rm;function vb(){return Rm||(Rm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.HaskellRenderer=e.HaskellTargetLanguage=e.haskellOptions=void 0;const t=et(),n=qt(),a=zt(),l=pt(),d=Wt(),u=Ft(),c=Nt(),w=Bt();e.haskellOptions={justTypes:new a.BooleanOption("just-types","Plain types only",!1),useList:new a.EnumOption("array-type","Use Array or List",[["array",!1],["list",!0]]),moduleName:new a.StringOption("module","Generated module name","NAME","QuickType")};class U extends n.TargetLanguage{constructor(){super("Haskell",["haskell"],"haskell")}getOptions(){return[e.haskellOptions.justTypes,e.haskellOptions.moduleName,e.haskellOptions.useList]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(h,p){return new g(this,h,(0,a.getOptionValues)(e.haskellOptions,p))}}e.HaskellTargetLanguage=U;const P=["as","case","class","data","default","deriving","do","else","family","forall","foreign","hiding","if","import","in","infix","infixl","infixr","instance","let","of","mdo","module","newtype","proc","qualified","rec","then","type","where","id","Array","HashMap","Map","Maybe","Bool","Int","True","False","Enum","encode","decode","text","Text","Value","Object","Result","Series","Error"],O=(0,c.legalizeCharacters)(y=>(0,c.isAscii)(y)&&(0,c.isLetterOrUnderscoreOrDigit)(y));function R(y,h){const p=(0,c.splitIntoWords)(y);return(0,c.combineWords)(p,O,h?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,h?c.allUpperWordStyle:c.allLowerWordStyle,c.allUpperWordStyle,"",c.isLetterOrUnderscore)}const _=(0,u.funPrefixNamer)("upper",y=>R(y,!0)),L=(0,u.funPrefixNamer)("lower",y=>R(y,!1));class g extends d.ConvenienceRenderer{constructor(h,p,k){super(h,p),this._options=k}forbiddenNamesForGlobalNamespace(){return P}makeNamedTypeNamer(){return _}namerForObjectProperty(){return L}forbiddenForObjectProperties(h,p){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return _}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return _}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(h,p,k,D){return`${super.proposeUnionMemberName(h,p,k,D)}_in_${D(p)}`}get commentLineStart(){return"-- "}emitDescriptionBlock(h){h.length===1?this.emitLine("{-| ",h[0]," -}"):this.emitCommentLines(h,"",void 0,"-}","{-| ")}haskellType(h,p=!1){return(0,l.matchType)(h,k=>(0,w.multiWord)(" ","Maybe","Text"),k=>(0,w.multiWord)(" ","Maybe","Text"),k=>(0,w.singleWord)("Bool"),k=>(0,w.singleWord)("Int"),k=>(0,w.singleWord)("Float"),k=>(0,w.singleWord)("Text"),k=>this._options.useList?(0,w.multiWord)("","[",(0,w.parenIfNeeded)(this.haskellType(k.items)),"]"):(0,w.multiWord)(" ","Vector",(0,w.parenIfNeeded)(this.haskellType(k.items))),k=>(0,w.singleWord)(this.nameForNamedType(k)),k=>(0,w.multiWord)(" ","HashMap Text",(0,w.parenIfNeeded)(this.haskellType(k.values))),k=>(0,w.singleWord)(this.nameForNamedType(k)),k=>{const D=(0,l.nullableFromUnion)(k);if(D!==null){const C=this.haskellType(D);return p?C:(0,w.multiWord)(" ","Maybe",(0,w.parenIfNeeded)(C))}return(0,w.singleWord)(this.nameForNamedType(k))})}haskellProperty(h){return h.isOptional?(0,w.multiWord)(" ","Maybe",(0,w.parenIfNeeded)(this.haskellType(h.type,!0))).source:this.haskellType(h.type).source}encoderNameForType(h){return(0,l.matchType)(h,p=>(0,w.singleWord)("String"),p=>(0,w.singleWord)("Null"),p=>(0,w.singleWord)("Bool"),p=>(0,w.singleWord)("Number"),p=>(0,w.singleWord)("Number"),p=>(0,w.singleWord)("String"),p=>(0,w.singleWord)("Array"),p=>(0,w.singleWord)("Object"),p=>(0,w.singleWord)("Object"),p=>(0,w.singleWord)("Object"),p=>(0,w.singleWord)("Object"))}emitTopLevelDefinition(h,p){this.emitLine("type ",p," = ",this.haskellType(h).source)}emitClassDefinition(h,p){let k=this.descriptionForType(h);this.forEachClassProperty(h,"none",(D,C)=>{const I=this.descriptionForClassProperty(h,C);I!==void 0&&(k===void 0?k=[]:k.push(""),k.push(`${this.sourcelikeToString(D)}:`),k.push(...I))}),this.emitDescription(k),this.emitLine("data ",p," = ",p),this.indent(()=>{let D=!0;this.forEachClassProperty(h,"none",(C,I,A)=>{this.emitLine(D?"{ ":", ",C,p," :: ",this.haskellProperty(A)),D=!1}),D&&this.emitLine("{"),this.emitLine("} deriving (Show)")})}emitEnumDefinition(h,p){this.emitDescription(this.descriptionForType(h)),this.emitLine("data ",p),this.indent(()=>{let k=!0;this.forEachEnumCase(h,"none",D=>{const C=k?"=":"|";this.emitLine(C," ",D,p),k=!1}),this.emitLine("deriving (Show)")})}emitUnionDefinition(h,p){this.emitDescription(this.descriptionForType(h)),this.emitLine("data ",p),this.indent(()=>{let k=!0;this.forEachUnionMember(h,null,"none",null,(D,C)=>{const I=k?"=":"|";C.kind==="null"?this.emitLine(I," ",D):this.emitLine(I," ",D," ",(0,w.parenIfNeeded)(this.haskellType(C))),k=!1}),this.emitLine("deriving (Show)")})}emitTopLevelFunctions(h){this.emitLine("decodeTopLevel :: ByteString -> Maybe ",h),this.emitLine("decodeTopLevel = decode")}classPropertyLength(h){let p=0;return this.forEachClassProperty(h,"none",()=>{p+=1}),p}emitClassEncoderInstance(h,p){let k=[];this.forEachClassProperty(h,"none",D=>{k.push(" "),k.push(D),k.push(p)}),this.emitLine("instance ToJSON ",p," where"),this.indent(()=>{k.length===0?this.emitLine("toJSON = \\_ -> emptyObject"):(this.emitLine("toJSON (",p,...k,") ="),this.indent(()=>{this.emitLine("object");let D=!0;this.forEachClassProperty(h,"none",(C,I)=>{this.emitLine(D?"[ ":", ",'"',(0,c.stringEscape)(I),'" .= ',C,p),D=!1}),D&&this.emitLine("["),this.emitLine("]")}))})}emitClassDecoderInstance(h,p){this.emitLine("instance FromJSON ",p," where"),this.indent(()=>{this.classPropertyLength(h)===0?this.emitLine("parseJSON emptyObject = return ",p):(this.emitLine("parseJSON (Object v) = ",p),this.indent(()=>{let k=!0;this.forEachClassProperty(h,"none",(D,C,I)=>{const A=I.isOptional?".:?":".:";this.emitLine(k?"<$> ":"<*> ","v ",A,' "',(0,c.stringEscape)(C),'"'),k=!1})}))})}emitClassFunctions(h,p){this.emitClassEncoderInstance(h,p),this.ensureBlankLine(),this.emitClassDecoderInstance(h,p)}emitEnumEncoderInstance(h,p){this.emitLine("instance ToJSON ",p," where"),this.indent(()=>{this.forEachEnumCase(h,"none",(k,D)=>{this.emitLine("toJSON ",k,p,' = "',(0,c.stringEscape)(D),'"')})})}emitEnumDecoderInstance(h,p){this.emitLine("instance FromJSON ",p," where"),this.indent(()=>{this.emitLine('parseJSON = withText "',p,'" parseText'),this.indent(()=>{this.emitLine("where"),this.indent(()=>{this.forEachEnumCase(h,"none",(k,D)=>{this.emitLine('parseText "',(0,c.stringEscape)(D),'" = return ',k,p)})})})})}emitEnumFunctions(h,p){this.emitEnumEncoderInstance(h,p),this.ensureBlankLine(),this.emitEnumDecoderInstance(h,p)}emitUnionEncoderInstance(h,p){this.emitLine("instance ToJSON ",p," where"),this.indent(()=>{this.forEachUnionMember(h,null,"none",null,(k,D)=>{D.kind==="null"?this.emitLine("toJSON ",k," = Null"):this.emitLine("toJSON (",k," x) = toJSON x")})})}emitUnionDecoderInstance(h,p){this.emitLine("instance FromJSON ",p," where"),this.indent(()=>{this.forEachUnionMember(h,null,"none",null,(k,D)=>{D.kind==="null"?this.emitLine("parseJSON Null = return ",k):this.emitLine("parseJSON xs@(",this.encoderNameForType(D).source," _) = (fmap ",k," . parseJSON) xs")})})}emitUnionFunctions(h,p){this.emitUnionEncoderInstance(h,p),this.ensureBlankLine(),this.emitUnionDecoderInstance(h,p)}emitLanguageExtensions(h){this.emitLine(`{-# LANGUAGE ${h} #-}`)}emitSourceStructure(){const h=[];this.forEachTopLevel("none",(p,k)=>{h.push([k," (..)"])}),this.forEachObject("none",(p,k)=>{(0,t.mapContains)(this.topLevels,p)||h.push([k," (..)"])}),this.forEachEnum("none",(p,k)=>{(0,t.mapContains)(this.topLevels,p)||h.push([k," (..)"])}),this.forEachUnion("none",(p,k)=>{(0,t.mapContains)(this.topLevels,p)||h.push([k," (..)"])}),this.emitLanguageExtensions("StrictData"),this.emitLanguageExtensions("OverloadedStrings"),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("module ",this._options.moduleName),this.indent(()=>{for(let p=0;p<h.length;p++)this.emitLine(p===0?"(":","," ",h[p]);this.emitLine(", decodeTopLevel"),this.emitLine(") where")}),this.ensureBlankLine(),this.emitMultiline(`import Data.Aeson
922
+ import Data.Aeson.Types (emptyObject)
923
+ import Data.ByteString.Lazy (ByteString)
924
+ import Data.HashMap.Strict (HashMap)
925
+ import Data.Text (Text)`),this._options.useList||this.emitLine("import Data.Vector (Vector)")),this.forEachTopLevel("leading-and-interposing",(p,k)=>this.emitTopLevelDefinition(p,k),p=>this.namedTypeToNameForTopLevel(p)===void 0),this.forEachNamedType("leading-and-interposing",(p,k)=>this.emitClassDefinition(p,k),(p,k)=>this.emitEnumDefinition(p,k),(p,k)=>this.emitUnionDefinition(p,k)),this.forEachTopLevel("leading-and-interposing",(p,k)=>this.emitTopLevelFunctions(k)),this.forEachNamedType("leading-and-interposing",(p,k)=>this.emitClassFunctions(p,k),(p,k)=>this.emitEnumFunctions(p,k),(p,k)=>this.emitUnionFunctions(p,k)),!this._options.justTypes&&this.ensureBlankLine()}}e.HaskellRenderer=g}(ec)),ec}var qr={},Gs={exports:{}};/**
926
+ * @license
927
+ * Lodash <https://lodash.com/>
928
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
929
+ * Released under MIT license <https://lodash.com/license>
930
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
931
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
932
+ */var Dk=Gs.exports,Mm;function Bk(){return Mm||(Mm=1,function(e,t){(function(){var n,a="4.17.21",l=200,d="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",u="Expected a function",c="Invalid `variable` option passed into `_.template`",w="__lodash_hash_undefined__",U=500,P="__lodash_placeholder__",O=1,R=2,_=4,L=1,g=2,y=1,h=2,p=4,k=8,D=16,C=32,I=64,A=128,f=256,E=512,b=30,F="...",m=800,r=16,s=1,T=2,v=3,M=1/0,x=9007199254740991,W=17976931348623157e292,S=NaN,B=4294967295,q=B-1,G=B>>>1,$=[["ary",A],["bind",y],["bindKey",h],["curry",k],["curryRight",D],["flip",E],["partial",C],["partialRight",I],["rearg",f]],ee="[object Arguments]",ue="[object Array]",se="[object AsyncFunction]",ie="[object Boolean]",ye="[object Date]",be="[object DOMException]",Ae="[object Error]",pe="[object Function]",le="[object GeneratorFunction]",me="[object Map]",de="[object Number]",Q="[object Null]",z="[object Object]",V="[object Promise]",ae="[object Proxy]",Te="[object RegExp]",Ie="[object Set]",Ce="[object String]",We="[object Symbol]",Ge="[object Undefined]",Y="[object WeakMap]",te="[object WeakSet]",K="[object ArrayBuffer]",j="[object DataView]",J="[object Float32Array]",ce="[object Float64Array]",X="[object Int8Array]",ge="[object Int16Array]",Se="[object Int32Array]",De="[object Uint8Array]",we="[object Uint8ClampedArray]",Pe="[object Uint16Array]",re="[object Uint32Array]",Re=/\b__p \+= '';/g,ze=/\b(__p \+=) '' \+/g,H=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ke=/&(?:amp|lt|gt|quot|#39);/g,Ne=/[&<>"']/g,oe=RegExp(ke.source),Le=RegExp(Ne.source),Fe=/<%-([\s\S]+?)%>/g,He=/<%([\s\S]+?)%>/g,qe=/<%=([\s\S]+?)%>/g,Ke=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ct=/^\w*$/,xn=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wt=/[\\^$.*+?()[\]{}|]/g,dt=RegExp(wt.source),Pt=/^\s+/,Vt=/\s/,en=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Sr=/\{\n\/\* \[wrapped with (.+)\] \*/,wr=/,? & /,Mt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ln=/[()=,{}\[\]\/\s]/,Jt=/\\(\\)?/g,zn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,bn=/\w*$/,ao=/^[-+]0x[0-9a-f]+$/i,Fb=/^0b[01]+$/i,Pb=/^\[object .+?Constructor\]$/,Ib=/^0o[0-7]+$/i,Rb=/^(?:0|[1-9]\d*)$/,Mb=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,uo=/($^)/,Db=/['\n\r\u2028\u2029\\]/g,lo="\\ud800-\\udfff",Bb="\\u0300-\\u036f",jb="\\ufe20-\\ufe2f",Ub="\\u20d0-\\u20ff",Lf=Bb+jb+Ub,_f="\\u2700-\\u27bf",kf="a-z\\xdf-\\xf6\\xf8-\\xff",xb="\\xac\\xb1\\xd7\\xf7",zb="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Wb="\\u2000-\\u206f",qb=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Nf="A-Z\\xc0-\\xd6\\xd8-\\xde",Of="\\ufe0e\\ufe0f",Cf=xb+zb+Wb+qb,$a="['’]",Jb="["+lo+"]",Ef="["+Cf+"]",co="["+Lf+"]",Af="\\d+",Gb="["+_f+"]",Ff="["+kf+"]",Pf="[^"+lo+Cf+Af+_f+kf+Nf+"]",eu="\\ud83c[\\udffb-\\udfff]",Hb="(?:"+co+"|"+eu+")",If="[^"+lo+"]",tu="(?:\\ud83c[\\udde6-\\uddff]){2}",nu="[\\ud800-\\udbff][\\udc00-\\udfff]",Lr="["+Nf+"]",Rf="\\u200d",Mf="(?:"+Ff+"|"+Pf+")",Kb="(?:"+Lr+"|"+Pf+")",Df="(?:"+$a+"(?:d|ll|m|re|s|t|ve))?",Bf="(?:"+$a+"(?:D|LL|M|RE|S|T|VE))?",jf=Hb+"?",Uf="["+Of+"]?",Vb="(?:"+Rf+"(?:"+[If,tu,nu].join("|")+")"+Uf+jf+")*",Zb="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Qb="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",xf=Uf+jf+Vb,Xb="(?:"+[Gb,tu,nu].join("|")+")"+xf,Yb="(?:"+[If+co+"?",co,tu,nu,Jb].join("|")+")",$b=RegExp($a,"g"),e0=RegExp(co,"g"),iu=RegExp(eu+"(?="+eu+")|"+Yb+xf,"g"),t0=RegExp([Lr+"?"+Ff+"+"+Df+"(?="+[Ef,Lr,"$"].join("|")+")",Kb+"+"+Bf+"(?="+[Ef,Lr+Mf,"$"].join("|")+")",Lr+"?"+Mf+"+"+Df,Lr+"+"+Bf,Qb,Zb,Af,Xb].join("|"),"g"),n0=RegExp("["+Rf+lo+Lf+Of+"]"),i0=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,r0=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],s0=-1,_t={};_t[J]=_t[ce]=_t[X]=_t[ge]=_t[Se]=_t[De]=_t[we]=_t[Pe]=_t[re]=!0,_t[ee]=_t[ue]=_t[K]=_t[ie]=_t[j]=_t[ye]=_t[Ae]=_t[pe]=_t[me]=_t[de]=_t[z]=_t[Te]=_t[Ie]=_t[Ce]=_t[Y]=!1;var Lt={};Lt[ee]=Lt[ue]=Lt[K]=Lt[j]=Lt[ie]=Lt[ye]=Lt[J]=Lt[ce]=Lt[X]=Lt[ge]=Lt[Se]=Lt[me]=Lt[de]=Lt[z]=Lt[Te]=Lt[Ie]=Lt[Ce]=Lt[We]=Lt[De]=Lt[we]=Lt[Pe]=Lt[re]=!0,Lt[Ae]=Lt[pe]=Lt[Y]=!1;var o0={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},a0={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},u0={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},l0={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},c0=parseFloat,f0=parseInt,zf=typeof Gr=="object"&&Gr&&Gr.Object===Object&&Gr,d0=typeof self=="object"&&self&&self.Object===Object&&self,Qt=zf||d0||Function("return this")(),ru=t&&!t.nodeType&&t,Ki=ru&&!0&&e&&!e.nodeType&&e,Wf=Ki&&Ki.exports===ru,su=Wf&&zf.process,Cn=function(){try{var Oe=Ki&&Ki.require&&Ki.require("util").types;return Oe||su&&su.binding&&su.binding("util")}catch{}}(),qf=Cn&&Cn.isArrayBuffer,Jf=Cn&&Cn.isDate,Gf=Cn&&Cn.isMap,Hf=Cn&&Cn.isRegExp,Kf=Cn&&Cn.isSet,Vf=Cn&&Cn.isTypedArray;function Tn(Oe,Be,Me){switch(Me.length){case 0:return Oe.call(Be);case 1:return Oe.call(Be,Me[0]);case 2:return Oe.call(Be,Me[0],Me[1]);case 3:return Oe.call(Be,Me[0],Me[1],Me[2])}return Oe.apply(Be,Me)}function h0(Oe,Be,Me,Ve){for(var nt=-1,yt=Oe==null?0:Oe.length;++nt<yt;){var Gt=Oe[nt];Be(Ve,Gt,Me(Gt),Oe)}return Ve}function En(Oe,Be){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve&&Be(Oe[Me],Me,Oe)!==!1;);return Oe}function p0(Oe,Be){for(var Me=Oe==null?0:Oe.length;Me--&&Be(Oe[Me],Me,Oe)!==!1;);return Oe}function Zf(Oe,Be){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve;)if(!Be(Oe[Me],Me,Oe))return!1;return!0}function Ci(Oe,Be){for(var Me=-1,Ve=Oe==null?0:Oe.length,nt=0,yt=[];++Me<Ve;){var Gt=Oe[Me];Be(Gt,Me,Oe)&&(yt[nt++]=Gt)}return yt}function fo(Oe,Be){var Me=Oe==null?0:Oe.length;return!!Me&&_r(Oe,Be,0)>-1}function ou(Oe,Be,Me){for(var Ve=-1,nt=Oe==null?0:Oe.length;++Ve<nt;)if(Me(Be,Oe[Ve]))return!0;return!1}function Ot(Oe,Be){for(var Me=-1,Ve=Oe==null?0:Oe.length,nt=Array(Ve);++Me<Ve;)nt[Me]=Be(Oe[Me],Me,Oe);return nt}function Ei(Oe,Be){for(var Me=-1,Ve=Be.length,nt=Oe.length;++Me<Ve;)Oe[nt+Me]=Be[Me];return Oe}function au(Oe,Be,Me,Ve){var nt=-1,yt=Oe==null?0:Oe.length;for(Ve&&yt&&(Me=Oe[++nt]);++nt<yt;)Me=Be(Me,Oe[nt],nt,Oe);return Me}function m0(Oe,Be,Me,Ve){var nt=Oe==null?0:Oe.length;for(Ve&&nt&&(Me=Oe[--nt]);nt--;)Me=Be(Me,Oe[nt],nt,Oe);return Me}function uu(Oe,Be){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve;)if(Be(Oe[Me],Me,Oe))return!0;return!1}var y0=lu("length");function g0(Oe){return Oe.split("")}function b0(Oe){return Oe.match(Mt)||[]}function Qf(Oe,Be,Me){var Ve;return Me(Oe,function(nt,yt,Gt){if(Be(nt,yt,Gt))return Ve=yt,!1}),Ve}function ho(Oe,Be,Me,Ve){for(var nt=Oe.length,yt=Me+(Ve?1:-1);Ve?yt--:++yt<nt;)if(Be(Oe[yt],yt,Oe))return yt;return-1}function _r(Oe,Be,Me){return Be===Be?A0(Oe,Be,Me):ho(Oe,Xf,Me)}function T0(Oe,Be,Me,Ve){for(var nt=Me-1,yt=Oe.length;++nt<yt;)if(Ve(Oe[nt],Be))return nt;return-1}function Xf(Oe){return Oe!==Oe}function Yf(Oe,Be){var Me=Oe==null?0:Oe.length;return Me?fu(Oe,Be)/Me:S}function lu(Oe){return function(Be){return Be==null?n:Be[Oe]}}function cu(Oe){return function(Be){return Oe==null?n:Oe[Be]}}function $f(Oe,Be,Me,Ve,nt){return nt(Oe,function(yt,Gt,St){Me=Ve?(Ve=!1,yt):Be(Me,yt,Gt,St)}),Me}function v0(Oe,Be){var Me=Oe.length;for(Oe.sort(Be);Me--;)Oe[Me]=Oe[Me].value;return Oe}function fu(Oe,Be){for(var Me,Ve=-1,nt=Oe.length;++Ve<nt;){var yt=Be(Oe[Ve]);yt!==n&&(Me=Me===n?yt:Me+yt)}return Me}function du(Oe,Be){for(var Me=-1,Ve=Array(Oe);++Me<Oe;)Ve[Me]=Be(Me);return Ve}function S0(Oe,Be){return Ot(Be,function(Me){return[Me,Oe[Me]]})}function ed(Oe){return Oe&&Oe.slice(0,rd(Oe)+1).replace(Pt,"")}function vn(Oe){return function(Be){return Oe(Be)}}function hu(Oe,Be){return Ot(Be,function(Me){return Oe[Me]})}function as(Oe,Be){return Oe.has(Be)}function td(Oe,Be){for(var Me=-1,Ve=Oe.length;++Me<Ve&&_r(Be,Oe[Me],0)>-1;);return Me}function nd(Oe,Be){for(var Me=Oe.length;Me--&&_r(Be,Oe[Me],0)>-1;);return Me}function w0(Oe,Be){for(var Me=Oe.length,Ve=0;Me--;)Oe[Me]===Be&&++Ve;return Ve}var L0=cu(o0),_0=cu(a0);function k0(Oe){return"\\"+l0[Oe]}function N0(Oe,Be){return Oe==null?n:Oe[Be]}function kr(Oe){return n0.test(Oe)}function O0(Oe){return i0.test(Oe)}function C0(Oe){for(var Be,Me=[];!(Be=Oe.next()).done;)Me.push(Be.value);return Me}function pu(Oe){var Be=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve,nt){Me[++Be]=[nt,Ve]}),Me}function id(Oe,Be){return function(Me){return Oe(Be(Me))}}function Ai(Oe,Be){for(var Me=-1,Ve=Oe.length,nt=0,yt=[];++Me<Ve;){var Gt=Oe[Me];(Gt===Be||Gt===P)&&(Oe[Me]=P,yt[nt++]=Me)}return yt}function po(Oe){var Be=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve){Me[++Be]=Ve}),Me}function E0(Oe){var Be=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve){Me[++Be]=[Ve,Ve]}),Me}function A0(Oe,Be,Me){for(var Ve=Me-1,nt=Oe.length;++Ve<nt;)if(Oe[Ve]===Be)return Ve;return-1}function F0(Oe,Be,Me){for(var Ve=Me+1;Ve--;)if(Oe[Ve]===Be)return Ve;return Ve}function Nr(Oe){return kr(Oe)?I0(Oe):y0(Oe)}function Wn(Oe){return kr(Oe)?R0(Oe):g0(Oe)}function rd(Oe){for(var Be=Oe.length;Be--&&Vt.test(Oe.charAt(Be)););return Be}var P0=cu(u0);function I0(Oe){for(var Be=iu.lastIndex=0;iu.test(Oe);)++Be;return Be}function R0(Oe){return Oe.match(iu)||[]}function M0(Oe){return Oe.match(t0)||[]}var D0=function Oe(Be){Be=Be==null?Qt:Or.defaults(Qt.Object(),Be,Or.pick(Qt,r0));var Me=Be.Array,Ve=Be.Date,nt=Be.Error,yt=Be.Function,Gt=Be.Math,St=Be.Object,mu=Be.RegExp,B0=Be.String,An=Be.TypeError,mo=Me.prototype,j0=yt.prototype,Cr=St.prototype,yo=Be["__core-js_shared__"],go=j0.toString,bt=Cr.hasOwnProperty,U0=0,sd=function(){var i=/[^.]+$/.exec(yo&&yo.keys&&yo.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}(),bo=Cr.toString,x0=go.call(St),z0=Qt._,W0=mu("^"+go.call(bt).replace(wt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),To=Wf?Be.Buffer:n,Fi=Be.Symbol,vo=Be.Uint8Array,od=To?To.allocUnsafe:n,So=id(St.getPrototypeOf,St),ad=St.create,ud=Cr.propertyIsEnumerable,wo=mo.splice,ld=Fi?Fi.isConcatSpreadable:n,us=Fi?Fi.iterator:n,Vi=Fi?Fi.toStringTag:n,Lo=function(){try{var i=$i(St,"defineProperty");return i({},"",{}),i}catch{}}(),q0=Be.clearTimeout!==Qt.clearTimeout&&Be.clearTimeout,J0=Ve&&Ve.now!==Qt.Date.now&&Ve.now,G0=Be.setTimeout!==Qt.setTimeout&&Be.setTimeout,_o=Gt.ceil,ko=Gt.floor,yu=St.getOwnPropertySymbols,H0=To?To.isBuffer:n,cd=Be.isFinite,K0=mo.join,V0=id(St.keys,St),Ht=Gt.max,tn=Gt.min,Z0=Ve.now,Q0=Be.parseInt,fd=Gt.random,X0=mo.reverse,gu=$i(Be,"DataView"),ls=$i(Be,"Map"),bu=$i(Be,"Promise"),Er=$i(Be,"Set"),cs=$i(Be,"WeakMap"),fs=$i(St,"create"),No=cs&&new cs,Ar={},Y0=er(gu),$0=er(ls),eT=er(bu),tT=er(Er),nT=er(cs),Oo=Fi?Fi.prototype:n,ds=Oo?Oo.valueOf:n,dd=Oo?Oo.toString:n;function fe(i){if(Dt(i)&&!it(i)&&!(i instanceof ft)){if(i instanceof Fn)return i;if(bt.call(i,"__wrapped__"))return hh(i)}return new Fn(i)}var Fr=function(){function i(){}return function(o){if(!It(o))return{};if(ad)return ad(o);i.prototype=o;var N=new i;return i.prototype=n,N}}();function Co(){}function Fn(i,o){this.__wrapped__=i,this.__actions__=[],this.__chain__=!!o,this.__index__=0,this.__values__=n}fe.templateSettings={escape:Fe,evaluate:He,interpolate:qe,variable:"",imports:{_:fe}},fe.prototype=Co.prototype,fe.prototype.constructor=fe,Fn.prototype=Fr(Co.prototype),Fn.prototype.constructor=Fn;function ft(i){this.__wrapped__=i,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=B,this.__views__=[]}function iT(){var i=new ft(this.__wrapped__);return i.__actions__=cn(this.__actions__),i.__dir__=this.__dir__,i.__filtered__=this.__filtered__,i.__iteratees__=cn(this.__iteratees__),i.__takeCount__=this.__takeCount__,i.__views__=cn(this.__views__),i}function rT(){if(this.__filtered__){var i=new ft(this);i.__dir__=-1,i.__filtered__=!0}else i=this.clone(),i.__dir__*=-1;return i}function sT(){var i=this.__wrapped__.value(),o=this.__dir__,N=it(i),Z=o<0,ne=N?i.length:0,he=gv(0,ne,this.__views__),ve=he.start,_e=he.end,Ee=_e-ve,je=Z?_e:ve-1,Ue=this.__iteratees__,xe=Ue.length,Je=0,Ze=tn(Ee,this.__takeCount__);if(!N||!Z&&ne==Ee&&Ze==Ee)return Dd(i,this.__actions__);var Ye=[];e:for(;Ee--&&Je<Ze;){je+=o;for(var ot=-1,$e=i[je];++ot<xe;){var lt=Ue[ot],ht=lt.iteratee,Ln=lt.type,on=ht($e);if(Ln==T)$e=on;else if(!on){if(Ln==s)continue e;break e}}Ye[Je++]=$e}return Ye}ft.prototype=Fr(Co.prototype),ft.prototype.constructor=ft;function Zi(i){var o=-1,N=i==null?0:i.length;for(this.clear();++o<N;){var Z=i[o];this.set(Z[0],Z[1])}}function oT(){this.__data__=fs?fs(null):{},this.size=0}function aT(i){var o=this.has(i)&&delete this.__data__[i];return this.size-=o?1:0,o}function uT(i){var o=this.__data__;if(fs){var N=o[i];return N===w?n:N}return bt.call(o,i)?o[i]:n}function lT(i){var o=this.__data__;return fs?o[i]!==n:bt.call(o,i)}function cT(i,o){var N=this.__data__;return this.size+=this.has(i)?0:1,N[i]=fs&&o===n?w:o,this}Zi.prototype.clear=oT,Zi.prototype.delete=aT,Zi.prototype.get=uT,Zi.prototype.has=lT,Zi.prototype.set=cT;function si(i){var o=-1,N=i==null?0:i.length;for(this.clear();++o<N;){var Z=i[o];this.set(Z[0],Z[1])}}function fT(){this.__data__=[],this.size=0}function dT(i){var o=this.__data__,N=Eo(o,i);if(N<0)return!1;var Z=o.length-1;return N==Z?o.pop():wo.call(o,N,1),--this.size,!0}function hT(i){var o=this.__data__,N=Eo(o,i);return N<0?n:o[N][1]}function pT(i){return Eo(this.__data__,i)>-1}function mT(i,o){var N=this.__data__,Z=Eo(N,i);return Z<0?(++this.size,N.push([i,o])):N[Z][1]=o,this}si.prototype.clear=fT,si.prototype.delete=dT,si.prototype.get=hT,si.prototype.has=pT,si.prototype.set=mT;function oi(i){var o=-1,N=i==null?0:i.length;for(this.clear();++o<N;){var Z=i[o];this.set(Z[0],Z[1])}}function yT(){this.size=0,this.__data__={hash:new Zi,map:new(ls||si),string:new Zi}}function gT(i){var o=zo(this,i).delete(i);return this.size-=o?1:0,o}function bT(i){return zo(this,i).get(i)}function TT(i){return zo(this,i).has(i)}function vT(i,o){var N=zo(this,i),Z=N.size;return N.set(i,o),this.size+=N.size==Z?0:1,this}oi.prototype.clear=yT,oi.prototype.delete=gT,oi.prototype.get=bT,oi.prototype.has=TT,oi.prototype.set=vT;function Qi(i){var o=-1,N=i==null?0:i.length;for(this.__data__=new oi;++o<N;)this.add(i[o])}function ST(i){return this.__data__.set(i,w),this}function wT(i){return this.__data__.has(i)}Qi.prototype.add=Qi.prototype.push=ST,Qi.prototype.has=wT;function qn(i){var o=this.__data__=new si(i);this.size=o.size}function LT(){this.__data__=new si,this.size=0}function _T(i){var o=this.__data__,N=o.delete(i);return this.size=o.size,N}function kT(i){return this.__data__.get(i)}function NT(i){return this.__data__.has(i)}function OT(i,o){var N=this.__data__;if(N instanceof si){var Z=N.__data__;if(!ls||Z.length<l-1)return Z.push([i,o]),this.size=++N.size,this;N=this.__data__=new oi(Z)}return N.set(i,o),this.size=N.size,this}qn.prototype.clear=LT,qn.prototype.delete=_T,qn.prototype.get=kT,qn.prototype.has=NT,qn.prototype.set=OT;function hd(i,o){var N=it(i),Z=!N&&tr(i),ne=!N&&!Z&&Di(i),he=!N&&!Z&&!ne&&Mr(i),ve=N||Z||ne||he,_e=ve?du(i.length,B0):[],Ee=_e.length;for(var je in i)(o||bt.call(i,je))&&!(ve&&(je=="length"||ne&&(je=="offset"||je=="parent")||he&&(je=="buffer"||je=="byteLength"||je=="byteOffset")||ci(je,Ee)))&&_e.push(je);return _e}function pd(i){var o=i.length;return o?i[Eu(0,o-1)]:n}function CT(i,o){return Wo(cn(i),Xi(o,0,i.length))}function ET(i){return Wo(cn(i))}function Tu(i,o,N){(N!==n&&!Jn(i[o],N)||N===n&&!(o in i))&&ai(i,o,N)}function hs(i,o,N){var Z=i[o];(!(bt.call(i,o)&&Jn(Z,N))||N===n&&!(o in i))&&ai(i,o,N)}function Eo(i,o){for(var N=i.length;N--;)if(Jn(i[N][0],o))return N;return-1}function AT(i,o,N,Z){return Pi(i,function(ne,he,ve){o(Z,ne,N(ne),ve)}),Z}function md(i,o){return i&&$n(o,Zt(o),i)}function FT(i,o){return i&&$n(o,dn(o),i)}function ai(i,o,N){o=="__proto__"&&Lo?Lo(i,o,{configurable:!0,enumerable:!0,value:N,writable:!0}):i[o]=N}function vu(i,o){for(var N=-1,Z=o.length,ne=Me(Z),he=i==null;++N<Z;)ne[N]=he?n:el(i,o[N]);return ne}function Xi(i,o,N){return i===i&&(N!==n&&(i=i<=N?i:N),o!==n&&(i=i>=o?i:o)),i}function Pn(i,o,N,Z,ne,he){var ve,_e=o&O,Ee=o&R,je=o&_;if(N&&(ve=ne?N(i,Z,ne,he):N(i)),ve!==n)return ve;if(!It(i))return i;var Ue=it(i);if(Ue){if(ve=Tv(i),!_e)return cn(i,ve)}else{var xe=nn(i),Je=xe==pe||xe==le;if(Di(i))return Ud(i,_e);if(xe==z||xe==ee||Je&&!ne){if(ve=Ee||Je?{}:rh(i),!_e)return Ee?uv(i,FT(ve,i)):av(i,md(ve,i))}else{if(!Lt[xe])return ne?i:{};ve=vv(i,xe,_e)}}he||(he=new qn);var Ze=he.get(i);if(Ze)return Ze;he.set(i,ve),Ih(i)?i.forEach(function($e){ve.add(Pn($e,o,N,$e,i,he))}):Fh(i)&&i.forEach(function($e,lt){ve.set(lt,Pn($e,o,N,lt,i,he))});var Ye=je?Ee?xu:Uu:Ee?dn:Zt,ot=Ue?n:Ye(i);return En(ot||i,function($e,lt){ot&&(lt=$e,$e=i[lt]),hs(ve,lt,Pn($e,o,N,lt,i,he))}),ve}function PT(i){var o=Zt(i);return function(N){return yd(N,i,o)}}function yd(i,o,N){var Z=N.length;if(i==null)return!Z;for(i=St(i);Z--;){var ne=N[Z],he=o[ne],ve=i[ne];if(ve===n&&!(ne in i)||!he(ve))return!1}return!0}function gd(i,o,N){if(typeof i!="function")throw new An(u);return vs(function(){i.apply(n,N)},o)}function ps(i,o,N,Z){var ne=-1,he=fo,ve=!0,_e=i.length,Ee=[],je=o.length;if(!_e)return Ee;N&&(o=Ot(o,vn(N))),Z?(he=ou,ve=!1):o.length>=l&&(he=as,ve=!1,o=new Qi(o));e:for(;++ne<_e;){var Ue=i[ne],xe=N==null?Ue:N(Ue);if(Ue=Z||Ue!==0?Ue:0,ve&&xe===xe){for(var Je=je;Je--;)if(o[Je]===xe)continue e;Ee.push(Ue)}else he(o,xe,Z)||Ee.push(Ue)}return Ee}var Pi=Jd(Yn),bd=Jd(wu,!0);function IT(i,o){var N=!0;return Pi(i,function(Z,ne,he){return N=!!o(Z,ne,he),N}),N}function Ao(i,o,N){for(var Z=-1,ne=i.length;++Z<ne;){var he=i[Z],ve=o(he);if(ve!=null&&(_e===n?ve===ve&&!wn(ve):N(ve,_e)))var _e=ve,Ee=he}return Ee}function RT(i,o,N,Z){var ne=i.length;for(N=rt(N),N<0&&(N=-N>ne?0:ne+N),Z=Z===n||Z>ne?ne:rt(Z),Z<0&&(Z+=ne),Z=N>Z?0:Mh(Z);N<Z;)i[N++]=o;return i}function Td(i,o){var N=[];return Pi(i,function(Z,ne,he){o(Z,ne,he)&&N.push(Z)}),N}function Xt(i,o,N,Z,ne){var he=-1,ve=i.length;for(N||(N=wv),ne||(ne=[]);++he<ve;){var _e=i[he];o>0&&N(_e)?o>1?Xt(_e,o-1,N,Z,ne):Ei(ne,_e):Z||(ne[ne.length]=_e)}return ne}var Su=Gd(),vd=Gd(!0);function Yn(i,o){return i&&Su(i,o,Zt)}function wu(i,o){return i&&vd(i,o,Zt)}function Fo(i,o){return Ci(o,function(N){return fi(i[N])})}function Yi(i,o){o=Ri(o,i);for(var N=0,Z=o.length;i!=null&&N<Z;)i=i[ei(o[N++])];return N&&N==Z?i:n}function Sd(i,o,N){var Z=o(i);return it(i)?Z:Ei(Z,N(i))}function rn(i){return i==null?i===n?Ge:Q:Vi&&Vi in St(i)?yv(i):Ev(i)}function Lu(i,o){return i>o}function MT(i,o){return i!=null&&bt.call(i,o)}function DT(i,o){return i!=null&&o in St(i)}function BT(i,o,N){return i>=tn(o,N)&&i<Ht(o,N)}function _u(i,o,N){for(var Z=N?ou:fo,ne=i[0].length,he=i.length,ve=he,_e=Me(he),Ee=1/0,je=[];ve--;){var Ue=i[ve];ve&&o&&(Ue=Ot(Ue,vn(o))),Ee=tn(Ue.length,Ee),_e[ve]=!N&&(o||ne>=120&&Ue.length>=120)?new Qi(ve&&Ue):n}Ue=i[0];var xe=-1,Je=_e[0];e:for(;++xe<ne&&je.length<Ee;){var Ze=Ue[xe],Ye=o?o(Ze):Ze;if(Ze=N||Ze!==0?Ze:0,!(Je?as(Je,Ye):Z(je,Ye,N))){for(ve=he;--ve;){var ot=_e[ve];if(!(ot?as(ot,Ye):Z(i[ve],Ye,N)))continue e}Je&&Je.push(Ye),je.push(Ze)}}return je}function jT(i,o,N,Z){return Yn(i,function(ne,he,ve){o(Z,N(ne),he,ve)}),Z}function ms(i,o,N){o=Ri(o,i),i=uh(i,o);var Z=i==null?i:i[ei(Rn(o))];return Z==null?n:Tn(Z,i,N)}function wd(i){return Dt(i)&&rn(i)==ee}function UT(i){return Dt(i)&&rn(i)==K}function xT(i){return Dt(i)&&rn(i)==ye}function ys(i,o,N,Z,ne){return i===o?!0:i==null||o==null||!Dt(i)&&!Dt(o)?i!==i&&o!==o:zT(i,o,N,Z,ys,ne)}function zT(i,o,N,Z,ne,he){var ve=it(i),_e=it(o),Ee=ve?ue:nn(i),je=_e?ue:nn(o);Ee=Ee==ee?z:Ee,je=je==ee?z:je;var Ue=Ee==z,xe=je==z,Je=Ee==je;if(Je&&Di(i)){if(!Di(o))return!1;ve=!0,Ue=!1}if(Je&&!Ue)return he||(he=new qn),ve||Mr(i)?th(i,o,N,Z,ne,he):pv(i,o,Ee,N,Z,ne,he);if(!(N&L)){var Ze=Ue&&bt.call(i,"__wrapped__"),Ye=xe&&bt.call(o,"__wrapped__");if(Ze||Ye){var ot=Ze?i.value():i,$e=Ye?o.value():o;return he||(he=new qn),ne(ot,$e,N,Z,he)}}return Je?(he||(he=new qn),mv(i,o,N,Z,ne,he)):!1}function WT(i){return Dt(i)&&nn(i)==me}function ku(i,o,N,Z){var ne=N.length,he=ne,ve=!Z;if(i==null)return!he;for(i=St(i);ne--;){var _e=N[ne];if(ve&&_e[2]?_e[1]!==i[_e[0]]:!(_e[0]in i))return!1}for(;++ne<he;){_e=N[ne];var Ee=_e[0],je=i[Ee],Ue=_e[1];if(ve&&_e[2]){if(je===n&&!(Ee in i))return!1}else{var xe=new qn;if(Z)var Je=Z(je,Ue,Ee,i,o,xe);if(!(Je===n?ys(Ue,je,L|g,Z,xe):Je))return!1}}return!0}function Ld(i){if(!It(i)||_v(i))return!1;var o=fi(i)?W0:Pb;return o.test(er(i))}function qT(i){return Dt(i)&&rn(i)==Te}function JT(i){return Dt(i)&&nn(i)==Ie}function GT(i){return Dt(i)&&Vo(i.length)&&!!_t[rn(i)]}function _d(i){return typeof i=="function"?i:i==null?hn:typeof i=="object"?it(i)?Od(i[0],i[1]):Nd(i):Hh(i)}function Nu(i){if(!Ts(i))return V0(i);var o=[];for(var N in St(i))bt.call(i,N)&&N!="constructor"&&o.push(N);return o}function HT(i){if(!It(i))return Cv(i);var o=Ts(i),N=[];for(var Z in i)Z=="constructor"&&(o||!bt.call(i,Z))||N.push(Z);return N}function Ou(i,o){return i<o}function kd(i,o){var N=-1,Z=fn(i)?Me(i.length):[];return Pi(i,function(ne,he,ve){Z[++N]=o(ne,he,ve)}),Z}function Nd(i){var o=Wu(i);return o.length==1&&o[0][2]?oh(o[0][0],o[0][1]):function(N){return N===i||ku(N,i,o)}}function Od(i,o){return Ju(i)&&sh(o)?oh(ei(i),o):function(N){var Z=el(N,i);return Z===n&&Z===o?tl(N,i):ys(o,Z,L|g)}}function Po(i,o,N,Z,ne){i!==o&&Su(o,function(he,ve){if(ne||(ne=new qn),It(he))KT(i,o,ve,N,Po,Z,ne);else{var _e=Z?Z(Hu(i,ve),he,ve+"",i,o,ne):n;_e===n&&(_e=he),Tu(i,ve,_e)}},dn)}function KT(i,o,N,Z,ne,he,ve){var _e=Hu(i,N),Ee=Hu(o,N),je=ve.get(Ee);if(je){Tu(i,N,je);return}var Ue=he?he(_e,Ee,N+"",i,o,ve):n,xe=Ue===n;if(xe){var Je=it(Ee),Ze=!Je&&Di(Ee),Ye=!Je&&!Ze&&Mr(Ee);Ue=Ee,Je||Ze||Ye?it(_e)?Ue=_e:jt(_e)?Ue=cn(_e):Ze?(xe=!1,Ue=Ud(Ee,!0)):Ye?(xe=!1,Ue=xd(Ee,!0)):Ue=[]:Ss(Ee)||tr(Ee)?(Ue=_e,tr(_e)?Ue=Dh(_e):(!It(_e)||fi(_e))&&(Ue=rh(Ee))):xe=!1}xe&&(ve.set(Ee,Ue),ne(Ue,Ee,Z,he,ve),ve.delete(Ee)),Tu(i,N,Ue)}function Cd(i,o){var N=i.length;if(N)return o+=o<0?N:0,ci(o,N)?i[o]:n}function Ed(i,o,N){o.length?o=Ot(o,function(he){return it(he)?function(ve){return Yi(ve,he.length===1?he[0]:he)}:he}):o=[hn];var Z=-1;o=Ot(o,vn(Xe()));var ne=kd(i,function(he,ve,_e){var Ee=Ot(o,function(je){return je(he)});return{criteria:Ee,index:++Z,value:he}});return v0(ne,function(he,ve){return ov(he,ve,N)})}function VT(i,o){return Ad(i,o,function(N,Z){return tl(i,Z)})}function Ad(i,o,N){for(var Z=-1,ne=o.length,he={};++Z<ne;){var ve=o[Z],_e=Yi(i,ve);N(_e,ve)&&gs(he,Ri(ve,i),_e)}return he}function ZT(i){return function(o){return Yi(o,i)}}function Cu(i,o,N,Z){var ne=Z?T0:_r,he=-1,ve=o.length,_e=i;for(i===o&&(o=cn(o)),N&&(_e=Ot(i,vn(N)));++he<ve;)for(var Ee=0,je=o[he],Ue=N?N(je):je;(Ee=ne(_e,Ue,Ee,Z))>-1;)_e!==i&&wo.call(_e,Ee,1),wo.call(i,Ee,1);return i}function Fd(i,o){for(var N=i?o.length:0,Z=N-1;N--;){var ne=o[N];if(N==Z||ne!==he){var he=ne;ci(ne)?wo.call(i,ne,1):Pu(i,ne)}}return i}function Eu(i,o){return i+ko(fd()*(o-i+1))}function QT(i,o,N,Z){for(var ne=-1,he=Ht(_o((o-i)/(N||1)),0),ve=Me(he);he--;)ve[Z?he:++ne]=i,i+=N;return ve}function Au(i,o){var N="";if(!i||o<1||o>x)return N;do o%2&&(N+=i),o=ko(o/2),o&&(i+=i);while(o);return N}function ut(i,o){return Ku(ah(i,o,hn),i+"")}function XT(i){return pd(Dr(i))}function YT(i,o){var N=Dr(i);return Wo(N,Xi(o,0,N.length))}function gs(i,o,N,Z){if(!It(i))return i;o=Ri(o,i);for(var ne=-1,he=o.length,ve=he-1,_e=i;_e!=null&&++ne<he;){var Ee=ei(o[ne]),je=N;if(Ee==="__proto__"||Ee==="constructor"||Ee==="prototype")return i;if(ne!=ve){var Ue=_e[Ee];je=Z?Z(Ue,Ee,_e):n,je===n&&(je=It(Ue)?Ue:ci(o[ne+1])?[]:{})}hs(_e,Ee,je),_e=_e[Ee]}return i}var Pd=No?function(i,o){return No.set(i,o),i}:hn,$T=Lo?function(i,o){return Lo(i,"toString",{configurable:!0,enumerable:!1,value:il(o),writable:!0})}:hn;function ev(i){return Wo(Dr(i))}function In(i,o,N){var Z=-1,ne=i.length;o<0&&(o=-o>ne?0:ne+o),N=N>ne?ne:N,N<0&&(N+=ne),ne=o>N?0:N-o>>>0,o>>>=0;for(var he=Me(ne);++Z<ne;)he[Z]=i[Z+o];return he}function tv(i,o){var N;return Pi(i,function(Z,ne,he){return N=o(Z,ne,he),!N}),!!N}function Io(i,o,N){var Z=0,ne=i==null?Z:i.length;if(typeof o=="number"&&o===o&&ne<=G){for(;Z<ne;){var he=Z+ne>>>1,ve=i[he];ve!==null&&!wn(ve)&&(N?ve<=o:ve<o)?Z=he+1:ne=he}return ne}return Fu(i,o,hn,N)}function Fu(i,o,N,Z){var ne=0,he=i==null?0:i.length;if(he===0)return 0;o=N(o);for(var ve=o!==o,_e=o===null,Ee=wn(o),je=o===n;ne<he;){var Ue=ko((ne+he)/2),xe=N(i[Ue]),Je=xe!==n,Ze=xe===null,Ye=xe===xe,ot=wn(xe);if(ve)var $e=Z||Ye;else je?$e=Ye&&(Z||Je):_e?$e=Ye&&Je&&(Z||!Ze):Ee?$e=Ye&&Je&&!Ze&&(Z||!ot):Ze||ot?$e=!1:$e=Z?xe<=o:xe<o;$e?ne=Ue+1:he=Ue}return tn(he,q)}function Id(i,o){for(var N=-1,Z=i.length,ne=0,he=[];++N<Z;){var ve=i[N],_e=o?o(ve):ve;if(!N||!Jn(_e,Ee)){var Ee=_e;he[ne++]=ve===0?0:ve}}return he}function Rd(i){return typeof i=="number"?i:wn(i)?S:+i}function Sn(i){if(typeof i=="string")return i;if(it(i))return Ot(i,Sn)+"";if(wn(i))return dd?dd.call(i):"";var o=i+"";return o=="0"&&1/i==-1/0?"-0":o}function Ii(i,o,N){var Z=-1,ne=fo,he=i.length,ve=!0,_e=[],Ee=_e;if(N)ve=!1,ne=ou;else if(he>=l){var je=o?null:dv(i);if(je)return po(je);ve=!1,ne=as,Ee=new Qi}else Ee=o?[]:_e;e:for(;++Z<he;){var Ue=i[Z],xe=o?o(Ue):Ue;if(Ue=N||Ue!==0?Ue:0,ve&&xe===xe){for(var Je=Ee.length;Je--;)if(Ee[Je]===xe)continue e;o&&Ee.push(xe),_e.push(Ue)}else ne(Ee,xe,N)||(Ee!==_e&&Ee.push(xe),_e.push(Ue))}return _e}function Pu(i,o){return o=Ri(o,i),i=uh(i,o),i==null||delete i[ei(Rn(o))]}function Md(i,o,N,Z){return gs(i,o,N(Yi(i,o)),Z)}function Ro(i,o,N,Z){for(var ne=i.length,he=Z?ne:-1;(Z?he--:++he<ne)&&o(i[he],he,i););return N?In(i,Z?0:he,Z?he+1:ne):In(i,Z?he+1:0,Z?ne:he)}function Dd(i,o){var N=i;return N instanceof ft&&(N=N.value()),au(o,function(Z,ne){return ne.func.apply(ne.thisArg,Ei([Z],ne.args))},N)}function Iu(i,o,N){var Z=i.length;if(Z<2)return Z?Ii(i[0]):[];for(var ne=-1,he=Me(Z);++ne<Z;)for(var ve=i[ne],_e=-1;++_e<Z;)_e!=ne&&(he[ne]=ps(he[ne]||ve,i[_e],o,N));return Ii(Xt(he,1),o,N)}function Bd(i,o,N){for(var Z=-1,ne=i.length,he=o.length,ve={};++Z<ne;){var _e=Z<he?o[Z]:n;N(ve,i[Z],_e)}return ve}function Ru(i){return jt(i)?i:[]}function Mu(i){return typeof i=="function"?i:hn}function Ri(i,o){return it(i)?i:Ju(i,o)?[i]:dh(gt(i))}var nv=ut;function Mi(i,o,N){var Z=i.length;return N=N===n?Z:N,!o&&N>=Z?i:In(i,o,N)}var jd=q0||function(i){return Qt.clearTimeout(i)};function Ud(i,o){if(o)return i.slice();var N=i.length,Z=od?od(N):new i.constructor(N);return i.copy(Z),Z}function Du(i){var o=new i.constructor(i.byteLength);return new vo(o).set(new vo(i)),o}function iv(i,o){var N=o?Du(i.buffer):i.buffer;return new i.constructor(N,i.byteOffset,i.byteLength)}function rv(i){var o=new i.constructor(i.source,bn.exec(i));return o.lastIndex=i.lastIndex,o}function sv(i){return ds?St(ds.call(i)):{}}function xd(i,o){var N=o?Du(i.buffer):i.buffer;return new i.constructor(N,i.byteOffset,i.length)}function zd(i,o){if(i!==o){var N=i!==n,Z=i===null,ne=i===i,he=wn(i),ve=o!==n,_e=o===null,Ee=o===o,je=wn(o);if(!_e&&!je&&!he&&i>o||he&&ve&&Ee&&!_e&&!je||Z&&ve&&Ee||!N&&Ee||!ne)return 1;if(!Z&&!he&&!je&&i<o||je&&N&&ne&&!Z&&!he||_e&&N&&ne||!ve&&ne||!Ee)return-1}return 0}function ov(i,o,N){for(var Z=-1,ne=i.criteria,he=o.criteria,ve=ne.length,_e=N.length;++Z<ve;){var Ee=zd(ne[Z],he[Z]);if(Ee){if(Z>=_e)return Ee;var je=N[Z];return Ee*(je=="desc"?-1:1)}}return i.index-o.index}function Wd(i,o,N,Z){for(var ne=-1,he=i.length,ve=N.length,_e=-1,Ee=o.length,je=Ht(he-ve,0),Ue=Me(Ee+je),xe=!Z;++_e<Ee;)Ue[_e]=o[_e];for(;++ne<ve;)(xe||ne<he)&&(Ue[N[ne]]=i[ne]);for(;je--;)Ue[_e++]=i[ne++];return Ue}function qd(i,o,N,Z){for(var ne=-1,he=i.length,ve=-1,_e=N.length,Ee=-1,je=o.length,Ue=Ht(he-_e,0),xe=Me(Ue+je),Je=!Z;++ne<Ue;)xe[ne]=i[ne];for(var Ze=ne;++Ee<je;)xe[Ze+Ee]=o[Ee];for(;++ve<_e;)(Je||ne<he)&&(xe[Ze+N[ve]]=i[ne++]);return xe}function cn(i,o){var N=-1,Z=i.length;for(o||(o=Me(Z));++N<Z;)o[N]=i[N];return o}function $n(i,o,N,Z){var ne=!N;N||(N={});for(var he=-1,ve=o.length;++he<ve;){var _e=o[he],Ee=Z?Z(N[_e],i[_e],_e,N,i):n;Ee===n&&(Ee=i[_e]),ne?ai(N,_e,Ee):hs(N,_e,Ee)}return N}function av(i,o){return $n(i,qu(i),o)}function uv(i,o){return $n(i,nh(i),o)}function Mo(i,o){return function(N,Z){var ne=it(N)?h0:AT,he=o?o():{};return ne(N,i,Xe(Z,2),he)}}function Pr(i){return ut(function(o,N){var Z=-1,ne=N.length,he=ne>1?N[ne-1]:n,ve=ne>2?N[2]:n;for(he=i.length>3&&typeof he=="function"?(ne--,he):n,ve&&sn(N[0],N[1],ve)&&(he=ne<3?n:he,ne=1),o=St(o);++Z<ne;){var _e=N[Z];_e&&i(o,_e,Z,he)}return o})}function Jd(i,o){return function(N,Z){if(N==null)return N;if(!fn(N))return i(N,Z);for(var ne=N.length,he=o?ne:-1,ve=St(N);(o?he--:++he<ne)&&Z(ve[he],he,ve)!==!1;);return N}}function Gd(i){return function(o,N,Z){for(var ne=-1,he=St(o),ve=Z(o),_e=ve.length;_e--;){var Ee=ve[i?_e:++ne];if(N(he[Ee],Ee,he)===!1)break}return o}}function lv(i,o,N){var Z=o&y,ne=bs(i);function he(){var ve=this&&this!==Qt&&this instanceof he?ne:i;return ve.apply(Z?N:this,arguments)}return he}function Hd(i){return function(o){o=gt(o);var N=kr(o)?Wn(o):n,Z=N?N[0]:o.charAt(0),ne=N?Mi(N,1).join(""):o.slice(1);return Z[i]()+ne}}function Ir(i){return function(o){return au(Jh(qh(o).replace($b,"")),i,"")}}function bs(i){return function(){var o=arguments;switch(o.length){case 0:return new i;case 1:return new i(o[0]);case 2:return new i(o[0],o[1]);case 3:return new i(o[0],o[1],o[2]);case 4:return new i(o[0],o[1],o[2],o[3]);case 5:return new i(o[0],o[1],o[2],o[3],o[4]);case 6:return new i(o[0],o[1],o[2],o[3],o[4],o[5]);case 7:return new i(o[0],o[1],o[2],o[3],o[4],o[5],o[6])}var N=Fr(i.prototype),Z=i.apply(N,o);return It(Z)?Z:N}}function cv(i,o,N){var Z=bs(i);function ne(){for(var he=arguments.length,ve=Me(he),_e=he,Ee=Rr(ne);_e--;)ve[_e]=arguments[_e];var je=he<3&&ve[0]!==Ee&&ve[he-1]!==Ee?[]:Ai(ve,Ee);if(he-=je.length,he<N)return Xd(i,o,Do,ne.placeholder,n,ve,je,n,n,N-he);var Ue=this&&this!==Qt&&this instanceof ne?Z:i;return Tn(Ue,this,ve)}return ne}function Kd(i){return function(o,N,Z){var ne=St(o);if(!fn(o)){var he=Xe(N,3);o=Zt(o),N=function(_e){return he(ne[_e],_e,ne)}}var ve=i(o,N,Z);return ve>-1?ne[he?o[ve]:ve]:n}}function Vd(i){return li(function(o){var N=o.length,Z=N,ne=Fn.prototype.thru;for(i&&o.reverse();Z--;){var he=o[Z];if(typeof he!="function")throw new An(u);if(ne&&!ve&&xo(he)=="wrapper")var ve=new Fn([],!0)}for(Z=ve?Z:N;++Z<N;){he=o[Z];var _e=xo(he),Ee=_e=="wrapper"?zu(he):n;Ee&&Gu(Ee[0])&&Ee[1]==(A|k|C|f)&&!Ee[4].length&&Ee[9]==1?ve=ve[xo(Ee[0])].apply(ve,Ee[3]):ve=he.length==1&&Gu(he)?ve[_e]():ve.thru(he)}return function(){var je=arguments,Ue=je[0];if(ve&&je.length==1&&it(Ue))return ve.plant(Ue).value();for(var xe=0,Je=N?o[xe].apply(this,je):Ue;++xe<N;)Je=o[xe].call(this,Je);return Je}})}function Do(i,o,N,Z,ne,he,ve,_e,Ee,je){var Ue=o&A,xe=o&y,Je=o&h,Ze=o&(k|D),Ye=o&E,ot=Je?n:bs(i);function $e(){for(var lt=arguments.length,ht=Me(lt),Ln=lt;Ln--;)ht[Ln]=arguments[Ln];if(Ze)var on=Rr($e),_n=w0(ht,on);if(Z&&(ht=Wd(ht,Z,ne,Ze)),he&&(ht=qd(ht,he,ve,Ze)),lt-=_n,Ze&&lt<je){var Ut=Ai(ht,on);return Xd(i,o,Do,$e.placeholder,N,ht,Ut,_e,Ee,je-lt)}var Gn=xe?N:this,hi=Je?Gn[i]:i;return lt=ht.length,_e?ht=Av(ht,_e):Ye&&lt>1&&ht.reverse(),Ue&&Ee<lt&&(ht.length=Ee),this&&this!==Qt&&this instanceof $e&&(hi=ot||bs(hi)),hi.apply(Gn,ht)}return $e}function Zd(i,o){return function(N,Z){return jT(N,i,o(Z),{})}}function Bo(i,o){return function(N,Z){var ne;if(N===n&&Z===n)return o;if(N!==n&&(ne=N),Z!==n){if(ne===n)return Z;typeof N=="string"||typeof Z=="string"?(N=Sn(N),Z=Sn(Z)):(N=Rd(N),Z=Rd(Z)),ne=i(N,Z)}return ne}}function Bu(i){return li(function(o){return o=Ot(o,vn(Xe())),ut(function(N){var Z=this;return i(o,function(ne){return Tn(ne,Z,N)})})})}function jo(i,o){o=o===n?" ":Sn(o);var N=o.length;if(N<2)return N?Au(o,i):o;var Z=Au(o,_o(i/Nr(o)));return kr(o)?Mi(Wn(Z),0,i).join(""):Z.slice(0,i)}function fv(i,o,N,Z){var ne=o&y,he=bs(i);function ve(){for(var _e=-1,Ee=arguments.length,je=-1,Ue=Z.length,xe=Me(Ue+Ee),Je=this&&this!==Qt&&this instanceof ve?he:i;++je<Ue;)xe[je]=Z[je];for(;Ee--;)xe[je++]=arguments[++_e];return Tn(Je,ne?N:this,xe)}return ve}function Qd(i){return function(o,N,Z){return Z&&typeof Z!="number"&&sn(o,N,Z)&&(N=Z=n),o=di(o),N===n?(N=o,o=0):N=di(N),Z=Z===n?o<N?1:-1:di(Z),QT(o,N,Z,i)}}function Uo(i){return function(o,N){return typeof o=="string"&&typeof N=="string"||(o=Mn(o),N=Mn(N)),i(o,N)}}function Xd(i,o,N,Z,ne,he,ve,_e,Ee,je){var Ue=o&k,xe=Ue?ve:n,Je=Ue?n:ve,Ze=Ue?he:n,Ye=Ue?n:he;o|=Ue?C:I,o&=~(Ue?I:C),o&p||(o&=-4);var ot=[i,o,ne,Ze,xe,Ye,Je,_e,Ee,je],$e=N.apply(n,ot);return Gu(i)&&lh($e,ot),$e.placeholder=Z,ch($e,i,o)}function ju(i){var o=Gt[i];return function(N,Z){if(N=Mn(N),Z=Z==null?0:tn(rt(Z),292),Z&&cd(N)){var ne=(gt(N)+"e").split("e"),he=o(ne[0]+"e"+(+ne[1]+Z));return ne=(gt(he)+"e").split("e"),+(ne[0]+"e"+(+ne[1]-Z))}return o(N)}}var dv=Er&&1/po(new Er([,-0]))[1]==M?function(i){return new Er(i)}:ol;function Yd(i){return function(o){var N=nn(o);return N==me?pu(o):N==Ie?E0(o):S0(o,i(o))}}function ui(i,o,N,Z,ne,he,ve,_e){var Ee=o&h;if(!Ee&&typeof i!="function")throw new An(u);var je=Z?Z.length:0;if(je||(o&=-97,Z=ne=n),ve=ve===n?ve:Ht(rt(ve),0),_e=_e===n?_e:rt(_e),je-=ne?ne.length:0,o&I){var Ue=Z,xe=ne;Z=ne=n}var Je=Ee?n:zu(i),Ze=[i,o,N,Z,ne,Ue,xe,he,ve,_e];if(Je&&Ov(Ze,Je),i=Ze[0],o=Ze[1],N=Ze[2],Z=Ze[3],ne=Ze[4],_e=Ze[9]=Ze[9]===n?Ee?0:i.length:Ht(Ze[9]-je,0),!_e&&o&(k|D)&&(o&=-25),!o||o==y)var Ye=lv(i,o,N);else o==k||o==D?Ye=cv(i,o,_e):(o==C||o==(y|C))&&!ne.length?Ye=fv(i,o,N,Z):Ye=Do.apply(n,Ze);var ot=Je?Pd:lh;return ch(ot(Ye,Ze),i,o)}function $d(i,o,N,Z){return i===n||Jn(i,Cr[N])&&!bt.call(Z,N)?o:i}function eh(i,o,N,Z,ne,he){return It(i)&&It(o)&&(he.set(o,i),Po(i,o,n,eh,he),he.delete(o)),i}function hv(i){return Ss(i)?n:i}function th(i,o,N,Z,ne,he){var ve=N&L,_e=i.length,Ee=o.length;if(_e!=Ee&&!(ve&&Ee>_e))return!1;var je=he.get(i),Ue=he.get(o);if(je&&Ue)return je==o&&Ue==i;var xe=-1,Je=!0,Ze=N&g?new Qi:n;for(he.set(i,o),he.set(o,i);++xe<_e;){var Ye=i[xe],ot=o[xe];if(Z)var $e=ve?Z(ot,Ye,xe,o,i,he):Z(Ye,ot,xe,i,o,he);if($e!==n){if($e)continue;Je=!1;break}if(Ze){if(!uu(o,function(lt,ht){if(!as(Ze,ht)&&(Ye===lt||ne(Ye,lt,N,Z,he)))return Ze.push(ht)})){Je=!1;break}}else if(!(Ye===ot||ne(Ye,ot,N,Z,he))){Je=!1;break}}return he.delete(i),he.delete(o),Je}function pv(i,o,N,Z,ne,he,ve){switch(N){case j:if(i.byteLength!=o.byteLength||i.byteOffset!=o.byteOffset)return!1;i=i.buffer,o=o.buffer;case K:return!(i.byteLength!=o.byteLength||!he(new vo(i),new vo(o)));case ie:case ye:case de:return Jn(+i,+o);case Ae:return i.name==o.name&&i.message==o.message;case Te:case Ce:return i==o+"";case me:var _e=pu;case Ie:var Ee=Z&L;if(_e||(_e=po),i.size!=o.size&&!Ee)return!1;var je=ve.get(i);if(je)return je==o;Z|=g,ve.set(i,o);var Ue=th(_e(i),_e(o),Z,ne,he,ve);return ve.delete(i),Ue;case We:if(ds)return ds.call(i)==ds.call(o)}return!1}function mv(i,o,N,Z,ne,he){var ve=N&L,_e=Uu(i),Ee=_e.length,je=Uu(o),Ue=je.length;if(Ee!=Ue&&!ve)return!1;for(var xe=Ee;xe--;){var Je=_e[xe];if(!(ve?Je in o:bt.call(o,Je)))return!1}var Ze=he.get(i),Ye=he.get(o);if(Ze&&Ye)return Ze==o&&Ye==i;var ot=!0;he.set(i,o),he.set(o,i);for(var $e=ve;++xe<Ee;){Je=_e[xe];var lt=i[Je],ht=o[Je];if(Z)var Ln=ve?Z(ht,lt,Je,o,i,he):Z(lt,ht,Je,i,o,he);if(!(Ln===n?lt===ht||ne(lt,ht,N,Z,he):Ln)){ot=!1;break}$e||($e=Je=="constructor")}if(ot&&!$e){var on=i.constructor,_n=o.constructor;on!=_n&&"constructor"in i&&"constructor"in o&&!(typeof on=="function"&&on instanceof on&&typeof _n=="function"&&_n instanceof _n)&&(ot=!1)}return he.delete(i),he.delete(o),ot}function li(i){return Ku(ah(i,n,yh),i+"")}function Uu(i){return Sd(i,Zt,qu)}function xu(i){return Sd(i,dn,nh)}var zu=No?function(i){return No.get(i)}:ol;function xo(i){for(var o=i.name+"",N=Ar[o],Z=bt.call(Ar,o)?N.length:0;Z--;){var ne=N[Z],he=ne.func;if(he==null||he==i)return ne.name}return o}function Rr(i){var o=bt.call(fe,"placeholder")?fe:i;return o.placeholder}function Xe(){var i=fe.iteratee||rl;return i=i===rl?_d:i,arguments.length?i(arguments[0],arguments[1]):i}function zo(i,o){var N=i.__data__;return Lv(o)?N[typeof o=="string"?"string":"hash"]:N.map}function Wu(i){for(var o=Zt(i),N=o.length;N--;){var Z=o[N],ne=i[Z];o[N]=[Z,ne,sh(ne)]}return o}function $i(i,o){var N=N0(i,o);return Ld(N)?N:n}function yv(i){var o=bt.call(i,Vi),N=i[Vi];try{i[Vi]=n;var Z=!0}catch{}var ne=bo.call(i);return Z&&(o?i[Vi]=N:delete i[Vi]),ne}var qu=yu?function(i){return i==null?[]:(i=St(i),Ci(yu(i),function(o){return ud.call(i,o)}))}:al,nh=yu?function(i){for(var o=[];i;)Ei(o,qu(i)),i=So(i);return o}:al,nn=rn;(gu&&nn(new gu(new ArrayBuffer(1)))!=j||ls&&nn(new ls)!=me||bu&&nn(bu.resolve())!=V||Er&&nn(new Er)!=Ie||cs&&nn(new cs)!=Y)&&(nn=function(i){var o=rn(i),N=o==z?i.constructor:n,Z=N?er(N):"";if(Z)switch(Z){case Y0:return j;case $0:return me;case eT:return V;case tT:return Ie;case nT:return Y}return o});function gv(i,o,N){for(var Z=-1,ne=N.length;++Z<ne;){var he=N[Z],ve=he.size;switch(he.type){case"drop":i+=ve;break;case"dropRight":o-=ve;break;case"take":o=tn(o,i+ve);break;case"takeRight":i=Ht(i,o-ve);break}}return{start:i,end:o}}function bv(i){var o=i.match(Sr);return o?o[1].split(wr):[]}function ih(i,o,N){o=Ri(o,i);for(var Z=-1,ne=o.length,he=!1;++Z<ne;){var ve=ei(o[Z]);if(!(he=i!=null&&N(i,ve)))break;i=i[ve]}return he||++Z!=ne?he:(ne=i==null?0:i.length,!!ne&&Vo(ne)&&ci(ve,ne)&&(it(i)||tr(i)))}function Tv(i){var o=i.length,N=new i.constructor(o);return o&&typeof i[0]=="string"&&bt.call(i,"index")&&(N.index=i.index,N.input=i.input),N}function rh(i){return typeof i.constructor=="function"&&!Ts(i)?Fr(So(i)):{}}function vv(i,o,N){var Z=i.constructor;switch(o){case K:return Du(i);case ie:case ye:return new Z(+i);case j:return iv(i,N);case J:case ce:case X:case ge:case Se:case De:case we:case Pe:case re:return xd(i,N);case me:return new Z;case de:case Ce:return new Z(i);case Te:return rv(i);case Ie:return new Z;case We:return sv(i)}}function Sv(i,o){var N=o.length;if(!N)return i;var Z=N-1;return o[Z]=(N>1?"& ":"")+o[Z],o=o.join(N>2?", ":" "),i.replace(en,`{
933
+ /* [wrapped with `+o+`] */
934
+ `)}function wv(i){return it(i)||tr(i)||!!(ld&&i&&i[ld])}function ci(i,o){var N=typeof i;return o=o??x,!!o&&(N=="number"||N!="symbol"&&Rb.test(i))&&i>-1&&i%1==0&&i<o}function sn(i,o,N){if(!It(N))return!1;var Z=typeof o;return(Z=="number"?fn(N)&&ci(o,N.length):Z=="string"&&o in N)?Jn(N[o],i):!1}function Ju(i,o){if(it(i))return!1;var N=typeof i;return N=="number"||N=="symbol"||N=="boolean"||i==null||wn(i)?!0:ct.test(i)||!Ke.test(i)||o!=null&&i in St(o)}function Lv(i){var o=typeof i;return o=="string"||o=="number"||o=="symbol"||o=="boolean"?i!=="__proto__":i===null}function Gu(i){var o=xo(i),N=fe[o];if(typeof N!="function"||!(o in ft.prototype))return!1;if(i===N)return!0;var Z=zu(N);return!!Z&&i===Z[0]}function _v(i){return!!sd&&sd in i}var kv=yo?fi:ul;function Ts(i){var o=i&&i.constructor,N=typeof o=="function"&&o.prototype||Cr;return i===N}function sh(i){return i===i&&!It(i)}function oh(i,o){return function(N){return N==null?!1:N[i]===o&&(o!==n||i in St(N))}}function Nv(i){var o=Ho(i,function(Z){return N.size===U&&N.clear(),Z}),N=o.cache;return o}function Ov(i,o){var N=i[1],Z=o[1],ne=N|Z,he=ne<(y|h|A),ve=Z==A&&N==k||Z==A&&N==f&&i[7].length<=o[8]||Z==(A|f)&&o[7].length<=o[8]&&N==k;if(!(he||ve))return i;Z&y&&(i[2]=o[2],ne|=N&y?0:p);var _e=o[3];if(_e){var Ee=i[3];i[3]=Ee?Wd(Ee,_e,o[4]):_e,i[4]=Ee?Ai(i[3],P):o[4]}return _e=o[5],_e&&(Ee=i[5],i[5]=Ee?qd(Ee,_e,o[6]):_e,i[6]=Ee?Ai(i[5],P):o[6]),_e=o[7],_e&&(i[7]=_e),Z&A&&(i[8]=i[8]==null?o[8]:tn(i[8],o[8])),i[9]==null&&(i[9]=o[9]),i[0]=o[0],i[1]=ne,i}function Cv(i){var o=[];if(i!=null)for(var N in St(i))o.push(N);return o}function Ev(i){return bo.call(i)}function ah(i,o,N){return o=Ht(o===n?i.length-1:o,0),function(){for(var Z=arguments,ne=-1,he=Ht(Z.length-o,0),ve=Me(he);++ne<he;)ve[ne]=Z[o+ne];ne=-1;for(var _e=Me(o+1);++ne<o;)_e[ne]=Z[ne];return _e[o]=N(ve),Tn(i,this,_e)}}function uh(i,o){return o.length<2?i:Yi(i,In(o,0,-1))}function Av(i,o){for(var N=i.length,Z=tn(o.length,N),ne=cn(i);Z--;){var he=o[Z];i[Z]=ci(he,N)?ne[he]:n}return i}function Hu(i,o){if(!(o==="constructor"&&typeof i[o]=="function")&&o!="__proto__")return i[o]}var lh=fh(Pd),vs=G0||function(i,o){return Qt.setTimeout(i,o)},Ku=fh($T);function ch(i,o,N){var Z=o+"";return Ku(i,Sv(Z,Fv(bv(Z),N)))}function fh(i){var o=0,N=0;return function(){var Z=Z0(),ne=r-(Z-N);if(N=Z,ne>0){if(++o>=m)return arguments[0]}else o=0;return i.apply(n,arguments)}}function Wo(i,o){var N=-1,Z=i.length,ne=Z-1;for(o=o===n?Z:o;++N<o;){var he=Eu(N,ne),ve=i[he];i[he]=i[N],i[N]=ve}return i.length=o,i}var dh=Nv(function(i){var o=[];return i.charCodeAt(0)===46&&o.push(""),i.replace(xn,function(N,Z,ne,he){o.push(ne?he.replace(Jt,"$1"):Z||N)}),o});function ei(i){if(typeof i=="string"||wn(i))return i;var o=i+"";return o=="0"&&1/i==-1/0?"-0":o}function er(i){if(i!=null){try{return go.call(i)}catch{}try{return i+""}catch{}}return""}function Fv(i,o){return En($,function(N){var Z="_."+N[0];o&N[1]&&!fo(i,Z)&&i.push(Z)}),i.sort()}function hh(i){if(i instanceof ft)return i.clone();var o=new Fn(i.__wrapped__,i.__chain__);return o.__actions__=cn(i.__actions__),o.__index__=i.__index__,o.__values__=i.__values__,o}function Pv(i,o,N){(N?sn(i,o,N):o===n)?o=1:o=Ht(rt(o),0);var Z=i==null?0:i.length;if(!Z||o<1)return[];for(var ne=0,he=0,ve=Me(_o(Z/o));ne<Z;)ve[he++]=In(i,ne,ne+=o);return ve}function Iv(i){for(var o=-1,N=i==null?0:i.length,Z=0,ne=[];++o<N;){var he=i[o];he&&(ne[Z++]=he)}return ne}function Rv(){var i=arguments.length;if(!i)return[];for(var o=Me(i-1),N=arguments[0],Z=i;Z--;)o[Z-1]=arguments[Z];return Ei(it(N)?cn(N):[N],Xt(o,1))}var Mv=ut(function(i,o){return jt(i)?ps(i,Xt(o,1,jt,!0)):[]}),Dv=ut(function(i,o){var N=Rn(o);return jt(N)&&(N=n),jt(i)?ps(i,Xt(o,1,jt,!0),Xe(N,2)):[]}),Bv=ut(function(i,o){var N=Rn(o);return jt(N)&&(N=n),jt(i)?ps(i,Xt(o,1,jt,!0),n,N):[]});function jv(i,o,N){var Z=i==null?0:i.length;return Z?(o=N||o===n?1:rt(o),In(i,o<0?0:o,Z)):[]}function Uv(i,o,N){var Z=i==null?0:i.length;return Z?(o=N||o===n?1:rt(o),o=Z-o,In(i,0,o<0?0:o)):[]}function xv(i,o){return i&&i.length?Ro(i,Xe(o,3),!0,!0):[]}function zv(i,o){return i&&i.length?Ro(i,Xe(o,3),!0):[]}function Wv(i,o,N,Z){var ne=i==null?0:i.length;return ne?(N&&typeof N!="number"&&sn(i,o,N)&&(N=0,Z=ne),RT(i,o,N,Z)):[]}function ph(i,o,N){var Z=i==null?0:i.length;if(!Z)return-1;var ne=N==null?0:rt(N);return ne<0&&(ne=Ht(Z+ne,0)),ho(i,Xe(o,3),ne)}function mh(i,o,N){var Z=i==null?0:i.length;if(!Z)return-1;var ne=Z-1;return N!==n&&(ne=rt(N),ne=N<0?Ht(Z+ne,0):tn(ne,Z-1)),ho(i,Xe(o,3),ne,!0)}function yh(i){var o=i==null?0:i.length;return o?Xt(i,1):[]}function qv(i){var o=i==null?0:i.length;return o?Xt(i,M):[]}function Jv(i,o){var N=i==null?0:i.length;return N?(o=o===n?1:rt(o),Xt(i,o)):[]}function Gv(i){for(var o=-1,N=i==null?0:i.length,Z={};++o<N;){var ne=i[o];Z[ne[0]]=ne[1]}return Z}function gh(i){return i&&i.length?i[0]:n}function Hv(i,o,N){var Z=i==null?0:i.length;if(!Z)return-1;var ne=N==null?0:rt(N);return ne<0&&(ne=Ht(Z+ne,0)),_r(i,o,ne)}function Kv(i){var o=i==null?0:i.length;return o?In(i,0,-1):[]}var Vv=ut(function(i){var o=Ot(i,Ru);return o.length&&o[0]===i[0]?_u(o):[]}),Zv=ut(function(i){var o=Rn(i),N=Ot(i,Ru);return o===Rn(N)?o=n:N.pop(),N.length&&N[0]===i[0]?_u(N,Xe(o,2)):[]}),Qv=ut(function(i){var o=Rn(i),N=Ot(i,Ru);return o=typeof o=="function"?o:n,o&&N.pop(),N.length&&N[0]===i[0]?_u(N,n,o):[]});function Xv(i,o){return i==null?"":K0.call(i,o)}function Rn(i){var o=i==null?0:i.length;return o?i[o-1]:n}function Yv(i,o,N){var Z=i==null?0:i.length;if(!Z)return-1;var ne=Z;return N!==n&&(ne=rt(N),ne=ne<0?Ht(Z+ne,0):tn(ne,Z-1)),o===o?F0(i,o,ne):ho(i,Xf,ne,!0)}function $v(i,o){return i&&i.length?Cd(i,rt(o)):n}var eS=ut(bh);function bh(i,o){return i&&i.length&&o&&o.length?Cu(i,o):i}function tS(i,o,N){return i&&i.length&&o&&o.length?Cu(i,o,Xe(N,2)):i}function nS(i,o,N){return i&&i.length&&o&&o.length?Cu(i,o,n,N):i}var iS=li(function(i,o){var N=i==null?0:i.length,Z=vu(i,o);return Fd(i,Ot(o,function(ne){return ci(ne,N)?+ne:ne}).sort(zd)),Z});function rS(i,o){var N=[];if(!(i&&i.length))return N;var Z=-1,ne=[],he=i.length;for(o=Xe(o,3);++Z<he;){var ve=i[Z];o(ve,Z,i)&&(N.push(ve),ne.push(Z))}return Fd(i,ne),N}function Vu(i){return i==null?i:X0.call(i)}function sS(i,o,N){var Z=i==null?0:i.length;return Z?(N&&typeof N!="number"&&sn(i,o,N)?(o=0,N=Z):(o=o==null?0:rt(o),N=N===n?Z:rt(N)),In(i,o,N)):[]}function oS(i,o){return Io(i,o)}function aS(i,o,N){return Fu(i,o,Xe(N,2))}function uS(i,o){var N=i==null?0:i.length;if(N){var Z=Io(i,o);if(Z<N&&Jn(i[Z],o))return Z}return-1}function lS(i,o){return Io(i,o,!0)}function cS(i,o,N){return Fu(i,o,Xe(N,2),!0)}function fS(i,o){var N=i==null?0:i.length;if(N){var Z=Io(i,o,!0)-1;if(Jn(i[Z],o))return Z}return-1}function dS(i){return i&&i.length?Id(i):[]}function hS(i,o){return i&&i.length?Id(i,Xe(o,2)):[]}function pS(i){var o=i==null?0:i.length;return o?In(i,1,o):[]}function mS(i,o,N){return i&&i.length?(o=N||o===n?1:rt(o),In(i,0,o<0?0:o)):[]}function yS(i,o,N){var Z=i==null?0:i.length;return Z?(o=N||o===n?1:rt(o),o=Z-o,In(i,o<0?0:o,Z)):[]}function gS(i,o){return i&&i.length?Ro(i,Xe(o,3),!1,!0):[]}function bS(i,o){return i&&i.length?Ro(i,Xe(o,3)):[]}var TS=ut(function(i){return Ii(Xt(i,1,jt,!0))}),vS=ut(function(i){var o=Rn(i);return jt(o)&&(o=n),Ii(Xt(i,1,jt,!0),Xe(o,2))}),SS=ut(function(i){var o=Rn(i);return o=typeof o=="function"?o:n,Ii(Xt(i,1,jt,!0),n,o)});function wS(i){return i&&i.length?Ii(i):[]}function LS(i,o){return i&&i.length?Ii(i,Xe(o,2)):[]}function _S(i,o){return o=typeof o=="function"?o:n,i&&i.length?Ii(i,n,o):[]}function Zu(i){if(!(i&&i.length))return[];var o=0;return i=Ci(i,function(N){if(jt(N))return o=Ht(N.length,o),!0}),du(o,function(N){return Ot(i,lu(N))})}function Th(i,o){if(!(i&&i.length))return[];var N=Zu(i);return o==null?N:Ot(N,function(Z){return Tn(o,n,Z)})}var kS=ut(function(i,o){return jt(i)?ps(i,o):[]}),NS=ut(function(i){return Iu(Ci(i,jt))}),OS=ut(function(i){var o=Rn(i);return jt(o)&&(o=n),Iu(Ci(i,jt),Xe(o,2))}),CS=ut(function(i){var o=Rn(i);return o=typeof o=="function"?o:n,Iu(Ci(i,jt),n,o)}),ES=ut(Zu);function AS(i,o){return Bd(i||[],o||[],hs)}function FS(i,o){return Bd(i||[],o||[],gs)}var PS=ut(function(i){var o=i.length,N=o>1?i[o-1]:n;return N=typeof N=="function"?(i.pop(),N):n,Th(i,N)});function vh(i){var o=fe(i);return o.__chain__=!0,o}function IS(i,o){return o(i),i}function qo(i,o){return o(i)}var RS=li(function(i){var o=i.length,N=o?i[0]:0,Z=this.__wrapped__,ne=function(he){return vu(he,i)};return o>1||this.__actions__.length||!(Z instanceof ft)||!ci(N)?this.thru(ne):(Z=Z.slice(N,+N+(o?1:0)),Z.__actions__.push({func:qo,args:[ne],thisArg:n}),new Fn(Z,this.__chain__).thru(function(he){return o&&!he.length&&he.push(n),he}))});function MS(){return vh(this)}function DS(){return new Fn(this.value(),this.__chain__)}function BS(){this.__values__===n&&(this.__values__=Rh(this.value()));var i=this.__index__>=this.__values__.length,o=i?n:this.__values__[this.__index__++];return{done:i,value:o}}function jS(){return this}function US(i){for(var o,N=this;N instanceof Co;){var Z=hh(N);Z.__index__=0,Z.__values__=n,o?ne.__wrapped__=Z:o=Z;var ne=Z;N=N.__wrapped__}return ne.__wrapped__=i,o}function xS(){var i=this.__wrapped__;if(i instanceof ft){var o=i;return this.__actions__.length&&(o=new ft(this)),o=o.reverse(),o.__actions__.push({func:qo,args:[Vu],thisArg:n}),new Fn(o,this.__chain__)}return this.thru(Vu)}function zS(){return Dd(this.__wrapped__,this.__actions__)}var WS=Mo(function(i,o,N){bt.call(i,N)?++i[N]:ai(i,N,1)});function qS(i,o,N){var Z=it(i)?Zf:IT;return N&&sn(i,o,N)&&(o=n),Z(i,Xe(o,3))}function JS(i,o){var N=it(i)?Ci:Td;return N(i,Xe(o,3))}var GS=Kd(ph),HS=Kd(mh);function KS(i,o){return Xt(Jo(i,o),1)}function VS(i,o){return Xt(Jo(i,o),M)}function ZS(i,o,N){return N=N===n?1:rt(N),Xt(Jo(i,o),N)}function Sh(i,o){var N=it(i)?En:Pi;return N(i,Xe(o,3))}function wh(i,o){var N=it(i)?p0:bd;return N(i,Xe(o,3))}var QS=Mo(function(i,o,N){bt.call(i,N)?i[N].push(o):ai(i,N,[o])});function XS(i,o,N,Z){i=fn(i)?i:Dr(i),N=N&&!Z?rt(N):0;var ne=i.length;return N<0&&(N=Ht(ne+N,0)),Zo(i)?N<=ne&&i.indexOf(o,N)>-1:!!ne&&_r(i,o,N)>-1}var YS=ut(function(i,o,N){var Z=-1,ne=typeof o=="function",he=fn(i)?Me(i.length):[];return Pi(i,function(ve){he[++Z]=ne?Tn(o,ve,N):ms(ve,o,N)}),he}),$S=Mo(function(i,o,N){ai(i,N,o)});function Jo(i,o){var N=it(i)?Ot:kd;return N(i,Xe(o,3))}function ew(i,o,N,Z){return i==null?[]:(it(o)||(o=o==null?[]:[o]),N=Z?n:N,it(N)||(N=N==null?[]:[N]),Ed(i,o,N))}var tw=Mo(function(i,o,N){i[N?0:1].push(o)},function(){return[[],[]]});function nw(i,o,N){var Z=it(i)?au:$f,ne=arguments.length<3;return Z(i,Xe(o,4),N,ne,Pi)}function iw(i,o,N){var Z=it(i)?m0:$f,ne=arguments.length<3;return Z(i,Xe(o,4),N,ne,bd)}function rw(i,o){var N=it(i)?Ci:Td;return N(i,Ko(Xe(o,3)))}function sw(i){var o=it(i)?pd:XT;return o(i)}function ow(i,o,N){(N?sn(i,o,N):o===n)?o=1:o=rt(o);var Z=it(i)?CT:YT;return Z(i,o)}function aw(i){var o=it(i)?ET:ev;return o(i)}function uw(i){if(i==null)return 0;if(fn(i))return Zo(i)?Nr(i):i.length;var o=nn(i);return o==me||o==Ie?i.size:Nu(i).length}function lw(i,o,N){var Z=it(i)?uu:tv;return N&&sn(i,o,N)&&(o=n),Z(i,Xe(o,3))}var cw=ut(function(i,o){if(i==null)return[];var N=o.length;return N>1&&sn(i,o[0],o[1])?o=[]:N>2&&sn(o[0],o[1],o[2])&&(o=[o[0]]),Ed(i,Xt(o,1),[])}),Go=J0||function(){return Qt.Date.now()};function fw(i,o){if(typeof o!="function")throw new An(u);return i=rt(i),function(){if(--i<1)return o.apply(this,arguments)}}function Lh(i,o,N){return o=N?n:o,o=i&&o==null?i.length:o,ui(i,A,n,n,n,n,o)}function _h(i,o){var N;if(typeof o!="function")throw new An(u);return i=rt(i),function(){return--i>0&&(N=o.apply(this,arguments)),i<=1&&(o=n),N}}var Qu=ut(function(i,o,N){var Z=y;if(N.length){var ne=Ai(N,Rr(Qu));Z|=C}return ui(i,Z,o,N,ne)}),kh=ut(function(i,o,N){var Z=y|h;if(N.length){var ne=Ai(N,Rr(kh));Z|=C}return ui(o,Z,i,N,ne)});function Nh(i,o,N){o=N?n:o;var Z=ui(i,k,n,n,n,n,n,o);return Z.placeholder=Nh.placeholder,Z}function Oh(i,o,N){o=N?n:o;var Z=ui(i,D,n,n,n,n,n,o);return Z.placeholder=Oh.placeholder,Z}function Ch(i,o,N){var Z,ne,he,ve,_e,Ee,je=0,Ue=!1,xe=!1,Je=!0;if(typeof i!="function")throw new An(u);o=Mn(o)||0,It(N)&&(Ue=!!N.leading,xe="maxWait"in N,he=xe?Ht(Mn(N.maxWait)||0,o):he,Je="trailing"in N?!!N.trailing:Je);function Ze(Ut){var Gn=Z,hi=ne;return Z=ne=n,je=Ut,ve=i.apply(hi,Gn),ve}function Ye(Ut){return je=Ut,_e=vs(lt,o),Ue?Ze(Ut):ve}function ot(Ut){var Gn=Ut-Ee,hi=Ut-je,Kh=o-Gn;return xe?tn(Kh,he-hi):Kh}function $e(Ut){var Gn=Ut-Ee,hi=Ut-je;return Ee===n||Gn>=o||Gn<0||xe&&hi>=he}function lt(){var Ut=Go();if($e(Ut))return ht(Ut);_e=vs(lt,ot(Ut))}function ht(Ut){return _e=n,Je&&Z?Ze(Ut):(Z=ne=n,ve)}function Ln(){_e!==n&&jd(_e),je=0,Z=Ee=ne=_e=n}function on(){return _e===n?ve:ht(Go())}function _n(){var Ut=Go(),Gn=$e(Ut);if(Z=arguments,ne=this,Ee=Ut,Gn){if(_e===n)return Ye(Ee);if(xe)return jd(_e),_e=vs(lt,o),Ze(Ee)}return _e===n&&(_e=vs(lt,o)),ve}return _n.cancel=Ln,_n.flush=on,_n}var dw=ut(function(i,o){return gd(i,1,o)}),hw=ut(function(i,o,N){return gd(i,Mn(o)||0,N)});function pw(i){return ui(i,E)}function Ho(i,o){if(typeof i!="function"||o!=null&&typeof o!="function")throw new An(u);var N=function(){var Z=arguments,ne=o?o.apply(this,Z):Z[0],he=N.cache;if(he.has(ne))return he.get(ne);var ve=i.apply(this,Z);return N.cache=he.set(ne,ve)||he,ve};return N.cache=new(Ho.Cache||oi),N}Ho.Cache=oi;function Ko(i){if(typeof i!="function")throw new An(u);return function(){var o=arguments;switch(o.length){case 0:return!i.call(this);case 1:return!i.call(this,o[0]);case 2:return!i.call(this,o[0],o[1]);case 3:return!i.call(this,o[0],o[1],o[2])}return!i.apply(this,o)}}function mw(i){return _h(2,i)}var yw=nv(function(i,o){o=o.length==1&&it(o[0])?Ot(o[0],vn(Xe())):Ot(Xt(o,1),vn(Xe()));var N=o.length;return ut(function(Z){for(var ne=-1,he=tn(Z.length,N);++ne<he;)Z[ne]=o[ne].call(this,Z[ne]);return Tn(i,this,Z)})}),Xu=ut(function(i,o){var N=Ai(o,Rr(Xu));return ui(i,C,n,o,N)}),Eh=ut(function(i,o){var N=Ai(o,Rr(Eh));return ui(i,I,n,o,N)}),gw=li(function(i,o){return ui(i,f,n,n,n,o)});function bw(i,o){if(typeof i!="function")throw new An(u);return o=o===n?o:rt(o),ut(i,o)}function Tw(i,o){if(typeof i!="function")throw new An(u);return o=o==null?0:Ht(rt(o),0),ut(function(N){var Z=N[o],ne=Mi(N,0,o);return Z&&Ei(ne,Z),Tn(i,this,ne)})}function vw(i,o,N){var Z=!0,ne=!0;if(typeof i!="function")throw new An(u);return It(N)&&(Z="leading"in N?!!N.leading:Z,ne="trailing"in N?!!N.trailing:ne),Ch(i,o,{leading:Z,maxWait:o,trailing:ne})}function Sw(i){return Lh(i,1)}function ww(i,o){return Xu(Mu(o),i)}function Lw(){if(!arguments.length)return[];var i=arguments[0];return it(i)?i:[i]}function _w(i){return Pn(i,_)}function kw(i,o){return o=typeof o=="function"?o:n,Pn(i,_,o)}function Nw(i){return Pn(i,O|_)}function Ow(i,o){return o=typeof o=="function"?o:n,Pn(i,O|_,o)}function Cw(i,o){return o==null||yd(i,o,Zt(o))}function Jn(i,o){return i===o||i!==i&&o!==o}var Ew=Uo(Lu),Aw=Uo(function(i,o){return i>=o}),tr=wd(function(){return arguments}())?wd:function(i){return Dt(i)&&bt.call(i,"callee")&&!ud.call(i,"callee")},it=Me.isArray,Fw=qf?vn(qf):UT;function fn(i){return i!=null&&Vo(i.length)&&!fi(i)}function jt(i){return Dt(i)&&fn(i)}function Pw(i){return i===!0||i===!1||Dt(i)&&rn(i)==ie}var Di=H0||ul,Iw=Jf?vn(Jf):xT;function Rw(i){return Dt(i)&&i.nodeType===1&&!Ss(i)}function Mw(i){if(i==null)return!0;if(fn(i)&&(it(i)||typeof i=="string"||typeof i.splice=="function"||Di(i)||Mr(i)||tr(i)))return!i.length;var o=nn(i);if(o==me||o==Ie)return!i.size;if(Ts(i))return!Nu(i).length;for(var N in i)if(bt.call(i,N))return!1;return!0}function Dw(i,o){return ys(i,o)}function Bw(i,o,N){N=typeof N=="function"?N:n;var Z=N?N(i,o):n;return Z===n?ys(i,o,n,N):!!Z}function Yu(i){if(!Dt(i))return!1;var o=rn(i);return o==Ae||o==be||typeof i.message=="string"&&typeof i.name=="string"&&!Ss(i)}function jw(i){return typeof i=="number"&&cd(i)}function fi(i){if(!It(i))return!1;var o=rn(i);return o==pe||o==le||o==se||o==ae}function Ah(i){return typeof i=="number"&&i==rt(i)}function Vo(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=x}function It(i){var o=typeof i;return i!=null&&(o=="object"||o=="function")}function Dt(i){return i!=null&&typeof i=="object"}var Fh=Gf?vn(Gf):WT;function Uw(i,o){return i===o||ku(i,o,Wu(o))}function xw(i,o,N){return N=typeof N=="function"?N:n,ku(i,o,Wu(o),N)}function zw(i){return Ph(i)&&i!=+i}function Ww(i){if(kv(i))throw new nt(d);return Ld(i)}function qw(i){return i===null}function Jw(i){return i==null}function Ph(i){return typeof i=="number"||Dt(i)&&rn(i)==de}function Ss(i){if(!Dt(i)||rn(i)!=z)return!1;var o=So(i);if(o===null)return!0;var N=bt.call(o,"constructor")&&o.constructor;return typeof N=="function"&&N instanceof N&&go.call(N)==x0}var $u=Hf?vn(Hf):qT;function Gw(i){return Ah(i)&&i>=-9007199254740991&&i<=x}var Ih=Kf?vn(Kf):JT;function Zo(i){return typeof i=="string"||!it(i)&&Dt(i)&&rn(i)==Ce}function wn(i){return typeof i=="symbol"||Dt(i)&&rn(i)==We}var Mr=Vf?vn(Vf):GT;function Hw(i){return i===n}function Kw(i){return Dt(i)&&nn(i)==Y}function Vw(i){return Dt(i)&&rn(i)==te}var Zw=Uo(Ou),Qw=Uo(function(i,o){return i<=o});function Rh(i){if(!i)return[];if(fn(i))return Zo(i)?Wn(i):cn(i);if(us&&i[us])return C0(i[us]());var o=nn(i),N=o==me?pu:o==Ie?po:Dr;return N(i)}function di(i){if(!i)return i===0?i:0;if(i=Mn(i),i===M||i===-1/0){var o=i<0?-1:1;return o*W}return i===i?i:0}function rt(i){var o=di(i),N=o%1;return o===o?N?o-N:o:0}function Mh(i){return i?Xi(rt(i),0,B):0}function Mn(i){if(typeof i=="number")return i;if(wn(i))return S;if(It(i)){var o=typeof i.valueOf=="function"?i.valueOf():i;i=It(o)?o+"":o}if(typeof i!="string")return i===0?i:+i;i=ed(i);var N=Fb.test(i);return N||Ib.test(i)?f0(i.slice(2),N?2:8):ao.test(i)?S:+i}function Dh(i){return $n(i,dn(i))}function Xw(i){return i?Xi(rt(i),-9007199254740991,x):i===0?i:0}function gt(i){return i==null?"":Sn(i)}var Yw=Pr(function(i,o){if(Ts(o)||fn(o)){$n(o,Zt(o),i);return}for(var N in o)bt.call(o,N)&&hs(i,N,o[N])}),Bh=Pr(function(i,o){$n(o,dn(o),i)}),Qo=Pr(function(i,o,N,Z){$n(o,dn(o),i,Z)}),$w=Pr(function(i,o,N,Z){$n(o,Zt(o),i,Z)}),e1=li(vu);function t1(i,o){var N=Fr(i);return o==null?N:md(N,o)}var n1=ut(function(i,o){i=St(i);var N=-1,Z=o.length,ne=Z>2?o[2]:n;for(ne&&sn(o[0],o[1],ne)&&(Z=1);++N<Z;)for(var he=o[N],ve=dn(he),_e=-1,Ee=ve.length;++_e<Ee;){var je=ve[_e],Ue=i[je];(Ue===n||Jn(Ue,Cr[je])&&!bt.call(i,je))&&(i[je]=he[je])}return i}),i1=ut(function(i){return i.push(n,eh),Tn(jh,n,i)});function r1(i,o){return Qf(i,Xe(o,3),Yn)}function s1(i,o){return Qf(i,Xe(o,3),wu)}function o1(i,o){return i==null?i:Su(i,Xe(o,3),dn)}function a1(i,o){return i==null?i:vd(i,Xe(o,3),dn)}function u1(i,o){return i&&Yn(i,Xe(o,3))}function l1(i,o){return i&&wu(i,Xe(o,3))}function c1(i){return i==null?[]:Fo(i,Zt(i))}function f1(i){return i==null?[]:Fo(i,dn(i))}function el(i,o,N){var Z=i==null?n:Yi(i,o);return Z===n?N:Z}function d1(i,o){return i!=null&&ih(i,o,MT)}function tl(i,o){return i!=null&&ih(i,o,DT)}var h1=Zd(function(i,o,N){o!=null&&typeof o.toString!="function"&&(o=bo.call(o)),i[o]=N},il(hn)),p1=Zd(function(i,o,N){o!=null&&typeof o.toString!="function"&&(o=bo.call(o)),bt.call(i,o)?i[o].push(N):i[o]=[N]},Xe),m1=ut(ms);function Zt(i){return fn(i)?hd(i):Nu(i)}function dn(i){return fn(i)?hd(i,!0):HT(i)}function y1(i,o){var N={};return o=Xe(o,3),Yn(i,function(Z,ne,he){ai(N,o(Z,ne,he),Z)}),N}function g1(i,o){var N={};return o=Xe(o,3),Yn(i,function(Z,ne,he){ai(N,ne,o(Z,ne,he))}),N}var b1=Pr(function(i,o,N){Po(i,o,N)}),jh=Pr(function(i,o,N,Z){Po(i,o,N,Z)}),T1=li(function(i,o){var N={};if(i==null)return N;var Z=!1;o=Ot(o,function(he){return he=Ri(he,i),Z||(Z=he.length>1),he}),$n(i,xu(i),N),Z&&(N=Pn(N,O|R|_,hv));for(var ne=o.length;ne--;)Pu(N,o[ne]);return N});function v1(i,o){return Uh(i,Ko(Xe(o)))}var S1=li(function(i,o){return i==null?{}:VT(i,o)});function Uh(i,o){if(i==null)return{};var N=Ot(xu(i),function(Z){return[Z]});return o=Xe(o),Ad(i,N,function(Z,ne){return o(Z,ne[0])})}function w1(i,o,N){o=Ri(o,i);var Z=-1,ne=o.length;for(ne||(ne=1,i=n);++Z<ne;){var he=i==null?n:i[ei(o[Z])];he===n&&(Z=ne,he=N),i=fi(he)?he.call(i):he}return i}function L1(i,o,N){return i==null?i:gs(i,o,N)}function _1(i,o,N,Z){return Z=typeof Z=="function"?Z:n,i==null?i:gs(i,o,N,Z)}var xh=Yd(Zt),zh=Yd(dn);function k1(i,o,N){var Z=it(i),ne=Z||Di(i)||Mr(i);if(o=Xe(o,4),N==null){var he=i&&i.constructor;ne?N=Z?new he:[]:It(i)?N=fi(he)?Fr(So(i)):{}:N={}}return(ne?En:Yn)(i,function(ve,_e,Ee){return o(N,ve,_e,Ee)}),N}function N1(i,o){return i==null?!0:Pu(i,o)}function O1(i,o,N){return i==null?i:Md(i,o,Mu(N))}function C1(i,o,N,Z){return Z=typeof Z=="function"?Z:n,i==null?i:Md(i,o,Mu(N),Z)}function Dr(i){return i==null?[]:hu(i,Zt(i))}function E1(i){return i==null?[]:hu(i,dn(i))}function A1(i,o,N){return N===n&&(N=o,o=n),N!==n&&(N=Mn(N),N=N===N?N:0),o!==n&&(o=Mn(o),o=o===o?o:0),Xi(Mn(i),o,N)}function F1(i,o,N){return o=di(o),N===n?(N=o,o=0):N=di(N),i=Mn(i),BT(i,o,N)}function P1(i,o,N){if(N&&typeof N!="boolean"&&sn(i,o,N)&&(o=N=n),N===n&&(typeof o=="boolean"?(N=o,o=n):typeof i=="boolean"&&(N=i,i=n)),i===n&&o===n?(i=0,o=1):(i=di(i),o===n?(o=i,i=0):o=di(o)),i>o){var Z=i;i=o,o=Z}if(N||i%1||o%1){var ne=fd();return tn(i+ne*(o-i+c0("1e-"+((ne+"").length-1))),o)}return Eu(i,o)}var I1=Ir(function(i,o,N){return o=o.toLowerCase(),i+(N?Wh(o):o)});function Wh(i){return nl(gt(i).toLowerCase())}function qh(i){return i=gt(i),i&&i.replace(Mb,L0).replace(e0,"")}function R1(i,o,N){i=gt(i),o=Sn(o);var Z=i.length;N=N===n?Z:Xi(rt(N),0,Z);var ne=N;return N-=o.length,N>=0&&i.slice(N,ne)==o}function M1(i){return i=gt(i),i&&Le.test(i)?i.replace(Ne,_0):i}function D1(i){return i=gt(i),i&&dt.test(i)?i.replace(wt,"\\$&"):i}var B1=Ir(function(i,o,N){return i+(N?"-":"")+o.toLowerCase()}),j1=Ir(function(i,o,N){return i+(N?" ":"")+o.toLowerCase()}),U1=Hd("toLowerCase");function x1(i,o,N){i=gt(i),o=rt(o);var Z=o?Nr(i):0;if(!o||Z>=o)return i;var ne=(o-Z)/2;return jo(ko(ne),N)+i+jo(_o(ne),N)}function z1(i,o,N){i=gt(i),o=rt(o);var Z=o?Nr(i):0;return o&&Z<o?i+jo(o-Z,N):i}function W1(i,o,N){i=gt(i),o=rt(o);var Z=o?Nr(i):0;return o&&Z<o?jo(o-Z,N)+i:i}function q1(i,o,N){return N||o==null?o=0:o&&(o=+o),Q0(gt(i).replace(Pt,""),o||0)}function J1(i,o,N){return(N?sn(i,o,N):o===n)?o=1:o=rt(o),Au(gt(i),o)}function G1(){var i=arguments,o=gt(i[0]);return i.length<3?o:o.replace(i[1],i[2])}var H1=Ir(function(i,o,N){return i+(N?"_":"")+o.toLowerCase()});function K1(i,o,N){return N&&typeof N!="number"&&sn(i,o,N)&&(o=N=n),N=N===n?B:N>>>0,N?(i=gt(i),i&&(typeof o=="string"||o!=null&&!$u(o))&&(o=Sn(o),!o&&kr(i))?Mi(Wn(i),0,N):i.split(o,N)):[]}var V1=Ir(function(i,o,N){return i+(N?" ":"")+nl(o)});function Z1(i,o,N){return i=gt(i),N=N==null?0:Xi(rt(N),0,i.length),o=Sn(o),i.slice(N,N+o.length)==o}function Q1(i,o,N){var Z=fe.templateSettings;N&&sn(i,o,N)&&(o=n),i=gt(i),o=Qo({},o,Z,$d);var ne=Qo({},o.imports,Z.imports,$d),he=Zt(ne),ve=hu(ne,he),_e,Ee,je=0,Ue=o.interpolate||uo,xe="__p += '",Je=mu((o.escape||uo).source+"|"+Ue.source+"|"+(Ue===qe?zn:uo).source+"|"+(o.evaluate||uo).source+"|$","g"),Ze="//# sourceURL="+(bt.call(o,"sourceURL")?(o.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++s0+"]")+`
935
+ `;i.replace(Je,function($e,lt,ht,Ln,on,_n){return ht||(ht=Ln),xe+=i.slice(je,_n).replace(Db,k0),lt&&(_e=!0,xe+=`' +
936
+ __e(`+lt+`) +
937
+ '`),on&&(Ee=!0,xe+=`';
938
+ `+on+`;
939
+ __p += '`),ht&&(xe+=`' +
940
+ ((__t = (`+ht+`)) == null ? '' : __t) +
941
+ '`),je=_n+$e.length,$e}),xe+=`';
942
+ `;var Ye=bt.call(o,"variable")&&o.variable;if(!Ye)xe=`with (obj) {
943
+ `+xe+`
944
+ }
945
+ `;else if(ln.test(Ye))throw new nt(c);xe=(Ee?xe.replace(Re,""):xe).replace(ze,"$1").replace(H,"$1;"),xe="function("+(Ye||"obj")+`) {
946
+ `+(Ye?"":`obj || (obj = {});
947
+ `)+"var __t, __p = ''"+(_e?", __e = _.escape":"")+(Ee?`, __j = Array.prototype.join;
948
+ function print() { __p += __j.call(arguments, '') }
949
+ `:`;
950
+ `)+xe+`return __p
951
+ }`;var ot=Gh(function(){return yt(he,Ze+"return "+xe).apply(n,ve)});if(ot.source=xe,Yu(ot))throw ot;return ot}function X1(i){return gt(i).toLowerCase()}function Y1(i){return gt(i).toUpperCase()}function $1(i,o,N){if(i=gt(i),i&&(N||o===n))return ed(i);if(!i||!(o=Sn(o)))return i;var Z=Wn(i),ne=Wn(o),he=td(Z,ne),ve=nd(Z,ne)+1;return Mi(Z,he,ve).join("")}function eL(i,o,N){if(i=gt(i),i&&(N||o===n))return i.slice(0,rd(i)+1);if(!i||!(o=Sn(o)))return i;var Z=Wn(i),ne=nd(Z,Wn(o))+1;return Mi(Z,0,ne).join("")}function tL(i,o,N){if(i=gt(i),i&&(N||o===n))return i.replace(Pt,"");if(!i||!(o=Sn(o)))return i;var Z=Wn(i),ne=td(Z,Wn(o));return Mi(Z,ne).join("")}function nL(i,o){var N=b,Z=F;if(It(o)){var ne="separator"in o?o.separator:ne;N="length"in o?rt(o.length):N,Z="omission"in o?Sn(o.omission):Z}i=gt(i);var he=i.length;if(kr(i)){var ve=Wn(i);he=ve.length}if(N>=he)return i;var _e=N-Nr(Z);if(_e<1)return Z;var Ee=ve?Mi(ve,0,_e).join(""):i.slice(0,_e);if(ne===n)return Ee+Z;if(ve&&(_e+=Ee.length-_e),$u(ne)){if(i.slice(_e).search(ne)){var je,Ue=Ee;for(ne.global||(ne=mu(ne.source,gt(bn.exec(ne))+"g")),ne.lastIndex=0;je=ne.exec(Ue);)var xe=je.index;Ee=Ee.slice(0,xe===n?_e:xe)}}else if(i.indexOf(Sn(ne),_e)!=_e){var Je=Ee.lastIndexOf(ne);Je>-1&&(Ee=Ee.slice(0,Je))}return Ee+Z}function iL(i){return i=gt(i),i&&oe.test(i)?i.replace(ke,P0):i}var rL=Ir(function(i,o,N){return i+(N?" ":"")+o.toUpperCase()}),nl=Hd("toUpperCase");function Jh(i,o,N){return i=gt(i),o=N?n:o,o===n?O0(i)?M0(i):b0(i):i.match(o)||[]}var Gh=ut(function(i,o){try{return Tn(i,n,o)}catch(N){return Yu(N)?N:new nt(N)}}),sL=li(function(i,o){return En(o,function(N){N=ei(N),ai(i,N,Qu(i[N],i))}),i});function oL(i){var o=i==null?0:i.length,N=Xe();return i=o?Ot(i,function(Z){if(typeof Z[1]!="function")throw new An(u);return[N(Z[0]),Z[1]]}):[],ut(function(Z){for(var ne=-1;++ne<o;){var he=i[ne];if(Tn(he[0],this,Z))return Tn(he[1],this,Z)}})}function aL(i){return PT(Pn(i,O))}function il(i){return function(){return i}}function uL(i,o){return i==null||i!==i?o:i}var lL=Vd(),cL=Vd(!0);function hn(i){return i}function rl(i){return _d(typeof i=="function"?i:Pn(i,O))}function fL(i){return Nd(Pn(i,O))}function dL(i,o){return Od(i,Pn(o,O))}var hL=ut(function(i,o){return function(N){return ms(N,i,o)}}),pL=ut(function(i,o){return function(N){return ms(i,N,o)}});function sl(i,o,N){var Z=Zt(o),ne=Fo(o,Z);N==null&&!(It(o)&&(ne.length||!Z.length))&&(N=o,o=i,i=this,ne=Fo(o,Zt(o)));var he=!(It(N)&&"chain"in N)||!!N.chain,ve=fi(i);return En(ne,function(_e){var Ee=o[_e];i[_e]=Ee,ve&&(i.prototype[_e]=function(){var je=this.__chain__;if(he||je){var Ue=i(this.__wrapped__),xe=Ue.__actions__=cn(this.__actions__);return xe.push({func:Ee,args:arguments,thisArg:i}),Ue.__chain__=je,Ue}return Ee.apply(i,Ei([this.value()],arguments))})}),i}function mL(){return Qt._===this&&(Qt._=z0),this}function ol(){}function yL(i){return i=rt(i),ut(function(o){return Cd(o,i)})}var gL=Bu(Ot),bL=Bu(Zf),TL=Bu(uu);function Hh(i){return Ju(i)?lu(ei(i)):ZT(i)}function vL(i){return function(o){return i==null?n:Yi(i,o)}}var SL=Qd(),wL=Qd(!0);function al(){return[]}function ul(){return!1}function LL(){return{}}function _L(){return""}function kL(){return!0}function NL(i,o){if(i=rt(i),i<1||i>x)return[];var N=B,Z=tn(i,B);o=Xe(o),i-=B;for(var ne=du(Z,o);++N<i;)o(N);return ne}function OL(i){return it(i)?Ot(i,ei):wn(i)?[i]:cn(dh(gt(i)))}function CL(i){var o=++U0;return gt(i)+o}var EL=Bo(function(i,o){return i+o},0),AL=ju("ceil"),FL=Bo(function(i,o){return i/o},1),PL=ju("floor");function IL(i){return i&&i.length?Ao(i,hn,Lu):n}function RL(i,o){return i&&i.length?Ao(i,Xe(o,2),Lu):n}function ML(i){return Yf(i,hn)}function DL(i,o){return Yf(i,Xe(o,2))}function BL(i){return i&&i.length?Ao(i,hn,Ou):n}function jL(i,o){return i&&i.length?Ao(i,Xe(o,2),Ou):n}var UL=Bo(function(i,o){return i*o},1),xL=ju("round"),zL=Bo(function(i,o){return i-o},0);function WL(i){return i&&i.length?fu(i,hn):0}function qL(i,o){return i&&i.length?fu(i,Xe(o,2)):0}return fe.after=fw,fe.ary=Lh,fe.assign=Yw,fe.assignIn=Bh,fe.assignInWith=Qo,fe.assignWith=$w,fe.at=e1,fe.before=_h,fe.bind=Qu,fe.bindAll=sL,fe.bindKey=kh,fe.castArray=Lw,fe.chain=vh,fe.chunk=Pv,fe.compact=Iv,fe.concat=Rv,fe.cond=oL,fe.conforms=aL,fe.constant=il,fe.countBy=WS,fe.create=t1,fe.curry=Nh,fe.curryRight=Oh,fe.debounce=Ch,fe.defaults=n1,fe.defaultsDeep=i1,fe.defer=dw,fe.delay=hw,fe.difference=Mv,fe.differenceBy=Dv,fe.differenceWith=Bv,fe.drop=jv,fe.dropRight=Uv,fe.dropRightWhile=xv,fe.dropWhile=zv,fe.fill=Wv,fe.filter=JS,fe.flatMap=KS,fe.flatMapDeep=VS,fe.flatMapDepth=ZS,fe.flatten=yh,fe.flattenDeep=qv,fe.flattenDepth=Jv,fe.flip=pw,fe.flow=lL,fe.flowRight=cL,fe.fromPairs=Gv,fe.functions=c1,fe.functionsIn=f1,fe.groupBy=QS,fe.initial=Kv,fe.intersection=Vv,fe.intersectionBy=Zv,fe.intersectionWith=Qv,fe.invert=h1,fe.invertBy=p1,fe.invokeMap=YS,fe.iteratee=rl,fe.keyBy=$S,fe.keys=Zt,fe.keysIn=dn,fe.map=Jo,fe.mapKeys=y1,fe.mapValues=g1,fe.matches=fL,fe.matchesProperty=dL,fe.memoize=Ho,fe.merge=b1,fe.mergeWith=jh,fe.method=hL,fe.methodOf=pL,fe.mixin=sl,fe.negate=Ko,fe.nthArg=yL,fe.omit=T1,fe.omitBy=v1,fe.once=mw,fe.orderBy=ew,fe.over=gL,fe.overArgs=yw,fe.overEvery=bL,fe.overSome=TL,fe.partial=Xu,fe.partialRight=Eh,fe.partition=tw,fe.pick=S1,fe.pickBy=Uh,fe.property=Hh,fe.propertyOf=vL,fe.pull=eS,fe.pullAll=bh,fe.pullAllBy=tS,fe.pullAllWith=nS,fe.pullAt=iS,fe.range=SL,fe.rangeRight=wL,fe.rearg=gw,fe.reject=rw,fe.remove=rS,fe.rest=bw,fe.reverse=Vu,fe.sampleSize=ow,fe.set=L1,fe.setWith=_1,fe.shuffle=aw,fe.slice=sS,fe.sortBy=cw,fe.sortedUniq=dS,fe.sortedUniqBy=hS,fe.split=K1,fe.spread=Tw,fe.tail=pS,fe.take=mS,fe.takeRight=yS,fe.takeRightWhile=gS,fe.takeWhile=bS,fe.tap=IS,fe.throttle=vw,fe.thru=qo,fe.toArray=Rh,fe.toPairs=xh,fe.toPairsIn=zh,fe.toPath=OL,fe.toPlainObject=Dh,fe.transform=k1,fe.unary=Sw,fe.union=TS,fe.unionBy=vS,fe.unionWith=SS,fe.uniq=wS,fe.uniqBy=LS,fe.uniqWith=_S,fe.unset=N1,fe.unzip=Zu,fe.unzipWith=Th,fe.update=O1,fe.updateWith=C1,fe.values=Dr,fe.valuesIn=E1,fe.without=kS,fe.words=Jh,fe.wrap=ww,fe.xor=NS,fe.xorBy=OS,fe.xorWith=CS,fe.zip=ES,fe.zipObject=AS,fe.zipObjectDeep=FS,fe.zipWith=PS,fe.entries=xh,fe.entriesIn=zh,fe.extend=Bh,fe.extendWith=Qo,sl(fe,fe),fe.add=EL,fe.attempt=Gh,fe.camelCase=I1,fe.capitalize=Wh,fe.ceil=AL,fe.clamp=A1,fe.clone=_w,fe.cloneDeep=Nw,fe.cloneDeepWith=Ow,fe.cloneWith=kw,fe.conformsTo=Cw,fe.deburr=qh,fe.defaultTo=uL,fe.divide=FL,fe.endsWith=R1,fe.eq=Jn,fe.escape=M1,fe.escapeRegExp=D1,fe.every=qS,fe.find=GS,fe.findIndex=ph,fe.findKey=r1,fe.findLast=HS,fe.findLastIndex=mh,fe.findLastKey=s1,fe.floor=PL,fe.forEach=Sh,fe.forEachRight=wh,fe.forIn=o1,fe.forInRight=a1,fe.forOwn=u1,fe.forOwnRight=l1,fe.get=el,fe.gt=Ew,fe.gte=Aw,fe.has=d1,fe.hasIn=tl,fe.head=gh,fe.identity=hn,fe.includes=XS,fe.indexOf=Hv,fe.inRange=F1,fe.invoke=m1,fe.isArguments=tr,fe.isArray=it,fe.isArrayBuffer=Fw,fe.isArrayLike=fn,fe.isArrayLikeObject=jt,fe.isBoolean=Pw,fe.isBuffer=Di,fe.isDate=Iw,fe.isElement=Rw,fe.isEmpty=Mw,fe.isEqual=Dw,fe.isEqualWith=Bw,fe.isError=Yu,fe.isFinite=jw,fe.isFunction=fi,fe.isInteger=Ah,fe.isLength=Vo,fe.isMap=Fh,fe.isMatch=Uw,fe.isMatchWith=xw,fe.isNaN=zw,fe.isNative=Ww,fe.isNil=Jw,fe.isNull=qw,fe.isNumber=Ph,fe.isObject=It,fe.isObjectLike=Dt,fe.isPlainObject=Ss,fe.isRegExp=$u,fe.isSafeInteger=Gw,fe.isSet=Ih,fe.isString=Zo,fe.isSymbol=wn,fe.isTypedArray=Mr,fe.isUndefined=Hw,fe.isWeakMap=Kw,fe.isWeakSet=Vw,fe.join=Xv,fe.kebabCase=B1,fe.last=Rn,fe.lastIndexOf=Yv,fe.lowerCase=j1,fe.lowerFirst=U1,fe.lt=Zw,fe.lte=Qw,fe.max=IL,fe.maxBy=RL,fe.mean=ML,fe.meanBy=DL,fe.min=BL,fe.minBy=jL,fe.stubArray=al,fe.stubFalse=ul,fe.stubObject=LL,fe.stubString=_L,fe.stubTrue=kL,fe.multiply=UL,fe.nth=$v,fe.noConflict=mL,fe.noop=ol,fe.now=Go,fe.pad=x1,fe.padEnd=z1,fe.padStart=W1,fe.parseInt=q1,fe.random=P1,fe.reduce=nw,fe.reduceRight=iw,fe.repeat=J1,fe.replace=G1,fe.result=w1,fe.round=xL,fe.runInContext=Oe,fe.sample=sw,fe.size=uw,fe.snakeCase=H1,fe.some=lw,fe.sortedIndex=oS,fe.sortedIndexBy=aS,fe.sortedIndexOf=uS,fe.sortedLastIndex=lS,fe.sortedLastIndexBy=cS,fe.sortedLastIndexOf=fS,fe.startCase=V1,fe.startsWith=Z1,fe.subtract=zL,fe.sum=WL,fe.sumBy=qL,fe.template=Q1,fe.times=NL,fe.toFinite=di,fe.toInteger=rt,fe.toLength=Mh,fe.toLower=X1,fe.toNumber=Mn,fe.toSafeInteger=Xw,fe.toString=gt,fe.toUpper=Y1,fe.trim=$1,fe.trimEnd=eL,fe.trimStart=tL,fe.truncate=nL,fe.unescape=iL,fe.uniqueId=CL,fe.upperCase=rL,fe.upperFirst=nl,fe.each=Sh,fe.eachRight=wh,fe.first=gh,sl(fe,function(){var i={};return Yn(fe,function(o,N){bt.call(fe.prototype,N)||(i[N]=o)}),i}(),{chain:!1}),fe.VERSION=a,En(["bind","bindKey","curry","curryRight","partial","partialRight"],function(i){fe[i].placeholder=fe}),En(["drop","take"],function(i,o){ft.prototype[i]=function(N){N=N===n?1:Ht(rt(N),0);var Z=this.__filtered__&&!o?new ft(this):this.clone();return Z.__filtered__?Z.__takeCount__=tn(N,Z.__takeCount__):Z.__views__.push({size:tn(N,B),type:i+(Z.__dir__<0?"Right":"")}),Z},ft.prototype[i+"Right"]=function(N){return this.reverse()[i](N).reverse()}}),En(["filter","map","takeWhile"],function(i,o){var N=o+1,Z=N==s||N==v;ft.prototype[i]=function(ne){var he=this.clone();return he.__iteratees__.push({iteratee:Xe(ne,3),type:N}),he.__filtered__=he.__filtered__||Z,he}}),En(["head","last"],function(i,o){var N="take"+(o?"Right":"");ft.prototype[i]=function(){return this[N](1).value()[0]}}),En(["initial","tail"],function(i,o){var N="drop"+(o?"":"Right");ft.prototype[i]=function(){return this.__filtered__?new ft(this):this[N](1)}}),ft.prototype.compact=function(){return this.filter(hn)},ft.prototype.find=function(i){return this.filter(i).head()},ft.prototype.findLast=function(i){return this.reverse().find(i)},ft.prototype.invokeMap=ut(function(i,o){return typeof i=="function"?new ft(this):this.map(function(N){return ms(N,i,o)})}),ft.prototype.reject=function(i){return this.filter(Ko(Xe(i)))},ft.prototype.slice=function(i,o){i=rt(i);var N=this;return N.__filtered__&&(i>0||o<0)?new ft(N):(i<0?N=N.takeRight(-i):i&&(N=N.drop(i)),o!==n&&(o=rt(o),N=o<0?N.dropRight(-o):N.take(o-i)),N)},ft.prototype.takeRightWhile=function(i){return this.reverse().takeWhile(i).reverse()},ft.prototype.toArray=function(){return this.take(B)},Yn(ft.prototype,function(i,o){var N=/^(?:filter|find|map|reject)|While$/.test(o),Z=/^(?:head|last)$/.test(o),ne=fe[Z?"take"+(o=="last"?"Right":""):o],he=Z||/^find/.test(o);ne&&(fe.prototype[o]=function(){var ve=this.__wrapped__,_e=Z?[1]:arguments,Ee=ve instanceof ft,je=_e[0],Ue=Ee||it(ve),xe=function(lt){var ht=ne.apply(fe,Ei([lt],_e));return Z&&Je?ht[0]:ht};Ue&&N&&typeof je=="function"&&je.length!=1&&(Ee=Ue=!1);var Je=this.__chain__,Ze=!!this.__actions__.length,Ye=he&&!Je,ot=Ee&&!Ze;if(!he&&Ue){ve=ot?ve:new ft(this);var $e=i.apply(ve,_e);return $e.__actions__.push({func:qo,args:[xe],thisArg:n}),new Fn($e,Je)}return Ye&&ot?i.apply(this,_e):($e=this.thru(xe),Ye?Z?$e.value()[0]:$e.value():$e)})}),En(["pop","push","shift","sort","splice","unshift"],function(i){var o=mo[i],N=/^(?:push|sort|unshift)$/.test(i)?"tap":"thru",Z=/^(?:pop|shift)$/.test(i);fe.prototype[i]=function(){var ne=arguments;if(Z&&!this.__chain__){var he=this.value();return o.apply(it(he)?he:[],ne)}return this[N](function(ve){return o.apply(it(ve)?ve:[],ne)})}}),Yn(ft.prototype,function(i,o){var N=fe[o];if(N){var Z=N.name+"";bt.call(Ar,Z)||(Ar[Z]=[]),Ar[Z].push({name:o,func:N})}}),Ar[Do(n,h).name]=[{name:"wrapper",func:n}],ft.prototype.clone=iT,ft.prototype.reverse=rT,ft.prototype.value=sT,fe.prototype.at=RS,fe.prototype.chain=MS,fe.prototype.commit=DS,fe.prototype.next=BS,fe.prototype.plant=US,fe.prototype.reverse=xS,fe.prototype.toJSON=fe.prototype.valueOf=fe.prototype.value=zS,fe.prototype.first=fe.prototype.head,us&&(fe.prototype[us]=jS),fe},Or=D0();Ki?((Ki.exports=Or)._=Or,ru._=Or):Qt._=Or}).call(Dk)}(Gs,Gs.exports)),Gs.exports}var Dm;function jk(){return Dm||(Dm=1,function(e){var t=qr.__createBinding||(Object.create?function(C,I,A,f){f===void 0&&(f=A);var E=Object.getOwnPropertyDescriptor(I,A);(!E||("get"in E?!I.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return I[A]}}),Object.defineProperty(C,f,E)}:function(C,I,A,f){f===void 0&&(f=A),C[f]=I[A]}),n=qr.__setModuleDefault||(Object.create?function(C,I){Object.defineProperty(C,"default",{enumerable:!0,value:I})}:function(C,I){C.default=I}),a=qr.__importStar||function(C){if(C&&C.__esModule)return C;var I={};if(C!=null)for(var A in C)A!=="default"&&Object.prototype.hasOwnProperty.call(C,A)&&t(I,C,A);return n(I,C),I};Object.defineProperty(e,"__esModule",{value:!0}),e.PhpRenderer=e.phpNameStyle=e.stringEscape=e.PhpTargetLanguage=e.phpOptions=void 0;const l=On(),d=Wt(),u=Ft(),c=zt(),w=Bt(),U=yr(),P=Nt(),O=Qe(),R=qt(),_=pt(),L=a(Bk());e.phpOptions={withGet:new c.BooleanOption("with-get","Create Getter",!0),fastGet:new c.BooleanOption("fast-get","getter without validation",!1),withSet:new c.BooleanOption("with-set","Create Setter",!1),withClosing:new c.BooleanOption("with-closing","PHP Closing Tag",!1),acronymStyle:(0,U.acronymOption)(U.AcronymStyleOptions.Pascal)};class g extends R.TargetLanguage{constructor(){super("PHP",["php"],"php")}getOptions(){return L.values(e.phpOptions)}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(I,A){const f=(0,c.getOptionValues)(e.phpOptions,A);return new D(this,I,f)}get stringTypeMapping(){const I=new Map;return I.set("date","date"),I.set("time","time"),I.set("uuid","uuid"),I.set("date-time","date-time"),I}}e.PhpTargetLanguage=g,e.stringEscape=(0,P.utf16ConcatMap)((0,P.escapeNonPrintableMapper)(P.isAscii,P.standardUnicodeHexEscape));function y(C){return C===95?!0:(0,P.isAscii)(C)&&(0,P.isLetter)(C)}function h(C){return y(C)||(0,P.isAscii)(C)&&(0,P.isDigit)(C)}const p=(0,P.utf16LegalizeCharacters)(h);function k(C,I,A,f=P.allUpperWordStyle){const E=(0,P.splitIntoWords)(A);return(0,P.combineWords)(E,p,I?P.allUpperWordStyle:C?P.firstUpperWordStyle:P.allLowerWordStyle,I?P.allUpperWordStyle:P.firstUpperWordStyle,I||C?P.allUpperWordStyle:P.allLowerWordStyle,f,I?"_":"",y)}e.phpNameStyle=k;class D extends d.ConvenienceRenderer{constructor(I,A,f){super(I,A),this._options=f,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname="Converter",this._converterKeywords=[]}forbiddenForObjectProperties(I,A){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return this.getNameStyling("typeNamingFunction")}namerForObjectProperty(){return this.getNameStyling("propertyNamingFunction")}makeUnionMemberNamer(){return this.getNameStyling("propertyNamingFunction")}makeEnumCaseNamer(){return this.getNameStyling("enumCaseNamingFunction")}unionNeedsName(I){return(0,_.nullableFromUnion)(I)===null}namedTypeToNameForTopLevel(I){return(0,_.directlyReachableSingleNamedType)(I)}makeNamesForPropertyGetterAndSetter(I,A,f,E,b){const F=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`get_${M(b)}`),m=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`set_${M(b)}`),r=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`validate_${M(b)}`),s=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`from_${M(b)}`),T=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`to_${M(b)}`),v=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),b.order,M=>`sample_${M(b)}`);return{getter:F,setter:m,validate:r,from:s,to:T,sample:v}}makePropertyDependencyNames(I,A,f,E,b){const F=this.makeNamesForPropertyGetterAndSetter(I,A,f,E,b);return this._gettersAndSettersForPropertyName.set(b,F),[F.getter,F.setter,F.validate,F.to,F.from,F.sample]}getNameStyling(I){return{typeNamingFunction:(0,u.funPrefixNamer)("types",f=>k(!0,!1,f,(0,U.acronymStyle)(this._options.acronymStyle))),propertyNamingFunction:(0,u.funPrefixNamer)("properties",f=>k(!1,!1,f,(0,U.acronymStyle)(this._options.acronymStyle))),enumCaseNamingFunction:(0,u.funPrefixNamer)("enum-cases",f=>k(!0,!0,f,(0,U.acronymStyle)(this._options.acronymStyle)))}[I]}startFile(I){this.ensureBlankLine(),!this._haveEmittedLeadingComments&&this.leadingComments!==void 0&&(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){}emitFileHeader(I,A){this.startFile(I),this.emitLine("// This is a autogenerated file:",I),this.ensureBlankLine()}emitDescriptionBlock(I){this.emitCommentLines(I," * ","/**"," */")}emitBlock(I,A){this.emitLine(I," {"),this.indent(A),this.emitLine("}")}phpType(I,A,f=!1,E="?",b=""){function F(m){return[f?E:"",m,f?b:""]}return(0,_.matchType)(A,m=>(0,w.maybeAnnotated)(f,l.anyTypeIssueAnnotation,"Object"),m=>(0,w.maybeAnnotated)(f,l.nullTypeIssueAnnotation,"Object"),m=>F("bool"),m=>F("int"),m=>F("float"),m=>F("string"),m=>F("array"),m=>F(this.nameForNamedType(m)),m=>F("stdClass"),m=>F(this.nameForNamedType(m)),m=>{const r=(0,_.nullableFromUnion)(m);return r!==null?this.phpType(!0,r,!0,E,b):this.nameForNamedType(m)},m=>{if(m.kind==="time")throw Error('transformedStringType.kind === "time"');if(m.kind==="date")throw Error('transformedStringType.kind === "date"');if(m.kind==="date-time")return"DateTime";if(m.kind==="uuid")throw Error('transformedStringType.kind === "uuid"');return"string"})}phpDocConvertType(I,A){return(0,_.matchType)(A,f=>"any",f=>"null",f=>"bool",f=>"int",f=>"float",f=>"string",f=>[this.phpDocConvertType(I,f.items),"[]"],f=>f.getCombinedName(),f=>"stdClass",f=>this.nameForNamedType(f),f=>{const E=(0,_.nullableFromUnion)(f);if(E!==null)return[this.phpDocConvertType(I,E),"|null"];throw Error("union are not supported")},f=>{if(f.kind==="date-time")return"DateTime";throw Error('transformedStringType.kind === "unknown"')})}phpConvertType(I,A){return(0,_.matchType)(A,f=>"any",f=>"null",f=>"bool",f=>"int",f=>"float",f=>"string",f=>"array",f=>"stdClass",f=>"stdClass",f=>"string",f=>{const E=(0,_.nullableFromUnion)(f);if(E!==null)return["?",this.phpConvertType(I,E)];throw Error("union are not supported")},f=>{if(f.kind==="date-time")return"string";throw Error('transformedStringType.kind === "unknown"')})}phpToObjConvert(I,A,f,E){return(0,_.matchType)(A,b=>this.emitLine(...f,...E,"; /*any*/"),b=>this.emitLine(...f,...E,"; /*null*/"),b=>this.emitLine(...f,...E,"; /*bool*/"),b=>this.emitLine(...f,...E,"; /*int*/"),b=>this.emitLine(...f,...E,"; /*float*/"),b=>this.emitLine(...f,...E,"; /*string*/"),b=>{this.emitLine(...f,"array_map(function ($value) {"),this.indent(()=>{this.phpToObjConvert(I,b.items,["return "],["$value"])}),this.emitLine("}, ",...E,");")},b=>this.emitLine(...f,...E,"->to(); ","/*class*/"),b=>{this.emitBlock(["function to($my): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.emitBlock(["foreach ($my as $k => $v)"],()=>{this.phpToObjConvert(I,b.values,["$my->$k = "],["$v"])}),this.emitLine("return $out;")}),this.emitLine("return to(",...E,");")},b=>this.emitLine(...f,this.nameForNamedType(b),"::to(",...E,"); ","/*enum*/"),b=>{const F=(0,_.nullableFromUnion)(b);if(F!==null){this.emitLine("if (!is_null(",...E,")) {"),this.indent(()=>this.phpToObjConvert(I,F,f,E)),this.emitLine("} else {"),this.indent(()=>this.emitLine(...f," null;")),this.emitLine("}");return}throw Error("union are not supported")},b=>{if(b.kind==="date-time"){this.emitLine(...f,...E,"->format(DateTimeInterface::ISO8601);");return}throw Error('transformedStringType.kind === "unknown"')})}transformDateTime(I,A,f){this.emitBlock(["if (!is_a(",f,", 'DateTime'))"],()=>this.emitLine("throw new Exception('Attribute Error:",I,"::",A,"');"))}phpFromObjConvert(I,A,f,E){return(0,_.matchType)(A,b=>this.emitLine(...f,...E,"; /*any*/"),b=>this.emitLine(...f,...E,"; /*null*/"),b=>this.emitLine(...f,...E,"; /*bool*/"),b=>this.emitLine(...f,...E,"; /*int*/"),b=>this.emitLine(...f,...E,"; /*float*/"),b=>this.emitLine(...f,...E,"; /*string*/"),b=>{this.emitLine(...f," array_map(function ($value) {"),this.indent(()=>{this.phpFromObjConvert(I,b.items,["return "],["$value"])}),this.emitLine("}, ",...E,");")},b=>this.emitLine(...f,this.nameForNamedType(b),"::from(",...E,"); ","/*class*/"),b=>{this.emitBlock(["function from($my): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.emitBlock(["foreach ($my as $k => $v)"],()=>{this.phpFromObjConvert(I,b.values,["$out->$k = "],["$v"])}),this.emitLine("return $out;")}),this.emitLine("return from(",...E,");")},b=>this.emitLine(...f,this.nameForNamedType(b),"::from(",...E,"); ","/*enum*/"),b=>{const F=(0,_.nullableFromUnion)(b);if(F!==null){this.emitLine("if (!is_null(",...E,")) {"),this.indent(()=>this.phpFromObjConvert(I,F,f,E)),this.emitLine("} else {"),this.indent(()=>this.emitLine("return null;")),this.emitLine("}");return}throw Error("union are not supported")},b=>{if(b.kind==="date-time"){this.emitLine("$tmp = ","DateTime::createFromFormat(DateTimeInterface::ISO8601, ",E,");"),this.transformDateTime(I,"",["$tmp"]),this.emitLine("return $tmp;");return}throw Error('transformedStringType.kind === "unknown"')})}phpSampleConvert(I,A,f,E,b,F){return(0,_.matchType)(A,m=>this.emitLine(...f,"'AnyType::",I,"::",E,"::"+b,"'",F,"/*",""+b,":",E,"*/"),m=>this.emitLine(...f,"null",F," /*",""+b,":",E,"*/"),m=>this.emitLine(...f,"true",F," /*",""+b,":",E,"*/"),m=>this.emitLine(...f,""+b,F," /*",""+b,":",E,"*/"),m=>this.emitLine(...f,""+(b+b/1e3),F," /*",""+b,":",E,"*/"),m=>this.emitLine(...f,"'",I,"::",E,"::"+b,"'",F," /*",""+b,":",E,"*/"),m=>{this.emitLine(...f," array("),this.indent(()=>{this.phpSampleConvert(I,m.items,[],[],b,"")}),this.emitLine("); /* ",""+b,":",E,"*/")},m=>this.emitLine(...f,this.nameForNamedType(m),"::sample()",F," /*",""+b,":",E,"*/"),m=>{this.emitBlock(["function sample(): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.phpSampleConvert(I,m.values,["$out->{'",I,"'} = "],E,b,";"),this.emitLine("return $out;")}),this.emitLine("return sample();")},m=>this.emitLine(...f,this.nameForNamedType(m),"::sample()",F," /*enum*/"),m=>{const r=(0,_.nullableFromUnion)(m);if(r!==null){this.phpSampleConvert(I,r,f,E,b,F);return}throw Error("union are not supported:"+m)},m=>{if(m.kind==="date-time"){const r=L.pad(""+(1+b%31),2,"0");this.emitLine(...f,"DateTime::createFromFormat(DateTimeInterface::ISO8601, '",`2020-12-${r}T12:${r}:${r}+00:00`,"')",F);return}throw Error('transformedStringType.kind === "unknown"')})}phpValidate(I,A,f,E){const b=(F,m=I)=>{this.emitBlock(["if (!",F,"(",E,"))"],()=>this.emitLine('throw new Exception("Attribute Error:',m,"::",f,'");'))};return(0,_.matchType)(A,F=>b("defined"),F=>b("is_null"),F=>b("is_bool"),F=>b("is_integer"),F=>b("is_float"),F=>b("is_string"),F=>{b("is_array"),this.emitLine("array_walk(",E,", function(",E,"_v) {"),this.indent(()=>{this.phpValidate(I,F.items,f,`${E}_v`)}),this.emitLine("});")},F=>{this.emitLine(E,"->validate();")},F=>{this.emitLine("foreach (",E," as $k => $v) {"),this.indent(()=>{this.phpValidate(I,F.values,f,"$v")}),this.emitLine("}")},F=>{this.emitLine(this.phpType(!1,F),"::to(",E,");")},F=>{const m=(0,_.nullableFromUnion)(F);if(m!==null){this.emitBlock(["if (!is_null(",E,"))"],()=>{this.phpValidate(I,m,f,E)});return}throw Error("not implemented")},F=>{if(F.kind==="date-time"){this.transformDateTime(I,f,[E]);return}throw Error(`transformedStringType.kind === ${F.kind}`)})}emitFromMethod(I,A,f,E,b){this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *")),this.emitLine(" * @param ",this.phpConvertType(f,A.type)," $value"),this.emitLine(" * @throws Exception"),this.emitLine(" * @return ",this.phpType(!1,A.type)),this.emitLine(" */"),this.emitBlock(["public static function ",I.from,"(",this.phpConvertType(f,A.type)," $value): ",this.phpType(!1,A.type)],()=>{this.phpFromObjConvert(f,A.type,["return "],["$value"])})}emitToMethod(I,A,f,E,b){this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *")),this.emitLine(" * @throws Exception"),this.emitLine(" * @return ",this.phpConvertType(f,A.type)),this.emitLine(" */"),this.emitBlock(["public function ",I.to,"(): ",this.phpConvertType(f,A.type)],()=>{this.emitBlock(["if (",f,"::",I.validate,"($this->",E,")) "],()=>{this.phpToObjConvert(f,A.type,["return "],["$this->",E])}),this.emitLine("throw new Exception('never get to this ",f,"::",E,"');")})}emitValidateMethod(I,A,f,E,b){this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *")),this.emitLine(" * @param ",this.phpType(!1,A.type,!1,"","|null")),this.emitLine(" * @return bool"),this.emitLine(" * @throws Exception"),this.emitLine(" */"),this.emitBlock(["public static function ",I.validate,"(",this.phpType(!1,A.type)," $value): bool"],()=>{this.phpValidate(f,A.type,E,"$value"),this.emitLine("return true;")})}emitGetMethod(I,A,f,E,b){if(this._options.withGet){this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *")),this._options.fastGet||this.emitLine(" * @throws Exception");const F=this.phpType(!1,A.type);this.emitLine(" * @return ",F),this.emitLine(" */"),this.emitBlock(["public function ",I.getter,"(): ",F],()=>{this._options.fastGet?this.emitLine("return $this->",E,";"):(this.emitBlock(["if (",f,"::",I.validate,"($this->",E,")) "],()=>{this.emitLine("return $this->",E,";")}),this.emitLine("throw new Exception('never get to ",I.getter," ",f,"::",E,"');"))})}}emitSetMethod(I,A,f,E,b){this._options.withSet&&(this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *")),this.emitLine(" * @param ",this.phpType(!1,A.type,!1,"","|null")),this.emitLine(" * @throws Exception"),this.emitLine(" */"),this.emitBlock(["public function ",I.setter,"(",this.phpType(!1,A.type)," $value)"],()=>{this.emitBlock(["if (",f,"::",I.validate,"($value)) "],()=>{this.emitLine("$this->",E," = $value;")})}))}emitSampleMethod(I,A,f,E,b,F){if(this._options.withGet){this.emitLine("/**"),b!==void 0&&(this.emitLine(" * ",b),this.emitLine(" *"));const m=this.phpType(!1,A.type);this.emitLine(" * @return ",m),this.emitLine(" */"),this.emitBlock(["public static function ",I.sample,"(): ",m],()=>{this.phpSampleConvert(f,A.type,["return "],[E],F,";")})}}emitClassDefinition(I,A){this.emitFileHeader(A,[]),this.emitBlock(["class ",A],()=>{this.forEachClassProperty(I,"none",(m,r,s)=>{this.emitLine("private ",this.phpType(!1,s.type)," $",m,"; // json:",r," ",s.type.isNullable?"Optional":"Required")}),this.ensureBlankLine();const f=[],E=[];let b="";this.forEachClassProperty(I,"none",(m,r,s)=>{E.push([b,this.phpType(!1,s.type)," $",m]),b=", ",f.push([" * @param ",this.phpType(!1,s.type,!1,"","|null")," $",m,`
952
+ `])}),this.emitBlock([`/**
953
+ `,...f,` */
954
+ `,"public function __construct(",...E,")"],()=>{this.forEachClassProperty(I,"none",m=>{this.emitLine("$this->",m," = $",m,";")})});let F=31;this.forEachClassProperty(I,"leading-and-interposing",(m,r,s)=>{const T=this.descriptionForClassProperty(I,r),v=(0,O.defined)(this._gettersAndSettersForPropertyName.get(m));this.ensureBlankLine(),this.emitFromMethod(v,s,A,m,T),this.ensureBlankLine(),this.emitToMethod(v,s,A,m,T),this.ensureBlankLine(),this.emitValidateMethod(v,s,A,m,T),this.ensureBlankLine(),this.emitGetMethod(v,s,A,m,T),this.ensureBlankLine(),this.emitSetMethod(v,s,A,m,T),this.ensureBlankLine(),this.emitSampleMethod(v,s,A,m,T,F++)}),this.ensureBlankLine(),this.emitBlock([`/**
955
+ `,` * @throws Exception
956
+ `,` * @return bool
957
+ `,` */
958
+ `,"public function validate(): bool"],()=>{let m=[],r="return ";this.forEachClassProperty(I,"none",(s,T,v)=>{const M=(0,O.defined)(this._gettersAndSettersForPropertyName.get(s));m.push([r,A,"::",M.validate,"($this->",s,")"]),r="|| "}),m.forEach((s,T)=>{this.emitLine(...s,m.length===T+1?";":"")})}),this.ensureBlankLine(),this.emitBlock([`/**
959
+ `,` * @return stdClass
960
+ `,` * @throws Exception
961
+ `,` */
962
+ `,"public function to(): stdClass "],()=>{this.emitLine("$out = new stdClass();"),this.forEachClassProperty(I,"none",(m,r)=>{const s=(0,O.defined)(this._gettersAndSettersForPropertyName.get(m));this.emitLine("$out->{'",r,"'} = $this->",s.to,"();")}),this.emitLine("return $out;")}),this.ensureBlankLine(),this.emitBlock([`/**
963
+ `,` * @param stdClass $obj
964
+ `," * @return ",A,`
965
+ `,` * @throws Exception
966
+ `,` */
967
+ `,"public static function from(stdClass $obj): ",A],()=>{this._options.fastGet&&this.forEachClassProperty(I,"none",r=>{const s=(0,O.defined)(this._gettersAndSettersForPropertyName.get(r));this.emitLine(A,"::",s.validate,"($this->",r,", true);")}),this.emitLine("return new ",A,"(");let m=" ";this.forEachClassProperty(I,"none",(r,s)=>{const T=(0,O.defined)(this._gettersAndSettersForPropertyName.get(r));this.emitLine(m,A,"::",T.from,"($obj->{'",s,"'})"),m=","}),this.emitLine(");")}),this.ensureBlankLine(),this.emitBlock([`/**
968
+ `," * @return ",A,`
969
+ `,` */
970
+ `,"public static function sample(): ",A],()=>{this.emitLine("return new ",A,"(");let m=" ";this.forEachClassProperty(I,"none",r=>{const s=(0,O.defined)(this._gettersAndSettersForPropertyName.get(r));this.emitLine(m,A,"::",s.sample,"()"),m=","}),this.emitLine(");")})}),this.finishFile()}emitUnionAttributes(I,A){}emitUnionSerializer(I,A){}emitUnionDefinition(I,A){throw Error("emitUnionDefinition not implemented")}emitEnumSerializationAttributes(I){}emitEnumDeserializationAttributes(I){}emitEnumDefinition(I,A){this.emitFileHeader(A,[]),this.emitDescription(this.descriptionForType(I));const f="string";this.emitBlock(["class ",A],()=>{this.forEachEnumCase(I,"none",(E,b)=>{this.emitLine("public static ",A," $",E,";")}),this.emitBlock("public static function init()",()=>{this.forEachEnumCase(I,"none",(E,b)=>{this.emitLine(A,"::$",E," = new ",A,"('",b,"');")})}),this.emitLine("private ",f," $enum;"),this.emitBlock(["public function __construct(",f," $enum)"],()=>{this.emitLine("$this->enum = $enum;")}),this.ensureBlankLine(),this.emitEnumSerializationAttributes(I),this.emitBlock([`/**
971
+ `," * @param ",A,`
972
+ `," * @return ",f,`
973
+ `,` * @throws Exception
974
+ `,` */
975
+ `,"public static function to(",A," $obj): ",f],()=>{this.emitLine("switch ($obj->enum) {"),this.indent(()=>{this.forEachEnumCase(I,"none",(E,b)=>{this.emitLine("case ",A,"::$",E,"->enum: return '",(0,e.stringEscape)(b),"';")})}),this.emitLine("}"),this.emitLine("throw new Exception('the give value is not an enum-value.');")}),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(I),this.emitBlock([`/**
976
+ `,` * @param mixed
977
+ `," * @return ",A,`
978
+ `,` * @throws Exception
979
+ `,` */
980
+ `,"public static function from($obj): ",A],()=>{this.emitLine("switch ($obj) {"),this.indent(()=>{this.forEachEnumCase(I,"none",(E,b)=>{this.emitLine("case '",(0,e.stringEscape)(b),"': return ",A,"::$",E,";")})}),this.emitLine("}"),this.emitLine('throw new Exception("Cannot deserialize ',A,'");')}),this.ensureBlankLine(),this.emitBlock([`/**
981
+ `," * @return ",A,`
982
+ `,` */
983
+ `,"public static function sample(): ",A],()=>{const E=[];this.forEachEnumCase(I,"none",b=>{E.push([A,"::$",b])}),this.emitLine("return ",E[0],";")})}),this.emitLine(A,"::init();"),this.finishFile()}emitSourceStructure(I){this.emitLine("<?php"),this.forEachNamedType("leading-and-interposing",(A,f)=>this.emitClassDefinition(A,f),(A,f)=>this.emitEnumDefinition(A,f),(A,f)=>this.emitUnionDefinition(A,f)),this._options.withClosing&&this.emitLine("?>"),super.finishFile((0,O.defined)(I))}}e.PhpRenderer=D}(qr)),qr}var Bm;function Za(){return Bm||(Bm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.languageNamed=e.all=void 0;const t=et(),n=ib(),a=rb(),l=sb(),d=ob(),u=ab(),c=Va(),w=lb(),U=cb(),P=fb(),O=db(),R=hb(),_=pb(),L=mb(),g=yb(),y=gb(),h=bb(),p=Tb(),k=Mk(),D=vb(),C=jk();e.all=[new n.CSharpTargetLanguage,new a.GoTargetLanguage,new L.RustTargetLanguage,new g.CrystalTargetLanguage,new l.CPlusPlusTargetLanguage,new d.ObjectiveCTargetLanguage,new u.JavaTargetLanguage,new U.TypeScriptTargetLanguage,new c.JavaScriptTargetLanguage,new w.JavaScriptPropTypesTargetLanguage,new U.FlowTargetLanguage,new P.SwiftTargetLanguage,new O.KotlinTargetLanguage,new R.ElmTargetLanguage,new _.JSONSchemaTargetLanguage,new y.RubyTargetLanguage,new h.DartTargetLanguage,new p.PythonTargetLanguage("Python",["python","py"],"py"),new k.PikeTargetLanguage,new D.HaskellTargetLanguage,new C.PhpTargetLanguage];function I(A,f){f===void 0&&(f=e.all);const E=(0,t.iterableFind)(f,b=>b.names.indexOf(A)>=0||b.displayName===A);return E!==void 0?E:(0,t.iterableFind)(f,b=>b.extension===A)}e.languageNamed=I}(cl)),cl}var As={},Ti={},vi={},jm;function pf(){if(jm)return vi;jm=1,Object.defineProperty(vi,"__esModule",{value:!0}),vi.UnionBuilder=vi.TypeRefUnionAccumulator=vi.UnionAccumulator=void 0;const e=et(),t=mt(),n=pt(),a=At(),l=Qe(),d=Oi();function u(y,h){return y===void 0?h:(0,a.combineTypeAttributes)("union",y,h)}function c(y,h,p){y.set(h,u(y.get(h),p))}function w(y,h,p){let k=y.get(h);k===void 0&&(k=[],y.set(h,k)),k.push(p)}function U(y){return(0,e.mapMap)(y,h=>(0,a.combineTypeAttributes)("union",h))}function P(y,h,p){const k=(0,l.defined)(y.get(h));y.delete(h),c(y,p,k)}class O{constructor(h){this._conflateNumbers=h,this._nonStringTypeAttributes=new Map,this._stringTypeAttributes=new Map,this.arrayData=[],this.objectData=[],this._enumCases=new Set,this._lostTypeAttributes=!1}have(h){return this._nonStringTypeAttributes.has(h)||this._stringTypeAttributes.has(h)}addNone(h){this._lostTypeAttributes=!0}addAny(h){w(this._nonStringTypeAttributes,"any",h),this._lostTypeAttributes=!0}addPrimitive(h,p){(0,l.assert)(h!=="any","any must be added with addAny"),w(this._nonStringTypeAttributes,h,p)}addFullStringType(h,p){let k;p===void 0?p=d.stringTypesTypeAttributeKind.tryGetInAttributes(h):k=d.stringTypesTypeAttributeKind.makeAttributes(p),p===void 0&&(p=d.StringTypes.unrestricted,k=d.stringTypesTypeAttributeKind.makeAttributes(p));const D=this._nonStringTypeAttributes.get("enum");p.isRestricted&&(0,l.assert)(D===void 0,"We can't add both an enum as well as a restricted string type to a union builder"),w(this._stringTypeAttributes,"string",h),k!==void 0&&w(this._stringTypeAttributes,"string",k)}addStringType(h,p,k){if(h==="string"){this.addFullStringType(p,k);return}w(this._stringTypeAttributes,h,p),k!==void 0&&w(this._stringTypeAttributes,h,d.stringTypesTypeAttributeKind.makeAttributes(k))}addArray(h,p){this.arrayData.push(h),w(this._nonStringTypeAttributes,"array",p)}addObject(h,p){this.objectData.push(h),w(this._nonStringTypeAttributes,"object",p)}addEnum(h,p){if(this._stringTypeAttributes.get("string")!==void 0){w(this._stringTypeAttributes,"string",p);return}w(this._nonStringTypeAttributes,"enum",p),(0,e.setUnionInto)(this._enumCases,h)}addStringCases(h,p){this.addFullStringType(p,d.StringTypes.fromCases(h))}addStringCase(h,p,k){this.addFullStringType(k,d.StringTypes.fromCase(h,p))}get enumCases(){return this._enumCases}getMemberKinds(){(0,l.assert)(!(this.have("enum")&&this.have("string")),"We can't have both strings and enums in the same union");let h=(0,e.mapMerge)(U(this._nonStringTypeAttributes),U(this._stringTypeAttributes));if(h.size===0)return new Map([["none",a.emptyTypeAttributes]]);if(this._nonStringTypeAttributes.has("any")){(0,l.assert)(this._lostTypeAttributes,"This had to be set when we added 'any'");const p=(0,a.combineTypeAttributes)("union",Array.from(h.values()));return new Map([["any",p]])}return this._conflateNumbers&&this.have("integer")&&this.have("double")&&P(h,"integer","double"),this.have("map")&&P(h,"map","class"),h}get lostTypeAttributes(){return this._lostTypeAttributes}}vi.UnionAccumulator=O;class R{getAttributes(){return a.emptyTypeAttributes}}function _(y){const h=new Map,p=new Map,k=new Set;let D=new Set;function C(b,F,m){if(b instanceof t.UnionType){k.add(b),m&&(D=D.add(b)),m=m&&b.members.size===1,F.push(b);for(const r of b.members)C(r,F,m);F.pop()}else{(0,e.mapUpdateInto)(h,b,r=>r===void 0?new Set(F):(0,e.setUnionInto)(r,F));for(const r of F)(0,e.mapUpdateInto)(p,r,s=>s===void 0?new Set([b]):s.add(b))}}const I=[new R],A=Array.from(y);for(const b of A)C(b,I,A.length===1);const f=(0,e.mapMap)(h,(b,F)=>{const m=Array.from(b).filter(s=>(0,l.defined)(p.get(s)).size===1);(0,l.assert)(m.every(s=>(0,l.defined)(p.get(s)).has(F)),"We messed up bookkeeping");const r=m.map(s=>s.getAttributes());return(0,a.combineTypeAttributes)("union",[F.getAttributes()].concat(r))}),E=Array.from(k).map(b=>{const F=p.get(b);if(F!==void 0&&F.size===1)return a.emptyTypeAttributes;const m=b.getAttributes();return D.has(b)?m:(0,a.makeTypeAttributesInferred)(m)});return[f,(0,a.combineTypeAttributes)("union",E)]}class L extends O{addType(h,p){(0,n.matchTypeExhaustive)(h,k=>this.addNone(p),k=>this.addAny(p),k=>this.addPrimitive("null",p),k=>this.addPrimitive("bool",p),k=>this.addPrimitive("integer",p),k=>this.addPrimitive("double",p),k=>this.addStringType("string",p),k=>this.addArray(k.items.typeRef,p),k=>this.addObject(k.typeRef,p),k=>this.addObject(k.typeRef,p),k=>this.addObject(k.typeRef,p),k=>this.addEnum(k.cases,p),k=>(0,l.panic)("The unions should have been eliminated in attributesForTypesInUnion"),k=>this.addStringType(k.kind,p))}addTypes(h){const[p,k]=_(h);for(const[D,C]of p)this.addType(D,C);return k}}vi.TypeRefUnionAccumulator=L;let g=class{constructor(h){this.typeBuilder=h}makeTypeOfKind(h,p,k,D){switch(p){case"string":return this.typeBuilder.getStringType(k,void 0,D);case"enum":return this.typeBuilder.getEnumType(k,h.enumCases,D);case"object":return this.makeObject(h.objectData,k,D);case"array":return this.makeArray(h.arrayData,k,D);default:return(0,t.isPrimitiveTypeKind)(p)?this.typeBuilder.getPrimitiveType(p,k,D):p==="union"||p==="class"||p==="map"||p==="intersection"?(0,l.panic)(`getMemberKinds() shouldn't return ${p}`):(0,l.assertNever)(p)}}buildUnion(h,p,k,D){const C=h.getMemberKinds();if(h.lostTypeAttributes&&this.typeBuilder.setLostTypeAttributes(),C.size===1){const[[E,b]]=Array.from(C),F=(0,a.combineTypeAttributes)("union",k,(0,a.increaseTypeAttributesDistance)(b));return this.makeTypeOfKind(h,E,F,D)}const I=p?this.typeBuilder.getUniqueUnionType(k,void 0,D):void 0,A=[];for(const[E,b]of C)A.push(this.makeTypeOfKind(h,E,b,void 0));const f=new Set(A);return I!==void 0?(this.typeBuilder.setSetOperationMembers(I,f),I):this.typeBuilder.getUnionType(k,f,D)}};return vi.UnionBuilder=g,vi}var Um;function mf(){if(Um)return Ti;Um=1,Object.defineProperty(Ti,"__esModule",{value:!0}),Ti.unifyTypes=Ti.unionBuilderForUnification=Ti.UnifyUnionBuilder=void 0;const e=et(),t=mt(),n=pt(),a=pf(),l=Qe(),d=At(),u=Xn();function c(R,_,L){let g=!1,y=new Set;for(const I of R)(0,e.setUnionInto)(y,I.getProperties().keys());let h=Array.from(y).map(I=>[I,new Set,!1]),p;for(const I of R){let A=I.getAdditionalProperties();A!==void 0&&(p===void 0&&(p=new Set),A!==void 0&&p.add(A));for(let f=0;f<h.length;f++){let[E,b,F]=h[f];const m=I.getProperties().get(E);m===void 0?(F=!0,A!==void 0&&A.kind!=="any"&&b.add(A)):(m.isOptional&&(F=!0),b.add(m.type)),h[f][2]=F}}const k=p===void 0?void 0:L(p),D=h.map(([I,A,f])=>[I,_.makeClassProperty(L(A),f)]);return[new Map(D),k,g]}function w(R){let _=!1,L=!1,g=!1;for(const y of R){y.getProperties().size>0&&(_=!0);const h=y.getAdditionalProperties();h!==void 0&&(L=!0,h.kind!=="any"&&(g=!0))}return{hasProperties:_,hasAdditionalProperties:L,hasNonAnyAdditionalProperties:g}}class U extends a.UnionBuilder{constructor(_,L,g,y){super(_),this._makeObjectTypes=L,this._makeClassesFixed=g,this._unifyTypes=y}makeObject(_,L,g){const y=this.typeBuilder.lookupTypeRefs(_,g);if(y!==void 0)return(0,l.assert)(g===void 0||y===g,"The forwarding ref must be consumed"),this.typeBuilder.addAttributes(y,L),y;if(_.length===1)return this.typeBuilder.reconstituteTypeRef(_[0],L,g);const h=_.map(C=>(0,n.assertIsObject)((0,u.derefTypeRef)(C,this.typeBuilder))),{hasProperties:p,hasAdditionalProperties:k,hasNonAnyAdditionalProperties:D}=w(h);if(!this._makeObjectTypes&&(D||!p&&k)){const C=new Set;for(const A of h)(0,e.setUnionInto)(C,Array.from(A.getProperties().values()).map(f=>f.typeRef));const I=new Set(h.filter(A=>A.getAdditionalProperties()!==void 0).map(A=>(0,l.defined)(A.getAdditionalProperties()).typeRef));return(0,e.setUnionInto)(C,I),this.typeBuilder.getMapType(L,this._unifyTypes(Array.from(C)))}else{const[C,I,A]=c(h,this.typeBuilder,f=>((0,l.assert)(f.size>0,"Property has no type"),this._unifyTypes(Array.from(f).map(E=>E.typeRef))));return A&&this.typeBuilder.setLostTypeAttributes(),this._makeObjectTypes?this.typeBuilder.getUniqueObjectType(L,C,I,g):((0,l.assert)(I===void 0,"We have additional properties but want to make a class"),this.typeBuilder.getUniqueClassType(L,this._makeClassesFixed,C,g))}}makeArray(_,L,g){return this.typeBuilder.getArrayType(L,this._unifyTypes(_),g)}}Ti.UnifyUnionBuilder=U;function P(R,_,L,g){return new U(R,_,L,y=>O(new Set(y.map(h=>(0,u.derefTypeRef)(h,R))),d.emptyTypeAttributes,R,P(R,_,L,g),g))}Ti.unionBuilderForUnification=P;function O(R,_,L,g,y,h){if(_=L.reconstituteTypeAttributes(_),R.size===0)return(0,l.panic)("Cannot unify empty set of types");if(R.size===1){const I=(0,l.defined)((0,e.iterableFirst)(R));if(!(I instanceof t.UnionType))return L.reconstituteTypeRef(I.typeRef,_,h)}const p=Array.from(R).map(I=>I.typeRef),k=L.lookupTypeRefs(p,h);if(k!==void 0)return L.addAttributes(k,_),k;const D=new a.TypeRefUnionAccumulator(y),C=L.reconstituteTypeAttributes(D.addTypes(R));return _=(0,d.combineTypeAttributes)("union",_,C),L.withForwardingRef(h,I=>(L.registerUnion(p,I),g.buildUnion(D,!1,_,I)))}return Ti.unifyTypes=O,Ti}var xm;function Uk(){if(xm)return As;xm=1,Object.defineProperty(As,"__esModule",{value:!0}),As.combineClasses=void 0;const e=mt(),t=pt(),n=Qe(),a=mf(),l=3/4;function d(P,O){return(0,e.setOperationCasesEqual)(P,O,!0,(R,_)=>R.structurallyCompatible(_,!0))}function u(P,O,R){const _=P.getProperties(),L=O.getProperties();if(R){if(_.size!==L.size)return!1}else if(_.size<L.size*l||L.size<_.size*l)return!1;let g,y;_.size>L.size?(g=_,y=L):(g=L,y=_);let h;if(R)h=0;else{const D=Math.ceil(g.size*l);h=y.size-D}(0,n.assert)(h>=0,"Max faults negative");const p=[];let k=0;for(const[D]of y)if(g.has(D))p.push(D);else if(k+=1,k>h)break;if(k>h)return!1;for(const D of p){let C=y.get(D),I=g.get(D);if(C===void 0||I===void 0)return(0,n.panic)(`Both classes should have property ${D}`);const A=(0,t.nonNullTypeCases)(C.type),f=(0,t.nonNullTypeCases)(I.type);if(A.size>0&&f.size>0&&!d(A,f))return!1}return!0}function c(P,O,R){for(const _ of O.prototypes)if(_.structurallyCompatible(P))return O.members.push(P),!0;for(const _ of O.prototypes)if(u(_,P,R))return O.prototypes.push(P),O.members.push(P),!0;return!1}function w(P,O,R){const _=Array.from(P.allNamedTypesSeparated().objects).filter(g=>g instanceof e.ClassType&&!g.isFixed),L=[];for(const g of _){let y;for(let p=0;p<L.length;p++)if(c(g,L[p],O)){y=p;break}y===void 0&&(y=L.length,L.push({members:[g],prototypes:[g]}));const h=L[0];L[0]=L[y],L[y]=h}return L.map(g=>g.members).filter(g=>g.length>1)}function U(P,O,R,_,L,g){const y=P.time(" find similarity cliques",()=>w(O,L));function h(p,k,D){(0,n.assert)(p.size>0,"Clique can't be empty");const C=(0,t.combineTypeAttributesOfTypes)("union",p);return(0,a.unifyTypes)(p,C,k,(0,a.unionBuilderForUnification)(k,!1,!1,_),_,D)}return O.rewrite("combine classes",P.stringTypeMapping,R,y,g,h)}return As.combineClasses=U,As}var Fs={},an={},Ps={},zm;function xk(){return zm||(zm=1,Object.defineProperty(Ps,"__esModule",{value:!0}),Ps.encodedMarkovChain=void 0,Ps.encodedMarkovChain="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"),Ps}var Wm;function Sb(){if(Wm)return an;Wm=1,Object.defineProperty(an,"__esModule",{value:!0}),an.test=an.generate=an.evaluate=an.evaluateFull=an.load=an.train=void 0;const e=Qe(),t=xk();function n(){const _=[];for(let L=0;L<128;L++)_.push(null);return{count:0,arr:_}}function a(_,L,g){if(g>=L.length)return _;let y=L.charCodeAt(g);y>=128&&(y=0);const h=_.arr[y];if(h!==null)return typeof h=="object"?a(h,L,g+1):h/_.count}function l(_,L,g){let y=L.charCodeAt(g);if(y>=128&&(y=0),g>=L.length-1){if(typeof _!="object")return(0,e.panic)("Malformed trie");let p=_.arr[y];if(p===null)p=0;else if(typeof p=="object")return(0,e.panic)("Malformed trie");_.arr[y]=p+1,_.count+=1;return}let h=_.arr[y];return h===null&&(_.arr[y]=h=n()),typeof h!="object"?(0,e.panic)("Malformed trie"):l(h,L,g+1)}function d(_,L){const g=n();for(const y of _)for(let h=L;h<=y.length;h++)l(g,y.slice(h-L,h),0);return{trie:g,depth:L}}an.train=d;function u(){return JSON.parse((0,e.inflateBase64)(t.encodedMarkovChain))}an.load=u;function c(_,L){const{trie:g,depth:y}=_;if(L.length<y)return[1,[]];let h=1;const p=[];for(let k=y;k<=L.length;k++){let D=a(g,L.slice(k-y,k),0);if(typeof D=="object")return(0,e.panic)("Did we mess up the depth?");D===void 0&&(D=1e-4),p.push(D),h=h*D}return[Math.pow(h,1/(L.length-y+1)),p]}an.evaluateFull=c;function w(_,L){return c(_,L)[0]}an.evaluate=w;function U(_,L){const g=L-_;return _+Math.floor(Math.random()*g)}function P(_,L,g){(0,e.assert)(L.length===_.depth-1,"State and chain length don't match up");const y=a(_.trie,L,0);if(typeof y=="number")return(0,e.panic)("Wrong depth?");if(y===void 0)return String.fromCharCode(U(32,127));const h=y.arr.map((C,I)=>C===null?I===0?0:g:C);let p=0;for(const C of h)p+=C;const k=U(0,p);let D=0;for(let C=0;C<h.length;C++)if(D+=h[C],k<D)return String.fromCharCode(C);return(0,e.panic)("We screwed up bookkeeping, or randomInt")}an.generate=P;function O(_,L){console.log(`"${L}": ${w(_,L)}`)}function R(){const _=u();O(_,"url"),O(_,"json"),O(_,"my_property"),O(_,"ordinary"),O(_,"different"),O(_,"189512"),O(_,"2BTZIqw0ntH9MvilQ3ewNY"),O(_,"0uBTNdNGb2OY5lou41iYL52LcDq2"),O(_,"-KpqHmWuDOUnr1hmAhxp"),O(_,"granularity"),O(_,"coverage"),O(_,"postingFrequency"),O(_,"dataFrequency"),O(_,"units"),O(_,"datasetOwner"),O(_,"organization"),O(_,"timePeriod"),O(_,"contactInformation"),O(_,"🚾 🆒 🆓 🆕 🆖 🆗 🆙 🏧")}return an.test=R,an}var qm;function zk(){if(qm)return Fs;qm=1,Object.defineProperty(Fs,"__esModule",{value:!0}),Fs.inferMaps=void 0;const e=et(),t=mt(),n=pt(),a=Qe(),l=mf(),d=Sb(),u=20,c=50;let w;function U(R){return w===void 0&&(w=(0,d.load)()),(0,d.evaluate)(w,R)}function P(R){const _=R.size;if(_<2)return;if((0,e.iterableEvery)(R.keys(),h=>/^[0-9]+$/.test(h)))return(0,e.setMap)(R.values(),h=>h.type);if(_<c&&(0,e.iterableEvery)(R.values(),h=>(0,t.isPrimitiveStringTypeKind)(h.type.kind)||h.type.kind==="null"))return;if(_<u){const k=Array.from(R.keys()).map(U).reduce((f,E)=>f*E,1),D=Math.pow(k,1/_),C=5,I=Math.pow(22,C),A=Math.pow(_+2,C)/I+(.0025-Math.pow(3,C)/I);if(D>A)return}let L;const g=new Set;let y=!0;for(const[,h]of R){const p=(0,n.removeNullFromType)(h.type)[1];if(p.size>0)if(L!==void 0){if(!(0,t.setOperationCasesEqual)(p,L,!0,(k,D)=>k.structurallyCompatible(D,!0))){y=!1;break}}else L=p;g.add(h.type)}if(y)return g}function O(R,_,L,g){function y(p,k,D){const C=(0,a.defined)((0,e.iterableFirst)(p)),I=C.getProperties(),A=P(I);return A===void 0?(0,a.panic)(`We shouldn't be replacing class ${C.getCombinedName()} with a map`):k.getMapType(C.getAttributes(),(0,l.unifyTypes)(A,C.getAttributes(),k,(0,l.unionBuilderForUnification)(k,!1,!1,L),L),D)}const h=Array.from(R.allNamedTypesSeparated().objects).filter(p=>p instanceof t.ClassType?!p.isFixed&&P(p.getProperties())!==void 0:!1);return R.rewrite("infer maps",_,!1,h.map(p=>[p]),g,y)}return Fs.inferMaps=O,Fs}var Bi={},Jm;function Wk(){if(Jm)return Bi;Jm=1;var e=Bi.__createBinding||(Object.create?function(R,_,L,g){g===void 0&&(g=L);var y=Object.getOwnPropertyDescriptor(_,L);(!y||("get"in y?!_.__esModule:y.writable||y.configurable))&&(y={enumerable:!0,get:function(){return _[L]}}),Object.defineProperty(R,g,y)}:function(R,_,L,g){g===void 0&&(g=L),R[g]=_[L]}),t=Bi.__setModuleDefault||(Object.create?function(R,_){Object.defineProperty(R,"default",{enumerable:!0,value:_})}:function(R,_){R.default=_}),n=Bi.__importStar||function(R){if(R&&R.__esModule)return R;var _={};if(R!=null)for(var L in R)L!=="default"&&Object.prototype.hasOwnProperty.call(R,L)&&e(_,R,L);return t(_,R),_};Object.defineProperty(Bi,"__esModule",{value:!0}),Bi.gatherNames=void 0;const a=n(Qg()),l=et(),d=mt(),u=pt(),c=qi(),w=Qe(),U=oo();class P{constructor(){this._present=new Set,this._queue=[],this._front=0}get size(){return this._queue.length-this._front}get isEmpty(){return this.size<=0}push(_){this._present.has(_)||(this._queue.push(_),this._present.add(_))}unshift(){(0,w.assert)(!this.isEmpty,"Trying to unshift from an empty queue");const _=this._queue[this._front];return _===void 0?(0,w.panic)("Value should have been present in queue"):(this._queue[this._front]=void 0,this._front+=1,this._present.delete(_),this._front>this.size&&(this._queue=this._queue.slice(this._front),this._front=0),_)}}function O(R,_,L){function g(f,E){R.attributeStore.set(c.namesTypeAttributeKind,f,E)}if(_)for(const f of R.allTypesUnordered())f.hasNames&&g(f,f.getNames().clearInferred());const y=new P,h=new Map;function p(f,E){if(f.hasNames){const r=f.getNames();r.areInferred||(E=r.names)}const b=h.get(f);if(b===null)return;let F;b===void 0?F=E:E===null?F=null:F=(0,l.setUnion)(b,E),F!==null&&F.size>=c.tooManyNamesThreshold&&(F=null),h.set(f,F);const m=(0,U.transformationForType)(f);if(m!==void 0&&p(m.targetType,E),b!==void 0&&F!==null){if(b.size===F.size)return}else if(b===F)return;y.push(f)}for(const[f,E]of R.topLevels)p(E,new Set([f]));for(;!y.isEmpty;){const f=y.unshift(),E=(0,w.defined)(h.get(f));if(f instanceof d.ObjectType){const b=f.getSortedProperties();for(const[m,r]of b)p(r.type,new Set([m]));const F=f.getAdditionalProperties();F!==void 0&&p(F,E===null?null:(0,l.setMap)(E,a.singular))}else(0,u.matchCompoundType)(f,b=>{p(b.items,E===null?null:(0,l.setMap)(E,a.singular))},b=>(0,w.panic)("We handled this above"),b=>(0,w.panic)("We handled this above"),b=>(0,w.panic)("We handled this above"),b=>{const F=(0,l.setSortBy)(b.members,m=>m.kind);for(const m of F)p(m,E)})}if(L)for(const f of R.allTypesUnordered()){const E=h.get(f);if(E===void 0)return;const b=f.index;console.log(`${b}: ${E===null?"*** too many ***":Array.from(E).join(" ")}`)}const k=new Map,D=new Map,C=new Map;function I(f,E){return E.length===0||(f===void 0&&(f=new Set),f=(0,l.setUnion)(f,E),f.size<c.tooManyNamesThreshold)?f:null}function A(f,E,b){const F=(0,w.defined)(h.get(E));let m=C.get(f);if(m===void 0&&(m=new Set),m.has(E))return;m.add(E),C.set(f,m);const r=(0,U.transformationForType)(E);r!==void 0&&A(f,r.targetType,b);let s=D.get(E),T=k.get(E);if(F===null)s=null,T=null;else{if(f!==void 0&&s!==null){const v=h.get(f);if(v===null)s=null;else if(v!==void 0){const M=[];for(const x of F)M.push(...Array.from(v).map(W=>`${W}_${x}`)),M.push(...Array.from(v).map(W=>`${W}_${x}_${E.kind}`));s=I(s,M)}}if(b!==void 0&&T!==null){const v=[];for(const M of F)v.push(`${M}_${b}`);T=I(T,v)}}if(s!==void 0&&D.set(E,s),T!==void 0&&k.set(E,T),E instanceof d.ObjectType){const v=E.getSortedProperties();for(const[,x]of v)A(E,x.type,void 0);const M=E.getAdditionalProperties();M!==void 0&&A(v.size===0?f:E,M,"value")}else(0,u.matchCompoundType)(E,v=>{A(f,v.items,"element")},v=>(0,w.panic)("We handled this above"),v=>(0,w.panic)("We handled this above"),v=>(0,w.panic)("We handled this above"),v=>{const M=(0,l.setSortBy)(v.members,B=>B.kind),S=v.hasNames&&!v.getNames().areInferred||(0,u.nullableFromUnion)(v)===null?v:f;for(const B of M)A(S,B,void 0)})}for(const[,f]of R.topLevels)A(void 0,f,void 0);for(const f of R.allTypesUnordered()){const E=h.get(f);if(E===void 0)continue;if(E===null){k.set(f,null);continue}let b=k.get(f);b!==null&&(b===void 0&&(b=new Set),b=(0,l.setUnion)(b,(0,l.setMap)(E,F=>`${F}_${f.kind}`)),k.set(f,b))}for(const f of R.allTypesUnordered()){const E=h.get(f);if(E===void 0)continue;let b;if(E===null)b=new c.TooManyTypeNames(1);else{const F=D.get(f),m=k.get(f);let r;F===null&&m===null?r=void 0:(m!=null?r=m:r=new Set,F!=null&&(r=(0,l.setUnion)(r,F))),b=c.TypeNames.makeWithDistance(E,r,_?1:10)}g(f,f.hasNames?f.getNames().add([b]):b)}}return Bi.gatherNames=O,Bi}var Is={},Gm;function qk(){if(Gm)return Is;Gm=1,Object.defineProperty(Is,"__esModule",{value:!0}),Is.expandStrings=void 0;const e=et(),t=pt(),n=Qe(),a=At(),l=Oi(),d=10,u=5,c=3/4;function w({numValues:R,cases:_}){return R>=d&&_.size<Math.sqrt(R)}function U(R,_,L){const g=L?R.size:Math.min(R.size,_.size);return(0,e.setIntersect)(R,_).size>=g*c}function P(R){return R.length===1&&R[0]===""}function O(R,_,L){const g=R.stringTypeMapping,y=Array.from(_.allTypesUnordered()).filter(C=>C.kind==="string"&&(0,t.stringTypesForType)(C).isRestricted);function h(C){const A=(0,t.stringTypesForType)(C).applyStringTypeMapping(g);if(!A.isRestricted)return;const f=(0,n.defined)(A.cases);if(f.size===0)return;const E=(0,e.iterableReduce)(f.values(),0,(b,F)=>b+F);if(L!=="all"){const b=Array.from(f.keys());if(P(b)||!(0,e.iterableSome)(b,m=>/^(\-|\+)?[0-9]+(\.[0-9]+)?$/.test(m)===!1))return}return{cases:new Set(f.keys()),numValues:E}}const p=new Map,k=[];if(L!=="none"){let C=function(I,A){return k.findIndex(f=>U(I,f,A))};for(const I of y){const A=h(I);A!==void 0&&p.set(I,A)}for(const I of Array.from(p.keys())){const A=(0,n.defined)(p.get(I)),f=A.cases;if(L==="all")k.push(f);else{if(!w(A))continue;const E=C(f,!1);E>=0?k[E]=(0,e.setUnion)(k[E],f):k.push(f)}p.delete(I)}L==="all"&&(0,n.assert)(p.size===0);for(const[,I]of p.entries()){if(I.numValues<u)continue;const A=C(I.cases,!0);A>=0&&(k[A]=(0,e.setUnion)(k[A],I.cases))}}function D(C,I,A){(0,n.assert)(C.size===1);const f=(0,n.defined)((0,e.iterableFirst)(C)),E=(0,t.stringTypesForType)(f),b=(0,e.mapFilter)(f.getAttributes(),v=>v!==E),F=E.applyStringTypeMapping(g);if(!F.isRestricted)return I.getStringType(b,l.StringTypes.unrestricted,A);const m=L==="all"?e.areEqual:e.setIsSuperset,r=[],s=(0,n.defined)(F.cases);if(s.size>0){const v=new Set(s.keys()),M=k.find(x=>m(x,v));if(L!=="none"&&!P(Array.from(v))&&M!==void 0)r.push(I.getEnumType(a.emptyTypeAttributes,M));else return I.getStringType(b,l.StringTypes.unrestricted,A)}const T=F.transformations;if(r.length===0&&T.size===1){const v=(0,n.defined)((0,e.iterableFirst)(T));return I.getPrimitiveType(v,b,A)}return r.push(...Array.from(T).map(v=>I.getPrimitiveType(v))),(0,n.assert)(r.length>0,"We got an empty string type"),I.getUnionType(b,new Set(r),A)}return _.rewrite("expand strings",g,!1,y.map(C=>[C]),R.debugPrintReconstitution,D)}return Is.expandStrings=O,Is}var Rs={},Hm;function Jk(){if(Hm)return Rs;Hm=1,Object.defineProperty(Rs,"__esModule",{value:!0}),Rs.flattenUnions=void 0;const e=et(),t=Xn(),n=mt(),a=pt(),l=Qe(),d=mf(),u=yn(),c=At();function w(U,P,O,R,_){let L=!1;function g(D,C,I){const A=new d.UnifyUnionBuilder(C,R,!0,f=>((0,l.assert)(f.length>0,"Must have at least one type to build union"),f=f.map(E=>C.reconstituteType((0,t.derefTypeRef)(E,U))),f.length===1?f[0]:(L=!0,C.getUnionType(c.emptyTypeAttributes,new Set(f)))));return(0,d.unifyTypes)(D,c.emptyTypeAttributes,C,A,O,I)}const y=(0,e.setFilter)(U.allTypesUnordered(),D=>D instanceof n.UnionType),h=(0,e.setFilter)(y,D=>!D.isCanonical);let p=!1;const k=(0,a.makeGroupsToFlatten)(h,D=>((0,u.messageAssert)(D.size>0,"IRNoEmptyUnions",{}),(0,e.iterableSome)(D,C=>C instanceof n.IntersectionType)?(p=!0,!1):!0));return U=U.rewrite("flatten unions",P,!1,k,_,g),[U,!L&&!p]}return Rs.flattenUnions=w,Rs}var Ms={},Km;function Gk(){if(Km)return Ms;Km=1,Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.resolveIntersections=void 0;const e=et(),t=pf(),n=mt(),a=pt(),l=Qe(),d=At();function u(O){const R=(0,a.setOperationMembersRecursively)(O,void 0)[0];return R.size<=1?!0:(0,e.iterableEvery)(R,_=>!(_ instanceof n.UnionType)||_.isCanonical)}function c(O){return(0,e.mapMapEntries)(O.entries(),R=>[R.kind,R.getAttributes()])}class w{constructor(){this._primitiveAttributes=new Map,this._arrayAttributes=d.emptyTypeAttributes,this._objectProperties=new Map,this._objectAttributes=d.emptyTypeAttributes,this._additionalPropertyTypes=new Set,this._lostTypeAttributes=!1}updatePrimitiveTypes(R){const _=(0,e.setFilter)(R,h=>(0,n.isPrimitiveTypeKind)(h.kind)),L=c(_);(0,e.mapMergeWithInto)(this._primitiveAttributes,(h,p)=>(0,d.combineTypeAttributes)("intersect",h,p),L);const g=(0,e.setMap)(_,h=>h.kind);if(this._primitiveTypes===void 0){this._primitiveTypes=new Set(g);return}const y=(0,e.iterableFind)(this._primitiveTypes,n.isNumberTypeKind)!==void 0&&(0,e.iterableFind)(g,n.isNumberTypeKind)!==void 0;this._primitiveTypes=(0,e.setIntersect)(this._primitiveTypes,g),y&&(0,e.iterableFind)(this._primitiveTypes,n.isNumberTypeKind)===void 0&&(this._primitiveTypes=this._primitiveTypes.add("integer"))}updateArrayItemTypes(R){const _=(0,e.iterableFind)(R,L=>L instanceof n.ArrayType);if(_===void 0){this._arrayItemTypes=!1;return}this._arrayAttributes=(0,d.combineTypeAttributes)("intersect",this._arrayAttributes,_.getAttributes()),this._arrayItemTypes===void 0?this._arrayItemTypes=new Set:this._arrayItemTypes!==!1&&this._arrayItemTypes.add(_.items)}updateObjectProperties(R){const _=(0,e.iterableFind)(R,y=>y instanceof n.ObjectType);if(_===void 0){this._objectProperties=void 0,this._additionalPropertyTypes=void 0;return}this._objectAttributes=(0,d.combineTypeAttributes)("intersect",this._objectAttributes,_.getAttributes());const L=_.getAdditionalProperties();if(this._objectProperties===void 0){(0,l.assert)(this._additionalPropertyTypes===void 0);return}const g=(0,e.setUnionInto)(new Set(this._objectProperties.keys()),_.getProperties().keys());for(const y of g){const h=(0,l.defined)(this._objectProperties).get(y),p=_.getProperties().get(y);if(h!==void 0&&p!==void 0){const k=new n.GenericClassProperty(h.typeData.add(p.type),h.isOptional&&p.isOptional);(0,l.defined)(this._objectProperties).set(y,k)}else if(h!==void 0&&L!==void 0){const k=new n.GenericClassProperty(h.typeData.add(L),h.isOptional);(0,l.defined)(this._objectProperties).set(y,k)}else if(h!==void 0)(0,l.defined)(this._objectProperties).delete(y);else if(p!==void 0&&this._additionalPropertyTypes!==void 0){const k=new Set(this._additionalPropertyTypes).add(p.type);(0,l.defined)(this._objectProperties).set(y,new n.GenericClassProperty(k,p.isOptional))}else if(p!==void 0)(0,l.defined)(this._objectProperties).delete(y);else return(0,l.mustNotHappen)()}this._additionalPropertyTypes!==void 0&&L!==void 0?this._additionalPropertyTypes.add(L):(this._additionalPropertyTypes!==void 0||L!==void 0)&&(this._additionalPropertyTypes=void 0,this._lostTypeAttributes=!0)}addUnionSet(R){this.updatePrimitiveTypes(R),this.updateArrayItemTypes(R),this.updateObjectProperties(R)}addType(R){let _=R.getAttributes();return(0,a.matchTypeExhaustive)(R,L=>(0,l.panic)("There shouldn't be a none type"),L=>(0,l.panic)("The any type should have been filtered out in setOperationMembersRecursively"),L=>this.addUnionSet([L]),L=>this.addUnionSet([L]),L=>this.addUnionSet([L]),L=>this.addUnionSet([L]),L=>this.addUnionSet([L]),L=>this.addUnionSet([L]),L=>(0,l.panic)("We should never see class types in intersections"),L=>(0,l.panic)("We should never see map types in intersections"),L=>this.addUnionSet([L]),L=>(0,l.panic)("We should never see enum types in intersections"),L=>{_=(0,d.combineTypeAttributes)("intersect",[_].concat(Array.from(L.members).map(g=>g.getAttributes()))),this.addUnionSet(L.members)},L=>this.addUnionSet([L])),(0,d.makeTypeAttributesInferred)(_)}get arrayData(){return this._arrayItemTypes===void 0||this._arrayItemTypes===!1?(0,l.panic)("This should not be called if the type can't be an array"):this._arrayItemTypes}get objectData(){if(this._objectProperties===void 0){(0,l.assert)(this._additionalPropertyTypes===void 0);return}return[this._objectProperties,this._additionalPropertyTypes]}get enumCases(){return(0,l.panic)("We don't support enums in intersections")}getMemberKinds(){const R=(0,e.mapMap)((0,l.defined)(this._primitiveTypes).entries(),L=>(0,l.defined)(this._primitiveAttributes.get(L))),_=this._primitiveAttributes.get("double");return _!==void 0&&!R.has("double")&&R.has("integer")&&(0,e.mapUpdateInto)(R,"integer",L=>(0,d.combineTypeAttributes)("intersect",(0,l.defined)(L),_)),this._arrayItemTypes!==void 0&&this._arrayItemTypes!==!1?R.set("array",this._arrayAttributes):this._arrayAttributes.size>0&&(this._lostTypeAttributes=!0),this._objectProperties!==void 0?R.set("object",this._objectAttributes):this._objectAttributes.size>0&&(this._lostTypeAttributes=!0),R}get lostTypeAttributes(){return this._lostTypeAttributes}}class U extends t.UnionBuilder{constructor(){super(...arguments),this._createdNewIntersections=!1}makeIntersection(R,_){const L=(0,e.setMap)(R,y=>this.typeBuilder.reconstituteTypeRef(y.typeRef)),g=(0,l.defined)((0,e.iterableFirst)(L));return L.size===1?(this.typeBuilder.addAttributes(g,_),g):(this._createdNewIntersections=!0,this.typeBuilder.getUniqueIntersectionType(_,L))}get createdNewIntersections(){return this._createdNewIntersections}makeObject(R,_,L){if(R===void 0)return(0,l.panic)("Either properties or additional properties must be given to make an object type");const[g,y]=R,h=(0,e.mapMap)(g,k=>this.typeBuilder.makeClassProperty(this.makeIntersection(k.typeData,d.emptyTypeAttributes),k.isOptional)),p=y===void 0?void 0:this.makeIntersection(y,d.emptyTypeAttributes);return this.typeBuilder.getUniqueObjectType(_,h,p,L)}makeArray(R,_,L){const g=this.makeIntersection(R,d.emptyTypeAttributes);return this.typeBuilder.getArrayType(_,g,L)}}function P(O,R,_){let L=!1;function g(k,D,C){const I=(0,e.setFilter)(k,s=>s instanceof n.IntersectionType),[A,f]=(0,a.setOperationMembersRecursively)(Array.from(I),"intersect");if(A.size===0)return D.getPrimitiveType("any",f,C);if(A.size===1)return D.reconstituteType((0,l.defined)((0,e.iterableFirst)(A)),f,C);const E=new w,b=(0,d.makeTypeAttributesInferred)((0,d.combineTypeAttributes)("intersect",Array.from(A).map(s=>E.addType(s)))),F=(0,d.combineTypeAttributes)("intersect",f,b),m=new U(D),r=m.buildUnion(E,!0,F,C);return m.createdNewIntersections&&(L=!0),r}const y=(0,e.setFilter)(O.allTypesUnordered(),k=>k instanceof n.IntersectionType),h=(0,e.setFilter)(y,u),p=(0,a.makeGroupsToFlatten)(h,void 0);return O=O.rewrite("resolve intersections",R,!1,p,_,g),[O,!L&&y.size===h.size]}return Ms.resolveIntersections=P,Ms}var Ds={},Vm;function Hk(){if(Vm)return Ds;Vm=1,Object.defineProperty(Ds,"__esModule",{value:!0}),Ds.replaceObjectType=void 0;const e=et(),t=Qe(),n=At();function a(l,d,u,c,w){function U(_,L,g){const y=(0,t.defined)((0,e.iterableFirst)(_)),h=y.getAttributes(),p=y.getProperties(),k=y.getAdditionalProperties();function D(){return(0,e.mapMap)(p,E=>L.makeClassProperty(L.reconstituteTypeRef(E.typeRef),E.isOptional))}function C(){return L.getUniqueClassType(h,!0,D(),g)}function I(){return L.reconstituteType((0,t.defined)(k))}if(k===void 0)return C();if(p.size===0)return L.getMapType(h,I(),g);if(k.kind==="any")return L.setLostTypeAttributes(),C();const A=(0,e.setMap)(p.values(),E=>E.type).add(k);let f=L.lookupTypeRefs(Array.from(A).map(E=>E.typeRef));if(f===void 0){const E=(0,e.setMap)(A,b=>L.reconstituteType(b));f=L.getUniqueUnionType(n.emptyTypeAttributes,new Set(E))}return L.getMapType(h,f,g)}const P=(0,e.setFilter)(l.allTypesUnordered(),_=>_.kind==="object"),O=c?(0,e.setFilter)(P,_=>_.getProperties().size===0||_.getAdditionalProperties()===void 0):P,R=Array.from(O).map(_=>[_]);return l.rewrite("replace object type",d,!1,R,w,U)}return Ds.replaceObjectType=a,Ds}var ti={},la={},Zm;function yf(){return Zm||(Zm=1,function(e){var t=la.__awaiter||function(L,g,y,h){function p(k){return k instanceof y?k:new y(function(D){D(k)})}return new(y||(y=Promise))(function(k,D){function C(f){try{A(h.next(f))}catch(E){D(E)}}function I(f){try{A(h.throw(f))}catch(E){D(E)}}function A(f){f.done?k(f.value):p(f.value).then(C,I)}A((h=h.apply(L,g||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.CompressedJSONFromString=e.CompressedJSON=e.valueTag=e.makeValue=e.Tag=void 0;const n=et(),a=Qe(),l=mt(),d=Oi();var u;(function(L){L[L.Null=0]="Null",L[L.False=1]="False",L[L.True=2]="True",L[L.Integer=3]="Integer",L[L.Double=4]="Double",L[L.InternedString=5]="InternedString",L[L.UninternedString=6]="UninternedString",L[L.Object=7]="Object",L[L.Array=8]="Array",L[L.StringFormat=9]="StringFormat",L[L.TransformedString=10]="TransformedString"})(u=e.Tag||(e.Tag={}));const c=4,w=(1<<c)-1;function U(L,g){return L|g<<c}e.makeValue=U;function P(L,g){return(0,a.assert)(O(L)===g,"Trying to get index for value with invalid tag"),L>>c}function O(L){return L&w}e.valueTag=O;let R=class{constructor(g,y){this.dateTimeRecognizer=g,this.handleRefs=y,this._contextStack=[],this._strings=[],this._stringIndexes={},this._objects=[],this._arrays=[],this.getObjectForValue=h=>this._objects[P(h,u.Object)],this.getArrayForValue=h=>this._arrays[P(h,u.Array)],this.internArray=h=>{const p=this._arrays.length;return this._arrays.push(h),U(u.Array,p)}}parseSync(g){return(0,a.panic)("parseSync not implemented in CompressedJSON")}getStringForValue(g){const y=O(g);return(0,a.assert)(y===u.InternedString||y===u.TransformedString),this._strings[P(g,y)]}getStringFormatTypeKind(g){const y=this._strings[P(g,u.StringFormat)];return!(0,l.isPrimitiveStringTypeKind)(y)||y==="string"?(0,a.panic)("Not a transformed string type kind"):y}get context(){return(0,a.defined)(this._ctx)}internString(g){if(Object.prototype.hasOwnProperty.call(this._stringIndexes,g))return this._stringIndexes[g];const y=this._strings.length;return this._strings.push(g),this._stringIndexes[g]=y,y}makeString(g){const y=U(u.InternedString,this.internString(g));return(0,a.assert)(typeof y=="number",`Interned string value is not a number: ${y}`),y}internObject(g){const y=this._objects.length;return this._objects.push(g),U(u.Object,y)}get isExpectingRef(){return this._ctx!==void 0&&this._ctx.currentKey==="$ref"}commitValue(g){if((0,a.assert)(typeof g=="number",`CompressedJSON value is not a number: ${g}`),this._ctx===void 0)(0,a.assert)(this._rootValue===void 0,"Committing value but nowhere to commit to - root value still there."),this._rootValue=g;else if(this._ctx.currentObject!==void 0){if(this._ctx.currentKey===void 0)return(0,a.panic)("Must have key and can't have string when committing");this._ctx.currentObject.push(this.makeString(this._ctx.currentKey),g),this._ctx.currentKey=void 0}else if(this._ctx.currentArray!==void 0)this._ctx.currentArray.push(g);else return(0,a.panic)("Committing value but nowhere to commit to")}commitNull(){this.commitValue(U(u.Null,0))}commitBoolean(g){this.commitValue(U(g?u.True:u.False,0))}commitNumber(g){const y=g?u.Double:u.Integer;this.commitValue(U(y,0))}commitString(g){let y;if(this.handleRefs&&this.isExpectingRef)y=this.makeString(g);else{const h=(0,d.inferTransformedStringTypeKindForString)(g,this.dateTimeRecognizer);h!==void 0?(0,a.defined)(l.transformedStringTypeTargetTypeKindsMap.get(h)).attributesProducer!==void 0?y=U(u.TransformedString,this.internString(g)):y=U(u.StringFormat,this.internString(h)):g.length<=64?y=this.makeString(g):y=U(u.UninternedString,0)}this.commitValue(y)}finish(){const g=this._rootValue;return g===void 0?(0,a.panic)("Finished without root document"):((0,a.assert)(this._ctx===void 0&&this._contextStack.length===0,"Finished with contexts present"),this._rootValue=void 0,g)}pushContext(){this._ctx!==void 0&&this._contextStack.push(this._ctx),this._ctx={currentObject:void 0,currentArray:void 0,currentKey:void 0,currentNumberIsDouble:!1}}pushObjectContext(){this.pushContext(),(0,a.defined)(this._ctx).currentObject=[]}setPropertyKey(g){const y=this.context;y.currentKey=g}finishObject(){const g=this.context.currentObject;if(g===void 0)return(0,a.panic)("Object ended but not started");this.popContext(),this.commitValue(this.internObject(g))}pushArrayContext(){this.pushContext(),(0,a.defined)(this._ctx).currentArray=[]}finishArray(){const g=this.context.currentArray;if(g===void 0)return(0,a.panic)("Array ended but not started");this.popContext(),this.commitValue(this.internArray(g))}popContext(){(0,a.assert)(this._ctx!==void 0,"Popping context when there isn't one"),this._ctx=this._contextStack.pop()}equals(g){return this===g}hashCode(){let g=n.hashCodeInit;for(const y of this._strings)g=(0,n.addHashCode)(g,(0,n.hashString)(y));for(const y of Object.getOwnPropertyNames(this._stringIndexes).sort())g=(0,n.addHashCode)(g,(0,n.hashString)(y)),g=(0,n.addHashCode)(g,this._stringIndexes[y]);for(const y of this._objects)for(const h of y)g=(0,n.addHashCode)(g,h);for(const y of this._arrays)for(const h of y)g=(0,n.addHashCode)(g,h);return g}};e.CompressedJSON=R;class _ extends R{parse(g){return t(this,void 0,void 0,function*(){return this.parseSync(g)})}parseSync(g){const y=JSON.parse(g);return this.process(y),this.finish()}process(g){if(g===null)this.commitNull();else if(typeof g=="boolean")this.commitBoolean(g);else if(typeof g=="string")this.commitString(g);else if(typeof g=="number"){const y=g!==Math.floor(g)||g<Number.MIN_SAFE_INTEGER||g>Number.MAX_SAFE_INTEGER;this.commitNumber(y)}else if(Array.isArray(g)){this.pushArrayContext();for(const y of g)this.process(y);this.finishArray()}else if(typeof g=="object"){this.pushObjectContext();for(const y of Object.getOwnPropertyNames(g))this.setPropertyKey(y),this.process(g[y]);this.finishObject()}else return(0,a.panic)("Invalid JSON object")}}e.CompressedJSONFromString=_}(la)),la}var Bs={},Qm;function Kk(){if(Qm)return Bs;Qm=1,Object.defineProperty(Bs,"__esModule",{value:!0}),Bs.TypeInference=void 0;const e=yf(),t=Qe(),n=pf(),a=mt(),l=At(),d=Oi(),u=Xn(),c=yn(),w=pt();function U(_,L){if(_.length!==0)if(Array.isArray(_[0]))for(const g of _)U(g,L);else L(_)}function P(_,L){U(_,g=>{for(const y of g)L(y)})}class O extends n.UnionBuilder{constructor(L,g,y){super(L),this._typeInference=g,this._fixed=y}makeObject(L,g,y){return this._typeInference.inferClassType(g,L,this._fixed,y)}makeArray(L,g,y){return this.typeBuilder.getArrayType(g,this._typeInference.inferType(l.emptyTypeAttributes,L,this._fixed,y))}}class R{constructor(L,g,y,h){this._cjson=L,this._typeBuilder=g,this._inferMaps=y,this._inferEnums=h}addValuesToAccumulator(L,g){P(L,y=>{const h=(0,e.valueTag)(y);switch(h){case e.Tag.Null:g.addPrimitive("null",l.emptyTypeAttributes);break;case e.Tag.False:case e.Tag.True:g.addPrimitive("bool",l.emptyTypeAttributes);break;case e.Tag.Integer:g.addPrimitive("integer",l.emptyTypeAttributes);break;case e.Tag.Double:g.addPrimitive("double",l.emptyTypeAttributes);break;case e.Tag.InternedString:if(this._inferEnums){const p=this._cjson.getStringForValue(y);g.addStringCase(p,1,l.emptyTypeAttributes)}else g.addStringType("string",l.emptyTypeAttributes);break;case e.Tag.UninternedString:g.addStringType("string",l.emptyTypeAttributes);break;case e.Tag.Object:g.addObject(this._cjson.getObjectForValue(y),l.emptyTypeAttributes);break;case e.Tag.Array:g.addArray(this._cjson.getArrayForValue(y),l.emptyTypeAttributes);break;case e.Tag.StringFormat:{const p=this._cjson.getStringFormatTypeKind(y);g.addStringType("string",l.emptyTypeAttributes,new d.StringTypes(new Map,new Set([p])));break}case e.Tag.TransformedString:{const p=this._cjson.getStringForValue(y),k=(0,d.inferTransformedStringTypeKindForString)(p,this._cjson.dateTimeRecognizer);if(k===void 0)return(0,t.panic)("TransformedString does not have a kind");const D=(0,t.defined)(a.transformedStringTypeTargetTypeKindsMap.get(k)).attributesProducer;if(D===void 0)return(0,t.panic)("TransformedString does not have attribute producer");g.addStringType("string",D(p),new d.StringTypes(new Map,new Set([k])));break}default:return(0,t.assertNever)(h)}})}inferType(L,g,y,h){const p=this.accumulatorForArray(g);return this.makeTypeFromAccumulator(p,L,y,h)}resolveRef(L,g){if(!L.startsWith("#/"))return(0,c.messageError)("InferenceJSONReferenceNotRooted",{reference:L});const y=L.split("/").slice(1),h=this._typeBuilder.typeGraph;let p=g;for(const k of y){let D=(0,u.derefTypeRef)(p,h);if(D instanceof a.UnionType){const C=(0,w.nullableFromUnion)(D);if(C===null)return(0,c.messageError)("InferenceJSONReferenceToUnion",{reference:L});D=C}if(D instanceof a.ClassType){const C=D.getProperties().get(k);if(C===void 0)return(0,c.messageError)("InferenceJSONReferenceWrongProperty",{reference:L});p=C.typeRef}else if(D instanceof a.MapType)p=D.values.typeRef;else if(D instanceof a.ArrayType){if(k.match("^[0-9]+$")===null)return(0,c.messageError)("InferenceJSONReferenceInvalidArrayIndex",{reference:L});p=D.items.typeRef}else return(0,c.messageError)("InferenceJSONReferenceWrongProperty",{reference:L})}return p}inferTopLevelType(L,g,y){(0,t.assert)(this._refIntersections===void 0,"Didn't reset ref intersections - nested invocations?"),this._cjson.handleRefs&&(this._refIntersections=[]);const h=this.inferType(L,g,y);if(this._cjson.handleRefs){for(const[p,k]of(0,t.defined)(this._refIntersections)){const D=k.map(C=>this.resolveRef(C,h));this._typeBuilder.setSetOperationMembers(p,new Set(D))}this._refIntersections=void 0}return h}accumulatorForArray(L){const g=new n.UnionAccumulator(!0);return this.addValuesToAccumulator(L,g),g}makeTypeFromAccumulator(L,g,y,h){return new O(this._typeBuilder,this,y).buildUnion(L,!1,g,h)}inferClassType(L,g,y,h){const p=[],k={};if(U(g,C=>{for(let I=0;I<C.length;I+=2){const A=this._cjson.getStringForValue(C[I]),f=C[I+1];Object.prototype.hasOwnProperty.call(k,A)||(p.push(A),k[A]=[]),k[A].push(f)}}),this._cjson.handleRefs&&p.length===1&&p[0]==="$ref"){const C=k.$ref;if(C.every(I=>(0,e.valueTag)(I)===e.Tag.InternedString)){const I=C.map(f=>this._cjson.getStringForValue(f)),A=this._typeBuilder.getUniqueIntersectionType(L,void 0);return(0,t.defined)(this._refIntersections).push([A,I]),A}}if(this._inferMaps&&p.length>500){const C=new n.UnionAccumulator(!0);for(const A of p)this.addValuesToAccumulator(k[A],C);const I=this.makeTypeFromAccumulator(C,l.emptyTypeAttributes,y);return this._typeBuilder.getMapType(L,I,h)}const D=new Map;for(const C of p){const I=k[C],A=this.inferType(l.emptyTypeAttributes,I,!1),f=I.length<g.length;D.set(C,this._typeBuilder.makeClassProperty(A,f))}return y?this._typeBuilder.getUniqueClassType(L,!0,D,h):this._typeBuilder.getClassType(L,D,h)}}return Bs.TypeInference=R,Bs}var Xm;function wb(){if(Xm)return ti;Xm=1;var e=ti.__awaiter||function(_,L,g,y){function h(p){return p instanceof g?p:new g(function(k){k(p)})}return new(g||(g=Promise))(function(p,k){function D(A){try{I(y.next(A))}catch(f){k(f)}}function C(A){try{I(y.throw(A))}catch(f){k(f)}}function I(A){A.done?p(A.value):h(A.value).then(D,C)}I((y=y.apply(_,L||[])).next())})};Object.defineProperty(ti,"__esModule",{value:!0}),ti.InputData=ti.jsonInputForTargetLanguage=ti.JSONInput=void 0;const t=et(),n=yf(),a=Qe(),l=yn(),d=qi(),u=Ka(),c=Kk(),w=Za();function U(_,L,g){return(0,l.messageError)("MiscJSONParseError",{description:(0,t.withDefault)(L,"input"),address:_,message:(0,a.errorMessage)(g)})}class P{constructor(L){this._compressedJSON=L,this.kind="json",this.needIR=!0,this.needSchemaProcessing=!1,this._topLevels=new Map}addSample(L,g){let y=this._topLevels.get(L);y===void 0&&(y={samples:[],description:void 0},this._topLevels.set(L,y)),y.samples.push(g)}setDescription(L,g){let y=this._topLevels.get(L);if(y===void 0)return(0,a.panic)("Trying to set description for a top-level that doesn't exist");y.description=g}addSamples(L,g,y){for(const h of g)this.addSample(L,h),y!==void 0&&this.setDescription(L,y)}addSource(L){return e(this,void 0,void 0,function*(){const{name:g,samples:y,description:h}=L;try{const p=yield(0,t.arrayMapSync)(y,k=>e(this,void 0,void 0,function*(){return yield this._compressedJSON.parse(k)}));this.addSamples(g,p,h)}catch(p){return U(g,h,p)}})}addSourceSync(L){const{name:g,samples:y,description:h}=L;try{const p=y.map(k=>this._compressedJSON.parseSync(k));this.addSamples(g,p,h)}catch(p){return U(g,h,p)}}singleStringSchemaSource(){}addTypes(L,g,y,h,p){return e(this,void 0,void 0,function*(){return this.addTypesSync(L,g,y,h,p)})}addTypesSync(L,g,y,h,p){const k=new c.TypeInference(this._compressedJSON,g,y,h);for(const[D,{samples:C,description:I}]of this._topLevels){const A=k.inferTopLevelType((0,d.makeNamesTypeAttributes)(D,!1),C,p);if(g.addTopLevel(D,A),I!==void 0){const f=u.descriptionTypeAttributeKind.makeAttributes(new Set([I]));g.addAttributes(A,f)}}}}ti.JSONInput=P;function O(_,L,g=!1){typeof _=="string"&&(_=(0,a.defined)((0,w.languageNamed)(_,L)));const y=new n.CompressedJSONFromString(_.dateTimeRecognizer,g);return new P(y)}ti.jsonInputForTargetLanguage=O;class R{constructor(){this._inputs=new Set}addInput(L){this._inputs=this._inputs.add(L)}getOrAddInput(L,g){let y=(0,t.iterableFind)(this._inputs,h=>h.kind===L);return y===void 0&&(y=g(),this.addInput(y)),y}addSource(L,g,y){return e(this,void 0,void 0,function*(){yield this.getOrAddInput(L,y).addSource(g)})}addSourceSync(L,g,y){this.getOrAddInput(L,y).addSourceSync(g)}addTypes(L,g,y,h,p){return e(this,void 0,void 0,function*(){for(const k of this._inputs)yield k.addTypes(L,g,y,h,p)})}addTypesSync(L,g,y,h,p){for(const k of this._inputs)k.addTypesSync(L,g,y,h,p)}get needIR(){return(0,t.iterableSome)(this._inputs,L=>L.needIR)}get needSchemaProcessing(){return(0,t.iterableSome)(this._inputs,L=>L.needSchemaProcessing)}singleStringSchemaSource(){const L=(0,t.setFilterMap)(this._inputs,g=>g.singleStringSchemaSource());return L.size>1?(0,a.panic)("We have more than one input with a string schema source"):(0,t.iterableFirst)(L)}}return ti.InputData=R,ti}var js={},Ym;function Vk(){if(Ym)return js;Ym=1,Object.defineProperty(js,"__esModule",{value:!0}),js.flattenStrings=void 0;const e=et(),t=pt(),n=Qe(),a=At();function l(c){const w=c.stringTypeMembers;if(w.size<=1)return;const U=c.findMember("string");if(U!==void 0)return(0,n.assert)(!(0,t.stringTypesForType)(U).isRestricted,"We must only flatten strings if we have no restriced strings"),w}function d(c,w,U){(0,n.assert)(c.size===1);const P=(0,n.defined)((0,e.iterableFirst)(c)),O=(0,n.defined)(l(P)),R=(0,t.combineTypeAttributesOfTypes)("union",O),_=[];for(const L of P.members)O.has(L)||_.push(w.reconstituteType(L));return _.length===0?w.getStringType((0,a.combineTypeAttributes)("union",R,P.getAttributes()),void 0,U):(_.push(w.getStringType(R,void 0)),w.getUnionType(P.getAttributes(),new Set(_),U))}function u(c,w,U){const P=c.allNamedTypesSeparated().unions,O=Array.from(P).filter(l).map(R=>[R]);return c.rewrite("flatten strings",w,!1,O,U,d)}return js.flattenStrings=u,js}var Us={},$m;function Zk(){if($m)return Us;$m=1,Object.defineProperty(Us,"__esModule",{value:!0}),Us.makeTransformations=void 0;const e=et(),t=Xn(),n=mt(),a=Qe(),l=oo(),d=At(),u=Oi(),c=Yr();function w(h,p,k,D){const C=new l.Transformation(h,p,k);return D&&(console.log(`transformation for ${(0,t.typeRefIndex)(p)}:`),C.debugPrint(),console.log("reverse:"),C.reverse.debugPrint()),l.transformationTypeAttributeKind.makeAttributes(C)}function U(h,p,k,D){const I=Array.from(p.cases).sort().map(A=>new l.StringMatchTransformer(h,k,new l.StringProducerTransformer(h,k,D,A),A));return new l.ChoiceTransformer(h,k,I)}function P(h,p,k,D,C){const I=p.typeGraph;(0,a.assert)(h.members.size>0,"We can't have empty unions");let A=d.emptyTypeAttributes;function f(ue){if((0,n.isPrimitiveStringTypeKind)(ue.kind)){const se=(0,n.targetTypeKindForTransformedStringTypeKind)(ue.kind);if(se!==void 0){const ie=h.findMember(se);return A=(0,d.combineTypeAttributes)("union",A,ue.getAttributes()),ie!==void 0?p.reconstituteType(ie):p.getPrimitiveType(se)}}return p.reconstituteType(ue)}const E=(0,e.mapMapEntries)(h.members.entries(),ue=>[ue.kind,f(ue)]),b=new Set(E.values()),F=b.size>1;F||p.setLostTypeAttributes();const m=F?p.getUnionType(h.getAttributes(),b):(0,a.defined)((0,e.iterableFirst)(b));function r(ue){return(0,a.defined)(E.get(ue))}function s(ue){if(F)return new l.UnionInstantiationTransformer(I,ue)}function T(ue){if(h.findMember(ue)===void 0)return;const ie=r(ue);return new l.DecodingTransformer(I,ie,s(ie))}let v;function M(){return v===void 0&&(v=p.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted)),v}function x(ue){const se=r(ue.kind);if(ue.kind==="string"){const ie=(0,c.minMaxLengthForType)(ue);if(ie===void 0)return s(se);const[ye,be]=ie;return new l.MinMaxLengthCheckTransformer(I,M(),s(se),ye,be)}else return ue instanceof n.EnumType&&D.has(ue)?U(I,ue,M(),s(se)):new l.ParseStringTransformer(I,M(),s(se))}const W=(0,e.arraySortByInto)(Array.from(h.stringTypeMembers),ue=>ue.kind);let S;if(W.length===0)S=void 0;else if(W.length===1){const ue=W[0];S=new l.DecodingTransformer(I,M(),x(ue))}else S=new l.DecodingTransformer(I,M(),new l.ChoiceTransformer(I,M(),W.map(ue=>(0,a.defined)(x(ue)))));const B=T("class"),q=T("map");(0,a.assert)(B===void 0||q===void 0,"Can't have both class and map in a transformed union");const G=B!==void 0?B:q,$=new l.DecodingChoiceTransformer(I,p.getPrimitiveType("any"),T("null"),T("integer"),T("double"),T("bool"),S,T("array"),G),ee=w(I,m,$,C);return p.getPrimitiveType("any",(0,d.combineTypeAttributes)("union",ee,A),k)}function O(h,p,k,D){const C=p.getPrimitiveType("any"),I=p.getArrayType(d.emptyTypeAttributes,C),A=p.reconstituteType(h.items),f=new l.ArrayDecodingTransformer(p.typeGraph,I,void 0,A,new l.DecodingTransformer(p.typeGraph,C,void 0)),E=p.getArrayType(p.reconstituteTypeAttributes(h.getAttributes()),A),b=w(p.typeGraph,E,f,D);return p.getArrayType(b,C,k)}function R(h,p,k,D){const C=p.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),I=new l.DecodingTransformer(p.typeGraph,C,U(p.typeGraph,h,C)),A=p.getEnumType(h.getAttributes(),h.cases),f=w(p.typeGraph,A,I,D);return p.getStringType(f,u.StringTypes.unrestricted,k)}function _(h,p,k,D){const C=p.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),[I,A]=(0,a.defined)((0,c.minMaxValueForType)(h)),f=new l.DecodingTransformer(p.typeGraph,C,new l.MinMaxValueTransformer(p.typeGraph,C,void 0,I,A)),E=p.reconstituteTypeAttributes(h.getAttributes()),b=w(p.typeGraph,p.getPrimitiveType("double",E,void 0),f,D);return p.getPrimitiveType("double",b,k)}function L(h,p,k,D){const[C,I]=(0,a.defined)((0,c.minMaxLengthForType)(h)),A=p.reconstituteTypeAttributes(h.getAttributes()),f=p.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),E=new l.DecodingTransformer(p.typeGraph,f,new l.MinMaxLengthCheckTransformer(p.typeGraph,f,void 0,C,I)),b=w(p.typeGraph,p.getStringType(A,void 0),E,D);return p.getStringType(b,u.StringTypes.unrestricted,k)}function g(h,p,k,D,C){const I=k.reconstituteTypeAttributes(h.getAttributes()),A=(0,e.withDefault)((0,n.targetTypeKindForTransformedStringTypeKind)(p),p),f=k.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),E=new l.DecodingTransformer(k.typeGraph,f,new l.ParseStringTransformer(k.typeGraph,f,void 0)),b=w(k.typeGraph,k.getPrimitiveType(A,I),E,C);return k.getStringType(b,u.StringTypes.unrestricted,D)}function y(h,p,k){const D=(0,e.setFilter)(p.allTypesUnordered(),A=>{if(k.needsTransformerForType(A))return!0;if(!(A instanceof n.UnionType))return!1;const f=A.stringTypeMembers;return f.size<=1?!1:(0,e.iterableSome)(f,E=>k.needsTransformerForType(E))});function C(A,f,E){const b=(0,a.defined)((0,e.iterableFirst)(A));return b instanceof n.UnionType?P(b,f,E,D,h.debugPrintTransformations):b instanceof n.ArrayType?O(b,f,E,h.debugPrintTransformations):b instanceof n.EnumType?R(b,f,E,h.debugPrintTransformations):b.kind==="string"?L(b,f,E,h.debugPrintTransformations):(0,n.isNumberTypeKind)(b.kind)?_(b,f,E,h.debugPrintTransformations):(0,n.isPrimitiveStringTypeKind)(b.kind)?g(b,b.kind,f,E,h.debugPrintTransformations):(0,a.panic)(`Cannot make transformation for type ${b.kind}`)}const I=Array.from(D).map(A=>[A]);return p.rewrite("make-transformations",h.stringTypeMapping,!1,I,h.debugPrintReconstitution,C)}return Us.makeTransformations=y,Us}var ey;function Qk(){return ey||(ey=1,function(e){var t=nr.__createBinding||(Object.create?function(v,M,x,W){W===void 0&&(W=x);var S=Object.getOwnPropertyDescriptor(M,x);(!S||("get"in S?!M.__esModule:S.writable||S.configurable))&&(S={enumerable:!0,get:function(){return M[x]}}),Object.defineProperty(v,W,S)}:function(v,M,x,W){W===void 0&&(W=x),v[W]=M[x]}),n=nr.__setModuleDefault||(Object.create?function(v,M){Object.defineProperty(v,"default",{enumerable:!0,value:M})}:function(v,M){v.default=M}),a=nr.__importStar||function(v){if(v&&v.__esModule)return v;var M={};if(v!=null)for(var x in v)x!=="default"&&Object.prototype.hasOwnProperty.call(v,x)&&t(M,v,x);return n(M,v),M},l=nr.__awaiter||function(v,M,x,W){function S(B){return B instanceof x?B:new x(function(q){q(B)})}return new(x||(x=Promise))(function(B,q){function G(ue){try{ee(W.next(ue))}catch(se){q(se)}}function $(ue){try{ee(W.throw(ue))}catch(se){q(se)}}function ee(ue){ue.done?B(ue.value):S(ue.value).then(G,$)}ee((W=W.apply(v,M||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.quicktype=e.combineRenderResults=e.quicktypeMultiFileSync=e.quicktypeMultiFile=e.defaultInferenceFlags=e.inferenceFlags=e.inferenceFlagNames=e.inferenceFlagsObject=e.getTargetLanguage=void 0;const d=et(),u=a(Za()),c=Qe(),w=Uk(),U=zk(),P=ss(),O=Xn(),R=qi(),_=Wk(),L=qk(),g=Jk(),y=Gk(),h=Hk(),p=yn(),k=wb(),D=Vk(),C=Zk();function I(v){if(typeof v=="object")return v;const M=u.languageNamed(v);return M!==void 0?M:(0,p.messageError)("DriverUnknownOutputLanguage",{lang:v})}e.getTargetLanguage=I,e.inferenceFlagsObject={inferMaps:{description:"Detect maps",negationDescription:"Don't infer maps, always use classes",explanation:"Infer maps when object keys look like map keys.",order:1},inferEnums:{description:"Detect enums",negationDescription:"Don't infer enums, always use strings",explanation:`If string values occur within a relatively small domain,
984
+ infer them as enum values.`,order:2},inferUuids:{description:"Detect UUIDs",negationDescription:"Don't convert UUIDs to UUID objects",explanation:"Detect UUIDs like '123e4567-e89b-12d3-a456-426655440000' (partial support).",stringType:"uuid",order:3},inferDateTimes:{description:"Detect dates & times",negationDescription:"Don't infer dates or times",explanation:"Infer dates from strings (partial support).",stringType:"date-time",order:4},inferIntegerStrings:{description:"Detect integers in strings",negationDescription:"Don't convert stringified integers to integers",explanation:`Automatically convert stringified integers to integers.
985
+ For example, "1" is converted to 1.`,stringType:"integer-string",order:5},inferBooleanStrings:{description:"Detect booleans in strings",negationDescription:"Don't convert stringified booleans to booleans",explanation:`Automatically convert stringified booleans to booleans.
986
+ For example, "true" is converted to true.`,stringType:"bool-string",order:6},combineClasses:{description:"Merge similar classes",negationDescription:"Don't combine similar classes",explanation:`Combine classes with significantly overlapping properties,
987
+ treating contingent properties as nullable.`,order:7},ignoreJsonRefs:{description:"Don't treat $ref as a reference in JSON",negationDescription:"Treat $ref as a reference in JSON",explanation:`Like in JSON Schema, allow objects like
988
+ '{ $ref: "#/foo/bar" }' to refer
989
+ to another part of the input.`,order:8}},e.inferenceFlagNames=Object.getOwnPropertyNames(e.inferenceFlagsObject),e.inferenceFlags=e.inferenceFlagsObject;const A={lang:"ts",inputData:new k.InputData,alphabetizeProperties:!1,allPropertiesOptional:!1,fixedTopLevels:!1,noRender:!1,leadingComments:void 0,rendererOptions:{},indentation:void 0,outputFilename:"stdout",debugPrintGraph:!1,checkProvenance:!1,debugPrintReconstitution:!1,debugPrintGatherNames:!1,debugPrintTransformations:!1,debugPrintTimes:!1,debugPrintSchemaResolving:!1};function f(){const v={};for(const M of e.inferenceFlagNames)v[M]=!0;return v}e.defaultInferenceFlags=f();let E=class{constructor(M){this._options=Object.assign({},A,e.defaultInferenceFlags);for(const x of Object.getOwnPropertyNames(M)){const W=M[x];W!==void 0&&(this._options[x]=W)}}get stringTypeMapping(){const M=I(this._options.lang),x=new Map(M.stringTypeMapping);for(const W of e.inferenceFlagNames){const S=e.inferenceFlags[W].stringType;!this._options[W]&&S!==void 0&&x.set(S,"string")}return x}get debugPrintReconstitution(){return this._options.debugPrintReconstitution===!0}get debugPrintTransformations(){return this._options.debugPrintTransformations}get debugPrintSchemaResolving(){return this._options.debugPrintSchemaResolving}timeSync(M,x){return l(this,void 0,void 0,function*(){const W=Date.now(),S=yield x(),B=Date.now();return this._options.debugPrintTimes&&console.log(`${M} took ${B-W}ms`),S})}time(M,x){const W=Date.now(),S=x(),B=Date.now();return this._options.debugPrintTimes&&console.log(`${M} took ${B-W}ms`),S}makeGraphInputs(){const M=I(this._options.lang),x=this.stringTypeMapping,W=!M.supportsUnionsWithBothNumberTypes,S=new P.TypeBuilder(0,x,this._options.alphabetizeProperties,this._options.allPropertiesOptional,this._options.checkProvenance,!1);return{targetLanguage:M,stringTypeMapping:x,conflateNumbers:W,typeBuilder:S}}makeGraph(M){return l(this,void 0,void 0,function*(){const x=this.makeGraphInputs();return yield this.timeSync("read input",()=>l(this,void 0,void 0,function*(){return yield M.addTypes(this,x.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)})),this.processGraph(M,x)})}makeGraphSync(M){const x=this.makeGraphInputs();return this.time("read input",()=>M.addTypesSync(this,x.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)),this.processGraph(M,x)}processGraph(M,x){const{targetLanguage:W,stringTypeMapping:S,conflateNumbers:B,typeBuilder:q}=x;let G=q.finish();this._options.debugPrintGraph&&(G.setPrintOnRewrite(),G.printGraph());const $=this.debugPrintReconstitution;(q.didAddForwardingIntersection||!this._options.ignoreJsonRefs)&&this.time("remove indirection intersections",()=>G=(0,O.removeIndirectionIntersections)(G,S,$));let ee=!1;if(M.needSchemaProcessing||!this._options.ignoreJsonRefs){let se=!1;do{const ie=G;se||this.time("resolve intersections",()=>[G,se]=(0,y.resolveIntersections)(G,S,$)),ee||this.time("flatten unions",()=>[G,ee]=(0,g.flattenUnions)(G,S,B,!0,$)),G===ie&&(0,c.assert)(se&&ee,"Graph didn't change but we're not done")}while(!se||!ee)}this.time("replace object type",()=>G=(0,h.replaceObjectType)(G,S,B,W.supportsFullObjectType,$));do this.time("flatten unions",()=>[G,ee]=(0,g.flattenUnions)(G,S,B,!1,$));while(!ee);if(this._options.combineClasses){const se=this.time("combine classes",()=>(0,w.combineClasses)(this,G,this._options.alphabetizeProperties,!0,!1,$));se===G?G=se:this.time("combine classes cleanup",()=>G=(0,w.combineClasses)(this,se,this._options.alphabetizeProperties,!1,!0,$))}if(this._options.inferMaps)for(;;){const se=this.time("infer maps",()=>(0,U.inferMaps)(G,S,!0,$));if(se===G)break;G=se}const ue=M.needSchemaProcessing?"all":this._options.inferEnums?"infer":"none";return this.time("expand strings",()=>G=(0,L.expandStrings)(this,G,ue)),this.time("flatten unions",()=>[G,ee]=(0,g.flattenUnions)(G,S,B,!1,$)),(0,c.assert)(ee,"We should only have to flatten unions once after expanding strings"),M.needSchemaProcessing&&this.time("flatten strings",()=>G=(0,D.flattenStrings)(G,S,$)),this.time("none to any",()=>G=(0,O.noneToAny)(G,S,$)),W.supportsOptionalClassProperties||this.time("optional to nullable",()=>G=(0,O.optionalToNullable)(G,S,$)),this.time("fixed point",()=>G=G.rewriteFixedPoint(!1,$)),this.time("make transformations",()=>G=(0,C.makeTransformations)(this,G,W)),this.time("flatten unions",()=>[G,ee]=(0,g.flattenUnions)(G,S,B,!1,$)),(0,c.assert)(ee,"We should only have to flatten unions once after making transformations"),this.time("GC",()=>G=G.garbageCollect(this._options.alphabetizeProperties,$)),this._options.debugPrintGraph&&console.log(`
990
+ # gather names`),this.time("gather names",()=>(0,_.gatherNames)(G,!M.needSchemaProcessing,this._options.debugPrintGatherNames)),this._options.debugPrintGraph&&G.printGraph(),G}makeSimpleTextResult(M){return new Map([[this._options.outputFilename,{lines:M,annotations:[]}]])}preRun(){(0,R.initTypeNames)();const M=I(this._options.lang),x=this._options.inputData,S=x.needIR||M.names.indexOf("schema")<0?void 0:x.singleStringSchemaSource();if(S!==void 0){const B=JSON.stringify(JSON.parse(S),void 0,4).split(`
991
+ `);B.push("");const q={lines:B,annotations:[]};return new Map([[this._options.outputFilename,q]])}return[x,M]}run(){return l(this,void 0,void 0,function*(){const M=this.preRun();if(!Array.isArray(M))return M;const[x,W]=M,S=yield this.makeGraph(x);return this.renderGraph(W,S)})}runSync(){const M=this.preRun();if(!Array.isArray(M))return M;const[x,W]=M,S=this.makeGraphSync(x);return this.renderGraph(W,S)}renderGraph(M,x){return this._options.noRender?this.makeSimpleTextResult(["Done.",""]):M.renderGraphAndSerialize(x,this._options.outputFilename,this._options.alphabetizeProperties,this._options.leadingComments,this._options.rendererOptions,this._options.indentation)}};function b(v){return l(this,void 0,void 0,function*(){return yield new E(v).run()})}e.quicktypeMultiFile=b;function F(v){return new E(v).runSync()}e.quicktypeMultiFileSync=F;function m(v,M){return{line:v.line+M,column:v.column}}function r(v,M){return{start:m(v.start,M),end:m(v.end,M)}}function s(v){if(v.size<=1){const W=(0,d.mapFirst)(v);return W===void 0?{lines:[],annotations:[]}:W}let M=[],x=[];for(const[W,S]of v){const B=M.length+2;M=M.concat([`// ${W}`,""],S.lines),x=x.concat(S.annotations.map(q=>({annotation:q.annotation,span:r(q.span,B)})))}return{lines:M,annotations:x}}e.combineRenderResults=s;function T(v){return l(this,void 0,void 0,function*(){const M=yield b(v);return s(M)})}e.quicktype=T}(nr)),nr}var ni={},ca={},tc={exports:{}},nc={exports:{}},ic={},fa={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */var ty;function Lb(){return ty||(ty=1,fa.read=function(e,t,n,a,l){var d,u,c=l*8-a-1,w=(1<<c)-1,U=w>>1,P=-7,O=n?l-1:0,R=n?-1:1,_=e[t+O];for(O+=R,d=_&(1<<-P)-1,_>>=-P,P+=c;P>0;d=d*256+e[t+O],O+=R,P-=8);for(u=d&(1<<-P)-1,d>>=-P,P+=a;P>0;u=u*256+e[t+O],O+=R,P-=8);if(d===0)d=1-U;else{if(d===w)return u?NaN:(_?-1:1)*(1/0);u=u+Math.pow(2,a),d=d-U}return(_?-1:1)*u*Math.pow(2,d-a)},fa.write=function(e,t,n,a,l,d){var u,c,w,U=d*8-l-1,P=(1<<U)-1,O=P>>1,R=l===23?Math.pow(2,-24)-Math.pow(2,-77):0,_=a?0:d-1,L=a?1:-1,g=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(c=isNaN(t)?1:0,u=P):(u=Math.floor(Math.log(t)/Math.LN2),t*(w=Math.pow(2,-u))<1&&(u--,w*=2),u+O>=1?t+=R/w:t+=R*Math.pow(2,1-O),t*w>=2&&(u++,w/=2),u+O>=P?(c=0,u=P):u+O>=1?(c=(t*w-1)*Math.pow(2,l),u=u+O):(c=t*Math.pow(2,O-1)*Math.pow(2,l),u=0));l>=8;e[n+_]=c&255,_+=L,c/=256,l-=8);for(u=u<<l|c,U+=l;U>0;e[n+_]=u&255,_+=L,u/=256,U-=8);e[n+_-L]|=g*128}),fa}/*!
992
+ * The buffer module from node.js, for the browser.
993
+ *
994
+ * @author Feross Aboukhadijeh <https://feross.org>
995
+ * @license MIT
996
+ */var ny;function gr(){return ny||(ny=1,function(e){const t=cf(),n=Lb(),a=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=c,e.SlowBuffer=p,e.INSPECT_MAX_BYTES=50;const l=2147483647;e.kMaxLength=l,c.TYPED_ARRAY_SUPPORT=d(),!c.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function d(){try{const K=new Uint8Array(1),j={foo:function(){return 42}};return Object.setPrototypeOf(j,Uint8Array.prototype),Object.setPrototypeOf(K,j),K.foo()===42}catch{return!1}}Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}});function u(K){if(K>l)throw new RangeError('The value "'+K+'" is invalid for option "size"');const j=new Uint8Array(K);return Object.setPrototypeOf(j,c.prototype),j}function c(K,j,J){if(typeof K=="number"){if(typeof j=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return O(K)}return w(K,j,J)}c.poolSize=8192;function w(K,j,J){if(typeof K=="string")return R(K,j);if(ArrayBuffer.isView(K))return L(K);if(K==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof K);if(Ce(K,ArrayBuffer)||K&&Ce(K.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Ce(K,SharedArrayBuffer)||K&&Ce(K.buffer,SharedArrayBuffer)))return g(K,j,J);if(typeof K=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const ce=K.valueOf&&K.valueOf();if(ce!=null&&ce!==K)return c.from(ce,j,J);const X=y(K);if(X)return X;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof K[Symbol.toPrimitive]=="function")return c.from(K[Symbol.toPrimitive]("string"),j,J);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof K)}c.from=function(K,j,J){return w(K,j,J)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array);function U(K){if(typeof K!="number")throw new TypeError('"size" argument must be of type number');if(K<0)throw new RangeError('The value "'+K+'" is invalid for option "size"')}function P(K,j,J){return U(K),K<=0?u(K):j!==void 0?typeof J=="string"?u(K).fill(j,J):u(K).fill(j):u(K)}c.alloc=function(K,j,J){return P(K,j,J)};function O(K){return U(K),u(K<0?0:h(K)|0)}c.allocUnsafe=function(K){return O(K)},c.allocUnsafeSlow=function(K){return O(K)};function R(K,j){if((typeof j!="string"||j==="")&&(j="utf8"),!c.isEncoding(j))throw new TypeError("Unknown encoding: "+j);const J=k(K,j)|0;let ce=u(J);const X=ce.write(K,j);return X!==J&&(ce=ce.slice(0,X)),ce}function _(K){const j=K.length<0?0:h(K.length)|0,J=u(j);for(let ce=0;ce<j;ce+=1)J[ce]=K[ce]&255;return J}function L(K){if(Ce(K,Uint8Array)){const j=new Uint8Array(K);return g(j.buffer,j.byteOffset,j.byteLength)}return _(K)}function g(K,j,J){if(j<0||K.byteLength<j)throw new RangeError('"offset" is outside of buffer bounds');if(K.byteLength<j+(J||0))throw new RangeError('"length" is outside of buffer bounds');let ce;return j===void 0&&J===void 0?ce=new Uint8Array(K):J===void 0?ce=new Uint8Array(K,j):ce=new Uint8Array(K,j,J),Object.setPrototypeOf(ce,c.prototype),ce}function y(K){if(c.isBuffer(K)){const j=h(K.length)|0,J=u(j);return J.length===0||K.copy(J,0,0,j),J}if(K.length!==void 0)return typeof K.length!="number"||We(K.length)?u(0):_(K);if(K.type==="Buffer"&&Array.isArray(K.data))return _(K.data)}function h(K){if(K>=l)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l.toString(16)+" bytes");return K|0}function p(K){return+K!=K&&(K=0),c.alloc(+K)}c.isBuffer=function(j){return j!=null&&j._isBuffer===!0&&j!==c.prototype},c.compare=function(j,J){if(Ce(j,Uint8Array)&&(j=c.from(j,j.offset,j.byteLength)),Ce(J,Uint8Array)&&(J=c.from(J,J.offset,J.byteLength)),!c.isBuffer(j)||!c.isBuffer(J))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(j===J)return 0;let ce=j.length,X=J.length;for(let ge=0,Se=Math.min(ce,X);ge<Se;++ge)if(j[ge]!==J[ge]){ce=j[ge],X=J[ge];break}return ce<X?-1:X<ce?1:0},c.isEncoding=function(j){switch(String(j).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(j,J){if(!Array.isArray(j))throw new TypeError('"list" argument must be an Array of Buffers');if(j.length===0)return c.alloc(0);let ce;if(J===void 0)for(J=0,ce=0;ce<j.length;++ce)J+=j[ce].length;const X=c.allocUnsafe(J);let ge=0;for(ce=0;ce<j.length;++ce){let Se=j[ce];if(Ce(Se,Uint8Array))ge+Se.length>X.length?(c.isBuffer(Se)||(Se=c.from(Se)),Se.copy(X,ge)):Uint8Array.prototype.set.call(X,Se,ge);else if(c.isBuffer(Se))Se.copy(X,ge);else throw new TypeError('"list" argument must be an Array of Buffers');ge+=Se.length}return X};function k(K,j){if(c.isBuffer(K))return K.length;if(ArrayBuffer.isView(K)||Ce(K,ArrayBuffer))return K.byteLength;if(typeof K!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof K);const J=K.length,ce=arguments.length>2&&arguments[2]===!0;if(!ce&&J===0)return 0;let X=!1;for(;;)switch(j){case"ascii":case"latin1":case"binary":return J;case"utf8":case"utf-8":return z(K).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return J*2;case"hex":return J>>>1;case"base64":return Te(K).length;default:if(X)return ce?-1:z(K).length;j=(""+j).toLowerCase(),X=!0}}c.byteLength=k;function D(K,j,J){let ce=!1;if((j===void 0||j<0)&&(j=0),j>this.length||((J===void 0||J>this.length)&&(J=this.length),J<=0)||(J>>>=0,j>>>=0,J<=j))return"";for(K||(K="utf8");;)switch(K){case"hex":return W(this,j,J);case"utf8":case"utf-8":return s(this,j,J);case"ascii":return M(this,j,J);case"latin1":case"binary":return x(this,j,J);case"base64":return r(this,j,J);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,j,J);default:if(ce)throw new TypeError("Unknown encoding: "+K);K=(K+"").toLowerCase(),ce=!0}}c.prototype._isBuffer=!0;function C(K,j,J){const ce=K[j];K[j]=K[J],K[J]=ce}c.prototype.swap16=function(){const j=this.length;if(j%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let J=0;J<j;J+=2)C(this,J,J+1);return this},c.prototype.swap32=function(){const j=this.length;if(j%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let J=0;J<j;J+=4)C(this,J,J+3),C(this,J+1,J+2);return this},c.prototype.swap64=function(){const j=this.length;if(j%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let J=0;J<j;J+=8)C(this,J,J+7),C(this,J+1,J+6),C(this,J+2,J+5),C(this,J+3,J+4);return this},c.prototype.toString=function(){const j=this.length;return j===0?"":arguments.length===0?s(this,0,j):D.apply(this,arguments)},c.prototype.toLocaleString=c.prototype.toString,c.prototype.equals=function(j){if(!c.isBuffer(j))throw new TypeError("Argument must be a Buffer");return this===j?!0:c.compare(this,j)===0},c.prototype.inspect=function(){let j="";const J=e.INSPECT_MAX_BYTES;return j=this.toString("hex",0,J).replace(/(.{2})/g,"$1 ").trim(),this.length>J&&(j+=" ... "),"<Buffer "+j+">"},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(j,J,ce,X,ge){if(Ce(j,Uint8Array)&&(j=c.from(j,j.offset,j.byteLength)),!c.isBuffer(j))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof j);if(J===void 0&&(J=0),ce===void 0&&(ce=j?j.length:0),X===void 0&&(X=0),ge===void 0&&(ge=this.length),J<0||ce>j.length||X<0||ge>this.length)throw new RangeError("out of range index");if(X>=ge&&J>=ce)return 0;if(X>=ge)return-1;if(J>=ce)return 1;if(J>>>=0,ce>>>=0,X>>>=0,ge>>>=0,this===j)return 0;let Se=ge-X,De=ce-J;const we=Math.min(Se,De),Pe=this.slice(X,ge),re=j.slice(J,ce);for(let Re=0;Re<we;++Re)if(Pe[Re]!==re[Re]){Se=Pe[Re],De=re[Re];break}return Se<De?-1:De<Se?1:0};function I(K,j,J,ce,X){if(K.length===0)return-1;if(typeof J=="string"?(ce=J,J=0):J>2147483647?J=2147483647:J<-2147483648&&(J=-2147483648),J=+J,We(J)&&(J=X?0:K.length-1),J<0&&(J=K.length+J),J>=K.length){if(X)return-1;J=K.length-1}else if(J<0)if(X)J=0;else return-1;if(typeof j=="string"&&(j=c.from(j,ce)),c.isBuffer(j))return j.length===0?-1:A(K,j,J,ce,X);if(typeof j=="number")return j=j&255,typeof Uint8Array.prototype.indexOf=="function"?X?Uint8Array.prototype.indexOf.call(K,j,J):Uint8Array.prototype.lastIndexOf.call(K,j,J):A(K,[j],J,ce,X);throw new TypeError("val must be string, number or Buffer")}function A(K,j,J,ce,X){let ge=1,Se=K.length,De=j.length;if(ce!==void 0&&(ce=String(ce).toLowerCase(),ce==="ucs2"||ce==="ucs-2"||ce==="utf16le"||ce==="utf-16le")){if(K.length<2||j.length<2)return-1;ge=2,Se/=2,De/=2,J/=2}function we(re,Re){return ge===1?re[Re]:re.readUInt16BE(Re*ge)}let Pe;if(X){let re=-1;for(Pe=J;Pe<Se;Pe++)if(we(K,Pe)===we(j,re===-1?0:Pe-re)){if(re===-1&&(re=Pe),Pe-re+1===De)return re*ge}else re!==-1&&(Pe-=Pe-re),re=-1}else for(J+De>Se&&(J=Se-De),Pe=J;Pe>=0;Pe--){let re=!0;for(let Re=0;Re<De;Re++)if(we(K,Pe+Re)!==we(j,Re)){re=!1;break}if(re)return Pe}return-1}c.prototype.includes=function(j,J,ce){return this.indexOf(j,J,ce)!==-1},c.prototype.indexOf=function(j,J,ce){return I(this,j,J,ce,!0)},c.prototype.lastIndexOf=function(j,J,ce){return I(this,j,J,ce,!1)};function f(K,j,J,ce){J=Number(J)||0;const X=K.length-J;ce?(ce=Number(ce),ce>X&&(ce=X)):ce=X;const ge=j.length;ce>ge/2&&(ce=ge/2);let Se;for(Se=0;Se<ce;++Se){const De=parseInt(j.substr(Se*2,2),16);if(We(De))return Se;K[J+Se]=De}return Se}function E(K,j,J,ce){return Ie(z(j,K.length-J),K,J,ce)}function b(K,j,J,ce){return Ie(V(j),K,J,ce)}function F(K,j,J,ce){return Ie(Te(j),K,J,ce)}function m(K,j,J,ce){return Ie(ae(j,K.length-J),K,J,ce)}c.prototype.write=function(j,J,ce,X){if(J===void 0)X="utf8",ce=this.length,J=0;else if(ce===void 0&&typeof J=="string")X=J,ce=this.length,J=0;else if(isFinite(J))J=J>>>0,isFinite(ce)?(ce=ce>>>0,X===void 0&&(X="utf8")):(X=ce,ce=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const ge=this.length-J;if((ce===void 0||ce>ge)&&(ce=ge),j.length>0&&(ce<0||J<0)||J>this.length)throw new RangeError("Attempt to write outside buffer bounds");X||(X="utf8");let Se=!1;for(;;)switch(X){case"hex":return f(this,j,J,ce);case"utf8":case"utf-8":return E(this,j,J,ce);case"ascii":case"latin1":case"binary":return b(this,j,J,ce);case"base64":return F(this,j,J,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return m(this,j,J,ce);default:if(Se)throw new TypeError("Unknown encoding: "+X);X=(""+X).toLowerCase(),Se=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function r(K,j,J){return j===0&&J===K.length?t.fromByteArray(K):t.fromByteArray(K.slice(j,J))}function s(K,j,J){J=Math.min(K.length,J);const ce=[];let X=j;for(;X<J;){const ge=K[X];let Se=null,De=ge>239?4:ge>223?3:ge>191?2:1;if(X+De<=J){let we,Pe,re,Re;switch(De){case 1:ge<128&&(Se=ge);break;case 2:we=K[X+1],(we&192)===128&&(Re=(ge&31)<<6|we&63,Re>127&&(Se=Re));break;case 3:we=K[X+1],Pe=K[X+2],(we&192)===128&&(Pe&192)===128&&(Re=(ge&15)<<12|(we&63)<<6|Pe&63,Re>2047&&(Re<55296||Re>57343)&&(Se=Re));break;case 4:we=K[X+1],Pe=K[X+2],re=K[X+3],(we&192)===128&&(Pe&192)===128&&(re&192)===128&&(Re=(ge&15)<<18|(we&63)<<12|(Pe&63)<<6|re&63,Re>65535&&Re<1114112&&(Se=Re))}}Se===null?(Se=65533,De=1):Se>65535&&(Se-=65536,ce.push(Se>>>10&1023|55296),Se=56320|Se&1023),ce.push(Se),X+=De}return v(ce)}const T=4096;function v(K){const j=K.length;if(j<=T)return String.fromCharCode.apply(String,K);let J="",ce=0;for(;ce<j;)J+=String.fromCharCode.apply(String,K.slice(ce,ce+=T));return J}function M(K,j,J){let ce="";J=Math.min(K.length,J);for(let X=j;X<J;++X)ce+=String.fromCharCode(K[X]&127);return ce}function x(K,j,J){let ce="";J=Math.min(K.length,J);for(let X=j;X<J;++X)ce+=String.fromCharCode(K[X]);return ce}function W(K,j,J){const ce=K.length;(!j||j<0)&&(j=0),(!J||J<0||J>ce)&&(J=ce);let X="";for(let ge=j;ge<J;++ge)X+=Ge[K[ge]];return X}function S(K,j,J){const ce=K.slice(j,J);let X="";for(let ge=0;ge<ce.length-1;ge+=2)X+=String.fromCharCode(ce[ge]+ce[ge+1]*256);return X}c.prototype.slice=function(j,J){const ce=this.length;j=~~j,J=J===void 0?ce:~~J,j<0?(j+=ce,j<0&&(j=0)):j>ce&&(j=ce),J<0?(J+=ce,J<0&&(J=0)):J>ce&&(J=ce),J<j&&(J=j);const X=this.subarray(j,J);return Object.setPrototypeOf(X,c.prototype),X};function B(K,j,J){if(K%1!==0||K<0)throw new RangeError("offset is not uint");if(K+j>J)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(j,J,ce){j=j>>>0,J=J>>>0,ce||B(j,J,this.length);let X=this[j],ge=1,Se=0;for(;++Se<J&&(ge*=256);)X+=this[j+Se]*ge;return X},c.prototype.readUintBE=c.prototype.readUIntBE=function(j,J,ce){j=j>>>0,J=J>>>0,ce||B(j,J,this.length);let X=this[j+--J],ge=1;for(;J>0&&(ge*=256);)X+=this[j+--J]*ge;return X},c.prototype.readUint8=c.prototype.readUInt8=function(j,J){return j=j>>>0,J||B(j,1,this.length),this[j]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(j,J){return j=j>>>0,J||B(j,2,this.length),this[j]|this[j+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(j,J){return j=j>>>0,J||B(j,2,this.length),this[j]<<8|this[j+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(j,J){return j=j>>>0,J||B(j,4,this.length),(this[j]|this[j+1]<<8|this[j+2]<<16)+this[j+3]*16777216},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(j,J){return j=j>>>0,J||B(j,4,this.length),this[j]*16777216+(this[j+1]<<16|this[j+2]<<8|this[j+3])},c.prototype.readBigUInt64LE=Y(function(j){j=j>>>0,le(j,"offset");const J=this[j],ce=this[j+7];(J===void 0||ce===void 0)&&me(j,this.length-8);const X=J+this[++j]*2**8+this[++j]*2**16+this[++j]*2**24,ge=this[++j]+this[++j]*2**8+this[++j]*2**16+ce*2**24;return BigInt(X)+(BigInt(ge)<<BigInt(32))}),c.prototype.readBigUInt64BE=Y(function(j){j=j>>>0,le(j,"offset");const J=this[j],ce=this[j+7];(J===void 0||ce===void 0)&&me(j,this.length-8);const X=J*2**24+this[++j]*2**16+this[++j]*2**8+this[++j],ge=this[++j]*2**24+this[++j]*2**16+this[++j]*2**8+ce;return(BigInt(X)<<BigInt(32))+BigInt(ge)}),c.prototype.readIntLE=function(j,J,ce){j=j>>>0,J=J>>>0,ce||B(j,J,this.length);let X=this[j],ge=1,Se=0;for(;++Se<J&&(ge*=256);)X+=this[j+Se]*ge;return ge*=128,X>=ge&&(X-=Math.pow(2,8*J)),X},c.prototype.readIntBE=function(j,J,ce){j=j>>>0,J=J>>>0,ce||B(j,J,this.length);let X=J,ge=1,Se=this[j+--X];for(;X>0&&(ge*=256);)Se+=this[j+--X]*ge;return ge*=128,Se>=ge&&(Se-=Math.pow(2,8*J)),Se},c.prototype.readInt8=function(j,J){return j=j>>>0,J||B(j,1,this.length),this[j]&128?(255-this[j]+1)*-1:this[j]},c.prototype.readInt16LE=function(j,J){j=j>>>0,J||B(j,2,this.length);const ce=this[j]|this[j+1]<<8;return ce&32768?ce|4294901760:ce},c.prototype.readInt16BE=function(j,J){j=j>>>0,J||B(j,2,this.length);const ce=this[j+1]|this[j]<<8;return ce&32768?ce|4294901760:ce},c.prototype.readInt32LE=function(j,J){return j=j>>>0,J||B(j,4,this.length),this[j]|this[j+1]<<8|this[j+2]<<16|this[j+3]<<24},c.prototype.readInt32BE=function(j,J){return j=j>>>0,J||B(j,4,this.length),this[j]<<24|this[j+1]<<16|this[j+2]<<8|this[j+3]},c.prototype.readBigInt64LE=Y(function(j){j=j>>>0,le(j,"offset");const J=this[j],ce=this[j+7];(J===void 0||ce===void 0)&&me(j,this.length-8);const X=this[j+4]+this[j+5]*2**8+this[j+6]*2**16+(ce<<24);return(BigInt(X)<<BigInt(32))+BigInt(J+this[++j]*2**8+this[++j]*2**16+this[++j]*2**24)}),c.prototype.readBigInt64BE=Y(function(j){j=j>>>0,le(j,"offset");const J=this[j],ce=this[j+7];(J===void 0||ce===void 0)&&me(j,this.length-8);const X=(J<<24)+this[++j]*2**16+this[++j]*2**8+this[++j];return(BigInt(X)<<BigInt(32))+BigInt(this[++j]*2**24+this[++j]*2**16+this[++j]*2**8+ce)}),c.prototype.readFloatLE=function(j,J){return j=j>>>0,J||B(j,4,this.length),n.read(this,j,!0,23,4)},c.prototype.readFloatBE=function(j,J){return j=j>>>0,J||B(j,4,this.length),n.read(this,j,!1,23,4)},c.prototype.readDoubleLE=function(j,J){return j=j>>>0,J||B(j,8,this.length),n.read(this,j,!0,52,8)},c.prototype.readDoubleBE=function(j,J){return j=j>>>0,J||B(j,8,this.length),n.read(this,j,!1,52,8)};function q(K,j,J,ce,X,ge){if(!c.isBuffer(K))throw new TypeError('"buffer" argument must be a Buffer instance');if(j>X||j<ge)throw new RangeError('"value" argument is out of bounds');if(J+ce>K.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(j,J,ce,X){if(j=+j,J=J>>>0,ce=ce>>>0,!X){const De=Math.pow(2,8*ce)-1;q(this,j,J,ce,De,0)}let ge=1,Se=0;for(this[J]=j&255;++Se<ce&&(ge*=256);)this[J+Se]=j/ge&255;return J+ce},c.prototype.writeUintBE=c.prototype.writeUIntBE=function(j,J,ce,X){if(j=+j,J=J>>>0,ce=ce>>>0,!X){const De=Math.pow(2,8*ce)-1;q(this,j,J,ce,De,0)}let ge=ce-1,Se=1;for(this[J+ge]=j&255;--ge>=0&&(Se*=256);)this[J+ge]=j/Se&255;return J+ce},c.prototype.writeUint8=c.prototype.writeUInt8=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,1,255,0),this[J]=j&255,J+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,2,65535,0),this[J]=j&255,this[J+1]=j>>>8,J+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,2,65535,0),this[J]=j>>>8,this[J+1]=j&255,J+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,4,4294967295,0),this[J+3]=j>>>24,this[J+2]=j>>>16,this[J+1]=j>>>8,this[J]=j&255,J+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,4,4294967295,0),this[J]=j>>>24,this[J+1]=j>>>16,this[J+2]=j>>>8,this[J+3]=j&255,J+4};function G(K,j,J,ce,X){pe(j,ce,X,K,J,7);let ge=Number(j&BigInt(4294967295));K[J++]=ge,ge=ge>>8,K[J++]=ge,ge=ge>>8,K[J++]=ge,ge=ge>>8,K[J++]=ge;let Se=Number(j>>BigInt(32)&BigInt(4294967295));return K[J++]=Se,Se=Se>>8,K[J++]=Se,Se=Se>>8,K[J++]=Se,Se=Se>>8,K[J++]=Se,J}function $(K,j,J,ce,X){pe(j,ce,X,K,J,7);let ge=Number(j&BigInt(4294967295));K[J+7]=ge,ge=ge>>8,K[J+6]=ge,ge=ge>>8,K[J+5]=ge,ge=ge>>8,K[J+4]=ge;let Se=Number(j>>BigInt(32)&BigInt(4294967295));return K[J+3]=Se,Se=Se>>8,K[J+2]=Se,Se=Se>>8,K[J+1]=Se,Se=Se>>8,K[J]=Se,J+8}c.prototype.writeBigUInt64LE=Y(function(j,J=0){return G(this,j,J,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeBigUInt64BE=Y(function(j,J=0){return $(this,j,J,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeIntLE=function(j,J,ce,X){if(j=+j,J=J>>>0,!X){const we=Math.pow(2,8*ce-1);q(this,j,J,ce,we-1,-we)}let ge=0,Se=1,De=0;for(this[J]=j&255;++ge<ce&&(Se*=256);)j<0&&De===0&&this[J+ge-1]!==0&&(De=1),this[J+ge]=(j/Se>>0)-De&255;return J+ce},c.prototype.writeIntBE=function(j,J,ce,X){if(j=+j,J=J>>>0,!X){const we=Math.pow(2,8*ce-1);q(this,j,J,ce,we-1,-we)}let ge=ce-1,Se=1,De=0;for(this[J+ge]=j&255;--ge>=0&&(Se*=256);)j<0&&De===0&&this[J+ge+1]!==0&&(De=1),this[J+ge]=(j/Se>>0)-De&255;return J+ce},c.prototype.writeInt8=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,1,127,-128),j<0&&(j=255+j+1),this[J]=j&255,J+1},c.prototype.writeInt16LE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,2,32767,-32768),this[J]=j&255,this[J+1]=j>>>8,J+2},c.prototype.writeInt16BE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,2,32767,-32768),this[J]=j>>>8,this[J+1]=j&255,J+2},c.prototype.writeInt32LE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,4,2147483647,-2147483648),this[J]=j&255,this[J+1]=j>>>8,this[J+2]=j>>>16,this[J+3]=j>>>24,J+4},c.prototype.writeInt32BE=function(j,J,ce){return j=+j,J=J>>>0,ce||q(this,j,J,4,2147483647,-2147483648),j<0&&(j=4294967295+j+1),this[J]=j>>>24,this[J+1]=j>>>16,this[J+2]=j>>>8,this[J+3]=j&255,J+4},c.prototype.writeBigInt64LE=Y(function(j,J=0){return G(this,j,J,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),c.prototype.writeBigInt64BE=Y(function(j,J=0){return $(this,j,J,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ee(K,j,J,ce,X,ge){if(J+ce>K.length)throw new RangeError("Index out of range");if(J<0)throw new RangeError("Index out of range")}function ue(K,j,J,ce,X){return j=+j,J=J>>>0,X||ee(K,j,J,4),n.write(K,j,J,ce,23,4),J+4}c.prototype.writeFloatLE=function(j,J,ce){return ue(this,j,J,!0,ce)},c.prototype.writeFloatBE=function(j,J,ce){return ue(this,j,J,!1,ce)};function se(K,j,J,ce,X){return j=+j,J=J>>>0,X||ee(K,j,J,8),n.write(K,j,J,ce,52,8),J+8}c.prototype.writeDoubleLE=function(j,J,ce){return se(this,j,J,!0,ce)},c.prototype.writeDoubleBE=function(j,J,ce){return se(this,j,J,!1,ce)},c.prototype.copy=function(j,J,ce,X){if(!c.isBuffer(j))throw new TypeError("argument should be a Buffer");if(ce||(ce=0),!X&&X!==0&&(X=this.length),J>=j.length&&(J=j.length),J||(J=0),X>0&&X<ce&&(X=ce),X===ce||j.length===0||this.length===0)return 0;if(J<0)throw new RangeError("targetStart out of bounds");if(ce<0||ce>=this.length)throw new RangeError("Index out of range");if(X<0)throw new RangeError("sourceEnd out of bounds");X>this.length&&(X=this.length),j.length-J<X-ce&&(X=j.length-J+ce);const ge=X-ce;return this===j&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(J,ce,X):Uint8Array.prototype.set.call(j,this.subarray(ce,X),J),ge},c.prototype.fill=function(j,J,ce,X){if(typeof j=="string"){if(typeof J=="string"?(X=J,J=0,ce=this.length):typeof ce=="string"&&(X=ce,ce=this.length),X!==void 0&&typeof X!="string")throw new TypeError("encoding must be a string");if(typeof X=="string"&&!c.isEncoding(X))throw new TypeError("Unknown encoding: "+X);if(j.length===1){const Se=j.charCodeAt(0);(X==="utf8"&&Se<128||X==="latin1")&&(j=Se)}}else typeof j=="number"?j=j&255:typeof j=="boolean"&&(j=Number(j));if(J<0||this.length<J||this.length<ce)throw new RangeError("Out of range index");if(ce<=J)return this;J=J>>>0,ce=ce===void 0?this.length:ce>>>0,j||(j=0);let ge;if(typeof j=="number")for(ge=J;ge<ce;++ge)this[ge]=j;else{const Se=c.isBuffer(j)?j:c.from(j,X),De=Se.length;if(De===0)throw new TypeError('The value "'+j+'" is invalid for argument "value"');for(ge=0;ge<ce-J;++ge)this[ge+J]=Se[ge%De]}return this};const ie={};function ye(K,j,J){ie[K]=class extends J{constructor(){super(),Object.defineProperty(this,"message",{value:j.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${K}]`,this.stack,delete this.name}get code(){return K}set code(X){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:X,writable:!0})}toString(){return`${this.name} [${K}]: ${this.message}`}}}ye("ERR_BUFFER_OUT_OF_BOUNDS",function(K){return K?`${K} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),ye("ERR_INVALID_ARG_TYPE",function(K,j){return`The "${K}" argument must be of type number. Received type ${typeof j}`},TypeError),ye("ERR_OUT_OF_RANGE",function(K,j,J){let ce=`The value of "${K}" is out of range.`,X=J;return Number.isInteger(J)&&Math.abs(J)>2**32?X=be(String(J)):typeof J=="bigint"&&(X=String(J),(J>BigInt(2)**BigInt(32)||J<-(BigInt(2)**BigInt(32)))&&(X=be(X)),X+="n"),ce+=` It must be ${j}. Received ${X}`,ce},RangeError);function be(K){let j="",J=K.length;const ce=K[0]==="-"?1:0;for(;J>=ce+4;J-=3)j=`_${K.slice(J-3,J)}${j}`;return`${K.slice(0,J)}${j}`}function Ae(K,j,J){le(j,"offset"),(K[j]===void 0||K[j+J]===void 0)&&me(j,K.length-(J+1))}function pe(K,j,J,ce,X,ge){if(K>J||K<j){const Se=typeof j=="bigint"?"n":"";let De;throw j===0||j===BigInt(0)?De=`>= 0${Se} and < 2${Se} ** ${(ge+1)*8}${Se}`:De=`>= -(2${Se} ** ${(ge+1)*8-1}${Se}) and < 2 ** ${(ge+1)*8-1}${Se}`,new ie.ERR_OUT_OF_RANGE("value",De,K)}Ae(ce,X,ge)}function le(K,j){if(typeof K!="number")throw new ie.ERR_INVALID_ARG_TYPE(j,"number",K)}function me(K,j,J){throw Math.floor(K)!==K?(le(K,J),new ie.ERR_OUT_OF_RANGE("offset","an integer",K)):j<0?new ie.ERR_BUFFER_OUT_OF_BOUNDS:new ie.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${j}`,K)}const de=/[^+/0-9A-Za-z-_]/g;function Q(K){if(K=K.split("=")[0],K=K.trim().replace(de,""),K.length<2)return"";for(;K.length%4!==0;)K=K+"=";return K}function z(K,j){j=j||1/0;let J;const ce=K.length;let X=null;const ge=[];for(let Se=0;Se<ce;++Se){if(J=K.charCodeAt(Se),J>55295&&J<57344){if(!X){if(J>56319){(j-=3)>-1&&ge.push(239,191,189);continue}else if(Se+1===ce){(j-=3)>-1&&ge.push(239,191,189);continue}X=J;continue}if(J<56320){(j-=3)>-1&&ge.push(239,191,189),X=J;continue}J=(X-55296<<10|J-56320)+65536}else X&&(j-=3)>-1&&ge.push(239,191,189);if(X=null,J<128){if((j-=1)<0)break;ge.push(J)}else if(J<2048){if((j-=2)<0)break;ge.push(J>>6|192,J&63|128)}else if(J<65536){if((j-=3)<0)break;ge.push(J>>12|224,J>>6&63|128,J&63|128)}else if(J<1114112){if((j-=4)<0)break;ge.push(J>>18|240,J>>12&63|128,J>>6&63|128,J&63|128)}else throw new Error("Invalid code point")}return ge}function V(K){const j=[];for(let J=0;J<K.length;++J)j.push(K.charCodeAt(J)&255);return j}function ae(K,j){let J,ce,X;const ge=[];for(let Se=0;Se<K.length&&!((j-=2)<0);++Se)J=K.charCodeAt(Se),ce=J>>8,X=J%256,ge.push(X),ge.push(ce);return ge}function Te(K){return t.toByteArray(Q(K))}function Ie(K,j,J,ce){let X;for(X=0;X<ce&&!(X+J>=j.length||X>=K.length);++X)j[X+J]=K[X];return X}function Ce(K,j){return K instanceof j||K!=null&&K.constructor!=null&&K.constructor.name!=null&&K.constructor.name===j.name}function We(K){return K!==K}const Ge=function(){const K="0123456789abcdef",j=new Array(256);for(let J=0;J<16;++J){const ce=J*16;for(let X=0;X<16;++X)j[ce+X]=K[J]+K[X]}return j}();function Y(K){return typeof BigInt>"u"?te:K}function te(){throw new Error("BigInt not supported")}}(ic)),ic}var rc,iy;function Kt(){return iy||(iy=1,rc={ArrayIsArray(e){return Array.isArray(e)},ArrayPrototypeIncludes(e,t){return e.includes(t)},ArrayPrototypeIndexOf(e,t){return e.indexOf(t)},ArrayPrototypeJoin(e,t){return e.join(t)},ArrayPrototypeMap(e,t){return e.map(t)},ArrayPrototypePop(e,t){return e.pop(t)},ArrayPrototypePush(e,t){return e.push(t)},ArrayPrototypeSlice(e,t,n){return e.slice(t,n)},Error,FunctionPrototypeCall(e,t,...n){return e.call(t,...n)},FunctionPrototypeSymbolHasInstance(e,t){return Function.prototype[Symbol.hasInstance].call(e,t)},MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER,NumberMIN_SAFE_INTEGER:Number.MIN_SAFE_INTEGER,NumberParseInt:Number.parseInt,ObjectDefineProperties(e,t){return Object.defineProperties(e,t)},ObjectDefineProperty(e,t,n){return Object.defineProperty(e,t,n)},ObjectGetOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e,t)},ObjectKeys(e){return Object.keys(e)},ObjectSetPrototypeOf(e,t){return Object.setPrototypeOf(e,t)},Promise,PromisePrototypeCatch(e,t){return e.catch(t)},PromisePrototypeThen(e,t,n){return e.then(t,n)},PromiseReject(e){return Promise.reject(e)},ReflectApply:Reflect.apply,RegExpPrototypeTest(e,t){return e.test(t)},SafeSet:Set,String,StringPrototypeSlice(e,t,n){return e.slice(t,n)},StringPrototypeToLowerCase(e){return e.toLowerCase()},StringPrototypeToUpperCase(e){return e.toUpperCase()},StringPrototypeTrim(e){return e.trim()},Symbol,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,TypedArrayPrototypeSet(e,t,n){return e.set(t,n)},Uint8Array}),rc}var sc={exports:{}},ry;function ki(){return ry||(ry=1,function(e){const t=gr(),n=Object.getPrototypeOf(async function(){}).constructor,a=globalThis.Blob||t.Blob,l=typeof a<"u"?function(c){return c instanceof a}:function(c){return!1};class d extends Error{constructor(c){if(!Array.isArray(c))throw new TypeError(`Expected input to be an Array, got ${typeof c}`);let w="";for(let U=0;U<c.length;U++)w+=` ${c[U].stack}
997
+ `;super(w),this.name="AggregateError",this.errors=c}}e.exports={AggregateError:d,kEmptyObject:Object.freeze({}),once(u){let c=!1;return function(...w){c||(c=!0,u.apply(this,w))}},createDeferredPromise:function(){let u,c;return{promise:new Promise((U,P)=>{u=U,c=P}),resolve:u,reject:c}},promisify(u){return new Promise((c,w)=>{u((U,...P)=>U?w(U):c(...P))})},debuglog(){return function(){}},format(u,...c){return u.replace(/%([sdifj])/g,function(...[w,U]){const P=c.shift();return U==="f"?P.toFixed(6):U==="j"?JSON.stringify(P):U==="s"&&typeof P=="object"?`${P.constructor!==Object?P.constructor.name:""} {}`.trim():P.toString()})},inspect(u){switch(typeof u){case"string":if(u.includes("'"))if(u.includes('"')){if(!u.includes("`")&&!u.includes("${"))return`\`${u}\``}else return`"${u}"`;return`'${u}'`;case"number":return isNaN(u)?"NaN":Object.is(u,-0)?String(u):u;case"bigint":return`${String(u)}n`;case"boolean":case"undefined":return String(u);case"object":return"{}"}},types:{isAsyncFunction(u){return u instanceof n},isArrayBufferView(u){return ArrayBuffer.isView(u)}},isBlob:l},e.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")}(sc)),sc.exports}var da={},_a={exports:{}},Xk=_a.exports,sy;function gf(){return sy||(sy=1,Object.defineProperty(Xk,"__esModule",{value:!0}),_a.exports=Object.freeze(Object.create(null,{__unenv__:{get:()=>!0}}))),_a.exports}var oc,oy;function gn(){if(oy)return oc;oy=1;const{format:e,inspect:t,AggregateError:n}=ki(),a=globalThis.AggregateError||n,l=Symbol("kIsNodeError"),d=["string","function","number","object","Function","Object","boolean","bigint","symbol"],u=/^([A-Z][a-z0-9]*)+$/,c="__node_internal_",w={};function U(y,h){if(!y)throw new w.ERR_INTERNAL_ASSERTION(h)}function P(y){let h="",p=y.length;const k=y[0]==="-"?1:0;for(;p>=k+4;p-=3)h=`_${y.slice(p-3,p)}${h}`;return`${y.slice(0,p)}${h}`}function O(y,h,p){if(typeof h=="function")return U(h.length<=p.length,`Code: ${y}; The provided arguments length (${p.length}) does not match the required ones (${h.length}).`),h(...p);const k=(h.match(/%[dfijoOs]/g)||[]).length;return U(k===p.length,`Code: ${y}; The provided arguments length (${p.length}) does not match the required ones (${k}).`),p.length===0?h:e(h,...p)}function R(y,h,p){p||(p=Error);class k extends p{constructor(...C){super(O(y,h,C))}toString(){return`${this.name} [${y}]: ${this.message}`}}Object.defineProperties(k.prototype,{name:{value:p.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${y}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),k.prototype.code=y,k.prototype[l]=!0,w[y]=k}function _(y){const h=c+y.name;return Object.defineProperty(y,"name",{value:h}),y}function L(y,h){if(y&&h&&y!==h){if(Array.isArray(h.errors))return h.errors.push(y),h;const p=new a([h,y],h.message);return p.code=h.code,p}return y||h}class g extends Error{constructor(h="The operation was aborted",p=void 0){if(p!==void 0&&typeof p!="object")throw new w.ERR_INVALID_ARG_TYPE("options","Object",p);super(h,p),this.code="ABORT_ERR",this.name="AbortError"}}return R("ERR_ASSERTION","%s",Error),R("ERR_INVALID_ARG_TYPE",(y,h,p)=>{U(typeof y=="string","'name' must be a string"),Array.isArray(h)||(h=[h]);let k="The ";y.endsWith(" argument")?k+=`${y} `:k+=`"${y}" ${y.includes(".")?"property":"argument"} `,k+="must be ";const D=[],C=[],I=[];for(const f of h)U(typeof f=="string","All expected entries have to be of type string"),d.includes(f)?D.push(f.toLowerCase()):u.test(f)?C.push(f):(U(f!=="object",'The value "object" should be written as "Object"'),I.push(f));if(C.length>0){const f=D.indexOf("object");f!==-1&&(D.splice(D,f,1),C.push("Object"))}if(D.length>0){switch(D.length){case 1:k+=`of type ${D[0]}`;break;case 2:k+=`one of type ${D[0]} or ${D[1]}`;break;default:{const f=D.pop();k+=`one of type ${D.join(", ")}, or ${f}`}}(C.length>0||I.length>0)&&(k+=" or ")}if(C.length>0){switch(C.length){case 1:k+=`an instance of ${C[0]}`;break;case 2:k+=`an instance of ${C[0]} or ${C[1]}`;break;default:{const f=C.pop();k+=`an instance of ${C.join(", ")}, or ${f}`}}I.length>0&&(k+=" or ")}switch(I.length){case 0:break;case 1:I[0].toLowerCase()!==I[0]&&(k+="an "),k+=`${I[0]}`;break;case 2:k+=`one of ${I[0]} or ${I[1]}`;break;default:{const f=I.pop();k+=`one of ${I.join(", ")}, or ${f}`}}if(p==null)k+=`. Received ${p}`;else if(typeof p=="function"&&p.name)k+=`. Received function ${p.name}`;else if(typeof p=="object"){var A;if((A=p.constructor)!==null&&A!==void 0&&A.name)k+=`. Received an instance of ${p.constructor.name}`;else{const f=t(p,{depth:-1});k+=`. Received ${f}`}}else{let f=t(p,{colors:!1});f.length>25&&(f=`${f.slice(0,25)}...`),k+=`. Received type ${typeof p} (${f})`}return k},TypeError),R("ERR_INVALID_ARG_VALUE",(y,h,p="is invalid")=>{let k=t(h);return k.length>128&&(k=k.slice(0,128)+"..."),`The ${y.includes(".")?"property":"argument"} '${y}' ${p}. Received ${k}`},TypeError),R("ERR_INVALID_RETURN_VALUE",(y,h,p)=>{var k;const D=p!=null&&(k=p.constructor)!==null&&k!==void 0&&k.name?`instance of ${p.constructor.name}`:`type ${typeof p}`;return`Expected ${y} to be returned from the "${h}" function but got ${D}.`},TypeError),R("ERR_MISSING_ARGS",(...y)=>{U(y.length>0,"At least one arg needs to be specified");let h;const p=y.length;switch(y=(Array.isArray(y)?y:[y]).map(k=>`"${k}"`).join(" or "),p){case 1:h+=`The ${y[0]} argument`;break;case 2:h+=`The ${y[0]} and ${y[1]} arguments`;break;default:{const k=y.pop();h+=`The ${y.join(", ")}, and ${k} arguments`}break}return`${h} must be specified`},TypeError),R("ERR_OUT_OF_RANGE",(y,h,p)=>{U(h,'Missing "range" argument');let k;return Number.isInteger(p)&&Math.abs(p)>2**32?k=P(String(p)):typeof p=="bigint"?(k=String(p),(p>2n**32n||p<-(2n**32n))&&(k=P(k)),k+="n"):k=t(p),`The value of "${y}" is out of range. It must be ${h}. Received ${k}`},RangeError),R("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error),R("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error),R("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error),R("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error),R("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error),R("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),R("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error),R("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error),R("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error),R("ERR_STREAM_WRITE_AFTER_END","write after end",Error),R("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError),oc={AbortError:g,aggregateTwoErrors:_(L),hideStackFrames:_,codes:w},oc}var ac,ay;function Qa(){if(ay)return ac;ay=1;const{ArrayIsArray:e,ArrayPrototypeIncludes:t,ArrayPrototypeJoin:n,ArrayPrototypeMap:a,NumberIsInteger:l,NumberIsNaN:d,NumberMAX_SAFE_INTEGER:u,NumberMIN_SAFE_INTEGER:c,NumberParseInt:w,ObjectPrototypeHasOwnProperty:U,RegExpPrototypeExec:P,String:O,StringPrototypeToUpperCase:R,StringPrototypeTrim:_}=Kt(),{hideStackFrames:L,codes:{ERR_SOCKET_BAD_PORT:g,ERR_INVALID_ARG_TYPE:y,ERR_INVALID_ARG_VALUE:h,ERR_OUT_OF_RANGE:p,ERR_UNKNOWN_SIGNAL:k}}=gn(),{normalizeEncoding:D}=ki(),{isAsyncFunction:C,isArrayBufferView:I}=ki().types,A={};function f(pe){return pe===(pe|0)}function E(pe){return pe===pe>>>0}const b=/^[0-7]+$/,F="must be a 32-bit unsigned integer or an octal string";function m(pe,le,me){if(typeof pe>"u"&&(pe=me),typeof pe=="string"){if(P(b,pe)===null)throw new h(le,pe,F);pe=w(pe,8)}return T(pe,le),pe}const r=L((pe,le,me=c,de=u)=>{if(typeof pe!="number")throw new y(le,"number",pe);if(!l(pe))throw new p(le,"an integer",pe);if(pe<me||pe>de)throw new p(le,`>= ${me} && <= ${de}`,pe)}),s=L((pe,le,me=-2147483648,de=2147483647)=>{if(typeof pe!="number")throw new y(le,"number",pe);if(!l(pe))throw new p(le,"an integer",pe);if(pe<me||pe>de)throw new p(le,`>= ${me} && <= ${de}`,pe)}),T=L((pe,le,me=!1)=>{if(typeof pe!="number")throw new y(le,"number",pe);if(!l(pe))throw new p(le,"an integer",pe);const de=me?1:0,Q=4294967295;if(pe<de||pe>Q)throw new p(le,`>= ${de} && <= ${Q}`,pe)});function v(pe,le){if(typeof pe!="string")throw new y(le,"string",pe)}function M(pe,le,me=void 0,de){if(typeof pe!="number")throw new y(le,"number",pe);if(me!=null&&pe<me||de!=null&&pe>de||(me!=null||de!=null)&&d(pe))throw new p(le,`${me!=null?`>= ${me}`:""}${me!=null&&de!=null?" && ":""}${de!=null?`<= ${de}`:""}`,pe)}const x=L((pe,le,me)=>{if(!t(me,pe)){const Q="must be one of: "+n(a(me,z=>typeof z=="string"?`'${z}'`:O(z)),", ");throw new h(le,pe,Q)}});function W(pe,le){if(typeof pe!="boolean")throw new y(le,"boolean",pe)}function S(pe,le,me){return pe==null||!U(pe,le)?me:pe[le]}const B=L((pe,le,me=null)=>{const de=S(me,"allowArray",!1),Q=S(me,"allowFunction",!1);if(!S(me,"nullable",!1)&&pe===null||!de&&e(pe)||typeof pe!="object"&&(!Q||typeof pe!="function"))throw new y(le,"Object",pe)}),q=L((pe,le,me=0)=>{if(!e(pe))throw new y(le,"Array",pe);if(pe.length<me){const de=`must be longer than ${me}`;throw new h(le,pe,de)}});function G(pe,le="signal"){if(v(pe,le),A[pe]===void 0)throw A[R(pe)]!==void 0?new k(pe+" (signals must use all capital letters)"):new k(pe)}const $=L((pe,le="buffer")=>{if(!I(pe))throw new y(le,["Buffer","TypedArray","DataView"],pe)});function ee(pe,le){const me=D(le),de=pe.length;if(me==="hex"&&de%2!==0)throw new h("encoding",le,`is invalid for data of length ${de}`)}function ue(pe,le="Port",me=!0){if(typeof pe!="number"&&typeof pe!="string"||typeof pe=="string"&&_(pe).length===0||+pe!==+pe>>>0||pe>65535||pe===0&&!me)throw new g(le,pe,me);return pe|0}const se=L((pe,le)=>{if(pe!==void 0&&(pe===null||typeof pe!="object"||!("aborted"in pe)))throw new y(le,"AbortSignal",pe)}),ie=L((pe,le)=>{if(typeof pe!="function")throw new y(le,"Function",pe)}),ye=L((pe,le)=>{if(typeof pe!="function"||C(pe))throw new y(le,"Function",pe)}),be=L((pe,le)=>{if(pe!==void 0)throw new y(le,"undefined",pe)});function Ae(pe,le,me){if(!t(me,pe))throw new y(le,`('${n(me,"|")}')`,pe)}return ac={isInt32:f,isUint32:E,parseFileMode:m,validateArray:q,validateBoolean:W,validateBuffer:$,validateEncoding:ee,validateFunction:ie,validateInt32:s,validateInteger:r,validateNumber:M,validateObject:B,validateOneOf:x,validatePlainFunction:ye,validatePort:ue,validateSignalName:G,validateString:v,validateUint32:T,validateUndefined:be,validateUnion:Ae,validateAbortSignal:se},ac}var ha={exports:{}},uc={exports:{}},uy;function br(){if(uy)return uc.exports;uy=1;var e=uc.exports={},t,n;function a(){throw new Error("setTimeout has not been defined")}function l(){throw new Error("clearTimeout has not been defined")}(function(){try{typeof setTimeout=="function"?t=setTimeout:t=a}catch{t=a}try{typeof clearTimeout=="function"?n=clearTimeout:n=l}catch{n=l}})();function d(g){if(t===setTimeout)return setTimeout(g,0);if((t===a||!t)&&setTimeout)return t=setTimeout,setTimeout(g,0);try{return t(g,0)}catch{try{return t.call(null,g,0)}catch{return t.call(this,g,0)}}}function u(g){if(n===clearTimeout)return clearTimeout(g);if((n===l||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(g);try{return n(g)}catch{try{return n.call(null,g)}catch{return n.call(this,g)}}}var c=[],w=!1,U,P=-1;function O(){!w||!U||(w=!1,U.length?c=U.concat(c):P=-1,c.length&&R())}function R(){if(!w){var g=d(O);w=!0;for(var y=c.length;y;){for(U=c,c=[];++P<y;)U&&U[P].run();P=-1,y=c.length}U=null,w=!1,u(g)}}e.nextTick=function(g){var y=new Array(arguments.length-1);if(arguments.length>1)for(var h=1;h<arguments.length;h++)y[h-1]=arguments[h];c.push(new _(g,y)),c.length===1&&!w&&d(R)};function _(g,y){this.fun=g,this.array=y}_.prototype.run=function(){this.fun.apply(null,this.array)},e.title="browser",e.browser=!0,e.env={},e.argv=[],e.version="",e.versions={};function L(){}return e.on=L,e.addListener=L,e.once=L,e.off=L,e.removeListener=L,e.removeAllListeners=L,e.emit=L,e.prependListener=L,e.prependOnceListener=L,e.listeners=function(g){return[]},e.binding=function(g){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(g){throw new Error("process.chdir is not supported")},e.umask=function(){return 0},uc.exports}var lc,ly;function Tr(){if(ly)return lc;ly=1;const{Symbol:e,SymbolAsyncIterator:t,SymbolIterator:n}=Kt(),a=e("kDestroyed"),l=e("kIsErrored"),d=e("kIsReadable"),u=e("kIsDisturbed");function c(r,s=!1){var T;return!!(r&&typeof r.pipe=="function"&&typeof r.on=="function"&&(!s||typeof r.pause=="function"&&typeof r.resume=="function")&&(!r._writableState||((T=r._readableState)===null||T===void 0?void 0:T.readable)!==!1)&&(!r._writableState||r._readableState))}function w(r){var s;return!!(r&&typeof r.write=="function"&&typeof r.on=="function"&&(!r._readableState||((s=r._writableState)===null||s===void 0?void 0:s.writable)!==!1))}function U(r){return!!(r&&typeof r.pipe=="function"&&r._readableState&&typeof r.on=="function"&&typeof r.write=="function")}function P(r){return r&&(r._readableState||r._writableState||typeof r.write=="function"&&typeof r.on=="function"||typeof r.pipe=="function"&&typeof r.on=="function")}function O(r,s){return r==null?!1:s===!0?typeof r[t]=="function":s===!1?typeof r[n]=="function":typeof r[t]=="function"||typeof r[n]=="function"}function R(r){if(!P(r))return null;const s=r._writableState,T=r._readableState,v=s||T;return!!(r.destroyed||r[a]||v!=null&&v.destroyed)}function _(r){if(!w(r))return null;if(r.writableEnded===!0)return!0;const s=r._writableState;return s!=null&&s.errored?!1:typeof s?.ended!="boolean"?null:s.ended}function L(r,s){if(!w(r))return null;if(r.writableFinished===!0)return!0;const T=r._writableState;return T!=null&&T.errored?!1:typeof T?.finished!="boolean"?null:!!(T.finished||s===!1&&T.ended===!0&&T.length===0)}function g(r){if(!c(r))return null;if(r.readableEnded===!0)return!0;const s=r._readableState;return!s||s.errored?!1:typeof s?.ended!="boolean"?null:s.ended}function y(r,s){if(!c(r))return null;const T=r._readableState;return T!=null&&T.errored?!1:typeof T?.endEmitted!="boolean"?null:!!(T.endEmitted||s===!1&&T.ended===!0&&T.length===0)}function h(r){return r&&r[d]!=null?r[d]:typeof r?.readable!="boolean"?null:R(r)?!1:c(r)&&r.readable&&!y(r)}function p(r){return typeof r?.writable!="boolean"?null:R(r)?!1:w(r)&&r.writable&&!_(r)}function k(r,s){return P(r)?R(r)?!0:!(s?.readable!==!1&&h(r)||s?.writable!==!1&&p(r)):null}function D(r){var s,T;return P(r)?r.writableErrored?r.writableErrored:(s=(T=r._writableState)===null||T===void 0?void 0:T.errored)!==null&&s!==void 0?s:null:null}function C(r){var s,T;return P(r)?r.readableErrored?r.readableErrored:(s=(T=r._readableState)===null||T===void 0?void 0:T.errored)!==null&&s!==void 0?s:null:null}function I(r){if(!P(r))return null;if(typeof r.closed=="boolean")return r.closed;const s=r._writableState,T=r._readableState;return typeof s?.closed=="boolean"||typeof T?.closed=="boolean"?s?.closed||T?.closed:typeof r._closed=="boolean"&&A(r)?r._closed:null}function A(r){return typeof r._closed=="boolean"&&typeof r._defaultKeepAlive=="boolean"&&typeof r._removedConnection=="boolean"&&typeof r._removedContLen=="boolean"}function f(r){return typeof r._sent100=="boolean"&&A(r)}function E(r){var s;return typeof r._consuming=="boolean"&&typeof r._dumped=="boolean"&&((s=r.req)===null||s===void 0?void 0:s.upgradeOrConnect)===void 0}function b(r){if(!P(r))return null;const s=r._writableState,T=r._readableState,v=s||T;return!v&&f(r)||!!(v&&v.autoDestroy&&v.emitClose&&v.closed===!1)}function F(r){var s;return!!(r&&((s=r[u])!==null&&s!==void 0?s:r.readableDidRead||r.readableAborted))}function m(r){var s,T,v,M,x,W,S,B,q,G;return!!(r&&((s=(T=(v=(M=(x=(W=r[l])!==null&&W!==void 0?W:r.readableErrored)!==null&&x!==void 0?x:r.writableErrored)!==null&&M!==void 0?M:(S=r._readableState)===null||S===void 0?void 0:S.errorEmitted)!==null&&v!==void 0?v:(B=r._writableState)===null||B===void 0?void 0:B.errorEmitted)!==null&&T!==void 0?T:(q=r._readableState)===null||q===void 0?void 0:q.errored)!==null&&s!==void 0?s:!((G=r._writableState)===null||G===void 0)&&G.errored))}return lc={kDestroyed:a,isDisturbed:F,kIsDisturbed:u,isErrored:m,kIsErrored:l,isReadable:h,kIsReadable:d,isClosed:I,isDestroyed:R,isDuplexNodeStream:U,isFinished:k,isIterable:O,isReadableNodeStream:c,isReadableEnded:g,isReadableFinished:y,isReadableErrored:C,isNodeStream:P,isWritable:p,isWritableNodeStream:w,isWritableEnded:_,isWritableFinished:L,isWritableErrored:D,isServerRequest:E,isServerResponse:f,willEmitClose:b},lc}var cy;function vr(){if(cy)return ha.exports;cy=1;const e=br(),{AbortError:t,codes:n}=gn(),{ERR_INVALID_ARG_TYPE:a,ERR_STREAM_PREMATURE_CLOSE:l}=n,{kEmptyObject:d,once:u}=ki(),{validateAbortSignal:c,validateFunction:w,validateObject:U}=Qa(),{Promise:P}=Kt(),{isClosed:O,isReadable:R,isReadableNodeStream:_,isReadableFinished:L,isReadableErrored:g,isWritable:y,isWritableNodeStream:h,isWritableFinished:p,isWritableErrored:k,isNodeStream:D,willEmitClose:C}=Tr();function I(b){return b.setHeader&&typeof b.abort=="function"}const A=()=>{};function f(b,F,m){var r,s;arguments.length===2?(m=F,F=d):F==null?F=d:U(F,"options"),w(m,"callback"),c(F.signal,"options.signal"),m=u(m);const T=(r=F.readable)!==null&&r!==void 0?r:_(b),v=(s=F.writable)!==null&&s!==void 0?s:h(b);if(!D(b))throw new a("stream","Stream",b);const M=b._writableState,x=b._readableState,W=()=>{b.writable||q()};let S=C(b)&&_(b)===T&&h(b)===v,B=p(b,!1);const q=()=>{B=!0,b.destroyed&&(S=!1),!(S&&(!b.readable||T))&&(!T||G)&&m.call(b)};let G=L(b,!1);const $=()=>{G=!0,b.destroyed&&(S=!1),!(S&&(!b.writable||v))&&(!v||B)&&m.call(b)},ee=be=>{m.call(b,be)};let ue=O(b);const se=()=>{ue=!0;const be=k(b)||g(b);if(be&&typeof be!="boolean")return m.call(b,be);if(T&&!G&&_(b,!0)&&!L(b,!1))return m.call(b,new l);if(v&&!B&&!p(b,!1))return m.call(b,new l);m.call(b)},ie=()=>{b.req.on("finish",q)};I(b)?(b.on("complete",q),S||b.on("abort",se),b.req?ie():b.on("request",ie)):v&&!M&&(b.on("end",W),b.on("close",W)),!S&&typeof b.aborted=="boolean"&&b.on("aborted",se),b.on("end",$),b.on("finish",q),F.error!==!1&&b.on("error",ee),b.on("close",se),ue?e.nextTick(se):M!=null&&M.errorEmitted||x!=null&&x.errorEmitted?S||e.nextTick(se):(!T&&(!S||R(b))&&(B||y(b)===!1)||!v&&(!S||y(b))&&(G||R(b)===!1)||x&&b.req&&b.aborted)&&e.nextTick(se);const ye=()=>{m=A,b.removeListener("aborted",se),b.removeListener("complete",q),b.removeListener("abort",se),b.removeListener("request",ie),b.req&&b.req.removeListener("finish",q),b.removeListener("end",W),b.removeListener("close",W),b.removeListener("finish",q),b.removeListener("end",$),b.removeListener("error",ee),b.removeListener("close",se)};if(F.signal&&!ue){const be=()=>{const Ae=m;ye(),Ae.call(b,new t(void 0,{cause:F.signal.reason}))};if(F.signal.aborted)e.nextTick(be);else{const Ae=m;m=u((...pe)=>{F.signal.removeEventListener("abort",be),Ae.apply(b,pe)}),F.signal.addEventListener("abort",be)}}return ye}function E(b,F){return new P((m,r)=>{f(b,F,s=>{s?r(s):m()})})}return ha.exports=f,ha.exports.finished=E,ha.exports}var fy;function Yk(){if(fy)return da;fy=1;const e=globalThis.AbortController||gf().AbortController,{codes:{ERR_INVALID_ARG_TYPE:t,ERR_MISSING_ARGS:n,ERR_OUT_OF_RANGE:a},AbortError:l}=gn(),{validateAbortSignal:d,validateInteger:u,validateObject:c}=Qa(),w=Kt().Symbol("kWeak"),{finished:U}=vr(),{ArrayPrototypePush:P,MathFloor:O,Number:R,NumberIsNaN:_,Promise:L,PromiseReject:g,PromisePrototypeThen:y,Symbol:h}=Kt(),p=h("kEmpty"),k=h("kEof");function D(x,W){if(typeof x!="function")throw new t("fn",["Function","AsyncFunction"],x);W!=null&&c(W,"options"),W?.signal!=null&&d(W.signal,"options.signal");let S=1;return W?.concurrency!=null&&(S=O(W.concurrency)),u(S,"concurrency",1),async function*(){var q,G;const $=new e,ee=this,ue=[],se=$.signal,ie={signal:se},ye=()=>$.abort();W!=null&&(q=W.signal)!==null&&q!==void 0&&q.aborted&&ye(),W==null||(G=W.signal)===null||G===void 0||G.addEventListener("abort",ye);let be,Ae,pe=!1;function le(){pe=!0}async function me(){try{for await(let z of ee){var de;if(pe)return;if(se.aborted)throw new l;try{z=x(z,ie)}catch(V){z=g(V)}z!==p&&(typeof((de=z)===null||de===void 0?void 0:de.catch)=="function"&&z.catch(le),ue.push(z),be&&(be(),be=null),!pe&&ue.length&&ue.length>=S&&await new L(V=>{Ae=V}))}ue.push(k)}catch(z){const V=g(z);y(V,void 0,le),ue.push(V)}finally{var Q;pe=!0,be&&(be(),be=null),W==null||(Q=W.signal)===null||Q===void 0||Q.removeEventListener("abort",ye)}}me();try{for(;;){for(;ue.length>0;){const de=await ue[0];if(de===k)return;if(se.aborted)throw new l;de!==p&&(yield de),ue.shift(),Ae&&(Ae(),Ae=null)}await new L(de=>{be=de})}}finally{$.abort(),pe=!0,Ae&&(Ae(),Ae=null)}}.call(this)}function C(x=void 0){return x!=null&&c(x,"options"),x?.signal!=null&&d(x.signal,"options.signal"),async function*(){let S=0;for await(const q of this){var B;if(x!=null&&(B=x.signal)!==null&&B!==void 0&&B.aborted)throw new l({cause:x.signal.reason});yield[S++,q]}}.call(this)}async function I(x,W=void 0){for await(const S of b.call(this,x,W))return!0;return!1}async function A(x,W=void 0){if(typeof x!="function")throw new t("fn",["Function","AsyncFunction"],x);return!await I.call(this,async(...S)=>!await x(...S),W)}async function f(x,W){for await(const S of b.call(this,x,W))return S}async function E(x,W){if(typeof x!="function")throw new t("fn",["Function","AsyncFunction"],x);async function S(B,q){return await x(B,q),p}for await(const B of D.call(this,S,W));}function b(x,W){if(typeof x!="function")throw new t("fn",["Function","AsyncFunction"],x);async function S(B,q){return await x(B,q)?B:p}return D.call(this,S,W)}class F extends n{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}}async function m(x,W,S){var B;if(typeof x!="function")throw new t("reducer",["Function","AsyncFunction"],x);S!=null&&c(S,"options"),S?.signal!=null&&d(S.signal,"options.signal");let q=arguments.length>1;if(S!=null&&(B=S.signal)!==null&&B!==void 0&&B.aborted){const se=new l(void 0,{cause:S.signal.reason});throw this.once("error",()=>{}),await U(this.destroy(se)),se}const G=new e,$=G.signal;if(S!=null&&S.signal){const se={once:!0,[w]:this};S.signal.addEventListener("abort",()=>G.abort(),se)}let ee=!1;try{for await(const se of this){var ue;if(ee=!0,S!=null&&(ue=S.signal)!==null&&ue!==void 0&&ue.aborted)throw new l;q?W=await x(W,se,{signal:$}):(W=se,q=!0)}if(!ee&&!q)throw new F}finally{G.abort()}return W}async function r(x){x!=null&&c(x,"options"),x?.signal!=null&&d(x.signal,"options.signal");const W=[];for await(const B of this){var S;if(x!=null&&(S=x.signal)!==null&&S!==void 0&&S.aborted)throw new l(void 0,{cause:x.signal.reason});P(W,B)}return W}function s(x,W){const S=D.call(this,x,W);return async function*(){for await(const q of S)yield*q}.call(this)}function T(x){if(x=R(x),_(x))return 0;if(x<0)throw new a("number",">= 0",x);return x}function v(x,W=void 0){return W!=null&&c(W,"options"),W?.signal!=null&&d(W.signal,"options.signal"),x=T(x),async function*(){var B;if(W!=null&&(B=W.signal)!==null&&B!==void 0&&B.aborted)throw new l;for await(const G of this){var q;if(W!=null&&(q=W.signal)!==null&&q!==void 0&&q.aborted)throw new l;x--<=0&&(yield G)}}.call(this)}function M(x,W=void 0){return W!=null&&c(W,"options"),W?.signal!=null&&d(W.signal,"options.signal"),x=T(x),async function*(){var B;if(W!=null&&(B=W.signal)!==null&&B!==void 0&&B.aborted)throw new l;for await(const G of this){var q;if(W!=null&&(q=W.signal)!==null&&q!==void 0&&q.aborted)throw new l;if(x-- >0)yield G;else return}}.call(this)}return da.streamReturningOperators={asIndexedPairs:C,drop:v,filter:b,flatMap:s,map:D,take:M},da.promiseReturningOperators={every:A,forEach:E,reduce:m,toArray:r,some:I,find:f},da}var cc,dy;function os(){if(dy)return cc;dy=1;const e=br(),{aggregateTwoErrors:t,codes:{ERR_MULTIPLE_CALLBACK:n},AbortError:a}=gn(),{Symbol:l}=Kt(),{kDestroyed:d,isDestroyed:u,isFinished:c,isServerRequest:w}=Tr(),U=l("kDestroy"),P=l("kConstruct");function O(b,F,m){b&&(b.stack,F&&!F.errored&&(F.errored=b),m&&!m.errored&&(m.errored=b))}function R(b,F){const m=this._readableState,r=this._writableState,s=r||m;return r&&r.destroyed||m&&m.destroyed?(typeof F=="function"&&F(),this):(O(b,r,m),r&&(r.destroyed=!0),m&&(m.destroyed=!0),s.constructed?_(this,b,F):this.once(U,function(T){_(this,t(T,b),F)}),this)}function _(b,F,m){let r=!1;function s(T){if(r)return;r=!0;const v=b._readableState,M=b._writableState;O(T,M,v),M&&(M.closed=!0),v&&(v.closed=!0),typeof m=="function"&&m(T),T?e.nextTick(L,b,T):e.nextTick(g,b)}try{b._destroy(F||null,s)}catch(T){s(T)}}function L(b,F){y(b,F),g(b)}function g(b){const F=b._readableState,m=b._writableState;m&&(m.closeEmitted=!0),F&&(F.closeEmitted=!0),(m&&m.emitClose||F&&F.emitClose)&&b.emit("close")}function y(b,F){const m=b._readableState,r=b._writableState;r&&r.errorEmitted||m&&m.errorEmitted||(r&&(r.errorEmitted=!0),m&&(m.errorEmitted=!0),b.emit("error",F))}function h(){const b=this._readableState,F=this._writableState;b&&(b.constructed=!0,b.closed=!1,b.closeEmitted=!1,b.destroyed=!1,b.errored=null,b.errorEmitted=!1,b.reading=!1,b.ended=b.readable===!1,b.endEmitted=b.readable===!1),F&&(F.constructed=!0,F.destroyed=!1,F.closed=!1,F.closeEmitted=!1,F.errored=null,F.errorEmitted=!1,F.finalCalled=!1,F.prefinished=!1,F.ended=F.writable===!1,F.ending=F.writable===!1,F.finished=F.writable===!1)}function p(b,F,m){const r=b._readableState,s=b._writableState;if(s&&s.destroyed||r&&r.destroyed)return this;r&&r.autoDestroy||s&&s.autoDestroy?b.destroy(F):F&&(F.stack,s&&!s.errored&&(s.errored=F),r&&!r.errored&&(r.errored=F),m?e.nextTick(y,b,F):y(b,F))}function k(b,F){if(typeof b._construct!="function")return;const m=b._readableState,r=b._writableState;m&&(m.constructed=!1),r&&(r.constructed=!1),b.once(P,F),!(b.listenerCount(P)>1)&&e.nextTick(D,b)}function D(b){let F=!1;function m(r){if(F){p(b,r??new n);return}F=!0;const s=b._readableState,T=b._writableState,v=T||s;s&&(s.constructed=!0),T&&(T.constructed=!0),v.destroyed?b.emit(U,r):r?p(b,r,!0):e.nextTick(C,b)}try{b._construct(m)}catch(r){m(r)}}function C(b){b.emit(P)}function I(b){return b&&b.setHeader&&typeof b.abort=="function"}function A(b){b.emit("close")}function f(b,F){b.emit("error",F),e.nextTick(A,b)}function E(b,F){!b||u(b)||(!F&&!c(b)&&(F=new a),w(b)?(b.socket=null,b.destroy(F)):I(b)?b.abort():I(b.req)?b.req.abort():typeof b.destroy=="function"?b.destroy(F):typeof b.close=="function"?b.close():F?e.nextTick(f,b,F):e.nextTick(A,b),b.destroyed||(b[d]=!0))}return cc={construct:k,destroyer:E,destroy:R,undestroy:h,errorOrDestroy:p},cc}var pa={exports:{}},hy;function bf(){if(hy)return pa.exports;hy=1;var e=typeof Reflect=="object"?Reflect:null,t=e&&typeof e.apply=="function"?e.apply:function(C,I,A){return Function.prototype.apply.call(C,I,A)},n;e&&typeof e.ownKeys=="function"?n=e.ownKeys:Object.getOwnPropertySymbols?n=function(C){return Object.getOwnPropertyNames(C).concat(Object.getOwnPropertySymbols(C))}:n=function(C){return Object.getOwnPropertyNames(C)};function a(D){console&&console.warn&&console.warn(D)}var l=Number.isNaN||function(C){return C!==C};function d(){d.init.call(this)}pa.exports=d,pa.exports.once=h,d.EventEmitter=d,d.prototype._events=void 0,d.prototype._eventsCount=0,d.prototype._maxListeners=void 0;var u=10;function c(D){if(typeof D!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof D)}Object.defineProperty(d,"defaultMaxListeners",{enumerable:!0,get:function(){return u},set:function(D){if(typeof D!="number"||D<0||l(D))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+D+".");u=D}}),d.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},d.prototype.setMaxListeners=function(C){if(typeof C!="number"||C<0||l(C))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+C+".");return this._maxListeners=C,this};function w(D){return D._maxListeners===void 0?d.defaultMaxListeners:D._maxListeners}d.prototype.getMaxListeners=function(){return w(this)},d.prototype.emit=function(C){for(var I=[],A=1;A<arguments.length;A++)I.push(arguments[A]);var f=C==="error",E=this._events;if(E!==void 0)f=f&&E.error===void 0;else if(!f)return!1;if(f){var b;if(I.length>0&&(b=I[0]),b instanceof Error)throw b;var F=new Error("Unhandled error."+(b?" ("+b.message+")":""));throw F.context=b,F}var m=E[C];if(m===void 0)return!1;if(typeof m=="function")t(m,this,I);else for(var r=m.length,s=L(m,r),A=0;A<r;++A)t(s[A],this,I);return!0};function U(D,C,I,A){var f,E,b;if(c(I),E=D._events,E===void 0?(E=D._events=Object.create(null),D._eventsCount=0):(E.newListener!==void 0&&(D.emit("newListener",C,I.listener?I.listener:I),E=D._events),b=E[C]),b===void 0)b=E[C]=I,++D._eventsCount;else if(typeof b=="function"?b=E[C]=A?[I,b]:[b,I]:A?b.unshift(I):b.push(I),f=w(D),f>0&&b.length>f&&!b.warned){b.warned=!0;var F=new Error("Possible EventEmitter memory leak detected. "+b.length+" "+String(C)+" listeners added. Use emitter.setMaxListeners() to increase limit");F.name="MaxListenersExceededWarning",F.emitter=D,F.type=C,F.count=b.length,a(F)}return D}d.prototype.addListener=function(C,I){return U(this,C,I,!1)},d.prototype.on=d.prototype.addListener,d.prototype.prependListener=function(C,I){return U(this,C,I,!0)};function P(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function O(D,C,I){var A={fired:!1,wrapFn:void 0,target:D,type:C,listener:I},f=P.bind(A);return f.listener=I,A.wrapFn=f,f}d.prototype.once=function(C,I){return c(I),this.on(C,O(this,C,I)),this},d.prototype.prependOnceListener=function(C,I){return c(I),this.prependListener(C,O(this,C,I)),this},d.prototype.removeListener=function(C,I){var A,f,E,b,F;if(c(I),f=this._events,f===void 0)return this;if(A=f[C],A===void 0)return this;if(A===I||A.listener===I)--this._eventsCount===0?this._events=Object.create(null):(delete f[C],f.removeListener&&this.emit("removeListener",C,A.listener||I));else if(typeof A!="function"){for(E=-1,b=A.length-1;b>=0;b--)if(A[b]===I||A[b].listener===I){F=A[b].listener,E=b;break}if(E<0)return this;E===0?A.shift():g(A,E),A.length===1&&(f[C]=A[0]),f.removeListener!==void 0&&this.emit("removeListener",C,F||I)}return this},d.prototype.off=d.prototype.removeListener,d.prototype.removeAllListeners=function(C){var I,A,f;if(A=this._events,A===void 0)return this;if(A.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):A[C]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete A[C]),this;if(arguments.length===0){var E=Object.keys(A),b;for(f=0;f<E.length;++f)b=E[f],b!=="removeListener"&&this.removeAllListeners(b);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(I=A[C],typeof I=="function")this.removeListener(C,I);else if(I!==void 0)for(f=I.length-1;f>=0;f--)this.removeListener(C,I[f]);return this};function R(D,C,I){var A=D._events;if(A===void 0)return[];var f=A[C];return f===void 0?[]:typeof f=="function"?I?[f.listener||f]:[f]:I?y(f):L(f,f.length)}d.prototype.listeners=function(C){return R(this,C,!0)},d.prototype.rawListeners=function(C){return R(this,C,!1)},d.listenerCount=function(D,C){return typeof D.listenerCount=="function"?D.listenerCount(C):_.call(D,C)},d.prototype.listenerCount=_;function _(D){var C=this._events;if(C!==void 0){var I=C[D];if(typeof I=="function")return 1;if(I!==void 0)return I.length}return 0}d.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]};function L(D,C){for(var I=new Array(C),A=0;A<C;++A)I[A]=D[A];return I}function g(D,C){for(;C+1<D.length;C++)D[C]=D[C+1];D.pop()}function y(D){for(var C=new Array(D.length),I=0;I<C.length;++I)C[I]=D[I].listener||D[I];return C}function h(D,C){return new Promise(function(I,A){function f(b){D.removeListener(C,E),A(b)}function E(){typeof D.removeListener=="function"&&D.removeListener("error",f),I([].slice.call(arguments))}k(D,C,E,{once:!0}),C!=="error"&&p(D,f,{once:!0})})}function p(D,C,I){typeof D.on=="function"&&k(D,"error",C,I)}function k(D,C,I,A){if(typeof D.on=="function")A.once?D.once(C,I):D.on(C,I);else if(typeof D.addEventListener=="function")D.addEventListener(C,function f(E){A.once&&D.removeEventListener(C,f),I(E)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof D)}return pa.exports}var fc,py;function Tf(){if(py)return fc;py=1;const{ArrayIsArray:e,ObjectSetPrototypeOf:t}=Kt(),{EventEmitter:n}=bf();function a(d){n.call(this,d)}t(a.prototype,n.prototype),t(a,n),a.prototype.pipe=function(d,u){const c=this;function w(g){d.writable&&d.write(g)===!1&&c.pause&&c.pause()}c.on("data",w);function U(){c.readable&&c.resume&&c.resume()}d.on("drain",U),!d._isStdio&&(!u||u.end!==!1)&&(c.on("end",O),c.on("close",R));let P=!1;function O(){P||(P=!0,d.end())}function R(){P||(P=!0,typeof d.destroy=="function"&&d.destroy())}function _(g){L(),n.listenerCount(this,"error")===0&&this.emit("error",g)}l(c,"error",_),l(d,"error",_);function L(){c.removeListener("data",w),d.removeListener("drain",U),c.removeListener("end",O),c.removeListener("close",R),c.removeListener("error",_),d.removeListener("error",_),c.removeListener("end",L),c.removeListener("close",L),d.removeListener("close",L)}return c.on("end",L),c.on("close",L),d.on("close",L),d.emit("pipe",c),d};function l(d,u,c){if(typeof d.prependListener=="function")return d.prependListener(u,c);!d._events||!d._events[u]?d.on(u,c):e(d._events[u])?d._events[u].unshift(c):d._events[u]=[c,d._events[u]]}return fc={Stream:a,prependListener:l},fc}var dc={exports:{}},my;function vf(){return my||(my=1,function(e){const{AbortError:t,codes:n}=gn(),a=vr(),{ERR_INVALID_ARG_TYPE:l}=n,d=(c,w)=>{if(typeof c!="object"||!("aborted"in c))throw new l(w,"AbortSignal",c)};function u(c){return!!(c&&typeof c.pipe=="function")}e.exports.addAbortSignal=function(w,U){if(d(w,"signal"),!u(U))throw new l("stream","stream.Stream",U);return e.exports.addAbortSignalNoValidate(w,U)},e.exports.addAbortSignalNoValidate=function(c,w){if(typeof c!="object"||!("aborted"in c))return w;const U=()=>{w.destroy(new t(void 0,{cause:c.reason}))};return c.aborted?U():(c.addEventListener("abort",U),a(w,()=>c.removeEventListener("abort",U))),w}}(dc)),dc.exports}var hc,yy;function $k(){if(yy)return hc;yy=1;const{StringPrototypeSlice:e,SymbolIterator:t,TypedArrayPrototypeSet:n,Uint8Array:a}=Kt(),{Buffer:l}=gr(),{inspect:d}=ki();return hc=class{constructor(){this.head=null,this.tail=null,this.length=0}push(c){const w={data:c,next:null};this.length>0?this.tail.next=w:this.head=w,this.tail=w,++this.length}unshift(c){const w={data:c,next:this.head};this.length===0&&(this.tail=w),this.head=w,++this.length}shift(){if(this.length===0)return;const c=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,c}clear(){this.head=this.tail=null,this.length=0}join(c){if(this.length===0)return"";let w=this.head,U=""+w.data;for(;(w=w.next)!==null;)U+=c+w.data;return U}concat(c){if(this.length===0)return l.alloc(0);const w=l.allocUnsafe(c>>>0);let U=this.head,P=0;for(;U;)n(w,U.data,P),P+=U.data.length,U=U.next;return w}consume(c,w){const U=this.head.data;if(c<U.length){const P=U.slice(0,c);return this.head.data=U.slice(c),P}return c===U.length?this.shift():w?this._getString(c):this._getBuffer(c)}first(){return this.head.data}*[t](){for(let c=this.head;c;c=c.next)yield c.data}_getString(c){let w="",U=this.head,P=0;do{const O=U.data;if(c>O.length)w+=O,c-=O.length;else{c===O.length?(w+=O,++P,U.next?this.head=U.next:this.head=this.tail=null):(w+=e(O,0,c),this.head=U,U.data=e(O,c));break}++P}while((U=U.next)!==null);return this.length-=P,w}_getBuffer(c){const w=l.allocUnsafe(c),U=c;let P=this.head,O=0;do{const R=P.data;if(c>R.length)n(w,R,U-c),c-=R.length;else{c===R.length?(n(w,R,U-c),++O,P.next?this.head=P.next:this.head=this.tail=null):(n(w,new a(R.buffer,R.byteOffset,c),U-c),this.head=P,P.data=R.slice(c));break}++O}while((P=P.next)!==null);return this.length-=O,w}[Symbol.for("nodejs.util.inspect.custom")](c,w){return d(this,{...w,depth:0,customInspect:!1})}},hc}var pc,gy;function Sf(){if(gy)return pc;gy=1;const{MathFloor:e,NumberIsInteger:t}=Kt(),{ERR_INVALID_ARG_VALUE:n}=gn().codes;function a(u,c,w){return u.highWaterMark!=null?u.highWaterMark:c?u[w]:null}function l(u){return u?16:16*1024}function d(u,c,w,U){const P=a(c,U,w);if(P!=null){if(!t(P)||P<0){const O=U?`options.${w}`:"options.highWaterMark";throw new n(O,P)}return e(P)}return l(u.objectMode)}return pc={getHighWaterMark:d,getDefaultHighWaterMark:l},pc}var mc={},ma={exports:{}},yc={};/*!
998
+ * The buffer module from node.js, for the browser.
999
+ *
1000
+ * @author Feross Aboukhadijeh <https://feross.org>
1001
+ * @license MIT
1002
+ */var by;function eN(){return by||(by=1,function(e){var t=cf(),n=Lb(),a=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=c,e.SlowBuffer=p,e.INSPECT_MAX_BYTES=50;var l=2147483647;e.kMaxLength=l,c.TYPED_ARRAY_SUPPORT=d(),!c.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function d(){try{var Q=new Uint8Array(1),z={foo:function(){return 42}};return Object.setPrototypeOf(z,Uint8Array.prototype),Object.setPrototypeOf(Q,z),Q.foo()===42}catch{return!1}}Object.defineProperty(c.prototype,"parent",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.buffer}}),Object.defineProperty(c.prototype,"offset",{enumerable:!0,get:function(){if(c.isBuffer(this))return this.byteOffset}});function u(Q){if(Q>l)throw new RangeError('The value "'+Q+'" is invalid for option "size"');var z=new Uint8Array(Q);return Object.setPrototypeOf(z,c.prototype),z}function c(Q,z,V){if(typeof Q=="number"){if(typeof z=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return O(Q)}return w(Q,z,V)}c.poolSize=8192;function w(Q,z,V){if(typeof Q=="string")return R(Q,z);if(ArrayBuffer.isView(Q))return L(Q);if(Q==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Q);if(le(Q,ArrayBuffer)||Q&&le(Q.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(le(Q,SharedArrayBuffer)||Q&&le(Q.buffer,SharedArrayBuffer)))return g(Q,z,V);if(typeof Q=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var ae=Q.valueOf&&Q.valueOf();if(ae!=null&&ae!==Q)return c.from(ae,z,V);var Te=y(Q);if(Te)return Te;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Q[Symbol.toPrimitive]=="function")return c.from(Q[Symbol.toPrimitive]("string"),z,V);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Q)}c.from=function(Q,z,V){return w(Q,z,V)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array);function U(Q){if(typeof Q!="number")throw new TypeError('"size" argument must be of type number');if(Q<0)throw new RangeError('The value "'+Q+'" is invalid for option "size"')}function P(Q,z,V){return U(Q),Q<=0?u(Q):z!==void 0?typeof V=="string"?u(Q).fill(z,V):u(Q).fill(z):u(Q)}c.alloc=function(Q,z,V){return P(Q,z,V)};function O(Q){return U(Q),u(Q<0?0:h(Q)|0)}c.allocUnsafe=function(Q){return O(Q)},c.allocUnsafeSlow=function(Q){return O(Q)};function R(Q,z){if((typeof z!="string"||z==="")&&(z="utf8"),!c.isEncoding(z))throw new TypeError("Unknown encoding: "+z);var V=k(Q,z)|0,ae=u(V),Te=ae.write(Q,z);return Te!==V&&(ae=ae.slice(0,Te)),ae}function _(Q){for(var z=Q.length<0?0:h(Q.length)|0,V=u(z),ae=0;ae<z;ae+=1)V[ae]=Q[ae]&255;return V}function L(Q){if(le(Q,Uint8Array)){var z=new Uint8Array(Q);return g(z.buffer,z.byteOffset,z.byteLength)}return _(Q)}function g(Q,z,V){if(z<0||Q.byteLength<z)throw new RangeError('"offset" is outside of buffer bounds');if(Q.byteLength<z+(V||0))throw new RangeError('"length" is outside of buffer bounds');var ae;return z===void 0&&V===void 0?ae=new Uint8Array(Q):V===void 0?ae=new Uint8Array(Q,z):ae=new Uint8Array(Q,z,V),Object.setPrototypeOf(ae,c.prototype),ae}function y(Q){if(c.isBuffer(Q)){var z=h(Q.length)|0,V=u(z);return V.length===0||Q.copy(V,0,0,z),V}if(Q.length!==void 0)return typeof Q.length!="number"||me(Q.length)?u(0):_(Q);if(Q.type==="Buffer"&&Array.isArray(Q.data))return _(Q.data)}function h(Q){if(Q>=l)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l.toString(16)+" bytes");return Q|0}function p(Q){return+Q!=Q&&(Q=0),c.alloc(+Q)}c.isBuffer=function(z){return z!=null&&z._isBuffer===!0&&z!==c.prototype},c.compare=function(z,V){if(le(z,Uint8Array)&&(z=c.from(z,z.offset,z.byteLength)),le(V,Uint8Array)&&(V=c.from(V,V.offset,V.byteLength)),!c.isBuffer(z)||!c.isBuffer(V))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(z===V)return 0;for(var ae=z.length,Te=V.length,Ie=0,Ce=Math.min(ae,Te);Ie<Ce;++Ie)if(z[Ie]!==V[Ie]){ae=z[Ie],Te=V[Ie];break}return ae<Te?-1:Te<ae?1:0},c.isEncoding=function(z){switch(String(z).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(z,V){if(!Array.isArray(z))throw new TypeError('"list" argument must be an Array of Buffers');if(z.length===0)return c.alloc(0);var ae;if(V===void 0)for(V=0,ae=0;ae<z.length;++ae)V+=z[ae].length;var Te=c.allocUnsafe(V),Ie=0;for(ae=0;ae<z.length;++ae){var Ce=z[ae];if(le(Ce,Uint8Array))Ie+Ce.length>Te.length?c.from(Ce).copy(Te,Ie):Uint8Array.prototype.set.call(Te,Ce,Ie);else if(c.isBuffer(Ce))Ce.copy(Te,Ie);else throw new TypeError('"list" argument must be an Array of Buffers');Ie+=Ce.length}return Te};function k(Q,z){if(c.isBuffer(Q))return Q.length;if(ArrayBuffer.isView(Q)||le(Q,ArrayBuffer))return Q.byteLength;if(typeof Q!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Q);var V=Q.length,ae=arguments.length>2&&arguments[2]===!0;if(!ae&&V===0)return 0;for(var Te=!1;;)switch(z){case"ascii":case"latin1":case"binary":return V;case"utf8":case"utf-8":return ie(Q).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return V*2;case"hex":return V>>>1;case"base64":return Ae(Q).length;default:if(Te)return ae?-1:ie(Q).length;z=(""+z).toLowerCase(),Te=!0}}c.byteLength=k;function D(Q,z,V){var ae=!1;if((z===void 0||z<0)&&(z=0),z>this.length||((V===void 0||V>this.length)&&(V=this.length),V<=0)||(V>>>=0,z>>>=0,V<=z))return"";for(Q||(Q="utf8");;)switch(Q){case"hex":return W(this,z,V);case"utf8":case"utf-8":return s(this,z,V);case"ascii":return M(this,z,V);case"latin1":case"binary":return x(this,z,V);case"base64":return r(this,z,V);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,z,V);default:if(ae)throw new TypeError("Unknown encoding: "+Q);Q=(Q+"").toLowerCase(),ae=!0}}c.prototype._isBuffer=!0;function C(Q,z,V){var ae=Q[z];Q[z]=Q[V],Q[V]=ae}c.prototype.swap16=function(){var z=this.length;if(z%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var V=0;V<z;V+=2)C(this,V,V+1);return this},c.prototype.swap32=function(){var z=this.length;if(z%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var V=0;V<z;V+=4)C(this,V,V+3),C(this,V+1,V+2);return this},c.prototype.swap64=function(){var z=this.length;if(z%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var V=0;V<z;V+=8)C(this,V,V+7),C(this,V+1,V+6),C(this,V+2,V+5),C(this,V+3,V+4);return this},c.prototype.toString=function(){var z=this.length;return z===0?"":arguments.length===0?s(this,0,z):D.apply(this,arguments)},c.prototype.toLocaleString=c.prototype.toString,c.prototype.equals=function(z){if(!c.isBuffer(z))throw new TypeError("Argument must be a Buffer");return this===z?!0:c.compare(this,z)===0},c.prototype.inspect=function(){var z="",V=e.INSPECT_MAX_BYTES;return z=this.toString("hex",0,V).replace(/(.{2})/g,"$1 ").trim(),this.length>V&&(z+=" ... "),"<Buffer "+z+">"},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(z,V,ae,Te,Ie){if(le(z,Uint8Array)&&(z=c.from(z,z.offset,z.byteLength)),!c.isBuffer(z))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof z);if(V===void 0&&(V=0),ae===void 0&&(ae=z?z.length:0),Te===void 0&&(Te=0),Ie===void 0&&(Ie=this.length),V<0||ae>z.length||Te<0||Ie>this.length)throw new RangeError("out of range index");if(Te>=Ie&&V>=ae)return 0;if(Te>=Ie)return-1;if(V>=ae)return 1;if(V>>>=0,ae>>>=0,Te>>>=0,Ie>>>=0,this===z)return 0;for(var Ce=Ie-Te,We=ae-V,Ge=Math.min(Ce,We),Y=this.slice(Te,Ie),te=z.slice(V,ae),K=0;K<Ge;++K)if(Y[K]!==te[K]){Ce=Y[K],We=te[K];break}return Ce<We?-1:We<Ce?1:0};function I(Q,z,V,ae,Te){if(Q.length===0)return-1;if(typeof V=="string"?(ae=V,V=0):V>2147483647?V=2147483647:V<-2147483648&&(V=-2147483648),V=+V,me(V)&&(V=Te?0:Q.length-1),V<0&&(V=Q.length+V),V>=Q.length){if(Te)return-1;V=Q.length-1}else if(V<0)if(Te)V=0;else return-1;if(typeof z=="string"&&(z=c.from(z,ae)),c.isBuffer(z))return z.length===0?-1:A(Q,z,V,ae,Te);if(typeof z=="number")return z=z&255,typeof Uint8Array.prototype.indexOf=="function"?Te?Uint8Array.prototype.indexOf.call(Q,z,V):Uint8Array.prototype.lastIndexOf.call(Q,z,V):A(Q,[z],V,ae,Te);throw new TypeError("val must be string, number or Buffer")}function A(Q,z,V,ae,Te){var Ie=1,Ce=Q.length,We=z.length;if(ae!==void 0&&(ae=String(ae).toLowerCase(),ae==="ucs2"||ae==="ucs-2"||ae==="utf16le"||ae==="utf-16le")){if(Q.length<2||z.length<2)return-1;Ie=2,Ce/=2,We/=2,V/=2}function Ge(J,ce){return Ie===1?J[ce]:J.readUInt16BE(ce*Ie)}var Y;if(Te){var te=-1;for(Y=V;Y<Ce;Y++)if(Ge(Q,Y)===Ge(z,te===-1?0:Y-te)){if(te===-1&&(te=Y),Y-te+1===We)return te*Ie}else te!==-1&&(Y-=Y-te),te=-1}else for(V+We>Ce&&(V=Ce-We),Y=V;Y>=0;Y--){for(var K=!0,j=0;j<We;j++)if(Ge(Q,Y+j)!==Ge(z,j)){K=!1;break}if(K)return Y}return-1}c.prototype.includes=function(z,V,ae){return this.indexOf(z,V,ae)!==-1},c.prototype.indexOf=function(z,V,ae){return I(this,z,V,ae,!0)},c.prototype.lastIndexOf=function(z,V,ae){return I(this,z,V,ae,!1)};function f(Q,z,V,ae){V=Number(V)||0;var Te=Q.length-V;ae?(ae=Number(ae),ae>Te&&(ae=Te)):ae=Te;var Ie=z.length;ae>Ie/2&&(ae=Ie/2);for(var Ce=0;Ce<ae;++Ce){var We=parseInt(z.substr(Ce*2,2),16);if(me(We))return Ce;Q[V+Ce]=We}return Ce}function E(Q,z,V,ae){return pe(ie(z,Q.length-V),Q,V,ae)}function b(Q,z,V,ae){return pe(ye(z),Q,V,ae)}function F(Q,z,V,ae){return pe(Ae(z),Q,V,ae)}function m(Q,z,V,ae){return pe(be(z,Q.length-V),Q,V,ae)}c.prototype.write=function(z,V,ae,Te){if(V===void 0)Te="utf8",ae=this.length,V=0;else if(ae===void 0&&typeof V=="string")Te=V,ae=this.length,V=0;else if(isFinite(V))V=V>>>0,isFinite(ae)?(ae=ae>>>0,Te===void 0&&(Te="utf8")):(Te=ae,ae=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var Ie=this.length-V;if((ae===void 0||ae>Ie)&&(ae=Ie),z.length>0&&(ae<0||V<0)||V>this.length)throw new RangeError("Attempt to write outside buffer bounds");Te||(Te="utf8");for(var Ce=!1;;)switch(Te){case"hex":return f(this,z,V,ae);case"utf8":case"utf-8":return E(this,z,V,ae);case"ascii":case"latin1":case"binary":return b(this,z,V,ae);case"base64":return F(this,z,V,ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return m(this,z,V,ae);default:if(Ce)throw new TypeError("Unknown encoding: "+Te);Te=(""+Te).toLowerCase(),Ce=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function r(Q,z,V){return z===0&&V===Q.length?t.fromByteArray(Q):t.fromByteArray(Q.slice(z,V))}function s(Q,z,V){V=Math.min(Q.length,V);for(var ae=[],Te=z;Te<V;){var Ie=Q[Te],Ce=null,We=Ie>239?4:Ie>223?3:Ie>191?2:1;if(Te+We<=V){var Ge,Y,te,K;switch(We){case 1:Ie<128&&(Ce=Ie);break;case 2:Ge=Q[Te+1],(Ge&192)===128&&(K=(Ie&31)<<6|Ge&63,K>127&&(Ce=K));break;case 3:Ge=Q[Te+1],Y=Q[Te+2],(Ge&192)===128&&(Y&192)===128&&(K=(Ie&15)<<12|(Ge&63)<<6|Y&63,K>2047&&(K<55296||K>57343)&&(Ce=K));break;case 4:Ge=Q[Te+1],Y=Q[Te+2],te=Q[Te+3],(Ge&192)===128&&(Y&192)===128&&(te&192)===128&&(K=(Ie&15)<<18|(Ge&63)<<12|(Y&63)<<6|te&63,K>65535&&K<1114112&&(Ce=K))}}Ce===null?(Ce=65533,We=1):Ce>65535&&(Ce-=65536,ae.push(Ce>>>10&1023|55296),Ce=56320|Ce&1023),ae.push(Ce),Te+=We}return v(ae)}var T=4096;function v(Q){var z=Q.length;if(z<=T)return String.fromCharCode.apply(String,Q);for(var V="",ae=0;ae<z;)V+=String.fromCharCode.apply(String,Q.slice(ae,ae+=T));return V}function M(Q,z,V){var ae="";V=Math.min(Q.length,V);for(var Te=z;Te<V;++Te)ae+=String.fromCharCode(Q[Te]&127);return ae}function x(Q,z,V){var ae="";V=Math.min(Q.length,V);for(var Te=z;Te<V;++Te)ae+=String.fromCharCode(Q[Te]);return ae}function W(Q,z,V){var ae=Q.length;(!z||z<0)&&(z=0),(!V||V<0||V>ae)&&(V=ae);for(var Te="",Ie=z;Ie<V;++Ie)Te+=de[Q[Ie]];return Te}function S(Q,z,V){for(var ae=Q.slice(z,V),Te="",Ie=0;Ie<ae.length-1;Ie+=2)Te+=String.fromCharCode(ae[Ie]+ae[Ie+1]*256);return Te}c.prototype.slice=function(z,V){var ae=this.length;z=~~z,V=V===void 0?ae:~~V,z<0?(z+=ae,z<0&&(z=0)):z>ae&&(z=ae),V<0?(V+=ae,V<0&&(V=0)):V>ae&&(V=ae),V<z&&(V=z);var Te=this.subarray(z,V);return Object.setPrototypeOf(Te,c.prototype),Te};function B(Q,z,V){if(Q%1!==0||Q<0)throw new RangeError("offset is not uint");if(Q+z>V)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(z,V,ae){z=z>>>0,V=V>>>0,ae||B(z,V,this.length);for(var Te=this[z],Ie=1,Ce=0;++Ce<V&&(Ie*=256);)Te+=this[z+Ce]*Ie;return Te},c.prototype.readUintBE=c.prototype.readUIntBE=function(z,V,ae){z=z>>>0,V=V>>>0,ae||B(z,V,this.length);for(var Te=this[z+--V],Ie=1;V>0&&(Ie*=256);)Te+=this[z+--V]*Ie;return Te},c.prototype.readUint8=c.prototype.readUInt8=function(z,V){return z=z>>>0,V||B(z,1,this.length),this[z]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(z,V){return z=z>>>0,V||B(z,2,this.length),this[z]|this[z+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(z,V){return z=z>>>0,V||B(z,2,this.length),this[z]<<8|this[z+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(z,V){return z=z>>>0,V||B(z,4,this.length),(this[z]|this[z+1]<<8|this[z+2]<<16)+this[z+3]*16777216},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(z,V){return z=z>>>0,V||B(z,4,this.length),this[z]*16777216+(this[z+1]<<16|this[z+2]<<8|this[z+3])},c.prototype.readIntLE=function(z,V,ae){z=z>>>0,V=V>>>0,ae||B(z,V,this.length);for(var Te=this[z],Ie=1,Ce=0;++Ce<V&&(Ie*=256);)Te+=this[z+Ce]*Ie;return Ie*=128,Te>=Ie&&(Te-=Math.pow(2,8*V)),Te},c.prototype.readIntBE=function(z,V,ae){z=z>>>0,V=V>>>0,ae||B(z,V,this.length);for(var Te=V,Ie=1,Ce=this[z+--Te];Te>0&&(Ie*=256);)Ce+=this[z+--Te]*Ie;return Ie*=128,Ce>=Ie&&(Ce-=Math.pow(2,8*V)),Ce},c.prototype.readInt8=function(z,V){return z=z>>>0,V||B(z,1,this.length),this[z]&128?(255-this[z]+1)*-1:this[z]},c.prototype.readInt16LE=function(z,V){z=z>>>0,V||B(z,2,this.length);var ae=this[z]|this[z+1]<<8;return ae&32768?ae|4294901760:ae},c.prototype.readInt16BE=function(z,V){z=z>>>0,V||B(z,2,this.length);var ae=this[z+1]|this[z]<<8;return ae&32768?ae|4294901760:ae},c.prototype.readInt32LE=function(z,V){return z=z>>>0,V||B(z,4,this.length),this[z]|this[z+1]<<8|this[z+2]<<16|this[z+3]<<24},c.prototype.readInt32BE=function(z,V){return z=z>>>0,V||B(z,4,this.length),this[z]<<24|this[z+1]<<16|this[z+2]<<8|this[z+3]},c.prototype.readFloatLE=function(z,V){return z=z>>>0,V||B(z,4,this.length),n.read(this,z,!0,23,4)},c.prototype.readFloatBE=function(z,V){return z=z>>>0,V||B(z,4,this.length),n.read(this,z,!1,23,4)},c.prototype.readDoubleLE=function(z,V){return z=z>>>0,V||B(z,8,this.length),n.read(this,z,!0,52,8)},c.prototype.readDoubleBE=function(z,V){return z=z>>>0,V||B(z,8,this.length),n.read(this,z,!1,52,8)};function q(Q,z,V,ae,Te,Ie){if(!c.isBuffer(Q))throw new TypeError('"buffer" argument must be a Buffer instance');if(z>Te||z<Ie)throw new RangeError('"value" argument is out of bounds');if(V+ae>Q.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(z,V,ae,Te){if(z=+z,V=V>>>0,ae=ae>>>0,!Te){var Ie=Math.pow(2,8*ae)-1;q(this,z,V,ae,Ie,0)}var Ce=1,We=0;for(this[V]=z&255;++We<ae&&(Ce*=256);)this[V+We]=z/Ce&255;return V+ae},c.prototype.writeUintBE=c.prototype.writeUIntBE=function(z,V,ae,Te){if(z=+z,V=V>>>0,ae=ae>>>0,!Te){var Ie=Math.pow(2,8*ae)-1;q(this,z,V,ae,Ie,0)}var Ce=ae-1,We=1;for(this[V+Ce]=z&255;--Ce>=0&&(We*=256);)this[V+Ce]=z/We&255;return V+ae},c.prototype.writeUint8=c.prototype.writeUInt8=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,1,255,0),this[V]=z&255,V+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,2,65535,0),this[V]=z&255,this[V+1]=z>>>8,V+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,2,65535,0),this[V]=z>>>8,this[V+1]=z&255,V+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,4,4294967295,0),this[V+3]=z>>>24,this[V+2]=z>>>16,this[V+1]=z>>>8,this[V]=z&255,V+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,4,4294967295,0),this[V]=z>>>24,this[V+1]=z>>>16,this[V+2]=z>>>8,this[V+3]=z&255,V+4},c.prototype.writeIntLE=function(z,V,ae,Te){if(z=+z,V=V>>>0,!Te){var Ie=Math.pow(2,8*ae-1);q(this,z,V,ae,Ie-1,-Ie)}var Ce=0,We=1,Ge=0;for(this[V]=z&255;++Ce<ae&&(We*=256);)z<0&&Ge===0&&this[V+Ce-1]!==0&&(Ge=1),this[V+Ce]=(z/We>>0)-Ge&255;return V+ae},c.prototype.writeIntBE=function(z,V,ae,Te){if(z=+z,V=V>>>0,!Te){var Ie=Math.pow(2,8*ae-1);q(this,z,V,ae,Ie-1,-Ie)}var Ce=ae-1,We=1,Ge=0;for(this[V+Ce]=z&255;--Ce>=0&&(We*=256);)z<0&&Ge===0&&this[V+Ce+1]!==0&&(Ge=1),this[V+Ce]=(z/We>>0)-Ge&255;return V+ae},c.prototype.writeInt8=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,1,127,-128),z<0&&(z=255+z+1),this[V]=z&255,V+1},c.prototype.writeInt16LE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,2,32767,-32768),this[V]=z&255,this[V+1]=z>>>8,V+2},c.prototype.writeInt16BE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,2,32767,-32768),this[V]=z>>>8,this[V+1]=z&255,V+2},c.prototype.writeInt32LE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,4,2147483647,-2147483648),this[V]=z&255,this[V+1]=z>>>8,this[V+2]=z>>>16,this[V+3]=z>>>24,V+4},c.prototype.writeInt32BE=function(z,V,ae){return z=+z,V=V>>>0,ae||q(this,z,V,4,2147483647,-2147483648),z<0&&(z=4294967295+z+1),this[V]=z>>>24,this[V+1]=z>>>16,this[V+2]=z>>>8,this[V+3]=z&255,V+4};function G(Q,z,V,ae,Te,Ie){if(V+ae>Q.length)throw new RangeError("Index out of range");if(V<0)throw new RangeError("Index out of range")}function $(Q,z,V,ae,Te){return z=+z,V=V>>>0,Te||G(Q,z,V,4),n.write(Q,z,V,ae,23,4),V+4}c.prototype.writeFloatLE=function(z,V,ae){return $(this,z,V,!0,ae)},c.prototype.writeFloatBE=function(z,V,ae){return $(this,z,V,!1,ae)};function ee(Q,z,V,ae,Te){return z=+z,V=V>>>0,Te||G(Q,z,V,8),n.write(Q,z,V,ae,52,8),V+8}c.prototype.writeDoubleLE=function(z,V,ae){return ee(this,z,V,!0,ae)},c.prototype.writeDoubleBE=function(z,V,ae){return ee(this,z,V,!1,ae)},c.prototype.copy=function(z,V,ae,Te){if(!c.isBuffer(z))throw new TypeError("argument should be a Buffer");if(ae||(ae=0),!Te&&Te!==0&&(Te=this.length),V>=z.length&&(V=z.length),V||(V=0),Te>0&&Te<ae&&(Te=ae),Te===ae||z.length===0||this.length===0)return 0;if(V<0)throw new RangeError("targetStart out of bounds");if(ae<0||ae>=this.length)throw new RangeError("Index out of range");if(Te<0)throw new RangeError("sourceEnd out of bounds");Te>this.length&&(Te=this.length),z.length-V<Te-ae&&(Te=z.length-V+ae);var Ie=Te-ae;return this===z&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(V,ae,Te):Uint8Array.prototype.set.call(z,this.subarray(ae,Te),V),Ie},c.prototype.fill=function(z,V,ae,Te){if(typeof z=="string"){if(typeof V=="string"?(Te=V,V=0,ae=this.length):typeof ae=="string"&&(Te=ae,ae=this.length),Te!==void 0&&typeof Te!="string")throw new TypeError("encoding must be a string");if(typeof Te=="string"&&!c.isEncoding(Te))throw new TypeError("Unknown encoding: "+Te);if(z.length===1){var Ie=z.charCodeAt(0);(Te==="utf8"&&Ie<128||Te==="latin1")&&(z=Ie)}}else typeof z=="number"?z=z&255:typeof z=="boolean"&&(z=Number(z));if(V<0||this.length<V||this.length<ae)throw new RangeError("Out of range index");if(ae<=V)return this;V=V>>>0,ae=ae===void 0?this.length:ae>>>0,z||(z=0);var Ce;if(typeof z=="number")for(Ce=V;Ce<ae;++Ce)this[Ce]=z;else{var We=c.isBuffer(z)?z:c.from(z,Te),Ge=We.length;if(Ge===0)throw new TypeError('The value "'+z+'" is invalid for argument "value"');for(Ce=0;Ce<ae-V;++Ce)this[Ce+V]=We[Ce%Ge]}return this};var ue=/[^+/0-9A-Za-z-_]/g;function se(Q){if(Q=Q.split("=")[0],Q=Q.trim().replace(ue,""),Q.length<2)return"";for(;Q.length%4!==0;)Q=Q+"=";return Q}function ie(Q,z){z=z||1/0;for(var V,ae=Q.length,Te=null,Ie=[],Ce=0;Ce<ae;++Ce){if(V=Q.charCodeAt(Ce),V>55295&&V<57344){if(!Te){if(V>56319){(z-=3)>-1&&Ie.push(239,191,189);continue}else if(Ce+1===ae){(z-=3)>-1&&Ie.push(239,191,189);continue}Te=V;continue}if(V<56320){(z-=3)>-1&&Ie.push(239,191,189),Te=V;continue}V=(Te-55296<<10|V-56320)+65536}else Te&&(z-=3)>-1&&Ie.push(239,191,189);if(Te=null,V<128){if((z-=1)<0)break;Ie.push(V)}else if(V<2048){if((z-=2)<0)break;Ie.push(V>>6|192,V&63|128)}else if(V<65536){if((z-=3)<0)break;Ie.push(V>>12|224,V>>6&63|128,V&63|128)}else if(V<1114112){if((z-=4)<0)break;Ie.push(V>>18|240,V>>12&63|128,V>>6&63|128,V&63|128)}else throw new Error("Invalid code point")}return Ie}function ye(Q){for(var z=[],V=0;V<Q.length;++V)z.push(Q.charCodeAt(V)&255);return z}function be(Q,z){for(var V,ae,Te,Ie=[],Ce=0;Ce<Q.length&&!((z-=2)<0);++Ce)V=Q.charCodeAt(Ce),ae=V>>8,Te=V%256,Ie.push(Te),Ie.push(ae);return Ie}function Ae(Q){return t.toByteArray(se(Q))}function pe(Q,z,V,ae){for(var Te=0;Te<ae&&!(Te+V>=z.length||Te>=Q.length);++Te)z[Te+V]=Q[Te];return Te}function le(Q,z){return Q instanceof z||Q!=null&&Q.constructor!=null&&Q.constructor.name!=null&&Q.constructor.name===z.name}function me(Q){return Q!==Q}var de=function(){for(var Q="0123456789abcdef",z=new Array(256),V=0;V<16;++V)for(var ae=V*16,Te=0;Te<16;++Te)z[ae+Te]=Q[V]+Q[Te];return z}()}(yc)),yc}/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var Ty;function tN(){return Ty||(Ty=1,function(e,t){var n=eN(),a=n.Buffer;function l(u,c){for(var w in u)c[w]=u[w]}a.from&&a.alloc&&a.allocUnsafe&&a.allocUnsafeSlow?e.exports=n:(l(n,t),t.Buffer=d);function d(u,c,w){return a(u,c,w)}d.prototype=Object.create(a.prototype),l(a,d),d.from=function(u,c,w){if(typeof u=="number")throw new TypeError("Argument must not be a number");return a(u,c,w)},d.alloc=function(u,c,w){if(typeof u!="number")throw new TypeError("Argument must be a number");var U=a(u);return c!==void 0?typeof w=="string"?U.fill(c,w):U.fill(c):U.fill(0),U},d.allocUnsafe=function(u){if(typeof u!="number")throw new TypeError("Argument must be a number");return a(u)},d.allocUnsafeSlow=function(u){if(typeof u!="number")throw new TypeError("Argument must be a number");return n.SlowBuffer(u)}}(ma,ma.exports)),ma.exports}var vy;function nN(){if(vy)return mc;vy=1;var e=tN().Buffer,t=e.isEncoding||function(h){switch(h=""+h,h&&h.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function n(h){if(!h)return"utf8";for(var p;;)switch(h){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return h;default:if(p)return;h=(""+h).toLowerCase(),p=!0}}function a(h){var p=n(h);if(typeof p!="string"&&(e.isEncoding===t||!t(h)))throw new Error("Unknown encoding: "+h);return p||h}mc.StringDecoder=l;function l(h){this.encoding=a(h);var p;switch(this.encoding){case"utf16le":this.text=O,this.end=R,p=4;break;case"utf8":this.fillLast=w,p=4;break;case"base64":this.text=_,this.end=L,p=3;break;default:this.write=g,this.end=y;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=e.allocUnsafe(p)}l.prototype.write=function(h){if(h.length===0)return"";var p,k;if(this.lastNeed){if(p=this.fillLast(h),p===void 0)return"";k=this.lastNeed,this.lastNeed=0}else k=0;return k<h.length?p?p+this.text(h,k):this.text(h,k):p||""},l.prototype.end=P,l.prototype.text=U,l.prototype.fillLast=function(h){if(this.lastNeed<=h.length)return h.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);h.copy(this.lastChar,this.lastTotal-this.lastNeed,0,h.length),this.lastNeed-=h.length};function d(h){return h<=127?0:h>>5===6?2:h>>4===14?3:h>>3===30?4:h>>6===2?-1:-2}function u(h,p,k){var D=p.length-1;if(D<k)return 0;var C=d(p[D]);return C>=0?(C>0&&(h.lastNeed=C-1),C):--D<k||C===-2?0:(C=d(p[D]),C>=0?(C>0&&(h.lastNeed=C-2),C):--D<k||C===-2?0:(C=d(p[D]),C>=0?(C>0&&(C===2?C=0:h.lastNeed=C-3),C):0))}function c(h,p,k){if((p[0]&192)!==128)return h.lastNeed=0,"�";if(h.lastNeed>1&&p.length>1){if((p[1]&192)!==128)return h.lastNeed=1,"�";if(h.lastNeed>2&&p.length>2&&(p[2]&192)!==128)return h.lastNeed=2,"�"}}function w(h){var p=this.lastTotal-this.lastNeed,k=c(this,h);if(k!==void 0)return k;if(this.lastNeed<=h.length)return h.copy(this.lastChar,p,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);h.copy(this.lastChar,p,0,h.length),this.lastNeed-=h.length}function U(h,p){var k=u(this,h,p);if(!this.lastNeed)return h.toString("utf8",p);this.lastTotal=k;var D=h.length-(k-this.lastNeed);return h.copy(this.lastChar,0,D),h.toString("utf8",p,D)}function P(h){var p=h&&h.length?this.write(h):"";return this.lastNeed?p+"�":p}function O(h,p){if((h.length-p)%2===0){var k=h.toString("utf16le",p);if(k){var D=k.charCodeAt(k.length-1);if(D>=55296&&D<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=h[h.length-2],this.lastChar[1]=h[h.length-1],k.slice(0,-1)}return k}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=h[h.length-1],h.toString("utf16le",p,h.length-1)}function R(h){var p=h&&h.length?this.write(h):"";if(this.lastNeed){var k=this.lastTotal-this.lastNeed;return p+this.lastChar.toString("utf16le",0,k)}return p}function _(h,p){var k=(h.length-p)%3;return k===0?h.toString("base64",p):(this.lastNeed=3-k,this.lastTotal=3,k===1?this.lastChar[0]=h[h.length-1]:(this.lastChar[0]=h[h.length-2],this.lastChar[1]=h[h.length-1]),h.toString("base64",p,h.length-k))}function L(h){var p=h&&h.length?this.write(h):"";return this.lastNeed?p+this.lastChar.toString("base64",0,3-this.lastNeed):p}function g(h){return h.toString(this.encoding)}function y(h){return h&&h.length?this.write(h):""}return mc}var gc,Sy;function _b(){if(Sy)return gc;Sy=1;const e=br(),{PromisePrototypeThen:t,SymbolAsyncIterator:n,SymbolIterator:a}=Kt(),{Buffer:l}=gr(),{ERR_INVALID_ARG_TYPE:d,ERR_STREAM_NULL_VALUES:u}=gn().codes;function c(w,U,P){let O;if(typeof U=="string"||U instanceof l)return new w({objectMode:!0,...P,read(){this.push(U),this.push(null)}});let R;if(U&&U[n])R=!0,O=U[n]();else if(U&&U[a])R=!1,O=U[a]();else throw new d("iterable",["Iterable"],U);const _=new w({objectMode:!0,highWaterMark:1,...P});let L=!1;_._read=function(){L||(L=!0,y())},_._destroy=function(h,p){t(g(h),()=>e.nextTick(p,h),k=>e.nextTick(p,k||h))};async function g(h){const p=h!=null,k=typeof O.throw=="function";if(p&&k){const{value:D,done:C}=await O.throw(h);if(await D,C)return}if(typeof O.return=="function"){const{value:D}=await O.return();await D}}async function y(){for(;;){try{const{value:h,done:p}=R?await O.next():O.next();if(p)_.push(null);else{const k=h&&typeof h.then=="function"?await h:h;if(k===null)throw L=!1,new u;if(_.push(k))continue;L=!1}}catch(h){_.destroy(h)}break}}return _}return gc=c,gc}var bc,wy;function Xa(){if(wy)return bc;wy=1;const e=br(),{ArrayPrototypeIndexOf:t,NumberIsInteger:n,NumberIsNaN:a,NumberParseInt:l,ObjectDefineProperties:d,ObjectKeys:u,ObjectSetPrototypeOf:c,Promise:w,SafeSet:U,SymbolAsyncIterator:P,Symbol:O}=Kt();bc=S,S.ReadableState=W;const{EventEmitter:R}=bf(),{Stream:_,prependListener:L}=Tf(),{Buffer:g}=gr(),{addAbortSignal:y}=vf(),h=vr();let p=ki().debuglog("stream",Y=>{p=Y});const k=$k(),D=os(),{getHighWaterMark:C,getDefaultHighWaterMark:I}=Sf(),{aggregateTwoErrors:A,codes:{ERR_INVALID_ARG_TYPE:f,ERR_METHOD_NOT_IMPLEMENTED:E,ERR_OUT_OF_RANGE:b,ERR_STREAM_PUSH_AFTER_EOF:F,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:m}}=gn(),{validateObject:r}=Qa(),s=O("kPaused"),{StringDecoder:T}=nN(),v=_b();c(S.prototype,_.prototype),c(S,_);const M=()=>{},{errorOrDestroy:x}=D;function W(Y,te,K){typeof K!="boolean"&&(K=te instanceof Ni()),this.objectMode=!!(Y&&Y.objectMode),K&&(this.objectMode=this.objectMode||!!(Y&&Y.readableObjectMode)),this.highWaterMark=Y?C(this,Y,"readableHighWaterMark",K):I(!1),this.buffer=new k,this.length=0,this.pipes=[],this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.constructed=!0,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this[s]=null,this.errorEmitted=!1,this.emitClose=!Y||Y.emitClose!==!1,this.autoDestroy=!Y||Y.autoDestroy!==!1,this.destroyed=!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this.defaultEncoding=Y&&Y.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.multiAwaitDrain=!1,this.readingMore=!1,this.dataEmitted=!1,this.decoder=null,this.encoding=null,Y&&Y.encoding&&(this.decoder=new T(Y.encoding),this.encoding=Y.encoding)}function S(Y){if(!(this instanceof S))return new S(Y);const te=this instanceof Ni();this._readableState=new W(Y,this,te),Y&&(typeof Y.read=="function"&&(this._read=Y.read),typeof Y.destroy=="function"&&(this._destroy=Y.destroy),typeof Y.construct=="function"&&(this._construct=Y.construct),Y.signal&&!te&&y(Y.signal,this)),_.call(this,Y),D.construct(this,()=>{this._readableState.needReadable&&ye(this,this._readableState)})}S.prototype.destroy=D.destroy,S.prototype._undestroy=D.undestroy,S.prototype._destroy=function(Y,te){te(Y)},S.prototype[R.captureRejectionSymbol]=function(Y){this.destroy(Y)},S.prototype.push=function(Y,te){return B(this,Y,te,!1)},S.prototype.unshift=function(Y,te){return B(this,Y,te,!0)};function B(Y,te,K,j){p("readableAddChunk",te);const J=Y._readableState;let ce;if(J.objectMode||(typeof te=="string"?(K=K||J.defaultEncoding,J.encoding!==K&&(j&&J.encoding?te=g.from(te,K).toString(J.encoding):(te=g.from(te,K),K=""))):te instanceof g?K="":_._isUint8Array(te)?(te=_._uint8ArrayToBuffer(te),K=""):te!=null&&(ce=new f("chunk",["string","Buffer","Uint8Array"],te))),ce)x(Y,ce);else if(te===null)J.reading=!1,ue(Y,J);else if(J.objectMode||te&&te.length>0)if(j)if(J.endEmitted)x(Y,new m);else{if(J.destroyed||J.errored)return!1;q(Y,J,te,!0)}else if(J.ended)x(Y,new F);else{if(J.destroyed||J.errored)return!1;J.reading=!1,J.decoder&&!K?(te=J.decoder.write(te),J.objectMode||te.length!==0?q(Y,J,te,!1):ye(Y,J)):q(Y,J,te,!1)}else j||(J.reading=!1,ye(Y,J));return!J.ended&&(J.length<J.highWaterMark||J.length===0)}function q(Y,te,K,j){te.flowing&&te.length===0&&!te.sync&&Y.listenerCount("data")>0?(te.multiAwaitDrain?te.awaitDrainWriters.clear():te.awaitDrainWriters=null,te.dataEmitted=!0,Y.emit("data",K)):(te.length+=te.objectMode?1:K.length,j?te.buffer.unshift(K):te.buffer.push(K),te.needReadable&&se(Y)),ye(Y,te)}S.prototype.isPaused=function(){const Y=this._readableState;return Y[s]===!0||Y.flowing===!1},S.prototype.setEncoding=function(Y){const te=new T(Y);this._readableState.decoder=te,this._readableState.encoding=this._readableState.decoder.encoding;const K=this._readableState.buffer;let j="";for(const J of K)j+=te.write(J);return K.clear(),j!==""&&K.push(j),this._readableState.length=j.length,this};const G=1073741824;function $(Y){if(Y>G)throw new b("size","<= 1GiB",Y);return Y--,Y|=Y>>>1,Y|=Y>>>2,Y|=Y>>>4,Y|=Y>>>8,Y|=Y>>>16,Y++,Y}function ee(Y,te){return Y<=0||te.length===0&&te.ended?0:te.objectMode?1:a(Y)?te.flowing&&te.length?te.buffer.first().length:te.length:Y<=te.length?Y:te.ended?te.length:0}S.prototype.read=function(Y){p("read",Y),Y===void 0?Y=NaN:n(Y)||(Y=l(Y,10));const te=this._readableState,K=Y;if(Y>te.highWaterMark&&(te.highWaterMark=$(Y)),Y!==0&&(te.emittedReadable=!1),Y===0&&te.needReadable&&((te.highWaterMark!==0?te.length>=te.highWaterMark:te.length>0)||te.ended))return p("read: emitReadable",te.length,te.ended),te.length===0&&te.ended?Te(this):se(this),null;if(Y=ee(Y,te),Y===0&&te.ended)return te.length===0&&Te(this),null;let j=te.needReadable;if(p("need readable",j),(te.length===0||te.length-Y<te.highWaterMark)&&(j=!0,p("length less than watermark",j)),te.ended||te.reading||te.destroyed||te.errored||!te.constructed)j=!1,p("reading, ended or constructing",j);else if(j){p("do read"),te.reading=!0,te.sync=!0,te.length===0&&(te.needReadable=!0);try{this._read(te.highWaterMark)}catch(ce){x(this,ce)}te.sync=!1,te.reading||(Y=ee(K,te))}let J;return Y>0?J=ae(Y,te):J=null,J===null?(te.needReadable=te.length<=te.highWaterMark,Y=0):(te.length-=Y,te.multiAwaitDrain?te.awaitDrainWriters.clear():te.awaitDrainWriters=null),te.length===0&&(te.ended||(te.needReadable=!0),K!==Y&&te.ended&&Te(this)),J!==null&&!te.errorEmitted&&!te.closeEmitted&&(te.dataEmitted=!0,this.emit("data",J)),J};function ue(Y,te){if(p("onEofChunk"),!te.ended){if(te.decoder){const K=te.decoder.end();K&&K.length&&(te.buffer.push(K),te.length+=te.objectMode?1:K.length)}te.ended=!0,te.sync?se(Y):(te.needReadable=!1,te.emittedReadable=!0,ie(Y))}}function se(Y){const te=Y._readableState;p("emitReadable",te.needReadable,te.emittedReadable),te.needReadable=!1,te.emittedReadable||(p("emitReadable",te.flowing),te.emittedReadable=!0,e.nextTick(ie,Y))}function ie(Y){const te=Y._readableState;p("emitReadable_",te.destroyed,te.length,te.ended),!te.destroyed&&!te.errored&&(te.length||te.ended)&&(Y.emit("readable"),te.emittedReadable=!1),te.needReadable=!te.flowing&&!te.ended&&te.length<=te.highWaterMark,Q(Y)}function ye(Y,te){!te.readingMore&&te.constructed&&(te.readingMore=!0,e.nextTick(be,Y,te))}function be(Y,te){for(;!te.reading&&!te.ended&&(te.length<te.highWaterMark||te.flowing&&te.length===0);){const K=te.length;if(p("maybeReadMore read 0"),Y.read(0),K===te.length)break}te.readingMore=!1}S.prototype._read=function(Y){throw new E("_read()")},S.prototype.pipe=function(Y,te){const K=this,j=this._readableState;j.pipes.length===1&&(j.multiAwaitDrain||(j.multiAwaitDrain=!0,j.awaitDrainWriters=new U(j.awaitDrainWriters?[j.awaitDrainWriters]:[]))),j.pipes.push(Y),p("pipe count=%d opts=%j",j.pipes.length,te);const ce=(!te||te.end!==!1)&&Y!==e.stdout&&Y!==e.stderr?ge:ke;j.endEmitted?e.nextTick(ce):K.once("end",ce),Y.on("unpipe",X);function X(Ne,oe){p("onunpipe"),Ne===K&&oe&&oe.hasUnpiped===!1&&(oe.hasUnpiped=!0,we())}function ge(){p("onend"),Y.end()}let Se,De=!1;function we(){p("cleanup"),Y.removeListener("close",ze),Y.removeListener("finish",H),Se&&Y.removeListener("drain",Se),Y.removeListener("error",Re),Y.removeListener("unpipe",X),K.removeListener("end",ge),K.removeListener("end",ke),K.removeListener("data",re),De=!0,Se&&j.awaitDrainWriters&&(!Y._writableState||Y._writableState.needDrain)&&Se()}function Pe(){De||(j.pipes.length===1&&j.pipes[0]===Y?(p("false write response, pause",0),j.awaitDrainWriters=Y,j.multiAwaitDrain=!1):j.pipes.length>1&&j.pipes.includes(Y)&&(p("false write response, pause",j.awaitDrainWriters.size),j.awaitDrainWriters.add(Y)),K.pause()),Se||(Se=Ae(K,Y),Y.on("drain",Se))}K.on("data",re);function re(Ne){p("ondata");const oe=Y.write(Ne);p("dest.write",oe),oe===!1&&Pe()}function Re(Ne){if(p("onerror",Ne),ke(),Y.removeListener("error",Re),Y.listenerCount("error")===0){const oe=Y._writableState||Y._readableState;oe&&!oe.errorEmitted?x(Y,Ne):Y.emit("error",Ne)}}L(Y,"error",Re);function ze(){Y.removeListener("finish",H),ke()}Y.once("close",ze);function H(){p("onfinish"),Y.removeListener("close",ze),ke()}Y.once("finish",H);function ke(){p("unpipe"),K.unpipe(Y)}return Y.emit("pipe",K),Y.writableNeedDrain===!0?j.flowing&&Pe():j.flowing||(p("pipe resume"),K.resume()),Y};function Ae(Y,te){return function(){const j=Y._readableState;j.awaitDrainWriters===te?(p("pipeOnDrain",1),j.awaitDrainWriters=null):j.multiAwaitDrain&&(p("pipeOnDrain",j.awaitDrainWriters.size),j.awaitDrainWriters.delete(te)),(!j.awaitDrainWriters||j.awaitDrainWriters.size===0)&&Y.listenerCount("data")&&Y.resume()}}S.prototype.unpipe=function(Y){const te=this._readableState,K={hasUnpiped:!1};if(te.pipes.length===0)return this;if(!Y){const J=te.pipes;te.pipes=[],this.pause();for(let ce=0;ce<J.length;ce++)J[ce].emit("unpipe",this,{hasUnpiped:!1});return this}const j=t(te.pipes,Y);return j===-1?this:(te.pipes.splice(j,1),te.pipes.length===0&&this.pause(),Y.emit("unpipe",this,K),this)},S.prototype.on=function(Y,te){const K=_.prototype.on.call(this,Y,te),j=this._readableState;return Y==="data"?(j.readableListening=this.listenerCount("readable")>0,j.flowing!==!1&&this.resume()):Y==="readable"&&!j.endEmitted&&!j.readableListening&&(j.readableListening=j.needReadable=!0,j.flowing=!1,j.emittedReadable=!1,p("on readable",j.length,j.reading),j.length?se(this):j.reading||e.nextTick(le,this)),K},S.prototype.addListener=S.prototype.on,S.prototype.removeListener=function(Y,te){const K=_.prototype.removeListener.call(this,Y,te);return Y==="readable"&&e.nextTick(pe,this),K},S.prototype.off=S.prototype.removeListener,S.prototype.removeAllListeners=function(Y){const te=_.prototype.removeAllListeners.apply(this,arguments);return(Y==="readable"||Y===void 0)&&e.nextTick(pe,this),te};function pe(Y){const te=Y._readableState;te.readableListening=Y.listenerCount("readable")>0,te.resumeScheduled&&te[s]===!1?te.flowing=!0:Y.listenerCount("data")>0?Y.resume():te.readableListening||(te.flowing=null)}function le(Y){p("readable nexttick read 0"),Y.read(0)}S.prototype.resume=function(){const Y=this._readableState;return Y.flowing||(p("resume"),Y.flowing=!Y.readableListening,me(this,Y)),Y[s]=!1,this};function me(Y,te){te.resumeScheduled||(te.resumeScheduled=!0,e.nextTick(de,Y,te))}function de(Y,te){p("resume",te.reading),te.reading||Y.read(0),te.resumeScheduled=!1,Y.emit("resume"),Q(Y),te.flowing&&!te.reading&&Y.read(0)}S.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[s]=!0,this};function Q(Y){const te=Y._readableState;for(p("flow",te.flowing);te.flowing&&Y.read()!==null;);}S.prototype.wrap=function(Y){let te=!1;Y.on("data",j=>{!this.push(j)&&Y.pause&&(te=!0,Y.pause())}),Y.on("end",()=>{this.push(null)}),Y.on("error",j=>{x(this,j)}),Y.on("close",()=>{this.destroy()}),Y.on("destroy",()=>{this.destroy()}),this._read=()=>{te&&Y.resume&&(te=!1,Y.resume())};const K=u(Y);for(let j=1;j<K.length;j++){const J=K[j];this[J]===void 0&&typeof Y[J]=="function"&&(this[J]=Y[J].bind(Y))}return this},S.prototype[P]=function(){return z(this)},S.prototype.iterator=function(Y){return Y!==void 0&&r(Y,"options"),z(this,Y)};function z(Y,te){typeof Y.read!="function"&&(Y=S.wrap(Y,{objectMode:!0}));const K=V(Y,te);return K.stream=Y,K}async function*V(Y,te){let K=M;function j(X){this===Y?(K(),K=M):K=X}Y.on("readable",j);let J;const ce=h(Y,{writable:!1},X=>{J=X?A(J,X):null,K(),K=M});try{for(;;){const X=Y.destroyed?null:Y.read();if(X!==null)yield X;else{if(J)throw J;if(J===null)return;await new w(j)}}}catch(X){throw J=A(J,X),J}finally{(J||te?.destroyOnReturn!==!1)&&(J===void 0||Y._readableState.autoDestroy)?D.destroyer(Y,null):(Y.off("readable",j),ce())}}d(S.prototype,{readable:{__proto__:null,get(){const Y=this._readableState;return!!Y&&Y.readable!==!1&&!Y.destroyed&&!Y.errorEmitted&&!Y.endEmitted},set(Y){this._readableState&&(this._readableState.readable=!!Y)}},readableDidRead:{__proto__:null,enumerable:!1,get:function(){return this._readableState.dataEmitted}},readableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._readableState.readable!==!1&&(this._readableState.destroyed||this._readableState.errored)&&!this._readableState.endEmitted)}},readableHighWaterMark:{__proto__:null,enumerable:!1,get:function(){return this._readableState.highWaterMark}},readableBuffer:{__proto__:null,enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}},readableFlowing:{__proto__:null,enumerable:!1,get:function(){return this._readableState.flowing},set:function(Y){this._readableState&&(this._readableState.flowing=Y)}},readableLength:{__proto__:null,enumerable:!1,get(){return this._readableState.length}},readableObjectMode:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.objectMode:!1}},readableEncoding:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.encoding:null}},errored:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.errored:null}},closed:{__proto__:null,get(){return this._readableState?this._readableState.closed:!1}},destroyed:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.destroyed:!1},set(Y){this._readableState&&(this._readableState.destroyed=Y)}},readableEnded:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.endEmitted:!1}}}),d(W.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[s]!==!1},set(Y){this[s]=!!Y}}}),S._fromList=ae;function ae(Y,te){if(te.length===0)return null;let K;return te.objectMode?K=te.buffer.shift():!Y||Y>=te.length?(te.decoder?K=te.buffer.join(""):te.buffer.length===1?K=te.buffer.first():K=te.buffer.concat(te.length),te.buffer.clear()):K=te.buffer.consume(Y,te.decoder),K}function Te(Y){const te=Y._readableState;p("endReadable",te.endEmitted),te.endEmitted||(te.ended=!0,e.nextTick(Ie,te,Y))}function Ie(Y,te){if(p("endReadableNT",Y.endEmitted,Y.length),!Y.errored&&!Y.closeEmitted&&!Y.endEmitted&&Y.length===0){if(Y.endEmitted=!0,te.emit("end"),te.writable&&te.allowHalfOpen===!1)e.nextTick(Ce,te);else if(Y.autoDestroy){const K=te._writableState;(!K||K.autoDestroy&&(K.finished||K.writable===!1))&&te.destroy()}}}function Ce(Y){Y.writable&&!Y.writableEnded&&!Y.destroyed&&Y.end()}S.from=function(Y,te){return v(S,Y,te)};let We;function Ge(){return We===void 0&&(We={}),We}return S.fromWeb=function(Y,te){return Ge().newStreamReadableFromReadableStream(Y,te)},S.toWeb=function(Y,te){return Ge().newReadableStreamFromStreamReadable(Y,te)},S.wrap=function(Y,te){var K,j;return new S({objectMode:(K=(j=Y.readableObjectMode)!==null&&j!==void 0?j:Y.objectMode)!==null&&K!==void 0?K:!0,...te,destroy(J,ce){D.destroyer(Y,J),ce(J)}}).wrap(Y)},bc}var Tc,Ly;function kb(){if(Ly)return Tc;Ly=1;const e=br(),{ArrayPrototypeSlice:t,Error:n,FunctionPrototypeSymbolHasInstance:a,ObjectDefineProperty:l,ObjectDefineProperties:d,ObjectSetPrototypeOf:u,StringPrototypeToLowerCase:c,Symbol:w,SymbolHasInstance:U}=Kt();Tc=T,T.WritableState=r;const{EventEmitter:P}=bf(),O=Tf().Stream,{Buffer:R}=gr(),_=os(),{addAbortSignal:L}=vf(),{getHighWaterMark:g,getDefaultHighWaterMark:y}=Sf(),{ERR_INVALID_ARG_TYPE:h,ERR_METHOD_NOT_IMPLEMENTED:p,ERR_MULTIPLE_CALLBACK:k,ERR_STREAM_CANNOT_PIPE:D,ERR_STREAM_DESTROYED:C,ERR_STREAM_ALREADY_FINISHED:I,ERR_STREAM_NULL_VALUES:A,ERR_STREAM_WRITE_AFTER_END:f,ERR_UNKNOWN_ENCODING:E}=gn().codes,{errorOrDestroy:b}=_;u(T.prototype,O.prototype),u(T,O);function F(){}const m=w("kOnFinished");function r(le,me,de){typeof de!="boolean"&&(de=me instanceof Ni()),this.objectMode=!!(le&&le.objectMode),de&&(this.objectMode=this.objectMode||!!(le&&le.writableObjectMode)),this.highWaterMark=le?g(this,le,"writableHighWaterMark",de):y(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;const Q=!!(le&&le.decodeStrings===!1);this.decodeStrings=!Q,this.defaultEncoding=le&&le.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=S.bind(void 0,me),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,s(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!le||le.emitClose!==!1,this.autoDestroy=!le||le.autoDestroy!==!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[m]=[]}function s(le){le.buffered=[],le.bufferedIndex=0,le.allBuffers=!0,le.allNoop=!0}r.prototype.getBuffer=function(){return t(this.buffered,this.bufferedIndex)},l(r.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function T(le){const me=this instanceof Ni();if(!me&&!a(T,this))return new T(le);this._writableState=new r(le,this,me),le&&(typeof le.write=="function"&&(this._write=le.write),typeof le.writev=="function"&&(this._writev=le.writev),typeof le.destroy=="function"&&(this._destroy=le.destroy),typeof le.final=="function"&&(this._final=le.final),typeof le.construct=="function"&&(this._construct=le.construct),le.signal&&L(le.signal,this)),O.call(this,le),_.construct(this,()=>{const de=this._writableState;de.writing||$(this,de),ie(this,de)})}l(T,U,{__proto__:null,value:function(le){return a(this,le)?!0:this!==T?!1:le&&le._writableState instanceof r}}),T.prototype.pipe=function(){b(this,new D)};function v(le,me,de,Q){const z=le._writableState;if(typeof de=="function")Q=de,de=z.defaultEncoding;else{if(!de)de=z.defaultEncoding;else if(de!=="buffer"&&!R.isEncoding(de))throw new E(de);typeof Q!="function"&&(Q=F)}if(me===null)throw new A;if(!z.objectMode)if(typeof me=="string")z.decodeStrings!==!1&&(me=R.from(me,de),de="buffer");else if(me instanceof R)de="buffer";else if(O._isUint8Array(me))me=O._uint8ArrayToBuffer(me),de="buffer";else throw new h("chunk",["string","Buffer","Uint8Array"],me);let V;return z.ending?V=new f:z.destroyed&&(V=new C("write")),V?(e.nextTick(Q,V),b(le,V,!0),V):(z.pendingcb++,M(le,z,me,de,Q))}T.prototype.write=function(le,me,de){return v(this,le,me,de)===!0},T.prototype.cork=function(){this._writableState.corked++},T.prototype.uncork=function(){const le=this._writableState;le.corked&&(le.corked--,le.writing||$(this,le))},T.prototype.setDefaultEncoding=function(me){if(typeof me=="string"&&(me=c(me)),!R.isEncoding(me))throw new E(me);return this._writableState.defaultEncoding=me,this};function M(le,me,de,Q,z){const V=me.objectMode?1:de.length;me.length+=V;const ae=me.length<me.highWaterMark;return ae||(me.needDrain=!0),me.writing||me.corked||me.errored||!me.constructed?(me.buffered.push({chunk:de,encoding:Q,callback:z}),me.allBuffers&&Q!=="buffer"&&(me.allBuffers=!1),me.allNoop&&z!==F&&(me.allNoop=!1)):(me.writelen=V,me.writecb=z,me.writing=!0,me.sync=!0,le._write(de,Q,me.onwrite),me.sync=!1),ae&&!me.errored&&!me.destroyed}function x(le,me,de,Q,z,V,ae){me.writelen=Q,me.writecb=ae,me.writing=!0,me.sync=!0,me.destroyed?me.onwrite(new C("write")):de?le._writev(z,me.onwrite):le._write(z,V,me.onwrite),me.sync=!1}function W(le,me,de,Q){--me.pendingcb,Q(de),G(me),b(le,de)}function S(le,me){const de=le._writableState,Q=de.sync,z=de.writecb;if(typeof z!="function"){b(le,new k);return}de.writing=!1,de.writecb=null,de.length-=de.writelen,de.writelen=0,me?(me.stack,de.errored||(de.errored=me),le._readableState&&!le._readableState.errored&&(le._readableState.errored=me),Q?e.nextTick(W,le,de,me,z):W(le,de,me,z)):(de.buffered.length>de.bufferedIndex&&$(le,de),Q?de.afterWriteTickInfo!==null&&de.afterWriteTickInfo.cb===z?de.afterWriteTickInfo.count++:(de.afterWriteTickInfo={count:1,cb:z,stream:le,state:de},e.nextTick(B,de.afterWriteTickInfo)):q(le,de,1,z))}function B({stream:le,state:me,count:de,cb:Q}){return me.afterWriteTickInfo=null,q(le,me,de,Q)}function q(le,me,de,Q){for(!me.ending&&!le.destroyed&&me.length===0&&me.needDrain&&(me.needDrain=!1,le.emit("drain"));de-- >0;)me.pendingcb--,Q();me.destroyed&&G(me),ie(le,me)}function G(le){if(le.writing)return;for(let z=le.bufferedIndex;z<le.buffered.length;++z){var me;const{chunk:V,callback:ae}=le.buffered[z],Te=le.objectMode?1:V.length;le.length-=Te,ae((me=le.errored)!==null&&me!==void 0?me:new C("write"))}const de=le[m].splice(0);for(let z=0;z<de.length;z++){var Q;de[z]((Q=le.errored)!==null&&Q!==void 0?Q:new C("end"))}s(le)}function $(le,me){if(me.corked||me.bufferProcessing||me.destroyed||!me.constructed)return;const{buffered:de,bufferedIndex:Q,objectMode:z}=me,V=de.length-Q;if(!V)return;let ae=Q;if(me.bufferProcessing=!0,V>1&&le._writev){me.pendingcb-=V-1;const Te=me.allNoop?F:Ce=>{for(let We=ae;We<de.length;++We)de[We].callback(Ce)},Ie=me.allNoop&&ae===0?de:t(de,ae);Ie.allBuffers=me.allBuffers,x(le,me,!0,me.length,Ie,"",Te),s(me)}else{do{const{chunk:Te,encoding:Ie,callback:Ce}=de[ae];de[ae++]=null;const We=z?1:Te.length;x(le,me,!1,We,Te,Ie,Ce)}while(ae<de.length&&!me.writing);ae===de.length?s(me):ae>256?(de.splice(0,ae),me.bufferedIndex=0):me.bufferedIndex=ae}me.bufferProcessing=!1}T.prototype._write=function(le,me,de){if(this._writev)this._writev([{chunk:le,encoding:me}],de);else throw new p("_write()")},T.prototype._writev=null,T.prototype.end=function(le,me,de){const Q=this._writableState;typeof le=="function"?(de=le,le=null,me=null):typeof me=="function"&&(de=me,me=null);let z;if(le!=null){const V=v(this,le,me);V instanceof n&&(z=V)}return Q.corked&&(Q.corked=1,this.uncork()),z||(!Q.errored&&!Q.ending?(Q.ending=!0,ie(this,Q,!0),Q.ended=!0):Q.finished?z=new I("end"):Q.destroyed&&(z=new C("end"))),typeof de=="function"&&(z||Q.finished?e.nextTick(de,z):Q[m].push(de)),this};function ee(le){return le.ending&&!le.destroyed&&le.constructed&&le.length===0&&!le.errored&&le.buffered.length===0&&!le.finished&&!le.writing&&!le.errorEmitted&&!le.closeEmitted}function ue(le,me){let de=!1;function Q(z){if(de){b(le,z??k());return}if(de=!0,me.pendingcb--,z){const V=me[m].splice(0);for(let ae=0;ae<V.length;ae++)V[ae](z);b(le,z,me.sync)}else ee(me)&&(me.prefinished=!0,le.emit("prefinish"),me.pendingcb++,e.nextTick(ye,le,me))}me.sync=!0,me.pendingcb++;try{le._final(Q)}catch(z){Q(z)}me.sync=!1}function se(le,me){!me.prefinished&&!me.finalCalled&&(typeof le._final=="function"&&!me.destroyed?(me.finalCalled=!0,ue(le,me)):(me.prefinished=!0,le.emit("prefinish")))}function ie(le,me,de){ee(me)&&(se(le,me),me.pendingcb===0&&(de?(me.pendingcb++,e.nextTick((Q,z)=>{ee(z)?ye(Q,z):z.pendingcb--},le,me)):ee(me)&&(me.pendingcb++,ye(le,me))))}function ye(le,me){me.pendingcb--,me.finished=!0;const de=me[m].splice(0);for(let Q=0;Q<de.length;Q++)de[Q]();if(le.emit("finish"),me.autoDestroy){const Q=le._readableState;(!Q||Q.autoDestroy&&(Q.endEmitted||Q.readable===!1))&&le.destroy()}}d(T.prototype,{closed:{__proto__:null,get(){return this._writableState?this._writableState.closed:!1}},destroyed:{__proto__:null,get(){return this._writableState?this._writableState.destroyed:!1},set(le){this._writableState&&(this._writableState.destroyed=le)}},writable:{__proto__:null,get(){const le=this._writableState;return!!le&&le.writable!==!1&&!le.destroyed&&!le.errored&&!le.ending&&!le.ended},set(le){this._writableState&&(this._writableState.writable=!!le)}},writableFinished:{__proto__:null,get(){return this._writableState?this._writableState.finished:!1}},writableObjectMode:{__proto__:null,get(){return this._writableState?this._writableState.objectMode:!1}},writableBuffer:{__proto__:null,get(){return this._writableState&&this._writableState.getBuffer()}},writableEnded:{__proto__:null,get(){return this._writableState?this._writableState.ending:!1}},writableNeedDrain:{__proto__:null,get(){const le=this._writableState;return le?!le.destroyed&&!le.ending&&le.needDrain:!1}},writableHighWaterMark:{__proto__:null,get(){return this._writableState&&this._writableState.highWaterMark}},writableCorked:{__proto__:null,get(){return this._writableState?this._writableState.corked:0}},writableLength:{__proto__:null,get(){return this._writableState&&this._writableState.length}},errored:{__proto__:null,enumerable:!1,get(){return this._writableState?this._writableState.errored:null}},writableAborted:{__proto__:null,enumerable:!1,get:function(){return!!(this._writableState.writable!==!1&&(this._writableState.destroyed||this._writableState.errored)&&!this._writableState.finished)}}});const be=_.destroy;T.prototype.destroy=function(le,me){const de=this._writableState;return!de.destroyed&&(de.bufferedIndex<de.buffered.length||de[m].length)&&e.nextTick(G,de),be.call(this,le,me),this},T.prototype._undestroy=_.undestroy,T.prototype._destroy=function(le,me){me(le)},T.prototype[P.captureRejectionSymbol]=function(le){this.destroy(le)};let Ae;function pe(){return Ae===void 0&&(Ae={}),Ae}return T.fromWeb=function(le,me){return pe().newStreamWritableFromWritableStream(le,me)},T.toWeb=function(le){return pe().newWritableStreamFromStreamWritable(le)},Tc}var vc,_y;function iN(){if(_y)return vc;_y=1;const e=br(),t=gr(),{isReadable:n,isWritable:a,isIterable:l,isNodeStream:d,isReadableNodeStream:u,isWritableNodeStream:c,isDuplexNodeStream:w}=Tr(),U=vr(),{AbortError:P,codes:{ERR_INVALID_ARG_TYPE:O,ERR_INVALID_RETURN_VALUE:R}}=gn(),{destroyer:_}=os(),L=Ni(),g=Xa(),{createDeferredPromise:y}=ki(),h=_b(),p=globalThis.Blob||t.Blob,k=typeof p<"u"?function(b){return b instanceof p}:function(b){return!1},D=globalThis.AbortController||gf().AbortController,{FunctionPrototypeCall:C}=Kt();class I extends L{constructor(b){super(b),b?.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),b?.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}}vc=function E(b,F){if(w(b))return b;if(u(b))return f({readable:b});if(c(b))return f({writable:b});if(d(b))return f({writable:!1,readable:!1});if(typeof b=="function"){const{value:r,write:s,final:T,destroy:v}=A(b);if(l(r))return h(I,r,{objectMode:!0,write:s,final:T,destroy:v});const M=r?.then;if(typeof M=="function"){let x;const W=C(M,r,S=>{if(S!=null)throw new R("nully","body",S)},S=>{_(x,S)});return x=new I({objectMode:!0,readable:!1,write:s,final(S){T(async()=>{try{await W,e.nextTick(S,null)}catch(B){e.nextTick(S,B)}})},destroy:v})}throw new R("Iterable, AsyncIterable or AsyncFunction",F,r)}if(k(b))return E(b.arrayBuffer());if(l(b))return h(I,b,{objectMode:!0,writable:!1});if(typeof b?.writable=="object"||typeof b?.readable=="object"){const r=b!=null&&b.readable?u(b?.readable)?b?.readable:E(b.readable):void 0,s=b!=null&&b.writable?c(b?.writable)?b?.writable:E(b.writable):void 0;return f({readable:r,writable:s})}const m=b?.then;if(typeof m=="function"){let r;return C(m,b,s=>{s!=null&&r.push(s),r.push(null)},s=>{_(r,s)}),r=new I({objectMode:!0,writable:!1,read(){}})}throw new O(F,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],b)};function A(E){let{promise:b,resolve:F}=y();const m=new D,r=m.signal;return{value:E(async function*(){for(;;){const T=b;b=null;const{chunk:v,done:M,cb:x}=await T;if(e.nextTick(x),M)return;if(r.aborted)throw new P(void 0,{cause:r.reason});({promise:b,resolve:F}=y()),yield v}}(),{signal:r}),write(T,v,M){const x=F;F=null,x({chunk:T,done:!1,cb:M})},final(T){const v=F;F=null,v({done:!0,cb:T})},destroy(T,v){m.abort(),v(T)}}}function f(E){const b=E.readable&&typeof E.readable.read!="function"?g.wrap(E.readable):E.readable,F=E.writable;let m=!!n(b),r=!!a(F),s,T,v,M,x;function W(S){const B=M;M=null,B?B(S):S?x.destroy(S):!m&&!r&&x.destroy()}return x=new I({readableObjectMode:!!(b!=null&&b.readableObjectMode),writableObjectMode:!!(F!=null&&F.writableObjectMode),readable:m,writable:r}),r&&(U(F,S=>{r=!1,S&&_(b,S),W(S)}),x._write=function(S,B,q){F.write(S,B)?q():s=q},x._final=function(S){F.end(),T=S},F.on("drain",function(){if(s){const S=s;s=null,S()}}),F.on("finish",function(){if(T){const S=T;T=null,S()}})),m&&(U(b,S=>{m=!1,S&&_(b,S),W(S)}),b.on("readable",function(){if(v){const S=v;v=null,S()}}),b.on("end",function(){x.push(null)}),x._read=function(){for(;;){const S=b.read();if(S===null){v=x._read;return}if(!x.push(S))return}}),x._destroy=function(S,B){!S&&M!==null&&(S=new P),v=null,s=null,T=null,M===null?B(S):(M=B,_(F,S),_(b,S))},x}return vc}var Sc,ky;function Ni(){if(ky)return Sc;ky=1;const{ObjectDefineProperties:e,ObjectGetOwnPropertyDescriptor:t,ObjectKeys:n,ObjectSetPrototypeOf:a}=Kt();Sc=u;const l=Xa(),d=kb();a(u.prototype,l.prototype),a(u,l);{const P=n(d.prototype);for(let O=0;O<P.length;O++){const R=P[O];u.prototype[R]||(u.prototype[R]=d.prototype[R])}}function u(P){if(!(this instanceof u))return new u(P);l.call(this,P),d.call(this,P),P?(this.allowHalfOpen=P.allowHalfOpen!==!1,P.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),P.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)):this.allowHalfOpen=!0}e(u.prototype,{writable:{__proto__:null,...t(d.prototype,"writable")},writableHighWaterMark:{__proto__:null,...t(d.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...t(d.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...t(d.prototype,"writableBuffer")},writableLength:{__proto__:null,...t(d.prototype,"writableLength")},writableFinished:{__proto__:null,...t(d.prototype,"writableFinished")},writableCorked:{__proto__:null,...t(d.prototype,"writableCorked")},writableEnded:{__proto__:null,...t(d.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...t(d.prototype,"writableNeedDrain")},destroyed:{__proto__:null,get(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set(P){this._readableState&&this._writableState&&(this._readableState.destroyed=P,this._writableState.destroyed=P)}}});let c;function w(){return c===void 0&&(c={}),c}u.fromWeb=function(P,O){return w().newStreamDuplexFromReadableWritablePair(P,O)},u.toWeb=function(P){return w().newReadableWritablePairFromDuplex(P)};let U;return u.from=function(P){return U||(U=iN()),U(P,"body")},Sc}var wc,Ny;function Nb(){if(Ny)return wc;Ny=1;const{ObjectSetPrototypeOf:e,Symbol:t}=Kt();wc=u;const{ERR_METHOD_NOT_IMPLEMENTED:n}=gn().codes,a=Ni(),{getHighWaterMark:l}=Sf();e(u.prototype,a.prototype),e(u,a);const d=t("kCallback");function u(U){if(!(this instanceof u))return new u(U);const P=U?l(this,U,"readableHighWaterMark",!0):null;P===0&&(U={...U,highWaterMark:null,readableHighWaterMark:P,writableHighWaterMark:U.writableHighWaterMark||0}),a.call(this,U),this._readableState.sync=!1,this[d]=null,U&&(typeof U.transform=="function"&&(this._transform=U.transform),typeof U.flush=="function"&&(this._flush=U.flush)),this.on("prefinish",w)}function c(U){typeof this._flush=="function"&&!this.destroyed?this._flush((P,O)=>{if(P){U?U(P):this.destroy(P);return}O!=null&&this.push(O),this.push(null),U&&U()}):(this.push(null),U&&U())}function w(){this._final!==c&&c.call(this)}return u.prototype._final=c,u.prototype._transform=function(U,P,O){throw new n("_transform()")},u.prototype._write=function(U,P,O){const R=this._readableState,_=this._writableState,L=R.length;this._transform(U,P,(g,y)=>{if(g){O(g);return}y!=null&&this.push(y),_.ended||L===R.length||R.length<R.highWaterMark?O():this[d]=O})},u.prototype._read=function(){if(this[d]){const U=this[d];this[d]=null,U()}},wc}var Lc,Oy;function Ob(){if(Oy)return Lc;Oy=1;const{ObjectSetPrototypeOf:e}=Kt();Lc=n;const t=Nb();e(n.prototype,t.prototype),e(n,t);function n(a){if(!(this instanceof n))return new n(a);t.call(this,a)}return n.prototype._transform=function(a,l,d){d(null,a)},Lc}var _c,Cy;function wf(){if(Cy)return _c;Cy=1;const e=br(),{ArrayIsArray:t,Promise:n,SymbolAsyncIterator:a}=Kt(),l=vr(),{once:d}=ki(),u=os(),c=Ni(),{aggregateTwoErrors:w,codes:{ERR_INVALID_ARG_TYPE:U,ERR_INVALID_RETURN_VALUE:P,ERR_MISSING_ARGS:O,ERR_STREAM_DESTROYED:R,ERR_STREAM_PREMATURE_CLOSE:_},AbortError:L}=gn(),{validateFunction:g,validateAbortSignal:y}=Qa(),{isIterable:h,isReadable:p,isReadableNodeStream:k,isNodeStream:D}=Tr(),C=globalThis.AbortController||gf().AbortController;let I,A;function f(v,M,x){let W=!1;v.on("close",()=>{W=!0});const S=l(v,{readable:M,writable:x},B=>{W=!B});return{destroy:B=>{W||(W=!0,u.destroyer(v,B||new R("pipe")))},cleanup:S}}function E(v){return g(v[v.length-1],"streams[stream.length - 1]"),v.pop()}function b(v){if(h(v))return v;if(k(v))return F(v);throw new U("val",["Readable","Iterable","AsyncIterable"],v)}async function*F(v){A||(A=Xa()),yield*A.prototype[a].call(v)}async function m(v,M,x,{end:W}){let S,B=null;const q=ee=>{if(ee&&(S=ee),B){const ue=B;B=null,ue()}},G=()=>new n((ee,ue)=>{S?ue(S):B=()=>{S?ue(S):ee()}});M.on("drain",q);const $=l(M,{readable:!1},q);try{M.writableNeedDrain&&await G();for await(const ee of v)M.write(ee)||await G();W&&M.end(),await G(),x()}catch(ee){x(S!==ee?w(S,ee):ee)}finally{$(),M.off("drain",q)}}function r(...v){return s(v,d(E(v)))}function s(v,M,x){if(v.length===1&&t(v[0])&&(v=v[0]),v.length<2)throw new O("streams");const W=new C,S=W.signal,B=x?.signal,q=[];y(B,"options.signal");function G(){ye(new L)}B?.addEventListener("abort",G);let $,ee;const ue=[];let se=0;function ie(pe){ye(pe,--se===0)}function ye(pe,le){if(pe&&(!$||$.code==="ERR_STREAM_PREMATURE_CLOSE")&&($=pe),!(!$&&!le)){for(;ue.length;)ue.shift()($);B?.removeEventListener("abort",G),W.abort(),le&&($||q.forEach(me=>me()),e.nextTick(M,$,ee))}}let be;for(let pe=0;pe<v.length;pe++){const le=v[pe],me=pe<v.length-1,de=pe>0,Q=me||x?.end!==!1,z=pe===v.length-1;if(D(le)){let V=function(ae){ae&&ae.name!=="AbortError"&&ae.code!=="ERR_STREAM_PREMATURE_CLOSE"&&ie(ae)};if(Q){const{destroy:ae,cleanup:Te}=f(le,me,de);ue.push(ae),p(le)&&z&&q.push(Te)}le.on("error",V),p(le)&&z&&q.push(()=>{le.removeListener("error",V)})}if(pe===0)if(typeof le=="function"){if(be=le({signal:S}),!h(be))throw new P("Iterable, AsyncIterable or Stream","source",be)}else h(le)||k(le)?be=le:be=c.from(le);else if(typeof le=="function")if(be=b(be),be=le(be,{signal:S}),me){if(!h(be,!0))throw new P("AsyncIterable",`transform[${pe-1}]`,be)}else{var Ae;I||(I=Ob());const V=new I({objectMode:!0}),ae=(Ae=be)===null||Ae===void 0?void 0:Ae.then;if(typeof ae=="function")se++,ae.call(be,Ce=>{ee=Ce,Ce!=null&&V.write(Ce),Q&&V.end(),e.nextTick(ie)},Ce=>{V.destroy(Ce),e.nextTick(ie,Ce)});else if(h(be,!0))se++,m(be,V,ie,{end:Q});else throw new P("AsyncIterable or Promise","destination",be);be=V;const{destroy:Te,cleanup:Ie}=f(be,!1,!0);ue.push(Te),z&&q.push(Ie)}else if(D(le)){if(k(be)){se+=2;const V=T(be,le,ie,{end:Q});p(le)&&z&&q.push(V)}else if(h(be))se++,m(be,le,ie,{end:Q});else throw new U("val",["Readable","Iterable","AsyncIterable"],be);be=le}else be=c.from(le)}return(S!=null&&S.aborted||B!=null&&B.aborted)&&e.nextTick(G),be}function T(v,M,x,{end:W}){let S=!1;return M.on("close",()=>{S||x(new _)}),v.pipe(M,{end:W}),W?v.once("end",()=>{S=!0,M.end()}):x(),l(v,{readable:!0,writable:!1},B=>{const q=v._readableState;B&&B.code==="ERR_STREAM_PREMATURE_CLOSE"&&q&&q.ended&&!q.errored&&!q.errorEmitted?v.once("end",x).once("error",x):x(B)}),l(M,{readable:!1,writable:!0},x)}return _c={pipelineImpl:s,pipeline:r},_c}var kc,Ey;function rN(){if(Ey)return kc;Ey=1;const{pipeline:e}=wf(),t=Ni(),{destroyer:n}=os(),{isNodeStream:a,isReadable:l,isWritable:d}=Tr(),{AbortError:u,codes:{ERR_INVALID_ARG_VALUE:c,ERR_MISSING_ARGS:w}}=gn();return kc=function(...P){if(P.length===0)throw new w("streams");if(P.length===1)return t.from(P[0]);const O=[...P];if(typeof P[0]=="function"&&(P[0]=t.from(P[0])),typeof P[P.length-1]=="function"){const I=P.length-1;P[I]=t.from(P[I])}for(let I=0;I<P.length;++I)if(a(P[I])){if(I<P.length-1&&!l(P[I]))throw new c(`streams[${I}]`,O[I],"must be readable");if(I>0&&!d(P[I]))throw new c(`streams[${I}]`,O[I],"must be writable")}let R,_,L,g,y;function h(I){const A=g;g=null,A?A(I):I?y.destroy(I):!C&&!D&&y.destroy()}const p=P[0],k=e(P,h),D=!!d(p),C=!!l(k);return y=new t({writableObjectMode:!!(p!=null&&p.writableObjectMode),readableObjectMode:!!(k!=null&&k.writableObjectMode),writable:D,readable:C}),D&&(y._write=function(I,A,f){p.write(I,A)?f():R=f},y._final=function(I){p.end(),_=I},p.on("drain",function(){if(R){const I=R;R=null,I()}}),k.on("finish",function(){if(_){const I=_;_=null,I()}})),C&&(k.on("readable",function(){if(L){const I=L;L=null,I()}}),k.on("end",function(){y.push(null)}),y._read=function(){for(;;){const I=k.read();if(I===null){L=y._read;return}if(!y.push(I))return}}),y._destroy=function(I,A){!I&&g!==null&&(I=new u),L=null,R=null,_=null,g===null?A(I):(g=A,n(k,I))},y},kc}var Nc,Ay;function Cb(){if(Ay)return Nc;Ay=1;const{ArrayPrototypePop:e,Promise:t}=Kt(),{isIterable:n,isNodeStream:a}=Tr(),{pipelineImpl:l}=wf(),{finished:d}=vr();function u(...c){return new t((w,U)=>{let P,O;const R=c[c.length-1];if(R&&typeof R=="object"&&!a(R)&&!n(R)){const _=e(c);P=_.signal,O=_.end}l(c,(_,L)=>{_?U(_):w(L)},{signal:P,end:O})})}return Nc={finished:d,pipeline:u},Nc}var Fy;function sN(){if(Fy)return nc.exports;Fy=1;const{Buffer:e}=gr(),{ObjectDefineProperty:t,ObjectKeys:n,ReflectApply:a}=Kt(),{promisify:{custom:l}}=ki(),{streamReturningOperators:d,promiseReturningOperators:u}=Yk(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:c}}=gn(),w=rN(),{pipeline:U}=wf(),{destroyer:P}=os(),O=vr(),R=Cb(),_=Tr(),L=nc.exports=Tf().Stream;L.isDisturbed=_.isDisturbed,L.isErrored=_.isErrored,L.isReadable=_.isReadable,L.Readable=Xa();for(const y of n(d)){let p=function(...k){if(new.target)throw c();return L.Readable.from(a(h,this,k))};const h=d[y];t(p,"name",{__proto__:null,value:h.name}),t(p,"length",{__proto__:null,value:h.length}),t(L.Readable.prototype,y,{__proto__:null,value:p,enumerable:!1,configurable:!0,writable:!0})}for(const y of n(u)){let p=function(...k){if(new.target)throw c();return a(h,this,k)};const h=u[y];t(p,"name",{__proto__:null,value:h.name}),t(p,"length",{__proto__:null,value:h.length}),t(L.Readable.prototype,y,{__proto__:null,value:p,enumerable:!1,configurable:!0,writable:!0})}L.Writable=kb(),L.Duplex=Ni(),L.Transform=Nb(),L.PassThrough=Ob(),L.pipeline=U;const{addAbortSignal:g}=vf();return L.addAbortSignal=g,L.finished=O,L.destroy=P,L.compose=w,t(L,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return R}}),t(U,l,{__proto__:null,enumerable:!0,get(){return R.pipeline}}),t(O,l,{__proto__:null,enumerable:!0,get(){return R.finished}}),L.Stream=L,L._isUint8Array=function(h){return h instanceof Uint8Array},L._uint8ArrayToBuffer=function(h){return e.from(h.buffer,h.byteOffset,h.byteLength)},nc.exports}var Py;function oN(){return Py||(Py=1,function(e){const t=sN(),n=Cb(),a=t.Readable.destroy;e.exports=t.Readable,e.exports._uint8ArrayToBuffer=t._uint8ArrayToBuffer,e.exports._isUint8Array=t._isUint8Array,e.exports.isDisturbed=t.isDisturbed,e.exports.isErrored=t.isErrored,e.exports.isReadable=t.isReadable,e.exports.Readable=t.Readable,e.exports.Writable=t.Writable,e.exports.Duplex=t.Duplex,e.exports.Transform=t.Transform,e.exports.PassThrough=t.PassThrough,e.exports.addAbortSignal=t.addAbortSignal,e.exports.finished=t.finished,e.exports.destroy=t.destroy,e.exports.destroy=a,e.exports.pipeline=t.pipeline,e.exports.compose=t.compose,Object.defineProperty(t,"promises",{configurable:!0,enumerable:!0,get(){return n}}),e.exports.Stream=t.Stream,e.exports.default=e.exports}(tc)),tc.exports}var Iy;function aN(){if(Iy)return ca;Iy=1,Object.defineProperty(ca,"__esModule",{value:!0});const e=oN();function t(n){n=Object.assign({},n);const a=n.array;let l=n.encoding;const d=l==="buffer";let u=!1;a?u=!(l||d):l=l||"utf8",d&&(l=void 0);let c=0;const w=[],U=new e.PassThrough({objectMode:u});return l&&U.setEncoding(l),U.on("data",P=>{w.push(P),u?c=w.length:c+=P.length}),U.getBufferedValue=()=>a?w:d?Buffer.concat(w,c):w.join(""),U.getBufferedLength=()=>c,U}return ca.default=t,ca}var Ry;function Eb(){if(Ry)return ni;Ry=1;var e=ni.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(ni,"__esModule",{value:!0}),ni.array=ni.buffer=ni.getStream=void 0;const t=e(aN());function n(d,u={}){if(!d)return Promise.reject(new Error("Expected a stream"));u=Object.assign({maxBuffer:1/0},u);const c=u.maxBuffer||1/0;let w,U;const P=new Promise((O,R)=>{const _=L=>{L&&(L.bufferedData=w.getBufferedValue()),R(L)};w=(0,t.default)(u),d.once("error",_),d.pipe(w),w.on("data",()=>{w.getBufferedLength()>c&&R(new Error("maxBuffer exceeded"))}),w.once("error",_),w.on("end",O),U=()=>{d.unpipe&&d.unpipe(w)}});return P.then(U,U),P.then(()=>w.getBufferedValue())}ni.getStream=n;function a(d,u={}){n(d,Object.assign({},u,{encoding:"buffer"}))}ni.buffer=a;function l(d,u={}){n(d,Object.assign({},u,{array:!0}))}return ni.array=l,ni}var Bn={};const uN={},lN=Object.freeze(Object.defineProperty({__proto__:null,default:uN},Symbol.toStringTag,{value:"Module"})),cN=Bc(lN);var ji={},My;function fN(){if(My)return ji;My=1,Object.defineProperty(ji,"__esModule",{value:!0});var e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(u){return typeof u}:function(u){return u&&typeof Symbol=="function"&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u},t=typeof window<"u"&&typeof window.document<"u",n=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,a=(typeof self>"u"?"undefined":e(self))==="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope",l=typeof window<"u"&&window.name==="nodejs"||typeof navigator<"u"&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),d=typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u";return ji.isBrowser=t,ji.isWebWorker=a,ji.isNode=n,ji.isJsDom=l,ji.isDeno=d,ji}var Oc={},xs={},Dy;function dN(){if(Dy)return xs;Dy=1,Object.defineProperty(xs,"__esModule",{value:!0}),xs.DefaultMap=void 0;class e extends Map{constructor(n,a){super(a),this._defaultFunc=n}get(n){let a=super.get(n);if(a===void 0){if(this.has(n))return a;a=this._defaultFunc(n),this.set(n,a)}return a}update(n,a){const l=a(this.get(n));return this.set(n,l),l}}return xs.DefaultMap=e,xs}var By;function hN(){return By||(By=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DefaultMap=e.exceptionToError=e.exceptionToString=e.filterUndefined=e.mapFilterUndefined=e.hasOwnProperty=e.isEnumValue=e.definedMap=e.reduceTwo=e.sleep=e.dontAwait=e.defined=e.assertNever=e.assert=e.panic=e.proveNever=e.proveType=void 0;function t(p){}e.proveType=t;function n(p,k,D){return console.trace(k),D}e.proveNever=n;function a(p="This should not happen"){console.trace(p);debugger;throw new Error(p)}e.panic=a;function l(p,k="Assertion failed"){if(!p)return a(k)}e.assert=l;function d(p,k="`never` happened"){return a(k)}e.assertNever=d;function u(p,k){return p===void 0?a("Value was undefined but should be defined"+(k!==void 0?` because: ${k}`:"")):p}e.defined=u;function c(p){p instanceof Promise&&p.catch(k=>{throw console.trace("Unhandled error from unawaited promise",k),k})}e.dontAwait=c;function w(p){return new Promise(k=>{setTimeout(k,p)})}e.sleep=w;function U(p,k,D){return p===void 0?k:k===void 0?p:D(p,k)}e.reduceTwo=U;function P(p,k){if(p!==void 0)return k(p)}e.definedMap=P;function O(p,k){return Object.keys(p).map(D=>p[D]).some(D=>D===k)}e.isEnumValue=O;function R(p,k){return p==null?!1:Object.prototype.hasOwnProperty.call(p,k)}e.hasOwnProperty=R;function _(p,k){const D=[];let C=0;for(const I of p){const A=k(I,C);C+=1,A!==void 0&&D.push(A)}return D}e.mapFilterUndefined=_;function L(p){const k=[];for(const D of p)D!==void 0&&k.push(D);return k}e.filterUndefined=L;function g(p){if(p===void 0)return"";try{return p.toString()}catch(k){try{return`Exception can't be stringified: ${g(k)}`}catch{return"Exception can't be stringified"}}}e.exceptionToString=g;function y(p){return p instanceof Error?p:new Error(g(p))}e.exceptionToError=y;var h=dN();Object.defineProperty(e,"DefaultMap",{enumerable:!0,get:function(){return h.DefaultMap}})}(Oc)),Oc}var Cc,jy;function pN(){if(jy)return Cc;jy=1,Cc=a;var e=/^(?:\w+:)?\/\/(\S+)$/,t=/^localhost[\:?\d]*(?:[^\:?\d]\S*)?$/,n=/^[^\s\.]+\.\S{2,}$/;function a(l){if(typeof l!="string")return!1;var d=l.match(e);if(!d)return!1;var u=d[1];return u?!!(t.test(u)||n.test(u)):!1}return Cc}var Hs={exports:{}},mN=Hs.exports,Uy;function yN(){return Uy||(Uy=1,function(e,t){var n=typeof self<"u"?self:mN,a=function(){function d(){this.fetch=!1,this.DOMException=n.DOMException}return d.prototype=n,new d}();(function(d){(function(u){var c={searchParams:"URLSearchParams"in d,iterable:"Symbol"in d&&"iterator"in Symbol,blob:"FileReader"in d&&"Blob"in d&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in d,arrayBuffer:"ArrayBuffer"in d};function w(s){return s&&DataView.prototype.isPrototypeOf(s)}if(c.arrayBuffer)var U=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],P=ArrayBuffer.isView||function(s){return s&&U.indexOf(Object.prototype.toString.call(s))>-1};function O(s){if(typeof s!="string"&&(s=String(s)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(s))throw new TypeError("Invalid character in header field name");return s.toLowerCase()}function R(s){return typeof s!="string"&&(s=String(s)),s}function _(s){var T={next:function(){var v=s.shift();return{done:v===void 0,value:v}}};return c.iterable&&(T[Symbol.iterator]=function(){return T}),T}function L(s){this.map={},s instanceof L?s.forEach(function(T,v){this.append(v,T)},this):Array.isArray(s)?s.forEach(function(T){this.append(T[0],T[1])},this):s&&Object.getOwnPropertyNames(s).forEach(function(T){this.append(T,s[T])},this)}L.prototype.append=function(s,T){s=O(s),T=R(T);var v=this.map[s];this.map[s]=v?v+", "+T:T},L.prototype.delete=function(s){delete this.map[O(s)]},L.prototype.get=function(s){return s=O(s),this.has(s)?this.map[s]:null},L.prototype.has=function(s){return this.map.hasOwnProperty(O(s))},L.prototype.set=function(s,T){this.map[O(s)]=R(T)},L.prototype.forEach=function(s,T){for(var v in this.map)this.map.hasOwnProperty(v)&&s.call(T,this.map[v],v,this)},L.prototype.keys=function(){var s=[];return this.forEach(function(T,v){s.push(v)}),_(s)},L.prototype.values=function(){var s=[];return this.forEach(function(T){s.push(T)}),_(s)},L.prototype.entries=function(){var s=[];return this.forEach(function(T,v){s.push([v,T])}),_(s)},c.iterable&&(L.prototype[Symbol.iterator]=L.prototype.entries);function g(s){if(s.bodyUsed)return Promise.reject(new TypeError("Already read"));s.bodyUsed=!0}function y(s){return new Promise(function(T,v){s.onload=function(){T(s.result)},s.onerror=function(){v(s.error)}})}function h(s){var T=new FileReader,v=y(T);return T.readAsArrayBuffer(s),v}function p(s){var T=new FileReader,v=y(T);return T.readAsText(s),v}function k(s){for(var T=new Uint8Array(s),v=new Array(T.length),M=0;M<T.length;M++)v[M]=String.fromCharCode(T[M]);return v.join("")}function D(s){if(s.slice)return s.slice(0);var T=new Uint8Array(s.byteLength);return T.set(new Uint8Array(s)),T.buffer}function C(){return this.bodyUsed=!1,this._initBody=function(s){this._bodyInit=s,s?typeof s=="string"?this._bodyText=s:c.blob&&Blob.prototype.isPrototypeOf(s)?this._bodyBlob=s:c.formData&&FormData.prototype.isPrototypeOf(s)?this._bodyFormData=s:c.searchParams&&URLSearchParams.prototype.isPrototypeOf(s)?this._bodyText=s.toString():c.arrayBuffer&&c.blob&&w(s)?(this._bodyArrayBuffer=D(s.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):c.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(s)||P(s))?this._bodyArrayBuffer=D(s):this._bodyText=s=Object.prototype.toString.call(s):this._bodyText="",this.headers.get("content-type")||(typeof s=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):c.searchParams&&URLSearchParams.prototype.isPrototypeOf(s)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},c.blob&&(this.blob=function(){var s=g(this);if(s)return s;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?g(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(h)}),this.text=function(){var s=g(this);if(s)return s;if(this._bodyBlob)return p(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(k(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},c.formData&&(this.formData=function(){return this.text().then(E)}),this.json=function(){return this.text().then(JSON.parse)},this}var I=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function A(s){var T=s.toUpperCase();return I.indexOf(T)>-1?T:s}function f(s,T){T=T||{};var v=T.body;if(s instanceof f){if(s.bodyUsed)throw new TypeError("Already read");this.url=s.url,this.credentials=s.credentials,T.headers||(this.headers=new L(s.headers)),this.method=s.method,this.mode=s.mode,this.signal=s.signal,!v&&s._bodyInit!=null&&(v=s._bodyInit,s.bodyUsed=!0)}else this.url=String(s);if(this.credentials=T.credentials||this.credentials||"same-origin",(T.headers||!this.headers)&&(this.headers=new L(T.headers)),this.method=A(T.method||this.method||"GET"),this.mode=T.mode||this.mode||null,this.signal=T.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&v)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(v)}f.prototype.clone=function(){return new f(this,{body:this._bodyInit})};function E(s){var T=new FormData;return s.trim().split("&").forEach(function(v){if(v){var M=v.split("="),x=M.shift().replace(/\+/g," "),W=M.join("=").replace(/\+/g," ");T.append(decodeURIComponent(x),decodeURIComponent(W))}}),T}function b(s){var T=new L,v=s.replace(/\r?\n[\t ]+/g," ");return v.split(/\r?\n/).forEach(function(M){var x=M.split(":"),W=x.shift().trim();if(W){var S=x.join(":").trim();T.append(W,S)}}),T}C.call(f.prototype);function F(s,T){T||(T={}),this.type="default",this.status=T.status===void 0?200:T.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in T?T.statusText:"OK",this.headers=new L(T.headers),this.url=T.url||"",this._initBody(s)}C.call(F.prototype),F.prototype.clone=function(){return new F(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new L(this.headers),url:this.url})},F.error=function(){var s=new F(null,{status:0,statusText:""});return s.type="error",s};var m=[301,302,303,307,308];F.redirect=function(s,T){if(m.indexOf(T)===-1)throw new RangeError("Invalid status code");return new F(null,{status:T,headers:{location:s}})},u.DOMException=d.DOMException;try{new u.DOMException}catch{u.DOMException=function(T,v){this.message=T,this.name=v;var M=Error(T);this.stack=M.stack},u.DOMException.prototype=Object.create(Error.prototype),u.DOMException.prototype.constructor=u.DOMException}function r(s,T){return new Promise(function(v,M){var x=new f(s,T);if(x.signal&&x.signal.aborted)return M(new u.DOMException("Aborted","AbortError"));var W=new XMLHttpRequest;function S(){W.abort()}W.onload=function(){var B={status:W.status,statusText:W.statusText,headers:b(W.getAllResponseHeaders()||"")};B.url="responseURL"in W?W.responseURL:B.headers.get("X-Request-URL");var q="response"in W?W.response:W.responseText;v(new F(q,B))},W.onerror=function(){M(new TypeError("Network request failed"))},W.ontimeout=function(){M(new TypeError("Network request failed"))},W.onabort=function(){M(new u.DOMException("Aborted","AbortError"))},W.open(x.method,x.url,!0),x.credentials==="include"?W.withCredentials=!0:x.credentials==="omit"&&(W.withCredentials=!1),"responseType"in W&&c.blob&&(W.responseType="blob"),x.headers.forEach(function(B,q){W.setRequestHeader(q,B)}),x.signal&&(x.signal.addEventListener("abort",S),W.onreadystatechange=function(){W.readyState===4&&x.signal.removeEventListener("abort",S)}),W.send(typeof x._bodyInit>"u"?null:x._bodyInit)})}return r.polyfill=!0,d.fetch||(d.fetch=r,d.Headers=L,d.Request=f,d.Response=F),u.Headers=L,u.Request=f,u.Response=F,u.fetch=r,Object.defineProperty(u,"__esModule",{value:!0}),u})({})})(a),a.fetch.ponyfill=!0,delete a.fetch.polyfill;var l=a;t=l.fetch,t.default=l.fetch,t.fetch=l.fetch,t.Headers=l.Headers,t.Request=l.Request,t.Response=l.Response,e.exports=t}(Hs,Hs.exports)),Hs.exports}var xy;function Ab(){if(xy)return Bn;xy=1;var e=Bn.__createBinding||(Object.create?function(g,y,h,p){p===void 0&&(p=h);var k=Object.getOwnPropertyDescriptor(y,h);(!k||("get"in k?!y.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return y[h]}}),Object.defineProperty(g,p,k)}:function(g,y,h,p){p===void 0&&(p=h),g[p]=y[h]}),t=Bn.__setModuleDefault||(Object.create?function(g,y){Object.defineProperty(g,"default",{enumerable:!0,value:y})}:function(g,y){g.default=y}),n=Bn.__importStar||function(g){if(g&&g.__esModule)return g;var y={};if(g!=null)for(var h in g)h!=="default"&&Object.prototype.hasOwnProperty.call(g,h)&&e(y,g,h);return t(y,g),y},a=Bn.__awaiter||function(g,y,h,p){function k(D){return D instanceof h?D:new h(function(C){C(D)})}return new(h||(h=Promise))(function(D,C){function I(E){try{f(p.next(E))}catch(b){C(b)}}function A(E){try{f(p.throw(E))}catch(b){C(b)}}function f(E){E.done?D(E.value):k(E.value).then(I,A)}f((p=p.apply(g,y||[])).next())})},l=Bn.__importDefault||function(g){return g&&g.__esModule?g:{default:g}};Object.defineProperty(Bn,"__esModule",{value:!0}),Bn.readFromFileOrURL=Bn.readableFromFileOrURL=void 0;const d=n(cN),u=fN(),c=Eb(),w=hN(),U=Ya(),P=pN(),O=l(yN());function R(g){return Array.isArray(g)?g.reduce(function(y,h){if(h!==void 0&&h.length>0){const p=h.indexOf(":");if(p<0)return(0,U.panic)(`Could not parse HTTP header "${h}".`);const k=h.slice(0,p).trim(),D=h.slice(p+1).trim();y[k]=D}return y},{}):{}}function _(g,y){return a(this,void 0,void 0,function*(){try{if(P(g)){const h=yield(0,O.default)(g,{headers:R(y)});return(0,w.defined)(h.body)}else if(u.isNode){if(g==="-")return process.stdin;const h=d.lstatSync(g).isSymbolicLink()?d.readlinkSync(g):g;if(d.existsSync(h))return d.createReadStream(h,"utf8")}}catch(h){return(0,U.messageError)("MiscReadError",{fileOrURL:g,message:(0,w.exceptionToString)(h)})}return(0,U.messageError)("DriverInputFileDoesNotExist",{filename:g})})}Bn.readableFromFileOrURL=_;function L(g,y){return a(this,void 0,void 0,function*(){const h=yield _(g,y);try{return yield(0,c.getStream)(h)}catch(p){return(0,U.messageError)("MiscReadError",{fileOrURL:g,message:(0,w.exceptionToString)(p)})}})}return Bn.readFromFileOrURL=L,Bn}var Jr={},zy;function gN(){if(zy)return Jr;zy=1;var e=Jr.__awaiter||function(d,u,c,w){function U(P){return P instanceof c?P:new c(function(O){O(P)})}return new(c||(c=Promise))(function(P,O){function R(g){try{L(w.next(g))}catch(y){O(y)}}function _(g){try{L(w.throw(g))}catch(y){O(y)}}function L(g){g.done?P(g.value):U(g.value).then(R,_)}L((w=w.apply(d,u||[])).next())})};Object.defineProperty(Jr,"__esModule",{value:!0}),Jr.FetchingJSONSchemaStore=void 0;const t=df(),n=Ya(),a=Ab();let l=class extends t.JSONSchemaStore{constructor(u){super(),this._httpHeaders=u}fetch(u){return e(this,void 0,void 0,function*(){return(0,n.parseJSON)(yield(0,a.readFromFileOrURL)(u,this._httpHeaders),"JSON Schema",u)})}};return Jr.FetchingJSONSchemaStore=l,Jr}var zs={},Wy;function bN(){if(Wy)return zs;Wy=1,Object.defineProperty(zs,"__esModule",{value:!0}),zs.sourcesFromPostmanCollection=void 0;const e=Qe();function t(a){try{return JSON.parse(a),!0}catch{return!1}}function n(a,l){const d=[],u=[];function c(P){if(typeof P=="object"){if(Array.isArray(P.item)){for(const O of P.item)c(O);typeof P.info=="object"&&typeof P.info.description=="string"&&u.push(P.info.description)}if(typeof P.name=="string"&&Array.isArray(P.response)){const O=[];for(const R of P.response)typeof R=="object"&&typeof R.body=="string"&&t(R.body)&&O.push(R.body);if(O.length>0){const R={name:P.name,samples:O},_=[P.name];if(typeof P.request=="object"){const{method:L,url:g}=P.request;L!==void 0&&typeof g=="object"&&g.raw!==void 0&&_.push(`${L} ${g.raw}`)}typeof P.request=="object"&&typeof P.request.description=="string"&&_.push(P.request.description),R.description=_.length===0?void 0:_.join(`
1003
+
1004
+ `),d.push(R)}}}}c((0,e.parseJSON)(a,"Postman collection",l));const w=u.join(`
1005
+
1006
+ `).trim();let U;return w!==""&&(U=w),{sources:d,description:U}}return zs.sourcesFromPostmanCollection=n,zs}var qy;function Ya(){return qy||(qy=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ClassType=e.ArrayType=e.PrimitiveType=e.Type=e.messageAssert=e.messageError=e.QuickTypeError=e.trainMarkovChain=e.isLetterOrDigit=e.legalizeCharacters=e.allUpperWordStyle=e.firstUpperWordStyle=e.combineWords=e.capitalize=e.splitIntoWords=e.inflateBase64=e.checkArray=e.checkStringMap=e.parseJSON=e.assertNever=e.defined=e.assert=e.panic=e.IssueAnnotationData=e.Namer=e.funPrefixNamer=e.Name=e.parenIfNeeded=e.singleWord=e.modifySource=e.languageNamed=e.defaultTargetLanguages=e.TargetLanguage=e.getOptionValues=e.Option=e.Ref=e.JSONSchemaInput=e.jsonInputForTargetLanguage=e.JSONInput=e.InputData=e.CompressedJSON=e.inferenceFlagsObject=e.defaultInferenceFlags=e.inferenceFlagNames=e.inferenceFlags=e.combineRenderResults=e.quicktype=e.quicktypeMultiFileSync=e.quicktypeMultiFile=e.getTargetLanguage=void 0,e.TypeScriptRenderer=e.TypeScriptTargetLanguage=e.javaScriptPropTypesOptions=e.JavaScriptPropTypesRenderer=e.JavaScriptPropTypesTargetLanguage=e.javaScriptOptions=e.JavaScriptRenderer=e.JavaScriptTargetLanguage=e.javaOptions=e.JavaRenderer=e.JavaTargetLanguage=e.objcOptions=e.ObjectiveCRenderer=e.ObjectiveCTargetLanguage=e.goOptions=e.GoRenderer=e.GoTargetLanguage=e.pythonOptions=e.PythonRenderer=e.PythonTargetLanguage=e.CSharpRenderer=e.cSharpOptions=e.CSharpTargetLanguage=e.cPlusPlusOptions=e.CPlusPlusRenderer=e.CPlusPlusTargetLanguage=e.uriTypeAttributeKind=e.ConvenienceRenderer=e.nullableFromUnion=e.matchType=e.removeNullFromUnion=e.StringTypes=e.namesTypeAttributeKind=e.makeNamesTypeAttributes=e.TypeNames=e.emptyTypeAttributes=e.TypeAttributeKind=e.derefTypeRef=e.TypeBuilder=e.sourcesFromPostmanCollection=e.JSONSchemaStore=e.FetchingJSONSchemaStore=e.readFromFileOrURL=e.readableFromFileOrURL=e.getStream=e.ObjectType=e.UnionType=e.MapType=e.EnumType=e.ClassProperty=void 0,e.dartOptions=e.DartRenderer=e.DartTargetLanguage=e.haskellOptions=e.HaskellRenderer=e.HaskellTargetLanguage=e.CrystalRenderer=e.CrystalTargetLanguage=e.rubyOptions=e.RubyRenderer=e.RubyTargetLanguage=e.rustOptions=e.RustRenderer=e.RustTargetLanguage=e.JSONSchemaRenderer=e.JSONSchemaTargetLanguage=e.elmOptions=e.ElmRenderer=e.ElmTargetLanguage=e.kotlinOptions=e.KotlinRenderer=e.KotlinTargetLanguage=e.swiftOptions=e.SwiftRenderer=e.SwiftTargetLanguage=e.tsFlowOptions=e.FlowRenderer=e.FlowTargetLanguage=void 0;var t=Qk();Object.defineProperty(e,"getTargetLanguage",{enumerable:!0,get:function(){return t.getTargetLanguage}}),Object.defineProperty(e,"quicktypeMultiFile",{enumerable:!0,get:function(){return t.quicktypeMultiFile}}),Object.defineProperty(e,"quicktypeMultiFileSync",{enumerable:!0,get:function(){return t.quicktypeMultiFileSync}}),Object.defineProperty(e,"quicktype",{enumerable:!0,get:function(){return t.quicktype}}),Object.defineProperty(e,"combineRenderResults",{enumerable:!0,get:function(){return t.combineRenderResults}}),Object.defineProperty(e,"inferenceFlags",{enumerable:!0,get:function(){return t.inferenceFlags}}),Object.defineProperty(e,"inferenceFlagNames",{enumerable:!0,get:function(){return t.inferenceFlagNames}}),Object.defineProperty(e,"defaultInferenceFlags",{enumerable:!0,get:function(){return t.defaultInferenceFlags}}),Object.defineProperty(e,"inferenceFlagsObject",{enumerable:!0,get:function(){return t.inferenceFlagsObject}});var n=yf();Object.defineProperty(e,"CompressedJSON",{enumerable:!0,get:function(){return n.CompressedJSON}});var a=wb();Object.defineProperty(e,"InputData",{enumerable:!0,get:function(){return a.InputData}}),Object.defineProperty(e,"JSONInput",{enumerable:!0,get:function(){return a.JSONInput}}),Object.defineProperty(e,"jsonInputForTargetLanguage",{enumerable:!0,get:function(){return a.jsonInputForTargetLanguage}});var l=Dc();Object.defineProperty(e,"JSONSchemaInput",{enumerable:!0,get:function(){return l.JSONSchemaInput}});var d=Dc();Object.defineProperty(e,"Ref",{enumerable:!0,get:function(){return d.Ref}});var u=zt();Object.defineProperty(e,"Option",{enumerable:!0,get:function(){return u.Option}}),Object.defineProperty(e,"getOptionValues",{enumerable:!0,get:function(){return u.getOptionValues}});var c=qt();Object.defineProperty(e,"TargetLanguage",{enumerable:!0,get:function(){return c.TargetLanguage}});var w=Za();Object.defineProperty(e,"defaultTargetLanguages",{enumerable:!0,get:function(){return w.all}}),Object.defineProperty(e,"languageNamed",{enumerable:!0,get:function(){return w.languageNamed}});var U=Bt();Object.defineProperty(e,"modifySource",{enumerable:!0,get:function(){return U.modifySource}}),Object.defineProperty(e,"singleWord",{enumerable:!0,get:function(){return U.singleWord}}),Object.defineProperty(e,"parenIfNeeded",{enumerable:!0,get:function(){return U.parenIfNeeded}});var P=Ft();Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return P.Name}}),Object.defineProperty(e,"funPrefixNamer",{enumerable:!0,get:function(){return P.funPrefixNamer}}),Object.defineProperty(e,"Namer",{enumerable:!0,get:function(){return P.Namer}});var O=On();Object.defineProperty(e,"IssueAnnotationData",{enumerable:!0,get:function(){return O.IssueAnnotationData}});var R=Qe();Object.defineProperty(e,"panic",{enumerable:!0,get:function(){return R.panic}}),Object.defineProperty(e,"assert",{enumerable:!0,get:function(){return R.assert}}),Object.defineProperty(e,"defined",{enumerable:!0,get:function(){return R.defined}}),Object.defineProperty(e,"assertNever",{enumerable:!0,get:function(){return R.assertNever}}),Object.defineProperty(e,"parseJSON",{enumerable:!0,get:function(){return R.parseJSON}}),Object.defineProperty(e,"checkStringMap",{enumerable:!0,get:function(){return R.checkStringMap}}),Object.defineProperty(e,"checkArray",{enumerable:!0,get:function(){return R.checkArray}}),Object.defineProperty(e,"inflateBase64",{enumerable:!0,get:function(){return R.inflateBase64}});var _=Nt();Object.defineProperty(e,"splitIntoWords",{enumerable:!0,get:function(){return _.splitIntoWords}}),Object.defineProperty(e,"capitalize",{enumerable:!0,get:function(){return _.capitalize}}),Object.defineProperty(e,"combineWords",{enumerable:!0,get:function(){return _.combineWords}}),Object.defineProperty(e,"firstUpperWordStyle",{enumerable:!0,get:function(){return _.firstUpperWordStyle}}),Object.defineProperty(e,"allUpperWordStyle",{enumerable:!0,get:function(){return _.allUpperWordStyle}}),Object.defineProperty(e,"legalizeCharacters",{enumerable:!0,get:function(){return _.legalizeCharacters}}),Object.defineProperty(e,"isLetterOrDigit",{enumerable:!0,get:function(){return _.isLetterOrDigit}});var L=Sb();Object.defineProperty(e,"trainMarkovChain",{enumerable:!0,get:function(){return L.train}});var g=yn();Object.defineProperty(e,"QuickTypeError",{enumerable:!0,get:function(){return g.QuickTypeError}}),Object.defineProperty(e,"messageError",{enumerable:!0,get:function(){return g.messageError}}),Object.defineProperty(e,"messageAssert",{enumerable:!0,get:function(){return g.messageAssert}});var y=mt();Object.defineProperty(e,"Type",{enumerable:!0,get:function(){return y.Type}}),Object.defineProperty(e,"PrimitiveType",{enumerable:!0,get:function(){return y.PrimitiveType}}),Object.defineProperty(e,"ArrayType",{enumerable:!0,get:function(){return y.ArrayType}}),Object.defineProperty(e,"ClassType",{enumerable:!0,get:function(){return y.ClassType}}),Object.defineProperty(e,"ClassProperty",{enumerable:!0,get:function(){return y.ClassProperty}}),Object.defineProperty(e,"EnumType",{enumerable:!0,get:function(){return y.EnumType}}),Object.defineProperty(e,"MapType",{enumerable:!0,get:function(){return y.MapType}}),Object.defineProperty(e,"UnionType",{enumerable:!0,get:function(){return y.UnionType}}),Object.defineProperty(e,"ObjectType",{enumerable:!0,get:function(){return y.ObjectType}});var h=Eb();Object.defineProperty(e,"getStream",{enumerable:!0,get:function(){return h.getStream}});var p=Ab();Object.defineProperty(e,"readableFromFileOrURL",{enumerable:!0,get:function(){return p.readableFromFileOrURL}}),Object.defineProperty(e,"readFromFileOrURL",{enumerable:!0,get:function(){return p.readFromFileOrURL}});var k=gN();Object.defineProperty(e,"FetchingJSONSchemaStore",{enumerable:!0,get:function(){return k.FetchingJSONSchemaStore}});var D=df();Object.defineProperty(e,"JSONSchemaStore",{enumerable:!0,get:function(){return D.JSONSchemaStore}});var C=bN();Object.defineProperty(e,"sourcesFromPostmanCollection",{enumerable:!0,get:function(){return C.sourcesFromPostmanCollection}});var I=ss();Object.defineProperty(e,"TypeBuilder",{enumerable:!0,get:function(){return I.TypeBuilder}});var A=Xn();Object.defineProperty(e,"derefTypeRef",{enumerable:!0,get:function(){return A.derefTypeRef}});var f=At();Object.defineProperty(e,"TypeAttributeKind",{enumerable:!0,get:function(){return f.TypeAttributeKind}}),Object.defineProperty(e,"emptyTypeAttributes",{enumerable:!0,get:function(){return f.emptyTypeAttributes}});var E=qi();Object.defineProperty(e,"TypeNames",{enumerable:!0,get:function(){return E.TypeNames}}),Object.defineProperty(e,"makeNamesTypeAttributes",{enumerable:!0,get:function(){return E.makeNamesTypeAttributes}}),Object.defineProperty(e,"namesTypeAttributeKind",{enumerable:!0,get:function(){return E.namesTypeAttributeKind}});var b=Oi();Object.defineProperty(e,"StringTypes",{enumerable:!0,get:function(){return b.StringTypes}});var F=pt();Object.defineProperty(e,"removeNullFromUnion",{enumerable:!0,get:function(){return F.removeNullFromUnion}}),Object.defineProperty(e,"matchType",{enumerable:!0,get:function(){return F.matchType}}),Object.defineProperty(e,"nullableFromUnion",{enumerable:!0,get:function(){return F.nullableFromUnion}});var m=Wt();Object.defineProperty(e,"ConvenienceRenderer",{enumerable:!0,get:function(){return m.ConvenienceRenderer}});var r=ff();Object.defineProperty(e,"uriTypeAttributeKind",{enumerable:!0,get:function(){return r.uriTypeAttributeKind}});var s=sb();Object.defineProperty(e,"CPlusPlusTargetLanguage",{enumerable:!0,get:function(){return s.CPlusPlusTargetLanguage}}),Object.defineProperty(e,"CPlusPlusRenderer",{enumerable:!0,get:function(){return s.CPlusPlusRenderer}}),Object.defineProperty(e,"cPlusPlusOptions",{enumerable:!0,get:function(){return s.cPlusPlusOptions}});var T=ib();Object.defineProperty(e,"CSharpTargetLanguage",{enumerable:!0,get:function(){return T.CSharpTargetLanguage}}),Object.defineProperty(e,"cSharpOptions",{enumerable:!0,get:function(){return T.cSharpOptions}}),Object.defineProperty(e,"CSharpRenderer",{enumerable:!0,get:function(){return T.CSharpRenderer}});var v=Tb();Object.defineProperty(e,"PythonTargetLanguage",{enumerable:!0,get:function(){return v.PythonTargetLanguage}}),Object.defineProperty(e,"PythonRenderer",{enumerable:!0,get:function(){return v.PythonRenderer}}),Object.defineProperty(e,"pythonOptions",{enumerable:!0,get:function(){return v.pythonOptions}});var M=rb();Object.defineProperty(e,"GoTargetLanguage",{enumerable:!0,get:function(){return M.GoTargetLanguage}}),Object.defineProperty(e,"GoRenderer",{enumerable:!0,get:function(){return M.GoRenderer}}),Object.defineProperty(e,"goOptions",{enumerable:!0,get:function(){return M.goOptions}});var x=ob();Object.defineProperty(e,"ObjectiveCTargetLanguage",{enumerable:!0,get:function(){return x.ObjectiveCTargetLanguage}}),Object.defineProperty(e,"ObjectiveCRenderer",{enumerable:!0,get:function(){return x.ObjectiveCRenderer}}),Object.defineProperty(e,"objcOptions",{enumerable:!0,get:function(){return x.objcOptions}});var W=ab();Object.defineProperty(e,"JavaTargetLanguage",{enumerable:!0,get:function(){return W.JavaTargetLanguage}}),Object.defineProperty(e,"JavaRenderer",{enumerable:!0,get:function(){return W.JavaRenderer}}),Object.defineProperty(e,"javaOptions",{enumerable:!0,get:function(){return W.javaOptions}});var S=Va();Object.defineProperty(e,"JavaScriptTargetLanguage",{enumerable:!0,get:function(){return S.JavaScriptTargetLanguage}}),Object.defineProperty(e,"JavaScriptRenderer",{enumerable:!0,get:function(){return S.JavaScriptRenderer}}),Object.defineProperty(e,"javaScriptOptions",{enumerable:!0,get:function(){return S.javaScriptOptions}});var B=lb();Object.defineProperty(e,"JavaScriptPropTypesTargetLanguage",{enumerable:!0,get:function(){return B.JavaScriptPropTypesTargetLanguage}}),Object.defineProperty(e,"JavaScriptPropTypesRenderer",{enumerable:!0,get:function(){return B.JavaScriptPropTypesRenderer}}),Object.defineProperty(e,"javaScriptPropTypesOptions",{enumerable:!0,get:function(){return B.javaScriptPropTypesOptions}});var q=cb();Object.defineProperty(e,"TypeScriptTargetLanguage",{enumerable:!0,get:function(){return q.TypeScriptTargetLanguage}}),Object.defineProperty(e,"TypeScriptRenderer",{enumerable:!0,get:function(){return q.TypeScriptRenderer}}),Object.defineProperty(e,"FlowTargetLanguage",{enumerable:!0,get:function(){return q.FlowTargetLanguage}}),Object.defineProperty(e,"FlowRenderer",{enumerable:!0,get:function(){return q.FlowRenderer}}),Object.defineProperty(e,"tsFlowOptions",{enumerable:!0,get:function(){return q.tsFlowOptions}});var G=fb();Object.defineProperty(e,"SwiftTargetLanguage",{enumerable:!0,get:function(){return G.SwiftTargetLanguage}}),Object.defineProperty(e,"SwiftRenderer",{enumerable:!0,get:function(){return G.SwiftRenderer}}),Object.defineProperty(e,"swiftOptions",{enumerable:!0,get:function(){return G.swiftOptions}});var $=db();Object.defineProperty(e,"KotlinTargetLanguage",{enumerable:!0,get:function(){return $.KotlinTargetLanguage}}),Object.defineProperty(e,"KotlinRenderer",{enumerable:!0,get:function(){return $.KotlinRenderer}}),Object.defineProperty(e,"kotlinOptions",{enumerable:!0,get:function(){return $.kotlinOptions}});var ee=hb();Object.defineProperty(e,"ElmTargetLanguage",{enumerable:!0,get:function(){return ee.ElmTargetLanguage}}),Object.defineProperty(e,"ElmRenderer",{enumerable:!0,get:function(){return ee.ElmRenderer}}),Object.defineProperty(e,"elmOptions",{enumerable:!0,get:function(){return ee.elmOptions}});var ue=pb();Object.defineProperty(e,"JSONSchemaTargetLanguage",{enumerable:!0,get:function(){return ue.JSONSchemaTargetLanguage}}),Object.defineProperty(e,"JSONSchemaRenderer",{enumerable:!0,get:function(){return ue.JSONSchemaRenderer}});var se=mb();Object.defineProperty(e,"RustTargetLanguage",{enumerable:!0,get:function(){return se.RustTargetLanguage}}),Object.defineProperty(e,"RustRenderer",{enumerable:!0,get:function(){return se.RustRenderer}}),Object.defineProperty(e,"rustOptions",{enumerable:!0,get:function(){return se.rustOptions}});var ie=gb();Object.defineProperty(e,"RubyTargetLanguage",{enumerable:!0,get:function(){return ie.RubyTargetLanguage}}),Object.defineProperty(e,"RubyRenderer",{enumerable:!0,get:function(){return ie.RubyRenderer}}),Object.defineProperty(e,"rubyOptions",{enumerable:!0,get:function(){return ie.rubyOptions}});var ye=yb();Object.defineProperty(e,"CrystalTargetLanguage",{enumerable:!0,get:function(){return ye.CrystalTargetLanguage}}),Object.defineProperty(e,"CrystalRenderer",{enumerable:!0,get:function(){return ye.CrystalRenderer}});var be=vb();Object.defineProperty(e,"HaskellTargetLanguage",{enumerable:!0,get:function(){return be.HaskellTargetLanguage}}),Object.defineProperty(e,"HaskellRenderer",{enumerable:!0,get:function(){return be.HaskellRenderer}}),Object.defineProperty(e,"haskellOptions",{enumerable:!0,get:function(){return be.haskellOptions}});var Ae=bb();Object.defineProperty(e,"DartTargetLanguage",{enumerable:!0,get:function(){return Ae.DartTargetLanguage}}),Object.defineProperty(e,"DartRenderer",{enumerable:!0,get:function(){return Ae.DartRenderer}}),Object.defineProperty(e,"dartOptions",{enumerable:!0,get:function(){return Ae.dartOptions}})}(ll)),ll}var IN=Ya(),RN=Za();export{RN as A,IN as d};