@nuxt/devtools-nightly 2.2.1-29019442.eda0e67 → 2.2.1-29030665.68df38e
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.
- package/dist/chunks/module-main.mjs +2 -2
- package/dist/chunks/vscode.mjs +1 -1
- package/dist/client/200.html +24 -24
- package/dist/client/404.html +24 -24
- package/dist/client/_nuxt/__blank-luthoork.js +1 -0
- package/dist/client/_nuxt/{analyze-build-mmlm0qmk.js → analyze-build-bsunkli7.js} +1 -1
- package/dist/client/_nuxt/assets-lfnh1b6e.js +16 -0
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/16f70cbb-7893-4ed5-b92a-488efb8738fe.json +1 -0
- package/dist/client/_nuxt/{client-gsjyqe32.js → client-j9xalwnm.js} +1 -1
- package/dist/client/_nuxt/{code-diff.vue-g08rzj4c.js → code-diff.vue-imytoxti.js} +3 -3
- package/dist/client/_nuxt/{code-snippets.vue-bn8z9xb5.js → code-snippets.vue-hswyhccf.js} +1 -1
- package/dist/client/_nuxt/{components-jd9tka21.js → components-gowuwj6a.js} +1 -1
- package/dist/client/_nuxt/composable-item.vue-j0gn61br.js +1 -0
- package/dist/client/_nuxt/custom-_name_-fab19om4.js +1 -0
- package/dist/client/_nuxt/{data-schema-button.vue-h4elnw48.js → data-schema-button.vue-tr2gq7bi.js} +1 -1
- package/dist/client/_nuxt/{data-schema-drawer-d7z0g04t.js → data-schema-drawer-kd2wuigt.js} +2 -2
- package/dist/client/_nuxt/{default-kr3x053v.js → default-jyfb60bj.js} +1 -1
- package/dist/client/_nuxt/duration-display.vue-oa6j0va3.js +1 -0
- package/dist/client/_nuxt/{entry.css-jfo9gib8.css → entry.css-hxjy5fr6.css} +1 -1
- package/dist/client/_nuxt/{error-404-lmh205bs.js → error-404-l61wup2d.js} +1 -1
- package/dist/client/_nuxt/error-404.css-gqth5ww7.css +1 -0
- package/dist/client/_nuxt/{error-500-mp0i608m.js → error-500-ck9xbshi.js} +1 -1
- package/dist/client/_nuxt/error-500.css-n3cvcfas.css +1 -0
- package/dist/client/_nuxt/{error-b6pmr2ng.js → error-k5byad75.js} +3 -3
- package/dist/client/_nuxt/exwwhk5s.js +15 -0
- package/dist/client/_nuxt/{filepath-item.vue-m76vrpif.js → filepath-item.vue-g8leljip.js} +1 -1
- package/dist/client/_nuxt/full-og11tliq.js +1 -0
- package/dist/client/_nuxt/{help-fab.vue-i880zdni.js → help-fab.vue-mxwhdrsr.js} +1 -1
- package/dist/client/_nuxt/{hooks-fpv362bg.js → hooks-f2jwdw9x.js} +1 -1
- package/dist/client/_nuxt/{imports-b6ht1opf.js → imports-ieg7xe68.js} +1 -1
- package/dist/client/_nuxt/{index-ctrebjhj.js → index-ffpyhunk.js} +1 -1
- package/dist/client/_nuxt/launch-page.vue-ox98boyc.js +1 -0
- package/dist/client/_nuxt/{modules-ixp8d9vk.js → modules-pehhn55f.js} +1 -1
- package/dist/client/_nuxt/nbadge-erzx95rd.js +1 -0
- package/dist/client/_nuxt/ncheckbox.vue-id4aaixo.js +1 -0
- package/dist/client/_nuxt/{ncode-block.vue-bir2wz4z.js → ncode-block.vue-fo8ld4g6.js} +1 -1
- package/dist/client/_nuxt/{ndrawer.vue-ky486jor.js → ndrawer.vue-m39yozb0.js} +1 -1
- package/dist/client/_nuxt/{ndropdown.vue-m1tp312w.js → ndropdown.vue-ohp3y1fy.js} +1 -1
- package/dist/client/_nuxt/{nicon-title.vue-dsf9ygne.js → nicon-title.vue-ewg1179r.js} +1 -1
- package/dist/client/_nuxt/{nlink.vue-payfhp00.js → nlink.vue-d7mkhuwn.js} +1 -1
- package/dist/client/_nuxt/nmarkdown.vue-o2d4fkm8.js +1 -0
- package/dist/client/_nuxt/nnavbar.vue-pfuej0s6.js +1 -0
- package/dist/client/_nuxt/none-ox6cyl31.js +1 -0
- package/dist/client/_nuxt/nsection-block-ettf3hvf.js +1 -0
- package/dist/client/_nuxt/nselect-tabs.vue-gbgy5wf0.js +1 -0
- package/dist/client/_nuxt/{nselect.vue-ux1pzkh7.js → nselect.vue-bcj1qod9.js} +1 -1
- package/dist/client/_nuxt/{nswitch.vue-jbyu7ls8.js → nswitch.vue-bae7rz1k.js} +1 -1
- package/dist/client/_nuxt/{open-graph-h6knwpio.js → open-graph-if05fe0e.js} +2 -2
- package/dist/client/_nuxt/{overview-lfanz6bv.js → overview-lmt7y4me.js} +1 -1
- package/dist/client/_nuxt/{pages-k4o3v9ry.js → pages-bge5pqis.js} +1 -1
- package/dist/client/_nuxt/{payload-evjmosjq.js → payload-ov7dfxqi.js} +1 -1
- package/dist/client/_nuxt/pinia-cru27k79.js +1 -0
- package/dist/client/_nuxt/plugins-nfx3dwzm.js +1 -0
- package/dist/client/_nuxt/render-tree-gn490a12.js +1 -0
- package/dist/client/_nuxt/{runtime-configs-misjv6ej.js → runtime-configs-l1m0po1z.js} +1 -1
- package/dist/client/_nuxt/{server-discovery-jwusnu4r.js → server-discovery-icagh4le.js} +1 -1
- package/dist/client/_nuxt/{server-route-inputs.vue-lb7sr0kp.js → server-route-inputs.vue-ev7emysb.js} +1 -1
- package/dist/client/_nuxt/server-routes-l29l7038.js +9 -0
- package/dist/client/_nuxt/{server-tasks-gca4b37p.js → server-tasks-c02vff0a.js} +1 -1
- package/dist/client/_nuxt/{settings-nnoavm1m.js → settings-mq92rq0b.js} +1 -1
- package/dist/client/_nuxt/stacktrace-list.vue-ofgzkz62.js +1 -0
- package/dist/client/_nuxt/{state-components-onpjj0gw.js → state-components-j0m4c186.js} +1 -1
- package/dist/client/_nuxt/{state-editor.vue-g0scdm66.js → state-editor.vue-o9kp80s4.js} +1 -1
- package/dist/client/_nuxt/{state-modules-mr92p8tr.js → state-modules-hl6rxvzk.js} +1 -1
- package/dist/client/_nuxt/{storage-fo8kjn4f.js → storage-ea7xl11w.js} +1 -1
- package/dist/client/_nuxt/terminals-j31gu71g.js +1 -0
- package/dist/client/_nuxt/{timeline-dz0mjng2.js → timeline-l74gufqx.js} +2 -2
- package/dist/client/_nuxt/{unocss-runtime-l2otbg6e.js → unocss-runtime-nuu2hnrz.js} +1 -1
- package/dist/client/_nuxt/vendor/json-editor-vue-ddl3r0b2.js +3831 -0
- package/dist/client/_nuxt/vendor/quicktype-core-2ghyy1he.js +1007 -0
- package/dist/client/_nuxt/vendor/{shiki-kdj4mcqm.js → shiki-jv02kgzv.js} +55 -54
- package/dist/client/_nuxt/vendor/{unocss-mvzv9iuf.js → unocss-jhada3qg.js} +2 -2
- package/dist/client/_nuxt/virtual-files-yyyg1vm7.js +1 -0
- package/dist/client/_nuxt/vue-devtools-ex7pzz9d.js +2 -0
- package/dist/client/_nuxt/{vue-virtual-scroller.esm-gnguvd0a.js → vue-virtual-scroller.esm-dyo77aio.js} +2 -2
- package/dist/client/index.html +24 -24
- package/dist/module.json +1 -1
- package/dist/module.mjs +1 -1
- package/dist/shared/{devtools-nightly.60b2ba4d.mjs → devtools-nightly.c069f83f.mjs} +2 -2
- package/package.json +18 -20
- package/dist/client/_nuxt/__blank-dudv6g9d.js +0 -1
- package/dist/client/_nuxt/assets-d7a4sjel.js +0 -16
- package/dist/client/_nuxt/builds/meta/42563f38-bec9-46fb-a12c-f1f0c287e26b.json +0 -1
- package/dist/client/_nuxt/composable-item.vue-e69gesgx.js +0 -1
- package/dist/client/_nuxt/custom-_name_-c9i9msza.js +0 -1
- package/dist/client/_nuxt/duration-display.vue-h9mqvgci.js +0 -1
- package/dist/client/_nuxt/error-404.css-cyoi3t2n.css +0 -1
- package/dist/client/_nuxt/error-500.css-c3osv0mr.css +0 -1
- package/dist/client/_nuxt/full-frvlfewm.js +0 -1
- package/dist/client/_nuxt/kqyz63s4.js +0 -17
- package/dist/client/_nuxt/launch-page.vue-au1ardzr.js +0 -1
- package/dist/client/_nuxt/nbadge-nne4sod6.js +0 -1
- package/dist/client/_nuxt/ncheckbox.vue-hf5mdmi3.js +0 -1
- package/dist/client/_nuxt/nmarkdown.vue-iw2voruc.js +0 -1
- package/dist/client/_nuxt/nnavbar.vue-e97k77e0.js +0 -1
- package/dist/client/_nuxt/none-uwir38tv.js +0 -1
- package/dist/client/_nuxt/nsection-block-fifwwegz.js +0 -1
- package/dist/client/_nuxt/nselect-tabs.vue-oozvg69j.js +0 -1
- package/dist/client/_nuxt/pinia-cltdn6il.js +0 -1
- package/dist/client/_nuxt/plugins-i5usz6sj.js +0 -1
- package/dist/client/_nuxt/render-tree-osiyxe12.js +0 -1
- package/dist/client/_nuxt/server-routes-ibasmzbq.js +0 -9
- package/dist/client/_nuxt/stacktrace-list.vue-iowpp47w.js +0 -1
- package/dist/client/_nuxt/terminals-d5x6s6aj.js +0 -1
- package/dist/client/_nuxt/vendor/json-editor-vue-llkaejaf.js +0 -3819
- package/dist/client/_nuxt/vendor/quicktype-core-o2aektoq.js +0 -1006
- package/dist/client/_nuxt/virtual-files-o8q3c6g3.js +0 -1
- package/dist/client/_nuxt/vue-devtools-qchxgice.js +0 -2
|
@@ -0,0 +1,1007 @@
|
|
|
1
|
+
import{c as Dn,g as Nc}from"./json-editor-vue-ddl3r0b2.js";const hL=Object.freeze(Object.create(null,{__unenv__:{get:()=>!0}})),pL=Object.freeze(Object.defineProperty({__proto__:null,default:hL},Symbol.toStringTag,{value:"Module"}));var $u={},Hn={},vs={},Eh;function et(){return Eh||(Eh=1,function(e){var i=vs&&vs.__awaiter||function(ee,te,K,j){return new(K||(K=Promise))(function(G,ce){function $(Be){try{Se(j.next(Be))}catch(we){ce(we)}}function be(Be){try{Se(j.throw(Be))}catch(we){ce(we)}}function Se(Be){Be.done?G(Be.value):new K(function(we){we(Be.value)}).then($,be)}Se((j=j.apply(ee,te||[])).next())})};Object.defineProperty(e,"__esModule",{value:!0}),e.hashCodeInit=17;function n(ee){let te=0;for(let K=0;K<ee.length;K++){const j=ee.charCodeAt(K);te=(te<<5)-te+j,te=te&te}return te}e.hashString=n;function a(ee,te){return ee*31+(te|0)|0}e.addHashCode=a;function l(ee,te){return ee!==void 0?ee:te}e.withDefault=l;function d(ee,te){if(ee!==void 0)return te(ee)}e.definedMap=d;function u(ee,te,K){return l(d(ee,K),te)}e.definedMapWithDefault=u;function c(ee,te){return ee==null?!1:Object.prototype.hasOwnProperty.call(ee,te)}e.hasOwnProperty=c;function w(ee,te){for(const K of ee)if(te(K))return K}e.iterableFind=w;function U(ee,te){for(const K of ee)if(!te(K))return!1;return!0}e.iterableEvery=U;function F(ee,te){for(const K of ee)if(te(K))return!0;return!1}e.iterableSome=F;function O(ee){for(const te of ee)return te}e.iterableFirst=O;function M(ee){let te;for(const K of ee)(te===void 0||K>te)&&(te=K);return te}e.iterableMax=M;function L(ee,te){let K,j;for(const G of ee){const ce=te(G);(K===void 0||ce<K)&&(K=ce,j=G)}return j}e.iterableMinBy=L;function _(ee,te,K){let j=te;for(const G of ee)j=K(j,G);return j}e.iterableReduce=_;function*b(ee){let te=0;for(const K of ee)yield[te,K],te+=1}e.iterableEnumerate=b;function*v(ee,te){let K=0;for(const j of ee)K>=te?yield j:K+=1}e.iterableSkip=v;function h(ee,te){const K=ee.length;if(!(te>K))return ee[K-te]}e.arrayGetFromEnd=h;function m(ee){return h(ee,1)}e.arrayLast=m;function k(ee){const te=ee.length;if(te===0)throw new Error("Cannot pop empty array");return ee.slice(0,te-1)}e.arrayPop=k;function B(ee,te){const K=[];for(const j of te)K.length>0&&K.push(ee),K.push(j);return K}e.arrayIntercalate=B;function C(ee,te){return i(this,void 0,void 0,function*(){const K=[];let j=0;for(const G of ee)K.push(yield te(G,j)),j+=1;return K})}e.arrayMapSync=C;function R(ee,te){return ee<te?-1:ee>te?1:0}function A(ee,te){return ee.sort((K,j)=>R(te(K),te(j)))}e.arraySortByInto=A;function f(ee){return Array.isArray(ee)?ee:Array.from(ee)}e.toReadonlyArray=f;function E(ee,te){const K=new Map;for(const[j,G]of ee)K.set(j,te(G,j));return K}e.mapMap=E;function S(ee){for(const te of ee.values())return te}e.mapFirst=S;function P(ee,te){for(const K of ee.values())if(K===te)return!0;return!1}e.mapContains=P;function y(ee,te){for(const[K,j]of ee)if(te(j,K))return!0;return!1}e.mapSome=y;function r(ee,te){for(const[K,j]of te)ee.set(K,j);return ee}e.mapMergeInto=r;function s(ee,te){const K=new Map(ee);return r(K,te),K}e.mapMerge=s;function p(ee,te,K){for(const[j,G]of K){const ce=ee.get(j),$=ce===void 0?G:te(ce,G,j);ee.set(j,$)}return ee}e.mapMergeWithInto=p;function g(ee,te,K){const j=new Map(ee);return p(j,te,K),j}e.mapMergeWith=g;function I(ee,te){const K=new Map;for(const[j,G]of ee)te(G,j)&&K.set(j,G);return K}e.mapFilter=I;function x(ee,te){const K=new Map;for(const[j,G]of ee){const ce=te(G,j);ce!==void 0&&K.set(j,ce)}return K}e.mapFilterMap=x;function q(ee,te){return A(Array.from(ee),([K,j])=>te(j,K))}e.mapSortToArray=q;function T(ee,te){return new Map(q(ee,te))}e.mapSortBy=T;function D(ee){return T(ee,(te,K)=>K)}e.mapSortByKey=D;function W(ee,te){const K=new Map;for(const[j,G]of ee){const[ce,$]=te(G,j);K.set(ce,$)}return K}e.mapMapEntries=W;function J(ee,te,K){return ee.set(te,K(ee.get(te))),ee}e.mapUpdateInto=J;function X(ee){const te=new Map;for(const K of Object.getOwnPropertyNames(ee))te.set(K,ee[K]);return te}e.mapFromObject=X;function Q(ee){const te={};for(const[K,j]of ee)te[K]=j;return te}e.mapToObject=Q;function re(ee,te){const K=new Map;for(const j of ee)K.set(j,te(j));return K}e.mapFromIterable=re;function se(ee,te){for(const[K,j]of ee)if(te(j,K))return j}e.mapFind=se;function ne(ee){const te=new Map;for(const K of ee)for(const[j,G]of K){let ce=te.get(j);ce===void 0&&(ce=[],te.set(j,ce)),ce.push(G)}return te}e.mapTranspose=ne;function me(ee,te){return i(this,void 0,void 0,function*(){const K=new Map;for(const[j,G]of ee)K.set(j,yield te(G,j));return K})}e.mapMapSync=me;function ge(ee,te){for(const K of te)if(!ee.has(K))return!1;return!0}e.setIsSuperset=ge;function Ae(ee,te){for(const K of te)for(const j of K)ee.add(j);return ee}e.setUnionManyInto=Ae;function pe(ee,...te){return Ae(ee,te)}e.setUnionInto=pe;function le(ee,te){const K=new Set;for(const j of ee)te.has(j)&&K.add(j);return K}e.setIntersect=le;function ye(ee,te){const K=new Set(ee);for(const j of te)K.delete(j);return K}e.setSubtract=ye;function de(...ee){const te=new Set;return pe(te,...ee),te}e.setUnion=de;function Y(ee,te){const K=new Set;for(const j of ee)K.add(te(j));return K}e.setMap=Y;function z(ee,te){const K=new Set;for(const j of ee)te(j)&&K.add(j);return K}e.setFilter=z;function V(ee,te){const K=new Set;for(const j of ee){const G=te(j);G!==void 0&&K.add(G)}return K}e.setFilterMap=V;function ue(ee,te){return new Set(A(Array.from(ee),te))}e.setSortBy=ue;function Te(ee,te){const K=new Map;for(const j of ee){const G=te(j);let ce=K.get(G);ce===void 0&&(ce=new Set,K.set(G,ce)),ce.add(j)}return K}e.setGroupBy=Te;function Ie(ee){return ee instanceof Set?ee:new Set(ee)}e.toReadonlySet=Ie;class Ce{constructor(){this._map=new Map}set(te,K){let j=Ge(te)|0;for(;;){const G=this._map.get(j);if(G===void 0){this._map.set(j,[te,K]);return}if(We(te,G[0])){G[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(ee,te){if(ee===te)return!0;if(ee===void 0||te===void 0||ee===null||te===null)return!1;if(typeof ee.equals=="function"&&typeof te.equals=="function")return ee.equals(te);if(ee instanceof Set&&te instanceof Set){if(ee.size!==te.size)return!1;for(const K of ee)if(!te.has(K))return!1;return!0}if(ee instanceof Map&&te instanceof Map){if(ee.size!==te.size)return!1;for(const[K,j]of ee){const G=te.get(K);if(!We(j,G))return!1}return!0}if(Array.isArray(ee)&&Array.isArray(te)){const K=ee.length;if(K!==te.length)return!1;for(let j=0;j<K;j++)if(!We(ee[j],te[j]))return!1;return!0}return!1}e.areEqual=We;function Ge(ee){if(typeof ee=="number")return ee|0;if(typeof ee=="string")return n(ee);let te=e.hashCodeInit;if(ee===void 0)return te;if(ee===!0)return te+1|0;if(ee===!1)return te+2|0;if(ee===null)return te+3|0;if(typeof ee.hashCode=="function")return ee.hashCode();if(ee instanceof Set){for(const K of ee)te+=Ge(K);return te}if(ee instanceof Map){let K=e.hashCodeInit;for(const[j,G]of ee)K+=Ge(j),te+=Ge(G);return a(K,te)}if(Array.isArray(ee)){for(const K of ee)te=a(te,Ge(K));return te}throw new Error(`Cannot hash ${ee}`)}e.hashCodeOf=Ge}(vs)),vs}var el={},Ss={},tl={},rt={},la={exports:{}},mL=la.exports,Ah;function yL(){return Ah||(Ah=1,function(e,i){(function(n,a){e.exports=a()})(typeof self<"u"?self:typeof window<"u"?window:typeof Dn<"u"?Dn:mL,function(){var n="3.7.7",a=n,l=typeof Buffer=="function",d=typeof TextDecoder=="function"?new TextDecoder:void 0,u=typeof TextEncoder=="function"?new TextEncoder:void 0,c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",w=Array.prototype.slice.call(c),U=function(Q){var re={};return Q.forEach(function(se,ne){return re[se]=ne}),re}(w),F=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,O=String.fromCharCode.bind(String),M=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):function(Q){return new Uint8Array(Array.prototype.slice.call(Q,0))},L=function(Q){return Q.replace(/=/g,"").replace(/[+\/]/g,function(re){return re=="+"?"-":"_"})},_=function(Q){return Q.replace(/[^A-Za-z0-9\+\/]/g,"")},b=function(Q){for(var re,se,ne,me,ge="",Ae=Q.length%3,pe=0;pe<Q.length;){if((se=Q.charCodeAt(pe++))>255||(ne=Q.charCodeAt(pe++))>255||(me=Q.charCodeAt(pe++))>255)throw new TypeError("invalid character found");re=se<<16|ne<<8|me,ge+=w[re>>18&63]+w[re>>12&63]+w[re>>6&63]+w[re&63]}return Ae?ge.slice(0,Ae-3)+"===".substring(Ae):ge},v=typeof btoa=="function"?function(Q){return btoa(Q)}:l?function(Q){return Buffer.from(Q,"binary").toString("base64")}:b,h=l?function(Q){return Buffer.from(Q).toString("base64")}:function(Q){for(var re=4096,se=[],ne=0,me=Q.length;ne<me;ne+=re)se.push(O.apply(null,Q.subarray(ne,ne+re)));return v(se.join(""))},m=function(Q,re){return re===void 0&&(re=!1),re?L(h(Q)):h(Q)},k=function(Q){if(Q.length<2){var re=Q.charCodeAt(0);return re<128?Q:re<2048?O(192|re>>>6)+O(128|re&63):O(224|re>>>12&15)+O(128|re>>>6&63)+O(128|re&63)}else{var re=65536+(Q.charCodeAt(0)-55296)*1024+(Q.charCodeAt(1)-56320);return O(240|re>>>18&7)+O(128|re>>>12&63)+O(128|re>>>6&63)+O(128|re&63)}},B=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,C=function(Q){return Q.replace(B,k)},R=l?function(Q){return Buffer.from(Q,"utf8").toString("base64")}:u?function(Q){return h(u.encode(Q))}:function(Q){return v(C(Q))},A=function(Q,re){return re===void 0&&(re=!1),re?L(R(Q)):R(Q)},f=function(Q){return A(Q,!0)},E=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,S=function(Q){switch(Q.length){case 4:var re=(7&Q.charCodeAt(0))<<18|(63&Q.charCodeAt(1))<<12|(63&Q.charCodeAt(2))<<6|63&Q.charCodeAt(3),se=re-65536;return O((se>>>10)+55296)+O((se&1023)+56320);case 3:return O((15&Q.charCodeAt(0))<<12|(63&Q.charCodeAt(1))<<6|63&Q.charCodeAt(2));default:return O((31&Q.charCodeAt(0))<<6|63&Q.charCodeAt(1))}},P=function(Q){return Q.replace(E,S)},y=function(Q){if(Q=Q.replace(/\s+/g,""),!F.test(Q))throw new TypeError("malformed base64.");Q+="==".slice(2-(Q.length&3));for(var re,se="",ne,me,ge=0;ge<Q.length;)re=U[Q.charAt(ge++)]<<18|U[Q.charAt(ge++)]<<12|(ne=U[Q.charAt(ge++)])<<6|(me=U[Q.charAt(ge++)]),se+=ne===64?O(re>>16&255):me===64?O(re>>16&255,re>>8&255):O(re>>16&255,re>>8&255,re&255);return se},r=typeof atob=="function"?function(Q){return atob(_(Q))}:l?function(Q){return Buffer.from(Q,"base64").toString("binary")}:y,s=l?function(Q){return M(Buffer.from(Q,"base64"))}:function(Q){return M(r(Q).split("").map(function(re){return re.charCodeAt(0)}))},p=function(Q){return s(I(Q))},g=l?function(Q){return Buffer.from(Q,"base64").toString("utf8")}:d?function(Q){return d.decode(s(Q))}:function(Q){return P(r(Q))},I=function(Q){return _(Q.replace(/[-_]/g,function(re){return re=="-"?"+":"/"}))},x=function(Q){return g(I(Q))},q=function(Q){if(typeof Q!="string")return!1;var re=Q.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(re)||!/[^\s0-9a-zA-Z\-_]/.test(re)},T=function(Q){return{value:Q,enumerable:!1,writable:!0,configurable:!0}},D=function(){var Q=function(re,se){return Object.defineProperty(String.prototype,re,T(se))};Q("fromBase64",function(){return x(this)}),Q("toBase64",function(re){return A(this,re)}),Q("toBase64URI",function(){return A(this,!0)}),Q("toBase64URL",function(){return A(this,!0)}),Q("toUint8Array",function(){return p(this)})},W=function(){var Q=function(re,se){return Object.defineProperty(Uint8Array.prototype,re,T(se))};Q("toBase64",function(re){return m(this,re)}),Q("toBase64URI",function(){return m(this,!0)}),Q("toBase64URL",function(){return m(this,!0)})},J=function(){D(),W()},X={version:n,VERSION:a,atob:r,atobPolyfill:y,btoa:v,btoaPolyfill:b,fromBase64:x,toBase64:A,encode:A,encodeURI:f,encodeURL:f,utob:C,btou:P,decode:x,isValid:q,fromUint8Array:m,toUint8Array:p,extendString:D,extendUint8Array:W,extendBuiltins:J};return X.Base64={},Object.keys(X).forEach(function(Q){return X.Base64[Q]=X[Q]}),X})}(la)),la.exports}var nl={},Fh;function Ki(){return Fh||(Fh=1,function(e){var i=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 F=0;F<w;F++)d[U+F]=u[c+F]},flattenChunks:function(d){var u,c,w,U,F,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++)F=d[u],O.set(F,U),U+=F.length;return O}},l={arraySet:function(d,u,c,w,U){for(var F=0;F<w;F++)d[U+F]=u[c+F]},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(i)}(nl)),nl}var zr={},Kn={},sr={},Ph;function gL(){if(Ph)return sr;Ph=1;var e=Ki(),i=4,n=0,a=1,l=2;function d($){for(var be=$.length;--be>=0;)$[be]=0}var u=0,c=1,w=2,U=3,F=258,O=29,M=256,L=M+1+O,_=30,b=19,v=2*L+1,h=15,m=16,k=7,B=256,C=16,R=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],S=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],P=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],y=512,r=new Array((L+2)*2);d(r);var s=new Array(_*2);d(s);var p=new Array(y);d(p);var g=new Array(F-U+1);d(g);var I=new Array(O);d(I);var x=new Array(_);d(x);function q($,be,Se,Be,we){this.static_tree=$,this.extra_bits=be,this.extra_base=Se,this.elems=Be,this.max_length=we,this.has_stree=$&&$.length}var T,D,W;function J($,be){this.dyn_tree=$,this.max_code=0,this.stat_desc=be}function X($){return $<256?p[$]:p[256+($>>>7)]}function Q($,be){$.pending_buf[$.pending++]=be&255,$.pending_buf[$.pending++]=be>>>8&255}function re($,be,Se){$.bi_valid>m-Se?($.bi_buf|=be<<$.bi_valid&65535,Q($,$.bi_buf),$.bi_buf=be>>m-$.bi_valid,$.bi_valid+=Se-m):($.bi_buf|=be<<$.bi_valid&65535,$.bi_valid+=Se)}function se($,be,Se){re($,Se[be*2],Se[be*2+1])}function ne($,be){var Se=0;do Se|=$&1,$>>>=1,Se<<=1;while(--be>0);return Se>>>1}function me($){$.bi_valid===16?(Q($,$.bi_buf),$.bi_buf=0,$.bi_valid=0):$.bi_valid>=8&&($.pending_buf[$.pending++]=$.bi_buf&255,$.bi_buf>>=8,$.bi_valid-=8)}function ge($,be){var Se=be.dyn_tree,Be=be.max_code,we=be.stat_desc.static_tree,Pe=be.stat_desc.has_stree,oe=be.stat_desc.extra_bits,Re=be.stat_desc.extra_base,ze=be.stat_desc.max_length,H,ke,Ne,ae,Le,Fe,He=0;for(ae=0;ae<=h;ae++)$.bl_count[ae]=0;for(Se[$.heap[$.heap_max]*2+1]=0,H=$.heap_max+1;H<v;H++)ke=$.heap[H],ae=Se[Se[ke*2+1]*2+1]+1,ae>ze&&(ae=ze,He++),Se[ke*2+1]=ae,!(ke>Be)&&($.bl_count[ae]++,Le=0,ke>=Re&&(Le=oe[ke-Re]),Fe=Se[ke*2],$.opt_len+=Fe*(ae+Le),Pe&&($.static_len+=Fe*(we[ke*2+1]+Le)));if(He!==0){do{for(ae=ze-1;$.bl_count[ae]===0;)ae--;$.bl_count[ae]--,$.bl_count[ae+1]+=2,$.bl_count[ze]--,He-=2}while(He>0);for(ae=ze;ae!==0;ae--)for(ke=$.bl_count[ae];ke!==0;)Ne=$.heap[--H],!(Ne>Be)&&(Se[Ne*2+1]!==ae&&($.opt_len+=(ae-Se[Ne*2+1])*Se[Ne*2],Se[Ne*2+1]=ae),ke--)}}function Ae($,be,Se){var Be=new Array(h+1),we=0,Pe,oe;for(Pe=1;Pe<=h;Pe++)Be[Pe]=we=we+Se[Pe-1]<<1;for(oe=0;oe<=be;oe++){var Re=$[oe*2+1];Re!==0&&($[oe*2]=ne(Be[Re]++,Re))}}function pe(){var $,be,Se,Be,we,Pe=new Array(h+1);for(Se=0,Be=0;Be<O-1;Be++)for(I[Be]=Se,$=0;$<1<<f[Be];$++)g[Se++]=Be;for(g[Se-1]=Be,we=0,Be=0;Be<16;Be++)for(x[Be]=we,$=0;$<1<<E[Be];$++)p[we++]=Be;for(we>>=7;Be<_;Be++)for(x[Be]=we<<7,$=0;$<1<<E[Be]-7;$++)p[256+we++]=Be;for(be=0;be<=h;be++)Pe[be]=0;for($=0;$<=143;)r[$*2+1]=8,$++,Pe[8]++;for(;$<=255;)r[$*2+1]=9,$++,Pe[9]++;for(;$<=279;)r[$*2+1]=7,$++,Pe[7]++;for(;$<=287;)r[$*2+1]=8,$++,Pe[8]++;for(Ae(r,L+1,Pe),$=0;$<_;$++)s[$*2+1]=5,s[$*2]=ne($,5);T=new q(r,f,M+1,L,h),D=new q(s,E,0,_,h),W=new q(new Array(0),S,0,b,k)}function le($){var be;for(be=0;be<L;be++)$.dyn_ltree[be*2]=0;for(be=0;be<_;be++)$.dyn_dtree[be*2]=0;for(be=0;be<b;be++)$.bl_tree[be*2]=0;$.dyn_ltree[B*2]=1,$.opt_len=$.static_len=0,$.last_lit=$.matches=0}function ye($){$.bi_valid>8?Q($,$.bi_buf):$.bi_valid>0&&($.pending_buf[$.pending++]=$.bi_buf),$.bi_buf=0,$.bi_valid=0}function de($,be,Se,Be){ye($),Q($,Se),Q($,~Se),e.arraySet($.pending_buf,$.window,be,Se,$.pending),$.pending+=Se}function Y($,be,Se,Be){var we=be*2,Pe=Se*2;return $[we]<$[Pe]||$[we]===$[Pe]&&Be[be]<=Be[Se]}function z($,be,Se){for(var Be=$.heap[Se],we=Se<<1;we<=$.heap_len&&(we<$.heap_len&&Y(be,$.heap[we+1],$.heap[we],$.depth)&&we++,!Y(be,Be,$.heap[we],$.depth));)$.heap[Se]=$.heap[we],Se=we,we<<=1;$.heap[Se]=Be}function V($,be,Se){var Be,we,Pe=0,oe,Re;if($.last_lit!==0)do Be=$.pending_buf[$.d_buf+Pe*2]<<8|$.pending_buf[$.d_buf+Pe*2+1],we=$.pending_buf[$.l_buf+Pe],Pe++,Be===0?se($,we,be):(oe=g[we],se($,oe+M+1,be),Re=f[oe],Re!==0&&(we-=I[oe],re($,we,Re)),Be--,oe=X(Be),se($,oe,Se),Re=E[oe],Re!==0&&(Be-=x[oe],re($,Be,Re)));while(Pe<$.last_lit);se($,B,be)}function ue($,be){var Se=be.dyn_tree,Be=be.stat_desc.static_tree,we=be.stat_desc.has_stree,Pe=be.stat_desc.elems,oe,Re,ze=-1,H;for($.heap_len=0,$.heap_max=v,oe=0;oe<Pe;oe++)Se[oe*2]!==0?($.heap[++$.heap_len]=ze=oe,$.depth[oe]=0):Se[oe*2+1]=0;for(;$.heap_len<2;)H=$.heap[++$.heap_len]=ze<2?++ze:0,Se[H*2]=1,$.depth[H]=0,$.opt_len--,we&&($.static_len-=Be[H*2+1]);for(be.max_code=ze,oe=$.heap_len>>1;oe>=1;oe--)z($,Se,oe);H=Pe;do oe=$.heap[1],$.heap[1]=$.heap[$.heap_len--],z($,Se,1),Re=$.heap[1],$.heap[--$.heap_max]=oe,$.heap[--$.heap_max]=Re,Se[H*2]=Se[oe*2]+Se[Re*2],$.depth[H]=($.depth[oe]>=$.depth[Re]?$.depth[oe]:$.depth[Re])+1,Se[oe*2+1]=Se[Re*2+1]=H,$.heap[1]=H++,z($,Se,1);while($.heap_len>=2);$.heap[--$.heap_max]=$.heap[1],ge($,be),Ae(Se,ze,$.bl_count)}function Te($,be,Se){var Be,we=-1,Pe,oe=be[0*2+1],Re=0,ze=7,H=4;for(oe===0&&(ze=138,H=3),be[(Se+1)*2+1]=65535,Be=0;Be<=Se;Be++)Pe=oe,oe=be[(Be+1)*2+1],!(++Re<ze&&Pe===oe)&&(Re<H?$.bl_tree[Pe*2]+=Re:Pe!==0?(Pe!==we&&$.bl_tree[Pe*2]++,$.bl_tree[C*2]++):Re<=10?$.bl_tree[R*2]++:$.bl_tree[A*2]++,Re=0,we=Pe,oe===0?(ze=138,H=3):Pe===oe?(ze=6,H=3):(ze=7,H=4))}function Ie($,be,Se){var Be,we=-1,Pe,oe=be[0*2+1],Re=0,ze=7,H=4;for(oe===0&&(ze=138,H=3),Be=0;Be<=Se;Be++)if(Pe=oe,oe=be[(Be+1)*2+1],!(++Re<ze&&Pe===oe)){if(Re<H)do se($,Pe,$.bl_tree);while(--Re!==0);else Pe!==0?(Pe!==we&&(se($,Pe,$.bl_tree),Re--),se($,C,$.bl_tree),re($,Re-3,2)):Re<=10?(se($,R,$.bl_tree),re($,Re-3,3)):(se($,A,$.bl_tree),re($,Re-11,7));Re=0,we=Pe,oe===0?(ze=138,H=3):Pe===oe?(ze=6,H=3):(ze=7,H=4)}}function Ce($){var be;for(Te($,$.dyn_ltree,$.l_desc.max_code),Te($,$.dyn_dtree,$.d_desc.max_code),ue($,$.bl_desc),be=b-1;be>=3&&$.bl_tree[P[be]*2+1]===0;be--);return $.opt_len+=3*(be+1)+5+5+4,be}function We($,be,Se,Be){var we;for(re($,be-257,5),re($,Se-1,5),re($,Be-4,4),we=0;we<Be;we++)re($,$.bl_tree[P[we]*2+1],3);Ie($,$.dyn_ltree,be-1),Ie($,$.dyn_dtree,Se-1)}function Ge($){var be=4093624447,Se;for(Se=0;Se<=31;Se++,be>>>=1)if(be&1&&$.dyn_ltree[Se*2]!==0)return n;if($.dyn_ltree[9*2]!==0||$.dyn_ltree[10*2]!==0||$.dyn_ltree[13*2]!==0)return a;for(Se=32;Se<M;Se++)if($.dyn_ltree[Se*2]!==0)return a;return n}var ee=!1;function te($){ee||(pe(),ee=!0),$.l_desc=new J($.dyn_ltree,T),$.d_desc=new J($.dyn_dtree,D),$.bl_desc=new J($.bl_tree,W),$.bi_buf=0,$.bi_valid=0,le($)}function K($,be,Se,Be){re($,(u<<1)+(Be?1:0),3),de($,be,Se)}function j($){re($,c<<1,3),se($,B,r),me($)}function G($,be,Se,Be){var we,Pe,oe=0;$.level>0?($.strm.data_type===l&&($.strm.data_type=Ge($)),ue($,$.l_desc),ue($,$.d_desc),oe=Ce($),we=$.opt_len+3+7>>>3,Pe=$.static_len+3+7>>>3,Pe<=we&&(we=Pe)):we=Pe=Se+5,Se+4<=we&&be!==-1?K($,be,Se,Be):$.strategy===i||Pe===we?(re($,(c<<1)+(Be?1:0),3),V($,r,s)):(re($,(w<<1)+(Be?1:0),3),We($,$.l_desc.max_code+1,$.d_desc.max_code+1,oe+1),V($,$.dyn_ltree,$.dyn_dtree)),le($),Be&&ye($)}function ce($,be,Se){return $.pending_buf[$.d_buf+$.last_lit*2]=be>>>8&255,$.pending_buf[$.d_buf+$.last_lit*2+1]=be&255,$.pending_buf[$.l_buf+$.last_lit]=Se&255,$.last_lit++,be===0?$.dyn_ltree[Se*2]++:($.matches++,be--,$.dyn_ltree[(g[Se]+M+1)*2]++,$.dyn_dtree[X(be)*2]++),$.last_lit===$.lit_bufsize-1}return sr._tr_init=te,sr._tr_stored_block=K,sr._tr_flush_block=G,sr._tr_tally=ce,sr._tr_align=j,sr}var il,Ih;function Sy(){if(Ih)return il;Ih=1;function e(i,n,a,l){for(var d=i&65535|0,u=i>>>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 il=e,il}var rl,Rh;function wy(){if(Rh)return rl;Rh=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 i=e();function n(a,l,d,u){var c=i,w=u+d;a^=-1;for(var U=u;U<w;U++)a=a>>>8^c[(a^l[U])&255];return a^-1}return rl=n,rl}var sl,Mh;function Oc(){return Mh||(Mh=1,sl={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"}),sl}var Bh;function bL(){if(Bh)return Kn;Bh=1;var e=Ki(),i=gL(),n=Sy(),a=wy(),l=Oc(),d=0,u=1,c=3,w=4,U=5,F=0,O=1,M=-2,L=-3,_=-5,b=-1,v=1,h=2,m=3,k=4,B=0,C=2,R=8,A=9,f=15,E=8,S=29,P=256,y=P+1+S,r=30,s=19,p=2*y+1,g=15,I=3,x=258,q=x+I+1,T=32,D=42,W=69,J=73,X=91,Q=103,re=113,se=666,ne=1,me=2,ge=3,Ae=4,pe=3;function le(H,ke){return H.msg=l[ke],ke}function ye(H){return(H<<1)-(H>4?9:0)}function de(H){for(var ke=H.length;--ke>=0;)H[ke]=0}function Y(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){i._tr_flush_block(H,H.block_start>=0?H.block_start:-1,H.strstart-H.block_start,ke),H.block_start=H.strstart,Y(H.strm)}function V(H,ke){H.pending_buf[H.pending++]=ke}function ue(H,ke){H.pending_buf[H.pending++]=ke>>>8&255,H.pending_buf[H.pending++]=ke&255}function Te(H,ke,Ne,ae){var Le=H.avail_in;return Le>ae&&(Le=ae),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,ae=H.strstart,Le,Fe,He=H.prev_length,qe=H.nice_match,Ke=H.strstart>H.w_size-q?H.strstart-(H.w_size-q):0,ct=H.window,xn=H.w_mask,wt=H.prev,dt=H.strstart+x,Pt=ct[ae+He-1],Vt=ct[ae+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[ae]||ct[++Le]!==ct[ae+1])){ae+=2,Le++;do;while(ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ct[++ae]===ct[++Le]&&ae<dt);if(Fe=x-(dt-ae),ae=dt-x,Fe>He){if(H.match_start=ke,He=Fe,Fe>=qe)break;Pt=ct[ae+He-1],Vt=ct[ae+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,ae,Le,Fe,He;do{if(Fe=H.window_size-H.lookahead-H.strstart,H.strstart>=ke+(ke-q)){e.arraySet(H.window,H.window,ke,ke,0),H.match_start-=ke,H.strstart-=ke,H.block_start-=ke,ae=H.hash_size,Ne=ae;do Le=H.head[--Ne],H.head[Ne]=Le>=ke?Le-ke:0;while(--ae);ae=ke,Ne=ae;do Le=H.prev[--Ne],H.prev[Ne]=Le>=ke?Le-ke:0;while(--ae);Fe+=ke}if(H.strm.avail_in===0)break;if(ae=Te(H.strm,H.window,H.strstart+H.lookahead,Fe),H.lookahead+=ae,H.lookahead+H.insert>=I)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+I-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<I)););}while(H.lookahead<q&&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 ne;if(H.lookahead===0)break}H.strstart+=H.lookahead,H.lookahead=0;var ae=H.block_start+Ne;if((H.strstart===0||H.strstart>=ae)&&(H.lookahead=H.strstart-ae,H.strstart=ae,z(H,!1),H.strm.avail_out===0)||H.strstart-H.block_start>=H.w_size-q&&(z(H,!1),H.strm.avail_out===0))return ne}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?ge:Ae):(H.strstart>H.block_start&&(z(H,!1),H.strm.avail_out===0),ne)}function Ge(H,ke){for(var Ne,ae;;){if(H.lookahead<q){if(Ce(H),H.lookahead<q&&ke===d)return ne;if(H.lookahead===0)break}if(Ne=0,H.lookahead>=I&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+I-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-q&&(H.match_length=Ie(H,Ne)),H.match_length>=I)if(ae=i._tr_tally(H,H.strstart-H.match_start,H.match_length-I),H.lookahead-=H.match_length,H.match_length<=H.max_lazy_match&&H.lookahead>=I){H.match_length--;do H.strstart++,H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+I-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 ae=i._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++;if(ae&&(z(H,!1),H.strm.avail_out===0))return ne}return H.insert=H.strstart<I-1?H.strstart:I-1,ke===w?(z(H,!0),H.strm.avail_out===0?ge:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ne:me}function ee(H,ke){for(var Ne,ae,Le;;){if(H.lookahead<q){if(Ce(H),H.lookahead<q&&ke===d)return ne;if(H.lookahead===0)break}if(Ne=0,H.lookahead>=I&&(H.ins_h=(H.ins_h<<H.hash_shift^H.window[H.strstart+I-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=I-1,Ne!==0&&H.prev_length<H.max_lazy_match&&H.strstart-Ne<=H.w_size-q&&(H.match_length=Ie(H,Ne),H.match_length<=5&&(H.strategy===v||H.match_length===I&&H.strstart-H.match_start>4096)&&(H.match_length=I-1)),H.prev_length>=I&&H.match_length<=H.prev_length){Le=H.strstart+H.lookahead-I,ae=i._tr_tally(H,H.strstart-1-H.prev_match,H.prev_length-I),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+I-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=I-1,H.strstart++,ae&&(z(H,!1),H.strm.avail_out===0))return ne}else if(H.match_available){if(ae=i._tr_tally(H,0,H.window[H.strstart-1]),ae&&z(H,!1),H.strstart++,H.lookahead--,H.strm.avail_out===0)return ne}else H.match_available=1,H.strstart++,H.lookahead--}return H.match_available&&(ae=i._tr_tally(H,0,H.window[H.strstart-1]),H.match_available=0),H.insert=H.strstart<I-1?H.strstart:I-1,ke===w?(z(H,!0),H.strm.avail_out===0?ge:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ne:me}function te(H,ke){for(var Ne,ae,Le,Fe,He=H.window;;){if(H.lookahead<=x){if(Ce(H),H.lookahead<=x&&ke===d)return ne;if(H.lookahead===0)break}if(H.match_length=0,H.lookahead>=I&&H.strstart>0&&(Le=H.strstart-1,ae=He[Le],ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le])){Fe=H.strstart+x;do;while(ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&ae===He[++Le]&&Le<Fe);H.match_length=x-(Fe-Le),H.match_length>H.lookahead&&(H.match_length=H.lookahead)}if(H.match_length>=I?(Ne=i._tr_tally(H,1,H.match_length-I),H.lookahead-=H.match_length,H.strstart+=H.match_length,H.match_length=0):(Ne=i._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++),Ne&&(z(H,!1),H.strm.avail_out===0))return ne}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?ge:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ne:me}function K(H,ke){for(var Ne;;){if(H.lookahead===0&&(Ce(H),H.lookahead===0)){if(ke===d)return ne;break}if(H.match_length=0,Ne=i._tr_tally(H,0,H.window[H.strstart]),H.lookahead--,H.strstart++,Ne&&(z(H,!1),H.strm.avail_out===0))return ne}return H.insert=0,ke===w?(z(H,!0),H.strm.avail_out===0?ge:Ae):H.last_lit&&(z(H,!1),H.strm.avail_out===0)?ne:me}function j(H,ke,Ne,ae,Le){this.good_length=H,this.max_lazy=ke,this.nice_length=Ne,this.max_chain=ae,this.func=Le}var G;G=[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,ee),new j(8,16,32,32,ee),new j(8,16,128,128,ee),new j(8,32,128,256,ee),new j(32,128,258,1024,ee),new j(32,258,258,4096,ee)];function ce(H){H.window_size=2*H.w_size,de(H.head),H.max_lazy_match=G[H.level].max_lazy,H.good_match=G[H.level].good_length,H.nice_match=G[H.level].nice_length,H.max_chain_length=G[H.level].max_chain,H.strstart=0,H.block_start=0,H.lookahead=0,H.insert=0,H.match_length=H.prev_length=I-1,H.match_available=0,H.ins_h=0}function $(){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=R,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(p*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(g+1),this.heap=new e.Buf16(2*y+1),de(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new e.Buf16(2*y+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 be(H){var ke;return!H||!H.state?le(H,M):(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?D:re,H.adler=ke.wrap===2?0:1,ke.last_flush=d,i._tr_init(ke),F)}function Se(H){var ke=be(H);return ke===F&&ce(H.state),ke}function Be(H,ke){return!H||!H.state||H.state.wrap!==2?M:(H.state.gzhead=ke,F)}function we(H,ke,Ne,ae,Le,Fe){if(!H)return M;var He=1;if(ke===b&&(ke=6),ae<0?(He=0,ae=-ae):ae>15&&(He=2,ae-=16),Le<1||Le>A||Ne!==R||ae<8||ae>15||ke<0||ke>9||Fe<0||Fe>k)return le(H,M);ae===8&&(ae=9);var qe=new $;return H.state=qe,qe.strm=H,qe.wrap=He,qe.gzhead=null,qe.w_bits=ae,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+I-1)/I),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,R,f,E,B)}function oe(H,ke){var Ne,ae,Le,Fe;if(!H||!H.state||ke>U||ke<0)return H?le(H,M):M;if(ae=H.state,!H.output||!H.input&&H.avail_in!==0||ae.status===se&&ke!==w)return le(H,H.avail_out===0?_:M);if(ae.strm=H,Ne=ae.last_flush,ae.last_flush=ke,ae.status===D)if(ae.wrap===2)H.adler=0,V(ae,31),V(ae,139),V(ae,8),ae.gzhead?(V(ae,(ae.gzhead.text?1:0)+(ae.gzhead.hcrc?2:0)+(ae.gzhead.extra?4:0)+(ae.gzhead.name?8:0)+(ae.gzhead.comment?16:0)),V(ae,ae.gzhead.time&255),V(ae,ae.gzhead.time>>8&255),V(ae,ae.gzhead.time>>16&255),V(ae,ae.gzhead.time>>24&255),V(ae,ae.level===9?2:ae.strategy>=h||ae.level<2?4:0),V(ae,ae.gzhead.os&255),ae.gzhead.extra&&ae.gzhead.extra.length&&(V(ae,ae.gzhead.extra.length&255),V(ae,ae.gzhead.extra.length>>8&255)),ae.gzhead.hcrc&&(H.adler=a(H.adler,ae.pending_buf,ae.pending,0)),ae.gzindex=0,ae.status=W):(V(ae,0),V(ae,0),V(ae,0),V(ae,0),V(ae,0),V(ae,ae.level===9?2:ae.strategy>=h||ae.level<2?4:0),V(ae,pe),ae.status=re);else{var He=R+(ae.w_bits-8<<4)<<8,qe=-1;ae.strategy>=h||ae.level<2?qe=0:ae.level<6?qe=1:ae.level===6?qe=2:qe=3,He|=qe<<6,ae.strstart!==0&&(He|=T),He+=31-He%31,ae.status=re,ue(ae,He),ae.strstart!==0&&(ue(ae,H.adler>>>16),ue(ae,H.adler&65535)),H.adler=1}if(ae.status===W)if(ae.gzhead.extra){for(Le=ae.pending;ae.gzindex<(ae.gzhead.extra.length&65535)&&!(ae.pending===ae.pending_buf_size&&(ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),Y(H),Le=ae.pending,ae.pending===ae.pending_buf_size));)V(ae,ae.gzhead.extra[ae.gzindex]&255),ae.gzindex++;ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),ae.gzindex===ae.gzhead.extra.length&&(ae.gzindex=0,ae.status=J)}else ae.status=J;if(ae.status===J)if(ae.gzhead.name){Le=ae.pending;do{if(ae.pending===ae.pending_buf_size&&(ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),Y(H),Le=ae.pending,ae.pending===ae.pending_buf_size)){Fe=1;break}ae.gzindex<ae.gzhead.name.length?Fe=ae.gzhead.name.charCodeAt(ae.gzindex++)&255:Fe=0,V(ae,Fe)}while(Fe!==0);ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),Fe===0&&(ae.gzindex=0,ae.status=X)}else ae.status=X;if(ae.status===X)if(ae.gzhead.comment){Le=ae.pending;do{if(ae.pending===ae.pending_buf_size&&(ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),Y(H),Le=ae.pending,ae.pending===ae.pending_buf_size)){Fe=1;break}ae.gzindex<ae.gzhead.comment.length?Fe=ae.gzhead.comment.charCodeAt(ae.gzindex++)&255:Fe=0,V(ae,Fe)}while(Fe!==0);ae.gzhead.hcrc&&ae.pending>Le&&(H.adler=a(H.adler,ae.pending_buf,ae.pending-Le,Le)),Fe===0&&(ae.status=Q)}else ae.status=Q;if(ae.status===Q&&(ae.gzhead.hcrc?(ae.pending+2>ae.pending_buf_size&&Y(H),ae.pending+2<=ae.pending_buf_size&&(V(ae,H.adler&255),V(ae,H.adler>>8&255),H.adler=0,ae.status=re)):ae.status=re),ae.pending!==0){if(Y(H),H.avail_out===0)return ae.last_flush=-1,F}else if(H.avail_in===0&&ye(ke)<=ye(Ne)&&ke!==w)return le(H,_);if(ae.status===se&&H.avail_in!==0)return le(H,_);if(H.avail_in!==0||ae.lookahead!==0||ke!==d&&ae.status!==se){var Ke=ae.strategy===h?K(ae,ke):ae.strategy===m?te(ae,ke):G[ae.level].func(ae,ke);if((Ke===ge||Ke===Ae)&&(ae.status=se),Ke===ne||Ke===ge)return H.avail_out===0&&(ae.last_flush=-1),F;if(Ke===me&&(ke===u?i._tr_align(ae):ke!==U&&(i._tr_stored_block(ae,0,0,!1),ke===c&&(de(ae.head),ae.lookahead===0&&(ae.strstart=0,ae.block_start=0,ae.insert=0))),Y(H),H.avail_out===0))return ae.last_flush=-1,F}return ke!==w?F:ae.wrap<=0?O:(ae.wrap===2?(V(ae,H.adler&255),V(ae,H.adler>>8&255),V(ae,H.adler>>16&255),V(ae,H.adler>>24&255),V(ae,H.total_in&255),V(ae,H.total_in>>8&255),V(ae,H.total_in>>16&255),V(ae,H.total_in>>24&255)):(ue(ae,H.adler>>>16),ue(ae,H.adler&65535)),Y(H),ae.wrap>0&&(ae.wrap=-ae.wrap),ae.pending!==0?F:O)}function Re(H){var ke;return!H||!H.state?M:(ke=H.state.status,ke!==D&&ke!==W&&ke!==J&&ke!==X&&ke!==Q&&ke!==re&&ke!==se?le(H,M):(H.state=null,ke===re?le(H,L):F))}function ze(H,ke){var Ne=ke.length,ae,Le,Fe,He,qe,Ke,ct,xn;if(!H||!H.state||(ae=H.state,He=ae.wrap,He===2||He===1&&ae.status!==D||ae.lookahead))return M;for(He===1&&(H.adler=n(H.adler,ke,Ne,0)),ae.wrap=0,Ne>=ae.w_size&&(He===0&&(de(ae.head),ae.strstart=0,ae.block_start=0,ae.insert=0),xn=new e.Buf8(ae.w_size),e.arraySet(xn,ke,Ne-ae.w_size,ae.w_size,0),ke=xn,Ne=ae.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(ae);ae.lookahead>=I;){Le=ae.strstart,Fe=ae.lookahead-(I-1);do ae.ins_h=(ae.ins_h<<ae.hash_shift^ae.window[Le+I-1])&ae.hash_mask,ae.prev[Le&ae.w_mask]=ae.head[ae.ins_h],ae.head[ae.ins_h]=Le,Le++;while(--Fe);ae.strstart=Le,ae.lookahead=I-1,Ce(ae)}return ae.strstart+=ae.lookahead,ae.block_start=ae.strstart,ae.insert=ae.lookahead,ae.lookahead=0,ae.match_length=ae.prev_length=I-1,ae.match_available=0,H.next_in=Ke,H.input=ct,H.avail_in=qe,ae.wrap=He,F}return Kn.deflateInit=Pe,Kn.deflateInit2=we,Kn.deflateReset=Se,Kn.deflateResetKeep=be,Kn.deflateSetHeader=Be,Kn.deflate=oe,Kn.deflateEnd=Re,Kn.deflateSetDictionary=ze,Kn.deflateInfo="pako deflate (from Nodeca project)",Kn}var or={},Dh;function Ly(){if(Dh)return or;Dh=1;var e=Ki(),i=!0,n=!0;try{String.fromCharCode.apply(null,[0])}catch{i=!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,or.string2buf=function(u){var c,w,U,F,O,M=u.length,L=0;for(F=0;F<M;F++)w=u.charCodeAt(F),(w&64512)===55296&&F+1<M&&(U=u.charCodeAt(F+1),(U&64512)===56320&&(w=65536+(w-55296<<10)+(U-56320),F++)),L+=w<128?1:w<2048?2:w<65536?3:4;for(c=new e.Buf8(L),O=0,F=0;O<L;F++)w=u.charCodeAt(F),(w&64512)===55296&&F+1<M&&(U=u.charCodeAt(F+1),(U&64512)===56320&&(w=65536+(w-55296<<10)+(U-56320),F++)),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&&i))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 or.buf2binstring=function(u){return d(u,u.length)},or.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},or.buf2string=function(u,c){var w,U,F,O,M=c||u.length,L=new Array(M*2);for(U=0,w=0;w<M;){if(F=u[w++],F<128){L[U++]=F;continue}if(O=a[F],O>4){L[U++]=65533,w+=O-1;continue}for(F&=O===2?31:O===3?15:7;O>1&&w<M;)F=F<<6|u[w++]&63,O--;if(O>1){L[U++]=65533;continue}F<65536?L[U++]=F:(F-=65536,L[U++]=55296|F>>10&1023,L[U++]=56320|F&1023)}return d(L,U)},or.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},or}var ol,jh;function _y(){if(jh)return ol;jh=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 ol=e,ol}var Uh;function TL(){if(Uh)return zr;Uh=1;var e=bL(),i=Ki(),n=Ly(),a=Oc(),l=_y(),d=Object.prototype.toString,u=0,c=4,w=0,U=1,F=2,O=-1,M=0,L=8;function _(m){if(!(this instanceof _))return new _(m);this.options=i.assign({level:O,method:L,chunkSize:16384,windowBits:15,memLevel:8,strategy:M,to:""},m||{});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 B=e.deflateInit2(this.strm,k.level,k.method,k.windowBits,k.memLevel,k.strategy);if(B!==w)throw new Error(a[B]);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,B=e.deflateSetDictionary(this.strm,C),B!==w)throw new Error(a[B]);this._dict_set=!0}}_.prototype.push=function(m,k){var B=this.strm,C=this.options.chunkSize,R,A;if(this.ended)return!1;A=k===~~k?k:k===!0?c:u,typeof m=="string"?B.input=n.string2buf(m):d.call(m)==="[object ArrayBuffer]"?B.input=new Uint8Array(m):B.input=m,B.next_in=0,B.avail_in=B.input.length;do{if(B.avail_out===0&&(B.output=new i.Buf8(C),B.next_out=0,B.avail_out=C),R=e.deflate(B,A),R!==U&&R!==w)return this.onEnd(R),this.ended=!0,!1;(B.avail_out===0||B.avail_in===0&&(A===c||A===F))&&(this.options.to==="string"?this.onData(n.buf2binstring(i.shrinkBuf(B.output,B.next_out))):this.onData(i.shrinkBuf(B.output,B.next_out)))}while((B.avail_in>0||B.avail_out===0)&&R!==U);return A===c?(R=e.deflateEnd(this.strm),this.onEnd(R),this.ended=!0,R===w):(A===F&&(this.onEnd(w),B.avail_out=0),!0)},_.prototype.onData=function(m){this.chunks.push(m)},_.prototype.onEnd=function(m){m===w&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=m,this.msg=this.strm.msg};function b(m,k){var B=new _(k);if(B.push(m,!0),B.err)throw B.msg||a[B.err];return B.result}function v(m,k){return k=k||{},k.raw=!0,b(m,k)}function h(m,k){return k=k||{},k.gzip=!0,b(m,k)}return zr.Deflate=_,zr.deflate=b,zr.deflateRaw=v,zr.gzip=h,zr}var Wr={},Bn={},al,xh;function vL(){if(xh)return al;xh=1;var e=30,i=12;return al=function(a,l){var d,u,c,w,U,F,O,M,L,_,b,v,h,m,k,B,C,R,A,f,E,S,P,y,r;d=a.state,u=a.next_in,y=a.input,c=u+(a.avail_in-5),w=a.next_out,r=a.output,U=w-(l-a.avail_out),F=w+(a.avail_out-257),O=d.dmax,M=d.wsize,L=d.whave,_=d.wnext,b=d.window,v=d.hold,h=d.bits,m=d.lencode,k=d.distcode,B=(1<<d.lenbits)-1,C=(1<<d.distbits)-1;e:do{h<15&&(v+=y[u++]<<h,h+=8,v+=y[u++]<<h,h+=8),R=m[v&B];t:for(;;){if(A=R>>>24,v>>>=A,h-=A,A=R>>>16&255,A===0)r[w++]=R&65535;else if(A&16){f=R&65535,A&=15,A&&(h<A&&(v+=y[u++]<<h,h+=8),f+=v&(1<<A)-1,v>>>=A,h-=A),h<15&&(v+=y[u++]<<h,h+=8,v+=y[u++]<<h,h+=8),R=k[v&C];n:for(;;){if(A=R>>>24,v>>>=A,h-=A,A=R>>>16&255,A&16){if(E=R&65535,A&=15,h<A&&(v+=y[u++]<<h,h+=8,h<A&&(v+=y[u++]<<h,h+=8)),E+=v&(1<<A)-1,E>O){a.msg="invalid distance too far back",d.mode=e;break e}if(v>>>=A,h-=A,A=w-U,E>A){if(A=E-A,A>L&&d.sane){a.msg="invalid distance too far back",d.mode=e;break e}if(S=0,P=b,_===0){if(S+=M-A,A<f){f-=A;do r[w++]=b[S++];while(--A);S=w-E,P=r}}else if(_<A){if(S+=M+_-A,A-=_,A<f){f-=A;do r[w++]=b[S++];while(--A);if(S=0,_<f){A=_,f-=A;do r[w++]=b[S++];while(--A);S=w-E,P=r}}}else if(S+=_-A,A<f){f-=A;do r[w++]=b[S++];while(--A);S=w-E,P=r}for(;f>2;)r[w++]=P[S++],r[w++]=P[S++],r[w++]=P[S++],f-=3;f&&(r[w++]=P[S++],f>1&&(r[w++]=P[S++]))}else{S=w-E;do r[w++]=r[S++],r[w++]=r[S++],r[w++]=r[S++],f-=3;while(f>2);f&&(r[w++]=r[S++],f>1&&(r[w++]=r[S++]))}}else if((A&64)===0){R=k[(R&65535)+(v&(1<<A)-1)];continue n}else{a.msg="invalid distance code",d.mode=e;break e}break}}else if((A&64)===0){R=m[(R&65535)+(v&(1<<A)-1)];continue t}else if(A&32){d.mode=i;break e}else{a.msg="invalid literal/length code",d.mode=e;break e}break}}while(u<c&&w<F);f=h>>3,u-=f,h-=f<<3,v&=(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<F?257+(F-w):257-(w-F),d.hold=v,d.bits=h},al}var ul,zh;function SL(){if(zh)return ul;zh=1;var e=Ki(),i=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],F=[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 ul=function(M,L,_,b,v,h,m,k){var B=k.bits,C=0,R=0,A=0,f=0,E=0,S=0,P=0,y=0,r=0,s=0,p,g,I,x,q,T=null,D=0,W,J=new e.Buf16(i+1),X=new e.Buf16(i+1),Q=null,re=0,se,ne,me;for(C=0;C<=i;C++)J[C]=0;for(R=0;R<b;R++)J[L[_+R]]++;for(E=B,f=i;f>=1&&J[f]===0;f--);if(E>f&&(E=f),f===0)return v[h++]=1<<24|64<<16|0,v[h++]=1<<24|64<<16|0,k.bits=1,0;for(A=1;A<f&&J[A]===0;A++);for(E<A&&(E=A),y=1,C=1;C<=i;C++)if(y<<=1,y-=J[C],y<0)return-1;if(y>0&&(M===l||f!==1))return-1;for(X[1]=0,C=1;C<i;C++)X[C+1]=X[C]+J[C];for(R=0;R<b;R++)L[_+R]!==0&&(m[X[L[_+R]]++]=R);if(M===l?(T=Q=m,W=19):M===d?(T=c,D-=257,Q=w,re-=257,W=256):(T=U,Q=F,W=-1),s=0,R=0,C=A,q=h,S=E,P=0,I=-1,r=1<<E,x=r-1,M===d&&r>n||M===u&&r>a)return 1;for(;;){se=C-P,m[R]<W?(ne=0,me=m[R]):m[R]>W?(ne=Q[re+m[R]],me=T[D+m[R]]):(ne=96,me=0),p=1<<C-P,g=1<<S,A=g;do g-=p,v[q+(s>>P)+g]=se<<24|ne<<16|me|0;while(g!==0);for(p=1<<C-1;s&p;)p>>=1;if(p!==0?(s&=p-1,s+=p):s=0,R++,--J[C]===0){if(C===f)break;C=L[_+m[R]]}if(C>E&&(s&x)!==I){for(P===0&&(P=E),q+=A,S=C-P,y=1<<S;S+P<f&&(y-=J[S+P],!(y<=0));)S++,y<<=1;if(r+=1<<S,M===d&&r>n||M===u&&r>a)return 1;I=s&x,v[I]=E<<24|S<<16|q-h|0}}return s!==0&&(v[q+s]=C-P<<24|64<<16|0),k.bits=E,0},ul}var Wh;function wL(){if(Wh)return Bn;Wh=1;var e=Ki(),i=Sy(),n=wy(),a=vL(),l=SL(),d=0,u=1,c=2,w=4,U=5,F=6,O=0,M=1,L=2,_=-2,b=-3,v=-4,h=-5,m=8,k=1,B=2,C=3,R=4,A=5,f=6,E=7,S=8,P=9,y=10,r=11,s=12,p=13,g=14,I=15,x=16,q=17,T=18,D=19,W=20,J=21,X=22,Q=23,re=24,se=25,ne=26,me=27,ge=28,Ae=29,pe=30,le=31,ye=32,de=852,Y=592,z=15,V=z;function ue(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?_:(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(Y),Pe.sane=1,Pe.back=-1,O)}function Ce(we){var Pe;return!we||!we.state?_:(Pe=we.state,Pe.wsize=0,Pe.whave=0,Pe.wnext=0,Ie(we))}function We(we,Pe){var oe,Re;return!we||!we.state||(Re=we.state,Pe<0?(oe=0,Pe=-Pe):(oe=(Pe>>4)+1,Pe<48&&(Pe&=15)),Pe&&(Pe<8||Pe>15))?_:(Re.window!==null&&Re.wbits!==Pe&&(Re.window=null),Re.wrap=oe,Re.wbits=Pe,Ce(we))}function Ge(we,Pe){var oe,Re;return we?(Re=new Te,we.state=Re,Re.window=null,oe=We(we,Pe),oe!==O&&(we.state=null),oe):_}function ee(we){return Ge(we,V)}var te=!0,K,j;function G(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,oe,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,oe-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,oe-Re,ze,H.wnext),Re-=ze,Re?(e.arraySet(H.window,Pe,oe-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 $(we,Pe){var oe,Re,ze,H,ke,Ne,ae,Le,Fe,He,qe,Ke,ct,xn,wt=0,dt,Pt,Vt,en,kr,Nr,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 _;oe=we.state,oe.mode===s&&(oe.mode=p),ke=we.next_out,ze=we.output,ae=we.avail_out,H=we.next_in,Re=we.input,Ne=we.avail_in,Le=oe.hold,Fe=oe.bits,He=Ne,qe=ae,ln=O;e:for(;;)switch(oe.mode){case k:if(oe.wrap===0){oe.mode=p;break}for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(oe.wrap&2&&Le===35615){oe.check=0,Jt[0]=Le&255,Jt[1]=Le>>>8&255,oe.check=n(oe.check,Jt,2,0),Le=0,Fe=0,oe.mode=B;break}if(oe.flags=0,oe.head&&(oe.head.done=!1),!(oe.wrap&1)||(((Le&255)<<8)+(Le>>8))%31){we.msg="incorrect header check",oe.mode=pe;break}if((Le&15)!==m){we.msg="unknown compression method",oe.mode=pe;break}if(Le>>>=4,Fe-=4,Mt=(Le&15)+8,oe.wbits===0)oe.wbits=Mt;else if(Mt>oe.wbits){we.msg="invalid window size",oe.mode=pe;break}oe.dmax=1<<Mt,we.adler=oe.check=1,oe.mode=Le&512?y:s,Le=0,Fe=0;break;case B:for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(oe.flags=Le,(oe.flags&255)!==m){we.msg="unknown compression method",oe.mode=pe;break}if(oe.flags&57344){we.msg="unknown header flags set",oe.mode=pe;break}oe.head&&(oe.head.text=Le>>8&1),oe.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,oe.check=n(oe.check,Jt,2,0)),Le=0,Fe=0,oe.mode=C;case C:for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.head&&(oe.head.time=Le),oe.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,Jt[2]=Le>>>16&255,Jt[3]=Le>>>24&255,oe.check=n(oe.check,Jt,4,0)),Le=0,Fe=0,oe.mode=R;case R:for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.head&&(oe.head.xflags=Le&255,oe.head.os=Le>>8),oe.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,oe.check=n(oe.check,Jt,2,0)),Le=0,Fe=0,oe.mode=A;case A:if(oe.flags&1024){for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.length=Le,oe.head&&(oe.head.extra_len=Le),oe.flags&512&&(Jt[0]=Le&255,Jt[1]=Le>>>8&255,oe.check=n(oe.check,Jt,2,0)),Le=0,Fe=0}else oe.head&&(oe.head.extra=null);oe.mode=f;case f:if(oe.flags&1024&&(Ke=oe.length,Ke>Ne&&(Ke=Ne),Ke&&(oe.head&&(Mt=oe.head.extra_len-oe.length,oe.head.extra||(oe.head.extra=new Array(oe.head.extra_len)),e.arraySet(oe.head.extra,Re,H,Ke,Mt)),oe.flags&512&&(oe.check=n(oe.check,Re,Ke,H)),Ne-=Ke,H+=Ke,oe.length-=Ke),oe.length))break e;oe.length=0,oe.mode=E;case E:if(oe.flags&2048){if(Ne===0)break e;Ke=0;do Mt=Re[H+Ke++],oe.head&&Mt&&oe.length<65536&&(oe.head.name+=String.fromCharCode(Mt));while(Mt&&Ke<Ne);if(oe.flags&512&&(oe.check=n(oe.check,Re,Ke,H)),Ne-=Ke,H+=Ke,Mt)break e}else oe.head&&(oe.head.name=null);oe.length=0,oe.mode=S;case S:if(oe.flags&4096){if(Ne===0)break e;Ke=0;do Mt=Re[H+Ke++],oe.head&&Mt&&oe.length<65536&&(oe.head.comment+=String.fromCharCode(Mt));while(Mt&&Ke<Ne);if(oe.flags&512&&(oe.check=n(oe.check,Re,Ke,H)),Ne-=Ke,H+=Ke,Mt)break e}else oe.head&&(oe.head.comment=null);oe.mode=P;case P:if(oe.flags&512){for(;Fe<16;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Le!==(oe.check&65535)){we.msg="header crc mismatch",oe.mode=pe;break}Le=0,Fe=0}oe.head&&(oe.head.hcrc=oe.flags>>9&1,oe.head.done=!0),we.adler=oe.check=0,oe.mode=s;break;case y:for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}we.adler=oe.check=ue(Le),Le=0,Fe=0,oe.mode=r;case r:if(oe.havedict===0)return we.next_out=ke,we.avail_out=ae,we.next_in=H,we.avail_in=Ne,oe.hold=Le,oe.bits=Fe,L;we.adler=oe.check=1,oe.mode=s;case s:if(Pe===U||Pe===F)break e;case p:if(oe.last){Le>>>=Fe&7,Fe-=Fe&7,oe.mode=me;break}for(;Fe<3;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}switch(oe.last=Le&1,Le>>>=1,Fe-=1,Le&3){case 0:oe.mode=g;break;case 1:if(G(oe),oe.mode=W,Pe===F){Le>>>=2,Fe-=2;break e}break;case 2:oe.mode=q;break;case 3:we.msg="invalid block type",oe.mode=pe}Le>>>=2,Fe-=2;break;case g: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",oe.mode=pe;break}if(oe.length=Le&65535,Le=0,Fe=0,oe.mode=I,Pe===F)break e;case I:oe.mode=x;case x:if(Ke=oe.length,Ke){if(Ke>Ne&&(Ke=Ne),Ke>ae&&(Ke=ae),Ke===0)break e;e.arraySet(ze,Re,H,Ke,ke),Ne-=Ke,H+=Ke,ae-=Ke,ke+=Ke,oe.length-=Ke;break}oe.mode=s;break;case q:for(;Fe<14;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(oe.nlen=(Le&31)+257,Le>>>=5,Fe-=5,oe.ndist=(Le&31)+1,Le>>>=5,Fe-=5,oe.ncode=(Le&15)+4,Le>>>=4,Fe-=4,oe.nlen>286||oe.ndist>30){we.msg="too many length or distance symbols",oe.mode=pe;break}oe.have=0,oe.mode=T;case T:for(;oe.have<oe.ncode;){for(;Fe<3;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.lens[ao[oe.have++]]=Le&7,Le>>>=3,Fe-=3}for(;oe.have<19;)oe.lens[ao[oe.have++]]=0;if(oe.lencode=oe.lendyn,oe.lenbits=7,zn={bits:oe.lenbits},ln=l(d,oe.lens,0,19,oe.lencode,0,oe.work,zn),oe.lenbits=zn.bits,ln){we.msg="invalid code lengths set",oe.mode=pe;break}oe.have=0,oe.mode=D;case D:for(;oe.have<oe.nlen+oe.ndist;){for(;wt=oe.lencode[Le&(1<<oe.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,oe.lens[oe.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,oe.have===0){we.msg="invalid bit length repeat",oe.mode=pe;break}Mt=oe.lens[oe.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(oe.have+Ke>oe.nlen+oe.ndist){we.msg="invalid bit length repeat",oe.mode=pe;break}for(;Ke--;)oe.lens[oe.have++]=Mt}}if(oe.mode===pe)break;if(oe.lens[256]===0){we.msg="invalid code -- missing end-of-block",oe.mode=pe;break}if(oe.lenbits=9,zn={bits:oe.lenbits},ln=l(u,oe.lens,0,oe.nlen,oe.lencode,0,oe.work,zn),oe.lenbits=zn.bits,ln){we.msg="invalid literal/lengths set",oe.mode=pe;break}if(oe.distbits=6,oe.distcode=oe.distdyn,zn={bits:oe.distbits},ln=l(c,oe.lens,oe.nlen,oe.ndist,oe.distcode,0,oe.work,zn),oe.distbits=zn.bits,ln){we.msg="invalid distances set",oe.mode=pe;break}if(oe.mode=W,Pe===F)break e;case W:oe.mode=J;case J:if(Ne>=6&&ae>=258){we.next_out=ke,we.avail_out=ae,we.next_in=H,we.avail_in=Ne,oe.hold=Le,oe.bits=Fe,a(we,qe),ke=we.next_out,ze=we.output,ae=we.avail_out,H=we.next_in,Re=we.input,Ne=we.avail_in,Le=oe.hold,Fe=oe.bits,oe.mode===s&&(oe.back=-1);break}for(oe.back=0;wt=oe.lencode[Le&(1<<oe.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)===0){for(en=dt,kr=Pt,Nr=Vt;wt=oe.lencode[Nr+((Le&(1<<en+kr)-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,oe.back+=en}if(Le>>>=dt,Fe-=dt,oe.back+=dt,oe.length=Vt,Pt===0){oe.mode=ne;break}if(Pt&32){oe.back=-1,oe.mode=s;break}if(Pt&64){we.msg="invalid literal/length code",oe.mode=pe;break}oe.extra=Pt&15,oe.mode=X;case X:if(oe.extra){for(bn=oe.extra;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.length+=Le&(1<<oe.extra)-1,Le>>>=oe.extra,Fe-=oe.extra,oe.back+=oe.extra}oe.was=oe.length,oe.mode=Q;case Q:for(;wt=oe.distcode[Le&(1<<oe.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)===0){for(en=dt,kr=Pt,Nr=Vt;wt=oe.distcode[Nr+((Le&(1<<en+kr)-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,oe.back+=en}if(Le>>>=dt,Fe-=dt,oe.back+=dt,Pt&64){we.msg="invalid distance code",oe.mode=pe;break}oe.offset=Vt,oe.extra=Pt&15,oe.mode=re;case re:if(oe.extra){for(bn=oe.extra;Fe<bn;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}oe.offset+=Le&(1<<oe.extra)-1,Le>>>=oe.extra,Fe-=oe.extra,oe.back+=oe.extra}if(oe.offset>oe.dmax){we.msg="invalid distance too far back",oe.mode=pe;break}oe.mode=se;case se:if(ae===0)break e;if(Ke=qe-ae,oe.offset>Ke){if(Ke=oe.offset-Ke,Ke>oe.whave&&oe.sane){we.msg="invalid distance too far back",oe.mode=pe;break}Ke>oe.wnext?(Ke-=oe.wnext,ct=oe.wsize-Ke):ct=oe.wnext-Ke,Ke>oe.length&&(Ke=oe.length),xn=oe.window}else xn=ze,ct=ke-oe.offset,Ke=oe.length;Ke>ae&&(Ke=ae),ae-=Ke,oe.length-=Ke;do ze[ke++]=xn[ct++];while(--Ke);oe.length===0&&(oe.mode=J);break;case ne:if(ae===0)break e;ze[ke++]=oe.length,ae--,oe.mode=J;break;case me:if(oe.wrap){for(;Fe<32;){if(Ne===0)break e;Ne--,Le|=Re[H++]<<Fe,Fe+=8}if(qe-=ae,we.total_out+=qe,oe.total+=qe,qe&&(we.adler=oe.check=oe.flags?n(oe.check,ze,qe,ke-qe):i(oe.check,ze,qe,ke-qe)),qe=ae,(oe.flags?Le:ue(Le))!==oe.check){we.msg="incorrect data check",oe.mode=pe;break}Le=0,Fe=0}oe.mode=ge;case ge:if(oe.wrap&&oe.flags){for(;Fe<32;){if(Ne===0)break e;Ne--,Le+=Re[H++]<<Fe,Fe+=8}if(Le!==(oe.total&4294967295)){we.msg="incorrect length check",oe.mode=pe;break}Le=0,Fe=0}oe.mode=Ae;case Ae:ln=M;break e;case pe:ln=b;break e;case le:return v;case ye:default:return _}return we.next_out=ke,we.avail_out=ae,we.next_in=H,we.avail_in=Ne,oe.hold=Le,oe.bits=Fe,(oe.wsize||qe!==we.avail_out&&oe.mode<pe&&(oe.mode<me||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,oe.total+=qe,oe.wrap&&qe&&(we.adler=oe.check=oe.flags?n(oe.check,ze,qe,we.next_out-qe):i(oe.check,ze,qe,we.next_out-qe)),we.data_type=oe.bits+(oe.last?64:0)+(oe.mode===s?128:0)+(oe.mode===W||oe.mode===I?256:0),(He===0&&qe===0||Pe===w)&&ln===O&&(ln=h),ln}function be(we){if(!we||!we.state)return _;var Pe=we.state;return Pe.window&&(Pe.window=null),we.state=null,O}function Se(we,Pe){var oe;return!we||!we.state||(oe=we.state,(oe.wrap&2)===0)?_:(oe.head=Pe,Pe.done=!1,O)}function Be(we,Pe){var oe=Pe.length,Re,ze,H;return!we||!we.state||(Re=we.state,Re.wrap!==0&&Re.mode!==r)?_:Re.mode===r&&(ze=1,ze=i(ze,Pe,oe,0),ze!==Re.check)?b:(H=ce(we,Pe,oe,oe),H?(Re.mode=le,v):(Re.havedict=1,O))}return Bn.inflateReset=Ce,Bn.inflateReset2=We,Bn.inflateResetKeep=Ie,Bn.inflateInit=ee,Bn.inflateInit2=Ge,Bn.inflate=$,Bn.inflateEnd=be,Bn.inflateGetHeader=Se,Bn.inflateSetDictionary=Be,Bn.inflateInfo="pako inflate (from Nodeca project)",Bn}var ll,qh;function ky(){return qh||(qh=1,ll={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}),ll}var cl,Jh;function LL(){if(Jh)return cl;Jh=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 cl=e,cl}var Gh;function _L(){if(Gh)return Wr;Gh=1;var e=wL(),i=Ki(),n=Ly(),a=ky(),l=Oc(),d=_y(),u=LL(),c=Object.prototype.toString;function w(O){if(!(this instanceof w))return new w(O);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},O||{});var M=this.options;M.raw&&M.windowBits>=0&&M.windowBits<16&&(M.windowBits=-M.windowBits,M.windowBits===0&&(M.windowBits=-15)),M.windowBits>=0&&M.windowBits<16&&!(O&&O.windowBits)&&(M.windowBits+=32),M.windowBits>15&&M.windowBits<48&&(M.windowBits&15)===0&&(M.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new d,this.strm.avail_out=0;var L=e.inflateInit2(this.strm,M.windowBits);if(L!==a.Z_OK)throw new Error(l[L]);if(this.header=new u,e.inflateGetHeader(this.strm,this.header),M.dictionary&&(typeof M.dictionary=="string"?M.dictionary=n.string2buf(M.dictionary):c.call(M.dictionary)==="[object ArrayBuffer]"&&(M.dictionary=new Uint8Array(M.dictionary)),M.raw&&(L=e.inflateSetDictionary(this.strm,M.dictionary),L!==a.Z_OK)))throw new Error(l[L])}w.prototype.push=function(O,M){var L=this.strm,_=this.options.chunkSize,b=this.options.dictionary,v,h,m,k,B,C=!1;if(this.ended)return!1;h=M===~~M?M:M===!0?a.Z_FINISH:a.Z_NO_FLUSH,typeof O=="string"?L.input=n.binstring2buf(O):c.call(O)==="[object ArrayBuffer]"?L.input=new Uint8Array(O):L.input=O,L.next_in=0,L.avail_in=L.input.length;do{if(L.avail_out===0&&(L.output=new i.Buf8(_),L.next_out=0,L.avail_out=_),v=e.inflate(L,a.Z_NO_FLUSH),v===a.Z_NEED_DICT&&b&&(v=e.inflateSetDictionary(this.strm,b)),v===a.Z_BUF_ERROR&&C===!0&&(v=a.Z_OK,C=!1),v!==a.Z_STREAM_END&&v!==a.Z_OK)return this.onEnd(v),this.ended=!0,!1;L.next_out&&(L.avail_out===0||v===a.Z_STREAM_END||L.avail_in===0&&(h===a.Z_FINISH||h===a.Z_SYNC_FLUSH))&&(this.options.to==="string"?(m=n.utf8border(L.output,L.next_out),k=L.next_out-m,B=n.buf2string(L.output,m),L.next_out=k,L.avail_out=_-k,k&&i.arraySet(L.output,L.output,m,k,0),this.onData(B)):this.onData(i.shrinkBuf(L.output,L.next_out))),L.avail_in===0&&L.avail_out===0&&(C=!0)}while((L.avail_in>0||L.avail_out===0)&&v!==a.Z_STREAM_END);return v===a.Z_STREAM_END&&(h=a.Z_FINISH),h===a.Z_FINISH?(v=e.inflateEnd(this.strm),this.onEnd(v),this.ended=!0,v===a.Z_OK):(h===a.Z_SYNC_FLUSH&&(this.onEnd(a.Z_OK),L.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=i.flattenChunks(this.chunks)),this.chunks=[],this.err=O,this.msg=this.strm.msg};function U(O,M){var L=new w(M);if(L.push(O,!0),L.err)throw L.msg||l[L.err];return L.result}function F(O,M){return M=M||{},M.raw=!0,U(O,M)}return Wr.Inflate=w,Wr.inflate=U,Wr.inflateRaw=F,Wr.ungzip=U,Wr}var fl,Hh;function kL(){if(Hh)return fl;Hh=1;var e=Ki().assign,i=TL(),n=_L(),a=ky(),l={};return e(l,i,n,a),fl=l,fl}var gi={},Kh;function yn(){if(Kh)return gi;Kh=1,Object.defineProperty(gi,"__esModule",{value:!0}),gi.messageAssert=gi.messageError=gi.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 i extends Error{constructor(d,u,c,w){super(c),this.errorMessage=d,this.messageName=u,this.properties=w}}gi.QuickTypeError=i;function n(l,d){const u=e[l];let c=u;const w=d;for(const U of Object.getOwnPropertyNames(w)){let F=w[U];typeof F=="object"&&typeof F.toString=="function"?F=F.toString():typeof F.message=="string"?F=F.message:typeof F!="string"&&(F=JSON.stringify(F)),c=c.replace("${"+U+"}",F)}throw new i(u,l,c,w)}gi.messageError=n;function a(l,d,u){if(!l)return n(d,u)}return gi.messageAssert=a,gi}const Cc=Symbol.for("yaml.alias"),Tc=Symbol.for("yaml.document"),Gi=Symbol.for("yaml.map"),Ny=Symbol.for("yaml.pair"),ai=Symbol.for("yaml.scalar"),es=Symbol.for("yaml.seq"),Un=Symbol.for("yaml.node.type"),Vi=e=>!!e&&typeof e=="object"&&e[Un]===Cc,Zi=e=>!!e&&typeof e=="object"&&e[Un]===Tc,gr=e=>!!e&&typeof e=="object"&&e[Un]===Gi,kt=e=>!!e&&typeof e=="object"&&e[Un]===Ny,vt=e=>!!e&&typeof e=="object"&&e[Un]===ai,br=e=>!!e&&typeof e=="object"&&e[Un]===es;function Ct(e){if(e&&typeof e=="object")switch(e[Un]){case Gi:case es:return!0}return!1}function Et(e){if(e&&typeof e=="object")switch(e[Un]){case Cc:case Gi:case ai:case es:return!0}return!1}const NL=e=>(vt(e)||Ct(e))&&!!e.anchor,pn=Symbol("break visit"),Oy=Symbol("skip children"),oi=Symbol("remove node");function Ci(e,i){const n=Cy(i);Zi(e)?Gr(null,e.contents,n,Object.freeze([e]))===oi&&(e.contents=null):Gr(null,e,n,Object.freeze([]))}Ci.BREAK=pn;Ci.SKIP=Oy;Ci.REMOVE=oi;function Gr(e,i,n,a){const l=Ey(e,i,n,a);if(Et(l)||kt(l))return Ay(e,a,l),Gr(e,l,n,a);if(typeof l!="symbol"){if(Ct(i)){a=Object.freeze(a.concat(i));for(let d=0;d<i.items.length;++d){const u=Gr(d,i.items[d],n,a);if(typeof u=="number")d=u-1;else{if(u===pn)return pn;u===oi&&(i.items.splice(d,1),d-=1)}}}else if(kt(i)){a=Object.freeze(a.concat(i));const d=Gr("key",i.key,n,a);if(d===pn)return pn;d===oi&&(i.key=null);const u=Gr("value",i.value,n,a);if(u===pn)return pn;u===oi&&(i.value=null)}}return l}async function $s(e,i){const n=Cy(i);Zi(e)?await Hr(null,e.contents,n,Object.freeze([e]))===oi&&(e.contents=null):await Hr(null,e,n,Object.freeze([]))}$s.BREAK=pn;$s.SKIP=Oy;$s.REMOVE=oi;async function Hr(e,i,n,a){const l=await Ey(e,i,n,a);if(Et(l)||kt(l))return Ay(e,a,l),Hr(e,l,n,a);if(typeof l!="symbol"){if(Ct(i)){a=Object.freeze(a.concat(i));for(let d=0;d<i.items.length;++d){const u=await Hr(d,i.items[d],n,a);if(typeof u=="number")d=u-1;else{if(u===pn)return pn;u===oi&&(i.items.splice(d,1),d-=1)}}}else if(kt(i)){a=Object.freeze(a.concat(i));const d=await Hr("key",i.key,n,a);if(d===pn)return pn;d===oi&&(i.key=null);const u=await Hr("value",i.value,n,a);if(u===pn)return pn;u===oi&&(i.value=null)}}return l}function Cy(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 Ey(e,i,n,a){if(typeof n=="function")return n(e,i,a);if(gr(i))return n.Map?.(e,i,a);if(br(i))return n.Seq?.(e,i,a);if(kt(i))return n.Pair?.(e,i,a);if(vt(i))return n.Scalar?.(e,i,a);if(Vi(i))return n.Alias?.(e,i,a)}function Ay(e,i,n){const a=i[i.length-1];if(Ct(a))a.items[e]=n;else if(kt(a))e==="key"?a.key=n:a.value=n;else if(Zi(a))a.contents=n;else{const l=Vi(a)?"alias":"scalar";throw new Error(`Cannot replace node with ${l} parent`)}}const OL={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},CL=e=>e.replace(/[!,[\]{}]/g,i=>OL[i]);class un{constructor(i,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},un.defaultYaml,i),this.tags=Object.assign({},un.defaultTags,n)}clone(){const i=new un(this.yaml,this.tags);return i.docStart=this.docStart,i}atDocument(){const i=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 i}add(i,n){this.atNextDocument&&(this.yaml={explicit:un.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},un.defaultTags),this.atNextDocument=!1);const a=i.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(i,n){if(i==="!")return"!";if(i[0]!=="!")return n(`Not a valid tag: ${i}`),null;if(i[1]==="<"){const u=i.slice(2,-1);return u==="!"||u==="!!"?(n(`Verbatim tags aren't resolved, so ${i} is invalid.`),null):(i[i.length-1]!==">"&&n("Verbatim tags must end with a >"),u)}const[,a,l]=i.match(/^(.*!)([^!]*)$/s);l||n(`The ${i} 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==="!"?i:(n(`Could not resolve tag: ${i}`),null)}tagString(i){for(const[n,a]of Object.entries(this.tags))if(i.startsWith(a))return n+CL(i.substring(a.length));return i[0]==="!"?i:`!<${i}>`}toString(i){const n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],a=Object.entries(this.tags);let l;if(i&&a.length>0&&Et(i.contents)){const d={};Ci(i.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:"||(!i||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 Fy(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 Py(e){const i=new Set;return Ci(e,{Value(n,a){a.anchor&&i.add(a.anchor)}}),i}function Iy(e,i){for(let n=1;;++n){const a=`${e}${n}`;if(!i.has(a))return a}}function EL(e,i){const n=[],a=new Map;let l=null;return{onAnchor:d=>{n.push(d),l||(l=Py(e));const u=Iy(i,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 Kr(e,i,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=Kr(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=Kr(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=Kr(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=Kr(e,a,l,d);u===void 0?delete a[l]:u!==d&&(a[l]=u)}return e.call(i,n,a)}function jn(e,i,n){if(Array.isArray(e))return e.map((a,l)=>jn(a,String(l),n));if(e&&typeof e.toJSON=="function"){if(!n||!NL(e))return e.toJSON(i,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(i,n);return n.onCreate&&n.onCreate(l),l}return typeof e=="bigint"&&!n?.keep?Number(e):e}class Ec{constructor(i){Object.defineProperty(this,Un,{value:i})}clone(){const i=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(i.range=this.range.slice()),i}toJS(i,{mapAsMap:n,maxAliasCount:a,onAnchor:l,reviver:d}={}){if(!Zi(i))throw new TypeError("A document argument is required");const u={anchors:new Map,doc:i,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"?Kr(d,{"":c},"",c):c}}class eo extends Ec{constructor(i){super(Cc),this.source=i,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(i){let n;return Ci(i,{Node:(a,l)=>{if(l===this)return Ci.BREAK;l.anchor===this.source&&(n=l)}}),n}toJSON(i,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=ca(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(i,n,a){const l=`*${this.source}`;if(i){if(Fy(this.source),i.options.verifyAliasOrder&&!i.anchors.has(this.source)){const d=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(d)}if(i.implicitKey)return`${l} `}return l}}function ca(e,i,n){if(Vi(i)){const a=i.resolve(e),l=n&&a&&n.get(a);return l?l.count*l.aliasCount:0}else if(Ct(i)){let a=0;for(const l of i.items){const d=ca(e,l,n);d>a&&(a=d)}return a}else if(kt(i)){const a=ca(e,i.key,n),l=ca(e,i.value,n);return Math.max(a,l)}return 1}const Ry=e=>!e||typeof e!="function"&&typeof e!="object";class tt extends Ec{constructor(i){super(ai),this.value=i}toJSON(i,n){return n?.keep?this.value:jn(this.value,i,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 AL="tag:yaml.org,2002:";function FL(e,i,n){if(i){const a=n.filter(d=>d.tag===i),l=a.find(d=>!d.format)??a[0];if(!l)throw new Error(`Tag ${i} not found`);return l}return n.find(a=>a.identify?.(e)&&!a.format)}function Qs(e,i,n){if(Zi(e)&&(e=e.contents),Et(e))return e;if(kt(e)){const O=n.schema[Gi].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)}i?.startsWith("!!")&&(i=AL+i.slice(2));let U=FL(e,i,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[Gi]:Symbol.iterator in Object(e)?u[es]:u[Gi]}d&&(d(U),delete n.onTagObj);const F=U?.createNode?U.createNode(n.schema,e,n):typeof U?.nodeClass?.from=="function"?U.nodeClass.from(n.schema,e,n):new tt(e);return i?F.tag=i:U.default||(F.tag=U.tag),w&&(w.node=F),F}function ba(e,i,n){let a=n;for(let l=i.length-1;l>=0;--l){const d=i[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 Hs=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done;class My extends Ec{constructor(i,n){super(i),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(i){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return i&&(n.schema=i),n.items=n.items.map(a=>Et(a)||kt(a)?a.clone(i):a),this.range&&(n.range=this.range.slice()),n}addIn(i,n){if(Hs(i))this.add(n);else{const[a,...l]=i,d=this.get(a,!0);if(Ct(d))d.addIn(l,n);else if(d===void 0&&this.schema)this.set(a,ba(this.schema,l,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${l}`)}}deleteIn(i){const[n,...a]=i;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(i,n){const[a,...l]=i,d=this.get(a,!0);return l.length===0?!n&&vt(d)?d.value:d:Ct(d)?d.getIn(l,n):void 0}hasAllNullValues(i){return this.items.every(n=>{if(!kt(n))return!1;const a=n.value;return a==null||i&&vt(a)&&a.value==null&&!a.commentBefore&&!a.comment&&!a.tag})}hasIn(i){const[n,...a]=i;if(a.length===0)return this.has(n);const l=this.get(n,!0);return Ct(l)?l.hasIn(a):!1}setIn(i,n){const[a,...l]=i;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,ba(this.schema,l,n));else throw new Error(`Expected YAML collection at ${a}. Remaining path: ${l}`)}}}const PL=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function Ni(e,i){return/^\n+$/.test(e)?e.substring(1):i?e.replace(/^(?! *$)/gm,i):e}const pr=(e,i,n)=>e.endsWith(`
|
|
3
|
+
`)?Ni(n,i):n.includes(`
|
|
4
|
+
`)?`
|
|
5
|
+
`+Ni(n,i):(e.endsWith(" ")?"":" ")+n,By="flow",vc="block",fa="quoted";function wa(e,i,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-i.length);if(e.length<=w)return e;const U=[],F={};let O=l-i.length;typeof a=="number"&&(a>l-Math.max(2,d)?U.push(0):O=l-a);let M,L,_=!1,b=-1,v=-1,h=-1;n===vc&&(b=Vh(e,b,i.length),b!==-1&&(O=b+w));for(let k;k=e[b+=1];){if(n===fa&&k==="\\"){switch(v=b,e[b+1]){case"x":b+=3;break;case"u":b+=5;break;case"U":b+=9;break;default:b+=1}h=b}if(k===`
|
|
6
|
+
`)n===vc&&(b=Vh(e,b,i.length)),O=b+i.length+w,M=void 0;else{if(k===" "&&L&&L!==" "&&L!==`
|
|
7
|
+
`&&L!==" "){const B=e[b+1];B&&B!==" "&&B!==`
|
|
8
|
+
`&&B!==" "&&(M=b)}if(b>=O)if(M)U.push(M),O=M+w,M=void 0;else if(n===fa){for(;L===" "||L===" ";)L=k,k=e[b+=1],_=!0;const B=b>h+1?b-2:v-1;if(F[B])return e;U.push(B),F[B]=!0,O=B+w,M=void 0}else _=!0}L=k}if(_&&c&&c(),U.length===0)return e;u&&u();let m=e.slice(0,U[0]);for(let k=0;k<U.length;++k){const B=U[k],C=U[k+1]||e.length;B===0?m=`
|
|
9
|
+
${i}${e.slice(0,C)}`:(n===fa&&F[B]&&(m+=`${e[B]}\\`),m+=`
|
|
10
|
+
${i}${e.slice(B+1,C)}`)}return m}function Vh(e,i,n){let a=i,l=i+1,d=e[l];for(;d===" "||d===" ";)if(i<l+n)d=e[++i];else{do d=e[++i];while(d&&d!==`
|
|
11
|
+
`);a=i,l=i+1,d=e[l]}return a}const La=(e,i)=>({indentAtStart:i?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),_a=e=>/^(%|---|\.\.\.)/m.test(e);function IL(e,i,n){if(!i||i<0)return!1;const a=i-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 Zs(e,i){const n=JSON.stringify(e);if(i.options.doubleQuotedAsJSON)return n;const{implicitKey:a}=i,l=i.options.doubleQuotedMinMultiLineLength,d=i.indent||(_a(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 F=n.substr(w+2,4);switch(F){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:F.substr(0,2)==="00"?u+="\\x"+F.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:wa(u,d,fa,La(i,!1))}function Sc(e,i){if(i.options.singleQuote===!1||i.implicitKey&&e.includes(`
|
|
16
|
+
`)||/[ \t]\n|\n[ \t]/.test(e))return Zs(e,i);const n=i.indent||(_a(e)?" ":""),a="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
17
|
+
${n}`)+"'";return i.implicitKey?a:wa(a,n,By,La(i,!1))}function Vr(e,i){const{singleQuote:n}=i.options;let a;if(n===!1)a=Zs;else{const l=e.includes('"'),d=e.includes("'");l&&!d?a=Sc:d&&!l?a=Zs:a=n?Sc:Zs}return a(e,i)}let wc;try{wc=new RegExp(`(^|(?<!
|
|
18
|
+
))
|
|
19
|
+
+(?!
|
|
20
|
+
|$)`,"g")}catch{wc=/\n+(?!\n|$)/g}function da({comment:e,type:i,value:n},a,l,d){const{blockQuote:u,commentString:c,lineWidth:w}=a.options;if(!u||/\n[\t ]+$/.test(n)||/^\s*$/.test(n))return Vr(n,a);const U=a.indent||(a.forceBlockIndent||_a(n)?" ":""),F=u==="literal"?!0:u==="folded"||i===tt.BLOCK_FOLDED?!1:i===tt.BLOCK_LITERAL?!0:!IL(n,w,U.length);if(!n)return F?`|
|
|
21
|
+
`:`>
|
|
22
|
+
`;let O,M;for(M=n.length;M>0;--M){const C=n[M-1];if(C!==`
|
|
23
|
+
`&&C!==" "&&C!==" ")break}let L=n.substring(M);const _=L.indexOf(`
|
|
24
|
+
`);_===-1?O="-":n===L||_!==L.length-1?(O="+",d&&d()):O="",L&&(n=n.slice(0,-L.length),L[L.length-1]===`
|
|
25
|
+
`&&(L=L.slice(0,-1)),L=L.replace(wc,`$&${U}`));let b=!1,v,h=-1;for(v=0;v<n.length;++v){const C=n[v];if(C===" ")b=!0;else if(C===`
|
|
26
|
+
`)h=v;else break}let m=n.substring(0,h<v?h+1:v);m&&(n=n.substring(m.length),m=m.replace(/\n+/g,`$&${U}`));let B=(b?U?"2":"1":"")+O;if(e&&(B+=" "+c(e.replace(/ ?[\r\n]+/g," ")),l&&l()),!F){const C=n.replace(/\n+/g,`
|
|
27
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${U}`);let R=!1;const A=La(a,!0);u!=="folded"&&i!==tt.BLOCK_FOLDED&&(A.onOverflow=()=>{R=!0});const f=wa(`${m}${C}${L}`,U,vc,A);if(!R)return`>${B}
|
|
28
|
+
${U}${f}`}return n=n.replace(/\n+/g,`$&${U}`),`|${B}
|
|
29
|
+
${U}${m}${n}${L}`}function RL(e,i,n,a){const{type:l,value:d}=e,{actualString:u,implicitKey:c,indent:w,indentStep:U,inFlow:F}=i;if(c&&d.includes(`
|
|
30
|
+
`)||F&&/[[\]{},]/.test(d))return Vr(d,i);if(!d||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(d))return c||F||!d.includes(`
|
|
31
|
+
`)?Vr(d,i):da(e,i,n,a);if(!c&&!F&&l!==tt.PLAIN&&d.includes(`
|
|
32
|
+
`))return da(e,i,n,a);if(_a(d)){if(w==="")return i.forceBlockIndent=!0,da(e,i,n,a);if(c&&w===U)return Vr(d,i)}const O=d.replace(/\n+/g,`$&
|
|
33
|
+
${w}`);if(u){const M=b=>b.default&&b.tag!=="tag:yaml.org,2002:str"&&b.test?.test(O),{compat:L,tags:_}=i.doc.schema;if(_.some(M)||L?.some(M))return Vr(d,i)}return c?O:wa(O,w,By,La(i,!1))}function to(e,i,n,a){const{implicitKey:l,inFlow:d}=i,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=F=>{switch(F){case tt.BLOCK_FOLDED:case tt.BLOCK_LITERAL:return l||d?Vr(u.value,i):da(u,i,n,a);case tt.QUOTE_DOUBLE:return Zs(u.value,i);case tt.QUOTE_SINGLE:return Sc(u.value,i);case tt.PLAIN:return RL(u,i,n,a);default:return null}};let U=w(c);if(U===null){const{defaultKeyType:F,defaultStringType:O}=i.options,M=l&&F||O;if(U=w(M),U===null)throw new Error(`Unsupported default string type ${M}`)}return U}function Dy(e,i){const n=Object.assign({blockQuote:!0,commentString:PL,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,i);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 ML(e,i){if(i.tag){const l=e.filter(d=>d.tag===i.tag);if(l.length>0)return l.find(d=>d.format===i.format)??l[0]}let n,a;if(vt(i)){a=i.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===i.format)??l.find(d=>!d.format)}else a=i,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 BL(e,i,{anchors:n,doc:a}){if(!a.directives)return"";const l=[],d=(vt(e)||Ct(e))&&e.anchor;d&&Fy(d)&&(n.add(d),l.push(`&${d}`));const u=e.tag?e.tag:i.default?null:i.tag;return u&&l.push(a.directives.tagString(u)),l.join(" ")}function Yr(e,i,n,a){if(kt(e))return e.toString(i,n,a);if(Vi(e)){if(i.doc.directives)return e.toString(i);if(i.resolvedAliases?.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");i.resolvedAliases?i.resolvedAliases.add(e):i.resolvedAliases=new Set([e]),e=e.resolve(i.doc)}let l;const d=Et(e)?e:i.doc.createNode(e,{onTagObj:w=>l=w});l||(l=ML(i.doc.schema.tags,d));const u=BL(d,l,i);u.length>0&&(i.indentAtStart=(i.indentAtStart??0)+u.length+1);const c=typeof l.stringify=="function"?l.stringify(d,i,n,a):vt(d)?to(d,i,n,a):d.toString(i,n,a);return u?vt(d)||c[0]==="{"||c[0]==="["?`${u} ${c}`:`${u}
|
|
34
|
+
${i.indent}${c}`:c}function DL({key:e,value:i},n,a,l){const{allNullValues:d,doc:u,indent:c,indentStep:w,options:{commentString:U,indentSeq:F,simpleKeys:O}}=n;let M=Et(e)&&e.comment||null;if(O){if(M)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 L=!O&&(!e||M&&i==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:!L&&(O||!d),indent:c+w});let _=!1,b=!1,v=Yr(e,n,()=>_=!0,()=>b=!0);if(!L&&!n.inFlow&&v.length>1024){if(O)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");L=!0}if(n.inFlow){if(d||i==null)return _&&a&&a(),v===""?"?":L?`? ${v}`:v}else if(d&&!O||i==null&&L)return v=`? ${v}`,M&&!_?v+=pr(v,n.indent,U(M)):b&&l&&l(),v;_&&(M=null),L?(M&&(v+=pr(v,n.indent,U(M))),v=`? ${v}
|
|
35
|
+
${c}:`):(v=`${v}:`,M&&(v+=pr(v,n.indent,U(M))));let h,m,k;Et(i)?(h=!!i.spaceBefore,m=i.commentBefore,k=i.comment):(h=!1,m=null,k=null,i&&typeof i=="object"&&(i=u.createNode(i))),n.implicitKey=!1,!L&&!M&&vt(i)&&(n.indentAtStart=v.length+1),b=!1,!F&&w.length>=2&&!n.inFlow&&!L&&br(i)&&!i.flow&&!i.tag&&!i.anchor&&(n.indent=n.indent.substring(2));let B=!1;const C=Yr(i,n,()=>B=!0,()=>b=!0);let R=" ";if(M||h||m){if(R=h?`
|
|
36
|
+
`:"",m){const A=U(m);R+=`
|
|
37
|
+
${Ni(A,n.indent)}`}C===""&&!n.inFlow?R===`
|
|
38
|
+
`&&(R=`
|
|
39
|
+
|
|
40
|
+
`):R+=`
|
|
41
|
+
${n.indent}`}else if(!L&&Ct(i)){const A=C[0],f=C.indexOf(`
|
|
42
|
+
`),E=f!==-1,S=n.inFlow??i.flow??i.items.length===0;if(E||!S){let P=!1;if(E&&(A==="&"||A==="!")){let y=C.indexOf(" ");A==="&"&&y!==-1&&y<f&&C[y+1]==="!"&&(y=C.indexOf(" ",y+1)),(y===-1||f<y)&&(P=!0)}P||(R=`
|
|
43
|
+
${n.indent}`)}}else(C===""||C[0]===`
|
|
44
|
+
`)&&(R="");return v+=R+C,n.inFlow?B&&a&&a():k&&!B?v+=pr(v,n.indent,U(k)):b&&l&&l(),v}function jy(e,i){(e==="debug"||e==="warn")&&console.warn(i)}const Xo="<<",Oi={identify:e=>e===Xo||typeof e=="symbol"&&e.description===Xo,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new tt(Symbol(Xo)),{addToJSMap:Uy}),stringify:()=>Xo},jL=(e,i)=>(Oi.identify(i)||vt(i)&&(!i.type||i.type===tt.PLAIN)&&Oi.identify(i.value))&&e?.doc.schema.tags.some(n=>n.tag===Oi.tag&&n.default);function Uy(e,i,n){if(n=e&&Vi(n)?n.resolve(e.doc):n,br(n))for(const a of n.items)dl(e,i,a);else if(Array.isArray(n))for(const a of n)dl(e,i,a);else dl(e,i,n)}function dl(e,i,n){const a=e&&Vi(n)?n.resolve(e.doc):n;if(!gr(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)i instanceof Map?i.has(d)||i.set(d,u):i instanceof Set?i.add(d):Object.prototype.hasOwnProperty.call(i,d)||Object.defineProperty(i,d,{value:u,writable:!0,enumerable:!0,configurable:!0});return i}function xy(e,i,{key:n,value:a}){if(Et(n)&&n.addToJSMap)n.addToJSMap(e,i,a);else if(jL(e,n))Uy(e,i,a);else{const l=jn(n,"",e);if(i instanceof Map)i.set(l,jn(a,l,e));else if(i instanceof Set)i.add(l);else{const d=UL(n,l,e),u=jn(a,d,e);d in i?Object.defineProperty(i,d,{value:u,writable:!0,enumerable:!0,configurable:!0}):i[d]=u}}return i}function UL(e,i,n){if(i===null)return"";if(typeof i!="object")return String(i);if(Et(e)&&n?.doc){const a=Dy(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)+'..."'),jy(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(i)}function Ac(e,i,n){const a=Qs(e,void 0,n),l=Qs(i,void 0,n);return new $t(a,l)}class $t{constructor(i,n=null){Object.defineProperty(this,Un,{value:Ny}),this.key=i,this.value=n}clone(i){let{key:n,value:a}=this;return Et(n)&&(n=n.clone(i)),Et(a)&&(a=a.clone(i)),new $t(n,a)}toJSON(i,n){const a=n?.mapAsMap?new Map:{};return xy(n,a,this)}toString(i,n,a){return i?.doc?DL(this,i,n,a):JSON.stringify(this)}}function zy(e,i,n){return(i.inFlow??e.flow?zL:xL)(e,i,n)}function xL({comment:e,items:i},n,{blockItemPrefix:a,flowChars:l,itemIndent:d,onChompKeep:u,onComment:c}){const{indent:w,options:{commentString:U}}=n,F=Object.assign({},n,{indent:d,type:null});let O=!1;const M=[];for(let _=0;_<i.length;++_){const b=i[_];let v=null;if(Et(b))!O&&b.spaceBefore&&M.push(""),Ta(n,M,b.commentBefore,O),b.comment&&(v=b.comment);else if(kt(b)){const m=Et(b.key)?b.key:null;m&&(!O&&m.spaceBefore&&M.push(""),Ta(n,M,m.commentBefore,O))}O=!1;let h=Yr(b,F,()=>v=null,()=>O=!0);v&&(h+=pr(h,d,U(v))),O&&v&&(O=!1),M.push(a+h)}let L;if(M.length===0)L=l.start+l.end;else{L=M[0];for(let _=1;_<M.length;++_){const b=M[_];L+=b?`
|
|
45
|
+
${w}${b}`:`
|
|
46
|
+
`}}return e?(L+=`
|
|
47
|
+
`+Ni(U(e),w),c&&c()):O&&u&&u(),L}function zL({items:e},i,{flowChars:n,itemIndent:a}){const{indent:l,indentStep:d,flowCollectionPadding:u,options:{commentString:c}}=i;a+=d;const w=Object.assign({},i,{indent:a,inFlow:!0,type:null});let U=!1,F=0;const O=[];for(let _=0;_<e.length;++_){const b=e[_];let v=null;if(Et(b))b.spaceBefore&&O.push(""),Ta(i,O,b.commentBefore,!1),b.comment&&(v=b.comment);else if(kt(b)){const m=Et(b.key)?b.key:null;m&&(m.spaceBefore&&O.push(""),Ta(i,O,m.commentBefore,!1),m.comment&&(U=!0));const k=Et(b.value)?b.value:null;k?(k.comment&&(v=k.comment),k.commentBefore&&(U=!0)):b.value==null&&m?.comment&&(v=m.comment)}v&&(U=!0);let h=Yr(b,w,()=>v=null);_<e.length-1&&(h+=","),v&&(h+=pr(h,a,c(v))),!U&&(O.length>F||h.includes(`
|
|
48
|
+
`))&&(U=!0),O.push(h),F=O.length}const{start:M,end:L}=n;if(O.length===0)return M+L;if(!U){const _=O.reduce((b,v)=>b+v.length+2,2);U=i.options.lineWidth>0&&_>i.options.lineWidth}if(U){let _=M;for(const b of O)_+=b?`
|
|
49
|
+
${d}${l}${b}`:`
|
|
50
|
+
`;return`${_}
|
|
51
|
+
${l}${L}`}else return`${M}${u}${O.join(" ")}${u}${L}`}function Ta({indent:e,options:{commentString:i}},n,a,l){if(a&&l&&(a=a.replace(/^\n+/,"")),a){const d=Ni(i(a),e);n.push(d.trimStart())}}function mr(e,i){const n=vt(i)?i.value:i;for(const a of e)if(kt(a)&&(a.key===i||a.key===n||vt(a.key)&&a.key.value===n))return a}class mn extends My{static get tagName(){return"tag:yaml.org,2002:map"}constructor(i){super(Gi,i),this.items=[]}static from(i,n,a){const{keepUndefined:l,replacer:d}=a,u=new this(i),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(Ac(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 i.sortMapEntries=="function"&&u.items.sort(i.sortMapEntries),u}add(i,n){let a;kt(i)?a=i:!i||typeof i!="object"||!("key"in i)?a=new $t(i,i?.value):a=new $t(i.key,i.value);const l=mr(this.items,a.key),d=this.schema?.sortMapEntries;if(l){if(!n)throw new Error(`Key ${a.key} already set`);vt(l.value)&&Ry(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(i){const n=mr(this.items,i);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(i,n){const l=mr(this.items,i)?.value;return(!n&&vt(l)?l.value:l)??void 0}has(i){return!!mr(this.items,i)}set(i,n){this.add(new $t(i,n),!0)}toJSON(i,n,a){const l=a?new a:n?.mapAsMap?new Map:{};n?.onCreate&&n.onCreate(l);for(const d of this.items)xy(n,l,d);return l}toString(i,n,a){if(!i)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!i.allNullValues&&this.hasAllNullValues(!1)&&(i=Object.assign({},i,{allNullValues:!0})),zy(this,i,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:i.indent||"",onChompKeep:a,onComment:n})}}const ts={collection:"map",default:!0,nodeClass:mn,tag:"tag:yaml.org,2002:map",resolve(e,i){return gr(e)||i("Expected a mapping for this tag"),e},createNode:(e,i,n)=>mn.from(e,i,n)};class Ei extends My{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(i){super(es,i),this.items=[]}add(i){this.items.push(i)}delete(i){const n=Yo(i);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(i,n){const a=Yo(i);if(typeof a!="number")return;const l=this.items[a];return!n&&vt(l)?l.value:l}has(i){const n=Yo(i);return typeof n=="number"&&n<this.items.length}set(i,n){const a=Yo(i);if(typeof a!="number")throw new Error(`Expected a valid index, not ${i}.`);const l=this.items[a];vt(l)&&Ry(n)?l.value=n:this.items[a]=n}toJSON(i,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(i,n,a){return i?zy(this,i,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(i.indent||"")+" ",onChompKeep:a,onComment:n}):JSON.stringify(this)}static from(i,n,a){const{replacer:l}=a,d=new this(i);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 Yo(e){let i=vt(e)?e.value:e;return i&&typeof i=="string"&&(i=Number(i)),typeof i=="number"&&Number.isInteger(i)&&i>=0?i:null}const ns={collection:"seq",default:!0,nodeClass:Ei,tag:"tag:yaml.org,2002:seq",resolve(e,i){return br(e)||i("Expected a sequence for this tag"),e},createNode:(e,i,n)=>Ei.from(e,i,n)},ka={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,i,n,a){return i=Object.assign({actualString:!0},i),to(e,i,n,a)}},Na={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},i)=>typeof e=="string"&&Na.test.test(e)?e:i.options.nullStr},Fc={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:i},n){if(e&&Fc.test.test(e)){const a=e[0]==="t"||e[0]==="T";if(i===a)return e}return i?n.options.trueStr:n.options.falseStr}};function ti({format:e,minFractionDigits:i,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&&i&&(!n||n==="tag:yaml.org,2002:float")&&/^\d/.test(d)){let u=d.indexOf(".");u<0&&(u=d.length,d+=".");let c=i-(d.length-u-1);for(;c-- >0;)d+="0"}return d}const Wy={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:ti},qy={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 i=Number(e.value);return isFinite(i)?i.toExponential():ti(e)}},Jy={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){const i=new tt(parseFloat(e)),n=e.indexOf(".");return n!==-1&&e[e.length-1]==="0"&&(i.minFractionDigits=e.length-n-1),i},stringify:ti},Oa=e=>typeof e=="bigint"||Number.isInteger(e),Pc=(e,i,n,{intAsBigInt:a})=>a?BigInt(e):parseInt(e.substring(i),n);function Gy(e,i,n){const{value:a}=e;return Oa(a)&&a>=0?n+a.toString(i):ti(e)}const Hy={identify:e=>Oa(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,i,n)=>Pc(e,2,8,n),stringify:e=>Gy(e,8,"0o")},Ky={identify:Oa,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,i,n)=>Pc(e,0,10,n),stringify:ti},Vy={identify:e=>Oa(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,i,n)=>Pc(e,2,16,n),stringify:e=>Gy(e,16,"0x")},WL=[ts,ns,ka,Na,Fc,Hy,Ky,Vy,Wy,qy,Jy];function Zh(e){return typeof e=="bigint"||Number.isInteger(e)}const $o=({value:e})=>JSON.stringify(e),qL=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:$o},{identify:e=>e==null,createNode:()=>new tt(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:$o},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:e=>e==="true",stringify:$o},{identify:Zh,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,i,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>Zh(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:$o}],JL={default:!0,tag:"",test:/^/,resolve(e,i){return i(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},GL=[ts,ns].concat(qL,JL),Ic={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,i){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 i("This environment does not support reading binary tags; either Buffer or atob is required"),e},stringify({comment:e,type:i,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(i||(i=tt.BLOCK_LITERAL),i!==tt.QUOTE_DOUBLE){const w=Math.max(a.options.lineWidth-a.indent.length,a.options.minContentWidth),U=Math.ceil(c.length/w),F=new Array(U);for(let O=0,M=0;O<U;++O,M+=w)F[O]=c.substr(M,w);c=F.join(i===tt.BLOCK_LITERAL?`
|
|
52
|
+
`:" ")}return to({comment:e,type:i,value:c},a,l,d)}};function Zy(e,i){if(br(e))for(let n=0;n<e.items.length;++n){let a=e.items[n];if(!kt(a)){if(gr(a)){a.items.length>1&&i("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 i("Expected a sequence for this tag");return e}function Qy(e,i,n){const{replacer:a}=n,l=new Ei(e);l.tag="tag:yaml.org,2002:pairs";let d=0;if(i&&Symbol.iterator in Object(i))for(let u of i){typeof a=="function"&&(u=a.call(i,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(Ac(c,w,n))}return l}const Rc={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Zy,createNode:Qy};class Zr extends Ei{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=Zr.tag}toJSON(i,n){if(!n)return super.toJSON(i);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(i,n,a){const l=Qy(i,n,a),d=new this;return d.items=l.items,d}}Zr.tag="tag:yaml.org,2002:omap";const Mc={collection:"seq",identify:e=>e instanceof Map,nodeClass:Zr,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,i){const n=Zy(e,i),a=[];for(const{key:l}of n.items)vt(l)&&(a.includes(l.value)?i(`Ordered maps must not include duplicate keys: ${l.value}`):a.push(l.value));return Object.assign(new Zr,n)},createNode:(e,i,n)=>Zr.from(e,i,n)};function Xy({value:e,source:i},n){return i&&(e?Yy:$y).test.test(i)?i:e?n.options.trueStr:n.options.falseStr}const Yy={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:Xy},$y={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:Xy},HL={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:ti},KL={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 i=Number(e.value);return isFinite(i)?i.toExponential():ti(e)}},VL={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){const i=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"&&(i.minFractionDigits=a.length)}return i},stringify:ti},no=e=>typeof e=="bigint"||Number.isInteger(e);function Ca(e,i,n,{intAsBigInt:a}){const l=e[0];if((l==="-"||l==="+")&&(i+=1),e=e.substring(i).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 Bc(e,i,n){const{value:a}=e;if(no(a)){const l=a.toString(i);return a<0?"-"+n+l.substr(1):n+l}return ti(e)}const ZL={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,i,n)=>Ca(e,2,2,n),stringify:e=>Bc(e,2,"0b")},QL={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,i,n)=>Ca(e,1,8,n),stringify:e=>Bc(e,8,"0")},XL={identify:no,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,i,n)=>Ca(e,0,10,n),stringify:ti},YL={identify:no,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,i,n)=>Ca(e,2,16,n),stringify:e=>Bc(e,16,"0x")};class Qr extends mn{constructor(i){super(i),this.tag=Qr.tag}add(i){let n;kt(i)?n=i:i&&typeof i=="object"&&"key"in i&&"value"in i&&i.value===null?n=new $t(i.key,null):n=new $t(i,null),mr(this.items,n.key)||this.items.push(n)}get(i,n){const a=mr(this.items,i);return!n&&kt(a)?vt(a.key)?a.key.value:a.key:a}set(i,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const a=mr(this.items,i);a&&!n?this.items.splice(this.items.indexOf(a),1):!a&&n&&this.items.push(new $t(i))}toJSON(i,n){return super.toJSON(i,n,Set)}toString(i,n,a){if(!i)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},i,{allNullValues:!0}),n,a);throw new Error("Set items must all have null values")}static from(i,n,a){const{replacer:l}=a,d=new this(i);if(n&&Symbol.iterator in Object(n))for(let u of n)typeof l=="function"&&(u=l.call(n,u,u)),d.items.push(Ac(u,null,a));return d}}Qr.tag="tag:yaml.org,2002:set";const Dc={collection:"map",identify:e=>e instanceof Set,nodeClass:Qr,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,i,n)=>Qr.from(e,i,n),resolve(e,i){if(gr(e)){if(e.hasAllNullValues(!0))return Object.assign(new Qr,e);i("Set items must all have null values")}else i("Expected a mapping for this tag");return e}};function jc(e,i){const n=e[0],a=n==="-"||n==="+"?e.substring(1):e,l=u=>i?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 eg(e){let{value:i}=e,n=u=>u;if(typeof i=="bigint")n=u=>BigInt(u);else if(isNaN(i)||!isFinite(i))return ti(e);let a="";i<0&&(a="-",i*=n(-1));const l=n(60),d=[i%l];return i<60?d.unshift(0):(i=(i-d[0])/l,d.unshift(i%l),i>=60&&(i=(i-d[0])/l,d.unshift(i))),a+d.map(u=>String(u).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const tg={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,i,{intAsBigInt:n})=>jc(e,n),stringify:eg},ng={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=>jc(e,!1),stringify:eg},Ea={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 i=e.match(Ea.test);if(!i)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,n,a,l,d,u,c]=i.map(Number),w=i[7]?Number((i[7]+"00").substr(1,3)):0;let U=Date.UTC(n,a-1,l,d||0,u||0,c||0,w);const F=i[8];if(F&&F!=="Z"){let O=jc(F,!1);Math.abs(O)<30&&(O*=60),U-=6e4*O}return new Date(U)},stringify:({value:e})=>e.toISOString().replace(/(T00:00:00)?\.000Z$/,"")},Qh=[ts,ns,ka,Na,Yy,$y,ZL,QL,XL,YL,HL,KL,VL,Ic,Oi,Mc,Rc,Dc,tg,ng,Ea],Xh=new Map([["core",WL],["failsafe",[ts,ns,ka]],["json",GL],["yaml11",Qh],["yaml-1.1",Qh]]),Yh={binary:Ic,bool:Fc,float:Jy,floatExp:qy,floatNaN:Wy,floatTime:ng,int:Ky,intHex:Vy,intOct:Hy,intTime:tg,map:ts,merge:Oi,null:Na,omap:Mc,pairs:Rc,seq:ns,set:Dc,timestamp:Ea},$L={"tag:yaml.org,2002:binary":Ic,"tag:yaml.org,2002:merge":Oi,"tag:yaml.org,2002:omap":Mc,"tag:yaml.org,2002:pairs":Rc,"tag:yaml.org,2002:set":Dc,"tag:yaml.org,2002:timestamp":Ea};function hl(e,i,n){const a=Xh.get(i);if(a&&!e)return n&&!a.includes(Oi)?a.concat(Oi):a.slice();let l=a;if(!l)if(Array.isArray(e))l=[];else{const d=Array.from(Xh.keys()).filter(u=>u!=="yaml11").map(u=>JSON.stringify(u)).join(", ");throw new Error(`Unknown schema "${i}"; 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(Oi)),l.reduce((d,u)=>{const c=typeof u=="string"?Yh[u]:u;if(!c){const w=JSON.stringify(u),U=Object.keys(Yh).map(F=>JSON.stringify(F)).join(", ");throw new Error(`Unknown custom tag ${w}; use one of ${U}`)}return d.includes(c)||d.push(c),d},[])}const e_=(e,i)=>e.key<i.key?-1:e.key>i.key?1:0;class io{constructor({compat:i,customTags:n,merge:a,resolveKnownTags:l,schema:d,sortMapEntries:u,toStringDefaults:c}){this.compat=Array.isArray(i)?hl(i,"compat"):i?hl(null,i):null,this.name=typeof d=="string"&&d||"core",this.knownTags=l?$L:{},this.tags=hl(n,this.name,a),this.toStringOptions=c??null,Object.defineProperty(this,Gi,{value:ts}),Object.defineProperty(this,ai,{value:ka}),Object.defineProperty(this,es,{value:ns}),this.sortMapEntries=typeof u=="function"?u:u===!0?e_:null}clone(){const i=Object.create(io.prototype,Object.getOwnPropertyDescriptors(this));return i.tags=this.tags.slice(),i}}function t_(e,i){const n=[];let a=i.directives===!0;if(i.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=Dy(e,i),{commentString:d}=l.options;if(e.commentBefore){n.length!==1&&n.unshift("");const w=d(e.commentBefore);n.unshift(Ni(w,""))}let u=!1,c=null;if(e.contents){if(Et(e.contents)){if(e.contents.spaceBefore&&a&&n.push(""),e.contents.commentBefore){const F=d(e.contents.commentBefore);n.push(Ni(F,""))}l.forceBlockIndent=!!e.comment,c=e.contents.comment}const w=c?void 0:()=>u=!0;let U=Yr(e.contents,l,()=>c=null,w);c&&(U+=pr(U,"",d(c))),(U[0]==="|"||U[0]===">")&&n[n.length-1]==="---"?n[n.length-1]=`--- ${U}`:n.push(U)}else n.push(Yr(e.contents,l));if(e.directives?.docEnd)if(e.comment){const w=d(e.comment);w.includes(`
|
|
55
|
+
`)?(n.push("..."),n.push(Ni(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(Ni(d(w),"")))}return n.join(`
|
|
56
|
+
`)+`
|
|
57
|
+
`}class Tr{constructor(i,n,a){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Un,{value:Tc});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=i===void 0?null:this.createNode(i,l,a)}clone(){const i=Object.create(Tr.prototype,{[Un]:{value:Tc}});return i.commentBefore=this.commentBefore,i.comment=this.comment,i.errors=this.errors.slice(),i.warnings=this.warnings.slice(),i.options=Object.assign({},this.options),this.directives&&(i.directives=this.directives.clone()),i.schema=this.schema.clone(),i.contents=Et(this.contents)?this.contents.clone(i.schema):this.contents,this.range&&(i.range=this.range.slice()),i}add(i){qr(this.contents)&&this.contents.add(i)}addIn(i,n){qr(this.contents)&&this.contents.addIn(i,n)}createAlias(i,n){if(!i.anchor){const a=Py(this);i.anchor=!n||a.has(n)?Iy(n||"a",a):n}return new eo(i.anchor)}createNode(i,n,a){let l;if(typeof n=="function")i=n.call({"":i},"",i),l=n;else if(Array.isArray(n)){const v=m=>typeof m=="number"||m instanceof String||m instanceof Number,h=n.filter(v).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:F}=a??{},{onAnchor:O,setAnchors:M,sourceObjects:L}=EL(this,u||"a"),_={aliasDuplicateObjects:d??!0,keepUndefined:w??!1,onAnchor:O,onTagObj:U,replacer:l,schema:this.schema,sourceObjects:L},b=Qs(i,F,_);return c&&Ct(b)&&(b.flow=!0),M(),b}createPair(i,n,a={}){const l=this.createNode(i,null,a),d=this.createNode(n,null,a);return new $t(l,d)}delete(i){return qr(this.contents)?this.contents.delete(i):!1}deleteIn(i){return Hs(i)?this.contents==null?!1:(this.contents=null,!0):qr(this.contents)?this.contents.deleteIn(i):!1}get(i,n){return Ct(this.contents)?this.contents.get(i,n):void 0}getIn(i,n){return Hs(i)?!n&&vt(this.contents)?this.contents.value:this.contents:Ct(this.contents)?this.contents.getIn(i,n):void 0}has(i){return Ct(this.contents)?this.contents.has(i):!1}hasIn(i){return Hs(i)?this.contents!==void 0:Ct(this.contents)?this.contents.hasIn(i):!1}set(i,n){this.contents==null?this.contents=ba(this.schema,[i],n):qr(this.contents)&&this.contents.set(i,n)}setIn(i,n){Hs(i)?this.contents=n:this.contents==null?this.contents=ba(this.schema,Array.from(i),n):qr(this.contents)&&this.contents.setIn(i,n)}setSchema(i,n={}){typeof i=="number"&&(i=String(i));let a;switch(i){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=i:this.directives=new un({version:i}),a={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,a=null;break;default:{const l=JSON.stringify(i);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:i,jsonArg:n,mapAsMap:a,maxAliasCount:l,onAnchor:d,reviver:u}={}){const c={anchors:new Map,doc:this,keep:!i,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:F}of c.anchors.values())d(F,U);return typeof u=="function"?Kr(u,{"":w},"",w):w}toJSON(i,n){return this.toJS({json:!0,jsonArg:i,mapAsMap:!1,onAnchor:n})}toString(i={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in i&&(!Number.isInteger(i.indent)||Number(i.indent)<=0)){const n=JSON.stringify(i.indent);throw new Error(`"indent" option must be a positive integer, not ${n}`)}return t_(this,i)}}function qr(e){if(Ct(e))return!0;throw new Error("Expected a YAML collection as document contents")}class Aa extends Error{constructor(i,n,a,l){super(),this.name=i,this.code=a,this.message=l,this.pos=n}}class Ji extends Aa{constructor(i,n,a){super("YAMLParseError",i,n,a)}}class Uc extends Aa{constructor(i,n,a){super("YAMLWarning",i,n,a)}}const va=(e,i)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(c=>i.linePos(c));const{line:a,col:l}=n.linePos[0];n.message+=` at line ${a}, column ${l}`;let d=l-1,u=e.substring(i.lineStarts[a-1],i.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(i.lineStarts[a-2],i.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 $r(e,{flow:i,indicator:n,next:a,offset:l,onError:d,parentIndent:u,startOnNewline:c}){let w=!1,U=c,F=c,O="",M="",L=!1,_=!1,b=null,v=null,h=null,m=null,k=null,B=null,C=null;for(const f of e)switch(_&&(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"),_=!1),b&&(U&&f.type!=="comment"&&f.type!=="newline"&&d(b,"TAB_AS_INDENT","Tabs are not allowed as indentation"),b=null),f.type){case"space":!i&&(n!=="doc-start"||a?.type!=="flow-collection")&&f.source.includes(" ")&&(b=f),F=!0;break;case"comment":{F||d(f,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const E=f.source.substring(1)||" ";O?O+=M+E:O=E,M="",U=!1;break}case"newline":U?O?O+=f.source:(!B||n!=="seq-item-ind")&&(w=!0):M+=f.source,U=!0,L=!0,(v||h)&&(m=f),F=!0;break;case"anchor":v&&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),v=f,C===null&&(C=f.offset),U=!1,F=!1,_=!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,F=!1,_=!0;break}case n:(v||h)&&d(f,"BAD_PROP_ORDER",`Anchors and tags must be after the ${f.source} indicator`),B&&d(f,"UNEXPECTED_TOKEN",`Unexpected ${f.source} in ${i??"collection"}`),B=f,U=n==="seq-item-ind"||n==="explicit-key-ind",F=!1;break;case"comma":if(i){k&&d(f,"UNEXPECTED_TOKEN",`Unexpected , in ${i}`),k=f,U=!1,F=!1;break}default:d(f,"UNEXPECTED_TOKEN",`Unexpected ${f.type} token`),U=!1,F=!1}const R=e[e.length-1],A=R?R.offset+R.source.length:l;return _&&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"),b&&(U&&b.indent<=u||a?.type==="block-map"||a?.type==="block-seq")&&d(b,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:k,found:B,spaceBefore:w,comment:O,hasNewline:L,anchor:v,tag:h,newlineAfterProp:m,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 i of e.end)if(i.type==="newline")return!0}return!1;case"flow-collection":for(const i of e.items){for(const n of i.start)if(n.type==="newline")return!0;if(i.sep){for(const n of i.sep)if(n.type==="newline")return!0}if(Xs(i.key)||Xs(i.value))return!0}return!1;default:return!0}}function Lc(e,i,n){if(i?.type==="flow-collection"){const a=i.end[0];a.indent===e&&(a.source==="]"||a.source==="}")&&Xs(i)&&n(a,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function ig(e,i,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 i.some(d=>l(d.key,n))}const $h="All mapping items must start at the same column";function n_({composeNode:e,composeEmptyNode:i},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 F of a.items){const{start:O,key:M,sep:L,value:_}=F,b=$r(O,{indicator:"explicit-key-ind",next:M??L?.[0],offset:w,onError:l,parentIndent:a.indent,startOnNewline:!0}),v=!b.found;if(v){if(M&&(M.type==="block-seq"?l(w,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in M&&M.indent!==a.indent&&l(w,"BAD_INDENT",$h)),!b.anchor&&!b.tag&&!L){U=b.end,b.comment&&(c.comment?c.comment+=`
|
|
64
|
+
`+b.comment:c.comment=b.comment);continue}(b.newlineAfterProp||Xs(M))&&l(M??O[O.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else b.found?.indent!==a.indent&&l(w,"BAD_INDENT",$h);n.atKey=!0;const h=b.end,m=M?e(n,M,b,l):i(n,h,O,null,b,l);n.schema.compat&&Lc(a.indent,M,l),n.atKey=!1,ig(n,c.items,m)&&l(h,"DUPLICATE_KEY","Map keys must be unique");const k=$r(L??[],{indicator:"map-value-ind",next:_,offset:m.range[2],onError:l,parentIndent:a.indent,startOnNewline:!M||M.type==="block-scalar"});if(w=k.end,k.found){v&&(_?.type==="block-map"&&!k.hasNewline&&l(w,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),n.options.strict&&b.start<k.found.offset-1024&&l(m.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const B=_?e(n,_,k,l):i(n,w,L,null,k,l);n.schema.compat&&Lc(a.indent,_,l),w=B.range[2];const C=new $t(m,B);n.options.keepSourceTokens&&(C.srcToken=F),c.items.push(C)}else{v&&l(m.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),k.comment&&(m.comment?m.comment+=`
|
|
65
|
+
`+k.comment:m.comment=k.comment);const B=new $t(m);n.options.keepSourceTokens&&(B.srcToken=F),c.items.push(B)}}return U&&U<w&&l(U,"IMPOSSIBLE","Map comment with trailing content"),c.range=[a.offset,w,U??w],c}function i_({composeNode:e,composeEmptyNode:i},n,a,l,d){const u=d?.nodeClass??Ei,c=new u(n.schema);n.atRoot&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let w=a.offset,U=null;for(const{start:F,value:O}of a.items){const M=$r(F,{indicator:"seq-item-ind",next:O,offset:w,onError:l,parentIndent:a.indent,startOnNewline:!0});if(!M.found)if(M.anchor||M.tag||O)O&&O.type==="block-seq"?l(M.end,"BAD_INDENT","All sequence items must start at the same column"):l(w,"MISSING_CHAR","Sequence item without - indicator");else{U=M.end,M.comment&&(c.comment=M.comment);continue}const L=O?e(n,O,M,l):i(n,M.end,F,null,M,l);n.schema.compat&&Lc(a.indent,O,l),w=L.range[2],c.items.push(L)}return c.range=[a.offset,w,U??w],c}function ro(e,i,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 F=w.substring(1)||" ";l?l+=u+F:l=F,u="";break}case"newline":l&&(u+=w),d=!0;break;default:a(c,"UNEXPECTED_TOKEN",`Unexpected ${U} at node end`)}i+=w.length}}return{comment:l,offset:i}}const pl="Block collections are not allowed within flow collections",ml=e=>e&&(e.type==="block-map"||e.type==="block-seq");function r_({composeNode:e,composeEmptyNode:i},n,a,l,d){const u=a.start.source==="{",c=u?"flow map":"flow sequence",w=d?.nodeClass??(u?mn:Ei),U=new w(n.schema);U.flow=!0;const F=n.atRoot;F&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let O=a.offset+a.start.source.length;for(let v=0;v<a.items.length;++v){const h=a.items[v],{start:m,key:k,sep:B,value:C}=h,R=$r(m,{flow:c,indicator:"explicit-key-ind",next:k??B?.[0],offset:O,onError:l,parentIndent:a.indent,startOnNewline:!1});if(!R.found){if(!R.anchor&&!R.tag&&!B&&!C){v===0&&R.comma?l(R.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${c}`):v<a.items.length-1&&l(R.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${c}`),R.comment&&(U.comment?U.comment+=`
|
|
66
|
+
`+R.comment:U.comment=R.comment),O=R.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(v===0)R.comma&&l(R.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${c}`);else if(R.comma||l(R.start,"MISSING_CHAR",`Missing , between ${c} items`),R.comment){let A="";e:for(const f of m)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,R.comment=R.comment.substring(A.length+1)}}if(!u&&!B&&!R.found){const A=C?e(n,C,R,l):i(n,R.end,B,null,R,l);U.items.push(A),O=A.range[2],ml(C)&&l(A.range,"BLOCK_IN_FLOW",pl)}else{n.atKey=!0;const A=R.end,f=k?e(n,k,R,l):i(n,A,m,null,R,l);ml(k)&&l(f.range,"BLOCK_IN_FLOW",pl),n.atKey=!1;const E=$r(B??[],{flow:c,indicator:"map-value-ind",next:C,offset:f.range[2],onError:l,parentIndent:a.indent,startOnNewline:!1});if(E.found){if(!u&&!R.found&&n.options.strict){if(B)for(const y of B){if(y===E.found)break;if(y.type==="newline"){l(y,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}R.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 S=C?e(n,C,E,l):E.found?i(n,E.end,B,null,E,l):null;S?ml(C)&&l(S.range,"BLOCK_IN_FLOW",pl):E.comment&&(f.comment?f.comment+=`
|
|
68
|
+
`+E.comment:f.comment=E.comment);const P=new $t(f,S);if(n.options.keepSourceTokens&&(P.srcToken=h),u){const y=U;ig(n,y.items,f)&&l(A,"DUPLICATE_KEY","Map keys must be unique"),y.items.push(P)}else{const y=new mn(n.schema);y.flow=!0,y.items.push(P);const r=(S??f).range;y.range=[f.range[0],r[1],r[2]],U.items.push(y)}O=S?S.range[2]:E.end}}const M=u?"}":"]",[L,..._]=a.end;let b=O;if(L&&L.source===M)b=L.offset+L.source.length;else{const v=c[0].toUpperCase()+c.substring(1),h=F?`${v} must end with a ${M}`:`${v} in block collection must be sufficiently indented and end with a ${M}`;l(O,F?"MISSING_CHAR":"BAD_INDENT",h),L&&L.source.length!==1&&_.unshift(L)}if(_.length>0){const v=ro(_,b,n.options.strict,l);v.comment&&(U.comment?U.comment+=`
|
|
69
|
+
`+v.comment:U.comment=v.comment),U.range=[a.offset,b,v.offset]}else U.range=[a.offset,b,b];return U}function yl(e,i,n,a,l,d){const u=n.type==="block-map"?n_(e,i,n,a,d):n.type==="block-seq"?i_(e,i,n,a,d):r_(e,i,n,a,d),c=u.constructor;return l==="!"||l===c.tagName?(u.tag=c.tagName,u):(l&&(u.tag=l),u)}function s_(e,i,n,a,l){const d=a.tag,u=d?i.directives.tagName(d.source,M=>l(d,"TAG_RESOLVE_FAILED",M)):null;if(n.type==="block-seq"){const{anchor:M,newlineAfterProp:L}=a,_=M&&d?M.offset>d.offset?M:d:M??d;_&&(!L||L.offset<_.offset)&&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===Ei.tagName&&c==="seq")return yl(e,i,n,l,u);let w=i.schema.tags.find(M=>M.tag===u&&M.collection===c);if(!w){const M=i.schema.knownTags[u];if(M&&M.collection===c)i.schema.tags.push(Object.assign({},M,{default:!1})),w=M;else return M?.collection?l(d,"BAD_COLLECTION_TYPE",`${M.tag} used for ${c} collection, but expects ${M.collection}`,!0):l(d,"TAG_RESOLVE_FAILED",`Unresolved tag: ${u}`,!0),yl(e,i,n,l,u)}const U=yl(e,i,n,l,u,w),F=w.resolve?.(U,M=>l(d,"TAG_RESOLVE_FAILED",M),i.options)??U,O=Et(F)?F:new tt(F);return O.range=U.range,O.tag=u,w?.format&&(O.format=w.format),O}function rg(e,i,n){const a=i.offset,l=o_(i,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=i.source?a_(i.source):[];let c=u.length;for(let b=u.length-1;b>=0;--b){const v=u[b][1];if(v===""||v==="\r")c=b;else break}if(c===0){const b=l.chomp==="+"&&u.length>0?`
|
|
70
|
+
`.repeat(Math.max(1,u.length-1)):"";let v=a+l.length;return i.source&&(v+=i.source.length),{value:b,type:d,comment:l.comment,range:[a,v,v]}}let w=i.indent+l.indent,U=i.offset+l.length,F=0;for(let b=0;b<c;++b){const[v,h]=u[b];if(h===""||h==="\r")l.indent===0&&v.length>w&&(w=v.length);else{v.length<w&&n(U+v.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),l.indent===0&&(w=v.length),F=b,w===0&&!e.atRoot&&n(U,"BAD_INDENT","Block scalar values in collections must be indented");break}U+=v.length+h.length+1}for(let b=u.length-1;b>=c;--b)u[b][0].length>w&&(c=b+1);let O="",M="",L=!1;for(let b=0;b<F;++b)O+=u[b][0].slice(w)+`
|
|
71
|
+
`;for(let b=F;b<c;++b){let[v,h]=u[b];U+=v.length+h.length+1;const m=h[h.length-1]==="\r";if(m&&(h=h.slice(0,-1)),h&&v.length<w){const B=`Block scalar lines must not be less indented than their ${l.indent?"explicit indentation indicator":"first line"}`;n(U-h.length-(m?2:1),"BAD_INDENT",B),v=""}d===tt.BLOCK_LITERAL?(O+=M+v.slice(w)+h,M=`
|
|
72
|
+
`):v.length>w||h[0]===" "?(M===" "?M=`
|
|
73
|
+
`:!L&&M===`
|
|
74
|
+
`&&(M=`
|
|
75
|
+
|
|
76
|
+
`),O+=M+v.slice(w)+h,M=`
|
|
77
|
+
`,L=!0):h===""?M===`
|
|
78
|
+
`?O+=`
|
|
79
|
+
`:M=`
|
|
80
|
+
`:(O+=M+h,M=" ",L=!1)}switch(l.chomp){case"-":break;case"+":for(let b=c;b<u.length;++b)O+=`
|
|
81
|
+
`+u[b][0].slice(w);O[O.length-1]!==`
|
|
82
|
+
`&&(O+=`
|
|
83
|
+
`);break;default:O+=`
|
|
84
|
+
`}const _=a+l.length+i.source.length;return{value:O,type:d,comment:l.comment,range:[a,_,_]}}function o_({offset:e,props:i},n,a){if(i[0].type!=="block-scalar-header")return a(i[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:l}=i[0],d=l[0];let u=0,c="",w=-1;for(let M=1;M<l.length;++M){const L=l[M];if(!c&&(L==="-"||L==="+"))c=L;else{const _=Number(L);!u&&_?u=_:w===-1&&(w=e+M)}}w!==-1&&a(w,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${l}`);let U=!1,F="",O=l.length;for(let M=1;M<i.length;++M){const L=i[M];switch(L.type){case"space":U=!0;case"newline":O+=L.source.length;break;case"comment":n&&!U&&a(L,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),O+=L.source.length,F=L.source.substring(1);break;case"error":a(L,"UNEXPECTED_TOKEN",L.message),O+=L.source.length;break;default:{const _=`Unexpected token in block scalar header: ${L.type}`;a(L,"UNEXPECTED_TOKEN",_);const b=L.source;b&&typeof b=="string"&&(O+=b.length)}}}return{mode:d,indent:u,chomp:c,comment:F,length:O}}function a_(e){const i=e.split(/\n( *)/),n=i[0],a=n.match(/^( *)/),d=[a?.[1]?[a[1],n.slice(a[1].length)]:["",n]];for(let u=1;u<i.length;u+=2)d.push([i[u],i[u+1]]);return d}function sg(e,i,n){const{offset:a,type:l,source:d,end:u}=e;let c,w;const U=(M,L,_)=>n(a+M,L,_);switch(l){case"scalar":c=tt.PLAIN,w=u_(d,U);break;case"single-quoted-scalar":c=tt.QUOTE_SINGLE,w=l_(d,U);break;case"double-quoted-scalar":c=tt.QUOTE_DOUBLE,w=c_(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 F=a+d.length,O=ro(u,F,i,n);return{value:w,type:c,comment:O.comment,range:[a,F,O.offset]}}function u_(e,i){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&&i(0,"BAD_SCALAR_START",`Plain value cannot start with ${n}`),og(e)}function l_(e,i){return(e[e.length-1]!=="'"||e.length===1)&&i(e.length,"MISSING_CHAR","Missing closing 'quote"),og(e.slice(1,-1)).replace(/''/g,"'")}function og(e){let i,n;try{i=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
85
|
+
`,"sy"),n=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
86
|
+
`,"sy")}catch{i=/(.*?)[ \t]*\r?\n/sy,n=/[ \t]*(.*?)[ \t]*\r?\n/sy}let a=i.exec(e);if(!a)return e;let l=a[1],d=" ",u=i.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 c_(e,i){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}=f_(e,a);n+=d,a=u}else if(l==="\\"){let d=e[++a];const u=d_[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+=h_(e,a+1,c,i),a+=c}else{const c=e.substr(a-1,2);i(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)&&i(e.length,"MISSING_CHAR",'Missing closing "quote'),n}function f_(e,i){let n="",a=e[i+1];for(;(a===" "||a===" "||a===`
|
|
95
|
+
`||a==="\r")&&!(a==="\r"&&e[i+2]!==`
|
|
96
|
+
`);)a===`
|
|
97
|
+
`&&(n+=`
|
|
98
|
+
`),i+=1,a=e[i+1];return n||(n=" "),{fold:n,offset:i}}const d_={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
99
|
+
`,r:"\r",t:" ",v:"\v",N:"
",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function h_(e,i,n,a){const l=e.substr(i,n),u=l.length===n&&/^[0-9a-fA-F]+$/.test(l)?parseInt(l,16):NaN;if(isNaN(u)){const c=e.substr(i-2,n+2);return a(i-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${c}`),c}return String.fromCodePoint(u)}function ag(e,i,n,a){const{value:l,type:d,comment:u,range:c}=i.type==="block-scalar"?rg(e,i,a):sg(i,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[ai]:w?U=p_(e.schema,l,w,n,a):i.type==="scalar"?U=m_(e,l,i,a):U=e.schema[ai];let F;try{const O=U.resolve(l,M=>a(n??i,"TAG_RESOLVE_FAILED",M),e.options);F=vt(O)?O:new tt(O)}catch(O){const M=O instanceof Error?O.message:String(O);a(n??i,"TAG_RESOLVE_FAILED",M),F=new tt(l)}return F.range=c,F.source=l,d&&(F.type=d),w&&(F.tag=w),U.format&&(F.format=U.format),u&&(F.comment=u),F}function p_(e,i,n,a,l){if(n==="!")return e[ai];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(i))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[ai])}function m_({atKey:e,directives:i,schema:n},a,l,d){const u=n.tags.find(c=>(c.default===!0||e&&c.default==="key")&&c.test?.test(a))||n[ai];if(n.compat){const c=n.compat.find(w=>w.default&&w.test?.test(a))??n[ai];if(u.tag!==c.tag){const w=i.tagString(u.tag),U=i.tagString(c.tag),F=`Value may be parsed as either ${w} or ${U}`;d(l,"TAG_RESOLVE_FAILED",F,!0)}}return u}function y_(e,i,n){if(i){n===null&&(n=i.length);for(let a=n-1;a>=0;--a){let l=i[a];switch(l.type){case"space":case"comment":case"newline":e-=l.source.length;continue}for(l=i[++a];l?.type==="space";)e+=l.source.length,l=i[++a];break}}return e}const g_={composeNode:ug,composeEmptyNode:xc};function ug(e,i,n,a){const l=e.atKey,{spaceBefore:d,comment:u,anchor:c,tag:w}=n;let U,F=!0;switch(i.type){case"alias":U=b_(e,i,a),(c||w)&&a(i,"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=ag(e,i,w,a),c&&(U.anchor=c.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":U=s_(g_,e,i,n,a),c&&(U.anchor=c.source.substring(1));break;default:{const O=i.type==="error"?i.message:`Unsupported token (type: ${i.type})`;a(i,"UNEXPECTED_TOKEN",O),U=xc(e,i.offset,void 0,null,n,a),F=!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??i,"NON_STRING_KEY","With stringKeys, all keys must be strings"),d&&(U.spaceBefore=!0),u&&(i.type==="scalar"&&i.source===""?U.comment=u:U.commentBefore=u),e.options.keepSourceTokens&&F&&(U.srcToken=i),U}function xc(e,i,n,a,{spaceBefore:l,comment:d,anchor:u,tag:c,end:w},U){const F={type:"scalar",offset:y_(i,n,a),indent:-1,source:""},O=ag(e,F,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 b_({options:e},{offset:i,source:n,end:a},l){const d=new eo(n.substring(1));d.source===""&&l(i,"BAD_ALIAS","Alias cannot be an empty string"),d.source.endsWith(":")&&l(i+n.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const u=i+n.length,c=ro(a,u,e.strict,l);return d.range=[i,u,c.offset],c.comment&&(d.comment=c.comment),d}function T_(e,i,{offset:n,start:a,value:l,end:d},u){const c=Object.assign({_directives:i},e),w=new Tr(void 0,c),U={atKey:!1,atRoot:!0,directives:w.directives,options:w.options,schema:w.schema},F=$r(a,{indicator:"doc-start",next:l??d?.[0],offset:n,onError:u,parentIndent:0,startOnNewline:!0});F.found&&(w.directives.docStart=!0,l&&(l.type==="block-map"||l.type==="block-seq")&&!F.hasNewline&&u(F.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),w.contents=l?ug(U,l,F,u):xc(U,F.end,a,null,F,u);const O=w.contents.range[2],M=ro(d,O,!1,u);return M.comment&&(w.comment=M.comment),w.range=[n,O,M.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:i,source:n}=e;return[i,i+(typeof n=="string"?n.length:1)]}function ep(e){let i="",n=!1,a=!1;for(let l=0;l<e.length;++l){const d=e[l];switch(d[0]){case"#":i+=(i===""?"":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:i,afterEmptyLine:a}}class Fa{constructor(i={}){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 Uc(u,a,l)):this.errors.push(new Ji(u,a,l))},this.directives=new un({version:i.version||"1.2"}),this.options=i}decorate(i,n){const{comment:a,afterEmptyLine:l}=ep(this.prelude);if(a){const d=i.contents;if(n)i.comment=i.comment?`${i.comment}
|
|
103
|
+
${a}`:a;else if(l||i.directives.docStart||!d)i.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(i.errors,this.errors),Array.prototype.push.apply(i.warnings,this.warnings)):(i.errors=this.errors,i.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:ep(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(i,n=!1,a=-1){for(const l of i)yield*this.next(l);yield*this.end(n,a)}*next(i){switch(i.type){case"directive":this.directives.add(i.source,(n,a,l)=>{const d=ws(i);d[0]+=n,this.onError(d,"BAD_DIRECTIVE",a,l)}),this.prelude.push(i.source),this.atDirectives=!0;break;case"document":{const n=T_(this.options,this.directives,i,this.onError);this.atDirectives&&!n.directives.docStart&&this.onError(i,"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(i.source);break;case"error":{const n=i.source?`${i.message}: ${JSON.stringify(i.source)}`:i.message,a=new Ji(ws(i),"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 Ji(ws(i),"UNEXPECTED_TOKEN",a));break}this.doc.directives.docEnd=!0;const n=ro(i.end,i.offset+i.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 Ji(ws(i),"UNEXPECTED_TOKEN",`Unsupported token ${i.type}`))}}*end(i=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(i){const a=Object.assign({_directives:this.directives},this.options),l=new Tr(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 v_(e,i=!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 Ji([c,c+1],d,u)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return sg(e,i,a);case"block-scalar":return rg({options:{strict:i}},e,a)}}return null}function S_(e,i){const{implicitKey:n=!1,indent:a,inFlow:l=!1,offset:d=-1,type:u="PLAIN"}=i,c=to({type:u,value:e},{implicitKey:n,indent:a>0?" ".repeat(a):"",inFlow:l,options:{blockQuote:!0,lineWidth:-1}}),w=i.end??[{type:"newline",offset:-1,indent:a,source:`
|
|
107
|
+
`}];switch(c[0]){case"|":case">":{const U=c.indexOf(`
|
|
108
|
+
`),F=c.substring(0,U),O=c.substring(U+1)+`
|
|
109
|
+
`,M=[{type:"block-scalar-header",offset:d,indent:a,source:F}];return lg(M,w)||M.push({type:"newline",offset:-1,indent:a,source:`
|
|
110
|
+
`}),{type:"block-scalar",offset:d,indent:a,props:M,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 w_(e,i,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:i},{implicitKey:l||c===null,indent:c!==null&&c>0?" ".repeat(c):"",inFlow:d,options:{blockQuote:!0,lineWidth:-1}});switch(w[0]){case"|":case">":L_(e,w);break;case'"':gl(e,w,"double-quoted-scalar");break;case"'":gl(e,w,"single-quoted-scalar");break;default:gl(e,w,"scalar")}}function L_(e,i){const n=i.indexOf(`
|
|
111
|
+
`),a=i.substring(0,n),l=i.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}];lg(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 lg(e,i){if(i)for(const n of i)switch(n.type){case"space":case"comment":e.push(n);break;case"newline":return e.push(n),!0}return!1}function gl(e,i,n){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=n,e.source=i;break;case"block-scalar":{const a=e.props.slice(1);let l=i.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:i,end:a});break}case"block-map":case"block-seq":{const l={type:"newline",offset:e.offset+i.length,indent:e.indent,source:`
|
|
114
|
+
`};delete e.items,Object.assign(e,{type:n,source:i,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:i,end:l})}}}const __=e=>"type"in e?Sa(e):ha(e);function Sa(e){switch(e.type){case"block-scalar":{let i="";for(const n of e.props)i+=Sa(n);return i+e.source}case"block-map":case"block-seq":{let i="";for(const n of e.items)i+=ha(n);return i}case"flow-collection":{let i=e.start.source;for(const n of e.items)i+=ha(n);for(const n of e.end)i+=n.source;return i}case"document":{let i=ha(e);if(e.end)for(const n of e.end)i+=n.source;return i}default:{let i=e.source;if("end"in e&&e.end)for(const n of e.end)i+=n.source;return i}}}function ha({start:e,key:i,sep:n,value:a}){let l="";for(const d of e)l+=d.source;if(i&&(l+=Sa(i)),n)for(const d of n)l+=d.source;return a&&(l+=Sa(a)),l}const _c=Symbol("break visit"),k_=Symbol("skip children"),cg=Symbol("remove item");function yr(e,i){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),fg(Object.freeze([]),e,i)}yr.BREAK=_c;yr.SKIP=k_;yr.REMOVE=cg;yr.itemAtPath=(e,i)=>{let n=e;for(const[a,l]of i){const d=n?.[a];if(d&&"items"in d)n=d.items[l];else return}return n};yr.parentCollection=(e,i)=>{const n=yr.itemAtPath(e,i.slice(0,-1)),a=i[i.length-1][0],l=n?.[a];if(l&&"items"in l)return l;throw new Error("Parent collection not found")};function fg(e,i,n){let a=n(i,e);if(typeof a=="symbol")return a;for(const l of["key","value"]){const d=i[l];if(d&&"items"in d){for(let u=0;u<d.items.length;++u){const c=fg(Object.freeze(e.concat([[l,u]])),d.items[u],n);if(typeof c=="number")u=c-1;else{if(c===_c)return _c;c===cg&&(d.items.splice(u,1),u-=1)}}typeof a=="function"&&l==="key"&&(a=a(i,e))}}return typeof a=="function"?a(i,e):a}const Pa="\uFEFF",Ia="",Ra="",Ys="",N_=e=>!!e&&"items"in e,O_=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function C_(e){switch(e){case Pa:return"<BOM>";case Ia:return"<DOC>";case Ra:return"<FLOW_END>";case Ys:return"<SCALAR>";default:return JSON.stringify(e)}}function dg(e){switch(e){case Pa:return"byte-order-mark";case Ia:return"doc-mode";case Ra: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 hg=Object.freeze(Object.defineProperty({__proto__:null,BOM:Pa,DOCUMENT:Ia,FLOW_END:Ra,SCALAR:Ys,createScalarToken:S_,isCollection:N_,isScalar:O_,prettyToken:C_,resolveAsScalar:v_,setScalarValue:w_,stringify:__,tokenType:dg,visit:yr},Symbol.toStringTag,{value:"Module"}));function Vn(e){switch(e){case void 0:case" ":case`
|
|
117
|
+
`:case"\r":case" ":return!0;default:return!1}}const tp=new Set("0123456789ABCDEFabcdef"),E_=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),ea=new Set(",[]{}"),A_=new Set(` ,[]{}
|
|
118
|
+
\r `),bl=e=>!e||A_.has(e);class zc{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(i,n=!1){if(i){if(typeof i!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+i:i,this.lineEndPos=null}this.atEnd=!n;let a=this.next??"stream";for(;a&&(n||this.hasChars(1));)a=yield*this.parseNext(a)}atLineEnd(){let i=this.pos,n=this.buffer[i];for(;n===" "||n===" ";)n=this.buffer[++i];return!n||n==="#"||n===`
|
|
119
|
+
`?!0:n==="\r"?this.buffer[i+1]===`
|
|
120
|
+
`:!1}charAt(i){return this.buffer[this.pos+i]}continueScalar(i){let n=this.buffer[i];if(this.indentNext>0){let a=0;for(;n===" ";)n=this.buffer[++a+i];if(n==="\r"){const l=this.buffer[a+i+1];if(l===`
|
|
121
|
+
`||!l&&!this.atEnd)return i+a+1}return n===`
|
|
122
|
+
`||a>=this.indentNext||!n&&!this.atEnd?i+a:-1}if(n==="-"||n==="."){const a=this.buffer.substr(i,3);if((a==="---"||a==="...")&&Vn(this.buffer[i+3]))return-1}return i}getLine(){let i=this.lineEndPos;return(typeof i!="number"||i!==-1&&i<this.pos)&&(i=this.buffer.indexOf(`
|
|
123
|
+
`,this.pos),this.lineEndPos=i),i===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[i-1]==="\r"&&(i-=1),this.buffer.substring(this.pos,i))}hasChars(i){return this.pos+i<=this.buffer.length}setNext(i){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=i,null}peek(i){return this.buffer.substr(this.pos,i)}*parseNext(i){switch(i){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 i=this.getLine();if(i===null)return this.setNext("stream");if(i[0]===Pa&&(yield*this.pushCount(1),i=i.substring(1)),i[0]==="%"){let n=i.length,a=i.indexOf("#");for(;a!==-1;){const d=i[a-1];if(d===" "||d===" "){n=a-1;break}else a=i.indexOf("#",a+1)}for(;;){const d=i[n-1];if(d===" "||d===" ")n-=1;else break}const l=(yield*this.pushCount(n))+(yield*this.pushSpaces(!0));return yield*this.pushCount(i.length-l),this.pushNewline(),"stream"}if(this.atLineEnd()){const n=yield*this.pushSpaces(!0);return yield*this.pushCount(i.length-n),yield*this.pushNewline(),"stream"}return yield Ia,yield*this.parseLineStart()}*parseLineStart(){const i=this.charAt(0);if(!i&&!this.atEnd)return this.setNext("line-start");if(i==="-"||i==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const n=this.peek(3);if((n==="---"||n==="...")&&Vn(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&&!Vn(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[i,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((i==="-"||i==="?"||i===":")&&Vn(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 i=this.getLine();if(i===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(i[n]){case"#":yield*this.pushCount(i.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(bl),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(i.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let i,n,a=-1;do i=yield*this.pushNewline(),i>0?(n=yield*this.pushSpaces(!1),this.indentValue=a=n):n=0,n+=yield*this.pushSpaces(!0);while(i+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("..."))&&Vn(l[3]))&&!(a===this.indentNext-1&&this.flowLevel===1&&(l[0]==="]"||l[0]==="}")))return this.flowLevel=0,yield Ra,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(bl),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{const u=this.charAt(1);if(this.flowKey||Vn(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 i=this.charAt(0);let n=this.buffer.indexOf(i,this.pos+1);if(i==="'")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 i=this.pos;for(;;){const n=this.buffer[++i];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=>Vn(n)||n==="#")}*parseBlockScalar(){let i=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
|
+
`:i=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(i+1);if(d===-1)break;i=this.buffer.indexOf(`
|
|
128
|
+
`,d)}while(i!==-1);if(i===-1){if(!this.atEnd)return this.setNext("block-scalar");i=this.buffer.length}}let l=i+1;for(a=this.buffer[l];a===" ";)a=this.buffer[++l];if(a===" "){for(;a===" "||a===" "||a==="\r"||a===`
|
|
129
|
+
`;)a=this.buffer[++l];i=l-1}else if(!this.blockScalarKeep)do{let d=i-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)i=d;else break}while(!0);return yield Ys,yield*this.pushToIndex(i+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const i=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(Vn(d)||i&&ea.has(d))break;n=a}else if(Vn(l)){let d=this.buffer[a+1];if(l==="\r"&&(d===`
|
|
131
|
+
`?(a+=1,l=`
|
|
132
|
+
`,d=this.buffer[a+1]):n=a),d==="#"||i&&ea.has(d))break;if(l===`
|
|
133
|
+
`){const u=this.continueScalar(a+1);if(u===-1)break;a=Math.max(a,u-2)}}else{if(i&&ea.has(l))break;n=a}return!l&&!this.atEnd?this.setNext("plain-scalar"):(yield Ys,yield*this.pushToIndex(n+1,!0),i?"flow":"doc")}*pushCount(i){return i>0?(yield this.buffer.substr(this.pos,i),this.pos+=i,i):0}*pushToIndex(i,n){const a=this.buffer.slice(this.pos,i);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(bl))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const i=this.flowLevel>0,n=this.charAt(1);if(Vn(n)||i&&ea.has(n))return i?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 i=this.pos+2,n=this.buffer[i];for(;!Vn(n)&&n!==">";)n=this.buffer[++i];return yield*this.pushToIndex(n===">"?i+1:i,!1)}else{let i=this.pos+1,n=this.buffer[i];for(;n;)if(E_.has(n))n=this.buffer[++i];else if(n==="%"&&tp.has(this.buffer[i+1])&&tp.has(this.buffer[i+2]))n=this.buffer[i+=3];else break;return yield*this.pushToIndex(i,!1)}}*pushNewline(){const i=this.buffer[this.pos];return i===`
|
|
134
|
+
`?yield*this.pushCount(1):i==="\r"&&this.charAt(1)===`
|
|
135
|
+
`?yield*this.pushCount(2):0}*pushSpaces(i){let n=this.pos-1,a;do a=this.buffer[++n];while(a===" "||i&&a===" ");const l=n-this.pos;return l>0&&(yield this.buffer.substr(this.pos,l),this.pos=n),l}*pushUntil(i){let n=this.pos,a=this.buffer[n];for(;!i(a);)a=this.buffer[++n];return yield*this.pushToIndex(n,!1)}}class Wc{constructor(){this.lineStarts=[],this.addNewLine=i=>this.lineStarts.push(i),this.linePos=i=>{let n=0,a=this.lineStarts.length;for(;n<a;){const d=n+a>>1;this.lineStarts[d]<i?n=d+1:a=d}if(this.lineStarts[n]===i)return{line:n+1,col:1};if(n===0)return{line:0,col:i};const l=this.lineStarts[n-1];return{line:n,col:i-l+1}}}}function hr(e,i){for(let n=0;n<e.length;++n)if(e[n].type===i)return!0;return!1}function np(e){for(let i=0;i<e.length;++i)switch(e[i].type){case"space":case"comment":case"newline":break;default:return i}return-1}function pg(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 ta(e){switch(e.type){case"document":return e.start;case"block-map":{const i=e.items[e.items.length-1];return i.sep??i.start}case"block-seq":return e.items[e.items.length-1].start;default:return[]}}function Jr(e){if(e.length===0)return[];let i=e.length;e:for(;--i>=0;)switch(e[i].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;e[++i]?.type==="space";);return e.splice(i,e.length)}function ip(e){if(e.start.type==="flow-seq-start")for(const i of e.items)i.sep&&!i.value&&!hr(i.start,"explicit-key-ind")&&!hr(i.sep,"map-value-ind")&&(i.key&&(i.value=i.key),delete i.key,pg(i.value)?i.value.end?Array.prototype.push.apply(i.value.end,i.sep):i.value.end=i.sep:Array.prototype.push.apply(i.start,i.sep),delete i.sep)}class Ma{constructor(i){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new zc,this.onNewLine=i}*parse(i,n=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const a of this.lexer.lex(i,n))yield*this.next(a);n||(yield*this.end())}*next(i){if(this.source=i,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=i.length;return}const n=dg(i);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+i.length);break;case"space":this.atNewLine&&i[0]===" "&&(this.indent+=i.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=i.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=i.length}else{const a=`Not a YAML token: ${i}`;yield*this.pop({type:"error",offset:this.offset,message:a,source:i}),this.offset+=i.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 i=this.peek(1);if(this.type==="doc-end"&&(!i||i.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(!i)return yield*this.stream();switch(i.type){case"document":return yield*this.document(i);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(i);case"block-scalar":return yield*this.blockScalar(i);case"block-map":return yield*this.blockMap(i);case"block-seq":return yield*this.blockSequence(i);case"flow-collection":return yield*this.flowCollection(i);case"doc-end":return yield*this.documentEnd(i)}yield*this.pop()}peek(i){return this.stack[this.stack.length-i]}*pop(i){const n=i??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"&&ip(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&&np(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 i={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&i.start.push(this.sourceToken),this.stack.push(i);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(i){if(i.value)return yield*this.lineEnd(i);switch(this.type){case"doc-start":{np(i.start)!==-1?(yield*this.pop(),yield*this.step()):i.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":i.start.push(this.sourceToken);return}const n=this.startBlockValue(i);n?this.stack.push(n):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(i){if(this.type==="map-value-ind"){const n=ta(this.peek(2)),a=Jr(n);let l;i.end?(l=i.end,l.push(this.sourceToken),delete i.end):l=[this.sourceToken];const d={type:"block-map",offset:i.offset,indent:i.indent,items:[{start:a,key:i,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=d}else yield*this.lineEnd(i)}*blockScalar(i){switch(this.type){case"space":case"comment":case"newline":i.props.push(this.sourceToken);return;case"scalar":if(i.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(i){const n=i.items[i.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):i.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)i.items.push({start:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else{if(this.atIndentedComment(n.start,i.indent)){const l=i.items[i.items.length-2]?.value?.end;if(Array.isArray(l)){Array.prototype.push.apply(l,n.start),l.push(this.sourceToken),i.items.pop();return}}n.start.push(this.sourceToken)}return}if(this.indent>=i.indent){const a=!this.onKeyLine&&this.indent===i.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>i.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),i.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),i.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)i.items.push({start:[],key:null,sep:[this.sourceToken]});else if(hr(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(pg(n.key)&&!hr(n.sep,"newline")){const u=Jr(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(hr(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{const u=Jr(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?i.items.push({start:d,key:null,sep:[this.sourceToken]}):hr(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?(i.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(i);if(u){a&&u.type!=="block-seq"&&i.items.push({start:d}),this.stack.push(u);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(i){const n=i.items[i.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):i.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)i.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,i.indent)){const l=i.items[i.items.length-2]?.value?.end;if(Array.isArray(l)){Array.prototype.push.apply(l,n.start),l.push(this.sourceToken),i.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=i.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==i.indent)break;n.value||hr(n.start,"seq-item-ind")?i.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return}if(this.indent>i.indent){const a=this.startBlockValue(i);if(a){this.stack.push(a);return}}yield*this.pop(),yield*this.step()}*flowCollection(i){const n=i.items[i.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(i.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!n||n.sep?i.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return;case"map-value-ind":!n||n.value?i.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?i.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?i.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":i.end.push(this.sourceToken);return}const a=this.startBlockValue(i);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===i.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=ta(a),d=Jr(l);ip(i);const u=i.end.splice(1,i.end.length);u.push(this.sourceToken);const c={type:"block-map",offset:i.offset,indent:i.indent,items:[{start:d,key:i,sep:u}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=c}else yield*this.lineEnd(i)}}flowScalar(i){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:i,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(i){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=ta(i),a=Jr(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=ta(i),a=Jr(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(i,n){return this.type!=="comment"||this.indent<=n?!1:i.every(a=>a.type==="newline"||a.type==="space")}*documentEnd(i){this.type!=="doc-mode"&&(i.end?i.end.push(this.sourceToken):i.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(i){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:i.end?i.end.push(this.sourceToken):i.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function mg(e){const i=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||i&&new Wc||null,prettyErrors:i}}function yg(e,i={}){const{lineCounter:n,prettyErrors:a}=mg(i),l=new Ma(n?.addNewLine),d=new Fa(i),u=Array.from(d.compose(l.parse(e)));if(a&&n)for(const c of u)c.errors.forEach(va(e,n)),c.warnings.forEach(va(e,n));return u.length>0?u:Object.assign([],{empty:!0},d.streamInfo())}function qc(e,i={}){const{lineCounter:n,prettyErrors:a}=mg(i),l=new Ma(n?.addNewLine),d=new Fa(i);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 Ji(c.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return a&&n&&(u.errors.forEach(va(e,n)),u.warnings.forEach(va(e,n))),u}function gg(e,i,n){let a;typeof i=="function"?a=i:n===void 0&&i&&typeof i=="object"&&(n=i);const l=qc(e,n);if(!l)return null;if(l.warnings.forEach(d=>jy(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 bg(e,i,n){let a=null;if(typeof i=="function"||Array.isArray(i)?a=i:n===void 0&&i&&(n=i),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??i??{};if(!l)return}return Zi(e)&&!a?e.toString(n):new Tr(e,a,n).toString(n)}const F_=Object.freeze(Object.defineProperty({__proto__:null,Alias:eo,CST:hg,Composer:Fa,Document:Tr,Lexer:zc,LineCounter:Wc,Pair:$t,Parser:Ma,Scalar:tt,Schema:io,YAMLError:Aa,YAMLMap:mn,YAMLParseError:Ji,YAMLSeq:Ei,YAMLWarning:Uc,isAlias:Vi,isCollection:Ct,isDocument:Zi,isMap:gr,isNode:Et,isPair:kt,isScalar:vt,isSeq:br,parse:gg,parseAllDocuments:yg,parseDocument:qc,stringify:bg,visit:Ci,visitAsync:$s},Symbol.toStringTag,{value:"Module"})),P_=Object.freeze(Object.defineProperty({__proto__:null,Alias:eo,CST:hg,Composer:Fa,Document:Tr,Lexer:zc,LineCounter:Wc,Pair:$t,Parser:Ma,Scalar:tt,Schema:io,YAMLError:Aa,YAMLMap:mn,YAMLParseError:Ji,YAMLSeq:Ei,YAMLWarning:Uc,default:F_,isAlias:Vi,isCollection:Ct,isDocument:Zi,isMap:gr,isNode:Et,isPair:kt,isScalar:vt,isSeq:br,parse:gg,parseAllDocuments:yg,parseDocument:qc,stringify:bg,visit:Ci,visitAsync:$s},Symbol.toStringTag,{value:"Module"})),I_=Nc(P_);var rp;function Qe(){if(rp)return rt;rp=1;var e=rt&&rt.__createBinding||(Object.create?function(f,E,S,P){P===void 0&&(P=S);var y=Object.getOwnPropertyDescriptor(E,S);(!y||("get"in y?!E.__esModule:y.writable||y.configurable))&&(y={enumerable:!0,get:function(){return E[S]}}),Object.defineProperty(f,P,y)}:function(f,E,S,P){P===void 0&&(P=S),f[P]=E[S]}),i=rt&&rt.__setModuleDefault||(Object.create?function(f,E){Object.defineProperty(f,"default",{enumerable:!0,value:E})}:function(f,E){f.default=E}),n=rt&&rt.__importStar||function(f){if(f&&f.__esModule)return f;var E={};if(f!=null)for(var S in f)S!=="default"&&Object.prototype.hasOwnProperty.call(f,S)&&e(E,f,S);return i(E,f),E};Object.defineProperty(rt,"__esModule",{value:!0}),rt.numberEnumValues=rt.indentationString=rt.parseJSON=rt.inflateBase64=rt.errorMessage=rt.repeatedCall=rt.repeated=rt.mustNotHappen=rt.panic=rt.assert=rt.assertNever=rt.nonNull=rt.defined=rt.checkArray=rt.checkStringMap=rt.checkString=rt.isStringMap=void 0;const a=yL(),l=n(kL()),d=yn(),u=n(I_);function c(f,E){if(typeof f!="object"||Array.isArray(f)||f===null)return!1;if(E!==void 0)for(const S of Object.getOwnPropertyNames(f)){const P=f[S];if(!E(P))return!1}return!0}rt.isStringMap=c;function w(f){return typeof f=="string"}rt.checkString=w;function U(f,E){return c(f,E)?f:b(`Value must be an object, but is ${f}`)}rt.checkStringMap=U;function F(f,E){if(!Array.isArray(f))return b(`Value must be an array, but is ${f}`);if(E!==void 0){for(const S of f)if(!E(S))return b(`Array item does not satisfy constraint: ${S}`)}return f}rt.checkArray=F;function O(f){return f!==void 0?f:b("Defined value expected, but got undefined")}rt.defined=O;function M(f){return f!==null?f:b("Non-null value expected, but got null")}rt.nonNull=M;function L(f){return(0,d.messageError)("InternalError",{message:`Unexpected object ${f}`})}rt.assertNever=L;function _(f,E="Assertion failed"){if(!f)return(0,d.messageError)("InternalError",{message:E})}rt.assert=_;function b(f){return(0,d.messageError)("InternalError",{message:f})}rt.panic=b;function v(){return b("This must not happen")}rt.mustNotHappen=v;function h(f,E){const S=[];for(let P=0;P<f;P++)S.push(E);return S}rt.repeated=h;function m(f,E){const S=[];for(let P=0;P<f;P++)S.push(E());return S}rt.repeatedCall=m;function k(f){return f instanceof Error?f.message:f.toString()}rt.errorMessage=k;function B(f){const E=a.Base64.atob(f);return l.inflate(E,{to:"string"})}rt.inflateBase64=B;function C(f,E,S="<unknown>"){try{return f.charCodeAt(0)===65279&&(f=f.slice(1)),u.parse(f)}catch(P){let y;return P instanceof SyntaxError?y=P.message:y=`Unknown exception ${P}`,(0,d.messageError)("MiscJSONParseError",{description:E,address:S,message:y})}}rt.parseJSON=C;function R(f){return" ".repeat(f)}rt.indentationString=R;function A(f){const E=[];for(const S of Object.keys(f)){const P=f[S];typeof P=="number"&&E.push(P)}return E}return rt.numberEnumValues=A,rt}var bi={};function R_(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 pa={exports:{}},M_=pa.exports,sp;function Tg(){return sp||(sp=1,function(e,i){(function(n,a){typeof R_=="function"?e.exports=a():n.pluralize=a()})(M_,function(){var n=[],a=[],l={},d={},u={};function c(b){return typeof b=="string"?new RegExp("^"+b+"$","i"):b}function w(b,v){return b===v?v:b===b.toLowerCase()?v.toLowerCase():b===b.toUpperCase()?v.toUpperCase():b[0]===b[0].toUpperCase()?v.charAt(0).toUpperCase()+v.substr(1).toLowerCase():v.toLowerCase()}function U(b,v){return b.replace(/\$(\d{1,2})/g,function(h,m){return v[m]||""})}function F(b,v){return b.replace(v[0],function(h,m){var k=U(v[1],arguments);return w(h===""?b[m-1]:h,k)})}function O(b,v,h){if(!b.length||l.hasOwnProperty(b))return v;for(var m=h.length;m--;){var k=h[m];if(k[0].test(v))return F(v,k)}return v}function M(b,v,h){return function(m){var k=m.toLowerCase();return v.hasOwnProperty(k)?w(m,k):b.hasOwnProperty(k)?w(m,b[k]):O(k,m,h)}}function L(b,v,h,m){return function(k){var B=k.toLowerCase();return v.hasOwnProperty(B)?!0:b.hasOwnProperty(B)?!1:O(B,B,h)===B}}function _(b,v,h){var m=v===1?_.singular(b):_.plural(b);return(h?v+" ":"")+m}return _.plural=M(u,d,n),_.isPlural=L(u,d,n),_.singular=M(d,u,a),_.isSingular=L(d,u,a),_.addPluralRule=function(b,v){n.push([c(b),v])},_.addSingularRule=function(b,v){a.push([c(b),v])},_.addUncountableRule=function(b){if(typeof b=="string"){l[b.toLowerCase()]=!0;return}_.addPluralRule(b,"$0"),_.addSingularRule(b,"$0")},_.addIrregularRule=function(b,v){v=v.toLowerCase(),b=b.toLowerCase(),u[b]=v,d[v]=b},[["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(b){return _.addIrregularRule(b[0],b[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(b){return _.addPluralRule(b[0],b[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(b){return _.addSingularRule(b[0],b[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(_.addUncountableRule),_})}(pa)),pa.exports}var kn={},op;function At(){if(op)return kn;op=1,Object.defineProperty(kn,"__esModule",{value:!0}),kn.increaseTypeAttributesDistance=kn.makeTypeAttributesInferred=kn.combineTypeAttributes=kn.emptyTypeAttributes=kn.TypeAttributeKind=void 0;const e=et(),i=Qe();class n{constructor(c){this.name=c}appliesToTypeKind(c){return c!=="any"}combine(c){return(0,i.panic)(`Cannot combine type attribute ${this.name}`)}intersect(c){return this.combine(c)}makeInferred(c){return(0,i.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 F=new Map(c);return F.delete(this),F}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 F;if(Array.isArray(c))F=c;else{if(w===void 0)return(0,i.panic)("Must have on array or two attributes");F=[c,w]}const O=(0,e.mapTranspose)(F);function M(L,_){return(0,i.assert)(L.length>0,"Cannot combine zero type attributes"),L.length===1?L[0]:U?_.combine(L):_.intersect(L)}return(0,e.mapFilterMap)(O,M)}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 Ls={},Tl={},Nn={},ap;function zt(){if(ap)return Nn;ap=1,Object.defineProperty(Nn,"__esModule",{value:!0}),Nn.EnumOption=Nn.StringOption=Nn.BooleanOption=Nn.getOptionValues=Nn.Option=void 0;const e=Qe(),i=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 F=U[this.definition.name];return F===void 0?this.definition.defaultValue:F}get cliDefinitions(){return{actual:[this.definition],display:[this.definition]}}}Nn.Option=a;function l(w,U){const F={};for(const O of Object.getOwnPropertyNames(w))F[O]=w[O].getValue(U);return F}Nn.getOptionValues=l;class d extends a{constructor(U,F,O,M="primary"){super({name:U,kind:M,type:Boolean,description:F,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 F=U[this.definition.name];F===void 0&&(F=this.definition.defaultValue);let O=U[`no-${this.definition.name}`];return O===void 0&&(O=!this.definition.defaultValue),F==="true"?F=!0:F==="false"&&(F=!1),this.definition.defaultValue?F&&!O:F||!O}}Nn.BooleanOption=d;class u extends a{constructor(U,F,O,M,L="primary"){const _={name:U,kind:L,type:String,description:F,typeLabel:O,defaultValue:M};super(_)}}Nn.StringOption=u;class c extends a{constructor(U,F,O,M=void 0,L="primary"){M===void 0&&(M=O[0][0]);const _={name:U,kind:L,type:String,description:F,typeLabel:O.map(([b,v])=>b).join("|"),legalValues:O.map(([b,v])=>b),defaultValue:M};super(_),this._values={};for(const[b,v]of O)this._values[b]=v}getValue(U){let F=U[this.definition.name];return F===void 0&&(F=this.definition.defaultValue),(0,n.hasOwnProperty)(this._values,F)?this._values[F]:(0,i.messageError)("RendererUnknownOptionValue",{value:F,name:this.definition.name})}}return Nn.EnumOption=c,Nn}var up;function vr(){return up||(up=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.acronymStyle=e.acronymOption=e.AcronymStyleOptions=e.acronyms=void 0;const i=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 i.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}(Tl)),Tl}var vl={exports:{}},_s={},lp;function Jc(){if(lp)return _s;lp=1,_s.byteLength=c,_s.toByteArray=U,_s.fromByteArray=M;for(var e=[],i=[],n=typeof Uint8Array<"u"?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",l=0,d=a.length;l<d;++l)e[l]=a[l],i[a.charCodeAt(l)]=l;i[45]=62,i[95]=63;function u(L){var _=L.length;if(_%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var b=L.indexOf("=");b===-1&&(b=_);var v=b===_?0:4-b%4;return[b,v]}function c(L){var _=u(L),b=_[0],v=_[1];return(b+v)*3/4-v}function w(L,_,b){return(_+b)*3/4-b}function U(L){var _,b=u(L),v=b[0],h=b[1],m=new n(w(L,v,h)),k=0,B=h>0?v-4:v,C;for(C=0;C<B;C+=4)_=i[L.charCodeAt(C)]<<18|i[L.charCodeAt(C+1)]<<12|i[L.charCodeAt(C+2)]<<6|i[L.charCodeAt(C+3)],m[k++]=_>>16&255,m[k++]=_>>8&255,m[k++]=_&255;return h===2&&(_=i[L.charCodeAt(C)]<<2|i[L.charCodeAt(C+1)]>>4,m[k++]=_&255),h===1&&(_=i[L.charCodeAt(C)]<<10|i[L.charCodeAt(C+1)]<<4|i[L.charCodeAt(C+2)]>>2,m[k++]=_>>8&255,m[k++]=_&255),m}function F(L){return e[L>>18&63]+e[L>>12&63]+e[L>>6&63]+e[L&63]}function O(L,_,b){for(var v,h=[],m=_;m<b;m+=3)v=(L[m]<<16&16711680)+(L[m+1]<<8&65280)+(L[m+2]&255),h.push(F(v));return h.join("")}function M(L){for(var _,b=L.length,v=b%3,h=[],m=16383,k=0,B=b-v;k<B;k+=m)h.push(O(L,k,k+m>B?B:k+m));return v===1?(_=L[b-1],h.push(e[_>>2]+e[_<<4&63]+"==")):v===2&&(_=(L[b-2]<<8)+L[b-1],h.push(e[_>>10]+e[_>>4&63]+e[_<<2&63]+"=")),h.join("")}return _s}var Sl,cp;function B_(){if(cp)return Sl;cp=1;var e=0,i=-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),F=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),O=new n,M=new Uint8Array(320);function L(f,E,S,P){var y,r;for(y=0;y<S;++y)f[y]=0;for(y=0;y<30-S;++y)f[y+S]=y/S|0;for(r=P,y=0;y<30;++y)E[y]=r,r+=1<<f[y]}function _(f,E){var S;for(S=0;S<7;++S)f.table[S]=0;for(f.table[7]=24,f.table[8]=152,f.table[9]=112,S=0;S<24;++S)f.trans[S]=256+S;for(S=0;S<144;++S)f.trans[24+S]=S;for(S=0;S<8;++S)f.trans[168+S]=280+S;for(S=0;S<112;++S)f.trans[176+S]=144+S;for(S=0;S<5;++S)E.table[S]=0;for(E.table[5]=32,S=0;S<32;++S)E.trans[S]=S}var b=new Uint16Array(16);function v(f,E,S,P){var y,r;for(y=0;y<16;++y)f.table[y]=0;for(y=0;y<P;++y)f.table[E[S+y]]++;for(f.table[0]=0,r=0,y=0;y<16;++y)b[y]=r,r+=f.table[y];for(y=0;y<P;++y)E[S+y]&&(f.trans[b[E[S+y]]++]=y)}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 m(f,E,S){if(!E)return S;for(;f.bitcount<24;)f.tag|=f.source[f.sourceIndex++]<<f.bitcount,f.bitcount+=8;var P=f.tag&65535>>>16-E;return f.tag>>>=E,f.bitcount-=E,P+S}function k(f,E){for(;f.bitcount<24;)f.tag|=f.source[f.sourceIndex++]<<f.bitcount,f.bitcount+=8;var S=0,P=0,y=0,r=f.tag;do P=2*P+(r&1),r>>>=1,++y,S+=E.table[y],P-=E.table[y];while(P>=0);return f.tag=r,f.bitcount-=y,E.trans[S+P]}function B(f,E,S){var P,y,r,s,p,g;for(P=m(f,5,257),y=m(f,5,1),r=m(f,4,4),s=0;s<19;++s)M[s]=0;for(s=0;s<r;++s){var I=m(f,3,0);M[F[s]]=I}for(v(O,M,0,19),p=0;p<P+y;){var x=k(f,O);switch(x){case 16:var q=M[p-1];for(g=m(f,2,3);g;--g)M[p++]=q;break;case 17:for(g=m(f,3,3);g;--g)M[p++]=0;break;case 18:for(g=m(f,7,11);g;--g)M[p++]=0;break;default:M[p++]=x;break}}v(E,M,0,P),v(S,M,P,y)}function C(f,E,S){for(;;){var P=k(f,E);if(P===256)return e;if(P<256)f.dest[f.destLen++]=P;else{var y,r,s,p;for(P-=257,y=m(f,u[P],c[P]),r=k(f,S),s=f.destLen-m(f,w[r],U[r]),p=s;p<s+y;++p)f.dest[f.destLen++]=f.dest[p]}}}function R(f){for(var E,S,P;f.bitcount>8;)f.sourceIndex--,f.bitcount-=8;if(E=f.source[f.sourceIndex+1],E=256*E+f.source[f.sourceIndex],S=f.source[f.sourceIndex+3],S=256*S+f.source[f.sourceIndex+2],E!==(~S&65535))return i;for(f.sourceIndex+=4,P=E;P;--P)f.dest[f.destLen++]=f.source[f.sourceIndex++];return f.bitcount=0,e}function A(f,E){var S=new a(f,E),P,y,r;do{switch(P=h(S),y=m(S,2,0),y){case 0:r=R(S);break;case 1:r=C(S,l,d);break;case 2:B(S,S.ltree,S.dtree),r=C(S,S.ltree,S.dtree);break;default:r=i}if(r!==e)throw new Error("Data error")}while(!P);return S.destLen<S.dest.length?typeof S.dest.slice=="function"?S.dest.slice(0,S.destLen):S.dest.subarray(0,S.destLen):S.dest}return _(l,d),L(u,c,4,3),L(w,U,2,1),u[28]=0,c[28]=258,Sl=A,Sl}var wl,fp;function D_(){if(fp)return wl;fp=1;const e=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,i=(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)i(l,u,u+3),i(l,u+1,u+2)};return wl={swap32LE:l=>{e&&n(l)}},wl}var Ll,dp;function j_(){if(dp)return Ll;dp=1;const e=B_(),{swap32LE:i}=D_(),n=11,a=5,l=n-a,d=65536>>n,c=(1<<l)-1,w=2,F=(1<<a)-1,O=65536>>a,M=1024>>a,v=O+M+32,h=1<<w;class m{constructor(B){const C=typeof B.readUInt32BE=="function"&&typeof B.slice=="function";if(C||B instanceof Uint8Array){let R;if(C)this.highStart=B.readUInt32LE(0),this.errorValue=B.readUInt32LE(4),R=B.readUInt32LE(8),B=B.slice(12);else{const A=new DataView(B.buffer);this.highStart=A.getUint32(0,!0),this.errorValue=A.getUint32(4,!0),R=A.getUint32(8,!0),B=B.subarray(12)}B=e(B,new Uint8Array(R)),B=e(B,new Uint8Array(R)),i(B),this.data=new Uint32Array(B.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=B)}get(B){let C;return B<0||B>1114111?this.errorValue:B<55296||B>56319&&B<=65535?(C=(this.data[B>>a]<<w)+(B&F),this.data[C]):B<=65535?(C=(this.data[O+(B-55296>>a)]<<w)+(B&F),this.data[C]):B<this.highStart?(C=this.data[v-d+(B>>n)],C=this.data[C+(B>>a&c)],C=(C<<w)+(B&F),this.data[C]):this.data[this.data.length-h]}}return Ll=m,Ll}var hp;function so(){return hp||(hp=1,function(e){var i=Jc(),n=j_();function a(J){return J&&J.__esModule?J.default:J}function l(J){Object.defineProperty(J,"__esModule",{value:!0,configurable:!0})}function d(J,X,Q,re){Object.defineProperty(J,X,{get:Q,set:re,enumerable:!0,configurable:!0})}l(e.exports),d(e.exports,"getCategory",()=>f),d(e.exports,"getCombiningClass",()=>E),d(e.exports,"getScript",()=>S),d(e.exports,"getEastAsianWidth",()=>P),d(e.exports,"getNumericValue",()=>y),d(e.exports,"isAlphabetic",()=>r),d(e.exports,"isDigit",()=>s),d(e.exports,"isPunctuation",()=>p),d(e.exports,"isLowerCase",()=>g),d(e.exports,"isUpperCase",()=>I),d(e.exports,"isTitleCase",()=>x),d(e.exports,"isWhiteSpace",()=>q),d(e.exports,"isBaseForm",()=>T),d(e.exports,"isMark",()=>D),d(e.exports,"default",()=>W);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(i).toByteArray("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")),w=Math.log2||(J=>Math.log(J)/Math.LN2),U=J=>w(J)+1|0,F=U(a(u).categories.length-1),O=U(a(u).combiningClasses.length-1),M=U(a(u).scripts.length-1),L=U(a(u).eaw.length-1),_=10,b=O+M+L+_,v=M+L+_,h=L+_,m=_,k=(1<<F)-1,B=(1<<O)-1,C=(1<<M)-1,R=(1<<L)-1,A=(1<<_)-1;function f(J){const X=c.get(J);return a(u).categories[X>>b&k]}function E(J){const X=c.get(J);return a(u).combiningClasses[X>>v&B]}function S(J){const X=c.get(J);return a(u).scripts[X>>h&C]}function P(J){const X=c.get(J);return a(u).eaw[X>>m&R]}function y(J){let X=c.get(J),Q=X&A;if(Q===0)return null;if(Q<=50)return Q-1;if(Q<480){const re=(Q>>4)-12,se=(Q&15)+1;return re/se}else if(Q<768){X=(Q>>5)-14;let re=(Q&31)+2;for(;re>0;)X*=10,re--;return X}else{X=(Q>>2)-191;let re=(Q&3)+1;for(;re>0;)X*=60,re--;return X}}function r(J){const X=f(J);return X==="Lu"||X==="Ll"||X==="Lt"||X==="Lm"||X==="Lo"||X==="Nl"}function s(J){return f(J)==="Nd"}function p(J){const X=f(J);return X==="Pc"||X==="Pd"||X==="Pe"||X==="Pf"||X==="Pi"||X==="Po"||X==="Ps"}function g(J){return f(J)==="Ll"}function I(J){return f(J)==="Lu"}function x(J){return f(J)==="Lt"}function q(J){const X=f(J);return X==="Zs"||X==="Zl"||X==="Zp"}function T(J){const X=f(J);return X==="Nd"||X==="No"||X==="Nl"||X==="Lu"||X==="Ll"||X==="Lt"||X==="Lm"||X==="Lo"||X==="Me"||X==="Mc"}function D(J){const X=f(J);return X==="Mn"||X==="Me"||X==="Mc"}var W={getCategory:f,getCombiningClass:E,getScript:S,getEastAsianWidth:P,getNumericValue:y,isAlphabetic:r,isDigit:s,isPunctuation:p,isLowerCase:g,isUpperCase:I,isTitleCase:x,isWhiteSpace:q,isBaseForm:T,isMark:D}}(vl)),vl.exports}var pp;function Nt(){return pp||(pp=1,function(e){var i=Ls&&Ls.__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=vr(),l=yn(),d=i(so());function u(de){const Y=[],z=[];for(let V=0;V<128;V++){let ue=0;const Te=de(V);Te===String.fromCharCode(V)&&(ue=1),Y.push(Te),z.push(ue)}return{charStringMap:Y,charNoEscapeMap:z}}function c(de){const Y=[];for(let z=0;z<128;z++)Y.push(de(z));return function(z){return z<128?Y[z]:de(z)}}function w(de){const{charStringMap:Y,charNoEscapeMap:z}=u(de);return function(ue){let Te=null,Ie=0,Ce=0;for(;Ce<ue.length;){const We=ue.charCodeAt(Ce);if(z[We]!==1){Te===null&&(Te=[]),Te.push(ue.substring(Ie,Ce));const Ge=Y[We];Ge===void 0?Te.push(de(ue.charCodeAt(Ce))):Te.push(Ge),Ie=Ce+1}Ce++}return Te===null?ue:(Te.push(ue.substring(Ie,Ce)),Te.join(""))}}e.utf16ConcatMap=w;function U(de){return de>=55296&&de<=56319}function F(de){return de>=56320&&de<=57343}function O(de){const{charStringMap:Y,charNoEscapeMap:z}=u(de);return function(ue){let Te=null,Ie=0,Ce=0;for(;Ce<ue.length;){let We=ue.charCodeAt(Ce);if(z[We]!==1){if(Te===null&&(Te=[]),Te.push(ue.substring(Ie,Ce)),U(We)){const ee=We;Ce++;const te=ue.charCodeAt(Ce);(0,l.messageAssert)(F(te),"MiscUnicodeHighSurrogateWithoutLowSurrogate",{});const K=ee-55296;We=65536+(te-56320)+(K<<10)}const Ge=Y[We];Ge===void 0?Te.push(de(We)):Te.push(Ge),Ie=Ce+1}Ce++}return Te===null?ue:(Te.push(ue.substring(Ie,Ce)),Te.join(""))}}e.utf32ConcatMap=O;function M(de){return w(Y=>de(Y)?String.fromCharCode(Y):"")}e.utf16LegalizeCharacters=M;function L(de){return O(Y=>Y<=65535&&de(Y)?String.fromCharCode(Y):"")}e.legalizeCharacters=L;function _(de,Y){if((0,n.assert)(Y>=0,"Cannot repeat a string a negative number of times"),Y===0)return"";let z="";do Y%2!==0&&(z+=de),Y=Math.floor(Y/2),Y>0&&(de+=de);while(Y>0);return z}e.repeatString=_;function b(de,Y){let z=de.toString(16);return z.length>=Y?z:_("0",Y-z.length)+z}e.intToHex=b;function v(de){return de<=65535?"\\u"+b(de,4):"\\U"+b(de,8)}e.standardUnicodeHexEscape=v;function h(de,Y){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):Y(V)}}return z}e.escapeNonPrintableMapper=h,e.utf16StringEscape=w(h(m,v)),e.stringEscape=O(h(m,v));function m(de){if(de>65535)return!1;const Y=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(Y)>=0}e.isPrintable=m;function k(de){return de<128}e.isAscii=k;function B(de){const Y=d.default.getCategory(de);return["Lu","Ll","Lt","Lo"].indexOf(Y)>=0}e.isLetter=B;function C(de){const Y=d.default.getCategory(de);return["Nd"].indexOf(Y)>=0}e.isDigit=C;function R(de){const Y=d.default.getCategory(de);return["No","Nd","Nl"].indexOf(Y)>=0}e.isNumeric=R;function A(de){return B(de)||C(de)}e.isLetterOrDigit=A;function f(de){return B(de)||de===95}e.isLetterOrUnderscore=f;function E(de){return f(de)||C(de)}e.isLetterOrUnderscoreOrDigit=E;function S(de){return B(de)||C(de)}e.isWordCharacter=S;function P(de){const Y=de.length;let z=Y;for(let V=Y-1;V>=0&&d.default.isWhiteSpace(de.charCodeAt(V));V--)z=V;return z===Y?de:de.slice(0,z)}e.trimEnd=P;function y(de,Y){return Y===""?Y:de(Y[0])+Y.slice(1)}function r(de){return y(Y=>Y.toUpperCase(),de)}e.capitalize=r;function s(de){return y(Y=>Y.toLowerCase(),de)}e.decapitalize=s;const p=/[-_. ]+/;function g(de){return de.split(p).map(r).join("")}e.pascalCase=g;function I(de){return s(g(de))}e.camelCase=I;function x(de){return re(de).map(({word:z})=>z.toLowerCase()).join("_")}e.snakeCase=x;function q(de,Y,z){const V=Y?r:s;return z===""?V("empty"):de(z.charCodeAt(0))?V(z):V("the"+z)}e.startWithLetter=q;const T=new Set(a.acronyms),D=c(S),W=c(de=>!S(de)),J=c(de=>d.default.isLowerCase(de));e.fastIsUpperCase=c(de=>d.default.isUpperCase(de));const X=c(de=>!d.default.isLowerCase(de)&&!d.default.isUpperCase(de)),Q=c(C);function re(de){const Y=[];let z;const V=de.length;let ue=0,Te;function Ie(){return ue>=V}function Ce(){return(0,n.defined)(de.codePointAt(ue))}function We(Se){for(;!Ie();){const Be=Ce();if(!Se(Be))break;J(Be)&&(Te=ue),ue++}}function Ge(){We(W)}function ee(){We(J)}function te(){We(e.fastIsUpperCase)}function K(){We(X)}function j(){We(Q)}function G(){(0,n.assert)(z===void 0,"Interval started before last one was committed"),z=ue}function ce(){if(z===void 0)return(0,n.panic)("Tried to commit interval without starting one");(0,n.assert)(ue>z,"Interval must be non-empty"),!Ie()&&F(Ce())&&(ue+=1);const Se=Te===void 0||Te<z;Y.push([z,ue,Se]),z=void 0}function $(){return z===void 0?(0,n.panic)("Tried to get interval length without starting one"):ue-z}for(;Ge(),!Ie();)G(),J(Ce())?(ee(),j(),ce()):(0,e.fastIsUpperCase)(Ce())?(te(),Ie()?ce():$()===1?(ee(),j(),ce()):C(Ce())?(j(),ce()):(D(Ce())&&(ue-=1),ce())):(K(),ce());const be=[];for(const[Se,Be,we]of Y){const Pe=de.slice(Se,Be),oe=Te!==void 0&&we||T.has(Pe.toLowerCase());be.push({word:Pe,isAcronym:oe})}return be}e.splitIntoWords=re;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 ne(de){return de.toUpperCase()}e.allUpperWordStyle=ne;function me(de){return de}e.originalWord=me;function ge(de){return de.toLowerCase()}e.allLowerWordStyle=ge;function Ae(de,Y){(0,n.assert)(Y.length>0,"Tried to style an empty word");const z=de(Y);return(0,n.assert)(z.length>0,"Word style must not make word empty"),z}function pe(de,Y,z,V,ue,Te,Ie,Ce){const We=[];for(const G of de){const ce=Y(G.word);ce.length!==0&&We.push({word:ce,isAcronym:G.isAcronym})}if(We.length===0){const G=Y("empty");(0,n.assert)(G.length>0,'Word "empty" is invalid in target language'),We.push({word:G,isAcronym:!1})}const Ge=[],ee=We[0],te=ee.isAcronym?ue:z,K=Ae(te,ee.word);let j;if(Ce((0,n.defined)(K.codePointAt(0))))Ge.push(K),j=We.slice(1);else{const G=Y("the");(0,n.assert)(G.length>0,'Word "the" is invalid in the target language');const ce=Ae(z,G);(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 G of j){const ce=G.isAcronym?Te:V;Ge.push(Ae(ce,G.word))}return Ge.join(Ie)}e.combineWords=pe;function le(de,Y){return Y.startsWith(de)?Y:de+Y}e.addPrefixIfNecessary=le;function ye(de,Y,z){let V,ue,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=ne):Te=Ce=se):V="_",de){case"pascal":case"pascal-upper-acronyms":ue=Ie=se;break;case"camel":case"camel-upper-acronyms":ue=Ie=ge;break;case"underscore":ue=Te=Ie=Ce=ge;break;case"upper-underscore":ue=Te=Ie=Ce=ne;break;default:return(0,n.assertNever)(de)}return We=>{const Ge=re(We),ee=pe(Ge,Y,ue,Te,Ie,Ce,V,f);return z!==void 0?le(z,ee):ee}}e.makeNameStyle=ye}(Ls)),Ls}var ks={},mp;function U_(){if(mp)return ks;mp=1,Object.defineProperty(ks,"__esModule",{value:!0}),ks.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 i=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)}};ks.Chance=i;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 ks}var yp;function Hi(){return yp||(yp=1,function(e){var i=bi&&bi.__createBinding||(Object.create?function(R,A,f,E){E===void 0&&(E=f);var S=Object.getOwnPropertyDescriptor(A,f);(!S||("get"in S?!A.__esModule:S.writable||S.configurable))&&(S={enumerable:!0,get:function(){return A[f]}}),Object.defineProperty(R,E,S)}:function(R,A,f,E){E===void 0&&(E=f),R[E]=A[f]}),n=bi&&bi.__setModuleDefault||(Object.create?function(R,A){Object.defineProperty(R,"default",{enumerable:!0,value:A})}:function(R,A){R.default=A}),a=bi&&bi.__importStar||function(R){if(R&&R.__esModule)return R;var A={};if(R!=null)for(var f in R)f!=="default"&&Object.prototype.hasOwnProperty.call(R,f)&&i(A,R,f);return n(A,R),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(Tg()),d=et(),u=Qe(),c=At(),w=Nt(),U=U_();let F,O;function M(){F=new U.Chance(31415),O=new Set}e.initTypeNames=M,M();function L(){for(;;){const R=`${F.city()} ${F.animal()}`;if(!O.has(R))return O.add(R),R}}function _(R){let A=(0,d.iterableFirst)(R);if(A===void 0)return(0,u.panic)("Named type has no names");if(R.size===1)return A;const f=(0,d.setMap)(R,p=>(0,w.splitIntoWords)(p).map(g=>g.word.toLowerCase()).join("_")),E=(0,u.defined)((0,d.iterableFirst)(f));if(f.size===1)return E;let S=E.length,P=E.length;for(const p of(0,d.iterableSkip)(f,1)){S=Math.min(S,p.length);for(let g=0;g<S;g++)if(E[g]!==p[g]){S=g;break}P=Math.min(P,p.length);for(let g=0;g<P;g++)if(E[E.length-g-1]!==p[p.length-g-1]){P=g;break}}const y=S>2?E.slice(0,S):"",r=P>2?E.slice(E.length-P):"",s=y+r;return s.length>2?s:E}e.tooManyNamesThreshold=1e3;let b=class vg{static makeWithDistance(A,f,E){return A.size>=e.tooManyNamesThreshold?new h(E):((f===void 0||f.size>e.tooManyNamesThreshold)&&(f=void 0),new v(A,f,E))}static make(A,f,E){return vg.makeWithDistance(A,f,E?1:0)}constructor(A){this.distance=A}get areInferred(){return this.distance>0}};e.TypeNames=b;class v extends b{constructor(A,f,E){super(E),this.names=A,this._alternativeNames=f}add(A,f=0){let E=new Set(this.names),S=this.distance,P=(0,d.definedMap)(this._alternativeNames,y=>new Set(y));for(let y=f;y<A.length;y++){const r=A[y];if(r instanceof v&&r._alternativeNames!==void 0&&(P===void 0&&(P=new Set),(0,d.setUnionInto)(P,r._alternativeNames)),!(r.distance>S)){if(!(r instanceof v))return(0,u.assert)(r instanceof h,"Unknown TypeNames instance"),r.add(A,y+1);r.distance<S?(E=new Set(r.names),S=r.distance,P=(0,d.definedMap)(r._alternativeNames,s=>new Set(s))):((0,u.assert)(r.distance===S,"This should be the only case left"),(0,d.setUnionInto)(E,r.names))}}return b.makeWithDistance(E,P,S)}clearInferred(){const A=this.areInferred?new Set:this.names;return b.makeWithDistance(A,new Set,this.distance)}get combinedName(){return _(this.names)}get proposedNames(){const A=new Set([this.combinedName]);return this._alternativeNames===void 0||(0,d.setUnionInto)(A,this._alternativeNames),A}makeInferred(){return b.makeWithDistance(this.names,this._alternativeNames,this.distance+1)}singularize(){return b.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=v;class h extends b{constructor(A,f){super(A),f===void 0&&(f=L()),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 S=A[E];if(S.distance<this.distance)return S.add(A,E+1)}return this}clearInferred(){return this.areInferred?b.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 m 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 m;function k(R,A){return e.namesTypeAttributeKind.modifyInAttributes(R,A)}e.modifyTypeNames=k;function B(R){return k(R,A=>{if(A!==void 0)return A.singularize()})}e.singularizeTypeNames=B;function C(R,A){let f;return typeof R=="string"?f=b.make(new Set([R]),new Set,(0,u.defined)(A)):f=R,e.namesTypeAttributeKind.makeAttributes(f)}e.makeNamesTypeAttributes=C}(bi)),bi}var Tt={},ot={},Ti={},_l={},gp;function is(){return gp||(gp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.TypeBuilder=e.getNoStringTypeMapping=e.stringTypeMappingGet=e.provenanceTypeAttributeKind=void 0;const i=et(),n=mt(),a=ni(),l=At(),d=Qe(),u=Pi();class c extends l.TypeAttributeKind{constructor(){super("provenance")}appliesToTypeKind(L){return!0}combine(L){return(0,i.setUnionManyInto)(new Set,L)}makeInferred(L){return L}stringify(L){return Array.from(L).sort().map(_=>_.toString()).join(",")}}e.provenanceTypeAttributeKind=new c;function w(M,L){const _=M.get(L);return _===void 0?"string":_}e.stringTypeMappingGet=w;let U;function F(){return U===void 0&&(U=new Map(Array.from(n.transformedStringTypeKinds).map(M=>[M,M]))),U}e.getNoStringTypeMapping=F;class O{constructor(L,_,b,v,h,m){this._stringTypeMapping=_,this.canonicalOrder=b,this._allPropertiesOptional=v,this._addProvenanceAttributes=h,this.topLevels=new Map,this.types=[],this.typeAttributes=[],this._addedForwardingIntersection=!1,this._typeForIdentity=new i.EqualityMap,(0,d.assert)(!h||!m,"We can't both inherit as well as add provenance"),this.typeGraph=new a.TypeGraph(this,L,h||m)}addTopLevel(L,_){(0,d.assert)(!this.topLevels.has(L),"Trying to add top-level with existing name"),(0,d.assert)(this.types[(0,a.typeRefIndex)(_)]!==void 0,"Trying to add a top-level type that doesn't exist (yet?)"),this.topLevels.set(L,_)}reserveTypeRef(){const L=this.types.length;this.types.push(void 0);const _=(0,a.makeTypeRef)(this.typeGraph,L),b=this._addProvenanceAttributes?e.provenanceTypeAttributeKind.makeAttributes(new Set([L])):l.emptyTypeAttributes;return this.typeAttributes.push(b),_}assertTypeRefGraph(L){L!==void 0&&(0,a.assertTypeRefGraph)(L,this.typeGraph)}assertTypeRefSetGraph(L){L!==void 0&&L.forEach(_=>this.assertTypeRefGraph(_))}filterTypeAttributes(L,_){const b=(0,i.mapFilter)(_,(v,h)=>h.appliesToTypeKind(L.kind));return _.size!==b.size&&this.setLostTypeAttributes(),b}commitType(L,_){this.assertTypeRefGraph(L);const b=(0,a.typeRefIndex)(L);(0,d.assert)(this.types[b]===void 0,"A type index was committed twice"),this.types[b]=_,this.typeAttributes[b]=this.filterTypeAttributes(_,this.typeAttributes[b])}addType(L,_,b){L!==void 0&&(this.assertTypeRefGraph(L),(0,d.assert)(this.types[(0,a.typeRefIndex)(L)]===void 0));const v=L!==void 0?L:this.reserveTypeRef();if(b!==void 0){const m=(0,a.typeRefIndex)(v);this.typeAttributes[m]=(0,l.combineTypeAttributes)("union",this.typeAttributes[m],b)}const h=_(v);return this.commitType(v,h),v}typeAtIndex(L){const _=this.types[L];return _===void 0?(0,d.panic)("Trying to deref an undefined type in a type builder"):_}atIndex(L){const _=this.typeAtIndex(L),b=this.typeAttributes[L];return[_,b]}addAttributes(L,_){this.assertTypeRefGraph(L);const b=(0,a.typeRefIndex)(L),v=this.typeAttributes[b];(0,d.assert)((0,i.iterableEvery)(_,([k,B])=>{if(!k.inIdentity)return!0;const C=v.get(k);return C===void 0?!1:(0,i.areEqual)(C,B)}),"Can't add different identity type attributes to an existing type");const h=this.types[b];h!==void 0&&(_=this.filterTypeAttributes(h,_));const m=(0,i.mapFilter)(_,(k,B)=>!B.inIdentity);this.typeAttributes[b]=(0,l.combineTypeAttributes)("union",v,m)}finish(){return this.typeGraph.freeze(this.topLevels,this.types.map(d.defined),this.typeAttributes),this.typeGraph}addForwardingIntersection(L,_){return this.assertTypeRefGraph(_),this._addedForwardingIntersection=!0,this.addType(L,b=>new n.IntersectionType(b,this.typeGraph,new Set([_])),void 0)}forwardIfNecessary(L,_){if(_!==void 0)return L===void 0?_:this.addForwardingIntersection(L,_)}get didAddForwardingIntersection(){return this._addedForwardingIntersection}registerTypeForIdentity(L,_){L!==void 0&&this._typeForIdentity.set(L,_)}makeIdentity(L){return L()}getOrAddType(L,_,b,v){const h=this.makeIdentity(L);let m;if(h===void 0?m=void 0:m=this._typeForIdentity.get(h),m!==void 0){const B=this.forwardIfNecessary(v,m);return b!==void 0&&this.addAttributes(B,(0,i.mapFilter)(b,(C,R)=>!R.inIdentity)),B}const k=this.addType(v,_,b);return this.registerTypeForIdentity(h,k),k}registerType(L){this.registerTypeForIdentity(L.identity,L.typeRef)}getPrimitiveType(L,_,b){const v=(0,i.withDefault)(_,l.emptyTypeAttributes);let h=L==="string"?void 0:u.StringTypes.unrestricted;return(0,n.isPrimitiveStringTypeKind)(L)&&L!=="string"&&(L=w(this._stringTypeMapping,L)),L==="string"?this.getStringType(v,h,b):this.getOrAddType(()=>(0,n.primitiveTypeIdentity)(L,v),m=>new n.PrimitiveType(m,this.typeGraph,L),v,b)}getStringType(L,_,b){const v=(0,i.mapFind)(L,(h,m)=>m===u.stringTypesTypeAttributeKind);return(0,d.assert)(_===void 0!=(v===void 0),"Must instantiate string type with one enum case attribute"),v===void 0&&(L=(0,l.combineTypeAttributes)("union",L,u.stringTypesTypeAttributeKind.makeAttributes((0,d.defined)(_)))),this.getOrAddType(()=>(0,n.primitiveTypeIdentity)("string",L),h=>new n.PrimitiveType(h,this.typeGraph,"string"),L,b)}getEnumType(L,_,b){return this.getOrAddType(()=>(0,n.enumTypeIdentity)(L,_),v=>new n.EnumType(v,this.typeGraph,_),L,b)}makeClassProperty(L,_){return new n.ClassProperty(L,this.typeGraph,_)}getUniqueObjectType(L,_,b,v){return this.assertTypeRefGraph(b),_=(0,i.definedMap)(_,h=>this.modifyPropertiesIfNecessary(h)),this.addType(v,h=>new n.ObjectType(h,this.typeGraph,"object",!0,_,b),L)}getUniqueMapType(L){return this.addType(L,_=>new n.MapType(_,this.typeGraph,void 0),void 0)}getMapType(L,_,b){return this.assertTypeRefGraph(_),this.getOrAddType(()=>(0,n.mapTypeIdentify)(L,_),v=>new n.MapType(v,this.typeGraph,_),L,b)}setObjectProperties(L,_,b){this.assertTypeRefGraph(b);const v=(0,a.derefTypeRef)(L,this.typeGraph);if(!(v instanceof n.ObjectType))return(0,d.panic)("Tried to set properties of non-object type");v.setProperties(this.modifyPropertiesIfNecessary(_),b),this.registerType(v)}getUniqueArrayType(L){return this.addType(L,_=>new n.ArrayType(_,this.typeGraph,void 0),void 0)}getArrayType(L,_,b){return this.assertTypeRefGraph(_),this.getOrAddType(()=>(0,n.arrayTypeIdentity)(L,_),v=>new n.ArrayType(v,this.typeGraph,_),L,b)}setArrayItems(L,_){this.assertTypeRefGraph(_);const b=(0,a.derefTypeRef)(L,this.typeGraph);if(!(b instanceof n.ArrayType))return(0,d.panic)("Tried to set items of non-array type");b.setItems(_),this.registerType(b)}modifyPropertiesIfNecessary(L){return L.forEach(_=>this.assertTypeRefGraph(_.typeRef)),this.canonicalOrder&&(L=(0,i.mapSortByKey)(L)),this._allPropertiesOptional&&(L=(0,i.mapMap)(L,_=>this.makeClassProperty(_.typeRef,!0))),L}getClassType(L,_,b){return _=this.modifyPropertiesIfNecessary(_),this.getOrAddType(()=>(0,n.classTypeIdentity)(L,_),v=>new n.ClassType(v,this.typeGraph,!1,_),L,b)}getUniqueClassType(L,_,b,v){return b=(0,i.definedMap)(b,h=>this.modifyPropertiesIfNecessary(h)),this.addType(v,h=>new n.ClassType(h,this.typeGraph,_,b),L)}getUnionType(L,_,b){return this.assertTypeRefSetGraph(_),this.getOrAddType(()=>(0,n.unionTypeIdentity)(L,_),v=>new n.UnionType(v,this.typeGraph,_),L,b)}getUniqueUnionType(L,_,b){return this.assertTypeRefSetGraph(_),this.addType(b,v=>new n.UnionType(v,this.typeGraph,_),L)}getIntersectionType(L,_,b){return this.assertTypeRefSetGraph(_),this.getOrAddType(()=>(0,n.intersectionTypeIdentity)(L,_),v=>new n.IntersectionType(v,this.typeGraph,_),L,b)}getUniqueIntersectionType(L,_,b){return this.assertTypeRefSetGraph(_),this.addType(b,v=>new n.IntersectionType(v,this.typeGraph,_),L)}setSetOperationMembers(L,_){this.assertTypeRefSetGraph(_);const b=(0,a.derefTypeRef)(L,this.typeGraph);if(!(b instanceof n.UnionType||b instanceof n.IntersectionType))return(0,d.panic)("Tried to set members of non-set-operation type");b.setMembers(_),this.registerType(b)}setLostTypeAttributes(){}}e.TypeBuilder=O}(_l)),_l}var bp;function Pi(){if(bp)return Ti;bp=1,Object.defineProperty(Ti,"__esModule",{value:!0}),Ti.inferTransformedStringTypeKindForString=Ti.stringTypesTypeAttributeKind=Ti.StringTypes=void 0;const e=et(),i=At(),n=Qe(),a=is();let l=class qi{static fromCase(v,h){return new qi(new Map([[v,h]]),new Set)}static fromCases(v){for(const h of v);return new qi(new Map(v.map(h=>[h,1])),new Set)}constructor(v,h){this.cases=v,this.transformations=h,v===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(v,h){if(this.cases===void 0)return this;const m=new Map(this.cases),k=new Set(this.transformations);for(let B=h;B<v.length;B++){const C=v[B];if(C.cases===void 0)return C;(0,e.mapMergeWithInto)(m,(R,A)=>R+A,C.cases),(0,e.setUnionInto)(k,C.transformations)}return new qi(m,k)}intersect(v,h){let m=this.cases,k=this.transformations;for(let B=h;B<v.length;B++){const C=v[B];if(m===void 0)m=(0,e.definedMap)(C.cases,R=>new Map(R));else if(C.cases!==void 0){const R=m,A=C.cases;m=(0,e.mapMap)((0,e.setIntersect)(R.keys(),new Set(A.keys())).entries(),f=>Math.min((0,n.defined)(R.get(f)),(0,n.defined)(A.get(f))))}k=(0,e.setIntersect)(k,C.transformations)}return new qi(m,k)}applyStringTypeMapping(v){if(!this.isRestricted)return this;const h=new Set;for(const m of this.transformations){const k=(0,a.stringTypeMappingGet)(v,m);if(k==="string")return qi.unrestricted;h.add(k)}return new qi(this.cases,new Set(h))}equals(v){return v instanceof qi?(0,e.areEqual)(this.cases,v.cases)&&(0,e.areEqual)(this.transformations,v.transformations):!1}hashCode(){let v=(0,e.hashCodeOf)(this.cases);return v=(0,e.addHashCode)(v,(0,e.hashCodeOf)(this.transformations)),v}toString(){const v=[],h=this.cases;if(h===void 0)v.push("unrestricted");else{const m=(0,e.iterableFirst)(h.keys());m===void 0?v.push("enum with no cases"):v.push(`${h.size.toString()} enums: ${m} (${h.get(m)}), ...`)}return v.concat(Array.from(this.transformations)).join(",")}};Ti.StringTypes=l,l.unrestricted=new l(void 0,new Set);class d extends i.TypeAttributeKind{constructor(){super("stringTypes")}get inIdentity(){return!0}requiresUniqueIdentity(v){return v.cases!==void 0&&v.cases.size>0}combine(v){return(0,n.assert)(v.length>0),v[0].union(v,1)}intersect(v){return(0,n.assert)(v.length>0),v[0].intersect(v,1)}makeInferred(v){}stringify(v){return v.toString()}}Ti.stringTypesTypeAttributeKind=new d;const u=/^(0|-?[1-9]\d*)$/,c=1<<31,w=2147483647;function U(b){if(b.match(u)===null)return!1;const v=parseInt(b,10);return v>=c&&v<=w}const F=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function O(b){return b.match(F)!==null}const M=/^(https?|ftp):\/\/[^{}]+$/;function L(b){return b.match(M)!==null}function _(b,v){if(!(b.length===0||"0123456789-abcdefth".indexOf(b[0])<0)){if(v.isDate(b))return"date";if(v.isTime(b))return"time";if(v.isDateTime(b))return"date-time";if(U(b))return"integer-string";if(b==="false"||b==="true")return"bool-string";if(O(b))return"uuid";if(L(b))return"uri"}}return Ti.inferTransformedStringTypeKindForString=_,Ti}var Tp;function pt(){if(Tp)return ot;Tp=1,Object.defineProperty(ot,"__esModule",{value:!0}),ot.matchCompoundType=ot.matchType=ot.matchTypeExhaustive=ot.stringTypesForType=ot.directlyReachableSingleNamedType=ot.directlyReachableTypes=ot.separateNamedTypes=ot.isNamedType=ot.getNullAsOptional=ot.nonNullTypeCases=ot.nullableFromUnion=ot.removeNullFromType=ot.removeNullFromUnion=ot.isAnyOrNull=ot.combineTypeAttributesOfTypes=ot.makeGroupsToFlatten=ot.setOperationMembersRecursively=ot.assertIsClass=ot.assertIsObject=void 0;const e=et(),i=Qe(),n=At(),a=mt(),l=Pi();function d(f){return f instanceof a.ObjectType?f:(0,i.panic)("Supposed object type is not an object type")}ot.assertIsObject=d;function u(f){return f instanceof a.ClassType?f:(0,i.panic)("Supposed class type is not a class type")}ot.assertIsClass=u;function c(f,E){const S=Array.isArray(f)?f:[f],P=S[0].kind,y=P!=="intersection",r=new Set,s=new Set;let p=n.emptyTypeAttributes;function g(I){if(I.kind===P){const x=I;if(r.has(x))return;r.add(x),E!==void 0&&(p=(0,n.combineTypeAttributes)(E,p,I.getAttributes()));for(const q of x.members)g(q)}else y||I.kind!=="any"?s.add(I):E!==void 0&&(p=(0,n.combineTypeAttributes)(E,p,I.getAttributes()))}for(const I of S)g(I);return[s,p]}ot.setOperationMembersRecursively=c;function w(f,E){const S=new e.EqualityMap;for(const P of f){const y=new Set(c(P,void 0)[0]);if(E!==void 0&&!E(y))continue;let r=S.get(y);r===void 0&&(r=new Set,y.size===1&&r.add((0,i.defined)((0,e.iterableFirst)(y)))),r.add(P),S.set(y,r)}return Array.from(S.values()).map(P=>Array.from(P))}ot.makeGroupsToFlatten=w;function U(f,E){return(0,n.combineTypeAttributes)(f,Array.from(E).map(S=>S.getAttributes()))}ot.combineTypeAttributesOfTypes=U;function F(f){return f.kind==="any"||f.kind==="null"}ot.isAnyOrNull=F;function O(f,E=!1){function S(y){return E===!1?y:E===!0?(0,e.setSortBy)(y,r=>r.kind):(0,e.setSortBy)(y,E)}const P=f.findMember("null");return P===void 0?[null,S(f.members)]:[P,S((0,e.setFilter)(f.members,y=>y.kind!=="null"))]}ot.removeNullFromUnion=O;function M(f){return f.kind==="null"?[f,new Set]:f instanceof a.UnionType?O(f):[null,new Set([f])]}ot.removeNullFromType=M;function L(f){const[E,S]=O(f);return E===null||S.size!==1?null:(0,i.defined)((0,e.iterableFirst)(S))}ot.nullableFromUnion=L;function _(f){return M(f)[1]}ot.nonNullTypeCases=_;function b(f){const[E,S]=M(f.type);return f.isOptional?[!0,S]:[E!==null,S]}ot.getNullAsOptional=b;function v(f){return["class","union","enum","object"].indexOf(f.kind)>=0}ot.isNamedType=v;function h(f){const E=(0,e.setFilter)(f,y=>y.kind==="object"||y.kind==="class"),S=(0,e.setFilter)(f,y=>y instanceof a.EnumType),P=(0,e.setFilter)(f,y=>y instanceof a.UnionType);return{objects:E,enums:S,unions:P}}ot.separateNamedTypes=h;function m(f,E){const S=E(f);return S!==null?S:(0,e.setUnion)(...Array.from(f.getNonAttributeChildren()).map(P=>m(P,E)))}ot.directlyReachableTypes=m;function k(f){const E=m(f,S=>!(S instanceof a.UnionType)&&v(S)||S instanceof a.UnionType&&L(S)===null?new Set([S]):null);return(0,i.assert)(E.size<=1,"Cannot have more than one defined type per top-level"),(0,e.iterableFirst)(E)}ot.directlyReachableSingleNamedType=k;function B(f){(0,i.assert)(f.kind==="string","Only strings can have string types");const E=l.stringTypesTypeAttributeKind.tryGetInAttributes(f.getAttributes());return E===void 0?(0,i.panic)("All strings must have a string type attribute"):E}ot.stringTypesForType=B;function C(f,E,S,P,y,r,s,p,g,I,x,q,T,D,W){if(f.isPrimitive()){if((0,a.isPrimitiveStringTypeKind)(f.kind))return f.kind==="string"?p(f):W(f);const J=f.kind,X={none:E,any:S,null:P,bool:y,integer:r,double:s}[J];return X!==void 0?X(f):(0,i.assertNever)(X)}else{if(f instanceof a.ArrayType)return g(f);if(f instanceof a.ClassType)return I(f);if(f instanceof a.MapType)return x(f);if(f instanceof a.ObjectType)return q(f);if(f instanceof a.EnumType)return T(f);if(f instanceof a.UnionType)return D(f)}return(0,i.panic)(`Unknown type ${f.kind}`)}ot.matchTypeExhaustive=C;function R(f,E,S,P,y,r,s,p,g,I,x,q,T){function D(W){return(0,i.panic)(`Unsupported type ${W.kind} in non-exhaustive match`)}return C(f,D,E,S,P,y,r,s,p,g,I,D,x,q,T||D)}ot.matchType=R;function A(f,E,S,P,y,r){function s(p){}return C(f,s,s,s,s,s,s,s,E,S,P,y,s,r,s)}return ot.matchCompoundType=A,ot}var Zn={},vp;function x_(){if(vp)return Zn;vp=1,Object.defineProperty(Zn,"__esModule",{value:!0}),Zn.GraphRewriteBuilder=Zn.GraphRemapBuilder=Zn.BaseGraphRewriteBuilder=Zn.TypeReconstituter=void 0;const e=et(),i=pt(),n=ni(),a=At(),l=Qe(),d=is();class u{constructor(O,M,L,_,b){this._typeBuilder=O,this._makeClassUnique=M,this._typeAttributes=L,this._forwardingRef=_,this._register=b,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 M=Array.from(O).map(L=>this._typeBuilder.lookupTypeRefs([L],void 0,!1));return M.some(L=>L===void 0)?void 0:M}}lookupMap(O){const M=this.lookup(O.values());if(M===void 0)return;(0,l.assert)(M.length===O.size,"Didn't get back the correct number of types");const L=new Map;let _=0;for(const b of O.keys())L.set(b,M[_]),_+=1;return L}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(M=>this._typeBuilder.reconstituteTypeRef(M))}reconstituteMap(O){return(0,e.mapMap)(O,M=>this._typeBuilder.reconstituteTypeRef(M))}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,M){return this._typeBuilder.makeClassProperty(O,M)}getObjectType(O,M){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,O,M,this._forwardingRef))}getUniqueObjectType(O,M){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,O,M,this._forwardingRef))}getClassType(O){if(this._makeClassUnique){this.getUniqueClassType(!1,O);return}this.register(this.builderForNewType().getClassType(this._typeAttributes,O,this._forwardingRef))}getUniqueClassType(O,M){this.register(this.builderForNewType().getUniqueClassType(this._typeAttributes,O,M,this._forwardingRef))}setObjectProperties(O,M){this.builderForSetting().setObjectProperties(this.getResult(),O,M)}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)}}Zn.TypeReconstituter=u;class c extends d.TypeBuilder{constructor(O,M,L,_,b){super(O.serial+1,M,L,!1,!1,_),this.originalGraph=O,this.debugPrint=b,this.reconstitutedTypes=new Map,this._lostTypeAttributes=!1,this._printIndent=0}withForwardingRef(O,M){if(O!==void 0)return M(O);const L=this.reserveTypeRef(),_=M(L);return(0,l.assert)(_===L,"Type creator didn't return its forwarding ref"),_}reconstituteType(O,M,L){return this.reconstituteTypeRef(O.typeRef,M,L)}reconstituteTypeRef(O,M,L){const _=this.lookupTypeRefs([O],L);return _!==void 0?(M!==void 0&&this.addAttributes(_,M),_):this.forceReconstituteTypeRef(O,M,L)}reconstituteTypeAttributes(O){return(0,e.mapMap)(O,(M,L)=>L.reconstitute(this,M))}assertTypeRefsToReconstitute(O,M){(0,l.assert)(O.length>0,"Must have at least one type to reconstitute");for(const L of O)(0,n.assertTypeRefGraph)(L,this.originalGraph);M!==void 0&&(0,n.assertTypeRefGraph)(M,this.typeGraph)}changeDebugPrintIndent(O){this._printIndent+=O}get debugPrintIndentation(){return(0,l.indentationString)(this._printIndent)}finish(){for(const[O,M]of this.originalGraph.topLevels)this.addTopLevel(O,this.reconstituteType(M));return super.finish()}setLostTypeAttributes(){this._lostTypeAttributes=!0}get lostTypeAttributes(){return this._lostTypeAttributes}}Zn.BaseGraphRewriteBuilder=c;class w extends c{constructor(O,M,L,_,b,v){super(O,M,L,_,v),this._map=b,this._attributeSources=new Map;for(const[h,m]of b){let k=this._attributeSources.get(m);k===void 0&&(k=[m],this._attributeSources.set(m,k)),k.push(h)}}makeIdentity(O){}getMapTarget(O){const M=this._map.get((0,n.derefTypeRef)(O,this.originalGraph));return M===void 0?O:((0,l.assert)(this._map.get(M)===void 0,"We have a type that's remapped to a remapped type"),M.typeRef)}addForwardingIntersection(O,M){return(0,l.panic)("We can't add forwarding intersections when we're removing forwarding intersections")}lookupTypeRefs(O,M){(0,l.assert)(M===void 0,"We can't have a forwarding ref when we remap"),this.assertTypeRefsToReconstitute(O,M);const L=this.reconstitutedTypes.get((0,n.typeRefIndex)(this.getMapTarget(O[0])));if(L!==void 0){for(let _=1;_<O.length;_++){const b=this.reconstitutedTypes.get((0,n.typeRefIndex)(this.getMapTarget(O[_])));if(L!==b)return}return L}}forceReconstituteTypeRef(O,M,L){O=this.getMapTarget(O);const _=(0,n.typeRefIndex)(O);return(0,l.assert)(this.reconstitutedTypes.get(_)===void 0,"Type has already been reconstituted"),(0,l.assert)(L===void 0,"We can't have a forwarding ref when we remap"),this.withForwardingRef(void 0,b=>{this.reconstitutedTypes.set(_,b),this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${_} as ${(0,n.typeRefIndex)(b)}`),this.changeDebugPrintIndent(1));const[v,h]=(0,n.typeAndAttributesForTypeRef)(O,this.originalGraph),m=this._attributeSources.get(v);M===void 0&&(M=a.emptyTypeAttributes),m===void 0?M=(0,a.combineTypeAttributes)("union",M,this.reconstituteTypeAttributes(h)):M=(0,a.combineTypeAttributes)("union",M,this.reconstituteTypeAttributes((0,i.combineTypeAttributesOfTypes)("union",m)));const k=M,B=new u(this,this.canonicalOrder,k,b,C=>{(0,l.assert)(C===b,"Reconstituted type as a different ref"),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${_} as ${(0,n.typeRefIndex)(C)}`))});return v.reconstitute(B,this.canonicalOrder),B.getResult()})}}Zn.GraphRemapBuilder=w;class U extends c{constructor(O,M,L,_,b,v,h){super(O,M,L,_,v),this._replacer=h,this._reconstitutedUnions=new e.EqualityMap,this._setsToReplaceByMember=new Map;for(const m of b){const k=new Set(m);for(const B of k){const C=B.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,M){const L=new Set(O);(0,l.assert)(!this._reconstitutedUnions.has(L),"Cannot register reconstituted set twice"),this._reconstitutedUnions.set(L,M)}replaceSet(O,M){return this.withForwardingRef(M,L=>{this.debugPrint&&(console.log(`${this.debugPrintIndentation}replacing set ${Array.from(O).map(b=>b.index.toString()).join(",")} as ${(0,n.typeRefIndex)(L)}`),this.changeDebugPrintIndent(1));for(const b of O){const v=b.typeRef,h=(0,n.typeRefIndex)(v);this.reconstitutedTypes.set(h,L),this._setsToReplaceByMember.delete(h)}const _=this._replacer(O,this,L);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(b=>b.index.toString()).join(",")} as ${(0,n.typeRefIndex)(L)}`)),_})}forceReconstituteTypeRef(O,M,L){const[_,b]=(0,n.typeAndAttributesForTypeRef)(O,this.originalGraph),v=(0,n.typeRefIndex)(O);this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${v}`),this.changeDebugPrintIndent(1)),M===void 0?M=this.reconstituteTypeAttributes(b):M=(0,a.combineTypeAttributes)("union",M,this.reconstituteTypeAttributes(b));const h=new u(this,this.canonicalOrder,M,L,m=>{this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${v} as ${(0,n.typeRefIndex)(m)}`)),L!==void 0&&(0,l.assert)(m===L,"We didn't pass the forwarding ref");const k=this.reconstitutedTypes.get(v);k===void 0?this.reconstitutedTypes.set(v,m):(0,l.assert)(m===k,"We reconstituted a type twice differently")});return _.reconstitute(h,this.canonicalOrder),h.getResult()}lookupTypeRefs(O,M,L=!0){this.assertTypeRefsToReconstitute(O,M);let _=this.reconstitutedTypes.get((0,n.typeRefIndex)(O[0]));if(_!==void 0&&_!==M){let v=!0;for(let h=1;h<O.length;h++)if(this.reconstitutedTypes.get((0,n.typeRefIndex)(O[h]))!==_){v=!1;break}if(v)return this.forwardIfNecessary(M,_)}if(_=this._reconstitutedUnions.get(new Set(O)),_!==void 0&&_!==M)return this.forwardIfNecessary(M,_);const b=this._setsToReplaceByMember.get((0,n.typeRefIndex)(O[0]));if(b!==void 0){for(let v=1;v<O.length;v++)if(this._setsToReplaceByMember.get((0,n.typeRefIndex)(O[v]))!==b)return;if(L)return this.replaceSet(b,M)}}}return Zn.GraphRewriteBuilder=U,Zn}var Ns={},Sp;function wg(){if(Sp)return Ns;Sp=1,Object.defineProperty(Ns,"__esModule",{value:!0}),Ns.Graph=void 0;const e=et(),i=Qe();function n(F){if(F.length===0)return 0;let O=-1,M=0;for(const L of F){(0,i.assert)(L.length>0,"Empty component not allowed");for(const _ of L)(0,i.assert)(_>=0,"Negative vertex index is invalid"),O=Math.max(O,_),M+=1}return(0,i.assert)(O+1===M,"Vertex indexes and count don't match up"),M}function a(F){let O=0;const M=[],L=F.length,_=(0,i.repeated)(L,-1),b=(0,i.repeated)(L,-1),v=(0,i.repeated)(L,!1),h=[];function m(k){_[k]=O,b[k]=O,O+=1,M.push(k),v[k]=!0;for(const B of F[k])_[B]<0?(m(B),b[k]=Math.min(b[k],b[B])):v[B]&&(b[k]=Math.min(b[k],_[B]));if(b[k]===_[k]){const B=[];let C;do C=(0,i.defined)(M.pop()),v[C]=!1,B.push(C);while(C!==k);h.push(B)}}for(let k=0;k<L;k++)_[k]<0&&m(k);return(0,i.assert)(n(h)===L,"We didn't put all the nodes into SCCs"),h}function l(F,O){const M=O.length,L=F.length;(0,i.assert)(L===n(O),"Components don't match up with graph");const _=(0,i.repeated)(L,-1);for(let b=0;b<M;b++)for(const v of O[b])(0,i.assert)(_[v]<0,"We have a node that's in two components"),_[v]=b;return _}function d(F,O){const M=O.length,L=l(F,O),_=(0,i.repeated)(M,!1),b=[];for(let v=0;v<M;v++){const h=[];for(const m of O[v])for(const k of F[m]){const B=L[k];B===v||_[B]||(h.push(B),_[B]=!0)}for(const m of h)(0,i.assert)(_[m]),_[m]=!1;b.push(h)}return b}function u(F){const O=F.length,M=(0,i.repeatedCall)(O,()=>[]);for(let L=0;L<O;L++)for(const _ of F[L])M[_].push(L);return M}function c(F){const O=F.length,M=(0,i.repeated)(O,0);for(const L of F)for(const _ of L)M[_]+=1;return M}function w(F){const O=F.length,M=c(F),L=[];for(let _=0;_<O;_++)M[_]===0&&L.push(_);return L}let U=class Sg{constructor(O,M,L){this._nodes=Array.from(O),this._indexByNode=new Map(this._nodes.map((b,v)=>[b,v]));let _;Array.isArray(L)?_=L:_=this._nodes.map(b=>Array.from(L(b)).map(v=>(0,i.defined)(this._indexByNode.get(v)))),M&&(_=u(_)),this._successors=_}get size(){return this._nodes.length}get nodes(){return this._nodes}findRoots(){const O=w(this._successors);return new Set(O.map(M=>this._nodes[M]))}dfsTraversal(O,M,L){const _=(0,i.repeated)(this.size,!1),b=v=>{if(!_[v]){_[v]=!0,M&&L(this._nodes[v]);for(const h of this._successors[v])b(h);M||L(this._nodes[v])}};b((0,i.defined)(this._indexByNode.get(O)))}stronglyConnectedComponents(){const O=a(this._successors),M=d(this._successors,O);return new Sg(O.map(L=>(0,e.setMap)(L,_=>this._nodes[_])),!1,M)}makeDot(O,M){const L=[];L.push("digraph G {"),L.push(" ordering = out;"),L.push("");for(let _=0;_<this.size;_++){const b=this._nodes[_];O(b)&&L.push(` node${_} [label="${M(b)}"];`)}for(let _=0;_<this.size;_++)if(O(this._nodes[_]))for(const b of this._successors[_])O(this._nodes[b])&&L.push(` node${_} -> node${b};`);return L.push("}"),L.push(""),L.join(`
|
|
140
|
+
`)}};return Ns.Graph=U,Ns}var wp;function ni(){if(wp)return Tt;wp=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(),i=mt(),n=pt(),a=Qe(),l=is(),d=x_(),u=Hi(),c=wg(),w=At(),U=yn(),F=26,O=(1<<F)-1,L=(1<<31-F)-1;function _(y){return typeof y=="number"}Tt.isTypeRef=_;function b(y,r){return(0,a.assert)(r<=O,"Too many types in graph"),(y.serial&L)<<F|r}Tt.makeTypeRef=b;function v(y){return y&O}Tt.typeRefIndex=v;function h(y,r){(0,a.assert)((y>>F&L)===(r.serial&L),"Mixing the wrong type reference and graph")}Tt.assertTypeRefGraph=h;function m(y){return y instanceof f?y:y.originalGraph}function k(y,r){const s=m(r);return h(y,s),s.typeAtIndex(v(y))}Tt.derefTypeRef=k;function B(y,r){const s=m(r);return h(y,s),s.atIndex(v(y))[1]}Tt.attributesForTypeRef=B;function C(y,r){const s=m(r);return h(y,s),s.atIndex(v(y))}Tt.typeAndAttributesForTypeRef=C;class R{constructor(r,s){this._typeGraph=r,this._values=s,this._topLevelValues=new Map}getTypeIndex(r){const s=r.typeRef;return h(s,this._typeGraph),v(s)}attributesForType(r){const s=this.getTypeIndex(r),p=this._values[s];return p!==void 0?p:w.emptyTypeAttributes}attributesForTopLevel(r){const s=this._topLevelValues.get(r);return s!==void 0?s:w.emptyTypeAttributes}setInMap(r,s,p){return new Map(r).set(s,p)}set(r,s,p){const g=this.getTypeIndex(s);for(;g>=this._values.length;)this._values.push(void 0);this._values[g]=this.setInMap(this.attributesForType(s),r,p)}setForTopLevel(r,s,p){this._topLevelValues.set(s,this.setInMap(this.attributesForTopLevel(s),r,p))}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=R;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,p){this.serial=s,this._haveProvenanceAttributes=p,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,p){(0,a.assert)(!this.isFrozen,"Tried to freeze TypeGraph a second time");for(const g of s)h(g.typeRef,this);this._attributeStore=new R(this,p),this._types=s,this._typeBuilder=void 0,this._topLevels=(0,e.mapMap)(r,g=>k(g,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 p=[];function g(I){if(s.has(I))return;s.add(I),(r===void 0||r(I))&&p.push(I);for(const q of I.getChildren())g(q)}for(const[,I]of this.topLevels)g(I);return new Set(p)}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(g=>{const I=r.tryGet(g);return I!==void 0?I:new Set}),p=new Set;return(0,e.setUnionManyInto)(p,s),p}setPrintOnRewrite(){this._printOnRewrite=!0}checkLostTypeAttributes(r,s){if(!this._haveProvenanceAttributes||r.lostTypeAttributes)return;const p=this.allProvenance(),g=s.allProvenance();if(p.size!==g.size){const I=(0,e.setSubtract)(p,g),x=Array.from(I);return(0,U.messageError)("IRTypeAttributesNotPropagated",{count:I.size,indexes:x})}}printRewrite(r){this._printOnRewrite&&console.log(`
|
|
141
|
+
# ${r}`)}rewrite(r,s,p,g,I,x,q=!1){if(this.printRewrite(r),!q&&g.length===0)return this;const T=new d.GraphRewriteBuilder(this,s,p,this._haveProvenanceAttributes,g,I,x),D=T.finish();return this.checkLostTypeAttributes(T,D),this._printOnRewrite&&(D.setPrintOnRewrite(),D.printGraph()),T.didAddForwardingIntersection?P(D,s,I):D}remap(r,s,p,g,I,x=!1){if(this.printRewrite(r),!x&&g.size===0)return this;const q=new d.GraphRemapBuilder(this,s,p,this._haveProvenanceAttributes,g,I),T=q.finish();return this.checkLostTypeAttributes(q,T),this._printOnRewrite&&(T.setPrintOnRewrite(),T.printGraph()),(0,a.assert)(!q.didAddForwardingIntersection),T}garbageCollect(r,s){return this.remap("GC",(0,l.getNoStringTypeMapping)(),r,new Map,s,!0)}rewriteFixedPoint(r,s){let p=this;for(;;){const g=this.rewrite("fixed-point",(0,l.getNoStringTypeMapping)(),r,[],s,a.mustNotHappen,!0);if(p.allTypesUnordered().size===g.allTypesUnordered().size)return p;p=g}}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(p=>new Set);for(const p of this.allTypesUnordered())for(const g of p.getChildren()){const I=g.index;s[I]=s[I].add(p)}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 p=r[s],g=[];g.push(`${p.debugPrintKind}${p.hasNames?` ${p.getCombinedName()}`:""}`);const I=p.getChildren();I.size>0&&g.push(`children ${Array.from(I).map(x=>x.index).join(",")}`);for(const[x,q]of p.getAttributes()){const T=x.stringify(q);T!==void 0&&g.push(T)}console.log(`${s}: ${g.join(" | ")}`)}}};Tt.TypeGraph=f;function E(y,r,s){const p=(0,e.setFilter)(y.allTypesUnordered(),g=>g.kind==="none");return p.size===0?y:((0,a.assert)(p.size===1,"Cannot have more than one none type"),y.rewrite("none to any",r,!1,[Array.from(p)],s,(g,I,x)=>{const q=(0,n.combineTypeAttributesOfTypes)("union",g);return I.getPrimitiveType("any",q,x)}))}Tt.noneToAny=E;function S(y,r,s){function p(x,q,T){const D=(0,e.mapMap)(x.getProperties(),(W,J)=>{const X=W.type;let Q;if(!W.isOptional||X.isNullable)Q=q.reconstituteType(X);else{const re=q.getPrimitiveType("null");let se;X instanceof i.UnionType?se=(0,e.setMap)(X.members,me=>q.reconstituteType(me)).add(re):se=new Set([q.reconstituteType(X),re]);const ne=u.namesTypeAttributeKind.setDefaultInAttributes(X.getAttributes(),()=>u.TypeNames.make(new Set([J]),new Set,!0));Q=q.getUnionType(ne,se)}return q.makeClassProperty(Q,W.isOptional)});return x.isFixed?q.getUniqueClassType(x.getAttributes(),!0,D,T):q.getClassType(x.getAttributes(),D,T)}const g=(0,e.setFilter)(y.allTypesUnordered(),x=>x instanceof i.ClassType&&(0,e.mapSome)(x.getProperties(),q=>q.isOptional)),I=Array.from(g).map(x=>[x]);return g.size===0?y:y.rewrite("optional to nullable",r,!1,I,s,(x,q,T)=>{(0,a.assert)(x.size===1);const D=(0,a.defined)((0,e.iterableFirst)(x));return p(D,q,T)})}Tt.optionalToNullable=S;function P(y,r,s){const p=[];for(const g of y.allTypesUnordered()){if(!(g instanceof i.IntersectionType))continue;const I=new Set([g]);let x=g;for(;x.members.size===1;){const q=(0,a.defined)((0,e.iterableFirst)(x.members));if(!(q instanceof i.IntersectionType)){p.push([g,q]);break}if(I.has(q))return(0,a.panic)("There's a cycle of intersection types");I.add(q),x=q}}return y.remap("remove indirection intersections",r,!1,new Map(p),s)}return Tt.removeIndirectionIntersections=P,Tt}var Os={},ma={exports:{}},Ks={exports:{}};/*! https://mths.be/punycode v1.4.0 by @mathias */var z_=Ks.exports,Lp;function W_(){return Lp||(Lp=1,function(e,i){(function(n){var a=i&&!i.nodeType&&i,l=e&&!e.nodeType&&e,d=typeof Dn=="object"&&Dn;(d.global===d||d.window===d||d.self===d)&&(n=d);var u,c=2147483647,w=36,U=1,F=26,O=38,M=700,L=72,_=128,b="-",v=/^xn--/,h=/[^\x20-\x7E]/,m=/[\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"},B=w-U,C=Math.floor,R=String.fromCharCode,A;function f(T){throw new RangeError(k[T])}function E(T,D){for(var W=T.length,J=[];W--;)J[W]=D(T[W]);return J}function S(T,D){var W=T.split("@"),J="";W.length>1&&(J=W[0]+"@",T=W[1]),T=T.replace(m,".");var X=T.split("."),Q=E(X,D).join(".");return J+Q}function P(T){for(var D=[],W=0,J=T.length,X,Q;W<J;)X=T.charCodeAt(W++),X>=55296&&X<=56319&&W<J?(Q=T.charCodeAt(W++),(Q&64512)==56320?D.push(((X&1023)<<10)+(Q&1023)+65536):(D.push(X),W--)):D.push(X);return D}function y(T){return E(T,function(D){var W="";return D>65535&&(D-=65536,W+=R(D>>>10&1023|55296),D=56320|D&1023),W+=R(D),W}).join("")}function r(T){return T-48<10?T-22:T-65<26?T-65:T-97<26?T-97:w}function s(T,D){return T+22+75*(T<26)-((D!=0)<<5)}function p(T,D,W){var J=0;for(T=W?C(T/M):T>>1,T+=C(T/D);T>B*F>>1;J+=w)T=C(T/B);return C(J+(B+1)*T/(T+O))}function g(T){var D=[],W=T.length,J,X=0,Q=_,re=L,se,ne,me,ge,Ae,pe,le,ye,de;for(se=T.lastIndexOf(b),se<0&&(se=0),ne=0;ne<se;++ne)T.charCodeAt(ne)>=128&&f("not-basic"),D.push(T.charCodeAt(ne));for(me=se>0?se+1:0;me<W;){for(ge=X,Ae=1,pe=w;me>=W&&f("invalid-input"),le=r(T.charCodeAt(me++)),(le>=w||le>C((c-X)/Ae))&&f("overflow"),X+=le*Ae,ye=pe<=re?U:pe>=re+F?F:pe-re,!(le<ye);pe+=w)de=w-ye,Ae>C(c/de)&&f("overflow"),Ae*=de;J=D.length+1,re=p(X-ge,J,ge==0),C(X/J)>c-Q&&f("overflow"),Q+=C(X/J),X%=J,D.splice(X++,0,Q)}return y(D)}function I(T){var D,W,J,X,Q,re,se,ne,me,ge,Ae,pe=[],le,ye,de,Y;for(T=P(T),le=T.length,D=_,W=0,Q=L,re=0;re<le;++re)Ae=T[re],Ae<128&&pe.push(R(Ae));for(J=X=pe.length,X&&pe.push(b);J<le;){for(se=c,re=0;re<le;++re)Ae=T[re],Ae>=D&&Ae<se&&(se=Ae);for(ye=J+1,se-D>C((c-W)/ye)&&f("overflow"),W+=(se-D)*ye,D=se,re=0;re<le;++re)if(Ae=T[re],Ae<D&&++W>c&&f("overflow"),Ae==D){for(ne=W,me=w;ge=me<=Q?U:me>=Q+F?F:me-Q,!(ne<ge);me+=w)Y=ne-ge,de=w-ge,pe.push(R(s(ge+Y%de,0))),ne=C(Y/de);pe.push(R(s(ne,0))),Q=p(W,ye,J==X),W=0,++J}++W,++D}return pe.join("")}function x(T){return S(T,function(D){return v.test(D)?g(D.slice(4).toLowerCase()):D})}function q(T){return S(T,function(D){return h.test(D)?"xn--"+I(D):D})}if(u={version:"1.3.2",ucs2:{decode:P,encode:y},decode:g,encode:I,toASCII:q,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})(z_)}(Ks,Ks.exports)),Ks.exports}var ya={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 q_=ya.exports,_p;function J_(){return _p||(_p=1,function(e){(function(i,n){e.exports?e.exports=n():i.IPv6=n(i)})(q_,function(i){var n=i&&i.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 F;for(F=0;F<w&&c[F]!=="";F++);if(F<U)for(c.splice(F,1,"0000");c.length<U;)c.splice(F,0,"0000");for(var O,M=0;M<U;M++){O=c[M].split("");for(var L=0;L<3&&(O[0]==="0"&&O.length>1);L++)O.splice(0,1);c[M]=O.join("")}var _=-1,b=0,v=0,h=-1,m=!1;for(M=0;M<U;M++)m?c[M]==="0"?v+=1:(m=!1,v>b&&(_=h,b=v)):c[M]==="0"&&(m=!0,h=M,v=1);v>b&&(_=h,b=v),b>1&&c.splice(_,b,""),w=c.length;var k="";for(c[0]===""&&(k=":"),M=0;M<w&&(k+=c[M],M!==w-1);M++)k+=":";return c[w-1]===""&&(k+=":"),k}function l(){return i.IPv6===this&&(i.IPv6=n),this}return{best:a,noConflict:l}})}(ya)),ya.exports}var ga={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 G_=ga.exports,kp;function H_(){return kp||(kp=1,function(e){(function(i,n){e.exports?e.exports=n():i.SecondLevelDomains=n(i)})(G_,function(i){var n=i&&i.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 i.SecondLevelDomains===this&&(i.SecondLevelDomains=n),this}};return a})}(ga)),ga.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 K_=ma.exports,Np;function Lg(){return Np||(Np=1,function(e){(function(i,n){e.exports?e.exports=n(W_(),J_(),H_()):i.URI=n(i.punycode,i.IPv6,i.SecondLevelDomains,i)})(K_,function(i,n,a,l){var d=l&&l.URI;function u(r,s){var p=arguments.length>=1,g=arguments.length>=2;if(!(this instanceof u))return p?g?new u(r,s):new u(r):new u;if(r===void 0){if(p)throw new TypeError("undefined is not a valid argument for URI");typeof location<"u"?r=location.href+"":r=""}if(r===null&&p)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 F(r){return r.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}function O(r){return r===void 0?"Undefined":String(Object.prototype.toString.call(r)).slice(8,-1)}function M(r){return O(r)==="Array"}function L(r,s){var p={},g,I;if(O(s)==="RegExp")p=null;else if(M(s))for(g=0,I=s.length;g<I;g++)p[s[g]]=!0;else p[s]=!0;for(g=0,I=r.length;g<I;g++){var x=p&&p[r[g]]!==void 0||!p&&s.test(r[g]);x&&(r.splice(g,1),I--,g--)}return r}function _(r,s){var p,g;if(M(s)){for(p=0,g=s.length;p<g;p++)if(!_(r,s[p]))return!1;return!0}var I=O(s);for(p=0,g=r.length;p<g;p++)if(I==="RegExp"){if(typeof r[p]=="string"&&r[p].match(s))return!0}else if(r[p]===s)return!0;return!1}function b(r,s){if(!M(r)||!M(s)||r.length!==s.length)return!1;r.sort(),s.sort();for(var p=0,g=r.length;p<g;p++)if(r[p]!==s[p])return!1;return!0}function v(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 m(r){return encodeURIComponent(r).replace(/[!'()*]/g,h).replace(/\*/g,"%2A")}u.encode=m,u.decode=decodeURIComponent,u.iso8859=function(){u.encode=escape,u.decode=unescape},u.unicode=function(){u.encode=m,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 p=u.encode(r+"");return s===void 0&&(s=u.escapeQuerySpace),s?p.replace(/%20/g,"+"):p},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"},B,C=function(r,s){return function(p){try{return u[s](p+"").replace(u.characters[r][s].expression,function(g){return u.characters[r][s].map[g]})}catch{return p}}};for(B in k)u[B+"PathSegment"]=C("pathname",k[B]),u[B+"UrnPathSegment"]=C("urnpath",k[B]);var R=function(r,s,p){return function(g){var I;p?I=function(D){return u[s](u[p](D))}:I=u[s];for(var x=(g+"").split(r),q=0,T=x.length;q<T;q++)x[q]=I(x[q]);return x.join(r)}};u.decodePath=R("/","decodePathSegment"),u.decodeUrnPath=R(":","decodeUrnPathSegment"),u.recodePath=R("/","encodePathSegment","decode"),u.recodeUrnPath=R(":","encodeUrnPathSegment","decode"),u.encodeReserved=C("reserved","encode"),u.parse=function(r,s){var p;return s||(s={preventInvalidHostname:u.preventInvalidHostname}),r=r.replace(u.leading_whitespace_expression,""),r=r.replace(u.ascii_tab_whitespace,""),p=r.indexOf("#"),p>-1&&(s.fragment=r.substring(p+1)||null,r=r.substring(0,p)),p=r.indexOf("?"),p>-1&&(s.query=r.substring(p+1)||null,r=r.substring(0,p)),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)):(p=r.indexOf(":"),p>-1&&(s.protocol=r.substring(0,p)||null,s.protocol&&!s.protocol.match(u.protocol_expression)?s.protocol=void 0:r.substring(p+1,p+3).replace(/\\/g,"/")==="//"?(r=r.substring(p+3),r=u.parseAuthority(r,s)):(r=r.substring(p+1),s.urn=!0))),s.path=r,s},u.parseHost=function(r,s){r||(r=""),r=r.replace(/\\/g,"/");var p=r.indexOf("/"),g,I;if(p===-1&&(p=r.length),r.charAt(0)==="[")g=r.indexOf("]"),s.hostname=r.substring(1,g)||null,s.port=r.substring(g+2,p)||null,s.port==="/"&&(s.port=null);else{var x=r.indexOf(":"),q=r.indexOf("/"),T=r.indexOf(":",x+1);T!==-1&&(q===-1||T<q)?(s.hostname=r.substring(0,p)||null,s.port=null):(I=r.substring(0,p).split(":"),s.hostname=I[0]||null,s.port=I[1]||null)}return s.hostname&&r.substring(p).charAt(0)!=="/"&&(p++,r="/"+r),s.preventInvalidHostname&&u.ensureValidHostname(s.hostname,s.protocol),s.port&&u.ensureValidPort(s.port),r.substring(p)||"/"},u.parseAuthority=function(r,s){return r=u.parseUserinfo(r,s),u.parseHost(r,s)},u.parseUserinfo=function(r,s){var p=r,g=r.indexOf("\\");g!==-1&&(r=r.replace(/\\/g,"/"));var I=r.indexOf("/"),x=r.lastIndexOf("@",I>-1?I:r.length-1),q;return x>-1&&(I===-1||x<I)?(q=r.substring(0,x).split(":"),s.username=q[0]?u.decode(q[0]):null,q.shift(),s.password=q[0]?u.decode(q.join(":")):null,r=p.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 p={},g=r.split("&"),I=g.length,x,q,T,D=0;D<I;D++)x=g[D].split("="),q=u.decodeQuery(x.shift(),s),T=x.length?u.decodeQuery(x.join("="),s):null,q!=="__proto__"&&(U.call(p,q)?((typeof p[q]=="string"||p[q]===null)&&(p[q]=[p[q]]),p[q].push(T)):p[q]=T);return p},u.build=function(r){var s="",p=!1;return r.protocol&&(s+=r.protocol+":"),!r.urn&&(s||r.hostname)&&(s+="//",p=!0),s+=u.buildAuthority(r)||"",typeof r.path=="string"&&(r.path.charAt(0)!=="/"&&p&&(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,p){var g="",I,x,q,T;for(x in r)if(x!=="__proto__"&&U.call(r,x))if(M(r[x]))for(I={},q=0,T=r[x].length;q<T;q++)r[x][q]!==void 0&&I[r[x][q]+""]===void 0&&(g+="&"+u.buildQueryParameter(x,r[x][q],p),s!==!0&&(I[r[x][q]+""]=!0));else r[x]!==void 0&&(g+="&"+u.buildQueryParameter(x,r[x],p));return g.substring(1)},u.buildQueryParameter=function(r,s,p){return u.encodeQuery(r,p)+(s!==null?"="+u.encodeQuery(s,p):"")},u.addQuery=function(r,s,p){if(typeof s=="object")for(var g in s)U.call(s,g)&&u.addQuery(r,g,s[g]);else if(typeof s=="string"){if(r[s]===void 0){r[s]=p;return}else typeof r[s]=="string"&&(r[s]=[r[s]]);M(p)||(p=[p]),r[s]=(r[s]||[]).concat(p)}else throw new TypeError("URI.addQuery() accepts an object, string as the name parameter")},u.setQuery=function(r,s,p){if(typeof s=="object")for(var g in s)U.call(s,g)&&u.setQuery(r,g,s[g]);else if(typeof s=="string")r[s]=p===void 0?null:p;else throw new TypeError("URI.setQuery() accepts an object, string as the name parameter")},u.removeQuery=function(r,s,p){var g,I,x;if(M(s))for(g=0,I=s.length;g<I;g++)r[s[g]]=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")p!==void 0?O(p)==="RegExp"?!M(r[s])&&p.test(r[s])?r[s]=void 0:r[s]=L(r[s],p):r[s]===String(p)&&(!M(p)||p.length===1)?r[s]=void 0:M(r[s])&&(r[s]=L(r[s],p)):r[s]=void 0;else throw new TypeError("URI.removeQuery() accepts an object, string, RegExp as the first parameter")},u.hasQuery=function(r,s,p,g){switch(O(s)){case"String":break;case"RegExp":for(var I in r)if(U.call(r,I)&&s.test(I)&&(p===void 0||u.hasQuery(r,I,p)))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(p)){case"Undefined":return s in r;case"Boolean":var q=!!(M(r[s])?r[s].length:r[s]);return p===q;case"Function":return!!p(r[s],s,r);case"Array":if(!M(r[s]))return!1;var T=g?_:b;return T(r[s],p);case"RegExp":return M(r[s])?g?_(r[s],p):!1:!!(r[s]&&r[s].match(p));case"Number":p=String(p);case"String":return M(r[s])?g?_(r[s],p):!1:r[s]===p;default:throw new TypeError("URI.hasQuery() accepts undefined, boolean, string, number, RegExp, Function as the value parameter")}},u.joinPaths=function(){for(var r=[],s=[],p=0,g=0;g<arguments.length;g++){var I=new u(arguments[g]);r.push(I);for(var x=I.segment(),q=0;q<x.length;q++)typeof x[q]=="string"&&s.push(x[q]),x[q]&&p++}if(!s.length||!p)return new u("");var T=new u("").segment(s);return(r[0].path()===""||r[0].path().slice(0,1)==="/")&&T.path("/"+T.path()),T.normalize()},u.commonPath=function(r,s){var p=Math.min(r.length,s.length),g;for(g=0;g<p;g++)if(r.charAt(g)!==s.charAt(g)){g--;break}return g<1?r.charAt(0)===s.charAt(0)&&r.charAt(0)==="/"?"/":"":((r.charAt(g)!=="/"||s.charAt(g)!=="/")&&(g=r.substring(0,g).lastIndexOf("/")),r.substring(0,g+1))},u.withinString=function(r,s,p){p||(p={});var g=p.start||u.findUri.start,I=p.end||u.findUri.end,x=p.trim||u.findUri.trim,q=p.parens||u.findUri.parens,T=/[a-z0-9-]=["']?$/i;for(g.lastIndex=0;;){var D=g.exec(r);if(!D)break;var W=D.index;if(p.ignoreHtml){var J=r.slice(Math.max(W-3,0),W);if(J&&T.test(J))continue}for(var X=W+r.slice(W).search(I),Q=r.slice(W,X),re=-1;;){var se=q.exec(Q);if(!se)break;var ne=se.index+se[0].length;re=Math.max(re,ne)}if(re>-1?Q=Q.slice(0,re)+Q.slice(re).replace(x,""):Q=Q.replace(x,""),!(Q.length<=D[0].length)&&!(p.ignore&&p.ignore.test(Q))){X=W+Q.length;var me=s(Q,W,X,r);if(me===void 0){g.lastIndex=X;continue}me=String(me),r=r.slice(0,W)+me+r.slice(X),g.lastIndex=W+me.length}}return g.lastIndex=0,r},u.ensureValidHostname=function(r,s){var p=!!r,g=!!s,I=!1;if(g&&(I=_(u.hostProtocols,s)),I&&!p)throw new TypeError("Hostname cannot be empty, if protocol is "+s);if(r&&r.match(u.invalid_hostname_characters)){if(!i)throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-:_] and Punycode.js is not available');if(i.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,p){return s===void 0?this._parts[r]||"":(this._parts[r]=s||null,this.build(!p),this)}}function f(r,s){return function(p,g){return p===void 0?this._parts[r]||"":(p!==null&&(p=p+"",p.charAt(0)===s&&(p=p.substring(1))),this._parts[r]=p,this.build(!g),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 p=this.query(r,s);return typeof p=="string"&&p.length?"?"+p:p},w.hash=function(r,s){var p=this.fragment(r,s);return typeof p=="string"&&p.length?"#"+p:p},w.pathname=function(r,s){if(r===void 0||r===!0){var p=this._parts.path||(this._parts.hostname?"/":"");return r?(this._parts.urn?u.decodeUrnPath:u.decodePath)(p):p}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 p;if(r===void 0)return this.toString();this._string="",this._parts=u._parts();var g=r instanceof u,I=typeof r=="object"&&(r.hostname||r.path||r.pathname);if(r.nodeName){var x=u.getDomAttribute(r);r=r[x]||"",I=!1}if(!g&&I&&r.pathname!==void 0&&(r=r.toString()),typeof r=="string"||r instanceof String)this._parts=u.parse(String(r),this._parts);else if(g||I){var q=g?r._parts:r;for(p in q)p!=="query"&&U.call(this._parts,p)&&(this._parts[p]=q[p]);q.query&&this.query(q.query,!1)}else throw new TypeError("invalid input");return this.build(!s),this},w.is=function(r){var s=!1,p=!1,g=!1,I=!1,x=!1,q=!1,T=!1,D=!this._parts.urn;switch(this._parts.hostname&&(D=!1,p=u.ip4_expression.test(this._parts.hostname),g=u.ip6_expression.test(this._parts.hostname),s=p||g,I=!s,x=I&&a&&a.has(this._parts.hostname),q=I&&u.idn_expression.test(this._parts.hostname),T=I&&u.punycode_expression.test(this._parts.hostname)),r.toLowerCase()){case"relative":return D;case"absolute":return!D;case"domain":case"name":return I;case"sld":return x;case"ip":return s;case"ip4":case"ipv4":case"inet4":return p;case"ip6":case"ipv6":case"inet6":return g;case"idn":return q;case"url":return!this._parts.urn;case"urn":return!!this._parts.urn;case"punycode":return T}return null};var E=w.protocol,S=w.port,P=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))),S.call(this,r,s))},w.hostname=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r!==void 0){var p={preventInvalidHostname:this._parts.preventInvalidHostname},g=u.parseHost(r,p);if(g!=="/")throw new TypeError('Hostname "'+r+'" contains characters other than [A-Z0-9.-]');r=p.hostname,this._parts.preventInvalidHostname&&u.ensureValidHostname(r,this._parts.protocol)}return P.call(this,r,s)},w.origin=function(r,s){if(this._parts.urn)return r===void 0?"":this;if(r===void 0){var p=this.protocol(),g=this.authority();return g?(p?p+"://":"")+this.authority():""}else{var I=u(r);return this.protocol(I.protocol()).authority(I.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 p=u.parseHost(r,this._parts);if(p!=="/")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 p=u.parseAuthority(r,this._parts);if(p!=="/")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 p=u.buildUserinfo(this._parts);return p&&p.substring(0,p.length-1)}else return r[r.length-1]!=="@"&&(r+="@"),u.parseUserinfo(r,this._parts),this.build(!s),this},w.resource=function(r,s){var p;return r===void 0?this.path()+this.search()+this.hash():(p=u.parse(r),this._parts.path=p.path,this._parts.query=p.query,this._parts.fragment=p.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 p=this._parts.hostname.length-this.domain().length-1;return this._parts.hostname.substring(0,p)||""}else{var g=this._parts.hostname.length-this.domain().length,I=this._parts.hostname.substring(0,g),x=new RegExp("^"+F(I));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 p=this._parts.hostname.match(/\./g);if(p&&p.length<2)return this._parts.hostname;var g=this._parts.hostname.length-this.tld(s).length-1;return g=this._parts.hostname.lastIndexOf(".",g-1)+1,this._parts.hostname.substring(g)||""}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 I=new RegExp(F(this.domain())+"$");this._parts.hostname=this._parts.hostname.replace(I,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 p=this._parts.hostname.lastIndexOf("."),g=this._parts.hostname.substring(p+1);return s!==!0&&a&&a.list[g.toLowerCase()]&&a.get(this._parts.hostname)||g}else{var I;if(r)if(r.match(/[^a-zA-Z0-9-]/))if(a&&a.is(r))I=new RegExp(F(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(I,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");I=new RegExp(F(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(I,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 p=this._parts.path.length-this.filename().length-1,g=this._parts.path.substring(0,p)||(this._parts.hostname?"/":"");return r?u.decodePath(g):g}else{var I=this._parts.path.length-this.filename().length,x=this._parts.path.substring(0,I),q=new RegExp("^"+F(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(q,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 p=this._parts.path.lastIndexOf("/"),g=this._parts.path.substring(p+1);return r?u.decodePathSegment(g):g}else{var I=!1;r.charAt(0)==="/"&&(r=r.substring(1)),r.match(/\.?\//)&&(I=!0);var x=new RegExp(F(this.filename())+"$");return r=u.recodePath(r),this._parts.path=this._parts.path.replace(x,r),I?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 p=this.filename(),g=p.lastIndexOf("."),I,x;return g===-1?"":(I=p.substring(g+1),x=/^[a-z0-9%]+$/i.test(I)?I:"",r?u.decodePathSegment(x):x)}else{r.charAt(0)==="."&&(r=r.substring(1));var q=this.suffix(),T;if(q)r?T=new RegExp(F(q)+"$"):T=new RegExp(F("."+q)+"$");else{if(!r)return this;this._parts.path+="."+u.recodePath(r)}return T&&(r=u.recodePath(r),this._parts.path=this._parts.path.replace(T,r)),this.build(!s),this}},w.segment=function(r,s,p){var g=this._parts.urn?":":"/",I=this.path(),x=I.substring(0,1)==="/",q=I.split(g);if(r!==void 0&&typeof r!="number"&&(p=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&&q.shift(),r<0&&(r=Math.max(q.length+r,0)),s===void 0)return r===void 0?q:q[r];if(r===null||q[r]===void 0)if(M(s)){q=[];for(var T=0,D=s.length;T<D;T++)!s[T].length&&(!q.length||!q[q.length-1].length)||(q.length&&!q[q.length-1].length&&q.pop(),q.push(v(s[T])))}else(s||typeof s=="string")&&(s=v(s),q[q.length-1]===""?q[q.length-1]=s:q.push(s));else s?q[r]=v(s):q.splice(r,1);return x&&q.unshift(""),this.path(q.join(g),p)},w.segmentCoded=function(r,s,p){var g,I,x;if(typeof r!="number"&&(p=s,s=r,r=void 0),s===void 0){if(g=this.segment(r,s,p),!M(g))g=g!==void 0?u.decode(g):void 0;else for(I=0,x=g.length;I<x;I++)g[I]=u.decode(g[I]);return g}if(!M(s))s=typeof s=="string"||s instanceof String?u.encode(s):s;else for(I=0,x=s.length;I<x;I++)s[I]=u.encode(s[I]);return this.segment(r,s,p)};var y=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 p=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace),g=r.call(this,p);return this._parts.query=u.buildQuery(g||p,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):y.call(this,r,s)},w.setQuery=function(r,s,p){var g=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if(typeof r=="string"||r instanceof String)g[r]=s!==void 0?s:null;else if(typeof r=="object")for(var I in r)U.call(r,I)&&(g[I]=r[I]);else throw new TypeError("URI.addQuery() accepts an object, string as the name parameter");return this._parts.query=u.buildQuery(g,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(p=s),this.build(!p),this},w.addQuery=function(r,s,p){var g=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.addQuery(g,r,s===void 0?null:s),this._parts.query=u.buildQuery(g,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(p=s),this.build(!p),this},w.removeQuery=function(r,s,p){var g=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.removeQuery(g,r,s),this._parts.query=u.buildQuery(g,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof r!="string"&&(p=s),this.build(!p),this},w.hasQuery=function(r,s,p){var g=u.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return u.hasQuery(g,r,s,p)},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")&&i?this._parts.hostname=i.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 p,g="",I,x;for(s.charAt(0)!=="/"&&(p=!0,s="/"+s),(s.slice(-3)==="/.."||s.slice(-2)==="/.")&&(s+="/"),s=s.replace(/(\/(\.\/)+)|(\/\.$)/g,"/").replace(/\/{2,}/g,"/"),p&&(g=s.substring(1).match(/^(\.\.\/)+/)||"",g&&(g=g[0]));I=s.search(/\/\.\.(\/|$)/),I!==-1;){if(I===0){s=s.substring(3);continue}x=s.substring(0,I).lastIndexOf("/"),x===-1&&(x=I),s=s.substring(0,x)+s.substring(I+3)}return p&&this.is("relative")&&(s=g+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=m,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")&&i?(s+=i.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 p="",g=0,I=r._parts.query.split("&"),x=I.length;g<x;g++){var q=(I[g]||"").split("=");p+="&"+u.decodeQuery(q[0],this._parts.escapeQuerySpace).replace(/&/g,"%26"),q[1]!==void 0&&(p+="="+u.decodeQuery(q[1],this._parts.escapeQuerySpace).replace(/&/g,"%26"))}s+="?"+p.substring(1)}return s+=u.decodeQuery(r.hash(),!0),s},w.absoluteTo=function(r){var s=this.clone(),p=["protocol","username","password","hostname","port"],g,I,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(I=0;x=p[I];I++)s._parts[x]=r._parts[x];return s._parts.path?(s._parts.path.substring(-2)===".."&&(s._parts.path+="/"),s.path().charAt(0)!=="/"&&(g=r.directory(),g=g||(r.path().indexOf("/")===0?"/":""),s._parts.path=(g?g+"/":"")+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(),p,g,I,x,q;if(s._parts.urn)throw new Error("URNs do not have any generally defined hierarchical components");if(r=new u(r).normalize(),p=s._parts,g=r._parts,x=s.path(),q=r.path(),x.charAt(0)!=="/")throw new Error("URI is already relative");if(q.charAt(0)!=="/")throw new Error("Cannot calculate a URI relative to another relative URI");if(p.protocol===g.protocol&&(p.protocol=null),p.username!==g.username||p.password!==g.password||p.protocol!==null||p.username!==null||p.password!==null)return s.build();if(p.hostname===g.hostname&&p.port===g.port)p.hostname=null,p.port=null;else return s.build();if(x===q)return p.path="",s.build();if(I=u.commonPath(x,q),!I)return s.build();var T=g.path.substring(I.length).replace(/[^\/]*$/,"").replace(/.*?\//g,"../");return p.path=T+p.path.substring(I.length)||"./",s.build()},w.equals=function(r){var s=this.clone(),p=new u(r),g={},I={},x={},q,T,D;if(s.normalize(),p.normalize(),s.toString()===p.toString())return!0;if(q=s.query(),T=p.query(),s.query(""),p.query(""),s.toString()!==p.toString()||q.length!==T.length)return!1;g=u.parseQuery(q,this._parts.escapeQuerySpace),I=u.parseQuery(T,this._parts.escapeQuerySpace);for(D in g)if(U.call(g,D)){if(M(g[D])){if(!b(g[D],I[D]))return!1}else if(g[D]!==I[D])return!1;x[D]=!0}for(D in I)if(U.call(I,D)&&!x[D])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})}(ma)),ma.exports}var Op;function Gc(){return Op||(Op=1,function(e){var i=Os&&Os.__importDefault||function(L){return L&&L.__esModule?L:{default:L}};Object.defineProperty(e,"__esModule",{value:!0}),e.uriSchemaAttributesProducer=e.uriInferenceAttributesProducer=e.uriTypeAttributeKind=void 0;const n=i(Lg()),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(_){const b=_.map(h=>h[0]),v=_.map(h=>h[1]);return[(0,l.setUnionManyInto)(new Set,b),(0,l.setUnionManyInto)(new Set,v)]}makeInferred(_){}addToSchema(_,b,v){if(b.kind!=="string"&&b.kind!=="uri")return;const[h,m]=v;h.size>0&&(_[u]=Array.from(h).sort()),m.size>0&&(_[c]=Array.from(m).sort())}}e.uriTypeAttributeKind=new w;const U=/^.+(\.[^./\\]+)$/;function F(L){const _=L.match(U);if(_!==null)return _[1]}function O(L){try{const _=(0,n.default)(L),b=F(_.path()),v=b===void 0?[]:[b.toLowerCase()];return e.uriTypeAttributeKind.makeAttributes([new Set([_.protocol().toLowerCase()]),new Set(v)])}catch{return a.emptyTypeAttributes}}e.uriInferenceAttributesProducer=O;function M(L,_,b){if(typeof L!="object"||!b.has("string"))return;let v;const h=L[u];h!==void 0?v=new Set((0,d.checkArray)(h,d.checkString)):v=new Set;let m;const k=L[c];if(k!==void 0?m=new Set((0,d.checkArray)(k,d.checkString)):m=new Set,!(v.size===0&&m.size===0))return{forString:e.uriTypeAttributeKind.makeAttributes([v,m])}}e.uriSchemaAttributesProducer=M}(Os)),Os}var Cp;function mt(){return Cp||(Cp=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 i=et(),n=Qe(),a=Hi(),l=yn(),d=ni(),u=Gc(),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,i.mapFromObject)(c),e.transformedStringTypeKinds=new Set(Object.getOwnPropertyNames(c));function w(W){return W==="string"||(0,i.hasOwnProperty)(c,W)}e.isPrimitiveStringTypeKind=w;function U(W){const J=e.transformedStringTypeTargetTypeKindsMap.get(W);if(J!==void 0)return J.primitive}e.targetTypeKindForTransformedStringTypeKind=U;function F(W){return W==="integer"||W==="double"}e.isNumberTypeKind=F;function O(W){return w(W)||F(W)?!0:W==="none"||W==="any"||W==="null"||W==="bool"}e.isPrimitiveTypeKind=O;function M(W,J){return W.index===J.index||W.kind==="none"||J.kind==="none"}class L{constructor(J,X){this._kind=J,this._components=X;let Q=i.hashCodeInit;Q=(0,i.addHashCode)(Q,(0,i.hashCodeOf)(this._kind));for(const re of X)Q=(0,i.addHashCode)(Q,(0,i.hashCodeOf)(re));this._hashCode=Q}equals(J){if(!(J instanceof L)||this._kind!==J._kind)return!1;const X=this._components.length;(0,n.assert)(X===J._components.length,"Components of a type kind's identity must have the same length");for(let Q=0;Q<X;Q++)if(!(0,i.areEqual)(this._components[Q],J._components[Q]))return!1;return!0}hashCode(){return this._hashCode}}e.TypeIdentity=L;class _{constructor(J,X){this.typeRef=J,this.graph=X}get index(){return(0,d.typeRefIndex)(this.typeRef)}getChildren(){let J=this.getNonAttributeChildren();for(const[X,Q]of this.getAttributes())X.children!==void 0&&(0,i.setUnionInto)(J,X.children(Q));return J}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(J){return J instanceof _?this.typeRef===J.typeRef:!1}hashCode(){return(0,i.hashCodeOf)(this.typeRef)}structurallyCompatible(J,X=!1){function Q(ge,Ae){return ge===Ae?!0:X?ge==="integer"?Ae==="double":ge==="double"?Ae==="integer":!1:!1}if(M(this,J))return!0;if(!Q(this.kind,J.kind))return!1;const re=[[this,J]],se=[];let ne;const me=(ge,Ae)=>M(ge,Ae)?!0:Q(ge.kind,Ae.kind)?(re.push([ge,Ae]),!0):(ne=!0,!1);for(;re.length>0;){let[ge,Ae]=(0,n.defined)(re.pop());if(ge.index>Ae.index&&([ge,Ae]=[Ae,ge]),!ge.isPrimitive()){let pe=ge.index,le=Ae.index,ye=!1;for(const[de,Y]of se)if(de===pe&&Y===le){ye=!0;break}if(ye)continue;se.push([pe,le])}if(ne=!1,!ge.structuralEqualityStep(Ae,X,me)||ne)return!1}return!0}getParentTypes(){return this.graph.getParentsOfType(this)}getAncestorsNotInSet(J){const X=[this],Q=new Set,re=new Set;for(;;){const se=X.pop();if(se===void 0)break;const ne=se.getParentTypes();console.log(`${ne.size} parents`);for(const me of ne)Q.has(me)||(Q.add(me),J.has(me.typeRef)?(console.log(`adding ${me.kind}`),X.push(me)):(console.log(`found ${me.kind}`),re.add(me)))}return re}}e.Type=_;function b(W){return(0,i.mapSome)(W,(J,X)=>X.requiresUniqueIdentity(J))}function v(W){return(0,i.mapFilter)(W,(J,X)=>X.inIdentity)}function h(W,J){if(!b(J))return new L(W,[v(J)])}e.primitiveTypeIdentity=h;class m extends _{constructor(J,X,Q){super(J,X),this.kind=Q}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(J){J.getPrimitiveType(this.kind)}structuralEqualityStep(J,X,Q){return!0}}e.PrimitiveType=m;function k(W,J){if(!b(W))return new L("array",[v(W),J])}e.arrayTypeIdentity=k;class B extends _{constructor(J,X,Q){super(J,X),this._itemsRef=Q,this.kind="array"}setItems(J){if(this._itemsRef!==void 0)return(0,n.panic)("Can only set array items once");this._itemsRef=J}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(J){const X=this.getItemsRef(),Q=J.lookup(X);Q===void 0?(J.getUniqueArrayType(),J.setArrayItems(J.reconstitute(this.getItemsRef()))):J.getArrayType(Q)}structuralEqualityStep(J,X,Q){return Q(this.items,J.items)}}e.ArrayType=B;class C{constructor(J,X){this.typeData=J,this.isOptional=X}equals(J){return J instanceof C?(0,i.areEqual)(this.typeData,J.typeData)&&this.isOptional===J.isOptional:!1}hashCode(){return(0,i.hashCodeOf)(this.typeData)+(this.isOptional?17:23)}}e.GenericClassProperty=C;class R extends C{constructor(J,X,Q){super(J,Q),this.graph=X}get typeRef(){return this.typeData}get type(){return(0,d.derefTypeRef)(this.typeRef,this.graph)}}e.ClassProperty=R;function A(W,J,X,Q){if(!b(J))return new L(W,[v(J),X,Q])}function f(W,J){return A("class",W,J,void 0)}e.classTypeIdentity=f;function E(W,J){return A("map",W,new Map,J)}e.mapTypeIdentify=E;class S extends _{constructor(J,X,Q,re,se,ne){super(J,X),this.kind=Q,this.isFixed=re,this._properties=se,this._additionalPropertiesRef=ne,Q==="map"?(se!==void 0&&(0,n.assert)(se.size===0),(0,n.assert)(!re)):Q==="class"?(0,n.assert)(ne===void 0):(0,n.assert)(re)}setProperties(J,X){(0,n.assert)(this._properties===void 0,"Tried to set object properties twice"),this instanceof y&&(0,n.assert)(J.size===0,"Cannot set properties on map type"),this instanceof P&&(0,n.assert)(X===void 0,"Cannot set additional properties of class type"),this._properties=J,this._additionalPropertiesRef=X}getProperties(){return(0,n.defined)(this._properties)}getSortedProperties(){return(0,i.mapSortByKey)(this.getProperties())}getAdditionalPropertiesRef(){return(0,n.assert)(this._properties!==void 0,"Properties are not set yet"),this._additionalPropertiesRef}getAdditionalProperties(){const J=this.getAdditionalPropertiesRef();if(J!==void 0)return(0,d.derefTypeRef)(J,this.graph)}getNonAttributeChildren(){const J=(0,i.mapSortToArray)(this.getProperties(),(Q,re)=>re).map(([Q,re])=>re.type),X=this.getAdditionalProperties();return X!==void 0&&J.push(X),new Set(J)}get isNullable(){return!1}isPrimitive(){return!1}get identity(){if(!this.isFixed)return A(this.kind,this.getAttributes(),this.getProperties(),this.getAdditionalPropertiesRef())}reconstitute(J,X){const Q=this.getSortedProperties(),re=X?Q:this.getProperties(),se=J.lookupMap((0,i.mapMap)(Q,me=>me.typeRef)),ne=(0,i.definedMap)(this._additionalPropertiesRef,me=>J.lookup(me));if(se!==void 0&&(ne!==void 0||this._additionalPropertiesRef===void 0)){const me=(0,i.mapMap)(re,(ge,Ae)=>J.makeClassProperty((0,n.defined)(se.get(Ae)),ge.isOptional));switch(this.kind){case"object":(0,n.assert)(this.isFixed),J.getObjectType(me,ne);break;case"map":J.getMapType((0,n.defined)(ne));break;case"class":this.isFixed?J.getUniqueClassType(!0,me):J.getClassType(me);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}}else{switch(this.kind){case"object":(0,n.assert)(this.isFixed),J.getUniqueObjectType(void 0,void 0);break;case"map":J.getUniqueMapType();break;case"class":J.getUniqueClassType(this.isFixed,void 0);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}const me=(0,i.mapMap)(Q,pe=>J.reconstitute(pe.typeRef)),ge=(0,i.mapMap)(re,(pe,le)=>J.makeClassProperty((0,n.defined)(me.get(le)),pe.isOptional)),Ae=(0,i.definedMap)(this._additionalPropertiesRef,pe=>J.reconstitute(pe));J.setObjectProperties(ge,Ae)}}structuralEqualityStep(J,X,Q){const re=this.getProperties(),se=J.getProperties();if(re.size!==se.size)return!1;let ne=!1;for(const[Ae,pe]of re){const le=se.get(Ae);if(le===void 0||pe.isOptional!==le.isOptional||!Q(pe.type,le.type))return ne=!0,!1}if(ne)return!1;const me=this.getAdditionalProperties(),ge=J.getAdditionalProperties();return me===void 0!=(ge===void 0)?!1:me===void 0||ge===void 0?!0:Q(me,ge)}}e.ObjectType=S;class P extends S{constructor(J,X,Q,re){super(J,X,"class",Q,re,void 0)}}e.ClassType=P;class y extends S{constructor(J,X,Q){super(J,X,"map",!1,(0,i.definedMap)(Q,()=>new Map),Q)}get values(){return(0,n.defined)(this.getAdditionalProperties())}}e.MapType=y;function r(W,J){if(!b(W))return new L("enum",[v(W),J])}e.enumTypeIdentity=r;class s extends _{constructor(J,X,Q){super(J,X),this.cases=Q,this.kind="enum"}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return r(this.getAttributes(),this.cases)}getNonAttributeChildren(){return new Set}reconstitute(J){J.getEnumType(this.cases)}structuralEqualityStep(J,X,Q){return(0,i.areEqual)(this.cases,J.cases)}}e.EnumType=s;function p(W,J,X,Q){const re=(0,i.toReadonlySet)(W),se=(0,i.toReadonlySet)(J);return re.size!==se.size?!1:(0,i.iterableEvery)(re,ne=>{const me=(0,i.iterableFind)(se,ge=>ge.kind===ne.kind);return!!(me!==void 0&&Q(ne,me)||X&&(ne.kind==="integer"&&(0,i.iterableSome)(se,ge=>ge.kind==="double")||ne.kind==="double"&&(0,i.iterableSome)(se,ge=>ge.kind==="integer")))})}e.setOperationCasesEqual=p;function g(W,J,X){if(!b(J))return new L(W,[v(J),X])}e.setOperationTypeIdentity=g;function I(W,J){return g("union",W,J)}e.unionTypeIdentity=I;function x(W,J){return g("intersection",W,J)}e.intersectionTypeIdentity=x;class q extends _{constructor(J,X,Q,re){super(J,X),this.kind=Q,this._memberRefs=re}setMembers(J){if(this._memberRefs!==void 0)return(0,n.panic)("Can only set map members once");this._memberRefs=J}getMemberRefs(){return this._memberRefs===void 0?(0,n.panic)("Map members accessed before they were set"):this._memberRefs}get members(){return(0,i.setMap)(this.getMemberRefs(),J=>(0,d.derefTypeRef)(J,this.graph))}get sortedMembers(){return this.getNonAttributeChildren()}getNonAttributeChildren(){return(0,i.setSortBy)(this.members,J=>J.kind)}isPrimitive(){return!1}get identity(){return g(this.kind,this.getAttributes(),this.getMemberRefs())}reconstituteSetOperation(J,X,Q){const re=(0,i.mapMap)(this.sortedMembers.entries(),me=>me.typeRef),se=X?this.sortedMembers:this.members,ne=J.lookupMap(re);if(ne===void 0){Q(void 0);const me=J.reconstituteMap(re);J.setSetOperationMembers((0,i.setMap)(se,ge=>(0,n.defined)(me.get(ge))))}else Q((0,i.setMap)(se,me=>(0,n.defined)(ne.get(me))))}structuralEqualityStep(J,X,Q){return p(this.members,J.members,X,Q)}}e.SetOperationType=q;class T extends q{constructor(J,X,Q){super(J,X,"intersection",Q)}get isNullable(){return(0,n.panic)("isNullable not implemented for IntersectionType")}reconstitute(J,X){this.reconstituteSetOperation(J,X,Q=>{Q===void 0?J.getUniqueIntersectionType():J.getIntersectionType(Q)})}}e.IntersectionType=T;class D extends q{constructor(J,X,Q){super(J,X,"union",Q),Q!==void 0&&(0,l.messageAssert)(Q.size>0,"IRNoEmptyUnions",{})}setMembers(J){(0,l.messageAssert)(J.size>0,"IRNoEmptyUnions",{}),super.setMembers(J)}get stringTypeMembers(){return(0,i.setFilter)(this.members,J=>w(J.kind)||J.kind==="enum")}findMember(J){return(0,i.iterableFind)(this.members,X=>X.kind===J)}get isNullable(){return this.findMember("null")!==void 0}get isCanonical(){const J=this.members;if(J.size<=1)return!1;const X=(0,i.setMap)(J,re=>re.kind);if(X.size<J.size||X.has("union")||X.has("intersection")||X.has("none")||X.has("any")||X.has("string")&&X.has("enum"))return!1;let Q=0;return X.has("class")&&(Q+=1),X.has("map")&&(Q+=1),X.has("object")&&(Q+=1),!(Q>1)}reconstitute(J,X){this.reconstituteSetOperation(J,X,Q=>{Q===void 0?J.getUniqueUnionType():J.getUnionType(Q)})}}e.UnionType=D}(tl)),tl}var xt={},Rt={},Ep;function Ft(){if(Ep)return Rt;Ep=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(),i=Qe();class n{constructor(v,h,m,k){this._children=new Set,this._members=new Set,this.forbiddenNamespaces=new Set(m),this.additionalForbidden=new Set(k),h!==void 0&&h.addChild(this)}addChild(v){this._children.add(v)}get children(){return this._children}get members(){return this._members}get forbiddenNameds(){return(0,e.setUnion)(this.additionalForbidden,...Array.from(this.forbiddenNamespaces).map(v=>v.members))}add(v){return this._members.add(v),v}}Rt.Namespace=n;class a{constructor(v,h,m){this.name=v,this.nameStyle=h,this._prefixes=new Set(m)}assignNames(v,h,m){const k=new Set(h),B=Array.from(m);(0,i.assert)(B.length>0,"Number of names can't be less than 1");const C=new Map;let R=[];for(const E of B){const S=E.proposeUnstyledNames(v),P=E.namingFunction,y=(0,e.iterableFind)(S,r=>!k.has(P.nameStyle(r))&&B.every(s=>s===E||!s.proposeUnstyledNames(v).has(r)));if(y!==void 0){const r=P.nameStyle(y),s=E.nameAssignments(k,r);if(s!==null){(0,e.mapMergeInto)(C,s),(0,e.setUnionInto)(k,s.values());continue}}R.push(E)}let A=this._prefixes.values(),f=1;for(const E of R){const S=(0,i.defined)((0,e.iterableFirst)(E.proposeUnstyledNames(v)));for(;;){let P;const{done:y,value:r}=A.next();y?(P=`${S}_${f.toString()}`,f++):P=`${r}_${S}`;const s=E.namingFunction.nameStyle(P),p=E.nameAssignments(k,s);if(p!==null){(0,e.mapMergeInto)(C,p),(0,e.setUnionInto)(k,p.values());break}}}return C}}Rt.Namer=a;const l=["Purple","Fluffy","Tentacled","Sticky","Indigo","Indecent","Hilarious","Ambitious","Cunning","Magenta","Frisky","Mischievous","Braggadocious"];function d(b,v){return new a(b,v,l)}Rt.funPrefixNamer=d;class u{constructor(v,h){this._namingFunction=v,this.order=h,this._associates=new Set}addAssociate(v){this._associates.add(v)}isFixed(){return this instanceof c}get namingFunction(){return(0,i.defined)(this._namingFunction)}firstProposedName(v){return(0,i.defined)((0,e.iterableFirst)(this.proposeUnstyledNames(v)))}nameAssignments(v,h){if(v.has(h))return null;const m=new Map([[this,h]]);for(const k of this._associates){const B=k.getName(h);if(v.has(B))return null;m.set(k,B)}return m}}Rt.Name=u;class c extends u{constructor(v){super(void 0,0),this._fixedName=v}get dependencies(){return[]}addAssociate(v){return(0,i.panic)("Cannot add associates to fixed names")}get fixedName(){return this._fixedName}proposeUnstyledNames(v){return(0,i.panic)("Only fixedName should be called on FixedName.")}}Rt.FixedName=c;class w extends u{constructor(v,h,m){super(h,m),this._unstyledNames=new Set(v)}get dependencies(){return[]}proposeUnstyledNames(v){return this._unstyledNames}}Rt.SimpleName=w;class U extends u{constructor(v,h,m){super(void 0,h),this._sponsor=v,this.getName=m}get dependencies(){return[this._sponsor]}proposeUnstyledNames(v){return(0,i.panic)("AssociatedName must be assigned via its sponsor")}}Rt.AssociatedName=U;class F extends u{constructor(v,h,m){super(v,h),this._proposeUnstyledName=m;const k=[];m(B=>(k.push(B),"0xDEADBEEF")),this._dependencies=new Set(k)}get dependencies(){return Array.from(this._dependencies)}proposeUnstyledNames(v){return new Set([this._proposeUnstyledName(h=>((0,i.assert)(this._dependencies.has(h),"DependencyName proposer is not pure"),(0,i.defined)(v.get(h))))])}}Rt.DependencyName=F;function O(b,v){const h=new n(b,void 0,[],[]);for(const m of v)h.add(new c(m));return h}Rt.keywordNamespace=O;function M(b){return(0,e.setUnion)(b,...Array.from((0,e.setMap)(b,v=>M(v.children))))}class L{constructor(v){this._names=new Map,this._namedsForName=new Map,this.isReadyToBeNamed=h=>this._names.has(h)?!1:h.dependencies.every(m=>this._names.has(m)),this.isConflicting=(h,m)=>{const k=this._namedsForName.get(m);if(k===void 0)return!1;for(const B of k)if(h.members.has(B)||h.forbiddenNameds.has(B))return!0;return!1},this.assign=(h,m,k)=>{(0,i.assert)(!this.names.has(h),`Name "${k}" assigned twice`),(0,i.assert)(!this.isConflicting(m,k),`Assigned name "${k}" conflicts`),this._names.set(h,k);let B=this._namedsForName.get(k);B===void 0&&(B=new Set,this._namedsForName.set(k,B)),B.add(h)},this.namespaces=M(v)}get names(){return this._names}areForbiddensFullyNamed(v){return(0,e.iterableEvery)(v.forbiddenNameds,h=>this._names.has(h))}}function _(b){const v=new L(b);for(const h of v.namespaces)for(const m of h.members)m.isFixed()&&v.assign(m,h,m.fixedName);for(;;){const h=(0,e.setFilter)(v.namespaces,C=>v.areForbiddensFullyNamed(C)),m=(0,e.iterableFind)(h,C=>(0,e.iterableSome)(C.members,v.isReadyToBeNamed));if(m===void 0)return v.names;const k=(0,e.setUnion)(m.members,m.forbiddenNameds);let B=(0,e.setFilterMap)(k,C=>v.names.get(C));for(;;){const C=(0,e.setFilter)(m.members,v.isReadyToBeNamed),R=(0,e.iterableMinBy)(C,S=>S.order);if(R===void 0)break;const A=R.order,f=(0,e.setFilter)(C,S=>S.order===A),E=(0,e.setGroupBy)(f,S=>S.namingFunction);for(const[S,P]of E){const y=(0,e.setGroupBy)(P,r=>r.namingFunction.nameStyle(r.firstProposedName(v.names)));for(const[,r]of y){const s=S.assignNames(v.names,B,r);for(const[p,g]of s)v.assign(p,m,g);(0,e.setUnionInto)(B,s.values())}}}}}return Rt.assignNames=_,Rt}var Ap;function Dt(){if(Ap)return xt;Ap=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(),i=Ft(),n=Qe(),a=Nt();function l(){return{kind:"newline",indentationChange:0}}xt.newline=l;function d(_){if(_ instanceof Array)return{kind:"sequence",sequence:_.map(d)};if(typeof _=="string"){const b=_.split(`
|
|
177
|
+
`);return b.length===1?{kind:"text",text:_}:{kind:"sequence",sequence:(0,e.arrayIntercalate)(l(),b.map(v=>({kind:"text",text:v})))}}return _ instanceof i.Name?{kind:"name",named:_}:_}xt.sourcelikeToSource=d;function u(_,b){return{kind:"annotated",annotation:_,source:d(b)}}xt.annotated=u;function c(_,b,v){return _?u(b,v):v}xt.maybeAnnotated=c;function w(_,b){return{kind:"modified",modifier:_,source:d(b)}}xt.modifySource=w;function U(_,b){switch(_.kind){case"text":return _.text.length;case"newline":return(0,n.panic)("Newline must not occur within a line.");case"sequence":return _.sequence.map(v=>U(v,b)).reduce((v,h)=>v+h,0);case"table":return(0,n.panic)("Table must not occur within a line.");case"annotated":return U(_.source,b);case"name":return(0,n.defined)(b.get(_.named)).length;case"modified":return F(_,b,"").lines.join(`
|
|
178
|
+
`).length;default:return(0,n.assertNever)(_)}}function F(_,b,v){let h=0,m=0;const k=[];let B=[];const C=[];function R(){m!==0&&(B.push((0,a.repeatString)(v,m)),m=0)}function A(){const P=B.join("");return B=[P],P}function f(){return{line:k.length,column:A().length}}function E(){k.push(A()),B=[]}function S(P){switch(P.kind){case"text":R(),B.push(P.text);break;case"newline":E(),h+=P.indentationChange,m=h;break;case"sequence":for(const T of P.sequence)S(T);break;case"table":const y=P.table,r=y.length;if(r===0)break;const s=y.map(T=>T.map(D=>U(D,b))),p=(0,n.defined)((0,e.iterableMax)(y.map(T=>T.length)));if(p===0)break;const g=[];for(let T=0;T<p;T++)g.push((0,n.defined)((0,e.iterableMax)(s.map(D=>(0,e.withDefault)(D[T],0)))));for(let T=0;T<r;T++){R();const D=(0,n.defined)(y[T]),W=(0,n.defined)(s[T]);for(let J=0;J<p;J++){const X=g[J],Q=(0,e.withDefault)(D[J],{kind:"text",text:""}),re=(0,e.withDefault)(W[J],0);S(Q),J<p-1&&re<X&&B.push((0,a.repeatString)(" ",X-re))}T<r-1&&(E(),m=h)}break;case"annotated":const I=f();S(P.source);const x=f();C.push({annotation:P.annotation,span:{start:I,end:x}});break;case"name":(0,n.assert)(b.has(P.named),"No name for Named"),R(),B.push((0,n.defined)(b.get(P.named)));break;case"modified":R();const q=F(P.source,b,v).lines;(0,n.assert)(q.length===1,"Cannot modify more than one line."),B.push(P.modifier(q[0]));break;default:return(0,n.assertNever)(P)}}return S(_),E(),{lines:k,annotations:C}}xt.serializeRenderResult=F;function O(..._){return{source:_,needsParens:!1}}xt.singleWord=O;function M(_,...b){if((0,n.assert)(b.length>0,"Zero words is not multiple"),b.length===1)return O(b[0]);const v=[];for(let h=0;h<b.length;h++)h>0&&v.push(_),v.push(b[h]);return{source:v,needsParens:!0}}xt.multiWord=M;function L({source:_,needsParens:b}){return b?["(",_,")"]:_}return xt.parenIfNeeded=L,xt}var kl={},Cs={},Qn={},Fp;function On(){if(Fp)return Qn;Fp=1,Object.defineProperty(Qn,"__esModule",{value:!0}),Qn.nullTypeIssueAnnotation=Qn.anyTypeIssueAnnotation=Qn.IssueAnnotationData=Qn.AnnotationData=void 0;class e{}Qn.AnnotationData=e;class i extends e{constructor(a){super(),this.message=a}}return Qn.IssueAnnotationData=i,Qn.anyTypeIssueAnnotation=new i("quicktype cannot infer this type because there is no data about it in the input."),Qn.nullTypeIssueAnnotation=new i("The only value for this in the input is null, which means you probably need a more complete input sample."),Qn}var Pp;function V_(){if(Pp)return Cs;Pp=1,Object.defineProperty(Cs,"__esModule",{value:!0}),Cs.Renderer=void 0;const e=et(),i=Ft(),n=Dt(),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 F=U.length;let O=0;for(let M=0;M<F;M++){const L=U.charAt(M);if(L===" ")O+=1;else if(L===" ")O=(O/4+1)*4;else return{indent:O,text:U.substring(M)}}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(F){this._currentEmitTarget.push(F),this._preventBlankLine=!1}emitNewline(){const F=(0,n.newline)();this.pushItem(F),this._lastNewline=F}emitItem(F){if(!this.isEmpty)for(let O=0;O<this._numBlankLinesNeeded;O++)this.emitNewline();this._numBlankLinesNeeded=0,this.pushItem(F)}containsItem(F){return this._currentEmitTarget.find(M=>F===M)!==void 0}ensureBlankLine(F){this._preventBlankLine||(this._numBlankLinesNeeded=Math.max(this._numBlankLinesNeeded,F))}preventBlankLine(){this._numBlankLinesNeeded=0,this._preventBlankLine=!0}changeIndent(F){if(this._lastNewline===void 0)return(0,l.panic)("Cannot change indent for the first line");this._lastNewline.indentationChange+=F}}let w=class{constructor(F,O){this.targetLanguage=F,this.emitTable=M=>{if(M.length===0)return;const L=M.map(_=>_.map(b=>(0,n.sourcelikeToSource)(b)));this._emitContext.emitItem({kind:"table",table:L}),this._emitContext.emitNewline()},this.typeGraph=O.typeGraph,this.leadingComments=O.leadingComments,this._finishedFiles=new Map,this._finishedEmitContexts=new Map,this._emitContext=new c}ensureBlankLine(F=1){this._emitContext.ensureBlankLine(F)}preventBlankLine(){this._emitContext.preventBlankLine()}emitItem(F){this._emitContext.emitItem(F)}emitItemOnce(F){return this._emitContext.containsItem(F)?!1:(this.emitItem(F),!0)}emitLineOnce(...F){let O=!0;F.length===1?O=this.emitItemOnce(F[0]):F.length>1&&(O=this.emitItemOnce(F)),O&&this._emitContext.emitNewline()}emitLine(...F){F.length===1?this._emitContext.emitItem(F[0]):F.length>1&&this._emitContext.emitItem(F),this._emitContext.emitNewline()}emitMultiline(F){const O=F.split(`
|
|
179
|
+
`),M=O.length;if(M===0)return;this.emitLine(O[0]);let L=0;for(let _=1;_<M;_++){const b=O[_],{indent:v,text:h}=u(b);if((0,l.assert)(v%4===0,"Indentation is not a multiple of 4."),h!==null){const m=v/4;this.changeIndent(m-L),L=m,this.emitLine(h)}else this._emitContext.emitNewline()}L!==0&&this.changeIndent(-L)}gatherSource(F){const O=this._emitContext;this._emitContext=new c,F(),(0,l.assert)(!this._emitContext.isNested,"emit context not restored correctly");const M=this._emitContext.source;return this._emitContext=O,M}emitGatheredSource(F){for(const O of F)this._emitContext.emitItem(O)}emitAnnotated(F,O){const M=this.gatherSource(O),L=(0,n.sourcelikeToSource)(M);this._emitContext.emitItem((0,n.annotated)(F,L))}emitIssue(F,O){this.emitAnnotated(new a.IssueAnnotationData(F),O)}changeIndent(F){this._emitContext.changeIndent(F)}iterableForEach(F,O){const M=Array.from(F);let L=!0;for(const[_,b]of(0,e.iterableEnumerate)(M)){const v=M.length===1?"only":L?"first":_===M.length-1?"last":"middle";O(b,v),L=!1}}forEach(F,O,M,L){let _=!1;return this.iterableForEach(F,([b,v],h)=>{h==="only"||h==="first"?this.ensureBlankLine(M):this.ensureBlankLine(O),L(v,b,h),_=!0}),_}forEachWithBlankLines(F,O,M){const{position:L,count:_}=d(O),b=["interposing","leading-and-interposing"].indexOf(L)>=0,v=["leading","leading-and-interposing"].indexOf(L)>=0;return this.forEach(F,b?_:0,v?_:0,M)}indent(F){this.changeIndent(1),F(),this.changeIndent(-1)}assignNames(){return(0,i.assignNames)(this.setUpNaming())}initializeEmitContextForFilename(F){if(this._finishedEmitContexts.has(F.toLowerCase())){const O=this._finishedEmitContexts.get(F.toLowerCase());O!==void 0&&(this._emitContext=O)}}finishFile(F){this._finishedFiles.has(F)&&console.log(`[WARNING] Tried to emit file ${F} 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(F,O),this._finishedEmitContexts.set(F.toLowerCase(),this._emitContext),this._emitContext=new c}render(F){return this._names=this.assignNames(),this.emitSource(F),this._emitContext.isEmpty||this.finishFile(F),{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 Cs.Renderer=w,Cs}var vi={},Ip;function Z_(){if(Ip)return vi;Ip=1,Object.defineProperty(vi,"__esModule",{value:!0}),vi.declarationsForGraph=vi.cycleBreakerTypesForGraph=vi.DeclarationIR=void 0;const e=et(),i=Qe(),n=wg(),a=yn();let l=class{constructor(U,F){this.forwardedTypes=F,this.declarations=Array.from(U)}};vi.DeclarationIR=l;function d(w,U,F){const O=U.indexOf(w);if(O<0)return;if(F===void 0)return U[O];const L=U.slice(0,O+1).reverse().find(F);return L===void 0?(0,i.panic)("Found a cycle that cannot be broken"):L}function u(w,U,F){const O=new Set,M=new Set,L=Array.from(w.topLevels.values());function _(b,v){if(!O.has(b)){if(U(b))for(const h of b.getChildren())L.push(h);else{const h=d(b,v,F);if(h!==void 0){M.add(h);return}for(const m of b.getChildren())v.unshift(b),_(m,v),v.shift()}O.add(b)}}for(;;){const b=L.pop();if(b===void 0)break;const v=[];_(b,v),(0,i.assert)(v.length===0)}return M}vi.cycleBreakerTypesForGraph=u;function c(w,U,F,O){const M=U===void 0,L=[],_=new Set,b=new Set;function v(m,k){const B=m.stronglyConnectedComponents();function C(f){if(b.has(f))return;b.add(f);const E=(0,e.setFilter)(f,O);if(E.size===1){L.push({kind:"define",type:(0,i.defined)((0,e.iterableFirst)(E))});return}if(E.size===0&&f.size===1)return;if(E.size===0){L.push({kind:"define",type:(0,i.defined)((0,e.iterableFirst)(f))});return}if(U===void 0){for(const r of E)L.push({kind:"define",type:r});return}const S=(0,e.setFilter)(f,U);if(S.size===0)return(0,a.messageError)("IRNoForwardDeclarableTypeInCycle",{});for(const r of S)L.push({kind:"forward",type:r});(0,e.setUnionInto)(_,S);const P=(0,e.setSubtract)(f,S),y=new n.Graph(P,!0,r=>(0,e.setIntersect)(F(r),P));v(y);for(const r of S)L.push({kind:"define",type:r})}const A=B.findRoots();for(const f of A)B.dfsTraversal(f,M,C)}const h=w.makeGraph(!1,F);return v(h),new l(L,_)}return vi.declarationsForGraph=c,vi}var Nl={},ar={},ur={},Rp;function Hc(){if(Rp)return ur;Rp=1;var e=ur&&ur.__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 F(L){try{M(u.next(L))}catch(_){U(_)}}function O(L){try{M(u.throw(L))}catch(_){U(_)}}function M(L){L.done?w(L.value):c(L.value).then(F,O)}M((u=u.apply(a,l||[])).next())})};Object.defineProperty(ur,"__esModule",{value:!0}),ur.JSONSchemaStore=void 0;const i=Qe();let n=class{constructor(){this._schemas=new Map}add(l,d){(0,i.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 ur.JSONSchemaStore=n,ur}var Ol={},Mp;function Ba(){return Mp||(Mp=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 i=et(),n=At(),a=Qe(),l=yn();class d extends n.TypeAttributeKind{constructor(){super("accessorNames")}makeInferred(R){}}e.accessorNamesTypeAttributeKind=new d;function u(C,R){if(typeof C=="string")return[C,!1];const A=C.get(R);if(A!==void 0)return[A,!0];const f=C.get("*");if(f!==void 0)return[f,!1]}function c(C,R,A){const f=C.get(R);if(f!==void 0)return u(f,A)}e.lookupKey=c;function w(C,R){const A=e.accessorNamesTypeAttributeKind.tryGetInAttributes(C.getAttributes()),f=C.getProperties();return A===void 0?(0,i.mapMap)(f,E=>{}):(0,i.mapMap)(f,(E,S)=>c(A,S,R))}e.objectPropertyNames=w;function U(C,R){const A=e.accessorNamesTypeAttributeKind.tryGetInAttributes(C.getAttributes());return A===void 0?(0,i.mapMap)(C.cases.entries(),f=>{}):(0,i.mapMap)(C.cases.entries(),f=>c(A,f,R))}e.enumCaseNames=U;function F(C,R){const A=C.get(R);return A===void 0?[void 0,!1]:A}e.getAccessorName=F;class O extends n.TypeAttributeKind{constructor(){super("unionIdentifier")}combine(R){return(0,i.setUnionManyInto)(new Set,R)}makeInferred(R){return new Set}}e.unionIdentifierTypeAttributeKind=new O;let M=0;function L(){const C=e.unionIdentifierTypeAttributeKind.makeAttributes(new Set([M]));return M+=1,C}e.makeUnionIdentifierAttribute=L;class _ extends n.TypeAttributeKind{constructor(){super("unionMemberNames")}combine(R){const A=new Map;for(const f of R)(0,i.mapMergeInto)(A,f);return A}}e.unionMemberNamesTypeAttributeKind=new _;function b(C,R){const A=(0,a.defined)(e.unionIdentifierTypeAttributeKind.tryGetInAttributes(C)),f=(0,i.mapFromIterable)(A,E=>R);return e.unionMemberNamesTypeAttributeKind.makeAttributes(f)}e.makeUnionMemberNamesAttribute=b;function v(C,R,A){const f=e.unionIdentifierTypeAttributeKind.tryGetInAttributes(C.getAttributes());if(f===void 0)return[void 0,!1];const E=e.unionMemberNamesTypeAttributeKind.tryGetInAttributes(R.getAttributes());if(E===void 0)return[void 0,!1];const S=new Set,P=new Set;for(const p of f){const g=E.get(p);if(g===void 0)continue;const I=u(g,A);if(I===void 0)continue;const[x,q]=I;q?P.add(x):S.add(x)}let y,r,s=(0,i.iterableFirst)(P);if(s!==void 0)y=P.size,r=!0;else{if(s=(0,i.iterableFirst)(S),s===void 0)return[void 0,!1];y=S.size,r=!1}return(0,l.messageAssert)(y===1,"SchemaMoreThanOneUnionMemberName",{names:Array.from(S)}),[s,r]}e.unionMemberName=v;function h(C){return typeof C=="string"?!0:(0,a.isStringMap)(C,R=>typeof R=="string")}function m(C){return typeof C=="string"?C:(0,i.mapFromObject)(C)}function k(C){const R=(0,a.checkStringMap)(C,h);return(0,i.mapMap)((0,i.mapFromObject)(R),m)}e.makeAccessorNames=k;function B(C,R,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 S=L(),P=(0,a.checkArray)(E,h);(0,l.messageAssert)(f.length===P.length,"SchemaWrongAccessorEntryArrayLength",{operation:"oneOf",ref:R.push("oneOf")});const y=P.map(r=>b(S,m(r)));return{forUnion:S,forCases:y}}}}e.accessorNamesAttributeProducer=B}(Ol)),Ol}var Cl={},Bp;function _g(){return Bp||(Bp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.enumValuesAttributeProducer=e.enumCaseValues=e.enumValuesTypeAttributeKind=void 0;const i=et(),n=Ba(),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,i.mapMap)(c.cases.entries(),F=>{}):(0,i.mapMap)(c.cases.entries(),F=>(0,n.lookupKey)(U,F,w))}e.enumCaseValues=d;function u(c,w,U){if(typeof c!="object")return;const F=c["qt-enum-values"];if(F!==void 0)return{forType:e.enumValuesTypeAttributeKind.makeAttributes((0,n.makeAccessorNames)(F))}}e.enumValuesAttributeProducer=u}(Cl)),Cl}var El={},Dp;function Xr(){return Dp||(Dp=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 i=At(),n=Qe(),a=yn();function l(_){const[b,v]=_;if(typeof b=="number"&&typeof v=="number"&&b>v)return(0,a.messageError)("MiscInvalidMinMaxConstraint",{min:b,max:v});if(!(b===void 0&&v===void 0))return _}class d extends i.TypeAttributeKind{constructor(b,v,h,m){super(b),this._typeKinds=v,this._minSchemaProperty=h,this._maxSchemaProperty=m}get inIdentity(){return!0}combine(b){(0,n.assert)(b.length>0);let[v,h]=b[0];for(let m=1;m<b.length;m++){const[k,B]=b[m];typeof v=="number"&&typeof k=="number"?v=Math.min(v,k):v=void 0,typeof h=="number"&&typeof B=="number"?h=Math.max(h,B):h=void 0}return l([v,h])}intersect(b){(0,n.assert)(b.length>0);let[v,h]=b[0];for(let m=1;m<b.length;m++){const[k,B]=b[m];typeof v=="number"&&typeof k=="number"?v=Math.max(v,k):v===void 0&&(v=k),typeof h=="number"&&typeof B=="number"?h=Math.min(h,B):h===void 0&&(h=B)}return l([v,h])}makeInferred(b){}addToSchema(b,v,h){if(this._typeKinds.has(v.kind))return;const[m,k]=h;m!==void 0&&(b[this._minSchemaProperty]=m),k!==void 0&&(b[this._maxSchemaProperty]=k)}stringify([b,v]){return`${b}-${v}`}}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(_,b,v){if(typeof _!="object")return;let h,m;if(typeof _[b]=="number"&&(h=_[b]),typeof _[v]=="number"&&(m=_[v]),!(h===void 0&&m===void 0))return[h,m]}function c(_,b,v){if(!v.has("number")&&!v.has("integer"))return;const h=u(_,"minimum","maximum");if(h!==void 0)return{forNumber:e.minMaxTypeAttributeKind.makeAttributes(h)}}e.minMaxAttributeProducer=c;function w(_,b,v){if(!v.has("string"))return;const h=u(_,"minLength","maxLength");if(h!==void 0)return{forString:e.minMaxLengthTypeAttributeKind.makeAttributes(h)}}e.minMaxLengthAttributeProducer=w;function U(_){return e.minMaxTypeAttributeKind.tryGetInAttributes(_.getAttributes())}e.minMaxValueForType=U;function F(_){return e.minMaxLengthTypeAttributeKind.tryGetInAttributes(_.getAttributes())}e.minMaxLengthForType=F;class O extends i.TypeAttributeKind{constructor(){super("pattern")}get inIdentity(){return!0}combine(b){return(0,n.assert)(b.length>0),b.map(v=>`(${v})`).join("|")}intersect(b){}makeInferred(b){}addToSchema(b,v,h){v.kind==="string"&&(b.pattern=h)}}e.PatternTypeAttributeKind=O,e.patternTypeAttributeKind=new O;function M(_,b,v){if(typeof _!="object"||!v.has("string"))return;const h=_.pattern;if(typeof h=="string")return{forString:e.patternTypeAttributeKind.makeAttributes(h)}}e.patternAttributeProducer=M;function L(_){return e.patternTypeAttributeKind.tryGetInAttributes(_.getAttributes())}e.patternForType=L}(El)),El}var jp;function kc(){return jp||(jp=1,function(e){var i=ar&&ar.__awaiter||function(se,ne,me,ge){function Ae(pe){return pe instanceof me?pe:new me(function(le){le(pe)})}return new(me||(me=Promise))(function(pe,le){function ye(z){try{Y(ge.next(z))}catch(V){le(V)}}function de(z){try{Y(ge.throw(z))}catch(V){le(V)}}function Y(z){z.done?pe(z.value):Ae(z.value).then(ye,de)}Y((ge=ge.apply(se,ne||[])).next())})},n=ar&&ar.__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(Lg()),l=et(),d=mt(),u=Qe(),c=Hi(),w=Hi(),U=At(),F=Hc(),O=yn(),M=Pi(),L=Da(),_=Ba(),b=_g(),v=Xr(),h=Xr(),m=Xr(),k=Gc();var B;(function(se){se[se.Root=0]="Root",se[se.KeyOrIndex=1]="KeyOrIndex",se[se.Type=2]="Type",se[se.Object=3]="Object"})(B=e.PathElementKind||(e.PathElementKind={}));function C(se){if(se.kind===B.KeyOrIndex)return se.key}function R(se,ne){if(se.kind!==ne.kind)return!1;switch(se.kind){case B.Type:return se.index===ne.index;case B.KeyOrIndex:return se.key===ne.key;default:return!0}}function A(se,ne){const me=typeof se=="function"?se():se instanceof y?se:se.canonicalRef;return Object.assign({ref:me},ne===void 0?{}:ne)}function f(se,ne){return Array.isArray(se)?(0,O.messageError)("SchemaArrayIsInvalidSchema",A(ne)):se===null?(0,O.messageError)("SchemaNullIsInvalidSchema",A(ne)):typeof se!="object"?(0,O.messageError)("SchemaInvalidJSONSchemaType",A(ne,{type:typeof se})):se}function E(se,ne){return typeof se=="boolean"?se:f(se,ne)}const S=new RegExp("^[0-9]+$");function P(se){return typeof se=="string"&&(se=new a.default(se)),new a.default(a.default.decode(se.clone().normalize().toString()))}class y{static root(ne){const me=(0,l.definedMap)(ne,ge=>new a.default(ge));return new y(me,[])}static parsePath(ne){const me=[];if(ne.startsWith("/")&&(me.push({kind:B.Root}),ne=ne.slice(1)),ne!==""){const ge=ne.split("/");for(let Ae=0;Ae<ge.length;Ae++)me.push({kind:B.KeyOrIndex,key:ge[Ae]})}return me}static parseURI(ne,me=!1){me||(ne=ne.clone());let ge=ne.fragment();ne.fragment(""),(ne.host()!==""||ne.filename()!=="")&&ge===""&&(ge="/");const Ae=y.parsePath(ge);return new y(ne,Ae)}static parse(ne){return y.parseURI(new a.default(ne),!0)}constructor(ne,me){this.path=me,ne!==void 0?((0,u.assert)(ne.fragment()==="",`Ref URI with fragment is not allowed: ${ne.toString()}`),this.addressURI=P(ne)):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===B.Root}pushElement(ne){const me=Array.from(this.path);return me.push(ne),new y(this.addressURI,me)}push(...ne){let me=this;for(const ge of ne)me=me.pushElement({kind:B.KeyOrIndex,key:ge});return me}pushObject(){return this.pushElement({kind:B.Object})}pushType(ne){return this.pushElement({kind:B.Type,index:ne})}resolveAgainst(ne){let me=this.addressURI;return ne!==void 0&&ne.addressURI!==void 0&&(me=me===void 0?ne.addressURI:me.absoluteTo(ne.addressURI)),new y(me,this.path)}get name(){const ne=Array.from(this.path);for(;;){const me=ne.pop();if(me===void 0||me.kind===B.Root){let ge=this.addressURI!==void 0?this.addressURI.filename():"";const Ae=this.addressURI!==void 0?this.addressURI.suffix():"";return ge.length>Ae.length+1&&(ge=ge.slice(0,ge.length-Ae.length-1)),ge===""?"Something":ge}switch(me.kind){case B.KeyOrIndex:if(S.test(me.key))return me.key;break;case B.Type:case B.Object:return(0,u.panic)("We shouldn't try to get the name of Type or Object refs");default:return(0,u.assertNever)(me)}}}get definitionName(){const ne=(0,l.arrayGetFromEnd)(this.path,2);if(ne!==void 0&&C(ne)==="definitions")return C((0,u.defined)((0,l.arrayLast)(this.path)))}toString(){function ne(ge){switch(ge.kind){case B.Root:return"";case B.Type:return`type/${ge.index.toString()}`;case B.Object:return"object";case B.KeyOrIndex:return ge.key;default:return(0,u.assertNever)(ge)}}return(this.addressURI===void 0?"":this.addressURI.toString())+"#"+this.path.map(ne).join("/")}lookup(ne,me,ge){const Ae=()=>new y(this.addressURI,me),pe=me[0];if(pe===void 0)return E(ne,Ae);const le=me.slice(1);switch(pe.kind){case B.Root:return this.lookup(ge,le,ge);case B.KeyOrIndex:const ye=pe.key;if(Array.isArray(ne)){if(!/^\d+$/.test(ye))return(0,O.messageError)("SchemaCannotIndexArrayWithNonNumber",A(Ae,{actual:ye}));const de=parseInt(pe.key,10);return de>=ne.length?(0,O.messageError)("SchemaIndexNotInArray",A(Ae,{index:de})):this.lookup(ne[de],le,ge)}else return(0,l.hasOwnProperty)(ne,ye)?this.lookup(f(ne,Ae)[pe.key],le,ge):(0,O.messageError)("SchemaKeyNotInObject",A(Ae,{key:ye}));case B.Type:return(0,u.panic)('Cannot look up path that indexes "type"');case B.Object:return(0,u.panic)('Cannot look up path that indexes "object"');default:return(0,u.assertNever)(pe)}}lookupRef(ne){return this.lookup(ne,this.path,ne)}equals(ne){if(!(ne instanceof y))return!1;if(this.addressURI!==void 0&&ne.addressURI!==void 0){if(!this.addressURI.equals(ne.addressURI))return!1}else if(this.addressURI===void 0!=(ne.addressURI===void 0))return!1;const me=this.path.length;if(me!==ne.path.length)return!1;for(let ge=0;ge<me;ge++)if(!R(this.path[ge],ne.path[ge]))return!1;return!0}hashCode(){let ne=(0,l.hashCodeOf)((0,l.definedMap)(this.addressURI,me=>me.toString()));for(const me of this.path)switch(ne=(0,l.addHashCode)(ne,me.kind),me.kind){case B.Type:ne=(0,l.addHashCode)(ne,me.index);break;case B.KeyOrIndex:ne=(0,l.addHashCode)(ne,(0,l.hashString)(me.key));break}return ne}}e.Ref=y;class r{constructor(ne,me,ge=!1){this.haveID=ge,this.canonicalRef=ne,this.virtualRef=me!==void 0?me:ne}updateWithID(ne){if(typeof ne!="string")return this;const me=y.parse(ne),ge=this.haveID?me.resolveAgainst(this.virtualRef):me;return this.haveID||(0,O.messageAssert)(ge.hasAddress,"SchemaIDMustHaveAddress",A(this,{id:ne})),new r(this.canonicalRef,ge,!0)}push(...ne){return new r(this.canonicalRef.push(...ne),this.virtualRef.push(...ne),this.haveID)}pushObject(){return new r(this.canonicalRef.pushObject(),this.virtualRef.pushObject(),this.haveID)}pushType(ne){return new r(this.canonicalRef.pushType(ne),this.virtualRef.pushType(ne),this.haveID)}toString(){return`${this.virtualRef.toString()} (${this.canonicalRef.toString()})`}}class s{constructor(ne){this._ctx=ne,this._map=new l.EqualityMap,this._schemaAddressesAdded=new Set}addIDs(ne,me){if(ne===null)return;if(Array.isArray(ne)){for(let pe=0;pe<ne.length;pe++)this.addIDs(ne[pe],me.push(pe.toString()));return}if(typeof ne!="object")return;const ge=me,Ae=ne.$id;typeof Ae=="string"&&(me=me.updateWithID(Ae)),me.haveID&&(this._ctx.debugPrintSchemaResolving&&console.log(`adding mapping ${me.toString()}`),this._map.set(me.virtualRef,ge));for(const pe of Object.getOwnPropertyNames(ne))this.addIDs(ne[pe],me.push(pe))}addSchema(ne,me){return this._schemaAddressesAdded.has(me)?!1:(this.addIDs(ne,new r(y.root(me),y.root(void 0))),this._schemaAddressesAdded.add(me),!0)}canonize(ne,me){const ge=me.resolveAgainst(ne.virtualRef),Ae=this._map.get(ge);if(Ae!==void 0)return Ae;const pe=ge.addressURI===void 0?new y(ne.canonicalRef.addressURI,ge.path):ge;return new r(pe,new y(void 0,ge.path))}}function p(se,ne){let me;if(typeof se=="string")me=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(ne,{element:le}));pe.push(le)}me=new Set(pe)}else return(0,O.messageError)("SchemaTypeMustBeStringOrStringArray",A(ne,{actual:se}));(0,O.messageAssert)(me.size>0,"SchemaNoTypeSpecified",A(ne));const ge=["null","boolean","object","array","number","string","integer"],Ae=(0,l.iterableFind)(me,pe=>ge.indexOf(pe)<0);return Ae!==void 0?(0,O.messageError)("SchemaInvalidType",A(ne,{type:Ae})):me}function g(se,ne){if(!Array.isArray(se))return(0,O.messageError)("SchemaRequiredMustBeStringOrStringArray",A(ne,{actual:se}));for(const me of se)if(typeof me!="string")return(0,O.messageError)("SchemaRequiredElementMustBeString",A(ne,{element:me}));return se}e.schemaTypeDict={null:!0,boolean:!0,string:!0,integer:!0,number:!0,array:!0,object:!0};const I=Object.getOwnPropertyNames(e.schemaTypeDict);function x(se){const ne=(0,l.iterableFind)(d.transformedStringTypeTargetTypeKindsMap,([me,{jsonSchema:ge}])=>ge===se);if(ne!==void 0)return ne[0]}function q(se,ne){return se===void 0?(0,O.messageError)("SchemaFetchErrorTopLevel",{address:ne}):(0,O.messageError)("SchemaFetchError",{address:ne,base:se.canonicalRef})}class T{constructor(ne,me,ge){this._ctx=ne,this._store=me,this._canonizer=ge}tryResolveVirtualRef(ne,me,ge){return i(this,void 0,void 0,function*(){let Ae=!1;for(;;){const pe=this._canonizer.canonize(ne,ge),le=pe.canonicalRef;(0,u.assert)(le.hasAddress,"Canonical ref can't be resolved without an address");const ye=le.address;let de=le.addressURI===void 0?void 0:yield this._store.get(ye,this._ctx.debugPrintSchemaResolving);if(de===void 0)return[void 0,pe];if(this._canonizer.addSchema(de,ye))(0,u.assert)(!Ae,"We can't add a schema twice"),Ae=!0;else{let Y=this._canonizer.canonize(me,ge);return ne!==void 0&&(Y=new r(new y(pe.canonicalRef.addressURI,Y.canonicalRef.path),Y.virtualRef,Y.haveID)),[Y.canonicalRef.lookupRef(de),Y]}}})}resolveVirtualRef(ne,me){return i(this,void 0,void 0,function*(){this._ctx.debugPrintSchemaResolving&&console.log(`resolving ${me.toString()} relative to ${ne.toString()}`);let ge=yield this.tryResolveVirtualRef(ne,ne,me),Ae=ge[0];if(Ae!==void 0)return this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${ge[1].toString()}`),[Ae,ge[1]];const pe=new r(ne.canonicalRef,new y(ne.canonicalRef.addressURI,ne.virtualRef.path),ne.haveID);return ge=yield this.tryResolveVirtualRef(pe,ne,me),Ae=ge[0],Ae!==void 0?(this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${ge[1].toString()}`),[Ae,ge[1]]):q(ne,me.address)})}resolveTopLevelRef(ne){return i(this,void 0,void 0,function*(){return yield this.resolveVirtualRef(new r(new y(ne.addressURI,[])),new y(void 0,ne.path))})}}function D(se,ne,me,ge){return i(this,void 0,void 0,function*(){let Ae=new l.EqualityMap;function pe(Y,z){const V=Ae.get(Y.canonicalRef);V!==void 0&&(0,u.assert)(V===z,"Trying to set path again to different type"),Ae.set(Y.canonicalRef,z)}function le(Y,z,V,ue,Te,Ie=Ce=>Ce.toLowerCase()){return i(this,void 0,void 0,function*(){const Ce=new Set(ue),We=(0,l.mapSortBy)((0,l.mapFromObject)(V),(K,j)=>Ie(j)),Ge=yield(0,l.mapMapSync)(We,(K,j)=>i(this,void 0,void 0,function*(){const G=Y.push("properties",j),ce=yield de(E(K,G.canonicalRef),G,(0,w.makeNamesTypeAttributes)(j,!0)),$=!Ce.has(j);return ne.makeClassProperty(ce,$)}));let ee;if(Te===void 0||Te===!0)ee=ne.getPrimitiveType("any");else if(Te===!1)ee=void 0;else{const K=Y.push("additionalProperties");ee=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=ee;if(K===void 0)return(0,O.messageError)("SchemaAdditionalTypesForbidRequired",A(Y));const j=(0,l.mapFromIterable)(te,G=>ne.makeClassProperty(K,!1));(0,l.mapMergeInto)(Ge,j)}return ne.getUniqueObjectType(z,Ge,ee)})}function ye(Y,z,V){return i(this,void 0,void 0,function*(){const ue=Array.isArray(Y.enum)?Y.enum:void 0,Te=(0,l.definedMap)(Y.type,ze=>p(ze,z));function Ie(ze){if(Te!==void 0&&!Te.has(ze))return!1;if(ue!==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 ue.find(H)!==void 0}return!0}const Ce=(0,l.setFilter)(I,Ie);let We;function Ge(ze,H){let ke;if(ze===void 0&&We!==void 0)ke=We;else{ke=[];for(const Ne of ge){const ae=Ne(Y,z.canonicalRef,Ce,ze);ae!==void 0&&ke.push(ae)}ze===void 0&&(We=ke)}for(const Ne of ke)H(Ne)}function ee(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 Y.oneOf===void 0&&(ze=(0,U.combineTypeAttributes)("union",ze,ee(({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=Y.title;return typeof Ne!="string"&&(Ne=z.canonicalRef.definitionName),typeof Ne=="string"?c.TypeNames.make(new Set([Ne]),new Set,Y.$ref!==void 0):ke.makeInferred()})}V=te(V);const K=(0,U.makeTypeAttributesInferred)(V);function j(ze){const H=x(Y.format);return H===void 0?ne.getStringType(ze,M.StringTypes.unrestricted):ne.getPrimitiveType(H,ze)}function G(){return i(this,void 0,void 0,function*(){const ze=(0,w.singularizeTypeNames)(V),H=Y.items;let ke;if(Array.isArray(H)){const Ne=z.push("items"),ae=yield(0,l.arrayMapSync)(H,(Le,Fe)=>i(this,void 0,void 0,function*(){const He=Ne.push(Fe.toString());return yield de(E(Le,He.canonicalRef),He,ze)}));ke=ne.getUnionType(U.emptyTypeAttributes,new Set(ae))}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=ne.getPrimitiveType("any")}return ne.addAttributes(ke,ze),ne.getArrayType(U.emptyTypeAttributes,ke)})}function ce(){return i(this,void 0,void 0,function*(){let ze;Y.required===void 0||typeof Y.required=="boolean"?ze=[]:ze=Array.from(g(Y.required,z));let H;Y.properties===void 0?H={}:H=f(Y.properties,z.canonicalRef);for(const Fe of Object.getOwnPropertyNames(H))H[Fe].required===!0&&ze.indexOf(Fe)<0&&ze.push(Fe);let ke=Y.additionalProperties;ke===void 0&&typeof Y.patternProperties=="object"&&(0,l.hasOwnProperty)(Y.patternProperties,".*")&&(ke=Y.patternProperties[".*"]);const Ne=(0,U.combineTypeAttributes)("union",K,ee(({forObject:Fe})=>Fe)),ae=Y.quicktypePropertyOrder?Y.quicktypePropertyOrder:[];return yield le(z,Ne,H,ze,ke,Fe=>{const He=ae.indexOf(Fe);return He!==-1?He:Fe.toLowerCase()})})}function $(ze,H){return i(this,void 0,void 0,function*(){const ke=z.push(H);return Array.isArray(ze)?yield(0,l.arrayMapSync)(ze,(Ne,ae)=>i(this,void 0,void 0,function*(){const Le=ke.push(ae.toString());return yield de(E(Ne,Le.canonicalRef),Le,(0,U.makeTypeAttributesInferred)(V))})):(0,O.messageError)("SchemaSetOperationCasesIsNotArray",A(ke,{operation:H,cases:ze}))})}const be=ne.getUniqueIntersectionType(V,void 0);pe(z,be);function Se(ze,H){return i(this,void 0,void 0,function*(){const ke=yield $(ze,H);let Ne=(0,U.makeTypeAttributesInferred)(V);H==="oneOf"&&Ge(ze,({forType:Le,forUnion:Fe,forCases:He})=>{if(Le!==void 0&&ne.addAttributes(be,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++)ne.addAttributes(ke[qe],He[qe])}});const ae=ne.getUniqueUnionType(Ne,void 0);return ne.setSetOperationMembers(ae,new Set(ke)),ae})}const Be=ue===void 0&&(Te===void 0||Te.has("object")),we=ue===void 0&&(Te===void 0||Te.has("array")),Pe=Ce.has("string")&&ue!==void 0&&ue.find(ze=>typeof ze=="string")!==void 0,oe=Te!==void 0||Y.properties!==void 0||Y.additionalProperties!==void 0||Y.items!==void 0||Y.required!==void 0||ue!==void 0,Re=[];if(oe){const ze=[],H=ee(({forNumber:Ne})=>Ne);for(const[Ne,ae]of[["null","null"],["number","double"],["integer","integer"],["boolean","bool"]]){if(!Ce.has(Ne))continue;const Le=(0,d.isNumberTypeKind)(ae)?H:void 0;ze.push(ne.getPrimitiveType(ae,Le))}const ke=(0,U.combineTypeAttributes)("union",K,ee(({forString:Ne})=>Ne));if(Pe){const Ne=ue.filter(ae=>typeof ae=="string");ze.push(ne.getStringType(ke,M.StringTypes.fromCases(Ne)))}else Ce.has("string")&&ze.push(j(ke));we&&ze.push(yield G()),Be&&ze.push(yield ce()),Re.push(ne.getUniqueUnionType(K,new Set(ze)))}if(Y.$ref!==void 0){if(typeof Y.$ref!="string")return(0,O.messageError)("SchemaRefMustBeString",A(z,{actual:typeof Y.$ref}));const ze=y.parse(Y.$ref),[H,ke]=yield se.resolveVirtualRef(z,ze),Ne=(0,w.modifyTypeNames)(V,ae=>(0,u.defined)(ae).areInferred?c.TypeNames.make(new Set([ke.canonicalRef.name]),new Set,!0):ae);Re.push(yield de(H,ke,Ne))}return Y.allOf!==void 0&&Re.push(...yield $(Y.allOf,"allOf")),Y.oneOf!==void 0&&Re.push(yield Se(Y.oneOf,"oneOf")),Y.anyOf!==void 0&&Re.push(yield Se(Y.anyOf,"anyOf")),ne.setSetOperationMembers(be,new Set(Re)),be})}function de(Y,z,V){return i(this,void 0,void 0,function*(){const ue=Ae.get(z.canonicalRef);if(ue!==void 0)return ue;let Te;return typeof Y=="boolean"?((0,O.messageAssert)(Y===!0,"SchemaFalseNotSupported",A(z)),Te=ne.getPrimitiveType("any")):(z=z.updateWithID(Y.$id),Te=yield ye(Y,z,V)),pe(z,Te),Te})}for(const[Y,z]of me){const[V,ue]=yield se.resolveTopLevelRef(z),Te=yield de(V,ue,(0,w.makeNamesTypeAttributes)(Y,!1));ne.addTopLevel(Y,Te)}})}function W(se){const ne=se.toLowerCase(),me=[".json",".schema"];for(const ge of me)if(ne.endsWith(ge)){const Ae=se.slice(0,se.length-ge.length);if(Ae.length>0)return Ae}return se}function J(se){const ne=se.fragment();if(ne!==""){const ge=ne.split("/"),Ae=ge.length;if(ge[Ae-1]!=="")return W(ge[Ae-1]);if(Ae>1&&ge[Ae-2]!=="")return W(ge[Ae-2])}const me=se.filename();return me!==""?W(me):(0,O.messageError)("DriverCannotInferNameForSchema",{uri:se.toString()})}function X(se,ne,me){return i(this,void 0,void 0,function*(){const ge=ne.fragment();let Ae=ge.endsWith("/");Ae&&(ne=ne.clone().fragment(ge.slice(0,-1)));const pe=y.parseURI(ne);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),(ye,de)=>pe.push(de));{let ye;if(typeof le=="object"&&typeof le.title=="string")ye=le.title;else{const de=J(ne);ye=de!==void 0?de:me}return[ye,pe]}})}class Q extends F.JSONSchemaStore{constructor(ne,me){super(),this._inputs=ne,this._delegate=me}fetch(ne){return i(this,void 0,void 0,function*(){const me=this._inputs.get(ne);return me!==void 0?E((0,u.parseJSON)(me,"JSON Schema",ne),()=>y.root(ne)):this._delegate===void 0?(0,u.panic)(`Schema URI ${ne} requested, but no store given`):yield this._delegate.fetch(ne)})}}let re=class{constructor(ne,me=[],ge=[]){this._schemaStore=ne,this._additionalSchemaAddresses=ge,this.kind="schema",this.needSchemaProcessing=!0,this._schemaInputs=new Map,this._schemaSources=[],this._topLevels=new Map,this._needIR=!1,this._attributeProducers=[L.descriptionAttributeProducer,_.accessorNamesAttributeProducer,b.enumValuesAttributeProducer,k.uriSchemaAttributesProducer,v.minMaxAttributeProducer,h.minMaxLengthAttributeProducer,m.patternAttributeProducer].concat(me)}get needIR(){return this._needIR}addTopLevel(ne,me){this._topLevels.set(ne,me)}addTypes(ne,me){return i(this,void 0,void 0,function*(){if(this._schemaSources.length===0)return;let ge=this._schemaStore;if(this._schemaInputs.size===0){if(ge===void 0)return(0,u.panic)("Must have a schema store to process JSON Schema")}else ge=this._schemaStore=new Q(this._schemaInputs,ge);const Ae=ge,pe=new s(ne);for(const ye of this._additionalSchemaAddresses){const de=yield Ae.get(ye,ne.debugPrintSchemaResolving);if(de===void 0)return(0,O.messageError)("SchemaFetchErrorAdditional",{address:ye});pe.addSchema(de,ye)}const le=new T(ne,(0,u.defined)(this._schemaStore),pe);for(const[ye,de]of this._schemaSources){const Y=de.name,z=yield X(le,ye,Y);if(Array.isArray(z)){let V;this._schemaSources.length===1?V=Y:V=z[0],this.addTopLevel(V,z[1])}else for(const[V,ue]of z)this.addTopLevel(V,ue)}yield D(le,me,this._topLevels,this._attributeProducers)})}addTypesSync(){return(0,u.panic)("addTypesSync not supported in JSONSchemaInput")}addSource(ne){return i(this,void 0,void 0,function*(){return this.addSourceSync(ne)})}addSourceSync(ne){const{name:me,uris:ge,schema:Ae,isConverted:pe}=ne;pe!==!0&&(this._needIR=!0);let le;if(ge===void 0?le=[new a.default(me)]:le=ge.map(ye=>{const de=P(ye);return de.clone().hash("").toString()===""&&de.path(me),de}),Ae===void 0)(0,u.assert)(ge!==void 0,"URIs must be given if schema source is not specified");else for(let ye=0;ye<le.length;ye++){const de=le[ye],Y=de.clone().hash(""),z=Y.path();let V=0;do V>0&&Y.path(`${z}-${V}`),V++;while(this._schemaInputs.has(Y.toString()));this._schemaInputs.set(Y.toString(),Ae),le[ye]=Y.hash(de.hash())}for(const ye of le)this._schemaSources.push([ye,ne])}singleStringSchemaSource(){if(!this._schemaSources.every(([me,{schema:ge}])=>typeof ge=="string"))return;const ne=new Set(this._schemaSources.map(([me,{schema:ge}])=>ge));if(ne.size===1)return(0,u.defined)((0,l.iterableFirst)(ne))}};e.JSONSchemaInput=re}(ar)),ar}var Up;function Da(){return Up||(Up=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.descriptionAttributeProducer=e.propertyDescriptionsTypeAttributeKind=e.descriptionTypeAttributeKind=e.addDescriptionToSchema=void 0;const i=et(),n=At(),a=kc();function l(U,F){F!==void 0&&(U.description=Array.from(F).join(`
|
|
180
|
+
`))}e.addDescriptionToSchema=l;class d extends n.TypeAttributeKind{constructor(){super("description")}combine(F){return(0,i.setUnionManyInto)(new Set,F)}makeInferred(F){}addToSchema(F,O,M){l(F,M)}stringify(F){let O=(0,i.iterableFirst)(F);if(O!==void 0)return O.length>8&&(O=`${O.slice(0,5)}...`),F.size>1&&(O=`${O}, ...`),O}}e.descriptionTypeAttributeKind=new d;class u extends n.TypeAttributeKind{constructor(){super("propertyDescriptions")}combine(F){const O=new Map;for(const M of F)(0,i.mapMergeWithInto)(O,(L,_)=>(0,i.setUnion)(L,_),M);return O}makeInferred(F){}stringify(F){if(F.size!==0)return`prop descs: ${F.size}`}}e.propertyDescriptionsTypeAttributeKind=new u;function c(U){return U.kind===a.PathElementKind.KeyOrIndex&&U.key==="properties"}function w(U,F,O){if(typeof U!="object")return;let M=n.emptyTypeAttributes,L=n.emptyTypeAttributes;const _=F.path.length;if(O.has("object")||(0,i.setSubtract)(O,["null"]).size>1||U.enum!==void 0||_<2||!c(F.path[_-2])){const b=U.description;typeof b=="string"&&(M=e.descriptionTypeAttributeKind.makeAttributes(new Set([b])))}if(O.has("object")&&typeof U.properties=="object"){const b=(0,i.mapFilterMap)((0,i.mapFromObject)(U.properties),v=>{if(typeof v=="object"){const h=v.description;if(typeof h=="string")return new Set([h])}});b.size>0&&(L=e.propertyDescriptionsTypeAttributeKind.makeAttributes(b))}return{forType:M,forObject:L}}e.descriptionAttributeProducer=w}(Nl)),Nl}var Al={},xp;function oo(){return xp||(xp=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 i=et(),n=mt(),a=At(),l=Qe(),d=ni();function u(r){const s=y(r);return r===s?r.kind:`${r.kind} (${s.kind})`}function c(r){return(0,i.definedMapWithDefault)(r,0,s=>s.getNumberOfNodes())}class w{constructor(s,p,g){this.kind=s,this.graph=p,this.sourceTypeRef=g}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,i.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,p,g,I){super(s,p,g),this.consumer=I}getChildren(){const s=super.getChildren();return this.consumer===void 0?s:(0,i.setUnionInto)(s,this.consumer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+c(this.consumer)}equals(s){return!super.equals(s)||!(s instanceof U)?!1:(0,i.areEqual)(this.consumer,s.consumer)}hashCode(){const s=super.hashCode();return(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.consumer))}debugPrintContinuations(s){this.consumer!==void 0&&this.consumer.debugPrint(s)}}e.ProducerTransformer=U;class F extends w{constructor(s,p,g,I){super(s,p,g),this.transformer=I}getChildren(){return(0,i.setUnionInto)(super.getChildren(),this.transformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.transformer.getNumberOfNodes()}equals(s){return!super.equals(s)||!(s instanceof F)?!1:this.transformer.equals(s.transformer)}hashCode(){const s=super.hashCode();return(0,i.addHashCode)(s,this.transformer.hashCode())}debugPrintContinuations(s){this.transformer.debugPrint(s)}}e.MatchTransformer=F;class O extends U{constructor(s,p,g){super("decode",s,p,g)}get canFail(){return!1}reverse(s,p){return p!==void 0?(0,l.panic)("Reversing a decoding transformer cannot have a continuation"):this.consumer===void 0?new M(this.graph,s):this.consumer.reverse(s,new M(this.graph,this.consumer.sourceTypeRef))}reconstitute(s){return new O(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof O:!1}}e.DecodingTransformer=O;class M extends w{constructor(s,p){super("encode",s,p)}get canFail(){return!1}reverse(s,p){return(0,l.panic)("Can't reverse encoding transformer")}reconstitute(s){return new M(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef))}equals(s){return!(!super.equals(s)||!(s instanceof M))}}e.EncodingTransformer=M;class L extends U{constructor(s,p,g,I,x){super("decode-array",s,p,g),this._itemTargetTypeRef=I,this.itemTransformer=x}getChildren(){const s=super.getChildren();return s.add(this.itemTargetType),(0,i.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,p){if(p!==void 0)return(0,l.panic)("Reversing a decoding transformer cannot have a continuation");const g=this.itemTransformer.reverse(this._itemTargetTypeRef,void 0);return this.consumer===void 0?new _(this.graph,s,this.itemTransformer.sourceTypeRef,g):this.consumer.reverse(s,new _(this.graph,this.consumer.sourceTypeRef,this.itemTransformer.sourceTypeRef,g))}reconstitute(s){return new L(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.reconstitute(s)),s.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(s))}hashCode(){let s=super.hashCode();return s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this._itemTargetTypeRef)),s=(0,i.addHashCode)(s,this.itemTransformer.hashCode()),s}equals(s){return!super.equals(s)||!(s instanceof L)||!(0,i.areEqual)(this._itemTargetTypeRef,s._itemTargetTypeRef)?!1:this.itemTransformer.equals(s.itemTransformer)}debugPrintContinuations(s){this.itemTransformer.debugPrint(s),super.debugPrintContinuations(s)}}e.ArrayDecodingTransformer=L;class _ extends w{constructor(s,p,g,I){super("encode-array",s,p),this._itemTargetTypeRef=g,this.itemTransformer=I}getChildren(){const s=super.getChildren();return s.add(this.itemTargetType),(0,i.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,p){return(0,l.panic)("Can't reverse array encoding transformer")}reconstitute(s){return new _(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),s.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(s))}hashCode(){let s=super.hashCode();return s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this._itemTargetTypeRef)),(0,i.addHashCode)(s,this.itemTransformer.hashCode())}equals(s){return!super.equals(s)||!(s instanceof _)||!(0,i.areEqual)(this._itemTargetTypeRef,s._itemTargetTypeRef)?!1:this.itemTransformer.equals(s.itemTransformer)}debugPrintContinuations(s){this.itemTransformer.debugPrint(s),super.debugPrintContinuations(s)}}e.ArrayEncodingTransformer=_;class b extends w{constructor(s,p,g){super("choice",s,p),this.transformers=g,(0,l.assert)(g.length>0,"Choice must have at least one transformer")}getChildren(){let s=super.getChildren();for(const p of this.transformers)(0,i.setUnionInto)(s,p.getChildren());return s}getNumberOfNodes(){let s=0;for(const p of this.transformers)s+=p.getNumberOfNodes();return super.getNumberOfNodes()+s}get canFail(){return this.transformers.some(s=>s.canFail)}reverse(s,p){const g=this.transformers.map(I=>I.reverse(s,p));if(g.every(I=>I instanceof h)){const I=g,x=I[0];if(I.every(q=>x.memberType.equals(q.memberType))){const q=I.map(T=>T.transformer);return new h(this.graph,s,new b(this.graph,q[0].sourceTypeRef,q),x.memberTypeRef)}}return new b(this.graph,s,g)}reconstitute(s){return new b(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),this.transformers.map(p=>p.reconstitute(s)))}equals(s){return!super.equals(s)||!(s instanceof b)?!1:(0,i.areEqual)(this.transformers,s.transformers)}hashCode(){const s=super.hashCode();return(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.transformers))}debugPrintContinuations(s){for(const p of this.transformers)p.debugPrint(s)}}e.ChoiceTransformer=b;class v extends w{constructor(s,p,g,I,x,q,T,D,W){super("decoding-choice",s,p),this.nullTransformer=g,this.integerTransformer=I,this.doubleTransformer=x,this.boolTransformer=q,this.stringTransformer=T,this.arrayTransformer=D,this.objectTransformer=W}get transformers(){const s=[];function p(g){g!==void 0&&s.push(g)}return p(this.nullTransformer),p(this.integerTransformer),p(this.doubleTransformer),p(this.boolTransformer),p(this.stringTransformer),p(this.arrayTransformer),p(this.objectTransformer),s}getChildren(){let s=super.getChildren();for(const p of this.transformers)(0,i.setUnionInto)(s,p.getChildren());return s}getNumberOfNodes(){let s=super.getNumberOfNodes();for(const p of this.transformers)s+=c(p);return s}get canFail(){return!1}reverse(s,p){(0,l.assert)(p===void 0,"Reversing a decoding transformer can't have a target transformer");let g=new Map,I=new Map;function x(J){if(J instanceof h){const X=J.memberType;let Q=I.get(X);Q===void 0&&(Q=[],I.set(X,Q)),Q.push(J)}else{const X=J.sourceType.kind;let Q=g.get(X);Q===void 0&&(Q=[],g.set(X,Q)),Q.push(J)}}function q(J){const X=J.reverse(s,void 0);let Q=[];X instanceof b?Q=X.transformers:Q=[X];for(const re of Q)x(re)}function T(J){(0,l.assert)(J.length>0,"Must have at least one transformer");const X=J.filter(re=>re instanceof h?!re.transformer.canFail:!re.canFail);return X.length===0?J:[(0,i.arraySortByInto)(X.map(re=>[re.getNumberOfNodes(),re]),([re,se])=>re)[0][1]]}this.transformers.forEach(q);const D=Array.from(g.values()).concat(Array.from(I.values())),W=[].concat(...D.map(T));return W.length===1?W[0]:new b(this.graph,s,W)}reconstitute(s){function p(g){if(g!==void 0)return g.reconstitute(s)}return new v(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),p(this.nullTransformer),p(this.integerTransformer),p(this.doubleTransformer),p(this.boolTransformer),p(this.stringTransformer),p(this.arrayTransformer),p(this.objectTransformer))}equals(s){return!(!super.equals(s)||!(s instanceof v)||!(0,i.areEqual)(this.nullTransformer,s.nullTransformer)||!(0,i.areEqual)(this.integerTransformer,s.integerTransformer)||!(0,i.areEqual)(this.doubleTransformer,s.doubleTransformer)||!(0,i.areEqual)(this.boolTransformer,s.boolTransformer)||!(0,i.areEqual)(this.stringTransformer,s.stringTransformer)||!(0,i.areEqual)(this.arrayTransformer,s.arrayTransformer)||!(0,i.areEqual)(this.objectTransformer,s.objectTransformer))}hashCode(){let s=super.hashCode();return s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.nullTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.integerTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.doubleTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.boolTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.stringTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.arrayTransformer)),s=(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.objectTransformer)),s}debugPrintContinuations(s){for(const p of this.transformers)p.debugPrint(s)}}e.DecodingChoiceTransformer=v;class h extends F{constructor(s,p,g,I){super("union-member-match",s,p,g),this.memberTypeRef=I}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,p){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,i.addHashCode)(s,(0,i.hashCodeOf)(this.memberTypeRef))}debugDescription(){return`${super.debugDescription()} - member: ${u(this.memberType)}`}}e.UnionMemberMatchTransformer=h;class m extends F{constructor(s,p,g,I){super("string-match",s,p,g),this.stringCase=I}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,p){return this.transformer.reverse(s,new B(this.graph,this.transformer.sourceTypeRef,p,this.stringCase))}reconstitute(s){return new m(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(s),this.stringCase)}equals(s){return!super.equals(s)||!(s instanceof m)?!1:this.stringCase!==s.stringCase}hashCode(){const s=super.hashCode();return(0,i.addHashCode)(s,(0,i.hashString)(this.stringCase))}debugDescription(){return`${super.debugDescription()} - case: ${this.stringCase}`}}e.StringMatchTransformer=m;class k extends w{constructor(s,p){super("union-instantiation",s,p)}get canFail(){return!1}reverse(s,p){return p===void 0?(0,l.panic)("Union instantiation transformer reverse must have a continuation"):new h(this.graph,s,p,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 B extends U{constructor(s,p,g,I){super("string-producer",s,p,g),this.result=I}get canFail(){return!1}reverse(s,p){return p===void 0?(0,l.panic)("Reversing a string producer transformer must have a continuation"):this.consumer===void 0?new m(this.graph,s,p,this.result):this.consumer.reverse(s,new m(this.graph,this.consumer.sourceTypeRef,p,this.result))}reconstitute(s){return new B(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.reconstitute(s)),this.result)}equals(s){return!super.equals(s)||!(s instanceof B)?!1:this.result===s.result}hashCode(){const s=super.hashCode();return(0,i.addHashCode)(s,(0,i.hashCodeOf)(this.consumer))}debugDescription(){return`${super.debugDescription()} - result: ${this.result}`}}e.StringProducerTransformer=B;class C extends U{constructor(s,p,g){super("parse-string",s,p,g)}get canFail(){return!0}reverse(s,p){return this.consumer===void 0?new R(this.graph,s,p):this.consumer.reverse(s,new R(this.graph,this.consumer.sourceTypeRef,p))}reconstitute(s){return new C(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof C:!1}}e.ParseStringTransformer=C;class R extends U{constructor(s,p,g){super("stringify",s,p,g)}get canFail(){return!1}reverse(s,p){return this.consumer===void 0?new C(this.graph,s,p):this.consumer.reverse(s,new C(this.graph,this.consumer.sourceTypeRef,p))}reconstitute(s){return new R(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.reconstitute(s)))}equals(s){return super.equals(s)?s instanceof R:!1}}e.StringifyTransformer=R;class A extends U{constructor(s,p,g,I,x){super("min-max-length-check",s,p,g),this.minLength=I,this.maxLength=x}get canFail(){return!0}reverse(s,p){return this.consumer===void 0?new A(this.graph,s,p,this.minLength,this.maxLength):this.consumer.reverse(s,new A(this.graph,this.consumer.sourceTypeRef,p,this.minLength,this.maxLength))}reconstitute(s){return new A(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.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,p,g,I,x){super("min-max-value-check",s,p,g),this.minimum=I,this.maximum=x}get canFail(){return!0}reverse(s,p){return this.consumer===void 0?new f(this.graph,s,p,this.minimum,this.maximum):this.consumer.reverse(s,new f(this.graph,this.consumer.sourceTypeRef,p,this.minimum,this.maximum))}reconstitute(s){return new f(s.typeGraph,s.reconstituteTypeRef(this.sourceTypeRef),(0,i.definedMap)(this.consumer,p=>p.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,p,g){this._graph=s,this._targetTypeRef=p,this.transformer=g}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,i.hashCodeOf)(this._targetTypeRef);return s=(0,i.addHashCode)(s,this.transformer.hashCode()),s}debugPrint(){this.transformer.debugPrint(0),console.log(`-> ${u(this.targetType)}`)}}e.Transformation=E;class S extends a.TypeAttributeKind{constructor(){super("transformation")}appliesToTypeKind(s){return!0}get inIdentity(){return!0}children(s){return s.getChildren()}reconstitute(s,p){return p.reconstitute(s)}stringify(s){return"transformation"}}e.transformationTypeAttributeKind=new S;function P(r){return e.transformationTypeAttributeKind.tryGetInAttributes(r.getAttributes())}e.transformationForType=P;function y(r){for(;;){const s=P(r);if(s===void 0)return r;r=s.targetType}}e.followTargetType=y}(Al)),Al}var Fl={exports:{}},zp;function Q_(){if(zp)return Fl.exports;zp=1;var e=Fl.exports=function(i,n,a){typeof i=="object"&&(a=i,i=a.start,n=a.stop),typeof n=="object"&&(a=n,i=i||a.start,n=void 0),n||(n=i,i=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 F=0;F<U.length;F+=n-i)w.push(U.slice(F,F+n-i));else w.push(U);return w},[]);return c.reduce(function(w,U){if(U==="")return w;var F=U.replace(/\t/g," "),O=w.length-1;if(w[O].length+F.length>n)w[O]=w[O].replace(/\s+$/,""),F.split(/\n/).forEach(function(L){w.push(new Array(i+1).join(" ")+L.replace(/^\s+/,""))});else if(F.match(/\n/)){var M=F.split(/\n/);w[O]+=M.shift(),M.forEach(function(L){w.push(new Array(i+1).join(" ")+L.replace(/^\s+/,""))})}else w[O]+=F;return w},[new Array(i+1).join(" ")]).join(`
|
|
181
|
+
`)}};return e.soft=e,e.hard=function(i,n){return e(i,n,{mode:"hard"})},Fl.exports}var Wp;function Wt(){return Wp||(Wp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConvenienceRenderer=e.inferredNameOrder=e.topLevelNameOrder=void 0;const i=et(),n=mt(),a=pt(),l=Ft(),d=V_(),u=Qe(),c=Nt(),w=Dt(),U=Z_(),F=ni(),O=At(),M=Da(),L=Ba(),_=oo(),b=Q_()(90);e.topLevelNameOrder=1;const v=10;e.inferredNameOrder=30;const h=20,m=10,k=20,B=10,C=40;function R(y){if(y===void 0)return;const r=Array.from(y).join(`
|
|
182
|
+
|
|
183
|
+
`).trim();if(r!=="")return b(r).split(`
|
|
184
|
+
`).map(s=>s.trim())}const A=new O.TypeAttributeKind("assignedName"),f=new O.TypeAttributeKind("assignedPropertyNames"),E=new O.TypeAttributeKind("assignedMemberNames"),S=new O.TypeAttributeKind("assignedCaseNames");class P 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(M.descriptionTypeAttributeKind,r);return R(s)}descriptionForClassProperty(r,s){const p=this.typeGraph.attributeStore.tryGet(M.propertyDescriptionsTypeAttributeKind,r);if(p!==void 0)return R(p.get(s))}setUpNaming(){this._nameStoreView=new F.TypeAttributeStoreView(this.typeGraph.attributeStore,A),this._propertyNamesStoreView=new F.TypeAttributeStoreView(this.typeGraph.attributeStore,f),this._memberNamesStoreView=new F.TypeAttributeStoreView(this.typeGraph.attributeStore,E),this._caseNamesStoreView=new F.TypeAttributeStoreView(this.typeGraph.attributeStore,S),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:p}=this.typeGraph.allNamedTypesSeparated(),g=(0,i.setFilter)(p,I=>this.unionNeedsName(I));for(const[I,x]of this.topLevels)this.nameStoreView.setForTopLevel(I,this.addNameForTopLevel(x,I));for(const I of r){const x=this.addNameForNamedType(I);this.addPropertyNames(I,x)}for(const I of s){const x=this.addNameForNamedType(I);this.addEnumCaseNames(I,x)}for(const I of g){const x=this.addNameForNamedType(I);this.addUnionMemberNames(I,x)}for(const I of this.typeGraph.allTypesUnordered())this.addNameForTransformation(I);return(0,i.setUnion)([this._globalForbiddenNamespace,this._globalNamespace],this._otherForbiddenNamespaces.values())}addDependenciesForNamedType(r,s){const p=this.makeNamedTypeDependencyNames(r,s);for(const g of p)this.globalNamespace.add(g)}makeNameForTopLevel(r,s,p){return new l.SimpleName([s],(0,u.defined)(this._namedTypeNamer),e.topLevelNameOrder)}addNameForTopLevel(r,s){const p=this.namedTypeToNameForTopLevel(r),g=this.makeNameForTopLevel(r,s,p);this.globalNamespace.add(g);const I=this.makeTopLevelDependencyNames(r,g);for(const x of I)this.globalNamespace.add(x);return p!==void 0&&(this.addDependenciesForNamedType(p,g),this.nameStoreView.set(p,g)),g}makeNameForType(r,s,p,g){const I=r.getNames(),x=I.areInferred?g:p;return new l.SimpleName(I.proposedNames,s,x)}makeNameForNamedType(r){return this.makeNameForType(r,(0,u.defined)(this._namedTypeNamer),v,e.inferredNameOrder)}addNameForNamedType(r){const s=this.nameStoreView.tryGet(r);if(s!==void 0)return s;const p=this.globalNamespace.add(this.makeNameForNamedType(r));return this.addDependenciesForNamedType(r,p),this.nameStoreView.set(r,p),p}get typesWithNamedTransformations(){return(0,u.defined)(this._namesForTransformations)}nameForTransformation(r){if((0,_.transformationForType)(r)===void 0)return;const p=(0,u.defined)(this._namesForTransformations).get(r);return p===void 0?(0,u.panic)("No name for transformation"):p}addNameForTransformation(r){const s=(0,_.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 p=this.makeNameForTransformation(s,this.nameStoreView.tryGet(s.targetType));p!==void 0&&(this.globalNamespace.add(p),(0,u.defined)(this._namesForTransformations).set(r,p))}processForbiddenWordsInfo(r,s){const p=[],g=[];for(const q of r.names)typeof q=="string"?g.push(q):p.push(q);let I=(0,u.defined)(this._otherForbiddenNamespaces).get(s);g.length>0&&I===void 0&&(I=(0,l.keywordNamespace)(s,g),this._otherForbiddenNamespaces=(0,u.defined)(this._otherForbiddenNamespaces).set(s,I));let x=new Set;return r.includeGlobalForbidden&&(x=x.add((0,u.defined)(this._globalForbiddenNamespace))),I!==void 0&&(x=x.add(I)),{forbiddenNames:new Set(p),forbiddenNamespaces:x}}makeNameForProperty(r,s,p,g,I){const x=this.namerForObjectProperty(r,p);if(x===null)return;const q=`${r.getCombinedName()}_${g}`,T=I===void 0?h:m,D=I===void 0?[g,q]:[I];return new l.SimpleName(D,x,T)}makePropertyDependencyNames(r,s,p,g,I){return[]}addPropertyNames(r,s){const{forbiddenNames:p,forbiddenNamespaces:g}=this.processForbiddenWordsInfo(this.forbiddenForObjectProperties(r,s),"forbidden-for-properties");let I;const x=(0,L.objectPropertyNames)(r,this.targetLanguage.name),q=(0,i.mapFilterMap)(r.getSortedProperties(),(T,D)=>{const[W,J]=(0,L.getAccessorName)(x,D);let X;if(J?X=new l.FixedName((0,u.defined)(W)):X=this.makeNameForProperty(r,s,T,D,W),X!==void 0){I===void 0&&(I=new l.Namespace(r.getCombinedName(),this.globalNamespace,g,p)),I.add(X);for(const Q of this.makePropertyDependencyNames(r,s,T,D,X))I.add(Q);return X}});(0,u.defined)(this._propertyNamesStoreView).set(r,q)}makeNameForUnionMember(r,s,p){const[g,I]=(0,L.unionMemberName)(r,p,this.targetLanguage.name);return I?new l.FixedName((0,u.defined)(g)):new l.DependencyName((0,u.nonNull)(this._unionMemberNamer),C,x=>g!==void 0?g:this.proposeUnionMemberName(r,s,p,x))}addUnionMemberNames(r,s){if(this._unionMemberNamer===null)return;const{forbiddenNames:g,forbiddenNamespaces:I}=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,I,g);let q=new Map;for(const T of r.members){const D=this.makeNameForUnionMember(r,s,(0,_.followTargetType)(T));q.set(T,x.add(D))}(0,u.defined)(this._memberNamesStoreView).set(r,q)}makeNameForEnumCase(r,s,p,g){const I=`${r.getCombinedName()}_${p}`,x=g===void 0?k:B,q=g===void 0?[p,I]:[g];return new l.SimpleName(q,(0,u.nonNull)(this._enumCaseNamer),x)}addEnumCaseNames(r,s){if(this._enumCaseNamer===null)return;const{forbiddenNames:p,forbiddenNamespaces:g}=this.processForbiddenWordsInfo(this.forbiddenForEnumCases(r,s),"forbidden-for-enum-cases");let I;this.enumCasesInGlobalNamespace?I=this.globalNamespace:I=new l.Namespace(r.getCombinedName(),this.globalNamespace,g,p);let x=new Map;const q=(0,L.enumCaseNames)(r,this.targetLanguage.name);for(const T of r.cases){const[D,W]=(0,L.getAccessorName)(q,T);let J;W?J=new l.FixedName((0,u.defined)(D)):J=this.makeNameForEnumCase(r,s,T,D),x.set(T,I.add(J))}(0,u.defined)(this._caseNamesStoreView).set(r,x)}childrenOfType(r){const s=this.names;if(r instanceof n.ClassType){const p=(0,u.defined)(this._propertyNamesStoreView).get(r),g=(0,i.mapFilterMap)(r.getProperties(),(x,q)=>{if(p.get(q)!==void 0)return x.type}),I=(0,i.mapSortBy)(g,(x,q)=>(0,u.defined)(s.get((0,u.defined)(p.get(q)))));return new Set(I.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,p,g){const I=this.proposedUnionMemberNameForTypeKind(p.kind);if(I!==null)return I;const x=q=>(0,a.matchTypeExhaustive)(q,T=>(0,u.panic)("none type should have been replaced"),T=>"anything",T=>"null",T=>"bool",T=>"integer",T=>"double",T=>"string",T=>x(T.items)+"_array",T=>g(this.nameForNamedType(T)),T=>x(T.values)+"_map",T=>((0,u.assert)(this.targetLanguage.supportsFullObjectType,"Object type should have been replaced in `replaceObjectType`"),g(this.nameForNamedType(T))),T=>"enum",T=>"union",T=>T.kind.replace("-","_"));return x(p)}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,p){let g;return p!==void 0?g=(0,i.mapFilter)(this.topLevels,p):g=this.topLevels,this.forEachWithBlankLines(g,r,(I,x,q)=>s(I,this.nameStoreView.getForTopLevel(x),q))}forEachDeclaration(r,s){this.forEachWithBlankLines((0,i.iterableEnumerate)((0,u.defined)(this._declarationIR).declarations),r,(p,g,I)=>s(p,I))}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,i.mapSortBy)(r,(p,g)=>{const I=(0,u.defined)(s.get(g));return(0,u.defined)(this.names.get(I))}):r}forEachClassProperty(r,s,p){const g=(0,u.defined)(this._propertyNamesStoreView).get(r),I=this.sortClassProperties(r.getProperties(),g);this.forEachWithBlankLines(I,s,(x,q,T)=>{const D=(0,u.defined)(g.get(q));p(D,q,x,T)})}nameForUnionMember(r,s){return(0,u.defined)((0,u.defined)(this._memberNamesStoreView).get(r).get(s))}nameForEnumCase(r,s){const p=(0,u.defined)(this._caseNamesStoreView).get(r);return(0,u.defined)(p.get(s))}forEachUnionMember(r,s,p,g,I){const x=s===null?r.members:s;g===null&&(g=D=>(0,u.defined)(this.names.get(D)));const q=(0,i.mapFilter)((0,u.defined)(this._memberNamesStoreView).get(r),(D,W)=>x.has(W)),T=(0,i.mapSortBy)(q,g);this.forEachWithBlankLines(T,p,I)}forEachEnumCase(r,s,p){const g=(0,u.defined)(this._caseNamesStoreView).get(r),I=(0,i.mapSortBy)(g,x=>(0,u.defined)(this.names.get(x)));this.forEachWithBlankLines(I,s,p)}forEachTransformation(r,s){this.forEachWithBlankLines((0,u.defined)(this._namesForTransformations),r,s)}forEachSpecificNamedType(r,s,p){this.forEachWithBlankLines(s,r,(g,I,x)=>p(g,this.nameForNamedType(g),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,p){const g=new Map;for(const I of this.namedUnions){const x=s(I);g.has(x)||g.set(x,I)}this.forEachWithBlankLines(g,r,p)}forEachNamedType(r,s,p,g){this.forEachWithBlankLines((0,u.defined)(this._namedTypes).entries(),r,(I,x,q)=>{const T=this.nameForNamedType(I);if(I instanceof n.ObjectType)s(I,T,q);else if(I instanceof n.EnumType)p(I,T,q);else if(I instanceof n.UnionType)g(I,T,q);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,p,g,I){s===void 0&&(s=this.commentLineStart),I===void 0&&(I=s),p!==void 0&&this.emitLine(p);let x=!0;for(const q of r){let T=x?I:s;this.sourcelikeToString(q)===""&&(T=(0,c.trimEnd)(T)),this.emitLine(T,q),x=!1}g!==void 0&&this.emitLine(g)}emitDescription(r){r!==void 0&&this.emitDescriptionBlock(r)}emitDescriptionBlock(r){this.emitCommentLines(r)}emitPropertyTable(r,s){let p=[];const g=()=>{p.length!==0&&(this.emitTable(p),p=[])};this.forEachClassProperty(r,"none",(I,x,q)=>{const T=this.descriptionForClassProperty(r,x);T!==void 0&&(g(),this.emitDescription(T)),p.push(s(I,x,q))}),g()}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,i.iterableSome)(r,x=>x instanceof n.UnionType),this._haveMaps=(0,i.iterableSome)(r,x=>x instanceof n.MapType);const s=(0,i.setFilter)(r,x=>x instanceof n.ClassType);this._haveOptionalProperties=(0,i.iterableSome)(s,x=>(0,i.mapSome)(x.getProperties(),q=>q.isOptional)),this._namedTypes=this._declarationIR.declarations.filter(x=>x.kind==="define").map(x=>x.type);const{objects:p,enums:g,unions:I}=(0,a.separateNamedTypes)(this._namedTypes);this._namedObjects=new Set(p),this._namedEnums=new Set(g),this._namedUnions=new Set(I)}emitSource(r){this.processGraph(),this.emitSourceStructure(r)}forEachType(r){const s=new Set,p=new Set,g=Array.from(this.typeGraph.topLevels.values());function I(x){if(!s.has(x)){for(const q of x.getChildren())g.push(q);s.add(x),p.add(r(x))}}for(;;){const x=g.pop();if(x===void 0)break;I(x)}return p}}e.ConvenienceRenderer=P}(kl)),kl}var Es={},As={},qp;function kg(){if(qp)return As;qp=1,Object.defineProperty(As,"__esModule",{value:!0}),As.DefaultDateTimeRecognizer=void 0;const e=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[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<=i[w]}isTime(u){const c=u.match(n);if(c===null)return!1;const w=+c[1],U=+c[2],F=+c[3];return w<=23&&U<=59&&F<=59}isDateTime(u){const c=u.split(a);return c.length===2&&this.isDate(c[0])&&this.isTime(c[1])}}return As.DefaultDateTimeRecognizer=l,As}var Jp;function qt(){if(Jp)return Es;Jp=1,Object.defineProperty(Es,"__esModule",{value:!0}),Es.TargetLanguage=void 0;const e=et(),i=Dt(),n=Qe(),a=kg();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,F,O){O===void 0&&(O=this.defaultIndentation);const M={typeGraph:u,leadingComments:U},L=this.makeRenderer(M,F);L.setAlphabetizeProperties!==void 0&&L.setAlphabetizeProperties(w);const _=L.render(c);return(0,e.mapMap)(_.sources,b=>(0,i.serializeRenderResult)(b,_.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 Es.TargetLanguage=l,Es}var Gp;function Ng(){return Gp||(Gp=1,function(e){var i=Ss&&Ss.__importDefault||function(q){return q&&q.__esModule?q:{default:q}};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=Dt(),u=Nt(),c=Qe(),w=Ft(),U=Wt(),F=qt(),O=zt(),M=On(),L=oo(),_=Xr(),b=i(so());var v;(function(q){q[q.Newtonsoft=0]="Newtonsoft",q[q.SystemTextJson=1]="SystemTextJson"})(v=e.Framework||(e.Framework={}));var h;(function(q){q[q.None=0]="None",q[q.Public=1]="Public",q[q.Internal=2]="Internal"})(h=e.AccessModifier||(e.AccessModifier={}));function m(q){return q}function k(q){if(q instanceof a.UnionType){const T=(0,l.nullableFromUnion)(q);return T===null?"automatic":k(T)==="manual"?"nullable":"none"}if(q instanceof a.ArrayType){const T=k(q.items);return T==="manual"||T==="nullable"?"automatic":"none"}return q instanceof a.EnumType?"automatic":q.kind==="double"?(0,_.minMaxValueForType)(q)!==void 0?"manual":"none":q.kind==="integer-string"||q.kind==="bool-string"||q.kind==="string"&&(0,_.minMaxLengthForType)(q)!==void 0?"manual":"none"}function B(q){const T=q.targetType;return T instanceof a.EnumType?!0:T instanceof a.UnionType?(0,l.nullableFromUnion)(T)===null:!1}function C(q){switch(q.kind){case"date-time":return"DateTimeOffset";case"uuid":return"Guid";case"uri":return"Uri";default:return(0,c.panic)(`Transformed string type ${q.kind} not supported`)}}e.cSharpOptions={framework:new O.EnumOption("framework","Serialization framework",[["NewtonSoft",v.Newtonsoft],["SystemTextJson",v.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 R extends F.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 T=new Map;return T.set("date","date-time"),T.set("time","date-time"),T.set("date-time","date-time"),T.set("uuid","uuid"),T.set("uri","uri"),T.set("integer-string","integer-string"),T.set("bool-string","bool-string"),T}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}needsTransformerForType(T){const D=k(T);return D!=="none"&&D!=="nullable"}makeRenderer(T,D){const W=(0,O.getOptionValues)(e.cSharpOptions,D);switch(W.framework){case v.Newtonsoft:return new I(this,T,(0,O.getOptionValues)(e.newtonsoftCSharpOptions,D));case v.SystemTextJson:return new x(this,T,(0,O.getOptionValues)(e.systemTextJsonCSharpOptions,D));default:return(0,c.assertNever)(W.framework)}}}e.CSharpTargetLanguage=R;const A=(0,w.funPrefixNamer)("namer",s),f="J",E="R",S="N";function P(q){return b.default.isAlphabetic(q)?!0:q===95}function y(q){const T=b.default.getCategory(q);return["Nd","Pc","Mn","Mc"].indexOf(T)>=0?!0:P(q)}const r=(0,u.utf16LegalizeCharacters)(y);function s(q){const T=(0,u.splitIntoWords)(q);return(0,u.combineWords)(T,r,u.firstUpperWordStyle,u.firstUpperWordStyle,u.firstUpperWordStyle,u.firstUpperWordStyle,"",P)}function p(q){return q instanceof a.UnionType?(0,l.nullableFromUnion)(q)===null:["integer","double","bool","enum","date-time","uuid"].indexOf(q.kind)>=0}class g extends U.ConvenienceRenderer{constructor(T,D,W){super(T,D),this._csOptions=W}forbiddenNamesForGlobalNamespace(){return["QuickType","Type","System","Console","Exception","DateTimeOffset","Guid","Uri"]}forbiddenForObjectProperties(T,D){return{names:[D,"ToString","GetHashCode","Finalize","Equals","GetType","MemberwiseClone","ReferenceEquals"],includeGlobalForbidden:!1}}forbiddenForUnionMembers(T,D){return{names:[D],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return A}namerForObjectProperty(){return A}makeUnionMemberNamer(){return A}makeEnumCaseNamer(){return A}unionNeedsName(T){return(0,l.nullableFromUnion)(T)===null}namedTypeToNameForTopLevel(T){return(0,l.directlyReachableSingleNamedType)(T)}emitBlock(T,D=!1){this.emitLine("{"),this.indent(T),this.emitLine("}",D?";":"")}get doubleType(){return this._csOptions.useDecimal?"decimal":"double"}csType(T,D=L.followTargetType,W=!1){const J=D(T);return(0,l.matchType)(J,X=>(0,d.maybeAnnotated)(W,M.anyTypeIssueAnnotation,this._csOptions.typeForAny),X=>(0,d.maybeAnnotated)(W,M.nullTypeIssueAnnotation,this._csOptions.typeForAny),X=>"bool",X=>"long",X=>this.doubleType,X=>"string",X=>{const Q=this.csType(X.items,D,W);return this._csOptions.useList?["List<",Q,">"]:[Q,"[]"]},X=>this.nameForNamedType(X),X=>["Dictionary<string, ",this.csType(X.values,D,W),">"],X=>this.nameForNamedType(X),X=>{const Q=(0,l.nullableFromUnion)(X);return Q!==null?this.nullableCSType(Q,m):this.nameForNamedType(X)},X=>C(X))}nullableCSType(T,D=L.followTargetType,W=!1){T=(0,L.followTargetType)(T);const J=this.csType(T,D,W);return p(T)?[J,"?"]:J}baseclassForType(T){}emitType(T,D,W,J,X,Q){switch(D){case h.Public:W=["public ",W];break;case h.Internal:W=["internal ",W];break}this.emitDescription(T),X===void 0?this.emitLine(W," ",J):this.emitLine(W," ",J," : ",X),this.emitBlock(Q)}attributesForProperty(T,D,W,J){}propertyDefinition(T,D,W,J){const X=T.type,Q=T.isOptional?this.nullableCSType(X,L.followTargetType,!0):this.csType(X,L.followTargetType,!0),re=["public "];return this._csOptions.virtual&&re.push("virtual "),[...re,Q," ",D," { get; set; }"]}emitDescriptionBlock(T){const D="/// <summary>";this._csOptions.dense?this.emitLine(D,T.join("; "),"</summary>"):this.emitCommentLines(T,"/// ",D,"/// </summary>")}blankLinesBetweenAttributes(){return!1}emitClassDefinition(T,D){this.emitType(this.descriptionForType(T),h.Public,"partial class",D,this.baseclassForType(T),()=>{if(T.getProperties().size===0)return;const W=this.blankLinesBetweenAttributes()?"interposing":"none";let J=[],X=!0,Q;this.forEachClassProperty(T,W,(re,se,ne)=>{const me=this.attributesForProperty(ne,re,T,se),ge=this.descriptionForClassProperty(T,se),Ae=this.propertyDefinition(ne,re,T,se);if(me===void 0)(!X&&ge!==void 0||Q!==void 0)&&this.ensureBlankLine(),this.emitDescription(ge),this.emitLine(Ae);else if(this._csOptions.dense&&me.length>0){const pe=ge===void 0?"":` // ${ge.join("; ")}`;J.push([me," ",Ae,pe])}else{this.emitDescription(ge);for(const pe of me)this.emitLine(pe);this.emitLine(Ae)}X=!1,Q=ge}),J.length>0&&this.emitTable(J)})}emitUnionDefinition(T,D){const W=(0,l.removeNullFromUnion)(T,!0)[1];this.emitType(this.descriptionForType(T),h.Public,"partial struct",D,this.baseclassForType(T),()=>{this.forEachUnionMember(T,W,"none",null,(X,Q)=>{const re=this.nullableCSType(Q);this.emitLine("public ",re," ",X,";")}),this.ensureBlankLine();const J=Array.from(W).map(X=>[this.nameForUnionMember(T,X)," == null"]);this.ensureBlankLine(),this.forEachUnionMember(T,W,"none",null,(X,Q)=>{const re=this.csType(Q);this.emitExpressionMember(["public static implicit operator ",D,"(",re," ",X,")"],["new ",D," { ",X," = ",X," }"])}),T.findMember("null")!==void 0&&this.emitExpressionMember("public bool IsNull",(0,n.arrayIntercalate)(" && ",J),!0)})}emitEnumDefinition(T,D){const W=[];this.forEachEnumCase(T,"none",J=>{W.length>0&&W.push(", "),W.push(J)}),this.emitDescription(this.descriptionForType(T)),this.emitLine("public enum ",D," { ",W," };")}emitExpressionMember(T,D,W=!1){this._csOptions.version===5?(this.emitLine(T),this.emitBlock(()=>{const J=["return ",D,";"];W?(this.emitLine("get"),this.emitBlock(()=>this.emitLine(J))):this.emitLine(J)})):this.emitLine(T," => ",D,";")}emitTypeSwitch(T,D,W,J,X){(0,c.assert)(!J||W,"Can only have return with block");for(const Q of T)this.emitLine("if (",D(Q),")"),W?this.emitBlock(()=>{X(Q),J&&this.emitLine("return;")}):this.indent(()=>X(Q))}emitUsing(T){this.emitLine("using ",T,";")}emitUsings(){for(const T of["System","System.Collections.Generic"])this.emitUsing(T)}emitRequiredHelpers(){}emitTypesAndSupport(){this.forEachObject("leading-and-interposing",(T,D)=>this.emitClassDefinition(T,D)),this.forEachEnum("leading-and-interposing",(T,D)=>this.emitEnumDefinition(T,D)),this.forEachUnion("leading-and-interposing",(T,D)=>this.emitUnionDefinition(T,D)),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=g,e.newtonsoftCSharpOptions=Object.assign({},e.cSharpOptions,{});class I extends g{constructor(T,D,W){super(T,D,W),this._options=W,this._enumExtensionsNames=new Map,this._needHelpers=W.features.helpers,this._needAttributes=W.features.attributes,this._needNamespaces=W.features.namespaces}forbiddenNamesForGlobalNamespace(){const T=["Converter","JsonConverter","JsonSerializer","JsonWriter","JsonToken","Serialize","Newtonsoft","MetadataPropertyHandling","DateParseHandling","FromJson","Required"];return this._options.dense&&T.push("J","R","N"),this._options.baseclass!==void 0&&T.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(T)}forbiddenForObjectProperties(T,D){const W=super.forbiddenForObjectProperties(T,D);return W.names=W.names.concat(["ToJson","FromJson","Required"]),W}makeNameForTransformation(T,D){if(D===void 0){let W=T.transformer;return W instanceof L.DecodingTransformer&&W.consumer!==void 0&&(W=W.consumer),new w.SimpleName([`${W.kind}_converter`],A,U.inferredNameOrder+30)}return new w.DependencyName(A,D.order+30,W=>`${W(D)}_converter`)}makeNamedTypeDependencyNames(T,D){if(!(T instanceof a.EnumType))return[];const W=new w.DependencyName(A,D.order+30,J=>`${J(D)}_extensions`);return this._enumExtensionsNames.set(D,W),[W]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(const T of["System.Globalization","Newtonsoft.Json","Newtonsoft.Json.Converters"])this.emitUsing(T);this._options.dense&&(this.emitUsing([f," = Newtonsoft.Json.JsonPropertyAttribute"]),this.emitUsing([E," = Newtonsoft.Json.Required"]),this.emitUsing([S," = Newtonsoft.Json.NullValueHandling"])),this._options.baseclass==="EntityData"&&this.emitUsing("Microsoft.Azure.Mobile.Server")}}baseclassForType(T){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",(T,D)=>{let W;T instanceof a.EnumType?W=["JsonConvert.DeserializeObject<",D,">(jsonString)"]:W=[D,".FromJson(jsonString)"],this.emitLine("// var ",(0,d.modifySource)(u.camelCase,D)," = ",W,";")}))}converterForType(T){let D=(0,L.transformationForType)(T);if(D===void 0&&T instanceof a.UnionType){const W=(0,l.nullableFromUnion)(T);W!==null&&(T=W,D=(0,L.transformationForType)(T))}if(D!==void 0&&!B(D))return(0,c.defined)(this.nameForTransformation(T))}attributesForProperty(T,D,W,J){if(!this._needAttributes)return;const X=[],Q=this._options.dense?f:"JsonProperty",re=(0,u.utf16StringEscape)(J),se=(0,L.followTargetType)(T.type).isNullable,ne=T.isOptional,me=this._options.dense?"R":"Required",ge=this._options.dense?"N":"NullValueHandling",Ae=ne&&!se?[", NullValueHandling = ",ge,".Ignore"]:[];let pe;!this._options.checkRequired||ne&&se?pe=[Ae]:ne&&!se?pe=[", Required = ",me,".DisallowNull",Ae]:!ne&&se?pe=[", Required = ",me,".AllowNull"]:pe=[", Required = ",me,".Always",Ae],X.push(["[",Q,'("',re,'"',pe,")]"]);const le=this.converterForType(T.type);return le!==void 0&&X.push(["[JsonConverter(typeof(",le,"))]"]),X}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(T){return T.kind==="any"||T.kind==="none"?"object":this.csType(T)}emitFromJsonForTopLevel(T,D){if(T instanceof a.EnumType)return;let W,J;const X=this.namedTypeToNameForTopLevel(T);X!==void 0?(W="partial ",J=X instanceof a.ClassType?"class":"struct"):(W="",J="class");const Q=this.topLevelResultType(T);this.emitType(void 0,h.Public,[W,J],D,this.baseclassForType(T),()=>{this.emitExpressionMember(["public static ",Q," FromJson(string json)"],["JsonConvert.DeserializeObject<",Q,">(json, ",this._options.namespace,".Converter.Settings)"])})}emitDecoderSwitch(T){this.emitLine("switch (reader.TokenType)"),this.emitBlock(T)}emitTokenCase(T){this.emitLine("case JsonToken.",T,":")}emitThrow(T){this.emitLine("throw new Exception(",T,");")}deserializeTypeCode(T){return["serializer.Deserialize<",T,">(reader)"]}serializeValueCode(T){return["serializer.Serialize(writer, ",T,")"]}emitSerializeClass(){this.emitType(void 0,h.Public,"static class","Serialize",void 0,()=>{const T=new Set;this.forEachTopLevel("none",D=>{T.has(D)||(T.add(D),this.emitExpressionMember(["public static string ToJson(this ",this.topLevelResultType(D)," self)"],["JsonConvert.SerializeObject(self, ",this._options.namespace,".Converter.Settings)"]))})})}emitCanConvert(T){this.emitExpressionMember("public override bool CanConvert(Type t)",T)}emitReadJson(T){this.emitLine("public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer)"),this.emitBlock(T)}emitWriteJson(T,D){this.emitLine("public override void WriteJson(JsonWriter writer, object ",T,", JsonSerializer serializer)"),this.emitBlock(D)}converterObject(T){return[T,".Singleton"]}emitConverterClass(){const T=["Converter"];this.emitType(void 0,h.Internal,"static class",T,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[D,W]of this.typesWithNamedTransformations)B((0,c.defined)((0,L.transformationForType)(D)))&&this.emitLine(this.converterObject(W),",");this.emitLine("new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AssumeUniversal }")}),this.emitLine("},")},!0)})}emitDecoderTransformerCase(T,D,W,J,X){if(W!==void 0){for(const Q of T)this.emitTokenCase(Q);this.indent(()=>{this.emitDecodeTransformer(W,J,X,D)||this.emitLine("break;")})}}emitConsume(T,D,W,J){return D===void 0?(J(T),!0):this.emitTransformer(T,D,W,J)}emitDecodeTransformer(T,D,W,J="value"){if(T instanceof L.DecodingTransformer){const X=T.sourceType,Q=this.converterForType(D);if(Q!==void 0){const re=this.csType(D);this.emitLine("var converter = ",this.converterObject(Q),";"),this.emitLine("var ",J," = (",re,")converter.ReadJson(reader, typeof(",re,"), null, serializer);")}else if(X.kind!=="null"){let re=D.kind==="double"?D:X;this.emitLine("var ",J," = ",this.deserializeTypeCode(this.csType(re)),";")}return this.emitConsume(J,T.consumer,D,W)}else if(T instanceof L.ArrayDecodingTransformer){if(!(D instanceof a.ArrayType))return(0,c.panic)("Array decoding must produce an array type");this.emitLine("reader.Read();"),this.emitLine("var ",J," = new List<",this.csType(D.items),">();"),this.emitLine("while (reader.TokenType != JsonToken.EndArray)"),this.emitBlock(()=>{this.emitDecodeTransformer(T.itemTransformer,T.itemTargetType,Q=>this.emitLine(J,".Add(",Q,");"),"arrayItem"),this.emitLine("reader.Read();")});let X=J;return this._options.useList||(X=[X,".ToArray()"]),W(X),!0}else return T instanceof L.DecodingChoiceTransformer?(this.emitDecoderSwitch(()=>{const X=T.nullTransformer;X!==void 0&&(this.emitTokenCase("Null"),this.indent(()=>{this.emitDecodeTransformer(X,D,W,"null")||this.emitLine("break")})),this.emitDecoderTransformerCase(["Integer"],"integerValue",T.integerTransformer,D,W),this.emitDecoderTransformerCase(T.integerTransformer===void 0?["Integer","Float"]:["Float"],"doubleValue",T.doubleTransformer,D,W),this.emitDecoderTransformerCase(["Boolean"],"boolValue",T.boolTransformer,D,W),this.emitDecoderTransformerCase(["String","Date"],"stringValue",T.stringTransformer,D,W),this.emitDecoderTransformerCase(["StartObject"],"objectValue",T.objectTransformer,D,W),this.emitDecoderTransformerCase(["StartArray"],"arrayValue",T.arrayTransformer,D,W)}),!1):(0,c.panic)("Unknown transformer")}stringCaseValue(T,D){return T.kind==="string"?['"',(0,u.utf16StringEscape)(D),'"']:T instanceof a.EnumType?[this.nameForNamedType(T),".",this.nameForEnumCase(T,D)]:(0,c.panic)(`Type ${T.kind} does not have string cases`)}emitTransformer(T,D,W,J){function X(Q){return Q===void 0?W:(0,L.followTargetType)(Q.sourceType)}if(D instanceof L.ChoiceTransformer){const Q=D.transformers;if(Q.length>1&&Q.every(re=>re instanceof L.StringMatchTransformer))return this.emitLine("switch (",T,")"),this.emitBlock(()=>{for(const re of Q){const se=re,ne=this.stringCaseValue((0,L.followTargetType)(se.sourceType),se.stringCase);this.emitLine("case ",ne,":"),this.indent(()=>{this.emitTransformer(T,se.transformer,W,J)||this.emitLine("break;")})}}),!1;for(const re of Q)this.emitTransformer(T,re,W,J)}else if(D instanceof L.UnionMemberMatchTransformer){const Q=D.memberType,re=(0,l.nullableFromUnion)(D.sourceType);let se,ne;if(re!==null)Q.kind==="null"?(se=[T," == null"],ne="null"):(se=[T," != null"],ne=T);else if(Q.kind==="null")se=[T,".IsNull"],ne="null";else{const me=this.nameForUnionMember(D.sourceType,Q);ne=[T,".",me],se=[ne," != null"]}Q.kind!=="null"&&p(Q)&&(ne=[ne,".Value"]),this.emitLine("if (",se,")"),this.emitBlock(()=>this.emitTransformer(ne,D.transformer,W,J))}else if(D instanceof L.StringMatchTransformer){const Q=this.stringCaseValue((0,L.followTargetType)(D.sourceType),D.stringCase);this.emitLine("if (",T," == ",Q,")"),this.emitBlock(()=>this.emitTransformer(T,D.transformer,W,J))}else if(D instanceof L.EncodingTransformer){const Q=this.converterForType(D.sourceType);return Q!==void 0?(this.emitLine("var converter = ",this.converterObject(Q),";"),this.emitLine("converter.WriteJson(writer, ",T,", serializer);")):this.emitLine(this.serializeValueCode(T),";"),J([]),!0}else if(D instanceof L.ArrayEncodingTransformer){this.emitLine("writer.WriteStartArray();");const Q="arrayItem";return this.emitLine("foreach (var ",Q," in ",T,")"),this.emitBlock(()=>{this.emitTransformer(Q,D.itemTransformer,D.itemTargetType,()=>{})}),this.emitLine("writer.WriteEndArray();"),J([]),!0}else if(D instanceof L.ParseStringTransformer){const Q=D.consumer===void 0?W:D.consumer.sourceType;switch(Q.kind){case"date-time":this.emitLine("DateTimeOffset dt;"),this.emitLine("if (DateTimeOffset.TryParse(",T,", out dt))"),this.emitBlock(()=>this.emitConsume("dt",D.consumer,W,J));break;case"uuid":this.emitLine("Guid guid;"),this.emitLine("if (Guid.TryParse(",T,", out guid))"),this.emitBlock(()=>this.emitConsume("guid",D.consumer,W,J));break;case"uri":this.emitLine("try"),this.emitBlock(()=>{this.emitLine("var uri = new Uri(",T,");"),this.emitConsume("uri",D.consumer,W,J)}),this.emitLine("catch (UriFormatException) {}");break;case"integer":this.emitLine("long l;"),this.emitLine("if (Int64.TryParse(",T,", out l))"),this.emitBlock(()=>this.emitConsume("l",D.consumer,W,J));break;case"bool":this.emitLine("bool b;"),this.emitLine("if (Boolean.TryParse(",T,", out b))"),this.emitBlock(()=>this.emitConsume("b",D.consumer,W,J));break;default:return(0,c.panic)(`Parsing string to ${Q.kind} not supported`)}}else if(D instanceof L.StringifyTransformer)switch(D.sourceType.kind){case"date-time":return this.emitConsume([T,'.ToString("o", System.Globalization.CultureInfo.InvariantCulture)'],D.consumer,W,J);case"uuid":return this.emitConsume([T,'.ToString("D", System.Globalization.CultureInfo.InvariantCulture)'],D.consumer,W,J);case"integer":case"uri":return this.emitConsume([T,".ToString()"],D.consumer,W,J);case"bool":return this.emitLine("var boolString = ",T,' ? "true" : "false";'),this.emitConsume("boolString",D.consumer,W,J);default:return(0,c.panic)(`Stringifying ${D.sourceType.kind} not supported`)}else if(D instanceof L.StringProducerTransformer){const Q=this.stringCaseValue(X(D.consumer),D.result);return this.emitConsume(Q,D.consumer,W,J)}else if(D instanceof L.MinMaxLengthCheckTransformer){const Q=D.minLength,re=D.maxLength,se=[];return Q!==void 0&&se.push([T,".Length >= ",Q.toString()]),re!==void 0&&se.push([T,".Length <= ",re.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(T,D.consumer,W,J)),!1}else if(D instanceof L.MinMaxValueTransformer){const Q=D.minimum,re=D.maximum,se=[];return Q!==void 0&&se.push([T," >= ",Q.toString()]),re!==void 0&&se.push([T," <= ",re.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(T,D.consumer,W,J)),!1}else if(D instanceof L.UnionInstantiationTransformer){if(!(W instanceof a.UnionType))return(0,c.panic)("Union instantiation transformer must produce a union type");if((0,l.nullableFromUnion)(W)!==null)J(T);else{const re=this.nameForNamedType(W);let se;D.sourceType.kind==="null"?se=" ":se=[" ",this.nameForUnionMember(W,D.sourceType)," = ",T," "],J(["new ",re," {",se,"}"])}return!0}else return(0,c.panic)("Unknown transformer");return!1}emitTransformation(T,D){const W=(0,c.defined)((0,L.transformationForType)(D)),J=W.reverse,X=W.targetType,Q=W.transformer;this.emitType(void 0,h.Internal,"class",T,"JsonConverter",()=>{const re=this.csType(X);let se=["t == typeof(",re,")"];const ne=p(X);ne&&(se=[se," || t == typeof(",re,"?)"]),this.emitCanConvert(se),this.ensureBlankLine(),this.emitReadJson(()=>{ne&&!(X instanceof a.UnionType)&&this.emitLine("if (reader.TokenType == JsonToken.Null) return null;"),this.emitDecodeTransformer(Q,X,ge=>this.emitLine("return ",ge,";"))||this.emitThrow(['"Cannot unmarshal type ',re,'"'])}),this.ensureBlankLine(),this.emitWriteJson("untypedValue",()=>{ne&&!(X instanceof a.UnionType)&&(this.emitLine("if (untypedValue == null)"),this.emitBlock(()=>{this.emitLine("serializer.Serialize(writer, null);"),this.emitLine("return;")})),this.emitLine("var value = (",re,")untypedValue;"),this.emitTransformer("value",J.transformer,J.targetType,()=>this.emitLine("return;"))||this.emitThrow(['"Cannot marshal type ',re,'"'])}),this.ensureBlankLine(),this.emitLine("public static readonly ",T," Singleton = new ",T,"();")})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel("leading-and-interposing",(T,D)=>this.emitFromJsonForTopLevel(T,D)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation("leading-and-interposing",(T,D)=>this.emitTransformation(T,D)))}needNamespace(){return this._needNamespaces}}e.NewtonsoftCSharpRenderer=I,e.systemTextJsonCSharpOptions=Object.assign({},e.cSharpOptions,{});class x extends g{constructor(T,D,W){super(T,D,W),this._options=W,this._enumExtensionsNames=new Map,this._needHelpers=W.features.helpers,this._needAttributes=W.features.attributes,this._needNamespaces=W.features.namespaces}forbiddenNamesForGlobalNamespace(){const T=["Converter","JsonConverter","JsonSerializer","JsonWriter","JsonToken","Serialize","JsonSerializerOptions","FromJson","Required"];return this._options.dense&&T.push("J","R","N"),this._options.baseclass!==void 0&&T.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(T)}forbiddenForObjectProperties(T,D){const W=super.forbiddenForObjectProperties(T,D);return W.names=W.names.concat(["ToJson","FromJson","Required"]),W}makeNameForTransformation(T,D){if(D===void 0){let W=T.transformer;return W instanceof L.DecodingTransformer&&W.consumer!==void 0&&(W=W.consumer),new w.SimpleName([`${W.kind}_converter`],A,U.inferredNameOrder+30)}return new w.DependencyName(A,D.order+30,W=>`${W(D)}_converter`)}makeNamedTypeDependencyNames(T,D){if(!(T instanceof a.EnumType))return[];const W=new w.DependencyName(A,D.order+30,J=>`${J(D)}_extensions`);return this._enumExtensionsNames.set(D,W),[W]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(const T of["System.Text.Json","System.Text.Json.Serialization","System.Globalization"])this.emitUsing(T);this._options.dense&&(this.emitUsing([f," = System.Text.Json.Serialization.JsonPropertyNameAttribute"]),this.emitUsing([S," = System.Text.Json.Serialization.JsonIgnoreCondition"])),this._options.baseclass==="EntityData"&&this.emitUsing("Microsoft.Azure.Mobile.Server")}}baseclassForType(T){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",(T,D)=>{let W;T instanceof a.EnumType?W=["JsonSerializer.Deserialize<",D,">(jsonString)"]:W=[D,".FromJson(jsonString)"],this.emitLine("// var ",(0,d.modifySource)(u.camelCase,D)," = ",W,";")}),this.emitLine("#nullable enable"),this.emitLine("#pragma warning disable CS8618"),this.emitLine("#pragma warning disable CS8601"),this.emitLine("#pragma warning disable CS8603"))}converterForType(T){let D=(0,L.transformationForType)(T);if(D===void 0&&T instanceof a.UnionType){const W=(0,l.nullableFromUnion)(T);W!==null&&(T=W,D=(0,L.transformationForType)(T))}if(D!==void 0&&!B(D))return(0,c.defined)(this.nameForTransformation(T))}attributesForProperty(T,D,W,J){if(!this._needAttributes)return;const X=[],Q=this._options.dense?f:"JsonPropertyName",re=(0,u.utf16StringEscape)(J),se=(0,L.followTargetType)(T.type).isNullable;T.isOptional&&!se&&X.push(["[","JsonIgnore","(Condition = JsonIgnoreCondition.WhenWritingNull)]"]),X.push(["[",Q,'("',re,'")]']);const me=this.converterForType(T.type);return me!==void 0&&X.push(["[JsonConverter(typeof(",me,"))]"]),X}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(T){return T.kind==="any"||T.kind==="none"?"object":this.csType(T)}emitFromJsonForTopLevel(T,D){if(T instanceof a.EnumType)return;let W,J;const X=this.namedTypeToNameForTopLevel(T);X!==void 0?(W="partial ",J=X instanceof a.ClassType?"class":"struct"):(W="",J="class");const Q=this.topLevelResultType(T);this.emitType(void 0,h.Public,[W,J],D,this.baseclassForType(T),()=>{this.emitExpressionMember(["public static ",Q," FromJson(string json)"],["JsonSerializer.Deserialize<",Q,">(json, ",this._options.namespace,".Converter.Settings)"])})}emitDecoderSwitch(T){this.emitLine("switch (reader.TokenType)"),this.emitBlock(T)}emitTokenCase(T){this.emitLine("case JsonTokenType.",T,":")}emitThrow(T){this.emitLine("throw new Exception(",T,");")}deserializeTypeCode(T){switch(T){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<",T,">(ref reader, options)"]}}serializeValueCode(T){return T!=="null"?["JsonSerializer.Serialize(writer, ",T,", options)"]:["writer.WriteNullValue()"]}emitSerializeClass(){this.emitType(void 0,h.Public,"static class","Serialize",void 0,()=>{const T=new Set;this.forEachTopLevel("none",D=>{T.has(D)||(T.add(D),this.emitExpressionMember(["public static string ToJson(this ",this.topLevelResultType(D)," self)"],["JsonSerializer.Serialize(self, ",this._options.namespace,".Converter.Settings)"]))})})}emitCanConvert(T){this.emitExpressionMember("public override bool CanConvert(Type t)",T)}emitReadJson(T,D){this.emitLine("public override ",D," Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)"),this.emitBlock(T)}emitWriteJson(T,D,W){this.emitLine("public override void Write(Utf8JsonWriter writer, ",W," ",T,", JsonSerializerOptions options)"),this.emitBlock(D)}converterObject(T){return[T,".Singleton"]}emitConverterClass(){const T=["Converter"];this.emitType(void 0,h.Internal,"static class",T,void 0,()=>{this.emitLine("public static readonly JsonSerializerOptions Settings = new(JsonSerializerDefaults.General)"),this.emitBlock(()=>{this.emitLine("Converters ="),this.emitLine("{"),this.indent(()=>{for(const[D,W]of this.typesWithNamedTransformations)B((0,c.defined)((0,L.transformationForType)(D)))&&this.emitLine(this.converterObject(W),",");this.emitLine("new DateOnlyConverter(),"),this.emitLine("new TimeOnlyConverter(),"),this.emitLine("IsoDateTimeOffsetConverter.Singleton")}),this.emitLine("},")},!0)})}emitDecoderTransformerCase(T,D,W,J,X){if(W!==void 0){for(const Q of T)this.emitTokenCase(Q);this.indent(()=>{this.emitDecodeTransformer(W,J,X,D)||this.emitLine("break;")})}}emitConsume(T,D,W,J){return D===void 0?(J(T),!0):this.emitTransformer(T,D,W,J)}emitDecodeTransformer(T,D,W,J="value"){if(T instanceof L.DecodingTransformer){const X=T.sourceType,Q=this.converterForType(D);if(Q!==void 0){const re=this.csType(D);this.emitLine("var converter = ",this.converterObject(Q),";"),this.emitLine("var ",J," = (",re,")converter.ReadJson(reader, typeof(",re,"), null, serializer);")}else if(X.kind!=="null"){let re=D.kind==="double"?D:X;this.emitLine("var ",J," = ",this.deserializeTypeCode(this.csType(re)),";")}return this.emitConsume(J,T.consumer,D,W)}else if(T instanceof L.ArrayDecodingTransformer){if(!(D instanceof a.ArrayType))return(0,c.panic)("Array decoding must produce an array type");this.emitLine("reader.Read();"),this.emitLine("var ",J," = new List<",this.csType(D.items),">();"),this.emitLine("while (reader.TokenType != JsonToken.EndArray)"),this.emitBlock(()=>{this.emitDecodeTransformer(T.itemTransformer,T.itemTargetType,Q=>this.emitLine(J,".Add(",Q,");"),"arrayItem"),this.emitLine("reader.Read();")});let X=J;return this._options.useList||(X=[X,".ToArray()"]),W(X),!0}else return T instanceof L.DecodingChoiceTransformer?(this.emitDecoderSwitch(()=>{const X=T.nullTransformer;X!==void 0&&(this.emitTokenCase("Null"),this.indent(()=>{this.emitDecodeTransformer(X,D,W,"null")||this.emitLine("break")})),this.emitDecoderTransformerCase(["Number"],"integerValue",T.integerTransformer,D,W),this.emitDecoderTransformerCase(["Number"],"doubleValue",T.doubleTransformer,D,W),this.emitDecoderTransformerCase(["True","False"],"boolValue",T.boolTransformer,D,W),this.emitDecoderTransformerCase(["String"],"stringValue",T.stringTransformer,D,W),this.emitDecoderTransformerCase(["StartObject"],"objectValue",T.objectTransformer,D,W),this.emitDecoderTransformerCase(["StartArray"],"arrayValue",T.arrayTransformer,D,W)}),!1):(0,c.panic)("Unknown transformer")}stringCaseValue(T,D){return T.kind==="string"?['"',(0,u.utf16StringEscape)(D),'"']:T instanceof a.EnumType?[this.nameForNamedType(T),".",this.nameForEnumCase(T,D)]:(0,c.panic)(`Type ${T.kind} does not have string cases`)}emitTransformer(T,D,W,J){function X(Q){return Q===void 0?W:(0,L.followTargetType)(Q.sourceType)}if(D instanceof L.ChoiceTransformer){const Q=D.transformers;if(Q.length>1&&Q.every(re=>re instanceof L.StringMatchTransformer))return this.emitLine("switch (",T,")"),this.emitBlock(()=>{for(const re of Q){const se=re,ne=this.stringCaseValue((0,L.followTargetType)(se.sourceType),se.stringCase);this.emitLine("case ",ne,":"),this.indent(()=>{this.emitTransformer(T,se.transformer,W,J)||this.emitLine("break;")})}}),!1;for(const re of Q)this.emitTransformer(T,re,W,J)}else if(D instanceof L.UnionMemberMatchTransformer){const Q=D.memberType,re=(0,l.nullableFromUnion)(D.sourceType);let se,ne;if(re!==null)Q.kind==="null"?(se=[T," == null"],ne="null"):(se=[T," != null"],ne=T);else if(Q.kind==="null")se=[T,".IsNull"],ne="null";else{const me=this.nameForUnionMember(D.sourceType,Q);ne=[T,".",me],se=[ne," != null"]}Q.kind!=="null"&&p(Q)&&(ne=[ne,".Value"]),this.emitLine("if (",se,")"),this.emitBlock(()=>this.emitTransformer(ne,D.transformer,W,J))}else if(D instanceof L.StringMatchTransformer){const Q=this.stringCaseValue((0,L.followTargetType)(D.sourceType),D.stringCase);this.emitLine("if (",T," == ",Q,")"),this.emitBlock(()=>this.emitTransformer(T,D.transformer,W,J))}else if(D instanceof L.EncodingTransformer){const Q=this.converterForType(D.sourceType);return Q!==void 0?(this.emitLine("var converter = ",this.converterObject(Q),";"),this.emitLine("converter.WriteJson(writer, ",T,", serializer);")):this.emitLine(this.serializeValueCode(T),";"),J([]),!0}else if(D instanceof L.ArrayEncodingTransformer){this.emitLine("writer.WriteStartArray();");const Q="arrayItem";return this.emitLine("foreach (var ",Q," in ",T,")"),this.emitBlock(()=>{this.emitTransformer(Q,D.itemTransformer,D.itemTargetType,()=>{})}),this.emitLine("writer.WriteEndArray();"),J([]),!0}else if(D instanceof L.ParseStringTransformer){const Q=D.consumer===void 0?W:D.consumer.sourceType;switch(Q.kind){case"date-time":this.emitLine("DateTimeOffset dt;"),this.emitLine("if (DateTimeOffset.TryParse(",T,", out dt))"),this.emitBlock(()=>this.emitConsume("dt",D.consumer,W,J));break;case"uuid":this.emitLine("Guid guid;"),this.emitLine("if (Guid.TryParse(",T,", out guid))"),this.emitBlock(()=>this.emitConsume("guid",D.consumer,W,J));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(",T,");")}),this.emitConsume("uri",D.consumer,W,J)}),this.emitLine("catch (UriFormatException) {}");break;case"integer":this.emitLine("long l;"),this.emitLine("if (Int64.TryParse(",T,", out l))"),this.emitBlock(()=>this.emitConsume("l",D.consumer,W,J));break;case"bool":this.emitLine("bool b;"),this.emitLine("if (Boolean.TryParse(",T,", out b))"),this.emitBlock(()=>this.emitConsume("b",D.consumer,W,J));break;default:return(0,c.panic)(`Parsing string to ${Q.kind} not supported`)}}else if(D instanceof L.StringifyTransformer)switch(D.sourceType.kind){case"date-time":return this.emitConsume([T,'.ToString("o", System.Globalization.CultureInfo.InvariantCulture)'],D.consumer,W,J);case"uuid":return this.emitConsume([T,'.ToString("D", System.Globalization.CultureInfo.InvariantCulture)'],D.consumer,W,J);case"integer":case"uri":return this.emitConsume([T,".ToString()"],D.consumer,W,J);case"bool":return this.emitLine("var boolString = ",T,' ? "true" : "false";'),this.emitConsume("boolString",D.consumer,W,J);default:return(0,c.panic)(`Stringifying ${D.sourceType.kind} not supported`)}else if(D instanceof L.StringProducerTransformer){const Q=this.stringCaseValue(X(D.consumer),D.result);return this.emitConsume(Q,D.consumer,W,J)}else if(D instanceof L.MinMaxLengthCheckTransformer){const Q=D.minLength,re=D.maxLength,se=[];return Q!==void 0&&se.push([T,".Length >= ",Q.toString()]),re!==void 0&&se.push([T,".Length <= ",re.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(T,D.consumer,W,J)),!1}else if(D instanceof L.MinMaxValueTransformer){const Q=D.minimum,re=D.maximum,se=[];return Q!==void 0&&se.push([T," >= ",Q.toString()]),re!==void 0&&se.push([T," <= ",re.toString()]),this.emitLine("if (",(0,n.arrayIntercalate)([" && "],se),")"),this.emitBlock(()=>this.emitConsume(T,D.consumer,W,J)),!1}else if(D instanceof L.UnionInstantiationTransformer){if(!(W instanceof a.UnionType))return(0,c.panic)("Union instantiation transformer must produce a union type");if((0,l.nullableFromUnion)(W)!==null)J(T);else{const re=this.nameForNamedType(W);let se;D.sourceType.kind==="null"?se=" ":se=[" ",this.nameForUnionMember(W,D.sourceType)," = ",T," "],J(["new ",re," {",se,"}"])}return!0}else return(0,c.panic)("Unknown transformer");return!1}emitTransformation(T,D){const W=(0,c.defined)((0,L.transformationForType)(D)),J=W.reverse,X=W.targetType,Q=W.transformer,re=this.csType(X);this.emitType(void 0,h.Internal,"class",T,["JsonConverter<",re,">"],()=>{let se=["t == typeof(",re,")"];this.emitCanConvert(se),this.ensureBlankLine(),this.emitReadJson(()=>{this.emitDecodeTransformer(Q,X,me=>this.emitLine("return ",me,";"))||this.emitThrow(['"Cannot unmarshal type ',re,'"'])},re),this.ensureBlankLine(),this.emitWriteJson("value",()=>{this.emitTransformer("value",J.transformer,J.targetType,()=>this.emitLine("return;"))||this.emitThrow(['"Cannot marshal type ',re,'"'])},re),this.ensureBlankLine(),this.emitLine("public static readonly ",T," Singleton = new ",T,"();")})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel("leading-and-interposing",(T,D)=>this.emitFromJsonForTopLevel(T,D)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation("leading-and-interposing",(T,D)=>this.emitTransformation(T,D)),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}(Ss)),Ss}var Pl={},Hp;function Og(){return Hp||(Hp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.GoRenderer=e.GoTargetLanguage=e.goOptions=void 0;const i=mt(),n=pt(),a=Ft(),l=Nt(),d=Qe(),u=zt(),c=Dt(),w=On(),U=qt(),F=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,R){return new k(this,C,(0,u.getOptionValues)(e.goOptions,R))}get defaultIndentation(){return" "}}e.GoTargetLanguage=O;const M=(0,a.funPrefixNamer)("namer",_),L=(0,l.legalizeCharacters)(l.isLetterOrUnderscoreOrDigit);function _(B){const C=(0,l.splitIntoWords)(B);return(0,l.combineWords)(C,L,l.firstUpperWordStyle,l.firstUpperWordStyle,l.allUpperWordStyle,l.allUpperWordStyle,"",l.isLetterOrUnderscore)}const b=["integer","double","bool","string"],v=["array","class","map","enum"];function h(B){const C=B.kind;return b.indexOf(C)>=0||C==="class"||C==="enum"}function m(B){if(!B.isOptional)return!1;const C=B.type;return["union","null","any"].indexOf(C.kind)<0}class k extends F.ConvenienceRenderer{constructor(C,R,A){super(C,R),this._options=A,this._topLevelUnmarshalNames=new Map}makeNamedTypeNamer(){return M}namerForObjectProperty(){return M}makeUnionMemberNamer(){return M}makeEnumCaseNamer(){return M}get enumCasesInGlobalNamespace(){return!0}makeTopLevelDependencyNames(C,R){const A=new a.DependencyName(M,R.order,f=>`unmarshal_${f(R)}`);return this._topLevelUnmarshalNames.set(R,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,R){this.emitLine(C," {"),this.indent(R),this.emitLine("}")}emitFunc(C,R){this.emitBlock(["func ",C],R)}emitStruct(C,R){this.emitBlock(["type ",C," struct"],()=>this.emitTable(R))}nullableGoType(C,R){const A=this.goType(C,R);return h(C)?["*",A]:A}propertyGoType(C){const R=C.type;return R instanceof i.UnionType&&(0,n.nullableFromUnion)(R)===null?["*",this.goType(R,!0)]:C.isOptional?this.nullableGoType(R,!0):this.goType(R,!0)}goType(C,R=!1){return(0,n.matchType)(C,A=>(0,c.maybeAnnotated)(R,w.anyTypeIssueAnnotation,"interface{}"),A=>(0,c.maybeAnnotated)(R,w.nullTypeIssueAnnotation,"interface{}"),A=>"bool",A=>"int64",A=>"float64",A=>"string",A=>["[]",this.goType(A.items,R)],A=>this.nameForNamedType(A),A=>{let f;const E=A.values;return E instanceof i.UnionType&&(0,n.nullableFromUnion)(E)===null?f=["*",this.nameForNamedType(E)]:f=this.goType(E,R),["map[string]",f]},A=>this.nameForNamedType(A),A=>{const f=(0,n.nullableFromUnion)(A);return f!==null?this.nullableGoType(f,R):this.nameForNamedType(A)})}emitTopLevel(C,R){if(this.startFile(R),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,R);this.emitLineOnce("// ",f,", err := ",(0,d.defined)(this._topLevelUnmarshalNames.get(R)),"(bytes)"),this.emitLineOnce("// bytes, err = ",f,".Marshal()")}this.emitPackageDefinitons(!0);const A=(0,d.defined)(this._topLevelUnmarshalNames.get(R));this.namedTypeToNameForTopLevel(C)===void 0&&this.emitLine("type ",R," ",this.goType(C)),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc([A,"(data []byte) (",R,", error)"],()=>{this.emitLine("var r ",R),this.emitLine("err := json.Unmarshal(data, &r)"),this.emitLine("return r, err")}),this.ensureBlankLine(),this.emitFunc(["(r *",R,") Marshal() ([]byte, error)"],()=>{this.emitLine("return json.Marshal(r)")}),this.endFile())}emitClass(C,R){this.startFile(R),this.emitPackageDefinitons(!1);let A=[];this.forEachClassProperty(C,"none",(f,E,S)=>{const P=this.descriptionForClassProperty(C,E),y=P!==void 0&&P.length>0?P.map(p=>"// "+p):[],r=this.propertyGoType(S),s=m(S)?",omitempty":[];y.forEach(p=>A.push([p])),A.push([[f," "],[r," "],['`json:"',(0,l.stringEscape)(E),s,'"`']])}),this.emitDescription(this.descriptionForType(C)),this.emitStruct(R,A),this.endFile()}emitEnum(C,R){this.startFile(R),this.emitPackageDefinitons(!1),this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",R," string"),this.emitLine("const ("),this.indent(()=>this.forEachEnumCase(C,"none",(A,f)=>{this.emitLine(A," ",R,' = "',(0,l.stringEscape)(f),'"')})),this.emitLine(")"),this.endFile()}emitUnion(C,R){this.startFile(R),this.emitPackageDefinitons(!1);const[A,f]=(0,n.removeNullFromUnion)(C),E=A!==null?"true":"false",S=(s,p,g)=>{const I=C.findMember(s);return I===void 0?p:g(I,this.nameForUnionMember(C,I),this.goType(I))},P=s=>{S(s,void 0,(p,g,I)=>{this.emitLine("x.",g," = nil")})},y=(s,p)=>{const g=[];for(const I of b)g.push(S(I,"nil",(x,q,T)=>s(q)),", ");for(const I of v)g.push(S(I,"false, nil",(x,q,T)=>p(x.kind==="class",q)),", ");return g.push(E),g};let r=[];this.forEachUnionMember(C,f,"none",null,(s,p)=>{const g=this.nullableGoType(p,!0);r.push([[s," "],g])}),this.emitDescription(this.descriptionForType(C)),this.emitStruct(R,r),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc(["(x *",R,") UnmarshalJSON(data []byte) error"],()=>{for(const p of v)P(p);S("class",void 0,(p,g,I)=>{this.emitLine("var c ",I)});const s=y(p=>["&x.",p],(p,g)=>p?"true, &c":["true, &x.",g]);this.emitLine("object, err := unmarshalUnion(data, ",s,")"),this.emitBlock("if err != nil",()=>{this.emitLine("return err")}),this.emitBlock("if object",()=>{S("class",void 0,(p,g,I)=>{this.emitLine("x.",g," = &c")})}),this.emitLine("return nil")}),this.ensureBlankLine(),this.emitFunc(["(x *",R,") MarshalJSON() ([]byte, error)"],()=>{const s=y(p=>["x.",p],(p,g)=>["x.",g," != nil, x.",g]);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,R)=>{this.emitLine("//");const A=(0,c.modifySource)(l.camelCase,R);this.emitLine("// ",A,", err := ",(0,d.defined)(this._topLevelUnmarshalNames.get(R)),"(bytes)"),this.emitLine("// bytes, err = ",A,".Marshal()")})}emitPackageDefinitons(C){if(!this._options.justTypes||this._options.justTypesAndPackage){this.ensureBlankLine();const R="package "+this._options.packageName;this.emitLineOnce(R),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,R)=>this.emitTopLevel(C,R),C=>!(this._options.justTypes||this._options.justTypesAndPackage)||this.namedTypeToNameForTopLevel(C)===void 0),this.forEachObject("leading-and-interposing",(C,R)=>this.emitClass(C,R)),this.forEachEnum("leading-and-interposing",(C,R)=>this.emitEnum(C,R)),this.forEachUnion("leading-and-interposing",(C,R)=>this.emitUnion(C,R)),!(this._options.justTypes||this._options.justTypesAndPackage)&&this.emitHelperFunctions()}}e.GoRenderer=k}(Pl)),Pl}var Il={},Kp;function Cg(){return Kp||(Kp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.CPlusPlusRenderer=e.MemberNames=e.GlobalNames=e.IncludeKind=e.CPlusPlusTargetLanguage=e.cPlusPlusOptions=void 0;const i=et(),n=qt(),a=mt(),l=pt(),d=Ft(),u=Dt(),c=On(),w=Nt(),U=Qe(),F=Wt(),O=zt(),M=Qe(),L=Ba(),_=_g(),b=Xr(),v=["pascal-case","pascal"],h=["underscore-case","underscore"],m=["camel-case","camel"],k=["upper-underscore-case","upper-underscore"],B=["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",[v,h,m,k,B,C]),memberNamingStyle:new O.EnumOption("member-style","Naming style for members",[h,v,m,k,B,C]),enumeratorNamingStyle:new O.EnumOption("enumerator-style","Naming style for enumerators",[k,h,v,m,B,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 R extends n.TargetLanguage{constructor(T="C++",D=["c++","cpp","cplusplus"],W="cpp"){super(T,D,W)}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(T,D){return new x(this,T,(0,O.getOptionValues)(e.cPlusPlusOptions,D))}}e.CPlusPlusTargetLanguage=R;function A(q){const T=(0,b.minMaxValueForType)(q),D=(0,b.minMaxLengthForType)(q),W=(0,b.patternForType)(q);if(!(T===void 0&&D===void 0&&W===void 0))return{minMax:T,minMaxLength:D,pattern:W}}const f=(0,w.legalizeCharacters)(q=>(0,w.isAscii)(q)&&(0,w.isLetterOrUnderscoreOrDigit)(q)),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"],S="std::shared_ptr",P="std::make_shared";var y;(function(q){q[q.ForwardDeclare=0]="ForwardDeclare",q[q.Include=1]="Include"})(y=e.IncludeKind||(e.IncludeKind={}));var r;(function(q){q[q.ClassMemberConstraints=0]="ClassMemberConstraints",q[q.ClassMemberConstraintException=1]="ClassMemberConstraintException",q[q.ValueTooLowException=2]="ValueTooLowException",q[q.ValueTooHighException=3]="ValueTooHighException",q[q.ValueTooShortException=4]="ValueTooShortException",q[q.ValueTooLongException=5]="ValueTooLongException",q[q.InvalidPatternException=6]="InvalidPatternException",q[q.CheckConstraint=7]="CheckConstraint"})(r=e.GlobalNames||(e.GlobalNames={}));var s;(function(q){q[q.MinValue=0]="MinValue",q[q.GetMinValue=1]="GetMinValue",q[q.SetMinValue=2]="SetMinValue",q[q.MaxValue=3]="MaxValue",q[q.GetMaxValue=4]="GetMaxValue",q[q.SetMaxValue=5]="SetMaxValue",q[q.MinLength=6]="MinLength",q[q.GetMinLength=7]="GetMinLength",q[q.SetMinLength=8]="SetMinLength",q[q.MaxLength=9]="MaxLength",q[q.GetMaxLength=10]="GetMaxLength",q[q.SetMaxLength=11]="SetMaxLength",q[q.Pattern=12]="Pattern",q[q.GetPattern=13]="GetPattern",q[q.SetPattern=14]="SetPattern"})(s=e.MemberNames||(e.MemberNames={}));function p(q,T){return T.length===0?[]:[q,T]}class g{constructor(T,D){this._start=T,this._end=D}wrap(T,D){return[p(T,this._start),D,this._end]}}class I{constructor(T,D,W,J,X,Q,re,se){this._stringType=T,this._constStringType=D,this._smatch=W,this._regex=J,this._stringLiteralPrefix=X,this._toString=Q,this._encodingClass=re,this._encodingFunction=se}getType(){return this._stringType}getConstType(){return this._constStringType}getSMatch(){return this._smatch}getRegex(){return this._regex}createStringLiteral(T){return[this._stringLiteralPrefix,'"',T,'"']}wrapToString(T){return this._toString.wrap([],T)}}class x extends F.ConvenienceRenderer{constructor(T,D,W){super(T,D),this._options=W,this._gettersAndSettersForPropertyName=new Map,this.NarrowString=new class extends I{constructor(){super("std::string","const std::string & ","std::smatch","std::regex","",new g(["std::to_string("],[")"]),"","")}wrapEncodingChange(J,X,Q,re){return re}emitHelperFunctions(){}},this.WideString=new class extends I{constructor(J){super("std::wstring","const std::wstring & ","std::wsmatch","std::wregex","L",new g(["std::to_wstring("],[")"]),"Utf16_Utf8","convert"),this.superThis=J}wrapEncodingChange(J,X,Q,re){return this.superThis.sourcelikeToString(X)===this.superThis.sourcelikeToString(Q)?re:[p(J,[this._encodingClass]),"<",X,", ",Q,">::",this._encodingFunction,"(",re,")"]}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=W.enumType,this._namespaceNames=W.namespace.split("::"),this.typeNamingStyle=W.typeNamingStyle,this._namedTypeNameStyle=(0,w.makeNameStyle)(this.typeNamingStyle,f),this.enumeratorNamingStyle=W.enumeratorNamingStyle,this._memberNameStyle=(0,w.makeNameStyle)(W.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=[],W.wstring?this._stringType=this.WideString:this._stringType=this.NarrowString,W.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(T){return T.kind==="union"}isOptionalAsValuePossible(T){if(this.isForwardDeclaredType(T))return!1;if(this.isUnion(T)){const[,D]=(0,l.removeNullFromUnion)(T);if(D.size===1){const W=(0,U.defined)((0,i.iterableFirst)(D));return!this.isCycleBreakerType(W)}}return!this.isCycleBreakerType(T)}isImplicitCycleBreaker(T){const D=T.kind;return D==="array"||D==="map"}optionalTypeStack(){return this._optionalType}optionalFactoryStack(){return this._optionalFactory}optionalTypeHeap(){return S}optionalFactoryHeap(){return P}optionalType(T){return this.isOptionalAsValuePossible(T)?this.optionalTypeStack():this.optionalTypeHeap()}optionalTypeLabel(T){return this.isOptionalAsValuePossible(T)?"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(T){return(0,U.defined)(this._generatedGlobalNames.get(T))}lookupMemberName(T){return(0,U.defined)(this._generatedMemberNames.get(T))}addGlobalName(T){const D=this._namedTypeNameStyle(r[T]);this._generatedGlobalNames.set(T,D),this._forbiddenGlobalNames.push(D)}addMemberName(T){this._generatedMemberNames.set(T,this._memberNameStyle(s[T]))}setupGlobalNames(){for(const T of(0,U.numberEnumValues)(r))this.addGlobalName(T);for(const T of(0,U.numberEnumValues)(s))this.addMemberName(T)}forbiddenNamesForGlobalNamespace(){return[...E,...this._forbiddenGlobalNames]}forbiddenForObjectProperties(T,D){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(T,D){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(T,D,W,J,X){const Q=new d.DependencyName(this._memberNamingFunction,X.order,ne=>`get_${ne(X)}`),re=new d.DependencyName(this._memberNamingFunction,X.order,ne=>`getMutable_${ne(X)}`),se=new d.DependencyName(this._memberNamingFunction,X.order,ne=>`set_${ne(X)}`);return[Q,re,se]}makePropertyDependencyNames(T,D,W,J,X){const Q=this.makeNamesForPropertyGetterAndSetter(T,D,W,J,X);return this._gettersAndSettersForPropertyName.set(X,Q),Q}withConst(T){return this._options.westConst?["const ",T]:[T," const"]}emitInclude(T,D){this.emitLine("#include ",T?"<":'"',D,T?">":'"')}startFile(T,D=!0){(0,M.assert)(this._currentFilename===void 0,"Previous file wasn't finished"),T!==void 0&&(this._currentFilename=this.sourcelikeToString(T)),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",(W,J)=>{this.emitLine("// ",J," data = nlohmann::json::parse(jsonString);")}):this.emitLine("// ",T," 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",(W,J)=>{this.emitLine("// std::wcout << ","wdump((nlohmann::json) ",J,");")}))),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"),D&&!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(T){return T.kind==="class"}emitDescriptionBlock(T){this.emitCommentLines(T," * ","/**"," */")}emitBlock(T,D,W,J=!0){this.emitLine(T," {"),this.preventBlankLine(),J?this.indent(W):W(),this.preventBlankLine(),D?this.emitLine("};"):this.emitLine("}")}emitNamespaces(T,D){const W=(0,i.toReadonlyArray)(T),J=W[0];J===void 0?D():this.emitBlock(["namespace ",J],!1,()=>this.emitNamespaces(W.slice(1),D),W.length===1)}cppTypeInOptional(T,D,W,J){if(T.size===1)return this.cppType((0,U.defined)((0,i.iterableFirst)(T)),D,W,J,!1);const X=[];for(const Q of T)X.length!==0&&X.push(", "),X.push(this.cppType(Q,{needsForwardIndirection:!0,needsOptionalIndirection:!1,inJsonNamespace:D.inJsonNamespace},W,!1,!1));return[this._variantType,"<",X,">"]}variantType(T,D){const[W,J]=(0,l.removeNullFromUnion)(T,!0);(0,M.assert)(J.size>=2,"Variant not needed for less than two types.");const X=W!==null,Q=this.cppTypeInOptional(J,{needsForwardIndirection:!X,needsOptionalIndirection:!X,inJsonNamespace:D},!0,!1);return X?[this.optionalType(T),"<",Q,">"]:Q}ourQualifier(T){return T?[(0,i.arrayIntercalate)("::",this._namespaceNames),"::"]:[]}jsonQualifier(T){return T?[]:"nlohmann::"}variantIndirection(T,D,W){return D?[this.optionalType(T),"<",W,">"]:W}cppType(T,D,W,J,X){const Q=D.inJsonNamespace;if(X&&T instanceof a.UnionType){for(const se of T.getChildren())if(se.isNullable){X=!1;break}}let re=(0,l.matchType)(T,se=>(X=!1,(0,u.maybeAnnotated)(W,c.anyTypeIssueAnnotation,[this.jsonQualifier(Q),"json"])),se=>(X=!1,(0,u.maybeAnnotated)(W,c.nullTypeIssueAnnotation,[this.jsonQualifier(Q),"json"])),se=>"bool",se=>"int64_t",se=>"double",se=>J?"std::string":this._stringType.getType(),se=>["std::vector<",this.cppType(se.items,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:Q},W,J,!1),">"],se=>this.variantIndirection(se,D.needsForwardIndirection&&this.isForwardDeclaredType(se)&&!X,[this.ourQualifier(Q),this.nameForNamedType(se)]),se=>{let ne=this._stringType.getType();return J&&(ne="std::string"),["std::map<",ne,", ",this.cppType(se.values,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:Q},W,J,!1),">"]},se=>[this.ourQualifier(Q),this.nameForNamedType(se)],se=>{const ne=(0,l.nullableFromUnion)(se);return ne!==null?(X=!0,this.cppType(ne,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:Q},W,J,!1)):[this.ourQualifier(Q),this.nameForNamedType(se)]});return X?[this.optionalType(T),"<",re,">"]:re}generatedTypes(T,D){const W=[],J=(X,Q,re,se)=>{if(se instanceof a.ArrayType)J(X,Q,re+1,se.items);else if(se instanceof a.ClassType)W.push({name:this.nameForNamedType(se),type:se,level:re,variant:Q,forceInclude:X});else if(se instanceof a.MapType)J(X,Q,re+1,se.values);else if(se instanceof a.EnumType)W.push({name:this.nameForNamedType(se),type:se,level:re,variant:Q,forceInclude:!1});else if(se instanceof a.UnionType){this.unionNeedsName(se)&&T&&(X=!0,W.push({name:this.nameForNamedType(se),type:se,level:re,variant:!0,forceInclude:X}));const[ne,me]=(0,l.removeNullFromUnion)(se);Q=ne!==null;for(const ge of me)J(X,Q,re+1,ge)}};return J(!1,!1,0,D),W}constraintMember(T){return this._memberNameStyle(T+"Constraint")}emitMember(T,D){this.emitLine(T," ",D,";")}emitClassMembers(T,D){this._options.codeFormat&&(this.emitLine("private:"),this.forEachClassProperty(T,"none",(W,J,X)=>{if(this.emitMember(this.cppType(X.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,X.isOptional),W),D!==void 0&&D.has(J)){const Q=this.lookupGlobalName(r.ClassMemberConstraints);this.emitMember(Q,this.constraintMember(J))}}),this.ensureBlankLine(),this.emitLine("public:")),this.forEachClassProperty(T,"none",(W,J,X)=>{if(this.emitDescription(this.descriptionForClassProperty(T,J)),!this._options.codeFormat)this.emitMember(this.cppType(X.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,X.isOptional),W);else{const[Q,re,se]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(W)),ne=this.cppType(X.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,X.isOptional),me=this.lookupGlobalName(r.CheckConstraint);X.type instanceof a.UnionType&&X.type.findMember("null")!==void 0||X.isOptional&&X.type.kind!=="null"&&X.type.kind!=="any"?(this.emitLine(ne," ",Q,"() const { return ",W,"; }"),D!==void 0&&D.has(J)?this.emitLine("void ",se,"(",ne," value) { if (value) ",me,"(",this._stringType.createStringLiteral([W]),", ",this.constraintMember(J),", *value); this->",W," = value; }"):this.emitLine("void ",se,"(",ne," value) { this->",W," = value; }")):(this.emitLine(this.withConst(ne)," & ",Q,"() const { return ",W,"; }"),this.emitLine(ne," & ",re,"() { return ",W,"; }"),D!==void 0&&D.has(J)?this.emitLine("void ",se,"(",this.withConst(ne)," & value) { ",me,"(",this._stringType.createStringLiteral([W]),", ",this.constraintMember(J),", value); this->",W," = value; }"):this.emitLine("void ",se,"(",this.withConst(ne)," & value) { this->",W," = value; }")),this.ensureBlankLine()}})}generateClassConstraints(T){let D=new Map;return this.forEachClassProperty(T,"none",(W,J,X)=>{const Q=A(X.type);if(Q===void 0)return;const{minMax:re,minMaxLength:se,pattern:ne}=Q;D.set(J,[this.constraintMember(J),"(",re!==void 0&&re[0]!==void 0?String(re[0]):this._nulloptType,", ",re!==void 0&&re[1]!==void 0?String(re[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,", ",ne===void 0?this._nulloptType:[this._stringType.getType(),"(",this._stringType.createStringLiteral([(0,w.stringEscape)(ne)]),")"],")"])}),D.size===0?void 0:D}emitClass(T,D){this.emitDescription(this.descriptionForType(T)),this.emitBlock([this._options.codeFormat?"class ":"struct ",D],!0,()=>{const W=this.generateClassConstraints(T);if(this._options.codeFormat){if(this.emitLine("public:"),W===void 0)this.emitLine(D,"() = default;");else{this.emitLine(D,"() :");let J=0;W.forEach((X,Q)=>{J++,this.indent(()=>{J===W.size?this.emitLine(X):this.emitLine(X,",")})}),this.emitLine("{}")}this.emitLine("virtual ~",D,"() = default;"),this.ensureBlankLine()}this.emitClassMembers(T,W)})}emitTopLevelHeaders(T,D){if(T instanceof a.MapType&&this._stringType!==this.NarrowString){const W=this.ourQualifier(!0);this.emitBlock(["struct adl_serializer<",W,D,">"],!0,()=>{this.emitLine("template <>"),this.emitLine("static void from_json(",this.withConst("json")," & j, ",W,D," & x);"),this.emitLine("static void to_json(json & j, ",this.withConst([W,D])," & x);")})}}emitClassHeaders(T){const D=this.ourQualifier(!1);this.emitLine("void from_json(",this.withConst("json")," & j, ",D,T," & x);"),this.emitLine("void to_json(json & j, ",this.withConst([D,T])," & x);")}emitTopLevelFunction(T,D){if(T instanceof a.MapType&&this._stringType!==this.NarrowString){const W=this.ourQualifier(!0);let J,X;this.emitBlock(["inline void adl_serializer<",W,D,">::from_json(",this.withConst("json")," & j, ",W,D,"& x)"],!1,()=>{J=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),X=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),this.emitLine(["x = ",this._stringType.wrapEncodingChange([W],J,X,["j.get<",J,">()"]),";"])}),this.emitBlock(["inline void adl_serializer<",W,D,">::to_json(json & j, ",this.withConst([W,D])," & x)"],!1,()=>{J=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),X=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),this.emitLine(["j = ",this._stringType.wrapEncodingChange([W],J,X,"x"),";"])})}}emitClassFunctions(T,D){const W=this.ourQualifier(!1);let J,X;this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",W,D,"& x)"],!1,()=>{this.forEachClassProperty(T,"none",(Q,re,se)=>{const[,,ne]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(Q)),me=se.type;let ge;if(this._options.codeFormat?ge=new g(["x.",ne,"("],[")"]):ge=new g(["x.",Q," = "],[]),me.kind==="null"||me.kind==="any"){this.emitLine(ge.wrap([],[W,"get_untyped(j, ",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(re)])]),")"]),";");return}if(se.isOptional||me instanceof a.UnionType){const[Ae,pe]=function(){if(me instanceof a.UnionType){const[le,ye]=(0,l.removeNullFromUnion)(me,!0);return[le!==null||se.isOptional,ye]}else{let le=new Set;return le.add(me),[!0,le]}}();if(Ae){J=this.cppTypeInOptional(pe,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!0),X=this.cppTypeInOptional(pe,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!1),this.emitLine(ge.wrap([],[this._stringType.wrapEncodingChange([W],[this.optionalType(me),"<",J,">"],[this.optionalType(me),"<",X,">"],[W,`get_${this.optionalTypeLabel(me)}_optional<`,J,">(j, ",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(re)])]),")"])]),";");return}}J=this.cppType(me,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,se.isOptional),X=this.cppType(me,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,se.isOptional),this.emitLine(ge.wrap([],this._stringType.wrapEncodingChange([W],J,X,["j.at(",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,w.stringEscape)(re)])),").get<",J,">()"])),";")})}),this.ensureBlankLine(),this.emitBlock(["inline void to_json(json & j, ",this.withConst([W,D])," & x)"],!1,()=>{this.emitLine("j = json::object();"),this.forEachClassProperty(T,"none",(Q,re,se)=>{const ne=se.type;J=this.cppType(ne,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,se.isOptional),X=this.cppType(ne,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,se.isOptional);const[me,,]=(0,U.defined)(this._gettersAndSettersForPropertyName.get(Q));let ge;this._options.codeFormat?ge=[me,"()"]:ge=[Q];let Ae=["j[",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,w.stringEscape)(re)])),"] = ",this._stringType.wrapEncodingChange([W],J,X,["x.",ge]),";"];se.isOptional&&this._options.hideNullOptional?this.emitBlock(["if (",this._stringType.wrapEncodingChange([W],J,X,["x.",ge]),")"],!1,()=>{this.emitLine(Ae)}):this.emitLine(Ae)})})}emitEnum(T,D){const W=[],J=(0,_.enumCaseValues)(T,this.targetLanguage.name);this.forEachEnumCase(T,"none",(X,Q)=>{if(W.length>0&&W.push(", "),W.push(X),J!==void 0){const[re]=(0,L.getAccessorName)(J,Q);re!==void 0&&W.push(" = ",re.toString())}}),this.emitDescription(this.descriptionForType(T)),this.emitLine("enum class ",D," : ",this._enumType," { ",W," };")}emitUnionTypedefs(T,D){this.emitLine("using ",D," = ",this.variantType(T,!1),";")}emitUnionHeaders(T){const D=(0,l.removeNullFromUnion)(T,!0)[1],W=this.cppTypeInOptional(D,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitLine("template <>"),this.emitBlock(["struct adl_serializer<",W,">"],!0,()=>{this.emitLine("static void from_json(",this.withConst("json")," & j, ",W," & x);"),this.emitLine("static void to_json(json & j, ",this.withConst(W)," & x);")})}emitUnionFunctions(T){const D=this.ourQualifier(!0),W=[["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"]],J=(0,l.removeNullFromUnion)(T,!0)[1],X=this.cppTypeInOptional(J,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitBlock(["inline void adl_serializer<",X,">::from_json(",this.withConst("json")," & j, ",X," & x)"],!1,()=>{let Q=!0;for(const[re,se]of W){const ne=(0,i.iterableFind)(J,me=>me.kind===re);ne!==void 0&&(this.emitLine(Q?"if":"else if"," (j.",se,"())"),this.indent(()=>{const me=this.cppType(ne,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);let ge=this.cppType(ne,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1);this.emitLine("x = ",this._stringType.wrapEncodingChange([D],me,ge,["j.get<",me,">()"]),";")}),Q=!1)}this.emitLine('else throw "Could not deserialize";')}),this.ensureBlankLine(),this.emitBlock(["inline void adl_serializer<",X,">::to_json(json & j, ",this.withConst(X)," & x)"],!1,()=>{this.emitBlock(["switch (x.",this._variantIndexMethodName,"())"],!1,()=>{let Q=0;for(const re of J)this.emitLine("case ",Q.toString(),":"),this.indent(()=>{const se=this.cppType(re,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),ne=this.cppType(re,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);this.emitLine("j = ",this._stringType.wrapEncodingChange([D],se,ne,[this._options.boost?"boost::get<":"std::get<",se,">(x)"]),";"),this.emitLine("break;")}),Q++;this.emitLine('default: throw "Input JSON does not conform to schema";')})})}emitEnumHeaders(T){const D=this.ourQualifier(!1);this.emitLine("void from_json(",this.withConst("json")," & j, ",D,T," & x);"),this.emitLine("void to_json(json & j, ",this.withConst([D,T])," & x);")}isLargeEnum(T){return T.cases.size>15}emitEnumFunctions(T,D){const W=this.ourQualifier(!1);this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",W,D," & x)"],!1,()=>{if(this.isLargeEnum(T))this.emitBlock(["static std::unordered_map<",this._stringType.getType(),", ",W,D,"> enumValues"],!0,()=>{this.forEachEnumCase(T,"none",(J,X)=>{this.emitLine("{",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(X)])]),", ",W,D,"::",J,"},")})}),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 J=!0;this.forEachEnumCase(T,"none",(X,Q)=>{const re=J?"":"else ";this.emitLine(re,"if (j == ",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(Q)])]),") x = ",W,D,"::",X,";"),J=!1}),this.emitLine('else throw "Input JSON does not conform to schema";')}}),this.ensureBlankLine(),this.emitBlock(["inline void to_json(json & j, ",this.withConst([W,D])," & x)"],!1,()=>{this.emitBlock("switch (x)",!1,()=>{this.forEachEnumCase(T,"none",(J,X)=>{this.emitLine("case ",W,D,"::",J,": j = ",this._stringType.wrapEncodingChange([W],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,w.stringEscape)(X)])]),"; break;")}),this.emitLine('default: throw "This should not happen";')})})}emitTopLevelTypedef(T,D){this.emitLine("using ",D," = ",this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,!1),";")}emitAllUnionFunctions(){this.forEachUniqueUnion("leading-and-interposing",T=>this.sourcelikeToString(this.cppTypeInOptional((0,l.removeNullFromUnion)(T,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),T=>this.emitUnionFunctions(T))}emitAllUnionHeaders(){this.forEachUniqueUnion("interposing",T=>this.sourcelikeToString(this.cppTypeInOptional((0,l.removeNullFromUnion)(T,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),T=>this.emitUnionHeaders(T))}emitOptionalHelpers(){this.emitLine("#ifndef NLOHMANN_OPT_HELPER"),this.emitLine("#define NLOHMANN_OPT_HELPER"),this.emitNamespaces(["nlohmann"],()=>{const T=(D,W)=>{this.emitLine("template <typename T>"),this.emitBlock(["struct adl_serializer<",D,"<T>>"],!0,()=>{this.emitBlock(["static void to_json(json & j, ",this.withConst([D,"<T>"])," & opt)"],!1,()=>{this.emitLine("if (!opt) j = nullptr; else j = *opt;")}),this.ensureBlankLine(),this.emitBlock(["static ",D,"<T> from_json(",this.withConst("json")," & j)"],!1,()=>{this.emitLine(`if (j.is_null()) return ${W}<T>(); else return ${W}<T>(j.get<T>());`)})})};T(this.optionalTypeHeap(),this.optionalFactoryHeap()),T(this.optionalTypeStack(),this.optionalFactoryStack())}),this.emitLine("#endif")}emitDeclaration(T){if(T.kind==="forward")this._options.codeFormat?this.emitLine("class ",this.nameForNamedType(T.type),";"):this.emitLine("struct ",this.nameForNamedType(T.type),";");else if(T.kind==="define"){const D=T.type,W=this.nameForNamedType(D);if(D instanceof a.ClassType)this.emitClass(D,W);else if(D instanceof a.EnumType)this.emitEnum(D,W);else if(D instanceof a.UnionType)this.emitUnionTypedefs(D,W);else return(0,U.panic)(`Cannot declare type ${D.kind}`)}else return(0,U.assertNever)(T.kind)}emitGetterSetter(T,D,W,J){this.emitLine("void ",W,"(",T," ",J,") { this->",J," = ",J,"; }"),this.emitLine("auto ",D,"() const { return ",J,"; }")}emitConstraintClasses(){const T=this.ourQualifier(!1),D=this.lookupMemberName(s.GetMinValue),W=this.lookupMemberName(s.GetMaxValue),J=this.lookupMemberName(s.GetMinLength),X=this.lookupMemberName(s.GetMaxLength),Q=this.lookupMemberName(s.GetPattern),re=this.lookupGlobalName(r.ClassMemberConstraints);this.emitBlock(["class ",re],!0,()=>{this.emitLine("private:");let ge=this.getConstraintMembers();for(const pe of ge)this.emitMember([this._optionalType,"<",pe.cppType,">"],this.lookupMemberName(pe.name));this.ensureBlankLine(),this.emitLine("public:"),this.emitLine(re,"("),this.indent(()=>{this.iterableForEach(ge,({name:pe,cppType:le},ye)=>{const de=ye==="first"||ye==="middle"?",":[];this.emitLine(this._optionalType,"<",le,"> ",this.lookupMemberName(pe),de)})});const Ae=ge.map(({name:pe})=>{const le=this.lookupMemberName(pe);return[le,"(",le,")"]});this.emitLine(") : ",(0,i.arrayIntercalate)([", "],Ae)," {}"),this.emitLine(re,"() = default;"),this.emitLine("virtual ~",re,"() = default;");for(const pe of ge)this.ensureBlankLine(),this.emitGetterSetter((0,i.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([T],this._stringType.getType(),this.NarrowString.getType(),["msg"]),") {}")}),this.ensureBlankLine();const ne=[r.ValueTooLowException,r.ValueTooHighException,r.ValueTooShortException,r.ValueTooLongException,r.InvalidPatternException];for(const ge of ne){const Ae=this.lookupGlobalName(ge);this.emitBlock(["class ",Ae," : public ",se],!0,()=>{this.emitLine("public:"),this.emitLine(Ae,"(",this._stringType.getConstType()," msg) : ",se,"(msg) {}")}),this.ensureBlankLine()}const me=this.lookupGlobalName(r.CheckConstraint);this.emitBlock(["inline void ",me,"(",this._stringType.getConstType()," name, ",this.withConst(re)," & c, int64_t value)"],!1,()=>{this.emitBlock(["if (c.",D,"() != ",this._nulloptType," && value < *c.",D,"())"],!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.",D,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",W,"() != ",this._nulloptType," && value > *c.",W,"())"],!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.",W,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine()}),this.ensureBlankLine(),this.emitBlock(["inline void ",me,"(",this._stringType.getConstType()," name, ",this.withConst(re)," & c, ",this._stringType.getConstType()," value)"],!1,()=>{this.emitBlock(["if (c.",J,"() != ",this._nulloptType," && value.length() < *c.",J,"())"],!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.",J,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",X,"() != ",this._nulloptType," && value.length() > *c.",X,"())"],!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.",X,"()"])," + ",this._stringType.createStringLiteral([")"]),");")}),this.ensureBlankLine(),this.emitBlock(["if (c.",Q,"() != ",this._nulloptType,")"],!1,()=>{this.emitLine(this._stringType.getSMatch()," result;"),this.emitLine("std::regex_search(value, result, ",this._stringType.getRegex(),"( *c.",Q,"() ));"),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.",Q,"() + ",this._stringType.createStringLiteral([")"]),");")})}),this.ensureBlankLine()})}emitHelperFunctions(){this._stringType.emitHelperFunctions(),this._options.codeFormat&&(0,i.iterableSome)(this.typeGraph.allTypesUnordered(),W=>A(W)!==void 0)&&(this.emitConstraintClasses(),this.ensureBlankLine()),this.ensureBlankLine();let T="NLOHMANN_UNTYPED_",D="NLOHMANN_OPTIONAL_";if(this._namespaceNames.forEach(W=>{T+=W,T+="_",D+=W,D+="_"}),T+="HELPER",T+="HELPER",this.emitLine("#ifndef "+T),this.emitLine("#define "+T),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 "+D),this.emitLine("#define "+D);const W=(J,X)=>{this.emitLine("template <typename T>"),this.emitBlock(["inline ",J,`<T> get_${X}_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<",J,"<T>>();")}),this.emitLine("return ",J,"<T>();")}),this.ensureBlankLine(),this.emitLine("template <typename T>"),this.emitBlock(["inline ",J,`<T> get_${X}_optional(`,this.withConst("json")," & j, std::string property)"],!1,()=>{this.emitLine(`return get_${X}_optional<T>(j, property.data());`)})};W(this.optionalTypeHeap(),"heap"),W(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(T=>this.isLargeEnum(T))&&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",T=>this.emitDeclaration(T)),!this._options.justTypes&&this.forEachTopLevel("leading",(T,D)=>this.emitTopLevelTypedef(T,D),T=>this.namedTypeToNameForTopLevel(T)===void 0)}gatherUserNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachObject("leading-and-interposing",(T,D)=>this.emitClassHeaders(D)),this.forEachEnum("leading-and-interposing",(T,D)=>this.emitEnumHeaders(D))})}gatherNlohmannNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachTopLevel("leading-and-interposing",(T,D)=>this.emitTopLevelHeaders(T,D)),this.ensureBlankLine(),this.emitAllUnionHeaders()})}emitUserNamespaceImpls(){this.forEachObject("leading-and-interposing",(T,D)=>this.emitClassFunctions(T,D)),this.forEachEnum("leading-and-interposing",(T,D)=>this.emitEnumFunctions(T,D))}emitNlohmannNamespaceImpls(){this.forEachTopLevel("leading-and-interposing",(T,D)=>this.emitTopLevelFunction(T,D),T=>this.namedTypeToNameForTopLevel(T)===void 0),this.ensureBlankLine(),this.emitAllUnionFunctions()}emitGenerators(){if(this._options.justTypes){let T=!1;const D=this.gatherSource(()=>this.emitNamespaces(this._namespaceNames,()=>{T=this.forEachTopLevel("none",(W,J)=>this.emitTopLevelTypedef(W,J),W=>this.namedTypeToNameForTopLevel(W)===void 0)}));T&&(this.emitGatheredSource(D),this.ensureBlankLine())}else{let T=this.gatherUserNamespaceForwardDecls(),D=this.gatherNlohmannNamespaceForwardDecls();T.length==0&&D.length>0?this.emitNamespaces(["nlohmann"],()=>{this.emitGatheredSource(D),this.emitNlohmannNamespaceImpls()}):T.length>0&&D.length==0?this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(T),this.emitUserNamespaceImpls()}):T.length>0&&D.length>0&&(this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(T)}),this.emitNamespaces(["nlohmann"],()=>{this.emitGatheredSource(D)}),this.emitNamespaces(this._namespaceNames,()=>{this.emitUserNamespaceImpls()}),this.emitNamespaces(["nlohmann"],()=>{this.emitNlohmannNamespaceImpls()}))}}emitSingleSourceStructure(T){this.startFile(T),this._generatedFiles.add(T),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(T,D,W,J){const X=this.generatedTypes(T,W);for(const Q of X){const re=this.sourcelikeToString(Q.name);let se={kind:void 0,typeKind:void 0};if(Q.type instanceof a.ClassType)se.typeKind="class",se.kind=Q.level===0?y.Include:y.ForwardDeclare,Q.forceInclude&&(se.kind=y.Include);else if(Q.type instanceof a.EnumType)se.typeKind="enum",se.kind=y.ForwardDeclare;else if(Q.type instanceof a.UnionType){se.typeKind="union";const[ne]=(0,l.removeNullFromUnion)(Q.type,!0);ne!==void 0||Q.forceInclude?se.kind=y.Include:se.kind=y.ForwardDeclare}if(D.has(re)){const ne=D.get(re);ne!==void 0&&ne.kind===y.ForwardDeclare&&D.set(re,se)}else D.set(re,se)}}emitIncludes(T,D){let W=new Map;if(T instanceof a.UnionType?this.updateIncludes(!1,W,T,D):T instanceof a.ClassType&&this.forEachClassProperty(T,"none",(J,X,Q)=>{this.updateIncludes(!0,W,Q.type,D)}),W.size!==0){let J=0,X=0;W.forEach((Q,re)=>{re!==D&&(Q.kind!==y.ForwardDeclare?(this.emitInclude(!1,[re,".hpp"]),X++):J++)}),X>0&&this.ensureBlankLine(),J>0&&this.emitNamespaces(this._namespaceNames,()=>{W.forEach((Q,re)=>{re!==D&&Q.kind===y.ForwardDeclare&&(Q.typeKind==="class"||Q.typeKind==="union"?this._options.codeFormat?this.emitLine("class ",re,";"):this.emitLine("struct ",re,";"):Q.typeKind==="enum"?this.emitLine("enum class ",re," : ",this._enumType,";"):(0,U.panic)(`Invalid type "${Q.typeKind}" to forward declare`))})}),this.ensureBlankLine()}}emitDefinition(T,D){const W=this.sourcelikeToString(D)+".hpp";this.startFile(W,!0),this._generatedFiles.add(W),this.emitIncludes(T,this.sourcelikeToString(D)),this.emitNamespaces(this._namespaceNames,()=>{this.emitDescription(this.descriptionForType(T)),this.ensureBlankLine(),this.emitLine("using nlohmann::json;"),this.ensureBlankLine(),T instanceof a.ClassType?this.emitClass(T,D):T instanceof a.EnumType?this.emitEnum(T,D):T instanceof a.UnionType&&this.emitUnionTypedefs(T,D)}),this.finishFile()}emitMultiSourceStructure(T){!this._options.justTypes&&this.haveNamedTypes&&(this.emitHelper(),this.startFile("Generators.hpp",!0),this._allTypeNames.forEach(D=>{this.emitInclude(!1,[D,".hpp"])}),this.ensureBlankLine(),this.emitGenerators(),this.finishFile()),this.forEachNamedType("leading-and-interposing",(D,W)=>{this.emitDefinition(D,W)},(D,W)=>{this.emitDefinition(D,W)},(D,W)=>{this.emitDefinition(D,W)}),this._generatedFiles.has(T)||(this.haveNamedTypes||this.emitHelper(),this.startFile(T),this._generatedFiles.forEach(D=>{this.emitInclude(!1,D)}),this.emitNamespaces(this._namespaceNames,()=>{this.forEachTopLevel("leading",(D,W)=>this.emitTopLevelTypedef(D,W),D=>this.namedTypeToNameForTopLevel(D)===void 0)}),this.finishFile())}emitSourceStructure(T){this._generatedFiles.clear(),this._allTypeNames.clear(),this.forEachDeclaration("none",D=>{const W=(0,l.directlyReachableTypes)(D.type,J=>(0,l.isNamedType)(J)&&(J instanceof a.ClassType||J instanceof a.EnumType||J instanceof a.UnionType)?new Set([this.sourcelikeToString(this.cppType(J,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!0,!1,!1))]):null);this._allTypeNames=(0,i.setUnion)(W,this._allTypeNames)}),this._options.typeSourceStyle?this.emitSingleSourceStructure(T):this.emitMultiSourceStructure(T)}isConversionRequired(T){let D=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),W=this.cppType(T,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);return D!==W}}e.CPlusPlusRenderer=x}(Il)),Il}var Fs={},Vp;function Eg(){return Vp||(Vp=1,function(e){var i=Fs&&Fs.__importDefault||function(P){return P&&P.__esModule?P:{default:P}};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=Dt(),w=Nt(),U=Wt(),F=zt(),O=Qe(),M=i(so()),L="QT";e.objcOptions={features:new F.EnumOption("features","Interface and implementation",[["all",{interface:!0,implementation:!0}],["interface",{interface:!0,implementation:!1}],["implementation",{interface:!1,implementation:!0}]]),justTypes:new F.BooleanOption("just-types","Plain types only",!1),marshallingFunctions:new F.BooleanOption("functions","C-style functions",!1),classPrefix:new F.StringOption("class-prefix","Class prefix","PREFIX",L),extraComments:new F.BooleanOption("extra-comments","Extra comments",!1)};class _ 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(y,r){return new S(this,y,(0,F.getOptionValues)(e.objcOptions,r))}}e.ObjectiveCTargetLanguage=_;function b(P,y){const r=(0,w.splitIntoWords)(y),s=(0,w.combineWords)(r,R,w.firstUpperWordStyle,w.firstUpperWordStyle,w.allUpperWordStyle,w.allUpperWordStyle,"",B);return(0,w.addPrefixIfNecessary)(P,s)}function v(P,y=!1){P==="id"&&(P="identifier");let r=(0,w.splitIntoWords)(P);return y&&(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&&m.indexOf(r[0].word)>=0&&(r=[{word:"the",isAcronym:!1},...r]),(0,w.combineWords)(r,R,w.allLowerWordStyle,w.firstUpperWordStyle,w.allLowerWordStyle,w.allUpperWordStyle,"",B)}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"],m=["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 B(P){return M.default.isAlphabetic(P)||P===95}function C(P){const y=M.default.getCategory(P);return["Nd","Pc","Mn","Mc"].indexOf(y)>=0||B(P)}const R=(0,w.utf16LegalizeCharacters)(C),A="values",f=["new",A];function E(P){const y=P.lastIndexOf("."),r=y!==-1?P.split(".").pop():"m";return P=y!==-1?P.slice(0,y):P,[P,r===void 0?"m":r]}class S extends U.ConvenienceRenderer{constructor(y,r,s){if(super(y,r),this._options=s,s.classPrefix===L){const p=(0,O.defined)((0,n.iterableFirst)(this.topLevels.keys()));this._classPrefix=this.inferClassPrefix(p)}else this._classPrefix=s.classPrefix}inferClassPrefix(y){const r=y.length;let s=0;for(;s<r&&(0,w.fastIsUpperCase)(y.charCodeAt(s));)s+=1;return s<2?L:y.slice(0,s-1)}forbiddenNamesForGlobalNamespace(){return h}forbiddenForObjectProperties(y,r){return{names:m,includeGlobalForbidden:!0}}forbiddenForEnumCases(y,r){return{names:f,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("types",y=>b(this._classPrefix,y))}namerForObjectProperty(y,r){return new u.Namer("properties",s=>v(s,r.type.kind==="bool"),["_","the","one","some","another"])}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return new u.Namer("enum-cases",v,[])}namedTypeToNameForTopLevel(y){return y}emitDescriptionBlock(y){this.emitCommentLines(y,"/// ")}emitBlock(y,r){this.emitLine(y," {"),this.indent(r),this.emitLine("}")}emitMethod(y,r){this.emitLine(y),this.emitLine("{"),this.indent(r),this.emitLine("}")}emitExtraComments(...y){if(this._options.extraComments)for(const r of y)this.emitLine("// ",r)}startFile(y,r){(0,O.assert)(this._currentFilename===void 0,"Previous file wasn't finished"),this._currentFilename=`${this.sourcelikeToString(y)}.${r}`}finishFile(){super.finishFile((0,O.defined)(this._currentFilename)),this._currentFilename=void 0}memoryAttribute(y,r){return(0,d.matchType)(y,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 p=(0,d.nullableFromUnion)(s);return p!==null?this.memoryAttribute(p,!0):"copy"})}objcType(y,r=!1){return(0,d.matchType)(y,s=>["id",""],s=>["id",""],s=>r?["NSNumber"," *"]:["BOOL",""],s=>r?["NSNumber"," *"]:["NSInteger",""],s=>r?["NSNumber"," *"]:["double",""],s=>["NSString"," *"],s=>{const p=s.items,g=this.objcType(p,!0);return(0,d.isAnyOrNull)(p)?["NSArray"," *"]:[["NSArray<",g,">"]," *"]},s=>[this.nameForNamedType(s)," *"],s=>[["NSDictionary<NSString *, ",this.objcType(s.values,!0),">"]," *"],s=>[this.nameForNamedType(s)," *"],s=>{const p=(0,d.nullableFromUnion)(s);return p!==null?this.objcType(p,!0):["id",""]})}jsonType(y){return(0,d.matchType)(y,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(y,...r){return(0,d.matchType)(y,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 p=(0,d.nullableFromUnion)(s);return p!==null?this.fromDynamicExpression(p,r):r})}toDynamicExpression(y,r){return(0,d.matchType)(y,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 p=(0,d.nullableFromUnion)(s);return p!==null?this.implicitlyConvertsFromJSON(p)?["NSNullify(",r,")"]:["NSNullify(",this.toDynamicExpression(p,r),")"]:r})}implicitlyConvertsFromJSON(y){if(y instanceof l.ClassType)return!1;if(y instanceof l.EnumType)return!1;if(y instanceof l.ArrayType)return this.implicitlyConvertsFromJSON(y.items);if(y instanceof l.MapType)return this.implicitlyConvertsFromJSON(y.values);if(y.isPrimitive())return!0;if(y instanceof l.UnionType){const r=(0,d.nullableFromUnion)(y);return r!==null?this.implicitlyConvertsFromJSON(r):!0}else return!1}implicitlyConvertsToJSON(y){return this.implicitlyConvertsFromJSON(y)&&y.kind!=="bool"}emitPropertyAssignment(y,r,s){const p=["_",y];(0,d.matchType)(s,g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,p),";"),g=>this.emitLine(p," = ",this.fromDynamicExpression(g,["(id)",p]),";"),g=>{const I=g.values;this.emitLine(p," = map(",p,", ",["λ(id x, ",this.fromDynamicExpression(I,"x"),")"],");")},g=>this.emitLine(p," = ",this.fromDynamicExpression(g,["(id)",p]),";"),g=>{const I=(0,d.nullableFromUnion)(g);I!==null?this.emitPropertyAssignment(y,r,I):this.emitLine(p," = ",this.fromDynamicExpression(g,p),";")})}emitPrivateClassInterface(y,r){this.emitLine("@interface ",r," (JSONConversion)"),this.emitLine("+ (instancetype)fromJSONDictionary:(NSDictionary *)dict;"),this.emitLine("- (NSDictionary *)JSONDictionary;"),this.emitLine("@end")}pointerAwareTypeName(y){const r=y instanceof l.Type?this.objcType(y):y;return r[1]!==""?r:[r," "]}emitNonClassTopLevelTypedef(y,r){let s=this.objcType(y)[0];this.emitLine("typedef ",s," ",r,";")}topLevelFromDataPrototype(y){return[y," *_Nullable ",y,"FromData(NSData *data, NSError **error)"]}topLevelFromJSONPrototype(y){return[y," *_Nullable ",y,"FromJSON(NSString *json, NSStringEncoding encoding, NSError **error)"]}topLevelToDataPrototype(y,r=!1){const s=this.variableNameForTopLevel(y);return["NSData",r?(0,w.repeatString)(" ",this.sourcelikeToString(y).length-6):""," *_Nullable ",y,"ToData(",y," *",s,", NSError **error)"]}topLevelToJSONPrototype(y,r=!1){const s=this.variableNameForTopLevel(y);return["NSString",r?(0,w.repeatString)(" ",this.sourcelikeToString(y).length-8):""," *_Nullable ",y,"ToJSON(",y," *",s,", NSStringEncoding encoding, NSError **error)"]}emitTopLevelFunctionDeclarations(y,r){this.emitLine(this.topLevelFromDataPrototype(r),";"),this.emitLine(this.topLevelFromJSONPrototype(r),";"),this.emitLine(this.topLevelToDataPrototype(r,!0),";"),this.emitLine(this.topLevelToJSONPrototype(r,!0),";")}emitTryCatchAsError(y,r){this.emitLine("@try {"),this.indent(y),this.emitLine("} @catch (NSException *exception) {"),this.indent(()=>{this.emitLine('*error = [NSError errorWithDomain:@"JSONSerialization" code:-1 userInfo:@{ @"exception": exception }];'),r()}),this.emitLine("}")}emitTopLevelFunctions(y,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(y,"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(y,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(y,r){const s=(0,n.mapContains)(this.topLevels,y);this.emitDescription(this.descriptionForType(y)),this.emitLine("@interface ",r," : NSObject"),this.emitPropertyTable(y,(p,g,I)=>{let x=["nonatomic"];return I.type.isNullable&&x.push("nullable"),x.push(this.memoryAttribute(I.type,I.type.isNullable)),[["@property ",["(",x.join(", "),")"]," "],[this.pointerAwareTypeName(I.type),p,";"]]}),!this._options.justTypes&&s&&(y.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(y){let r=!1;return this.forEachClassProperty(y,"none",(s,p)=>{r=r||(0,w.stringEscape)(p)!==this.sourcelikeToString(s)}),r}hasUnsafeProperties(y){let r=!1;return this.forEachClassProperty(y,"none",(s,p,g)=>{r=r||!this.implicitlyConvertsToJSON(g.type)}),r}emitClassImplementation(y,r){const s=(0,n.mapContains)(this.topLevels,y),p=this.hasIrregularProperties(y),g=this.hasUnsafeProperties(y);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(y,"none",(I,x)=>this.emitLine(`@"${(0,w.stringEscape)(x)}": @"`,I,'",'))}),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(y,"none",(I,x,q)=>{this.implicitlyConvertsFromJSON(q.type)||this.emitPropertyAssignment(I,x,q.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(!p&&!g){this.emitLine("return [self dictionaryWithValuesForKeys:",r,".properties.allValues];");return}this.emitLine("id dict = [[self dictionaryWithValuesForKeys:",r,".properties.allValues] mutableCopy];"),this.ensureBlankLine(),p&&(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];")})})),g&&(this.ensureBlankLine(),this.emitExtraComments("Map values that need translation"),this.emitLine("[dict addEntriesFromDictionary:@{"),this.indent(()=>{this.forEachClassProperty(y,"none",(I,x,q)=>{if(!this.implicitlyConvertsToJSON(q.type)){const T=(0,w.stringEscape)(x),D=["_",I];this.emitLine('@"',T,'": ',this.toDynamicExpression(q.type,D),",")}})}),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(y){this.ensureBlankLine(),this.emitLine(`#pragma mark - ${y}`),this.ensureBlankLine()}variableNameForTopLevel(y){return(0,c.modifySource)(s=>(s=s.slice(this._classPrefix.length),(0,w.camelCase)(s)),y)}emitPseudoEnumInterface(y,r){this.emitDescription(this.descriptionForType(y)),this.emitLine("@interface ",r," : NSObject"),this.emitLine("@property (nonatomic, readonly, copy) NSString *value;"),this.emitLine("+ (instancetype _Nullable)withValue:(NSString *)value;"),this.forEachEnumCase(y,"none",(s,p)=>{this.emitLine("+ (",r," *)",s,";")}),this.emitLine("@end")}emitPseudoEnumImplementation(y,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(y,"none",(p,g)=>{const I=['@"',(0,w.stringEscape)(g),'"'];this.emitLine(I,": [[",r," alloc] initWithValue:",I,"],")})}),this.emitLine("};")}),this.ensureBlankLine(),this.forEachEnumCase(y,"none",(p,g)=>{this.emitLine("+ (",r," *)",p," { return ",s,'[@"',(0,w.stringEscape)(g),'"]; }')}),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(y){if(!(y!=="stdout")){const g=(0,O.defined)((0,n.mapFirst)(this.topLevels));y=this.sourcelikeToString(this.nameForNamedType(g))+".m"}const[s,p]=E(y);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",(I,x)=>{const q=I instanceof l.ClassType?["[",x," fromJSON:json encoding:NSUTF8Encoding error:&error];"]:[x,"FromJSON(json, NSUTF8Encoding, &error);"];this.emitLine("// ",x," *",this.variableNameForTopLevel(x)," = ",q)})),this.ensureBlankLine(),this.emitLine("#import <Foundation/Foundation.h>"),this.ensureBlankLine(),this.forEachNamedType("none",(I,x)=>this.emitLine("@class ",x,";"),(I,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",(I,x)=>this.emitPseudoEnumInterface(I,x))),this.forEachTopLevel("leading-and-interposing",(I,x)=>this.emitNonClassTopLevelTypedef(I,x),I=>!(I instanceof l.ClassType));const g=(0,n.iterableSome)(this.topLevels,([I,x])=>!(x instanceof l.ClassType));!this._options.justTypes&&(g||this._options.marshallingFunctions)&&(this.ensureBlankLine(),this.emitMark("Top-level marshaling functions"),this.forEachTopLevel("leading-and-interposing",(I,x)=>this.emitTopLevelFunctionDeclarations(I,x),I=>this._options.marshallingFunctions||!(I instanceof l.ClassType))),this.emitMark("Object interfaces"),this.forEachNamedType("leading-and-interposing",(I,x)=>this.emitClassInterface(I,x),()=>null,()=>null),this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_END"),this.finishFile()}this._options.features.implementation&&(this.startFile(s,p),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",(g,I)=>this.emitPrivateClassInterface(g,I),()=>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",(g,I)=>this.emitPseudoEnumImplementation(g,I))),this.ensureBlankLine(),this.emitMapFunction(),this.ensureBlankLine(),this.emitMark("JSON serialization"),this.forEachTopLevel("leading-and-interposing",(g,I)=>this.emitTopLevelFunctions(g,I))),this.forEachNamedType("leading-and-interposing",(g,I)=>this.emitClassImplementation(g,I),()=>null,()=>null),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("NS_ASSUME_NONNULL_END")),this.finishFile())}get needsMap(){function y(r){return r instanceof l.MapType||r instanceof l.ArrayType||r instanceof l.ClassType&&(0,n.mapSome)(r.getProperties(),s=>y(s.type))}return(0,n.iterableSome)(this.typeGraph.allTypesUnordered(),y)}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=S}(Fs)),Fs}var Rl={},Zp;function Ag(){return Zp||(Zp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JacksonRenderer=e.JavaRenderer=e.javaNameStyle=e.stringEscape=e.JavaTargetLanguage=e.javaOptions=void 0;const i=On(),n=Wt(),a=Ft(),l=zt(),d=Dt(),u=vr(),c=Nt(),w=Qe(),U=qt(),F=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 M 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 S=(0,l.getOptionValues)(e.javaOptions,E);return S.justTypes?new C(this,f,S):new R(this,f,S)}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=M;const L=["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 _(A){return A===95?!0:(0,c.isAscii)(A)&&(0,c.isLetter)(A)}function b(A){return _(A)||(0,c.isAscii)(A)&&(0,c.isDigit)(A)}const v=(0,c.utf16LegalizeCharacters)(b);function h(A,f,E,S=c.allUpperWordStyle){const P=(0,c.splitIntoWords)(E);return(0,c.combineWords)(P,v,f?c.allUpperWordStyle:A?c.firstUpperWordStyle:c.allLowerWordStyle,f?c.allUpperWordStyle:c.firstUpperWordStyle,f||A?c.allUpperWordStyle:c.allLowerWordStyle,S,f?"_":"",_)}e.javaNameStyle=h;class m{constructor(f,E){this._renderer=f,this._className=E,this.shouldEmitDateTimeConverter=!0,this.shouldEmitTimeConverter=!0,this.shouldEmitDateConverter=!0}}class k extends m{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 B extends m{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,S){switch(super(f,E),this._options=S,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname="Converter",this._converterKeywords=[],S.dateTimeProvider){default:case"java8":this._dateTimeProvider=new k(this,this._converterClassname);break;case"legacy":this._dateTimeProvider=new B(this,this._converterClassname);break}}forbiddenNamesForGlobalNamespace(){return[...L,...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,S,P,y){const r=new a.DependencyName(this.getNameStyling("propertyNamingFunction"),y.order,p=>`get_${p(y)}`),s=new a.DependencyName(this.getNameStyling("propertyNamingFunction"),y.order,p=>`set_${p(y)}`);return[r,s]}makePropertyDependencyNames(f,E,S,P,y){const r=this.makeNamesForPropertyGetterAndSetter(f,E,S,P,y);return this._gettersAndSettersForPropertyName.set(y,r),r}getNameStyling(f){return{typeNamingFunction:(0,a.funPrefixNamer)("types",S=>h(!0,!1,S,(0,u.acronymStyle)(this._options.acronymStyle))),propertyNamingFunction:(0,a.funPrefixNamer)("properties",S=>h(!1,!1,S,(0,u.acronymStyle)(this._options.acronymStyle))),enumCaseNamingFunction:(0,a.funPrefixNamer)("enum-cases",S=>h(!0,!0,S,(0,u.acronymStyle)(this._options.acronymStyle)))}[f]}fieldOrMethodName(f,E){return this.topLevels.size===1?f:[E,(0,c.capitalize)(f)]}methodName(f,E,S){return this.topLevels.size===1?[f,E]:[f,S,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,S="Exception"){this.emitLine("try {"),this.indent(f),this.emitLine("} catch (",S," ex) {"),this.indent(E),this.emitLine("}")}emitIgnoredTryCatchBlock(f){this.emitTryCatch(f,()=>this.emitLine("// Ignored"))}javaType(f,E,S=!1){return(0,O.matchType)(E,P=>(0,d.maybeAnnotated)(S,i.anyTypeIssueAnnotation,"Object"),P=>(0,d.maybeAnnotated)(S,i.nullTypeIssueAnnotation,"Object"),P=>f?"Boolean":"boolean",P=>f?"Long":"long",P=>f?"Double":"double",P=>"String",P=>this._options.useList?["List<",this.javaType(!0,P.items,S),">"]:[this.javaType(!1,P.items,S),"[]"],P=>this.nameForNamedType(P),P=>["Map<String, ",this.javaType(!0,P.values,S),">"],P=>this.nameForNamedType(P),P=>{const y=(0,O.nullableFromUnion)(P);return y!==null?this.javaType(!0,y,S):this.nameForNamedType(P)},P=>P.kind==="time"?this._dateTimeProvider.timeType:P.kind==="date"?this._dateTimeProvider.dateType:P.kind==="date-time"?this._dateTimeProvider.dateTimeType:P.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 S=[];return E.members.forEach(P=>this.javaImport(P).forEach(y=>S.push(y))),S},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 F.ArrayType)return this._options.useList?["List"]:[this.javaTypeWithoutGenerics(!1,E.items),"[]"];if(E instanceof F.MapType)return"Map";if(E instanceof F.UnionType){const S=(0,O.nullableFromUnion)(E);return S!==null?this.javaTypeWithoutGenerics(!0,S):this.nameForNamedType(E)}else return this.javaType(f,E)}emitClassAttributes(f,E){this._options.classStyle==="lombok"&&this.emitLine("@lombok.Data")}annotationsForAccessor(f,E,S,P,y,r){return[]}importsForType(f){return f instanceof F.ClassType?[]:f instanceof F.UnionType?["java.io.IOException"]:f instanceof F.EnumType?["java.io.IOException"]:(0,w.assertNever)(f)}importsForClass(f){const E=[];return this.forEachClassProperty(f,"none",(S,P,y)=>{this.javaImport(y.type).forEach(r=>E.push(r))}),E.sort(),[...new Set(E)]}importsForUnionMembers(f){const E=[],[,S]=(0,O.removeNullFromUnion)(f);return this.forEachUnionMember(f,S,"none",null,(P,y)=>{this.javaImport(y).forEach(r=>E.push(r))}),E.sort(),[...new Set(E)]}emitClassDefinition(f,E){let S=[...this.importsForType(f),...this.importsForClass(f)];if(this.emitFileHeader(E,S),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",(P,y,r)=>{if(this._options.classStyle==="lombok"&&this._options.lombokCopyAnnotations){const s=this.annotationsForAccessor(f,E,P,y,r,!1),p=this.annotationsForAccessor(f,E,P,y,r,!0);s.length!==0&&this.emitLine("@lombok.Getter(onMethod_ = {"+s.join(", ")+"})"),p.length!==0&&this.emitLine("@lombok.Setter(onMethod_ = {"+p.join(", ")+"})")}this.emitLine("private ",this.javaType(!1,r.type,!0)," ",P,";")}),this._options.classStyle!=="lombok"&&this.forEachClassProperty(f,"leading-and-interposing",(P,y,r)=>{this.emitDescription(this.descriptionForClassProperty(f,y));const[s,p]=(0,w.defined)(this._gettersAndSettersForPropertyName.get(P)),g=this.javaType(!1,r.type);this.annotationsForAccessor(f,E,P,y,r,!1).forEach(I=>this.emitLine(I)),this.emitLine("public ",g," ",s,"() { return ",P,"; }"),this.annotationsForAccessor(f,E,P,y,r,!0).forEach(I=>this.emitLine(I)),this.emitLine("public void ",p,"(",g," value) { this.",P," = value; }")})}),this.finishFile()}emitClassRecordDefinition(f,E){this.emitLine("public record ",E," ("),this.indent(()=>{this.forEachClassProperty(f,"leading-and-interposing",(S,P,y,r)=>{this.annotationsForAccessor(f,E,S,P,y,!1).forEach(g=>this.emitLine(g));const s=this.javaType(!1,y.type),p=r==="first"||r==="middle"?",":[];this.emitLine(s," ",S,p)})}),this.emitLine(") {}"),this.finishFile()}unionField(f,E,S=!1){const P=this.javaType(!0,E,S),y=[this.nameForUnionMember(f,E),"Value"];return{fieldType:P,fieldName:y}}emitUnionAttributes(f,E){}emitUnionSerializer(f,E){}emitUnionDefinition(f,E){const S=[...this.importsForType(f),...this.importsForUnionMembers(f)];this.emitFileHeader(E,S),this.emitDescription(this.descriptionForType(f));const[,P]=(0,O.removeNullFromUnion)(f);this.emitUnionAttributes(f,E),this.emitBlock(["public class ",E],()=>{for(const y of P){const{fieldType:r,fieldName:s}=this.unionField(f,y,!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 S=[];this.forEachEnumCase(f,"none",P=>{S.length>0&&S.push(", "),S.push(P)}),S.push(";"),this.emitBlock(["public enum ",E],()=>{this.emitLine(S),this.ensureBlankLine(),this.emitEnumSerializationAttributes(f),this.emitBlock("public String toValue()",()=>{this.emitLine("switch (this) {"),this.indent(()=>{this.forEachEnumCase(f,"none",(P,y)=>{this.emitLine("case ",P,': return "',(0,e.stringEscape)(y),'";')})}),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",(P,y)=>{this.emitLine('if (value.equals("',(0,e.stringEscape)(y),'")) return ',P,";")}),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 R extends C{constructor(f,E,S){super(f,E,S),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,S,P,y,r){const s=super.annotationsForAccessor(f,E,S,P,y,r),p=['@JsonProperty("'+(0,e.stringEscape)(P)+'")'];switch(y.type.kind){case"date-time":this._dateTimeProvider.dateTimeJacksonAnnotations.forEach(g=>p.push(g));break;case"date":this._dateTimeProvider.dateJacksonAnnotations.forEach(g=>p.push(g));break;case"time":this._dateTimeProvider.timeJacksonAnnotations.forEach(g=>p.push(g));break}return[...s,...p]}importsForType(f){if(f instanceof F.ClassType){const E=super.importsForType(f);return E.push("com.fasterxml.jackson.annotation.*"),E}if(f instanceof F.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 F.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 S=["uuid","time","date","date-time"],P=J=>{this.emitLine("case ",J,":")},y=()=>{this.indent(()=>{P("VALUE_NULL"),this.indent(()=>this.emitLine("break;"))})},r=(J,X,Q)=>{switch(X){case"date":this.emitLine("value.",J," = ",this._dateTimeProvider.convertStringToDate(Q),";");break;case"time":this.emitLine("value.",J," = ",this._dateTimeProvider.convertStringToTime(Q),";");break;case"date-time":this.emitLine("value.",J," = ",this._dateTimeProvider.convertStringToDateTime(Q),";");break;case"uuid":this.emitLine("value.",J," = UUID.fromString(",Q,");");break;default:return(0,w.panic)("Requested type isnt an object!")}},s=(J,X="")=>{const{fieldName:Q}=this.unionField(f,J),re=this.javaTypeWithoutGenerics(!0,J);if(this._options.useList&&J instanceof F.ArrayType)this.emitLine("value.",Q," = jsonParser.readValueAs(new TypeReference<",re,">() {});");else if(S.some(se=>J.kind===se))r(Q,J.kind,X);else if(J.kind==="string")this.emitLine("value.",Q," = ",X,";");else if(J.kind==="enum"){const{fieldType:se}=this.unionField(f,J,!0);this.emitLine("value.",Q," = ",se,".forValue(",X,");")}else this.emitLine("value.",Q," = jsonParser.readValueAs(",re,".class);")},p=(J,X)=>{const Q=f.findMember(X);Q!==void 0&&this.indent(()=>{for(const re of J)P(re);this.indent(()=>{s(Q),this.emitLine("break;")})})},g=()=>{const J=f.findMember("enum"),X=f.findMember("string");S.every(Q=>f.findMember(Q)===void 0)&&X===void 0&&J===void 0||this.indent(()=>{P("VALUE_STRING"),this.indent(()=>{const Q="string";this.emitLine("String "+Q+" = jsonParser.readValueAs(String.class);"),S.forEach(re=>{const se=f.findMember(re);se!==void 0&&this.emitIgnoredTryCatchBlock(()=>{s(se,Q)})}),J!==void 0&&this.emitIgnoredTryCatchBlock(()=>{s(J,Q)}),X!==void 0&&s(X,Q),this.emitLine("break;")})})},I=()=>{const J=f.findMember("integer"),X=f.findMember("double");X===void 0&&J===void 0||this.indent(()=>{P("VALUE_NUMBER_INT"),J!==void 0&&this.indent(()=>{s(J),this.emitLine("break;")}),X!==void 0&&(P("VALUE_NUMBER_FLOAT"),this.indent(()=>{s(X),this.emitLine("break;")}))})},x=["time","date","date-time"],q=(J,X)=>{switch(J.kind){case"date":return this._dateTimeProvider.convertDateToString(X);case"time":return this._dateTimeProvider.convertTimeToString(X);case"date-time":return this._dateTimeProvider.convertDateTimeToString(X);default:return(0,w.panic)("Requested type doesn't have custom serializer code!")}},T=J=>{let{fieldName:X}=this.unionField(f,J,!0);this.emitBlock(["if (obj.",X," != null)"],()=>{x.some(Q=>J.kind===Q)?this.emitLine("jsonGenerator.writeObject(",q(J,["obj.",X]),");"):this.emitLine("jsonGenerator.writeObject(obj.",X,");"),this.emitLine("return;")})},[D,W]=(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()) {"),D!==null&&y(),I(),p(["VALUE_TRUE","VALUE_FALSE"],"bool"),g(),p(["START_ARRAY"],"array"),p(["START_OBJECT"],"class"),p(["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 J of W)T(J);D!==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,S)=>{this.emitLine("// ",this.javaType(!1,E)," data = Converter.",this.decoderName(S),"(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,S)=>{const P=this.javaType(!1,E);this.emitBlock(["public static ",P," ",this.decoderName(S),"(String json) throws IOException"],()=>{this.emitLine("return ",this.readerGetterName(S),"().readValue(json);")}),this.ensureBlankLine(),this.emitBlock(["public static String ",this.encoderName(S),"(",P," obj) throws JsonProcessingException"],()=>{this.emitLine("return ",this.writerGetterName(S),"().writeValueAsString(obj);")})}),this.forEachTopLevel("leading-and-interposing",(E,S)=>{const P=this.fieldOrMethodName("reader",S),y=this.fieldOrMethodName("writer",S);this.emitLine("private static ObjectReader ",P,";"),this.emitLine("private static ObjectWriter ",y,";"),this.ensureBlankLine(),this.emitBlock(["private static void ",this.methodName("instantiate","Mapper",S),"()"],()=>{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(P," = mapper.readerFor(",r,".class);"),this.emitLine(y," = mapper.writerFor(",r,".class);")}),this.ensureBlankLine(),this.emitBlock(["private static ObjectReader ",this.readerGetterName(S),"()"],()=>{this.emitLine("if (",P," == null) ",this.methodName("instantiate","Mapper",S),"();"),this.emitLine("return ",P,";")}),this.ensureBlankLine(),this.emitBlock(["private static ObjectWriter ",this.writerGetterName(S),"()"],()=>{this.emitLine("if (",y," == null) ",this.methodName("instantiate","Mapper",S),"();"),this.emitLine("return ",y,";")})})}),this.finishFile()}emitSourceStructure(){this.emitConverterClass(),super.emitSourceStructure()}}e.JacksonRenderer=R}(Rl)),Rl}var Ml={},Bl={},Qp;function Fg(){return Qp||(Qp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.convertersOption=e.ConvertersOptions=void 0;const i=zt();var n;(function(l){l.TopLevel="top-level",l.AllObjects="all-objects"})(n=e.ConvertersOptions||(e.ConvertersOptions={}));function a(){return new i.EnumOption("converters","Which converters to generate (top-level by default)",[[n.TopLevel,n.TopLevel],[n.AllObjects,n.AllObjects]],n.TopLevel,"secondary")}e.convertersOption=a}(Bl)),Bl}var lr={},Xp;function Kc(){if(Xp)return lr;Xp=1,Object.defineProperty(lr,"__esModule",{value:!0}),lr.isES3IdentifierPart=lr.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 i(d){return d>=65&&d<=90||d>=97&&d<=122||d===36||d===95||d>127&&e(d,a)}lr.isES3IdentifierStart=i;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)}lr.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 lr}var Yp;function ja(){return Yp||(Yp=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JavaScriptRenderer=e.legalizeName=e.JavaScriptTargetLanguage=e.javaScriptOptions=void 0;const i=et(),n=pt(),a=vr(),l=Fg(),d=Nt(),u=Qe(),c=Dt(),w=Ft(),U=Wt(),F=qt(),O=zt(),M=Kc();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 L extends F.TargetLanguage{constructor(h="JavaScript",m=["javascript","js","jsx"],k="js"){super(h,m,k)}getOptions(){return[e.javaScriptOptions.runtimeTypecheck,e.javaScriptOptions.runtimeTypecheckIgnoreUnknownProperties,e.javaScriptOptions.acronymStyle,e.javaScriptOptions.converters,e.javaScriptOptions.rawType]}get stringTypeMapping(){const h=new Map,m="date-time";return h.set("date",m),h.set("date-time",m),h}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(h,m){return new b(this,h,(0,O.getOptionValues)(e.javaScriptOptions,m))}}e.JavaScriptTargetLanguage=L,e.legalizeName=(0,d.utf16LegalizeCharacters)(M.isES3IdentifierPart);const _=(0,w.funPrefixNamer)("properties",v=>v);class b extends U.ConvenienceRenderer{constructor(h,m,k){super(h,m),this._jsOptions=k}nameStyle(h,m){const k=(0,a.acronymStyle)(this._jsOptions.acronymStyle),B=(0,d.splitIntoWords)(h);return(0,d.combineWords)(B,e.legalizeName,m?d.firstUpperWordStyle:d.allLowerWordStyle,d.firstUpperWordStyle,m?C=>(0,d.capitalize)(k(C)):d.allLowerWordStyle,k,"",M.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,w.funPrefixNamer)("types",h=>this.nameStyle(h,!0))}namerForObjectProperty(){return _}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,w.funPrefixNamer)("enum-cases",h=>this.nameStyle(h,!0))}namedTypeToNameForTopLevel(h){return(0,n.directlyReachableSingleNamedType)(h)}makeNameForProperty(h,m,k,B,C){return super.makeNameForProperty(h,m,k,B,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,m=>'"any"',m=>"null",m=>"true",m=>"0",m=>"3.14",m=>'""',m=>["a(",this.typeMapTypeFor(m.items),")"],m=>(0,u.panic)("We handled this above"),m=>["m(",this.typeMapTypeFor(m.values),")"],m=>(0,u.panic)("We handled this above"),m=>{const k=Array.from(m.getChildren()).map(B=>this.typeMapTypeFor(B));return["u(",...(0,i.arrayIntercalate)(", ",k),")"]},m=>m.kind==="date-time"?"Date":'""')}typeMapTypeForProperty(h){const m=this.typeMapTypeFor(h.type);return h.isOptional?["u(undefined, ",m,")"]:m}emitBlock(h,m,k){this.emitLine(h,"{"),this.indent(k),this.emitLine("}",m)}emitTypeMap(){const{any:h}=this.typeAnnotations;this.emitBlock(`const typeMap${h} = `,";",()=>{this.forEachObject("none",(m,k)=>{const B=m.getAdditionalProperties(),C=B!==void 0?this.typeMapTypeFor(B):"false";this.emitLine('"',k,'": o(['),this.indent(()=>{this.forEachClassProperty(m,"none",(R,A,f)=>{this.emitLine('{ json: "',(0,d.utf16StringEscape)(A),'", js: "',(0,c.modifySource)(d.utf16StringEscape,R),'", typ: ',this.typeMapTypeForProperty(f)," },")})}),this.emitLine("], ",C,"),")}),this.forEachEnum("none",(m,k)=>{this.emitLine('"',k,'": ['),this.indent(()=>{this.forEachEnumCase(m,"none",(B,C)=>{this.emitLine(`"${(0,d.utf16StringEscape)(C)}",`)})}),this.emitLine("],")})})}deserializerFunctionName(h){return["to",h]}deserializerFunctionLine(h,m){return["function ",this.deserializerFunctionName(m),"(json)"]}serializerFunctionName(h){return[(0,c.modifySource)(d.camelCase,h),"ToJson"]}serializerFunctionLine(h,m){return["function ",this.serializerFunctionName(m),"(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=(m,k)=>{const B=this.typeMapTypeFor(m);this.emitBlock([this.deserializerFunctionLine(m,k)," "],"",()=>{const C=this._jsOptions.rawType==="json"?"JSON.parse(json)":"json";this._jsOptions.runtimeTypecheck?this.emitLine("return cast(",C,", ",B,");"):this.emitLine("return ",C,";")}),this.ensureBlankLine(),this.emitBlock([this.serializerFunctionLine(m,k)," "],"",()=>{this._jsOptions.rawType==="json"?this._jsOptions.runtimeTypecheck?this.emitLine("return JSON.stringify(uncast(value, ",B,"), null, 2);"):this.emitLine("return JSON.stringify(value);"):this._jsOptions.runtimeTypecheck?this.emitLine("return uncast(value, ",B,");"):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:m,anyMap:k,string:B,stringArray:C,never:R}=this.typeAnnotations;this.ensureBlankLine(),this.emitMultiline(`function invalidValue(typ${h}, val${h}, key${h}, parent${h} = '')${R} {
|
|
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})${B} {
|
|
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${B}, val${h})${h} {
|
|
459
|
+
if (typeof typ === typeof val) return val;
|
|
460
|
+
return invalidValue(typ, val, key, parent);
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
function transformUnion(typs${m}, 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${m}) {
|
|
555
|
+
return { unionMembers: typs };
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
function o(props${m}, additional${h}) {
|
|
559
|
+
return { props, additional };
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
function m(additional${h}) {
|
|
563
|
+
return { props: [], additional };
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
function r(name${B}) {
|
|
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,m)=>{const k=(0,c.modifySource)(d.camelCase,m);this.emitLine("// const ",k," = Convert.to",m,"(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,m)=>{const k=this.serializerFunctionName(m),B=this.deserializerFunctionName(m);this.emitLine('"',k,'": ',k,","),this.emitLine('"',B,'": ',B,",")})})}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitTypes(),this.emitConvertModule(),this.emitConvertModuleHelpers(),this.emitModuleExports()}}e.JavaScriptRenderer=b}(Ml)),Ml}var Dl={},$p;function Pg(){return $p||($p=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.JavaScriptPropTypesRenderer=e.JavaScriptPropTypesTargetLanguage=e.javaScriptPropTypesOptions=void 0;const i=qt(),n=zt(),a=Wt(),l=Ft(),d=vr(),u=Wa(),c=Nt(),w=Kc(),U=ja(),F=Fg(),O=pt(),M=et(),L=mt();e.javaScriptPropTypesOptions={acronymStyle:(0,d.acronymOption)(d.AcronymStyleOptions.Pascal),converters:(0,F.convertersOption)(),moduleSystem:new n.EnumOption("module-system","Which module system to use",[["common-js",!1],["es6",!0]],"es6")};class _ extends i.TargetLanguage{getOptions(){return[e.javaScriptPropTypesOptions.acronymStyle,e.javaScriptPropTypesOptions.converters]}constructor(m="JavaScript PropTypes",k=["javascript-prop-types"],B="js"){super(m,k,B)}makeRenderer(m,k){return new v(this,m,(0,n.getOptionValues)(e.javaScriptPropTypesOptions,k))}}e.JavaScriptPropTypesTargetLanguage=_;const b=(0,l.funPrefixNamer)("properties",h=>h);class v extends a.ConvenienceRenderer{constructor(m,k,B){super(m,k),this._jsOptions=B}nameStyle(m,k){const B=(0,d.acronymStyle)(this._jsOptions.acronymStyle),C=(0,u.splitIntoWords)(m);return(0,u.combineWords)(C,U.legalizeName,k?u.firstUpperWordStyle:c.allLowerWordStyle,u.firstUpperWordStyle,k?R=>(0,u.capitalize)(B(R)):c.allLowerWordStyle,B,"",w.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,l.funPrefixNamer)("types",m=>this.nameStyle(m,!0))}namerForObjectProperty(){return b}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,l.funPrefixNamer)("enum-cases",m=>this.nameStyle(m,!1))}namedTypeToNameForTopLevel(m){return(0,O.directlyReachableSingleNamedType)(m)}makeNameForProperty(m,k,B,C,R){return super.makeNameForProperty(m,k,B,C,void 0)}typeMapTypeFor(m,k=!0){if(["class","object","enum"].indexOf(m.kind)>=0)return["_",this.nameForNamedType(m)];const B=(0,u.matchType)(m,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 R=Array.from(C.getChildren()).map(A=>this.typeMapTypeFor(A,!1));return["PropTypes.oneOfType([",...(0,M.arrayIntercalate)(", ",R),"])"]},C=>"PropTypes.string");return k?[B]:B}typeMapTypeForProperty(m){return this.typeMapTypeFor(m.type)}importStatement(m,k){return this._jsOptions.moduleSystem?["import ",m," from ",k,";"]:["const ",m," = require(",k,");"]}emitUsageComments(){this.emitCommentLines(["Example usage:","",this.importStatement("{ MyShape }","./myShape.js"),"","class MyComponent extends React.Component {"," //","}","","MyComponent.propTypes = {"," input: MyShape","};"],"// ")}emitBlock(m,k,B){this.emitLine(m,"{"),this.indent(B),this.emitLine("}",k)}emitImports(){this.ensureBlankLine(),this.emitLine(this.importStatement("PropTypes",'"prop-types"'))}emitExport(m,k){this._jsOptions.moduleSystem?this.emitLine("export const ",m," = ",k,";"):this.emitLine("module.exports = exports = { ",m,": ",k," };")}emitTypes(){this.ensureBlankLine(),this.forEachObject("none",(C,R)=>{this.emitLine("let _",R,";")}),this.forEachEnum("none",(C,R)=>{const A=[];this.forEachEnumCase(C,"none",(f,E,S)=>{A.push("'"),A.push(f),A.push("'"),A.push(", ")}),A.pop(),this.emitLine(["const _",R," = PropTypes.oneOfType([",...A,"]);"])});const m=[],k=[],B=[];this.forEachObject("none",(C,R)=>{k.push(R),B.push(this.gatherSource(()=>this.emitObject(R,C)))}),k.forEach((C,R)=>{let A=0;const E=B[R].filter(S=>S);for(let S=0;S<E.length;S++){const P=E[S];for(let y=0;y<m.length;y++){const r=m[y];k[r]===P&&(A=Math.max(A,r+1))}}m.splice(A,0,R)}),m.forEach(C=>this.emitGatheredSource(B[C])),this.forEachTopLevel("none",(C,R)=>{C instanceof L.PrimitiveType?(this.ensureBlankLine(),this.emitExport(R,this.typeMapTypeFor(C))):C.kind==="array"?(this.ensureBlankLine(),this.emitExport(R,["PropTypes.arrayOf(",this.typeMapTypeFor(C.items),")"])):(this.ensureBlankLine(),this.emitExport(R,["_",R]))})}emitObject(m,k){this.ensureBlankLine(),this.emitLine("_",m," = PropTypes.shape({"),this.indent(()=>{this.forEachClassProperty(k,"none",(B,C,R)=>{this.emitLine(`"${(0,c.utf16StringEscape)(C)}"`,": ",this.typeMapTypeForProperty(R),",")})}),this.emitLine("});")}emitSourceStructure(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitImports(),this.emitTypes()}}e.JavaScriptPropTypesRenderer=v}(Dl)),Dl}var jl={},em;function Ig(){return em||(em=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 i=mt(),n=pt(),a=Nt(),l=Dt(),d=Ft(),u=zt(),c=ja(),w=Qe(),U=Kc();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 F={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 M extends O{constructor(){super("TypeScript",["typescript","ts","tsx"],"ts")}makeRenderer(k,B){return new b(this,k,(0,u.getOptionValues)(e.tsFlowOptions,B))}}e.TypeScriptTargetLanguage=M;function L(m){const k=(0,a.utf16StringEscape)(m),B=`"${k}"`;return m.length===0?B:(0,U.isES3IdentifierStart)(m.codePointAt(0))?k!==m||(0,c.legalizeName)(m)!==m?B:m:B}class _ extends c.JavaScriptRenderer{constructor(k,B,C){super(k,B,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,B=>(0,l.singleWord)("any"),B=>(0,l.singleWord)("null"),B=>(0,l.singleWord)("boolean"),B=>(0,l.singleWord)("number"),B=>(0,l.singleWord)("number"),B=>(0,l.singleWord)("string"),B=>{const C=this.sourceFor(B.items);return B.items instanceof i.UnionType&&!this._tsFlowOptions.declareUnions||B.items instanceof i.ArrayType?(0,l.singleWord)(["Array<",C.source,">"]):(0,l.singleWord)([(0,l.parenIfNeeded)(C),"[]"])},B=>(0,w.panic)("We handled this above"),B=>(0,l.singleWord)(["{ [key: string]: ",this.sourceFor(B.values).source," }"]),B=>(0,w.panic)("We handled this above"),B=>{if(!this._tsFlowOptions.declareUnions||(0,n.nullableFromUnion)(B)!==null){const C=Array.from(B.getChildren()).map(R=>(0,l.parenIfNeeded)(this.sourceFor(R)));return(0,l.multiWord)(" | ",...C)}else return(0,l.singleWord)(this.nameForNamedType(B))},B=>B.kind==="date-time"?(0,l.singleWord)("Date"):(0,l.singleWord)("string"))}emitClassBlockBody(k){this.emitPropertyTable(k,(C,R,A)=>{const f=A.type;return[[(0,l.modifySource)(L,C),A.isOptional?"?":"",": "],[this.sourceFor(f).source,";"]]});const B=k.getAdditionalProperties();B&&this.emitTable([["[property: string]",": ",this.sourceFor(B).source,";"]])}emitClass(k,B){this.emitDescription(this.descriptionForType(k)),this.emitClassBlock(k,B)}emitUnion(k,B){if(!this._tsFlowOptions.declareUnions)return;this.emitDescription(this.descriptionForType(k));const C=(0,l.multiWord)(" | ",...Array.from(k.getChildren()).map(R=>(0,l.parenIfNeeded)(this.sourceFor(R))));this.emitLine("export type ",B," = ",C.source,";")}emitTypes(){this.forEachNamedType("leading-and-interposing",(k,B)=>this.emitClass(k,B),(k,B)=>this.emitEnum(k,B),(k,B)=>this.emitUnion(k,B))}emitUsageComments(){this._tsFlowOptions.justTypes||super.emitUsageComments()}deserializerFunctionLine(k,B){const C=this._tsFlowOptions.rawType==="json"?"string":"any";return["function to",B,"(json: ",C,"): ",this.sourceFor(k).source]}serializerFunctionLine(k,B){const C=(0,l.modifySource)(a.camelCase,B),R=this._tsFlowOptions.rawType==="json"?"string":"any";return["function ",C,"ToJson(value: ",this.sourceFor(k).source,"): ",R]}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=_;class b extends _{forbiddenNamesForGlobalNamespace(){return["Array","Date"]}deserializerFunctionLine(k,B){const C=this._tsFlowOptions.rawType==="json"?"string":"any";return["public static to",B,"(json: ",C,"): ",this.sourceFor(k).source]}serializerFunctionLine(k,B){const C=(0,l.modifySource)(a.camelCase,B),R=this._tsFlowOptions.rawType==="json"?"string":"any";return["public static ",C,"ToJson(value: ",this.sourceFor(k).source,"): ",R]}get moduleLine(){return"export class Convert"}get typeAnnotations(){return Object.assign({never:": never"},F)}emitModuleExports(){}emitUsageImportComment(){const k=[];this.forEachTopLevel("none",(B,C)=>{k.push(", ",C)},n.isNamedType),this.emitLine("// import { Convert",k,' } from "./file";')}emitEnum(k,B){if(this.emitDescription(this.descriptionForType(k)),this._tsFlowOptions.preferUnions){let C="";k.cases.forEach(R=>{if(C===""){C+=`"${(0,a.utf16StringEscape)(R)}"`;return}C+=` | "${(0,a.utf16StringEscape)(R)}"`}),this.emitLine("export type ",B," = ",C,";")}else this.emitBlock(["export enum ",B," "],"",()=>{this.forEachEnumCase(k,"none",(C,R)=>{this.emitLine(C,` = "${(0,a.utf16StringEscape)(R)}",`)})})}emitClassBlock(k,B){this.emitBlock(this._tsFlowOptions.preferTypes?["export type ",B," = "]:["export interface ",B," "],"",()=>{this.emitClassBlockBody(k)})}}e.TypeScriptRenderer=b;class v extends O{constructor(){super("Flow",["flow"],"js")}makeRenderer(k,B){return new h(this,k,(0,u.getOptionValues)(e.tsFlowOptions,B))}}e.FlowTargetLanguage=v;class h extends _{forbiddenNamesForGlobalNamespace(){return["Class","Date","Object","String","Array","JSON","Error"]}get typeAnnotations(){return Object.assign({never:""},F)}emitEnum(k,B){this.emitDescription(this.descriptionForType(k));const C=[];this.forEachEnumCase(k,"none",(R,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 ",B," ="),this.indent(()=>{for(const R of C)this.emitLine(R)})}emitClassBlock(k,B){this.emitBlock(["export type ",B," = "],";",()=>{this.emitClassBlockBody(k)})}emitSourceStructure(){this.emitLine("// @flow"),this.ensureBlankLine(),super.emitSourceStructure()}}e.FlowRenderer=h}(jl)),jl}var Ul={},tm;function Rg(){return tm||(tm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.SwiftRenderer=e.SwiftTargetLanguage=e.swiftOptions=void 0;const i=et(),n=Qe(),a=qt(),l=mt(),d=pt(),u=Ft(),c=zt(),w=Dt(),U=On(),F=Wt(),O=Nt(),M=Qe(),L=kg(),_=vr(),b=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,_.acronymOption)(_.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 v=/^\d+-\d+-\d+T\d+:\d+:\d+([zZ]|[+-]\d+(:\d+)?)$/;class h extends L.DefaultDateTimeRecognizer{isDateTime(y){return y.match(v)!==null}}class m 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 y=new Map;return y.set("date-time","date-time"),y}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(y,r){return new S(this,y,(0,c.getOptionValues)(e.swiftOptions,r))}get dateTimeRecognizer(){return new h}}e.SwiftTargetLanguage=m;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 B(P){return(0,O.isLetterOrUnderscore)(P)||(0,O.isNumeric)(P)}function C(P){return B(P)&&!(0,O.isDigit)(P)}const R=(0,O.legalizeCharacters)(B);function A(P,y,r,s=O.allUpperWordStyle){const p=(0,O.splitIntoWords)(r),g=(0,O.combineWords)(p,R,y?O.firstUpperWordStyle:O.allLowerWordStyle,O.firstUpperWordStyle,y?O.allUpperWordStyle:O.allLowerWordStyle,s,"",C);return(0,O.addPrefixIfNecessary)(P,g)}function f(P){return"\\u{"+(0,O.intToHex)(P,0)+"}"}const E=(0,O.utf32ConcatMap)((0,O.escapeNonPrintableMapper)(O.isPrintable,f));class S extends F.ConvenienceRenderer{constructor(y,r,s){super(y,r),this._options=s,this._needAny=!1,this._needNull=!1,this.emitSupportFunctions4=()=>{this.startFile("JSONSchemaSupport"),this.emitLineOnce("import Foundation"),this.forEachTopLevel("leading",(p,g)=>this.renderTopLevelAlias(p,g),p=>this.namedTypeToNameForTopLevel(p)===void 0),this._options.convenienceInitializers&&(this.ensureBlankLine(),this.forEachTopLevel("leading-and-interposing",(p,g)=>this.emitTopLevelMapAndArrayConvenienceInitializerExtensions(p,g))),(!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(y,r){return{names:["fromURL","json"],includeGlobalForbidden:!0}}forbiddenForEnumCases(y,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(y,r){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("upper",y=>A(this._options.namedTypePrefix,!0,y,(0,_.acronymStyle)(this._options.acronymStyle)))}namerForObjectProperty(){return this.lowerNamingFunction}makeUnionMemberNamer(){return this.lowerNamingFunction}makeEnumCaseNamer(){return this.lowerNamingFunction}isImplicitCycleBreaker(y){const r=y.kind;return r==="array"||r==="map"}emitDescriptionBlock(y){this.emitCommentLines(y,"/// ")}emitBlock(y,r){this.emitLine(y," {"),this.indent(r),this.emitLine("}")}emitBlockWithAccess(y,r){this.emitBlock([this.accessLevel,y],r)}justTypesCase(y,r){return this._options.justTypes?y:r}get lowerNamingFunction(){return(0,u.funPrefixNamer)("lower",y=>A("",!1,y,(0,_.acronymStyle)(this._options.acronymStyle)))}swiftPropertyType(y){return y.isOptional||this._options.optionalEnums&&y.type.kind==="enum"?[this.swiftType(y.type,!0,!0),"?"]:this.swiftType(y.type,!0)}swiftType(y,r=!1,s=!1){const p=s?"":"?";return(0,d.matchType)(y,g=>(this._needAny=!0,(0,w.maybeAnnotated)(r,U.anyTypeIssueAnnotation,this.justTypesCase(["Any",p],"JSONAny"))),g=>(this._needNull=!0,(0,w.maybeAnnotated)(r,U.nullTypeIssueAnnotation,this.justTypesCase("NSNull",["JSONNull",p]))),g=>"Bool",g=>"Int",g=>"Double",g=>"String",g=>["[",this.swiftType(g.items,r),"]"],g=>this.nameForNamedType(g),g=>["[String: ",this.swiftType(g.values,r),"]"],g=>this.nameForNamedType(g),g=>{const I=(0,d.nullableFromUnion)(g);return I!==null?[this.swiftType(I,r),p]:this.nameForNamedType(g)},g=>g.kind==="date-time"?"Date":(0,M.panic)(`Transformed string type ${g.kind} not supported`))}proposedUnionMemberNameForTypeKind(y){return y==="enum"?"enumeration":y==="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",(y,r)=>{this._options.convenienceInitializers&&!(y 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(y,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&&!(y 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(y,r){this.emitLine(this.accessLevel,"typealias ",r," = ",this.swiftType(y,!0))}getProtocolsArray(y,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(y,r){const s=this.getProtocolsArray(y,r);return s.length>0?": "+s.join(", "):""}getEnumPropertyGroups(y){let r=[],s=[];return this.forEachClassProperty(y,"none",(p,g)=>{const I=E(g),x=this.sourcelikeToString(p)===I;this._options.dense&&x?s.push({name:p}):(s.length>0&&(r.push(s),s=[]),r.push([{name:p,label:I}]))}),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(y){this._options.multiFileOutput!==!1&&((0,n.assert)(this._currentFilename===void 0,"Previous file wasn't finished: "+this._currentFilename),this._currentFilename=`${this.sourcelikeToString(y)}.swift`,this.initializeEmitContextForFilename(this._currentFilename))}endFile(){this._options.multiFileOutput!==!1&&(this.finishFile((0,n.defined)(this._currentFilename)),this._currentFilename=void 0)}propertyLinesDefinition(y,r){const s=this._options.mutableProperties;return[this.accessLevel,s?"var ":"let ",y,": ",this.swiftPropertyType(r)]}renderClassDefinition(y,r){this.startFile(r),this.renderHeader(y,r),this.emitDescription(this.descriptionForType(y)),this.emitMark(this.sourcelikeToString(r),!0);const s=this._options.useClasses||this.isCycleBreakerType(y),p=s?"class":"struct";s&&this._options.objcSupport&&this.emitItem(this.objcMembersDeclaration),this.emitBlockWithAccess([p," ",r,this.getProtocolString(y,s)],()=>{if(this._options.dense){let g,I=[];const x=()=>{if(g===void 0)return;const q=this._options.mutableProperties;let T=[[this._options.optionalEnums&&g.type.kind==="enum"?`@NilOnFail${this._options.namedTypePrefix} `:"",this.accessLevel,q||this._options.optionalEnums&&g.type.kind==="enum"?"var ":"let "]];I.forEach((D,W)=>{W>0&&T.push(", "),T.push(D)}),T.push(": "),T.push(this.swiftPropertyType(g)),this.emitLine(T),g=void 0,I=[]};this.forEachClassProperty(y,"none",(q,T,D)=>{const W=this.descriptionForClassProperty(y,T);(!D.equals(g)||I.length>=b||W!==void 0)&&x(),g===void 0&&(g=D),I.push(q),W!==void 0&&(this.emitDescription(W),x())}),x()}else this.forEachClassProperty(y,"none",(g,I,x)=>{const q=this.descriptionForClassProperty(y,I),T=this.propertyLinesDefinition(g,x);this.emitDescription(q),this.emitLine(T)});if(!this._options.justTypes){const g=this.getEnumPropertyGroups(y);!g.every(x=>x.every(q=>q.label===void 0))&&y.getProperties().size>0&&(this.ensureBlankLine(),this.emitBlock("enum CodingKeys: String, CodingKey",()=>{for(const x of g){const{name:q,label:T}=x[0];if(this._options.explicitCodingKeys&&T!==void 0)this.emitLine("case ",q,' = "',T,'"');else{const D=(0,i.arrayIntercalate)(", ",x.map(W=>W.name));this.emitLine("case ",D)}}}))}if(s||this._options.accessLevel==="public"){this.ensureBlankLine();let g=this.initializableProperties(y),I=[];for(let x of g)I.length>0&&I.push(", "),I.push(x.name,": ",this.swiftPropertyType(x.parameter));this.propertyCount(y)===0&&this._options.objcSupport?this.emitBlockWithAccess(["override init()"],()=>""):this.emitBlockWithAccess(["init(",...I,")"],()=>{for(let x of g)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(y,r),this.ensureBlankLine()),this.endFile()}initializableProperties(y){const r=[];return this.forEachClassProperty(y,"none",(s,p,g,I)=>{const x={name:s,jsonName:p,parameter:g,position:I};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(y,r){const s=this._options.useClasses||this.isCycleBreakerType(y),p=s?"convenience ":"";this.emitBlockWithAccess(["extension ",r],()=>{s?this.emitBlock("convenience init(data: Data) throws",()=>{this.propertyCount(y)>0?this.emitLine("let me = try newJSONDecoder().decode(",this.swiftType(y),".self, from: data)"):this.emitLine("let _ = try newJSONDecoder().decode(",this.swiftType(y),".self, from: data)");let g=[];this.forEachClassProperty(y,"none",I=>{g.length>0&&g.push(", "),g.push(I,": ","me.",I)}),this.emitLine("self.init(",...g,")")}):this.emitBlock("init(data: Data) throws",()=>{this.emitLine("self = try newJSONDecoder().decode(",this.swiftType(y),".self, from: data)")}),this.ensureBlankLine(),this.emitBlock([p,"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([p,"init(fromURL url: URL) throws"],()=>{this.emitLine("try self.init(data: try Data(contentsOf: url))")}),this.ensureBlankLine(),this.emitConvenienceMutator(y,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(y,r){this.startFile(r),this.emitLineOnce("import Foundation"),this.ensureBlankLine(),this.emitDescription(this.descriptionForType(y));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 p=s.length>0?": "+s.join(", "):"";this._options.justTypes?this.emitBlockWithAccess(["enum ",r,p],()=>{this.forEachEnumCase(y,"none",g=>{this.emitLine("case ",g)})}):this.emitBlockWithAccess(["enum ",r,p],()=>{this.forEachEnumCase(y,"none",(g,I)=>{this.emitLine("case ",g,' = "',E(I),'"')})}),this.endFile()}renderUnionDefinition(y,r){this.startFile(r),this.emitLineOnce("import Foundation"),this.ensureBlankLine();function s(q){const T=q.kind;return T==="class"?T:"_"+T}const p=q=>{this.emitBlock(["if let x = try? container.decode(",this.swiftType(q),".self)"],()=>{this.emitLine("self = .",this.nameForUnionMember(y,q),"(x)"),this.emitLine("return")})};this.emitDescription(this.descriptionForType(y));const g=this.isCycleBreakerType(y)?"indirect ":"",[I,x]=(0,d.removeNullFromUnion)(y,s);this.emitBlockWithAccess([g,"enum ",r,this.getProtocolString(y,!1)],()=>{this.forEachUnionMember(y,x,"none",null,(q,T)=>{this.emitLine("case ",q,"(",this.swiftType(T),")")}),I!==null&&this.emitLine("case ",this.nameForUnionMember(y,I)),this._options.justTypes||(this.ensureBlankLine(),this.emitBlockWithAccess("init(from decoder: Decoder) throws",()=>{this.emitLine("let container = try decoder.singleValueContainer()");const q=y.findMember("bool");q!==void 0&&p(q);const T=y.findMember("integer");T!==void 0&&p(T);for(const D of x)D.kind==="bool"||D.kind==="integer"||p(D);I!==null&&this.emitBlock("if container.decodeNil()",()=>{this.emitLine("self = .",this.nameForUnionMember(y,I)),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(y,x,"none",null,(q,T)=>{this.emitLine("case .",q,"(let x):"),this.indent(()=>this.emitLine("try container.encode(x)"))}),I!==null&&(this.emitLine("case .",this.nameForUnionMember(y,I),":"),this.indent(()=>this.emitLine("try container.encodeNil()"))),this.emitLine("}")}))}),this.endFile()}emitTopLevelMapAndArrayConvenienceInitializerExtensions(y,r){let s;if(y instanceof l.ArrayType)s=["Array where Element == ",r,".Element"];else if(y instanceof l.MapType)s=["Dictionary where Key == String, Value == ",this.swiftType(y.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(y){this.emitLine("throw DecodingError.typeMismatch(",y,'.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for ',y,'"))')}emitConvenienceMutator(y,r){this.emitLine("func with("),this.indent(()=>{this.forEachClassProperty(y,"none",(s,p,g,I)=>{this.emitLine(s,": ",this.swiftPropertyType(g),"? = nil",I!=="only"&&I!=="last"?",":"")})}),this.emitBlock([") -> ",r],()=>{this.emitLine("return ",r,"("),this.indent(()=>{this.forEachClassProperty(y,"none",(s,p,g,I)=>{this.emitLine(s,": ",s," ?? self.",s,I!=="only"&&I!=="last"?",":"")})}),this.emitLine(")")})}emitMark(y,r=!1){this.emitLine("// MARK:",r?" - ":" ",y)}emitSourceStructure(){this._options.multiFileOutput===!1&&this.renderSingleFileHeaderComments(),this.forEachNamedType("leading-and-interposing",(y,r)=>this.renderClassDefinition(y,r),(y,r)=>this.renderEnumDefinition(y,r),(y,r)=>this.renderUnionDefinition(y,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",(y,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=S}(Ul)),Ul}var xl={},nm;function Mg(){return nm||(nm=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 i=et(),n=On(),a=Wt(),l=Ft(),d=zt(),u=Dt(),c=Nt(),w=Qe(),U=qt(),F=mt(),O=pt(),M=vr();var L;(function(P){P[P.None=0]="None",P[P.Jackson=1]="Jackson",P[P.Klaxon=2]="Klaxon",P[P.KotlinX=3]="KotlinX"})(L=e.Framework||(e.Framework={})),e.kotlinOptions={framework:new d.EnumOption("framework","Serialization framework",[["just-types",L.None],["jackson",L.Jackson],["klaxon",L.Klaxon],["kotlinx",L.KotlinX]],"klaxon"),acronymStyle:(0,M.acronymOption)(M.AcronymStyleOptions.Pascal),packageName:new d.StringOption("package","Package","PACKAGE","quicktype")};class _ 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(y,r){const s=(0,d.getOptionValues)(e.kotlinOptions,r);switch(s.framework){case L.None:return new A(this,y,s);case L.Jackson:return new E(this,y,s);case L.Klaxon:return new f(this,y,s);case L.KotlinX:return new S(this,y,s);default:return(0,w.assertNever)(s.framework)}}}e.KotlinTargetLanguage=_;const b=["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 v(P){return(0,c.isLetterOrUnderscore)(P)||(0,c.isNumeric)(P)}function h(P){return v(P)&&!(0,c.isDigit)(P)}const m=(0,c.legalizeCharacters)(v);function k(P,y,r=c.allUpperWordStyle){const s=(0,c.splitIntoWords)(y);return(0,c.combineWords)(s,m,P?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,P?c.allUpperWordStyle:c.allLowerWordStyle,r,"",h)}function B(P){return"\\u"+(0,c.intToHex)(P,4)}const C=(0,c.utf32ConcatMap)((0,c.escapeNonPrintableMapper)(c.isPrintable,B));function R(P){return C(P).replace(/\$/g,"\\$")}class A extends a.ConvenienceRenderer{constructor(y,r,s){super(y,r),this._kotlinOptions=s}forbiddenNamesForGlobalNamespace(){return b}forbiddenForObjectProperties(y,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(y,r){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(y,r){return{names:[],includeGlobalForbidden:!1}}topLevelNameStyle(y){return k(!0,y)}makeNamedTypeNamer(){return(0,l.funPrefixNamer)("upper",y=>k(!0,y,(0,M.acronymStyle)(this._kotlinOptions.acronymStyle)))}namerForObjectProperty(){return(0,l.funPrefixNamer)("lower",y=>k(!1,y,(0,M.acronymStyle)(this._kotlinOptions.acronymStyle)))}makeUnionMemberNamer(){return(0,l.funPrefixNamer)("upper",y=>k(!0,y)+"Value")}makeEnumCaseNamer(){return(0,l.funPrefixNamer)("upper",y=>k(!0,y,(0,M.acronymStyle)(this._kotlinOptions.acronymStyle)))}emitDescriptionBlock(y){this.emitCommentLines(y," * ","/**"," */")}emitBlock(y,r,s="curly"){const[p,g]=s==="curly"?["{","}"]:s==="paren"?["(",")"]:["{","})"];this.emitLine(y," ",p),this.indent(r),this.emitLine(g)}anySourceType(y){return["Any",y]}arrayType(y,r=!1,s=!1){return["List<",this.kotlinType(y.items,r),">"]}mapType(y,r=!1,s=!1){return["Map<String, ",this.kotlinType(y.values,r),">"]}kotlinType(y,r=!1,s=!1){const p=s?"":"?";return(0,O.matchType)(y,g=>(0,u.maybeAnnotated)(r,n.anyTypeIssueAnnotation,this.anySourceType(p)),g=>(0,u.maybeAnnotated)(r,n.nullTypeIssueAnnotation,this.anySourceType(p)),g=>"Boolean",g=>"Long",g=>"Double",g=>"String",g=>this.arrayType(g,r),g=>this.nameForNamedType(g),g=>this.mapType(g,r),g=>this.nameForNamedType(g),g=>{const I=(0,O.nullableFromUnion)(g);return I!==null?[this.kotlinType(I,r),p]:this.nameForNamedType(g)})}emitUsageHeader(){}emitHeader(){this.leadingComments!==void 0?this.emitCommentLines(this.leadingComments):this.emitUsageHeader(),this.ensureBlankLine(),this.emitLine("package ",this._kotlinOptions.packageName),this.ensureBlankLine()}emitTopLevelArray(y,r){const s=this.kotlinType(y.items);this.emitLine(["typealias ",r," = ArrayList<",s,">"])}emitTopLevelMap(y,r){const s=this.kotlinType(y.values);this.emitLine(["typealias ",r," = HashMap<String, ",s,">"])}emitEmptyClassDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitClassAnnotations(y,r),this.emitLine("class ",r,"()")}emitClassDefinition(y,r){if(y.getProperties().size===0){this.emitEmptyClassDefinition(y,r);return}const s=p=>p.isOptional?[this.kotlinType(p.type,!0,!0),"?"]:this.kotlinType(p.type,!0);this.emitDescription(this.descriptionForType(y)),this.emitClassAnnotations(y,r),this.emitLine("data class ",r," ("),this.indent(()=>{let p=y.getProperties().size,g=!0;this.forEachClassProperty(y,"none",(I,x,q)=>{const T=q.type.kind==="union"&&(0,O.nullableFromUnion)(q.type)!==null,D=q.isOptional||q.type.kind==="null"||T,W=--p===0;let J=[];const X=this.descriptionForClassProperty(y,x);X!==void 0&&J.push(()=>this.emitDescription(X)),this.renameAttribute(I,x,!D,J),J.length>0&&!g&&this.ensureBlankLine();for(const Q of J)Q();this.emitLine("val ",I,": ",s(q),D?" = null":"",W?"":","),J.length>0&&!W&&this.ensureBlankLine(),g=!1})}),this.emitClassDefinitionMethods(y,r)}emitClassDefinitionMethods(y,r){this.emitLine(")")}emitClassAnnotations(y,r){}renameAttribute(y,r,s,p){}emitEnumDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitBlock(["enum class ",r],()=>{let s=y.cases.size;this.forEachEnumCase(y,"none",p=>{this.emitLine(p,--s===0?"":",")})})}emitUnionDefinition(y,r){function s(I){const x=I.kind;return x==="class"?x:"_"+x}this.emitDescription(this.descriptionForType(y));const[p,g]=(0,O.removeNullFromUnion)(y,s);this.emitClassAnnotations(y,r),this.emitBlock(["sealed class ",r],()=>{{let I=[];this.forEachUnionMember(y,g,"none",null,(x,q)=>{I.push([["class ",x,"(val value: ",this.kotlinType(q),")"],[" : ",r,"()"]])}),p!==null&&I.push([["class ",this.nameForUnionMember(y,p),"()"],[" : ",r,"()"]]),this.emitTable(I)}this.emitUnionDefinitionMethods(y,g,p,r)})}emitUnionDefinitionMethods(y,r,s,p){}emitSourceStructure(){this.emitHeader(),this.forEachTopLevel("leading",(y,r)=>{y instanceof F.ArrayType?this.emitTopLevelArray(y,r):y instanceof F.MapType&&this.emitTopLevelMap(y,r)}),this.forEachNamedType("leading-and-interposing",(y,r)=>this.emitClassDefinition(y,r),(y,r)=>this.emitEnumDefinition(y,r),(y,r)=>this.emitUnionDefinition(y,r))}}e.KotlinRenderer=A;class f extends A{constructor(y,r,s){super(y,r,s)}unionMemberFromJsonValue(y,r){return(0,O.matchType)(y,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(y),">(it) }"],s=>[r,".obj?.let { klaxon.parseFromJsonObject<",this.kotlinType(y),">(it) }"],s=>[r,".string?.let { ",this.kotlinType(s),".fromValue(it) }"],s=>(0,w.mustNotHappen)())}unionMemberJsonValueGuard(y,r){return(0,O.matchType)(y,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",(y,r)=>{this.emitLine("// val ",(0,u.modifySource)(c.camelCase,r)," = ",r,".fromJson(jsonString)")})}emitHeader(){super.emitHeader(),this.emitLine("import com.beust.klaxon.*");const y=(0,i.iterableSome)(this.typeGraph.allNamedTypes(),p=>p instanceof F.UnionType&&(0,O.nullableFromUnion)(p)===null),r=(0,i.iterableSome)(this.typeGraph.allNamedTypes(),p=>p instanceof F.ClassType&&p.getProperties().size===0);(y||this.haveEnums||r)&&this.emitGenericConverter();let s=[];r&&s.push([[".convert(JsonObject::class,"],[" { it.obj!! },"],[" { it.toJsonString() })"]]),this.forEachEnum("none",(p,g)=>{s.push([[".convert(",g,"::class,"],[" { ",g,".fromValue(it.string!!) },"],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion("none",(p,g)=>{s.push([[".convert(",g,"::class,"],[" { ",g,".fromJson(it) },"],[" { it.toJson() }, true)"]])}),this.ensureBlankLine(),this.emitLine("private val klaxon = Klaxon()"),s.length>0&&this.indent(()=>this.emitTable(s))}emitTopLevelArray(y,r){const s=this.kotlinType(y.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(y,r){const s=this.kotlinType(y.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(y,r,s=!1){const p=R(r),g=this.sourcelikeToString(y)!==p,I=[];return g&&I.push(['name = "',p,'"']),s&&I.push("ignored = true"),I.length===0?void 0:["@Json(",(0,i.arrayIntercalate)(", ",I),")"]}emitEmptyClassDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitLine("typealias ",r," = JsonObject")}emitClassDefinitionMethods(y,r){(0,i.iterableSome)(this.topLevels,([p,g])=>g===y)?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(y,r,s,p){const g=this.klaxonRenameAttribute(y,r);g!==void 0&&p.push(()=>this.emitLine(g))}emitEnumDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=y.cases.size;this.forEachEnumCase(y,"none",(p,g)=>{this.emitLine(p,`("${R(g)}")`,--s===0?";":",")}),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitBlock(["public fun fromValue(value: String): ",r," = when (value)"],()=>{let p=[];this.forEachEnumCase(y,"none",(g,I)=>{p.push([[`"${R(I)}"`],[" -> ",g]])}),p.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(p)})})})}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(y,r,s,p){this.ensureBlankLine(),this.emitLine("public fun toJson(): String = klaxon.toJsonString(when (this) {"),this.indent(()=>{let g=[];if(this.forEachUnionMember(y,r,"none",null,I=>{g.push([["is ",I],[" -> this.value"]])}),s!==null){const I=this.nameForUnionMember(y,s);g.push([["is ",I],[' -> "null"']])}this.emitTable(g)}),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("public fun fromJson(jv: JsonValue): ",p," = when (jv.inside) {"),this.indent(()=>{let g=[];if(this.forEachUnionMember(y,r,"none",null,(I,x)=>{g.push([[this.unionMemberJsonValueGuard(x,"jv.inside")],[" -> ",I,"(",this.unionMemberFromJsonValue(x,"jv"),"!!)"]])}),s!==null){const I=this.nameForUnionMember(y,s);g.push([[this.unionMemberJsonValueGuard(s,"jv.inside")],[" -> ",I,"()"]])}g.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(g)}),this.emitLine("}")})}}e.KotlinKlaxonRenderer=f;class E extends A{constructor(y,r,s){super(y,r,s)}unionMemberJsonValueGuard(y,r){return(0,O.matchType)(y,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",(y,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 y=(0,i.iterableSome)(this.typeGraph.allNamedTypes(),p=>p instanceof F.UnionType&&(0,O.nullableFromUnion)(p)===null),r=(0,i.iterableSome)(this.typeGraph.allNamedTypes(),p=>p instanceof F.ClassType&&p.getProperties().size===0);(y||this.haveEnums||r)&&this.emitGenericConverter();let s=[];this.forEachEnum("none",(p,g)=>{s.push([["convert(",g,"::class,"],[" { ",g,".fromValue(it.asText()) },"],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion("none",(p,g)=>{s.push([["convert(",g,"::class,"],[" { ",g,".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(y,r){const s=this.kotlinType(y.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(y,r){const s=this.kotlinType(y.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(y,r,s,p=!1){const g=R(r),I=this.sourcelikeToString(y)!==g,x=[],q=r.startsWith("is"),T=[];return(I||q)&&T.push('"'+g+'"'),s&&T.push("required=true"),T.length>0&&(x.push(["@get:JsonProperty(",(0,i.arrayIntercalate)(", ",T),")"]),x.push(["@field:JsonProperty(",(0,i.arrayIntercalate)(", ",T),")"])),p&&(x.push("@get:JsonIgnore"),x.push("@field:JsonIgnore")),x.length===0?void 0:x}emitEmptyClassDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitLine("typealias ",r," = JsonNode")}emitClassDefinitionMethods(y,r){(0,i.iterableSome)(this.topLevels,([p,g])=>g===y)?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(y,r,s,p){const g=this.jacksonRenameAttribute(y,r,s);g!==void 0&&p.push(()=>this.emitLine(g))}emitEnumDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=y.cases.size;this.forEachEnumCase(y,"none",(p,g)=>{this.emitLine(p,`("${R(g)}")`,--s===0?";":",")}),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitBlock(["fun fromValue(value: String): ",r," = when (value)"],()=>{let p=[];this.forEachEnumCase(y,"none",(g,I)=>{p.push([[`"${R(I)}"`],[" -> ",g]])}),p.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(p)})})})}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(y,r,s,p){this.ensureBlankLine(),this.emitLine("fun toJson(): String = mapper.writeValueAsString(when (this) {"),this.indent(()=>{let g=[];if(this.forEachUnionMember(y,r,"none",null,I=>{g.push([["is ",I],[" -> this.value"]])}),s!==null){const I=this.nameForUnionMember(y,s);g.push([["is ",I],[' -> "null"']])}this.emitTable(g)}),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",()=>{this.emitLine("fun fromJson(jn: JsonNode): ",p," = when (jn) {"),this.indent(()=>{let g=[];if(this.forEachUnionMember(y,r,"none",null,(I,x)=>{g.push([[this.unionMemberJsonValueGuard(x,"jn")],[" -> ",I,"(mapper.treeToValue(jn))"]])}),s!==null){const I=this.nameForUnionMember(y,s);g.push([[this.unionMemberJsonValueGuard(s,"jn")],[" -> ",I,"()"]])}g.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(g)}),this.emitLine("}")})}}e.KotlinJacksonRenderer=E;class S extends A{constructor(y,r,s){super(y,r,s)}anySourceType(y){return["JsonElement",y]}arrayType(y,r=!1,s=!1){const p=this.kotlinType(y.items,r,!0),g=this.sourcelikeToString(p);return g==="JsonObject"||g==="JsonElement"?"JsonArray":super.arrayType(y,r,s)}mapType(y,r=!1,s=!1){const p=this.kotlinType(y.values,r,!0),g=this.sourcelikeToString(p);return g==="JsonObject"||g==="JsonElement"?"JsonObject":super.mapType(y,r,s)}emitTopLevelMap(y,r){this.kotlinType(y.values)==="JsonObject"?this.emitLine(["typealias ",r," = JsonObject"]):super.emitTopLevelMap(y,r)}emitTopLevelArray(y,r){const s=this.kotlinType(y.items);this.emitLine(["typealias ",r," = JsonArray<",s,">"])}emitUsageHeader(){this.emitLine("// To parse the JSON, install kotlin's serialization plugin and do:"),this.emitLine("//");const y=[];y.push(["// val ","json"," = Json { allowStructuredMapKeys = true }"]),this.forEachTopLevel("none",(r,s)=>{y.push(["// val ",(0,u.modifySource)(c.camelCase,s),` = json.parse(${this.sourcelikeToString(s)}.serializer(), jsonString)`])}),this.emitTable(y)}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(y,r){this.emitLine("@Serializable")}renameAttribute(y,r,s,p){const g=this._rename(y,r);g!==void 0&&p.push(()=>this.emitLine(g))}_rename(y,r){const s=R(r);if(this.sourcelikeToString(y)!==s)return['@SerialName("',s,'")']}emitEnumDefinition(y,r){this.emitDescription(this.descriptionForType(y)),this.emitLine(["@Serializable"]),this.emitBlock(["enum class ",r,"(val value: String)"],()=>{let s=y.cases.size;this.forEachEnumCase(y,"none",(p,g)=>{const I=R(g);this.emitLine(`@SerialName("${I}") `,p,`("${I}")`,--s===0?";":",")})})}}e.KotlinXRenderer=S}(xl)),xl}var zl={},im;function Bg(){return im||(im=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ElmRenderer=e.ElmTargetLanguage=e.elmOptions=void 0;const i=et(),n=qt(),a=zt(),l=mt(),d=pt(),u=Wt(),c=Ft(),w=Nt(),U=Qe(),F=Dt(),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 M 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,R){return new k(this,C,(0,a.getOptionValues)(e.elmOptions,R))}}e.ElmTargetLanguage=M;const L=["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"],_=(0,w.legalizeCharacters)(B=>(0,w.isAscii)(B)&&(0,w.isLetterOrUnderscoreOrDigit)(B));function b(B,C){const R=(0,w.splitIntoWords)(B);return(0,w.combineWords)(R,_,C?w.firstUpperWordStyle:w.allLowerWordStyle,w.firstUpperWordStyle,C?w.allUpperWordStyle:w.allLowerWordStyle,w.allUpperWordStyle,"",w.isLetterOrUnderscore)}const v=(0,c.funPrefixNamer)("upper",B=>b(B,!0)),h=(0,c.funPrefixNamer)("lower",B=>b(B,!1));function m(B){function C(A){return{reqOrOpt:"Jpipe.optional",fallback:A}}const R=B.type;return B.isOptional||R instanceof l.UnionType&&(0,d.nullableFromUnion)(R)!==null?C(" Nothing"):R.kind==="null"?C(" ()"):{reqOrOpt:"Jpipe.required",fallback:""}}class k extends u.ConvenienceRenderer{constructor(C,R,A){super(C,R),this._options=A,this._topLevelDependents=new Map,this._namedTypeDependents=new Map}forbiddenNamesForGlobalNamespace(){return L}makeTopLevelDependencyNames(C,R){const A=new c.DependencyName(h,R.order,E=>`${E(R)}_to_string`);let f;return this.namedTypeToNameForTopLevel(C)===void 0&&(f=new c.DependencyName(h,R.order,E=>E(R))),this._topLevelDependents.set(R,{encoder:A,decoder:f}),f!==void 0?[A,f]:[A]}makeNamedTypeNamer(){return v}makeNamedTypeDependencyNames(C,R){const A=new c.DependencyName(h,R.order,E=>`encode_${E(R)}`),f=new c.DependencyName(h,R.order,E=>E(R));return this._namedTypeDependents.set(R,{encoder:A,decoder:f}),[A,f]}namerForObjectProperty(){return h}forbiddenForObjectProperties(C,R){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return v}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return v}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(C,R,A,f){return`${super.proposeUnionMemberName(C,R,A,f)}_in_${f(R)}`}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,R=!1){return(0,d.matchType)(C,A=>(0,F.singleWord)((0,F.annotated)(O.anyTypeIssueAnnotation,"Jdec.Value")),A=>(0,F.singleWord)((0,F.annotated)(O.nullTypeIssueAnnotation,"()")),A=>(0,F.singleWord)("Bool"),A=>(0,F.singleWord)("Int"),A=>(0,F.singleWord)("Float"),A=>(0,F.singleWord)("String"),A=>(0,F.multiWord)(" ",this.arrayType,(0,F.parenIfNeeded)(this.elmType(A.items))),A=>(0,F.singleWord)(this.nameForNamedType(A)),A=>(0,F.multiWord)(" ","Dict String",(0,F.parenIfNeeded)(this.elmType(A.values))),A=>(0,F.singleWord)(this.nameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.elmType(f);return R?E:(0,F.multiWord)(" ","Maybe",(0,F.parenIfNeeded)(E))}return(0,F.singleWord)(this.nameForNamedType(A))})}elmProperty(C){return C.isOptional?(0,F.multiWord)(" ","Maybe",(0,F.parenIfNeeded)(this.elmType(C.type,!0))).source:this.elmType(C.type).source}decoderNameForNamedType(C){const R=this.nameForNamedType(C);return(0,U.defined)(this._namedTypeDependents.get(R)).decoder}decoderNameForType(C,R=!1){return(0,d.matchType)(C,A=>(0,F.singleWord)("Jdec.value"),A=>(0,F.multiWord)(" ","Jdec.null","()"),A=>(0,F.singleWord)("Jdec.bool"),A=>(0,F.singleWord)("Jdec.int"),A=>(0,F.singleWord)("Jdec.float"),A=>(0,F.singleWord)("Jdec.string"),A=>(0,F.multiWord)(" ",["Jdec.",(0,w.decapitalize)(this.arrayType)],(0,F.parenIfNeeded)(this.decoderNameForType(A.items))),A=>(0,F.singleWord)(this.decoderNameForNamedType(A)),A=>(0,F.multiWord)(" ","Jdec.dict",(0,F.parenIfNeeded)(this.decoderNameForType(A.values))),A=>(0,F.singleWord)(this.decoderNameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.decoderNameForType(f);return R?E:(0,F.multiWord)(" ","Jdec.nullable",(0,F.parenIfNeeded)(E))}return(0,F.singleWord)(this.decoderNameForNamedType(A))})}decoderNameForProperty(C){return C.isOptional?(0,F.multiWord)(" ","Jdec.nullable",(0,F.parenIfNeeded)(this.decoderNameForType(C.type,!0))):this.decoderNameForType(C.type)}encoderNameForNamedType(C){const R=this.nameForNamedType(C);return(0,U.defined)(this._namedTypeDependents.get(R)).encoder}encoderNameForType(C,R=!1){return(0,d.matchType)(C,A=>(0,F.singleWord)("identity"),A=>(0,F.multiWord)(" ","always","Jenc.null"),A=>(0,F.singleWord)("Jenc.bool"),A=>(0,F.singleWord)("Jenc.int"),A=>(0,F.singleWord)("Jenc.float"),A=>(0,F.singleWord)("Jenc.string"),A=>(0,F.multiWord)(" ",["make",this.arrayType,"Encoder"],(0,F.parenIfNeeded)(this.encoderNameForType(A.items))),A=>(0,F.singleWord)(this.encoderNameForNamedType(A)),A=>(0,F.multiWord)(" ","makeDictEncoder",(0,F.parenIfNeeded)(this.encoderNameForType(A.values))),A=>(0,F.singleWord)(this.encoderNameForNamedType(A)),A=>{const f=(0,d.nullableFromUnion)(A);if(f!==null){const E=this.encoderNameForType(f);return R?E:(0,F.multiWord)(" ","makeNullableEncoder",(0,F.parenIfNeeded)(E))}return(0,F.singleWord)(this.encoderNameForNamedType(A))})}encoderNameForProperty(C){return C.isOptional?(0,F.multiWord)(" ","makeNullableEncoder",(0,F.parenIfNeeded)(this.encoderNameForType(C.type,!0))):this.encoderNameForType(C.type)}emitTopLevelDefinition(C,R){this.emitLine("type alias ",R," = ",this.elmType(C).source)}emitClassDefinition(C,R){let A=this.descriptionForType(C);this.forEachClassProperty(C,"none",(f,E)=>{const S=this.descriptionForClassProperty(C,E);S!==void 0&&(A===void 0?A=[]:A.push(""),A.push(`${this.sourcelikeToString(f)}:`),A.push(...S))}),this.emitDescription(A),this.emitLine("type alias ",R," ="),this.indent(()=>{let f=!0;this.forEachClassProperty(C,"none",(E,S,P)=>{this.emitLine(f?"{":","," ",E," : ",this.elmProperty(P)),f=!1}),f&&this.emitLine("{"),this.emitLine("}")})}emitEnumDefinition(C,R){this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",R),this.indent(()=>{let A=!0;this.forEachEnumCase(C,"none",f=>{const E=A?"=":"|";this.emitLine(E," ",f),A=!1})})}emitUnionDefinition(C,R){this.emitDescription(this.descriptionForType(C)),this.emitLine("type ",R),this.indent(()=>{let A=!0;this.forEachUnionMember(C,null,"none",null,(f,E)=>{const S=A?"=":"|";E.kind==="null"?this.emitLine(S," ",f):this.emitLine(S," ",f," ",(0,F.parenIfNeeded)(this.elmType(E))),A=!1})})}emitTopLevelFunctions(C,R){const{encoder:A,decoder:f}=(0,U.defined)(this._topLevelDependents.get(R));this.namedTypeToNameForTopLevel(C)===void 0&&(this.emitLine((0,U.defined)(f)," : Jdec.Decoder ",R),this.emitLine((0,U.defined)(f)," = ",this.decoderNameForType(C).source),this.ensureBlankLine()),this.emitLine(A," : ",R," -> String"),this.emitLine(A," r = Jenc.encode 0 (",this.encoderNameForType(C).source," r)")}emitClassFunctions(C,R){const A=this.decoderNameForNamedType(C);this.emitLine(A," : Jdec.Decoder ",R),this.emitLine(A," ="),this.indent(()=>{this.emitLine("Jpipe.decode ",R),this.indent(()=>{this.forEachClassProperty(C,"none",(E,S,P)=>{const y=(0,F.parenIfNeeded)(this.decoderNameForProperty(P)),{reqOrOpt:r,fallback:s}=m(P);this.emitLine("|> ",r,' "',(0,w.stringEscape)(S),'" ',y,s)})})}),this.ensureBlankLine();const f=this.encoderNameForNamedType(C);this.emitLine(f," : ",R," -> Jenc.Value"),this.emitLine(f," x ="),this.indent(()=>{this.emitLine("Jenc.object"),this.indent(()=>{let E=!0;this.forEachClassProperty(C,"none",(S,P,y)=>{const r=E?"[":",",s=this.encoderNameForProperty(y).source;this.emitLine(r,' ("',(0,w.stringEscape)(P),'", ',s," x.",S,")"),E=!1}),E&&this.emitLine("["),this.emitLine("]")})})}emitEnumFunctions(C,R){const A=this.decoderNameForNamedType(C);this.emitLine(A," : Jdec.Decoder ",R),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,S)=>{this.emitLine('"',(0,w.stringEscape)(S),'" -> Jdec.succeed ',E)}),this.emitLine('somethingElse -> Jdec.fail <| "Invalid ',R,': " ++ somethingElse')})}),this.emitLine(")")})}),this.ensureBlankLine();const f=this.encoderNameForNamedType(C);this.emitLine(f," : ",R," -> Jenc.Value"),this.emitLine(f," x = case x of"),this.indent(()=>{this.forEachEnumCase(C,"none",(E,S)=>{this.emitLine(E,' -> Jenc.string "',(0,w.stringEscape)(S),'"')})})}emitUnionFunctions(C,R){function A(S,P){return P.kind==="array"?" array":P.kind==="double"?" xdouble":P.isPrimitive()?" "+P.kind:P.kind}const f=this.decoderNameForNamedType(C);this.emitLine(f," : Jdec.Decoder ",R),this.emitLine(f," ="),this.indent(()=>{this.emitLine("Jdec.oneOf"),this.indent(()=>{let S=!0;this.forEachUnionMember(C,null,"none",A,(P,y)=>{const r=S?"[":",";if(y.kind==="null")this.emitLine(r," Jdec.null ",P);else{const s=(0,F.parenIfNeeded)(this.decoderNameForType(y));this.emitLine(r," Jdec.map ",P," ",s)}S=!1}),this.emitLine("]")})}),this.ensureBlankLine();const E=this.encoderNameForNamedType(C);this.emitLine(E," : ",R," -> Jenc.Value"),this.emitLine(E," x = case x of"),this.indent(()=>{this.forEachUnionMember(C,null,"none",A,(S,P)=>{if(P.kind==="null")this.emitLine(S," -> Jenc.null");else{const y=this.encoderNameForType(P).source;this.emitLine(S," y -> ",y," y")}})})}emitSourceStructure(){const C=[],R=[];this.forEachTopLevel("none",(A,f)=>{let{encoder:E,decoder:S}=(0,U.defined)(this._topLevelDependents.get(f));S===void 0&&(S=(0,U.defined)(this._namedTypeDependents.get(f)).decoder),R.push(S),C.push(f,E,S)}),this.forEachObject("none",(A,f)=>{(0,i.mapContains)(this.topLevels,A)||C.push(f)}),this.forEachEnum("none",(A,f)=>{(0,i.mapContains)(this.topLevels,A)||C.push([f,"(..)"])}),this.forEachUnion("none",(A,f)=>{(0,i.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,i.arrayIntercalate)(", ",R),")"),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}(zl)),zl}var cr={},rm;function Dg(){if(rm)return cr;rm=1,Object.defineProperty(cr,"__esModule",{value:!0}),cr.JSONSchemaRenderer=cr.JSONSchemaTargetLanguage=void 0;const e=et(),i=qt(),n=mt(),a=pt(),l=Wt(),d=Ft(),u=Nt(),c=Qe(),w=is(),U=Da();class F extends i.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(v,h){return new _(this,v)}}cr.JSONSchemaTargetLanguage=F;const O=(0,d.funPrefixNamer)("namer",L),M=(0,u.legalizeCharacters)(b=>b>=32&&b<128&&b!==47);function L(b){const v=(0,u.splitIntoWords)(b);return(0,u.combineWords)(v,M,u.firstUpperWordStyle,u.firstUpperWordStyle,u.allUpperWordStyle,u.allUpperWordStyle,"",h=>!0)}class _ extends l.ConvenienceRenderer{makeNamedTypeNamer(){return O}namerForObjectProperty(){return null}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return null}nameForType(v){return(0,c.defined)(this.names.get(this.nameForNamedType(v)))}makeOneOf(v){const h=(0,e.iterableFirst)(v);return h===void 0?(0,c.panic)("Must have at least one type for oneOf"):v.size===1?this.schemaForType(h):{anyOf:Array.from(v).map(m=>this.schemaForType(m))}}makeRef(v){return{$ref:`#/definitions/${this.nameForType(v)}`}}addAttributesToSchema(v,h){const m=this.typeGraph.attributeStore.attributesForType(v);for(const[k,B]of m)k.addToSchema(h,v,B)}schemaForType(v){const h=(0,a.matchTypeExhaustive)(v,m=>(0,c.panic)("none type should have been replaced"),m=>({}),m=>({type:"null"}),m=>({type:"boolean"}),m=>({type:"integer"}),m=>({type:"number"}),m=>({type:"string"}),m=>({type:"array",items:this.schemaForType(m.items)}),m=>this.makeRef(m),m=>this.definitionForObject(m,void 0),m=>this.makeRef(m),m=>this.makeRef(m),m=>this.unionNeedsName(m)?this.makeRef(m):this.definitionForUnion(m),m=>{const k=n.transformedStringTypeTargetTypeKindsMap.get(m.kind);return k===void 0?(0,c.panic)(`Unknown transformed string type ${m.kind}`):{type:"string",format:k.jsonSchema}});return h.$ref===void 0&&this.addAttributesToSchema(v,h),h}definitionForObject(v,h){let m,k;if(v.getProperties().size===0)m=void 0,k=void 0;else{const A={},f=[];for(const[E,S]of v.getProperties()){const P=this.schemaForType(S.type);P.description===void 0&&(0,U.addDescriptionToSchema)(P,this.descriptionForClassProperty(v,E)),A[E]=P,S.isOptional||f.push(E)}m=A,k=f.sort()}const B=v.getAdditionalProperties(),R={type:"object",additionalProperties:B!==void 0?this.schemaForType(B):!1,properties:m,required:k,title:h};return this.addAttributesToSchema(v,R),R}definitionForUnion(v,h){const m=this.makeOneOf(v.sortedMembers);return h!==void 0&&(m.title=h),this.addAttributesToSchema(v,m),m}definitionForEnum(v,h){const m={type:"string",enum:Array.from(v.cases),title:h};return this.addAttributesToSchema(v,m),m}emitSourceStructure(){const v=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#"},v),m={};this.forEachObject("none",(k,B)=>{const C=(0,c.defined)(this.names.get(B));m[C]=this.definitionForObject(k,C)}),this.forEachUnion("none",(k,B)=>{if(!this.unionNeedsName(k))return;const C=(0,c.defined)(this.names.get(B));m[C]=this.definitionForUnion(k,C)}),this.forEachEnum("none",(k,B)=>{const C=(0,c.defined)(this.names.get(B));m[C]=this.definitionForEnum(k,C)}),h.definitions=m,this.emitMultiline(JSON.stringify(h,void 0," "))}}return cr.JSONSchemaRenderer=_,cr}var Wl={},sm;function jg(){return sm||(sm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.RustRenderer=e.RustTargetLanguage=e.rustOptions=e.Visibility=e.Density=void 0;const i=et(),n=qt(),a=Wt(),l=Nt(),d=Ft(),u=pt(),c=Dt(),w=On(),U=zt(),F=Qe();var O;(function(f){f[f.Normal=0]="Normal",f[f.Dense=1]="Dense"})(O=e.Density||(e.Density={}));var M;(function(f){f[f.Private=0]="Private",f[f.Crate=1]="Crate",f[f.Public=2]="Public"})(M=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",M.Private],["crate",M.Crate],["public",M.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 L extends n.TargetLanguage{makeRenderer(E,S){return new A(this,E,(0,U.getOptionValues)(e.rustOptions,S))}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=L;const _=["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"],b=f=>(0,l.isAscii)(f)?(0,l.isLetterOrUnderscoreOrDigit)(f):!1,v=f=>(0,l.isAscii)(f)?(0,l.isLetterOrUnderscore)(f):!1,h=(0,l.legalizeCharacters)(b);function m(f,E){const S=(0,l.splitIntoWords)(f),P=E?l.allLowerWordStyle:l.firstUpperWordStyle,y=(0,l.combineWords)(S,h,P,P,P,P,E?"_":"",v);return y==="_"?"_underscore":y}const k=(0,d.funPrefixNamer)("default",f=>m(f,!0)),B=(0,d.funPrefixNamer)("camel",f=>m(f,!1)),C=f=>f<=65535?"\\u{"+(0,l.intToHex)(f,4)+"}":"\\u{"+(0,l.intToHex)(f,6)+"}",R=(0,l.utf32ConcatMap)((0,l.escapeNonPrintableMapper)(l.isPrintable,C));class A extends a.ConvenienceRenderer{constructor(E,S,P){super(E,S),this._options=P}makeNamedTypeNamer(){return B}namerForObjectProperty(){return k}makeUnionMemberNamer(){return B}makeEnumCaseNamer(){return B}forbiddenNamesForGlobalNamespace(){return _}forbiddenForObjectProperties(E,S){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(E,S){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(E,S){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return"/// "}nullableRustType(E,S){return["Option<",this.breakCycle(E,S),">"]}isImplicitCycleBreaker(E){const S=E.kind;return S==="array"||S==="map"}rustType(E,S=!1){return(0,u.matchType)(E,P=>(0,c.maybeAnnotated)(S,w.anyTypeIssueAnnotation,"Option<serde_json::Value>"),P=>(0,c.maybeAnnotated)(S,w.nullTypeIssueAnnotation,"Option<serde_json::Value>"),P=>"bool",P=>"i64",P=>"f64",P=>"String",P=>["Vec<",this.rustType(P.items,S),">"],P=>this.nameForNamedType(P),P=>["HashMap<String, ",this.rustType(P.values,S),">"],P=>this.nameForNamedType(P),P=>{const y=(0,u.nullableFromUnion)(P);if(y!==null)return this.nullableRustType(y,S);const[r]=(0,u.removeNullFromUnion)(P),p=this.isCycleBreakerType(P)?["Box<",this.nameForNamedType(P),">"]:this.nameForNamedType(P);return r!==null?["Option<",p,">"]:p})}breakCycle(E,S){const P=this.rustType(E,S);return this.isCycleBreakerType(E)?["Box<",P,">"]:P}emitRenameAttribute(E,S){const P=R(S);(this.sourcelikeToString(E)!==P||this._options.density===O.Normal)&&this.emitLine('#[serde(rename = "',P,'")]')}get visibility(){return this._options.visibility===M.Crate?"pub(crate) ":this._options.visibility===M.Public?"pub ":""}emitStructDefinition(E,S){this.emitDescription(this.descriptionForType(E)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]");const P=this._options.density===O.Dense?"none":"interposing",y=()=>this.forEachClassProperty(E,P,(r,s,p)=>{this.emitDescription(this.descriptionForClassProperty(E,s)),this.emitRenameAttribute(r,s),this.emitLine(this.visibility,r,": ",this.breakCycle(p.type,!0),",")});this.emitBlock(["pub struct ",S],y)}emitBlock(E,S){this.emitLine(E," {"),this.indent(S),this.emitLine("}")}emitUnion(E,S){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[,y]=(0,u.removeNullFromUnion)(E),r=this._options.density===O.Dense?"none":"interposing";this.emitBlock(["pub enum ",S],()=>this.forEachUnionMember(E,y,r,null,(s,p)=>{const g=this.breakCycle(p,!0);this.emitLine([s,"(",g,"),"])}))}emitEnumDefinition(E,S){this.emitDescription(this.descriptionForType(E)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]");const P=this._options.density===O.Dense?"none":"interposing";this.emitBlock(["pub enum ",S],()=>this.forEachEnumCase(E,P,(y,r)=>{this.emitRenameAttribute(y,r),this.emitLine([y,","])}))}emitTopLevelAlias(E,S){this.emitLine("pub type ",S," = ",this.rustType(E),";")}emitLeadingComments(){if(this.leadingComments!==void 0){this.emitCommentLines(this.leadingComments);return}const E=(0,F.defined)((0,i.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,S)=>this.emitTopLevelAlias(E,S),E=>this.namedTypeToNameForTopLevel(E)===void 0),this.forEachObject("leading-and-interposing",(E,S)=>this.emitStructDefinition(E,S)),this.forEachUnion("leading-and-interposing",(E,S)=>this.emitUnion(E,S)),this.forEachEnum("leading-and-interposing",(E,S)=>this.emitEnumDefinition(E,S))}}e.RustRenderer=A}(Wl)),Wl}var fr={},om;function Ug(){if(om)return fr;om=1,Object.defineProperty(fr,"__esModule",{value:!0}),fr.CrystalRenderer=fr.CrystalTargetLanguage=void 0;const e=qt(),i=Wt(),n=Nt(),a=Ft(),l=pt(),d=Dt(),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[]}}fr.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(m){return(0,n.isAscii)(m)?(0,n.isLetterOrUnderscoreOrDigit)(m):!1}function F(m){return(0,n.isAscii)(m)?(0,n.isLetterOrUnderscore)(m):!1}const O=(0,n.legalizeCharacters)(U);function M(m,k){const B=(0,n.splitIntoWords)(m),C=k?n.allLowerWordStyle:n.firstUpperWordStyle,R=(0,n.combineWords)(B,O,C,C,C,C,k?"_":"",F);return R==="_"?"_underscore":R}const L=(0,a.funPrefixNamer)("default",m=>M(m,!0)),_=(0,a.funPrefixNamer)("camel",m=>M(m,!1));function b(m){return m<=65535?"\\u{"+(0,n.intToHex)(m,4)+"}":"\\u{"+(0,n.intToHex)(m,6)+"}"}const v=(0,n.utf32ConcatMap)((0,n.escapeNonPrintableMapper)(n.isPrintable,b));class h extends i.ConvenienceRenderer{constructor(k,B){super(k,B)}makeNamedTypeNamer(){return _}namerForObjectProperty(){return L}makeUnionMemberNamer(){return _}makeEnumCaseNamer(){return _}forbiddenNamesForGlobalNamespace(){return w}forbiddenForObjectProperties(k,B){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(k,B){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(k,B){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return"# "}nullableCrystalType(k,B){return[this.crystalType(k,B),"?"]}isImplicitCycleBreaker(k){const B=k.kind;return B==="array"||B==="map"}crystalType(k,B=!1){return(0,l.matchType)(k,C=>(0,d.maybeAnnotated)(B,u.anyTypeIssueAnnotation,"JSON::Any?"),C=>(0,d.maybeAnnotated)(B,u.nullTypeIssueAnnotation,"Nil"),C=>"Bool",C=>"Int32",C=>"Float64",C=>"String",C=>["Array(",this.crystalType(C.items,B),")"],C=>this.nameForNamedType(C),C=>["Hash(String, ",this.crystalType(C.values,B),")"],C=>"String",C=>{const R=(0,l.nullableFromUnion)(C);if(R!==null)return this.nullableCrystalType(R,B);const[A]=(0,l.removeNullFromUnion)(C),f=this.nameForNamedType(C);return A!==null?[f,"?"]:f})}breakCycle(k,B){return this.crystalType(k,B)}emitRenameAttribute(k,B){const C=v(B);this.sourcelikeToString(k)!==C&&this.emitLine('@[JSON::Field(key: "',C,'")]')}emitStructDefinition(k,B){this.emitDescription(this.descriptionForType(k));const C=()=>this.forEachClassProperty(k,"none",(R,A,f)=>{this.ensureBlankLine(),this.emitDescription(this.descriptionForClassProperty(k,A)),this.emitRenameAttribute(R,A),this.emitLine("property ",R," : ",this.crystalType(f.type,!0))});this.emitBlock(["class ",B],C)}emitBlock(k,B){this.emitLine(k),this.indent(()=>{this.emitLine("include JSON::Serializable")}),this.ensureBlankLine(),this.indent(B),this.emitLine("end")}emitEnum(k,B){this.emitLine(k),this.indent(B),this.emitLine("end")}emitUnion(k,B){if((0,l.nullableFromUnion)(k)!==null)return;this.emitDescription(this.descriptionForType(k));const[,R]=(0,l.removeNullFromUnion)(k);let A=[];this.forEachUnionMember(k,R,"none",null,(f,E)=>{const S=this.breakCycle(E,!0);A.push([S])}),this.emitLine(["alias ",B," = ",A.map(f=>f.map(E=>this.sourcelikeToString(E))).join(" | ")])}emitTopLevelAlias(k,B){this.emitLine("alias ",B," = ",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,B)=>this.emitTopLevelAlias(k,B),k=>this.namedTypeToNameForTopLevel(k)===void 0),this.forEachObject("leading-and-interposing",(k,B)=>this.emitStructDefinition(k,B)),this.forEachUnion("leading-and-interposing",(k,B)=>this.emitUnion(k,B))}}return fr.CrystalRenderer=h,fr}var Xn={},Si={},am;function X_(){if(am)return Si;am=1,Object.defineProperty(Si,"__esModule",{value:!0}),Si.reservedProperties=Si.globals=Si.keywords=void 0,Si.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"],i=["__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 Si.globals=i.concat(e),Si.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"],Si}var um;function xg(){return um||(um=1,function(e){var i=Xn&&Xn.__createBinding||(Object.create?function(S,P,y,r){r===void 0&&(r=y);var s=Object.getOwnPropertyDescriptor(P,y);(!s||("get"in s?!P.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return P[y]}}),Object.defineProperty(S,r,s)}:function(S,P,y,r){r===void 0&&(r=y),S[r]=P[y]}),n=Xn&&Xn.__setModuleDefault||(Object.create?function(S,P){Object.defineProperty(S,"default",{enumerable:!0,value:P})}:function(S,P){S.default=P}),a=Xn&&Xn.__importStar||function(S){if(S&&S.__esModule)return S;var P={};if(S!=null)for(var y in S)y!=="default"&&Object.prototype.hasOwnProperty.call(S,y)&&i(P,S,y);return n(P,S),P},l=Xn&&Xn.__importDefault||function(S){return S&&S.__esModule?S:{default:S}};Object.defineProperty(e,"__esModule",{value:!0}),e.RubyRenderer=e.RubyTargetLanguage=e.rubyOptions=e.Strictness=void 0;const d=l(so()),u=Dt(),c=Ft(),w=Wt(),U=qt(),F=zt(),O=a(X_()),M=Array.from(new Set([...O.keywords,...O.reservedProperties])),L=mt(),_=pt(),b=Nt();function v(S){return"\\u{"+(0,b.intToHex)(S,0)+"}"}const h=(0,b.utf32ConcatMap)((0,b.escapeNonPrintableMapper)(b.isPrintable,v));var m;(function(S){S.Strict="Strict::",S.Coercible="Coercible::",S.None="Types::"})(m=e.Strictness||(e.Strictness={})),e.rubyOptions={justTypes:new F.BooleanOption("just-types","Plain types only",!1),strictness:new F.EnumOption("strictness","Type strictness",[["strict",m.Strict],["coercible",m.Coercible],["none",m.None]]),namespace:new F.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(P,y){return new E(this,P,(0,F.getOptionValues)(e.rubyOptions,y))}}e.RubyTargetLanguage=k;const B=b.isLetterOrUnderscore;function C(S){const P=d.default.getCategory(S);return["Nd","Pc","Mn","Mc"].indexOf(P)>=0||B(S)}const R=(0,b.legalizeCharacters)(C);function A(S,P){/^[0-9]+$/.test(S)&&(S=S+"N");const y=(0,b.splitIntoWords)(S);return(0,b.combineWords)(y,R,b.firstUpperWordStyle,b.firstUpperWordStyle,b.allUpperWordStyle,b.allUpperWordStyle,"",B)}function f(S){const P=(0,b.splitIntoWords)(S);return(0,b.combineWords)(P,R,b.allLowerWordStyle,b.allLowerWordStyle,b.allLowerWordStyle,b.allLowerWordStyle,"_",B)}class E extends w.ConvenienceRenderer{constructor(P,y,r){super(P,y),this._options=r}get commentLineStart(){return"# "}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(P){return P.kind==="class"}forbiddenNamesForGlobalNamespace(){return O.globals.concat(["Types","JSON","Dry","Constructor","Self"])}forbiddenForObjectProperties(P,y){return{names:M,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return new c.Namer("types",P=>A(P),[])}namerForObjectProperty(){return new c.Namer("properties",f,[])}makeUnionMemberNamer(){return new c.Namer("properties",f,[])}makeEnumCaseNamer(){return new c.Namer("enum-cases",P=>A(P),[])}dryType(P,y=!1){const r=y?".optional":"";return(0,_.matchType)(P,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 p=(0,_.nullableFromUnion)(s);return p!==null?[this.dryType(p),".optional"]:["Types.Instance(",this.nameForNamedType(s),")",r]})}exampleUse(P,y,r=6,s=!1){if(r--<=0)return y;const p=s?"&":"";return(0,_.matchType)(P,g=>y,g=>[y,".nil?"],g=>y,g=>[y,".even?"],g=>y,g=>y,g=>this.exampleUse(g.items,[y,p,".first"],r),g=>{let I;return this.forEachClassProperty(g,"none",(x,q,T)=>{["class","map","array"].indexOf(T.type.kind)>=0?I={name:x,prop:T}:I===void 0&&(I={name:x,prop:T})}),I!==void 0?this.exampleUse(I.prop.type,[y,p,".",I.name],r,I.prop.isOptional):y},g=>this.exampleUse(g.values,[y,p,'["…"]'],r),g=>{let I;return this.forEachEnumCase(g,"none",x=>{I===void 0&&(I=x)}),I!==void 0?[y," == ",this.nameForNamedType(g),"::",I]:y},g=>{const I=(0,_.nullableFromUnion)(g);return I!==null?["class","map","array"].indexOf(I.kind)>=0?this.exampleUse(I,y,r,!0):[y,".nil?"]:y})}jsonSample(P){function y(){return P instanceof L.ArrayType?"[…]":P instanceof L.MapType||P instanceof L.ClassType?"{…}":"…"}return`"${y()}"`}fromDynamic(P,y,r=!1,s=!1){const p=[this.dryType(P,r),"[",y,"]"],g=s?p:y,I=r?"&":"";return(0,_.matchType)(P,x=>g,x=>g,x=>g,x=>g,x=>g,x=>g,x=>[y,I,".map { |x| ",this.fromDynamic(x.items,"x",!1,!0)," }"],x=>{const q=[this.nameForNamedType(x),".from_dynamic!(",y,")"];return r?[y," ? ",q," : nil"]:q},x=>[["Types::Hash",r?".optional":"","[",y,"]"],I,".map { |k, v| [k, ",this.fromDynamic(x.values,"v",!1,!0),"] }",I,".to_h"],x=>{const q=["Types::",this.nameForNamedType(x),"[",y,"]"];return r?[y,".nil? ? nil : ",q]:q},x=>{const q=(0,_.nullableFromUnion)(x);if(q!==null)return this.fromDynamic(q,y,!0);const T=[this.nameForNamedType(x),".from_dynamic!(",y,")"];return r?[y," ? ",T," : nil"]:T})}toDynamic(P,y,r=!1){return this.marshalsImplicitlyToDynamic(P)?y:(0,_.matchType)(P,s=>y,s=>y,s=>y,s=>y,s=>y,s=>y,s=>[y,r?"&":"",".map { |x| ",this.toDynamic(s.items,"x")," }"],s=>[y,r?"&":"",".to_dynamic"],s=>[y,r?"&":"",".map { |k, v| [k, ",this.toDynamic(s.values,"v"),"] }.to_h"],s=>y,s=>{const p=(0,_.nullableFromUnion)(s);return p!==null?this.toDynamic(p,y,!0):this.marshalsImplicitlyToDynamic(s)?y:[y,r?"&":"",".to_dynamic"]})}marshalsImplicitlyToDynamic(P){return(0,_.matchType)(P,y=>!0,y=>!0,y=>!0,y=>!0,y=>!0,y=>!0,y=>this.marshalsImplicitlyToDynamic(y.items),y=>!1,y=>this.marshalsImplicitlyToDynamic(y.values),y=>!0,y=>{const r=(0,_.nullableFromUnion)(y);return r!==null?this.marshalsImplicitlyToDynamic(r):!1})}propertyTypeMarshalsImplicitlyFromDynamic(P){return(0,_.matchType)(P,y=>!0,y=>!0,y=>!0,y=>!0,y=>!0,y=>!0,y=>this.propertyTypeMarshalsImplicitlyFromDynamic(y.items),y=>!1,y=>!1,y=>!0,y=>{const r=(0,_.nullableFromUnion)(y);return r!==null?this.propertyTypeMarshalsImplicitlyFromDynamic(r):!1})}emitBlock(P,y){this.emitLine(P),this.indent(y),this.emitLine("end")}emitModule(P){const y=r=>{const[s,...p]=r.split("::");p.length>0?this.emitBlock(["module ",s],()=>{y(p.join("::"))}):this.emitBlock(["module ",r],P)};this._options.namespace!==void 0&&this._options.namespace!==""?y(this._options.namespace):P()}emitClass(P,y){this.emitDescription(this.descriptionForType(P)),this.emitBlock(["class ",y," < Dry::Struct"],()=>{let r=[],s=P.getProperties().size;this.forEachClassProperty(P,"none",(p,g,I)=>{const x=--s===0,q=this.descriptionForClassProperty(P,g),T=[["attribute :",p,","],[" ",this.dryType(I.type),I.isOptional?".optional":""]];q!==void 0?(r.length>0&&(this.emitTable(r),r=[]),this.ensureBlankLine(),this.emitDescriptionBlock(q),this.emitLine(T),x||this.ensureBlankLine()):r.push(T)}),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 p=[];this.forEachClassProperty(P,"none",(g,I,x)=>{const q=x.isOptional?`d["${h(I)}"]`:`d.fetch("${h(I)}")`;if(this.propertyTypeMarshalsImplicitlyFromDynamic(x.type))p.push([[g,": "],[q,","]]);else{const T=this.fromDynamic(x.type,q,x.isOptional);p.push([[g,": "],[T,","]])}}),this.emitTable(p)}),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 p=[];this.forEachClassProperty(P,"none",(g,I,x)=>{const q=this.toDynamic(x.type,g,x.isOptional);p.push([[`"${h(I)}"`],[" => ",q,","]])}),this.emitTable(p)}),this.emitLine("}")}),this.ensureBlankLine(),this.emitBlock("def to_json(options = nil)",()=>{this.emitLine("JSON.generate(to_dynamic, options)")}))})}emitEnum(P,y){this.emitDescription(this.descriptionForType(P)),this.emitBlock(["module ",y],()=>{const r=[];this.forEachEnumCase(P,"none",(s,p)=>{r.push([[s],[` = "${h(p)}"`]])}),this.emitTable(r)})}emitUnion(P,y){this.emitDescription(this.descriptionForType(P)),this.emitBlock(["class ",y," < Dry::Struct"],()=>{const r=[];if(this.forEachUnionMember(P,P.getChildren(),"none",null,(g,I)=>{r.push([["attribute :",g,", "],[this.dryType(I,!0)]])}),this.emitTable(r),this._options.justTypes)return;this.ensureBlankLine();const[s,p]=(0,_.removeNullFromUnion)(P,!1);this.emitBlock("def self.from_dynamic!(d)",()=>{const g=Array.from(P.getChildren()).map(I=>this.nameForUnionMember(P,I));this.forEachUnionMember(P,P.getChildren(),"none",null,(I,x)=>{const q=g.filter(T=>T!==I).map(T=>[", ",T,": nil"]);this.propertyTypeMarshalsImplicitlyFromDynamic(x)?this.emitBlock(["if schema[:",I,"].right.valid? d"],()=>{this.emitLine("return new(",I,": d",q,")")}):(this.emitLine("begin"),this.indent(()=>{this.emitLine("value = ",this.fromDynamic(x,"d")),this.emitBlock(["if schema[:",I,"].right.valid? value"],()=>{this.emitLine("return new(",I,": value",q,")")})}),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 g=!0;this.forEachUnionMember(P,p,"none",null,(I,x)=>{this.emitLine(g?"if":"elsif"," ",I," != nil"),this.indent(()=>{this.emitLine(this.toDynamic(x,I))}),g=!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 P=[];if(this._options.strictness!==m.None){let y={int:!1,nil:!1,bool:!1,hash:!1,string:!1,double:!1};this.forEachType(r=>{y={int:y.int||r.kind==="integer",nil:y.nil||r.kind==="null",bool:y.bool||r.kind==="bool",hash:y.hash||r.kind==="map"||r.kind==="class",string:y.string||r.kind==="string"||r.kind==="enum",double:y.double||r.kind==="double"}}),y.int&&P.push([["Integer"],[` = ${this._options.strictness}Integer`]]),this._options.strictness===m.Strict&&y.nil&&P.push([["Nil"],[` = ${this._options.strictness}Nil`]]),y.bool&&P.push([["Bool"],[` = ${this._options.strictness}Bool`]]),y.hash&&P.push([["Hash"],[` = ${this._options.strictness}Hash`]]),y.string&&P.push([["String"],[` = ${this._options.strictness}String`]]),y.double&&P.push([["Double"],[` = ${this._options.strictness}Float | ${this._options.strictness}Integer`]])}this.forEachEnum("none",(y,r)=>{const s=[];this.forEachEnumCase(y,"none",(p,g)=>{s.push([s.length===0?"":", ",`"${h(g)}"`])}),P.push([[r],[" = ",this._options.strictness,"String.enum(",...s,")"]])}),P.length>0&&(this.ensureBlankLine(),this.emitTable(P))})}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",(P,y)=>{const r=(0,u.modifySource)(b.snakeCase,y);this.emitLine("# ",r," = ",y,".from_json! ",this.jsonSample(P)),this.emitLine("# puts ",this.exampleUse(P,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",P=>{P.kind==="forward"&&(this.emitCommentLines(["(forward declaration)"]),this.emitModule(()=>{this.emitLine("class ",this.nameForNamedType(P.type)," < Dry::Struct; end")}))}),this.forEachNamedType("leading-and-interposing",(P,y)=>this.emitClass(P,y),(P,y)=>this.emitEnum(P,y),(P,y)=>this.emitUnion(P,y)),this._options.justTypes||this.forEachTopLevel("leading-and-interposing",(P,y)=>{const r=(0,u.modifySource)(b.snakeCase,y),s=P.kind==="array",p=()=>{this.emitBlock(["class ",y],()=>{this.emitBlock(["def self.from_json!(json)"],()=>{s?(this.emitLine(r," = ",this.fromDynamic(P,"JSON.parse(json, quirks_mode: true)")),this.emitBlock([r,".define_singleton_method(:to_json) do"],()=>{this.emitLine("JSON.generate(",this.toDynamic(P,"self"),")")}),this.emitLine(r)):this.emitLine(this.fromDynamic(P,"JSON.parse(json, quirks_mode: true)"))})})};this.emitModule(()=>{p()})},P=>this.namedTypeToNameForTopLevel(P)===void 0)})}}e.RubyRenderer=E}(Xn)),Xn}var ql={},lm;function zg(){return lm||(lm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DartRenderer=e.DartTargetLanguage=e.dartOptions=void 0;const i=mt(),n=pt(),a=Dt(),l=Nt(),d=Ft(),u=Wt(),c=qt(),w=zt(),U=On(),F=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 M 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 S=(0,w.getOptionValues)(e.dartOptions,E);return new R(this,f,S)}}e.DartTargetLanguage=M;const L=["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"],_=(0,d.funPrefixNamer)("types",A=>C(!0,!1,A)),b=(0,d.funPrefixNamer)("properties",A=>C(!1,!1,A)),v=(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 m(A){return A===95?!1:(0,l.isAscii)(A)&&(0,l.isLetter)(A)}function k(A){return m(A)||(0,l.isAscii)(A)&&(0,l.isDigit)(A)}const B=(0,l.utf16LegalizeCharacters)(k);function C(A,f,E){const S=(0,l.splitIntoWords)(E),P=f?l.allUpperWordStyle:A?l.firstUpperWordStyle:l.allLowerWordStyle,y=f?l.allUpperWordStyle:l.firstUpperWordStyle;return(0,l.combineWords)(S,B,P,y,P,y,f?"_":"",m)}class R extends u.ConvenienceRenderer{constructor(f,E,S){super(f,E),this._options=S,this._gettersAndSettersForPropertyName=new Map,this._needEnumValues=!1,this.classCounter=0,this.classPropertyCounter=0,this._topLevelDependents=new Map,this._enumValues=new Map}forbiddenNamesForGlobalNamespace(){return L}forbiddenForObjectProperties(f,E){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return _}namerForObjectProperty(){return b}makeUnionMemberNamer(){return b}makeEnumCaseNamer(){return v}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 S=new d.DependencyName(b,E.order,y=>`${y(E)}_${this.toJson}`),P=new d.DependencyName(b,E.order,y=>`${y(E)}_${this.fromJson}`);return this._topLevelDependents.set(E,{encoder:S,decoder:P}),[S,P]}makeNamesForPropertyGetterAndSetter(f,E,S,P,y){const r=new d.DependencyName(b,y.order,p=>`get_${p(y)}`),s=new d.DependencyName(b,y.order,p=>`set_${p(y)}`);return[r,s]}makePropertyDependencyNames(f,E,S,P,y){const r=this.makeNamesForPropertyGetterAndSetter(f,E,S,P,y);return this._gettersAndSettersForPropertyName.set(y,r),r}makeNamedTypeDependencyNames(f,E){if(!(f instanceof i.EnumType))return[];const S=new d.DependencyName(b,E.order,P=>`${P(E)}_values`);return this._enumValues.set(f,S),[S]}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:S}=(0,F.defined)(this._topLevelDependents.get(E));this.emitLine("// final ",(0,a.modifySource)(l.decapitalize,E)," = ",S,"(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 S=this._options.nullSafety&&f.isNullable&&!this._options.requiredProperties,P=y=>S?[y,"?"]:y;return(0,n.matchType)(f,y=>(0,a.maybeAnnotated)(E,U.anyTypeIssueAnnotation,"dynamic"),y=>(0,a.maybeAnnotated)(E,U.nullTypeIssueAnnotation,"dynamic"),y=>P("bool"),y=>P("int"),y=>P("double"),y=>P("String"),y=>P(["List<",this.dartType(y.items,E),">"]),y=>P(this.nameForNamedType(y)),y=>P(["Map<String, ",this.dartType(y.values,E),">"]),y=>P(this.nameForNamedType(y)),y=>{const r=(0,n.nullableFromUnion)(y);return r===null?"dynamic":P(this.dartType(r,E))},y=>{switch(y.kind){case"date-time":case"date":return P("DateTime");default:return P("String")}})}mapList(f,E,S,P){return this._options.nullSafety&&f&&!this._options.requiredProperties?[S," == null ? [] : ","List<",E,">.from(",S,"!.map((x) => ",P,"))"]:["List<",E,">.from(",S,".map((x) => ",P,"))"]}mapMap(f,E,S,P){return this._options.nullSafety&&f&&!this._options.requiredProperties?["Map.from(",S,"!).map((k, v) => MapEntry<String, ",E,">(k, ",P,"))"]:["Map.from(",S,").map((k, v) => MapEntry<String, ",E,">(k, ",P,"))"]}mapClass(f,E,S){return this._options.nullSafety&&f&&!this._options.requiredProperties?[S," == null ? null : ",this.nameForNamedType(E),".",this.fromJson,"(",S,")"]:[this.nameForNamedType(E),".",this.fromJson,"(",S,")"]}fromDynamicExpression(f=!1,E,...S){return(0,n.matchType)(E,P=>S,P=>S,P=>S,P=>S,P=>[S,this._options.nullSafety?"?.toDouble()":".toDouble()"],P=>S,P=>this.mapList(f||P.isNullable,this.dartType(P.items),S,this.fromDynamicExpression(P.items.isNullable,P.items,"x")),P=>this.mapClass(f||P.isNullable,P,S),P=>this.mapMap(P.isNullable||f,this.dartType(P.values),S,this.fromDynamicExpression(P.values.isNullable,P.values,"v")),P=>[(0,F.defined)(this._enumValues.get(P)),".map[",S,this._options.nullSafety?"]!":"]"],P=>{const y=(0,n.nullableFromUnion)(P);return y===null?S:this.fromDynamicExpression(P.isNullable,y,S)},P=>{switch(P.kind){case"date-time":case"date":return(P.isNullable||f)&&!this._options.requiredProperties&&this._options.nullSafety?[S," == null ? null : ","DateTime.parse(",S,")"]:["DateTime.parse(",S,")"];default:return S}})}toDynamicExpression(f=!1,E,...S){return(0,n.matchType)(E,P=>S,P=>S,P=>S,P=>S,P=>S,P=>S,P=>this.mapList(P.isNullable||f,"dynamic",S,this.toDynamicExpression(P.items.isNullable,P.items,"x")),P=>this._options.nullSafety&&(P.isNullable||f)&&!this._options.requiredProperties?[S,"?.",this.toJson,"()"]:[S,".",this.toJson,"()"],P=>this.mapMap(P.isNullable||f,"dynamic",S,this.toDynamicExpression(P.values.isNullable,P.values,"v")),P=>[(0,F.defined)(this._enumValues.get(P)),".reverse[",S,"]"],P=>{const y=(0,n.nullableFromUnion)(P);return y===null?S:this.toDynamicExpression(P.isNullable,y,S)},P=>{switch(P.kind){case"date-time":return this._options.nullSafety&&!this._options.requiredProperties&&(P.isNullable||f)?[S,"?.toIso8601String()"]:[S,".toIso8601String()"];case"date":return this._options.nullSafety&&!this._options.requiredProperties&&(P.isNullable||f)?['"${',S,"!.year.toString().padLeft(4, '0')","}-${",S,"!.month.toString().padLeft(2, '0')}-${",S,`!.day.toString().padLeft(2, '0')}"`]:['"${',S,".year.toString().padLeft(4, '0')","}-${",S,".month.toString().padLeft(2, '0')}-${",S,`.day.toString().padLeft(2, '0')}"`];default:return S}})}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",(S,P,y)=>{const r=this._options.requiredProperties||this._options.nullSafety&&!y.type.isNullable;this.emitLine(r?"required ":"","this.",S,",")})}),this.emitLine("});"),this.ensureBlankLine(),this.forEachClassProperty(f,"none",(S,P,y)=>{const r=this.descriptionForClassProperty(f,P);r!==void 0&&this.emitDescription(r),this._options.useHive&&(this.classPropertyCounter++,this.emitLine(`@HiveField(${this.classPropertyCounter})`)),this.emitLine(this._options.finalProperties?"final ":"",this.dartType(y.type,!0)," ",S,";")})),this._options.generateCopyWith&&(this.ensureBlankLine(),this.emitLine(E," copyWith({"),this.indent(()=>{this.forEachClassProperty(f,"none",(S,P,y)=>{this.emitLine(this.dartType(y.type,!0)," ",S,",")})}),this.emitLine("}) => "),this.indent(()=>{this.emitLine(E,"("),this.indent(()=>{this.forEachClassProperty(f,"none",(S,P,y)=>{this.emitLine(S,": ",S," ?? ","this.",S,",")})}),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",(S,P,y)=>{this.emitLine(S,": ",this.fromDynamicExpression(y.type.isNullable,y.type,'json["',h(P),'"]'),",")})}),this.emitLine(");"),this.ensureBlankLine(),this.emitLine("Map<String, dynamic> ",this.toJson,"() => {"),this.indent(()=>{this.forEachClassProperty(f,"none",(S,P,y)=>{this.emitLine('"',h(P),'": ',this.toDynamicExpression(y.type.isNullable,y.type,S),",")})}),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",(S,P,y)=>{this.emitLine(this._options.requiredProperties?"required ":"",this.dartType(y.type,!0),this._options.requiredProperties?"":"?"," ",S,",")})}),this.emitLine("}) = _",E,";")),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine("factory ",E,".fromJson(Map<String, dynamic> json) => ","_$",E,"FromJson(json);"))})}emitEnumDefinition(f,E){const S=Array.from(f.cases).map(P=>this.nameForEnumCase(f,P));this.emitDescription(this.descriptionForType(f)),this.emitLine("enum ",E," { ",(0,O.arrayIntercalate)(", ",S)," }"),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine("final ",(0,F.defined)(this._enumValues.get(f))," = EnumValues({"),this.indent(()=>{this.forEachEnumCase(f,"none",(P,y,r)=>{const s=r==="first"||r==="middle"?",":[];this.emitLine('"',h(y),'": ',E,".",P,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:S,decoder:P}=(0,F.defined)(this._topLevelDependents.get(E));this.emitLine(this.dartType(f)," ",P,"(String str) => ",this.fromDynamicExpression(f.isNullable,f,"json.decode(str)"),";"),this.ensureBlankLine(),this.emitLine("String ",S,"(",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=R}(ql)),ql}var Ps={},cm;function Wg(){return cm||(cm=1,function(e){var i=Ps&&Ps.__importDefault||function(p){return p&&p.__esModule?p:{default:p}};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=Dt(),F=pt(),O=oo(),M=et(),L=i(so()),_=["Any","True","False","None","Enum","List","Dict","Optional","Union","Iterable","Type","TypeVar","T","EnumT"],b=["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 v extends n.TargetLanguage{getOptions(){return[e.pythonOptions.features,e.pythonOptions.justTypes,e.pythonOptions.nicePropertyNames]}get stringTypeMapping(){const g=new Map,I="date-time";return g.set("date",I),g.set("time",I),g.set("date-time",I),g.set("uuid","uuid"),g.set("integer-string","integer-string"),g.set("bool-string","bool-string"),g}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!1}needsTransformerForType(g){return g instanceof a.UnionType?(0,M.iterableSome)(g.members,I=>this.needsTransformerForType(I)):g.kind==="integer-string"||g.kind==="bool-string"}makeRenderer(g,I){const x=(0,l.getOptionValues)(e.pythonOptions,I);return x.justTypes?new E(this,g,x):new s(this,g,x)}}e.PythonTargetLanguage=v;function h(p){const g=L.default.getCategory(p);return["Lu","Ll","Lt","Lm","Lo","Nl"].indexOf(g)>=0}function m(p){if(h(p))return!0;const g=L.default.getCategory(p);return["Mn","Mc","Nd","Pc"].indexOf(g)>=0}function k(p){const g=String.fromCharCode(p).normalize("NFKC"),I=g.length;if(I===0||!h(g.charCodeAt(0)))return!1;for(let x=1;x<I;x++)if(!m(g.charCodeAt(x)))return!1;return!0}function B(p){const g=String.fromCharCode(p).normalize("NFKC"),I=g.length;for(let x=0;x<I;x++)if(!m(g.charCodeAt(x)))return!1;return!0}const C=(0,c.utf16LegalizeCharacters)(B);function R(p){const g=(0,c.splitIntoWords)(p);return(0,c.combineWords)(g,C,c.firstUpperWordStyle,c.firstUpperWordStyle,c.allUpperWordStyle,c.allUpperWordStyle,"",k)}function A(p,g){return g?p?c.allUpperWordStyle:c.allLowerWordStyle:c.originalWord}function f(p,g,I){const x=A(g,I),q=I?"_":"",T=(0,c.splitIntoWords)(p);return(0,c.combineWords)(T,C,x,x,x,x,q,k)}class E extends d.ConvenienceRenderer{constructor(g,I,x){super(g,I),this.pyOptions=x,this.imports=new Map,this.declaredTypes=new Set}forbiddenNamesForGlobalNamespace(){return _}forbiddenForObjectProperties(g,I){return{names:b,includeGlobalForbidden:!1}}makeNamedTypeNamer(){return(0,u.funPrefixNamer)("type",R)}namerForObjectProperty(){return(0,u.funPrefixNamer)("property",g=>f(g,!1,this.pyOptions.nicePropertyNames))}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,u.funPrefixNamer)("enum-case",g=>f(g,!0,this.pyOptions.nicePropertyNames))}get commentLineStart(){return"# "}emitDescriptionBlock(g){g.length===1?this.emitLine('"""',g[0],'"""'):this.emitCommentLines(g,"",void 0,'"""','"""')}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(g){const I=g.kind;return I==="class"||I==="enum"}emitBlock(g,I){this.emitLine(g),this.indent(I)}string(g){return['"',(0,c.stringEscape)(g),'"']}withImport(g,I){return(this.pyOptions.features.typeHints||g!=="typing")&&(0,M.mapUpdateInto)(this.imports,g,x=>x?(0,M.setUnionInto)(x,[I]):new Set([I])),I}withTyping(g){return this.withImport("typing",g)}namedType(g){const I=this.nameForNamedType(g);return this.declaredTypes.has(g)?I:["'",I,"'"]}pythonType(g){const I=(0,O.followTargetType)(g);return(0,F.matchType)(I,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[q,T]=(0,F.removeNullFromUnion)(x),D=Array.from(T).map(W=>this.pythonType(W));if(q!==null){let W=[];return!this.getAlphabetizeProperties()&&this.pyOptions.features.dataClasses&&W.push(" = None"),T.size>1?(this.withImport("typing","Union"),[this.withTyping("Optional"),"[Union[",(0,M.arrayIntercalate)(", ",D),"]]",...W]):[this.withTyping("Optional"),"[",(0,w.defined)((0,M.iterableFirst)(D)),"]",...W]}else return[this.withTyping("Union"),"[",(0,M.arrayIntercalate)(", ",D),"]"]},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(g){return g instanceof a.ClassType?["class ",this.nameForNamedType(g),":"]:g instanceof a.EnumType?["class ",this.nameForNamedType(g),"(",this.withImport("enum","Enum"),"):"]:(0,w.panic)(`Can't declare type ${g.kind}`)}declareType(g,I){this.emitBlock(this.declarationLine(g),()=>{this.emitDescription(this.descriptionForType(g)),I()}),this.declaredTypes.add(g)}emitClassMembers(g){if(this.pyOptions.features.dataClasses)return;const I=[];this.forEachClassProperty(g,"none",(x,q,T)=>{I.push([x,this.typeHint(": ",this.pythonType(T.type))])}),this.emitBlock(["def __init__(self, ",(0,M.arrayIntercalate)(", ",I),")",this.typeHint(" -> None"),":"],()=>{I.length===0?this.emitLine("pass"):this.forEachClassProperty(g,"none",x=>{this.emitLine("self.",x," = ",x)})})}typeHint(...g){return this.pyOptions.features.typeHints?g:[]}typingDecl(g,I){return[g,this.typeHint(": ",this.withTyping(I))]}typingReturn(g){return this.typeHint(" -> ",this.withTyping(g))}sortClassProperties(g,I){return this.pyOptions.features.dataClasses?(0,M.mapSortBy)(g,x=>x.type instanceof a.UnionType&&(0,F.nullableFromUnion)(x.type)!=null?1:0):super.sortClassProperties(g,I)}emitClass(g){this.pyOptions.features.dataClasses&&this.emitLine("@",this.withImport("dataclasses","dataclass")),this.declareType(g,()=>{this.pyOptions.features.typeHints&&(g.getProperties().size===0?this.emitLine("pass"):this.forEachClassProperty(g,"none",(I,x,q)=>{this.emitDescription(this.descriptionForClassProperty(g,x)),this.emitLine(I,this.typeHint(": ",this.pythonType(q.type)))}),this.ensureBlankLine()),this.emitClassMembers(g)})}emitEnum(g){this.declareType(g,()=>{this.forEachEnumCase(g,"none",(I,x)=>{this.emitLine([I," = ",this.string(x)])})})}emitImports(){this.imports.forEach((g,I)=>{this.emitLine("from ",I," import ",Array.from(g).join(", "))})}emitSupportCode(){}emitClosingCode(){}emitSourceStructure(g){const I=this.gatherSource(()=>{this.forEachNamedType(["interposing",2],T=>this.emitClass(T),T=>this.emitEnum(T),T=>{})}),x=this.gatherSource(()=>this.emitClosingCode()),q=this.gatherSource(()=>this.emitSupportCode());this.leadingComments!==void 0&&this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitImports(),this.ensureBlankLine(2),this.emitGatheredSource(q),this.ensureBlankLine(2),this.emitGatheredSource(I),this.ensureBlankLine(2),this.emitGatheredSource(x)}}e.PythonRenderer=E;function S(p,g){return typeof g=="function"?p.value!==void 0?{value:g(r(p))}:p.lambda!==void 0?{lambda:(0,U.multiWord)(" ","lambda x:",g([(0,U.parenIfNeeded)(p.lambda),"(x)"])),value:void 0}:{lambda:(0,U.multiWord)(" ","lambda x:",g("x")),value:void 0}:g.value!==void 0?(0,w.panic)("Cannot compose into a value"):g.lambda===void 0?p:p.value===void 0?p.lambda===void 0?g:{lambda:(0,U.multiWord)("","lambda x: ",(0,U.parenIfNeeded)(g.lambda),"(",(0,U.parenIfNeeded)(p.lambda),"(x))"),value:void 0}:{lambda:g.lambda,value:r(p)}}const P={value:void 0};function y(p){return p.lambda!==void 0?p.value===void 0?p.lambda:(0,U.multiWord)("","lambda x: ",(0,U.parenIfNeeded)(p.lambda),"(",p.value,")"):p.value!==void 0?(0,U.multiWord)(" ","lambda x:",p.value):(0,U.multiWord)(" ","lambda x:","x")}function r(p){return p.value===void 0?(0,w.panic)("Cannot make value from lambda without value"):p.lambda!==void 0?[(0,U.parenIfNeeded)(p.lambda),"(",p.value,")"]:p.value}class s extends E{constructor(){super(...arguments),this._deserializerFunctions=new Set,this._converterNamer=(0,u.funPrefixNamer)("converter",g=>f(g,!1,this.pyOptions.nicePropertyNames)),this._topLevelConverterNames=new Map,this._haveTypeVar=!1,this._haveEnumTypeVar=!1,this._haveDateutil=!1}emitTypeVar(g,I){this.pyOptions.features.typeHints&&this.emitLine(g," = ",this.withTyping("TypeVar"),"(",this.string(g),I,")")}typeVar(){return this._haveTypeVar=!0,this.withTyping("TypeVar"),"T"}enumTypeVar(){return this._haveEnumTypeVar=!0,this.withTyping("TypeVar"),this.withImport("enum","Enum"),"EnumT"}cast(g,I){return this.pyOptions.features.typeHints?[this.withTyping("cast"),"(",g,", ",I,")"]:I}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 g=this.enumTypeVar();this.emitBlock(["def to_enum(c",this.typeHint(": ",this.withTyping("Type"),"[",g,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",g),":"],()=>{this.emitLine("assert isinstance(x, c)"),this.emitLine("return x.value")})}emitListConverter(){const g=this.typeVar();this.emitBlock(["def from_list(f",this.typeHint(": ",this.withTyping("Callable"),"[[",this.withTyping("Any"),"], ",g,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withTyping("List"),"[",g,"]"),":"],()=>{this.emitLine("assert isinstance(x, list)"),this.emitLine("return [f(y) for y in x]")})}emitToClassConverter(){const g=this.typeVar();this.emitBlock(["def to_class(c",this.typeHint(": ",this.withTyping("Type"),"[",g,"]"),", ",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 g=this.typeVar();this.emitBlock(["def from_dict(f",this.typeHint(": ",this.withTyping("Callable"),"[[",this.withTyping("Any"),"], ",g,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withTyping("Dict"),"[str, ",g,"]"),":"],()=>{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 g=this.typeVar();this.emitBlock(["def is_type(t",this.typeHint(": ",this.withTyping("Type"),"[",g,"]"),", ",this.typingDecl("x","Any"),")",this.typeHint(" -> ",g),":"],()=>{this.emitLine("assert isinstance(x, t)"),this.emitLine("return x")})}emitConverter(g){switch(g){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)(g)}}conv(g){this._deserializerFunctions.add(g);const I=g.replace(/-/g,"_");return g.startsWith("from-")||g.startsWith("to-")||g.startsWith("is-")?I:["from_",I]}convFn(g,I){return S(I,{lambda:(0,U.singleWord)(this.conv(g)),value:void 0})}typeObject(g){const I=(0,F.matchType)(g,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 I===void 0?(0,w.panic)(`No type object for ${g.kind}`):I}transformer(g,I,x){const q=(D,W)=>D===void 0?W:this.transformer(W,D,x),T=(D,W)=>S(W,J=>[this.conv("is-type"),"(",this.typeObject(D),", ",J,")"]);if(I instanceof O.DecodingChoiceTransformer||I instanceof O.ChoiceTransformer){const D=I.transformers.map(W=>y(this.transformer(P,W,x)).source);return S(g,W=>[this.conv("union"),"([",(0,M.arrayIntercalate)(", ",D),"], ",W,")"])}else if(I instanceof O.DecodingTransformer){const D=I.consumer,W=this.deserializer(g,I.sourceType);return q(D,W)}else{if(I instanceof O.EncodingTransformer)return this.serializer(g,I.sourceType);if(I instanceof O.UnionInstantiationTransformer)return g;if(I instanceof O.UnionMemberMatchTransformer){const D=I.transformer,W=T(I.memberType,g);return q(D,W)}else if(I instanceof O.ParseStringTransformer){const D=I.consumer,W=D===void 0?x:D.sourceType;let J;switch(W.kind){case"integer":J=S(g,X=>["int(",X,")"]);break;case"bool":J=this.convFn("from-stringified-bool",g);break;case"enum":J=this.deserializer(g,W);break;case"date-time":J=this.convFn("from-datetime",g);break;case"uuid":J=S(g,X=>[this.withImport("uuid","UUID"),"(",X,")"]);break;default:return(0,w.panic)(`Parsing of ${W.kind} in a transformer is not supported`)}return q(D,J)}else if(I instanceof O.StringifyTransformer){const D=I.consumer;let W;switch(I.sourceType.kind){case"integer":W=S(g,J=>["str(",J,")"]);break;case"bool":W=S(g,J=>["str(",J,").lower()"]);break;case"enum":W=this.serializer(g,I.sourceType);break;case"date-time":W=S(g,J=>[J,".isoformat()"]);break;case"uuid":W=S(g,J=>["str(",J,")"]);break;default:return(0,w.panic)(`Parsing of ${I.sourceType.kind} in a transformer is not supported`)}return q(D,W)}else return(0,w.panic)(`Transformer ${I.kind} is not supported`)}}deserializer(g,I){const x=(0,O.transformationForType)(I);return x!==void 0?this.transformer(g,x.transformer,x.targetType):(0,F.matchType)(I,q=>g,q=>this.convFn("none",g),q=>this.convFn("bool",g),q=>this.convFn("int",g),q=>this.convFn("from-float",g),q=>this.convFn("str",g),q=>S(g,T=>[this.conv("list"),"(",y(this.deserializer(P,q.items)).source,", ",T,")"]),q=>S(g,{lambda:(0,U.singleWord)(this.nameForNamedType(q),".from_dict"),value:void 0}),q=>S(g,T=>[this.conv("dict"),"(",y(this.deserializer(P,q.values)).source,", ",T,")"]),q=>S(g,{lambda:(0,U.singleWord)(this.nameForNamedType(q)),value:void 0}),q=>{const T=Array.from(q.members).map(D=>y(this.deserializer(P,D)).source);return S(g,D=>[this.conv("union"),"([",(0,M.arrayIntercalate)(", ",T),"], ",D,")"])},q=>q.kind==="date-time"?this.convFn("from-datetime",g):q.kind==="uuid"?S(g,T=>[this.withImport("uuid","UUID"),"(",T,")"]):(0,w.panic)(`Transformed type ${q.kind} not supported`))}serializer(g,I){const x=(0,O.transformationForType)(I);if(x!==void 0){const q=x.reverse;return this.transformer(g,q.transformer,q.targetType)}return(0,F.matchType)(I,q=>g,q=>this.convFn("none",g),q=>this.convFn("bool",g),q=>this.convFn("int",g),q=>this.convFn("to-float",g),q=>this.convFn("str",g),q=>S(g,T=>[this.conv("list"),"(",y(this.serializer(P,q.items)).source,", ",T,")"]),q=>S(g,T=>[this.conv("to-class"),"(",this.nameForNamedType(q),", ",T,")"]),q=>S(g,T=>[this.conv("dict"),"(",y(this.serializer(P,q.values)).source,", ",T,")"]),q=>S(g,T=>[this.conv("to-enum"),"(",this.nameForNamedType(q),", ",T,")"]),q=>{const T=Array.from(q.members).map(D=>y(this.serializer(P,D)).source);return S(g,D=>[this.conv("union"),"([",(0,M.arrayIntercalate)(", ",T),"], ",D,")"])},q=>q.kind==="date-time"?S(g,T=>[T,".isoformat()"]):q.kind==="uuid"?S(g,T=>["str(",T,")"]):(0,w.panic)(`Transformed type ${q.kind} not supported`))}emitClassMembers(g){super.emitClassMembers(g),this.ensureBlankLine();const I=this.nameForNamedType(g);this.emitLine("@staticmethod"),this.emitBlock(["def from_dict(",this.typingDecl("obj","Any"),")",this.typeHint(" -> ",this.namedType(g)),":"],()=>{const x=[];this.emitLine("assert isinstance(obj, dict)"),this.forEachClassProperty(g,"none",(q,T,D)=>{const W={value:["obj.get(",this.string(T),")"]};this.emitLine(q," = ",r(this.deserializer(W,D.type))),x.push(q)}),this.emitLine("return ",I,"(",(0,M.arrayIntercalate)(", ",x),")")}),this.ensureBlankLine(),this.emitBlock(["def to_dict(self)",this.typeHint(" -> dict"),":"],()=>{this.emitLine("result",this.typeHint(": dict")," = {}"),this.forEachClassProperty(g,"none",(x,q,T)=>{const D={value:["self.",x]};T.isOptional?this.emitBlock(["if self.",x," is not None:"],()=>{this.emitLine("result[",this.string(q),"] = ",r(this.serializer(D,T.type)))}):this.emitLine("result[",this.string(q),"] = ",r(this.serializer(D,T.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 g=Array.from(this._deserializerFunctions).map(I=>[I,I]);this.forEachWithBlankLines(g,["interposing",2],I=>{this.emitConverter(I)})}makeTopLevelDependencyNames(g,I){const x=new u.DependencyName(this._converterNamer,d.topLevelNameOrder,T=>`${T(I)}_from_dict`),q=new u.DependencyName(this._converterNamer,d.topLevelNameOrder,T=>`${T(I)}_to_dict`);return this._topLevelConverterNames.set(I,{fromDict:x,toDict:q}),[x,q]}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",(g,I)=>{const{fromDict:x}=(0,w.defined)(this._topLevelConverterNames.get(I));this.emitLine(this.commentLineStart," result = ",x,"(json.loads(json_string))")})}emitClosingCode(){this.forEachTopLevel(["interposing",2],(g,I)=>{const{fromDict:x,toDict:q}=(0,w.defined)(this._topLevelConverterNames.get(I)),T=this.pythonType(g);this.emitBlock(["def ",x,"(",this.typingDecl("s","Any"),")",this.typeHint(" -> ",T),":"],()=>{this.emitLine("return ",r(this.deserializer({value:"s"},g)))}),this.ensureBlankLine(2),this.emitBlock(["def ",q,"(x",this.typeHint(": ",T),")",this.typingReturn("Any"),":"],()=>{this.emitLine("return ",r(this.serializer({value:"x"},g)))})})}}e.JSONPythonRenderer=s}(Ps)),Ps}var wi={},fm;function Y_(){if(fm)return wi;fm=1,Object.defineProperty(wi,"__esModule",{value:!0}),wi.PikeRenderer=wi.PikeTargetLanguage=wi.pikeOptions=void 0;const e=Wt(),i=Ft(),n=Dt(),a=qt(),l=mt(),d=pt(),u=Nt();wi.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,i.funPrefixNamer)("enumNamer",(0,u.makeNameStyle)("upper-underscore",w)),F=(0,i.funPrefixNamer)("genericNamer",(0,u.makeNameStyle)("underscore",w)),O=(0,i.funPrefixNamer)("typeNamer",(0,u.makeNameStyle)("pascal",w));class M extends a.TargetLanguage{constructor(){super("Pike",["pike","pikelang"],"pmod")}getOptions(){return[]}makeRenderer(b){return new L(this,b)}}wi.PikeTargetLanguage=M;class L extends e.ConvenienceRenderer{emitSourceStructure(){this.emitInformationComment(),this.ensureBlankLine(),this.forEachTopLevel("leading",(b,v)=>{this.emitTopLevelTypedef(b,v),this.ensureBlankLine(),this.emitTopLevelConverter(b,v),this.ensureBlankLine()},b=>this.namedTypeToNameForTopLevel(b)===void 0),this.ensureBlankLine(),this.forEachNamedType("leading-and-interposing",(b,v)=>this.emitClassDefinition(b,v),(b,v)=>this.emitEnum(b,v),(b,v)=>this.emitUnion(b,v))}get enumCasesInGlobalNamespace(){return!0}makeEnumCaseNamer(){return U}makeNamedTypeNamer(){return O}makeUnionMemberNamer(){return F}namerForObjectProperty(){return F}forbiddenNamesForGlobalNamespace(){return[...c]}forbiddenForObjectProperties(b,v){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(b,v){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(b,v){return{names:[],includeGlobalForbidden:!0}}sourceFor(b){return["class","object","enum"].indexOf(b.kind)>=0?(0,n.singleWord)(this.nameForNamedType(b)):(0,d.matchType)(b,v=>(0,n.singleWord)("mixed"),v=>(0,n.singleWord)("mixed"),v=>(0,n.singleWord)("bool"),v=>(0,n.singleWord)("int"),v=>(0,n.singleWord)("float"),v=>(0,n.singleWord)("string"),v=>(0,n.singleWord)(["array(",this.sourceFor(v.items).source,")"]),v=>(0,n.singleWord)(this.nameForNamedType(v)),v=>{let h;const m=v.values;return h=this.sourceFor(m).source,(0,n.singleWord)(["mapping(string:",h,")"])},v=>(0,n.singleWord)("enum"),v=>{if((0,d.nullableFromUnion)(v)!==null){const h=Array.from(v.getChildren()).map(m=>(0,n.parenIfNeeded)(this.sourceFor(m)));return(0,n.multiWord)("|",...h)}else return(0,n.singleWord)(this.nameForNamedType(v))})}emitClassDefinition(b,v){this.emitDescription(this.descriptionForType(b)),this.emitBlock(["class ",v],()=>{this.emitClassMembers(b),this.ensureBlankLine(),this.emitEncodingFunction(b)}),this.ensureBlankLine(),this.emitDecodingFunction(v,b)}emitEnum(b,v){this.emitBlock([b.kind," ",v],()=>{let h=[];this.forEachEnumCase(b,"none",(m,k)=>{h.push([[m,' = "',(0,u.stringEscape)(k),'", '],['// json: "',k,'"']])}),this.emitTable(h)})}emitUnion(b,v){if((0,d.nullableFromUnion)(b)!==null)return;this.emitDescription(this.descriptionForType(b));const[,m]=(0,d.removeNullFromUnion)(b);let k=[];this.forEachUnionMember(b,m,"none",null,(B,C)=>{const R=this.sourceFor(C).source;k.push([R])}),this.emitLine(["typedef ",k.map(B=>B.map(C=>this.sourcelikeToString(C))).join("|")," ",v,";"]),this.ensureBlankLine(),this.emitBlock([v," ",v,"_from_JSON(mixed json)"],()=>{this.emitLine(["return json;"])})}emitBlock(b,v,h=" {",m="}"){this.emitLine(b,h),this.indent(v),this.emitLine(m)}emitMappingBlock(b,v){this.emitBlock(b,v,"([","]);")}emitClassMembers(b){let v=[];this.forEachClassProperty(b,"none",(h,m,k)=>{const B=this.sourceFor(k.type).source;v.push([[B," "],[h,"; "],['// json: "',m,'"']])}),this.emitTable(v)}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(b,v){this.emitLine("typedef ",this.sourceFor(b).source," ",v,";")}emitTopLevelConverter(b,v){this.emitBlock([v," ",v,"_from_JSON(mixed json)"],()=>{if(b instanceof l.PrimitiveType)this.emitLine(["return json;"]);else if(b instanceof l.ArrayType)b.items instanceof l.PrimitiveType?this.emitLine(["return json;"]):this.emitLine(["return map(json, ",this.sourceFor(b.items).source,"_from_JSON);"]);else if(b instanceof l.MapType){const h=this.sourceFor(b.values).source;this.emitLine(["mapping(string:",h,") retval = ([]);"]);let m;b.values instanceof l.PrimitiveType?m=["(",h,") v"]:m=[h,"_from_JSON(v)"],this.emitBlock(["foreach (json; string k; mixed v)"],()=>{this.emitLine(["retval[k] = ",m,";"])}),this.emitLine(["return retval;"])}})}emitEncodingFunction(b){this.emitBlock(["string encode_json()"],()=>{this.emitMappingBlock(["mapping(string:mixed) json = "],()=>{this.forEachClassProperty(b,"none",(v,h)=>{this.emitLine(['"',(0,u.stringEscape)(h),'" : ',v,","])})}),this.ensureBlankLine(),this.emitLine(["return Standards.JSON.encode(json);"])})}emitDecodingFunction(b,v){this.emitBlock([b," ",b,"_from_JSON(mixed json)"],()=>{this.emitLine([b," retval = ",b,"();"]),this.ensureBlankLine(),this.forEachClassProperty(v,"none",(h,m)=>{this.emitLine(["retval.",h,' = json["',(0,u.stringEscape)(m),'"];'])}),this.ensureBlankLine(),this.emitLine(["return retval;"])})}}return wi.PikeRenderer=L,wi}var Jl={},dm;function qg(){return dm||(dm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.HaskellRenderer=e.HaskellTargetLanguage=e.haskellOptions=void 0;const i=et(),n=qt(),a=zt(),l=pt(),d=Wt(),u=Ft(),c=Nt(),w=Dt();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,m){return new b(this,h,(0,a.getOptionValues)(e.haskellOptions,m))}}e.HaskellTargetLanguage=U;const F=["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)(v=>(0,c.isAscii)(v)&&(0,c.isLetterOrUnderscoreOrDigit)(v));function M(v,h){const m=(0,c.splitIntoWords)(v);return(0,c.combineWords)(m,O,h?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,h?c.allUpperWordStyle:c.allLowerWordStyle,c.allUpperWordStyle,"",c.isLetterOrUnderscore)}const L=(0,u.funPrefixNamer)("upper",v=>M(v,!0)),_=(0,u.funPrefixNamer)("lower",v=>M(v,!1));class b extends d.ConvenienceRenderer{constructor(h,m,k){super(h,m),this._options=k}forbiddenNamesForGlobalNamespace(){return F}makeNamedTypeNamer(){return L}namerForObjectProperty(){return _}forbiddenForObjectProperties(h,m){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return L}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return L}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(h,m,k,B){return`${super.proposeUnionMemberName(h,m,k,B)}_in_${B(m)}`}get commentLineStart(){return"-- "}emitDescriptionBlock(h){h.length===1?this.emitLine("{-| ",h[0]," -}"):this.emitCommentLines(h,"",void 0,"-}","{-| ")}haskellType(h,m=!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 B=(0,l.nullableFromUnion)(k);if(B!==null){const C=this.haskellType(B);return m?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,m=>(0,w.singleWord)("String"),m=>(0,w.singleWord)("Null"),m=>(0,w.singleWord)("Bool"),m=>(0,w.singleWord)("Number"),m=>(0,w.singleWord)("Number"),m=>(0,w.singleWord)("String"),m=>(0,w.singleWord)("Array"),m=>(0,w.singleWord)("Object"),m=>(0,w.singleWord)("Object"),m=>(0,w.singleWord)("Object"),m=>(0,w.singleWord)("Object"))}emitTopLevelDefinition(h,m){this.emitLine("type ",m," = ",this.haskellType(h).source)}emitClassDefinition(h,m){let k=this.descriptionForType(h);this.forEachClassProperty(h,"none",(B,C)=>{const R=this.descriptionForClassProperty(h,C);R!==void 0&&(k===void 0?k=[]:k.push(""),k.push(`${this.sourcelikeToString(B)}:`),k.push(...R))}),this.emitDescription(k),this.emitLine("data ",m," = ",m),this.indent(()=>{let B=!0;this.forEachClassProperty(h,"none",(C,R,A)=>{this.emitLine(B?"{ ":", ",C,m," :: ",this.haskellProperty(A)),B=!1}),B&&this.emitLine("{"),this.emitLine("} deriving (Show)")})}emitEnumDefinition(h,m){this.emitDescription(this.descriptionForType(h)),this.emitLine("data ",m),this.indent(()=>{let k=!0;this.forEachEnumCase(h,"none",B=>{const C=k?"=":"|";this.emitLine(C," ",B,m),k=!1}),this.emitLine("deriving (Show)")})}emitUnionDefinition(h,m){this.emitDescription(this.descriptionForType(h)),this.emitLine("data ",m),this.indent(()=>{let k=!0;this.forEachUnionMember(h,null,"none",null,(B,C)=>{const R=k?"=":"|";C.kind==="null"?this.emitLine(R," ",B):this.emitLine(R," ",B," ",(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 m=0;return this.forEachClassProperty(h,"none",()=>{m+=1}),m}emitClassEncoderInstance(h,m){let k=[];this.forEachClassProperty(h,"none",B=>{k.push(" "),k.push(B),k.push(m)}),this.emitLine("instance ToJSON ",m," where"),this.indent(()=>{k.length===0?this.emitLine("toJSON = \\_ -> emptyObject"):(this.emitLine("toJSON (",m,...k,") ="),this.indent(()=>{this.emitLine("object");let B=!0;this.forEachClassProperty(h,"none",(C,R)=>{this.emitLine(B?"[ ":", ",'"',(0,c.stringEscape)(R),'" .= ',C,m),B=!1}),B&&this.emitLine("["),this.emitLine("]")}))})}emitClassDecoderInstance(h,m){this.emitLine("instance FromJSON ",m," where"),this.indent(()=>{this.classPropertyLength(h)===0?this.emitLine("parseJSON emptyObject = return ",m):(this.emitLine("parseJSON (Object v) = ",m),this.indent(()=>{let k=!0;this.forEachClassProperty(h,"none",(B,C,R)=>{const A=R.isOptional?".:?":".:";this.emitLine(k?"<$> ":"<*> ","v ",A,' "',(0,c.stringEscape)(C),'"'),k=!1})}))})}emitClassFunctions(h,m){this.emitClassEncoderInstance(h,m),this.ensureBlankLine(),this.emitClassDecoderInstance(h,m)}emitEnumEncoderInstance(h,m){this.emitLine("instance ToJSON ",m," where"),this.indent(()=>{this.forEachEnumCase(h,"none",(k,B)=>{this.emitLine("toJSON ",k,m,' = "',(0,c.stringEscape)(B),'"')})})}emitEnumDecoderInstance(h,m){this.emitLine("instance FromJSON ",m," where"),this.indent(()=>{this.emitLine('parseJSON = withText "',m,'" parseText'),this.indent(()=>{this.emitLine("where"),this.indent(()=>{this.forEachEnumCase(h,"none",(k,B)=>{this.emitLine('parseText "',(0,c.stringEscape)(B),'" = return ',k,m)})})})})}emitEnumFunctions(h,m){this.emitEnumEncoderInstance(h,m),this.ensureBlankLine(),this.emitEnumDecoderInstance(h,m)}emitUnionEncoderInstance(h,m){this.emitLine("instance ToJSON ",m," where"),this.indent(()=>{this.forEachUnionMember(h,null,"none",null,(k,B)=>{B.kind==="null"?this.emitLine("toJSON ",k," = Null"):this.emitLine("toJSON (",k," x) = toJSON x")})})}emitUnionDecoderInstance(h,m){this.emitLine("instance FromJSON ",m," where"),this.indent(()=>{this.forEachUnionMember(h,null,"none",null,(k,B)=>{B.kind==="null"?this.emitLine("parseJSON Null = return ",k):this.emitLine("parseJSON xs@(",this.encoderNameForType(B).source," _) = (fmap ",k," . parseJSON) xs")})})}emitUnionFunctions(h,m){this.emitUnionEncoderInstance(h,m),this.ensureBlankLine(),this.emitUnionDecoderInstance(h,m)}emitLanguageExtensions(h){this.emitLine(`{-# LANGUAGE ${h} #-}`)}emitSourceStructure(){const h=[];this.forEachTopLevel("none",(m,k)=>{h.push([k," (..)"])}),this.forEachObject("none",(m,k)=>{(0,i.mapContains)(this.topLevels,m)||h.push([k," (..)"])}),this.forEachEnum("none",(m,k)=>{(0,i.mapContains)(this.topLevels,m)||h.push([k," (..)"])}),this.forEachUnion("none",(m,k)=>{(0,i.mapContains)(this.topLevels,m)||h.push([k," (..)"])}),this.emitLanguageExtensions("StrictData"),this.emitLanguageExtensions("OverloadedStrings"),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("module ",this._options.moduleName),this.indent(()=>{for(let m=0;m<h.length;m++)this.emitLine(m===0?"(":","," ",h[m]);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",(m,k)=>this.emitTopLevelDefinition(m,k),m=>this.namedTypeToNameForTopLevel(m)===void 0),this.forEachNamedType("leading-and-interposing",(m,k)=>this.emitClassDefinition(m,k),(m,k)=>this.emitEnumDefinition(m,k),(m,k)=>this.emitUnionDefinition(m,k)),this.forEachTopLevel("leading-and-interposing",(m,k)=>this.emitTopLevelFunctions(k)),this.forEachNamedType("leading-and-interposing",(m,k)=>this.emitClassFunctions(m,k),(m,k)=>this.emitEnumFunctions(m,k),(m,k)=>this.emitUnionFunctions(m,k)),!this._options.justTypes&&this.ensureBlankLine()}}e.HaskellRenderer=b}(Jl)),Jl}var Li={},Vs={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 $_=Vs.exports,hm;function ek(){return hm||(hm=1,function(e,i){(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,F="__lodash_placeholder__",O=1,M=2,L=4,_=1,b=2,v=1,h=2,m=4,k=8,B=16,C=32,R=64,A=128,f=256,E=512,S=30,P="...",y=800,r=16,s=1,p=2,g=3,I=1/0,x=9007199254740991,q=17976931348623157e292,T=NaN,D=4294967295,W=D-1,J=D>>>1,X=[["ary",A],["bind",v],["bindKey",h],["curry",k],["curryRight",B],["flip",E],["partial",C],["partialRight",R],["rearg",f]],Q="[object Arguments]",re="[object Array]",se="[object AsyncFunction]",ne="[object Boolean]",me="[object Date]",ge="[object DOMException]",Ae="[object Error]",pe="[object Function]",le="[object GeneratorFunction]",ye="[object Map]",de="[object Number]",Y="[object Null]",z="[object Object]",V="[object Promise]",ue="[object Proxy]",Te="[object RegExp]",Ie="[object Set]",Ce="[object String]",We="[object Symbol]",Ge="[object Undefined]",ee="[object WeakMap]",te="[object WeakSet]",K="[object ArrayBuffer]",j="[object DataView]",G="[object Float32Array]",ce="[object Float64Array]",$="[object Int8Array]",be="[object Int16Array]",Se="[object Int32Array]",Be="[object Uint8Array]",we="[object Uint8ClampedArray]",Pe="[object Uint16Array]",oe="[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,ae=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?/,kr=/\{\n\/\* \[wrapped with (.+)\] \*/,Nr=/,? & /,Mt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ln=/[()=,{}\[\]\/\s]/,Jt=/\\(\\)?/g,zn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,bn=/\w*$/,ao=/^[-+]0x[0-9a-f]+$/i,eb=/^0b[01]+$/i,tb=/^\[object .+?Constructor\]$/,nb=/^0o[0-7]+$/i,ib=/^(?:0|[1-9]\d*)$/,rb=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,uo=/($^)/,sb=/['\n\r\u2028\u2029\\]/g,lo="\\ud800-\\udfff",ob="\\u0300-\\u036f",ab="\\ufe20-\\ufe2f",ub="\\u20d0-\\u20ff",rf=ob+ab+ub,sf="\\u2700-\\u27bf",of="a-z\\xdf-\\xf6\\xf8-\\xff",lb="\\xac\\xb1\\xd7\\xf7",cb="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",fb="\\u2000-\\u206f",db=" \\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",af="A-Z\\xc0-\\xd6\\xd8-\\xde",uf="\\ufe0e\\ufe0f",lf=lb+cb+fb+db,qa="['’]",hb="["+lo+"]",cf="["+lf+"]",co="["+rf+"]",ff="\\d+",pb="["+sf+"]",df="["+of+"]",hf="[^"+lo+lf+ff+sf+of+af+"]",Ja="\\ud83c[\\udffb-\\udfff]",mb="(?:"+co+"|"+Ja+")",pf="[^"+lo+"]",Ga="(?:\\ud83c[\\udde6-\\uddff]){2}",Ha="[\\ud800-\\udbff][\\udc00-\\udfff]",Or="["+af+"]",mf="\\u200d",yf="(?:"+df+"|"+hf+")",yb="(?:"+Or+"|"+hf+")",gf="(?:"+qa+"(?:d|ll|m|re|s|t|ve))?",bf="(?:"+qa+"(?:D|LL|M|RE|S|T|VE))?",Tf=mb+"?",vf="["+uf+"]?",gb="(?:"+mf+"(?:"+[pf,Ga,Ha].join("|")+")"+vf+Tf+")*",bb="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Tb="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Sf=vf+Tf+gb,vb="(?:"+[pb,Ga,Ha].join("|")+")"+Sf,Sb="(?:"+[pf+co+"?",co,Ga,Ha,hb].join("|")+")",wb=RegExp(qa,"g"),Lb=RegExp(co,"g"),Ka=RegExp(Ja+"(?="+Ja+")|"+Sb+Sf,"g"),_b=RegExp([Or+"?"+df+"+"+gf+"(?="+[cf,Or,"$"].join("|")+")",yb+"+"+bf+"(?="+[cf,Or+yf,"$"].join("|")+")",Or+"?"+yf+"+"+gf,Or+"+"+bf,Tb,bb,ff,vb].join("|"),"g"),kb=RegExp("["+mf+lo+rf+uf+"]"),Nb=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ob=["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"],Cb=-1,_t={};_t[G]=_t[ce]=_t[$]=_t[be]=_t[Se]=_t[Be]=_t[we]=_t[Pe]=_t[oe]=!0,_t[Q]=_t[re]=_t[K]=_t[ne]=_t[j]=_t[me]=_t[Ae]=_t[pe]=_t[ye]=_t[de]=_t[z]=_t[Te]=_t[Ie]=_t[Ce]=_t[ee]=!1;var Lt={};Lt[Q]=Lt[re]=Lt[K]=Lt[j]=Lt[ne]=Lt[me]=Lt[G]=Lt[ce]=Lt[$]=Lt[be]=Lt[Se]=Lt[ye]=Lt[de]=Lt[z]=Lt[Te]=Lt[Ie]=Lt[Ce]=Lt[We]=Lt[Be]=Lt[we]=Lt[Pe]=Lt[oe]=!0,Lt[Ae]=Lt[pe]=Lt[ee]=!1;var Eb={À:"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"},Ab={"&":"&","<":"<",">":">",'"':""","'":"'"},Fb={"&":"&","<":"<",">":">",""":'"',"'":"'"},Pb={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ib=parseFloat,Rb=parseInt,wf=typeof Dn=="object"&&Dn&&Dn.Object===Object&&Dn,Mb=typeof self=="object"&&self&&self.Object===Object&&self,Qt=wf||Mb||Function("return this")(),Va=i&&!i.nodeType&&i,Qi=Va&&!0&&e&&!e.nodeType&&e,Lf=Qi&&Qi.exports===Va,Za=Lf&&wf.process,Cn=function(){try{var Oe=Qi&&Qi.require&&Qi.require("util").types;return Oe||Za&&Za.binding&&Za.binding("util")}catch{}}(),_f=Cn&&Cn.isArrayBuffer,kf=Cn&&Cn.isDate,Nf=Cn&&Cn.isMap,Of=Cn&&Cn.isRegExp,Cf=Cn&&Cn.isSet,Ef=Cn&&Cn.isTypedArray;function Tn(Oe,De,Me){switch(Me.length){case 0:return Oe.call(De);case 1:return Oe.call(De,Me[0]);case 2:return Oe.call(De,Me[0],Me[1]);case 3:return Oe.call(De,Me[0],Me[1],Me[2])}return Oe.apply(De,Me)}function Bb(Oe,De,Me,Ve){for(var nt=-1,yt=Oe==null?0:Oe.length;++nt<yt;){var Gt=Oe[nt];De(Ve,Gt,Me(Gt),Oe)}return Ve}function En(Oe,De){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve&&De(Oe[Me],Me,Oe)!==!1;);return Oe}function Db(Oe,De){for(var Me=Oe==null?0:Oe.length;Me--&&De(Oe[Me],Me,Oe)!==!1;);return Oe}function Af(Oe,De){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve;)if(!De(Oe[Me],Me,Oe))return!1;return!0}function Ii(Oe,De){for(var Me=-1,Ve=Oe==null?0:Oe.length,nt=0,yt=[];++Me<Ve;){var Gt=Oe[Me];De(Gt,Me,Oe)&&(yt[nt++]=Gt)}return yt}function fo(Oe,De){var Me=Oe==null?0:Oe.length;return!!Me&&Cr(Oe,De,0)>-1}function Qa(Oe,De,Me){for(var Ve=-1,nt=Oe==null?0:Oe.length;++Ve<nt;)if(Me(De,Oe[Ve]))return!0;return!1}function Ot(Oe,De){for(var Me=-1,Ve=Oe==null?0:Oe.length,nt=Array(Ve);++Me<Ve;)nt[Me]=De(Oe[Me],Me,Oe);return nt}function Ri(Oe,De){for(var Me=-1,Ve=De.length,nt=Oe.length;++Me<Ve;)Oe[nt+Me]=De[Me];return Oe}function Xa(Oe,De,Me,Ve){var nt=-1,yt=Oe==null?0:Oe.length;for(Ve&&yt&&(Me=Oe[++nt]);++nt<yt;)Me=De(Me,Oe[nt],nt,Oe);return Me}function jb(Oe,De,Me,Ve){var nt=Oe==null?0:Oe.length;for(Ve&&nt&&(Me=Oe[--nt]);nt--;)Me=De(Me,Oe[nt],nt,Oe);return Me}function Ya(Oe,De){for(var Me=-1,Ve=Oe==null?0:Oe.length;++Me<Ve;)if(De(Oe[Me],Me,Oe))return!0;return!1}var Ub=$a("length");function xb(Oe){return Oe.split("")}function zb(Oe){return Oe.match(Mt)||[]}function Ff(Oe,De,Me){var Ve;return Me(Oe,function(nt,yt,Gt){if(De(nt,yt,Gt))return Ve=yt,!1}),Ve}function ho(Oe,De,Me,Ve){for(var nt=Oe.length,yt=Me+(Ve?1:-1);Ve?yt--:++yt<nt;)if(De(Oe[yt],yt,Oe))return yt;return-1}function Cr(Oe,De,Me){return De===De?$b(Oe,De,Me):ho(Oe,Pf,Me)}function Wb(Oe,De,Me,Ve){for(var nt=Me-1,yt=Oe.length;++nt<yt;)if(Ve(Oe[nt],De))return nt;return-1}function Pf(Oe){return Oe!==Oe}function If(Oe,De){var Me=Oe==null?0:Oe.length;return Me?tu(Oe,De)/Me:T}function $a(Oe){return function(De){return De==null?n:De[Oe]}}function eu(Oe){return function(De){return Oe==null?n:Oe[De]}}function Rf(Oe,De,Me,Ve,nt){return nt(Oe,function(yt,Gt,St){Me=Ve?(Ve=!1,yt):De(Me,yt,Gt,St)}),Me}function qb(Oe,De){var Me=Oe.length;for(Oe.sort(De);Me--;)Oe[Me]=Oe[Me].value;return Oe}function tu(Oe,De){for(var Me,Ve=-1,nt=Oe.length;++Ve<nt;){var yt=De(Oe[Ve]);yt!==n&&(Me=Me===n?yt:Me+yt)}return Me}function nu(Oe,De){for(var Me=-1,Ve=Array(Oe);++Me<Oe;)Ve[Me]=De(Me);return Ve}function Jb(Oe,De){return Ot(De,function(Me){return[Me,Oe[Me]]})}function Mf(Oe){return Oe&&Oe.slice(0,Uf(Oe)+1).replace(Pt,"")}function vn(Oe){return function(De){return Oe(De)}}function iu(Oe,De){return Ot(De,function(Me){return Oe[Me]})}function ss(Oe,De){return Oe.has(De)}function Bf(Oe,De){for(var Me=-1,Ve=Oe.length;++Me<Ve&&Cr(De,Oe[Me],0)>-1;);return Me}function Df(Oe,De){for(var Me=Oe.length;Me--&&Cr(De,Oe[Me],0)>-1;);return Me}function Gb(Oe,De){for(var Me=Oe.length,Ve=0;Me--;)Oe[Me]===De&&++Ve;return Ve}var Hb=eu(Eb),Kb=eu(Ab);function Vb(Oe){return"\\"+Pb[Oe]}function Zb(Oe,De){return Oe==null?n:Oe[De]}function Er(Oe){return kb.test(Oe)}function Qb(Oe){return Nb.test(Oe)}function Xb(Oe){for(var De,Me=[];!(De=Oe.next()).done;)Me.push(De.value);return Me}function ru(Oe){var De=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve,nt){Me[++De]=[nt,Ve]}),Me}function jf(Oe,De){return function(Me){return Oe(De(Me))}}function Mi(Oe,De){for(var Me=-1,Ve=Oe.length,nt=0,yt=[];++Me<Ve;){var Gt=Oe[Me];(Gt===De||Gt===F)&&(Oe[Me]=F,yt[nt++]=Me)}return yt}function po(Oe){var De=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve){Me[++De]=Ve}),Me}function Yb(Oe){var De=-1,Me=Array(Oe.size);return Oe.forEach(function(Ve){Me[++De]=[Ve,Ve]}),Me}function $b(Oe,De,Me){for(var Ve=Me-1,nt=Oe.length;++Ve<nt;)if(Oe[Ve]===De)return Ve;return-1}function e0(Oe,De,Me){for(var Ve=Me+1;Ve--;)if(Oe[Ve]===De)return Ve;return Ve}function Ar(Oe){return Er(Oe)?n0(Oe):Ub(Oe)}function Wn(Oe){return Er(Oe)?i0(Oe):xb(Oe)}function Uf(Oe){for(var De=Oe.length;De--&&Vt.test(Oe.charAt(De)););return De}var t0=eu(Fb);function n0(Oe){for(var De=Ka.lastIndex=0;Ka.test(Oe);)++De;return De}function i0(Oe){return Oe.match(Ka)||[]}function r0(Oe){return Oe.match(_b)||[]}var s0=function Oe(De){De=De==null?Qt:Fr.defaults(Qt.Object(),De,Fr.pick(Qt,Ob));var Me=De.Array,Ve=De.Date,nt=De.Error,yt=De.Function,Gt=De.Math,St=De.Object,su=De.RegExp,o0=De.String,An=De.TypeError,mo=Me.prototype,a0=yt.prototype,Pr=St.prototype,yo=De["__core-js_shared__"],go=a0.toString,bt=Pr.hasOwnProperty,u0=0,xf=function(){var t=/[^.]+$/.exec(yo&&yo.keys&&yo.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),bo=Pr.toString,l0=go.call(St),c0=Qt._,f0=su("^"+go.call(bt).replace(wt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),To=Lf?De.Buffer:n,Bi=De.Symbol,vo=De.Uint8Array,zf=To?To.allocUnsafe:n,So=jf(St.getPrototypeOf,St),Wf=St.create,qf=Pr.propertyIsEnumerable,wo=mo.splice,Jf=Bi?Bi.isConcatSpreadable:n,os=Bi?Bi.iterator:n,Xi=Bi?Bi.toStringTag:n,Lo=function(){try{var t=nr(St,"defineProperty");return t({},"",{}),t}catch{}}(),d0=De.clearTimeout!==Qt.clearTimeout&&De.clearTimeout,h0=Ve&&Ve.now!==Qt.Date.now&&Ve.now,p0=De.setTimeout!==Qt.setTimeout&&De.setTimeout,_o=Gt.ceil,ko=Gt.floor,ou=St.getOwnPropertySymbols,m0=To?To.isBuffer:n,Gf=De.isFinite,y0=mo.join,g0=jf(St.keys,St),Ht=Gt.max,tn=Gt.min,b0=Ve.now,T0=De.parseInt,Hf=Gt.random,v0=mo.reverse,au=nr(De,"DataView"),as=nr(De,"Map"),uu=nr(De,"Promise"),Ir=nr(De,"Set"),us=nr(De,"WeakMap"),ls=nr(St,"create"),No=us&&new us,Rr={},S0=ir(au),w0=ir(as),L0=ir(uu),_0=ir(Ir),k0=ir(us),Oo=Bi?Bi.prototype:n,cs=Oo?Oo.valueOf:n,Kf=Oo?Oo.toString:n;function fe(t){if(Bt(t)&&!it(t)&&!(t instanceof ft)){if(t instanceof Fn)return t;if(bt.call(t,"__wrapped__"))return Vd(t)}return new Fn(t)}var Mr=function(){function t(){}return function(o){if(!It(o))return{};if(Wf)return Wf(o);t.prototype=o;var N=new t;return t.prototype=n,N}}();function Co(){}function Fn(t,o){this.__wrapped__=t,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=Mr(Co.prototype),Fn.prototype.constructor=Fn;function ft(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=D,this.__views__=[]}function N0(){var t=new ft(this.__wrapped__);return t.__actions__=cn(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=cn(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=cn(this.__views__),t}function O0(){if(this.__filtered__){var t=new ft(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function C0(){var t=this.__wrapped__.value(),o=this.__dir__,N=it(t),Z=o<0,ie=N?t.length:0,he=xT(0,ie,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&&ie==Ee&&Ze==Ee)return gd(t,this.__actions__);var Ye=[];e:for(;Ee--&&Je<Ze;){je+=o;for(var at=-1,$e=t[je];++at<xe;){var lt=Ue[at],ht=lt.iteratee,Ln=lt.type,on=ht($e);if(Ln==p)$e=on;else if(!on){if(Ln==s)continue e;break e}}Ye[Je++]=$e}return Ye}ft.prototype=Mr(Co.prototype),ft.prototype.constructor=ft;function Yi(t){var o=-1,N=t==null?0:t.length;for(this.clear();++o<N;){var Z=t[o];this.set(Z[0],Z[1])}}function E0(){this.__data__=ls?ls(null):{},this.size=0}function A0(t){var o=this.has(t)&&delete this.__data__[t];return this.size-=o?1:0,o}function F0(t){var o=this.__data__;if(ls){var N=o[t];return N===w?n:N}return bt.call(o,t)?o[t]:n}function P0(t){var o=this.__data__;return ls?o[t]!==n:bt.call(o,t)}function I0(t,o){var N=this.__data__;return this.size+=this.has(t)?0:1,N[t]=ls&&o===n?w:o,this}Yi.prototype.clear=E0,Yi.prototype.delete=A0,Yi.prototype.get=F0,Yi.prototype.has=P0,Yi.prototype.set=I0;function ui(t){var o=-1,N=t==null?0:t.length;for(this.clear();++o<N;){var Z=t[o];this.set(Z[0],Z[1])}}function R0(){this.__data__=[],this.size=0}function M0(t){var o=this.__data__,N=Eo(o,t);if(N<0)return!1;var Z=o.length-1;return N==Z?o.pop():wo.call(o,N,1),--this.size,!0}function B0(t){var o=this.__data__,N=Eo(o,t);return N<0?n:o[N][1]}function D0(t){return Eo(this.__data__,t)>-1}function j0(t,o){var N=this.__data__,Z=Eo(N,t);return Z<0?(++this.size,N.push([t,o])):N[Z][1]=o,this}ui.prototype.clear=R0,ui.prototype.delete=M0,ui.prototype.get=B0,ui.prototype.has=D0,ui.prototype.set=j0;function li(t){var o=-1,N=t==null?0:t.length;for(this.clear();++o<N;){var Z=t[o];this.set(Z[0],Z[1])}}function U0(){this.size=0,this.__data__={hash:new Yi,map:new(as||ui),string:new Yi}}function x0(t){var o=zo(this,t).delete(t);return this.size-=o?1:0,o}function z0(t){return zo(this,t).get(t)}function W0(t){return zo(this,t).has(t)}function q0(t,o){var N=zo(this,t),Z=N.size;return N.set(t,o),this.size+=N.size==Z?0:1,this}li.prototype.clear=U0,li.prototype.delete=x0,li.prototype.get=z0,li.prototype.has=W0,li.prototype.set=q0;function $i(t){var o=-1,N=t==null?0:t.length;for(this.__data__=new li;++o<N;)this.add(t[o])}function J0(t){return this.__data__.set(t,w),this}function G0(t){return this.__data__.has(t)}$i.prototype.add=$i.prototype.push=J0,$i.prototype.has=G0;function qn(t){var o=this.__data__=new ui(t);this.size=o.size}function H0(){this.__data__=new ui,this.size=0}function K0(t){var o=this.__data__,N=o.delete(t);return this.size=o.size,N}function V0(t){return this.__data__.get(t)}function Z0(t){return this.__data__.has(t)}function Q0(t,o){var N=this.__data__;if(N instanceof ui){var Z=N.__data__;if(!as||Z.length<l-1)return Z.push([t,o]),this.size=++N.size,this;N=this.__data__=new li(Z)}return N.set(t,o),this.size=N.size,this}qn.prototype.clear=H0,qn.prototype.delete=K0,qn.prototype.get=V0,qn.prototype.has=Z0,qn.prototype.set=Q0;function Vf(t,o){var N=it(t),Z=!N&&rr(t),ie=!N&&!Z&&zi(t),he=!N&&!Z&&!ie&&Ur(t),ve=N||Z||ie||he,_e=ve?nu(t.length,o0):[],Ee=_e.length;for(var je in t)(o||bt.call(t,je))&&!(ve&&(je=="length"||ie&&(je=="offset"||je=="parent")||he&&(je=="buffer"||je=="byteLength"||je=="byteOffset")||hi(je,Ee)))&&_e.push(je);return _e}function Zf(t){var o=t.length;return o?t[Tu(0,o-1)]:n}function X0(t,o){return Wo(cn(t),er(o,0,t.length))}function Y0(t){return Wo(cn(t))}function lu(t,o,N){(N!==n&&!Jn(t[o],N)||N===n&&!(o in t))&&ci(t,o,N)}function fs(t,o,N){var Z=t[o];(!(bt.call(t,o)&&Jn(Z,N))||N===n&&!(o in t))&&ci(t,o,N)}function Eo(t,o){for(var N=t.length;N--;)if(Jn(t[N][0],o))return N;return-1}function $0(t,o,N,Z){return Di(t,function(ie,he,ve){o(Z,ie,N(ie),ve)}),Z}function Qf(t,o){return t&&ri(o,Zt(o),t)}function eT(t,o){return t&&ri(o,dn(o),t)}function ci(t,o,N){o=="__proto__"&&Lo?Lo(t,o,{configurable:!0,enumerable:!0,value:N,writable:!0}):t[o]=N}function cu(t,o){for(var N=-1,Z=o.length,ie=Me(Z),he=t==null;++N<Z;)ie[N]=he?n:Ju(t,o[N]);return ie}function er(t,o,N){return t===t&&(N!==n&&(t=t<=N?t:N),o!==n&&(t=t>=o?t:o)),t}function Pn(t,o,N,Z,ie,he){var ve,_e=o&O,Ee=o&M,je=o&L;if(N&&(ve=ie?N(t,Z,ie,he):N(t)),ve!==n)return ve;if(!It(t))return t;var Ue=it(t);if(Ue){if(ve=WT(t),!_e)return cn(t,ve)}else{var xe=nn(t),Je=xe==pe||xe==le;if(zi(t))return vd(t,_e);if(xe==z||xe==Q||Je&&!ie){if(ve=Ee||Je?{}:Ud(t),!_e)return Ee?FT(t,eT(ve,t)):AT(t,Qf(ve,t))}else{if(!Lt[xe])return ie?t:{};ve=qT(t,xe,_e)}}he||(he=new qn);var Ze=he.get(t);if(Ze)return Ze;he.set(t,ve),ph(t)?t.forEach(function($e){ve.add(Pn($e,o,N,$e,t,he))}):dh(t)&&t.forEach(function($e,lt){ve.set(lt,Pn($e,o,N,lt,t,he))});var Ye=je?Ee?Au:Eu:Ee?dn:Zt,at=Ue?n:Ye(t);return En(at||t,function($e,lt){at&&(lt=$e,$e=t[lt]),fs(ve,lt,Pn($e,o,N,lt,t,he))}),ve}function tT(t){var o=Zt(t);return function(N){return Xf(N,t,o)}}function Xf(t,o,N){var Z=N.length;if(t==null)return!Z;for(t=St(t);Z--;){var ie=N[Z],he=o[ie],ve=t[ie];if(ve===n&&!(ie in t)||!he(ve))return!1}return!0}function Yf(t,o,N){if(typeof t!="function")throw new An(u);return bs(function(){t.apply(n,N)},o)}function ds(t,o,N,Z){var ie=-1,he=fo,ve=!0,_e=t.length,Ee=[],je=o.length;if(!_e)return Ee;N&&(o=Ot(o,vn(N))),Z?(he=Qa,ve=!1):o.length>=l&&(he=ss,ve=!1,o=new $i(o));e:for(;++ie<_e;){var Ue=t[ie],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 Di=kd(ii),$f=kd(du,!0);function nT(t,o){var N=!0;return Di(t,function(Z,ie,he){return N=!!o(Z,ie,he),N}),N}function Ao(t,o,N){for(var Z=-1,ie=t.length;++Z<ie;){var he=t[Z],ve=o(he);if(ve!=null&&(_e===n?ve===ve&&!wn(ve):N(ve,_e)))var _e=ve,Ee=he}return Ee}function iT(t,o,N,Z){var ie=t.length;for(N=st(N),N<0&&(N=-N>ie?0:ie+N),Z=Z===n||Z>ie?ie:st(Z),Z<0&&(Z+=ie),Z=N>Z?0:yh(Z);N<Z;)t[N++]=o;return t}function ed(t,o){var N=[];return Di(t,function(Z,ie,he){o(Z,ie,he)&&N.push(Z)}),N}function Xt(t,o,N,Z,ie){var he=-1,ve=t.length;for(N||(N=GT),ie||(ie=[]);++he<ve;){var _e=t[he];o>0&&N(_e)?o>1?Xt(_e,o-1,N,Z,ie):Ri(ie,_e):Z||(ie[ie.length]=_e)}return ie}var fu=Nd(),td=Nd(!0);function ii(t,o){return t&&fu(t,o,Zt)}function du(t,o){return t&&td(t,o,Zt)}function Fo(t,o){return Ii(o,function(N){return pi(t[N])})}function tr(t,o){o=Ui(o,t);for(var N=0,Z=o.length;t!=null&&N<Z;)t=t[si(o[N++])];return N&&N==Z?t:n}function nd(t,o,N){var Z=o(t);return it(t)?Z:Ri(Z,N(t))}function rn(t){return t==null?t===n?Ge:Y:Xi&&Xi in St(t)?UT(t):YT(t)}function hu(t,o){return t>o}function rT(t,o){return t!=null&&bt.call(t,o)}function sT(t,o){return t!=null&&o in St(t)}function oT(t,o,N){return t>=tn(o,N)&&t<Ht(o,N)}function pu(t,o,N){for(var Z=N?Qa:fo,ie=t[0].length,he=t.length,ve=he,_e=Me(he),Ee=1/0,je=[];ve--;){var Ue=t[ve];ve&&o&&(Ue=Ot(Ue,vn(o))),Ee=tn(Ue.length,Ee),_e[ve]=!N&&(o||ie>=120&&Ue.length>=120)?new $i(ve&&Ue):n}Ue=t[0];var xe=-1,Je=_e[0];e:for(;++xe<ie&&je.length<Ee;){var Ze=Ue[xe],Ye=o?o(Ze):Ze;if(Ze=N||Ze!==0?Ze:0,!(Je?ss(Je,Ye):Z(je,Ye,N))){for(ve=he;--ve;){var at=_e[ve];if(!(at?ss(at,Ye):Z(t[ve],Ye,N)))continue e}Je&&Je.push(Ye),je.push(Ze)}}return je}function aT(t,o,N,Z){return ii(t,function(ie,he,ve){o(Z,N(ie),he,ve)}),Z}function hs(t,o,N){o=Ui(o,t),t=qd(t,o);var Z=t==null?t:t[si(Rn(o))];return Z==null?n:Tn(Z,t,N)}function id(t){return Bt(t)&&rn(t)==Q}function uT(t){return Bt(t)&&rn(t)==K}function lT(t){return Bt(t)&&rn(t)==me}function ps(t,o,N,Z,ie){return t===o?!0:t==null||o==null||!Bt(t)&&!Bt(o)?t!==t&&o!==o:cT(t,o,N,Z,ps,ie)}function cT(t,o,N,Z,ie,he){var ve=it(t),_e=it(o),Ee=ve?re:nn(t),je=_e?re:nn(o);Ee=Ee==Q?z:Ee,je=je==Q?z:je;var Ue=Ee==z,xe=je==z,Je=Ee==je;if(Je&&zi(t)){if(!zi(o))return!1;ve=!0,Ue=!1}if(Je&&!Ue)return he||(he=new qn),ve||Ur(t)?Bd(t,o,N,Z,ie,he):DT(t,o,Ee,N,Z,ie,he);if(!(N&_)){var Ze=Ue&&bt.call(t,"__wrapped__"),Ye=xe&&bt.call(o,"__wrapped__");if(Ze||Ye){var at=Ze?t.value():t,$e=Ye?o.value():o;return he||(he=new qn),ie(at,$e,N,Z,he)}}return Je?(he||(he=new qn),jT(t,o,N,Z,ie,he)):!1}function fT(t){return Bt(t)&&nn(t)==ye}function mu(t,o,N,Z){var ie=N.length,he=ie,ve=!Z;if(t==null)return!he;for(t=St(t);ie--;){var _e=N[ie];if(ve&&_e[2]?_e[1]!==t[_e[0]]:!(_e[0]in t))return!1}for(;++ie<he;){_e=N[ie];var Ee=_e[0],je=t[Ee],Ue=_e[1];if(ve&&_e[2]){if(je===n&&!(Ee in t))return!1}else{var xe=new qn;if(Z)var Je=Z(je,Ue,Ee,t,o,xe);if(!(Je===n?ps(Ue,je,_|b,Z,xe):Je))return!1}}return!0}function rd(t){if(!It(t)||KT(t))return!1;var o=pi(t)?f0:tb;return o.test(ir(t))}function dT(t){return Bt(t)&&rn(t)==Te}function hT(t){return Bt(t)&&nn(t)==Ie}function pT(t){return Bt(t)&&Vo(t.length)&&!!_t[rn(t)]}function sd(t){return typeof t=="function"?t:t==null?hn:typeof t=="object"?it(t)?ud(t[0],t[1]):ad(t):Oh(t)}function yu(t){if(!gs(t))return g0(t);var o=[];for(var N in St(t))bt.call(t,N)&&N!="constructor"&&o.push(N);return o}function mT(t){if(!It(t))return XT(t);var o=gs(t),N=[];for(var Z in t)Z=="constructor"&&(o||!bt.call(t,Z))||N.push(Z);return N}function gu(t,o){return t<o}function od(t,o){var N=-1,Z=fn(t)?Me(t.length):[];return Di(t,function(ie,he,ve){Z[++N]=o(ie,he,ve)}),Z}function ad(t){var o=Pu(t);return o.length==1&&o[0][2]?zd(o[0][0],o[0][1]):function(N){return N===t||mu(N,t,o)}}function ud(t,o){return Ru(t)&&xd(o)?zd(si(t),o):function(N){var Z=Ju(N,t);return Z===n&&Z===o?Gu(N,t):ps(o,Z,_|b)}}function Po(t,o,N,Z,ie){t!==o&&fu(o,function(he,ve){if(ie||(ie=new qn),It(he))yT(t,o,ve,N,Po,Z,ie);else{var _e=Z?Z(Bu(t,ve),he,ve+"",t,o,ie):n;_e===n&&(_e=he),lu(t,ve,_e)}},dn)}function yT(t,o,N,Z,ie,he,ve){var _e=Bu(t,N),Ee=Bu(o,N),je=ve.get(Ee);if(je){lu(t,N,je);return}var Ue=he?he(_e,Ee,N+"",t,o,ve):n,xe=Ue===n;if(xe){var Je=it(Ee),Ze=!Je&&zi(Ee),Ye=!Je&&!Ze&&Ur(Ee);Ue=Ee,Je||Ze||Ye?it(_e)?Ue=_e:jt(_e)?Ue=cn(_e):Ze?(xe=!1,Ue=vd(Ee,!0)):Ye?(xe=!1,Ue=Sd(Ee,!0)):Ue=[]:Ts(Ee)||rr(Ee)?(Ue=_e,rr(_e)?Ue=gh(_e):(!It(_e)||pi(_e))&&(Ue=Ud(Ee))):xe=!1}xe&&(ve.set(Ee,Ue),ie(Ue,Ee,Z,he,ve),ve.delete(Ee)),lu(t,N,Ue)}function ld(t,o){var N=t.length;if(N)return o+=o<0?N:0,hi(o,N)?t[o]:n}function cd(t,o,N){o.length?o=Ot(o,function(he){return it(he)?function(ve){return tr(ve,he.length===1?he[0]:he)}:he}):o=[hn];var Z=-1;o=Ot(o,vn(Xe()));var ie=od(t,function(he,ve,_e){var Ee=Ot(o,function(je){return je(he)});return{criteria:Ee,index:++Z,value:he}});return qb(ie,function(he,ve){return ET(he,ve,N)})}function gT(t,o){return fd(t,o,function(N,Z){return Gu(t,Z)})}function fd(t,o,N){for(var Z=-1,ie=o.length,he={};++Z<ie;){var ve=o[Z],_e=tr(t,ve);N(_e,ve)&&ms(he,Ui(ve,t),_e)}return he}function bT(t){return function(o){return tr(o,t)}}function bu(t,o,N,Z){var ie=Z?Wb:Cr,he=-1,ve=o.length,_e=t;for(t===o&&(o=cn(o)),N&&(_e=Ot(t,vn(N)));++he<ve;)for(var Ee=0,je=o[he],Ue=N?N(je):je;(Ee=ie(_e,Ue,Ee,Z))>-1;)_e!==t&&wo.call(_e,Ee,1),wo.call(t,Ee,1);return t}function dd(t,o){for(var N=t?o.length:0,Z=N-1;N--;){var ie=o[N];if(N==Z||ie!==he){var he=ie;hi(ie)?wo.call(t,ie,1):wu(t,ie)}}return t}function Tu(t,o){return t+ko(Hf()*(o-t+1))}function TT(t,o,N,Z){for(var ie=-1,he=Ht(_o((o-t)/(N||1)),0),ve=Me(he);he--;)ve[Z?he:++ie]=t,t+=N;return ve}function vu(t,o){var N="";if(!t||o<1||o>x)return N;do o%2&&(N+=t),o=ko(o/2),o&&(t+=t);while(o);return N}function ut(t,o){return Du(Wd(t,o,hn),t+"")}function vT(t){return Zf(xr(t))}function ST(t,o){var N=xr(t);return Wo(N,er(o,0,N.length))}function ms(t,o,N,Z){if(!It(t))return t;o=Ui(o,t);for(var ie=-1,he=o.length,ve=he-1,_e=t;_e!=null&&++ie<he;){var Ee=si(o[ie]),je=N;if(Ee==="__proto__"||Ee==="constructor"||Ee==="prototype")return t;if(ie!=ve){var Ue=_e[Ee];je=Z?Z(Ue,Ee,_e):n,je===n&&(je=It(Ue)?Ue:hi(o[ie+1])?[]:{})}fs(_e,Ee,je),_e=_e[Ee]}return t}var hd=No?function(t,o){return No.set(t,o),t}:hn,wT=Lo?function(t,o){return Lo(t,"toString",{configurable:!0,enumerable:!1,value:Ku(o),writable:!0})}:hn;function LT(t){return Wo(xr(t))}function In(t,o,N){var Z=-1,ie=t.length;o<0&&(o=-o>ie?0:ie+o),N=N>ie?ie:N,N<0&&(N+=ie),ie=o>N?0:N-o>>>0,o>>>=0;for(var he=Me(ie);++Z<ie;)he[Z]=t[Z+o];return he}function _T(t,o){var N;return Di(t,function(Z,ie,he){return N=o(Z,ie,he),!N}),!!N}function Io(t,o,N){var Z=0,ie=t==null?Z:t.length;if(typeof o=="number"&&o===o&&ie<=J){for(;Z<ie;){var he=Z+ie>>>1,ve=t[he];ve!==null&&!wn(ve)&&(N?ve<=o:ve<o)?Z=he+1:ie=he}return ie}return Su(t,o,hn,N)}function Su(t,o,N,Z){var ie=0,he=t==null?0:t.length;if(he===0)return 0;o=N(o);for(var ve=o!==o,_e=o===null,Ee=wn(o),je=o===n;ie<he;){var Ue=ko((ie+he)/2),xe=N(t[Ue]),Je=xe!==n,Ze=xe===null,Ye=xe===xe,at=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||!at):Ze||at?$e=!1:$e=Z?xe<=o:xe<o;$e?ie=Ue+1:he=Ue}return tn(he,W)}function pd(t,o){for(var N=-1,Z=t.length,ie=0,he=[];++N<Z;){var ve=t[N],_e=o?o(ve):ve;if(!N||!Jn(_e,Ee)){var Ee=_e;he[ie++]=ve===0?0:ve}}return he}function md(t){return typeof t=="number"?t:wn(t)?T:+t}function Sn(t){if(typeof t=="string")return t;if(it(t))return Ot(t,Sn)+"";if(wn(t))return Kf?Kf.call(t):"";var o=t+"";return o=="0"&&1/t==-1/0?"-0":o}function ji(t,o,N){var Z=-1,ie=fo,he=t.length,ve=!0,_e=[],Ee=_e;if(N)ve=!1,ie=Qa;else if(he>=l){var je=o?null:MT(t);if(je)return po(je);ve=!1,ie=ss,Ee=new $i}else Ee=o?[]:_e;e:for(;++Z<he;){var Ue=t[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 ie(Ee,xe,N)||(Ee!==_e&&Ee.push(xe),_e.push(Ue))}return _e}function wu(t,o){return o=Ui(o,t),t=qd(t,o),t==null||delete t[si(Rn(o))]}function yd(t,o,N,Z){return ms(t,o,N(tr(t,o)),Z)}function Ro(t,o,N,Z){for(var ie=t.length,he=Z?ie:-1;(Z?he--:++he<ie)&&o(t[he],he,t););return N?In(t,Z?0:he,Z?he+1:ie):In(t,Z?he+1:0,Z?ie:he)}function gd(t,o){var N=t;return N instanceof ft&&(N=N.value()),Xa(o,function(Z,ie){return ie.func.apply(ie.thisArg,Ri([Z],ie.args))},N)}function Lu(t,o,N){var Z=t.length;if(Z<2)return Z?ji(t[0]):[];for(var ie=-1,he=Me(Z);++ie<Z;)for(var ve=t[ie],_e=-1;++_e<Z;)_e!=ie&&(he[ie]=ds(he[ie]||ve,t[_e],o,N));return ji(Xt(he,1),o,N)}function bd(t,o,N){for(var Z=-1,ie=t.length,he=o.length,ve={};++Z<ie;){var _e=Z<he?o[Z]:n;N(ve,t[Z],_e)}return ve}function _u(t){return jt(t)?t:[]}function ku(t){return typeof t=="function"?t:hn}function Ui(t,o){return it(t)?t:Ru(t,o)?[t]:Kd(gt(t))}var kT=ut;function xi(t,o,N){var Z=t.length;return N=N===n?Z:N,!o&&N>=Z?t:In(t,o,N)}var Td=d0||function(t){return Qt.clearTimeout(t)};function vd(t,o){if(o)return t.slice();var N=t.length,Z=zf?zf(N):new t.constructor(N);return t.copy(Z),Z}function Nu(t){var o=new t.constructor(t.byteLength);return new vo(o).set(new vo(t)),o}function NT(t,o){var N=o?Nu(t.buffer):t.buffer;return new t.constructor(N,t.byteOffset,t.byteLength)}function OT(t){var o=new t.constructor(t.source,bn.exec(t));return o.lastIndex=t.lastIndex,o}function CT(t){return cs?St(cs.call(t)):{}}function Sd(t,o){var N=o?Nu(t.buffer):t.buffer;return new t.constructor(N,t.byteOffset,t.length)}function wd(t,o){if(t!==o){var N=t!==n,Z=t===null,ie=t===t,he=wn(t),ve=o!==n,_e=o===null,Ee=o===o,je=wn(o);if(!_e&&!je&&!he&&t>o||he&&ve&&Ee&&!_e&&!je||Z&&ve&&Ee||!N&&Ee||!ie)return 1;if(!Z&&!he&&!je&&t<o||je&&N&&ie&&!Z&&!he||_e&&N&&ie||!ve&&ie||!Ee)return-1}return 0}function ET(t,o,N){for(var Z=-1,ie=t.criteria,he=o.criteria,ve=ie.length,_e=N.length;++Z<ve;){var Ee=wd(ie[Z],he[Z]);if(Ee){if(Z>=_e)return Ee;var je=N[Z];return Ee*(je=="desc"?-1:1)}}return t.index-o.index}function Ld(t,o,N,Z){for(var ie=-1,he=t.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(;++ie<ve;)(xe||ie<he)&&(Ue[N[ie]]=t[ie]);for(;je--;)Ue[_e++]=t[ie++];return Ue}function _d(t,o,N,Z){for(var ie=-1,he=t.length,ve=-1,_e=N.length,Ee=-1,je=o.length,Ue=Ht(he-_e,0),xe=Me(Ue+je),Je=!Z;++ie<Ue;)xe[ie]=t[ie];for(var Ze=ie;++Ee<je;)xe[Ze+Ee]=o[Ee];for(;++ve<_e;)(Je||ie<he)&&(xe[Ze+N[ve]]=t[ie++]);return xe}function cn(t,o){var N=-1,Z=t.length;for(o||(o=Me(Z));++N<Z;)o[N]=t[N];return o}function ri(t,o,N,Z){var ie=!N;N||(N={});for(var he=-1,ve=o.length;++he<ve;){var _e=o[he],Ee=Z?Z(N[_e],t[_e],_e,N,t):n;Ee===n&&(Ee=t[_e]),ie?ci(N,_e,Ee):fs(N,_e,Ee)}return N}function AT(t,o){return ri(t,Iu(t),o)}function FT(t,o){return ri(t,Dd(t),o)}function Mo(t,o){return function(N,Z){var ie=it(N)?Bb:$0,he=o?o():{};return ie(N,t,Xe(Z,2),he)}}function Br(t){return ut(function(o,N){var Z=-1,ie=N.length,he=ie>1?N[ie-1]:n,ve=ie>2?N[2]:n;for(he=t.length>3&&typeof he=="function"?(ie--,he):n,ve&&sn(N[0],N[1],ve)&&(he=ie<3?n:he,ie=1),o=St(o);++Z<ie;){var _e=N[Z];_e&&t(o,_e,Z,he)}return o})}function kd(t,o){return function(N,Z){if(N==null)return N;if(!fn(N))return t(N,Z);for(var ie=N.length,he=o?ie:-1,ve=St(N);(o?he--:++he<ie)&&Z(ve[he],he,ve)!==!1;);return N}}function Nd(t){return function(o,N,Z){for(var ie=-1,he=St(o),ve=Z(o),_e=ve.length;_e--;){var Ee=ve[t?_e:++ie];if(N(he[Ee],Ee,he)===!1)break}return o}}function PT(t,o,N){var Z=o&v,ie=ys(t);function he(){var ve=this&&this!==Qt&&this instanceof he?ie:t;return ve.apply(Z?N:this,arguments)}return he}function Od(t){return function(o){o=gt(o);var N=Er(o)?Wn(o):n,Z=N?N[0]:o.charAt(0),ie=N?xi(N,1).join(""):o.slice(1);return Z[t]()+ie}}function Dr(t){return function(o){return Xa(kh(_h(o).replace(wb,"")),t,"")}}function ys(t){return function(){var o=arguments;switch(o.length){case 0:return new t;case 1:return new t(o[0]);case 2:return new t(o[0],o[1]);case 3:return new t(o[0],o[1],o[2]);case 4:return new t(o[0],o[1],o[2],o[3]);case 5:return new t(o[0],o[1],o[2],o[3],o[4]);case 6:return new t(o[0],o[1],o[2],o[3],o[4],o[5]);case 7:return new t(o[0],o[1],o[2],o[3],o[4],o[5],o[6])}var N=Mr(t.prototype),Z=t.apply(N,o);return It(Z)?Z:N}}function IT(t,o,N){var Z=ys(t);function ie(){for(var he=arguments.length,ve=Me(he),_e=he,Ee=jr(ie);_e--;)ve[_e]=arguments[_e];var je=he<3&&ve[0]!==Ee&&ve[he-1]!==Ee?[]:Mi(ve,Ee);if(he-=je.length,he<N)return Pd(t,o,Bo,ie.placeholder,n,ve,je,n,n,N-he);var Ue=this&&this!==Qt&&this instanceof ie?Z:t;return Tn(Ue,this,ve)}return ie}function Cd(t){return function(o,N,Z){var ie=St(o);if(!fn(o)){var he=Xe(N,3);o=Zt(o),N=function(_e){return he(ie[_e],_e,ie)}}var ve=t(o,N,Z);return ve>-1?ie[he?o[ve]:ve]:n}}function Ed(t){return di(function(o){var N=o.length,Z=N,ie=Fn.prototype.thru;for(t&&o.reverse();Z--;){var he=o[Z];if(typeof he!="function")throw new An(u);if(ie&&!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"?Fu(he):n;Ee&&Mu(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&&Mu(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 Bo(t,o,N,Z,ie,he,ve,_e,Ee,je){var Ue=o&A,xe=o&v,Je=o&h,Ze=o&(k|B),Ye=o&E,at=Je?n:ys(t);function $e(){for(var lt=arguments.length,ht=Me(lt),Ln=lt;Ln--;)ht[Ln]=arguments[Ln];if(Ze)var on=jr($e),_n=Gb(ht,on);if(Z&&(ht=Ld(ht,Z,ie,Ze)),he&&(ht=_d(ht,he,ve,Ze)),lt-=_n,Ze&<<je){var Ut=Mi(ht,on);return Pd(t,o,Bo,$e.placeholder,N,ht,Ut,_e,Ee,je-lt)}var Gn=xe?N:this,yi=Je?Gn[t]:t;return lt=ht.length,_e?ht=$T(ht,_e):Ye&<>1&&ht.reverse(),Ue&&Ee<lt&&(ht.length=Ee),this&&this!==Qt&&this instanceof $e&&(yi=at||ys(yi)),yi.apply(Gn,ht)}return $e}function Ad(t,o){return function(N,Z){return aT(N,t,o(Z),{})}}function Do(t,o){return function(N,Z){var ie;if(N===n&&Z===n)return o;if(N!==n&&(ie=N),Z!==n){if(ie===n)return Z;typeof N=="string"||typeof Z=="string"?(N=Sn(N),Z=Sn(Z)):(N=md(N),Z=md(Z)),ie=t(N,Z)}return ie}}function Ou(t){return di(function(o){return o=Ot(o,vn(Xe())),ut(function(N){var Z=this;return t(o,function(ie){return Tn(ie,Z,N)})})})}function jo(t,o){o=o===n?" ":Sn(o);var N=o.length;if(N<2)return N?vu(o,t):o;var Z=vu(o,_o(t/Ar(o)));return Er(o)?xi(Wn(Z),0,t).join(""):Z.slice(0,t)}function RT(t,o,N,Z){var ie=o&v,he=ys(t);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:t;++je<Ue;)xe[je]=Z[je];for(;Ee--;)xe[je++]=arguments[++_e];return Tn(Je,ie?N:this,xe)}return ve}function Fd(t){return function(o,N,Z){return Z&&typeof Z!="number"&&sn(o,N,Z)&&(N=Z=n),o=mi(o),N===n?(N=o,o=0):N=mi(N),Z=Z===n?o<N?1:-1:mi(Z),TT(o,N,Z,t)}}function Uo(t){return function(o,N){return typeof o=="string"&&typeof N=="string"||(o=Mn(o),N=Mn(N)),t(o,N)}}function Pd(t,o,N,Z,ie,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:R,o&=~(Ue?R:C),o&m||(o&=-4);var at=[t,o,ie,Ze,xe,Ye,Je,_e,Ee,je],$e=N.apply(n,at);return Mu(t)&&Jd($e,at),$e.placeholder=Z,Gd($e,t,o)}function Cu(t){var o=Gt[t];return function(N,Z){if(N=Mn(N),Z=Z==null?0:tn(st(Z),292),Z&&Gf(N)){var ie=(gt(N)+"e").split("e"),he=o(ie[0]+"e"+(+ie[1]+Z));return ie=(gt(he)+"e").split("e"),+(ie[0]+"e"+(+ie[1]-Z))}return o(N)}}var MT=Ir&&1/po(new Ir([,-0]))[1]==I?function(t){return new Ir(t)}:Qu;function Id(t){return function(o){var N=nn(o);return N==ye?ru(o):N==Ie?Yb(o):Jb(o,t(o))}}function fi(t,o,N,Z,ie,he,ve,_e){var Ee=o&h;if(!Ee&&typeof t!="function")throw new An(u);var je=Z?Z.length:0;if(je||(o&=-97,Z=ie=n),ve=ve===n?ve:Ht(st(ve),0),_e=_e===n?_e:st(_e),je-=ie?ie.length:0,o&R){var Ue=Z,xe=ie;Z=ie=n}var Je=Ee?n:Fu(t),Ze=[t,o,N,Z,ie,Ue,xe,he,ve,_e];if(Je&&QT(Ze,Je),t=Ze[0],o=Ze[1],N=Ze[2],Z=Ze[3],ie=Ze[4],_e=Ze[9]=Ze[9]===n?Ee?0:t.length:Ht(Ze[9]-je,0),!_e&&o&(k|B)&&(o&=-25),!o||o==v)var Ye=PT(t,o,N);else o==k||o==B?Ye=IT(t,o,_e):(o==C||o==(v|C))&&!ie.length?Ye=RT(t,o,N,Z):Ye=Bo.apply(n,Ze);var at=Je?hd:Jd;return Gd(at(Ye,Ze),t,o)}function Rd(t,o,N,Z){return t===n||Jn(t,Pr[N])&&!bt.call(Z,N)?o:t}function Md(t,o,N,Z,ie,he){return It(t)&&It(o)&&(he.set(o,t),Po(t,o,n,Md,he),he.delete(o)),t}function BT(t){return Ts(t)?n:t}function Bd(t,o,N,Z,ie,he){var ve=N&_,_e=t.length,Ee=o.length;if(_e!=Ee&&!(ve&&Ee>_e))return!1;var je=he.get(t),Ue=he.get(o);if(je&&Ue)return je==o&&Ue==t;var xe=-1,Je=!0,Ze=N&b?new $i:n;for(he.set(t,o),he.set(o,t);++xe<_e;){var Ye=t[xe],at=o[xe];if(Z)var $e=ve?Z(at,Ye,xe,o,t,he):Z(Ye,at,xe,t,o,he);if($e!==n){if($e)continue;Je=!1;break}if(Ze){if(!Ya(o,function(lt,ht){if(!ss(Ze,ht)&&(Ye===lt||ie(Ye,lt,N,Z,he)))return Ze.push(ht)})){Je=!1;break}}else if(!(Ye===at||ie(Ye,at,N,Z,he))){Je=!1;break}}return he.delete(t),he.delete(o),Je}function DT(t,o,N,Z,ie,he,ve){switch(N){case j:if(t.byteLength!=o.byteLength||t.byteOffset!=o.byteOffset)return!1;t=t.buffer,o=o.buffer;case K:return!(t.byteLength!=o.byteLength||!he(new vo(t),new vo(o)));case ne:case me:case de:return Jn(+t,+o);case Ae:return t.name==o.name&&t.message==o.message;case Te:case Ce:return t==o+"";case ye:var _e=ru;case Ie:var Ee=Z&_;if(_e||(_e=po),t.size!=o.size&&!Ee)return!1;var je=ve.get(t);if(je)return je==o;Z|=b,ve.set(t,o);var Ue=Bd(_e(t),_e(o),Z,ie,he,ve);return ve.delete(t),Ue;case We:if(cs)return cs.call(t)==cs.call(o)}return!1}function jT(t,o,N,Z,ie,he){var ve=N&_,_e=Eu(t),Ee=_e.length,je=Eu(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(t),Ye=he.get(o);if(Ze&&Ye)return Ze==o&&Ye==t;var at=!0;he.set(t,o),he.set(o,t);for(var $e=ve;++xe<Ee;){Je=_e[xe];var lt=t[Je],ht=o[Je];if(Z)var Ln=ve?Z(ht,lt,Je,o,t,he):Z(lt,ht,Je,t,o,he);if(!(Ln===n?lt===ht||ie(lt,ht,N,Z,he):Ln)){at=!1;break}$e||($e=Je=="constructor")}if(at&&!$e){var on=t.constructor,_n=o.constructor;on!=_n&&"constructor"in t&&"constructor"in o&&!(typeof on=="function"&&on instanceof on&&typeof _n=="function"&&_n instanceof _n)&&(at=!1)}return he.delete(t),he.delete(o),at}function di(t){return Du(Wd(t,n,Xd),t+"")}function Eu(t){return nd(t,Zt,Iu)}function Au(t){return nd(t,dn,Dd)}var Fu=No?function(t){return No.get(t)}:Qu;function xo(t){for(var o=t.name+"",N=Rr[o],Z=bt.call(Rr,o)?N.length:0;Z--;){var ie=N[Z],he=ie.func;if(he==null||he==t)return ie.name}return o}function jr(t){var o=bt.call(fe,"placeholder")?fe:t;return o.placeholder}function Xe(){var t=fe.iteratee||Vu;return t=t===Vu?sd:t,arguments.length?t(arguments[0],arguments[1]):t}function zo(t,o){var N=t.__data__;return HT(o)?N[typeof o=="string"?"string":"hash"]:N.map}function Pu(t){for(var o=Zt(t),N=o.length;N--;){var Z=o[N],ie=t[Z];o[N]=[Z,ie,xd(ie)]}return o}function nr(t,o){var N=Zb(t,o);return rd(N)?N:n}function UT(t){var o=bt.call(t,Xi),N=t[Xi];try{t[Xi]=n;var Z=!0}catch{}var ie=bo.call(t);return Z&&(o?t[Xi]=N:delete t[Xi]),ie}var Iu=ou?function(t){return t==null?[]:(t=St(t),Ii(ou(t),function(o){return qf.call(t,o)}))}:Xu,Dd=ou?function(t){for(var o=[];t;)Ri(o,Iu(t)),t=So(t);return o}:Xu,nn=rn;(au&&nn(new au(new ArrayBuffer(1)))!=j||as&&nn(new as)!=ye||uu&&nn(uu.resolve())!=V||Ir&&nn(new Ir)!=Ie||us&&nn(new us)!=ee)&&(nn=function(t){var o=rn(t),N=o==z?t.constructor:n,Z=N?ir(N):"";if(Z)switch(Z){case S0:return j;case w0:return ye;case L0:return V;case _0:return Ie;case k0:return ee}return o});function xT(t,o,N){for(var Z=-1,ie=N.length;++Z<ie;){var he=N[Z],ve=he.size;switch(he.type){case"drop":t+=ve;break;case"dropRight":o-=ve;break;case"take":o=tn(o,t+ve);break;case"takeRight":t=Ht(t,o-ve);break}}return{start:t,end:o}}function zT(t){var o=t.match(kr);return o?o[1].split(Nr):[]}function jd(t,o,N){o=Ui(o,t);for(var Z=-1,ie=o.length,he=!1;++Z<ie;){var ve=si(o[Z]);if(!(he=t!=null&&N(t,ve)))break;t=t[ve]}return he||++Z!=ie?he:(ie=t==null?0:t.length,!!ie&&Vo(ie)&&hi(ve,ie)&&(it(t)||rr(t)))}function WT(t){var o=t.length,N=new t.constructor(o);return o&&typeof t[0]=="string"&&bt.call(t,"index")&&(N.index=t.index,N.input=t.input),N}function Ud(t){return typeof t.constructor=="function"&&!gs(t)?Mr(So(t)):{}}function qT(t,o,N){var Z=t.constructor;switch(o){case K:return Nu(t);case ne:case me:return new Z(+t);case j:return NT(t,N);case G:case ce:case $:case be:case Se:case Be:case we:case Pe:case oe:return Sd(t,N);case ye:return new Z;case de:case Ce:return new Z(t);case Te:return OT(t);case Ie:return new Z;case We:return CT(t)}}function JT(t,o){var N=o.length;if(!N)return t;var Z=N-1;return o[Z]=(N>1?"& ":"")+o[Z],o=o.join(N>2?", ":" "),t.replace(en,`{
|
|
933
|
+
/* [wrapped with `+o+`] */
|
|
934
|
+
`)}function GT(t){return it(t)||rr(t)||!!(Jf&&t&&t[Jf])}function hi(t,o){var N=typeof t;return o=o??x,!!o&&(N=="number"||N!="symbol"&&ib.test(t))&&t>-1&&t%1==0&&t<o}function sn(t,o,N){if(!It(N))return!1;var Z=typeof o;return(Z=="number"?fn(N)&&hi(o,N.length):Z=="string"&&o in N)?Jn(N[o],t):!1}function Ru(t,o){if(it(t))return!1;var N=typeof t;return N=="number"||N=="symbol"||N=="boolean"||t==null||wn(t)?!0:ct.test(t)||!Ke.test(t)||o!=null&&t in St(o)}function HT(t){var o=typeof t;return o=="string"||o=="number"||o=="symbol"||o=="boolean"?t!=="__proto__":t===null}function Mu(t){var o=xo(t),N=fe[o];if(typeof N!="function"||!(o in ft.prototype))return!1;if(t===N)return!0;var Z=Fu(N);return!!Z&&t===Z[0]}function KT(t){return!!xf&&xf in t}var VT=yo?pi:Yu;function gs(t){var o=t&&t.constructor,N=typeof o=="function"&&o.prototype||Pr;return t===N}function xd(t){return t===t&&!It(t)}function zd(t,o){return function(N){return N==null?!1:N[t]===o&&(o!==n||t in St(N))}}function ZT(t){var o=Ho(t,function(Z){return N.size===U&&N.clear(),Z}),N=o.cache;return o}function QT(t,o){var N=t[1],Z=o[1],ie=N|Z,he=ie<(v|h|A),ve=Z==A&&N==k||Z==A&&N==f&&t[7].length<=o[8]||Z==(A|f)&&o[7].length<=o[8]&&N==k;if(!(he||ve))return t;Z&v&&(t[2]=o[2],ie|=N&v?0:m);var _e=o[3];if(_e){var Ee=t[3];t[3]=Ee?Ld(Ee,_e,o[4]):_e,t[4]=Ee?Mi(t[3],F):o[4]}return _e=o[5],_e&&(Ee=t[5],t[5]=Ee?_d(Ee,_e,o[6]):_e,t[6]=Ee?Mi(t[5],F):o[6]),_e=o[7],_e&&(t[7]=_e),Z&A&&(t[8]=t[8]==null?o[8]:tn(t[8],o[8])),t[9]==null&&(t[9]=o[9]),t[0]=o[0],t[1]=ie,t}function XT(t){var o=[];if(t!=null)for(var N in St(t))o.push(N);return o}function YT(t){return bo.call(t)}function Wd(t,o,N){return o=Ht(o===n?t.length-1:o,0),function(){for(var Z=arguments,ie=-1,he=Ht(Z.length-o,0),ve=Me(he);++ie<he;)ve[ie]=Z[o+ie];ie=-1;for(var _e=Me(o+1);++ie<o;)_e[ie]=Z[ie];return _e[o]=N(ve),Tn(t,this,_e)}}function qd(t,o){return o.length<2?t:tr(t,In(o,0,-1))}function $T(t,o){for(var N=t.length,Z=tn(o.length,N),ie=cn(t);Z--;){var he=o[Z];t[Z]=hi(he,N)?ie[he]:n}return t}function Bu(t,o){if(!(o==="constructor"&&typeof t[o]=="function")&&o!="__proto__")return t[o]}var Jd=Hd(hd),bs=p0||function(t,o){return Qt.setTimeout(t,o)},Du=Hd(wT);function Gd(t,o,N){var Z=o+"";return Du(t,JT(Z,ev(zT(Z),N)))}function Hd(t){var o=0,N=0;return function(){var Z=b0(),ie=r-(Z-N);if(N=Z,ie>0){if(++o>=y)return arguments[0]}else o=0;return t.apply(n,arguments)}}function Wo(t,o){var N=-1,Z=t.length,ie=Z-1;for(o=o===n?Z:o;++N<o;){var he=Tu(N,ie),ve=t[he];t[he]=t[N],t[N]=ve}return t.length=o,t}var Kd=ZT(function(t){var o=[];return t.charCodeAt(0)===46&&o.push(""),t.replace(xn,function(N,Z,ie,he){o.push(ie?he.replace(Jt,"$1"):Z||N)}),o});function si(t){if(typeof t=="string"||wn(t))return t;var o=t+"";return o=="0"&&1/t==-1/0?"-0":o}function ir(t){if(t!=null){try{return go.call(t)}catch{}try{return t+""}catch{}}return""}function ev(t,o){return En(X,function(N){var Z="_."+N[0];o&N[1]&&!fo(t,Z)&&t.push(Z)}),t.sort()}function Vd(t){if(t instanceof ft)return t.clone();var o=new Fn(t.__wrapped__,t.__chain__);return o.__actions__=cn(t.__actions__),o.__index__=t.__index__,o.__values__=t.__values__,o}function tv(t,o,N){(N?sn(t,o,N):o===n)?o=1:o=Ht(st(o),0);var Z=t==null?0:t.length;if(!Z||o<1)return[];for(var ie=0,he=0,ve=Me(_o(Z/o));ie<Z;)ve[he++]=In(t,ie,ie+=o);return ve}function nv(t){for(var o=-1,N=t==null?0:t.length,Z=0,ie=[];++o<N;){var he=t[o];he&&(ie[Z++]=he)}return ie}function iv(){var t=arguments.length;if(!t)return[];for(var o=Me(t-1),N=arguments[0],Z=t;Z--;)o[Z-1]=arguments[Z];return Ri(it(N)?cn(N):[N],Xt(o,1))}var rv=ut(function(t,o){return jt(t)?ds(t,Xt(o,1,jt,!0)):[]}),sv=ut(function(t,o){var N=Rn(o);return jt(N)&&(N=n),jt(t)?ds(t,Xt(o,1,jt,!0),Xe(N,2)):[]}),ov=ut(function(t,o){var N=Rn(o);return jt(N)&&(N=n),jt(t)?ds(t,Xt(o,1,jt,!0),n,N):[]});function av(t,o,N){var Z=t==null?0:t.length;return Z?(o=N||o===n?1:st(o),In(t,o<0?0:o,Z)):[]}function uv(t,o,N){var Z=t==null?0:t.length;return Z?(o=N||o===n?1:st(o),o=Z-o,In(t,0,o<0?0:o)):[]}function lv(t,o){return t&&t.length?Ro(t,Xe(o,3),!0,!0):[]}function cv(t,o){return t&&t.length?Ro(t,Xe(o,3),!0):[]}function fv(t,o,N,Z){var ie=t==null?0:t.length;return ie?(N&&typeof N!="number"&&sn(t,o,N)&&(N=0,Z=ie),iT(t,o,N,Z)):[]}function Zd(t,o,N){var Z=t==null?0:t.length;if(!Z)return-1;var ie=N==null?0:st(N);return ie<0&&(ie=Ht(Z+ie,0)),ho(t,Xe(o,3),ie)}function Qd(t,o,N){var Z=t==null?0:t.length;if(!Z)return-1;var ie=Z-1;return N!==n&&(ie=st(N),ie=N<0?Ht(Z+ie,0):tn(ie,Z-1)),ho(t,Xe(o,3),ie,!0)}function Xd(t){var o=t==null?0:t.length;return o?Xt(t,1):[]}function dv(t){var o=t==null?0:t.length;return o?Xt(t,I):[]}function hv(t,o){var N=t==null?0:t.length;return N?(o=o===n?1:st(o),Xt(t,o)):[]}function pv(t){for(var o=-1,N=t==null?0:t.length,Z={};++o<N;){var ie=t[o];Z[ie[0]]=ie[1]}return Z}function Yd(t){return t&&t.length?t[0]:n}function mv(t,o,N){var Z=t==null?0:t.length;if(!Z)return-1;var ie=N==null?0:st(N);return ie<0&&(ie=Ht(Z+ie,0)),Cr(t,o,ie)}function yv(t){var o=t==null?0:t.length;return o?In(t,0,-1):[]}var gv=ut(function(t){var o=Ot(t,_u);return o.length&&o[0]===t[0]?pu(o):[]}),bv=ut(function(t){var o=Rn(t),N=Ot(t,_u);return o===Rn(N)?o=n:N.pop(),N.length&&N[0]===t[0]?pu(N,Xe(o,2)):[]}),Tv=ut(function(t){var o=Rn(t),N=Ot(t,_u);return o=typeof o=="function"?o:n,o&&N.pop(),N.length&&N[0]===t[0]?pu(N,n,o):[]});function vv(t,o){return t==null?"":y0.call(t,o)}function Rn(t){var o=t==null?0:t.length;return o?t[o-1]:n}function Sv(t,o,N){var Z=t==null?0:t.length;if(!Z)return-1;var ie=Z;return N!==n&&(ie=st(N),ie=ie<0?Ht(Z+ie,0):tn(ie,Z-1)),o===o?e0(t,o,ie):ho(t,Pf,ie,!0)}function wv(t,o){return t&&t.length?ld(t,st(o)):n}var Lv=ut($d);function $d(t,o){return t&&t.length&&o&&o.length?bu(t,o):t}function _v(t,o,N){return t&&t.length&&o&&o.length?bu(t,o,Xe(N,2)):t}function kv(t,o,N){return t&&t.length&&o&&o.length?bu(t,o,n,N):t}var Nv=di(function(t,o){var N=t==null?0:t.length,Z=cu(t,o);return dd(t,Ot(o,function(ie){return hi(ie,N)?+ie:ie}).sort(wd)),Z});function Ov(t,o){var N=[];if(!(t&&t.length))return N;var Z=-1,ie=[],he=t.length;for(o=Xe(o,3);++Z<he;){var ve=t[Z];o(ve,Z,t)&&(N.push(ve),ie.push(Z))}return dd(t,ie),N}function ju(t){return t==null?t:v0.call(t)}function Cv(t,o,N){var Z=t==null?0:t.length;return Z?(N&&typeof N!="number"&&sn(t,o,N)?(o=0,N=Z):(o=o==null?0:st(o),N=N===n?Z:st(N)),In(t,o,N)):[]}function Ev(t,o){return Io(t,o)}function Av(t,o,N){return Su(t,o,Xe(N,2))}function Fv(t,o){var N=t==null?0:t.length;if(N){var Z=Io(t,o);if(Z<N&&Jn(t[Z],o))return Z}return-1}function Pv(t,o){return Io(t,o,!0)}function Iv(t,o,N){return Su(t,o,Xe(N,2),!0)}function Rv(t,o){var N=t==null?0:t.length;if(N){var Z=Io(t,o,!0)-1;if(Jn(t[Z],o))return Z}return-1}function Mv(t){return t&&t.length?pd(t):[]}function Bv(t,o){return t&&t.length?pd(t,Xe(o,2)):[]}function Dv(t){var o=t==null?0:t.length;return o?In(t,1,o):[]}function jv(t,o,N){return t&&t.length?(o=N||o===n?1:st(o),In(t,0,o<0?0:o)):[]}function Uv(t,o,N){var Z=t==null?0:t.length;return Z?(o=N||o===n?1:st(o),o=Z-o,In(t,o<0?0:o,Z)):[]}function xv(t,o){return t&&t.length?Ro(t,Xe(o,3),!1,!0):[]}function zv(t,o){return t&&t.length?Ro(t,Xe(o,3)):[]}var Wv=ut(function(t){return ji(Xt(t,1,jt,!0))}),qv=ut(function(t){var o=Rn(t);return jt(o)&&(o=n),ji(Xt(t,1,jt,!0),Xe(o,2))}),Jv=ut(function(t){var o=Rn(t);return o=typeof o=="function"?o:n,ji(Xt(t,1,jt,!0),n,o)});function Gv(t){return t&&t.length?ji(t):[]}function Hv(t,o){return t&&t.length?ji(t,Xe(o,2)):[]}function Kv(t,o){return o=typeof o=="function"?o:n,t&&t.length?ji(t,n,o):[]}function Uu(t){if(!(t&&t.length))return[];var o=0;return t=Ii(t,function(N){if(jt(N))return o=Ht(N.length,o),!0}),nu(o,function(N){return Ot(t,$a(N))})}function eh(t,o){if(!(t&&t.length))return[];var N=Uu(t);return o==null?N:Ot(N,function(Z){return Tn(o,n,Z)})}var Vv=ut(function(t,o){return jt(t)?ds(t,o):[]}),Zv=ut(function(t){return Lu(Ii(t,jt))}),Qv=ut(function(t){var o=Rn(t);return jt(o)&&(o=n),Lu(Ii(t,jt),Xe(o,2))}),Xv=ut(function(t){var o=Rn(t);return o=typeof o=="function"?o:n,Lu(Ii(t,jt),n,o)}),Yv=ut(Uu);function $v(t,o){return bd(t||[],o||[],fs)}function eS(t,o){return bd(t||[],o||[],ms)}var tS=ut(function(t){var o=t.length,N=o>1?t[o-1]:n;return N=typeof N=="function"?(t.pop(),N):n,eh(t,N)});function th(t){var o=fe(t);return o.__chain__=!0,o}function nS(t,o){return o(t),t}function qo(t,o){return o(t)}var iS=di(function(t){var o=t.length,N=o?t[0]:0,Z=this.__wrapped__,ie=function(he){return cu(he,t)};return o>1||this.__actions__.length||!(Z instanceof ft)||!hi(N)?this.thru(ie):(Z=Z.slice(N,+N+(o?1:0)),Z.__actions__.push({func:qo,args:[ie],thisArg:n}),new Fn(Z,this.__chain__).thru(function(he){return o&&!he.length&&he.push(n),he}))});function rS(){return th(this)}function sS(){return new Fn(this.value(),this.__chain__)}function oS(){this.__values__===n&&(this.__values__=mh(this.value()));var t=this.__index__>=this.__values__.length,o=t?n:this.__values__[this.__index__++];return{done:t,value:o}}function aS(){return this}function uS(t){for(var o,N=this;N instanceof Co;){var Z=Vd(N);Z.__index__=0,Z.__values__=n,o?ie.__wrapped__=Z:o=Z;var ie=Z;N=N.__wrapped__}return ie.__wrapped__=t,o}function lS(){var t=this.__wrapped__;if(t instanceof ft){var o=t;return this.__actions__.length&&(o=new ft(this)),o=o.reverse(),o.__actions__.push({func:qo,args:[ju],thisArg:n}),new Fn(o,this.__chain__)}return this.thru(ju)}function cS(){return gd(this.__wrapped__,this.__actions__)}var fS=Mo(function(t,o,N){bt.call(t,N)?++t[N]:ci(t,N,1)});function dS(t,o,N){var Z=it(t)?Af:nT;return N&&sn(t,o,N)&&(o=n),Z(t,Xe(o,3))}function hS(t,o){var N=it(t)?Ii:ed;return N(t,Xe(o,3))}var pS=Cd(Zd),mS=Cd(Qd);function yS(t,o){return Xt(Jo(t,o),1)}function gS(t,o){return Xt(Jo(t,o),I)}function bS(t,o,N){return N=N===n?1:st(N),Xt(Jo(t,o),N)}function nh(t,o){var N=it(t)?En:Di;return N(t,Xe(o,3))}function ih(t,o){var N=it(t)?Db:$f;return N(t,Xe(o,3))}var TS=Mo(function(t,o,N){bt.call(t,N)?t[N].push(o):ci(t,N,[o])});function vS(t,o,N,Z){t=fn(t)?t:xr(t),N=N&&!Z?st(N):0;var ie=t.length;return N<0&&(N=Ht(ie+N,0)),Zo(t)?N<=ie&&t.indexOf(o,N)>-1:!!ie&&Cr(t,o,N)>-1}var SS=ut(function(t,o,N){var Z=-1,ie=typeof o=="function",he=fn(t)?Me(t.length):[];return Di(t,function(ve){he[++Z]=ie?Tn(o,ve,N):hs(ve,o,N)}),he}),wS=Mo(function(t,o,N){ci(t,N,o)});function Jo(t,o){var N=it(t)?Ot:od;return N(t,Xe(o,3))}function LS(t,o,N,Z){return t==null?[]:(it(o)||(o=o==null?[]:[o]),N=Z?n:N,it(N)||(N=N==null?[]:[N]),cd(t,o,N))}var _S=Mo(function(t,o,N){t[N?0:1].push(o)},function(){return[[],[]]});function kS(t,o,N){var Z=it(t)?Xa:Rf,ie=arguments.length<3;return Z(t,Xe(o,4),N,ie,Di)}function NS(t,o,N){var Z=it(t)?jb:Rf,ie=arguments.length<3;return Z(t,Xe(o,4),N,ie,$f)}function OS(t,o){var N=it(t)?Ii:ed;return N(t,Ko(Xe(o,3)))}function CS(t){var o=it(t)?Zf:vT;return o(t)}function ES(t,o,N){(N?sn(t,o,N):o===n)?o=1:o=st(o);var Z=it(t)?X0:ST;return Z(t,o)}function AS(t){var o=it(t)?Y0:LT;return o(t)}function FS(t){if(t==null)return 0;if(fn(t))return Zo(t)?Ar(t):t.length;var o=nn(t);return o==ye||o==Ie?t.size:yu(t).length}function PS(t,o,N){var Z=it(t)?Ya:_T;return N&&sn(t,o,N)&&(o=n),Z(t,Xe(o,3))}var IS=ut(function(t,o){if(t==null)return[];var N=o.length;return N>1&&sn(t,o[0],o[1])?o=[]:N>2&&sn(o[0],o[1],o[2])&&(o=[o[0]]),cd(t,Xt(o,1),[])}),Go=h0||function(){return Qt.Date.now()};function RS(t,o){if(typeof o!="function")throw new An(u);return t=st(t),function(){if(--t<1)return o.apply(this,arguments)}}function rh(t,o,N){return o=N?n:o,o=t&&o==null?t.length:o,fi(t,A,n,n,n,n,o)}function sh(t,o){var N;if(typeof o!="function")throw new An(u);return t=st(t),function(){return--t>0&&(N=o.apply(this,arguments)),t<=1&&(o=n),N}}var xu=ut(function(t,o,N){var Z=v;if(N.length){var ie=Mi(N,jr(xu));Z|=C}return fi(t,Z,o,N,ie)}),oh=ut(function(t,o,N){var Z=v|h;if(N.length){var ie=Mi(N,jr(oh));Z|=C}return fi(o,Z,t,N,ie)});function ah(t,o,N){o=N?n:o;var Z=fi(t,k,n,n,n,n,n,o);return Z.placeholder=ah.placeholder,Z}function uh(t,o,N){o=N?n:o;var Z=fi(t,B,n,n,n,n,n,o);return Z.placeholder=uh.placeholder,Z}function lh(t,o,N){var Z,ie,he,ve,_e,Ee,je=0,Ue=!1,xe=!1,Je=!0;if(typeof t!="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,yi=ie;return Z=ie=n,je=Ut,ve=t.apply(yi,Gn),ve}function Ye(Ut){return je=Ut,_e=bs(lt,o),Ue?Ze(Ut):ve}function at(Ut){var Gn=Ut-Ee,yi=Ut-je,Ch=o-Gn;return xe?tn(Ch,he-yi):Ch}function $e(Ut){var Gn=Ut-Ee,yi=Ut-je;return Ee===n||Gn>=o||Gn<0||xe&&yi>=he}function lt(){var Ut=Go();if($e(Ut))return ht(Ut);_e=bs(lt,at(Ut))}function ht(Ut){return _e=n,Je&&Z?Ze(Ut):(Z=ie=n,ve)}function Ln(){_e!==n&&Td(_e),je=0,Z=Ee=ie=_e=n}function on(){return _e===n?ve:ht(Go())}function _n(){var Ut=Go(),Gn=$e(Ut);if(Z=arguments,ie=this,Ee=Ut,Gn){if(_e===n)return Ye(Ee);if(xe)return Td(_e),_e=bs(lt,o),Ze(Ee)}return _e===n&&(_e=bs(lt,o)),ve}return _n.cancel=Ln,_n.flush=on,_n}var MS=ut(function(t,o){return Yf(t,1,o)}),BS=ut(function(t,o,N){return Yf(t,Mn(o)||0,N)});function DS(t){return fi(t,E)}function Ho(t,o){if(typeof t!="function"||o!=null&&typeof o!="function")throw new An(u);var N=function(){var Z=arguments,ie=o?o.apply(this,Z):Z[0],he=N.cache;if(he.has(ie))return he.get(ie);var ve=t.apply(this,Z);return N.cache=he.set(ie,ve)||he,ve};return N.cache=new(Ho.Cache||li),N}Ho.Cache=li;function Ko(t){if(typeof t!="function")throw new An(u);return function(){var o=arguments;switch(o.length){case 0:return!t.call(this);case 1:return!t.call(this,o[0]);case 2:return!t.call(this,o[0],o[1]);case 3:return!t.call(this,o[0],o[1],o[2])}return!t.apply(this,o)}}function jS(t){return sh(2,t)}var US=kT(function(t,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 ie=-1,he=tn(Z.length,N);++ie<he;)Z[ie]=o[ie].call(this,Z[ie]);return Tn(t,this,Z)})}),zu=ut(function(t,o){var N=Mi(o,jr(zu));return fi(t,C,n,o,N)}),ch=ut(function(t,o){var N=Mi(o,jr(ch));return fi(t,R,n,o,N)}),xS=di(function(t,o){return fi(t,f,n,n,n,o)});function zS(t,o){if(typeof t!="function")throw new An(u);return o=o===n?o:st(o),ut(t,o)}function WS(t,o){if(typeof t!="function")throw new An(u);return o=o==null?0:Ht(st(o),0),ut(function(N){var Z=N[o],ie=xi(N,0,o);return Z&&Ri(ie,Z),Tn(t,this,ie)})}function qS(t,o,N){var Z=!0,ie=!0;if(typeof t!="function")throw new An(u);return It(N)&&(Z="leading"in N?!!N.leading:Z,ie="trailing"in N?!!N.trailing:ie),lh(t,o,{leading:Z,maxWait:o,trailing:ie})}function JS(t){return rh(t,1)}function GS(t,o){return zu(ku(o),t)}function HS(){if(!arguments.length)return[];var t=arguments[0];return it(t)?t:[t]}function KS(t){return Pn(t,L)}function VS(t,o){return o=typeof o=="function"?o:n,Pn(t,L,o)}function ZS(t){return Pn(t,O|L)}function QS(t,o){return o=typeof o=="function"?o:n,Pn(t,O|L,o)}function XS(t,o){return o==null||Xf(t,o,Zt(o))}function Jn(t,o){return t===o||t!==t&&o!==o}var YS=Uo(hu),$S=Uo(function(t,o){return t>=o}),rr=id(function(){return arguments}())?id:function(t){return Bt(t)&&bt.call(t,"callee")&&!qf.call(t,"callee")},it=Me.isArray,ew=_f?vn(_f):uT;function fn(t){return t!=null&&Vo(t.length)&&!pi(t)}function jt(t){return Bt(t)&&fn(t)}function tw(t){return t===!0||t===!1||Bt(t)&&rn(t)==ne}var zi=m0||Yu,nw=kf?vn(kf):lT;function iw(t){return Bt(t)&&t.nodeType===1&&!Ts(t)}function rw(t){if(t==null)return!0;if(fn(t)&&(it(t)||typeof t=="string"||typeof t.splice=="function"||zi(t)||Ur(t)||rr(t)))return!t.length;var o=nn(t);if(o==ye||o==Ie)return!t.size;if(gs(t))return!yu(t).length;for(var N in t)if(bt.call(t,N))return!1;return!0}function sw(t,o){return ps(t,o)}function ow(t,o,N){N=typeof N=="function"?N:n;var Z=N?N(t,o):n;return Z===n?ps(t,o,n,N):!!Z}function Wu(t){if(!Bt(t))return!1;var o=rn(t);return o==Ae||o==ge||typeof t.message=="string"&&typeof t.name=="string"&&!Ts(t)}function aw(t){return typeof t=="number"&&Gf(t)}function pi(t){if(!It(t))return!1;var o=rn(t);return o==pe||o==le||o==se||o==ue}function fh(t){return typeof t=="number"&&t==st(t)}function Vo(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=x}function It(t){var o=typeof t;return t!=null&&(o=="object"||o=="function")}function Bt(t){return t!=null&&typeof t=="object"}var dh=Nf?vn(Nf):fT;function uw(t,o){return t===o||mu(t,o,Pu(o))}function lw(t,o,N){return N=typeof N=="function"?N:n,mu(t,o,Pu(o),N)}function cw(t){return hh(t)&&t!=+t}function fw(t){if(VT(t))throw new nt(d);return rd(t)}function dw(t){return t===null}function hw(t){return t==null}function hh(t){return typeof t=="number"||Bt(t)&&rn(t)==de}function Ts(t){if(!Bt(t)||rn(t)!=z)return!1;var o=So(t);if(o===null)return!0;var N=bt.call(o,"constructor")&&o.constructor;return typeof N=="function"&&N instanceof N&&go.call(N)==l0}var qu=Of?vn(Of):dT;function pw(t){return fh(t)&&t>=-9007199254740991&&t<=x}var ph=Cf?vn(Cf):hT;function Zo(t){return typeof t=="string"||!it(t)&&Bt(t)&&rn(t)==Ce}function wn(t){return typeof t=="symbol"||Bt(t)&&rn(t)==We}var Ur=Ef?vn(Ef):pT;function mw(t){return t===n}function yw(t){return Bt(t)&&nn(t)==ee}function gw(t){return Bt(t)&&rn(t)==te}var bw=Uo(gu),Tw=Uo(function(t,o){return t<=o});function mh(t){if(!t)return[];if(fn(t))return Zo(t)?Wn(t):cn(t);if(os&&t[os])return Xb(t[os]());var o=nn(t),N=o==ye?ru:o==Ie?po:xr;return N(t)}function mi(t){if(!t)return t===0?t:0;if(t=Mn(t),t===I||t===-1/0){var o=t<0?-1:1;return o*q}return t===t?t:0}function st(t){var o=mi(t),N=o%1;return o===o?N?o-N:o:0}function yh(t){return t?er(st(t),0,D):0}function Mn(t){if(typeof t=="number")return t;if(wn(t))return T;if(It(t)){var o=typeof t.valueOf=="function"?t.valueOf():t;t=It(o)?o+"":o}if(typeof t!="string")return t===0?t:+t;t=Mf(t);var N=eb.test(t);return N||nb.test(t)?Rb(t.slice(2),N?2:8):ao.test(t)?T:+t}function gh(t){return ri(t,dn(t))}function vw(t){return t?er(st(t),-9007199254740991,x):t===0?t:0}function gt(t){return t==null?"":Sn(t)}var Sw=Br(function(t,o){if(gs(o)||fn(o)){ri(o,Zt(o),t);return}for(var N in o)bt.call(o,N)&&fs(t,N,o[N])}),bh=Br(function(t,o){ri(o,dn(o),t)}),Qo=Br(function(t,o,N,Z){ri(o,dn(o),t,Z)}),ww=Br(function(t,o,N,Z){ri(o,Zt(o),t,Z)}),Lw=di(cu);function _w(t,o){var N=Mr(t);return o==null?N:Qf(N,o)}var kw=ut(function(t,o){t=St(t);var N=-1,Z=o.length,ie=Z>2?o[2]:n;for(ie&&sn(o[0],o[1],ie)&&(Z=1);++N<Z;)for(var he=o[N],ve=dn(he),_e=-1,Ee=ve.length;++_e<Ee;){var je=ve[_e],Ue=t[je];(Ue===n||Jn(Ue,Pr[je])&&!bt.call(t,je))&&(t[je]=he[je])}return t}),Nw=ut(function(t){return t.push(n,Md),Tn(Th,n,t)});function Ow(t,o){return Ff(t,Xe(o,3),ii)}function Cw(t,o){return Ff(t,Xe(o,3),du)}function Ew(t,o){return t==null?t:fu(t,Xe(o,3),dn)}function Aw(t,o){return t==null?t:td(t,Xe(o,3),dn)}function Fw(t,o){return t&&ii(t,Xe(o,3))}function Pw(t,o){return t&&du(t,Xe(o,3))}function Iw(t){return t==null?[]:Fo(t,Zt(t))}function Rw(t){return t==null?[]:Fo(t,dn(t))}function Ju(t,o,N){var Z=t==null?n:tr(t,o);return Z===n?N:Z}function Mw(t,o){return t!=null&&jd(t,o,rT)}function Gu(t,o){return t!=null&&jd(t,o,sT)}var Bw=Ad(function(t,o,N){o!=null&&typeof o.toString!="function"&&(o=bo.call(o)),t[o]=N},Ku(hn)),Dw=Ad(function(t,o,N){o!=null&&typeof o.toString!="function"&&(o=bo.call(o)),bt.call(t,o)?t[o].push(N):t[o]=[N]},Xe),jw=ut(hs);function Zt(t){return fn(t)?Vf(t):yu(t)}function dn(t){return fn(t)?Vf(t,!0):mT(t)}function Uw(t,o){var N={};return o=Xe(o,3),ii(t,function(Z,ie,he){ci(N,o(Z,ie,he),Z)}),N}function xw(t,o){var N={};return o=Xe(o,3),ii(t,function(Z,ie,he){ci(N,ie,o(Z,ie,he))}),N}var zw=Br(function(t,o,N){Po(t,o,N)}),Th=Br(function(t,o,N,Z){Po(t,o,N,Z)}),Ww=di(function(t,o){var N={};if(t==null)return N;var Z=!1;o=Ot(o,function(he){return he=Ui(he,t),Z||(Z=he.length>1),he}),ri(t,Au(t),N),Z&&(N=Pn(N,O|M|L,BT));for(var ie=o.length;ie--;)wu(N,o[ie]);return N});function qw(t,o){return vh(t,Ko(Xe(o)))}var Jw=di(function(t,o){return t==null?{}:gT(t,o)});function vh(t,o){if(t==null)return{};var N=Ot(Au(t),function(Z){return[Z]});return o=Xe(o),fd(t,N,function(Z,ie){return o(Z,ie[0])})}function Gw(t,o,N){o=Ui(o,t);var Z=-1,ie=o.length;for(ie||(ie=1,t=n);++Z<ie;){var he=t==null?n:t[si(o[Z])];he===n&&(Z=ie,he=N),t=pi(he)?he.call(t):he}return t}function Hw(t,o,N){return t==null?t:ms(t,o,N)}function Kw(t,o,N,Z){return Z=typeof Z=="function"?Z:n,t==null?t:ms(t,o,N,Z)}var Sh=Id(Zt),wh=Id(dn);function Vw(t,o,N){var Z=it(t),ie=Z||zi(t)||Ur(t);if(o=Xe(o,4),N==null){var he=t&&t.constructor;ie?N=Z?new he:[]:It(t)?N=pi(he)?Mr(So(t)):{}:N={}}return(ie?En:ii)(t,function(ve,_e,Ee){return o(N,ve,_e,Ee)}),N}function Zw(t,o){return t==null?!0:wu(t,o)}function Qw(t,o,N){return t==null?t:yd(t,o,ku(N))}function Xw(t,o,N,Z){return Z=typeof Z=="function"?Z:n,t==null?t:yd(t,o,ku(N),Z)}function xr(t){return t==null?[]:iu(t,Zt(t))}function Yw(t){return t==null?[]:iu(t,dn(t))}function $w(t,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),er(Mn(t),o,N)}function e1(t,o,N){return o=mi(o),N===n?(N=o,o=0):N=mi(N),t=Mn(t),oT(t,o,N)}function t1(t,o,N){if(N&&typeof N!="boolean"&&sn(t,o,N)&&(o=N=n),N===n&&(typeof o=="boolean"?(N=o,o=n):typeof t=="boolean"&&(N=t,t=n)),t===n&&o===n?(t=0,o=1):(t=mi(t),o===n?(o=t,t=0):o=mi(o)),t>o){var Z=t;t=o,o=Z}if(N||t%1||o%1){var ie=Hf();return tn(t+ie*(o-t+Ib("1e-"+((ie+"").length-1))),o)}return Tu(t,o)}var n1=Dr(function(t,o,N){return o=o.toLowerCase(),t+(N?Lh(o):o)});function Lh(t){return Hu(gt(t).toLowerCase())}function _h(t){return t=gt(t),t&&t.replace(rb,Hb).replace(Lb,"")}function i1(t,o,N){t=gt(t),o=Sn(o);var Z=t.length;N=N===n?Z:er(st(N),0,Z);var ie=N;return N-=o.length,N>=0&&t.slice(N,ie)==o}function r1(t){return t=gt(t),t&&Le.test(t)?t.replace(Ne,Kb):t}function s1(t){return t=gt(t),t&&dt.test(t)?t.replace(wt,"\\$&"):t}var o1=Dr(function(t,o,N){return t+(N?"-":"")+o.toLowerCase()}),a1=Dr(function(t,o,N){return t+(N?" ":"")+o.toLowerCase()}),u1=Od("toLowerCase");function l1(t,o,N){t=gt(t),o=st(o);var Z=o?Ar(t):0;if(!o||Z>=o)return t;var ie=(o-Z)/2;return jo(ko(ie),N)+t+jo(_o(ie),N)}function c1(t,o,N){t=gt(t),o=st(o);var Z=o?Ar(t):0;return o&&Z<o?t+jo(o-Z,N):t}function f1(t,o,N){t=gt(t),o=st(o);var Z=o?Ar(t):0;return o&&Z<o?jo(o-Z,N)+t:t}function d1(t,o,N){return N||o==null?o=0:o&&(o=+o),T0(gt(t).replace(Pt,""),o||0)}function h1(t,o,N){return(N?sn(t,o,N):o===n)?o=1:o=st(o),vu(gt(t),o)}function p1(){var t=arguments,o=gt(t[0]);return t.length<3?o:o.replace(t[1],t[2])}var m1=Dr(function(t,o,N){return t+(N?"_":"")+o.toLowerCase()});function y1(t,o,N){return N&&typeof N!="number"&&sn(t,o,N)&&(o=N=n),N=N===n?D:N>>>0,N?(t=gt(t),t&&(typeof o=="string"||o!=null&&!qu(o))&&(o=Sn(o),!o&&Er(t))?xi(Wn(t),0,N):t.split(o,N)):[]}var g1=Dr(function(t,o,N){return t+(N?" ":"")+Hu(o)});function b1(t,o,N){return t=gt(t),N=N==null?0:er(st(N),0,t.length),o=Sn(o),t.slice(N,N+o.length)==o}function T1(t,o,N){var Z=fe.templateSettings;N&&sn(t,o,N)&&(o=n),t=gt(t),o=Qo({},o,Z,Rd);var ie=Qo({},o.imports,Z.imports,Rd),he=Zt(ie),ve=iu(ie,he),_e,Ee,je=0,Ue=o.interpolate||uo,xe="__p += '",Je=su((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["+ ++Cb+"]")+`
|
|
935
|
+
`;t.replace(Je,function($e,lt,ht,Ln,on,_n){return ht||(ht=Ln),xe+=t.slice(je,_n).replace(sb,Vb),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 at=Nh(function(){return yt(he,Ze+"return "+xe).apply(n,ve)});if(at.source=xe,Wu(at))throw at;return at}function v1(t){return gt(t).toLowerCase()}function S1(t){return gt(t).toUpperCase()}function w1(t,o,N){if(t=gt(t),t&&(N||o===n))return Mf(t);if(!t||!(o=Sn(o)))return t;var Z=Wn(t),ie=Wn(o),he=Bf(Z,ie),ve=Df(Z,ie)+1;return xi(Z,he,ve).join("")}function L1(t,o,N){if(t=gt(t),t&&(N||o===n))return t.slice(0,Uf(t)+1);if(!t||!(o=Sn(o)))return t;var Z=Wn(t),ie=Df(Z,Wn(o))+1;return xi(Z,0,ie).join("")}function _1(t,o,N){if(t=gt(t),t&&(N||o===n))return t.replace(Pt,"");if(!t||!(o=Sn(o)))return t;var Z=Wn(t),ie=Bf(Z,Wn(o));return xi(Z,ie).join("")}function k1(t,o){var N=S,Z=P;if(It(o)){var ie="separator"in o?o.separator:ie;N="length"in o?st(o.length):N,Z="omission"in o?Sn(o.omission):Z}t=gt(t);var he=t.length;if(Er(t)){var ve=Wn(t);he=ve.length}if(N>=he)return t;var _e=N-Ar(Z);if(_e<1)return Z;var Ee=ve?xi(ve,0,_e).join(""):t.slice(0,_e);if(ie===n)return Ee+Z;if(ve&&(_e+=Ee.length-_e),qu(ie)){if(t.slice(_e).search(ie)){var je,Ue=Ee;for(ie.global||(ie=su(ie.source,gt(bn.exec(ie))+"g")),ie.lastIndex=0;je=ie.exec(Ue);)var xe=je.index;Ee=Ee.slice(0,xe===n?_e:xe)}}else if(t.indexOf(Sn(ie),_e)!=_e){var Je=Ee.lastIndexOf(ie);Je>-1&&(Ee=Ee.slice(0,Je))}return Ee+Z}function N1(t){return t=gt(t),t&&ae.test(t)?t.replace(ke,t0):t}var O1=Dr(function(t,o,N){return t+(N?" ":"")+o.toUpperCase()}),Hu=Od("toUpperCase");function kh(t,o,N){return t=gt(t),o=N?n:o,o===n?Qb(t)?r0(t):zb(t):t.match(o)||[]}var Nh=ut(function(t,o){try{return Tn(t,n,o)}catch(N){return Wu(N)?N:new nt(N)}}),C1=di(function(t,o){return En(o,function(N){N=si(N),ci(t,N,xu(t[N],t))}),t});function E1(t){var o=t==null?0:t.length,N=Xe();return t=o?Ot(t,function(Z){if(typeof Z[1]!="function")throw new An(u);return[N(Z[0]),Z[1]]}):[],ut(function(Z){for(var ie=-1;++ie<o;){var he=t[ie];if(Tn(he[0],this,Z))return Tn(he[1],this,Z)}})}function A1(t){return tT(Pn(t,O))}function Ku(t){return function(){return t}}function F1(t,o){return t==null||t!==t?o:t}var P1=Ed(),I1=Ed(!0);function hn(t){return t}function Vu(t){return sd(typeof t=="function"?t:Pn(t,O))}function R1(t){return ad(Pn(t,O))}function M1(t,o){return ud(t,Pn(o,O))}var B1=ut(function(t,o){return function(N){return hs(N,t,o)}}),D1=ut(function(t,o){return function(N){return hs(t,N,o)}});function Zu(t,o,N){var Z=Zt(o),ie=Fo(o,Z);N==null&&!(It(o)&&(ie.length||!Z.length))&&(N=o,o=t,t=this,ie=Fo(o,Zt(o)));var he=!(It(N)&&"chain"in N)||!!N.chain,ve=pi(t);return En(ie,function(_e){var Ee=o[_e];t[_e]=Ee,ve&&(t.prototype[_e]=function(){var je=this.__chain__;if(he||je){var Ue=t(this.__wrapped__),xe=Ue.__actions__=cn(this.__actions__);return xe.push({func:Ee,args:arguments,thisArg:t}),Ue.__chain__=je,Ue}return Ee.apply(t,Ri([this.value()],arguments))})}),t}function j1(){return Qt._===this&&(Qt._=c0),this}function Qu(){}function U1(t){return t=st(t),ut(function(o){return ld(o,t)})}var x1=Ou(Ot),z1=Ou(Af),W1=Ou(Ya);function Oh(t){return Ru(t)?$a(si(t)):bT(t)}function q1(t){return function(o){return t==null?n:tr(t,o)}}var J1=Fd(),G1=Fd(!0);function Xu(){return[]}function Yu(){return!1}function H1(){return{}}function K1(){return""}function V1(){return!0}function Z1(t,o){if(t=st(t),t<1||t>x)return[];var N=D,Z=tn(t,D);o=Xe(o),t-=D;for(var ie=nu(Z,o);++N<t;)o(N);return ie}function Q1(t){return it(t)?Ot(t,si):wn(t)?[t]:cn(Kd(gt(t)))}function X1(t){var o=++u0;return gt(t)+o}var Y1=Do(function(t,o){return t+o},0),$1=Cu("ceil"),eL=Do(function(t,o){return t/o},1),tL=Cu("floor");function nL(t){return t&&t.length?Ao(t,hn,hu):n}function iL(t,o){return t&&t.length?Ao(t,Xe(o,2),hu):n}function rL(t){return If(t,hn)}function sL(t,o){return If(t,Xe(o,2))}function oL(t){return t&&t.length?Ao(t,hn,gu):n}function aL(t,o){return t&&t.length?Ao(t,Xe(o,2),gu):n}var uL=Do(function(t,o){return t*o},1),lL=Cu("round"),cL=Do(function(t,o){return t-o},0);function fL(t){return t&&t.length?tu(t,hn):0}function dL(t,o){return t&&t.length?tu(t,Xe(o,2)):0}return fe.after=RS,fe.ary=rh,fe.assign=Sw,fe.assignIn=bh,fe.assignInWith=Qo,fe.assignWith=ww,fe.at=Lw,fe.before=sh,fe.bind=xu,fe.bindAll=C1,fe.bindKey=oh,fe.castArray=HS,fe.chain=th,fe.chunk=tv,fe.compact=nv,fe.concat=iv,fe.cond=E1,fe.conforms=A1,fe.constant=Ku,fe.countBy=fS,fe.create=_w,fe.curry=ah,fe.curryRight=uh,fe.debounce=lh,fe.defaults=kw,fe.defaultsDeep=Nw,fe.defer=MS,fe.delay=BS,fe.difference=rv,fe.differenceBy=sv,fe.differenceWith=ov,fe.drop=av,fe.dropRight=uv,fe.dropRightWhile=lv,fe.dropWhile=cv,fe.fill=fv,fe.filter=hS,fe.flatMap=yS,fe.flatMapDeep=gS,fe.flatMapDepth=bS,fe.flatten=Xd,fe.flattenDeep=dv,fe.flattenDepth=hv,fe.flip=DS,fe.flow=P1,fe.flowRight=I1,fe.fromPairs=pv,fe.functions=Iw,fe.functionsIn=Rw,fe.groupBy=TS,fe.initial=yv,fe.intersection=gv,fe.intersectionBy=bv,fe.intersectionWith=Tv,fe.invert=Bw,fe.invertBy=Dw,fe.invokeMap=SS,fe.iteratee=Vu,fe.keyBy=wS,fe.keys=Zt,fe.keysIn=dn,fe.map=Jo,fe.mapKeys=Uw,fe.mapValues=xw,fe.matches=R1,fe.matchesProperty=M1,fe.memoize=Ho,fe.merge=zw,fe.mergeWith=Th,fe.method=B1,fe.methodOf=D1,fe.mixin=Zu,fe.negate=Ko,fe.nthArg=U1,fe.omit=Ww,fe.omitBy=qw,fe.once=jS,fe.orderBy=LS,fe.over=x1,fe.overArgs=US,fe.overEvery=z1,fe.overSome=W1,fe.partial=zu,fe.partialRight=ch,fe.partition=_S,fe.pick=Jw,fe.pickBy=vh,fe.property=Oh,fe.propertyOf=q1,fe.pull=Lv,fe.pullAll=$d,fe.pullAllBy=_v,fe.pullAllWith=kv,fe.pullAt=Nv,fe.range=J1,fe.rangeRight=G1,fe.rearg=xS,fe.reject=OS,fe.remove=Ov,fe.rest=zS,fe.reverse=ju,fe.sampleSize=ES,fe.set=Hw,fe.setWith=Kw,fe.shuffle=AS,fe.slice=Cv,fe.sortBy=IS,fe.sortedUniq=Mv,fe.sortedUniqBy=Bv,fe.split=y1,fe.spread=WS,fe.tail=Dv,fe.take=jv,fe.takeRight=Uv,fe.takeRightWhile=xv,fe.takeWhile=zv,fe.tap=nS,fe.throttle=qS,fe.thru=qo,fe.toArray=mh,fe.toPairs=Sh,fe.toPairsIn=wh,fe.toPath=Q1,fe.toPlainObject=gh,fe.transform=Vw,fe.unary=JS,fe.union=Wv,fe.unionBy=qv,fe.unionWith=Jv,fe.uniq=Gv,fe.uniqBy=Hv,fe.uniqWith=Kv,fe.unset=Zw,fe.unzip=Uu,fe.unzipWith=eh,fe.update=Qw,fe.updateWith=Xw,fe.values=xr,fe.valuesIn=Yw,fe.without=Vv,fe.words=kh,fe.wrap=GS,fe.xor=Zv,fe.xorBy=Qv,fe.xorWith=Xv,fe.zip=Yv,fe.zipObject=$v,fe.zipObjectDeep=eS,fe.zipWith=tS,fe.entries=Sh,fe.entriesIn=wh,fe.extend=bh,fe.extendWith=Qo,Zu(fe,fe),fe.add=Y1,fe.attempt=Nh,fe.camelCase=n1,fe.capitalize=Lh,fe.ceil=$1,fe.clamp=$w,fe.clone=KS,fe.cloneDeep=ZS,fe.cloneDeepWith=QS,fe.cloneWith=VS,fe.conformsTo=XS,fe.deburr=_h,fe.defaultTo=F1,fe.divide=eL,fe.endsWith=i1,fe.eq=Jn,fe.escape=r1,fe.escapeRegExp=s1,fe.every=dS,fe.find=pS,fe.findIndex=Zd,fe.findKey=Ow,fe.findLast=mS,fe.findLastIndex=Qd,fe.findLastKey=Cw,fe.floor=tL,fe.forEach=nh,fe.forEachRight=ih,fe.forIn=Ew,fe.forInRight=Aw,fe.forOwn=Fw,fe.forOwnRight=Pw,fe.get=Ju,fe.gt=YS,fe.gte=$S,fe.has=Mw,fe.hasIn=Gu,fe.head=Yd,fe.identity=hn,fe.includes=vS,fe.indexOf=mv,fe.inRange=e1,fe.invoke=jw,fe.isArguments=rr,fe.isArray=it,fe.isArrayBuffer=ew,fe.isArrayLike=fn,fe.isArrayLikeObject=jt,fe.isBoolean=tw,fe.isBuffer=zi,fe.isDate=nw,fe.isElement=iw,fe.isEmpty=rw,fe.isEqual=sw,fe.isEqualWith=ow,fe.isError=Wu,fe.isFinite=aw,fe.isFunction=pi,fe.isInteger=fh,fe.isLength=Vo,fe.isMap=dh,fe.isMatch=uw,fe.isMatchWith=lw,fe.isNaN=cw,fe.isNative=fw,fe.isNil=hw,fe.isNull=dw,fe.isNumber=hh,fe.isObject=It,fe.isObjectLike=Bt,fe.isPlainObject=Ts,fe.isRegExp=qu,fe.isSafeInteger=pw,fe.isSet=ph,fe.isString=Zo,fe.isSymbol=wn,fe.isTypedArray=Ur,fe.isUndefined=mw,fe.isWeakMap=yw,fe.isWeakSet=gw,fe.join=vv,fe.kebabCase=o1,fe.last=Rn,fe.lastIndexOf=Sv,fe.lowerCase=a1,fe.lowerFirst=u1,fe.lt=bw,fe.lte=Tw,fe.max=nL,fe.maxBy=iL,fe.mean=rL,fe.meanBy=sL,fe.min=oL,fe.minBy=aL,fe.stubArray=Xu,fe.stubFalse=Yu,fe.stubObject=H1,fe.stubString=K1,fe.stubTrue=V1,fe.multiply=uL,fe.nth=wv,fe.noConflict=j1,fe.noop=Qu,fe.now=Go,fe.pad=l1,fe.padEnd=c1,fe.padStart=f1,fe.parseInt=d1,fe.random=t1,fe.reduce=kS,fe.reduceRight=NS,fe.repeat=h1,fe.replace=p1,fe.result=Gw,fe.round=lL,fe.runInContext=Oe,fe.sample=CS,fe.size=FS,fe.snakeCase=m1,fe.some=PS,fe.sortedIndex=Ev,fe.sortedIndexBy=Av,fe.sortedIndexOf=Fv,fe.sortedLastIndex=Pv,fe.sortedLastIndexBy=Iv,fe.sortedLastIndexOf=Rv,fe.startCase=g1,fe.startsWith=b1,fe.subtract=cL,fe.sum=fL,fe.sumBy=dL,fe.template=T1,fe.times=Z1,fe.toFinite=mi,fe.toInteger=st,fe.toLength=yh,fe.toLower=v1,fe.toNumber=Mn,fe.toSafeInteger=vw,fe.toString=gt,fe.toUpper=S1,fe.trim=w1,fe.trimEnd=L1,fe.trimStart=_1,fe.truncate=k1,fe.unescape=N1,fe.uniqueId=X1,fe.upperCase=O1,fe.upperFirst=Hu,fe.each=nh,fe.eachRight=ih,fe.first=Yd,Zu(fe,function(){var t={};return ii(fe,function(o,N){bt.call(fe.prototype,N)||(t[N]=o)}),t}(),{chain:!1}),fe.VERSION=a,En(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){fe[t].placeholder=fe}),En(["drop","take"],function(t,o){ft.prototype[t]=function(N){N=N===n?1:Ht(st(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,D),type:t+(Z.__dir__<0?"Right":"")}),Z},ft.prototype[t+"Right"]=function(N){return this.reverse()[t](N).reverse()}}),En(["filter","map","takeWhile"],function(t,o){var N=o+1,Z=N==s||N==g;ft.prototype[t]=function(ie){var he=this.clone();return he.__iteratees__.push({iteratee:Xe(ie,3),type:N}),he.__filtered__=he.__filtered__||Z,he}}),En(["head","last"],function(t,o){var N="take"+(o?"Right":"");ft.prototype[t]=function(){return this[N](1).value()[0]}}),En(["initial","tail"],function(t,o){var N="drop"+(o?"":"Right");ft.prototype[t]=function(){return this.__filtered__?new ft(this):this[N](1)}}),ft.prototype.compact=function(){return this.filter(hn)},ft.prototype.find=function(t){return this.filter(t).head()},ft.prototype.findLast=function(t){return this.reverse().find(t)},ft.prototype.invokeMap=ut(function(t,o){return typeof t=="function"?new ft(this):this.map(function(N){return hs(N,t,o)})}),ft.prototype.reject=function(t){return this.filter(Ko(Xe(t)))},ft.prototype.slice=function(t,o){t=st(t);var N=this;return N.__filtered__&&(t>0||o<0)?new ft(N):(t<0?N=N.takeRight(-t):t&&(N=N.drop(t)),o!==n&&(o=st(o),N=o<0?N.dropRight(-o):N.take(o-t)),N)},ft.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},ft.prototype.toArray=function(){return this.take(D)},ii(ft.prototype,function(t,o){var N=/^(?:filter|find|map|reject)|While$/.test(o),Z=/^(?:head|last)$/.test(o),ie=fe[Z?"take"+(o=="last"?"Right":""):o],he=Z||/^find/.test(o);ie&&(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=ie.apply(fe,Ri([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,at=Ee&&!Ze;if(!he&&Ue){ve=at?ve:new ft(this);var $e=t.apply(ve,_e);return $e.__actions__.push({func:qo,args:[xe],thisArg:n}),new Fn($e,Je)}return Ye&&at?t.apply(this,_e):($e=this.thru(xe),Ye?Z?$e.value()[0]:$e.value():$e)})}),En(["pop","push","shift","sort","splice","unshift"],function(t){var o=mo[t],N=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",Z=/^(?:pop|shift)$/.test(t);fe.prototype[t]=function(){var ie=arguments;if(Z&&!this.__chain__){var he=this.value();return o.apply(it(he)?he:[],ie)}return this[N](function(ve){return o.apply(it(ve)?ve:[],ie)})}}),ii(ft.prototype,function(t,o){var N=fe[o];if(N){var Z=N.name+"";bt.call(Rr,Z)||(Rr[Z]=[]),Rr[Z].push({name:o,func:N})}}),Rr[Bo(n,h).name]=[{name:"wrapper",func:n}],ft.prototype.clone=N0,ft.prototype.reverse=O0,ft.prototype.value=C0,fe.prototype.at=iS,fe.prototype.chain=rS,fe.prototype.commit=sS,fe.prototype.next=oS,fe.prototype.plant=uS,fe.prototype.reverse=lS,fe.prototype.toJSON=fe.prototype.valueOf=fe.prototype.value=cS,fe.prototype.first=fe.prototype.head,os&&(fe.prototype[os]=aS),fe},Fr=s0();Qi?((Qi.exports=Fr)._=Fr,Va._=Fr):Qt._=Fr}).call($_)}(Vs,Vs.exports)),Vs.exports}var pm;function tk(){return pm||(pm=1,function(e){var i=Li&&Li.__createBinding||(Object.create?function(C,R,A,f){f===void 0&&(f=A);var E=Object.getOwnPropertyDescriptor(R,A);(!E||("get"in E?!R.__esModule:E.writable||E.configurable))&&(E={enumerable:!0,get:function(){return R[A]}}),Object.defineProperty(C,f,E)}:function(C,R,A,f){f===void 0&&(f=A),C[f]=R[A]}),n=Li&&Li.__setModuleDefault||(Object.create?function(C,R){Object.defineProperty(C,"default",{enumerable:!0,value:R})}:function(C,R){C.default=R}),a=Li&&Li.__importStar||function(C){if(C&&C.__esModule)return C;var R={};if(C!=null)for(var A in C)A!=="default"&&Object.prototype.hasOwnProperty.call(C,A)&&i(R,C,A);return n(R,C),R};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=Dt(),U=vr(),F=Nt(),O=Qe(),M=qt(),L=pt(),_=a(ek());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 b extends M.TargetLanguage{constructor(){super("PHP",["php"],"php")}getOptions(){return _.values(e.phpOptions)}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(R,A){const f=(0,c.getOptionValues)(e.phpOptions,A);return new B(this,R,f)}get stringTypeMapping(){const R=new Map;return R.set("date","date"),R.set("time","time"),R.set("uuid","uuid"),R.set("date-time","date-time"),R}}e.PhpTargetLanguage=b,e.stringEscape=(0,F.utf16ConcatMap)((0,F.escapeNonPrintableMapper)(F.isAscii,F.standardUnicodeHexEscape));function v(C){return C===95?!0:(0,F.isAscii)(C)&&(0,F.isLetter)(C)}function h(C){return v(C)||(0,F.isAscii)(C)&&(0,F.isDigit)(C)}const m=(0,F.utf16LegalizeCharacters)(h);function k(C,R,A,f=F.allUpperWordStyle){const E=(0,F.splitIntoWords)(A);return(0,F.combineWords)(E,m,R?F.allUpperWordStyle:C?F.firstUpperWordStyle:F.allLowerWordStyle,R?F.allUpperWordStyle:F.firstUpperWordStyle,R||C?F.allUpperWordStyle:F.allLowerWordStyle,f,R?"_":"",v)}e.phpNameStyle=k;class B extends d.ConvenienceRenderer{constructor(R,A,f){super(R,A),this._options=f,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname="Converter",this._converterKeywords=[]}forbiddenForObjectProperties(R,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(R){return(0,L.nullableFromUnion)(R)===null}namedTypeToNameForTopLevel(R){return(0,L.directlyReachableSingleNamedType)(R)}makeNamesForPropertyGetterAndSetter(R,A,f,E,S){const P=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`get_${I(S)}`),y=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`set_${I(S)}`),r=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`validate_${I(S)}`),s=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`from_${I(S)}`),p=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`to_${I(S)}`),g=new u.DependencyName(this.getNameStyling("propertyNamingFunction"),S.order,I=>`sample_${I(S)}`);return{getter:P,setter:y,validate:r,from:s,to:p,sample:g}}makePropertyDependencyNames(R,A,f,E,S){const P=this.makeNamesForPropertyGetterAndSetter(R,A,f,E,S);return this._gettersAndSettersForPropertyName.set(S,P),[P.getter,P.setter,P.validate,P.to,P.from,P.sample]}getNameStyling(R){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)))}[R]}startFile(R){this.ensureBlankLine(),!this._haveEmittedLeadingComments&&this.leadingComments!==void 0&&(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){}emitFileHeader(R,A){this.startFile(R),this.emitLine("// This is a autogenerated file:",R),this.ensureBlankLine()}emitDescriptionBlock(R){this.emitCommentLines(R," * ","/**"," */")}emitBlock(R,A){this.emitLine(R," {"),this.indent(A),this.emitLine("}")}phpType(R,A,f=!1,E="?",S=""){function P(y){return[f?E:"",y,f?S:""]}return(0,L.matchType)(A,y=>(0,w.maybeAnnotated)(f,l.anyTypeIssueAnnotation,"Object"),y=>(0,w.maybeAnnotated)(f,l.nullTypeIssueAnnotation,"Object"),y=>P("bool"),y=>P("int"),y=>P("float"),y=>P("string"),y=>P("array"),y=>P(this.nameForNamedType(y)),y=>P("stdClass"),y=>P(this.nameForNamedType(y)),y=>{const r=(0,L.nullableFromUnion)(y);return r!==null?this.phpType(!0,r,!0,E,S):this.nameForNamedType(y)},y=>{if(y.kind==="time")throw Error('transformedStringType.kind === "time"');if(y.kind==="date")throw Error('transformedStringType.kind === "date"');if(y.kind==="date-time")return"DateTime";if(y.kind==="uuid")throw Error('transformedStringType.kind === "uuid"');return"string"})}phpDocConvertType(R,A){return(0,L.matchType)(A,f=>"any",f=>"null",f=>"bool",f=>"int",f=>"float",f=>"string",f=>[this.phpDocConvertType(R,f.items),"[]"],f=>f.getCombinedName(),f=>"stdClass",f=>this.nameForNamedType(f),f=>{const E=(0,L.nullableFromUnion)(f);if(E!==null)return[this.phpDocConvertType(R,E),"|null"];throw Error("union are not supported")},f=>{if(f.kind==="date-time")return"DateTime";throw Error('transformedStringType.kind === "unknown"')})}phpConvertType(R,A){return(0,L.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,L.nullableFromUnion)(f);if(E!==null)return["?",this.phpConvertType(R,E)];throw Error("union are not supported")},f=>{if(f.kind==="date-time")return"string";throw Error('transformedStringType.kind === "unknown"')})}phpToObjConvert(R,A,f,E){return(0,L.matchType)(A,S=>this.emitLine(...f,...E,"; /*any*/"),S=>this.emitLine(...f,...E,"; /*null*/"),S=>this.emitLine(...f,...E,"; /*bool*/"),S=>this.emitLine(...f,...E,"; /*int*/"),S=>this.emitLine(...f,...E,"; /*float*/"),S=>this.emitLine(...f,...E,"; /*string*/"),S=>{this.emitLine(...f,"array_map(function ($value) {"),this.indent(()=>{this.phpToObjConvert(R,S.items,["return "],["$value"])}),this.emitLine("}, ",...E,");")},S=>this.emitLine(...f,...E,"->to(); ","/*class*/"),S=>{this.emitBlock(["function to($my): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.emitBlock(["foreach ($my as $k => $v)"],()=>{this.phpToObjConvert(R,S.values,["$my->$k = "],["$v"])}),this.emitLine("return $out;")}),this.emitLine("return to(",...E,");")},S=>this.emitLine(...f,this.nameForNamedType(S),"::to(",...E,"); ","/*enum*/"),S=>{const P=(0,L.nullableFromUnion)(S);if(P!==null){this.emitLine("if (!is_null(",...E,")) {"),this.indent(()=>this.phpToObjConvert(R,P,f,E)),this.emitLine("} else {"),this.indent(()=>this.emitLine(...f," null;")),this.emitLine("}");return}throw Error("union are not supported")},S=>{if(S.kind==="date-time"){this.emitLine(...f,...E,"->format(DateTimeInterface::ISO8601);");return}throw Error('transformedStringType.kind === "unknown"')})}transformDateTime(R,A,f){this.emitBlock(["if (!is_a(",f,", 'DateTime'))"],()=>this.emitLine("throw new Exception('Attribute Error:",R,"::",A,"');"))}phpFromObjConvert(R,A,f,E){return(0,L.matchType)(A,S=>this.emitLine(...f,...E,"; /*any*/"),S=>this.emitLine(...f,...E,"; /*null*/"),S=>this.emitLine(...f,...E,"; /*bool*/"),S=>this.emitLine(...f,...E,"; /*int*/"),S=>this.emitLine(...f,...E,"; /*float*/"),S=>this.emitLine(...f,...E,"; /*string*/"),S=>{this.emitLine(...f," array_map(function ($value) {"),this.indent(()=>{this.phpFromObjConvert(R,S.items,["return "],["$value"])}),this.emitLine("}, ",...E,");")},S=>this.emitLine(...f,this.nameForNamedType(S),"::from(",...E,"); ","/*class*/"),S=>{this.emitBlock(["function from($my): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.emitBlock(["foreach ($my as $k => $v)"],()=>{this.phpFromObjConvert(R,S.values,["$out->$k = "],["$v"])}),this.emitLine("return $out;")}),this.emitLine("return from(",...E,");")},S=>this.emitLine(...f,this.nameForNamedType(S),"::from(",...E,"); ","/*enum*/"),S=>{const P=(0,L.nullableFromUnion)(S);if(P!==null){this.emitLine("if (!is_null(",...E,")) {"),this.indent(()=>this.phpFromObjConvert(R,P,f,E)),this.emitLine("} else {"),this.indent(()=>this.emitLine("return null;")),this.emitLine("}");return}throw Error("union are not supported")},S=>{if(S.kind==="date-time"){this.emitLine("$tmp = ","DateTime::createFromFormat(DateTimeInterface::ISO8601, ",E,");"),this.transformDateTime(R,"",["$tmp"]),this.emitLine("return $tmp;");return}throw Error('transformedStringType.kind === "unknown"')})}phpSampleConvert(R,A,f,E,S,P){return(0,L.matchType)(A,y=>this.emitLine(...f,"'AnyType::",R,"::",E,"::"+S,"'",P,"/*",""+S,":",E,"*/"),y=>this.emitLine(...f,"null",P," /*",""+S,":",E,"*/"),y=>this.emitLine(...f,"true",P," /*",""+S,":",E,"*/"),y=>this.emitLine(...f,""+S,P," /*",""+S,":",E,"*/"),y=>this.emitLine(...f,""+(S+S/1e3),P," /*",""+S,":",E,"*/"),y=>this.emitLine(...f,"'",R,"::",E,"::"+S,"'",P," /*",""+S,":",E,"*/"),y=>{this.emitLine(...f," array("),this.indent(()=>{this.phpSampleConvert(R,y.items,[],[],S,"")}),this.emitLine("); /* ",""+S,":",E,"*/")},y=>this.emitLine(...f,this.nameForNamedType(y),"::sample()",P," /*",""+S,":",E,"*/"),y=>{this.emitBlock(["function sample(): stdClass"],()=>{this.emitLine("$out = new stdClass();"),this.phpSampleConvert(R,y.values,["$out->{'",R,"'} = "],E,S,";"),this.emitLine("return $out;")}),this.emitLine("return sample();")},y=>this.emitLine(...f,this.nameForNamedType(y),"::sample()",P," /*enum*/"),y=>{const r=(0,L.nullableFromUnion)(y);if(r!==null){this.phpSampleConvert(R,r,f,E,S,P);return}throw Error("union are not supported:"+y)},y=>{if(y.kind==="date-time"){const r=_.pad(""+(1+S%31),2,"0");this.emitLine(...f,"DateTime::createFromFormat(DateTimeInterface::ISO8601, '",`2020-12-${r}T12:${r}:${r}+00:00`,"')",P);return}throw Error('transformedStringType.kind === "unknown"')})}phpValidate(R,A,f,E){const S=(P,y=R)=>{this.emitBlock(["if (!",P,"(",E,"))"],()=>this.emitLine('throw new Exception("Attribute Error:',y,"::",f,'");'))};return(0,L.matchType)(A,P=>S("defined"),P=>S("is_null"),P=>S("is_bool"),P=>S("is_integer"),P=>S("is_float"),P=>S("is_string"),P=>{S("is_array"),this.emitLine("array_walk(",E,", function(",E,"_v) {"),this.indent(()=>{this.phpValidate(R,P.items,f,`${E}_v`)}),this.emitLine("});")},P=>{this.emitLine(E,"->validate();")},P=>{this.emitLine("foreach (",E," as $k => $v) {"),this.indent(()=>{this.phpValidate(R,P.values,f,"$v")}),this.emitLine("}")},P=>{this.emitLine(this.phpType(!1,P),"::to(",E,");")},P=>{const y=(0,L.nullableFromUnion)(P);if(y!==null){this.emitBlock(["if (!is_null(",E,"))"],()=>{this.phpValidate(R,y,f,E)});return}throw Error("not implemented")},P=>{if(P.kind==="date-time"){this.transformDateTime(R,f,[E]);return}throw Error(`transformedStringType.kind === ${P.kind}`)})}emitFromMethod(R,A,f,E,S){this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),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 ",R.from,"(",this.phpConvertType(f,A.type)," $value): ",this.phpType(!1,A.type)],()=>{this.phpFromObjConvert(f,A.type,["return "],["$value"])})}emitToMethod(R,A,f,E,S){this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),this.emitLine(" *")),this.emitLine(" * @throws Exception"),this.emitLine(" * @return ",this.phpConvertType(f,A.type)),this.emitLine(" */"),this.emitBlock(["public function ",R.to,"(): ",this.phpConvertType(f,A.type)],()=>{this.emitBlock(["if (",f,"::",R.validate,"($this->",E,")) "],()=>{this.phpToObjConvert(f,A.type,["return "],["$this->",E])}),this.emitLine("throw new Exception('never get to this ",f,"::",E,"');")})}emitValidateMethod(R,A,f,E,S){this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),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 ",R.validate,"(",this.phpType(!1,A.type)," $value): bool"],()=>{this.phpValidate(f,A.type,E,"$value"),this.emitLine("return true;")})}emitGetMethod(R,A,f,E,S){if(this._options.withGet){this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),this.emitLine(" *")),this._options.fastGet||this.emitLine(" * @throws Exception");const P=this.phpType(!1,A.type);this.emitLine(" * @return ",P),this.emitLine(" */"),this.emitBlock(["public function ",R.getter,"(): ",P],()=>{this._options.fastGet?this.emitLine("return $this->",E,";"):(this.emitBlock(["if (",f,"::",R.validate,"($this->",E,")) "],()=>{this.emitLine("return $this->",E,";")}),this.emitLine("throw new Exception('never get to ",R.getter," ",f,"::",E,"');"))})}}emitSetMethod(R,A,f,E,S){this._options.withSet&&(this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),this.emitLine(" *")),this.emitLine(" * @param ",this.phpType(!1,A.type,!1,"","|null")),this.emitLine(" * @throws Exception"),this.emitLine(" */"),this.emitBlock(["public function ",R.setter,"(",this.phpType(!1,A.type)," $value)"],()=>{this.emitBlock(["if (",f,"::",R.validate,"($value)) "],()=>{this.emitLine("$this->",E," = $value;")})}))}emitSampleMethod(R,A,f,E,S,P){if(this._options.withGet){this.emitLine("/**"),S!==void 0&&(this.emitLine(" * ",S),this.emitLine(" *"));const y=this.phpType(!1,A.type);this.emitLine(" * @return ",y),this.emitLine(" */"),this.emitBlock(["public static function ",R.sample,"(): ",y],()=>{this.phpSampleConvert(f,A.type,["return "],[E],P,";")})}}emitClassDefinition(R,A){this.emitFileHeader(A,[]),this.emitBlock(["class ",A],()=>{this.forEachClassProperty(R,"none",(y,r,s)=>{this.emitLine("private ",this.phpType(!1,s.type)," $",y,"; // json:",r," ",s.type.isNullable?"Optional":"Required")}),this.ensureBlankLine();const f=[],E=[];let S="";this.forEachClassProperty(R,"none",(y,r,s)=>{E.push([S,this.phpType(!1,s.type)," $",y]),S=", ",f.push([" * @param ",this.phpType(!1,s.type,!1,"","|null")," $",y,`
|
|
952
|
+
`])}),this.emitBlock([`/**
|
|
953
|
+
`,...f,` */
|
|
954
|
+
`,"public function __construct(",...E,")"],()=>{this.forEachClassProperty(R,"none",y=>{this.emitLine("$this->",y," = $",y,";")})});let P=31;this.forEachClassProperty(R,"leading-and-interposing",(y,r,s)=>{const p=this.descriptionForClassProperty(R,r),g=(0,O.defined)(this._gettersAndSettersForPropertyName.get(y));this.ensureBlankLine(),this.emitFromMethod(g,s,A,y,p),this.ensureBlankLine(),this.emitToMethod(g,s,A,y,p),this.ensureBlankLine(),this.emitValidateMethod(g,s,A,y,p),this.ensureBlankLine(),this.emitGetMethod(g,s,A,y,p),this.ensureBlankLine(),this.emitSetMethod(g,s,A,y,p),this.ensureBlankLine(),this.emitSampleMethod(g,s,A,y,p,P++)}),this.ensureBlankLine(),this.emitBlock([`/**
|
|
955
|
+
`,` * @throws Exception
|
|
956
|
+
`,` * @return bool
|
|
957
|
+
`,` */
|
|
958
|
+
`,"public function validate(): bool"],()=>{let y=[],r="return ";this.forEachClassProperty(R,"none",(s,p,g)=>{const I=(0,O.defined)(this._gettersAndSettersForPropertyName.get(s));y.push([r,A,"::",I.validate,"($this->",s,")"]),r="|| "}),y.forEach((s,p)=>{this.emitLine(...s,y.length===p+1?";":"")})}),this.ensureBlankLine(),this.emitBlock([`/**
|
|
959
|
+
`,` * @return stdClass
|
|
960
|
+
`,` * @throws Exception
|
|
961
|
+
`,` */
|
|
962
|
+
`,"public function to(): stdClass "],()=>{this.emitLine("$out = new stdClass();"),this.forEachClassProperty(R,"none",(y,r)=>{const s=(0,O.defined)(this._gettersAndSettersForPropertyName.get(y));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(R,"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 y=" ";this.forEachClassProperty(R,"none",(r,s)=>{const p=(0,O.defined)(this._gettersAndSettersForPropertyName.get(r));this.emitLine(y,A,"::",p.from,"($obj->{'",s,"'})"),y=","}),this.emitLine(");")}),this.ensureBlankLine(),this.emitBlock([`/**
|
|
968
|
+
`," * @return ",A,`
|
|
969
|
+
`,` */
|
|
970
|
+
`,"public static function sample(): ",A],()=>{this.emitLine("return new ",A,"(");let y=" ";this.forEachClassProperty(R,"none",r=>{const s=(0,O.defined)(this._gettersAndSettersForPropertyName.get(r));this.emitLine(y,A,"::",s.sample,"()"),y=","}),this.emitLine(");")})}),this.finishFile()}emitUnionAttributes(R,A){}emitUnionSerializer(R,A){}emitUnionDefinition(R,A){throw Error("emitUnionDefinition not implemented")}emitEnumSerializationAttributes(R){}emitEnumDeserializationAttributes(R){}emitEnumDefinition(R,A){this.emitFileHeader(A,[]),this.emitDescription(this.descriptionForType(R));const f="string";this.emitBlock(["class ",A],()=>{this.forEachEnumCase(R,"none",(E,S)=>{this.emitLine("public static ",A," $",E,";")}),this.emitBlock("public static function init()",()=>{this.forEachEnumCase(R,"none",(E,S)=>{this.emitLine(A,"::$",E," = new ",A,"('",S,"');")})}),this.emitLine("private ",f," $enum;"),this.emitBlock(["public function __construct(",f," $enum)"],()=>{this.emitLine("$this->enum = $enum;")}),this.ensureBlankLine(),this.emitEnumSerializationAttributes(R),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(R,"none",(E,S)=>{this.emitLine("case ",A,"::$",E,"->enum: return '",(0,e.stringEscape)(S),"';")})}),this.emitLine("}"),this.emitLine("throw new Exception('the give value is not an enum-value.');")}),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(R),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(R,"none",(E,S)=>{this.emitLine("case '",(0,e.stringEscape)(S),"': 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(R,"none",S=>{E.push([A,"::$",S])}),this.emitLine("return ",E[0],";")})}),this.emitLine(A,"::init();"),this.finishFile()}emitSourceStructure(R){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)(R))}}e.PhpRenderer=B}(Li)),Li}var mm;function Ua(){return mm||(mm=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.languageNamed=e.all=void 0;const i=et(),n=Ng(),a=Og(),l=Cg(),d=Eg(),u=Ag(),c=ja(),w=Pg(),U=Ig(),F=Rg(),O=Mg(),M=Bg(),L=Dg(),_=jg(),b=Ug(),v=xg(),h=zg(),m=Wg(),k=Y_(),B=qg(),C=tk();e.all=[new n.CSharpTargetLanguage,new a.GoTargetLanguage,new _.RustTargetLanguage,new b.CrystalTargetLanguage,new l.CPlusPlusTargetLanguage,new d.ObjectiveCTargetLanguage,new u.JavaTargetLanguage,new U.TypeScriptTargetLanguage,new c.JavaScriptTargetLanguage,new w.JavaScriptPropTypesTargetLanguage,new U.FlowTargetLanguage,new F.SwiftTargetLanguage,new O.KotlinTargetLanguage,new M.ElmTargetLanguage,new L.JSONSchemaTargetLanguage,new v.RubyTargetLanguage,new h.DartTargetLanguage,new m.PythonTargetLanguage("Python",["python","py"],"py"),new k.PikeTargetLanguage,new B.HaskellTargetLanguage,new C.PhpTargetLanguage];function R(A,f){f===void 0&&(f=e.all);const E=(0,i.iterableFind)(f,S=>S.names.indexOf(A)>=0||S.displayName===A);return E!==void 0?E:(0,i.iterableFind)(f,S=>S.extension===A)}e.languageNamed=R}(el)),el}var Is={},_i={},ki={},ym;function Vc(){if(ym)return ki;ym=1,Object.defineProperty(ki,"__esModule",{value:!0}),ki.UnionBuilder=ki.TypeRefUnionAccumulator=ki.UnionAccumulator=void 0;const e=et(),i=mt(),n=pt(),a=At(),l=Qe(),d=Pi();function u(v,h){return v===void 0?h:(0,a.combineTypeAttributes)("union",v,h)}function c(v,h,m){v.set(h,u(v.get(h),m))}function w(v,h,m){let k=v.get(h);k===void 0&&(k=[],v.set(h,k)),k.push(m)}function U(v){return(0,e.mapMap)(v,h=>(0,a.combineTypeAttributes)("union",h))}function F(v,h,m){const k=(0,l.defined)(v.get(h));v.delete(h),c(v,m,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,m){(0,l.assert)(h!=="any","any must be added with addAny"),w(this._nonStringTypeAttributes,h,m)}addFullStringType(h,m){let k;m===void 0?m=d.stringTypesTypeAttributeKind.tryGetInAttributes(h):k=d.stringTypesTypeAttributeKind.makeAttributes(m),m===void 0&&(m=d.StringTypes.unrestricted,k=d.stringTypesTypeAttributeKind.makeAttributes(m));const B=this._nonStringTypeAttributes.get("enum");m.isRestricted&&(0,l.assert)(B===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,m,k){if(h==="string"){this.addFullStringType(m,k);return}w(this._stringTypeAttributes,h,m),k!==void 0&&w(this._stringTypeAttributes,h,d.stringTypesTypeAttributeKind.makeAttributes(k))}addArray(h,m){this.arrayData.push(h),w(this._nonStringTypeAttributes,"array",m)}addObject(h,m){this.objectData.push(h),w(this._nonStringTypeAttributes,"object",m)}addEnum(h,m){if(this._stringTypeAttributes.get("string")!==void 0){w(this._stringTypeAttributes,"string",m);return}w(this._nonStringTypeAttributes,"enum",m),(0,e.setUnionInto)(this._enumCases,h)}addStringCases(h,m){this.addFullStringType(m,d.StringTypes.fromCases(h))}addStringCase(h,m,k){this.addFullStringType(k,d.StringTypes.fromCase(h,m))}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 m=(0,a.combineTypeAttributes)("union",Array.from(h.values()));return new Map([["any",m]])}return this._conflateNumbers&&this.have("integer")&&this.have("double")&&F(h,"integer","double"),this.have("map")&&F(h,"map","class"),h}get lostTypeAttributes(){return this._lostTypeAttributes}}ki.UnionAccumulator=O;class M{getAttributes(){return a.emptyTypeAttributes}}function L(v){const h=new Map,m=new Map,k=new Set;let B=new Set;function C(S,P,y){if(S instanceof i.UnionType){k.add(S),y&&(B=B.add(S)),y=y&&S.members.size===1,P.push(S);for(const r of S.members)C(r,P,y);P.pop()}else{(0,e.mapUpdateInto)(h,S,r=>r===void 0?new Set(P):(0,e.setUnionInto)(r,P));for(const r of P)(0,e.mapUpdateInto)(m,r,s=>s===void 0?new Set([S]):s.add(S))}}const R=[new M],A=Array.from(v);for(const S of A)C(S,R,A.length===1);const f=(0,e.mapMap)(h,(S,P)=>{const y=Array.from(S).filter(s=>(0,l.defined)(m.get(s)).size===1);(0,l.assert)(y.every(s=>(0,l.defined)(m.get(s)).has(P)),"We messed up bookkeeping");const r=y.map(s=>s.getAttributes());return(0,a.combineTypeAttributes)("union",[P.getAttributes()].concat(r))}),E=Array.from(k).map(S=>{const P=m.get(S);if(P!==void 0&&P.size===1)return a.emptyTypeAttributes;const y=S.getAttributes();return B.has(S)?y:(0,a.makeTypeAttributesInferred)(y)});return[f,(0,a.combineTypeAttributes)("union",E)]}class _ extends O{addType(h,m){(0,n.matchTypeExhaustive)(h,k=>this.addNone(m),k=>this.addAny(m),k=>this.addPrimitive("null",m),k=>this.addPrimitive("bool",m),k=>this.addPrimitive("integer",m),k=>this.addPrimitive("double",m),k=>this.addStringType("string",m),k=>this.addArray(k.items.typeRef,m),k=>this.addObject(k.typeRef,m),k=>this.addObject(k.typeRef,m),k=>this.addObject(k.typeRef,m),k=>this.addEnum(k.cases,m),k=>(0,l.panic)("The unions should have been eliminated in attributesForTypesInUnion"),k=>this.addStringType(k.kind,m))}addTypes(h){const[m,k]=L(h);for(const[B,C]of m)this.addType(B,C);return k}}ki.TypeRefUnionAccumulator=_;let b=class{constructor(h){this.typeBuilder=h}makeTypeOfKind(h,m,k,B){switch(m){case"string":return this.typeBuilder.getStringType(k,void 0,B);case"enum":return this.typeBuilder.getEnumType(k,h.enumCases,B);case"object":return this.makeObject(h.objectData,k,B);case"array":return this.makeArray(h.arrayData,k,B);default:return(0,i.isPrimitiveTypeKind)(m)?this.typeBuilder.getPrimitiveType(m,k,B):m==="union"||m==="class"||m==="map"||m==="intersection"?(0,l.panic)(`getMemberKinds() shouldn't return ${m}`):(0,l.assertNever)(m)}}buildUnion(h,m,k,B){const C=h.getMemberKinds();if(h.lostTypeAttributes&&this.typeBuilder.setLostTypeAttributes(),C.size===1){const[[E,S]]=Array.from(C),P=(0,a.combineTypeAttributes)("union",k,(0,a.increaseTypeAttributesDistance)(S));return this.makeTypeOfKind(h,E,P,B)}const R=m?this.typeBuilder.getUniqueUnionType(k,void 0,B):void 0,A=[];for(const[E,S]of C)A.push(this.makeTypeOfKind(h,E,S,void 0));const f=new Set(A);return R!==void 0?(this.typeBuilder.setSetOperationMembers(R,f),R):this.typeBuilder.getUnionType(k,f,B)}};return ki.UnionBuilder=b,ki}var gm;function Zc(){if(gm)return _i;gm=1,Object.defineProperty(_i,"__esModule",{value:!0}),_i.unifyTypes=_i.unionBuilderForUnification=_i.UnifyUnionBuilder=void 0;const e=et(),i=mt(),n=pt(),a=Vc(),l=Qe(),d=At(),u=ni();function c(M,L,_){let b=!1,v=new Set;for(const R of M)(0,e.setUnionInto)(v,R.getProperties().keys());let h=Array.from(v).map(R=>[R,new Set,!1]),m;for(const R of M){let A=R.getAdditionalProperties();A!==void 0&&(m===void 0&&(m=new Set),A!==void 0&&m.add(A));for(let f=0;f<h.length;f++){let[E,S,P]=h[f];const y=R.getProperties().get(E);y===void 0?(P=!0,A!==void 0&&A.kind!=="any"&&S.add(A)):(y.isOptional&&(P=!0),S.add(y.type)),h[f][2]=P}}const k=m===void 0?void 0:_(m),B=h.map(([R,A,f])=>[R,L.makeClassProperty(_(A),f)]);return[new Map(B),k,b]}function w(M){let L=!1,_=!1,b=!1;for(const v of M){v.getProperties().size>0&&(L=!0);const h=v.getAdditionalProperties();h!==void 0&&(_=!0,h.kind!=="any"&&(b=!0))}return{hasProperties:L,hasAdditionalProperties:_,hasNonAnyAdditionalProperties:b}}class U extends a.UnionBuilder{constructor(L,_,b,v){super(L),this._makeObjectTypes=_,this._makeClassesFixed=b,this._unifyTypes=v}makeObject(L,_,b){const v=this.typeBuilder.lookupTypeRefs(L,b);if(v!==void 0)return(0,l.assert)(b===void 0||v===b,"The forwarding ref must be consumed"),this.typeBuilder.addAttributes(v,_),v;if(L.length===1)return this.typeBuilder.reconstituteTypeRef(L[0],_,b);const h=L.map(C=>(0,n.assertIsObject)((0,u.derefTypeRef)(C,this.typeBuilder))),{hasProperties:m,hasAdditionalProperties:k,hasNonAnyAdditionalProperties:B}=w(h);if(!this._makeObjectTypes&&(B||!m&&k)){const C=new Set;for(const A of h)(0,e.setUnionInto)(C,Array.from(A.getProperties().values()).map(f=>f.typeRef));const R=new Set(h.filter(A=>A.getAdditionalProperties()!==void 0).map(A=>(0,l.defined)(A.getAdditionalProperties()).typeRef));return(0,e.setUnionInto)(C,R),this.typeBuilder.getMapType(_,this._unifyTypes(Array.from(C)))}else{const[C,R,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(_,C,R,b):((0,l.assert)(R===void 0,"We have additional properties but want to make a class"),this.typeBuilder.getUniqueClassType(_,this._makeClassesFixed,C,b))}}makeArray(L,_,b){return this.typeBuilder.getArrayType(_,this._unifyTypes(L),b)}}_i.UnifyUnionBuilder=U;function F(M,L,_,b){return new U(M,L,_,v=>O(new Set(v.map(h=>(0,u.derefTypeRef)(h,M))),d.emptyTypeAttributes,M,F(M,L,_,b),b))}_i.unionBuilderForUnification=F;function O(M,L,_,b,v,h){if(L=_.reconstituteTypeAttributes(L),M.size===0)return(0,l.panic)("Cannot unify empty set of types");if(M.size===1){const R=(0,l.defined)((0,e.iterableFirst)(M));if(!(R instanceof i.UnionType))return _.reconstituteTypeRef(R.typeRef,L,h)}const m=Array.from(M).map(R=>R.typeRef),k=_.lookupTypeRefs(m,h);if(k!==void 0)return _.addAttributes(k,L),k;const B=new a.TypeRefUnionAccumulator(v),C=_.reconstituteTypeAttributes(B.addTypes(M));return L=(0,d.combineTypeAttributes)("union",L,C),_.withForwardingRef(h,R=>(_.registerUnion(m,R),b.buildUnion(B,!1,L,R)))}return _i.unifyTypes=O,_i}var bm;function nk(){if(bm)return Is;bm=1,Object.defineProperty(Is,"__esModule",{value:!0}),Is.combineClasses=void 0;const e=mt(),i=pt(),n=Qe(),a=Zc(),l=3/4;function d(F,O){return(0,e.setOperationCasesEqual)(F,O,!0,(M,L)=>M.structurallyCompatible(L,!0))}function u(F,O,M){const L=F.getProperties(),_=O.getProperties();if(M){if(L.size!==_.size)return!1}else if(L.size<_.size*l||_.size<L.size*l)return!1;let b,v;L.size>_.size?(b=L,v=_):(b=_,v=L);let h;if(M)h=0;else{const B=Math.ceil(b.size*l);h=v.size-B}(0,n.assert)(h>=0,"Max faults negative");const m=[];let k=0;for(const[B]of v)if(b.has(B))m.push(B);else if(k+=1,k>h)break;if(k>h)return!1;for(const B of m){let C=v.get(B),R=b.get(B);if(C===void 0||R===void 0)return(0,n.panic)(`Both classes should have property ${B}`);const A=(0,i.nonNullTypeCases)(C.type),f=(0,i.nonNullTypeCases)(R.type);if(A.size>0&&f.size>0&&!d(A,f))return!1}return!0}function c(F,O,M){for(const L of O.prototypes)if(L.structurallyCompatible(F))return O.members.push(F),!0;for(const L of O.prototypes)if(u(L,F,M))return O.prototypes.push(F),O.members.push(F),!0;return!1}function w(F,O,M){const L=Array.from(F.allNamedTypesSeparated().objects).filter(b=>b instanceof e.ClassType&&!b.isFixed),_=[];for(const b of L){let v;for(let m=0;m<_.length;m++)if(c(b,_[m],O)){v=m;break}v===void 0&&(v=_.length,_.push({members:[b],prototypes:[b]}));const h=_[0];_[0]=_[v],_[v]=h}return _.map(b=>b.members).filter(b=>b.length>1)}function U(F,O,M,L,_,b){const v=F.time(" find similarity cliques",()=>w(O,_));function h(m,k,B){(0,n.assert)(m.size>0,"Clique can't be empty");const C=(0,i.combineTypeAttributesOfTypes)("union",m);return(0,a.unifyTypes)(m,C,k,(0,a.unionBuilderForUnification)(k,!1,!1,L),L,B)}return O.rewrite("combine classes",F.stringTypeMapping,M,v,b,h)}return Is.combineClasses=U,Is}var Rs={},an={},Ms={},Tm;function ik(){return Tm||(Tm=1,Object.defineProperty(Ms,"__esModule",{value:!0}),Ms.encodedMarkovChain=void 0,Ms.encodedMarkovChain="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"),Ms}var vm;function Jg(){if(vm)return an;vm=1,Object.defineProperty(an,"__esModule",{value:!0}),an.test=an.generate=an.evaluate=an.evaluateFull=an.load=an.train=void 0;const e=Qe(),i=ik();function n(){const L=[];for(let _=0;_<128;_++)L.push(null);return{count:0,arr:L}}function a(L,_,b){if(b>=_.length)return L;let v=_.charCodeAt(b);v>=128&&(v=0);const h=L.arr[v];if(h!==null)return typeof h=="object"?a(h,_,b+1):h/L.count}function l(L,_,b){let v=_.charCodeAt(b);if(v>=128&&(v=0),b>=_.length-1){if(typeof L!="object")return(0,e.panic)("Malformed trie");let m=L.arr[v];if(m===null)m=0;else if(typeof m=="object")return(0,e.panic)("Malformed trie");L.arr[v]=m+1,L.count+=1;return}let h=L.arr[v];return h===null&&(L.arr[v]=h=n()),typeof h!="object"?(0,e.panic)("Malformed trie"):l(h,_,b+1)}function d(L,_){const b=n();for(const v of L)for(let h=_;h<=v.length;h++)l(b,v.slice(h-_,h),0);return{trie:b,depth:_}}an.train=d;function u(){return JSON.parse((0,e.inflateBase64)(i.encodedMarkovChain))}an.load=u;function c(L,_){const{trie:b,depth:v}=L;if(_.length<v)return[1,[]];let h=1;const m=[];for(let k=v;k<=_.length;k++){let B=a(b,_.slice(k-v,k),0);if(typeof B=="object")return(0,e.panic)("Did we mess up the depth?");B===void 0&&(B=1e-4),m.push(B),h=h*B}return[Math.pow(h,1/(_.length-v+1)),m]}an.evaluateFull=c;function w(L,_){return c(L,_)[0]}an.evaluate=w;function U(L,_){const b=_-L;return L+Math.floor(Math.random()*b)}function F(L,_,b){(0,e.assert)(_.length===L.depth-1,"State and chain length don't match up");const v=a(L.trie,_,0);if(typeof v=="number")return(0,e.panic)("Wrong depth?");if(v===void 0)return String.fromCharCode(U(32,127));const h=v.arr.map((C,R)=>C===null?R===0?0:b:C);let m=0;for(const C of h)m+=C;const k=U(0,m);let B=0;for(let C=0;C<h.length;C++)if(B+=h[C],k<B)return String.fromCharCode(C);return(0,e.panic)("We screwed up bookkeeping, or randomInt")}an.generate=F;function O(L,_){console.log(`"${_}": ${w(L,_)}`)}function M(){const L=u();O(L,"url"),O(L,"json"),O(L,"my_property"),O(L,"ordinary"),O(L,"different"),O(L,"189512"),O(L,"2BTZIqw0ntH9MvilQ3ewNY"),O(L,"0uBTNdNGb2OY5lou41iYL52LcDq2"),O(L,"-KpqHmWuDOUnr1hmAhxp"),O(L,"granularity"),O(L,"coverage"),O(L,"postingFrequency"),O(L,"dataFrequency"),O(L,"units"),O(L,"datasetOwner"),O(L,"organization"),O(L,"timePeriod"),O(L,"contactInformation"),O(L,"🚾 🆒 🆓 🆕 🆖 🆗 🆙 🏧")}return an.test=M,an}var Sm;function rk(){if(Sm)return Rs;Sm=1,Object.defineProperty(Rs,"__esModule",{value:!0}),Rs.inferMaps=void 0;const e=et(),i=mt(),n=pt(),a=Qe(),l=Zc(),d=Jg(),u=20,c=50;let w;function U(M){return w===void 0&&(w=(0,d.load)()),(0,d.evaluate)(w,M)}function F(M){const L=M.size;if(L<2)return;if((0,e.iterableEvery)(M.keys(),h=>/^[0-9]+$/.test(h)))return(0,e.setMap)(M.values(),h=>h.type);if(L<c&&(0,e.iterableEvery)(M.values(),h=>(0,i.isPrimitiveStringTypeKind)(h.type.kind)||h.type.kind==="null"))return;if(L<u){const k=Array.from(M.keys()).map(U).reduce((f,E)=>f*E,1),B=Math.pow(k,1/L),C=5,R=Math.pow(22,C),A=Math.pow(L+2,C)/R+(.0025-Math.pow(3,C)/R);if(B>A)return}let _;const b=new Set;let v=!0;for(const[,h]of M){const m=(0,n.removeNullFromType)(h.type)[1];if(m.size>0)if(_!==void 0){if(!(0,i.setOperationCasesEqual)(m,_,!0,(k,B)=>k.structurallyCompatible(B,!0))){v=!1;break}}else _=m;b.add(h.type)}if(v)return b}function O(M,L,_,b){function v(m,k,B){const C=(0,a.defined)((0,e.iterableFirst)(m)),R=C.getProperties(),A=F(R);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,_),_),B)}const h=Array.from(M.allNamedTypesSeparated().objects).filter(m=>m instanceof i.ClassType?!m.isFixed&&F(m.getProperties())!==void 0:!1);return M.rewrite("infer maps",L,!1,h.map(m=>[m]),b,v)}return Rs.inferMaps=O,Rs}var Yn={},wm;function sk(){if(wm)return Yn;wm=1;var e=Yn&&Yn.__createBinding||(Object.create?function(M,L,_,b){b===void 0&&(b=_);var v=Object.getOwnPropertyDescriptor(L,_);(!v||("get"in v?!L.__esModule:v.writable||v.configurable))&&(v={enumerable:!0,get:function(){return L[_]}}),Object.defineProperty(M,b,v)}:function(M,L,_,b){b===void 0&&(b=_),M[b]=L[_]}),i=Yn&&Yn.__setModuleDefault||(Object.create?function(M,L){Object.defineProperty(M,"default",{enumerable:!0,value:L})}:function(M,L){M.default=L}),n=Yn&&Yn.__importStar||function(M){if(M&&M.__esModule)return M;var L={};if(M!=null)for(var _ in M)_!=="default"&&Object.prototype.hasOwnProperty.call(M,_)&&e(L,M,_);return i(L,M),L};Object.defineProperty(Yn,"__esModule",{value:!0}),Yn.gatherNames=void 0;const a=n(Tg()),l=et(),d=mt(),u=pt(),c=Hi(),w=Qe(),U=oo();class F{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(L){this._present.has(L)||(this._queue.push(L),this._present.add(L))}unshift(){(0,w.assert)(!this.isEmpty,"Trying to unshift from an empty queue");const L=this._queue[this._front];return L===void 0?(0,w.panic)("Value should have been present in queue"):(this._queue[this._front]=void 0,this._front+=1,this._present.delete(L),this._front>this.size&&(this._queue=this._queue.slice(this._front),this._front=0),L)}}function O(M,L,_){function b(f,E){M.attributeStore.set(c.namesTypeAttributeKind,f,E)}if(L)for(const f of M.allTypesUnordered())f.hasNames&&b(f,f.getNames().clearInferred());const v=new F,h=new Map;function m(f,E){if(f.hasNames){const r=f.getNames();r.areInferred||(E=r.names)}const S=h.get(f);if(S===null)return;let P;S===void 0?P=E:E===null?P=null:P=(0,l.setUnion)(S,E),P!==null&&P.size>=c.tooManyNamesThreshold&&(P=null),h.set(f,P);const y=(0,U.transformationForType)(f);if(y!==void 0&&m(y.targetType,E),S!==void 0&&P!==null){if(S.size===P.size)return}else if(S===P)return;v.push(f)}for(const[f,E]of M.topLevels)m(E,new Set([f]));for(;!v.isEmpty;){const f=v.unshift(),E=(0,w.defined)(h.get(f));if(f instanceof d.ObjectType){const S=f.getSortedProperties();for(const[y,r]of S)m(r.type,new Set([y]));const P=f.getAdditionalProperties();P!==void 0&&m(P,E===null?null:(0,l.setMap)(E,a.singular))}else(0,u.matchCompoundType)(f,S=>{m(S.items,E===null?null:(0,l.setMap)(E,a.singular))},S=>(0,w.panic)("We handled this above"),S=>(0,w.panic)("We handled this above"),S=>(0,w.panic)("We handled this above"),S=>{const P=(0,l.setSortBy)(S.members,y=>y.kind);for(const y of P)m(y,E)})}if(_)for(const f of M.allTypesUnordered()){const E=h.get(f);if(E===void 0)return;const S=f.index;console.log(`${S}: ${E===null?"*** too many ***":Array.from(E).join(" ")}`)}const k=new Map,B=new Map,C=new Map;function R(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,S){const P=(0,w.defined)(h.get(E));let y=C.get(f);if(y===void 0&&(y=new Set),y.has(E))return;y.add(E),C.set(f,y);const r=(0,U.transformationForType)(E);r!==void 0&&A(f,r.targetType,S);let s=B.get(E),p=k.get(E);if(P===null)s=null,p=null;else{if(f!==void 0&&s!==null){const g=h.get(f);if(g===null)s=null;else if(g!==void 0){const I=[];for(const x of P)I.push(...Array.from(g).map(q=>`${q}_${x}`)),I.push(...Array.from(g).map(q=>`${q}_${x}_${E.kind}`));s=R(s,I)}}if(S!==void 0&&p!==null){const g=[];for(const I of P)g.push(`${I}_${S}`);p=R(p,g)}}if(s!==void 0&&B.set(E,s),p!==void 0&&k.set(E,p),E instanceof d.ObjectType){const g=E.getSortedProperties();for(const[,x]of g)A(E,x.type,void 0);const I=E.getAdditionalProperties();I!==void 0&&A(g.size===0?f:E,I,"value")}else(0,u.matchCompoundType)(E,g=>{A(f,g.items,"element")},g=>(0,w.panic)("We handled this above"),g=>(0,w.panic)("We handled this above"),g=>(0,w.panic)("We handled this above"),g=>{const I=(0,l.setSortBy)(g.members,D=>D.kind),T=g.hasNames&&!g.getNames().areInferred||(0,u.nullableFromUnion)(g)===null?g:f;for(const D of I)A(T,D,void 0)})}for(const[,f]of M.topLevels)A(void 0,f,void 0);for(const f of M.allTypesUnordered()){const E=h.get(f);if(E===void 0)continue;if(E===null){k.set(f,null);continue}let S=k.get(f);S!==null&&(S===void 0&&(S=new Set),S=(0,l.setUnion)(S,(0,l.setMap)(E,P=>`${P}_${f.kind}`)),k.set(f,S))}for(const f of M.allTypesUnordered()){const E=h.get(f);if(E===void 0)continue;let S;if(E===null)S=new c.TooManyTypeNames(1);else{const P=B.get(f),y=k.get(f);let r;P===null&&y===null?r=void 0:(y!=null?r=y:r=new Set,P!=null&&(r=(0,l.setUnion)(r,P))),S=c.TypeNames.makeWithDistance(E,r,L?1:10)}b(f,f.hasNames?f.getNames().add([S]):S)}}return Yn.gatherNames=O,Yn}var Bs={},Lm;function ok(){if(Lm)return Bs;Lm=1,Object.defineProperty(Bs,"__esModule",{value:!0}),Bs.expandStrings=void 0;const e=et(),i=pt(),n=Qe(),a=At(),l=Pi(),d=10,u=5,c=3/4;function w({numValues:M,cases:L}){return M>=d&&L.size<Math.sqrt(M)}function U(M,L,_){const b=_?M.size:Math.min(M.size,L.size);return(0,e.setIntersect)(M,L).size>=b*c}function F(M){return M.length===1&&M[0]===""}function O(M,L,_){const b=M.stringTypeMapping,v=Array.from(L.allTypesUnordered()).filter(C=>C.kind==="string"&&(0,i.stringTypesForType)(C).isRestricted);function h(C){const A=(0,i.stringTypesForType)(C).applyStringTypeMapping(b);if(!A.isRestricted)return;const f=(0,n.defined)(A.cases);if(f.size===0)return;const E=(0,e.iterableReduce)(f.values(),0,(S,P)=>S+P);if(_!=="all"){const S=Array.from(f.keys());if(F(S)||!(0,e.iterableSome)(S,y=>/^(\-|\+)?[0-9]+(\.[0-9]+)?$/.test(y)===!1))return}return{cases:new Set(f.keys()),numValues:E}}const m=new Map,k=[];if(_!=="none"){let C=function(R,A){return k.findIndex(f=>U(R,f,A))};for(const R of v){const A=h(R);A!==void 0&&m.set(R,A)}for(const R of Array.from(m.keys())){const A=(0,n.defined)(m.get(R)),f=A.cases;if(_==="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)}m.delete(R)}_==="all"&&(0,n.assert)(m.size===0);for(const[,R]of m.entries()){if(R.numValues<u)continue;const A=C(R.cases,!0);A>=0&&(k[A]=(0,e.setUnion)(k[A],R.cases))}}function B(C,R,A){(0,n.assert)(C.size===1);const f=(0,n.defined)((0,e.iterableFirst)(C)),E=(0,i.stringTypesForType)(f),S=(0,e.mapFilter)(f.getAttributes(),g=>g!==E),P=E.applyStringTypeMapping(b);if(!P.isRestricted)return R.getStringType(S,l.StringTypes.unrestricted,A);const y=_==="all"?e.areEqual:e.setIsSuperset,r=[],s=(0,n.defined)(P.cases);if(s.size>0){const g=new Set(s.keys()),I=k.find(x=>y(x,g));if(_!=="none"&&!F(Array.from(g))&&I!==void 0)r.push(R.getEnumType(a.emptyTypeAttributes,I));else return R.getStringType(S,l.StringTypes.unrestricted,A)}const p=P.transformations;if(r.length===0&&p.size===1){const g=(0,n.defined)((0,e.iterableFirst)(p));return R.getPrimitiveType(g,S,A)}return r.push(...Array.from(p).map(g=>R.getPrimitiveType(g))),(0,n.assert)(r.length>0,"We got an empty string type"),R.getUnionType(S,new Set(r),A)}return L.rewrite("expand strings",b,!1,v.map(C=>[C]),M.debugPrintReconstitution,B)}return Bs.expandStrings=O,Bs}var Ds={},_m;function ak(){if(_m)return Ds;_m=1,Object.defineProperty(Ds,"__esModule",{value:!0}),Ds.flattenUnions=void 0;const e=et(),i=ni(),n=mt(),a=pt(),l=Qe(),d=Zc(),u=yn(),c=At();function w(U,F,O,M,L){let _=!1;function b(B,C,R){const A=new d.UnifyUnionBuilder(C,M,!0,f=>((0,l.assert)(f.length>0,"Must have at least one type to build union"),f=f.map(E=>C.reconstituteType((0,i.derefTypeRef)(E,U))),f.length===1?f[0]:(_=!0,C.getUnionType(c.emptyTypeAttributes,new Set(f)))));return(0,d.unifyTypes)(B,c.emptyTypeAttributes,C,A,O,R)}const v=(0,e.setFilter)(U.allTypesUnordered(),B=>B instanceof n.UnionType),h=(0,e.setFilter)(v,B=>!B.isCanonical);let m=!1;const k=(0,a.makeGroupsToFlatten)(h,B=>((0,u.messageAssert)(B.size>0,"IRNoEmptyUnions",{}),(0,e.iterableSome)(B,C=>C instanceof n.IntersectionType)?(m=!0,!1):!0));return U=U.rewrite("flatten unions",F,!1,k,L,b),[U,!_&&!m]}return Ds.flattenUnions=w,Ds}var js={},km;function uk(){if(km)return js;km=1,Object.defineProperty(js,"__esModule",{value:!0}),js.resolveIntersections=void 0;const e=et(),i=Vc(),n=mt(),a=pt(),l=Qe(),d=At();function u(O){const M=(0,a.setOperationMembersRecursively)(O,void 0)[0];return M.size<=1?!0:(0,e.iterableEvery)(M,L=>!(L instanceof n.UnionType)||L.isCanonical)}function c(O){return(0,e.mapMapEntries)(O.entries(),M=>[M.kind,M.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(M){const L=(0,e.setFilter)(M,h=>(0,n.isPrimitiveTypeKind)(h.kind)),_=c(L);(0,e.mapMergeWithInto)(this._primitiveAttributes,(h,m)=>(0,d.combineTypeAttributes)("intersect",h,m),_);const b=(0,e.setMap)(L,h=>h.kind);if(this._primitiveTypes===void 0){this._primitiveTypes=new Set(b);return}const v=(0,e.iterableFind)(this._primitiveTypes,n.isNumberTypeKind)!==void 0&&(0,e.iterableFind)(b,n.isNumberTypeKind)!==void 0;this._primitiveTypes=(0,e.setIntersect)(this._primitiveTypes,b),v&&(0,e.iterableFind)(this._primitiveTypes,n.isNumberTypeKind)===void 0&&(this._primitiveTypes=this._primitiveTypes.add("integer"))}updateArrayItemTypes(M){const L=(0,e.iterableFind)(M,_=>_ instanceof n.ArrayType);if(L===void 0){this._arrayItemTypes=!1;return}this._arrayAttributes=(0,d.combineTypeAttributes)("intersect",this._arrayAttributes,L.getAttributes()),this._arrayItemTypes===void 0?this._arrayItemTypes=new Set:this._arrayItemTypes!==!1&&this._arrayItemTypes.add(L.items)}updateObjectProperties(M){const L=(0,e.iterableFind)(M,v=>v instanceof n.ObjectType);if(L===void 0){this._objectProperties=void 0,this._additionalPropertyTypes=void 0;return}this._objectAttributes=(0,d.combineTypeAttributes)("intersect",this._objectAttributes,L.getAttributes());const _=L.getAdditionalProperties();if(this._objectProperties===void 0){(0,l.assert)(this._additionalPropertyTypes===void 0);return}const b=(0,e.setUnionInto)(new Set(this._objectProperties.keys()),L.getProperties().keys());for(const v of b){const h=(0,l.defined)(this._objectProperties).get(v),m=L.getProperties().get(v);if(h!==void 0&&m!==void 0){const k=new n.GenericClassProperty(h.typeData.add(m.type),h.isOptional&&m.isOptional);(0,l.defined)(this._objectProperties).set(v,k)}else if(h!==void 0&&_!==void 0){const k=new n.GenericClassProperty(h.typeData.add(_),h.isOptional);(0,l.defined)(this._objectProperties).set(v,k)}else if(h!==void 0)(0,l.defined)(this._objectProperties).delete(v);else if(m!==void 0&&this._additionalPropertyTypes!==void 0){const k=new Set(this._additionalPropertyTypes).add(m.type);(0,l.defined)(this._objectProperties).set(v,new n.GenericClassProperty(k,m.isOptional))}else if(m!==void 0)(0,l.defined)(this._objectProperties).delete(v);else return(0,l.mustNotHappen)()}this._additionalPropertyTypes!==void 0&&_!==void 0?this._additionalPropertyTypes.add(_):(this._additionalPropertyTypes!==void 0||_!==void 0)&&(this._additionalPropertyTypes=void 0,this._lostTypeAttributes=!0)}addUnionSet(M){this.updatePrimitiveTypes(M),this.updateArrayItemTypes(M),this.updateObjectProperties(M)}addType(M){let L=M.getAttributes();return(0,a.matchTypeExhaustive)(M,_=>(0,l.panic)("There shouldn't be a none type"),_=>(0,l.panic)("The any type should have been filtered out in setOperationMembersRecursively"),_=>this.addUnionSet([_]),_=>this.addUnionSet([_]),_=>this.addUnionSet([_]),_=>this.addUnionSet([_]),_=>this.addUnionSet([_]),_=>this.addUnionSet([_]),_=>(0,l.panic)("We should never see class types in intersections"),_=>(0,l.panic)("We should never see map types in intersections"),_=>this.addUnionSet([_]),_=>(0,l.panic)("We should never see enum types in intersections"),_=>{L=(0,d.combineTypeAttributes)("intersect",[L].concat(Array.from(_.members).map(b=>b.getAttributes()))),this.addUnionSet(_.members)},_=>this.addUnionSet([_])),(0,d.makeTypeAttributesInferred)(L)}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 M=(0,e.mapMap)((0,l.defined)(this._primitiveTypes).entries(),_=>(0,l.defined)(this._primitiveAttributes.get(_))),L=this._primitiveAttributes.get("double");return L!==void 0&&!M.has("double")&&M.has("integer")&&(0,e.mapUpdateInto)(M,"integer",_=>(0,d.combineTypeAttributes)("intersect",(0,l.defined)(_),L)),this._arrayItemTypes!==void 0&&this._arrayItemTypes!==!1?M.set("array",this._arrayAttributes):this._arrayAttributes.size>0&&(this._lostTypeAttributes=!0),this._objectProperties!==void 0?M.set("object",this._objectAttributes):this._objectAttributes.size>0&&(this._lostTypeAttributes=!0),M}get lostTypeAttributes(){return this._lostTypeAttributes}}class U extends i.UnionBuilder{constructor(){super(...arguments),this._createdNewIntersections=!1}makeIntersection(M,L){const _=(0,e.setMap)(M,v=>this.typeBuilder.reconstituteTypeRef(v.typeRef)),b=(0,l.defined)((0,e.iterableFirst)(_));return _.size===1?(this.typeBuilder.addAttributes(b,L),b):(this._createdNewIntersections=!0,this.typeBuilder.getUniqueIntersectionType(L,_))}get createdNewIntersections(){return this._createdNewIntersections}makeObject(M,L,_){if(M===void 0)return(0,l.panic)("Either properties or additional properties must be given to make an object type");const[b,v]=M,h=(0,e.mapMap)(b,k=>this.typeBuilder.makeClassProperty(this.makeIntersection(k.typeData,d.emptyTypeAttributes),k.isOptional)),m=v===void 0?void 0:this.makeIntersection(v,d.emptyTypeAttributes);return this.typeBuilder.getUniqueObjectType(L,h,m,_)}makeArray(M,L,_){const b=this.makeIntersection(M,d.emptyTypeAttributes);return this.typeBuilder.getArrayType(L,b,_)}}function F(O,M,L){let _=!1;function b(k,B,C){const R=(0,e.setFilter)(k,s=>s instanceof n.IntersectionType),[A,f]=(0,a.setOperationMembersRecursively)(Array.from(R),"intersect");if(A.size===0)return B.getPrimitiveType("any",f,C);if(A.size===1)return B.reconstituteType((0,l.defined)((0,e.iterableFirst)(A)),f,C);const E=new w,S=(0,d.makeTypeAttributesInferred)((0,d.combineTypeAttributes)("intersect",Array.from(A).map(s=>E.addType(s)))),P=(0,d.combineTypeAttributes)("intersect",f,S),y=new U(B),r=y.buildUnion(E,!0,P,C);return y.createdNewIntersections&&(_=!0),r}const v=(0,e.setFilter)(O.allTypesUnordered(),k=>k instanceof n.IntersectionType),h=(0,e.setFilter)(v,u),m=(0,a.makeGroupsToFlatten)(h,void 0);return O=O.rewrite("resolve intersections",M,!1,m,L,b),[O,!_&&v.size===h.size]}return js.resolveIntersections=F,js}var Us={},Nm;function lk(){if(Nm)return Us;Nm=1,Object.defineProperty(Us,"__esModule",{value:!0}),Us.replaceObjectType=void 0;const e=et(),i=Qe(),n=At();function a(l,d,u,c,w){function U(L,_,b){const v=(0,i.defined)((0,e.iterableFirst)(L)),h=v.getAttributes(),m=v.getProperties(),k=v.getAdditionalProperties();function B(){return(0,e.mapMap)(m,E=>_.makeClassProperty(_.reconstituteTypeRef(E.typeRef),E.isOptional))}function C(){return _.getUniqueClassType(h,!0,B(),b)}function R(){return _.reconstituteType((0,i.defined)(k))}if(k===void 0)return C();if(m.size===0)return _.getMapType(h,R(),b);if(k.kind==="any")return _.setLostTypeAttributes(),C();const A=(0,e.setMap)(m.values(),E=>E.type).add(k);let f=_.lookupTypeRefs(Array.from(A).map(E=>E.typeRef));if(f===void 0){const E=(0,e.setMap)(A,S=>_.reconstituteType(S));f=_.getUniqueUnionType(n.emptyTypeAttributes,new Set(E))}return _.getMapType(h,f,b)}const F=(0,e.setFilter)(l.allTypesUnordered(),L=>L.kind==="object"),O=c?(0,e.setFilter)(F,L=>L.getProperties().size===0||L.getAdditionalProperties()===void 0):F,M=Array.from(O).map(L=>[L]);return l.rewrite("replace object type",d,!1,M,w,U)}return Us.replaceObjectType=a,Us}var $n={},xs={},Om;function Qc(){return Om||(Om=1,function(e){var i=xs&&xs.__awaiter||function(_,b,v,h){function m(k){return k instanceof v?k:new v(function(B){B(k)})}return new(v||(v=Promise))(function(k,B){function C(f){try{A(h.next(f))}catch(E){B(E)}}function R(f){try{A(h.throw(f))}catch(E){B(E)}}function A(f){f.done?k(f.value):m(f.value).then(C,R)}A((h=h.apply(_,b||[])).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=Pi();var u;(function(_){_[_.Null=0]="Null",_[_.False=1]="False",_[_.True=2]="True",_[_.Integer=3]="Integer",_[_.Double=4]="Double",_[_.InternedString=5]="InternedString",_[_.UninternedString=6]="UninternedString",_[_.Object=7]="Object",_[_.Array=8]="Array",_[_.StringFormat=9]="StringFormat",_[_.TransformedString=10]="TransformedString"})(u=e.Tag||(e.Tag={}));const c=4,w=(1<<c)-1;function U(_,b){return _|b<<c}e.makeValue=U;function F(_,b){return(0,a.assert)(O(_)===b,"Trying to get index for value with invalid tag"),_>>c}function O(_){return _&w}e.valueTag=O;let M=class{constructor(b,v){this.dateTimeRecognizer=b,this.handleRefs=v,this._contextStack=[],this._strings=[],this._stringIndexes={},this._objects=[],this._arrays=[],this.getObjectForValue=h=>this._objects[F(h,u.Object)],this.getArrayForValue=h=>this._arrays[F(h,u.Array)],this.internArray=h=>{const m=this._arrays.length;return this._arrays.push(h),U(u.Array,m)}}parseSync(b){return(0,a.panic)("parseSync not implemented in CompressedJSON")}getStringForValue(b){const v=O(b);return(0,a.assert)(v===u.InternedString||v===u.TransformedString),this._strings[F(b,v)]}getStringFormatTypeKind(b){const v=this._strings[F(b,u.StringFormat)];return!(0,l.isPrimitiveStringTypeKind)(v)||v==="string"?(0,a.panic)("Not a transformed string type kind"):v}get context(){return(0,a.defined)(this._ctx)}internString(b){if(Object.prototype.hasOwnProperty.call(this._stringIndexes,b))return this._stringIndexes[b];const v=this._strings.length;return this._strings.push(b),this._stringIndexes[b]=v,v}makeString(b){const v=U(u.InternedString,this.internString(b));return(0,a.assert)(typeof v=="number",`Interned string value is not a number: ${v}`),v}internObject(b){const v=this._objects.length;return this._objects.push(b),U(u.Object,v)}get isExpectingRef(){return this._ctx!==void 0&&this._ctx.currentKey==="$ref"}commitValue(b){if((0,a.assert)(typeof b=="number",`CompressedJSON value is not a number: ${b}`),this._ctx===void 0)(0,a.assert)(this._rootValue===void 0,"Committing value but nowhere to commit to - root value still there."),this._rootValue=b;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),b),this._ctx.currentKey=void 0}else if(this._ctx.currentArray!==void 0)this._ctx.currentArray.push(b);else return(0,a.panic)("Committing value but nowhere to commit to")}commitNull(){this.commitValue(U(u.Null,0))}commitBoolean(b){this.commitValue(U(b?u.True:u.False,0))}commitNumber(b){const v=b?u.Double:u.Integer;this.commitValue(U(v,0))}commitString(b){let v;if(this.handleRefs&&this.isExpectingRef)v=this.makeString(b);else{const h=(0,d.inferTransformedStringTypeKindForString)(b,this.dateTimeRecognizer);h!==void 0?(0,a.defined)(l.transformedStringTypeTargetTypeKindsMap.get(h)).attributesProducer!==void 0?v=U(u.TransformedString,this.internString(b)):v=U(u.StringFormat,this.internString(h)):b.length<=64?v=this.makeString(b):v=U(u.UninternedString,0)}this.commitValue(v)}finish(){const b=this._rootValue;return b===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,b)}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(b){const v=this.context;v.currentKey=b}finishObject(){const b=this.context.currentObject;if(b===void 0)return(0,a.panic)("Object ended but not started");this.popContext(),this.commitValue(this.internObject(b))}pushArrayContext(){this.pushContext(),(0,a.defined)(this._ctx).currentArray=[]}finishArray(){const b=this.context.currentArray;if(b===void 0)return(0,a.panic)("Array ended but not started");this.popContext(),this.commitValue(this.internArray(b))}popContext(){(0,a.assert)(this._ctx!==void 0,"Popping context when there isn't one"),this._ctx=this._contextStack.pop()}equals(b){return this===b}hashCode(){let b=n.hashCodeInit;for(const v of this._strings)b=(0,n.addHashCode)(b,(0,n.hashString)(v));for(const v of Object.getOwnPropertyNames(this._stringIndexes).sort())b=(0,n.addHashCode)(b,(0,n.hashString)(v)),b=(0,n.addHashCode)(b,this._stringIndexes[v]);for(const v of this._objects)for(const h of v)b=(0,n.addHashCode)(b,h);for(const v of this._arrays)for(const h of v)b=(0,n.addHashCode)(b,h);return b}};e.CompressedJSON=M;class L extends M{parse(b){return i(this,void 0,void 0,function*(){return this.parseSync(b)})}parseSync(b){const v=JSON.parse(b);return this.process(v),this.finish()}process(b){if(b===null)this.commitNull();else if(typeof b=="boolean")this.commitBoolean(b);else if(typeof b=="string")this.commitString(b);else if(typeof b=="number"){const v=b!==Math.floor(b)||b<Number.MIN_SAFE_INTEGER||b>Number.MAX_SAFE_INTEGER;this.commitNumber(v)}else if(Array.isArray(b)){this.pushArrayContext();for(const v of b)this.process(v);this.finishArray()}else if(typeof b=="object"){this.pushObjectContext();for(const v of Object.getOwnPropertyNames(b))this.setPropertyKey(v),this.process(b[v]);this.finishObject()}else return(0,a.panic)("Invalid JSON object")}}e.CompressedJSONFromString=L}(xs)),xs}var zs={},Cm;function ck(){if(Cm)return zs;Cm=1,Object.defineProperty(zs,"__esModule",{value:!0}),zs.TypeInference=void 0;const e=Qc(),i=Qe(),n=Vc(),a=mt(),l=At(),d=Pi(),u=ni(),c=yn(),w=pt();function U(L,_){if(L.length!==0)if(Array.isArray(L[0]))for(const b of L)U(b,_);else _(L)}function F(L,_){U(L,b=>{for(const v of b)_(v)})}class O extends n.UnionBuilder{constructor(_,b,v){super(_),this._typeInference=b,this._fixed=v}makeObject(_,b,v){return this._typeInference.inferClassType(b,_,this._fixed,v)}makeArray(_,b,v){return this.typeBuilder.getArrayType(b,this._typeInference.inferType(l.emptyTypeAttributes,_,this._fixed,v))}}class M{constructor(_,b,v,h){this._cjson=_,this._typeBuilder=b,this._inferMaps=v,this._inferEnums=h}addValuesToAccumulator(_,b){F(_,v=>{const h=(0,e.valueTag)(v);switch(h){case e.Tag.Null:b.addPrimitive("null",l.emptyTypeAttributes);break;case e.Tag.False:case e.Tag.True:b.addPrimitive("bool",l.emptyTypeAttributes);break;case e.Tag.Integer:b.addPrimitive("integer",l.emptyTypeAttributes);break;case e.Tag.Double:b.addPrimitive("double",l.emptyTypeAttributes);break;case e.Tag.InternedString:if(this._inferEnums){const m=this._cjson.getStringForValue(v);b.addStringCase(m,1,l.emptyTypeAttributes)}else b.addStringType("string",l.emptyTypeAttributes);break;case e.Tag.UninternedString:b.addStringType("string",l.emptyTypeAttributes);break;case e.Tag.Object:b.addObject(this._cjson.getObjectForValue(v),l.emptyTypeAttributes);break;case e.Tag.Array:b.addArray(this._cjson.getArrayForValue(v),l.emptyTypeAttributes);break;case e.Tag.StringFormat:{const m=this._cjson.getStringFormatTypeKind(v);b.addStringType("string",l.emptyTypeAttributes,new d.StringTypes(new Map,new Set([m])));break}case e.Tag.TransformedString:{const m=this._cjson.getStringForValue(v),k=(0,d.inferTransformedStringTypeKindForString)(m,this._cjson.dateTimeRecognizer);if(k===void 0)return(0,i.panic)("TransformedString does not have a kind");const B=(0,i.defined)(a.transformedStringTypeTargetTypeKindsMap.get(k)).attributesProducer;if(B===void 0)return(0,i.panic)("TransformedString does not have attribute producer");b.addStringType("string",B(m),new d.StringTypes(new Map,new Set([k])));break}default:return(0,i.assertNever)(h)}})}inferType(_,b,v,h){const m=this.accumulatorForArray(b);return this.makeTypeFromAccumulator(m,_,v,h)}resolveRef(_,b){if(!_.startsWith("#/"))return(0,c.messageError)("InferenceJSONReferenceNotRooted",{reference:_});const v=_.split("/").slice(1),h=this._typeBuilder.typeGraph;let m=b;for(const k of v){let B=(0,u.derefTypeRef)(m,h);if(B instanceof a.UnionType){const C=(0,w.nullableFromUnion)(B);if(C===null)return(0,c.messageError)("InferenceJSONReferenceToUnion",{reference:_});B=C}if(B instanceof a.ClassType){const C=B.getProperties().get(k);if(C===void 0)return(0,c.messageError)("InferenceJSONReferenceWrongProperty",{reference:_});m=C.typeRef}else if(B instanceof a.MapType)m=B.values.typeRef;else if(B instanceof a.ArrayType){if(k.match("^[0-9]+$")===null)return(0,c.messageError)("InferenceJSONReferenceInvalidArrayIndex",{reference:_});m=B.items.typeRef}else return(0,c.messageError)("InferenceJSONReferenceWrongProperty",{reference:_})}return m}inferTopLevelType(_,b,v){(0,i.assert)(this._refIntersections===void 0,"Didn't reset ref intersections - nested invocations?"),this._cjson.handleRefs&&(this._refIntersections=[]);const h=this.inferType(_,b,v);if(this._cjson.handleRefs){for(const[m,k]of(0,i.defined)(this._refIntersections)){const B=k.map(C=>this.resolveRef(C,h));this._typeBuilder.setSetOperationMembers(m,new Set(B))}this._refIntersections=void 0}return h}accumulatorForArray(_){const b=new n.UnionAccumulator(!0);return this.addValuesToAccumulator(_,b),b}makeTypeFromAccumulator(_,b,v,h){return new O(this._typeBuilder,this,v).buildUnion(_,!1,b,h)}inferClassType(_,b,v,h){const m=[],k={};if(U(b,C=>{for(let R=0;R<C.length;R+=2){const A=this._cjson.getStringForValue(C[R]),f=C[R+1];Object.prototype.hasOwnProperty.call(k,A)||(m.push(A),k[A]=[]),k[A].push(f)}}),this._cjson.handleRefs&&m.length===1&&m[0]==="$ref"){const C=k.$ref;if(C.every(R=>(0,e.valueTag)(R)===e.Tag.InternedString)){const R=C.map(f=>this._cjson.getStringForValue(f)),A=this._typeBuilder.getUniqueIntersectionType(_,void 0);return(0,i.defined)(this._refIntersections).push([A,R]),A}}if(this._inferMaps&&m.length>500){const C=new n.UnionAccumulator(!0);for(const A of m)this.addValuesToAccumulator(k[A],C);const R=this.makeTypeFromAccumulator(C,l.emptyTypeAttributes,v);return this._typeBuilder.getMapType(_,R,h)}const B=new Map;for(const C of m){const R=k[C],A=this.inferType(l.emptyTypeAttributes,R,!1),f=R.length<b.length;B.set(C,this._typeBuilder.makeClassProperty(A,f))}return v?this._typeBuilder.getUniqueClassType(_,!0,B,h):this._typeBuilder.getClassType(_,B,h)}}return zs.TypeInference=M,zs}var Em;function Gg(){if(Em)return $n;Em=1;var e=$n&&$n.__awaiter||function(L,_,b,v){function h(m){return m instanceof b?m:new b(function(k){k(m)})}return new(b||(b=Promise))(function(m,k){function B(A){try{R(v.next(A))}catch(f){k(f)}}function C(A){try{R(v.throw(A))}catch(f){k(f)}}function R(A){A.done?m(A.value):h(A.value).then(B,C)}R((v=v.apply(L,_||[])).next())})};Object.defineProperty($n,"__esModule",{value:!0}),$n.InputData=$n.jsonInputForTargetLanguage=$n.JSONInput=void 0;const i=et(),n=Qc(),a=Qe(),l=yn(),d=Hi(),u=Da(),c=ck(),w=Ua();function U(L,_,b){return(0,l.messageError)("MiscJSONParseError",{description:(0,i.withDefault)(_,"input"),address:L,message:(0,a.errorMessage)(b)})}class F{constructor(_){this._compressedJSON=_,this.kind="json",this.needIR=!0,this.needSchemaProcessing=!1,this._topLevels=new Map}addSample(_,b){let v=this._topLevels.get(_);v===void 0&&(v={samples:[],description:void 0},this._topLevels.set(_,v)),v.samples.push(b)}setDescription(_,b){let v=this._topLevels.get(_);if(v===void 0)return(0,a.panic)("Trying to set description for a top-level that doesn't exist");v.description=b}addSamples(_,b,v){for(const h of b)this.addSample(_,h),v!==void 0&&this.setDescription(_,v)}addSource(_){return e(this,void 0,void 0,function*(){const{name:b,samples:v,description:h}=_;try{const m=yield(0,i.arrayMapSync)(v,k=>e(this,void 0,void 0,function*(){return yield this._compressedJSON.parse(k)}));this.addSamples(b,m,h)}catch(m){return U(b,h,m)}})}addSourceSync(_){const{name:b,samples:v,description:h}=_;try{const m=v.map(k=>this._compressedJSON.parseSync(k));this.addSamples(b,m,h)}catch(m){return U(b,h,m)}}singleStringSchemaSource(){}addTypes(_,b,v,h,m){return e(this,void 0,void 0,function*(){return this.addTypesSync(_,b,v,h,m)})}addTypesSync(_,b,v,h,m){const k=new c.TypeInference(this._compressedJSON,b,v,h);for(const[B,{samples:C,description:R}]of this._topLevels){const A=k.inferTopLevelType((0,d.makeNamesTypeAttributes)(B,!1),C,m);if(b.addTopLevel(B,A),R!==void 0){const f=u.descriptionTypeAttributeKind.makeAttributes(new Set([R]));b.addAttributes(A,f)}}}}$n.JSONInput=F;function O(L,_,b=!1){typeof L=="string"&&(L=(0,a.defined)((0,w.languageNamed)(L,_)));const v=new n.CompressedJSONFromString(L.dateTimeRecognizer,b);return new F(v)}$n.jsonInputForTargetLanguage=O;class M{constructor(){this._inputs=new Set}addInput(_){this._inputs=this._inputs.add(_)}getOrAddInput(_,b){let v=(0,i.iterableFind)(this._inputs,h=>h.kind===_);return v===void 0&&(v=b(),this.addInput(v)),v}addSource(_,b,v){return e(this,void 0,void 0,function*(){yield this.getOrAddInput(_,v).addSource(b)})}addSourceSync(_,b,v){this.getOrAddInput(_,v).addSourceSync(b)}addTypes(_,b,v,h,m){return e(this,void 0,void 0,function*(){for(const k of this._inputs)yield k.addTypes(_,b,v,h,m)})}addTypesSync(_,b,v,h,m){for(const k of this._inputs)k.addTypesSync(_,b,v,h,m)}get needIR(){return(0,i.iterableSome)(this._inputs,_=>_.needIR)}get needSchemaProcessing(){return(0,i.iterableSome)(this._inputs,_=>_.needSchemaProcessing)}singleStringSchemaSource(){const _=(0,i.setFilterMap)(this._inputs,b=>b.singleStringSchemaSource());return _.size>1?(0,a.panic)("We have more than one input with a string schema source"):(0,i.iterableFirst)(_)}}return $n.InputData=M,$n}var Ws={},Am;function fk(){if(Am)return Ws;Am=1,Object.defineProperty(Ws,"__esModule",{value:!0}),Ws.flattenStrings=void 0;const e=et(),i=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,i.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 F=(0,n.defined)((0,e.iterableFirst)(c)),O=(0,n.defined)(l(F)),M=(0,i.combineTypeAttributesOfTypes)("union",O),L=[];for(const _ of F.members)O.has(_)||L.push(w.reconstituteType(_));return L.length===0?w.getStringType((0,a.combineTypeAttributes)("union",M,F.getAttributes()),void 0,U):(L.push(w.getStringType(M,void 0)),w.getUnionType(F.getAttributes(),new Set(L),U))}function u(c,w,U){const F=c.allNamedTypesSeparated().unions,O=Array.from(F).filter(l).map(M=>[M]);return c.rewrite("flatten strings",w,!1,O,U,d)}return Ws.flattenStrings=u,Ws}var qs={},Fm;function dk(){if(Fm)return qs;Fm=1,Object.defineProperty(qs,"__esModule",{value:!0}),qs.makeTransformations=void 0;const e=et(),i=ni(),n=mt(),a=Qe(),l=oo(),d=At(),u=Pi(),c=Xr();function w(h,m,k,B){const C=new l.Transformation(h,m,k);return B&&(console.log(`transformation for ${(0,i.typeRefIndex)(m)}:`),C.debugPrint(),console.log("reverse:"),C.reverse.debugPrint()),l.transformationTypeAttributeKind.makeAttributes(C)}function U(h,m,k,B){const R=Array.from(m.cases).sort().map(A=>new l.StringMatchTransformer(h,k,new l.StringProducerTransformer(h,k,B,A),A));return new l.ChoiceTransformer(h,k,R)}function F(h,m,k,B,C){const R=m.typeGraph;(0,a.assert)(h.members.size>0,"We can't have empty unions");let A=d.emptyTypeAttributes;function f(re){if((0,n.isPrimitiveStringTypeKind)(re.kind)){const se=(0,n.targetTypeKindForTransformedStringTypeKind)(re.kind);if(se!==void 0){const ne=h.findMember(se);return A=(0,d.combineTypeAttributes)("union",A,re.getAttributes()),ne!==void 0?m.reconstituteType(ne):m.getPrimitiveType(se)}}return m.reconstituteType(re)}const E=(0,e.mapMapEntries)(h.members.entries(),re=>[re.kind,f(re)]),S=new Set(E.values()),P=S.size>1;P||m.setLostTypeAttributes();const y=P?m.getUnionType(h.getAttributes(),S):(0,a.defined)((0,e.iterableFirst)(S));function r(re){return(0,a.defined)(E.get(re))}function s(re){if(P)return new l.UnionInstantiationTransformer(R,re)}function p(re){if(h.findMember(re)===void 0)return;const ne=r(re);return new l.DecodingTransformer(R,ne,s(ne))}let g;function I(){return g===void 0&&(g=m.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted)),g}function x(re){const se=r(re.kind);if(re.kind==="string"){const ne=(0,c.minMaxLengthForType)(re);if(ne===void 0)return s(se);const[me,ge]=ne;return new l.MinMaxLengthCheckTransformer(R,I(),s(se),me,ge)}else return re instanceof n.EnumType&&B.has(re)?U(R,re,I(),s(se)):new l.ParseStringTransformer(R,I(),s(se))}const q=(0,e.arraySortByInto)(Array.from(h.stringTypeMembers),re=>re.kind);let T;if(q.length===0)T=void 0;else if(q.length===1){const re=q[0];T=new l.DecodingTransformer(R,I(),x(re))}else T=new l.DecodingTransformer(R,I(),new l.ChoiceTransformer(R,I(),q.map(re=>(0,a.defined)(x(re)))));const D=p("class"),W=p("map");(0,a.assert)(D===void 0||W===void 0,"Can't have both class and map in a transformed union");const J=D!==void 0?D:W,X=new l.DecodingChoiceTransformer(R,m.getPrimitiveType("any"),p("null"),p("integer"),p("double"),p("bool"),T,p("array"),J),Q=w(R,y,X,C);return m.getPrimitiveType("any",(0,d.combineTypeAttributes)("union",Q,A),k)}function O(h,m,k,B){const C=m.getPrimitiveType("any"),R=m.getArrayType(d.emptyTypeAttributes,C),A=m.reconstituteType(h.items),f=new l.ArrayDecodingTransformer(m.typeGraph,R,void 0,A,new l.DecodingTransformer(m.typeGraph,C,void 0)),E=m.getArrayType(m.reconstituteTypeAttributes(h.getAttributes()),A),S=w(m.typeGraph,E,f,B);return m.getArrayType(S,C,k)}function M(h,m,k,B){const C=m.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),R=new l.DecodingTransformer(m.typeGraph,C,U(m.typeGraph,h,C)),A=m.getEnumType(h.getAttributes(),h.cases),f=w(m.typeGraph,A,R,B);return m.getStringType(f,u.StringTypes.unrestricted,k)}function L(h,m,k,B){const C=m.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),[R,A]=(0,a.defined)((0,c.minMaxValueForType)(h)),f=new l.DecodingTransformer(m.typeGraph,C,new l.MinMaxValueTransformer(m.typeGraph,C,void 0,R,A)),E=m.reconstituteTypeAttributes(h.getAttributes()),S=w(m.typeGraph,m.getPrimitiveType("double",E,void 0),f,B);return m.getPrimitiveType("double",S,k)}function _(h,m,k,B){const[C,R]=(0,a.defined)((0,c.minMaxLengthForType)(h)),A=m.reconstituteTypeAttributes(h.getAttributes()),f=m.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),E=new l.DecodingTransformer(m.typeGraph,f,new l.MinMaxLengthCheckTransformer(m.typeGraph,f,void 0,C,R)),S=w(m.typeGraph,m.getStringType(A,void 0),E,B);return m.getStringType(S,u.StringTypes.unrestricted,k)}function b(h,m,k,B,C){const R=k.reconstituteTypeAttributes(h.getAttributes()),A=(0,e.withDefault)((0,n.targetTypeKindForTransformedStringTypeKind)(m),m),f=k.getStringType(d.emptyTypeAttributes,u.StringTypes.unrestricted),E=new l.DecodingTransformer(k.typeGraph,f,new l.ParseStringTransformer(k.typeGraph,f,void 0)),S=w(k.typeGraph,k.getPrimitiveType(A,R),E,C);return k.getStringType(S,u.StringTypes.unrestricted,B)}function v(h,m,k){const B=(0,e.setFilter)(m.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 S=(0,a.defined)((0,e.iterableFirst)(A));return S instanceof n.UnionType?F(S,f,E,B,h.debugPrintTransformations):S instanceof n.ArrayType?O(S,f,E,h.debugPrintTransformations):S instanceof n.EnumType?M(S,f,E,h.debugPrintTransformations):S.kind==="string"?_(S,f,E,h.debugPrintTransformations):(0,n.isNumberTypeKind)(S.kind)?L(S,f,E,h.debugPrintTransformations):(0,n.isPrimitiveStringTypeKind)(S.kind)?b(S,S.kind,f,E,h.debugPrintTransformations):(0,a.panic)(`Cannot make transformation for type ${S.kind}`)}const R=Array.from(B).map(A=>[A]);return m.rewrite("make-transformations",h.stringTypeMapping,!1,R,h.debugPrintReconstitution,C)}return qs.makeTransformations=v,qs}var Pm;function hk(){return Pm||(Pm=1,function(e){var i=Hn&&Hn.__createBinding||(Object.create?function(g,I,x,q){q===void 0&&(q=x);var T=Object.getOwnPropertyDescriptor(I,x);(!T||("get"in T?!I.__esModule:T.writable||T.configurable))&&(T={enumerable:!0,get:function(){return I[x]}}),Object.defineProperty(g,q,T)}:function(g,I,x,q){q===void 0&&(q=x),g[q]=I[x]}),n=Hn&&Hn.__setModuleDefault||(Object.create?function(g,I){Object.defineProperty(g,"default",{enumerable:!0,value:I})}:function(g,I){g.default=I}),a=Hn&&Hn.__importStar||function(g){if(g&&g.__esModule)return g;var I={};if(g!=null)for(var x in g)x!=="default"&&Object.prototype.hasOwnProperty.call(g,x)&&i(I,g,x);return n(I,g),I},l=Hn&&Hn.__awaiter||function(g,I,x,q){function T(D){return D instanceof x?D:new x(function(W){W(D)})}return new(x||(x=Promise))(function(D,W){function J(re){try{Q(q.next(re))}catch(se){W(se)}}function X(re){try{Q(q.throw(re))}catch(se){W(se)}}function Q(re){re.done?D(re.value):T(re.value).then(J,X)}Q((q=q.apply(g,I||[])).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(Ua()),c=Qe(),w=nk(),U=rk(),F=is(),O=ni(),M=Hi(),L=sk(),_=ok(),b=ak(),v=uk(),h=lk(),m=yn(),k=Gg(),B=fk(),C=dk();function R(g){if(typeof g=="object")return g;const I=u.languageNamed(g);return I!==void 0?I:(0,m.messageError)("DriverUnknownOutputLanguage",{lang:g})}e.getTargetLanguage=R,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 g={};for(const I of e.inferenceFlagNames)g[I]=!0;return g}e.defaultInferenceFlags=f();let E=class{constructor(I){this._options=Object.assign({},A,e.defaultInferenceFlags);for(const x of Object.getOwnPropertyNames(I)){const q=I[x];q!==void 0&&(this._options[x]=q)}}get stringTypeMapping(){const I=R(this._options.lang),x=new Map(I.stringTypeMapping);for(const q of e.inferenceFlagNames){const T=e.inferenceFlags[q].stringType;!this._options[q]&&T!==void 0&&x.set(T,"string")}return x}get debugPrintReconstitution(){return this._options.debugPrintReconstitution===!0}get debugPrintTransformations(){return this._options.debugPrintTransformations}get debugPrintSchemaResolving(){return this._options.debugPrintSchemaResolving}timeSync(I,x){return l(this,void 0,void 0,function*(){const q=Date.now(),T=yield x(),D=Date.now();return this._options.debugPrintTimes&&console.log(`${I} took ${D-q}ms`),T})}time(I,x){const q=Date.now(),T=x(),D=Date.now();return this._options.debugPrintTimes&&console.log(`${I} took ${D-q}ms`),T}makeGraphInputs(){const I=R(this._options.lang),x=this.stringTypeMapping,q=!I.supportsUnionsWithBothNumberTypes,T=new F.TypeBuilder(0,x,this._options.alphabetizeProperties,this._options.allPropertiesOptional,this._options.checkProvenance,!1);return{targetLanguage:I,stringTypeMapping:x,conflateNumbers:q,typeBuilder:T}}makeGraph(I){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 I.addTypes(this,x.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)})),this.processGraph(I,x)})}makeGraphSync(I){const x=this.makeGraphInputs();return this.time("read input",()=>I.addTypesSync(this,x.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)),this.processGraph(I,x)}processGraph(I,x){const{targetLanguage:q,stringTypeMapping:T,conflateNumbers:D,typeBuilder:W}=x;let J=W.finish();this._options.debugPrintGraph&&(J.setPrintOnRewrite(),J.printGraph());const X=this.debugPrintReconstitution;(W.didAddForwardingIntersection||!this._options.ignoreJsonRefs)&&this.time("remove indirection intersections",()=>J=(0,O.removeIndirectionIntersections)(J,T,X));let Q=!1;if(I.needSchemaProcessing||!this._options.ignoreJsonRefs){let se=!1;do{const ne=J;se||this.time("resolve intersections",()=>[J,se]=(0,v.resolveIntersections)(J,T,X)),Q||this.time("flatten unions",()=>[J,Q]=(0,b.flattenUnions)(J,T,D,!0,X)),J===ne&&(0,c.assert)(se&&Q,"Graph didn't change but we're not done")}while(!se||!Q)}this.time("replace object type",()=>J=(0,h.replaceObjectType)(J,T,D,q.supportsFullObjectType,X));do this.time("flatten unions",()=>[J,Q]=(0,b.flattenUnions)(J,T,D,!1,X));while(!Q);if(this._options.combineClasses){const se=this.time("combine classes",()=>(0,w.combineClasses)(this,J,this._options.alphabetizeProperties,!0,!1,X));se===J?J=se:this.time("combine classes cleanup",()=>J=(0,w.combineClasses)(this,se,this._options.alphabetizeProperties,!1,!0,X))}if(this._options.inferMaps)for(;;){const se=this.time("infer maps",()=>(0,U.inferMaps)(J,T,!0,X));if(se===J)break;J=se}const re=I.needSchemaProcessing?"all":this._options.inferEnums?"infer":"none";return this.time("expand strings",()=>J=(0,_.expandStrings)(this,J,re)),this.time("flatten unions",()=>[J,Q]=(0,b.flattenUnions)(J,T,D,!1,X)),(0,c.assert)(Q,"We should only have to flatten unions once after expanding strings"),I.needSchemaProcessing&&this.time("flatten strings",()=>J=(0,B.flattenStrings)(J,T,X)),this.time("none to any",()=>J=(0,O.noneToAny)(J,T,X)),q.supportsOptionalClassProperties||this.time("optional to nullable",()=>J=(0,O.optionalToNullable)(J,T,X)),this.time("fixed point",()=>J=J.rewriteFixedPoint(!1,X)),this.time("make transformations",()=>J=(0,C.makeTransformations)(this,J,q)),this.time("flatten unions",()=>[J,Q]=(0,b.flattenUnions)(J,T,D,!1,X)),(0,c.assert)(Q,"We should only have to flatten unions once after making transformations"),this.time("GC",()=>J=J.garbageCollect(this._options.alphabetizeProperties,X)),this._options.debugPrintGraph&&console.log(`
|
|
990
|
+
# gather names`),this.time("gather names",()=>(0,L.gatherNames)(J,!I.needSchemaProcessing,this._options.debugPrintGatherNames)),this._options.debugPrintGraph&&J.printGraph(),J}makeSimpleTextResult(I){return new Map([[this._options.outputFilename,{lines:I,annotations:[]}]])}preRun(){(0,M.initTypeNames)();const I=R(this._options.lang),x=this._options.inputData,T=x.needIR||I.names.indexOf("schema")<0?void 0:x.singleStringSchemaSource();if(T!==void 0){const D=JSON.stringify(JSON.parse(T),void 0,4).split(`
|
|
991
|
+
`);D.push("");const W={lines:D,annotations:[]};return new Map([[this._options.outputFilename,W]])}return[x,I]}run(){return l(this,void 0,void 0,function*(){const I=this.preRun();if(!Array.isArray(I))return I;const[x,q]=I,T=yield this.makeGraph(x);return this.renderGraph(q,T)})}runSync(){const I=this.preRun();if(!Array.isArray(I))return I;const[x,q]=I,T=this.makeGraphSync(x);return this.renderGraph(q,T)}renderGraph(I,x){return this._options.noRender?this.makeSimpleTextResult(["Done.",""]):I.renderGraphAndSerialize(x,this._options.outputFilename,this._options.alphabetizeProperties,this._options.leadingComments,this._options.rendererOptions,this._options.indentation)}};function S(g){return l(this,void 0,void 0,function*(){return yield new E(g).run()})}e.quicktypeMultiFile=S;function P(g){return new E(g).runSync()}e.quicktypeMultiFileSync=P;function y(g,I){return{line:g.line+I,column:g.column}}function r(g,I){return{start:y(g.start,I),end:y(g.end,I)}}function s(g){if(g.size<=1){const q=(0,d.mapFirst)(g);return q===void 0?{lines:[],annotations:[]}:q}let I=[],x=[];for(const[q,T]of g){const D=I.length+2;I=I.concat([`// ${q}`,""],T.lines),x=x.concat(T.annotations.map(W=>({annotation:W.annotation,span:r(W.span,D)})))}return{lines:I,annotations:x}}e.combineRenderResults=s;function p(g){return l(this,void 0,void 0,function*(){const I=yield S(g);return s(I)})}e.quicktype=p}(Hn)),Hn}var ei={},na={},Gl={exports:{}},Hl={exports:{}},Kl={},ia={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */var Im;function Hg(){return Im||(Im=1,ia.read=function(e,i,n,a,l){var d,u,c=l*8-a-1,w=(1<<c)-1,U=w>>1,F=-7,O=n?l-1:0,M=n?-1:1,L=e[i+O];for(O+=M,d=L&(1<<-F)-1,L>>=-F,F+=c;F>0;d=d*256+e[i+O],O+=M,F-=8);for(u=d&(1<<-F)-1,d>>=-F,F+=a;F>0;u=u*256+e[i+O],O+=M,F-=8);if(d===0)d=1-U;else{if(d===w)return u?NaN:(L?-1:1)*(1/0);u=u+Math.pow(2,a),d=d-U}return(L?-1:1)*u*Math.pow(2,d-a)},ia.write=function(e,i,n,a,l,d){var u,c,w,U=d*8-l-1,F=(1<<U)-1,O=F>>1,M=l===23?Math.pow(2,-24)-Math.pow(2,-77):0,L=a?0:d-1,_=a?1:-1,b=i<0||i===0&&1/i<0?1:0;for(i=Math.abs(i),isNaN(i)||i===1/0?(c=isNaN(i)?1:0,u=F):(u=Math.floor(Math.log(i)/Math.LN2),i*(w=Math.pow(2,-u))<1&&(u--,w*=2),u+O>=1?i+=M/w:i+=M*Math.pow(2,1-O),i*w>=2&&(u++,w/=2),u+O>=F?(c=0,u=F):u+O>=1?(c=(i*w-1)*Math.pow(2,l),u=u+O):(c=i*Math.pow(2,O-1)*Math.pow(2,l),u=0));l>=8;e[n+L]=c&255,L+=_,c/=256,l-=8);for(u=u<<l|c,U+=l;U>0;e[n+L]=u&255,L+=_,u/=256,U-=8);e[n+L-_]|=b*128}),ia}/*!
|
|
992
|
+
* The buffer module from node.js, for the browser.
|
|
993
|
+
*
|
|
994
|
+
* @author Feross Aboukhadijeh <https://feross.org>
|
|
995
|
+
* @license MIT
|
|
996
|
+
*/var Rm;function Sr(){return Rm||(Rm=1,function(e){const i=Jc(),n=Hg(),a=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=c,e.SlowBuffer=m,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,G){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,G)}c.poolSize=8192;function w(K,j,G){if(typeof K=="string")return M(K,j);if(ArrayBuffer.isView(K))return _(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 b(K,j,G);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,G);const $=v(K);if($)return $;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof K[Symbol.toPrimitive]=="function")return c.from(K[Symbol.toPrimitive]("string"),j,G);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,G){return w(K,j,G)},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 F(K,j,G){return U(K),K<=0?u(K):j!==void 0?typeof G=="string"?u(K).fill(j,G):u(K).fill(j):u(K)}c.alloc=function(K,j,G){return F(K,j,G)};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 M(K,j){if((typeof j!="string"||j==="")&&(j="utf8"),!c.isEncoding(j))throw new TypeError("Unknown encoding: "+j);const G=k(K,j)|0;let ce=u(G);const $=ce.write(K,j);return $!==G&&(ce=ce.slice(0,$)),ce}function L(K){const j=K.length<0?0:h(K.length)|0,G=u(j);for(let ce=0;ce<j;ce+=1)G[ce]=K[ce]&255;return G}function _(K){if(Ce(K,Uint8Array)){const j=new Uint8Array(K);return b(j.buffer,j.byteOffset,j.byteLength)}return L(K)}function b(K,j,G){if(j<0||K.byteLength<j)throw new RangeError('"offset" is outside of buffer bounds');if(K.byteLength<j+(G||0))throw new RangeError('"length" is outside of buffer bounds');let ce;return j===void 0&&G===void 0?ce=new Uint8Array(K):G===void 0?ce=new Uint8Array(K,j):ce=new Uint8Array(K,j,G),Object.setPrototypeOf(ce,c.prototype),ce}function v(K){if(c.isBuffer(K)){const j=h(K.length)|0,G=u(j);return G.length===0||K.copy(G,0,0,j),G}if(K.length!==void 0)return typeof K.length!="number"||We(K.length)?u(0):L(K);if(K.type==="Buffer"&&Array.isArray(K.data))return L(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 m(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,G){if(Ce(j,Uint8Array)&&(j=c.from(j,j.offset,j.byteLength)),Ce(G,Uint8Array)&&(G=c.from(G,G.offset,G.byteLength)),!c.isBuffer(j)||!c.isBuffer(G))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(j===G)return 0;let ce=j.length,$=G.length;for(let be=0,Se=Math.min(ce,$);be<Se;++be)if(j[be]!==G[be]){ce=j[be],$=G[be];break}return ce<$?-1:$<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,G){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(G===void 0)for(G=0,ce=0;ce<j.length;++ce)G+=j[ce].length;const $=c.allocUnsafe(G);let be=0;for(ce=0;ce<j.length;++ce){let Se=j[ce];if(Ce(Se,Uint8Array))be+Se.length>$.length?(c.isBuffer(Se)||(Se=c.from(Se)),Se.copy($,be)):Uint8Array.prototype.set.call($,Se,be);else if(c.isBuffer(Se))Se.copy($,be);else throw new TypeError('"list" argument must be an Array of Buffers');be+=Se.length}return $};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 G=K.length,ce=arguments.length>2&&arguments[2]===!0;if(!ce&&G===0)return 0;let $=!1;for(;;)switch(j){case"ascii":case"latin1":case"binary":return G;case"utf8":case"utf-8":return z(K).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G*2;case"hex":return G>>>1;case"base64":return Te(K).length;default:if($)return ce?-1:z(K).length;j=(""+j).toLowerCase(),$=!0}}c.byteLength=k;function B(K,j,G){let ce=!1;if((j===void 0||j<0)&&(j=0),j>this.length||((G===void 0||G>this.length)&&(G=this.length),G<=0)||(G>>>=0,j>>>=0,G<=j))return"";for(K||(K="utf8");;)switch(K){case"hex":return q(this,j,G);case"utf8":case"utf-8":return s(this,j,G);case"ascii":return I(this,j,G);case"latin1":case"binary":return x(this,j,G);case"base64":return r(this,j,G);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,j,G);default:if(ce)throw new TypeError("Unknown encoding: "+K);K=(K+"").toLowerCase(),ce=!0}}c.prototype._isBuffer=!0;function C(K,j,G){const ce=K[j];K[j]=K[G],K[G]=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 G=0;G<j;G+=2)C(this,G,G+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 G=0;G<j;G+=4)C(this,G,G+3),C(this,G+1,G+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 G=0;G<j;G+=8)C(this,G,G+7),C(this,G+1,G+6),C(this,G+2,G+5),C(this,G+3,G+4);return this},c.prototype.toString=function(){const j=this.length;return j===0?"":arguments.length===0?s(this,0,j):B.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 G=e.INSPECT_MAX_BYTES;return j=this.toString("hex",0,G).replace(/(.{2})/g,"$1 ").trim(),this.length>G&&(j+=" ... "),"<Buffer "+j+">"},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(j,G,ce,$,be){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(G===void 0&&(G=0),ce===void 0&&(ce=j?j.length:0),$===void 0&&($=0),be===void 0&&(be=this.length),G<0||ce>j.length||$<0||be>this.length)throw new RangeError("out of range index");if($>=be&&G>=ce)return 0;if($>=be)return-1;if(G>=ce)return 1;if(G>>>=0,ce>>>=0,$>>>=0,be>>>=0,this===j)return 0;let Se=be-$,Be=ce-G;const we=Math.min(Se,Be),Pe=this.slice($,be),oe=j.slice(G,ce);for(let Re=0;Re<we;++Re)if(Pe[Re]!==oe[Re]){Se=Pe[Re],Be=oe[Re];break}return Se<Be?-1:Be<Se?1:0};function R(K,j,G,ce,$){if(K.length===0)return-1;if(typeof G=="string"?(ce=G,G=0):G>2147483647?G=2147483647:G<-2147483648&&(G=-2147483648),G=+G,We(G)&&(G=$?0:K.length-1),G<0&&(G=K.length+G),G>=K.length){if($)return-1;G=K.length-1}else if(G<0)if($)G=0;else return-1;if(typeof j=="string"&&(j=c.from(j,ce)),c.isBuffer(j))return j.length===0?-1:A(K,j,G,ce,$);if(typeof j=="number")return j=j&255,typeof Uint8Array.prototype.indexOf=="function"?$?Uint8Array.prototype.indexOf.call(K,j,G):Uint8Array.prototype.lastIndexOf.call(K,j,G):A(K,[j],G,ce,$);throw new TypeError("val must be string, number or Buffer")}function A(K,j,G,ce,$){let be=1,Se=K.length,Be=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;be=2,Se/=2,Be/=2,G/=2}function we(oe,Re){return be===1?oe[Re]:oe.readUInt16BE(Re*be)}let Pe;if($){let oe=-1;for(Pe=G;Pe<Se;Pe++)if(we(K,Pe)===we(j,oe===-1?0:Pe-oe)){if(oe===-1&&(oe=Pe),Pe-oe+1===Be)return oe*be}else oe!==-1&&(Pe-=Pe-oe),oe=-1}else for(G+Be>Se&&(G=Se-Be),Pe=G;Pe>=0;Pe--){let oe=!0;for(let Re=0;Re<Be;Re++)if(we(K,Pe+Re)!==we(j,Re)){oe=!1;break}if(oe)return Pe}return-1}c.prototype.includes=function(j,G,ce){return this.indexOf(j,G,ce)!==-1},c.prototype.indexOf=function(j,G,ce){return R(this,j,G,ce,!0)},c.prototype.lastIndexOf=function(j,G,ce){return R(this,j,G,ce,!1)};function f(K,j,G,ce){G=Number(G)||0;const $=K.length-G;ce?(ce=Number(ce),ce>$&&(ce=$)):ce=$;const be=j.length;ce>be/2&&(ce=be/2);let Se;for(Se=0;Se<ce;++Se){const Be=parseInt(j.substr(Se*2,2),16);if(We(Be))return Se;K[G+Se]=Be}return Se}function E(K,j,G,ce){return Ie(z(j,K.length-G),K,G,ce)}function S(K,j,G,ce){return Ie(V(j),K,G,ce)}function P(K,j,G,ce){return Ie(Te(j),K,G,ce)}function y(K,j,G,ce){return Ie(ue(j,K.length-G),K,G,ce)}c.prototype.write=function(j,G,ce,$){if(G===void 0)$="utf8",ce=this.length,G=0;else if(ce===void 0&&typeof G=="string")$=G,ce=this.length,G=0;else if(isFinite(G))G=G>>>0,isFinite(ce)?(ce=ce>>>0,$===void 0&&($="utf8")):($=ce,ce=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const be=this.length-G;if((ce===void 0||ce>be)&&(ce=be),j.length>0&&(ce<0||G<0)||G>this.length)throw new RangeError("Attempt to write outside buffer bounds");$||($="utf8");let Se=!1;for(;;)switch($){case"hex":return f(this,j,G,ce);case"utf8":case"utf-8":return E(this,j,G,ce);case"ascii":case"latin1":case"binary":return S(this,j,G,ce);case"base64":return P(this,j,G,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,j,G,ce);default:if(Se)throw new TypeError("Unknown encoding: "+$);$=(""+$).toLowerCase(),Se=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function r(K,j,G){return j===0&&G===K.length?i.fromByteArray(K):i.fromByteArray(K.slice(j,G))}function s(K,j,G){G=Math.min(K.length,G);const ce=[];let $=j;for(;$<G;){const be=K[$];let Se=null,Be=be>239?4:be>223?3:be>191?2:1;if($+Be<=G){let we,Pe,oe,Re;switch(Be){case 1:be<128&&(Se=be);break;case 2:we=K[$+1],(we&192)===128&&(Re=(be&31)<<6|we&63,Re>127&&(Se=Re));break;case 3:we=K[$+1],Pe=K[$+2],(we&192)===128&&(Pe&192)===128&&(Re=(be&15)<<12|(we&63)<<6|Pe&63,Re>2047&&(Re<55296||Re>57343)&&(Se=Re));break;case 4:we=K[$+1],Pe=K[$+2],oe=K[$+3],(we&192)===128&&(Pe&192)===128&&(oe&192)===128&&(Re=(be&15)<<18|(we&63)<<12|(Pe&63)<<6|oe&63,Re>65535&&Re<1114112&&(Se=Re))}}Se===null?(Se=65533,Be=1):Se>65535&&(Se-=65536,ce.push(Se>>>10&1023|55296),Se=56320|Se&1023),ce.push(Se),$+=Be}return g(ce)}const p=4096;function g(K){const j=K.length;if(j<=p)return String.fromCharCode.apply(String,K);let G="",ce=0;for(;ce<j;)G+=String.fromCharCode.apply(String,K.slice(ce,ce+=p));return G}function I(K,j,G){let ce="";G=Math.min(K.length,G);for(let $=j;$<G;++$)ce+=String.fromCharCode(K[$]&127);return ce}function x(K,j,G){let ce="";G=Math.min(K.length,G);for(let $=j;$<G;++$)ce+=String.fromCharCode(K[$]);return ce}function q(K,j,G){const ce=K.length;(!j||j<0)&&(j=0),(!G||G<0||G>ce)&&(G=ce);let $="";for(let be=j;be<G;++be)$+=Ge[K[be]];return $}function T(K,j,G){const ce=K.slice(j,G);let $="";for(let be=0;be<ce.length-1;be+=2)$+=String.fromCharCode(ce[be]+ce[be+1]*256);return $}c.prototype.slice=function(j,G){const ce=this.length;j=~~j,G=G===void 0?ce:~~G,j<0?(j+=ce,j<0&&(j=0)):j>ce&&(j=ce),G<0?(G+=ce,G<0&&(G=0)):G>ce&&(G=ce),G<j&&(G=j);const $=this.subarray(j,G);return Object.setPrototypeOf($,c.prototype),$};function D(K,j,G){if(K%1!==0||K<0)throw new RangeError("offset is not uint");if(K+j>G)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(j,G,ce){j=j>>>0,G=G>>>0,ce||D(j,G,this.length);let $=this[j],be=1,Se=0;for(;++Se<G&&(be*=256);)$+=this[j+Se]*be;return $},c.prototype.readUintBE=c.prototype.readUIntBE=function(j,G,ce){j=j>>>0,G=G>>>0,ce||D(j,G,this.length);let $=this[j+--G],be=1;for(;G>0&&(be*=256);)$+=this[j+--G]*be;return $},c.prototype.readUint8=c.prototype.readUInt8=function(j,G){return j=j>>>0,G||D(j,1,this.length),this[j]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(j,G){return j=j>>>0,G||D(j,2,this.length),this[j]|this[j+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(j,G){return j=j>>>0,G||D(j,2,this.length),this[j]<<8|this[j+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(j,G){return j=j>>>0,G||D(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,G){return j=j>>>0,G||D(j,4,this.length),this[j]*16777216+(this[j+1]<<16|this[j+2]<<8|this[j+3])},c.prototype.readBigUInt64LE=ee(function(j){j=j>>>0,le(j,"offset");const G=this[j],ce=this[j+7];(G===void 0||ce===void 0)&&ye(j,this.length-8);const $=G+this[++j]*2**8+this[++j]*2**16+this[++j]*2**24,be=this[++j]+this[++j]*2**8+this[++j]*2**16+ce*2**24;return BigInt($)+(BigInt(be)<<BigInt(32))}),c.prototype.readBigUInt64BE=ee(function(j){j=j>>>0,le(j,"offset");const G=this[j],ce=this[j+7];(G===void 0||ce===void 0)&&ye(j,this.length-8);const $=G*2**24+this[++j]*2**16+this[++j]*2**8+this[++j],be=this[++j]*2**24+this[++j]*2**16+this[++j]*2**8+ce;return(BigInt($)<<BigInt(32))+BigInt(be)}),c.prototype.readIntLE=function(j,G,ce){j=j>>>0,G=G>>>0,ce||D(j,G,this.length);let $=this[j],be=1,Se=0;for(;++Se<G&&(be*=256);)$+=this[j+Se]*be;return be*=128,$>=be&&($-=Math.pow(2,8*G)),$},c.prototype.readIntBE=function(j,G,ce){j=j>>>0,G=G>>>0,ce||D(j,G,this.length);let $=G,be=1,Se=this[j+--$];for(;$>0&&(be*=256);)Se+=this[j+--$]*be;return be*=128,Se>=be&&(Se-=Math.pow(2,8*G)),Se},c.prototype.readInt8=function(j,G){return j=j>>>0,G||D(j,1,this.length),this[j]&128?(255-this[j]+1)*-1:this[j]},c.prototype.readInt16LE=function(j,G){j=j>>>0,G||D(j,2,this.length);const ce=this[j]|this[j+1]<<8;return ce&32768?ce|4294901760:ce},c.prototype.readInt16BE=function(j,G){j=j>>>0,G||D(j,2,this.length);const ce=this[j+1]|this[j]<<8;return ce&32768?ce|4294901760:ce},c.prototype.readInt32LE=function(j,G){return j=j>>>0,G||D(j,4,this.length),this[j]|this[j+1]<<8|this[j+2]<<16|this[j+3]<<24},c.prototype.readInt32BE=function(j,G){return j=j>>>0,G||D(j,4,this.length),this[j]<<24|this[j+1]<<16|this[j+2]<<8|this[j+3]},c.prototype.readBigInt64LE=ee(function(j){j=j>>>0,le(j,"offset");const G=this[j],ce=this[j+7];(G===void 0||ce===void 0)&&ye(j,this.length-8);const $=this[j+4]+this[j+5]*2**8+this[j+6]*2**16+(ce<<24);return(BigInt($)<<BigInt(32))+BigInt(G+this[++j]*2**8+this[++j]*2**16+this[++j]*2**24)}),c.prototype.readBigInt64BE=ee(function(j){j=j>>>0,le(j,"offset");const G=this[j],ce=this[j+7];(G===void 0||ce===void 0)&&ye(j,this.length-8);const $=(G<<24)+this[++j]*2**16+this[++j]*2**8+this[++j];return(BigInt($)<<BigInt(32))+BigInt(this[++j]*2**24+this[++j]*2**16+this[++j]*2**8+ce)}),c.prototype.readFloatLE=function(j,G){return j=j>>>0,G||D(j,4,this.length),n.read(this,j,!0,23,4)},c.prototype.readFloatBE=function(j,G){return j=j>>>0,G||D(j,4,this.length),n.read(this,j,!1,23,4)},c.prototype.readDoubleLE=function(j,G){return j=j>>>0,G||D(j,8,this.length),n.read(this,j,!0,52,8)},c.prototype.readDoubleBE=function(j,G){return j=j>>>0,G||D(j,8,this.length),n.read(this,j,!1,52,8)};function W(K,j,G,ce,$,be){if(!c.isBuffer(K))throw new TypeError('"buffer" argument must be a Buffer instance');if(j>$||j<be)throw new RangeError('"value" argument is out of bounds');if(G+ce>K.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(j,G,ce,$){if(j=+j,G=G>>>0,ce=ce>>>0,!$){const Be=Math.pow(2,8*ce)-1;W(this,j,G,ce,Be,0)}let be=1,Se=0;for(this[G]=j&255;++Se<ce&&(be*=256);)this[G+Se]=j/be&255;return G+ce},c.prototype.writeUintBE=c.prototype.writeUIntBE=function(j,G,ce,$){if(j=+j,G=G>>>0,ce=ce>>>0,!$){const Be=Math.pow(2,8*ce)-1;W(this,j,G,ce,Be,0)}let be=ce-1,Se=1;for(this[G+be]=j&255;--be>=0&&(Se*=256);)this[G+be]=j/Se&255;return G+ce},c.prototype.writeUint8=c.prototype.writeUInt8=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,1,255,0),this[G]=j&255,G+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,2,65535,0),this[G]=j&255,this[G+1]=j>>>8,G+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,2,65535,0),this[G]=j>>>8,this[G+1]=j&255,G+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,4,4294967295,0),this[G+3]=j>>>24,this[G+2]=j>>>16,this[G+1]=j>>>8,this[G]=j&255,G+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,4,4294967295,0),this[G]=j>>>24,this[G+1]=j>>>16,this[G+2]=j>>>8,this[G+3]=j&255,G+4};function J(K,j,G,ce,$){pe(j,ce,$,K,G,7);let be=Number(j&BigInt(4294967295));K[G++]=be,be=be>>8,K[G++]=be,be=be>>8,K[G++]=be,be=be>>8,K[G++]=be;let Se=Number(j>>BigInt(32)&BigInt(4294967295));return K[G++]=Se,Se=Se>>8,K[G++]=Se,Se=Se>>8,K[G++]=Se,Se=Se>>8,K[G++]=Se,G}function X(K,j,G,ce,$){pe(j,ce,$,K,G,7);let be=Number(j&BigInt(4294967295));K[G+7]=be,be=be>>8,K[G+6]=be,be=be>>8,K[G+5]=be,be=be>>8,K[G+4]=be;let Se=Number(j>>BigInt(32)&BigInt(4294967295));return K[G+3]=Se,Se=Se>>8,K[G+2]=Se,Se=Se>>8,K[G+1]=Se,Se=Se>>8,K[G]=Se,G+8}c.prototype.writeBigUInt64LE=ee(function(j,G=0){return J(this,j,G,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeBigUInt64BE=ee(function(j,G=0){return X(this,j,G,BigInt(0),BigInt("0xffffffffffffffff"))}),c.prototype.writeIntLE=function(j,G,ce,$){if(j=+j,G=G>>>0,!$){const we=Math.pow(2,8*ce-1);W(this,j,G,ce,we-1,-we)}let be=0,Se=1,Be=0;for(this[G]=j&255;++be<ce&&(Se*=256);)j<0&&Be===0&&this[G+be-1]!==0&&(Be=1),this[G+be]=(j/Se>>0)-Be&255;return G+ce},c.prototype.writeIntBE=function(j,G,ce,$){if(j=+j,G=G>>>0,!$){const we=Math.pow(2,8*ce-1);W(this,j,G,ce,we-1,-we)}let be=ce-1,Se=1,Be=0;for(this[G+be]=j&255;--be>=0&&(Se*=256);)j<0&&Be===0&&this[G+be+1]!==0&&(Be=1),this[G+be]=(j/Se>>0)-Be&255;return G+ce},c.prototype.writeInt8=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,1,127,-128),j<0&&(j=255+j+1),this[G]=j&255,G+1},c.prototype.writeInt16LE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,2,32767,-32768),this[G]=j&255,this[G+1]=j>>>8,G+2},c.prototype.writeInt16BE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,2,32767,-32768),this[G]=j>>>8,this[G+1]=j&255,G+2},c.prototype.writeInt32LE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,4,2147483647,-2147483648),this[G]=j&255,this[G+1]=j>>>8,this[G+2]=j>>>16,this[G+3]=j>>>24,G+4},c.prototype.writeInt32BE=function(j,G,ce){return j=+j,G=G>>>0,ce||W(this,j,G,4,2147483647,-2147483648),j<0&&(j=4294967295+j+1),this[G]=j>>>24,this[G+1]=j>>>16,this[G+2]=j>>>8,this[G+3]=j&255,G+4},c.prototype.writeBigInt64LE=ee(function(j,G=0){return J(this,j,G,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),c.prototype.writeBigInt64BE=ee(function(j,G=0){return X(this,j,G,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Q(K,j,G,ce,$,be){if(G+ce>K.length)throw new RangeError("Index out of range");if(G<0)throw new RangeError("Index out of range")}function re(K,j,G,ce,$){return j=+j,G=G>>>0,$||Q(K,j,G,4),n.write(K,j,G,ce,23,4),G+4}c.prototype.writeFloatLE=function(j,G,ce){return re(this,j,G,!0,ce)},c.prototype.writeFloatBE=function(j,G,ce){return re(this,j,G,!1,ce)};function se(K,j,G,ce,$){return j=+j,G=G>>>0,$||Q(K,j,G,8),n.write(K,j,G,ce,52,8),G+8}c.prototype.writeDoubleLE=function(j,G,ce){return se(this,j,G,!0,ce)},c.prototype.writeDoubleBE=function(j,G,ce){return se(this,j,G,!1,ce)},c.prototype.copy=function(j,G,ce,$){if(!c.isBuffer(j))throw new TypeError("argument should be a Buffer");if(ce||(ce=0),!$&&$!==0&&($=this.length),G>=j.length&&(G=j.length),G||(G=0),$>0&&$<ce&&($=ce),$===ce||j.length===0||this.length===0)return 0;if(G<0)throw new RangeError("targetStart out of bounds");if(ce<0||ce>=this.length)throw new RangeError("Index out of range");if($<0)throw new RangeError("sourceEnd out of bounds");$>this.length&&($=this.length),j.length-G<$-ce&&($=j.length-G+ce);const be=$-ce;return this===j&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(G,ce,$):Uint8Array.prototype.set.call(j,this.subarray(ce,$),G),be},c.prototype.fill=function(j,G,ce,$){if(typeof j=="string"){if(typeof G=="string"?($=G,G=0,ce=this.length):typeof ce=="string"&&($=ce,ce=this.length),$!==void 0&&typeof $!="string")throw new TypeError("encoding must be a string");if(typeof $=="string"&&!c.isEncoding($))throw new TypeError("Unknown encoding: "+$);if(j.length===1){const Se=j.charCodeAt(0);($==="utf8"&&Se<128||$==="latin1")&&(j=Se)}}else typeof j=="number"?j=j&255:typeof j=="boolean"&&(j=Number(j));if(G<0||this.length<G||this.length<ce)throw new RangeError("Out of range index");if(ce<=G)return this;G=G>>>0,ce=ce===void 0?this.length:ce>>>0,j||(j=0);let be;if(typeof j=="number")for(be=G;be<ce;++be)this[be]=j;else{const Se=c.isBuffer(j)?j:c.from(j,$),Be=Se.length;if(Be===0)throw new TypeError('The value "'+j+'" is invalid for argument "value"');for(be=0;be<ce-G;++be)this[be+G]=Se[be%Be]}return this};const ne={};function me(K,j,G){ne[K]=class extends G{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($){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:$,writable:!0})}toString(){return`${this.name} [${K}]: ${this.message}`}}}me("ERR_BUFFER_OUT_OF_BOUNDS",function(K){return K?`${K} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),me("ERR_INVALID_ARG_TYPE",function(K,j){return`The "${K}" argument must be of type number. Received type ${typeof j}`},TypeError),me("ERR_OUT_OF_RANGE",function(K,j,G){let ce=`The value of "${K}" is out of range.`,$=G;return Number.isInteger(G)&&Math.abs(G)>2**32?$=ge(String(G)):typeof G=="bigint"&&($=String(G),(G>BigInt(2)**BigInt(32)||G<-(BigInt(2)**BigInt(32)))&&($=ge($)),$+="n"),ce+=` It must be ${j}. Received ${$}`,ce},RangeError);function ge(K){let j="",G=K.length;const ce=K[0]==="-"?1:0;for(;G>=ce+4;G-=3)j=`_${K.slice(G-3,G)}${j}`;return`${K.slice(0,G)}${j}`}function Ae(K,j,G){le(j,"offset"),(K[j]===void 0||K[j+G]===void 0)&&ye(j,K.length-(G+1))}function pe(K,j,G,ce,$,be){if(K>G||K<j){const Se=typeof j=="bigint"?"n":"";let Be;throw j===0||j===BigInt(0)?Be=`>= 0${Se} and < 2${Se} ** ${(be+1)*8}${Se}`:Be=`>= -(2${Se} ** ${(be+1)*8-1}${Se}) and < 2 ** ${(be+1)*8-1}${Se}`,new ne.ERR_OUT_OF_RANGE("value",Be,K)}Ae(ce,$,be)}function le(K,j){if(typeof K!="number")throw new ne.ERR_INVALID_ARG_TYPE(j,"number",K)}function ye(K,j,G){throw Math.floor(K)!==K?(le(K,G),new ne.ERR_OUT_OF_RANGE("offset","an integer",K)):j<0?new ne.ERR_BUFFER_OUT_OF_BOUNDS:new ne.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${j}`,K)}const de=/[^+/0-9A-Za-z-_]/g;function Y(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 G;const ce=K.length;let $=null;const be=[];for(let Se=0;Se<ce;++Se){if(G=K.charCodeAt(Se),G>55295&&G<57344){if(!$){if(G>56319){(j-=3)>-1&&be.push(239,191,189);continue}else if(Se+1===ce){(j-=3)>-1&&be.push(239,191,189);continue}$=G;continue}if(G<56320){(j-=3)>-1&&be.push(239,191,189),$=G;continue}G=($-55296<<10|G-56320)+65536}else $&&(j-=3)>-1&&be.push(239,191,189);if($=null,G<128){if((j-=1)<0)break;be.push(G)}else if(G<2048){if((j-=2)<0)break;be.push(G>>6|192,G&63|128)}else if(G<65536){if((j-=3)<0)break;be.push(G>>12|224,G>>6&63|128,G&63|128)}else if(G<1114112){if((j-=4)<0)break;be.push(G>>18|240,G>>12&63|128,G>>6&63|128,G&63|128)}else throw new Error("Invalid code point")}return be}function V(K){const j=[];for(let G=0;G<K.length;++G)j.push(K.charCodeAt(G)&255);return j}function ue(K,j){let G,ce,$;const be=[];for(let Se=0;Se<K.length&&!((j-=2)<0);++Se)G=K.charCodeAt(Se),ce=G>>8,$=G%256,be.push($),be.push(ce);return be}function Te(K){return i.toByteArray(Y(K))}function Ie(K,j,G,ce){let $;for($=0;$<ce&&!($+G>=j.length||$>=K.length);++$)j[$+G]=K[$];return $}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 G=0;G<16;++G){const ce=G*16;for(let $=0;$<16;++$)j[ce+$]=K[G]+K[$]}return j}();function ee(K){return typeof BigInt>"u"?te:K}function te(){throw new Error("BigInt not supported")}}(Kl)),Kl}var Vl,Mm;function Kt(){return Mm||(Mm=1,Vl={ArrayIsArray(e){return Array.isArray(e)},ArrayPrototypeIncludes(e,i){return e.includes(i)},ArrayPrototypeIndexOf(e,i){return e.indexOf(i)},ArrayPrototypeJoin(e,i){return e.join(i)},ArrayPrototypeMap(e,i){return e.map(i)},ArrayPrototypePop(e,i){return e.pop(i)},ArrayPrototypePush(e,i){return e.push(i)},ArrayPrototypeSlice(e,i,n){return e.slice(i,n)},Error,FunctionPrototypeCall(e,i,...n){return e.call(i,...n)},FunctionPrototypeSymbolHasInstance(e,i){return Function.prototype[Symbol.hasInstance].call(e,i)},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,i){return Object.defineProperties(e,i)},ObjectDefineProperty(e,i,n){return Object.defineProperty(e,i,n)},ObjectGetOwnPropertyDescriptor(e,i){return Object.getOwnPropertyDescriptor(e,i)},ObjectKeys(e){return Object.keys(e)},ObjectSetPrototypeOf(e,i){return Object.setPrototypeOf(e,i)},Promise,PromisePrototypeCatch(e,i){return e.catch(i)},PromisePrototypeThen(e,i,n){return e.then(i,n)},PromiseReject(e){return Promise.reject(e)},ReflectApply:Reflect.apply,RegExpPrototypeTest(e,i){return e.test(i)},SafeSet:Set,String,StringPrototypeSlice(e,i,n){return e.slice(i,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,i,n){return e.set(i,n)},Uint8Array}),Vl}var Zl={exports:{}},Bm;function Ai(){return Bm||(Bm=1,function(e){const i=Sr(),n=Object.getPrototypeOf(async function(){}).constructor,a=globalThis.Blob||i.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,F)=>{u=U,c=F}),resolve:u,reject:c}},promisify(u){return new Promise((c,w)=>{u((U,...F)=>U?w(U):c(...F))})},debuglog(){return function(){}},format(u,...c){return u.replace(/%([sdifj])/g,function(...[w,U]){const F=c.shift();return U==="f"?F.toFixed(6):U==="j"?JSON.stringify(F):U==="s"&&typeof F=="object"?`${F.constructor!==Object?F.constructor.name:""} {}`.trim():F.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")}(Zl)),Zl.exports}var ra={};const Xc=Nc(pL);var Ql,Dm;function gn(){if(Dm)return Ql;Dm=1;const{format:e,inspect:i,AggregateError:n}=Ai(),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(v,h){if(!v)throw new w.ERR_INTERNAL_ASSERTION(h)}function F(v){let h="",m=v.length;const k=v[0]==="-"?1:0;for(;m>=k+4;m-=3)h=`_${v.slice(m-3,m)}${h}`;return`${v.slice(0,m)}${h}`}function O(v,h,m){if(typeof h=="function")return U(h.length<=m.length,`Code: ${v}; The provided arguments length (${m.length}) does not match the required ones (${h.length}).`),h(...m);const k=(h.match(/%[dfijoOs]/g)||[]).length;return U(k===m.length,`Code: ${v}; The provided arguments length (${m.length}) does not match the required ones (${k}).`),m.length===0?h:e(h,...m)}function M(v,h,m){m||(m=Error);class k extends m{constructor(...C){super(O(v,h,C))}toString(){return`${this.name} [${v}]: ${this.message}`}}Object.defineProperties(k.prototype,{name:{value:m.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${v}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),k.prototype.code=v,k.prototype[l]=!0,w[v]=k}function L(v){const h=c+v.name;return Object.defineProperty(v,"name",{value:h}),v}function _(v,h){if(v&&h&&v!==h){if(Array.isArray(h.errors))return h.errors.push(v),h;const m=new a([h,v],h.message);return m.code=h.code,m}return v||h}class b extends Error{constructor(h="The operation was aborted",m=void 0){if(m!==void 0&&typeof m!="object")throw new w.ERR_INVALID_ARG_TYPE("options","Object",m);super(h,m),this.code="ABORT_ERR",this.name="AbortError"}}return M("ERR_ASSERTION","%s",Error),M("ERR_INVALID_ARG_TYPE",(v,h,m)=>{U(typeof v=="string","'name' must be a string"),Array.isArray(h)||(h=[h]);let k="The ";v.endsWith(" argument")?k+=`${v} `:k+=`"${v}" ${v.includes(".")?"property":"argument"} `,k+="must be ";const B=[],C=[],R=[];for(const f of h)U(typeof f=="string","All expected entries have to be of type string"),d.includes(f)?B.push(f.toLowerCase()):u.test(f)?C.push(f):(U(f!=="object",'The value "object" should be written as "Object"'),R.push(f));if(C.length>0){const f=B.indexOf("object");f!==-1&&(B.splice(B,f,1),C.push("Object"))}if(B.length>0){switch(B.length){case 1:k+=`of type ${B[0]}`;break;case 2:k+=`one of type ${B[0]} or ${B[1]}`;break;default:{const f=B.pop();k+=`one of type ${B.join(", ")}, or ${f}`}}(C.length>0||R.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}`}}R.length>0&&(k+=" or ")}switch(R.length){case 0:break;case 1:R[0].toLowerCase()!==R[0]&&(k+="an "),k+=`${R[0]}`;break;case 2:k+=`one of ${R[0]} or ${R[1]}`;break;default:{const f=R.pop();k+=`one of ${R.join(", ")}, or ${f}`}}if(m==null)k+=`. Received ${m}`;else if(typeof m=="function"&&m.name)k+=`. Received function ${m.name}`;else if(typeof m=="object"){var A;if((A=m.constructor)!==null&&A!==void 0&&A.name)k+=`. Received an instance of ${m.constructor.name}`;else{const f=i(m,{depth:-1});k+=`. Received ${f}`}}else{let f=i(m,{colors:!1});f.length>25&&(f=`${f.slice(0,25)}...`),k+=`. Received type ${typeof m} (${f})`}return k},TypeError),M("ERR_INVALID_ARG_VALUE",(v,h,m="is invalid")=>{let k=i(h);return k.length>128&&(k=k.slice(0,128)+"..."),`The ${v.includes(".")?"property":"argument"} '${v}' ${m}. Received ${k}`},TypeError),M("ERR_INVALID_RETURN_VALUE",(v,h,m)=>{var k;const B=m!=null&&(k=m.constructor)!==null&&k!==void 0&&k.name?`instance of ${m.constructor.name}`:`type ${typeof m}`;return`Expected ${v} to be returned from the "${h}" function but got ${B}.`},TypeError),M("ERR_MISSING_ARGS",(...v)=>{U(v.length>0,"At least one arg needs to be specified");let h;const m=v.length;switch(v=(Array.isArray(v)?v:[v]).map(k=>`"${k}"`).join(" or "),m){case 1:h+=`The ${v[0]} argument`;break;case 2:h+=`The ${v[0]} and ${v[1]} arguments`;break;default:{const k=v.pop();h+=`The ${v.join(", ")}, and ${k} arguments`}break}return`${h} must be specified`},TypeError),M("ERR_OUT_OF_RANGE",(v,h,m)=>{U(h,'Missing "range" argument');let k;return Number.isInteger(m)&&Math.abs(m)>2**32?k=F(String(m)):typeof m=="bigint"?(k=String(m),(m>2n**32n||m<-(2n**32n))&&(k=F(k)),k+="n"):k=i(m),`The value of "${v}" is out of range. It must be ${h}. Received ${k}`},RangeError),M("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error),M("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error),M("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error),M("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error),M("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error),M("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),M("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error),M("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error),M("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error),M("ERR_STREAM_WRITE_AFTER_END","write after end",Error),M("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError),Ql={AbortError:b,aggregateTwoErrors:L(_),hideStackFrames:L,codes:w},Ql}var Xl,jm;function xa(){if(jm)return Xl;jm=1;const{ArrayIsArray:e,ArrayPrototypeIncludes:i,ArrayPrototypeJoin:n,ArrayPrototypeMap:a,NumberIsInteger:l,NumberIsNaN:d,NumberMAX_SAFE_INTEGER:u,NumberMIN_SAFE_INTEGER:c,NumberParseInt:w,ObjectPrototypeHasOwnProperty:U,RegExpPrototypeExec:F,String:O,StringPrototypeToUpperCase:M,StringPrototypeTrim:L}=Kt(),{hideStackFrames:_,codes:{ERR_SOCKET_BAD_PORT:b,ERR_INVALID_ARG_TYPE:v,ERR_INVALID_ARG_VALUE:h,ERR_OUT_OF_RANGE:m,ERR_UNKNOWN_SIGNAL:k}}=gn(),{normalizeEncoding:B}=Ai(),{isAsyncFunction:C,isArrayBufferView:R}=Ai().types,A={};function f(pe){return pe===(pe|0)}function E(pe){return pe===pe>>>0}const S=/^[0-7]+$/,P="must be a 32-bit unsigned integer or an octal string";function y(pe,le,ye){if(typeof pe>"u"&&(pe=ye),typeof pe=="string"){if(F(S,pe)===null)throw new h(le,pe,P);pe=w(pe,8)}return p(pe,le),pe}const r=_((pe,le,ye=c,de=u)=>{if(typeof pe!="number")throw new v(le,"number",pe);if(!l(pe))throw new m(le,"an integer",pe);if(pe<ye||pe>de)throw new m(le,`>= ${ye} && <= ${de}`,pe)}),s=_((pe,le,ye=-2147483648,de=2147483647)=>{if(typeof pe!="number")throw new v(le,"number",pe);if(!l(pe))throw new m(le,"an integer",pe);if(pe<ye||pe>de)throw new m(le,`>= ${ye} && <= ${de}`,pe)}),p=_((pe,le,ye=!1)=>{if(typeof pe!="number")throw new v(le,"number",pe);if(!l(pe))throw new m(le,"an integer",pe);const de=ye?1:0,Y=4294967295;if(pe<de||pe>Y)throw new m(le,`>= ${de} && <= ${Y}`,pe)});function g(pe,le){if(typeof pe!="string")throw new v(le,"string",pe)}function I(pe,le,ye=void 0,de){if(typeof pe!="number")throw new v(le,"number",pe);if(ye!=null&&pe<ye||de!=null&&pe>de||(ye!=null||de!=null)&&d(pe))throw new m(le,`${ye!=null?`>= ${ye}`:""}${ye!=null&&de!=null?" && ":""}${de!=null?`<= ${de}`:""}`,pe)}const x=_((pe,le,ye)=>{if(!i(ye,pe)){const Y="must be one of: "+n(a(ye,z=>typeof z=="string"?`'${z}'`:O(z)),", ");throw new h(le,pe,Y)}});function q(pe,le){if(typeof pe!="boolean")throw new v(le,"boolean",pe)}function T(pe,le,ye){return pe==null||!U(pe,le)?ye:pe[le]}const D=_((pe,le,ye=null)=>{const de=T(ye,"allowArray",!1),Y=T(ye,"allowFunction",!1);if(!T(ye,"nullable",!1)&&pe===null||!de&&e(pe)||typeof pe!="object"&&(!Y||typeof pe!="function"))throw new v(le,"Object",pe)}),W=_((pe,le,ye=0)=>{if(!e(pe))throw new v(le,"Array",pe);if(pe.length<ye){const de=`must be longer than ${ye}`;throw new h(le,pe,de)}});function J(pe,le="signal"){if(g(pe,le),A[pe]===void 0)throw A[M(pe)]!==void 0?new k(pe+" (signals must use all capital letters)"):new k(pe)}const X=_((pe,le="buffer")=>{if(!R(pe))throw new v(le,["Buffer","TypedArray","DataView"],pe)});function Q(pe,le){const ye=B(le),de=pe.length;if(ye==="hex"&&de%2!==0)throw new h("encoding",le,`is invalid for data of length ${de}`)}function re(pe,le="Port",ye=!0){if(typeof pe!="number"&&typeof pe!="string"||typeof pe=="string"&&L(pe).length===0||+pe!==+pe>>>0||pe>65535||pe===0&&!ye)throw new b(le,pe,ye);return pe|0}const se=_((pe,le)=>{if(pe!==void 0&&(pe===null||typeof pe!="object"||!("aborted"in pe)))throw new v(le,"AbortSignal",pe)}),ne=_((pe,le)=>{if(typeof pe!="function")throw new v(le,"Function",pe)}),me=_((pe,le)=>{if(typeof pe!="function"||C(pe))throw new v(le,"Function",pe)}),ge=_((pe,le)=>{if(pe!==void 0)throw new v(le,"undefined",pe)});function Ae(pe,le,ye){if(!i(ye,pe))throw new v(le,`('${n(ye,"|")}')`,pe)}return Xl={isInt32:f,isUint32:E,parseFileMode:y,validateArray:W,validateBoolean:q,validateBuffer:X,validateEncoding:Q,validateFunction:ne,validateInt32:s,validateInteger:r,validateNumber:I,validateObject:D,validateOneOf:x,validatePlainFunction:me,validatePort:re,validateSignalName:J,validateString:g,validateUint32:p,validateUndefined:ge,validateUnion:Ae,validateAbortSignal:se},Xl}var sa={exports:{}},Yl={exports:{}},Um;function wr(){if(Um)return Yl.exports;Um=1;var e=Yl.exports={},i,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"?i=setTimeout:i=a}catch{i=a}try{typeof clearTimeout=="function"?n=clearTimeout:n=l}catch{n=l}})();function d(b){if(i===setTimeout)return setTimeout(b,0);if((i===a||!i)&&setTimeout)return i=setTimeout,setTimeout(b,0);try{return i(b,0)}catch{try{return i.call(null,b,0)}catch{return i.call(this,b,0)}}}function u(b){if(n===clearTimeout)return clearTimeout(b);if((n===l||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(b);try{return n(b)}catch{try{return n.call(null,b)}catch{return n.call(this,b)}}}var c=[],w=!1,U,F=-1;function O(){!w||!U||(w=!1,U.length?c=U.concat(c):F=-1,c.length&&M())}function M(){if(!w){var b=d(O);w=!0;for(var v=c.length;v;){for(U=c,c=[];++F<v;)U&&U[F].run();F=-1,v=c.length}U=null,w=!1,u(b)}}e.nextTick=function(b){var v=new Array(arguments.length-1);if(arguments.length>1)for(var h=1;h<arguments.length;h++)v[h-1]=arguments[h];c.push(new L(b,v)),c.length===1&&!w&&d(M)};function L(b,v){this.fun=b,this.array=v}L.prototype.run=function(){this.fun.apply(null,this.array)},e.title="browser",e.browser=!0,e.env={},e.argv=[],e.version="",e.versions={};function _(){}return e.on=_,e.addListener=_,e.once=_,e.off=_,e.removeListener=_,e.removeAllListeners=_,e.emit=_,e.prependListener=_,e.prependOnceListener=_,e.listeners=function(b){return[]},e.binding=function(b){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(b){throw new Error("process.chdir is not supported")},e.umask=function(){return 0},Yl.exports}var $l,xm;function Lr(){if(xm)return $l;xm=1;const{Symbol:e,SymbolAsyncIterator:i,SymbolIterator:n}=Kt(),a=e("kDestroyed"),l=e("kIsErrored"),d=e("kIsReadable"),u=e("kIsDisturbed");function c(r,s=!1){var p;return!!(r&&typeof r.pipe=="function"&&typeof r.on=="function"&&(!s||typeof r.pause=="function"&&typeof r.resume=="function")&&(!r._writableState||((p=r._readableState)===null||p===void 0?void 0:p.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 F(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[i]=="function":s===!1?typeof r[n]=="function":typeof r[i]=="function"||typeof r[n]=="function"}function M(r){if(!F(r))return null;const s=r._writableState,p=r._readableState,g=s||p;return!!(r.destroyed||r[a]||g!=null&&g.destroyed)}function L(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 _(r,s){if(!w(r))return null;if(r.writableFinished===!0)return!0;const p=r._writableState;return p!=null&&p.errored?!1:typeof p?.finished!="boolean"?null:!!(p.finished||s===!1&&p.ended===!0&&p.length===0)}function b(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 v(r,s){if(!c(r))return null;const p=r._readableState;return p!=null&&p.errored?!1:typeof p?.endEmitted!="boolean"?null:!!(p.endEmitted||s===!1&&p.ended===!0&&p.length===0)}function h(r){return r&&r[d]!=null?r[d]:typeof r?.readable!="boolean"?null:M(r)?!1:c(r)&&r.readable&&!v(r)}function m(r){return typeof r?.writable!="boolean"?null:M(r)?!1:w(r)&&r.writable&&!L(r)}function k(r,s){return F(r)?M(r)?!0:!(s?.readable!==!1&&h(r)||s?.writable!==!1&&m(r)):null}function B(r){var s,p;return F(r)?r.writableErrored?r.writableErrored:(s=(p=r._writableState)===null||p===void 0?void 0:p.errored)!==null&&s!==void 0?s:null:null}function C(r){var s,p;return F(r)?r.readableErrored?r.readableErrored:(s=(p=r._readableState)===null||p===void 0?void 0:p.errored)!==null&&s!==void 0?s:null:null}function R(r){if(!F(r))return null;if(typeof r.closed=="boolean")return r.closed;const s=r._writableState,p=r._readableState;return typeof s?.closed=="boolean"||typeof p?.closed=="boolean"?s?.closed||p?.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 S(r){if(!F(r))return null;const s=r._writableState,p=r._readableState,g=s||p;return!g&&f(r)||!!(g&&g.autoDestroy&&g.emitClose&&g.closed===!1)}function P(r){var s;return!!(r&&((s=r[u])!==null&&s!==void 0?s:r.readableDidRead||r.readableAborted))}function y(r){var s,p,g,I,x,q,T,D,W,J;return!!(r&&((s=(p=(g=(I=(x=(q=r[l])!==null&&q!==void 0?q:r.readableErrored)!==null&&x!==void 0?x:r.writableErrored)!==null&&I!==void 0?I:(T=r._readableState)===null||T===void 0?void 0:T.errorEmitted)!==null&&g!==void 0?g:(D=r._writableState)===null||D===void 0?void 0:D.errorEmitted)!==null&&p!==void 0?p:(W=r._readableState)===null||W===void 0?void 0:W.errored)!==null&&s!==void 0?s:!((J=r._writableState)===null||J===void 0)&&J.errored))}return $l={kDestroyed:a,isDisturbed:P,kIsDisturbed:u,isErrored:y,kIsErrored:l,isReadable:h,kIsReadable:d,isClosed:R,isDestroyed:M,isDuplexNodeStream:U,isFinished:k,isIterable:O,isReadableNodeStream:c,isReadableEnded:b,isReadableFinished:v,isReadableErrored:C,isNodeStream:F,isWritable:m,isWritableNodeStream:w,isWritableEnded:L,isWritableFinished:_,isWritableErrored:B,isServerRequest:E,isServerResponse:f,willEmitClose:S},$l}var zm;function _r(){if(zm)return sa.exports;zm=1;const e=wr(),{AbortError:i,codes:n}=gn(),{ERR_INVALID_ARG_TYPE:a,ERR_STREAM_PREMATURE_CLOSE:l}=n,{kEmptyObject:d,once:u}=Ai(),{validateAbortSignal:c,validateFunction:w,validateObject:U}=xa(),{Promise:F}=Kt(),{isClosed:O,isReadable:M,isReadableNodeStream:L,isReadableFinished:_,isReadableErrored:b,isWritable:v,isWritableNodeStream:h,isWritableFinished:m,isWritableErrored:k,isNodeStream:B,willEmitClose:C}=Lr();function R(S){return S.setHeader&&typeof S.abort=="function"}const A=()=>{};function f(S,P,y){var r,s;arguments.length===2?(y=P,P=d):P==null?P=d:U(P,"options"),w(y,"callback"),c(P.signal,"options.signal"),y=u(y);const p=(r=P.readable)!==null&&r!==void 0?r:L(S),g=(s=P.writable)!==null&&s!==void 0?s:h(S);if(!B(S))throw new a("stream","Stream",S);const I=S._writableState,x=S._readableState,q=()=>{S.writable||W()};let T=C(S)&&L(S)===p&&h(S)===g,D=m(S,!1);const W=()=>{D=!0,S.destroyed&&(T=!1),!(T&&(!S.readable||p))&&(!p||J)&&y.call(S)};let J=_(S,!1);const X=()=>{J=!0,S.destroyed&&(T=!1),!(T&&(!S.writable||g))&&(!g||D)&&y.call(S)},Q=ge=>{y.call(S,ge)};let re=O(S);const se=()=>{re=!0;const ge=k(S)||b(S);if(ge&&typeof ge!="boolean")return y.call(S,ge);if(p&&!J&&L(S,!0)&&!_(S,!1))return y.call(S,new l);if(g&&!D&&!m(S,!1))return y.call(S,new l);y.call(S)},ne=()=>{S.req.on("finish",W)};R(S)?(S.on("complete",W),T||S.on("abort",se),S.req?ne():S.on("request",ne)):g&&!I&&(S.on("end",q),S.on("close",q)),!T&&typeof S.aborted=="boolean"&&S.on("aborted",se),S.on("end",X),S.on("finish",W),P.error!==!1&&S.on("error",Q),S.on("close",se),re?e.nextTick(se):I!=null&&I.errorEmitted||x!=null&&x.errorEmitted?T||e.nextTick(se):(!p&&(!T||M(S))&&(D||v(S)===!1)||!g&&(!T||v(S))&&(J||M(S)===!1)||x&&S.req&&S.aborted)&&e.nextTick(se);const me=()=>{y=A,S.removeListener("aborted",se),S.removeListener("complete",W),S.removeListener("abort",se),S.removeListener("request",ne),S.req&&S.req.removeListener("finish",W),S.removeListener("end",q),S.removeListener("close",q),S.removeListener("finish",W),S.removeListener("end",X),S.removeListener("error",Q),S.removeListener("close",se)};if(P.signal&&!re){const ge=()=>{const Ae=y;me(),Ae.call(S,new i(void 0,{cause:P.signal.reason}))};if(P.signal.aborted)e.nextTick(ge);else{const Ae=y;y=u((...pe)=>{P.signal.removeEventListener("abort",ge),Ae.apply(S,pe)}),P.signal.addEventListener("abort",ge)}}return me}function E(S,P){return new F((y,r)=>{f(S,P,s=>{s?r(s):y()})})}return sa.exports=f,sa.exports.finished=E,sa.exports}var Wm;function pk(){if(Wm)return ra;Wm=1;const e=globalThis.AbortController||Xc.AbortController,{codes:{ERR_INVALID_ARG_TYPE:i,ERR_MISSING_ARGS:n,ERR_OUT_OF_RANGE:a},AbortError:l}=gn(),{validateAbortSignal:d,validateInteger:u,validateObject:c}=xa(),w=Kt().Symbol("kWeak"),{finished:U}=_r(),{ArrayPrototypePush:F,MathFloor:O,Number:M,NumberIsNaN:L,Promise:_,PromiseReject:b,PromisePrototypeThen:v,Symbol:h}=Kt(),m=h("kEmpty"),k=h("kEof");function B(x,q){if(typeof x!="function")throw new i("fn",["Function","AsyncFunction"],x);q!=null&&c(q,"options"),q?.signal!=null&&d(q.signal,"options.signal");let T=1;return q?.concurrency!=null&&(T=O(q.concurrency)),u(T,"concurrency",1),async function*(){var W,J;const X=new e,Q=this,re=[],se=X.signal,ne={signal:se},me=()=>X.abort();q!=null&&(W=q.signal)!==null&&W!==void 0&&W.aborted&&me(),q==null||(J=q.signal)===null||J===void 0||J.addEventListener("abort",me);let ge,Ae,pe=!1;function le(){pe=!0}async function ye(){try{for await(let z of Q){var de;if(pe)return;if(se.aborted)throw new l;try{z=x(z,ne)}catch(V){z=b(V)}z!==m&&(typeof((de=z)===null||de===void 0?void 0:de.catch)=="function"&&z.catch(le),re.push(z),ge&&(ge(),ge=null),!pe&&re.length&&re.length>=T&&await new _(V=>{Ae=V}))}re.push(k)}catch(z){const V=b(z);v(V,void 0,le),re.push(V)}finally{var Y;pe=!0,ge&&(ge(),ge=null),q==null||(Y=q.signal)===null||Y===void 0||Y.removeEventListener("abort",me)}}ye();try{for(;;){for(;re.length>0;){const de=await re[0];if(de===k)return;if(se.aborted)throw new l;de!==m&&(yield de),re.shift(),Ae&&(Ae(),Ae=null)}await new _(de=>{ge=de})}}finally{X.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 T=0;for await(const W of this){var D;if(x!=null&&(D=x.signal)!==null&&D!==void 0&&D.aborted)throw new l({cause:x.signal.reason});yield[T++,W]}}.call(this)}async function R(x,q=void 0){for await(const T of S.call(this,x,q))return!0;return!1}async function A(x,q=void 0){if(typeof x!="function")throw new i("fn",["Function","AsyncFunction"],x);return!await R.call(this,async(...T)=>!await x(...T),q)}async function f(x,q){for await(const T of S.call(this,x,q))return T}async function E(x,q){if(typeof x!="function")throw new i("fn",["Function","AsyncFunction"],x);async function T(D,W){return await x(D,W),m}for await(const D of B.call(this,T,q));}function S(x,q){if(typeof x!="function")throw new i("fn",["Function","AsyncFunction"],x);async function T(D,W){return await x(D,W)?D:m}return B.call(this,T,q)}class P extends n{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}}async function y(x,q,T){var D;if(typeof x!="function")throw new i("reducer",["Function","AsyncFunction"],x);T!=null&&c(T,"options"),T?.signal!=null&&d(T.signal,"options.signal");let W=arguments.length>1;if(T!=null&&(D=T.signal)!==null&&D!==void 0&&D.aborted){const se=new l(void 0,{cause:T.signal.reason});throw this.once("error",()=>{}),await U(this.destroy(se)),se}const J=new e,X=J.signal;if(T!=null&&T.signal){const se={once:!0,[w]:this};T.signal.addEventListener("abort",()=>J.abort(),se)}let Q=!1;try{for await(const se of this){var re;if(Q=!0,T!=null&&(re=T.signal)!==null&&re!==void 0&&re.aborted)throw new l;W?q=await x(q,se,{signal:X}):(q=se,W=!0)}if(!Q&&!W)throw new P}finally{J.abort()}return q}async function r(x){x!=null&&c(x,"options"),x?.signal!=null&&d(x.signal,"options.signal");const q=[];for await(const D of this){var T;if(x!=null&&(T=x.signal)!==null&&T!==void 0&&T.aborted)throw new l(void 0,{cause:x.signal.reason});F(q,D)}return q}function s(x,q){const T=B.call(this,x,q);return async function*(){for await(const W of T)yield*W}.call(this)}function p(x){if(x=M(x),L(x))return 0;if(x<0)throw new a("number",">= 0",x);return x}function g(x,q=void 0){return q!=null&&c(q,"options"),q?.signal!=null&&d(q.signal,"options.signal"),x=p(x),async function*(){var D;if(q!=null&&(D=q.signal)!==null&&D!==void 0&&D.aborted)throw new l;for await(const J of this){var W;if(q!=null&&(W=q.signal)!==null&&W!==void 0&&W.aborted)throw new l;x--<=0&&(yield J)}}.call(this)}function I(x,q=void 0){return q!=null&&c(q,"options"),q?.signal!=null&&d(q.signal,"options.signal"),x=p(x),async function*(){var D;if(q!=null&&(D=q.signal)!==null&&D!==void 0&&D.aborted)throw new l;for await(const J of this){var W;if(q!=null&&(W=q.signal)!==null&&W!==void 0&&W.aborted)throw new l;if(x-- >0)yield J;else return}}.call(this)}return ra.streamReturningOperators={asIndexedPairs:C,drop:g,filter:S,flatMap:s,map:B,take:I},ra.promiseReturningOperators={every:A,forEach:E,reduce:y,toArray:r,some:R,find:f},ra}var ec,qm;function rs(){if(qm)return ec;qm=1;const e=wr(),{aggregateTwoErrors:i,codes:{ERR_MULTIPLE_CALLBACK:n},AbortError:a}=gn(),{Symbol:l}=Kt(),{kDestroyed:d,isDestroyed:u,isFinished:c,isServerRequest:w}=Lr(),U=l("kDestroy"),F=l("kConstruct");function O(S,P,y){S&&(S.stack,P&&!P.errored&&(P.errored=S),y&&!y.errored&&(y.errored=S))}function M(S,P){const y=this._readableState,r=this._writableState,s=r||y;return r&&r.destroyed||y&&y.destroyed?(typeof P=="function"&&P(),this):(O(S,r,y),r&&(r.destroyed=!0),y&&(y.destroyed=!0),s.constructed?L(this,S,P):this.once(U,function(p){L(this,i(p,S),P)}),this)}function L(S,P,y){let r=!1;function s(p){if(r)return;r=!0;const g=S._readableState,I=S._writableState;O(p,I,g),I&&(I.closed=!0),g&&(g.closed=!0),typeof y=="function"&&y(p),p?e.nextTick(_,S,p):e.nextTick(b,S)}try{S._destroy(P||null,s)}catch(p){s(p)}}function _(S,P){v(S,P),b(S)}function b(S){const P=S._readableState,y=S._writableState;y&&(y.closeEmitted=!0),P&&(P.closeEmitted=!0),(y&&y.emitClose||P&&P.emitClose)&&S.emit("close")}function v(S,P){const y=S._readableState,r=S._writableState;r&&r.errorEmitted||y&&y.errorEmitted||(r&&(r.errorEmitted=!0),y&&(y.errorEmitted=!0),S.emit("error",P))}function h(){const S=this._readableState,P=this._writableState;S&&(S.constructed=!0,S.closed=!1,S.closeEmitted=!1,S.destroyed=!1,S.errored=null,S.errorEmitted=!1,S.reading=!1,S.ended=S.readable===!1,S.endEmitted=S.readable===!1),P&&(P.constructed=!0,P.destroyed=!1,P.closed=!1,P.closeEmitted=!1,P.errored=null,P.errorEmitted=!1,P.finalCalled=!1,P.prefinished=!1,P.ended=P.writable===!1,P.ending=P.writable===!1,P.finished=P.writable===!1)}function m(S,P,y){const r=S._readableState,s=S._writableState;if(s&&s.destroyed||r&&r.destroyed)return this;r&&r.autoDestroy||s&&s.autoDestroy?S.destroy(P):P&&(P.stack,s&&!s.errored&&(s.errored=P),r&&!r.errored&&(r.errored=P),y?e.nextTick(v,S,P):v(S,P))}function k(S,P){if(typeof S._construct!="function")return;const y=S._readableState,r=S._writableState;y&&(y.constructed=!1),r&&(r.constructed=!1),S.once(F,P),!(S.listenerCount(F)>1)&&e.nextTick(B,S)}function B(S){let P=!1;function y(r){if(P){m(S,r??new n);return}P=!0;const s=S._readableState,p=S._writableState,g=p||s;s&&(s.constructed=!0),p&&(p.constructed=!0),g.destroyed?S.emit(U,r):r?m(S,r,!0):e.nextTick(C,S)}try{S._construct(y)}catch(r){y(r)}}function C(S){S.emit(F)}function R(S){return S&&S.setHeader&&typeof S.abort=="function"}function A(S){S.emit("close")}function f(S,P){S.emit("error",P),e.nextTick(A,S)}function E(S,P){!S||u(S)||(!P&&!c(S)&&(P=new a),w(S)?(S.socket=null,S.destroy(P)):R(S)?S.abort():R(S.req)?S.req.abort():typeof S.destroy=="function"?S.destroy(P):typeof S.close=="function"?S.close():P?e.nextTick(f,S,P):e.nextTick(A,S),S.destroyed||(S[d]=!0))}return ec={construct:k,destroyer:E,destroy:M,undestroy:h,errorOrDestroy:m},ec}var oa={exports:{}},Jm;function Yc(){if(Jm)return oa.exports;Jm=1;var e=typeof Reflect=="object"?Reflect:null,i=e&&typeof e.apply=="function"?e.apply:function(C,R,A){return Function.prototype.apply.call(C,R,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(B){console&&console.warn&&console.warn(B)}var l=Number.isNaN||function(C){return C!==C};function d(){d.init.call(this)}oa.exports=d,oa.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(B){if(typeof B!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof B)}Object.defineProperty(d,"defaultMaxListeners",{enumerable:!0,get:function(){return u},set:function(B){if(typeof B!="number"||B<0||l(B))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+B+".");u=B}}),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(B){return B._maxListeners===void 0?d.defaultMaxListeners:B._maxListeners}d.prototype.getMaxListeners=function(){return w(this)},d.prototype.emit=function(C){for(var R=[],A=1;A<arguments.length;A++)R.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 S;if(R.length>0&&(S=R[0]),S instanceof Error)throw S;var P=new Error("Unhandled error."+(S?" ("+S.message+")":""));throw P.context=S,P}var y=E[C];if(y===void 0)return!1;if(typeof y=="function")i(y,this,R);else for(var r=y.length,s=_(y,r),A=0;A<r;++A)i(s[A],this,R);return!0};function U(B,C,R,A){var f,E,S;if(c(R),E=B._events,E===void 0?(E=B._events=Object.create(null),B._eventsCount=0):(E.newListener!==void 0&&(B.emit("newListener",C,R.listener?R.listener:R),E=B._events),S=E[C]),S===void 0)S=E[C]=R,++B._eventsCount;else if(typeof S=="function"?S=E[C]=A?[R,S]:[S,R]:A?S.unshift(R):S.push(R),f=w(B),f>0&&S.length>f&&!S.warned){S.warned=!0;var P=new Error("Possible EventEmitter memory leak detected. "+S.length+" "+String(C)+" listeners added. Use emitter.setMaxListeners() to increase limit");P.name="MaxListenersExceededWarning",P.emitter=B,P.type=C,P.count=S.length,a(P)}return B}d.prototype.addListener=function(C,R){return U(this,C,R,!1)},d.prototype.on=d.prototype.addListener,d.prototype.prependListener=function(C,R){return U(this,C,R,!0)};function F(){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(B,C,R){var A={fired:!1,wrapFn:void 0,target:B,type:C,listener:R},f=F.bind(A);return f.listener=R,A.wrapFn=f,f}d.prototype.once=function(C,R){return c(R),this.on(C,O(this,C,R)),this},d.prototype.prependOnceListener=function(C,R){return c(R),this.prependListener(C,O(this,C,R)),this},d.prototype.removeListener=function(C,R){var A,f,E,S,P;if(c(R),f=this._events,f===void 0)return this;if(A=f[C],A===void 0)return this;if(A===R||A.listener===R)--this._eventsCount===0?this._events=Object.create(null):(delete f[C],f.removeListener&&this.emit("removeListener",C,A.listener||R));else if(typeof A!="function"){for(E=-1,S=A.length-1;S>=0;S--)if(A[S]===R||A[S].listener===R){P=A[S].listener,E=S;break}if(E<0)return this;E===0?A.shift():b(A,E),A.length===1&&(f[C]=A[0]),f.removeListener!==void 0&&this.emit("removeListener",C,P||R)}return this},d.prototype.off=d.prototype.removeListener,d.prototype.removeAllListeners=function(C){var R,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),S;for(f=0;f<E.length;++f)S=E[f],S!=="removeListener"&&this.removeAllListeners(S);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(R=A[C],typeof R=="function")this.removeListener(C,R);else if(R!==void 0)for(f=R.length-1;f>=0;f--)this.removeListener(C,R[f]);return this};function M(B,C,R){var A=B._events;if(A===void 0)return[];var f=A[C];return f===void 0?[]:typeof f=="function"?R?[f.listener||f]:[f]:R?v(f):_(f,f.length)}d.prototype.listeners=function(C){return M(this,C,!0)},d.prototype.rawListeners=function(C){return M(this,C,!1)},d.listenerCount=function(B,C){return typeof B.listenerCount=="function"?B.listenerCount(C):L.call(B,C)},d.prototype.listenerCount=L;function L(B){var C=this._events;if(C!==void 0){var R=C[B];if(typeof R=="function")return 1;if(R!==void 0)return R.length}return 0}d.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]};function _(B,C){for(var R=new Array(C),A=0;A<C;++A)R[A]=B[A];return R}function b(B,C){for(;C+1<B.length;C++)B[C]=B[C+1];B.pop()}function v(B){for(var C=new Array(B.length),R=0;R<C.length;++R)C[R]=B[R].listener||B[R];return C}function h(B,C){return new Promise(function(R,A){function f(S){B.removeListener(C,E),A(S)}function E(){typeof B.removeListener=="function"&&B.removeListener("error",f),R([].slice.call(arguments))}k(B,C,E,{once:!0}),C!=="error"&&m(B,f,{once:!0})})}function m(B,C,R){typeof B.on=="function"&&k(B,"error",C,R)}function k(B,C,R,A){if(typeof B.on=="function")A.once?B.once(C,R):B.on(C,R);else if(typeof B.addEventListener=="function")B.addEventListener(C,function f(E){A.once&&B.removeEventListener(C,f),R(E)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof B)}return oa.exports}var tc,Gm;function $c(){if(Gm)return tc;Gm=1;const{ArrayIsArray:e,ObjectSetPrototypeOf:i}=Kt(),{EventEmitter:n}=Yc();function a(d){n.call(this,d)}i(a.prototype,n.prototype),i(a,n),a.prototype.pipe=function(d,u){const c=this;function w(b){d.writable&&d.write(b)===!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",M));let F=!1;function O(){F||(F=!0,d.end())}function M(){F||(F=!0,typeof d.destroy=="function"&&d.destroy())}function L(b){_(),n.listenerCount(this,"error")===0&&this.emit("error",b)}l(c,"error",L),l(d,"error",L);function _(){c.removeListener("data",w),d.removeListener("drain",U),c.removeListener("end",O),c.removeListener("close",M),c.removeListener("error",L),d.removeListener("error",L),c.removeListener("end",_),c.removeListener("close",_),d.removeListener("close",_)}return c.on("end",_),c.on("close",_),d.on("close",_),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 tc={Stream:a,prependListener:l},tc}var nc={exports:{}},Hm;function ef(){return Hm||(Hm=1,function(e){const{AbortError:i,codes:n}=gn(),a=_r(),{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 i(void 0,{cause:c.reason}))};return c.aborted?U():(c.addEventListener("abort",U),a(w,()=>c.removeEventListener("abort",U))),w}}(nc)),nc.exports}var ic,Km;function mk(){if(Km)return ic;Km=1;const{StringPrototypeSlice:e,SymbolIterator:i,TypedArrayPrototypeSet:n,Uint8Array:a}=Kt(),{Buffer:l}=Sr(),{inspect:d}=Ai();return ic=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,F=0;for(;U;)n(w,U.data,F),F+=U.data.length,U=U.next;return w}consume(c,w){const U=this.head.data;if(c<U.length){const F=U.slice(0,c);return this.head.data=U.slice(c),F}return c===U.length?this.shift():w?this._getString(c):this._getBuffer(c)}first(){return this.head.data}*[i](){for(let c=this.head;c;c=c.next)yield c.data}_getString(c){let w="",U=this.head,F=0;do{const O=U.data;if(c>O.length)w+=O,c-=O.length;else{c===O.length?(w+=O,++F,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}++F}while((U=U.next)!==null);return this.length-=F,w}_getBuffer(c){const w=l.allocUnsafe(c),U=c;let F=this.head,O=0;do{const M=F.data;if(c>M.length)n(w,M,U-c),c-=M.length;else{c===M.length?(n(w,M,U-c),++O,F.next?this.head=F.next:this.head=this.tail=null):(n(w,new a(M.buffer,M.byteOffset,c),U-c),this.head=F,F.data=M.slice(c));break}++O}while((F=F.next)!==null);return this.length-=O,w}[Symbol.for("nodejs.util.inspect.custom")](c,w){return d(this,{...w,depth:0,customInspect:!1})}},ic}var rc,Vm;function tf(){if(Vm)return rc;Vm=1;const{MathFloor:e,NumberIsInteger:i}=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 F=a(c,U,w);if(F!=null){if(!i(F)||F<0){const O=U?`options.${w}`:"options.highWaterMark";throw new n(O,F)}return e(F)}return l(u.objectMode)}return rc={getHighWaterMark:d,getDefaultHighWaterMark:l},rc}var sc={},aa={exports:{}},oc={};/*!
|
|
998
|
+
* The buffer module from node.js, for the browser.
|
|
999
|
+
*
|
|
1000
|
+
* @author Feross Aboukhadijeh <https://feross.org>
|
|
1001
|
+
* @license MIT
|
|
1002
|
+
*/var Zm;function yk(){return Zm||(Zm=1,function(e){var i=Jc(),n=Hg(),a=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=c,e.SlowBuffer=m,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 Y=new Uint8Array(1),z={foo:function(){return 42}};return Object.setPrototypeOf(z,Uint8Array.prototype),Object.setPrototypeOf(Y,z),Y.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(Y){if(Y>l)throw new RangeError('The value "'+Y+'" is invalid for option "size"');var z=new Uint8Array(Y);return Object.setPrototypeOf(z,c.prototype),z}function c(Y,z,V){if(typeof Y=="number"){if(typeof z=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return O(Y)}return w(Y,z,V)}c.poolSize=8192;function w(Y,z,V){if(typeof Y=="string")return M(Y,z);if(ArrayBuffer.isView(Y))return _(Y);if(Y==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Y);if(le(Y,ArrayBuffer)||Y&&le(Y.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(le(Y,SharedArrayBuffer)||Y&&le(Y.buffer,SharedArrayBuffer)))return b(Y,z,V);if(typeof Y=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var ue=Y.valueOf&&Y.valueOf();if(ue!=null&&ue!==Y)return c.from(ue,z,V);var Te=v(Y);if(Te)return Te;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Y[Symbol.toPrimitive]=="function")return c.from(Y[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 Y)}c.from=function(Y,z,V){return w(Y,z,V)},Object.setPrototypeOf(c.prototype,Uint8Array.prototype),Object.setPrototypeOf(c,Uint8Array);function U(Y){if(typeof Y!="number")throw new TypeError('"size" argument must be of type number');if(Y<0)throw new RangeError('The value "'+Y+'" is invalid for option "size"')}function F(Y,z,V){return U(Y),Y<=0?u(Y):z!==void 0?typeof V=="string"?u(Y).fill(z,V):u(Y).fill(z):u(Y)}c.alloc=function(Y,z,V){return F(Y,z,V)};function O(Y){return U(Y),u(Y<0?0:h(Y)|0)}c.allocUnsafe=function(Y){return O(Y)},c.allocUnsafeSlow=function(Y){return O(Y)};function M(Y,z){if((typeof z!="string"||z==="")&&(z="utf8"),!c.isEncoding(z))throw new TypeError("Unknown encoding: "+z);var V=k(Y,z)|0,ue=u(V),Te=ue.write(Y,z);return Te!==V&&(ue=ue.slice(0,Te)),ue}function L(Y){for(var z=Y.length<0?0:h(Y.length)|0,V=u(z),ue=0;ue<z;ue+=1)V[ue]=Y[ue]&255;return V}function _(Y){if(le(Y,Uint8Array)){var z=new Uint8Array(Y);return b(z.buffer,z.byteOffset,z.byteLength)}return L(Y)}function b(Y,z,V){if(z<0||Y.byteLength<z)throw new RangeError('"offset" is outside of buffer bounds');if(Y.byteLength<z+(V||0))throw new RangeError('"length" is outside of buffer bounds');var ue;return z===void 0&&V===void 0?ue=new Uint8Array(Y):V===void 0?ue=new Uint8Array(Y,z):ue=new Uint8Array(Y,z,V),Object.setPrototypeOf(ue,c.prototype),ue}function v(Y){if(c.isBuffer(Y)){var z=h(Y.length)|0,V=u(z);return V.length===0||Y.copy(V,0,0,z),V}if(Y.length!==void 0)return typeof Y.length!="number"||ye(Y.length)?u(0):L(Y);if(Y.type==="Buffer"&&Array.isArray(Y.data))return L(Y.data)}function h(Y){if(Y>=l)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+l.toString(16)+" bytes");return Y|0}function m(Y){return+Y!=Y&&(Y=0),c.alloc(+Y)}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 ue=z.length,Te=V.length,Ie=0,Ce=Math.min(ue,Te);Ie<Ce;++Ie)if(z[Ie]!==V[Ie]){ue=z[Ie],Te=V[Ie];break}return ue<Te?-1:Te<ue?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 ue;if(V===void 0)for(V=0,ue=0;ue<z.length;++ue)V+=z[ue].length;var Te=c.allocUnsafe(V),Ie=0;for(ue=0;ue<z.length;++ue){var Ce=z[ue];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(Y,z){if(c.isBuffer(Y))return Y.length;if(ArrayBuffer.isView(Y)||le(Y,ArrayBuffer))return Y.byteLength;if(typeof Y!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Y);var V=Y.length,ue=arguments.length>2&&arguments[2]===!0;if(!ue&&V===0)return 0;for(var Te=!1;;)switch(z){case"ascii":case"latin1":case"binary":return V;case"utf8":case"utf-8":return ne(Y).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return V*2;case"hex":return V>>>1;case"base64":return Ae(Y).length;default:if(Te)return ue?-1:ne(Y).length;z=(""+z).toLowerCase(),Te=!0}}c.byteLength=k;function B(Y,z,V){var ue=!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(Y||(Y="utf8");;)switch(Y){case"hex":return q(this,z,V);case"utf8":case"utf-8":return s(this,z,V);case"ascii":return I(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 T(this,z,V);default:if(ue)throw new TypeError("Unknown encoding: "+Y);Y=(Y+"").toLowerCase(),ue=!0}}c.prototype._isBuffer=!0;function C(Y,z,V){var ue=Y[z];Y[z]=Y[V],Y[V]=ue}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):B.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,ue,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),ue===void 0&&(ue=z?z.length:0),Te===void 0&&(Te=0),Ie===void 0&&(Ie=this.length),V<0||ue>z.length||Te<0||Ie>this.length)throw new RangeError("out of range index");if(Te>=Ie&&V>=ue)return 0;if(Te>=Ie)return-1;if(V>=ue)return 1;if(V>>>=0,ue>>>=0,Te>>>=0,Ie>>>=0,this===z)return 0;for(var Ce=Ie-Te,We=ue-V,Ge=Math.min(Ce,We),ee=this.slice(Te,Ie),te=z.slice(V,ue),K=0;K<Ge;++K)if(ee[K]!==te[K]){Ce=ee[K],We=te[K];break}return Ce<We?-1:We<Ce?1:0};function R(Y,z,V,ue,Te){if(Y.length===0)return-1;if(typeof V=="string"?(ue=V,V=0):V>2147483647?V=2147483647:V<-2147483648&&(V=-2147483648),V=+V,ye(V)&&(V=Te?0:Y.length-1),V<0&&(V=Y.length+V),V>=Y.length){if(Te)return-1;V=Y.length-1}else if(V<0)if(Te)V=0;else return-1;if(typeof z=="string"&&(z=c.from(z,ue)),c.isBuffer(z))return z.length===0?-1:A(Y,z,V,ue,Te);if(typeof z=="number")return z=z&255,typeof Uint8Array.prototype.indexOf=="function"?Te?Uint8Array.prototype.indexOf.call(Y,z,V):Uint8Array.prototype.lastIndexOf.call(Y,z,V):A(Y,[z],V,ue,Te);throw new TypeError("val must be string, number or Buffer")}function A(Y,z,V,ue,Te){var Ie=1,Ce=Y.length,We=z.length;if(ue!==void 0&&(ue=String(ue).toLowerCase(),ue==="ucs2"||ue==="ucs-2"||ue==="utf16le"||ue==="utf-16le")){if(Y.length<2||z.length<2)return-1;Ie=2,Ce/=2,We/=2,V/=2}function Ge(G,ce){return Ie===1?G[ce]:G.readUInt16BE(ce*Ie)}var ee;if(Te){var te=-1;for(ee=V;ee<Ce;ee++)if(Ge(Y,ee)===Ge(z,te===-1?0:ee-te)){if(te===-1&&(te=ee),ee-te+1===We)return te*Ie}else te!==-1&&(ee-=ee-te),te=-1}else for(V+We>Ce&&(V=Ce-We),ee=V;ee>=0;ee--){for(var K=!0,j=0;j<We;j++)if(Ge(Y,ee+j)!==Ge(z,j)){K=!1;break}if(K)return ee}return-1}c.prototype.includes=function(z,V,ue){return this.indexOf(z,V,ue)!==-1},c.prototype.indexOf=function(z,V,ue){return R(this,z,V,ue,!0)},c.prototype.lastIndexOf=function(z,V,ue){return R(this,z,V,ue,!1)};function f(Y,z,V,ue){V=Number(V)||0;var Te=Y.length-V;ue?(ue=Number(ue),ue>Te&&(ue=Te)):ue=Te;var Ie=z.length;ue>Ie/2&&(ue=Ie/2);for(var Ce=0;Ce<ue;++Ce){var We=parseInt(z.substr(Ce*2,2),16);if(ye(We))return Ce;Y[V+Ce]=We}return Ce}function E(Y,z,V,ue){return pe(ne(z,Y.length-V),Y,V,ue)}function S(Y,z,V,ue){return pe(me(z),Y,V,ue)}function P(Y,z,V,ue){return pe(Ae(z),Y,V,ue)}function y(Y,z,V,ue){return pe(ge(z,Y.length-V),Y,V,ue)}c.prototype.write=function(z,V,ue,Te){if(V===void 0)Te="utf8",ue=this.length,V=0;else if(ue===void 0&&typeof V=="string")Te=V,ue=this.length,V=0;else if(isFinite(V))V=V>>>0,isFinite(ue)?(ue=ue>>>0,Te===void 0&&(Te="utf8")):(Te=ue,ue=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var Ie=this.length-V;if((ue===void 0||ue>Ie)&&(ue=Ie),z.length>0&&(ue<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,ue);case"utf8":case"utf-8":return E(this,z,V,ue);case"ascii":case"latin1":case"binary":return S(this,z,V,ue);case"base64":return P(this,z,V,ue);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,z,V,ue);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(Y,z,V){return z===0&&V===Y.length?i.fromByteArray(Y):i.fromByteArray(Y.slice(z,V))}function s(Y,z,V){V=Math.min(Y.length,V);for(var ue=[],Te=z;Te<V;){var Ie=Y[Te],Ce=null,We=Ie>239?4:Ie>223?3:Ie>191?2:1;if(Te+We<=V){var Ge,ee,te,K;switch(We){case 1:Ie<128&&(Ce=Ie);break;case 2:Ge=Y[Te+1],(Ge&192)===128&&(K=(Ie&31)<<6|Ge&63,K>127&&(Ce=K));break;case 3:Ge=Y[Te+1],ee=Y[Te+2],(Ge&192)===128&&(ee&192)===128&&(K=(Ie&15)<<12|(Ge&63)<<6|ee&63,K>2047&&(K<55296||K>57343)&&(Ce=K));break;case 4:Ge=Y[Te+1],ee=Y[Te+2],te=Y[Te+3],(Ge&192)===128&&(ee&192)===128&&(te&192)===128&&(K=(Ie&15)<<18|(Ge&63)<<12|(ee&63)<<6|te&63,K>65535&&K<1114112&&(Ce=K))}}Ce===null?(Ce=65533,We=1):Ce>65535&&(Ce-=65536,ue.push(Ce>>>10&1023|55296),Ce=56320|Ce&1023),ue.push(Ce),Te+=We}return g(ue)}var p=4096;function g(Y){var z=Y.length;if(z<=p)return String.fromCharCode.apply(String,Y);for(var V="",ue=0;ue<z;)V+=String.fromCharCode.apply(String,Y.slice(ue,ue+=p));return V}function I(Y,z,V){var ue="";V=Math.min(Y.length,V);for(var Te=z;Te<V;++Te)ue+=String.fromCharCode(Y[Te]&127);return ue}function x(Y,z,V){var ue="";V=Math.min(Y.length,V);for(var Te=z;Te<V;++Te)ue+=String.fromCharCode(Y[Te]);return ue}function q(Y,z,V){var ue=Y.length;(!z||z<0)&&(z=0),(!V||V<0||V>ue)&&(V=ue);for(var Te="",Ie=z;Ie<V;++Ie)Te+=de[Y[Ie]];return Te}function T(Y,z,V){for(var ue=Y.slice(z,V),Te="",Ie=0;Ie<ue.length-1;Ie+=2)Te+=String.fromCharCode(ue[Ie]+ue[Ie+1]*256);return Te}c.prototype.slice=function(z,V){var ue=this.length;z=~~z,V=V===void 0?ue:~~V,z<0?(z+=ue,z<0&&(z=0)):z>ue&&(z=ue),V<0?(V+=ue,V<0&&(V=0)):V>ue&&(V=ue),V<z&&(V=z);var Te=this.subarray(z,V);return Object.setPrototypeOf(Te,c.prototype),Te};function D(Y,z,V){if(Y%1!==0||Y<0)throw new RangeError("offset is not uint");if(Y+z>V)throw new RangeError("Trying to access beyond buffer length")}c.prototype.readUintLE=c.prototype.readUIntLE=function(z,V,ue){z=z>>>0,V=V>>>0,ue||D(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,ue){z=z>>>0,V=V>>>0,ue||D(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||D(z,1,this.length),this[z]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(z,V){return z=z>>>0,V||D(z,2,this.length),this[z]|this[z+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(z,V){return z=z>>>0,V||D(z,2,this.length),this[z]<<8|this[z+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(z,V){return z=z>>>0,V||D(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||D(z,4,this.length),this[z]*16777216+(this[z+1]<<16|this[z+2]<<8|this[z+3])},c.prototype.readIntLE=function(z,V,ue){z=z>>>0,V=V>>>0,ue||D(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,ue){z=z>>>0,V=V>>>0,ue||D(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||D(z,1,this.length),this[z]&128?(255-this[z]+1)*-1:this[z]},c.prototype.readInt16LE=function(z,V){z=z>>>0,V||D(z,2,this.length);var ue=this[z]|this[z+1]<<8;return ue&32768?ue|4294901760:ue},c.prototype.readInt16BE=function(z,V){z=z>>>0,V||D(z,2,this.length);var ue=this[z+1]|this[z]<<8;return ue&32768?ue|4294901760:ue},c.prototype.readInt32LE=function(z,V){return z=z>>>0,V||D(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||D(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||D(z,4,this.length),n.read(this,z,!0,23,4)},c.prototype.readFloatBE=function(z,V){return z=z>>>0,V||D(z,4,this.length),n.read(this,z,!1,23,4)},c.prototype.readDoubleLE=function(z,V){return z=z>>>0,V||D(z,8,this.length),n.read(this,z,!0,52,8)},c.prototype.readDoubleBE=function(z,V){return z=z>>>0,V||D(z,8,this.length),n.read(this,z,!1,52,8)};function W(Y,z,V,ue,Te,Ie){if(!c.isBuffer(Y))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+ue>Y.length)throw new RangeError("Index out of range")}c.prototype.writeUintLE=c.prototype.writeUIntLE=function(z,V,ue,Te){if(z=+z,V=V>>>0,ue=ue>>>0,!Te){var Ie=Math.pow(2,8*ue)-1;W(this,z,V,ue,Ie,0)}var Ce=1,We=0;for(this[V]=z&255;++We<ue&&(Ce*=256);)this[V+We]=z/Ce&255;return V+ue},c.prototype.writeUintBE=c.prototype.writeUIntBE=function(z,V,ue,Te){if(z=+z,V=V>>>0,ue=ue>>>0,!Te){var Ie=Math.pow(2,8*ue)-1;W(this,z,V,ue,Ie,0)}var Ce=ue-1,We=1;for(this[V+Ce]=z&255;--Ce>=0&&(We*=256);)this[V+Ce]=z/We&255;return V+ue},c.prototype.writeUint8=c.prototype.writeUInt8=function(z,V,ue){return z=+z,V=V>>>0,ue||W(this,z,V,1,255,0),this[V]=z&255,V+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(z,V,ue){return z=+z,V=V>>>0,ue||W(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,ue){return z=+z,V=V>>>0,ue||W(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,ue){return z=+z,V=V>>>0,ue||W(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,ue){return z=+z,V=V>>>0,ue||W(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,ue,Te){if(z=+z,V=V>>>0,!Te){var Ie=Math.pow(2,8*ue-1);W(this,z,V,ue,Ie-1,-Ie)}var Ce=0,We=1,Ge=0;for(this[V]=z&255;++Ce<ue&&(We*=256);)z<0&&Ge===0&&this[V+Ce-1]!==0&&(Ge=1),this[V+Ce]=(z/We>>0)-Ge&255;return V+ue},c.prototype.writeIntBE=function(z,V,ue,Te){if(z=+z,V=V>>>0,!Te){var Ie=Math.pow(2,8*ue-1);W(this,z,V,ue,Ie-1,-Ie)}var Ce=ue-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+ue},c.prototype.writeInt8=function(z,V,ue){return z=+z,V=V>>>0,ue||W(this,z,V,1,127,-128),z<0&&(z=255+z+1),this[V]=z&255,V+1},c.prototype.writeInt16LE=function(z,V,ue){return z=+z,V=V>>>0,ue||W(this,z,V,2,32767,-32768),this[V]=z&255,this[V+1]=z>>>8,V+2},c.prototype.writeInt16BE=function(z,V,ue){return z=+z,V=V>>>0,ue||W(this,z,V,2,32767,-32768),this[V]=z>>>8,this[V+1]=z&255,V+2},c.prototype.writeInt32LE=function(z,V,ue){return z=+z,V=V>>>0,ue||W(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,ue){return z=+z,V=V>>>0,ue||W(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 J(Y,z,V,ue,Te,Ie){if(V+ue>Y.length)throw new RangeError("Index out of range");if(V<0)throw new RangeError("Index out of range")}function X(Y,z,V,ue,Te){return z=+z,V=V>>>0,Te||J(Y,z,V,4),n.write(Y,z,V,ue,23,4),V+4}c.prototype.writeFloatLE=function(z,V,ue){return X(this,z,V,!0,ue)},c.prototype.writeFloatBE=function(z,V,ue){return X(this,z,V,!1,ue)};function Q(Y,z,V,ue,Te){return z=+z,V=V>>>0,Te||J(Y,z,V,8),n.write(Y,z,V,ue,52,8),V+8}c.prototype.writeDoubleLE=function(z,V,ue){return Q(this,z,V,!0,ue)},c.prototype.writeDoubleBE=function(z,V,ue){return Q(this,z,V,!1,ue)},c.prototype.copy=function(z,V,ue,Te){if(!c.isBuffer(z))throw new TypeError("argument should be a Buffer");if(ue||(ue=0),!Te&&Te!==0&&(Te=this.length),V>=z.length&&(V=z.length),V||(V=0),Te>0&&Te<ue&&(Te=ue),Te===ue||z.length===0||this.length===0)return 0;if(V<0)throw new RangeError("targetStart out of bounds");if(ue<0||ue>=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-ue&&(Te=z.length-V+ue);var Ie=Te-ue;return this===z&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(V,ue,Te):Uint8Array.prototype.set.call(z,this.subarray(ue,Te),V),Ie},c.prototype.fill=function(z,V,ue,Te){if(typeof z=="string"){if(typeof V=="string"?(Te=V,V=0,ue=this.length):typeof ue=="string"&&(Te=ue,ue=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<ue)throw new RangeError("Out of range index");if(ue<=V)return this;V=V>>>0,ue=ue===void 0?this.length:ue>>>0,z||(z=0);var Ce;if(typeof z=="number")for(Ce=V;Ce<ue;++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<ue-V;++Ce)this[Ce+V]=We[Ce%Ge]}return this};var re=/[^+/0-9A-Za-z-_]/g;function se(Y){if(Y=Y.split("=")[0],Y=Y.trim().replace(re,""),Y.length<2)return"";for(;Y.length%4!==0;)Y=Y+"=";return Y}function ne(Y,z){z=z||1/0;for(var V,ue=Y.length,Te=null,Ie=[],Ce=0;Ce<ue;++Ce){if(V=Y.charCodeAt(Ce),V>55295&&V<57344){if(!Te){if(V>56319){(z-=3)>-1&&Ie.push(239,191,189);continue}else if(Ce+1===ue){(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 me(Y){for(var z=[],V=0;V<Y.length;++V)z.push(Y.charCodeAt(V)&255);return z}function ge(Y,z){for(var V,ue,Te,Ie=[],Ce=0;Ce<Y.length&&!((z-=2)<0);++Ce)V=Y.charCodeAt(Ce),ue=V>>8,Te=V%256,Ie.push(Te),Ie.push(ue);return Ie}function Ae(Y){return i.toByteArray(se(Y))}function pe(Y,z,V,ue){for(var Te=0;Te<ue&&!(Te+V>=z.length||Te>=Y.length);++Te)z[Te+V]=Y[Te];return Te}function le(Y,z){return Y instanceof z||Y!=null&&Y.constructor!=null&&Y.constructor.name!=null&&Y.constructor.name===z.name}function ye(Y){return Y!==Y}var de=function(){for(var Y="0123456789abcdef",z=new Array(256),V=0;V<16;++V)for(var ue=V*16,Te=0;Te<16;++Te)z[ue+Te]=Y[V]+Y[Te];return z}()}(oc)),oc}/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */var Qm;function gk(){return Qm||(Qm=1,function(e,i){var n=yk(),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,i),i.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)}}(aa,aa.exports)),aa.exports}var Xm;function bk(){if(Xm)return sc;Xm=1;var e=gk().Buffer,i=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 m;;)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(m)return;h=(""+h).toLowerCase(),m=!0}}function a(h){var m=n(h);if(typeof m!="string"&&(e.isEncoding===i||!i(h)))throw new Error("Unknown encoding: "+h);return m||h}sc.StringDecoder=l;function l(h){this.encoding=a(h);var m;switch(this.encoding){case"utf16le":this.text=O,this.end=M,m=4;break;case"utf8":this.fillLast=w,m=4;break;case"base64":this.text=L,this.end=_,m=3;break;default:this.write=b,this.end=v;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=e.allocUnsafe(m)}l.prototype.write=function(h){if(h.length===0)return"";var m,k;if(this.lastNeed){if(m=this.fillLast(h),m===void 0)return"";k=this.lastNeed,this.lastNeed=0}else k=0;return k<h.length?m?m+this.text(h,k):this.text(h,k):m||""},l.prototype.end=F,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,m,k){var B=m.length-1;if(B<k)return 0;var C=d(m[B]);return C>=0?(C>0&&(h.lastNeed=C-1),C):--B<k||C===-2?0:(C=d(m[B]),C>=0?(C>0&&(h.lastNeed=C-2),C):--B<k||C===-2?0:(C=d(m[B]),C>=0?(C>0&&(C===2?C=0:h.lastNeed=C-3),C):0))}function c(h,m,k){if((m[0]&192)!==128)return h.lastNeed=0,"�";if(h.lastNeed>1&&m.length>1){if((m[1]&192)!==128)return h.lastNeed=1,"�";if(h.lastNeed>2&&m.length>2&&(m[2]&192)!==128)return h.lastNeed=2,"�"}}function w(h){var m=this.lastTotal-this.lastNeed,k=c(this,h);if(k!==void 0)return k;if(this.lastNeed<=h.length)return h.copy(this.lastChar,m,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);h.copy(this.lastChar,m,0,h.length),this.lastNeed-=h.length}function U(h,m){var k=u(this,h,m);if(!this.lastNeed)return h.toString("utf8",m);this.lastTotal=k;var B=h.length-(k-this.lastNeed);return h.copy(this.lastChar,0,B),h.toString("utf8",m,B)}function F(h){var m=h&&h.length?this.write(h):"";return this.lastNeed?m+"�":m}function O(h,m){if((h.length-m)%2===0){var k=h.toString("utf16le",m);if(k){var B=k.charCodeAt(k.length-1);if(B>=55296&&B<=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",m,h.length-1)}function M(h){var m=h&&h.length?this.write(h):"";if(this.lastNeed){var k=this.lastTotal-this.lastNeed;return m+this.lastChar.toString("utf16le",0,k)}return m}function L(h,m){var k=(h.length-m)%3;return k===0?h.toString("base64",m):(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",m,h.length-k))}function _(h){var m=h&&h.length?this.write(h):"";return this.lastNeed?m+this.lastChar.toString("base64",0,3-this.lastNeed):m}function b(h){return h.toString(this.encoding)}function v(h){return h&&h.length?this.write(h):""}return sc}var ac,Ym;function Kg(){if(Ym)return ac;Ym=1;const e=wr(),{PromisePrototypeThen:i,SymbolAsyncIterator:n,SymbolIterator:a}=Kt(),{Buffer:l}=Sr(),{ERR_INVALID_ARG_TYPE:d,ERR_STREAM_NULL_VALUES:u}=gn().codes;function c(w,U,F){let O;if(typeof U=="string"||U instanceof l)return new w({objectMode:!0,...F,read(){this.push(U),this.push(null)}});let M;if(U&&U[n])M=!0,O=U[n]();else if(U&&U[a])M=!1,O=U[a]();else throw new d("iterable",["Iterable"],U);const L=new w({objectMode:!0,highWaterMark:1,...F});let _=!1;L._read=function(){_||(_=!0,v())},L._destroy=function(h,m){i(b(h),()=>e.nextTick(m,h),k=>e.nextTick(m,k||h))};async function b(h){const m=h!=null,k=typeof O.throw=="function";if(m&&k){const{value:B,done:C}=await O.throw(h);if(await B,C)return}if(typeof O.return=="function"){const{value:B}=await O.return();await B}}async function v(){for(;;){try{const{value:h,done:m}=M?await O.next():O.next();if(m)L.push(null);else{const k=h&&typeof h.then=="function"?await h:h;if(k===null)throw _=!1,new u;if(L.push(k))continue;_=!1}}catch(h){L.destroy(h)}break}}return L}return ac=c,ac}var uc,$m;function za(){if($m)return uc;$m=1;const e=wr(),{ArrayPrototypeIndexOf:i,NumberIsInteger:n,NumberIsNaN:a,NumberParseInt:l,ObjectDefineProperties:d,ObjectKeys:u,ObjectSetPrototypeOf:c,Promise:w,SafeSet:U,SymbolAsyncIterator:F,Symbol:O}=Kt();uc=T,T.ReadableState=q;const{EventEmitter:M}=Yc(),{Stream:L,prependListener:_}=$c(),{Buffer:b}=Sr(),{addAbortSignal:v}=ef(),h=_r();let m=Ai().debuglog("stream",ee=>{m=ee});const k=mk(),B=rs(),{getHighWaterMark:C,getDefaultHighWaterMark:R}=tf(),{aggregateTwoErrors:A,codes:{ERR_INVALID_ARG_TYPE:f,ERR_METHOD_NOT_IMPLEMENTED:E,ERR_OUT_OF_RANGE:S,ERR_STREAM_PUSH_AFTER_EOF:P,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:y}}=gn(),{validateObject:r}=xa(),s=O("kPaused"),{StringDecoder:p}=bk(),g=Kg();c(T.prototype,L.prototype),c(T,L);const I=()=>{},{errorOrDestroy:x}=B;function q(ee,te,K){typeof K!="boolean"&&(K=te instanceof Fi()),this.objectMode=!!(ee&&ee.objectMode),K&&(this.objectMode=this.objectMode||!!(ee&&ee.readableObjectMode)),this.highWaterMark=ee?C(this,ee,"readableHighWaterMark",K):R(!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=!ee||ee.emitClose!==!1,this.autoDestroy=!ee||ee.autoDestroy!==!1,this.destroyed=!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this.defaultEncoding=ee&&ee.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.multiAwaitDrain=!1,this.readingMore=!1,this.dataEmitted=!1,this.decoder=null,this.encoding=null,ee&&ee.encoding&&(this.decoder=new p(ee.encoding),this.encoding=ee.encoding)}function T(ee){if(!(this instanceof T))return new T(ee);const te=this instanceof Fi();this._readableState=new q(ee,this,te),ee&&(typeof ee.read=="function"&&(this._read=ee.read),typeof ee.destroy=="function"&&(this._destroy=ee.destroy),typeof ee.construct=="function"&&(this._construct=ee.construct),ee.signal&&!te&&v(ee.signal,this)),L.call(this,ee),B.construct(this,()=>{this._readableState.needReadable&&me(this,this._readableState)})}T.prototype.destroy=B.destroy,T.prototype._undestroy=B.undestroy,T.prototype._destroy=function(ee,te){te(ee)},T.prototype[M.captureRejectionSymbol]=function(ee){this.destroy(ee)},T.prototype.push=function(ee,te){return D(this,ee,te,!1)},T.prototype.unshift=function(ee,te){return D(this,ee,te,!0)};function D(ee,te,K,j){m("readableAddChunk",te);const G=ee._readableState;let ce;if(G.objectMode||(typeof te=="string"?(K=K||G.defaultEncoding,G.encoding!==K&&(j&&G.encoding?te=b.from(te,K).toString(G.encoding):(te=b.from(te,K),K=""))):te instanceof b?K="":L._isUint8Array(te)?(te=L._uint8ArrayToBuffer(te),K=""):te!=null&&(ce=new f("chunk",["string","Buffer","Uint8Array"],te))),ce)x(ee,ce);else if(te===null)G.reading=!1,re(ee,G);else if(G.objectMode||te&&te.length>0)if(j)if(G.endEmitted)x(ee,new y);else{if(G.destroyed||G.errored)return!1;W(ee,G,te,!0)}else if(G.ended)x(ee,new P);else{if(G.destroyed||G.errored)return!1;G.reading=!1,G.decoder&&!K?(te=G.decoder.write(te),G.objectMode||te.length!==0?W(ee,G,te,!1):me(ee,G)):W(ee,G,te,!1)}else j||(G.reading=!1,me(ee,G));return!G.ended&&(G.length<G.highWaterMark||G.length===0)}function W(ee,te,K,j){te.flowing&&te.length===0&&!te.sync&&ee.listenerCount("data")>0?(te.multiAwaitDrain?te.awaitDrainWriters.clear():te.awaitDrainWriters=null,te.dataEmitted=!0,ee.emit("data",K)):(te.length+=te.objectMode?1:K.length,j?te.buffer.unshift(K):te.buffer.push(K),te.needReadable&&se(ee)),me(ee,te)}T.prototype.isPaused=function(){const ee=this._readableState;return ee[s]===!0||ee.flowing===!1},T.prototype.setEncoding=function(ee){const te=new p(ee);this._readableState.decoder=te,this._readableState.encoding=this._readableState.decoder.encoding;const K=this._readableState.buffer;let j="";for(const G of K)j+=te.write(G);return K.clear(),j!==""&&K.push(j),this._readableState.length=j.length,this};const J=1073741824;function X(ee){if(ee>J)throw new S("size","<= 1GiB",ee);return ee--,ee|=ee>>>1,ee|=ee>>>2,ee|=ee>>>4,ee|=ee>>>8,ee|=ee>>>16,ee++,ee}function Q(ee,te){return ee<=0||te.length===0&&te.ended?0:te.objectMode?1:a(ee)?te.flowing&&te.length?te.buffer.first().length:te.length:ee<=te.length?ee:te.ended?te.length:0}T.prototype.read=function(ee){m("read",ee),ee===void 0?ee=NaN:n(ee)||(ee=l(ee,10));const te=this._readableState,K=ee;if(ee>te.highWaterMark&&(te.highWaterMark=X(ee)),ee!==0&&(te.emittedReadable=!1),ee===0&&te.needReadable&&((te.highWaterMark!==0?te.length>=te.highWaterMark:te.length>0)||te.ended))return m("read: emitReadable",te.length,te.ended),te.length===0&&te.ended?Te(this):se(this),null;if(ee=Q(ee,te),ee===0&&te.ended)return te.length===0&&Te(this),null;let j=te.needReadable;if(m("need readable",j),(te.length===0||te.length-ee<te.highWaterMark)&&(j=!0,m("length less than watermark",j)),te.ended||te.reading||te.destroyed||te.errored||!te.constructed)j=!1,m("reading, ended or constructing",j);else if(j){m("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||(ee=Q(K,te))}let G;return ee>0?G=ue(ee,te):G=null,G===null?(te.needReadable=te.length<=te.highWaterMark,ee=0):(te.length-=ee,te.multiAwaitDrain?te.awaitDrainWriters.clear():te.awaitDrainWriters=null),te.length===0&&(te.ended||(te.needReadable=!0),K!==ee&&te.ended&&Te(this)),G!==null&&!te.errorEmitted&&!te.closeEmitted&&(te.dataEmitted=!0,this.emit("data",G)),G};function re(ee,te){if(m("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(ee):(te.needReadable=!1,te.emittedReadable=!0,ne(ee))}}function se(ee){const te=ee._readableState;m("emitReadable",te.needReadable,te.emittedReadable),te.needReadable=!1,te.emittedReadable||(m("emitReadable",te.flowing),te.emittedReadable=!0,e.nextTick(ne,ee))}function ne(ee){const te=ee._readableState;m("emitReadable_",te.destroyed,te.length,te.ended),!te.destroyed&&!te.errored&&(te.length||te.ended)&&(ee.emit("readable"),te.emittedReadable=!1),te.needReadable=!te.flowing&&!te.ended&&te.length<=te.highWaterMark,Y(ee)}function me(ee,te){!te.readingMore&&te.constructed&&(te.readingMore=!0,e.nextTick(ge,ee,te))}function ge(ee,te){for(;!te.reading&&!te.ended&&(te.length<te.highWaterMark||te.flowing&&te.length===0);){const K=te.length;if(m("maybeReadMore read 0"),ee.read(0),K===te.length)break}te.readingMore=!1}T.prototype._read=function(ee){throw new E("_read()")},T.prototype.pipe=function(ee,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(ee),m("pipe count=%d opts=%j",j.pipes.length,te);const ce=(!te||te.end!==!1)&&ee!==e.stdout&&ee!==e.stderr?be:ke;j.endEmitted?e.nextTick(ce):K.once("end",ce),ee.on("unpipe",$);function $(Ne,ae){m("onunpipe"),Ne===K&&ae&&ae.hasUnpiped===!1&&(ae.hasUnpiped=!0,we())}function be(){m("onend"),ee.end()}let Se,Be=!1;function we(){m("cleanup"),ee.removeListener("close",ze),ee.removeListener("finish",H),Se&&ee.removeListener("drain",Se),ee.removeListener("error",Re),ee.removeListener("unpipe",$),K.removeListener("end",be),K.removeListener("end",ke),K.removeListener("data",oe),Be=!0,Se&&j.awaitDrainWriters&&(!ee._writableState||ee._writableState.needDrain)&&Se()}function Pe(){Be||(j.pipes.length===1&&j.pipes[0]===ee?(m("false write response, pause",0),j.awaitDrainWriters=ee,j.multiAwaitDrain=!1):j.pipes.length>1&&j.pipes.includes(ee)&&(m("false write response, pause",j.awaitDrainWriters.size),j.awaitDrainWriters.add(ee)),K.pause()),Se||(Se=Ae(K,ee),ee.on("drain",Se))}K.on("data",oe);function oe(Ne){m("ondata");const ae=ee.write(Ne);m("dest.write",ae),ae===!1&&Pe()}function Re(Ne){if(m("onerror",Ne),ke(),ee.removeListener("error",Re),ee.listenerCount("error")===0){const ae=ee._writableState||ee._readableState;ae&&!ae.errorEmitted?x(ee,Ne):ee.emit("error",Ne)}}_(ee,"error",Re);function ze(){ee.removeListener("finish",H),ke()}ee.once("close",ze);function H(){m("onfinish"),ee.removeListener("close",ze),ke()}ee.once("finish",H);function ke(){m("unpipe"),K.unpipe(ee)}return ee.emit("pipe",K),ee.writableNeedDrain===!0?j.flowing&&Pe():j.flowing||(m("pipe resume"),K.resume()),ee};function Ae(ee,te){return function(){const j=ee._readableState;j.awaitDrainWriters===te?(m("pipeOnDrain",1),j.awaitDrainWriters=null):j.multiAwaitDrain&&(m("pipeOnDrain",j.awaitDrainWriters.size),j.awaitDrainWriters.delete(te)),(!j.awaitDrainWriters||j.awaitDrainWriters.size===0)&&ee.listenerCount("data")&&ee.resume()}}T.prototype.unpipe=function(ee){const te=this._readableState,K={hasUnpiped:!1};if(te.pipes.length===0)return this;if(!ee){const G=te.pipes;te.pipes=[],this.pause();for(let ce=0;ce<G.length;ce++)G[ce].emit("unpipe",this,{hasUnpiped:!1});return this}const j=i(te.pipes,ee);return j===-1?this:(te.pipes.splice(j,1),te.pipes.length===0&&this.pause(),ee.emit("unpipe",this,K),this)},T.prototype.on=function(ee,te){const K=L.prototype.on.call(this,ee,te),j=this._readableState;return ee==="data"?(j.readableListening=this.listenerCount("readable")>0,j.flowing!==!1&&this.resume()):ee==="readable"&&!j.endEmitted&&!j.readableListening&&(j.readableListening=j.needReadable=!0,j.flowing=!1,j.emittedReadable=!1,m("on readable",j.length,j.reading),j.length?se(this):j.reading||e.nextTick(le,this)),K},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(ee,te){const K=L.prototype.removeListener.call(this,ee,te);return ee==="readable"&&e.nextTick(pe,this),K},T.prototype.off=T.prototype.removeListener,T.prototype.removeAllListeners=function(ee){const te=L.prototype.removeAllListeners.apply(this,arguments);return(ee==="readable"||ee===void 0)&&e.nextTick(pe,this),te};function pe(ee){const te=ee._readableState;te.readableListening=ee.listenerCount("readable")>0,te.resumeScheduled&&te[s]===!1?te.flowing=!0:ee.listenerCount("data")>0?ee.resume():te.readableListening||(te.flowing=null)}function le(ee){m("readable nexttick read 0"),ee.read(0)}T.prototype.resume=function(){const ee=this._readableState;return ee.flowing||(m("resume"),ee.flowing=!ee.readableListening,ye(this,ee)),ee[s]=!1,this};function ye(ee,te){te.resumeScheduled||(te.resumeScheduled=!0,e.nextTick(de,ee,te))}function de(ee,te){m("resume",te.reading),te.reading||ee.read(0),te.resumeScheduled=!1,ee.emit("resume"),Y(ee),te.flowing&&!te.reading&&ee.read(0)}T.prototype.pause=function(){return m("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(m("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[s]=!0,this};function Y(ee){const te=ee._readableState;for(m("flow",te.flowing);te.flowing&&ee.read()!==null;);}T.prototype.wrap=function(ee){let te=!1;ee.on("data",j=>{!this.push(j)&&ee.pause&&(te=!0,ee.pause())}),ee.on("end",()=>{this.push(null)}),ee.on("error",j=>{x(this,j)}),ee.on("close",()=>{this.destroy()}),ee.on("destroy",()=>{this.destroy()}),this._read=()=>{te&&ee.resume&&(te=!1,ee.resume())};const K=u(ee);for(let j=1;j<K.length;j++){const G=K[j];this[G]===void 0&&typeof ee[G]=="function"&&(this[G]=ee[G].bind(ee))}return this},T.prototype[F]=function(){return z(this)},T.prototype.iterator=function(ee){return ee!==void 0&&r(ee,"options"),z(this,ee)};function z(ee,te){typeof ee.read!="function"&&(ee=T.wrap(ee,{objectMode:!0}));const K=V(ee,te);return K.stream=ee,K}async function*V(ee,te){let K=I;function j($){this===ee?(K(),K=I):K=$}ee.on("readable",j);let G;const ce=h(ee,{writable:!1},$=>{G=$?A(G,$):null,K(),K=I});try{for(;;){const $=ee.destroyed?null:ee.read();if($!==null)yield $;else{if(G)throw G;if(G===null)return;await new w(j)}}}catch($){throw G=A(G,$),G}finally{(G||te?.destroyOnReturn!==!1)&&(G===void 0||ee._readableState.autoDestroy)?B.destroyer(ee,null):(ee.off("readable",j),ce())}}d(T.prototype,{readable:{__proto__:null,get(){const ee=this._readableState;return!!ee&&ee.readable!==!1&&!ee.destroyed&&!ee.errorEmitted&&!ee.endEmitted},set(ee){this._readableState&&(this._readableState.readable=!!ee)}},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(ee){this._readableState&&(this._readableState.flowing=ee)}},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(ee){this._readableState&&(this._readableState.destroyed=ee)}},readableEnded:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.endEmitted:!1}}}),d(q.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[s]!==!1},set(ee){this[s]=!!ee}}}),T._fromList=ue;function ue(ee,te){if(te.length===0)return null;let K;return te.objectMode?K=te.buffer.shift():!ee||ee>=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(ee,te.decoder),K}function Te(ee){const te=ee._readableState;m("endReadable",te.endEmitted),te.endEmitted||(te.ended=!0,e.nextTick(Ie,te,ee))}function Ie(ee,te){if(m("endReadableNT",ee.endEmitted,ee.length),!ee.errored&&!ee.closeEmitted&&!ee.endEmitted&&ee.length===0){if(ee.endEmitted=!0,te.emit("end"),te.writable&&te.allowHalfOpen===!1)e.nextTick(Ce,te);else if(ee.autoDestroy){const K=te._writableState;(!K||K.autoDestroy&&(K.finished||K.writable===!1))&&te.destroy()}}}function Ce(ee){ee.writable&&!ee.writableEnded&&!ee.destroyed&&ee.end()}T.from=function(ee,te){return g(T,ee,te)};let We;function Ge(){return We===void 0&&(We={}),We}return T.fromWeb=function(ee,te){return Ge().newStreamReadableFromReadableStream(ee,te)},T.toWeb=function(ee,te){return Ge().newReadableStreamFromStreamReadable(ee,te)},T.wrap=function(ee,te){var K,j;return new T({objectMode:(K=(j=ee.readableObjectMode)!==null&&j!==void 0?j:ee.objectMode)!==null&&K!==void 0?K:!0,...te,destroy(G,ce){B.destroyer(ee,G),ce(G)}}).wrap(ee)},uc}var lc,ey;function Vg(){if(ey)return lc;ey=1;const e=wr(),{ArrayPrototypeSlice:i,Error:n,FunctionPrototypeSymbolHasInstance:a,ObjectDefineProperty:l,ObjectDefineProperties:d,ObjectSetPrototypeOf:u,StringPrototypeToLowerCase:c,Symbol:w,SymbolHasInstance:U}=Kt();lc=p,p.WritableState=r;const{EventEmitter:F}=Yc(),O=$c().Stream,{Buffer:M}=Sr(),L=rs(),{addAbortSignal:_}=ef(),{getHighWaterMark:b,getDefaultHighWaterMark:v}=tf(),{ERR_INVALID_ARG_TYPE:h,ERR_METHOD_NOT_IMPLEMENTED:m,ERR_MULTIPLE_CALLBACK:k,ERR_STREAM_CANNOT_PIPE:B,ERR_STREAM_DESTROYED:C,ERR_STREAM_ALREADY_FINISHED:R,ERR_STREAM_NULL_VALUES:A,ERR_STREAM_WRITE_AFTER_END:f,ERR_UNKNOWN_ENCODING:E}=gn().codes,{errorOrDestroy:S}=L;u(p.prototype,O.prototype),u(p,O);function P(){}const y=w("kOnFinished");function r(le,ye,de){typeof de!="boolean"&&(de=ye instanceof Fi()),this.objectMode=!!(le&&le.objectMode),de&&(this.objectMode=this.objectMode||!!(le&&le.writableObjectMode)),this.highWaterMark=le?b(this,le,"writableHighWaterMark",de):v(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;const Y=!!(le&&le.decodeStrings===!1);this.decodeStrings=!Y,this.defaultEncoding=le&&le.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=T.bind(void 0,ye),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[y]=[]}function s(le){le.buffered=[],le.bufferedIndex=0,le.allBuffers=!0,le.allNoop=!0}r.prototype.getBuffer=function(){return i(this.buffered,this.bufferedIndex)},l(r.prototype,"bufferedRequestCount",{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function p(le){const ye=this instanceof Fi();if(!ye&&!a(p,this))return new p(le);this._writableState=new r(le,this,ye),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&&_(le.signal,this)),O.call(this,le),L.construct(this,()=>{const de=this._writableState;de.writing||X(this,de),ne(this,de)})}l(p,U,{__proto__:null,value:function(le){return a(this,le)?!0:this!==p?!1:le&&le._writableState instanceof r}}),p.prototype.pipe=function(){S(this,new B)};function g(le,ye,de,Y){const z=le._writableState;if(typeof de=="function")Y=de,de=z.defaultEncoding;else{if(!de)de=z.defaultEncoding;else if(de!=="buffer"&&!M.isEncoding(de))throw new E(de);typeof Y!="function"&&(Y=P)}if(ye===null)throw new A;if(!z.objectMode)if(typeof ye=="string")z.decodeStrings!==!1&&(ye=M.from(ye,de),de="buffer");else if(ye instanceof M)de="buffer";else if(O._isUint8Array(ye))ye=O._uint8ArrayToBuffer(ye),de="buffer";else throw new h("chunk",["string","Buffer","Uint8Array"],ye);let V;return z.ending?V=new f:z.destroyed&&(V=new C("write")),V?(e.nextTick(Y,V),S(le,V,!0),V):(z.pendingcb++,I(le,z,ye,de,Y))}p.prototype.write=function(le,ye,de){return g(this,le,ye,de)===!0},p.prototype.cork=function(){this._writableState.corked++},p.prototype.uncork=function(){const le=this._writableState;le.corked&&(le.corked--,le.writing||X(this,le))},p.prototype.setDefaultEncoding=function(ye){if(typeof ye=="string"&&(ye=c(ye)),!M.isEncoding(ye))throw new E(ye);return this._writableState.defaultEncoding=ye,this};function I(le,ye,de,Y,z){const V=ye.objectMode?1:de.length;ye.length+=V;const ue=ye.length<ye.highWaterMark;return ue||(ye.needDrain=!0),ye.writing||ye.corked||ye.errored||!ye.constructed?(ye.buffered.push({chunk:de,encoding:Y,callback:z}),ye.allBuffers&&Y!=="buffer"&&(ye.allBuffers=!1),ye.allNoop&&z!==P&&(ye.allNoop=!1)):(ye.writelen=V,ye.writecb=z,ye.writing=!0,ye.sync=!0,le._write(de,Y,ye.onwrite),ye.sync=!1),ue&&!ye.errored&&!ye.destroyed}function x(le,ye,de,Y,z,V,ue){ye.writelen=Y,ye.writecb=ue,ye.writing=!0,ye.sync=!0,ye.destroyed?ye.onwrite(new C("write")):de?le._writev(z,ye.onwrite):le._write(z,V,ye.onwrite),ye.sync=!1}function q(le,ye,de,Y){--ye.pendingcb,Y(de),J(ye),S(le,de)}function T(le,ye){const de=le._writableState,Y=de.sync,z=de.writecb;if(typeof z!="function"){S(le,new k);return}de.writing=!1,de.writecb=null,de.length-=de.writelen,de.writelen=0,ye?(ye.stack,de.errored||(de.errored=ye),le._readableState&&!le._readableState.errored&&(le._readableState.errored=ye),Y?e.nextTick(q,le,de,ye,z):q(le,de,ye,z)):(de.buffered.length>de.bufferedIndex&&X(le,de),Y?de.afterWriteTickInfo!==null&&de.afterWriteTickInfo.cb===z?de.afterWriteTickInfo.count++:(de.afterWriteTickInfo={count:1,cb:z,stream:le,state:de},e.nextTick(D,de.afterWriteTickInfo)):W(le,de,1,z))}function D({stream:le,state:ye,count:de,cb:Y}){return ye.afterWriteTickInfo=null,W(le,ye,de,Y)}function W(le,ye,de,Y){for(!ye.ending&&!le.destroyed&&ye.length===0&&ye.needDrain&&(ye.needDrain=!1,le.emit("drain"));de-- >0;)ye.pendingcb--,Y();ye.destroyed&&J(ye),ne(le,ye)}function J(le){if(le.writing)return;for(let z=le.bufferedIndex;z<le.buffered.length;++z){var ye;const{chunk:V,callback:ue}=le.buffered[z],Te=le.objectMode?1:V.length;le.length-=Te,ue((ye=le.errored)!==null&&ye!==void 0?ye:new C("write"))}const de=le[y].splice(0);for(let z=0;z<de.length;z++){var Y;de[z]((Y=le.errored)!==null&&Y!==void 0?Y:new C("end"))}s(le)}function X(le,ye){if(ye.corked||ye.bufferProcessing||ye.destroyed||!ye.constructed)return;const{buffered:de,bufferedIndex:Y,objectMode:z}=ye,V=de.length-Y;if(!V)return;let ue=Y;if(ye.bufferProcessing=!0,V>1&&le._writev){ye.pendingcb-=V-1;const Te=ye.allNoop?P:Ce=>{for(let We=ue;We<de.length;++We)de[We].callback(Ce)},Ie=ye.allNoop&&ue===0?de:i(de,ue);Ie.allBuffers=ye.allBuffers,x(le,ye,!0,ye.length,Ie,"",Te),s(ye)}else{do{const{chunk:Te,encoding:Ie,callback:Ce}=de[ue];de[ue++]=null;const We=z?1:Te.length;x(le,ye,!1,We,Te,Ie,Ce)}while(ue<de.length&&!ye.writing);ue===de.length?s(ye):ue>256?(de.splice(0,ue),ye.bufferedIndex=0):ye.bufferedIndex=ue}ye.bufferProcessing=!1}p.prototype._write=function(le,ye,de){if(this._writev)this._writev([{chunk:le,encoding:ye}],de);else throw new m("_write()")},p.prototype._writev=null,p.prototype.end=function(le,ye,de){const Y=this._writableState;typeof le=="function"?(de=le,le=null,ye=null):typeof ye=="function"&&(de=ye,ye=null);let z;if(le!=null){const V=g(this,le,ye);V instanceof n&&(z=V)}return Y.corked&&(Y.corked=1,this.uncork()),z||(!Y.errored&&!Y.ending?(Y.ending=!0,ne(this,Y,!0),Y.ended=!0):Y.finished?z=new R("end"):Y.destroyed&&(z=new C("end"))),typeof de=="function"&&(z||Y.finished?e.nextTick(de,z):Y[y].push(de)),this};function Q(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 re(le,ye){let de=!1;function Y(z){if(de){S(le,z??k());return}if(de=!0,ye.pendingcb--,z){const V=ye[y].splice(0);for(let ue=0;ue<V.length;ue++)V[ue](z);S(le,z,ye.sync)}else Q(ye)&&(ye.prefinished=!0,le.emit("prefinish"),ye.pendingcb++,e.nextTick(me,le,ye))}ye.sync=!0,ye.pendingcb++;try{le._final(Y)}catch(z){Y(z)}ye.sync=!1}function se(le,ye){!ye.prefinished&&!ye.finalCalled&&(typeof le._final=="function"&&!ye.destroyed?(ye.finalCalled=!0,re(le,ye)):(ye.prefinished=!0,le.emit("prefinish")))}function ne(le,ye,de){Q(ye)&&(se(le,ye),ye.pendingcb===0&&(de?(ye.pendingcb++,e.nextTick((Y,z)=>{Q(z)?me(Y,z):z.pendingcb--},le,ye)):Q(ye)&&(ye.pendingcb++,me(le,ye))))}function me(le,ye){ye.pendingcb--,ye.finished=!0;const de=ye[y].splice(0);for(let Y=0;Y<de.length;Y++)de[Y]();if(le.emit("finish"),ye.autoDestroy){const Y=le._readableState;(!Y||Y.autoDestroy&&(Y.endEmitted||Y.readable===!1))&&le.destroy()}}d(p.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 ge=L.destroy;p.prototype.destroy=function(le,ye){const de=this._writableState;return!de.destroyed&&(de.bufferedIndex<de.buffered.length||de[y].length)&&e.nextTick(J,de),ge.call(this,le,ye),this},p.prototype._undestroy=L.undestroy,p.prototype._destroy=function(le,ye){ye(le)},p.prototype[F.captureRejectionSymbol]=function(le){this.destroy(le)};let Ae;function pe(){return Ae===void 0&&(Ae={}),Ae}return p.fromWeb=function(le,ye){return pe().newStreamWritableFromWritableStream(le,ye)},p.toWeb=function(le){return pe().newWritableStreamFromStreamWritable(le)},lc}var cc,ty;function Tk(){if(ty)return cc;ty=1;const e=wr(),i=Sr(),{isReadable:n,isWritable:a,isIterable:l,isNodeStream:d,isReadableNodeStream:u,isWritableNodeStream:c,isDuplexNodeStream:w}=Lr(),U=_r(),{AbortError:F,codes:{ERR_INVALID_ARG_TYPE:O,ERR_INVALID_RETURN_VALUE:M}}=gn(),{destroyer:L}=rs(),_=Fi(),b=za(),{createDeferredPromise:v}=Ai(),h=Kg(),m=globalThis.Blob||i.Blob,k=typeof m<"u"?function(S){return S instanceof m}:function(S){return!1},B=globalThis.AbortController||Xc.AbortController,{FunctionPrototypeCall:C}=Kt();class R extends _{constructor(S){super(S),S?.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),S?.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}}cc=function E(S,P){if(w(S))return S;if(u(S))return f({readable:S});if(c(S))return f({writable:S});if(d(S))return f({writable:!1,readable:!1});if(typeof S=="function"){const{value:r,write:s,final:p,destroy:g}=A(S);if(l(r))return h(R,r,{objectMode:!0,write:s,final:p,destroy:g});const I=r?.then;if(typeof I=="function"){let x;const q=C(I,r,T=>{if(T!=null)throw new M("nully","body",T)},T=>{L(x,T)});return x=new R({objectMode:!0,readable:!1,write:s,final(T){p(async()=>{try{await q,e.nextTick(T,null)}catch(D){e.nextTick(T,D)}})},destroy:g})}throw new M("Iterable, AsyncIterable or AsyncFunction",P,r)}if(k(S))return E(S.arrayBuffer());if(l(S))return h(R,S,{objectMode:!0,writable:!1});if(typeof S?.writable=="object"||typeof S?.readable=="object"){const r=S!=null&&S.readable?u(S?.readable)?S?.readable:E(S.readable):void 0,s=S!=null&&S.writable?c(S?.writable)?S?.writable:E(S.writable):void 0;return f({readable:r,writable:s})}const y=S?.then;if(typeof y=="function"){let r;return C(y,S,s=>{s!=null&&r.push(s),r.push(null)},s=>{L(r,s)}),r=new R({objectMode:!0,writable:!1,read(){}})}throw new O(P,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],S)};function A(E){let{promise:S,resolve:P}=v();const y=new B,r=y.signal;return{value:E(async function*(){for(;;){const p=S;S=null;const{chunk:g,done:I,cb:x}=await p;if(e.nextTick(x),I)return;if(r.aborted)throw new F(void 0,{cause:r.reason});({promise:S,resolve:P}=v()),yield g}}(),{signal:r}),write(p,g,I){const x=P;P=null,x({chunk:p,done:!1,cb:I})},final(p){const g=P;P=null,g({done:!0,cb:p})},destroy(p,g){y.abort(),g(p)}}}function f(E){const S=E.readable&&typeof E.readable.read!="function"?b.wrap(E.readable):E.readable,P=E.writable;let y=!!n(S),r=!!a(P),s,p,g,I,x;function q(T){const D=I;I=null,D?D(T):T?x.destroy(T):!y&&!r&&x.destroy()}return x=new R({readableObjectMode:!!(S!=null&&S.readableObjectMode),writableObjectMode:!!(P!=null&&P.writableObjectMode),readable:y,writable:r}),r&&(U(P,T=>{r=!1,T&&L(S,T),q(T)}),x._write=function(T,D,W){P.write(T,D)?W():s=W},x._final=function(T){P.end(),p=T},P.on("drain",function(){if(s){const T=s;s=null,T()}}),P.on("finish",function(){if(p){const T=p;p=null,T()}})),y&&(U(S,T=>{y=!1,T&&L(S,T),q(T)}),S.on("readable",function(){if(g){const T=g;g=null,T()}}),S.on("end",function(){x.push(null)}),x._read=function(){for(;;){const T=S.read();if(T===null){g=x._read;return}if(!x.push(T))return}}),x._destroy=function(T,D){!T&&I!==null&&(T=new F),g=null,s=null,p=null,I===null?D(T):(I=D,L(P,T),L(S,T))},x}return cc}var fc,ny;function Fi(){if(ny)return fc;ny=1;const{ObjectDefineProperties:e,ObjectGetOwnPropertyDescriptor:i,ObjectKeys:n,ObjectSetPrototypeOf:a}=Kt();fc=u;const l=za(),d=Vg();a(u.prototype,l.prototype),a(u,l);{const F=n(d.prototype);for(let O=0;O<F.length;O++){const M=F[O];u.prototype[M]||(u.prototype[M]=d.prototype[M])}}function u(F){if(!(this instanceof u))return new u(F);l.call(this,F),d.call(this,F),F?(this.allowHalfOpen=F.allowHalfOpen!==!1,F.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),F.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,...i(d.prototype,"writable")},writableHighWaterMark:{__proto__:null,...i(d.prototype,"writableHighWaterMark")},writableObjectMode:{__proto__:null,...i(d.prototype,"writableObjectMode")},writableBuffer:{__proto__:null,...i(d.prototype,"writableBuffer")},writableLength:{__proto__:null,...i(d.prototype,"writableLength")},writableFinished:{__proto__:null,...i(d.prototype,"writableFinished")},writableCorked:{__proto__:null,...i(d.prototype,"writableCorked")},writableEnded:{__proto__:null,...i(d.prototype,"writableEnded")},writableNeedDrain:{__proto__:null,...i(d.prototype,"writableNeedDrain")},destroyed:{__proto__:null,get(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set(F){this._readableState&&this._writableState&&(this._readableState.destroyed=F,this._writableState.destroyed=F)}}});let c;function w(){return c===void 0&&(c={}),c}u.fromWeb=function(F,O){return w().newStreamDuplexFromReadableWritablePair(F,O)},u.toWeb=function(F){return w().newReadableWritablePairFromDuplex(F)};let U;return u.from=function(F){return U||(U=Tk()),U(F,"body")},fc}var dc,iy;function Zg(){if(iy)return dc;iy=1;const{ObjectSetPrototypeOf:e,Symbol:i}=Kt();dc=u;const{ERR_METHOD_NOT_IMPLEMENTED:n}=gn().codes,a=Fi(),{getHighWaterMark:l}=tf();e(u.prototype,a.prototype),e(u,a);const d=i("kCallback");function u(U){if(!(this instanceof u))return new u(U);const F=U?l(this,U,"readableHighWaterMark",!0):null;F===0&&(U={...U,highWaterMark:null,readableHighWaterMark:F,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((F,O)=>{if(F){U?U(F):this.destroy(F);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,F,O){throw new n("_transform()")},u.prototype._write=function(U,F,O){const M=this._readableState,L=this._writableState,_=M.length;this._transform(U,F,(b,v)=>{if(b){O(b);return}v!=null&&this.push(v),L.ended||_===M.length||M.length<M.highWaterMark?O():this[d]=O})},u.prototype._read=function(){if(this[d]){const U=this[d];this[d]=null,U()}},dc}var hc,ry;function Qg(){if(ry)return hc;ry=1;const{ObjectSetPrototypeOf:e}=Kt();hc=n;const i=Zg();e(n.prototype,i.prototype),e(n,i);function n(a){if(!(this instanceof n))return new n(a);i.call(this,a)}return n.prototype._transform=function(a,l,d){d(null,a)},hc}var pc,sy;function nf(){if(sy)return pc;sy=1;const e=wr(),{ArrayIsArray:i,Promise:n,SymbolAsyncIterator:a}=Kt(),l=_r(),{once:d}=Ai(),u=rs(),c=Fi(),{aggregateTwoErrors:w,codes:{ERR_INVALID_ARG_TYPE:U,ERR_INVALID_RETURN_VALUE:F,ERR_MISSING_ARGS:O,ERR_STREAM_DESTROYED:M,ERR_STREAM_PREMATURE_CLOSE:L},AbortError:_}=gn(),{validateFunction:b,validateAbortSignal:v}=xa(),{isIterable:h,isReadable:m,isReadableNodeStream:k,isNodeStream:B}=Lr(),C=globalThis.AbortController||Xc.AbortController;let R,A;function f(g,I,x){let q=!1;g.on("close",()=>{q=!0});const T=l(g,{readable:I,writable:x},D=>{q=!D});return{destroy:D=>{q||(q=!0,u.destroyer(g,D||new M("pipe")))},cleanup:T}}function E(g){return b(g[g.length-1],"streams[stream.length - 1]"),g.pop()}function S(g){if(h(g))return g;if(k(g))return P(g);throw new U("val",["Readable","Iterable","AsyncIterable"],g)}async function*P(g){A||(A=za()),yield*A.prototype[a].call(g)}async function y(g,I,x,{end:q}){let T,D=null;const W=Q=>{if(Q&&(T=Q),D){const re=D;D=null,re()}},J=()=>new n((Q,re)=>{T?re(T):D=()=>{T?re(T):Q()}});I.on("drain",W);const X=l(I,{readable:!1},W);try{I.writableNeedDrain&&await J();for await(const Q of g)I.write(Q)||await J();q&&I.end(),await J(),x()}catch(Q){x(T!==Q?w(T,Q):Q)}finally{X(),I.off("drain",W)}}function r(...g){return s(g,d(E(g)))}function s(g,I,x){if(g.length===1&&i(g[0])&&(g=g[0]),g.length<2)throw new O("streams");const q=new C,T=q.signal,D=x?.signal,W=[];v(D,"options.signal");function J(){me(new _)}D?.addEventListener("abort",J);let X,Q;const re=[];let se=0;function ne(pe){me(pe,--se===0)}function me(pe,le){if(pe&&(!X||X.code==="ERR_STREAM_PREMATURE_CLOSE")&&(X=pe),!(!X&&!le)){for(;re.length;)re.shift()(X);D?.removeEventListener("abort",J),q.abort(),le&&(X||W.forEach(ye=>ye()),e.nextTick(I,X,Q))}}let ge;for(let pe=0;pe<g.length;pe++){const le=g[pe],ye=pe<g.length-1,de=pe>0,Y=ye||x?.end!==!1,z=pe===g.length-1;if(B(le)){let V=function(ue){ue&&ue.name!=="AbortError"&&ue.code!=="ERR_STREAM_PREMATURE_CLOSE"&&ne(ue)};if(Y){const{destroy:ue,cleanup:Te}=f(le,ye,de);re.push(ue),m(le)&&z&&W.push(Te)}le.on("error",V),m(le)&&z&&W.push(()=>{le.removeListener("error",V)})}if(pe===0)if(typeof le=="function"){if(ge=le({signal:T}),!h(ge))throw new F("Iterable, AsyncIterable or Stream","source",ge)}else h(le)||k(le)?ge=le:ge=c.from(le);else if(typeof le=="function")if(ge=S(ge),ge=le(ge,{signal:T}),ye){if(!h(ge,!0))throw new F("AsyncIterable",`transform[${pe-1}]`,ge)}else{var Ae;R||(R=Qg());const V=new R({objectMode:!0}),ue=(Ae=ge)===null||Ae===void 0?void 0:Ae.then;if(typeof ue=="function")se++,ue.call(ge,Ce=>{Q=Ce,Ce!=null&&V.write(Ce),Y&&V.end(),e.nextTick(ne)},Ce=>{V.destroy(Ce),e.nextTick(ne,Ce)});else if(h(ge,!0))se++,y(ge,V,ne,{end:Y});else throw new F("AsyncIterable or Promise","destination",ge);ge=V;const{destroy:Te,cleanup:Ie}=f(ge,!1,!0);re.push(Te),z&&W.push(Ie)}else if(B(le)){if(k(ge)){se+=2;const V=p(ge,le,ne,{end:Y});m(le)&&z&&W.push(V)}else if(h(ge))se++,y(ge,le,ne,{end:Y});else throw new U("val",["Readable","Iterable","AsyncIterable"],ge);ge=le}else ge=c.from(le)}return(T!=null&&T.aborted||D!=null&&D.aborted)&&e.nextTick(J),ge}function p(g,I,x,{end:q}){let T=!1;return I.on("close",()=>{T||x(new L)}),g.pipe(I,{end:q}),q?g.once("end",()=>{T=!0,I.end()}):x(),l(g,{readable:!0,writable:!1},D=>{const W=g._readableState;D&&D.code==="ERR_STREAM_PREMATURE_CLOSE"&&W&&W.ended&&!W.errored&&!W.errorEmitted?g.once("end",x).once("error",x):x(D)}),l(I,{readable:!1,writable:!0},x)}return pc={pipelineImpl:s,pipeline:r},pc}var mc,oy;function vk(){if(oy)return mc;oy=1;const{pipeline:e}=nf(),i=Fi(),{destroyer:n}=rs(),{isNodeStream:a,isReadable:l,isWritable:d}=Lr(),{AbortError:u,codes:{ERR_INVALID_ARG_VALUE:c,ERR_MISSING_ARGS:w}}=gn();return mc=function(...F){if(F.length===0)throw new w("streams");if(F.length===1)return i.from(F[0]);const O=[...F];if(typeof F[0]=="function"&&(F[0]=i.from(F[0])),typeof F[F.length-1]=="function"){const R=F.length-1;F[R]=i.from(F[R])}for(let R=0;R<F.length;++R)if(a(F[R])){if(R<F.length-1&&!l(F[R]))throw new c(`streams[${R}]`,O[R],"must be readable");if(R>0&&!d(F[R]))throw new c(`streams[${R}]`,O[R],"must be writable")}let M,L,_,b,v;function h(R){const A=b;b=null,A?A(R):R?v.destroy(R):!C&&!B&&v.destroy()}const m=F[0],k=e(F,h),B=!!d(m),C=!!l(k);return v=new i({writableObjectMode:!!(m!=null&&m.writableObjectMode),readableObjectMode:!!(k!=null&&k.writableObjectMode),writable:B,readable:C}),B&&(v._write=function(R,A,f){m.write(R,A)?f():M=f},v._final=function(R){m.end(),L=R},m.on("drain",function(){if(M){const R=M;M=null,R()}}),k.on("finish",function(){if(L){const R=L;L=null,R()}})),C&&(k.on("readable",function(){if(_){const R=_;_=null,R()}}),k.on("end",function(){v.push(null)}),v._read=function(){for(;;){const R=k.read();if(R===null){_=v._read;return}if(!v.push(R))return}}),v._destroy=function(R,A){!R&&b!==null&&(R=new u),_=null,M=null,L=null,b===null?A(R):(b=A,n(k,R))},v},mc}var yc,ay;function Xg(){if(ay)return yc;ay=1;const{ArrayPrototypePop:e,Promise:i}=Kt(),{isIterable:n,isNodeStream:a}=Lr(),{pipelineImpl:l}=nf(),{finished:d}=_r();function u(...c){return new i((w,U)=>{let F,O;const M=c[c.length-1];if(M&&typeof M=="object"&&!a(M)&&!n(M)){const L=e(c);F=L.signal,O=L.end}l(c,(L,_)=>{L?U(L):w(_)},{signal:F,end:O})})}return yc={finished:d,pipeline:u},yc}var uy;function Sk(){if(uy)return Hl.exports;uy=1;const{Buffer:e}=Sr(),{ObjectDefineProperty:i,ObjectKeys:n,ReflectApply:a}=Kt(),{promisify:{custom:l}}=Ai(),{streamReturningOperators:d,promiseReturningOperators:u}=pk(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:c}}=gn(),w=vk(),{pipeline:U}=nf(),{destroyer:F}=rs(),O=_r(),M=Xg(),L=Lr(),_=Hl.exports=$c().Stream;_.isDisturbed=L.isDisturbed,_.isErrored=L.isErrored,_.isReadable=L.isReadable,_.Readable=za();for(const v of n(d)){let m=function(...k){if(new.target)throw c();return _.Readable.from(a(h,this,k))};const h=d[v];i(m,"name",{__proto__:null,value:h.name}),i(m,"length",{__proto__:null,value:h.length}),i(_.Readable.prototype,v,{__proto__:null,value:m,enumerable:!1,configurable:!0,writable:!0})}for(const v of n(u)){let m=function(...k){if(new.target)throw c();return a(h,this,k)};const h=u[v];i(m,"name",{__proto__:null,value:h.name}),i(m,"length",{__proto__:null,value:h.length}),i(_.Readable.prototype,v,{__proto__:null,value:m,enumerable:!1,configurable:!0,writable:!0})}_.Writable=Vg(),_.Duplex=Fi(),_.Transform=Zg(),_.PassThrough=Qg(),_.pipeline=U;const{addAbortSignal:b}=ef();return _.addAbortSignal=b,_.finished=O,_.destroy=F,_.compose=w,i(_,"promises",{__proto__:null,configurable:!0,enumerable:!0,get(){return M}}),i(U,l,{__proto__:null,enumerable:!0,get(){return M.pipeline}}),i(O,l,{__proto__:null,enumerable:!0,get(){return M.finished}}),_.Stream=_,_._isUint8Array=function(h){return h instanceof Uint8Array},_._uint8ArrayToBuffer=function(h){return e.from(h.buffer,h.byteOffset,h.byteLength)},Hl.exports}var ly;function wk(){return ly||(ly=1,function(e){const i=Sk(),n=Xg(),a=i.Readable.destroy;e.exports=i.Readable,e.exports._uint8ArrayToBuffer=i._uint8ArrayToBuffer,e.exports._isUint8Array=i._isUint8Array,e.exports.isDisturbed=i.isDisturbed,e.exports.isErrored=i.isErrored,e.exports.isReadable=i.isReadable,e.exports.Readable=i.Readable,e.exports.Writable=i.Writable,e.exports.Duplex=i.Duplex,e.exports.Transform=i.Transform,e.exports.PassThrough=i.PassThrough,e.exports.addAbortSignal=i.addAbortSignal,e.exports.finished=i.finished,e.exports.destroy=i.destroy,e.exports.destroy=a,e.exports.pipeline=i.pipeline,e.exports.compose=i.compose,Object.defineProperty(i,"promises",{configurable:!0,enumerable:!0,get(){return n}}),e.exports.Stream=i.Stream,e.exports.default=e.exports}(Gl)),Gl.exports}var cy;function Lk(){if(cy)return na;cy=1,Object.defineProperty(na,"__esModule",{value:!0});const e=wk();function i(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",F=>{w.push(F),u?c=w.length:c+=F.length}),U.getBufferedValue=()=>a?w:d?Buffer.concat(w,c):w.join(""),U.getBufferedLength=()=>c,U}return na.default=i,na}var fy;function Yg(){if(fy)return ei;fy=1;var e=ei&&ei.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(ei,"__esModule",{value:!0}),ei.array=ei.buffer=ei.getStream=void 0;const i=e(Lk());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 F=new Promise((O,M)=>{const L=_=>{_&&(_.bufferedData=w.getBufferedValue()),M(_)};w=(0,i.default)(u),d.once("error",L),d.pipe(w),w.on("data",()=>{w.getBufferedLength()>c&&M(new Error("maxBuffer exceeded"))}),w.once("error",L),w.on("end",O),U=()=>{d.unpipe&&d.unpipe(w)}});return F.then(U,U),F.then(()=>w.getBufferedValue())}ei.getStream=n;function a(d,u={}){n(d,Object.assign({},u,{encoding:"buffer"}))}ei.buffer=a;function l(d,u={}){n(d,Object.assign({},u,{array:!0}))}return ei.array=l,ei}var Yt={};const _k={},kk=Object.freeze(Object.defineProperty({__proto__:null,default:_k},Symbol.toStringTag,{value:"Module"})),Nk=Nc(kk);var Wi={},dy;function Ok(){if(dy)return Wi;dy=1,Object.defineProperty(Wi,"__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},i=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 Wi.isBrowser=i,Wi.isWebWorker=a,Wi.isNode=n,Wi.isJsDom=l,Wi.isDeno=d,Wi}var gc={},Js={},hy;function Ck(){if(hy)return Js;hy=1,Object.defineProperty(Js,"__esModule",{value:!0}),Js.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 Js.DefaultMap=e,Js}var py;function Ek(){return py||(py=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 i(m){}e.proveType=i;function n(m,k,B){return console.trace(k),B}e.proveNever=n;function a(m="This should not happen"){console.trace(m);debugger;throw new Error(m)}e.panic=a;function l(m,k="Assertion failed"){if(!m)return a(k)}e.assert=l;function d(m,k="`never` happened"){return a(k)}e.assertNever=d;function u(m,k){return m===void 0?a("Value was undefined but should be defined"+(k!==void 0?` because: ${k}`:"")):m}e.defined=u;function c(m){m instanceof Promise&&m.catch(k=>{throw console.trace("Unhandled error from unawaited promise",k),k})}e.dontAwait=c;function w(m){return new Promise(k=>{setTimeout(k,m)})}e.sleep=w;function U(m,k,B){return m===void 0?k:k===void 0?m:B(m,k)}e.reduceTwo=U;function F(m,k){if(m!==void 0)return k(m)}e.definedMap=F;function O(m,k){return Object.keys(m).map(B=>m[B]).some(B=>B===k)}e.isEnumValue=O;function M(m,k){return m==null?!1:Object.prototype.hasOwnProperty.call(m,k)}e.hasOwnProperty=M;function L(m,k){const B=[];let C=0;for(const R of m){const A=k(R,C);C+=1,A!==void 0&&B.push(A)}return B}e.mapFilterUndefined=L;function _(m){const k=[];for(const B of m)B!==void 0&&k.push(B);return k}e.filterUndefined=_;function b(m){if(m===void 0)return"";try{return m.toString()}catch(k){try{return`Exception can't be stringified: ${b(k)}`}catch{return"Exception can't be stringified"}}}e.exceptionToString=b;function v(m){return m instanceof Error?m:new Error(b(m))}e.exceptionToError=v;var h=Ck();Object.defineProperty(e,"DefaultMap",{enumerable:!0,get:function(){return h.DefaultMap}})}(gc)),gc}var bc,my;function Ak(){if(my)return bc;my=1,bc=a;var e=/^(?:\w+:)?\/\/(\S+)$/,i=/^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?!!(i.test(u)||n.test(u)):!1}return bc}var ua={exports:{}},yy;function Fk(){return yy||(yy=1,function(e,i){var n=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof Dn<"u"&&Dn,a=function(){function d(){this.fetch=!1,this.DOMException=n.DOMException}return d.prototype=n,new d}();(function(d){(function(u){var c=typeof d<"u"&&d||typeof self<"u"&&self||typeof Dn<"u"&&Dn||{},w={searchParams:"URLSearchParams"in c,iterable:"Symbol"in c&&"iterator"in Symbol,blob:"FileReader"in c&&"Blob"in c&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in c,arrayBuffer:"ArrayBuffer"in c};function U(p){return p&&DataView.prototype.isPrototypeOf(p)}if(w.arrayBuffer)var F=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],O=ArrayBuffer.isView||function(p){return p&&F.indexOf(Object.prototype.toString.call(p))>-1};function M(p){if(typeof p!="string"&&(p=String(p)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(p)||p==="")throw new TypeError('Invalid character in header field name: "'+p+'"');return p.toLowerCase()}function L(p){return typeof p!="string"&&(p=String(p)),p}function _(p){var g={next:function(){var I=p.shift();return{done:I===void 0,value:I}}};return w.iterable&&(g[Symbol.iterator]=function(){return g}),g}function b(p){this.map={},p instanceof b?p.forEach(function(g,I){this.append(I,g)},this):Array.isArray(p)?p.forEach(function(g){if(g.length!=2)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+g.length);this.append(g[0],g[1])},this):p&&Object.getOwnPropertyNames(p).forEach(function(g){this.append(g,p[g])},this)}b.prototype.append=function(p,g){p=M(p),g=L(g);var I=this.map[p];this.map[p]=I?I+", "+g:g},b.prototype.delete=function(p){delete this.map[M(p)]},b.prototype.get=function(p){return p=M(p),this.has(p)?this.map[p]:null},b.prototype.has=function(p){return this.map.hasOwnProperty(M(p))},b.prototype.set=function(p,g){this.map[M(p)]=L(g)},b.prototype.forEach=function(p,g){for(var I in this.map)this.map.hasOwnProperty(I)&&p.call(g,this.map[I],I,this)},b.prototype.keys=function(){var p=[];return this.forEach(function(g,I){p.push(I)}),_(p)},b.prototype.values=function(){var p=[];return this.forEach(function(g){p.push(g)}),_(p)},b.prototype.entries=function(){var p=[];return this.forEach(function(g,I){p.push([I,g])}),_(p)},w.iterable&&(b.prototype[Symbol.iterator]=b.prototype.entries);function v(p){if(!p._noBody){if(p.bodyUsed)return Promise.reject(new TypeError("Already read"));p.bodyUsed=!0}}function h(p){return new Promise(function(g,I){p.onload=function(){g(p.result)},p.onerror=function(){I(p.error)}})}function m(p){var g=new FileReader,I=h(g);return g.readAsArrayBuffer(p),I}function k(p){var g=new FileReader,I=h(g),x=/charset=([A-Za-z0-9_-]+)/.exec(p.type),q=x?x[1]:"utf-8";return g.readAsText(p,q),I}function B(p){for(var g=new Uint8Array(p),I=new Array(g.length),x=0;x<g.length;x++)I[x]=String.fromCharCode(g[x]);return I.join("")}function C(p){if(p.slice)return p.slice(0);var g=new Uint8Array(p.byteLength);return g.set(new Uint8Array(p)),g.buffer}function R(){return this.bodyUsed=!1,this._initBody=function(p){this.bodyUsed=this.bodyUsed,this._bodyInit=p,p?typeof p=="string"?this._bodyText=p:w.blob&&Blob.prototype.isPrototypeOf(p)?this._bodyBlob=p:w.formData&&FormData.prototype.isPrototypeOf(p)?this._bodyFormData=p:w.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)?this._bodyText=p.toString():w.arrayBuffer&&w.blob&&U(p)?(this._bodyArrayBuffer=C(p.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):w.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(p)||O(p))?this._bodyArrayBuffer=C(p):this._bodyText=p=Object.prototype.toString.call(p):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||(typeof p=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):w.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},w.blob&&(this.blob=function(){var p=v(this);if(p)return p;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(){if(this._bodyArrayBuffer){var p=v(this);return p||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}else{if(w.blob)return this.blob().then(m);throw new Error("could not read as ArrayBuffer")}},this.text=function(){var p=v(this);if(p)return p;if(this._bodyBlob)return k(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(B(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},w.formData&&(this.formData=function(){return this.text().then(S)}),this.json=function(){return this.text().then(JSON.parse)},this}var A=["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"];function f(p){var g=p.toUpperCase();return A.indexOf(g)>-1?g:p}function E(p,g){if(!(this instanceof E))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');g=g||{};var I=g.body;if(p instanceof E){if(p.bodyUsed)throw new TypeError("Already read");this.url=p.url,this.credentials=p.credentials,g.headers||(this.headers=new b(p.headers)),this.method=p.method,this.mode=p.mode,this.signal=p.signal,!I&&p._bodyInit!=null&&(I=p._bodyInit,p.bodyUsed=!0)}else this.url=String(p);if(this.credentials=g.credentials||this.credentials||"same-origin",(g.headers||!this.headers)&&(this.headers=new b(g.headers)),this.method=f(g.method||this.method||"GET"),this.mode=g.mode||this.mode||null,this.signal=g.signal||this.signal||function(){if("AbortController"in c){var T=new AbortController;return T.signal}}(),this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&I)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(I),(this.method==="GET"||this.method==="HEAD")&&(g.cache==="no-store"||g.cache==="no-cache")){var x=/([?&])_=[^&]*/;if(x.test(this.url))this.url=this.url.replace(x,"$1_="+new Date().getTime());else{var q=/\?/;this.url+=(q.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}E.prototype.clone=function(){return new E(this,{body:this._bodyInit})};function S(p){var g=new FormData;return p.trim().split("&").forEach(function(I){if(I){var x=I.split("="),q=x.shift().replace(/\+/g," "),T=x.join("=").replace(/\+/g," ");g.append(decodeURIComponent(q),decodeURIComponent(T))}}),g}function P(p){var g=new b,I=p.replace(/\r?\n[\t ]+/g," ");return I.split("\r").map(function(x){return x.indexOf(`
|
|
1003
|
+
`)===0?x.substr(1,x.length):x}).forEach(function(x){var q=x.split(":"),T=q.shift().trim();if(T){var D=q.join(":").trim();try{g.append(T,D)}catch(W){console.warn("Response "+W.message)}}}),g}R.call(E.prototype);function y(p,g){if(!(this instanceof y))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(g||(g={}),this.type="default",this.status=g.status===void 0?200:g.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=g.statusText===void 0?"":""+g.statusText,this.headers=new b(g.headers),this.url=g.url||"",this._initBody(p)}R.call(y.prototype),y.prototype.clone=function(){return new y(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new b(this.headers),url:this.url})},y.error=function(){var p=new y(null,{status:200,statusText:""});return p.ok=!1,p.status=0,p.type="error",p};var r=[301,302,303,307,308];y.redirect=function(p,g){if(r.indexOf(g)===-1)throw new RangeError("Invalid status code");return new y(null,{status:g,headers:{location:p}})},u.DOMException=c.DOMException;try{new u.DOMException}catch{u.DOMException=function(g,I){this.message=g,this.name=I;var x=Error(g);this.stack=x.stack},u.DOMException.prototype=Object.create(Error.prototype),u.DOMException.prototype.constructor=u.DOMException}function s(p,g){return new Promise(function(I,x){var q=new E(p,g);if(q.signal&&q.signal.aborted)return x(new u.DOMException("Aborted","AbortError"));var T=new XMLHttpRequest;function D(){T.abort()}T.onload=function(){var X={statusText:T.statusText,headers:P(T.getAllResponseHeaders()||"")};q.url.indexOf("file://")===0&&(T.status<200||T.status>599)?X.status=200:X.status=T.status,X.url="responseURL"in T?T.responseURL:X.headers.get("X-Request-URL");var Q="response"in T?T.response:T.responseText;setTimeout(function(){I(new y(Q,X))},0)},T.onerror=function(){setTimeout(function(){x(new TypeError("Network request failed"))},0)},T.ontimeout=function(){setTimeout(function(){x(new TypeError("Network request timed out"))},0)},T.onabort=function(){setTimeout(function(){x(new u.DOMException("Aborted","AbortError"))},0)};function W(X){try{return X===""&&c.location.href?c.location.href:X}catch{return X}}if(T.open(q.method,W(q.url),!0),q.credentials==="include"?T.withCredentials=!0:q.credentials==="omit"&&(T.withCredentials=!1),"responseType"in T&&(w.blob?T.responseType="blob":w.arrayBuffer&&(T.responseType="arraybuffer")),g&&typeof g.headers=="object"&&!(g.headers instanceof b||c.Headers&&g.headers instanceof c.Headers)){var J=[];Object.getOwnPropertyNames(g.headers).forEach(function(X){J.push(M(X)),T.setRequestHeader(X,L(g.headers[X]))}),q.headers.forEach(function(X,Q){J.indexOf(Q)===-1&&T.setRequestHeader(Q,X)})}else q.headers.forEach(function(X,Q){T.setRequestHeader(Q,X)});q.signal&&(q.signal.addEventListener("abort",D),T.onreadystatechange=function(){T.readyState===4&&q.signal.removeEventListener("abort",D)}),T.send(typeof q._bodyInit>"u"?null:q._bodyInit)})}return s.polyfill=!0,c.fetch||(c.fetch=s,c.Headers=b,c.Request=E,c.Response=y),u.Headers=b,u.Request=E,u.Response=y,u.fetch=s,Object.defineProperty(u,"__esModule",{value:!0}),u})({})})(a),a.fetch.ponyfill=!0,delete a.fetch.polyfill;var l=n.fetch?n:a;i=l.fetch,i.default=l.fetch,i.fetch=l.fetch,i.Headers=l.Headers,i.Request=l.Request,i.Response=l.Response,e.exports=i}(ua,ua.exports)),ua.exports}var gy;function $g(){if(gy)return Yt;gy=1;var e=Yt&&Yt.__createBinding||(Object.create?function(b,v,h,m){m===void 0&&(m=h);var k=Object.getOwnPropertyDescriptor(v,h);(!k||("get"in k?!v.__esModule:k.writable||k.configurable))&&(k={enumerable:!0,get:function(){return v[h]}}),Object.defineProperty(b,m,k)}:function(b,v,h,m){m===void 0&&(m=h),b[m]=v[h]}),i=Yt&&Yt.__setModuleDefault||(Object.create?function(b,v){Object.defineProperty(b,"default",{enumerable:!0,value:v})}:function(b,v){b.default=v}),n=Yt&&Yt.__importStar||function(b){if(b&&b.__esModule)return b;var v={};if(b!=null)for(var h in b)h!=="default"&&Object.prototype.hasOwnProperty.call(b,h)&&e(v,b,h);return i(v,b),v},a=Yt&&Yt.__awaiter||function(b,v,h,m){function k(B){return B instanceof h?B:new h(function(C){C(B)})}return new(h||(h=Promise))(function(B,C){function R(E){try{f(m.next(E))}catch(S){C(S)}}function A(E){try{f(m.throw(E))}catch(S){C(S)}}function f(E){E.done?B(E.value):k(E.value).then(R,A)}f((m=m.apply(b,v||[])).next())})},l=Yt&&Yt.__importDefault||function(b){return b&&b.__esModule?b:{default:b}};Object.defineProperty(Yt,"__esModule",{value:!0}),Yt.readFromFileOrURL=Yt.readableFromFileOrURL=void 0;const d=n(Nk),u=Ok(),c=Yg(),w=Ek(),U=Wa(),F=Ak(),O=l(Fk());function M(b){return Array.isArray(b)?b.reduce(function(v,h){if(h!==void 0&&h.length>0){const m=h.indexOf(":");if(m<0)return(0,U.panic)(`Could not parse HTTP header "${h}".`);const k=h.slice(0,m).trim(),B=h.slice(m+1).trim();v[k]=B}return v},{}):{}}function L(b,v){return a(this,void 0,void 0,function*(){try{if(F(b)){const h=yield(0,O.default)(b,{headers:M(v)});return(0,w.defined)(h.body)}else if(u.isNode){if(b==="-")return process.stdin;const h=d.lstatSync(b).isSymbolicLink()?d.readlinkSync(b):b;if(d.existsSync(h))return d.createReadStream(h,"utf8")}}catch(h){return(0,U.messageError)("MiscReadError",{fileOrURL:b,message:(0,w.exceptionToString)(h)})}return(0,U.messageError)("DriverInputFileDoesNotExist",{filename:b})})}Yt.readableFromFileOrURL=L;function _(b,v){return a(this,void 0,void 0,function*(){const h=yield L(b,v);try{return yield(0,c.getStream)(h)}catch(m){return(0,U.messageError)("MiscReadError",{fileOrURL:b,message:(0,w.exceptionToString)(m)})}})}return Yt.readFromFileOrURL=_,Yt}var dr={},by;function Pk(){if(by)return dr;by=1;var e=dr&&dr.__awaiter||function(d,u,c,w){function U(F){return F instanceof c?F:new c(function(O){O(F)})}return new(c||(c=Promise))(function(F,O){function M(b){try{_(w.next(b))}catch(v){O(v)}}function L(b){try{_(w.throw(b))}catch(v){O(v)}}function _(b){b.done?F(b.value):U(b.value).then(M,L)}_((w=w.apply(d,u||[])).next())})};Object.defineProperty(dr,"__esModule",{value:!0}),dr.FetchingJSONSchemaStore=void 0;const i=Hc(),n=Wa(),a=$g();let l=class extends i.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 dr.FetchingJSONSchemaStore=l,dr}var Gs={},Ty;function Ik(){if(Ty)return Gs;Ty=1,Object.defineProperty(Gs,"__esModule",{value:!0}),Gs.sourcesFromPostmanCollection=void 0;const e=Qe();function i(a){try{return JSON.parse(a),!0}catch{return!1}}function n(a,l){const d=[],u=[];function c(F){if(typeof F=="object"){if(Array.isArray(F.item)){for(const O of F.item)c(O);typeof F.info=="object"&&typeof F.info.description=="string"&&u.push(F.info.description)}if(typeof F.name=="string"&&Array.isArray(F.response)){const O=[];for(const M of F.response)typeof M=="object"&&typeof M.body=="string"&&i(M.body)&&O.push(M.body);if(O.length>0){const M={name:F.name,samples:O},L=[F.name];if(typeof F.request=="object"){const{method:_,url:b}=F.request;_!==void 0&&typeof b=="object"&&b.raw!==void 0&&L.push(`${_} ${b.raw}`)}typeof F.request=="object"&&typeof F.request.description=="string"&&L.push(F.request.description),M.description=L.length===0?void 0:L.join(`
|
|
1004
|
+
|
|
1005
|
+
`),d.push(M)}}}}c((0,e.parseJSON)(a,"Postman collection",l));const w=u.join(`
|
|
1006
|
+
|
|
1007
|
+
`).trim();let U;return w!==""&&(U=w),{sources:d,description:U}}return Gs.sourcesFromPostmanCollection=n,Gs}var vy;function Wa(){return vy||(vy=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 i=hk();Object.defineProperty(e,"getTargetLanguage",{enumerable:!0,get:function(){return i.getTargetLanguage}}),Object.defineProperty(e,"quicktypeMultiFile",{enumerable:!0,get:function(){return i.quicktypeMultiFile}}),Object.defineProperty(e,"quicktypeMultiFileSync",{enumerable:!0,get:function(){return i.quicktypeMultiFileSync}}),Object.defineProperty(e,"quicktype",{enumerable:!0,get:function(){return i.quicktype}}),Object.defineProperty(e,"combineRenderResults",{enumerable:!0,get:function(){return i.combineRenderResults}}),Object.defineProperty(e,"inferenceFlags",{enumerable:!0,get:function(){return i.inferenceFlags}}),Object.defineProperty(e,"inferenceFlagNames",{enumerable:!0,get:function(){return i.inferenceFlagNames}}),Object.defineProperty(e,"defaultInferenceFlags",{enumerable:!0,get:function(){return i.defaultInferenceFlags}}),Object.defineProperty(e,"inferenceFlagsObject",{enumerable:!0,get:function(){return i.inferenceFlagsObject}});var n=Qc();Object.defineProperty(e,"CompressedJSON",{enumerable:!0,get:function(){return n.CompressedJSON}});var a=Gg();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=kc();Object.defineProperty(e,"JSONSchemaInput",{enumerable:!0,get:function(){return l.JSONSchemaInput}});var d=kc();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=Ua();Object.defineProperty(e,"defaultTargetLanguages",{enumerable:!0,get:function(){return w.all}}),Object.defineProperty(e,"languageNamed",{enumerable:!0,get:function(){return w.languageNamed}});var U=Dt();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 F=Ft();Object.defineProperty(e,"Name",{enumerable:!0,get:function(){return F.Name}}),Object.defineProperty(e,"funPrefixNamer",{enumerable:!0,get:function(){return F.funPrefixNamer}}),Object.defineProperty(e,"Namer",{enumerable:!0,get:function(){return F.Namer}});var O=On();Object.defineProperty(e,"IssueAnnotationData",{enumerable:!0,get:function(){return O.IssueAnnotationData}});var M=Qe();Object.defineProperty(e,"panic",{enumerable:!0,get:function(){return M.panic}}),Object.defineProperty(e,"assert",{enumerable:!0,get:function(){return M.assert}}),Object.defineProperty(e,"defined",{enumerable:!0,get:function(){return M.defined}}),Object.defineProperty(e,"assertNever",{enumerable:!0,get:function(){return M.assertNever}}),Object.defineProperty(e,"parseJSON",{enumerable:!0,get:function(){return M.parseJSON}}),Object.defineProperty(e,"checkStringMap",{enumerable:!0,get:function(){return M.checkStringMap}}),Object.defineProperty(e,"checkArray",{enumerable:!0,get:function(){return M.checkArray}}),Object.defineProperty(e,"inflateBase64",{enumerable:!0,get:function(){return M.inflateBase64}});var L=Nt();Object.defineProperty(e,"splitIntoWords",{enumerable:!0,get:function(){return L.splitIntoWords}}),Object.defineProperty(e,"capitalize",{enumerable:!0,get:function(){return L.capitalize}}),Object.defineProperty(e,"combineWords",{enumerable:!0,get:function(){return L.combineWords}}),Object.defineProperty(e,"firstUpperWordStyle",{enumerable:!0,get:function(){return L.firstUpperWordStyle}}),Object.defineProperty(e,"allUpperWordStyle",{enumerable:!0,get:function(){return L.allUpperWordStyle}}),Object.defineProperty(e,"legalizeCharacters",{enumerable:!0,get:function(){return L.legalizeCharacters}}),Object.defineProperty(e,"isLetterOrDigit",{enumerable:!0,get:function(){return L.isLetterOrDigit}});var _=Jg();Object.defineProperty(e,"trainMarkovChain",{enumerable:!0,get:function(){return _.train}});var b=yn();Object.defineProperty(e,"QuickTypeError",{enumerable:!0,get:function(){return b.QuickTypeError}}),Object.defineProperty(e,"messageError",{enumerable:!0,get:function(){return b.messageError}}),Object.defineProperty(e,"messageAssert",{enumerable:!0,get:function(){return b.messageAssert}});var v=mt();Object.defineProperty(e,"Type",{enumerable:!0,get:function(){return v.Type}}),Object.defineProperty(e,"PrimitiveType",{enumerable:!0,get:function(){return v.PrimitiveType}}),Object.defineProperty(e,"ArrayType",{enumerable:!0,get:function(){return v.ArrayType}}),Object.defineProperty(e,"ClassType",{enumerable:!0,get:function(){return v.ClassType}}),Object.defineProperty(e,"ClassProperty",{enumerable:!0,get:function(){return v.ClassProperty}}),Object.defineProperty(e,"EnumType",{enumerable:!0,get:function(){return v.EnumType}}),Object.defineProperty(e,"MapType",{enumerable:!0,get:function(){return v.MapType}}),Object.defineProperty(e,"UnionType",{enumerable:!0,get:function(){return v.UnionType}}),Object.defineProperty(e,"ObjectType",{enumerable:!0,get:function(){return v.ObjectType}});var h=Yg();Object.defineProperty(e,"getStream",{enumerable:!0,get:function(){return h.getStream}});var m=$g();Object.defineProperty(e,"readableFromFileOrURL",{enumerable:!0,get:function(){return m.readableFromFileOrURL}}),Object.defineProperty(e,"readFromFileOrURL",{enumerable:!0,get:function(){return m.readFromFileOrURL}});var k=Pk();Object.defineProperty(e,"FetchingJSONSchemaStore",{enumerable:!0,get:function(){return k.FetchingJSONSchemaStore}});var B=Hc();Object.defineProperty(e,"JSONSchemaStore",{enumerable:!0,get:function(){return B.JSONSchemaStore}});var C=Ik();Object.defineProperty(e,"sourcesFromPostmanCollection",{enumerable:!0,get:function(){return C.sourcesFromPostmanCollection}});var R=is();Object.defineProperty(e,"TypeBuilder",{enumerable:!0,get:function(){return R.TypeBuilder}});var A=ni();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=Hi();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 S=Pi();Object.defineProperty(e,"StringTypes",{enumerable:!0,get:function(){return S.StringTypes}});var P=pt();Object.defineProperty(e,"removeNullFromUnion",{enumerable:!0,get:function(){return P.removeNullFromUnion}}),Object.defineProperty(e,"matchType",{enumerable:!0,get:function(){return P.matchType}}),Object.defineProperty(e,"nullableFromUnion",{enumerable:!0,get:function(){return P.nullableFromUnion}});var y=Wt();Object.defineProperty(e,"ConvenienceRenderer",{enumerable:!0,get:function(){return y.ConvenienceRenderer}});var r=Gc();Object.defineProperty(e,"uriTypeAttributeKind",{enumerable:!0,get:function(){return r.uriTypeAttributeKind}});var s=Cg();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 p=Ng();Object.defineProperty(e,"CSharpTargetLanguage",{enumerable:!0,get:function(){return p.CSharpTargetLanguage}}),Object.defineProperty(e,"cSharpOptions",{enumerable:!0,get:function(){return p.cSharpOptions}}),Object.defineProperty(e,"CSharpRenderer",{enumerable:!0,get:function(){return p.CSharpRenderer}});var g=Wg();Object.defineProperty(e,"PythonTargetLanguage",{enumerable:!0,get:function(){return g.PythonTargetLanguage}}),Object.defineProperty(e,"PythonRenderer",{enumerable:!0,get:function(){return g.PythonRenderer}}),Object.defineProperty(e,"pythonOptions",{enumerable:!0,get:function(){return g.pythonOptions}});var I=Og();Object.defineProperty(e,"GoTargetLanguage",{enumerable:!0,get:function(){return I.GoTargetLanguage}}),Object.defineProperty(e,"GoRenderer",{enumerable:!0,get:function(){return I.GoRenderer}}),Object.defineProperty(e,"goOptions",{enumerable:!0,get:function(){return I.goOptions}});var x=Eg();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 q=Ag();Object.defineProperty(e,"JavaTargetLanguage",{enumerable:!0,get:function(){return q.JavaTargetLanguage}}),Object.defineProperty(e,"JavaRenderer",{enumerable:!0,get:function(){return q.JavaRenderer}}),Object.defineProperty(e,"javaOptions",{enumerable:!0,get:function(){return q.javaOptions}});var T=ja();Object.defineProperty(e,"JavaScriptTargetLanguage",{enumerable:!0,get:function(){return T.JavaScriptTargetLanguage}}),Object.defineProperty(e,"JavaScriptRenderer",{enumerable:!0,get:function(){return T.JavaScriptRenderer}}),Object.defineProperty(e,"javaScriptOptions",{enumerable:!0,get:function(){return T.javaScriptOptions}});var D=Pg();Object.defineProperty(e,"JavaScriptPropTypesTargetLanguage",{enumerable:!0,get:function(){return D.JavaScriptPropTypesTargetLanguage}}),Object.defineProperty(e,"JavaScriptPropTypesRenderer",{enumerable:!0,get:function(){return D.JavaScriptPropTypesRenderer}}),Object.defineProperty(e,"javaScriptPropTypesOptions",{enumerable:!0,get:function(){return D.javaScriptPropTypesOptions}});var W=Ig();Object.defineProperty(e,"TypeScriptTargetLanguage",{enumerable:!0,get:function(){return W.TypeScriptTargetLanguage}}),Object.defineProperty(e,"TypeScriptRenderer",{enumerable:!0,get:function(){return W.TypeScriptRenderer}}),Object.defineProperty(e,"FlowTargetLanguage",{enumerable:!0,get:function(){return W.FlowTargetLanguage}}),Object.defineProperty(e,"FlowRenderer",{enumerable:!0,get:function(){return W.FlowRenderer}}),Object.defineProperty(e,"tsFlowOptions",{enumerable:!0,get:function(){return W.tsFlowOptions}});var J=Rg();Object.defineProperty(e,"SwiftTargetLanguage",{enumerable:!0,get:function(){return J.SwiftTargetLanguage}}),Object.defineProperty(e,"SwiftRenderer",{enumerable:!0,get:function(){return J.SwiftRenderer}}),Object.defineProperty(e,"swiftOptions",{enumerable:!0,get:function(){return J.swiftOptions}});var X=Mg();Object.defineProperty(e,"KotlinTargetLanguage",{enumerable:!0,get:function(){return X.KotlinTargetLanguage}}),Object.defineProperty(e,"KotlinRenderer",{enumerable:!0,get:function(){return X.KotlinRenderer}}),Object.defineProperty(e,"kotlinOptions",{enumerable:!0,get:function(){return X.kotlinOptions}});var Q=Bg();Object.defineProperty(e,"ElmTargetLanguage",{enumerable:!0,get:function(){return Q.ElmTargetLanguage}}),Object.defineProperty(e,"ElmRenderer",{enumerable:!0,get:function(){return Q.ElmRenderer}}),Object.defineProperty(e,"elmOptions",{enumerable:!0,get:function(){return Q.elmOptions}});var re=Dg();Object.defineProperty(e,"JSONSchemaTargetLanguage",{enumerable:!0,get:function(){return re.JSONSchemaTargetLanguage}}),Object.defineProperty(e,"JSONSchemaRenderer",{enumerable:!0,get:function(){return re.JSONSchemaRenderer}});var se=jg();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 ne=xg();Object.defineProperty(e,"RubyTargetLanguage",{enumerable:!0,get:function(){return ne.RubyTargetLanguage}}),Object.defineProperty(e,"RubyRenderer",{enumerable:!0,get:function(){return ne.RubyRenderer}}),Object.defineProperty(e,"rubyOptions",{enumerable:!0,get:function(){return ne.rubyOptions}});var me=Ug();Object.defineProperty(e,"CrystalTargetLanguage",{enumerable:!0,get:function(){return me.CrystalTargetLanguage}}),Object.defineProperty(e,"CrystalRenderer",{enumerable:!0,get:function(){return me.CrystalRenderer}});var ge=qg();Object.defineProperty(e,"HaskellTargetLanguage",{enumerable:!0,get:function(){return ge.HaskellTargetLanguage}}),Object.defineProperty(e,"HaskellRenderer",{enumerable:!0,get:function(){return ge.HaskellRenderer}}),Object.defineProperty(e,"haskellOptions",{enumerable:!0,get:function(){return ge.haskellOptions}});var Ae=zg();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}})}($u)),$u}var Vk=Wa(),Zk=Ua();export{Zk as A,Vk as d};
|