@nuxt/devtools-nightly 3.1.1-29404851.4bbdfca → 3.1.1-29462902.5c4a0b0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/chunks/module-main.mjs +2 -2
  2. package/dist/client/200.html +1 -1
  3. package/dist/client/404.html +1 -1
  4. package/dist/client/_nuxt/__blank-k6zhzq98.js +1 -0
  5. package/dist/client/_nuxt/analyze-build-jcrqknm7.js +1 -0
  6. package/dist/client/_nuxt/assets-jci46na9.js +6 -0
  7. package/dist/client/_nuxt/builds/latest.json +1 -1
  8. package/dist/client/_nuxt/builds/meta/6c475c27-2710-410b-baf2-788ee88c8b1a.json +1 -0
  9. package/dist/client/_nuxt/bw1dti8j.js +4 -0
  10. package/dist/client/_nuxt/client-mfzdkims.js +1 -0
  11. package/dist/client/_nuxt/code-diff-i6z1a6i4.js +8 -0
  12. package/dist/client/_nuxt/code-snippets-fcz7bknh.js +1 -0
  13. package/dist/client/_nuxt/color-k274hmrf.js +1 -0
  14. package/dist/client/_nuxt/components-djykukp0.js +1 -0
  15. package/dist/client/_nuxt/composable-item-c3g9ucyq.js +1 -0
  16. package/dist/client/_nuxt/composables-g8w9dpc0.js +1 -0
  17. package/dist/client/_nuxt/constants-opnqtuov.js +1 -0
  18. package/dist/client/_nuxt/custom-_name_-irzzyq8u.js +1 -0
  19. package/dist/client/_nuxt/data-schema-button-kjb29284.js +1 -0
  20. package/dist/client/_nuxt/data-schema-drawer-gvivwibu.js +2 -0
  21. package/dist/client/_nuxt/debug-l8gntzhk.js +1 -0
  22. package/dist/client/_nuxt/default-op67zexq.js +1 -0
  23. package/dist/client/_nuxt/dist-k9rc0n5t.js +1 -0
  24. package/dist/client/_nuxt/dist-opw9eswr.js +1 -0
  25. package/dist/client/_nuxt/duration-display-da99ahrl.js +1 -0
  26. package/dist/client/_nuxt/entry.css-l3c1lp8x.css +1 -0
  27. package/dist/client/_nuxt/error-404-f5klrf9c.js +1 -0
  28. package/dist/client/_nuxt/error-404.css-o9fsfvte.css +1 -0
  29. package/dist/client/_nuxt/error-500-d3lhx7te.js +1 -0
  30. package/dist/client/_nuxt/error-500.css-lncq9rwv.css +1 -0
  31. package/dist/client/_nuxt/error-b8lr6jno.js +9 -0
  32. package/dist/client/_nuxt/filepath-item-jelkqn52.js +1 -0
  33. package/dist/client/_nuxt/full-m1gws1dv.js +1 -0
  34. package/dist/client/_nuxt/help-fab-hsmyadfc.js +1 -0
  35. package/dist/client/_nuxt/hooks-bka44r2r.js +1 -0
  36. package/dist/client/_nuxt/imports-mdwzjyhm.js +1 -0
  37. package/dist/client/_nuxt/launch-page-bo5il4u2.js +1 -0
  38. package/dist/client/_nuxt/modules-nqq0afu4.js +1 -0
  39. package/dist/client/_nuxt/nbadge-be0uvjcc.js +1 -0
  40. package/dist/client/_nuxt/ncheckbox-btor8x5f.js +1 -0
  41. package/dist/client/_nuxt/ncode-block-kdtjcgup.js +2 -0
  42. package/dist/client/_nuxt/ncode-block.css-o2ixs97j.css +1 -0
  43. package/dist/client/_nuxt/ndrawer-f422gy3v.js +1 -0
  44. package/dist/client/_nuxt/ndropdown-jin6fbhg.js +1 -0
  45. package/dist/client/_nuxt/nicon-title-otd5t7iw.js +1 -0
  46. package/dist/client/_nuxt/nlink-ltyie96b.js +1 -0
  47. package/dist/client/_nuxt/nmarkdown-bofr01ux.js +1 -0
  48. package/dist/client/_nuxt/nnavbar-h40011d7.js +1 -0
  49. package/dist/client/_nuxt/none-b13ud8xm.js +1 -0
  50. package/dist/client/_nuxt/nsection-block-cx50x3ui.js +1 -0
  51. package/dist/client/_nuxt/nselect-fx5o97au.js +1 -0
  52. package/dist/client/_nuxt/nselect-tabs-gqdvhqhx.js +1 -0
  53. package/dist/client/_nuxt/nswitch-jfsnhnbt.js +1 -0
  54. package/dist/client/_nuxt/open-graph-ehm1xv33.js +3 -0
  55. package/dist/client/_nuxt/open-graph.css-dk03m1qz.css +1 -0
  56. package/dist/client/_nuxt/overview-igybsiq2.js +1 -0
  57. package/dist/client/_nuxt/pages-b1exx202.js +1 -0
  58. package/dist/client/_nuxt/pages-j7dughxm.js +1 -0
  59. package/dist/client/_nuxt/payload-gd07c00g.js +1 -0
  60. package/dist/client/_nuxt/pinia-gbqepyja.js +1 -0
  61. package/dist/client/_nuxt/plugins-fiqmijps.js +1 -0
  62. package/dist/client/_nuxt/render-tree-etmpt7ih.js +1 -0
  63. package/dist/client/_nuxt/rolldown-runtime-fitqecur.js +1 -0
  64. package/dist/client/_nuxt/runtime-configs-jsmy47du.js +1 -0
  65. package/dist/client/_nuxt/server-discovery-ebpnno5n.js +1 -0
  66. package/dist/client/_nuxt/server-route-inputs-pdleptai.js +1 -0
  67. package/dist/client/_nuxt/server-routes-omr0dbib.js +7 -0
  68. package/dist/client/_nuxt/server-tasks-emjzqs0y.js +1 -0
  69. package/dist/client/_nuxt/settings-llsxt83l.js +1 -0
  70. package/dist/client/_nuxt/stacktrace-list-elhhkrir.js +1 -0
  71. package/dist/client/_nuxt/state-components-eaxfnxiz.js +1 -0
  72. package/dist/client/_nuxt/state-editor-n5y4kvsb.js +1 -0
  73. package/dist/client/_nuxt/state-modules-mrgxz57s.js +1 -0
  74. package/dist/client/_nuxt/storage-holv8e8w.js +1 -0
  75. package/dist/client/_nuxt/terminals-b2fih42q.js +1 -0
  76. package/dist/client/_nuxt/timeline-lv9eybpb.js +31 -0
  77. package/dist/client/_nuxt/timeline.css-m03aec2q.css +1 -0
  78. package/dist/client/_nuxt/unocss-runtime-dzbmg03v.js +1 -0
  79. package/dist/client/_nuxt/vendor/json-editor-vue-ml09by3o.js +3869 -0
  80. package/dist/client/_nuxt/vendor/json-editor-vue.css-lkbe0qhh.css +1 -0
  81. package/dist/client/_nuxt/vendor/markdown-it-keluk3d3.js +14 -0
  82. package/dist/client/_nuxt/vendor/quicktype-core-cwd4x027.js +929 -0
  83. package/dist/client/_nuxt/vendor/shiki-01pv02w7.js +152 -0
  84. package/dist/client/_nuxt/vendor/unocss-fsdvaf0h.js +3 -0
  85. package/dist/client/_nuxt/vendor/unocss.css-3gd0e2sv.css +1 -0
  86. package/dist/client/_nuxt/vendor/vis-ouq45gnp.js +26 -0
  87. package/dist/client/_nuxt/vendor/xterm-cvosq9c2.js +36 -0
  88. package/dist/client/_nuxt/vendor/xterm.css-iojkbpwx.css +1 -0
  89. package/dist/client/_nuxt/virtual-files-owejwl2p.js +1 -0
  90. package/dist/client/_nuxt/virtual-files.css-l97kh4kx.css +1 -0
  91. package/dist/client/_nuxt/vue-devtools-j49ii2m7.js +3 -0
  92. package/dist/client/_nuxt/vue-virtual-scroller.esm-oox0igtv.js +2 -0
  93. package/dist/client/discovery/index.html +3 -3
  94. package/dist/client/index.html +1 -1
  95. package/dist/module.json +1 -1
  96. package/dist/runtime/function-metrics-helpers.js +1 -1
  97. package/dist/webcomponents/index.mjs +397 -395
  98. package/package.json +33 -33
  99. package/dist/client/_nuxt/__blank-lxstpk89.js +0 -1
  100. package/dist/client/_nuxt/analyze-build-ld9zydqz.js +0 -1
  101. package/dist/client/_nuxt/assets-b4nq46c6.js +0 -16
  102. package/dist/client/_nuxt/builds/meta/80c07fc4-dd63-46cf-8615-791c11a8cd6d.json +0 -1
  103. package/dist/client/_nuxt/client-c6aoxv2l.js +0 -1
  104. package/dist/client/_nuxt/code-diff-li4lnfub.js +0 -8
  105. package/dist/client/_nuxt/code-snippets-gyl3bqgb.js +0 -1
  106. package/dist/client/_nuxt/color-mt9xuhgy.js +0 -1
  107. package/dist/client/_nuxt/components-h1e7a05n.js +0 -1
  108. package/dist/client/_nuxt/composable-item-gqqnydns.js +0 -1
  109. package/dist/client/_nuxt/constants-b32h69zq.js +0 -1
  110. package/dist/client/_nuxt/custom-_name_-nz911udu.js +0 -1
  111. package/dist/client/_nuxt/data-schema-button-euw6cc96.js +0 -1
  112. package/dist/client/_nuxt/data-schema-drawer-ituotm78.js +0 -2
  113. package/dist/client/_nuxt/debug-pa6fp41a.js +0 -1
  114. package/dist/client/_nuxt/default-h2avz4vm.js +0 -1
  115. package/dist/client/_nuxt/detblamc.js +0 -5
  116. package/dist/client/_nuxt/duration-display-f44008lc.js +0 -1
  117. package/dist/client/_nuxt/entry.css-isd0m9wk.css +0 -1
  118. package/dist/client/_nuxt/error-404-gjte2279.js +0 -1
  119. package/dist/client/_nuxt/error-404.css-fede2tas.css +0 -1
  120. package/dist/client/_nuxt/error-500-bi9972ec.js +0 -1
  121. package/dist/client/_nuxt/error-500.css-m89l6mhd.css +0 -1
  122. package/dist/client/_nuxt/error-cv2sq74j.js +0 -9
  123. package/dist/client/_nuxt/filepath-item-f2iy8phl.js +0 -1
  124. package/dist/client/_nuxt/full-jx9nmllz.js +0 -1
  125. package/dist/client/_nuxt/help-fab-izt1nioe.js +0 -1
  126. package/dist/client/_nuxt/hooks-lbx1vti7.js +0 -1
  127. package/dist/client/_nuxt/imports-bj355rl7.js +0 -1
  128. package/dist/client/_nuxt/index-j95fw8zr.js +0 -1
  129. package/dist/client/_nuxt/index-jc4yj4to.js +0 -1
  130. package/dist/client/_nuxt/launch-page-gkflizue.js +0 -1
  131. package/dist/client/_nuxt/modules-fft43nho.js +0 -1
  132. package/dist/client/_nuxt/nbadge-dv1e6eny.js +0 -1
  133. package/dist/client/_nuxt/ncheckbox-dg5nbt1d.js +0 -1
  134. package/dist/client/_nuxt/ncode-block-esxkr86l.js +0 -2
  135. package/dist/client/_nuxt/ncode-block.css-lvdc77tw.css +0 -1
  136. package/dist/client/_nuxt/ndrawer-j5h6fmbh.js +0 -1
  137. package/dist/client/_nuxt/ndropdown-gskb7sy5.js +0 -1
  138. package/dist/client/_nuxt/nicon-title-n11g9rad.js +0 -1
  139. package/dist/client/_nuxt/nlink-cmgg7q58.js +0 -1
  140. package/dist/client/_nuxt/nmarkdown-pb9g5o14.js +0 -1
  141. package/dist/client/_nuxt/nnavbar-eqdsa2v0.js +0 -1
  142. package/dist/client/_nuxt/none-dc7ztwm7.js +0 -1
  143. package/dist/client/_nuxt/nsection-block-owu5vx1c.js +0 -1
  144. package/dist/client/_nuxt/nselect-h7b4tp2d.js +0 -1
  145. package/dist/client/_nuxt/nselect-tabs-b4x1017q.js +0 -1
  146. package/dist/client/_nuxt/nswitch-ikgdy16r.js +0 -1
  147. package/dist/client/_nuxt/open-graph-dxecn0or.js +0 -3
  148. package/dist/client/_nuxt/open-graph.css-me89qec1.css +0 -1
  149. package/dist/client/_nuxt/overview-buzsu6r5.js +0 -1
  150. package/dist/client/_nuxt/pages-gcxbcwey.js +0 -1
  151. package/dist/client/_nuxt/payload-kfckbr17.js +0 -1
  152. package/dist/client/_nuxt/pinia-n9hn8l5t.js +0 -1
  153. package/dist/client/_nuxt/plugins-ba6gkr5q.js +0 -1
  154. package/dist/client/_nuxt/render-tree-ibqqcfq3.js +0 -1
  155. package/dist/client/_nuxt/runtime-configs-cs6szovw.js +0 -1
  156. package/dist/client/_nuxt/server-discovery-d71ifv8y.js +0 -1
  157. package/dist/client/_nuxt/server-route-inputs-ewvvpkab.js +0 -1
  158. package/dist/client/_nuxt/server-routes-nfdqer0z.js +0 -9
  159. package/dist/client/_nuxt/server-tasks-cz5pdbq6.js +0 -1
  160. package/dist/client/_nuxt/settings-n3uw9wos.js +0 -1
  161. package/dist/client/_nuxt/stacktrace-list-hxyb5x3b.js +0 -1
  162. package/dist/client/_nuxt/state-components-jdafqa4i.js +0 -1
  163. package/dist/client/_nuxt/state-editor-baqu4p5i.js +0 -1
  164. package/dist/client/_nuxt/state-modules-kxdkrymq.js +0 -1
  165. package/dist/client/_nuxt/storage-hjoakplq.js +0 -1
  166. package/dist/client/_nuxt/terminals-k1y9pocq.js +0 -1
  167. package/dist/client/_nuxt/timeline-jsqf45u3.js +0 -31
  168. package/dist/client/_nuxt/timeline.css-otdwftpy.css +0 -1
  169. package/dist/client/_nuxt/unocss-runtime-e4jesdoo.js +0 -1
  170. package/dist/client/_nuxt/vendor/json-editor-vue-ho2zu772.js +0 -3867
  171. package/dist/client/_nuxt/vendor/json-editor-vue.css-f8ezrn37.css +0 -1
  172. package/dist/client/_nuxt/vendor/markdown-it-fvu08dbs.js +0 -16
  173. package/dist/client/_nuxt/vendor/quicktype-core-jsgpnknz.js +0 -955
  174. package/dist/client/_nuxt/vendor/shiki-g7cm1eew.js +0 -152
  175. package/dist/client/_nuxt/vendor/unocss-b6xarsb2.js +0 -3
  176. package/dist/client/_nuxt/vendor/unocss.css-c5u30s53.css +0 -1
  177. package/dist/client/_nuxt/vendor/vis-lxvjz9wh.js +0 -26
  178. package/dist/client/_nuxt/vendor/xterm-nmc0lagr.js +0 -9
  179. package/dist/client/_nuxt/vendor/xterm.css-g1ekxkss.css +0 -1
  180. package/dist/client/_nuxt/virtual-files-bh5xq2f0.js +0 -1
  181. package/dist/client/_nuxt/virtual-files.css-gqpg2wnb.css +0 -1
  182. package/dist/client/_nuxt/vue-devtools-eqo8l0nw.js +0 -2
  183. package/dist/client/_nuxt/vue-virtual-scroller.esm-c1c6kquq.js +0 -2
@@ -0,0 +1,929 @@
1
+ import{a as e,i as t,n,r,t as i}from"../rolldown-runtime-fitqecur.js";var a=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){return new(n||=Promise)(function(i,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?i(e.value):new n(function(t){t(e.value)}).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,`__esModule`,{value:!0}),e.hashCodeInit=17;function n(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t=(t<<5)-t+r,t&=t}return t}e.hashString=n;function r(e,t){return e*31+(t|0)|0}e.addHashCode=r;function i(e,t){return e===void 0?t:e}e.withDefault=i;function a(e,t){if(e!==void 0)return t(e)}e.definedMap=a;function o(e,t,n){return i(a(e,n),t)}e.definedMapWithDefault=o;function s(e,t){return e==null?!1:Object.prototype.hasOwnProperty.call(e,t)}e.hasOwnProperty=s;function c(e,t){for(let n of e)if(t(n))return n}e.iterableFind=c;function l(e,t){for(let n of e)if(!t(n))return!1;return!0}e.iterableEvery=l;function u(e,t){for(let n of e)if(t(n))return!0;return!1}e.iterableSome=u;function d(e){for(let t of e)return t}e.iterableFirst=d;function f(e){let t;for(let n of e)(t===void 0||n>t)&&(t=n);return t}e.iterableMax=f;function p(e,t){let n,r;for(let i of e){let e=t(i);(n===void 0||e<n)&&(n=e,r=i)}return r}e.iterableMinBy=p;function m(e,t,n){let r=t;for(let t of e)r=n(r,t);return r}e.iterableReduce=m;function*h(e){let t=0;for(let n of e)yield[t,n],t+=1}e.iterableEnumerate=h;function*g(e,t){let n=0;for(let r of e)n>=t?yield r:n+=1}e.iterableSkip=g;function _(e,t){let n=e.length;if(!(t>n))return e[n-t]}e.arrayGetFromEnd=_;function v(e){return _(e,1)}e.arrayLast=v;function y(e){let t=e.length;if(t===0)throw Error(`Cannot pop empty array`);return e.slice(0,t-1)}e.arrayPop=y;function b(e,t){let n=[];for(let r of t)n.length>0&&n.push(e),n.push(r);return n}e.arrayIntercalate=b;function x(e,n){return t(this,void 0,void 0,function*(){let t=[],r=0;for(let i of e)t.push(yield n(i,r)),r+=1;return t})}e.arrayMapSync=x;function S(e,t){return e<t?-1:e>t?1:0}function C(e,t){return e.sort((e,n)=>S(t(e),t(n)))}e.arraySortByInto=C;function w(e){return Array.isArray(e)?e:Array.from(e)}e.toReadonlyArray=w;function T(e,t){let n=new Map;for(let[r,i]of e)n.set(r,t(i,r));return n}e.mapMap=T;function E(e){for(let t of e.values())return t}e.mapFirst=E;function D(e,t){for(let n of e.values())if(n===t)return!0;return!1}e.mapContains=D;function O(e,t){for(let[n,r]of e)if(t(r,n))return!0;return!1}e.mapSome=O;function k(e,t){for(let[n,r]of t)e.set(n,r);return e}e.mapMergeInto=k;function A(e,t){let n=new Map(e);return k(n,t),n}e.mapMerge=A;function j(e,t,n){for(let[r,i]of n){let n=e.get(r),a=n===void 0?i:t(n,i,r);e.set(r,a)}return e}e.mapMergeWithInto=j;function M(e,t,n){let r=new Map(e);return j(r,t,n),r}e.mapMergeWith=M;function N(e,t){let n=new Map;for(let[r,i]of e)t(i,r)&&n.set(r,i);return n}e.mapFilter=N;function P(e,t){let n=new Map;for(let[r,i]of e){let e=t(i,r);e!==void 0&&n.set(r,e)}return n}e.mapFilterMap=P;function ee(e,t){return C(Array.from(e),([e,n])=>t(n,e))}e.mapSortToArray=ee;function F(e,t){return new Map(ee(e,t))}e.mapSortBy=F;function I(e){return F(e,(e,t)=>t)}e.mapSortByKey=I;function L(e,t){let n=new Map;for(let[r,i]of e){let[e,a]=t(i,r);n.set(e,a)}return n}e.mapMapEntries=L;function R(e,t,n){return e.set(t,n(e.get(t))),e}e.mapUpdateInto=R;function z(e){let t=new Map;for(let n of Object.getOwnPropertyNames(e))t.set(n,e[n]);return t}e.mapFromObject=z;function te(e){let t={};for(let[n,r]of e)t[n]=r;return t}e.mapToObject=te;function ne(e,t){let n=new Map;for(let r of e)n.set(r,t(r));return n}e.mapFromIterable=ne;function re(e,t){for(let[n,r]of e)if(t(r,n))return r}e.mapFind=re;function B(e){let t=new Map;for(let n of e)for(let[e,r]of n){let n=t.get(e);n===void 0&&(n=[],t.set(e,n)),n.push(r)}return t}e.mapTranspose=B;function V(e,n){return t(this,void 0,void 0,function*(){let t=new Map;for(let[r,i]of e)t.set(r,yield n(i,r));return t})}e.mapMapSync=V;function ie(e,t){for(let n of t)if(!e.has(n))return!1;return!0}e.setIsSuperset=ie;function ae(e,t){for(let n of t)for(let t of n)e.add(t);return e}e.setUnionManyInto=ae;function H(e,...t){return ae(e,t)}e.setUnionInto=H;function oe(e,t){let n=new Set;for(let r of e)t.has(r)&&n.add(r);return n}e.setIntersect=oe;function U(e,t){let n=new Set(e);for(let e of t)n.delete(e);return n}e.setSubtract=U;function se(...e){let t=new Set;return H(t,...e),t}e.setUnion=se;function ce(e,t){let n=new Set;for(let r of e)n.add(t(r));return n}e.setMap=ce;function le(e,t){let n=new Set;for(let r of e)t(r)&&n.add(r);return n}e.setFilter=le;function ue(e,t){let n=new Set;for(let r of e){let e=t(r);e!==void 0&&n.add(e)}return n}e.setFilterMap=ue;function de(e,t){return new Set(C(Array.from(e),t))}e.setSortBy=de;function fe(e,t){let n=new Map;for(let r of e){let e=t(r),i=n.get(e);i===void 0&&(i=new Set,n.set(e,i)),i.add(r)}return n}e.setGroupBy=fe;function W(e){return e instanceof Set?e:new Set(e)}e.toReadonlySet=W,e.EqualityMap=class{constructor(){this._map=new Map}set(e,t){let n=pe(e)|0;for(;;){let r=this._map.get(n);if(r===void 0){this._map.set(n,[e,t]);return}if(G(e,r[0])){r[1]=t;return}n=n+1|0}}get(e){let t=pe(e)|0;for(;;){let n=this._map.get(t);if(n===void 0)return;if(G(e,n[0]))return n[1];t=t+1|0}}has(e){return this.get(e)!==void 0}*values(){for(let[,[,e]]of this._map)yield e}};function G(e,t){if(e===t)return!0;if(e===void 0||t===void 0||e===null||t===null)return!1;if(typeof e.equals==`function`&&typeof t.equals==`function`)return e.equals(t);if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,r]of e)if(!G(r,t.get(n)))return!1;return!0}if(Array.isArray(e)&&Array.isArray(t)){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!G(e[r],t[r]))return!1;return!0}return!1}e.areEqual=G;function pe(t){if(typeof t==`number`)return t|0;if(typeof t==`string`)return n(t);let i=e.hashCodeInit;if(t===void 0)return i;if(t===!0)return i+1|0;if(t===!1)return i+2|0;if(t===null)return i+3|0;if(typeof t.hashCode==`function`)return t.hashCode();if(t instanceof Set){for(let e of t)i+=pe(e);return i}if(t instanceof Map){let n=e.hashCodeInit;for(let[e,r]of t)n+=pe(e),i+=pe(r);return r(n,i)}if(Array.isArray(t)){for(let e of t)i=r(i,pe(e));return i}throw Error(`Cannot hash ${t}`)}e.hashCodeOf=pe})),o=i(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(function(){var e=n.Base64,t=r();t.noConflict=function(){return n.Base64=e,t},n.Meteor&&(Base64=t),n.Base64=t})()})(typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:e,function(){var e=`3.7.7`,t=e,n=typeof Buffer==`function`,r=typeof TextDecoder==`function`?new TextDecoder:void 0,i=typeof TextEncoder==`function`?new TextEncoder:void 0,a=Array.prototype.slice.call(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`),o=(function(e){var t={};return e.forEach(function(e,n){return t[e]=n}),t})(a),s=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,c=String.fromCharCode.bind(String),l=typeof Uint8Array.from==`function`?Uint8Array.from.bind(Uint8Array):function(e){return new Uint8Array(Array.prototype.slice.call(e,0))},u=function(e){return e.replace(/=/g,``).replace(/[+\/]/g,function(e){return e==`+`?`-`:`_`})},d=function(e){return e.replace(/[^A-Za-z0-9\+\/]/g,``)},f=function(e){for(var t,n,r,i,o=``,s=e.length%3,c=0;c<e.length;){if((n=e.charCodeAt(c++))>255||(r=e.charCodeAt(c++))>255||(i=e.charCodeAt(c++))>255)throw TypeError(`invalid character found`);t=n<<16|r<<8|i,o+=a[t>>18&63]+a[t>>12&63]+a[t>>6&63]+a[t&63]}return s?o.slice(0,s-3)+`===`.substring(s):o},p=typeof btoa==`function`?function(e){return btoa(e)}:n?function(e){return Buffer.from(e,`binary`).toString(`base64`)}:f,m=n?function(e){return Buffer.from(e).toString(`base64`)}:function(e){for(var t=4096,n=[],r=0,i=e.length;r<i;r+=t)n.push(c.apply(null,e.subarray(r,r+t)));return p(n.join(``))},h=function(e,t){return t===void 0&&(t=!1),t?u(m(e)):m(e)},g=function(e){if(e.length<2){var t=e.charCodeAt(0);return t<128?e:t<2048?c(192|t>>>6)+c(128|t&63):c(224|t>>>12&15)+c(128|t>>>6&63)+c(128|t&63)}else{var t=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return c(240|t>>>18&7)+c(128|t>>>12&63)+c(128|t>>>6&63)+c(128|t&63)}},_=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,v=function(e){return e.replace(_,g)},y=n?function(e){return Buffer.from(e,`utf8`).toString(`base64`)}:i?function(e){return m(i.encode(e))}:function(e){return p(v(e))},b=function(e,t){return t===void 0&&(t=!1),t?u(y(e)):y(e)},x=function(e){return b(e,!0)},S=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,C=function(e){switch(e.length){case 4:var t=((7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3))-65536;return c((t>>>10)+55296)+c((t&1023)+56320);case 3:return c((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return c((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},w=function(e){return e.replace(S,C)},T=function(e){if(e=e.replace(/\s+/g,``),!s.test(e))throw TypeError(`malformed base64.`);e+=`==`.slice(2-(e.length&3));for(var t,n=``,r,i,a=0;a<e.length;)t=o[e.charAt(a++)]<<18|o[e.charAt(a++)]<<12|(r=o[e.charAt(a++)])<<6|(i=o[e.charAt(a++)]),n+=r===64?c(t>>16&255):i===64?c(t>>16&255,t>>8&255):c(t>>16&255,t>>8&255,t&255);return n},E=typeof atob==`function`?function(e){return atob(d(e))}:n?function(e){return Buffer.from(e,`base64`).toString(`binary`)}:T,D=n?function(e){return l(Buffer.from(e,`base64`))}:function(e){return l(E(e).split(``).map(function(e){return e.charCodeAt(0)}))},O=function(e){return D(A(e))},k=n?function(e){return Buffer.from(e,`base64`).toString(`utf8`)}:r?function(e){return r.decode(D(e))}:function(e){return w(E(e))},A=function(e){return d(e.replace(/[-_]/g,function(e){return e==`-`?`+`:`/`}))},j=function(e){return k(A(e))},M=function(e){if(typeof e!=`string`)return!1;var t=e.replace(/\s+/g,``).replace(/={0,2}$/,``);return!/[^\s0-9a-zA-Z\+/]/.test(t)||!/[^\s0-9a-zA-Z\-_]/.test(t)},N=function(e){return{value:e,enumerable:!1,writable:!0,configurable:!0}},P=function(){var e=function(e,t){return Object.defineProperty(String.prototype,e,N(t))};e(`fromBase64`,function(){return j(this)}),e(`toBase64`,function(e){return b(this,e)}),e(`toBase64URI`,function(){return b(this,!0)}),e(`toBase64URL`,function(){return b(this,!0)}),e(`toUint8Array`,function(){return O(this)})},ee=function(){var e=function(e,t){return Object.defineProperty(Uint8Array.prototype,e,N(t))};e(`toBase64`,function(e){return h(this,e)}),e(`toBase64URI`,function(){return h(this,!0)}),e(`toBase64URL`,function(){return h(this,!0)})},F={version:e,VERSION:t,atob:E,atobPolyfill:T,btoa:p,btoaPolyfill:f,fromBase64:j,toBase64:b,encode:b,encodeURI:x,encodeURL:x,utob:v,btou:w,decode:j,isValid:M,fromUint8Array:h,toUint8Array:O,extendString:P,extendUint8Array:ee,extendBuiltins:function(){P(),ee()}};return F.Base64={},Object.keys(F).forEach(function(e){return F.Base64[e]=F[e]}),F})})),s=i((e=>{var t=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Int32Array<`u`;function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if(typeof r!=`object`)throw TypeError(r+`must be non-object`);for(var i in r)n(r,i)&&(e[i]=r[i])}}return e},e.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var r={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray){e.set(t.subarray(n,n+r),i);return}for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){var t,n,r=0,i,a,o;for(t=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),i=0,t=0,n=e.length;t<n;t++)a=e[t],o.set(a,i),i+=a.length;return o}},i={arraySet:function(e,t,n,r,i){for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){return[].concat.apply([],e)}};e.setTyped=function(t){t?(e.Buf8=Uint8Array,e.Buf16=Uint16Array,e.Buf32=Int32Array,e.assign(e,r)):(e.Buf8=Array,e.Buf16=Array,e.Buf32=Array,e.assign(e,i))},e.setTyped(t)})),c=i((e=>{var t=s(),n=4,r=0,i=1,a=2;function o(e){for(var t=e.length;--t>=0;)e[t]=0}var c=0,l=1,u=2,d=3,f=258,p=29,m=256,h=m+1+p,g=30,_=19,v=2*h+1,y=15,b=16,x=7,S=256,C=16,w=17,T=18,E=[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],D=[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],O=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],k=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],A=512,j=Array((h+2)*2);o(j);var M=Array(g*2);o(M);var N=Array(A);o(N);var P=Array(f-d+1);o(P);var ee=Array(p);o(ee);var F=Array(g);o(F);function I(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}var L,R,z;function te(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function ne(e){return e<256?N[e]:N[256+(e>>>7)]}function re(e,t){e.pending_buf[e.pending++]=t&255,e.pending_buf[e.pending++]=t>>>8&255}function B(e,t,n){e.bi_valid>b-n?(e.bi_buf|=t<<e.bi_valid&65535,re(e,e.bi_buf),e.bi_buf=t>>b-e.bi_valid,e.bi_valid+=n-b):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function V(e,t,n){B(e,n[t*2],n[t*2+1])}function ie(e,t){var n=0;do n|=e&1,e>>>=1,n<<=1;while(--t>0);return n>>>1}function ae(e){e.bi_valid===16?(re(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=e.bi_buf&255,e.bi_buf>>=8,e.bi_valid-=8)}function H(e,t){var n=t.dyn_tree,r=t.max_code,i=t.stat_desc.static_tree,a=t.stat_desc.has_stree,o=t.stat_desc.extra_bits,s=t.stat_desc.extra_base,c=t.stat_desc.max_length,l,u,d,f,p,m,h=0;for(f=0;f<=y;f++)e.bl_count[f]=0;for(n[e.heap[e.heap_max]*2+1]=0,l=e.heap_max+1;l<v;l++)u=e.heap[l],f=n[n[u*2+1]*2+1]+1,f>c&&(f=c,h++),n[u*2+1]=f,!(u>r)&&(e.bl_count[f]++,p=0,u>=s&&(p=o[u-s]),m=n[u*2],e.opt_len+=m*(f+p),a&&(e.static_len+=m*(i[u*2+1]+p)));if(h!==0){do{for(f=c-1;e.bl_count[f]===0;)f--;e.bl_count[f]--,e.bl_count[f+1]+=2,e.bl_count[c]--,h-=2}while(h>0);for(f=c;f!==0;f--)for(u=e.bl_count[f];u!==0;)d=e.heap[--l],!(d>r)&&(n[d*2+1]!==f&&(e.opt_len+=(f-n[d*2+1])*n[d*2],n[d*2+1]=f),u--)}}function oe(e,t,n){var r=Array(y+1),i=0,a,o;for(a=1;a<=y;a++)r[a]=i=i+n[a-1]<<1;for(o=0;o<=t;o++){var s=e[o*2+1];s!==0&&(e[o*2]=ie(r[s]++,s))}}function U(){var e,t,n,r,i,a=Array(y+1);for(n=0,r=0;r<p-1;r++)for(ee[r]=n,e=0;e<1<<E[r];e++)P[n++]=r;for(P[n-1]=r,i=0,r=0;r<16;r++)for(F[r]=i,e=0;e<1<<D[r];e++)N[i++]=r;for(i>>=7;r<g;r++)for(F[r]=i<<7,e=0;e<1<<D[r]-7;e++)N[256+ i++]=r;for(t=0;t<=y;t++)a[t]=0;for(e=0;e<=143;)j[e*2+1]=8,e++,a[8]++;for(;e<=255;)j[e*2+1]=9,e++,a[9]++;for(;e<=279;)j[e*2+1]=7,e++,a[7]++;for(;e<=287;)j[e*2+1]=8,e++,a[8]++;for(oe(j,h+1,a),e=0;e<g;e++)M[e*2+1]=5,M[e*2]=ie(e,5);L=new I(j,E,m+1,h,y),R=new I(M,D,0,g,y),z=new I([],O,0,_,x)}function se(e){var t;for(t=0;t<h;t++)e.dyn_ltree[t*2]=0;for(t=0;t<g;t++)e.dyn_dtree[t*2]=0;for(t=0;t<_;t++)e.bl_tree[t*2]=0;e.dyn_ltree[S*2]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function ce(e){e.bi_valid>8?re(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function le(e,n,r,i){ce(e),i&&(re(e,r),re(e,~r)),t.arraySet(e.pending_buf,e.window,n,r,e.pending),e.pending+=r}function ue(e,t,n,r){var i=t*2,a=n*2;return e[i]<e[a]||e[i]===e[a]&&r[t]<=r[n]}function de(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&ue(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!ue(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function fe(e,t,n){var r,i,a=0,o,s;if(e.last_lit!==0)do r=e.pending_buf[e.d_buf+a*2]<<8|e.pending_buf[e.d_buf+a*2+1],i=e.pending_buf[e.l_buf+a],a++,r===0?V(e,i,t):(o=P[i],V(e,o+m+1,t),s=E[o],s!==0&&(i-=ee[o],B(e,i,s)),r--,o=ne(r),V(e,o,n),s=D[o],s!==0&&(r-=F[o],B(e,r,s)));while(a<e.last_lit);V(e,S,t)}function W(e,t){var n=t.dyn_tree,r=t.stat_desc.static_tree,i=t.stat_desc.has_stree,a=t.stat_desc.elems,o,s,c=-1,l;for(e.heap_len=0,e.heap_max=v,o=0;o<a;o++)n[o*2]===0?n[o*2+1]=0:(e.heap[++e.heap_len]=c=o,e.depth[o]=0);for(;e.heap_len<2;)l=e.heap[++e.heap_len]=c<2?++c:0,n[l*2]=1,e.depth[l]=0,e.opt_len--,i&&(e.static_len-=r[l*2+1]);for(t.max_code=c,o=e.heap_len>>1;o>=1;o--)de(e,n,o);l=a;do o=e.heap[1],e.heap[1]=e.heap[e.heap_len--],de(e,n,1),s=e.heap[1],e.heap[--e.heap_max]=o,e.heap[--e.heap_max]=s,n[l*2]=n[o*2]+n[s*2],e.depth[l]=(e.depth[o]>=e.depth[s]?e.depth[o]:e.depth[s])+1,n[o*2+1]=n[s*2+1]=l,e.heap[1]=l++,de(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],H(e,t),oe(n,c,e.bl_count)}function G(e,t,n){var r,i=-1,a,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),t[(n+1)*2+1]=65535,r=0;r<=n;r++)a=o,o=t[(r+1)*2+1],!(++s<c&&a===o)&&(s<l?e.bl_tree[a*2]+=s:a===0?s<=10?e.bl_tree[w*2]++:e.bl_tree[T*2]++:(a!==i&&e.bl_tree[a*2]++,e.bl_tree[C*2]++),s=0,i=a,o===0?(c=138,l=3):a===o?(c=6,l=3):(c=7,l=4))}function pe(e,t,n){var r,i=-1,a,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),r=0;r<=n;r++)if(a=o,o=t[(r+1)*2+1],!(++s<c&&a===o)){if(s<l)do V(e,a,e.bl_tree);while(--s!==0);else a===0?s<=10?(V(e,w,e.bl_tree),B(e,s-3,3)):(V(e,T,e.bl_tree),B(e,s-11,7)):(a!==i&&(V(e,a,e.bl_tree),s--),V(e,C,e.bl_tree),B(e,s-3,2));s=0,i=a,o===0?(c=138,l=3):a===o?(c=6,l=3):(c=7,l=4)}}function me(e){var t;for(G(e,e.dyn_ltree,e.l_desc.max_code),G(e,e.dyn_dtree,e.d_desc.max_code),W(e,e.bl_desc),t=_-1;t>=3&&e.bl_tree[k[t]*2+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t}function K(e,t,n,r){var i;for(B(e,t-257,5),B(e,n-1,5),B(e,r-4,4),i=0;i<r;i++)B(e,e.bl_tree[k[i]*2+1],3);pe(e,e.dyn_ltree,t-1),pe(e,e.dyn_dtree,n-1)}function q(e){var t=4093624447,n;for(n=0;n<=31;n++,t>>>=1)if(t&1&&e.dyn_ltree[n*2]!==0)return r;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return i;for(n=32;n<m;n++)if(e.dyn_ltree[n*2]!==0)return i;return r}var he=!1;function ge(e){he||=(U(),!0),e.l_desc=new te(e.dyn_ltree,L),e.d_desc=new te(e.dyn_dtree,R),e.bl_desc=new te(e.bl_tree,z),e.bi_buf=0,e.bi_valid=0,se(e)}function J(e,t,n,r){B(e,(c<<1)+(r?1:0),3),le(e,t,n,!0)}function _e(e){B(e,l<<1,3),V(e,S,j),ae(e)}function ve(e,t,r,i){var o,s,c=0;e.level>0?(e.strm.data_type===a&&(e.strm.data_type=q(e)),W(e,e.l_desc),W(e,e.d_desc),c=me(e),o=e.opt_len+3+7>>>3,s=e.static_len+3+7>>>3,s<=o&&(o=s)):o=s=r+5,r+4<=o&&t!==-1?J(e,t,r,i):e.strategy===n||s===o?(B(e,(l<<1)+(i?1:0),3),fe(e,j,M)):(B(e,(u<<1)+(i?1:0),3),K(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),fe(e,e.dyn_ltree,e.dyn_dtree)),se(e),i&&ce(e)}function ye(e,t,n){return e.pending_buf[e.d_buf+e.last_lit*2]=t>>>8&255,e.pending_buf[e.d_buf+e.last_lit*2+1]=t&255,e.pending_buf[e.l_buf+e.last_lit]=n&255,e.last_lit++,t===0?e.dyn_ltree[n*2]++:(e.matches++,t--,e.dyn_ltree[(P[n]+m+1)*2]++,e.dyn_dtree[ne(t)*2]++),e.last_lit===e.lit_bufsize-1}e._tr_init=ge,e._tr_stored_block=J,e._tr_flush_block=ve,e._tr_tally=ye,e._tr_align=_e})),l=i(((e,t)=>{function n(e,t,n,r){for(var i=e&65535|0,a=e>>>16&65535|0,o=0;n!==0;){o=n>2e3?2e3:n,n-=o;do i=i+t[r++]|0,a=a+i|0;while(--o);i%=65521,a%=65521}return i|a<<16|0}t.exports=n})),u=i(((e,t)=>{function n(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=e&1?3988292384^e>>>1:e>>>1;t[n]=e}return t}var r=n();function i(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[(e^t[s])&255];return e^-1}t.exports=i})),d=i(((e,t)=>{t.exports={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`}})),f=i((e=>{var t=s(),n=c(),r=l(),i=u(),a=d(),o=0,f=1,p=3,m=4,h=5,g=0,_=1,v=-2,y=-3,b=-5,x=-1,S=1,C=2,w=3,T=4,E=0,D=2,O=8,k=9,A=15,j=8,M=286,N=30,P=19,ee=2*M+1,F=15,I=3,L=258,R=L+I+1,z=32,te=42,ne=69,re=73,B=91,V=103,ie=113,ae=666,H=1,oe=2,U=3,se=4,ce=3;function le(e,t){return e.msg=a[t],t}function ue(e){return(e<<1)-(e>4?9:0)}function de(e){for(var t=e.length;--t>=0;)e[t]=0}function fe(e){var n=e.state,r=n.pending;r>e.avail_out&&(r=e.avail_out),r!==0&&(t.arraySet(e.output,n.pending_buf,n.pending_out,r,e.next_out),e.next_out+=r,n.pending_out+=r,e.total_out+=r,e.avail_out-=r,n.pending-=r,n.pending===0&&(n.pending_out=0))}function W(e,t){n._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,fe(e.strm)}function G(e,t){e.pending_buf[e.pending++]=t}function pe(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=t&255}function me(e,n,a,o){var s=e.avail_in;return s>o&&(s=o),s===0?0:(e.avail_in-=s,t.arraySet(n,e.input,e.next_in,s,a),e.state.wrap===1?e.adler=r(e.adler,n,s,a):e.state.wrap===2&&(e.adler=i(e.adler,n,s,a)),e.next_in+=s,e.total_in+=s,s)}function K(e,t){var n=e.max_chain_length,r=e.strstart,i,a,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-R?e.strstart-(e.w_size-R):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+L,p=l[r+o-1],m=l[r+o];e.prev_length>=e.good_match&&(n>>=2),s>e.lookahead&&(s=e.lookahead);do{if(i=t,l[i+o]!==m||l[i+o-1]!==p||l[i]!==l[r]||l[++i]!==l[r+1])continue;r+=2,i++;do;while(l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&l[++r]===l[++i]&&r<f);if(a=L-(f-r),r=f-L,a>o){if(e.match_start=t,o=a,a>=s)break;p=l[r+o-1],m=l[r+o]}}while((t=d[t&u])>c&&--n!==0);return o<=e.lookahead?o:e.lookahead}function q(e){var n=e.w_size,r,i,a,o,s;do{if(o=e.window_size-e.lookahead-e.strstart,e.strstart>=n+(n-R)){t.arraySet(e.window,e.window,n,n,0),e.match_start-=n,e.strstart-=n,e.block_start-=n,i=e.hash_size,r=i;do a=e.head[--r],e.head[r]=a>=n?a-n:0;while(--i);i=n,r=i;do a=e.prev[--r],e.prev[r]=a>=n?a-n:0;while(--i);o+=n}if(e.strm.avail_in===0)break;if(i=me(e.strm,e.window,e.strstart+e.lookahead,o),e.lookahead+=i,e.lookahead+e.insert>=I)for(s=e.strstart-e.insert,e.ins_h=e.window[s],e.ins_h=(e.ins_h<<e.hash_shift^e.window[s+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[s+I-1])&e.hash_mask,e.prev[s&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=s,s++,e.insert--,!(e.lookahead+e.insert<I)););}while(e.lookahead<R&&e.strm.avail_in!==0)}function he(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(q(e),e.lookahead===0&&t===o)return H;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((e.strstart===0||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,W(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-R&&(W(e,!1),e.strm.avail_out===0))return H}return e.insert=0,t===m?(W(e,!0),e.strm.avail_out===0?U:se):(e.strstart>e.block_start&&(W(e,!1),e.strm.avail_out),H)}function ge(e,t){for(var r,i;;){if(e.lookahead<R){if(q(e),e.lookahead<R&&t===o)return H;if(e.lookahead===0)break}if(r=0,e.lookahead>=I&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),r!==0&&e.strstart-r<=e.w_size-R&&(e.match_length=K(e,r)),e.match_length>=I)if(i=n._tr_tally(e,e.strstart-e.match_start,e.match_length-I),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=I){e.match_length--;do e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!==0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else i=n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(i&&(W(e,!1),e.strm.avail_out===0))return H}return e.insert=e.strstart<I-1?e.strstart:I-1,t===m?(W(e,!0),e.strm.avail_out===0?U:se):e.last_lit&&(W(e,!1),e.strm.avail_out===0)?H:oe}function J(e,t){for(var r,i,a;;){if(e.lookahead<R){if(q(e),e.lookahead<R&&t===o)return H;if(e.lookahead===0)break}if(r=0,e.lookahead>=I&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=I-1,r!==0&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-R&&(e.match_length=K(e,r),e.match_length<=5&&(e.strategy===S||e.match_length===I&&e.strstart-e.match_start>4096)&&(e.match_length=I-1)),e.prev_length>=I&&e.match_length<=e.prev_length){a=e.strstart+e.lookahead-I,i=n._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-I),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=a&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+I-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!==0);if(e.match_available=0,e.match_length=I-1,e.strstart++,i&&(W(e,!1),e.strm.avail_out===0))return H}else if(e.match_available){if(i=n._tr_tally(e,0,e.window[e.strstart-1]),i&&W(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return H}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&=(i=n._tr_tally(e,0,e.window[e.strstart-1]),0),e.insert=e.strstart<I-1?e.strstart:I-1,t===m?(W(e,!0),e.strm.avail_out===0?U:se):e.last_lit&&(W(e,!1),e.strm.avail_out===0)?H:oe}function _e(e,t){for(var r,i,a,s,c=e.window;;){if(e.lookahead<=L){if(q(e),e.lookahead<=L&&t===o)return H;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=I&&e.strstart>0&&(a=e.strstart-1,i=c[a],i===c[++a]&&i===c[++a]&&i===c[++a])){s=e.strstart+L;do;while(i===c[++a]&&i===c[++a]&&i===c[++a]&&i===c[++a]&&i===c[++a]&&i===c[++a]&&i===c[++a]&&i===c[++a]&&a<s);e.match_length=L-(s-a),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=I?(r=n._tr_tally(e,1,e.match_length-I),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(W(e,!1),e.strm.avail_out===0))return H}return e.insert=0,t===m?(W(e,!0),e.strm.avail_out===0?U:se):e.last_lit&&(W(e,!1),e.strm.avail_out===0)?H:oe}function ve(e,t){for(var r;;){if(e.lookahead===0&&(q(e),e.lookahead===0)){if(t===o)return H;break}if(e.match_length=0,r=n._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(W(e,!1),e.strm.avail_out===0))return H}return e.insert=0,t===m?(W(e,!0),e.strm.avail_out===0?U:se):e.last_lit&&(W(e,!1),e.strm.avail_out===0)?H:oe}function ye(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}var Y=[new ye(0,0,0,0,he),new ye(4,4,8,4,ge),new ye(4,5,16,8,ge),new ye(4,6,32,32,ge),new ye(4,4,16,16,J),new ye(8,16,32,32,J),new ye(8,16,128,128,J),new ye(8,32,128,256,J),new ye(32,128,258,1024,J),new ye(32,258,258,4096,J)];function be(e){e.window_size=2*e.w_size,de(e.head),e.max_lazy_match=Y[e.level].max_lazy,e.good_match=Y[e.level].good_length,e.nice_match=Y[e.level].nice_length,e.max_chain_length=Y[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=I-1,e.match_available=0,e.ins_h=0}function X(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=O,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 t.Buf16(ee*2),this.dyn_dtree=new t.Buf16((2*N+1)*2),this.bl_tree=new t.Buf16((2*P+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 t.Buf16(F+1),this.heap=new t.Buf16(2*M+1),de(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new t.Buf16(2*M+1),de(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function xe(e){var t;return!e||!e.state?le(e,v):(e.total_in=e.total_out=0,e.data_type=D,t=e.state,t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?te:ie,e.adler=t.wrap===2?0:1,t.last_flush=o,n._tr_init(t),g)}function Se(e){var t=xe(e);return t===g&&be(e.state),t}function Ce(e,t){return!e||!e.state||e.state.wrap!==2?v:(e.state.gzhead=t,g)}function we(e,n,r,i,a,o){if(!e)return v;var s=1;if(n===x&&(n=6),i<0?(s=0,i=-i):i>15&&(s=2,i-=16),a<1||a>k||r!==O||i<8||i>15||n<0||n>9||o<0||o>T)return le(e,v);i===8&&(i=9);var c=new X;return e.state=c,c.strm=e,c.wrap=s,c.gzhead=null,c.w_bits=i,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+I-1)/I),c.window=new t.Buf8(c.w_size*2),c.head=new t.Buf16(c.hash_size),c.prev=new t.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=c.lit_bufsize*4,c.pending_buf=new t.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=n,c.strategy=o,c.method=r,Se(e)}function Te(e,t){return we(e,t,O,A,j,E)}function Ee(e,t){var r,a,s,c;if(!e||!e.state||t>h||t<0)return e?le(e,v):v;if(a=e.state,!e.output||!e.input&&e.avail_in!==0||a.status===ae&&t!==m)return le(e,e.avail_out===0?b:v);if(a.strm=e,r=a.last_flush,a.last_flush=t,a.status===te)if(a.wrap===2)e.adler=0,G(a,31),G(a,139),G(a,8),a.gzhead?(G(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),G(a,a.gzhead.time&255),G(a,a.gzhead.time>>8&255),G(a,a.gzhead.time>>16&255),G(a,a.gzhead.time>>24&255),G(a,a.level===9?2:a.strategy>=C||a.level<2?4:0),G(a,a.gzhead.os&255),a.gzhead.extra&&a.gzhead.extra.length&&(G(a,a.gzhead.extra.length&255),G(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(e.adler=i(e.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=ne):(G(a,0),G(a,0),G(a,0),G(a,0),G(a,0),G(a,a.level===9?2:a.strategy>=C||a.level<2?4:0),G(a,ce),a.status=ie);else{var l=O+(a.w_bits-8<<4)<<8,u=-1;u=a.strategy>=C||a.level<2?0:a.level<6?1:a.level===6?2:3,l|=u<<6,a.strstart!==0&&(l|=z),l+=31-l%31,a.status=ie,pe(a,l),a.strstart!==0&&(pe(a,e.adler>>>16),pe(a,e.adler&65535)),e.adler=1}if(a.status===ne)if(a.gzhead.extra){for(s=a.pending;a.gzindex<(a.gzhead.extra.length&65535)&&!(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),fe(e),s=a.pending,a.pending===a.pending_buf_size));)G(a,a.gzhead.extra[a.gzindex]&255),a.gzindex++;a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),a.gzindex===a.gzhead.extra.length&&(a.gzindex=0,a.status=re)}else a.status=re;if(a.status===re)if(a.gzhead.name){s=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),fe(e),s=a.pending,a.pending===a.pending_buf_size)){c=1;break}c=a.gzindex<a.gzhead.name.length?a.gzhead.name.charCodeAt(a.gzindex++)&255:0,G(a,c)}while(c!==0);a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),c===0&&(a.gzindex=0,a.status=B)}else a.status=B;if(a.status===B)if(a.gzhead.comment){s=a.pending;do{if(a.pending===a.pending_buf_size&&(a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),fe(e),s=a.pending,a.pending===a.pending_buf_size)){c=1;break}c=a.gzindex<a.gzhead.comment.length?a.gzhead.comment.charCodeAt(a.gzindex++)&255:0,G(a,c)}while(c!==0);a.gzhead.hcrc&&a.pending>s&&(e.adler=i(e.adler,a.pending_buf,a.pending-s,s)),c===0&&(a.status=V)}else a.status=V;if(a.status===V&&(a.gzhead.hcrc?(a.pending+2>a.pending_buf_size&&fe(e),a.pending+2<=a.pending_buf_size&&(G(a,e.adler&255),G(a,e.adler>>8&255),e.adler=0,a.status=ie)):a.status=ie),a.pending!==0){if(fe(e),e.avail_out===0)return a.last_flush=-1,g}else if(e.avail_in===0&&ue(t)<=ue(r)&&t!==m)return le(e,b);if(a.status===ae&&e.avail_in!==0)return le(e,b);if(e.avail_in!==0||a.lookahead!==0||t!==o&&a.status!==ae){var d=a.strategy===C?ve(a,t):a.strategy===w?_e(a,t):Y[a.level].func(a,t);if((d===U||d===se)&&(a.status=ae),d===H||d===U)return e.avail_out===0&&(a.last_flush=-1),g;if(d===oe&&(t===f?n._tr_align(a):t!==h&&(n._tr_stored_block(a,0,0,!1),t===p&&(de(a.head),a.lookahead===0&&(a.strstart=0,a.block_start=0,a.insert=0))),fe(e),e.avail_out===0))return a.last_flush=-1,g}return t===m?a.wrap<=0?_:(a.wrap===2?(G(a,e.adler&255),G(a,e.adler>>8&255),G(a,e.adler>>16&255),G(a,e.adler>>24&255),G(a,e.total_in&255),G(a,e.total_in>>8&255),G(a,e.total_in>>16&255),G(a,e.total_in>>24&255)):(pe(a,e.adler>>>16),pe(a,e.adler&65535)),fe(e),a.wrap>0&&(a.wrap=-a.wrap),a.pending===0?_:g):g}function De(e){var t;return!e||!e.state?v:(t=e.state.status,t!==te&&t!==ne&&t!==re&&t!==B&&t!==V&&t!==ie&&t!==ae?le(e,v):(e.state=null,t===ie?le(e,y):g))}function Oe(e,n){var i=n.length,a,o,s,c,l,u,d,f;if(!e||!e.state||(a=e.state,c=a.wrap,c===2||c===1&&a.status!==te||a.lookahead))return v;for(c===1&&(e.adler=r(e.adler,n,i,0)),a.wrap=0,i>=a.w_size&&(c===0&&(de(a.head),a.strstart=0,a.block_start=0,a.insert=0),f=new t.Buf8(a.w_size),t.arraySet(f,n,i-a.w_size,a.w_size,0),n=f,i=a.w_size),l=e.avail_in,u=e.next_in,d=e.input,e.avail_in=i,e.next_in=0,e.input=n,q(a);a.lookahead>=I;){o=a.strstart,s=a.lookahead-(I-1);do a.ins_h=(a.ins_h<<a.hash_shift^a.window[o+I-1])&a.hash_mask,a.prev[o&a.w_mask]=a.head[a.ins_h],a.head[a.ins_h]=o,o++;while(--s);a.strstart=o,a.lookahead=I-1,q(a)}return a.strstart+=a.lookahead,a.block_start=a.strstart,a.insert=a.lookahead,a.lookahead=0,a.match_length=a.prev_length=I-1,a.match_available=0,e.next_in=u,e.input=d,e.avail_in=l,a.wrap=c,g}e.deflateInit=Te,e.deflateInit2=we,e.deflateReset=Se,e.deflateResetKeep=xe,e.deflateSetHeader=Ce,e.deflate=Ee,e.deflateEnd=De,e.deflateSetDictionary=Oe,e.deflateInfo=`pako deflate (from Nodeca project)`})),p=i((e=>{var t=s(),n=!0,r=!0;try{String.fromCharCode.apply(null,[0])}catch{n=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{r=!1}for(var i=new t.Buf8(256),a=0;a<256;a++)i[a]=a>=252?6:a>=248?5:a>=240?4:a>=224?3:a>=192?2:1;i[254]=i[254]=1,e.string2buf=function(e){var n,r,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)r=e.charCodeAt(a),(r&64512)==55296&&a+1<s&&(i=e.charCodeAt(a+1),(i&64512)==56320&&(r=65536+(r-55296<<10)+(i-56320),a++)),c+=r<128?1:r<2048?2:r<65536?3:4;for(n=new t.Buf8(c),o=0,a=0;o<c;a++)r=e.charCodeAt(a),(r&64512)==55296&&a+1<s&&(i=e.charCodeAt(a+1),(i&64512)==56320&&(r=65536+(r-55296<<10)+(i-56320),a++)),r<128?n[o++]=r:r<2048?(n[o++]=192|r>>>6,n[o++]=128|r&63):r<65536?(n[o++]=224|r>>>12,n[o++]=128|r>>>6&63,n[o++]=128|r&63):(n[o++]=240|r>>>18,n[o++]=128|r>>>12&63,n[o++]=128|r>>>6&63,n[o++]=128|r&63);return n};function o(e,i){if(i<65534&&(e.subarray&&r||!e.subarray&&n))return String.fromCharCode.apply(null,t.shrinkBuf(e,i));for(var a=``,o=0;o<i;o++)a+=String.fromCharCode(e[o]);return a}e.buf2binstring=function(e){return o(e,e.length)},e.binstring2buf=function(e){for(var n=new t.Buf8(e.length),r=0,i=n.length;r<i;r++)n[r]=e.charCodeAt(r);return n},e.buf2string=function(e,t){var n,r,a,s,c=t||e.length,l=Array(c*2);for(r=0,n=0;n<c;){if(a=e[n++],a<128){l[r++]=a;continue}if(s=i[a],s>4){l[r++]=65533,n+=s-1;continue}for(a&=s===2?31:s===3?15:7;s>1&&n<c;)a=a<<6|e[n++]&63,s--;if(s>1){l[r++]=65533;continue}a<65536?l[r++]=a:(a-=65536,l[r++]=55296|a>>10&1023,l[r++]=56320|a&1023)}return o(l,r)},e.utf8border=function(e,t){var n;for(t||=e.length,t>e.length&&(t=e.length),n=t-1;n>=0&&(e[n]&192)==128;)n--;return n<0||n===0?t:n+i[e[n]]>t?n:t}})),m=i(((e,t)=>{function n(){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}t.exports=n})),h=i((e=>{var t=f(),n=s(),r=p(),i=d(),a=m(),o=Object.prototype.toString,c=0,l=4,u=0,h=1,g=2,_=-1,v=0,y=8;function b(e){if(!(this instanceof b))return new b(e);this.options=n.assign({level:_,method:y,chunkSize:16384,windowBits:15,memLevel:8,strategy:v,to:``},e||{});var s=this.options;s.raw&&s.windowBits>0?s.windowBits=-s.windowBits:s.gzip&&s.windowBits>0&&s.windowBits<16&&(s.windowBits+=16),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new a,this.strm.avail_out=0;var c=t.deflateInit2(this.strm,s.level,s.method,s.windowBits,s.memLevel,s.strategy);if(c!==u)throw Error(i[c]);if(s.header&&t.deflateSetHeader(this.strm,s.header),s.dictionary){var l=typeof s.dictionary==`string`?r.string2buf(s.dictionary):o.call(s.dictionary)===`[object ArrayBuffer]`?new Uint8Array(s.dictionary):s.dictionary;if(c=t.deflateSetDictionary(this.strm,l),c!==u)throw Error(i[c]);this._dict_set=!0}}b.prototype.push=function(e,i){var a=this.strm,s=this.options.chunkSize,d,f;if(this.ended)return!1;f=i===~~i?i:i===!0?l:c,typeof e==`string`?a.input=r.string2buf(e):o.call(e)===`[object ArrayBuffer]`?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(a.avail_out===0&&(a.output=new n.Buf8(s),a.next_out=0,a.avail_out=s),d=t.deflate(a,f),d!==h&&d!==u)return this.onEnd(d),this.ended=!0,!1;(a.avail_out===0||a.avail_in===0&&(f===l||f===g))&&(this.options.to===`string`?this.onData(r.buf2binstring(n.shrinkBuf(a.output,a.next_out))):this.onData(n.shrinkBuf(a.output,a.next_out)))}while((a.avail_in>0||a.avail_out===0)&&d!==h);return f===l?(d=t.deflateEnd(this.strm),this.onEnd(d),this.ended=!0,d===u):f===g?(this.onEnd(u),a.avail_out=0,!0):!0},b.prototype.onData=function(e){this.chunks.push(e)},b.prototype.onEnd=function(e){e===u&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function x(e,t){var n=new b(t);if(n.push(e,!0),n.err)throw n.msg||i[n.err];return n.result}function S(e,t){return t||={},t.raw=!0,x(e,t)}function C(e,t){return t||={},t.gzip=!0,x(e,t)}e.Deflate=b,e.deflate=x,e.deflateRaw=S,e.gzip=C})),g=i(((e,t)=>{var n=30,r=12;t.exports=function(e,t){var i=e.state,a=e.next_in,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D=e.input,O;o=a+(e.avail_in-5),s=e.next_out,O=e.output,c=s-(t-e.avail_out),l=s+(e.avail_out-257),u=i.dmax,d=i.wsize,f=i.whave,p=i.wnext,m=i.window,h=i.hold,g=i.bits,_=i.lencode,v=i.distcode,y=(1<<i.lenbits)-1,b=(1<<i.distbits)-1;top:do{g<15&&(h+=D[a++]<<g,g+=8,h+=D[a++]<<g,g+=8),x=_[h&y];dolen:for(;;){if(S=x>>>24,h>>>=S,g-=S,S=x>>>16&255,S===0)O[s++]=x&65535;else if(S&16){C=x&65535,S&=15,S&&(g<S&&(h+=D[a++]<<g,g+=8),C+=h&(1<<S)-1,h>>>=S,g-=S),g<15&&(h+=D[a++]<<g,g+=8,h+=D[a++]<<g,g+=8),x=v[h&b];dodist:for(;;){if(S=x>>>24,h>>>=S,g-=S,S=x>>>16&255,S&16){if(w=x&65535,S&=15,g<S&&(h+=D[a++]<<g,g+=8,g<S&&(h+=D[a++]<<g,g+=8)),w+=h&(1<<S)-1,w>u){e.msg=`invalid distance too far back`,i.mode=n;break top}if(h>>>=S,g-=S,S=s-c,w>S){if(S=w-S,S>f&&i.sane){e.msg=`invalid distance too far back`,i.mode=n;break top}if(T=0,E=m,p===0){if(T+=d-S,S<C){C-=S;do O[s++]=m[T++];while(--S);T=s-w,E=O}}else if(p<S){if(T+=d+p-S,S-=p,S<C){C-=S;do O[s++]=m[T++];while(--S);if(T=0,p<C){S=p,C-=S;do O[s++]=m[T++];while(--S);T=s-w,E=O}}}else if(T+=p-S,S<C){C-=S;do O[s++]=m[T++];while(--S);T=s-w,E=O}for(;C>2;)O[s++]=E[T++],O[s++]=E[T++],O[s++]=E[T++],C-=3;C&&(O[s++]=E[T++],C>1&&(O[s++]=E[T++]))}else{T=s-w;do O[s++]=O[T++],O[s++]=O[T++],O[s++]=O[T++],C-=3;while(C>2);C&&(O[s++]=O[T++],C>1&&(O[s++]=O[T++]))}}else if(S&64){e.msg=`invalid distance code`,i.mode=n;break top}else{x=v[(x&65535)+(h&(1<<S)-1)];continue dodist}break}}else if(S&64)if(S&32){i.mode=r;break top}else{e.msg=`invalid literal/length code`,i.mode=n;break top}else{x=_[(x&65535)+(h&(1<<S)-1)];continue dolen}break}}while(a<o&&s<l);C=g>>3,a-=C,g-=C<<3,h&=(1<<g)-1,e.next_in=a,e.next_out=s,e.avail_in=a<o?5+(o-a):5-(a-o),e.avail_out=s<l?257+(l-s):257-(s-l),i.hold=h,i.bits=g}})),_=i(((e,t)=>{var n=s(),r=15,i=852,a=592,o=0,c=1,l=2,u=[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],d=[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],f=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],p=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,s,m,h,g,_,v){var y=v.bits,b=0,x=0,S=0,C=0,w=0,T=0,E=0,D=0,O=0,k=0,A,j,M,N,P,ee=null,F=0,I,L=new n.Buf16(r+1),R=new n.Buf16(r+1),z=null,te=0,ne,re,B;for(b=0;b<=r;b++)L[b]=0;for(x=0;x<m;x++)L[t[s+x]]++;for(w=y,C=r;C>=1&&L[C]===0;C--);if(w>C&&(w=C),C===0)return h[g++]=20971520,h[g++]=20971520,v.bits=1,0;for(S=1;S<C&&L[S]===0;S++);for(w<S&&(w=S),D=1,b=1;b<=r;b++)if(D<<=1,D-=L[b],D<0)return-1;if(D>0&&(e===o||C!==1))return-1;for(R[1]=0,b=1;b<r;b++)R[b+1]=R[b]+L[b];for(x=0;x<m;x++)t[s+x]!==0&&(_[R[t[s+x]]++]=x);if(e===o?(ee=z=_,I=19):e===c?(ee=u,F-=257,z=d,te-=257,I=256):(ee=f,z=p,I=-1),k=0,x=0,b=S,P=g,T=w,E=0,M=-1,O=1<<w,N=O-1,e===c&&O>i||e===l&&O>a)return 1;for(;;){ne=b-E,_[x]<I?(re=0,B=_[x]):_[x]>I?(re=z[te+_[x]],B=ee[F+_[x]]):(re=96,B=0),A=1<<b-E,j=1<<T,S=j;do j-=A,h[P+(k>>E)+j]=ne<<24|re<<16|B|0;while(j!==0);for(A=1<<b-1;k&A;)A>>=1;if(A===0?k=0:(k&=A-1,k+=A),x++,--L[b]===0){if(b===C)break;b=t[s+_[x]]}if(b>w&&(k&N)!==M){for(E===0&&(E=w),P+=S,T=b-E,D=1<<T;T+E<C&&(D-=L[T+E],!(D<=0));)T++,D<<=1;if(O+=1<<T,e===c&&O>i||e===l&&O>a)return 1;M=k&N,h[M]=w<<24|T<<16|P-g|0}}return k!==0&&(h[P+k]=b-E<<24|4194304),v.bits=w,0}})),v=i((e=>{var t=s(),n=l(),r=u(),i=g(),a=_(),o=0,c=1,d=2,f=4,p=5,m=6,h=0,v=1,y=2,b=-2,x=-3,S=-4,C=-5,w=8,T=1,E=2,D=3,O=4,k=5,A=6,j=7,M=8,N=9,P=10,ee=11,F=12,I=13,L=14,R=15,z=16,te=17,ne=18,re=19,B=20,V=21,ie=22,ae=23,H=24,oe=25,U=26,se=27,ce=28,le=29,ue=30,de=31,fe=32,W=852,G=592,pe=15;function me(e){return(e>>>24&255)+(e>>>8&65280)+((e&65280)<<8)+((e&255)<<24)}function K(){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 t.Buf16(320),this.work=new t.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function q(e){var n;return!e||!e.state?b:(n=e.state,e.total_in=e.total_out=n.total=0,e.msg=``,n.wrap&&(e.adler=n.wrap&1),n.mode=T,n.last=0,n.havedict=0,n.dmax=32768,n.head=null,n.hold=0,n.bits=0,n.lencode=n.lendyn=new t.Buf32(W),n.distcode=n.distdyn=new t.Buf32(G),n.sane=1,n.back=-1,h)}function he(e){var t;return!e||!e.state?b:(t=e.state,t.wsize=0,t.whave=0,t.wnext=0,q(e))}function ge(e,t){var n,r;return!e||!e.state||(r=e.state,t<0?(n=0,t=-t):(n=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?b:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,he(e))}function J(e,t){var n,r;return e?(r=new K,e.state=r,r.window=null,n=ge(e,t),n!==h&&(e.state=null),n):b}function _e(e){return J(e,pe)}var ve=!0,ye,Y;function be(e){if(ve){var n;for(ye=new t.Buf32(512),Y=new t.Buf32(32),n=0;n<144;)e.lens[n++]=8;for(;n<256;)e.lens[n++]=9;for(;n<280;)e.lens[n++]=7;for(;n<288;)e.lens[n++]=8;for(a(c,e.lens,0,288,ye,0,e.work,{bits:9}),n=0;n<32;)e.lens[n++]=5;a(d,e.lens,0,32,Y,0,e.work,{bits:5}),ve=!1}e.lencode=ye,e.lenbits=9,e.distcode=Y,e.distbits=5}function X(e,n,r,i){var a,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new t.Buf8(o.wsize)),i>=o.wsize?(t.arraySet(o.window,n,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(a=o.wsize-o.wnext,a>i&&(a=i),t.arraySet(o.window,n,r-i,a,o.wnext),i-=a,i?(t.arraySet(o.window,n,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}function xe(e,s){var l,u,g,_,W,G,pe,K,q,he,ge,J,_e,ve,ye=0,Y,xe,Se,Ce,we,Te,Ee,De,Oe=new t.Buf8(4),ke,Ae,je=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return b;l=e.state,l.mode===F&&(l.mode=I),W=e.next_out,g=e.output,pe=e.avail_out,_=e.next_in,u=e.input,G=e.avail_in,K=l.hold,q=l.bits,he=G,ge=pe,De=h;inf_leave:for(;;)switch(l.mode){case T:if(l.wrap===0){l.mode=I;break}for(;q<16;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(l.wrap&2&&K===35615){l.check=0,Oe[0]=K&255,Oe[1]=K>>>8&255,l.check=r(l.check,Oe,2,0),K=0,q=0,l.mode=E;break}if(l.flags=0,l.head&&(l.head.done=!1),!(l.wrap&1)||(((K&255)<<8)+(K>>8))%31){e.msg=`incorrect header check`,l.mode=ue;break}if((K&15)!==w){e.msg=`unknown compression method`,l.mode=ue;break}if(K>>>=4,q-=4,Ee=(K&15)+8,l.wbits===0)l.wbits=Ee;else if(Ee>l.wbits){e.msg=`invalid window size`,l.mode=ue;break}l.dmax=1<<Ee,e.adler=l.check=1,l.mode=K&512?P:F,K=0,q=0;break;case E:for(;q<16;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(l.flags=K,(l.flags&255)!==w){e.msg=`unknown compression method`,l.mode=ue;break}if(l.flags&57344){e.msg=`unknown header flags set`,l.mode=ue;break}l.head&&(l.head.text=K>>8&1),l.flags&512&&(Oe[0]=K&255,Oe[1]=K>>>8&255,l.check=r(l.check,Oe,2,0)),K=0,q=0,l.mode=D;case D:for(;q<32;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.head&&(l.head.time=K),l.flags&512&&(Oe[0]=K&255,Oe[1]=K>>>8&255,Oe[2]=K>>>16&255,Oe[3]=K>>>24&255,l.check=r(l.check,Oe,4,0)),K=0,q=0,l.mode=O;case O:for(;q<16;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.head&&(l.head.xflags=K&255,l.head.os=K>>8),l.flags&512&&(Oe[0]=K&255,Oe[1]=K>>>8&255,l.check=r(l.check,Oe,2,0)),K=0,q=0,l.mode=k;case k:if(l.flags&1024){for(;q<16;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.length=K,l.head&&(l.head.extra_len=K),l.flags&512&&(Oe[0]=K&255,Oe[1]=K>>>8&255,l.check=r(l.check,Oe,2,0)),K=0,q=0}else l.head&&(l.head.extra=null);l.mode=A;case A:if(l.flags&1024&&(J=l.length,J>G&&(J=G),J&&(l.head&&(Ee=l.head.extra_len-l.length,l.head.extra||(l.head.extra=Array(l.head.extra_len)),t.arraySet(l.head.extra,u,_,J,Ee)),l.flags&512&&(l.check=r(l.check,u,J,_)),G-=J,_+=J,l.length-=J),l.length))break inf_leave;l.length=0,l.mode=j;case j:if(l.flags&2048){if(G===0)break inf_leave;J=0;do Ee=u[_+ J++],l.head&&Ee&&l.length<65536&&(l.head.name+=String.fromCharCode(Ee));while(Ee&&J<G);if(l.flags&512&&(l.check=r(l.check,u,J,_)),G-=J,_+=J,Ee)break inf_leave}else l.head&&(l.head.name=null);l.length=0,l.mode=M;case M:if(l.flags&4096){if(G===0)break inf_leave;J=0;do Ee=u[_+ J++],l.head&&Ee&&l.length<65536&&(l.head.comment+=String.fromCharCode(Ee));while(Ee&&J<G);if(l.flags&512&&(l.check=r(l.check,u,J,_)),G-=J,_+=J,Ee)break inf_leave}else l.head&&(l.head.comment=null);l.mode=N;case N:if(l.flags&512){for(;q<16;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(K!==(l.check&65535)){e.msg=`header crc mismatch`,l.mode=ue;break}K=0,q=0}l.head&&(l.head.hcrc=l.flags>>9&1,l.head.done=!0),e.adler=l.check=0,l.mode=F;break;case P:for(;q<32;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}e.adler=l.check=me(K),K=0,q=0,l.mode=ee;case ee:if(l.havedict===0)return e.next_out=W,e.avail_out=pe,e.next_in=_,e.avail_in=G,l.hold=K,l.bits=q,y;e.adler=l.check=1,l.mode=F;case F:if(s===p||s===m)break inf_leave;case I:if(l.last){K>>>=q&7,q-=q&7,l.mode=se;break}for(;q<3;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}switch(l.last=K&1,K>>>=1,--q,K&3){case 0:l.mode=L;break;case 1:if(be(l),l.mode=B,s===m){K>>>=2,q-=2;break inf_leave}break;case 2:l.mode=te;break;case 3:e.msg=`invalid block type`,l.mode=ue}K>>>=2,q-=2;break;case L:for(K>>>=q&7,q-=q&7;q<32;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if((K&65535)!=(K>>>16^65535)){e.msg=`invalid stored block lengths`,l.mode=ue;break}if(l.length=K&65535,K=0,q=0,l.mode=R,s===m)break inf_leave;case R:l.mode=z;case z:if(J=l.length,J){if(J>G&&(J=G),J>pe&&(J=pe),J===0)break inf_leave;t.arraySet(g,u,_,J,W),G-=J,_+=J,pe-=J,W+=J,l.length-=J;break}l.mode=F;break;case te:for(;q<14;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(l.nlen=(K&31)+257,K>>>=5,q-=5,l.ndist=(K&31)+1,K>>>=5,q-=5,l.ncode=(K&15)+4,K>>>=4,q-=4,l.nlen>286||l.ndist>30){e.msg=`too many length or distance symbols`,l.mode=ue;break}l.have=0,l.mode=ne;case ne:for(;l.have<l.ncode;){for(;q<3;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.lens[je[l.have++]]=K&7,K>>>=3,q-=3}for(;l.have<19;)l.lens[je[l.have++]]=0;if(l.lencode=l.lendyn,l.lenbits=7,ke={bits:l.lenbits},De=a(o,l.lens,0,19,l.lencode,0,l.work,ke),l.lenbits=ke.bits,De){e.msg=`invalid code lengths set`,l.mode=ue;break}l.have=0,l.mode=re;case re:for(;l.have<l.nlen+l.ndist;){for(;ye=l.lencode[K&(1<<l.lenbits)-1],Y=ye>>>24,xe=ye>>>16&255,Se=ye&65535,!(Y<=q);){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(Se<16)K>>>=Y,q-=Y,l.lens[l.have++]=Se;else{if(Se===16){for(Ae=Y+2;q<Ae;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(K>>>=Y,q-=Y,l.have===0){e.msg=`invalid bit length repeat`,l.mode=ue;break}Ee=l.lens[l.have-1],J=3+(K&3),K>>>=2,q-=2}else if(Se===17){for(Ae=Y+3;q<Ae;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}K>>>=Y,q-=Y,Ee=0,J=3+(K&7),K>>>=3,q-=3}else{for(Ae=Y+7;q<Ae;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}K>>>=Y,q-=Y,Ee=0,J=11+(K&127),K>>>=7,q-=7}if(l.have+J>l.nlen+l.ndist){e.msg=`invalid bit length repeat`,l.mode=ue;break}for(;J--;)l.lens[l.have++]=Ee}}if(l.mode===ue)break;if(l.lens[256]===0){e.msg=`invalid code -- missing end-of-block`,l.mode=ue;break}if(l.lenbits=9,ke={bits:l.lenbits},De=a(c,l.lens,0,l.nlen,l.lencode,0,l.work,ke),l.lenbits=ke.bits,De){e.msg=`invalid literal/lengths set`,l.mode=ue;break}if(l.distbits=6,l.distcode=l.distdyn,ke={bits:l.distbits},De=a(d,l.lens,l.nlen,l.ndist,l.distcode,0,l.work,ke),l.distbits=ke.bits,De){e.msg=`invalid distances set`,l.mode=ue;break}if(l.mode=B,s===m)break inf_leave;case B:l.mode=V;case V:if(G>=6&&pe>=258){e.next_out=W,e.avail_out=pe,e.next_in=_,e.avail_in=G,l.hold=K,l.bits=q,i(e,ge),W=e.next_out,g=e.output,pe=e.avail_out,_=e.next_in,u=e.input,G=e.avail_in,K=l.hold,q=l.bits,l.mode===F&&(l.back=-1);break}for(l.back=0;ye=l.lencode[K&(1<<l.lenbits)-1],Y=ye>>>24,xe=ye>>>16&255,Se=ye&65535,!(Y<=q);){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(xe&&!(xe&240)){for(Ce=Y,we=xe,Te=Se;ye=l.lencode[Te+((K&(1<<Ce+we)-1)>>Ce)],Y=ye>>>24,xe=ye>>>16&255,Se=ye&65535,!(Ce+Y<=q);){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}K>>>=Ce,q-=Ce,l.back+=Ce}if(K>>>=Y,q-=Y,l.back+=Y,l.length=Se,xe===0){l.mode=U;break}if(xe&32){l.back=-1,l.mode=F;break}if(xe&64){e.msg=`invalid literal/length code`,l.mode=ue;break}l.extra=xe&15,l.mode=ie;case ie:if(l.extra){for(Ae=l.extra;q<Ae;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.length+=K&(1<<l.extra)-1,K>>>=l.extra,q-=l.extra,l.back+=l.extra}l.was=l.length,l.mode=ae;case ae:for(;ye=l.distcode[K&(1<<l.distbits)-1],Y=ye>>>24,xe=ye>>>16&255,Se=ye&65535,!(Y<=q);){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(!(xe&240)){for(Ce=Y,we=xe,Te=Se;ye=l.distcode[Te+((K&(1<<Ce+we)-1)>>Ce)],Y=ye>>>24,xe=ye>>>16&255,Se=ye&65535,!(Ce+Y<=q);){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}K>>>=Ce,q-=Ce,l.back+=Ce}if(K>>>=Y,q-=Y,l.back+=Y,xe&64){e.msg=`invalid distance code`,l.mode=ue;break}l.offset=Se,l.extra=xe&15,l.mode=H;case H:if(l.extra){for(Ae=l.extra;q<Ae;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}l.offset+=K&(1<<l.extra)-1,K>>>=l.extra,q-=l.extra,l.back+=l.extra}if(l.offset>l.dmax){e.msg=`invalid distance too far back`,l.mode=ue;break}l.mode=oe;case oe:if(pe===0)break inf_leave;if(J=ge-pe,l.offset>J){if(J=l.offset-J,J>l.whave&&l.sane){e.msg=`invalid distance too far back`,l.mode=ue;break}J>l.wnext?(J-=l.wnext,_e=l.wsize-J):_e=l.wnext-J,J>l.length&&(J=l.length),ve=l.window}else ve=g,_e=W-l.offset,J=l.length;J>pe&&(J=pe),pe-=J,l.length-=J;do g[W++]=ve[_e++];while(--J);l.length===0&&(l.mode=V);break;case U:if(pe===0)break inf_leave;g[W++]=l.length,pe--,l.mode=V;break;case se:if(l.wrap){for(;q<32;){if(G===0)break inf_leave;G--,K|=u[_++]<<q,q+=8}if(ge-=pe,e.total_out+=ge,l.total+=ge,ge&&(e.adler=l.check=l.flags?r(l.check,g,ge,W-ge):n(l.check,g,ge,W-ge)),ge=pe,(l.flags?K:me(K))!==l.check){e.msg=`incorrect data check`,l.mode=ue;break}K=0,q=0}l.mode=ce;case ce:if(l.wrap&&l.flags){for(;q<32;){if(G===0)break inf_leave;G--,K+=u[_++]<<q,q+=8}if(K!==(l.total&4294967295)){e.msg=`incorrect length check`,l.mode=ue;break}K=0,q=0}l.mode=le;case le:De=v;break inf_leave;case ue:De=x;break inf_leave;case de:return S;case fe:default:return b}return e.next_out=W,e.avail_out=pe,e.next_in=_,e.avail_in=G,l.hold=K,l.bits=q,(l.wsize||ge!==e.avail_out&&l.mode<ue&&(l.mode<se||s!==f))&&X(e,e.output,e.next_out,ge-e.avail_out)?(l.mode=de,S):(he-=e.avail_in,ge-=e.avail_out,e.total_in+=he,e.total_out+=ge,l.total+=ge,l.wrap&&ge&&(e.adler=l.check=l.flags?r(l.check,g,ge,e.next_out-ge):n(l.check,g,ge,e.next_out-ge)),e.data_type=l.bits+(l.last?64:0)+(l.mode===F?128:0)+(l.mode===B||l.mode===R?256:0),(he===0&&ge===0||s===f)&&De===h&&(De=C),De)}function Se(e){if(!e||!e.state)return b;var t=e.state;return t.window&&=null,e.state=null,h}function Ce(e,t){var n;return!e||!e.state||(n=e.state,!(n.wrap&2))?b:(n.head=t,t.done=!1,h)}function we(e,t){var r=t.length,i,a,o;return!e||!e.state||(i=e.state,i.wrap!==0&&i.mode!==ee)?b:i.mode===ee&&(a=1,a=n(a,t,r,0),a!==i.check)?x:(o=X(e,t,r,r),o?(i.mode=de,S):(i.havedict=1,h))}e.inflateReset=he,e.inflateReset2=ge,e.inflateResetKeep=q,e.inflateInit=_e,e.inflateInit2=J,e.inflate=xe,e.inflateEnd=Se,e.inflateGetHeader=Ce,e.inflateSetDictionary=we,e.inflateInfo=`pako inflate (from Nodeca project)`})),y=i(((e,t)=>{t.exports={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}})),b=i(((e,t)=>{function n(){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}t.exports=n})),x=i((e=>{var t=v(),n=s(),r=p(),i=y(),a=d(),o=m(),c=b(),l=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(e);this.options=n.assign({chunkSize:16384,windowBits:0,to:``},e||{});var s=this.options;s.raw&&s.windowBits>=0&&s.windowBits<16&&(s.windowBits=-s.windowBits,s.windowBits===0&&(s.windowBits=-15)),s.windowBits>=0&&s.windowBits<16&&!(e&&e.windowBits)&&(s.windowBits+=32),s.windowBits>15&&s.windowBits<48&&(s.windowBits&15||(s.windowBits|=15)),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new o,this.strm.avail_out=0;var d=t.inflateInit2(this.strm,s.windowBits);if(d!==i.Z_OK||(this.header=new c,t.inflateGetHeader(this.strm,this.header),s.dictionary&&(typeof s.dictionary==`string`?s.dictionary=r.string2buf(s.dictionary):l.call(s.dictionary)===`[object ArrayBuffer]`&&(s.dictionary=new Uint8Array(s.dictionary)),s.raw&&(d=t.inflateSetDictionary(this.strm,s.dictionary),d!==i.Z_OK))))throw Error(a[d])}u.prototype.push=function(e,a){var o=this.strm,s=this.options.chunkSize,c=this.options.dictionary,u,d,f,p,m,h=!1;if(this.ended)return!1;d=a===~~a?a:a===!0?i.Z_FINISH:i.Z_NO_FLUSH,typeof e==`string`?o.input=r.binstring2buf(e):l.call(e)===`[object ArrayBuffer]`?o.input=new Uint8Array(e):o.input=e,o.next_in=0,o.avail_in=o.input.length;do{if(o.avail_out===0&&(o.output=new n.Buf8(s),o.next_out=0,o.avail_out=s),u=t.inflate(o,i.Z_NO_FLUSH),u===i.Z_NEED_DICT&&c&&(u=t.inflateSetDictionary(this.strm,c)),u===i.Z_BUF_ERROR&&h===!0&&(u=i.Z_OK,h=!1),u!==i.Z_STREAM_END&&u!==i.Z_OK)return this.onEnd(u),this.ended=!0,!1;o.next_out&&(o.avail_out===0||u===i.Z_STREAM_END||o.avail_in===0&&(d===i.Z_FINISH||d===i.Z_SYNC_FLUSH))&&(this.options.to===`string`?(f=r.utf8border(o.output,o.next_out),p=o.next_out-f,m=r.buf2string(o.output,f),o.next_out=p,o.avail_out=s-p,p&&n.arraySet(o.output,o.output,f,p,0),this.onData(m)):this.onData(n.shrinkBuf(o.output,o.next_out))),o.avail_in===0&&o.avail_out===0&&(h=!0)}while((o.avail_in>0||o.avail_out===0)&&u!==i.Z_STREAM_END);return u===i.Z_STREAM_END&&(d=i.Z_FINISH),d===i.Z_FINISH?(u=t.inflateEnd(this.strm),this.onEnd(u),this.ended=!0,u===i.Z_OK):d===i.Z_SYNC_FLUSH?(this.onEnd(i.Z_OK),o.avail_out=0,!0):!0},u.prototype.onData=function(e){this.chunks.push(e)},u.prototype.onEnd=function(e){e===i.Z_OK&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=n.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};function f(e,t){var n=new u(t);if(n.push(e,!0),n.err)throw n.msg||a[n.err];return n.result}function h(e,t){return t||={},t.raw=!0,f(e,t)}e.Inflate=u,e.inflate=f,e.inflateRaw=h,e.ungzip=f})),S=i(((e,t)=>{var n=s().assign,r=h(),i=x(),a=y(),o={};n(o,r,i,a),t.exports=o})),C=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.messageAssert=e.messageError=e.QuickTypeError=void 0;var t={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}"},n=class extends Error{constructor(e,t,n,r){super(n),this.errorMessage=e,this.messageName=t,this.properties=r}};e.QuickTypeError=n;function r(e,r){let i=t[e],a=i,o=r;for(let e of Object.getOwnPropertyNames(o)){let t=o[e];typeof t==`object`&&typeof t.toString==`function`?t=t.toString():typeof t.message==`string`?t=t.message:typeof t!=`string`&&(t=JSON.stringify(t)),a=a.replace("${"+e+`}`,t)}throw new n(i,e,a,o)}e.messageError=r;function i(e,t,n){if(!e)return r(t,n)}e.messageAssert=i}));function w(e){if(e&&typeof e==`object`)switch(e[M]){case O:case j:return!0}return!1}function T(e){if(e&&typeof e==`object`)switch(e[M]){case E:case O:case A:case j:return!0}return!1}var E,D,O,k,A,j,M,N,P,ee,F,I,L,R,z=n((()=>{E=Symbol.for(`yaml.alias`),D=Symbol.for(`yaml.document`),O=Symbol.for(`yaml.map`),k=Symbol.for(`yaml.pair`),A=Symbol.for(`yaml.scalar`),j=Symbol.for(`yaml.seq`),M=Symbol.for(`yaml.node.type`),N=e=>!!e&&typeof e==`object`&&e[M]===E,P=e=>!!e&&typeof e==`object`&&e[M]===D,ee=e=>!!e&&typeof e==`object`&&e[M]===O,F=e=>!!e&&typeof e==`object`&&e[M]===k,I=e=>!!e&&typeof e==`object`&&e[M]===A,L=e=>!!e&&typeof e==`object`&&e[M]===j,R=e=>(I(e)||w(e))&&!!e.anchor}));function te(e,t){let n=V(t);P(e)?ne(null,e.contents,n,Object.freeze([e]))===U&&(e.contents=null):ne(null,e,n,Object.freeze([]))}function ne(e,t,n,r){let i=ie(e,t,n,r);if(T(i)||F(i))return ae(e,r,i),ne(e,i,n,r);if(typeof i!=`symbol`){if(w(t)){r=Object.freeze(r.concat(t));for(let e=0;e<t.items.length;++e){let i=ne(e,t.items[e],n,r);if(typeof i==`number`)e=i-1;else if(i===H)return H;else i===U&&(t.items.splice(e,1),--e)}}else if(F(t)){r=Object.freeze(r.concat(t));let e=ne(`key`,t.key,n,r);if(e===H)return H;e===U&&(t.key=null);let i=ne(`value`,t.value,n,r);if(i===H)return H;i===U&&(t.value=null)}}return i}async function re(e,t){let n=V(t);P(e)?await B(null,e.contents,n,Object.freeze([e]))===U&&(e.contents=null):await B(null,e,n,Object.freeze([]))}async function B(e,t,n,r){let i=await ie(e,t,n,r);if(T(i)||F(i))return ae(e,r,i),B(e,i,n,r);if(typeof i!=`symbol`){if(w(t)){r=Object.freeze(r.concat(t));for(let e=0;e<t.items.length;++e){let i=await B(e,t.items[e],n,r);if(typeof i==`number`)e=i-1;else if(i===H)return H;else i===U&&(t.items.splice(e,1),--e)}}else if(F(t)){r=Object.freeze(r.concat(t));let e=await B(`key`,t.key,n,r);if(e===H)return H;e===U&&(t.key=null);let i=await B(`value`,t.value,n,r);if(i===H)return H;i===U&&(t.value=null)}}return i}function V(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 ie(e,t,n,r){if(typeof n==`function`)return n(e,t,r);if(ee(t))return n.Map?.(e,t,r);if(L(t))return n.Seq?.(e,t,r);if(F(t))return n.Pair?.(e,t,r);if(I(t))return n.Scalar?.(e,t,r);if(N(t))return n.Alias?.(e,t,r)}function ae(e,t,n){let r=t[t.length-1];if(w(r))r.items[e]=n;else if(F(r))e===`key`?r.key=n:r.value=n;else if(P(r))r.contents=n;else{let e=N(r)?`alias`:`scalar`;throw Error(`Cannot replace node with ${e} parent`)}}var H,oe,U,se=n((()=>{z(),H=Symbol(`break visit`),oe=Symbol(`skip children`),U=Symbol(`remove node`),te.BREAK=H,te.SKIP=oe,te.REMOVE=U,re.BREAK=H,re.SKIP=oe,re.REMOVE=U})),ce,le,ue,de=n((()=>{z(),se(),ce={"!":`%21`,",":`%2C`,"[":`%5B`,"]":`%5D`,"{":`%7B`,"}":`%7D`},le=e=>e.replace(/[!,[\]{}]/g,e=>ce[e]),ue=class e{constructor(t,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},e.defaultYaml,t),this.tags=Object.assign({},e.defaultTags,n)}clone(){let t=new e(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){let t=new e(this.yaml,this.tags);switch(this.yaml.version){case`1.1`:this.atNextDocument=!0;break;case`1.2`:this.atNextDocument=!1,this.yaml={explicit:e.defaultYaml.explicit,version:`1.2`},this.tags=Object.assign({},e.defaultTags);break}return t}add(t,n){this.atNextDocument&&=(this.yaml={explicit:e.defaultYaml.explicit,version:`1.1`},this.tags=Object.assign({},e.defaultTags),!1);let r=t.trim().split(/[ \t]+/),i=r.shift();switch(i){case`%TAG`:{if(r.length!==2&&(n(0,`%TAG directive should contain exactly two parts`),r.length<2))return!1;let[e,t]=r;return this.tags[e]=t,!0}case`%YAML`:{if(this.yaml.explicit=!0,r.length!==1)return n(0,`%YAML directive should contain exactly one part`),!1;let[e]=r;if(e===`1.1`||e===`1.2`)return this.yaml.version=e,!0;{let t=/^\d+\.\d+$/.test(e);return n(6,`Unsupported YAML version ${e}`,t),!1}}default:return n(0,`Unknown directive ${i}`,!0),!1}}tagName(e,t){if(e===`!`)return`!`;if(e[0]!==`!`)return t(`Not a valid tag: ${e}`),null;if(e[1]===`<`){let n=e.slice(2,-1);return n===`!`||n===`!!`?(t(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==`>`&&t(`Verbatim tags must end with a >`),n)}let[,n,r]=e.match(/^(.*!)([^!]*)$/s);r||t(`The ${e} tag has no suffix`);let i=this.tags[n];if(i)try{return i+decodeURIComponent(r)}catch(e){return t(String(e)),null}return n===`!`?e:(t(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[t,n]of Object.entries(this.tags))if(e.startsWith(n))return t+le(e.substring(n.length));return e[0]===`!`?e:`!<${e}>`}toString(e){let t=this.yaml.explicit?[`%YAML ${this.yaml.version||`1.2`}`]:[],n=Object.entries(this.tags),r;if(e&&n.length>0&&T(e.contents)){let t={};te(e.contents,(e,n)=>{T(n)&&n.tag&&(t[n.tag]=!0)}),r=Object.keys(t)}else r=[];for(let[i,a]of n)i===`!!`&&a===`tag:yaml.org,2002:`||(!e||r.some(e=>e.startsWith(a)))&&t.push(`%TAG ${i} ${a}`);return t.join(`
2
+ `)}},ue.defaultYaml={explicit:!1,version:`1.2`},ue.defaultTags={"!!":`tag:yaml.org,2002:`}}));function fe(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){let t=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw Error(t)}return!0}function W(e){let t=new Set;return te(e,{Value(e,n){n.anchor&&t.add(n.anchor)}}),t}function G(e,t){for(let n=1;;++n){let r=`${e}${n}`;if(!t.has(r))return r}}function pe(e,t){let n=[],r=new Map,i=null;return{onAnchor:r=>{n.push(r),i??=W(e);let a=G(t,i);return i.add(a),a},setAnchors:()=>{for(let e of n){let t=r.get(e);if(typeof t==`object`&&t.anchor&&(I(t.node)||w(t.node)))t.node.anchor=t.anchor;else{let t=Error(`Failed to resolve repeated object (this should not happen)`);throw t.source=e,t}}},sourceObjects:r}}var me=n((()=>{z(),se()}));function K(e,t,n,r){if(r&&typeof r==`object`)if(Array.isArray(r))for(let t=0,n=r.length;t<n;++t){let n=r[t],i=K(e,r,String(t),n);i===void 0?delete r[t]:i!==n&&(r[t]=i)}else if(r instanceof Map)for(let t of Array.from(r.keys())){let n=r.get(t),i=K(e,r,t,n);i===void 0?r.delete(t):i!==n&&r.set(t,i)}else if(r instanceof Set)for(let t of Array.from(r)){let n=K(e,r,t,t);n===void 0?r.delete(t):n!==t&&(r.delete(t),r.add(n))}else for(let[t,n]of Object.entries(r)){let i=K(e,r,t,n);i===void 0?delete r[t]:i!==n&&(r[t]=i)}return e.call(t,n,r)}var q=n((()=>{}));function he(e,t,n){if(Array.isArray(e))return e.map((e,t)=>he(e,String(t),n));if(e&&typeof e.toJSON==`function`){if(!n||!R(e))return e.toJSON(t,n);let r={aliasCount:0,count:1,res:void 0};n.anchors.set(e,r),n.onCreate=e=>{r.res=e,delete n.onCreate};let i=e.toJSON(t,n);return n.onCreate&&n.onCreate(i),i}return typeof e==`bigint`&&!n?.keep?Number(e):e}var ge=n((()=>{z()})),J,_e=n((()=>{q(),z(),ge(),J=class{constructor(e){Object.defineProperty(this,M,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:n,onAnchor:r,reviver:i}={}){if(!P(e))throw TypeError(`A document argument is required`);let a={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n==`number`?n:100},o=he(this,``,a);if(typeof r==`function`)for(let{count:e,res:t}of a.anchors.values())r(t,e);return typeof i==`function`?K(i,{"":o},``,o):o}}}));function ve(e,t,n){if(N(t)){let r=t.resolve(e),i=n&&r&&n.get(r);return i?i.count*i.aliasCount:0}else if(w(t)){let r=0;for(let i of t.items){let t=ve(e,i,n);t>r&&(r=t)}return r}else if(F(t)){let r=ve(e,t.key,n),i=ve(e,t.value,n);return Math.max(r,i)}return 1}var ye,Y=n((()=>{me(),se(),z(),_e(),ge(),ye=class extends J{constructor(e){super(E),this.source=e,Object.defineProperty(this,`tag`,{set(){throw Error(`Alias nodes cannot have tags`)}})}resolve(e,t){let n;t?.aliasResolveCache?n=t.aliasResolveCache:(n=[],te(e,{Node:(e,t)=>{(N(t)||R(t))&&n.push(t)}}),t&&(t.aliasResolveCache=n));let r;for(let e of n){if(e===this)break;e.anchor===this.source&&(r=e)}return r}toJSON(e,t){if(!t)return{source:this.source};let{anchors:n,doc:r,maxAliasCount:i}=t,a=this.resolve(r,t);if(!a){let e=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(e)}let o=n.get(a);if(o||=(he(a,null,t),n.get(a)),o?.res===void 0)throw ReferenceError(`This should not happen: Alias anchor was not resolved?`);if(i>=0&&(o.count+=1,o.aliasCount===0&&(o.aliasCount=ve(r,a,n)),o.count*o.aliasCount>i))throw ReferenceError(`Excessive alias count indicates a resource exhaustion attack`);return o.res}toString(e,t,n){let r=`*${this.source}`;if(e){if(fe(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let e=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(e)}if(e.implicitKey)return`${r} `}return r}}})),be,X,xe=n((()=>{z(),_e(),ge(),be=e=>!e||typeof e!=`function`&&typeof e!=`object`,X=class extends J{constructor(e){super(A),this.value=e}toJSON(e,t){return t?.keep?this.value:he(this.value,e,t)}toString(){return String(this.value)}},X.BLOCK_FOLDED=`BLOCK_FOLDED`,X.BLOCK_LITERAL=`BLOCK_LITERAL`,X.PLAIN=`PLAIN`,X.QUOTE_DOUBLE=`QUOTE_DOUBLE`,X.QUOTE_SINGLE=`QUOTE_SINGLE`}));function Se(e,t,n){if(t){let e=n.filter(e=>e.tag===t),r=e.find(e=>!e.format)??e[0];if(!r)throw Error(`Tag ${t} not found`);return r}return n.find(t=>t.identify?.(e)&&!t.format)}function Ce(e,t,n){if(P(e)&&(e=e.contents),T(e))return e;if(F(e)){let t=n.schema[O].createNode?.(n.schema,null,n);return t.items.push(e),t}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<`u`&&e instanceof BigInt)&&(e=e.valueOf());let{aliasDuplicateObjects:r,onAnchor:i,onTagObj:a,schema:o,sourceObjects:s}=n,c;if(r&&e&&typeof e==`object`){if(c=s.get(e),c)return c.anchor??=i(e),new ye(c.anchor);c={anchor:null,node:null},s.set(e,c)}t?.startsWith(`!!`)&&(t=we+t.slice(2));let l=Se(e,t,o.tags);if(!l){if(e&&typeof e.toJSON==`function`&&(e=e.toJSON()),!e||typeof e!=`object`){let t=new X(e);return c&&(c.node=t),t}l=e instanceof Map?o[O]:Symbol.iterator in Object(e)?o[j]:o[O]}a&&(a(l),delete n.onTagObj);let u=l?.createNode?l.createNode(n.schema,e,n):typeof l?.nodeClass?.from==`function`?l.nodeClass.from(n.schema,e,n):new X(e);return t?u.tag=t:l.default||(u.tag=l.tag),c&&(c.node=u),u}var we,Te=n((()=>{Y(),z(),xe(),we=`tag:yaml.org,2002:`}));function Ee(e,t,n){let r=n;for(let e=t.length-1;e>=0;--e){let n=t[e];if(typeof n==`number`&&Number.isInteger(n)&&n>=0){let e=[];e[n]=r,r=e}else r=new Map([[n,r]])}return Ce(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error(`This should not happen, please report a bug.`)},schema:e,sourceObjects:new Map})}var De,Oe,ke=n((()=>{Te(),z(),_e(),De=e=>e==null||typeof e==`object`&&!!e[Symbol.iterator]().next().done,Oe=class extends J{constructor(e,t){super(e),Object.defineProperty(this,`schema`,{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(t=>T(t)||F(t)?t.clone(e):t),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(De(e))this.add(t);else{let[n,...r]=e,i=this.get(n,!0);if(w(i))i.addIn(r,t);else if(i===void 0&&this.schema)this.set(n,Ee(this.schema,r,t));else throw Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}}deleteIn(e){let[t,...n]=e;if(n.length===0)return this.delete(t);let r=this.get(t,!0);if(w(r))return r.deleteIn(n);throw Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}getIn(e,t){let[n,...r]=e,i=this.get(n,!0);return r.length===0?!t&&I(i)?i.value:i:w(i)?i.getIn(r,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!F(t))return!1;let n=t.value;return n==null||e&&I(n)&&n.value==null&&!n.commentBefore&&!n.comment&&!n.tag})}hasIn(e){let[t,...n]=e;if(n.length===0)return this.has(t);let r=this.get(t,!0);return w(r)?r.hasIn(n):!1}setIn(e,t){let[n,...r]=e;if(r.length===0)this.set(n,t);else{let e=this.get(n,!0);if(w(e))e.setIn(r,t);else if(e===void 0&&this.schema)this.set(n,Ee(this.schema,r,t));else throw Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}}}}));function Ae(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}var je,Me,Ne=n((()=>{je=e=>e.replace(/^(?!$)(?: $)?/gm,`#`),Me=(e,t,n)=>e.endsWith(`
3
+ `)?Ae(n,t):n.includes(`
4
+ `)?`
5
+ `+Ae(n,t):(e.endsWith(` `)?``:` `)+n}));function Pe(e,t,n=`flow`,{indentAtStart:r,lineWidth:i=80,minContentWidth:a=20,onFold:o,onOverflow:s}={}){if(!i||i<0)return e;i<a&&(a=0);let c=Math.max(1+a,1+i-t.length);if(e.length<=c)return e;let l=[],u={},d=i-t.length;typeof r==`number`&&(r>i-Math.max(2,a)?l.push(0):d=i-r);let f,p,m=!1,h=-1,g=-1,_=-1;n===`block`&&(h=Fe(e,h,t.length),h!==-1&&(d=h+c));for(let r;r=e[h+=1];){if(n===`quoted`&&r===`\\`){switch(g=h,e[h+1]){case`x`:h+=3;break;case`u`:h+=5;break;case`U`:h+=9;break;default:h+=1}_=h}if(r===`
6
+ `)n===`block`&&(h=Fe(e,h,t.length)),d=h+t.length+c,f=void 0;else{if(r===` `&&p&&p!==` `&&p!==`
7
+ `&&p!==` `){let t=e[h+1];t&&t!==` `&&t!==`
8
+ `&&t!==` `&&(f=h)}if(h>=d)if(f)l.push(f),d=f+c,f=void 0;else if(n===`quoted`){for(;p===` `||p===` `;)p=r,r=e[h+=1],m=!0;let t=h>_+1?h-2:g-1;if(u[t])return e;l.push(t),u[t]=!0,d=t+c,f=void 0}else m=!0}p=r}if(m&&s&&s(),l.length===0)return e;o&&o();let v=e.slice(0,l[0]);for(let r=0;r<l.length;++r){let i=l[r],a=l[r+1]||e.length;i===0?v=`\n${t}${e.slice(0,a)}`:(n===`quoted`&&u[i]&&(v+=`${e[i]}\\`),v+=`\n${t}${e.slice(i+1,a)}`)}return v}function Fe(e,t,n){let r=t,i=t+1,a=e[i];for(;a===` `||a===` `;)if(t<i+n)a=e[++t];else{do a=e[++t];while(a&&a!==`
9
+ `);r=t,i=t+1,a=e[i]}return r}var Ie,Le,Re,ze=n((()=>{Ie=`flow`,Le=`block`,Re=`quoted`}));function Be(e,t,n){if(!t||t<0)return!1;let r=t-n,i=e.length;if(i<=r)return!1;for(let t=0,n=0;t<i;++t)if(e[t]===`
10
+ `){if(t-n>r)return!0;if(n=t+1,i-n<=r)return!1}return!0}function Ve(e,t){let n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;let{implicitKey:r}=t,i=t.options.doubleQuotedMinMultiLineLength,a=t.indent||(Je(e)?` `:``),o=``,s=0;for(let e=0,t=n[e];t;t=n[++e])if(t===` `&&n[e+1]===`\\`&&n[e+2]===`n`&&(o+=n.slice(s,e)+`\\ `,e+=1,s=e,t=`\\`),t===`\\`)switch(n[e+1]){case`u`:{o+=n.slice(s,e);let t=n.substr(e+2,4);switch(t){case`0000`:o+=`\\0`;break;case`0007`:o+=`\\a`;break;case`000b`:o+=`\\v`;break;case`001b`:o+=`\\e`;break;case`0085`:o+=`\\N`;break;case`00a0`:o+=`\\_`;break;case`2028`:o+=`\\L`;break;case`2029`:o+=`\\P`;break;default:t.substr(0,2)===`00`?o+=`\\x`+t.substr(2):o+=n.substr(e,6)}e+=5,s=e+1}break;case`n`:if(r||n[e+2]===`"`||n.length<i)e+=1;else{for(o+=n.slice(s,e)+`
11
+
12
+ `;n[e+2]===`\\`&&n[e+3]===`n`&&n[e+4]!==`"`;)o+=`
13
+ `,e+=2;o+=a,n[e+2]===` `&&(o+=`\\`),e+=1,s=e+1}break;default:e+=1}return o=s?o+n.slice(s):n,r?o:Pe(o,a,Re,qe(t,!1))}function He(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
14
+ `)||/[ \t]\n|\n[ \t]/.test(e))return Ve(e,t);let n=t.indent||(Je(e)?` `:``),r=`'`+e.replace(/'/g,`''`).replace(/\n+/g,`$&\n${n}`)+`'`;return t.implicitKey?r:Pe(r,n,Ie,qe(t,!1))}function Ue(e,t){let{singleQuote:n}=t.options,r;if(n===!1)r=Ve;else{let t=e.includes(`"`),i=e.includes(`'`);r=t&&!i?He:i&&!t?Ve:n?He:Ve}return r(e,t)}function We({comment:e,type:t,value:n},r,i,a){let{blockQuote:o,commentString:s,lineWidth:c}=r.options;if(!o||/\n[\t ]+$/.test(n))return Ue(n,r);let l=r.indent||(r.forceBlockIndent||Je(n)?` `:``),u=o===`literal`?!0:o===`folded`||t===X.BLOCK_FOLDED?!1:t===X.BLOCK_LITERAL?!0:!Be(n,c,l.length);if(!n)return u?`|
15
+ `:`>
16
+ `;let d,f;for(f=n.length;f>0;--f){let e=n[f-1];if(e!==`
17
+ `&&e!==` `&&e!==` `)break}let p=n.substring(f),m=p.indexOf(`
18
+ `);m===-1?d=`-`:n===p||m!==p.length-1?(d=`+`,a&&a()):d=``,p&&=(n=n.slice(0,-p.length),p[p.length-1]===`
19
+ `&&(p=p.slice(0,-1)),p.replace(Ye,`$&${l}`));let h=!1,g,_=-1;for(g=0;g<n.length;++g){let e=n[g];if(e===` `)h=!0;else if(e===`
20
+ `)_=g;else break}let v=n.substring(0,_<g?_+1:g);v&&=(n=n.substring(v.length),v.replace(/\n+/g,`$&${l}`));let y=(h?l?`2`:`1`:``)+d;if(e&&(y+=` `+s(e.replace(/ ?[\r\n]+/g,` `)),i&&i()),!u){let e=n.replace(/\n+/g,`
21
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,`$1$2`).replace(/\n+/g,`$&${l}`),i=!1,a=qe(r,!0);o!==`folded`&&t!==X.BLOCK_FOLDED&&(a.onOverflow=()=>{i=!0});let s=Pe(`${v}${e}${p}`,l,Le,a);if(!i)return`>${y}\n${l}${s}`}return n=n.replace(/\n+/g,`$&${l}`),`|${y}\n${l}${v}${n}${p}`}function Ge(e,t,n,r){let{type:i,value:a}=e,{actualString:o,implicitKey:s,indent:c,indentStep:l,inFlow:u}=t;if(s&&a.includes(`
22
+ `)||u&&/[[\]{},]/.test(a))return Ue(a,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(a))return s||u||!a.includes(`
23
+ `)?Ue(a,t):We(e,t,n,r);if(!s&&!u&&i!==X.PLAIN&&a.includes(`
24
+ `))return We(e,t,n,r);if(Je(a)){if(c===``)return t.forceBlockIndent=!0,We(e,t,n,r);if(s&&c===l)return Ue(a,t)}let d=a.replace(/\n+/g,`$&\n${c}`);if(o){let e=e=>e.default&&e.tag!==`tag:yaml.org,2002:str`&&e.test?.test(d),{compat:n,tags:r}=t.doc.schema;if(r.some(e)||n?.some(e))return Ue(a,t)}return s?d:Pe(d,c,Ie,qe(t,!1))}function Ke(e,t,n,r){let{implicitKey:i,inFlow:a}=t,o=typeof e.value==`string`?e:Object.assign({},e,{value:String(e.value)}),{type:s}=e;s!==X.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(o.value)&&(s=X.QUOTE_DOUBLE);let c=e=>{switch(e){case X.BLOCK_FOLDED:case X.BLOCK_LITERAL:return i||a?Ue(o.value,t):We(o,t,n,r);case X.QUOTE_DOUBLE:return Ve(o.value,t);case X.QUOTE_SINGLE:return He(o.value,t);case X.PLAIN:return Ge(o,t,n,r);default:return null}},l=c(s);if(l===null){let{defaultKeyType:e,defaultStringType:n}=t.options,r=i&&e||n;if(l=c(r),l===null)throw Error(`Unsupported default string type ${r}`)}return l}var qe,Je,Ye,Xe=n((()=>{xe(),ze(),qe=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),Je=e=>/^(%|---|\.\.\.)/m.test(e);try{Ye=RegExp(`(^|(?<!
25
+ ))
26
+ +(?!
27
+ |$)`,`g`)}catch{Ye=/\n+(?!\n|$)/g}}));function Ze(e,t){let n=Object.assign({blockQuote:!0,commentString:je,defaultKeyType:null,defaultStringType:`PLAIN`,directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:`false`,flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:`null`,simpleKeys:!1,singleQuote:null,trueStr:`true`,verifyAliasOrder:!0},e.schema.toStringOptions,t),r;switch(n.collectionStyle){case`block`:r=!1;break;case`flow`:r=!0;break;default:r=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?` `:``,indent:``,indentStep:typeof n.indent==`number`?` `.repeat(n.indent):` `,inFlow:r,options:n}}function Qe(e,t){if(t.tag){let n=e.filter(e=>e.tag===t.tag);if(n.length>0)return n.find(e=>e.format===t.format)??n[0]}let n,r;if(I(t)){r=t.value;let i=e.filter(e=>e.identify?.(r));if(i.length>1){let e=i.filter(e=>e.test);e.length>0&&(i=e)}n=i.find(e=>e.format===t.format)??i.find(e=>!e.format)}else r=t,n=e.find(e=>e.nodeClass&&r instanceof e.nodeClass);if(!n){let e=r?.constructor?.name??(r===null?`null`:typeof r);throw Error(`Tag not resolved for ${e} value`)}return n}function $e(e,t,{anchors:n,doc:r}){if(!r.directives)return``;let i=[],a=(I(e)||w(e))&&e.anchor;a&&fe(a)&&(n.add(a),i.push(`&${a}`));let o=e.tag??(t.default?null:t.tag);return o&&i.push(r.directives.tagString(o)),i.join(` `)}function et(e,t,n,r){if(F(e))return e.toString(t,n,r);if(N(e)){if(t.doc.directives)return e.toString(t);if(t.resolvedAliases?.has(e))throw TypeError(`Cannot stringify circular structure without alias nodes`);t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let i,a=T(e)?e:t.doc.createNode(e,{onTagObj:e=>i=e});i??=Qe(t.doc.schema.tags,a);let o=$e(a,i,t);o.length>0&&(t.indentAtStart=(t.indentAtStart??0)+o.length+1);let s=typeof i.stringify==`function`?i.stringify(a,t,n,r):I(a)?Ke(a,t,n,r):a.toString(t,n,r);return o?I(a)||s[0]===`{`||s[0]===`[`?`${o} ${s}`:`${o}\n${t.indent}${s}`:s}var tt=n((()=>{me(),z(),Ne(),Xe()}));function nt({key:e,value:t},n,r,i){let{allNullValues:a,doc:o,indent:s,indentStep:c,options:{commentString:l,indentSeq:u,simpleKeys:d}}=n,f=T(e)&&e.comment||null;if(d){if(f)throw Error(`With simple keys, key nodes cannot have comments`);if(w(e)||!T(e)&&typeof e==`object`)throw Error(`With simple keys, collection cannot be used as a key value`)}let p=!d&&(!e||f&&t==null&&!n.inFlow||w(e)||(I(e)?e.type===X.BLOCK_FOLDED||e.type===X.BLOCK_LITERAL:typeof e==`object`));n=Object.assign({},n,{allNullValues:!1,implicitKey:!p&&(d||!a),indent:s+c});let m=!1,h=!1,g=et(e,n,()=>m=!0,()=>h=!0);if(!p&&!n.inFlow&&g.length>1024){if(d)throw Error(`With simple keys, single line scalar must not span more than 1024 characters`);p=!0}if(n.inFlow){if(a||t==null)return m&&r&&r(),g===``?`?`:p?`? ${g}`:g}else if(a&&!d||t==null&&p)return g=`? ${g}`,f&&!m?g+=Me(g,n.indent,l(f)):h&&i&&i(),g;m&&(f=null),p?(f&&(g+=Me(g,n.indent,l(f))),g=`? ${g}\n${s}:`):(g=`${g}:`,f&&(g+=Me(g,n.indent,l(f))));let _,v,y;T(t)?(_=!!t.spaceBefore,v=t.commentBefore,y=t.comment):(_=!1,v=null,y=null,t&&typeof t==`object`&&(t=o.createNode(t))),n.implicitKey=!1,!p&&!f&&I(t)&&(n.indentAtStart=g.length+1),h=!1,!u&&c.length>=2&&!n.inFlow&&!p&&L(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let b=!1,x=et(t,n,()=>b=!0,()=>h=!0),S=` `;if(f||_||v){if(S=_?`
28
+ `:``,v){let e=l(v);S+=`\n${Ae(e,n.indent)}`}x===``&&!n.inFlow?S===`
29
+ `&&y&&(S=`
30
+
31
+ `):S+=`\n${n.indent}`}else if(!p&&w(t)){let e=x[0],r=x.indexOf(`
32
+ `),i=r!==-1,a=n.inFlow??t.flow??t.items.length===0;if(i||!a){let t=!1;if(i&&(e===`&`||e===`!`)){let n=x.indexOf(` `);e===`&`&&n!==-1&&n<r&&x[n+1]===`!`&&(n=x.indexOf(` `,n+1)),(n===-1||r<n)&&(t=!0)}t||(S=`\n${n.indent}`)}}else (x===``||x[0]===`
33
+ `)&&(S=``);return g+=S+x,n.inFlow?b&&r&&r():y&&!b?g+=Me(g,n.indent,l(y)):h&&i&&i(),g}var rt=n((()=>{z(),xe(),tt(),Ne()}));function it(e,t){(e===`debug`||e===`warn`)&&console.warn(t)}var at=n((()=>{}));function ot(e,t,n){if(n=e&&N(n)?n.resolve(e.doc):n,L(n))for(let r of n.items)st(e,t,r);else if(Array.isArray(n))for(let r of n)st(e,t,r);else st(e,t,n)}function st(e,t,n){let r=e&&N(n)?n.resolve(e.doc):n;if(!ee(r))throw Error(`Merge sources must be maps or map aliases`);let i=r.toJSON(null,e,Map);for(let[e,n]of i)t instanceof Map?t.has(e)||t.set(e,n):t instanceof Set?t.add(e):Object.prototype.hasOwnProperty.call(t,e)||Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0});return t}var ct,lt,ut,dt=n((()=>{z(),xe(),ct=`<<`,lt={identify:e=>e===ct||typeof e==`symbol`&&e.description===ct,default:`key`,tag:`tag:yaml.org,2002:merge`,test:/^<<$/,resolve:()=>Object.assign(new X(Symbol(ct)),{addToJSMap:ot}),stringify:()=>ct},ut=(e,t)=>(lt.identify(t)||I(t)&&(!t.type||t.type===X.PLAIN)&&lt.identify(t.value))&&e?.doc.schema.tags.some(e=>e.tag===lt.tag&&e.default)}));function ft(e,t,{key:n,value:r}){if(T(n)&&n.addToJSMap)n.addToJSMap(e,t,r);else if(ut(e,n))ot(e,t,r);else{let i=he(n,``,e);if(t instanceof Map)t.set(i,he(r,i,e));else if(t instanceof Set)t.add(i);else{let a=pt(n,i,e),o=he(r,a,e);a in t?Object.defineProperty(t,a,{value:o,writable:!0,enumerable:!0,configurable:!0}):t[a]=o}}return t}function pt(e,t,n){if(t===null)return``;if(typeof t!=`object`)return String(t);if(T(e)&&n?.doc){let t=Ze(n.doc,{});t.anchors=new Set;for(let e of n.anchors.keys())t.anchors.add(e.anchor);t.inFlow=!0,t.inStringifyKey=!0;let r=e.toString(t);if(!n.mapKeyWarned){let e=JSON.stringify(r);e.length>40&&(e=e.substring(0,36)+`..."`),it(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${e}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return r}return JSON.stringify(t)}var mt=n((()=>{at(),dt(),tt(),z(),ge()}));function ht(e,t,n){return new gt(Ce(e,void 0,n),Ce(t,void 0,n))}var gt,_t=n((()=>{Te(),rt(),mt(),z(),gt=class e{constructor(e,t=null){Object.defineProperty(this,M,{value:k}),this.key=e,this.value=t}clone(t){let{key:n,value:r}=this;return T(n)&&(n=n.clone(t)),T(r)&&(r=r.clone(t)),new e(n,r)}toJSON(e,t){return ft(t,t?.mapAsMap?new Map:{},this)}toString(e,t,n){return e?.doc?nt(this,e,t,n):JSON.stringify(this)}}}));function vt(e,t,n){return(t.inFlow??e.flow?bt:yt)(e,t,n)}function yt({comment:e,items:t},n,{blockItemPrefix:r,flowChars:i,itemIndent:a,onChompKeep:o,onComment:s}){let{indent:c,options:{commentString:l}}=n,u=Object.assign({},n,{indent:a,type:null}),d=!1,f=[];for(let e=0;e<t.length;++e){let i=t[e],o=null;if(T(i))!d&&i.spaceBefore&&f.push(``),xt(n,f,i.commentBefore,d),i.comment&&(o=i.comment);else if(F(i)){let e=T(i.key)?i.key:null;e&&(!d&&e.spaceBefore&&f.push(``),xt(n,f,e.commentBefore,d))}d=!1;let s=et(i,u,()=>o=null,()=>d=!0);o&&(s+=Me(s,a,l(o))),d&&o&&(d=!1),f.push(r+s)}let p;if(f.length===0)p=i.start+i.end;else{p=f[0];for(let e=1;e<f.length;++e){let t=f[e];p+=t?`\n${c}${t}`:`
34
+ `}}return e?(p+=`
35
+ `+Ae(l(e),c),s&&s()):d&&o&&o(),p}function bt({items:e},t,{flowChars:n,itemIndent:r}){let{indent:i,indentStep:a,flowCollectionPadding:o,options:{commentString:s}}=t;r+=a;let c=Object.assign({},t,{indent:r,inFlow:!0,type:null}),l=!1,u=0,d=[];for(let n=0;n<e.length;++n){let i=e[n],a=null;if(T(i))i.spaceBefore&&d.push(``),xt(t,d,i.commentBefore,!1),i.comment&&(a=i.comment);else if(F(i)){let e=T(i.key)?i.key:null;e&&(e.spaceBefore&&d.push(``),xt(t,d,e.commentBefore,!1),e.comment&&(l=!0));let n=T(i.value)?i.value:null;n?(n.comment&&(a=n.comment),n.commentBefore&&(l=!0)):i.value==null&&e?.comment&&(a=e.comment)}a&&(l=!0);let o=et(i,c,()=>a=null);n<e.length-1&&(o+=`,`),a&&(o+=Me(o,r,s(a))),!l&&(d.length>u||o.includes(`
36
+ `))&&(l=!0),d.push(o),u=d.length}let{start:f,end:p}=n;if(d.length===0)return f+p;if(!l){let e=d.reduce((e,t)=>e+t.length+2,2);l=t.options.lineWidth>0&&e>t.options.lineWidth}if(l){let e=f;for(let t of d)e+=t?`\n${a}${i}${t}`:`
37
+ `;return`${e}\n${i}${p}`}else return`${f}${o}${d.join(` `)}${o}${p}`}function xt({indent:e,options:{commentString:t}},n,r,i){if(r&&i&&(r=r.replace(/^\n+/,``)),r){let i=Ae(t(r),e);n.push(i.trimStart())}}var St=n((()=>{z(),tt(),Ne()}));function Ct(e,t){let n=I(t)?t.value:t;for(let r of e)if(F(r)&&(r.key===t||r.key===n||I(r.key)&&r.key.value===n))return r}var wt,Tt=n((()=>{St(),mt(),ke(),z(),_t(),xe(),wt=class extends Oe{static get tagName(){return`tag:yaml.org,2002:map`}constructor(e){super(O,e),this.items=[]}static from(e,t,n){let{keepUndefined:r,replacer:i}=n,a=new this(e),o=(e,o)=>{if(typeof i==`function`)o=i.call(t,e,o);else if(Array.isArray(i)&&!i.includes(e))return;(o!==void 0||r)&&a.items.push(ht(e,o,n))};if(t instanceof Map)for(let[e,n]of t)o(e,n);else if(t&&typeof t==`object`)for(let e of Object.keys(t))o(e,t[e]);return typeof e.sortMapEntries==`function`&&a.items.sort(e.sortMapEntries),a}add(e,t){let n;n=F(e)?e:!e||typeof e!=`object`||!(`key`in e)?new gt(e,e?.value):new gt(e.key,e.value);let r=Ct(this.items,n.key),i=this.schema?.sortMapEntries;if(r){if(!t)throw Error(`Key ${n.key} already set`);I(r.value)&&be(n.value)?r.value.value=n.value:r.value=n.value}else if(i){let e=this.items.findIndex(e=>i(n,e)<0);e===-1?this.items.push(n):this.items.splice(e,0,n)}else this.items.push(n)}delete(e){let t=Ct(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){let n=Ct(this.items,e)?.value;return(!t&&I(n)?n.value:n)??void 0}has(e){return!!Ct(this.items,e)}set(e,t){this.add(new gt(e,t),!0)}toJSON(e,t,n){let r=n?new n:t?.mapAsMap?new Map:{};t?.onCreate&&t.onCreate(r);for(let e of this.items)ft(t,r,e);return r}toString(e,t,n){if(!e)return JSON.stringify(this);for(let e of this.items)if(!F(e))throw Error(`Map items must all be pairs; found ${JSON.stringify(e)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),vt(this,e,{blockItemPrefix:``,flowChars:{start:`{`,end:`}`},itemIndent:e.indent||``,onChompKeep:n,onComment:t})}}})),Et,Dt=n((()=>{z(),Tt(),Et={collection:`map`,default:!0,nodeClass:wt,tag:`tag:yaml.org,2002:map`,resolve(e,t){return ee(e)||t(`Expected a mapping for this tag`),e},createNode:(e,t,n)=>wt.from(e,t,n)}}));function Ot(e){let t=I(e)?e.value:e;return t&&typeof t==`string`&&(t=Number(t)),typeof t==`number`&&Number.isInteger(t)&&t>=0?t:null}var kt,At=n((()=>{Te(),St(),ke(),z(),xe(),ge(),kt=class extends Oe{static get tagName(){return`tag:yaml.org,2002:seq`}constructor(e){super(j,e),this.items=[]}add(e){this.items.push(e)}delete(e){let t=Ot(e);return typeof t==`number`?this.items.splice(t,1).length>0:!1}get(e,t){let n=Ot(e);if(typeof n!=`number`)return;let r=this.items[n];return!t&&I(r)?r.value:r}has(e){let t=Ot(e);return typeof t==`number`&&t<this.items.length}set(e,t){let n=Ot(e);if(typeof n!=`number`)throw Error(`Expected a valid index, not ${e}.`);let r=this.items[n];I(r)&&be(t)?r.value=t:this.items[n]=t}toJSON(e,t){let n=[];t?.onCreate&&t.onCreate(n);let r=0;for(let e of this.items)n.push(he(e,String(r++),t));return n}toString(e,t,n){return e?vt(this,e,{blockItemPrefix:`- `,flowChars:{start:`[`,end:`]`},itemIndent:(e.indent||``)+` `,onChompKeep:n,onComment:t}):JSON.stringify(this)}static from(e,t,n){let{replacer:r}=n,i=new this(e);if(t&&Symbol.iterator in Object(t)){let e=0;for(let a of t){if(typeof r==`function`){let n=t instanceof Set?a:String(e++);a=r.call(t,n,a)}i.items.push(Ce(a,void 0,n))}}return i}}})),jt,Mt=n((()=>{z(),At(),jt={collection:`seq`,default:!0,nodeClass:kt,tag:`tag:yaml.org,2002:seq`,resolve(e,t){return L(e)||t(`Expected a sequence for this tag`),e},createNode:(e,t,n)=>kt.from(e,t,n)}})),Nt,Pt=n((()=>{Xe(),Nt={identify:e=>typeof e==`string`,default:!0,tag:`tag:yaml.org,2002:str`,resolve:e=>e,stringify(e,t,n,r){return t=Object.assign({actualString:!0},t),Ke(e,t,n,r)}}})),Ft,It=n((()=>{xe(),Ft={identify:e=>e==null,createNode:()=>new X(null),default:!0,tag:`tag:yaml.org,2002:null`,test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new X(null),stringify:({source:e},t)=>typeof e==`string`&&Ft.test.test(e)?e:t.options.nullStr}})),Lt,Rt=n((()=>{xe(),Lt={identify:e=>typeof e==`boolean`,default:!0,tag:`tag:yaml.org,2002:bool`,test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new X(e[0]===`t`||e[0]===`T`),stringify({source:e,value:t},n){return e&&Lt.test.test(e)&&t===(e[0]===`t`||e[0]===`T`)?e:t?n.options.trueStr:n.options.falseStr}}}));function zt({format:e,minFractionDigits:t,tag:n,value:r}){if(typeof r==`bigint`)return String(r);let i=typeof r==`number`?r:Number(r);if(!isFinite(i))return isNaN(i)?`.nan`:i<0?`-.inf`:`.inf`;let a=Object.is(r,-0)?`-0`:JSON.stringify(r);if(!e&&t&&(!n||n===`tag:yaml.org,2002:float`)&&/^\d/.test(a)){let e=a.indexOf(`.`);e<0&&(e=a.length,a+=`.`);let n=t-(a.length-e-1);for(;n-- >0;)a+=`0`}return a}var Bt=n((()=>{})),Vt,Ht,Ut,Wt=n((()=>{xe(),Bt(),Vt={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]===`-`?-1/0:1/0,stringify:zt},Ht={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){let t=Number(e.value);return isFinite(t)?t.toExponential():zt(e)}},Ut={identify:e=>typeof e==`number`,default:!0,tag:`tag:yaml.org,2002:float`,test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){let t=new X(parseFloat(e)),n=e.indexOf(`.`);return n!==-1&&e[e.length-1]===`0`&&(t.minFractionDigits=e.length-n-1),t},stringify:zt}}));function Gt(e,t,n){let{value:r}=e;return Kt(r)&&r>=0?n+r.toString(t):zt(e)}var Kt,qt,Jt,Yt,Xt,Zt=n((()=>{Bt(),Kt=e=>typeof e==`bigint`||Number.isInteger(e),qt=(e,t,n,{intAsBigInt:r})=>r?BigInt(e):parseInt(e.substring(t),n),Jt={identify:e=>Kt(e)&&e>=0,default:!0,tag:`tag:yaml.org,2002:int`,format:`OCT`,test:/^0o[0-7]+$/,resolve:(e,t,n)=>qt(e,2,8,n),stringify:e=>Gt(e,8,`0o`)},Yt={identify:Kt,default:!0,tag:`tag:yaml.org,2002:int`,test:/^[-+]?[0-9]+$/,resolve:(e,t,n)=>qt(e,0,10,n),stringify:zt},Xt={identify:e=>Kt(e)&&e>=0,default:!0,tag:`tag:yaml.org,2002:int`,format:`HEX`,test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,n)=>qt(e,2,16,n),stringify:e=>Gt(e,16,`0x`)}})),Qt,$t=n((()=>{Dt(),It(),Mt(),Pt(),Rt(),Wt(),Zt(),Qt=[Et,jt,Nt,Ft,Lt,Jt,Yt,Xt,Vt,Ht,Ut]}));function en(e){return typeof e==`bigint`||Number.isInteger(e)}var tn,nn,rn,an=n((()=>{xe(),Dt(),Mt(),tn=({value:e})=>JSON.stringify(e),nn=[{identify:e=>typeof e==`string`,default:!0,tag:`tag:yaml.org,2002:str`,resolve:e=>e,stringify:tn},{identify:e=>e==null,createNode:()=>new X(null),default:!0,tag:`tag:yaml.org,2002:null`,test:/^null$/,resolve:()=>null,stringify:tn},{identify:e=>typeof e==`boolean`,default:!0,tag:`tag:yaml.org,2002:bool`,test:/^true$|^false$/,resolve:e=>e===`true`,stringify:tn},{identify:en,default:!0,tag:`tag:yaml.org,2002:int`,test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>en(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:tn}],rn=[Et,jt].concat(nn,{default:!0,tag:``,test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}})})),on,sn=n((()=>{xe(),Xe(),on={identify:e=>e instanceof Uint8Array,default:!1,tag:`tag:yaml.org,2002:binary`,resolve(e,t){if(typeof atob==`function`){let t=atob(e.replace(/[\n\r]/g,``)),n=new Uint8Array(t.length);for(let e=0;e<t.length;++e)n[e]=t.charCodeAt(e);return n}else return t(`This environment does not support reading binary tags; either Buffer or atob is required`),e},stringify({comment:e,type:t,value:n},r,i,a){if(!n)return``;let o=n,s;if(typeof btoa==`function`){let e=``;for(let t=0;t<o.length;++t)e+=String.fromCharCode(o[t]);s=btoa(e)}else throw Error(`This environment does not support writing binary tags; either Buffer or btoa is required`);if(t??=X.BLOCK_LITERAL,t!==X.QUOTE_DOUBLE){let e=Math.max(r.options.lineWidth-r.indent.length,r.options.minContentWidth),n=Math.ceil(s.length/e),i=Array(n);for(let t=0,r=0;t<n;++t,r+=e)i[t]=s.substr(r,e);s=i.join(t===X.BLOCK_LITERAL?`
38
+ `:` `)}return Ke({comment:e,type:t,value:s},r,i,a)}}}));function cn(e,t){if(L(e))for(let n=0;n<e.items.length;++n){let r=e.items[n];if(!F(r)){if(ee(r)){r.items.length>1&&t(`Each pair must have its own sequence indicator`);let e=r.items[0]||new gt(new X(null));if(r.commentBefore&&(e.key.commentBefore=e.key.commentBefore?`${r.commentBefore}\n${e.key.commentBefore}`:r.commentBefore),r.comment){let t=e.value??e.key;t.comment=t.comment?`${r.comment}\n${t.comment}`:r.comment}r=e}e.items[n]=F(r)?r:new gt(r)}}else t(`Expected a sequence for this tag`);return e}function ln(e,t,n){let{replacer:r}=n,i=new kt(e);i.tag=`tag:yaml.org,2002:pairs`;let a=0;if(t&&Symbol.iterator in Object(t))for(let e of t){typeof r==`function`&&(e=r.call(t,String(a++),e));let o,s;if(Array.isArray(e))if(e.length===2)o=e[0],s=e[1];else throw TypeError(`Expected [key, value] tuple: ${e}`);else if(e&&e instanceof Object){let t=Object.keys(e);if(t.length===1)o=t[0],s=e[o];else throw TypeError(`Expected tuple with one key, not ${t.length} keys`)}else o=e;i.items.push(ht(o,s,n))}return i}var un,dn=n((()=>{z(),_t(),xe(),At(),un={collection:`seq`,default:!1,tag:`tag:yaml.org,2002:pairs`,resolve:cn,createNode:ln}})),fn,pn,mn=n((()=>{z(),ge(),Tt(),At(),dn(),fn=class e extends kt{constructor(){super(),this.add=wt.prototype.add.bind(this),this.delete=wt.prototype.delete.bind(this),this.get=wt.prototype.get.bind(this),this.has=wt.prototype.has.bind(this),this.set=wt.prototype.set.bind(this),this.tag=e.tag}toJSON(e,t){if(!t)return super.toJSON(e);let n=new Map;t?.onCreate&&t.onCreate(n);for(let e of this.items){let r,i;if(F(e)?(r=he(e.key,``,t),i=he(e.value,r,t)):r=he(e,``,t),n.has(r))throw Error(`Ordered maps must not include duplicate keys`);n.set(r,i)}return n}static from(e,t,n){let r=ln(e,t,n),i=new this;return i.items=r.items,i}},fn.tag=`tag:yaml.org,2002:omap`,pn={collection:`seq`,identify:e=>e instanceof Map,nodeClass:fn,default:!1,tag:`tag:yaml.org,2002:omap`,resolve(e,t){let n=cn(e,t),r=[];for(let{key:e}of n.items)I(e)&&(r.includes(e.value)?t(`Ordered maps must not include duplicate keys: ${e.value}`):r.push(e.value));return Object.assign(new fn,n)},createNode:(e,t,n)=>fn.from(e,t,n)}}));function hn({value:e,source:t},n){return t&&(e?gn:_n).test.test(t)?t:e?n.options.trueStr:n.options.falseStr}var gn,_n,vn=n((()=>{xe(),gn={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 X(!0),stringify:hn},_n={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 X(!1),stringify:hn}})),yn,bn,xn,Sn=n((()=>{xe(),Bt(),yn={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]===`-`?-1/0:1/0,stringify:zt},bn={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){let t=Number(e.value);return isFinite(t)?t.toExponential():zt(e)}},xn={identify:e=>typeof e==`number`,default:!0,tag:`tag:yaml.org,2002:float`,test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){let t=new X(parseFloat(e.replace(/_/g,``))),n=e.indexOf(`.`);if(n!==-1){let r=e.substring(n+1).replace(/_/g,``);r[r.length-1]===`0`&&(t.minFractionDigits=r.length)}return t},stringify:zt}}));function Cn(e,t,n,{intAsBigInt:r}){let i=e[0];if((i===`-`||i===`+`)&&(t+=1),e=e.substring(t).replace(/_/g,``),r){switch(n){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}let t=BigInt(e);return i===`-`?BigInt(-1)*t:t}let a=parseInt(e,n);return i===`-`?-1*a:a}function wn(e,t,n){let{value:r}=e;if(Tn(r)){let e=r.toString(t);return r<0?`-`+n+e.substr(1):n+e}return zt(e)}var Tn,En,Dn,On,kn,An=n((()=>{Bt(),Tn=e=>typeof e==`bigint`||Number.isInteger(e),En={identify:Tn,default:!0,tag:`tag:yaml.org,2002:int`,format:`BIN`,test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,n)=>Cn(e,2,2,n),stringify:e=>wn(e,2,`0b`)},Dn={identify:Tn,default:!0,tag:`tag:yaml.org,2002:int`,format:`OCT`,test:/^[-+]?0[0-7_]+$/,resolve:(e,t,n)=>Cn(e,1,8,n),stringify:e=>wn(e,8,`0`)},On={identify:Tn,default:!0,tag:`tag:yaml.org,2002:int`,test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,n)=>Cn(e,0,10,n),stringify:zt},kn={identify:Tn,default:!0,tag:`tag:yaml.org,2002:int`,format:`HEX`,test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,n)=>Cn(e,2,16,n),stringify:e=>wn(e,16,`0x`)}})),jn,Mn,Nn=n((()=>{z(),_t(),Tt(),jn=class e extends wt{constructor(t){super(t),this.tag=e.tag}add(e){let t;t=F(e)?e:e&&typeof e==`object`&&`key`in e&&`value`in e&&e.value===null?new gt(e.key,null):new gt(e,null),Ct(this.items,t.key)||this.items.push(t)}get(e,t){let n=Ct(this.items,e);return!t&&F(n)?I(n.key)?n.key.value:n.key:n}set(e,t){if(typeof t!=`boolean`)throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let n=Ct(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new gt(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,n);throw Error(`Set items must all have null values`)}static from(e,t,n){let{replacer:r}=n,i=new this(e);if(t&&Symbol.iterator in Object(t))for(let e of t)typeof r==`function`&&(e=r.call(t,e,e)),i.items.push(ht(e,null,n));return i}},jn.tag=`tag:yaml.org,2002:set`,Mn={collection:`map`,identify:e=>e instanceof Set,nodeClass:jn,default:!1,tag:`tag:yaml.org,2002:set`,createNode:(e,t,n)=>jn.from(e,t,n),resolve(e,t){if(ee(e)){if(e.hasAllNullValues(!0))return Object.assign(new jn,e);t(`Set items must all have null values`)}else t(`Expected a mapping for this tag`);return e}}}));function Pn(e,t){let n=e[0],r=n===`-`||n===`+`?e.substring(1):e,i=e=>t?BigInt(e):Number(e),a=r.replace(/_/g,``).split(`:`).reduce((e,t)=>e*i(60)+i(t),i(0));return n===`-`?i(-1)*a:a}function Fn(e){let{value:t}=e,n=e=>e;if(typeof t==`bigint`)n=e=>BigInt(e);else if(isNaN(t)||!isFinite(t))return zt(e);let r=``;t<0&&(r=`-`,t*=n(-1));let i=n(60),a=[t%i];return t<60?a.unshift(0):(t=(t-a[0])/i,a.unshift(t%i),t>=60&&(t=(t-a[0])/i,a.unshift(t))),r+a.map(e=>String(e).padStart(2,`0`)).join(`:`).replace(/000000\d*$/,``)}var In,Ln,Rn,zn=n((()=>{Bt(),In={identify:e=>typeof e==`bigint`||Number.isInteger(e),default:!0,tag:`tag:yaml.org,2002:int`,format:`TIME`,test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:n})=>Pn(e,n),stringify:Fn},Ln={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=>Pn(e,!1),stringify:Fn},Rn={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){let t=e.match(Rn.test);if(!t)throw Error(`!!timestamp expects a date, starting with yyyy-mm-dd`);let[,n,r,i,a,o,s]=t.map(Number),c=t[7]?Number((t[7]+`00`).substr(1,3)):0,l=Date.UTC(n,r-1,i,a||0,o||0,s||0,c),u=t[8];if(u&&u!==`Z`){let e=Pn(u,!1);Math.abs(e)<30&&(e*=60),l-=6e4*e}return new Date(l)},stringify:({value:e})=>e?.toISOString().replace(/(T00:00:00)?\.000Z$/,``)??``}})),Bn,Vn=n((()=>{Dt(),It(),Mt(),Pt(),sn(),vn(),Sn(),An(),dt(),mn(),dn(),Nn(),zn(),Bn=[Et,jt,Nt,Ft,gn,_n,En,Dn,On,kn,yn,bn,xn,on,lt,pn,un,Mn,In,Ln,Rn]}));function Hn(e,t,n){let r=Un.get(t);if(r&&!e)return n&&!r.includes(lt)?r.concat(lt):r.slice();let i=r;if(!i)if(Array.isArray(e))i=[];else{let e=Array.from(Un.keys()).filter(e=>e!==`yaml11`).map(e=>JSON.stringify(e)).join(`, `);throw Error(`Unknown schema "${t}"; use one of ${e} or define customTags array`)}if(Array.isArray(e))for(let t of e)i=i.concat(t);else typeof e==`function`&&(i=e(i.slice()));return n&&(i=i.concat(lt)),i.reduce((e,t)=>{let n=typeof t==`string`?Wn[t]:t;if(!n){let e=JSON.stringify(t),n=Object.keys(Wn).map(e=>JSON.stringify(e)).join(`, `);throw Error(`Unknown custom tag ${e}; use one of ${n}`)}return e.includes(n)||e.push(n),e},[])}var Un,Wn,Gn,Kn=n((()=>{Dt(),It(),Mt(),Pt(),Rt(),Wt(),Zt(),$t(),an(),sn(),dt(),mn(),dn(),Vn(),Nn(),zn(),Un=new Map([[`core`,Qt],[`failsafe`,[Et,jt,Nt]],[`json`,rn],[`yaml11`,Bn],[`yaml-1.1`,Bn]]),Wn={binary:on,bool:Lt,float:Ut,floatExp:Ht,floatNaN:Vt,floatTime:Ln,int:Yt,intHex:Xt,intOct:Jt,intTime:In,map:Et,merge:lt,null:Ft,omap:pn,pairs:un,seq:jt,set:Mn,timestamp:Rn},Gn={"tag:yaml.org,2002:binary":on,"tag:yaml.org,2002:merge":lt,"tag:yaml.org,2002:omap":pn,"tag:yaml.org,2002:pairs":un,"tag:yaml.org,2002:set":Mn,"tag:yaml.org,2002:timestamp":Rn}})),qn,Jn,Yn=n((()=>{z(),Dt(),Mt(),Pt(),Kn(),qn=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0,Jn=class e{constructor({compat:e,customTags:t,merge:n,resolveKnownTags:r,schema:i,sortMapEntries:a,toStringDefaults:o}){this.compat=Array.isArray(e)?Hn(e,`compat`):e?Hn(null,e):null,this.name=typeof i==`string`&&i||`core`,this.knownTags=r?Gn:{},this.tags=Hn(t,this.name,n),this.toStringOptions=o??null,Object.defineProperty(this,O,{value:Et}),Object.defineProperty(this,A,{value:Nt}),Object.defineProperty(this,j,{value:jt}),this.sortMapEntries=typeof a==`function`?a:a===!0?qn:null}clone(){let t=Object.create(e.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}}}));function Xn(e,t){let n=[],r=t.directives===!0;if(t.directives!==!1&&e.directives){let t=e.directives.toString(e);t?(n.push(t),r=!0):e.directives.docStart&&(r=!0)}r&&n.push(`---`);let i=Ze(e,t),{commentString:a}=i.options;if(e.commentBefore){n.length!==1&&n.unshift(``);let t=a(e.commentBefore);n.unshift(Ae(t,``))}let o=!1,s=null;if(e.contents){if(T(e.contents)){if(e.contents.spaceBefore&&r&&n.push(``),e.contents.commentBefore){let t=a(e.contents.commentBefore);n.push(Ae(t,``))}i.forceBlockIndent=!!e.comment,s=e.contents.comment}let t=s?void 0:()=>o=!0,c=et(e.contents,i,()=>s=null,t);s&&(c+=Me(c,``,a(s))),(c[0]===`|`||c[0]===`>`)&&n[n.length-1]===`---`?n[n.length-1]=`--- ${c}`:n.push(c)}else n.push(et(e.contents,i));if(e.directives?.docEnd)if(e.comment){let t=a(e.comment);t.includes(`
39
+ `)?(n.push(`...`),n.push(Ae(t,``))):n.push(`... ${t}`)}else n.push(`...`);else{let t=e.comment;t&&o&&(t=t.replace(/^\n+/,``)),t&&((!o||s)&&n[n.length-1]!==``&&n.push(``),n.push(Ae(a(t),``)))}return n.join(`
40
+ `)+`
41
+ `}var Zn=n((()=>{z(),tt(),Ne()}));function Qn(e){if(w(e))return!0;throw Error(`Expected a YAML collection as document contents`)}var $n,er=n((()=>{Y(),ke(),z(),_t(),ge(),Yn(),Zn(),me(),q(),Te(),de(),$n=class e{constructor(e,t,n){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,M,{value:D});let r=null;typeof t==`function`||Array.isArray(t)?r=t:n===void 0&&t&&(n=t,t=void 0);let i=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:`warn`,prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:`1.2`},n);this.options=i;let{version:a}=i;n?._directives?(this.directives=n._directives.atDocument(),this.directives.yaml.explicit&&(a=this.directives.yaml.version)):this.directives=new ue({version:a}),this.setSchema(a,n),this.contents=e===void 0?null:this.createNode(e,r,n)}clone(){let t=Object.create(e.prototype,{[M]:{value:D}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=T(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(e){Qn(this.contents)&&this.contents.add(e)}addIn(e,t){Qn(this.contents)&&this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let n=W(this);e.anchor=!t||n.has(t)?G(t||`a`,n):t}return new ye(e.anchor)}createNode(e,t,n){let r;if(typeof t==`function`)e=t.call({"":e},``,e),r=t;else if(Array.isArray(t)){let e=t.filter(e=>typeof e==`number`||e instanceof String||e instanceof Number).map(String);e.length>0&&(t=t.concat(e)),r=t}else n===void 0&&t&&(n=t,t=void 0);let{aliasDuplicateObjects:i,anchorPrefix:a,flow:o,keepUndefined:s,onTagObj:c,tag:l}=n??{},{onAnchor:u,setAnchors:d,sourceObjects:f}=pe(this,a||`a`),p={aliasDuplicateObjects:i??!0,keepUndefined:s??!1,onAnchor:u,onTagObj:c,replacer:r,schema:this.schema,sourceObjects:f},m=Ce(e,l,p);return o&&w(m)&&(m.flow=!0),d(),m}createPair(e,t,n={}){return new gt(this.createNode(e,null,n),this.createNode(t,null,n))}delete(e){return Qn(this.contents)?this.contents.delete(e):!1}deleteIn(e){return De(e)?this.contents==null?!1:(this.contents=null,!0):Qn(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return w(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){return De(e)?!t&&I(this.contents)?this.contents.value:this.contents:w(this.contents)?this.contents.getIn(e,t):void 0}has(e){return w(this.contents)?this.contents.has(e):!1}hasIn(e){return De(e)?this.contents!==void 0:w(this.contents)?this.contents.hasIn(e):!1}set(e,t){this.contents==null?this.contents=Ee(this.schema,[e],t):Qn(this.contents)&&this.contents.set(e,t)}setIn(e,t){De(e)?this.contents=t:this.contents==null?this.contents=Ee(this.schema,Array.from(e),t):Qn(this.contents)&&this.contents.setIn(e,t)}setSchema(e,t={}){typeof e==`number`&&(e=String(e));let n;switch(e){case`1.1`:this.directives?this.directives.yaml.version=`1.1`:this.directives=new ue({version:`1.1`}),n={resolveKnownTags:!1,schema:`yaml-1.1`};break;case`1.2`:case`next`:this.directives?this.directives.yaml.version=e:this.directives=new ue({version:e}),n={resolveKnownTags:!0,schema:`core`};break;case null:this.directives&&delete this.directives,n=null;break;default:{let t=JSON.stringify(e);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${t}`)}}if(t.schema instanceof Object)this.schema=t.schema;else if(n)this.schema=new Jn(Object.assign(n,t));else throw Error(`With a null YAML version, the { schema: Schema } option is required`)}toJS({json:e,jsonArg:t,mapAsMap:n,maxAliasCount:r,onAnchor:i,reviver:a}={}){let o={anchors:new Map,doc:this,keep:!e,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof r==`number`?r:100},s=he(this.contents,t??``,o);if(typeof i==`function`)for(let{count:e,res:t}of o.anchors.values())i(t,e);return typeof a==`function`?K(a,{"":s},``,s):s}toJSON(e,t){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:t})}toString(e={}){if(this.errors.length>0)throw Error(`Document with errors cannot be stringified`);if(`indent`in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){let t=JSON.stringify(e.indent);throw Error(`"indent" option must be a positive integer, not ${t}`)}return Xn(this,e)}}})),tr,nr,rr,ir,ar=n((()=>{tr=class extends Error{constructor(e,t,n,r){super(),this.name=e,this.code=n,this.message=r,this.pos=t}},nr=class extends tr{constructor(e,t,n){super(`YAMLParseError`,e,t,n)}},rr=class extends tr{constructor(e,t,n){super(`YAMLWarning`,e,t,n)}},ir=(e,t)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(e=>t.linePos(e));let{line:r,col:i}=n.linePos[0];n.message+=` at line ${r}, column ${i}`;let a=i-1,o=e.substring(t.lineStarts[r-1],t.lineStarts[r]).replace(/[\n\r]+$/,``);if(a>=60&&o.length>80){let e=Math.min(a-39,o.length-79);o=`…`+o.substring(e),a-=e-1}if(o.length>80&&(o=o.substring(0,79)+`…`),r>1&&/^ *$/.test(o.substring(0,a))){let n=e.substring(t.lineStarts[r-2],t.lineStarts[r-1]);n.length>80&&(n=n.substring(0,79)+`…
42
+ `),o=n+o}if(/[^ ]/.test(o)){let e=1,t=n.linePos[1];t?.line===r&&t.col>i&&(e=Math.max(1,Math.min(t.col-i,80-a)));let s=` `.repeat(a)+`^`.repeat(e);n.message+=`:\n\n${o}\n${s}\n`}}}));function or(e,{flow:t,indicator:n,next:r,offset:i,onError:a,parentIndent:o,startOnNewline:s}){let c=!1,l=s,u=s,d=``,f=``,p=!1,m=!1,h=null,g=null,_=null,v=null,y=null,b=null,x=null;for(let i of e)switch(m&&=(i.type!==`space`&&i.type!==`newline`&&i.type!==`comma`&&a(i.offset,`MISSING_CHAR`,`Tags and anchors must be separated from the next token by white space`),!1),h&&=(l&&i.type!==`comment`&&i.type!==`newline`&&a(h,`TAB_AS_INDENT`,`Tabs are not allowed as indentation`),null),i.type){case`space`:!t&&(n!==`doc-start`||r?.type!==`flow-collection`)&&i.source.includes(` `)&&(h=i),u=!0;break;case`comment`:{u||a(i,`MISSING_CHAR`,`Comments must be separated from other tokens by white space characters`);let e=i.source.substring(1)||` `;d?d+=f+e:d=e,f=``,l=!1;break}case`newline`:l?d?d+=i.source:(!b||n!==`seq-item-ind`)&&(c=!0):f+=i.source,l=!0,p=!0,(g||_)&&(v=i),u=!0;break;case`anchor`:g&&a(i,`MULTIPLE_ANCHORS`,`A node can have at most one anchor`),i.source.endsWith(`:`)&&a(i.offset+i.source.length-1,`BAD_ALIAS`,`Anchor ending in : is ambiguous`,!0),g=i,x??=i.offset,l=!1,u=!1,m=!0;break;case`tag`:_&&a(i,`MULTIPLE_TAGS`,`A node can have at most one tag`),_=i,x??=i.offset,l=!1,u=!1,m=!0;break;case n:(g||_)&&a(i,`BAD_PROP_ORDER`,`Anchors and tags must be after the ${i.source} indicator`),b&&a(i,`UNEXPECTED_TOKEN`,`Unexpected ${i.source} in ${t??`collection`}`),b=i,l=n===`seq-item-ind`||n===`explicit-key-ind`,u=!1;break;case`comma`:if(t){y&&a(i,`UNEXPECTED_TOKEN`,`Unexpected , in ${t}`),y=i,l=!1,u=!1;break}default:a(i,`UNEXPECTED_TOKEN`,`Unexpected ${i.type} token`),l=!1,u=!1}let S=e[e.length-1],C=S?S.offset+S.source.length:i;return m&&r&&r.type!==`space`&&r.type!==`newline`&&r.type!==`comma`&&(r.type!==`scalar`||r.source!==``)&&a(r.offset,`MISSING_CHAR`,`Tags and anchors must be separated from the next token by white space`),h&&(l&&h.indent<=o||r?.type===`block-map`||r?.type===`block-seq`)&&a(h,`TAB_AS_INDENT`,`Tabs are not allowed as indentation`),{comma:y,found:b,spaceBefore:c,comment:d,hasNewline:p,anchor:g,tag:_,newlineAfterProp:v,end:C,start:x??C}}var sr=n((()=>{}));function cr(e){if(!e)return null;switch(e.type){case`alias`:case`scalar`:case`double-quoted-scalar`:case`single-quoted-scalar`:if(e.source.includes(`
43
+ `))return!0;if(e.end){for(let t of e.end)if(t.type===`newline`)return!0}return!1;case`flow-collection`:for(let t of e.items){for(let e of t.start)if(e.type===`newline`)return!0;if(t.sep){for(let e of t.sep)if(e.type===`newline`)return!0}if(cr(t.key)||cr(t.value))return!0}return!1;default:return!0}}var lr=n((()=>{}));function ur(e,t,n){if(t?.type===`flow-collection`){let r=t.end[0];r.indent===e&&(r.source===`]`||r.source===`}`)&&cr(t)&&n(r,`BAD_INDENT`,`Flow end indicator should be more indented than parent`,!0)}}var dr=n((()=>{lr()}));function fr(e,t,n){let{uniqueKeys:r}=e.options;if(r===!1)return!1;let i=typeof r==`function`?r:(e,t)=>e===t||I(e)&&I(t)&&e.value===t.value;return t.some(e=>i(e.key,n))}var pr=n((()=>{z()}));function mr({composeNode:e,composeEmptyNode:t},n,r,i,a){let o=new(a?.nodeClass??wt)(n.schema);n.atRoot&&=!1;let s=r.offset,c=null;for(let a of r.items){let{start:l,key:u,sep:d,value:f}=a,p=or(l,{indicator:`explicit-key-ind`,next:u??d?.[0],offset:s,onError:i,parentIndent:r.indent,startOnNewline:!0}),m=!p.found;if(m){if(u&&(u.type===`block-seq`?i(s,`BLOCK_AS_IMPLICIT_KEY`,`A block sequence may not be used as an implicit map key`):`indent`in u&&u.indent!==r.indent&&i(s,`BAD_INDENT`,hr)),!p.anchor&&!p.tag&&!d){c=p.end,p.comment&&(o.comment?o.comment+=`
44
+ `+p.comment:o.comment=p.comment);continue}(p.newlineAfterProp||cr(u))&&i(u??l[l.length-1],`MULTILINE_IMPLICIT_KEY`,`Implicit keys need to be on a single line`)}else p.found?.indent!==r.indent&&i(s,`BAD_INDENT`,hr);n.atKey=!0;let h=p.end,g=u?e(n,u,p,i):t(n,h,l,null,p,i);n.schema.compat&&ur(r.indent,u,i),n.atKey=!1,fr(n,o.items,g)&&i(h,`DUPLICATE_KEY`,`Map keys must be unique`);let _=or(d??[],{indicator:`map-value-ind`,next:f,offset:g.range[2],onError:i,parentIndent:r.indent,startOnNewline:!u||u.type===`block-scalar`});if(s=_.end,_.found){m&&(f?.type===`block-map`&&!_.hasNewline&&i(s,`BLOCK_AS_IMPLICIT_KEY`,`Nested mappings are not allowed in compact mappings`),n.options.strict&&p.start<_.found.offset-1024&&i(g.range,`KEY_OVER_1024_CHARS`,`The : indicator must be at most 1024 chars after the start of an implicit block mapping key`));let c=f?e(n,f,_,i):t(n,s,d,null,_,i);n.schema.compat&&ur(r.indent,f,i),s=c.range[2];let l=new gt(g,c);n.options.keepSourceTokens&&(l.srcToken=a),o.items.push(l)}else{m&&i(g.range,`MISSING_CHAR`,`Implicit map keys need to be followed by map values`),_.comment&&(g.comment?g.comment+=`
45
+ `+_.comment:g.comment=_.comment);let e=new gt(g);n.options.keepSourceTokens&&(e.srcToken=a),o.items.push(e)}}return c&&c<s&&i(c,`IMPOSSIBLE`,`Map comment with trailing content`),o.range=[r.offset,s,c??s],o}var hr,gr=n((()=>{_t(),Tt(),sr(),lr(),dr(),pr(),hr=`All mapping items must start at the same column`}));function _r({composeNode:e,composeEmptyNode:t},n,r,i,a){let o=new(a?.nodeClass??kt)(n.schema);n.atRoot&&=!1,n.atKey&&=!1;let s=r.offset,c=null;for(let{start:a,value:l}of r.items){let u=or(a,{indicator:`seq-item-ind`,next:l,offset:s,onError:i,parentIndent:r.indent,startOnNewline:!0});if(!u.found)if(u.anchor||u.tag||l)l?.type===`block-seq`?i(u.end,`BAD_INDENT`,`All sequence items must start at the same column`):i(s,`MISSING_CHAR`,`Sequence item without - indicator`);else{c=u.end,u.comment&&(o.comment=u.comment);continue}let d=l?e(n,l,u,i):t(n,u.end,a,null,u,i);n.schema.compat&&ur(r.indent,l,i),s=d.range[2],o.items.push(d)}return o.range=[r.offset,s,c??s],o}var vr=n((()=>{At(),sr(),dr()}));function yr(e,t,n,r){let i=``;if(e){let a=!1,o=``;for(let s of e){let{source:e,type:c}=s;switch(c){case`space`:a=!0;break;case`comment`:{n&&!a&&r(s,`MISSING_CHAR`,`Comments must be separated from other tokens by white space characters`);let t=e.substring(1)||` `;i?i+=o+t:i=t,o=``;break}case`newline`:i&&(o+=e),a=!0;break;default:r(s,`UNEXPECTED_TOKEN`,`Unexpected ${c} at node end`)}t+=e.length}}return{comment:i,offset:t}}var br=n((()=>{}));function xr({composeNode:e,composeEmptyNode:t},n,r,i,a){let o=r.start.source===`{`,s=o?`flow map`:`flow sequence`,c=new(a?.nodeClass??(o?wt:kt))(n.schema);c.flow=!0;let l=n.atRoot;l&&(n.atRoot=!1),n.atKey&&=!1;let u=r.offset+r.start.source.length;for(let a=0;a<r.items.length;++a){let l=r.items[a],{start:d,key:f,sep:p,value:m}=l,h=or(d,{flow:s,indicator:`explicit-key-ind`,next:f??p?.[0],offset:u,onError:i,parentIndent:r.indent,startOnNewline:!1});if(!h.found){if(!h.anchor&&!h.tag&&!p&&!m){a===0&&h.comma?i(h.comma,`UNEXPECTED_TOKEN`,`Unexpected , in ${s}`):a<r.items.length-1&&i(h.start,`UNEXPECTED_TOKEN`,`Unexpected empty item in ${s}`),h.comment&&(c.comment?c.comment+=`
46
+ `+h.comment:c.comment=h.comment),u=h.end;continue}!o&&n.options.strict&&cr(f)&&i(f,`MULTILINE_IMPLICIT_KEY`,`Implicit keys of flow sequence pairs need to be on a single line`)}if(a===0)h.comma&&i(h.comma,`UNEXPECTED_TOKEN`,`Unexpected , in ${s}`);else if(h.comma||i(h.start,`MISSING_CHAR`,`Missing , between ${s} items`),h.comment){let e=``;loop:for(let t of d)switch(t.type){case`comma`:case`space`:break;case`comment`:e=t.source.substring(1);break loop;default:break loop}if(e){let t=c.items[c.items.length-1];F(t)&&(t=t.value??t.key),t.comment?t.comment+=`
47
+ `+e:t.comment=e,h.comment=h.comment.substring(e.length+1)}}if(!o&&!p&&!h.found){let r=m?e(n,m,h,i):t(n,h.end,p,null,h,i);c.items.push(r),u=r.range[2],Cr(m)&&i(r.range,`BLOCK_IN_FLOW`,Sr)}else{n.atKey=!0;let a=h.end,g=f?e(n,f,h,i):t(n,a,d,null,h,i);Cr(f)&&i(g.range,`BLOCK_IN_FLOW`,Sr),n.atKey=!1;let _=or(p??[],{flow:s,indicator:`map-value-ind`,next:m,offset:g.range[2],onError:i,parentIndent:r.indent,startOnNewline:!1});if(_.found){if(!o&&!h.found&&n.options.strict){if(p)for(let e of p){if(e===_.found)break;if(e.type===`newline`){i(e,`MULTILINE_IMPLICIT_KEY`,`Implicit keys of flow sequence pairs need to be on a single line`);break}}h.start<_.found.offset-1024&&i(_.found,`KEY_OVER_1024_CHARS`,`The : indicator must be at most 1024 chars after the start of an implicit flow sequence key`)}}else m&&(`source`in m&&m.source?.[0]===`:`?i(m,`MISSING_CHAR`,`Missing space after : in ${s}`):i(_.start,`MISSING_CHAR`,`Missing , or : between ${s} items`));let v=m?e(n,m,_,i):_.found?t(n,_.end,p,null,_,i):null;v?Cr(m)&&i(v.range,`BLOCK_IN_FLOW`,Sr):_.comment&&(g.comment?g.comment+=`
48
+ `+_.comment:g.comment=_.comment);let y=new gt(g,v);if(n.options.keepSourceTokens&&(y.srcToken=l),o){let e=c;fr(n,e.items,g)&&i(a,`DUPLICATE_KEY`,`Map keys must be unique`),e.items.push(y)}else{let e=new wt(n.schema);e.flow=!0,e.items.push(y);let t=(v??g).range;e.range=[g.range[0],t[1],t[2]],c.items.push(e)}u=v?v.range[2]:_.end}}let d=o?`}`:`]`,[f,...p]=r.end,m=u;if(f?.source===d)m=f.offset+f.source.length;else{let e=s[0].toUpperCase()+s.substring(1),t=l?`${e} must end with a ${d}`:`${e} in block collection must be sufficiently indented and end with a ${d}`;i(u,l?`MISSING_CHAR`:`BAD_INDENT`,t),f&&f.source.length!==1&&p.unshift(f)}if(p.length>0){let e=yr(p,m,n.options.strict,i);e.comment&&(c.comment?c.comment+=`
49
+ `+e.comment:c.comment=e.comment),c.range=[r.offset,m,e.offset]}else c.range=[r.offset,m,m];return c}var Sr,Cr,wr=n((()=>{z(),_t(),Tt(),At(),br(),sr(),lr(),pr(),Sr=`Block collections are not allowed within flow collections`,Cr=e=>e&&(e.type===`block-map`||e.type===`block-seq`)}));function Tr(e,t,n,r,i,a){let o=n.type===`block-map`?mr(e,t,n,r,a):n.type===`block-seq`?_r(e,t,n,r,a):xr(e,t,n,r,a),s=o.constructor;return i===`!`||i===s.tagName?(o.tag=s.tagName,o):(i&&(o.tag=i),o)}function Z(e,t,n,r,i){let a=r.tag,o=a?t.directives.tagName(a.source,e=>i(a,`TAG_RESOLVE_FAILED`,e)):null;if(n.type===`block-seq`){let{anchor:e,newlineAfterProp:t}=r,n=e&&a?e.offset>a.offset?e:a:e??a;n&&(!t||t.offset<n.offset)&&i(n,`MISSING_CHAR`,`Missing newline after block sequence props`)}let s=n.type===`block-map`?`map`:n.type===`block-seq`?`seq`:n.start.source===`{`?`map`:`seq`;if(!a||!o||o===`!`||o===wt.tagName&&s===`map`||o===kt.tagName&&s===`seq`)return Tr(e,t,n,i,o);let c=t.schema.tags.find(e=>e.tag===o&&e.collection===s);if(!c){let r=t.schema.knownTags[o];if(r?.collection===s)t.schema.tags.push(Object.assign({},r,{default:!1})),c=r;else return r?i(a,`BAD_COLLECTION_TYPE`,`${r.tag} used for ${s} collection, but expects ${r.collection??`scalar`}`,!0):i(a,`TAG_RESOLVE_FAILED`,`Unresolved tag: ${o}`,!0),Tr(e,t,n,i,o)}let l=Tr(e,t,n,i,o,c),u=c.resolve?.(l,e=>i(a,`TAG_RESOLVE_FAILED`,e),t.options)??l,d=T(u)?u:new X(u);return d.range=l.range,d.tag=o,c?.format&&(d.format=c.format),d}var Er=n((()=>{z(),xe(),Tt(),At(),gr(),vr(),wr()}));function Dr(e,t,n){let r=t.offset,i=Or(t,e.options.strict,n);if(!i)return{value:``,type:null,comment:``,range:[r,r,r]};let a=i.mode===`>`?X.BLOCK_FOLDED:X.BLOCK_LITERAL,o=t.source?kr(t.source):[],s=o.length;for(let e=o.length-1;e>=0;--e){let t=o[e][1];if(t===``||t===`\r`)s=e;else break}if(s===0){let e=i.chomp===`+`&&o.length>0?`
50
+ `.repeat(Math.max(1,o.length-1)):``,n=r+i.length;return t.source&&(n+=t.source.length),{value:e,type:a,comment:i.comment,range:[r,n,n]}}let c=t.indent+i.indent,l=t.offset+i.length,u=0;for(let t=0;t<s;++t){let[r,a]=o[t];if(a===``||a===`\r`)i.indent===0&&r.length>c&&(c=r.length);else{r.length<c&&n(l+r.length,`MISSING_CHAR`,`Block scalars with more-indented leading empty lines must use an explicit indentation indicator`),i.indent===0&&(c=r.length),u=t,c===0&&!e.atRoot&&n(l,`BAD_INDENT`,`Block scalar values in collections must be indented`);break}l+=r.length+a.length+1}for(let e=o.length-1;e>=s;--e)o[e][0].length>c&&(s=e+1);let d=``,f=``,p=!1;for(let e=0;e<u;++e)d+=o[e][0].slice(c)+`
51
+ `;for(let e=u;e<s;++e){let[t,r]=o[e];l+=t.length+r.length+1;let s=r[r.length-1]===`\r`;if(s&&(r=r.slice(0,-1)),r&&t.length<c){let e=`Block scalar lines must not be less indented than their ${i.indent?`explicit indentation indicator`:`first line`}`;n(l-r.length-(s?2:1),`BAD_INDENT`,e),t=``}a===X.BLOCK_LITERAL?(d+=f+t.slice(c)+r,f=`
52
+ `):t.length>c||r[0]===` `?(f===` `?f=`
53
+ `:!p&&f===`
54
+ `&&(f=`
55
+
56
+ `),d+=f+t.slice(c)+r,f=`
57
+ `,p=!0):r===``?f===`
58
+ `?d+=`
59
+ `:f=`
60
+ `:(d+=f+r,f=` `,p=!1)}switch(i.chomp){case`-`:break;case`+`:for(let e=s;e<o.length;++e)d+=`
61
+ `+o[e][0].slice(c);d[d.length-1]!==`
62
+ `&&(d+=`
63
+ `);break;default:d+=`
64
+ `}let m=r+i.length+t.source.length;return{value:d,type:a,comment:i.comment,range:[r,m,m]}}function Or({offset:e,props:t},n,r){if(t[0].type!==`block-scalar-header`)return r(t[0],`IMPOSSIBLE`,`Block scalar header not found`),null;let{source:i}=t[0],a=i[0],o=0,s=``,c=-1;for(let t=1;t<i.length;++t){let n=i[t];if(!s&&(n===`-`||n===`+`))s=n;else{let r=Number(n);!o&&r?o=r:c===-1&&(c=e+t)}}c!==-1&&r(c,`UNEXPECTED_TOKEN`,`Block scalar header includes extra characters: ${i}`);let l=!1,u=``,d=i.length;for(let e=1;e<t.length;++e){let i=t[e];switch(i.type){case`space`:l=!0;case`newline`:d+=i.source.length;break;case`comment`:n&&!l&&r(i,`MISSING_CHAR`,`Comments must be separated from other tokens by white space characters`),d+=i.source.length,u=i.source.substring(1);break;case`error`:r(i,`UNEXPECTED_TOKEN`,i.message),d+=i.source.length;break;default:{r(i,`UNEXPECTED_TOKEN`,`Unexpected token in block scalar header: ${i.type}`);let e=i.source;e&&typeof e==`string`&&(d+=e.length)}}}return{mode:a,indent:o,chomp:s,comment:u,length:d}}function kr(e){let t=e.split(/\n( *)/),n=t[0],r=n.match(/^( *)/),i=[r?.[1]?[r[1],n.slice(r[1].length)]:[``,n]];for(let e=1;e<t.length;e+=2)i.push([t[e],t[e+1]]);return i}var Ar=n((()=>{xe()}));function jr(e,t,n){let{offset:r,type:i,source:a,end:o}=e,s,c,l=(e,t,i)=>n(r+e,t,i);switch(i){case`scalar`:s=X.PLAIN,c=Mr(a,l);break;case`single-quoted-scalar`:s=X.QUOTE_SINGLE,c=Nr(a,l);break;case`double-quoted-scalar`:s=X.QUOTE_DOUBLE,c=Fr(a,l);break;default:return n(e,`UNEXPECTED_TOKEN`,`Expected a flow scalar value, but found: ${i}`),{value:``,type:null,comment:``,range:[r,r+a.length,r+a.length]}}let u=r+a.length,d=yr(o,u,t,n);return{value:c,type:s,comment:d.comment,range:[r,u,d.offset]}}function Mr(e,t){let n=``;switch(e[0]){case` `:n=`a tab character`;break;case`,`:n=`flow indicator character ,`;break;case`%`:n=`directive indicator character %`;break;case`|`:case`>`:n=`block scalar indicator ${e[0]}`;break;case`@`:case"`":n=`reserved character ${e[0]}`;break}return n&&t(0,`BAD_SCALAR_START`,`Plain value cannot start with ${n}`),Pr(e)}function Nr(e,t){return(e[e.length-1]!==`'`||e.length===1)&&t(e.length,`MISSING_CHAR`,`Missing closing 'quote`),Pr(e.slice(1,-1)).replace(/''/g,`'`)}function Pr(e){let t,n;try{t=RegExp(`(.*?)(?<![ ])[ ]*\r?
65
+ `,`sy`),n=RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
66
+ `,`sy`)}catch{t=/(.*?)[ \t]*\r?\n/sy,n=/[ \t]*(.*?)[ \t]*\r?\n/sy}let r=t.exec(e);if(!r)return e;let i=r[1],a=` `,o=t.lastIndex;for(n.lastIndex=o;r=n.exec(e);)r[1]===``?a===`
67
+ `?i+=a:a=`
68
+ `:(i+=a+r[1],a=` `),o=n.lastIndex;let s=/[ \t]*(.*)/sy;return s.lastIndex=o,r=s.exec(e),i+a+(r?.[1]??``)}function Fr(e,t){let n=``;for(let r=1;r<e.length-1;++r){let i=e[r];if(!(i===`\r`&&e[r+1]===`
69
+ `))if(i===`
70
+ `){let{fold:t,offset:i}=Ir(e,r);n+=t,r=i}else if(i===`\\`){let i=e[++r],a=Rr[i];if(a)n+=a;else if(i===`
71
+ `)for(i=e[r+1];i===` `||i===` `;)i=e[++r+1];else if(i===`\r`&&e[r+1]===`
72
+ `)for(i=e[++r+1];i===` `||i===` `;)i=e[++r+1];else if(i===`x`||i===`u`||i===`U`){let a={x:2,u:4,U:8}[i];n+=Lr(e,r+1,a,t),r+=a}else{let i=e.substr(r-1,2);t(r-1,`BAD_DQ_ESCAPE`,`Invalid escape sequence ${i}`),n+=i}}else if(i===` `||i===` `){let t=r,a=e[r+1];for(;a===` `||a===` `;)a=e[++r+1];a!==`
73
+ `&&!(a===`\r`&&e[r+2]===`
74
+ `)&&(n+=r>t?e.slice(t,r+1):i)}else n+=i}return(e[e.length-1]!==`"`||e.length===1)&&t(e.length,`MISSING_CHAR`,`Missing closing "quote`),n}function Ir(e,t){let n=``,r=e[t+1];for(;(r===` `||r===` `||r===`
75
+ `||r===`\r`)&&!(r===`\r`&&e[t+2]!==`
76
+ `);)r===`
77
+ `&&(n+=`
78
+ `),t+=1,r=e[t+1];return n||=` `,{fold:n,offset:t}}function Lr(e,t,n,r){let i=e.substr(t,n),a=i.length===n&&/^[0-9a-fA-F]+$/.test(i)?parseInt(i,16):NaN;if(isNaN(a)){let i=e.substr(t-2,n+2);return r(t-2,`BAD_DQ_ESCAPE`,`Invalid escape sequence ${i}`),i}return String.fromCodePoint(a)}var Rr,zr=n((()=>{xe(),br(),Rr={0:`\0`,a:`\x07`,b:`\b`,e:`\x1B`,f:`\f`,n:`
79
+ `,r:`\r`,t:` `,v:`\v`,N:`…`,_:`\xA0`,L:`\u2028`,P:`\u2029`," ":` `,'"':`"`,"/":`/`,"\\":`\\`," ":` `}}));function Br(e,t,n,r){let{value:i,type:a,comment:o,range:s}=t.type===`block-scalar`?Dr(e,t,r):jr(t,e.options.strict,r),c=n?e.directives.tagName(n.source,e=>r(n,`TAG_RESOLVE_FAILED`,e)):null,l;l=e.options.stringKeys&&e.atKey?e.schema[A]:c?Vr(e.schema,i,c,n,r):t.type===`scalar`?Hr(e,i,t,r):e.schema[A];let u;try{let a=l.resolve(i,e=>r(n??t,`TAG_RESOLVE_FAILED`,e),e.options);u=I(a)?a:new X(a)}catch(e){let a=e instanceof Error?e.message:String(e);r(n??t,`TAG_RESOLVE_FAILED`,a),u=new X(i)}return u.range=s,u.source=i,a&&(u.type=a),c&&(u.tag=c),l.format&&(u.format=l.format),o&&(u.comment=o),u}function Vr(e,t,n,r,i){if(n===`!`)return e[A];let a=[];for(let t of e.tags)if(!t.collection&&t.tag===n)if(t.default&&t.test)a.push(t);else return t;for(let e of a)if(e.test?.test(t))return e;let o=e.knownTags[n];return o&&!o.collection?(e.tags.push(Object.assign({},o,{default:!1,test:void 0})),o):(i(r,`TAG_RESOLVE_FAILED`,`Unresolved tag: ${n}`,n!==`tag:yaml.org,2002:str`),e[A])}function Hr({atKey:e,directives:t,schema:n},r,i,a){let o=n.tags.find(t=>(t.default===!0||e&&t.default===`key`)&&t.test?.test(r))||n[A];if(n.compat){let e=n.compat.find(e=>e.default&&e.test?.test(r))??n[A];o.tag!==e.tag&&a(i,`TAG_RESOLVE_FAILED`,`Value may be parsed as either ${t.tagString(o.tag)} or ${t.tagString(e.tag)}`,!0)}return o}var Ur=n((()=>{z(),xe(),Ar(),zr()}));function Wr(e,t,n){if(t){n??=t.length;for(let r=n-1;r>=0;--r){let n=t[r];switch(n.type){case`space`:case`comment`:case`newline`:e-=n.source.length;continue}for(n=t[++r];n?.type===`space`;)e+=n.source.length,n=t[++r];break}}return e}var Gr=n((()=>{}));function Kr(e,t,n,r){let i=e.atKey,{spaceBefore:a,comment:o,anchor:s,tag:c}=n,l,u=!0;switch(t.type){case`alias`:l=Jr(e,t,r),(s||c)&&r(t,`ALIAS_PROPS`,`An alias node must not specify any properties`);break;case`scalar`:case`single-quoted-scalar`:case`double-quoted-scalar`:case`block-scalar`:l=Br(e,t,c,r),s&&(l.anchor=s.source.substring(1));break;case`block-map`:case`block-seq`:case`flow-collection`:l=Z(Yr,e,t,n,r),s&&(l.anchor=s.source.substring(1));break;default:r(t,`UNEXPECTED_TOKEN`,t.type===`error`?t.message:`Unsupported token (type: ${t.type})`),l=qr(e,t.offset,void 0,null,n,r),u=!1}return s&&l.anchor===``&&r(s,`BAD_ALIAS`,`Anchor cannot be an empty string`),i&&e.options.stringKeys&&(!I(l)||typeof l.value!=`string`||l.tag&&l.tag!==`tag:yaml.org,2002:str`)&&r(c??t,`NON_STRING_KEY`,`With stringKeys, all keys must be strings`),a&&(l.spaceBefore=!0),o&&(t.type===`scalar`&&t.source===``?l.comment=o:l.commentBefore=o),e.options.keepSourceTokens&&u&&(l.srcToken=t),l}function qr(e,t,n,r,{spaceBefore:i,comment:a,anchor:o,tag:s,end:c},l){let u=Br(e,{type:`scalar`,offset:Wr(t,n,r),indent:-1,source:``},s,l);return o&&(u.anchor=o.source.substring(1),u.anchor===``&&l(o,`BAD_ALIAS`,`Anchor cannot be an empty string`)),i&&(u.spaceBefore=!0),a&&(u.comment=a,u.range[2]=c),u}function Jr({options:e},{offset:t,source:n,end:r},i){let a=new ye(n.substring(1));a.source===``&&i(t,`BAD_ALIAS`,`Alias cannot be an empty string`),a.source.endsWith(`:`)&&i(t+n.length-1,`BAD_ALIAS`,`Alias ending in : is ambiguous`,!0);let o=t+n.length,s=yr(r,o,e.strict,i);return a.range=[t,o,s.offset],s.comment&&(a.comment=s.comment),a}var Yr,Xr=n((()=>{Y(),z(),Er(),Ur(),br(),Gr(),Yr={composeNode:Kr,composeEmptyNode:qr}}));function Zr(e,t,{offset:n,start:r,value:i,end:a},o){let s=new $n(void 0,Object.assign({_directives:t},e)),c={atKey:!1,atRoot:!0,directives:s.directives,options:s.options,schema:s.schema},l=or(r,{indicator:`doc-start`,next:i??a?.[0],offset:n,onError:o,parentIndent:0,startOnNewline:!0});l.found&&(s.directives.docStart=!0,i&&(i.type===`block-map`||i.type===`block-seq`)&&!l.hasNewline&&o(l.end,`MISSING_CHAR`,`Block collection cannot start on same line with directives-end marker`)),s.contents=i?Kr(c,i,l,o):qr(c,l.end,r,null,l,o);let u=s.contents.range[2],d=yr(a,u,!1,o);return d.comment&&(s.comment=d.comment),s.range=[n,u,d.offset],s}var Qr=n((()=>{er(),Xr(),br(),sr()}));function $r(e){if(typeof e==`number`)return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];let{offset:t,source:n}=e;return[t,t+(typeof n==`string`?n.length:1)]}function ei(e){let t=``,n=!1,r=!1;for(let i=0;i<e.length;++i){let a=e[i];switch(a[0]){case`#`:t+=(t===``?``:r?`
80
+
81
+ `:`
82
+ `)+(a.substring(1)||` `),n=!0,r=!1;break;case`%`:e[i+1]?.[0]!==`#`&&(i+=1),n=!1;break;default:n||(r=!0),n=!1}}return{comment:t,afterEmptyLine:r}}var ti,ni=n((()=>{de(),er(),ar(),z(),Qr(),br(),ti=class{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(e,t,n,r)=>{let i=$r(e);r?this.warnings.push(new rr(i,t,n)):this.errors.push(new nr(i,t,n))},this.directives=new ue({version:e.version||`1.2`}),this.options=e}decorate(e,t){let{comment:n,afterEmptyLine:r}=ei(this.prelude);if(n){let i=e.contents;if(t)e.comment=e.comment?`${e.comment}\n${n}`:n;else if(r||e.directives.docStart||!i)e.commentBefore=n;else if(w(i)&&!i.flow&&i.items.length>0){let e=i.items[0];F(e)&&(e=e.key);let t=e.commentBefore;e.commentBefore=t?`${n}\n${t}`:n}else{let e=i.commentBefore;i.commentBefore=e?`${n}\n${e}`:n}}t?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:ei(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,t=!1,n=-1){for(let t of e)yield*this.next(t);yield*this.end(t,n)}*next(e){switch(e.type){case`directive`:this.directives.add(e.source,(t,n,r)=>{let i=$r(e);i[0]+=t,this.onError(i,`BAD_DIRECTIVE`,n,r)}),this.prelude.push(e.source),this.atDirectives=!0;break;case`document`:{let t=Zr(this.options,this.directives,e,this.onError);this.atDirectives&&!t.directives.docStart&&this.onError(e,`MISSING_CHAR`,`Missing directives-end/doc-start indicator line`),this.decorate(t,!1),this.doc&&(yield this.doc),this.doc=t,this.atDirectives=!1;break}case`byte-order-mark`:case`space`:break;case`comment`:case`newline`:this.prelude.push(e.source);break;case`error`:{let t=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,n=new nr($r(e),`UNEXPECTED_TOKEN`,t);this.atDirectives||!this.doc?this.errors.push(n):this.doc.errors.push(n);break}case`doc-end`:{if(!this.doc){this.errors.push(new nr($r(e),`UNEXPECTED_TOKEN`,`Unexpected doc-end without preceding document`));break}this.doc.directives.docEnd=!0;let t=yr(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),t.comment){let e=this.doc.comment;this.doc.comment=e?`${e}\n${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new nr($r(e),`UNEXPECTED_TOKEN`,`Unsupported token ${e.type}`))}}*end(e=!1,t=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let e=new $n(void 0,Object.assign({_directives:this.directives},this.options));this.atDirectives&&this.onError(t,`MISSING_CHAR`,`Missing directives-end indicator line`),e.range=[0,t,t],this.decorate(e,!1),yield e}}}}));function ri(e,t=!0,n){if(e){let r=(e,t,r)=>{let i=typeof e==`number`?e:Array.isArray(e)?e[0]:e.offset;if(n)n(i,t,r);else throw new nr([i,i+1],t,r)};switch(e.type){case`scalar`:case`single-quoted-scalar`:case`double-quoted-scalar`:return jr(e,t,r);case`block-scalar`:return Dr({options:{strict:t}},e,r)}}return null}function ii(e,t){let{implicitKey:n=!1,indent:r,inFlow:i=!1,offset:a=-1,type:o=`PLAIN`}=t,s=Ke({type:o,value:e},{implicitKey:n,indent:r>0?` `.repeat(r):``,inFlow:i,options:{blockQuote:!0,lineWidth:-1}}),c=t.end??[{type:`newline`,offset:-1,indent:r,source:`
83
+ `}];switch(s[0]){case`|`:case`>`:{let e=s.indexOf(`
84
+ `),t=s.substring(0,e),n=s.substring(e+1)+`
85
+ `,i=[{type:`block-scalar-header`,offset:a,indent:r,source:t}];return si(i,c)||i.push({type:`newline`,offset:-1,indent:r,source:`
86
+ `}),{type:`block-scalar`,offset:a,indent:r,props:i,source:n}}case`"`:return{type:`double-quoted-scalar`,offset:a,indent:r,source:s,end:c};case`'`:return{type:`single-quoted-scalar`,offset:a,indent:r,source:s,end:c};default:return{type:`scalar`,offset:a,indent:r,source:s,end:c}}}function ai(e,t,n={}){let{afterKey:r=!1,implicitKey:i=!1,inFlow:a=!1,type:o}=n,s=`indent`in e?e.indent:null;if(r&&typeof s==`number`&&(s+=2),!o)switch(e.type){case`single-quoted-scalar`:o=`QUOTE_SINGLE`;break;case`double-quoted-scalar`:o=`QUOTE_DOUBLE`;break;case`block-scalar`:{let t=e.props[0];if(t.type!==`block-scalar-header`)throw Error(`Invalid block scalar header`);o=t.source[0]===`>`?`BLOCK_FOLDED`:`BLOCK_LITERAL`;break}default:o=`PLAIN`}let c=Ke({type:o,value:t},{implicitKey:i||s===null,indent:s!==null&&s>0?` `.repeat(s):``,inFlow:a,options:{blockQuote:!0,lineWidth:-1}});switch(c[0]){case`|`:case`>`:oi(e,c);break;case`"`:ci(e,c,`double-quoted-scalar`);break;case`'`:ci(e,c,`single-quoted-scalar`);break;default:ci(e,c,`scalar`)}}function oi(e,t){let n=t.indexOf(`
87
+ `),r=t.substring(0,n),i=t.substring(n+1)+`
88
+ `;if(e.type===`block-scalar`){let t=e.props[0];if(t.type!==`block-scalar-header`)throw Error(`Invalid block scalar header`);t.source=r,e.source=i}else{let{offset:t}=e,n=`indent`in e?e.indent:-1,a=[{type:`block-scalar-header`,offset:t,indent:n,source:r}];si(a,`end`in e?e.end:void 0)||a.push({type:`newline`,offset:-1,indent:n,source:`
89
+ `});for(let t of Object.keys(e))t!==`type`&&t!==`offset`&&delete e[t];Object.assign(e,{type:`block-scalar`,indent:n,props:a,source:i})}}function si(e,t){if(t)for(let n of t)switch(n.type){case`space`:case`comment`:e.push(n);break;case`newline`:return e.push(n),!0}return!1}function ci(e,t,n){switch(e.type){case`scalar`:case`double-quoted-scalar`:case`single-quoted-scalar`:e.type=n,e.source=t;break;case`block-scalar`:{let r=e.props.slice(1),i=t.length;e.props[0].type===`block-scalar-header`&&(i-=e.props[0].source.length);for(let e of r)e.offset+=i;delete e.props,Object.assign(e,{type:n,source:t,end:r});break}case`block-map`:case`block-seq`:{let r={type:`newline`,offset:e.offset+t.length,indent:e.indent,source:`
90
+ `};delete e.items,Object.assign(e,{type:n,source:t,end:[r]});break}default:{let r=`indent`in e?e.indent:-1,i=`end`in e&&Array.isArray(e.end)?e.end.filter(e=>e.type===`space`||e.type===`comment`||e.type===`newline`):[];for(let t of Object.keys(e))t!==`type`&&t!==`offset`&&delete e[t];Object.assign(e,{type:n,indent:r,source:t,end:i})}}}var li=n((()=>{Ar(),zr(),ar(),Xe()}));function ui(e){switch(e.type){case`block-scalar`:{let t=``;for(let n of e.props)t+=ui(n);return t+e.source}case`block-map`:case`block-seq`:{let t=``;for(let n of e.items)t+=di(n);return t}case`flow-collection`:{let t=e.start.source;for(let n of e.items)t+=di(n);for(let n of e.end)t+=n.source;return t}case`document`:{let t=di(e);if(e.end)for(let n of e.end)t+=n.source;return t}default:{let t=e.source;if(`end`in e&&e.end)for(let n of e.end)t+=n.source;return t}}}function di({start:e,key:t,sep:n,value:r}){let i=``;for(let t of e)i+=t.source;if(t&&(i+=ui(t)),n)for(let e of n)i+=e.source;return r&&(i+=ui(r)),i}var fi,pi=n((()=>{fi=e=>`type`in e?ui(e):di(e)}));function mi(e,t){`type`in e&&e.type===`document`&&(e={start:e.start,value:e.value}),hi(Object.freeze([]),e,t)}function hi(e,t,n){let r=n(t,e);if(typeof r==`symbol`)return r;for(let i of[`key`,`value`]){let a=t[i];if(a&&`items`in a){for(let t=0;t<a.items.length;++t){let r=hi(Object.freeze(e.concat([[i,t]])),a.items[t],n);if(typeof r==`number`)t=r-1;else if(r===gi)return gi;else r===vi&&(a.items.splice(t,1),--t)}typeof r==`function`&&i===`key`&&(r=r(t,e))}}return typeof r==`function`?r(t,e):r}var gi,_i,vi,yi=n((()=>{gi=Symbol(`break visit`),_i=Symbol(`skip children`),vi=Symbol(`remove item`),mi.BREAK=gi,mi.SKIP=_i,mi.REMOVE=vi,mi.itemAtPath=(e,t)=>{let n=e;for(let[e,r]of t){let t=n?.[e];if(t&&`items`in t)n=t.items[r];else return}return n},mi.parentCollection=(e,t)=>{let n=mi.itemAtPath(e,t.slice(0,-1)),r=t[t.length-1][0],i=n?.[r];if(i&&`items`in i)return i;throw Error(`Parent collection not found`)}})),bi=r({BOM:()=>``,DOCUMENT:()=>``,FLOW_END:()=>``,SCALAR:()=>``,createScalarToken:()=>ii,isCollection:()=>Ci,isScalar:()=>wi,prettyToken:()=>xi,resolveAsScalar:()=>ri,setScalarValue:()=>ai,stringify:()=>fi,tokenType:()=>Si,visit:()=>mi},1);function xi(e){switch(e){case``:return`<BOM>`;case``:return`<DOC>`;case``:return`<FLOW_END>`;case``:return`<SCALAR>`;default:return JSON.stringify(e)}}function Si(e){switch(e){case``:return`byte-order-mark`;case``:return`doc-mode`;case``:return`flow-error-end`;case``:return`scalar`;case`---`:return`doc-start`;case`...`:return`doc-end`;case``:case`
91
+ `:case`\r
92
+ `: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}var Ci,wi,Ti=n((()=>{li(),pi(),yi(),Ci=e=>!!e&&`items`in e,wi=e=>!!e&&(e.type===`scalar`||e.type===`single-quoted-scalar`||e.type===`double-quoted-scalar`||e.type===`block-scalar`)}));function Ei(e){switch(e){case void 0:case` `:case`
93
+ `:case`\r`:case` `:return!0;default:return!1}}var Di,Oi,ki,Ai,ji,Mi,Ni=n((()=>{Ti(),Di=new Set(`0123456789ABCDEFabcdef`),Oi=new Set(`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()`),ki=new Set(`,[]{}`),Ai=new Set(` ,[]{}
94
+ \r `),ji=e=>!e||Ai.has(e),Mi=class{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(e,t=!1){if(e){if(typeof e!=`string`)throw TypeError(`source is not a string`);this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!t;let n=this.next??`stream`;for(;n&&(t||this.hasChars(1));)n=yield*this.parseNext(n)}atLineEnd(){let e=this.pos,t=this.buffer[e];for(;t===` `||t===` `;)t=this.buffer[++e];return!t||t===`#`||t===`
95
+ `?!0:t===`\r`?this.buffer[e+1]===`
96
+ `:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let t=this.buffer[e];if(this.indentNext>0){let n=0;for(;t===` `;)t=this.buffer[++n+e];if(t===`\r`){let t=this.buffer[n+e+1];if(t===`
97
+ `||!t&&!this.atEnd)return e+n+1}return t===`
98
+ `||n>=this.indentNext||!t&&!this.atEnd?e+n:-1}if(t===`-`||t===`.`){let t=this.buffer.substr(e,3);if((t===`---`||t===`...`)&&Ei(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!=`number`||e!==-1&&e<this.pos)&&(e=this.buffer.indexOf(`
99
+ `,this.pos),this.lineEndPos=e),e===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[e-1]===`\r`&&--e,this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){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 e=this.getLine();if(e===null)return this.setNext(`stream`);if(e[0]===``&&(yield*this.pushCount(1),e=e.substring(1)),e[0]===`%`){let t=e.length,n=e.indexOf(`#`);for(;n!==-1;){let r=e[n-1];if(r===` `||r===` `){t=n-1;break}else n=e.indexOf(`#`,n+1)}for(;;){let n=e[t-1];if(n===` `||n===` `)--t;else break}let r=(yield*this.pushCount(t))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-r),this.pushNewline(),`stream`}if(this.atLineEnd()){let t=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-t),yield*this.pushNewline(),`stream`}return yield``,yield*this.parseLineStart()}*parseLineStart(){let e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext(`line-start`);if(e===`-`||e===`.`){if(!this.atEnd&&!this.hasChars(4))return this.setNext(`line-start`);let e=this.peek(3);if((e===`---`||e===`...`)&&Ei(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,e===`---`?`doc`:`stream`}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!Ei(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[e,t]=this.peek(2);if(!t&&!this.atEnd)return this.setNext(`block-start`);if((e===`-`||e===`?`||e===`:`)&&Ei(t)){let e=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=e,yield*this.parseBlockStart()}return`doc`}*parseDocument(){yield*this.pushSpaces(!0);let e=this.getLine();if(e===null)return this.setNext(`doc`);let t=yield*this.pushIndicators();switch(e[t]){case`#`:yield*this.pushCount(e.length-t);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(ji),`doc`;case`"`:case`'`:return yield*this.parseQuotedScalar();case`|`:case`>`:return t+=yield*this.parseBlockScalarHeader(),t+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-t),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,t,n=-1;do e=yield*this.pushNewline(),e>0?(t=yield*this.pushSpaces(!1),this.indentValue=n=t):t=0,t+=yield*this.pushSpaces(!0);while(e+t>0);let r=this.getLine();if(r===null)return this.setNext(`flow`);if((n!==-1&&n<this.indentNext&&r[0]!==`#`||n===0&&(r.startsWith(`---`)||r.startsWith(`...`))&&Ei(r[3]))&&!(n===this.indentNext-1&&this.flowLevel===1&&(r[0]===`]`||r[0]===`}`)))return this.flowLevel=0,yield``,yield*this.parseLineStart();let i=0;for(;r[i]===`,`;)i+=yield*this.pushCount(1),i+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(i+=yield*this.pushIndicators(),r[i]){case void 0:return`flow`;case`#`:return yield*this.pushCount(r.length-i),`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,this.flowLevel?`flow`:`doc`;case`*`:return yield*this.pushUntil(ji),`flow`;case`"`:case`'`:return this.flowKey=!0,yield*this.parseQuotedScalar();case`:`:{let e=this.charAt(1);if(this.flowKey||Ei(e)||e===`,`)return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),`flow`}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let e=this.charAt(0),t=this.buffer.indexOf(e,this.pos+1);if(e===`'`)for(;t!==-1&&this.buffer[t+1]===`'`;)t=this.buffer.indexOf(`'`,t+2);else for(;t!==-1;){let e=0;for(;this.buffer[t-1-e]===`\\`;)e+=1;if(e%2==0)break;t=this.buffer.indexOf(`"`,t+1)}let n=this.buffer.substring(0,t),r=n.indexOf(`
100
+ `,this.pos);if(r!==-1){for(;r!==-1;){let e=this.continueScalar(r+1);if(e===-1)break;r=n.indexOf(`
101
+ `,e)}r!==-1&&(t=r-(n[r-1]===`\r`?2:1))}if(t===-1){if(!this.atEnd)return this.setNext(`quoted-scalar`);t=this.buffer.length}return yield*this.pushToIndex(t+1,!1),this.flowLevel?`flow`:`doc`}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){let t=this.buffer[++e];if(t===`+`)this.blockScalarKeep=!0;else if(t>`0`&&t<=`9`)this.blockScalarIndent=Number(t)-1;else if(t!==`-`)break}return yield*this.pushUntil(e=>Ei(e)||e===`#`)}*parseBlockScalar(){let e=this.pos-1,t=0,n;loop:for(let r=this.pos;n=this.buffer[r];++r)switch(n){case` `:t+=1;break;case`
102
+ `:e=r,t=0;break;case`\r`:{let e=this.buffer[r+1];if(!e&&!this.atEnd)return this.setNext(`block-scalar`);if(e===`
103
+ `)break}default:break loop}if(!n&&!this.atEnd)return this.setNext(`block-scalar`);if(t>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=t:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let t=this.continueScalar(e+1);if(t===-1)break;e=this.buffer.indexOf(`
104
+ `,t)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext(`block-scalar`);e=this.buffer.length}}let r=e+1;for(n=this.buffer[r];n===` `;)n=this.buffer[++r];if(n===` `){for(;n===` `||n===` `||n===`\r`||n===`
105
+ `;)n=this.buffer[++r];e=r-1}else if(!this.blockScalarKeep)do{let n=e-1,r=this.buffer[n];r===`\r`&&(r=this.buffer[--n]);let i=n;for(;r===` `;)r=this.buffer[--n];if(r===`
106
+ `&&n>=this.pos&&n+1+t>i)e=n;else break}while(!0);return yield``,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let e=this.flowLevel>0,t=this.pos-1,n=this.pos-1,r;for(;r=this.buffer[++n];)if(r===`:`){let r=this.buffer[n+1];if(Ei(r)||e&&ki.has(r))break;t=n}else if(Ei(r)){let i=this.buffer[n+1];if(r===`\r`&&(i===`
107
+ `?(n+=1,r=`
108
+ `,i=this.buffer[n+1]):t=n),i===`#`||e&&ki.has(i))break;if(r===`
109
+ `){let e=this.continueScalar(n+1);if(e===-1)break;n=Math.max(n,e-2)}}else{if(e&&ki.has(r))break;t=n}return!r&&!this.atEnd?this.setNext(`plain-scalar`):(yield``,yield*this.pushToIndex(t+1,!0),e?`flow`:`doc`)}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,t){let n=this.buffer.slice(this.pos,e);return n?(yield n,this.pos+=n.length,n.length):(t&&(yield``),0)}*pushIndicators(){switch(this.charAt(0)){case`!`:return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case`&`:return(yield*this.pushUntil(ji))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case`-`:case`?`:case`:`:{let e=this.flowLevel>0,t=this.charAt(1);if(Ei(t)||e&&ki.has(t))return e?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 e=this.pos+2,t=this.buffer[e];for(;!Ei(t)&&t!==`>`;)t=this.buffer[++e];return yield*this.pushToIndex(t===`>`?e+1:e,!1)}else{let e=this.pos+1,t=this.buffer[e];for(;t;)if(Oi.has(t))t=this.buffer[++e];else if(t===`%`&&Di.has(this.buffer[e+1])&&Di.has(this.buffer[e+2]))t=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){let e=this.buffer[this.pos];return e===`
110
+ `?yield*this.pushCount(1):e===`\r`&&this.charAt(1)===`
111
+ `?yield*this.pushCount(2):0}*pushSpaces(e){let t=this.pos-1,n;do n=this.buffer[++t];while(n===` `||e&&n===` `);let r=t-this.pos;return r>0&&(yield this.buffer.substr(this.pos,r),this.pos=t),r}*pushUntil(e){let t=this.pos,n=this.buffer[t];for(;!e(n);)n=this.buffer[++t];return yield*this.pushToIndex(t,!1)}}})),Pi,Fi=n((()=>{Pi=class{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let t=0,n=this.lineStarts.length;for(;t<n;){let r=t+n>>1;this.lineStarts[r]<e?t=r+1:n=r}if(this.lineStarts[t]===e)return{line:t+1,col:1};if(t===0)return{line:0,col:e};let r=this.lineStarts[t-1];return{line:t,col:e-r+1}}}}}));function Ii(e,t){for(let n=0;n<e.length;++n)if(e[n].type===t)return!0;return!1}function Li(e){for(let t=0;t<e.length;++t)switch(e[t].type){case`space`:case`comment`:case`newline`:break;default:return t}return-1}function Ri(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 zi(e){switch(e.type){case`document`:return e.start;case`block-map`:{let t=e.items[e.items.length-1];return t.sep??t.start}case`block-seq`:return e.items[e.items.length-1].start;default:return[]}}function Bi(e){if(e.length===0)return[];let t=e.length;loop:for(;--t>=0;)switch(e[t].type){case`doc-start`:case`explicit-key-ind`:case`map-value-ind`:case`seq-item-ind`:case`newline`:break loop}for(;e[++t]?.type===`space`;);return e.splice(t,e.length)}function Vi(e){if(e.start.type===`flow-seq-start`)for(let t of e.items)t.sep&&!t.value&&!Ii(t.start,`explicit-key-ind`)&&!Ii(t.sep,`map-value-ind`)&&(t.key&&(t.value=t.key),delete t.key,Ri(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}var Hi,Ui=n((()=>{Ti(),Ni(),Hi=class{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source=``,this.type=``,this.lexer=new Mi,this.onNewLine=e}*parse(e,t=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let n of this.lexer.lex(e,t))yield*this.next(n);t||(yield*this.end())}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=Si(e);if(t)if(t===`scalar`)this.atNewLine=!1,this.atScalar=!0,this.type=`scalar`;else{switch(this.type=t,yield*this.step(),t){case`newline`:this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case`space`:this.atNewLine&&e[0]===` `&&(this.indent+=e.length);break;case`explicit-key-ind`:case`map-value-ind`:case`seq-item-ind`:this.atNewLine&&(this.indent+=e.length);break;case`doc-mode`:case`flow-error-end`:return;default:this.atNewLine=!1}this.offset+=e.length}else{let t=`Not a YAML token: ${e}`;yield*this.pop({type:`error`,offset:this.offset,message:t,source:e}),this.offset+=e.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(){let e=this.peek(1);if(this.type===`doc-end`&&e?.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(!e)return yield*this.stream();switch(e.type){case`document`:return yield*this.document(e);case`alias`:case`scalar`:case`single-quoted-scalar`:case`double-quoted-scalar`:return yield*this.scalar(e);case`block-scalar`:return yield*this.blockScalar(e);case`block-map`:return yield*this.blockMap(e);case`block-seq`:return yield*this.blockSequence(e);case`flow-collection`:return yield*this.flowCollection(e);case`doc-end`:return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){let t=e??this.stack.pop();if(!t)yield{type:`error`,offset:this.offset,source:``,message:`Tried to pop an empty stack`};else if(this.stack.length===0)yield t;else{let e=this.peek(1);switch(t.type===`block-scalar`?t.indent=`indent`in e?e.indent:0:t.type===`flow-collection`&&e.type===`document`&&(t.indent=0),t.type===`flow-collection`&&Vi(t),e.type){case`document`:e.value=t;break;case`block-scalar`:e.props.push(t);break;case`block-map`:{let n=e.items[e.items.length-1];if(n.value){e.items.push({start:[],key:t,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=t;else{Object.assign(n,{key:t,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case`block-seq`:{let n=e.items[e.items.length-1];n.value?e.items.push({start:[],value:t}):n.value=t;break}case`flow-collection`:{let n=e.items[e.items.length-1];!n||n.value?e.items.push({start:[],key:t,sep:[]}):n.sep?n.value=t:Object.assign(n,{key:t,sep:[]});return}default:yield*this.pop(),yield*this.pop(t)}if((e.type===`document`||e.type===`block-map`||e.type===`block-seq`)&&(t.type===`block-map`||t.type===`block-seq`)){let n=t.items[t.items.length-1];n&&!n.sep&&!n.value&&n.start.length>0&&Li(n.start)===-1&&(t.indent===0||n.start.every(e=>e.type!==`comment`||e.indent<t.indent))&&(e.type===`document`?e.end=n.start:e.items.push({start:n.start}),t.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`:{let e={type:`document`,offset:this.offset,start:[]};this.type===`doc-start`&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:`error`,offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case`doc-start`:Li(e.start)===-1?e.start.push(this.sourceToken):(yield*this.pop(),yield*this.step());return;case`anchor`:case`tag`:case`space`:case`comment`:case`newline`:e.start.push(this.sourceToken);return}let t=this.startBlockValue(e);t?this.stack.push(t):yield{type:`error`,offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type===`map-value-ind`){let t=Bi(zi(this.peek(2))),n;e.end?(n=e.end,n.push(this.sourceToken),delete e.end):n=[this.sourceToken];let r={type:`block-map`,offset:e.offset,indent:e.indent,items:[{start:t,key:e,sep:n}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=r}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case`space`:case`comment`:case`newline`:e.props.push(this.sourceToken);return;case`scalar`:if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let e=this.source.indexOf(`
112
+ `)+1;for(;e!==0;)this.onNewLine(this.offset+e),e=this.source.indexOf(`
113
+ `,e)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let t=e.items[e.items.length-1];switch(this.type){case`newline`:if(this.onKeyLine=!1,t.value){let n=`end`in t.value?t.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type===`comment`?n?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case`space`:case`comment`:if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let n=!this.onKeyLine&&this.indent===e.indent,r=n&&(t.sep||t.explicitKey)&&this.type!==`seq-item-ind`,i=[];if(r&&t.sep&&!t.value){let n=[];for(let r=0;r<t.sep.length;++r){let i=t.sep[r];switch(i.type){case`newline`:n.push(r);break;case`space`:break;case`comment`:i.indent>e.indent&&(n.length=0);break;default:n.length=0}}n.length>=2&&(i=t.sep.splice(n[1]))}switch(this.type){case`anchor`:case`tag`:r||t.value?(i.push(this.sourceToken),e.items.push({start:i}),this.onKeyLine=!0):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case`explicit-key-ind`:!t.sep&&!t.explicitKey?(t.start.push(this.sourceToken),t.explicitKey=!0):r||t.value?(i.push(this.sourceToken),e.items.push({start:i,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(t.explicitKey)if(t.sep)if(t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Ii(t.sep,`map-value-ind`))this.stack.push({type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]});else if(Ri(t.key)&&!Ii(t.sep,`newline`)){let e=Bi(t.start),n=t.key,r=t.sep;r.push(this.sourceToken),delete t.key,delete t.sep,this.stack.push({type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:e,key:n,sep:r}]})}else i.length>0?t.sep=t.sep.concat(i,this.sourceToken):t.sep.push(this.sourceToken);else if(Ii(t.start,`newline`))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let e=Bi(t.start);this.stack.push({type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:e,key:null,sep:[this.sourceToken]}]})}else t.sep?t.value||r?e.items.push({start:i,key:null,sep:[this.sourceToken]}):Ii(t.sep,`map-value-ind`)?this.stack.push({type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case`alias`:case`scalar`:case`single-quoted-scalar`:case`double-quoted-scalar`:{let n=this.flowScalar(this.type);r||t.value?(e.items.push({start:i,key:n,sep:[]}),this.onKeyLine=!0):t.sep?this.stack.push(n):(Object.assign(t,{key:n,sep:[]}),this.onKeyLine=!0);return}default:{let r=this.startBlockValue(e);if(r){if(r.type===`block-seq`){if(!t.explicitKey&&t.sep&&!Ii(t.sep,`newline`)){yield*this.pop({type:`error`,offset:this.offset,message:`Unexpected block-seq-ind on same line with key`,source:this.source});return}}else n&&e.items.push({start:i});this.stack.push(r);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let t=e.items[e.items.length-1];switch(this.type){case`newline`:if(t.value){let n=`end`in t.value?t.value.end:void 0;(Array.isArray(n)?n[n.length-1]:void 0)?.type===`comment`?n?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.start.push(this.sourceToken);return;case`space`:case`comment`:if(t.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return;case`anchor`:case`tag`:if(t.value||this.indent<=e.indent)break;t.start.push(this.sourceToken);return;case`seq-item-ind`:if(this.indent!==e.indent)break;t.value||Ii(t.start,`seq-item-ind`)?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return}if(this.indent>e.indent){let t=this.startBlockValue(e);if(t){this.stack.push(t);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){let t=e.items[e.items.length-1];if(this.type===`flow-error-end`){let e;do yield*this.pop(),e=this.peek(1);while(e?.type===`flow-collection`)}else if(e.end.length===0){switch(this.type){case`comma`:case`explicit-key-ind`:!t||t.sep?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return;case`map-value-ind`:!t||t.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});return;case`space`:case`comment`:case`newline`:case`anchor`:case`tag`:!t||t.value?e.items.push({start:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case`alias`:case`scalar`:case`single-quoted-scalar`:case`double-quoted-scalar`:{let n=this.flowScalar(this.type);!t||t.value?e.items.push({start:[],key:n,sep:[]}):t.sep?this.stack.push(n):Object.assign(t,{key:n,sep:[]});return}case`flow-map-end`:case`flow-seq-end`:e.end.push(this.sourceToken);return}let n=this.startBlockValue(e);n?this.stack.push(n):(yield*this.pop(),yield*this.step())}else{let t=this.peek(2);if(t.type===`block-map`&&(this.type===`map-value-ind`&&t.indent===e.indent||this.type===`newline`&&!t.items[t.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type===`map-value-ind`&&t.type!==`flow-collection`){let n=Bi(zi(t));Vi(e);let r=e.end.splice(1,e.end.length);r.push(this.sourceToken);let i={type:`block-map`,offset:e.offset,indent:e.indent,items:[{start:n,key:e,sep:r}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=i}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let e=this.source.indexOf(`
114
+ `)+1;for(;e!==0;)this.onNewLine(this.offset+e),e=this.source.indexOf(`
115
+ `,e)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){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;let t=Bi(zi(e));return t.push(this.sourceToken),{type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:t,explicitKey:!0}]}}case`map-value-ind`:{this.onKeyLine=!0;let t=Bi(zi(e));return{type:`block-map`,offset:this.offset,indent:this.indent,items:[{start:t,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){return this.type!==`comment`||this.indent<=t?!1:e.every(e=>e.type===`newline`||e.type===`space`)}*documentEnd(e){this.type!==`doc-mode`&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type===`newline`&&(yield*this.pop()))}*lineEnd(e){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:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type===`newline`&&(yield*this.pop())}}}}));function Wi(e){let t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new Pi||null,prettyErrors:t}}function Gi(e,t={}){let{lineCounter:n,prettyErrors:r}=Wi(t),i=new Hi(n?.addNewLine),a=new ti(t),o=Array.from(a.compose(i.parse(e)));if(r&&n)for(let t of o)t.errors.forEach(ir(e,n)),t.warnings.forEach(ir(e,n));return o.length>0?o:Object.assign([],{empty:!0},a.streamInfo())}function Ki(e,t={}){let{lineCounter:n,prettyErrors:r}=Wi(t),i=new Hi(n?.addNewLine),a=new ti(t),o=null;for(let t of a.compose(i.parse(e),!0,e.length))if(!o)o=t;else if(o.options.logLevel!==`silent`){o.errors.push(new nr(t.range.slice(0,2),`MULTIPLE_DOCS`,`Source contains multiple documents; please use YAML.parseAllDocuments()`));break}return r&&n&&(o.errors.forEach(ir(e,n)),o.warnings.forEach(ir(e,n))),o}function qi(e,t,n){let r;typeof t==`function`?r=t:n===void 0&&t&&typeof t==`object`&&(n=t);let i=Ki(e,n);if(!i)return null;if(i.warnings.forEach(e=>it(i.options.logLevel,e)),i.errors.length>0){if(i.options.logLevel!==`silent`)throw i.errors[0];i.errors=[]}return i.toJS(Object.assign({reviver:r},n))}function Ji(e,t,n){let r=null;if(typeof t==`function`||Array.isArray(t)?r=t:n===void 0&&t&&(n=t),typeof n==`string`&&(n=n.length),typeof n==`number`){let e=Math.round(n);n=e<1?void 0:e>8?{indent:8}:{indent:e}}if(e===void 0){let{keepUndefined:e}=n??t??{};if(!e)return}return P(e)&&!r?e.toString(n):new $n(e,r,n).toString(n)}var Yi=n((()=>{ni(),er(),ar(),at(),z(),Fi(),Ui()})),Xi=r({Alias:()=>ye,CST:()=>bi,Composer:()=>ti,Document:()=>$n,Lexer:()=>Mi,LineCounter:()=>Pi,Pair:()=>gt,Parser:()=>Hi,Scalar:()=>X,Schema:()=>Jn,YAMLError:()=>tr,YAMLMap:()=>wt,YAMLParseError:()=>nr,YAMLSeq:()=>kt,YAMLWarning:()=>rr,isAlias:()=>N,isCollection:()=>w,isDocument:()=>P,isMap:()=>ee,isNode:()=>T,isPair:()=>F,isScalar:()=>I,isSeq:()=>L,parse:()=>qi,parseAllDocuments:()=>Gi,parseDocument:()=>Ki,stringify:()=>Ji,visit:()=>te,visitAsync:()=>re},1),Zi=n((()=>{ni(),er(),Yn(),ar(),Y(),z(),_t(),xe(),Tt(),At(),Ti(),Ni(),Fi(),Ui(),Yi(),se()})),Qi=r({Alias:()=>ye,CST:()=>bi,Composer:()=>ti,Document:()=>$n,Lexer:()=>Mi,LineCounter:()=>Pi,Pair:()=>gt,Parser:()=>Hi,Scalar:()=>X,Schema:()=>Jn,YAMLError:()=>tr,YAMLMap:()=>wt,YAMLParseError:()=>nr,YAMLSeq:()=>kt,YAMLWarning:()=>rr,default:()=>$i,isAlias:()=>N,isCollection:()=>w,isDocument:()=>P,isMap:()=>ee,isNode:()=>T,isPair:()=>F,isScalar:()=>I,isSeq:()=>L,parse:()=>qi,parseAllDocuments:()=>Gi,parseDocument:()=>Ki,stringify:()=>Ji,visit:()=>te,visitAsync:()=>re},1),$i,ea=n((()=>{Zi(),Zi(),$i=Xi})),Q=i((t=>{var n=t&&t.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=t&&t.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),i=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&n(t,e,i);return r(t,e),t};Object.defineProperty(t,`__esModule`,{value:!0}),t.numberEnumValues=t.indentationString=t.parseJSON=t.inflateBase64=t.errorMessage=t.repeatedCall=t.repeated=t.mustNotHappen=t.panic=t.assert=t.assertNever=t.nonNull=t.defined=t.checkArray=t.checkStringMap=t.checkString=t.isStringMap=void 0;var a=o(),s=i(S()),c=C(),l=i((ea(),e(Qi)));function u(e,t){if(typeof e!=`object`||Array.isArray(e)||e===null)return!1;if(t!==void 0)for(let n of Object.getOwnPropertyNames(e)){let r=e[n];if(!t(r))return!1}return!0}t.isStringMap=u;function d(e){return typeof e==`string`}t.checkString=d;function f(e,t){return u(e,t)?e:v(`Value must be an object, but is ${e}`)}t.checkStringMap=f;function p(e,t){if(!Array.isArray(e))return v(`Value must be an array, but is ${e}`);if(t!==void 0){for(let n of e)if(!t(n))return v(`Array item does not satisfy constraint: ${n}`)}return e}t.checkArray=p;function m(e){return e===void 0?v(`Defined value expected, but got undefined`):e}t.defined=m;function h(e){return e===null?v(`Non-null value expected, but got null`):e}t.nonNull=h;function g(e){return(0,c.messageError)(`InternalError`,{message:`Unexpected object ${e}`})}t.assertNever=g;function _(e,t=`Assertion failed`){if(!e)return(0,c.messageError)(`InternalError`,{message:t})}t.assert=_;function v(e){return(0,c.messageError)(`InternalError`,{message:e})}t.panic=v;function y(){return v(`This must not happen`)}t.mustNotHappen=y;function b(e,t){let n=[];for(let r=0;r<e;r++)n.push(t);return n}t.repeated=b;function x(e,t){let n=[];for(let r=0;r<e;r++)n.push(t());return n}t.repeatedCall=x;function w(e){return e instanceof Error?e.message:e.toString()}t.errorMessage=w;function T(e){let t=a.Base64.atob(e);return s.inflate(t,{to:`string`})}t.inflateBase64=T;function E(e,t,n=`<unknown>`){try{return e.charCodeAt(0)===65279&&(e=e.slice(1)),l.parse(e)}catch(e){let r;return r=e instanceof SyntaxError?e.message:`Unknown exception ${e}`,(0,c.messageError)(`MiscJSONParseError`,{description:t,address:n,message:r})}}t.parseJSON=E;function D(e){return` `.repeat(e)}t.indentationString=D;function O(e){let t=[];for(let n of Object.keys(e)){let r=e[n];typeof r==`number`&&t.push(r)}return t}t.numberEnumValues=O})),ta=i(((e,n)=>{(function(r,i){typeof t==`function`&&typeof e==`object`&&typeof n==`object`?n.exports=i():typeof define==`function`&&define.amd?define(function(){return i()}):r.pluralize=i()})(e,function(){var e=[],t=[],n={},r={},i={};function a(e){return typeof e==`string`?RegExp(`^`+e+`$`,`i`):e}function o(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function s(e,t){return e.replace(/\$(\d{1,2})/g,function(e,n){return t[n]||``})}function c(e,t){return e.replace(t[0],function(n,r){var i=s(t[1],arguments);return o(n===``?e[r-1]:n,i)})}function l(e,t,r){if(!e.length||n.hasOwnProperty(e))return t;for(var i=r.length;i--;){var a=r[i];if(a[0].test(t))return c(t,a)}return t}function u(e,t,n){return function(r){var i=r.toLowerCase();return t.hasOwnProperty(i)?o(r,i):e.hasOwnProperty(i)?o(r,e[i]):l(i,r,n)}}function d(e,t,n,r){return function(r){var i=r.toLowerCase();return t.hasOwnProperty(i)?!0:e.hasOwnProperty(i)?!1:l(i,i,n)===i}}function f(e,t,n){var r=t===1?f.singular(e):f.plural(e);return(n?t+` `:``)+r}return f.plural=u(i,r,e),f.isPlural=d(i,r,e),f.singular=u(r,i,t),f.isSingular=d(r,i,t),f.addPluralRule=function(t,n){e.push([a(t),n])},f.addSingularRule=function(e,n){t.push([a(e),n])},f.addUncountableRule=function(e){if(typeof e==`string`){n[e.toLowerCase()]=!0;return}f.addPluralRule(e,`$0`),f.addSingularRule(e,`$0`)},f.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),i[e]=t,r[t]=e},[[`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(e){return f.addIrregularRule(e[0],e[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(e){return f.addPluralRule(e[0],e[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(e){return f.addSingularRule(e[0],e[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(f.addUncountableRule),f})})),na=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.increaseTypeAttributesDistance=e.makeTypeAttributesInferred=e.combineTypeAttributes=e.emptyTypeAttributes=e.TypeAttributeKind=void 0;var t=a(),n=Q();e.TypeAttributeKind=class e{constructor(e){this.name=e}appliesToTypeKind(e){return e!==`any`}combine(e){return(0,n.panic)(`Cannot combine type attribute ${this.name}`)}intersect(e){return this.combine(e)}makeInferred(e){return(0,n.panic)(`Cannot make type attribute ${this.name} inferred`)}increaseDistance(e){return e}addToSchema(e,t,n){}children(e){return new Set}stringify(e){}get inIdentity(){return!1}requiresUniqueIdentity(e){return!1}reconstitute(e,t){return t}makeAttributes(e){let t=[[this,e]];return new Map(t)}tryGetInAttributes(e){return e.get(this)}setInAttributes(e,t){return new Map(e).set(this,t)}modifyInAttributes(e,t){let n=t(this.tryGetInAttributes(e));if(n===void 0){let t=new Map(e);return t.delete(this),t}return this.setInAttributes(e,n)}setDefaultInAttributes(e,t){return this.tryGetInAttributes(e)===void 0?this.modifyInAttributes(e,t):e}removeInAttributes(e){return(0,t.mapFilter)(e,(e,t)=>t!==this)}equals(t){return t instanceof e?this.name===t.name:!1}hashCode(){return(0,t.hashString)(this.name)}},e.emptyTypeAttributes=new Map;function r(e,r,i){let a=e===`union`,o;if(Array.isArray(r))o=r;else{if(i===void 0)return(0,n.panic)(`Must have on array or two attributes`);o=[r,i]}let s=(0,t.mapTranspose)(o);function c(e,t){return(0,n.assert)(e.length>0,`Cannot combine zero type attributes`),e.length===1?e[0]:a?t.combine(e):t.intersect(e)}return(0,t.mapFilterMap)(s,c)}e.combineTypeAttributes=r;function i(e){return(0,t.mapFilterMap)(e,(e,t)=>t.makeInferred(e))}e.makeTypeAttributesInferred=i;function o(e){return(0,t.mapFilterMap)(e,(e,t)=>t.increaseDistance(e))}e.increaseTypeAttributesDistance=o})),ra=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.EnumOption=e.StringOption=e.BooleanOption=e.getOptionValues=e.Option=void 0;var t=Q(),n=C(),r=a(),i=class{constructor(e){e.renderer=!0,this.definition=e,(0,t.assert)(e.kind!==void 0,`Renderer option kind must be defined`)}getValue(e){let t=e[this.definition.name];return t===void 0?this.definition.defaultValue:t}get cliDefinitions(){return{actual:[this.definition],display:[this.definition]}}};e.Option=i;function o(e,t){let n={};for(let r of Object.getOwnPropertyNames(e))n[r]=e[r].getValue(t);return n}e.getOptionValues=o,e.BooleanOption=class extends i{constructor(e,t,n,r=`primary`){super({name:e,kind:r,type:Boolean,description:t,defaultValue:n})}get cliDefinitions(){let e=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,e]}}getValue(e){let t=e[this.definition.name];t===void 0&&(t=this.definition.defaultValue);let n=e[`no-${this.definition.name}`];return n===void 0&&(n=!this.definition.defaultValue),t===`true`?t=!0:t===`false`&&(t=!1),this.definition.defaultValue?t&&!n:t||!n}},e.StringOption=class extends i{constructor(e,t,n,r,i=`primary`){let a={name:e,kind:i,type:String,description:t,typeLabel:n,defaultValue:r};super(a)}},e.EnumOption=class extends i{constructor(e,t,n,r=void 0,i=`primary`){r===void 0&&(r=n[0][0]);let a={name:e,kind:i,type:String,description:t,typeLabel:n.map(([e,t])=>e).join(`|`),legalValues:n.map(([e,t])=>e),defaultValue:r};super(a),this._values={};for(let[e,t]of n)this._values[e]=t}getValue(e){let t=e[this.definition.name];return t===void 0&&(t=this.definition.defaultValue),(0,r.hasOwnProperty)(this._values,t)?this._values[t]:(0,n.messageError)(`RendererUnknownOptionValue`,{value:t,name:this.definition.name})}}})),ia=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.acronymStyle=e.acronymOption=e.AcronymStyleOptions=e.acronyms=void 0;var t=ra(),n=ua();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`.split(`.`);var r;(function(e){e.Pascal=`pascal`,e.Camel=`camel`,e.Original=`original`,e.Lower=`lowerCase`})(r=e.AcronymStyleOptions||={}),e.acronymOption=function(e){return new t.EnumOption(`acronym-style`,`Acronym naming style`,[[r.Original,r.Original],[r.Pascal,r.Pascal],[r.Camel,r.Camel],[r.Lower,r.Lower]],e,`secondary`)};function i(e){return{[r.Pascal]:n.allUpperWordStyle,[r.Camel]:n.firstUpperWordStyle,[r.Original]:n.originalWord,[r.Lower]:n.allLowerWordStyle}[e]}e.acronymStyle=i})),aa=i((e=>{e.byteLength=c,e.toByteArray=u,e.fromByteArray=p;for(var t=[],n=[],r=typeof Uint8Array<`u`?Uint8Array:Array,i=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,a=0,o=i.length;a<o;++a)t[a]=i[a],n[i.charCodeAt(a)]=a;n[45]=62,n[95]=63;function s(e){var t=e.length;if(t%4>0)throw Error(`Invalid string. Length must be a multiple of 4`);var n=e.indexOf(`=`);n===-1&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=s(e),n=t[0],r=t[1];return(n+r)*3/4-r}function l(e,t,n){return(t+n)*3/4-n}function u(e){var t,i=s(e),a=i[0],o=i[1],c=new r(l(e,a,o)),u=0,d=o>0?a-4:a,f;for(f=0;f<d;f+=4)t=n[e.charCodeAt(f)]<<18|n[e.charCodeAt(f+1)]<<12|n[e.charCodeAt(f+2)]<<6|n[e.charCodeAt(f+3)],c[u++]=t>>16&255,c[u++]=t>>8&255,c[u++]=t&255;return o===2&&(t=n[e.charCodeAt(f)]<<2|n[e.charCodeAt(f+1)]>>4,c[u++]=t&255),o===1&&(t=n[e.charCodeAt(f)]<<10|n[e.charCodeAt(f+1)]<<4|n[e.charCodeAt(f+2)]>>2,c[u++]=t>>8&255,c[u++]=t&255),c}function d(e){return t[e>>18&63]+t[e>>12&63]+t[e>>6&63]+t[e&63]}function f(e,t,n){for(var r,i=[],a=t;a<n;a+=3)r=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(d(r));return i.join(``)}function p(e){for(var n,r=e.length,i=r%3,a=[],o=16383,s=0,c=r-i;s<c;s+=o)a.push(f(e,s,s+o>c?c:s+o));return i===1?(n=e[r-1],a.push(t[n>>2]+t[n<<4&63]+`==`)):i===2&&(n=(e[r-2]<<8)+e[r-1],a.push(t[n>>10]+t[n>>4&63]+t[n<<2&63]+`=`)),a.join(``)}})),oa=i(((e,t)=>{var n=0,r=-3;function i(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function a(e,t){this.source=e,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new i,this.dtree=new i}var o=new i,s=new i,c=new Uint8Array(30),l=new Uint16Array(30),u=new Uint8Array(30),d=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]),p=new i,m=new Uint8Array(320);function h(e,t,n,r){var i,a;for(i=0;i<n;++i)e[i]=0;for(i=0;i<30-n;++i)e[i+n]=i/n|0;for(a=r,i=0;i<30;++i)t[i]=a,a+=1<<e[i]}function g(e,t){var n;for(n=0;n<7;++n)e.table[n]=0;for(e.table[7]=24,e.table[8]=152,e.table[9]=112,n=0;n<24;++n)e.trans[n]=256+n;for(n=0;n<144;++n)e.trans[24+n]=n;for(n=0;n<8;++n)e.trans[168+n]=280+n;for(n=0;n<112;++n)e.trans[176+n]=144+n;for(n=0;n<5;++n)t.table[n]=0;for(t.table[5]=32,n=0;n<32;++n)t.trans[n]=n}var _=new Uint16Array(16);function v(e,t,n,r){var i,a;for(i=0;i<16;++i)e.table[i]=0;for(i=0;i<r;++i)e.table[t[n+i]]++;for(e.table[0]=0,a=0,i=0;i<16;++i)_[i]=a,a+=e.table[i];for(i=0;i<r;++i)t[n+i]&&(e.trans[_[t[n+i]]++]=i)}function y(e){e.bitcount--||(e.tag=e.source[e.sourceIndex++],e.bitcount=7);var t=e.tag&1;return e.tag>>>=1,t}function b(e,t,n){if(!t)return n;for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var r=e.tag&65535>>>16-t;return e.tag>>>=t,e.bitcount-=t,r+n}function x(e,t){for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var n=0,r=0,i=0,a=e.tag;do r=2*r+(a&1),a>>>=1,++i,n+=t.table[i],r-=t.table[i];while(r>=0);return e.tag=a,e.bitcount-=i,t.trans[n+r]}function S(e,t,n){var r=b(e,5,257),i=b(e,5,1),a=b(e,4,4),o,s,c;for(o=0;o<19;++o)m[o]=0;for(o=0;o<a;++o){var l=b(e,3,0);m[f[o]]=l}for(v(p,m,0,19),s=0;s<r+i;){var u=x(e,p);switch(u){case 16:var d=m[s-1];for(c=b(e,2,3);c;--c)m[s++]=d;break;case 17:for(c=b(e,3,3);c;--c)m[s++]=0;break;case 18:for(c=b(e,7,11);c;--c)m[s++]=0;break;default:m[s++]=u;break}}v(t,m,0,r),v(n,m,r,i)}function C(e,t,r){for(;;){var i=x(e,t);if(i===256)return n;if(i<256)e.dest[e.destLen++]=i;else{var a,o,s,f;for(i-=257,a=b(e,c[i],l[i]),o=x(e,r),s=e.destLen-b(e,u[o],d[o]),f=s;f<s+a;++f)e.dest[e.destLen++]=e.dest[f]}}}function w(e){for(var t,i,a;e.bitcount>8;)e.sourceIndex--,e.bitcount-=8;if(t=e.source[e.sourceIndex+1],t=256*t+e.source[e.sourceIndex],i=e.source[e.sourceIndex+3],i=256*i+e.source[e.sourceIndex+2],t!==(~i&65535))return r;for(e.sourceIndex+=4,a=t;a;--a)e.dest[e.destLen++]=e.source[e.sourceIndex++];return e.bitcount=0,n}function T(e,t){var i=new a(e,t),c,l,u;do{switch(c=y(i),l=b(i,2,0),l){case 0:u=w(i);break;case 1:u=C(i,o,s);break;case 2:S(i,i.ltree,i.dtree),u=C(i,i.ltree,i.dtree);break;default:u=r}if(u!==n)throw Error(`Data error`)}while(!c);return i.destLen<i.dest.length?typeof i.dest.slice==`function`?i.dest.slice(0,i.destLen):i.dest.subarray(0,i.destLen):i.dest}g(o,s),h(c,l,4,3),h(u,d,2,1),c[28]=0,l[28]=258,t.exports=T})),sa=i(((e,t)=>{var n=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,r=(e,t,n)=>{let r=e[t];e[t]=e[n],e[n]=r},i=e=>{let t=e.length;for(let n=0;n<t;n+=4)r(e,n,n+3),r(e,n+1,n+2)};t.exports={swap32LE:e=>{n&&i(e)}}})),ca=i(((e,t)=>{var n=oa(),{swap32LE:r}=sa(),i=11,a=5,o=i-a,s=65536>>i,c=(1<<o)-1,l=2,u=(1<<a)-1,d=65536>>a,f=d+(1024>>a)+32,p=1<<l;t.exports=class{constructor(e){let t=typeof e.readUInt32BE==`function`&&typeof e.slice==`function`;if(t||e instanceof Uint8Array){let i;if(t)this.highStart=e.readUInt32LE(0),this.errorValue=e.readUInt32LE(4),i=e.readUInt32LE(8),e=e.slice(12);else{let t=new DataView(e.buffer);this.highStart=t.getUint32(0,!0),this.errorValue=t.getUint32(4,!0),i=t.getUint32(8,!0),e=e.subarray(12)}e=n(e,new Uint8Array(i)),e=n(e,new Uint8Array(i)),r(e),this.data=new Uint32Array(e.buffer)}else ({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=e)}get(e){let t;return e<0||e>1114111?this.errorValue:e<55296||e>56319&&e<=65535?(t=(this.data[e>>a]<<l)+(e&u),this.data[t]):e<=65535?(t=(this.data[d+(e-55296>>a)]<<l)+(e&u),this.data[t]):e<this.highStart?(t=this.data[f-s+(e>>i)],t=this.data[t+(e>>a&c)],t=(t<<l)+(e&u),this.data[t]):this.data[this.data.length-p]}}})),la=i(((e,t)=>{var n=aa(),r=ca();function i(e){return e&&e.__esModule?e.default:e}function a(e){Object.defineProperty(e,`__esModule`,{value:!0,configurable:!0})}function o(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}a(t.exports),o(t.exports,`getCategory`,()=>T),o(t.exports,`getCombiningClass`,()=>E),o(t.exports,`getScript`,()=>D),o(t.exports,`getEastAsianWidth`,()=>O),o(t.exports,`getNumericValue`,()=>k),o(t.exports,`isAlphabetic`,()=>A),o(t.exports,`isDigit`,()=>j),o(t.exports,`isPunctuation`,()=>M),o(t.exports,`isLowerCase`,()=>N),o(t.exports,`isUpperCase`,()=>P),o(t.exports,`isTitleCase`,()=>ee),o(t.exports,`isWhiteSpace`,()=>F),o(t.exports,`isBaseForm`,()=>I),o(t.exports,`isMark`,()=>L),o(t.exports,`default`,()=>R);var s={};s=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"]}`);var c=new(i(r))(i(n).toByteArray(`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`)),l=Math.log2||(e=>Math.log(e)/Math.LN2),u=e=>l(e)+1|0,d=u(i(s).categories.length-1),f=u(i(s).combiningClasses.length-1),p=u(i(s).scripts.length-1),m=u(i(s).eaw.length-1),h=10,g=f+p+m+h,_=p+m+h,v=m+h,y=h,b=(1<<d)-1,x=(1<<f)-1,S=(1<<p)-1,C=(1<<m)-1,w=(1<<h)-1;function T(e){let t=c.get(e);return i(s).categories[t>>g&b]}function E(e){let t=c.get(e);return i(s).combiningClasses[t>>_&x]}function D(e){let t=c.get(e);return i(s).scripts[t>>v&S]}function O(e){let t=c.get(e);return i(s).eaw[t>>y&C]}function k(e){let t=c.get(e),n=t&w;if(n===0)return null;if(n<=50)return n-1;if(n<480)return((n>>4)-12)/((n&15)+1);if(n<768){t=(n>>5)-14;let e=(n&31)+2;for(;e>0;)t*=10,e--;return t}else{t=(n>>2)-191;let e=(n&3)+1;for(;e>0;)t*=60,e--;return t}}function A(e){let t=T(e);return t===`Lu`||t===`Ll`||t===`Lt`||t===`Lm`||t===`Lo`||t===`Nl`}function j(e){return T(e)===`Nd`}function M(e){let t=T(e);return t===`Pc`||t===`Pd`||t===`Pe`||t===`Pf`||t===`Pi`||t===`Po`||t===`Ps`}function N(e){return T(e)===`Ll`}function P(e){return T(e)===`Lu`}function ee(e){return T(e)===`Lt`}function F(e){let t=T(e);return t===`Zs`||t===`Zl`||t===`Zp`}function I(e){let t=T(e);return t===`Nd`||t===`No`||t===`Nl`||t===`Lu`||t===`Ll`||t===`Lt`||t===`Lm`||t===`Lo`||t===`Me`||t===`Mc`}function L(e){let t=T(e);return t===`Mn`||t===`Me`||t===`Mc`}var R={getCategory:T,getCombiningClass:E,getScript:D,getEastAsianWidth:O,getNumericValue:k,isAlphabetic:A,isDigit:j,isPunctuation:M,isLowerCase:N,isUpperCase:P,isTitleCase:ee,isWhiteSpace:F,isBaseForm:I,isMark:L}})),ua=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};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;var n=Q(),r=ia(),i=C(),a=t(la());function o(e){let t=[],n=[];for(let r=0;r<128;r++){let i=0,a=e(r);a===String.fromCharCode(r)&&(i=1),t.push(a),n.push(i)}return{charStringMap:t,charNoEscapeMap:n}}function s(e){let t=[];for(let n=0;n<128;n++)t.push(e(n));return function(n){return n<128?t[n]:e(n)}}function c(e){let{charStringMap:t,charNoEscapeMap:n}=o(e);return function(r){let i=null,a=0,o=0;for(;o<r.length;){let s=r.charCodeAt(o);if(n[s]!==1){i===null&&(i=[]),i.push(r.substring(a,o));let n=t[s];n===void 0?i.push(e(r.charCodeAt(o))):i.push(n),a=o+1}o++}return i===null?r:(i.push(r.substring(a,o)),i.join(``))}}e.utf16ConcatMap=c;function l(e){return e>=55296&&e<=56319}function u(e){return e>=56320&&e<=57343}function d(e){let{charStringMap:t,charNoEscapeMap:n}=o(e);return function(r){let a=null,o=0,s=0;for(;s<r.length;){let c=r.charCodeAt(s);if(n[c]!==1){if(a===null&&(a=[]),a.push(r.substring(o,s)),l(c)){let e=c;s++;let t=r.charCodeAt(s);(0,i.messageAssert)(u(t),`MiscUnicodeHighSurrogateWithoutLowSurrogate`,{});let n=e-55296;c=65536+(t-56320)+(n<<10)}let n=t[c];n===void 0?a.push(e(c)):a.push(n),o=s+1}s++}return a===null?r:(a.push(r.substring(o,s)),a.join(``))}}e.utf32ConcatMap=d;function f(e){return c(t=>e(t)?String.fromCharCode(t):``)}e.utf16LegalizeCharacters=f;function p(e){return d(t=>t<=65535&&e(t)?String.fromCharCode(t):``)}e.legalizeCharacters=p;function m(e,t){if((0,n.assert)(t>=0,`Cannot repeat a string a negative number of times`),t===0)return``;let r=``;do t%2!=0&&(r+=e),t=Math.floor(t/2),t>0&&(e+=e);while(t>0);return r}e.repeatString=m;function h(e,t){let n=e.toString(16);return n.length>=t?n:m(`0`,t-n.length)+n}e.intToHex=h;function g(e){return e<=65535?`\\u`+h(e,4):`\\U`+h(e,8)}e.standardUnicodeHexEscape=g;function _(e,t){function n(n){switch(n){case 92:return`\\\\`;case 34:return`\\"`;case 10:return`\\n`;case 9:return`\\t`;default:return e(n)?String.fromCharCode(n):t(n)}}return n}e.escapeNonPrintableMapper=_,e.utf16StringEscape=c(_(v,g)),e.stringEscape=d(_(v,g));function v(e){if(e>65535)return!1;let t=a.default.getCategory(e);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(t)>=0}e.isPrintable=v;function y(e){return e<128}e.isAscii=y;function b(e){let t=a.default.getCategory(e);return[`Lu`,`Ll`,`Lt`,`Lo`].indexOf(t)>=0}e.isLetter=b;function x(e){let t=a.default.getCategory(e);return[`Nd`].indexOf(t)>=0}e.isDigit=x;function S(e){let t=a.default.getCategory(e);return[`No`,`Nd`,`Nl`].indexOf(t)>=0}e.isNumeric=S;function w(e){return b(e)||x(e)}e.isLetterOrDigit=w;function T(e){return b(e)||e===95}e.isLetterOrUnderscore=T;function E(e){return T(e)||x(e)}e.isLetterOrUnderscoreOrDigit=E;function D(e){return b(e)||x(e)}e.isWordCharacter=D;function O(e){let t=e.length,n=t;for(let r=t-1;r>=0&&a.default.isWhiteSpace(e.charCodeAt(r));r--)n=r;return n===t?e:e.slice(0,n)}e.trimEnd=O;function k(e,t){return t===``?t:e(t[0])+t.slice(1)}function A(e){return k(e=>e.toUpperCase(),e)}e.capitalize=A;function j(e){return k(e=>e.toLowerCase(),e)}e.decapitalize=j;var M=/[-_. ]+/;function N(e){return e.split(M).map(A).join(``)}e.pascalCase=N;function P(e){return j(N(e))}e.camelCase=P;function ee(e){return re(e).map(({word:e})=>e.toLowerCase()).join(`_`)}e.snakeCase=ee;function F(e,t,n){let r=t?A:j;return n===``?r(`empty`):e(n.charCodeAt(0))?r(n):r(`the`+n)}e.startWithLetter=F;var I=new Set(r.acronyms),L=s(D),R=s(e=>!D(e)),z=s(e=>a.default.isLowerCase(e));e.fastIsUpperCase=s(e=>a.default.isUpperCase(e));var te=s(e=>!a.default.isLowerCase(e)&&!a.default.isUpperCase(e)),ne=s(x);function re(t){let r=[],i,a=t.length,o=0,s;function c(){return o>=a}function l(){return(0,n.defined)(t.codePointAt(o))}function d(e){for(;!c();){let t=l();if(!e(t))break;z(t)&&(s=o),o++}}function f(){d(R)}function p(){d(z)}function m(){d(e.fastIsUpperCase)}function h(){d(te)}function g(){d(ne)}function _(){(0,n.assert)(i===void 0,`Interval started before last one was committed`),i=o}function v(){if(i===void 0)return(0,n.panic)(`Tried to commit interval without starting one`);(0,n.assert)(o>i,`Interval must be non-empty`),!c()&&u(l())&&(o+=1);let e=s===void 0||s<i;r.push([i,o,e]),i=void 0}function y(){return i===void 0?(0,n.panic)(`Tried to get interval length without starting one`):o-i}for(;f(),!c();)_(),z(l())?(p(),g(),v()):(0,e.fastIsUpperCase)(l())?(m(),c()?v():y()===1?(p(),g(),v()):x(l())?(g(),v()):(L(l())&&--o,v())):(h(),v());let b=[];for(let[e,n,i]of r){let r=t.slice(e,n),a=s!==void 0&&i||I.has(r.toLowerCase());b.push({word:r,isAcronym:a})}return b}e.splitIntoWords=re;function B(e){return(0,n.assert)(e.length>0,`Cannot style an empty string`),e[0].toUpperCase()+e.slice(1).toLowerCase()}e.firstUpperWordStyle=B;function V(e){return e.toUpperCase()}e.allUpperWordStyle=V;function ie(e){return e}e.originalWord=ie;function ae(e){return e.toLowerCase()}e.allLowerWordStyle=ae;function H(e,t){(0,n.assert)(t.length>0,`Tried to style an empty word`);let r=e(t);return(0,n.assert)(r.length>0,`Word style must not make word empty`),r}function oe(e,t,r,i,a,o,s,c){let l=[];for(let n of e){let e=t(n.word);e.length!==0&&l.push({word:e,isAcronym:n.isAcronym})}if(l.length===0){let e=t(`empty`);(0,n.assert)(e.length>0,`Word "empty" is invalid in target language`),l.push({word:e,isAcronym:!1})}let u=[],d=l[0],f=H(d.isAcronym?a:r,d.word),p;if(c((0,n.defined)(f.codePointAt(0))))u.push(f),p=l.slice(1);else{let e=t(`the`);(0,n.assert)(e.length>0,`Word "the" is invalid in the target language`);let i=H(r,e);(0,n.assert)(c((0,n.defined)(i.codePointAt(0))),`The first character of styling "the" is not a start character`),u.push(i),p=l}for(let e of p){let t=e.isAcronym?o:i;u.push(H(t,e.word))}return u.join(s)}e.combineWords=oe;function U(e,t){return t.startsWith(e)?t:e+t}e.addPrefixIfNecessary=U;function se(e,t,r){let i,a,o,s,c;switch(e===`pascal`||e===`camel`||e===`pascal-upper-acronyms`||e===`camel-upper-acronyms`?(i=``,e===`pascal-upper-acronyms`||e===`camel-upper-acronyms`?(o=B,c=V):o=c=B):i=`_`,e){case`pascal`:case`pascal-upper-acronyms`:a=s=B;break;case`camel`:case`camel-upper-acronyms`:a=s=ae;break;case`underscore`:a=o=s=c=ae;break;case`upper-underscore`:a=o=s=c=V;break;default:return(0,n.assertNever)(e)}return e=>{let n=oe(re(e),t,a,o,s,c,i,T);return r===void 0?n:U(r,n)}}e.makeNameStyle=se})),da=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Chance=void 0;var t=class{constructor(e){e===void 0&&(e=Math.floor(Math.random()*10**13)),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=Array(this.N),this.mti=this.N+1,this.init_genrand(e)}init_genrand(e){for(this.mt[0]=e>>>0,this.mti=1;this.mti<this.N;this.mti++)e=this.mt[this.mti-1]^this.mt[this.mti-1]>>>30,this.mt[this.mti]=(((e&4294901760)>>>16)*1812433253<<16)+(e&65535)*1812433253+this.mti,this.mt[this.mti]>>>=0}genrand_int32(){let e,t=[0,this.MATRIX_A];if(this.mti>=this.N){let n;for(this.mti===this.N+1&&this.init_genrand(5489),n=0;n<this.N-this.M;n++)e=this.mt[n]&this.UPPER_MASK|this.mt[n+1]&this.LOWER_MASK,this.mt[n]=this.mt[n+this.M]^e>>>1^t[e&1];for(;n<this.N-1;n++)e=this.mt[n]&this.UPPER_MASK|this.mt[n+1]&this.LOWER_MASK,this.mt[n]=this.mt[n+(this.M-this.N)]^e>>>1^t[e&1];e=this.mt[this.N-1]&this.UPPER_MASK|this.mt[0]&this.LOWER_MASK,this.mt[this.N-1]=this.mt[this.M-1]^e>>>1^t[e&1],this.mti=0}return e=this.mt[this.mti++],e^=e>>>11,e^=e<<7&2636928640,e^=e<<15&4022730752,e^=e>>>18,e>>>0}random(){return this.genrand_int32()*(1/4294967296)}};e.Chance=class{constructor(e){this.seed=e,this.mt=new t(this.seed)}random(){return this.mt.random()}integer(e){return Math.floor(this.random()*(e.max-e.min+1)+e.min)}natural(e){return this.integer({min:0,max:e.max})}pick(e){if(e.length===0)throw RangeError(`Chance: Cannot pick() from an empty array`);return e[this.natural({max:e.length-1})]}animal(){return this.pick(n[this.pick([`desert`,`forest`,`ocean`,`zoo`,`farm`,`pet`,`grassland`])])}city(){return this.pick(r)}};var 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`.split(`.`),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`.split(`.`),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`.split(`.`),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`.split(`.`),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`.split(`.`),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`.split(`.`),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`.split(`.`)},r=[`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`]})),fa=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};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;var i=r(ta()),o=a(),s=Q(),c=na(),l=ua(),u=da(),d,f;function p(){d=new u.Chance(31415),f=new Set}e.initTypeNames=p,p();function m(){for(;;){let e=`${d.city()} ${d.animal()}`;if(!f.has(e))return f.add(e),e}}function h(e){let t=(0,o.iterableFirst)(e);if(t===void 0)return(0,s.panic)(`Named type has no names`);if(e.size===1)return t;let n=(0,o.setMap)(e,e=>(0,l.splitIntoWords)(e).map(e=>e.word.toLowerCase()).join(`_`)),r=(0,s.defined)((0,o.iterableFirst)(n));if(n.size===1)return r;let i=r.length,a=r.length;for(let e of(0,o.iterableSkip)(n,1)){i=Math.min(i,e.length);for(let t=0;t<i;t++)if(r[t]!==e[t]){i=t;break}a=Math.min(a,e.length);for(let t=0;t<a;t++)if(r[r.length-t-1]!==e[e.length-t-1]){a=t;break}}let c=(i>2?r.slice(0,i):``)+(a>2?r.slice(r.length-a):``);return c.length>2?c:r}e.tooManyNamesThreshold=1e3;var g=class t{static makeWithDistance(t,n,r){return t.size>=e.tooManyNamesThreshold?new v(r):((n===void 0||n.size>e.tooManyNamesThreshold)&&(n=void 0),new _(t,n,r))}static make(e,n,r){return t.makeWithDistance(e,n,r?1:0)}constructor(e){this.distance=e}get areInferred(){return this.distance>0}};e.TypeNames=g;var _=class e extends g{constructor(e,t,n){super(n),this.names=e,this._alternativeNames=t}add(t,n=0){let r=new Set(this.names),i=this.distance,a=(0,o.definedMap)(this._alternativeNames,e=>new Set(e));for(let c=n;c<t.length;c++){let n=t[c];if(n instanceof e&&n._alternativeNames!==void 0&&(a===void 0&&(a=new Set),(0,o.setUnionInto)(a,n._alternativeNames)),!(n.distance>i)){if(!(n instanceof e))return(0,s.assert)(n instanceof v,`Unknown TypeNames instance`),n.add(t,c+1);n.distance<i?(r=new Set(n.names),i=n.distance,a=(0,o.definedMap)(n._alternativeNames,e=>new Set(e))):((0,s.assert)(n.distance===i,`This should be the only case left`),(0,o.setUnionInto)(r,n.names))}}return g.makeWithDistance(r,a,i)}clearInferred(){let e=this.areInferred?new Set:this.names;return g.makeWithDistance(e,new Set,this.distance)}get combinedName(){return h(this.names)}get proposedNames(){let e=new Set([this.combinedName]);return this._alternativeNames===void 0||(0,o.setUnionInto)(e,this._alternativeNames),e}makeInferred(){return g.makeWithDistance(this.names,this._alternativeNames,this.distance+1)}singularize(){return g.makeWithDistance((0,o.setMap)(this.names,i.singular),(0,o.definedMap)(this._alternativeNames,e=>(0,o.setMap)(e,i.singular)),this.distance+1)}toString(){let e=`${this.areInferred?`distance ${this.distance}`:`given`} ${Array.from(this.names).join(`,`)}`;return this._alternativeNames===void 0?e:`${e} (${Array.from(this._alternativeNames).join(`,`)})`}};e.RegularTypeNames=_;var v=class e extends g{constructor(e,t){super(e),t===void 0&&(t=m()),this.names=new Set([t])}get combinedName(){return(0,s.defined)((0,o.iterableFirst)(this.names))}get proposedNames(){return this.names}add(e,t=0){if(!this.areInferred)return this;for(let n=t;n<e.length;n++){let t=e[n];if(t.distance<this.distance)return t.add(e,n+1)}return this}clearInferred(){return this.areInferred?g.makeWithDistance(new Set,new Set,this.distance):this}makeInferred(){return new e(this.distance+1,(0,o.iterableFirst)(this.names))}singularize(){return this}toString(){return`too many ${this.combinedName}`}};e.TooManyTypeNames=v,e.namesTypeAttributeKind=new class extends c.TypeAttributeKind{constructor(){super(`names`)}combine(e){return(0,s.assert)(e.length>0,`Can't combine zero type names`),e[0].add(e,1)}makeInferred(e){return e.makeInferred()}increaseDistance(e){return e.makeInferred()}stringify(e){return e.toString()}};function y(t,n){return e.namesTypeAttributeKind.modifyInAttributes(t,n)}e.modifyTypeNames=y;function b(e){return y(e,e=>{if(e!==void 0)return e.singularize()})}e.singularizeTypeNames=b;function x(t,n){let r;return r=typeof t==`string`?g.make(new Set([t]),new Set,(0,s.defined)(n)):t,e.namesTypeAttributeKind.makeAttributes(r)}e.makeNamesTypeAttributes=x})),pa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TypeBuilder=e.getNoStringTypeMapping=e.stringTypeMappingGet=e.provenanceTypeAttributeKind=void 0;var t=a(),n=wa(),r=va(),i=na(),o=Q(),s=ma();e.provenanceTypeAttributeKind=new class extends i.TypeAttributeKind{constructor(){super(`provenance`)}appliesToTypeKind(e){return!0}combine(e){return(0,t.setUnionManyInto)(new Set,e)}makeInferred(e){return e}stringify(e){return Array.from(e).sort().map(e=>e.toString()).join(`,`)}};function c(e,t){let n=e.get(t);return n===void 0?`string`:n}e.stringTypeMappingGet=c;var l;function u(){return l===void 0&&(l=new Map(Array.from(n.transformedStringTypeKinds).map(e=>[e,e]))),l}e.getNoStringTypeMapping=u,e.TypeBuilder=class{constructor(e,n,i,a,s,c){this._stringTypeMapping=n,this.canonicalOrder=i,this._allPropertiesOptional=a,this._addProvenanceAttributes=s,this.topLevels=new Map,this.types=[],this.typeAttributes=[],this._addedForwardingIntersection=!1,this._typeForIdentity=new t.EqualityMap,(0,o.assert)(!s||!c,`We can't both inherit as well as add provenance`),this.typeGraph=new r.TypeGraph(this,e,s||c)}addTopLevel(e,t){(0,o.assert)(!this.topLevels.has(e),`Trying to add top-level with existing name`),(0,o.assert)(this.types[(0,r.typeRefIndex)(t)]!==void 0,`Trying to add a top-level type that doesn't exist (yet?)`),this.topLevels.set(e,t)}reserveTypeRef(){let t=this.types.length;this.types.push(void 0);let n=(0,r.makeTypeRef)(this.typeGraph,t),a=this._addProvenanceAttributes?e.provenanceTypeAttributeKind.makeAttributes(new Set([t])):i.emptyTypeAttributes;return this.typeAttributes.push(a),n}assertTypeRefGraph(e){e!==void 0&&(0,r.assertTypeRefGraph)(e,this.typeGraph)}assertTypeRefSetGraph(e){e!==void 0&&e.forEach(e=>this.assertTypeRefGraph(e))}filterTypeAttributes(e,n){let r=(0,t.mapFilter)(n,(t,n)=>n.appliesToTypeKind(e.kind));return n.size!==r.size&&this.setLostTypeAttributes(),r}commitType(e,t){this.assertTypeRefGraph(e);let n=(0,r.typeRefIndex)(e);(0,o.assert)(this.types[n]===void 0,`A type index was committed twice`),this.types[n]=t,this.typeAttributes[n]=this.filterTypeAttributes(t,this.typeAttributes[n])}addType(e,t,n){e!==void 0&&(this.assertTypeRefGraph(e),(0,o.assert)(this.types[(0,r.typeRefIndex)(e)]===void 0));let a=e===void 0?this.reserveTypeRef():e;if(n!==void 0){let e=(0,r.typeRefIndex)(a);this.typeAttributes[e]=(0,i.combineTypeAttributes)(`union`,this.typeAttributes[e],n)}let s=t(a);return this.commitType(a,s),a}typeAtIndex(e){let t=this.types[e];return t===void 0?(0,o.panic)(`Trying to deref an undefined type in a type builder`):t}atIndex(e){return[this.typeAtIndex(e),this.typeAttributes[e]]}addAttributes(e,n){this.assertTypeRefGraph(e);let a=(0,r.typeRefIndex)(e),s=this.typeAttributes[a];(0,o.assert)((0,t.iterableEvery)(n,([e,n])=>{if(!e.inIdentity)return!0;let r=s.get(e);return r===void 0?!1:(0,t.areEqual)(r,n)}),`Can't add different identity type attributes to an existing type`);let c=this.types[a];c!==void 0&&(n=this.filterTypeAttributes(c,n));let l=(0,t.mapFilter)(n,(e,t)=>!t.inIdentity);this.typeAttributes[a]=(0,i.combineTypeAttributes)(`union`,s,l)}finish(){return this.typeGraph.freeze(this.topLevels,this.types.map(o.defined),this.typeAttributes),this.typeGraph}addForwardingIntersection(e,t){return this.assertTypeRefGraph(t),this._addedForwardingIntersection=!0,this.addType(e,e=>new n.IntersectionType(e,this.typeGraph,new Set([t])),void 0)}forwardIfNecessary(e,t){if(t!==void 0)return e===void 0?t:this.addForwardingIntersection(e,t)}get didAddForwardingIntersection(){return this._addedForwardingIntersection}registerTypeForIdentity(e,t){e!==void 0&&this._typeForIdentity.set(e,t)}makeIdentity(e){return e()}getOrAddType(e,n,r,i){let a=this.makeIdentity(e),o;if(o=a===void 0?void 0:this._typeForIdentity.get(a),o!==void 0){let e=this.forwardIfNecessary(i,o);return r!==void 0&&this.addAttributes(e,(0,t.mapFilter)(r,(e,t)=>!t.inIdentity)),e}let s=this.addType(i,n,r);return this.registerTypeForIdentity(a,s),s}registerType(e){this.registerTypeForIdentity(e.identity,e.typeRef)}getPrimitiveType(e,r,a){let o=(0,t.withDefault)(r,i.emptyTypeAttributes),l=e===`string`?void 0:s.StringTypes.unrestricted;return(0,n.isPrimitiveStringTypeKind)(e)&&e!==`string`&&(e=c(this._stringTypeMapping,e)),e===`string`?this.getStringType(o,l,a):this.getOrAddType(()=>(0,n.primitiveTypeIdentity)(e,o),t=>new n.PrimitiveType(t,this.typeGraph,e),o,a)}getStringType(e,r,a){let c=(0,t.mapFind)(e,(e,t)=>t===s.stringTypesTypeAttributeKind);return(0,o.assert)(r===void 0!=(c===void 0),`Must instantiate string type with one enum case attribute`),c===void 0&&(e=(0,i.combineTypeAttributes)(`union`,e,s.stringTypesTypeAttributeKind.makeAttributes((0,o.defined)(r)))),this.getOrAddType(()=>(0,n.primitiveTypeIdentity)(`string`,e),e=>new n.PrimitiveType(e,this.typeGraph,`string`),e,a)}getEnumType(e,t,r){return this.getOrAddType(()=>(0,n.enumTypeIdentity)(e,t),e=>new n.EnumType(e,this.typeGraph,t),e,r)}makeClassProperty(e,t){return new n.ClassProperty(e,this.typeGraph,t)}getUniqueObjectType(e,r,i,a){return this.assertTypeRefGraph(i),r=(0,t.definedMap)(r,e=>this.modifyPropertiesIfNecessary(e)),this.addType(a,e=>new n.ObjectType(e,this.typeGraph,`object`,!0,r,i),e)}getUniqueMapType(e){return this.addType(e,e=>new n.MapType(e,this.typeGraph,void 0),void 0)}getMapType(e,t,r){return this.assertTypeRefGraph(t),this.getOrAddType(()=>(0,n.mapTypeIdentify)(e,t),e=>new n.MapType(e,this.typeGraph,t),e,r)}setObjectProperties(e,t,i){this.assertTypeRefGraph(i);let a=(0,r.derefTypeRef)(e,this.typeGraph);if(!(a instanceof n.ObjectType))return(0,o.panic)(`Tried to set properties of non-object type`);a.setProperties(this.modifyPropertiesIfNecessary(t),i),this.registerType(a)}getUniqueArrayType(e){return this.addType(e,e=>new n.ArrayType(e,this.typeGraph,void 0),void 0)}getArrayType(e,t,r){return this.assertTypeRefGraph(t),this.getOrAddType(()=>(0,n.arrayTypeIdentity)(e,t),e=>new n.ArrayType(e,this.typeGraph,t),e,r)}setArrayItems(e,t){this.assertTypeRefGraph(t);let i=(0,r.derefTypeRef)(e,this.typeGraph);if(!(i instanceof n.ArrayType))return(0,o.panic)(`Tried to set items of non-array type`);i.setItems(t),this.registerType(i)}modifyPropertiesIfNecessary(e){return e.forEach(e=>this.assertTypeRefGraph(e.typeRef)),this.canonicalOrder&&(e=(0,t.mapSortByKey)(e)),this._allPropertiesOptional&&(e=(0,t.mapMap)(e,e=>this.makeClassProperty(e.typeRef,!0))),e}getClassType(e,t,r){return t=this.modifyPropertiesIfNecessary(t),this.getOrAddType(()=>(0,n.classTypeIdentity)(e,t),e=>new n.ClassType(e,this.typeGraph,!1,t),e,r)}getUniqueClassType(e,r,i,a){return i=(0,t.definedMap)(i,e=>this.modifyPropertiesIfNecessary(e)),this.addType(a,e=>new n.ClassType(e,this.typeGraph,r,i),e)}getUnionType(e,t,r){return this.assertTypeRefSetGraph(t),this.getOrAddType(()=>(0,n.unionTypeIdentity)(e,t),e=>new n.UnionType(e,this.typeGraph,t),e,r)}getUniqueUnionType(e,t,r){return this.assertTypeRefSetGraph(t),this.addType(r,e=>new n.UnionType(e,this.typeGraph,t),e)}getIntersectionType(e,t,r){return this.assertTypeRefSetGraph(t),this.getOrAddType(()=>(0,n.intersectionTypeIdentity)(e,t),e=>new n.IntersectionType(e,this.typeGraph,t),e,r)}getUniqueIntersectionType(e,t,r){return this.assertTypeRefSetGraph(t),this.addType(r,e=>new n.IntersectionType(e,this.typeGraph,t),e)}setSetOperationMembers(e,t){this.assertTypeRefSetGraph(t);let i=(0,r.derefTypeRef)(e,this.typeGraph);if(!(i instanceof n.UnionType||i instanceof n.IntersectionType))return(0,o.panic)(`Tried to set members of non-set-operation type`);i.setMembers(t),this.registerType(i)}setLostTypeAttributes(){}}})),ma=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.inferTransformedStringTypeKindForString=e.stringTypesTypeAttributeKind=e.StringTypes=void 0;var t=a(),n=na(),r=Q(),i=pa(),o=class e{static fromCase(t,n){let r={};return r[t]=n,new e(new Map([[t,n]]),new Set)}static fromCases(t){let n={};for(let e of t)n[e]=1;return new e(new Map(t.map(e=>[e,1])),new Set)}constructor(e,t){this.cases=e,this.transformations=t,e===void 0&&(0,r.assert)(t.size===0,`We can't have an unrestricted string that also allows transformations`)}get isRestricted(){return this.cases!==void 0}union(n,r){if(this.cases===void 0)return this;let i=new Map(this.cases),a=new Set(this.transformations);for(let e=r;e<n.length;e++){let r=n[e];if(r.cases===void 0)return r;(0,t.mapMergeWithInto)(i,(e,t)=>e+t,r.cases),(0,t.setUnionInto)(a,r.transformations)}return new e(i,a)}intersect(n,i){let a=this.cases,o=this.transformations;for(let e=i;e<n.length;e++){let i=n[e];if(a===void 0)a=(0,t.definedMap)(i.cases,e=>new Map(e));else if(i.cases!==void 0){let e=a,n=i.cases;a=(0,t.mapMap)((0,t.setIntersect)(e.keys(),new Set(n.keys())).entries(),t=>Math.min((0,r.defined)(e.get(t)),(0,r.defined)(n.get(t))))}o=(0,t.setIntersect)(o,i.transformations)}return new e(a,o)}applyStringTypeMapping(t){if(!this.isRestricted)return this;let n=new Set;for(let r of this.transformations){let a=(0,i.stringTypeMappingGet)(t,r);if(a===`string`)return e.unrestricted;n.add(a)}return new e(this.cases,new Set(n))}equals(n){return n instanceof e?(0,t.areEqual)(this.cases,n.cases)&&(0,t.areEqual)(this.transformations,n.transformations):!1}hashCode(){let e=(0,t.hashCodeOf)(this.cases);return e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.transformations)),e}toString(){let e=[],n=this.cases;if(n===void 0)e.push(`unrestricted`);else{let r=(0,t.iterableFirst)(n.keys());r===void 0?e.push(`enum with no cases`):e.push(`${n.size.toString()} enums: ${r} (${n.get(r)}), ...`)}return e.concat(Array.from(this.transformations)).join(`,`)}};e.StringTypes=o,o.unrestricted=new o(void 0,new Set),e.stringTypesTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`stringTypes`)}get inIdentity(){return!0}requiresUniqueIdentity(e){return e.cases!==void 0&&e.cases.size>0}combine(e){return(0,r.assert)(e.length>0),e[0].union(e,1)}intersect(e){return(0,r.assert)(e.length>0),e[0].intersect(e,1)}makeInferred(e){}stringify(e){return e.toString()}};var s=/^(0|-?[1-9]\d*)$/,c=1<<31,l=-(c+1);function u(e){if(e.match(s)===null)return!1;let t=parseInt(e,10);return t>=c&&t<=l}var d=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function f(e){return e.match(d)!==null}var p=/^(https?|ftp):\/\/[^{}]+$/;function m(e){return e.match(p)!==null}function h(e,t){if(!(e.length===0||`0123456789-abcdefth`.indexOf(e[0])<0)){if(t.isDate(e))return`date`;if(t.isTime(e))return`time`;if(t.isDateTime(e))return`date-time`;if(u(e))return`integer-string`;if(e===`false`||e===`true`)return`bool-string`;if(f(e))return`uuid`;if(m(e))return`uri`}}e.inferTransformedStringTypeKindForString=h})),ha=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.matchCompoundType=e.matchType=e.matchTypeExhaustive=e.stringTypesForType=e.directlyReachableSingleNamedType=e.directlyReachableTypes=e.separateNamedTypes=e.isNamedType=e.getNullAsOptional=e.nonNullTypeCases=e.nullableFromUnion=e.removeNullFromType=e.removeNullFromUnion=e.isAnyOrNull=e.combineTypeAttributesOfTypes=e.makeGroupsToFlatten=e.setOperationMembersRecursively=e.assertIsClass=e.assertIsObject=void 0;var t=a(),n=Q(),r=na(),i=wa(),o=ma();function s(e){return e instanceof i.ObjectType?e:(0,n.panic)(`Supposed object type is not an object type`)}e.assertIsObject=s;function c(e){return e instanceof i.ClassType?e:(0,n.panic)(`Supposed class type is not a class type`)}e.assertIsClass=c;function l(e,t){let n=Array.isArray(e)?e:[e],i=n[0].kind,a=i!==`intersection`,o=new Set,s=new Set,c=r.emptyTypeAttributes;function l(e){if(e.kind===i){let n=e;if(o.has(n))return;o.add(n),t!==void 0&&(c=(0,r.combineTypeAttributes)(t,c,e.getAttributes()));for(let e of n.members)l(e)}else a||e.kind!==`any`?s.add(e):t!==void 0&&(c=(0,r.combineTypeAttributes)(t,c,e.getAttributes()))}for(let e of n)l(e);return[s,c]}e.setOperationMembersRecursively=l;function u(e,r){let i=new t.EqualityMap;for(let a of e){let e=new Set(l(a,void 0)[0]);if(r!==void 0&&!r(e))continue;let o=i.get(e);o===void 0&&(o=new Set,e.size===1&&o.add((0,n.defined)((0,t.iterableFirst)(e)))),o.add(a),i.set(e,o)}return Array.from(i.values()).map(e=>Array.from(e))}e.makeGroupsToFlatten=u;function d(e,t){return(0,r.combineTypeAttributes)(e,Array.from(t).map(e=>e.getAttributes()))}e.combineTypeAttributesOfTypes=d;function f(e){return e.kind===`any`||e.kind===`null`}e.isAnyOrNull=f;function p(e,n=!1){function r(e){return n===!1?e:n===!0?(0,t.setSortBy)(e,e=>e.kind):(0,t.setSortBy)(e,n)}let i=e.findMember(`null`);return i===void 0?[null,r(e.members)]:[i,r((0,t.setFilter)(e.members,e=>e.kind!==`null`))]}e.removeNullFromUnion=p;function m(e){return e.kind===`null`?[e,new Set]:e instanceof i.UnionType?p(e):[null,new Set([e])]}e.removeNullFromType=m;function h(e){let[r,i]=p(e);return r===null||i.size!==1?null:(0,n.defined)((0,t.iterableFirst)(i))}e.nullableFromUnion=h;function g(e){return m(e)[1]}e.nonNullTypeCases=g;function _(e){let[t,n]=m(e.type);return e.isOptional?[!0,n]:[t!==null,n]}e.getNullAsOptional=_;function v(e){return[`class`,`union`,`enum`,`object`].indexOf(e.kind)>=0}e.isNamedType=v;function y(e){return{objects:(0,t.setFilter)(e,e=>e.kind===`object`||e.kind===`class`),enums:(0,t.setFilter)(e,e=>e instanceof i.EnumType),unions:(0,t.setFilter)(e,e=>e instanceof i.UnionType)}}e.separateNamedTypes=y;function b(e,n){let r=n(e);return r===null?(0,t.setUnion)(...Array.from(e.getNonAttributeChildren()).map(e=>b(e,n))):r}e.directlyReachableTypes=b;function x(e){let r=b(e,e=>!(e instanceof i.UnionType)&&v(e)||e instanceof i.UnionType&&h(e)===null?new Set([e]):null);return(0,n.assert)(r.size<=1,`Cannot have more than one defined type per top-level`),(0,t.iterableFirst)(r)}e.directlyReachableSingleNamedType=x;function S(e){(0,n.assert)(e.kind===`string`,`Only strings can have string types`);let t=o.stringTypesTypeAttributeKind.tryGetInAttributes(e.getAttributes());return t===void 0?(0,n.panic)(`All strings must have a string type attribute`):t}e.stringTypesForType=S;function C(e,t,r,a,o,s,c,l,u,d,f,p,m,h,g){if(e.isPrimitive()){if((0,i.isPrimitiveStringTypeKind)(e.kind))return e.kind===`string`?l(e):g(e);let u=e.kind,d={none:t,any:r,null:a,bool:o,integer:s,double:c}[u];return d===void 0?(0,n.assertNever)(d):d(e)}else if(e instanceof i.ArrayType)return u(e);else if(e instanceof i.ClassType)return d(e);else if(e instanceof i.MapType)return f(e);else if(e instanceof i.ObjectType)return p(e);else if(e instanceof i.EnumType)return m(e);else if(e instanceof i.UnionType)return h(e);return(0,n.panic)(`Unknown type ${e.kind}`)}e.matchTypeExhaustive=C;function w(e,t,r,i,a,o,s,c,l,u,d,f,p){function m(e){return(0,n.panic)(`Unsupported type ${e.kind} in non-exhaustive match`)}return C(e,m,t,r,i,a,o,s,c,l,u,m,d,f,p||m)}e.matchType=w;function T(e,t,n,r,i,a){function o(e){}return C(e,o,o,o,o,o,o,o,t,n,r,i,o,a,o)}e.matchCompoundType=T})),ga=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.GraphRewriteBuilder=e.GraphRemapBuilder=e.BaseGraphRewriteBuilder=e.TypeReconstituter=void 0;var t=a(),n=ha(),r=va(),i=na(),o=Q(),s=pa(),c=class{constructor(e,t,n,r,i){this._typeBuilder=e,this._makeClassUnique=t,this._typeAttributes=n,this._forwardingRef=r,this._register=i,this._wasUsed=!1,this._typeRef=void 0}builderForNewType(){return(0,o.assert)(!this._wasUsed,`TypeReconstituter used more than once`),this._wasUsed=!0,this._typeBuilder}builderForSetting(){return(0,o.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,o.panic)(`Type was not reconstituted`):this._typeRef}register(e){(0,o.assert)(this._typeRef===void 0,`Cannot register a type twice`),this._typeRef=e,this._register(e)}registerAndAddAttributes(e){this._typeBuilder.addAttributes(e,this._typeAttributes),this.register(e)}lookup(e){if((0,o.assert)(!this._wasUsed,`Cannot lookup constituents after building type`),(0,r.isTypeRef)(e))return this._typeBuilder.lookupTypeRefs([e],void 0,!1);{let t=Array.from(e).map(e=>this._typeBuilder.lookupTypeRefs([e],void 0,!1));return t.some(e=>e===void 0)?void 0:t}}lookupMap(e){let t=this.lookup(e.values());if(t===void 0)return;(0,o.assert)(t.length===e.size,`Didn't get back the correct number of types`);let n=new Map,r=0;for(let i of e.keys())n.set(i,t[r]),r+=1;return n}reconstitute(e){return(0,o.assert)(this._wasUsed,`Cannot reconstitute constituents before building type`),(0,r.isTypeRef)(e)?this._typeBuilder.reconstituteTypeRef(e):Array.from(e).map(e=>this._typeBuilder.reconstituteTypeRef(e))}reconstituteMap(e){return(0,t.mapMap)(e,e=>this._typeBuilder.reconstituteTypeRef(e))}getPrimitiveType(e){this.register(this.builderForNewType().getPrimitiveType(e,this._typeAttributes,this._forwardingRef))}getEnumType(e){this.register(this.builderForNewType().getEnumType(this._typeAttributes,e,this._forwardingRef))}getUniqueMapType(){this.registerAndAddAttributes(this.builderForNewType().getUniqueMapType(this._forwardingRef))}getMapType(e){this.register(this.builderForNewType().getMapType(this._typeAttributes,e,this._forwardingRef))}getUniqueArrayType(){this.registerAndAddAttributes(this.builderForNewType().getUniqueArrayType(this._forwardingRef))}getArrayType(e){this.register(this.builderForNewType().getArrayType(this._typeAttributes,e,this._forwardingRef))}setArrayItems(e){this.builderForSetting().setArrayItems(this.getResult(),e)}makeClassProperty(e,t){return this._typeBuilder.makeClassProperty(e,t)}getObjectType(e,t){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,e,t,this._forwardingRef))}getUniqueObjectType(e,t){this.register(this.builderForNewType().getUniqueObjectType(this._typeAttributes,e,t,this._forwardingRef))}getClassType(e){if(this._makeClassUnique){this.getUniqueClassType(!1,e);return}this.register(this.builderForNewType().getClassType(this._typeAttributes,e,this._forwardingRef))}getUniqueClassType(e,t){this.register(this.builderForNewType().getUniqueClassType(this._typeAttributes,e,t,this._forwardingRef))}setObjectProperties(e,t){this.builderForSetting().setObjectProperties(this.getResult(),e,t)}getUnionType(e){this.register(this.builderForNewType().getUnionType(this._typeAttributes,e,this._forwardingRef))}getUniqueUnionType(){this.register(this.builderForNewType().getUniqueUnionType(this._typeAttributes,void 0,this._forwardingRef))}getIntersectionType(e){this.register(this.builderForNewType().getIntersectionType(this._typeAttributes,e,this._forwardingRef))}getUniqueIntersectionType(e){this.register(this.builderForNewType().getUniqueIntersectionType(this._typeAttributes,e,this._forwardingRef))}setSetOperationMembers(e){this.builderForSetting().setSetOperationMembers(this.getResult(),e)}};e.TypeReconstituter=c;var l=class extends s.TypeBuilder{constructor(e,t,n,r,i){super(e.serial+1,t,n,!1,!1,r),this.originalGraph=e,this.debugPrint=i,this.reconstitutedTypes=new Map,this._lostTypeAttributes=!1,this._printIndent=0}withForwardingRef(e,t){if(e!==void 0)return t(e);let n=this.reserveTypeRef(),r=t(n);return(0,o.assert)(r===n,`Type creator didn't return its forwarding ref`),r}reconstituteType(e,t,n){return this.reconstituteTypeRef(e.typeRef,t,n)}reconstituteTypeRef(e,t,n){let r=this.lookupTypeRefs([e],n);return r===void 0?this.forceReconstituteTypeRef(e,t,n):(t!==void 0&&this.addAttributes(r,t),r)}reconstituteTypeAttributes(e){return(0,t.mapMap)(e,(e,t)=>t.reconstitute(this,e))}assertTypeRefsToReconstitute(e,t){(0,o.assert)(e.length>0,`Must have at least one type to reconstitute`);for(let t of e)(0,r.assertTypeRefGraph)(t,this.originalGraph);t!==void 0&&(0,r.assertTypeRefGraph)(t,this.typeGraph)}changeDebugPrintIndent(e){this._printIndent+=e}get debugPrintIndentation(){return(0,o.indentationString)(this._printIndent)}finish(){for(let[e,t]of this.originalGraph.topLevels)this.addTopLevel(e,this.reconstituteType(t));return super.finish()}setLostTypeAttributes(){this._lostTypeAttributes=!0}get lostTypeAttributes(){return this._lostTypeAttributes}};e.BaseGraphRewriteBuilder=l,e.GraphRemapBuilder=class extends l{constructor(e,t,n,r,i,a){super(e,t,n,r,a),this._map=i,this._attributeSources=new Map;for(let[e,t]of i){let n=this._attributeSources.get(t);n===void 0&&(n=[t],this._attributeSources.set(t,n)),n.push(e)}}makeIdentity(e){}getMapTarget(e){let t=this._map.get((0,r.derefTypeRef)(e,this.originalGraph));return t===void 0?e:((0,o.assert)(this._map.get(t)===void 0,`We have a type that's remapped to a remapped type`),t.typeRef)}addForwardingIntersection(e,t){return(0,o.panic)(`We can't add forwarding intersections when we're removing forwarding intersections`)}lookupTypeRefs(e,t){(0,o.assert)(t===void 0,`We can't have a forwarding ref when we remap`),this.assertTypeRefsToReconstitute(e,t);let n=this.reconstitutedTypes.get((0,r.typeRefIndex)(this.getMapTarget(e[0])));if(n!==void 0){for(let t=1;t<e.length;t++)if(n!==this.reconstitutedTypes.get((0,r.typeRefIndex)(this.getMapTarget(e[t]))))return;return n}}forceReconstituteTypeRef(e,t,a){e=this.getMapTarget(e);let s=(0,r.typeRefIndex)(e);return(0,o.assert)(this.reconstitutedTypes.get(s)===void 0,`Type has already been reconstituted`),(0,o.assert)(a===void 0,`We can't have a forwarding ref when we remap`),this.withForwardingRef(void 0,a=>{this.reconstitutedTypes.set(s,a),this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${s} as ${(0,r.typeRefIndex)(a)}`),this.changeDebugPrintIndent(1));let[l,u]=(0,r.typeAndAttributesForTypeRef)(e,this.originalGraph),d=this._attributeSources.get(l);t===void 0&&(t=i.emptyTypeAttributes),t=d===void 0?(0,i.combineTypeAttributes)(`union`,t,this.reconstituteTypeAttributes(u)):(0,i.combineTypeAttributes)(`union`,t,this.reconstituteTypeAttributes((0,n.combineTypeAttributesOfTypes)(`union`,d)));let f=t,p=new c(this,this.canonicalOrder,f,a,e=>{(0,o.assert)(e===a,`Reconstituted type as a different ref`),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${s} as ${(0,r.typeRefIndex)(e)}`))});return l.reconstitute(p,this.canonicalOrder),p.getResult()})}},e.GraphRewriteBuilder=class extends l{constructor(e,n,r,i,a,s,c){super(e,n,r,i,s),this._replacer=c,this._reconstitutedUnions=new t.EqualityMap,this._setsToReplaceByMember=new Map;for(let e of a){let t=new Set(e);for(let e of t){let n=e.index;(0,o.assert)(!this._setsToReplaceByMember.has(n),`A type is member of more than one set to be replaced`),this._setsToReplaceByMember.set(n,t)}}}registerUnion(e,t){let n=new Set(e);(0,o.assert)(!this._reconstitutedUnions.has(n),`Cannot register reconstituted set twice`),this._reconstitutedUnions.set(n,t)}replaceSet(e,t){return this.withForwardingRef(t,t=>{this.debugPrint&&(console.log(`${this.debugPrintIndentation}replacing set ${Array.from(e).map(e=>e.index.toString()).join(`,`)} as ${(0,r.typeRefIndex)(t)}`),this.changeDebugPrintIndent(1));for(let n of e){let e=n.typeRef,i=(0,r.typeRefIndex)(e);this.reconstitutedTypes.set(i,t),this._setsToReplaceByMember.delete(i)}let n=this._replacer(e,this,t);return(0,o.assert)(n===t,`The forwarding ref got lost when replacing`),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}replaced set ${Array.from(e).map(e=>e.index.toString()).join(`,`)} as ${(0,r.typeRefIndex)(t)}`)),n})}forceReconstituteTypeRef(e,t,n){let[a,s]=(0,r.typeAndAttributesForTypeRef)(e,this.originalGraph),l=(0,r.typeRefIndex)(e);this.debugPrint&&(console.log(`${this.debugPrintIndentation}reconstituting ${l}`),this.changeDebugPrintIndent(1)),t=t===void 0?this.reconstituteTypeAttributes(s):(0,i.combineTypeAttributes)(`union`,t,this.reconstituteTypeAttributes(s));let u=new c(this,this.canonicalOrder,t,n,e=>{this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log(`${this.debugPrintIndentation}reconstituted ${l} as ${(0,r.typeRefIndex)(e)}`)),n!==void 0&&(0,o.assert)(e===n,`We didn't pass the forwarding ref`);let t=this.reconstitutedTypes.get(l);t===void 0?this.reconstitutedTypes.set(l,e):(0,o.assert)(e===t,`We reconstituted a type twice differently`)});return a.reconstitute(u,this.canonicalOrder),u.getResult()}lookupTypeRefs(e,t,n=!0){this.assertTypeRefsToReconstitute(e,t);let i=this.reconstitutedTypes.get((0,r.typeRefIndex)(e[0]));if(i!==void 0&&i!==t){let n=!0;for(let t=1;t<e.length;t++)if(this.reconstitutedTypes.get((0,r.typeRefIndex)(e[t]))!==i){n=!1;break}if(n)return this.forwardIfNecessary(t,i)}if(i=this._reconstitutedUnions.get(new Set(e)),i!==void 0&&i!==t)return this.forwardIfNecessary(t,i);let a=this._setsToReplaceByMember.get((0,r.typeRefIndex)(e[0]));if(a!==void 0){for(let t=1;t<e.length;t++)if(this._setsToReplaceByMember.get((0,r.typeRefIndex)(e[t]))!==a)return;if(n)return this.replaceSet(a,t)}}}})),_a=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Graph=void 0;var t=a(),n=Q();function r(e){if(e.length===0)return 0;let t=-1,r=0;for(let i of e){(0,n.assert)(i.length>0,`Empty component not allowed`);for(let e of i)(0,n.assert)(e>=0,`Negative vertex index is invalid`),t=Math.max(t,e),r+=1}return(0,n.assert)(t+1===r,`Vertex indexes and count don't match up`),r}function i(e){let t=0,i=[],a=e.length,o=(0,n.repeated)(a,-1),s=(0,n.repeated)(a,-1),c=(0,n.repeated)(a,!1),l=[];function u(r){o[r]=t,s[r]=t,t+=1,i.push(r),c[r]=!0;for(let t of e[r])o[t]<0?(u(t),s[r]=Math.min(s[r],s[t])):c[t]&&(s[r]=Math.min(s[r],o[t]));if(s[r]===o[r]){let e=[],t;do t=(0,n.defined)(i.pop()),c[t]=!1,e.push(t);while(t!==r);l.push(e)}}for(let e=0;e<a;e++)o[e]<0&&u(e);return(0,n.assert)(r(l)===a,`We didn't put all the nodes into SCCs`),l}function o(e,t){let i=t.length,a=e.length;(0,n.assert)(a===r(t),`Components don't match up with graph`);let o=(0,n.repeated)(a,-1);for(let e=0;e<i;e++)for(let r of t[e])(0,n.assert)(o[r]<0,`We have a node that's in two components`),o[r]=e;return o}function s(e,t){let r=t.length,i=o(e,t),a=(0,n.repeated)(r,!1),s=[];for(let o=0;o<r;o++){let r=[];for(let n of t[o])for(let t of e[n]){let e=i[t];e===o||a[e]||(r.push(e),a[e]=!0)}for(let e of r)(0,n.assert)(a[e]),a[e]=!1;s.push(r)}return s}function c(e){let t=e.length,r=(0,n.repeatedCall)(t,()=>[]);for(let n=0;n<t;n++)for(let t of e[n])r[t].push(n);return r}function l(e){let t=e.length,r=(0,n.repeated)(t,0);for(let t of e)for(let e of t)r[e]+=1;return r}function u(e){let t=e.length,n=l(e),r=[];for(let e=0;e<t;e++)n[e]===0&&r.push(e);return r}e.Graph=class e{constructor(e,t,r){this._nodes=Array.from(e),this._indexByNode=new Map(this._nodes.map((e,t)=>[e,t]));let i;i=Array.isArray(r)?r:this._nodes.map(e=>Array.from(r(e)).map(e=>(0,n.defined)(this._indexByNode.get(e)))),t&&(i=c(i)),this._successors=i}get size(){return this._nodes.length}get nodes(){return this._nodes}findRoots(){let e=u(this._successors);return new Set(e.map(e=>this._nodes[e]))}dfsTraversal(e,t,r){let i=(0,n.repeated)(this.size,!1),a=e=>{if(!i[e]){i[e]=!0,t&&r(this._nodes[e]);for(let t of this._successors[e])a(t);t||r(this._nodes[e])}};a((0,n.defined)(this._indexByNode.get(e)))}stronglyConnectedComponents(){let n=i(this._successors),r=s(this._successors,n);return new e(n.map(e=>(0,t.setMap)(e,e=>this._nodes[e])),!1,r)}makeDot(e,t){let n=[];n.push(`digraph G {`),n.push(` ordering = out;`),n.push(``);for(let r=0;r<this.size;r++){let i=this._nodes[r];e(i)&&n.push(` node${r} [label="${t(i)}"];`)}for(let t=0;t<this.size;t++)if(e(this._nodes[t]))for(let r of this._successors[t])e(this._nodes[r])&&n.push(` node${t} -> node${r};`);return n.push(`}`),n.push(``),n.join(`
116
+ `)}}})),va=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.removeIndirectionIntersections=e.optionalToNullable=e.noneToAny=e.TypeGraph=e.TypeAttributeStoreView=e.TypeAttributeStore=e.typeAndAttributesForTypeRef=e.attributesForTypeRef=e.derefTypeRef=e.assertTypeRefGraph=e.typeRefIndex=e.makeTypeRef=e.isTypeRef=void 0;var t=a(),n=wa(),r=ha(),i=Q(),o=pa(),s=ga(),c=fa(),l=_a(),u=na(),d=C(),f=26,p=(1<<f)-1,m=(1<<31-f)-1;function h(e){return typeof e==`number`}e.isTypeRef=h;function g(e,t){return(0,i.assert)(t<=p,`Too many types in graph`),(e.serial&m)<<f|t}e.makeTypeRef=g;function _(e){return e&p}e.typeRefIndex=_;function v(e,t){(0,i.assert)((e>>f&m)===(t.serial&m),`Mixing the wrong type reference and graph`)}e.assertTypeRefGraph=v;function y(e){return e instanceof E?e:e.originalGraph}function b(e,t){let n=y(t);return v(e,n),n.typeAtIndex(_(e))}e.derefTypeRef=b;function x(e,t){let n=y(t);return v(e,n),n.atIndex(_(e))[1]}e.attributesForTypeRef=x;function S(e,t){let n=y(t);return v(e,n),n.atIndex(_(e))}e.typeAndAttributesForTypeRef=S;var w=class{constructor(e,t){this._typeGraph=e,this._values=t,this._topLevelValues=new Map}getTypeIndex(e){let t=e.typeRef;return v(t,this._typeGraph),_(t)}attributesForType(e){let t=this.getTypeIndex(e),n=this._values[t];return n===void 0?u.emptyTypeAttributes:n}attributesForTopLevel(e){let t=this._topLevelValues.get(e);return t===void 0?u.emptyTypeAttributes:t}setInMap(e,t,n){return new Map(e).set(t,n)}set(e,t,n){let r=this.getTypeIndex(t);for(;r>=this._values.length;)this._values.push(void 0);this._values[r]=this.setInMap(this.attributesForType(t),e,n)}setForTopLevel(e,t,n){this._topLevelValues.set(t,this.setInMap(this.attributesForTopLevel(t),e,n))}tryGetInMap(e,t){return e.get(t)}tryGet(e,t){return this.tryGetInMap(this.attributesForType(t),e)}tryGetForTopLevel(e,t){return this.tryGetInMap(this.attributesForTopLevel(t),e)}};e.TypeAttributeStore=w;var T=class{constructor(e,t){this._attributeStore=e,this._definition=t}set(e,t){this._attributeStore.set(this._definition,e,t)}setForTopLevel(e,t){this._attributeStore.setForTopLevel(this._definition,e,t)}tryGet(e){return this._attributeStore.tryGet(this._definition,e)}get(e){return(0,i.defined)(this.tryGet(e))}tryGetForTopLevel(e){return this._attributeStore.tryGetForTopLevel(this._definition,e)}getForTopLevel(e){return(0,i.defined)(this.tryGetForTopLevel(e))}};e.TypeAttributeStoreView=T;var E=class{constructor(e,t,n){this.serial=t,this._haveProvenanceAttributes=n,this._attributeStore=void 0,this._topLevels=new Map,this._parents=void 0,this._printOnRewrite=!1,this._typeBuilder=e}get isFrozen(){return this._typeBuilder===void 0}get attributeStore(){return(0,i.defined)(this._attributeStore)}freeze(e,n,r){(0,i.assert)(!this.isFrozen,`Tried to freeze TypeGraph a second time`);for(let e of n)v(e.typeRef,this);this._attributeStore=new w(this,r),this._types=n,this._typeBuilder=void 0,this._topLevels=(0,t.mapMap)(e,e=>b(e,this))}get topLevels(){return(0,i.assert)(this.isFrozen,`Cannot get top-levels from a non-frozen graph`),this._topLevels}typeAtIndex(e){return this._typeBuilder===void 0?(0,i.defined)(this._types)[e]:this._typeBuilder.typeAtIndex(e)}atIndex(e){if(this._typeBuilder!==void 0)return this._typeBuilder.atIndex(e);let t=this.typeAtIndex(e);return[t,(0,i.defined)(this._attributeStore).attributesForType(t)]}filterTypes(e){let t=new Set,n=[];function r(i){if(!t.has(i)){t.add(i),(e===void 0||e(i))&&n.push(i);for(let e of i.getChildren())r(e)}}for(let[,e]of this.topLevels)r(e);return new Set(n)}allNamedTypes(){return this.filterTypes(r.isNamedType)}allNamedTypesSeparated(){let e=this.allNamedTypes();return(0,r.separateNamedTypes)(e)}allProvenance(){(0,i.assert)(this._haveProvenanceAttributes);let e=new T(this.attributeStore,o.provenanceTypeAttributeKind),n=Array.from(this.allTypesUnordered()).map(t=>{let n=e.tryGet(t);return n===void 0?new Set:n}),r=new Set;return(0,t.setUnionManyInto)(r,n),r}setPrintOnRewrite(){this._printOnRewrite=!0}checkLostTypeAttributes(e,n){if(!this._haveProvenanceAttributes||e.lostTypeAttributes)return;let r=this.allProvenance(),i=n.allProvenance();if(r.size!==i.size){let e=(0,t.setSubtract)(r,i),n=Array.from(e);return(0,d.messageError)(`IRTypeAttributesNotPropagated`,{count:e.size,indexes:n})}}printRewrite(e){this._printOnRewrite&&console.log(`\n# ${e}`)}rewrite(e,t,n,r,i,a,o=!1){if(this.printRewrite(e),!o&&r.length===0)return this;let c=new s.GraphRewriteBuilder(this,t,n,this._haveProvenanceAttributes,r,i,a),l=c.finish();return this.checkLostTypeAttributes(c,l),this._printOnRewrite&&(l.setPrintOnRewrite(),l.printGraph()),c.didAddForwardingIntersection?k(l,t,i):l}remap(e,t,n,r,a,o=!1){if(this.printRewrite(e),!o&&r.size===0)return this;let c=new s.GraphRemapBuilder(this,t,n,this._haveProvenanceAttributes,r,a),l=c.finish();return this.checkLostTypeAttributes(c,l),this._printOnRewrite&&(l.setPrintOnRewrite(),l.printGraph()),(0,i.assert)(!c.didAddForwardingIntersection),l}garbageCollect(e,t){return this.remap(`GC`,(0,o.getNoStringTypeMapping)(),e,new Map,t,!0)}rewriteFixedPoint(e,t){let n=this;for(;;){let r=this.rewrite(`fixed-point`,(0,o.getNoStringTypeMapping)(),e,[],t,i.mustNotHappen,!0);if(n.allTypesUnordered().size===r.allTypesUnordered().size)return n;n=r}}allTypesUnordered(){return(0,i.assert)(this.isFrozen,`Tried to get all graph types before it was frozen`),new Set((0,i.defined)(this._types))}makeGraph(e,t){return new l.Graph((0,i.defined)(this._types),e,t)}getParentsOfType(e){if(v(e.typeRef,this),this._parents===void 0){let e=(0,i.defined)(this._types).map(e=>new Set);for(let t of this.allTypesUnordered())for(let n of t.getChildren()){let r=n.index;e[r]=e[r].add(t)}this._parents=e}return this._parents[e.index]}printGraph(){let e=(0,i.defined)(this._types);for(let t=0;t<e.length;t++){let n=e[t],r=[];r.push(`${n.debugPrintKind}${n.hasNames?` ${n.getCombinedName()}`:``}`);let i=n.getChildren();i.size>0&&r.push(`children ${Array.from(i).map(e=>e.index).join(`,`)}`);for(let[e,t]of n.getAttributes()){let n=e.stringify(t);n!==void 0&&r.push(n)}console.log(`${t}: ${r.join(` | `)}`)}}};e.TypeGraph=E;function D(e,n,a){let o=(0,t.setFilter)(e.allTypesUnordered(),e=>e.kind===`none`);return o.size===0?e:((0,i.assert)(o.size===1,`Cannot have more than one none type`),e.rewrite(`none to any`,n,!1,[Array.from(o)],a,(e,t,n)=>{let i=(0,r.combineTypeAttributesOfTypes)(`union`,e);return t.getPrimitiveType(`any`,i,n)}))}e.noneToAny=D;function O(e,r,a){function o(e,r,i){let a=(0,t.mapMap)(e.getProperties(),(e,i)=>{let a=e.type,o;if(!e.isOptional||a.isNullable)o=r.reconstituteType(a);else{let e=r.getPrimitiveType(`null`),s;s=a instanceof n.UnionType?(0,t.setMap)(a.members,e=>r.reconstituteType(e)).add(e):new Set([r.reconstituteType(a),e]);let l=c.namesTypeAttributeKind.setDefaultInAttributes(a.getAttributes(),()=>c.TypeNames.make(new Set([i]),new Set,!0));o=r.getUnionType(l,s)}return r.makeClassProperty(o,e.isOptional)});return e.isFixed?r.getUniqueClassType(e.getAttributes(),!0,a,i):r.getClassType(e.getAttributes(),a,i)}let s=(0,t.setFilter)(e.allTypesUnordered(),e=>e instanceof n.ClassType&&(0,t.mapSome)(e.getProperties(),e=>e.isOptional)),l=Array.from(s).map(e=>[e]);return s.size===0?e:e.rewrite(`optional to nullable`,r,!1,l,a,(e,n,r)=>((0,i.assert)(e.size===1),o((0,i.defined)((0,t.iterableFirst)(e)),n,r)))}e.optionalToNullable=O;function k(e,r,a){let o=[];for(let r of e.allTypesUnordered()){if(!(r instanceof n.IntersectionType))continue;let e=new Set([r]),a=r;for(;a.members.size===1;){let s=(0,i.defined)((0,t.iterableFirst)(a.members));if(!(s instanceof n.IntersectionType)){o.push([r,s]);break}if(e.has(s))return(0,i.panic)(`There's a cycle of intersection types`);e.add(s),a=s}}return e.remap(`remove indirection intersections`,r,!1,new Map(o),a)}e.removeIndirectionIntersections=k})),ya=i(((e,t)=>{(function(n){var r=typeof e==`object`&&e&&!e.nodeType&&e,i=typeof t==`object`&&t&&!t.nodeType&&t,a=typeof global==`object`&&global;(a.global===a||a.window===a||a.self===a)&&(n=a);var o,s=2147483647,c=36,l=1,u=26,d=38,f=700,p=72,m=128,h=`-`,g=/^xn--/,_=/[^\x20-\x7E]/,v=/[\x2E\u3002\uFF0E\uFF61]/g,y={overflow:`Overflow: input needs wider integers to process`,"not-basic":`Illegal input >= 0x80 (not a basic code point)`,"invalid-input":`Invalid input`},b=c-l,x=Math.floor,S=String.fromCharCode,C;function w(e){throw RangeError(y[e])}function T(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function E(e,t){var n=e.split(`@`),r=``;n.length>1&&(r=n[0]+`@`,e=n[1]),e=e.replace(v,`.`);var i=T(e.split(`.`),t).join(`.`);return r+i}function D(e){for(var t=[],n=0,r=e.length,i,a;n<r;)i=e.charCodeAt(n++),i>=55296&&i<=56319&&n<r?(a=e.charCodeAt(n++),(a&64512)==56320?t.push(((i&1023)<<10)+(a&1023)+65536):(t.push(i),n--)):t.push(i);return t}function O(e){return T(e,function(e){var t=``;return e>65535&&(e-=65536,t+=S(e>>>10&1023|55296),e=56320|e&1023),t+=S(e),t}).join(``)}function k(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:c}function A(e,t){return e+22+75*(e<26)-((t!=0)<<5)}function j(e,t,n){var r=0;for(e=n?x(e/f):e>>1,e+=x(e/t);e>b*u>>1;r+=c)e=x(e/b);return x(r+(b+1)*e/(e+d))}function M(e){var t=[],n=e.length,r,i=0,a=m,o=p,d=e.lastIndexOf(h),f,g,_,v,y,b,S,C;for(d<0&&(d=0),f=0;f<d;++f)e.charCodeAt(f)>=128&&w(`not-basic`),t.push(e.charCodeAt(f));for(g=d>0?d+1:0;g<n;){for(_=i,v=1,y=c;g>=n&&w(`invalid-input`),b=k(e.charCodeAt(g++)),(b>=c||b>x((s-i)/v))&&w(`overflow`),i+=b*v,S=y<=o?l:y>=o+u?u:y-o,!(b<S);y+=c)C=c-S,v>x(s/C)&&w(`overflow`),v*=C;r=t.length+1,o=j(i-_,r,_==0),x(i/r)>s-a&&w(`overflow`),a+=x(i/r),i%=r,t.splice(i++,0,a)}return O(t)}function N(e){var t,n,r,i,a,o,d,f,g,_,v,y=[],b,C,T,E;for(e=D(e),b=e.length,t=m,n=0,a=p,o=0;o<b;++o)v=e[o],v<128&&y.push(S(v));for(r=i=y.length,i&&y.push(h);r<b;){for(d=s,o=0;o<b;++o)v=e[o],v>=t&&v<d&&(d=v);for(C=r+1,d-t>x((s-n)/C)&&w(`overflow`),n+=(d-t)*C,t=d,o=0;o<b;++o)if(v=e[o],v<t&&++n>s&&w(`overflow`),v==t){for(f=n,g=c;_=g<=a?l:g>=a+u?u:g-a,!(f<_);g+=c)E=f-_,T=c-_,y.push(S(A(_+E%T,0))),f=x(E/T);y.push(S(A(f,0))),a=j(n,C,r==i),n=0,++r}++n,++t}return y.join(``)}function P(e){return E(e,function(e){return g.test(e)?M(e.slice(4).toLowerCase()):e})}function ee(e){return E(e,function(e){return _.test(e)?`xn--`+N(e):e})}if(o={version:`1.3.2`,ucs2:{decode:D,encode:O},decode:M,encode:N,toASCII:ee,toUnicode:P},typeof define==`function`&&typeof define.amd==`object`&&define.amd)define(`punycode`,function(){return o});else if(r&&i)if(t.exports==r)i.exports=o;else for(C in o)o.hasOwnProperty(C)&&(r[C]=o[C]);else n.punycode=o})(e)})),ba=i(((e,t)=>{(function(e,n){typeof t==`object`&&t.exports?t.exports=n():typeof define==`function`&&define.amd?define(n):e.IPv6=n(e)})(e,function(e){var t=e&&e.IPv6;function n(e){var t=e.toLowerCase().split(`:`),n=t.length,r=8;t[0]===``&&t[1]===``&&t[2]===``?(t.shift(),t.shift()):t[0]===``&&t[1]===``?t.shift():t[n-1]===``&&t[n-2]===``&&t.pop(),n=t.length,t[n-1].indexOf(`.`)!==-1&&(r=7);var i;for(i=0;i<n&&t[i]!==``;i++);if(i<r)for(t.splice(i,1,`0000`);t.length<r;)t.splice(i,0,`0000`);for(var a,o=0;o<r;o++){a=t[o].split(``);for(var s=0;s<3&&a[0]===`0`&&a.length>1;s++)a.splice(0,1);t[o]=a.join(``)}var c=-1,l=0,u=0,d=-1,f=!1;for(o=0;o<r;o++)f?t[o]===`0`?u+=1:(f=!1,u>l&&(c=d,l=u)):t[o]===`0`&&(f=!0,d=o,u=1);u>l&&(c=d,l=u),l>1&&t.splice(c,l,``),n=t.length;var p=``;for(t[0]===``&&(p=`:`),o=0;o<n&&(p+=t[o],o!==n-1);o++)p+=`:`;return t[n-1]===``&&(p+=`:`),p}function r(){return e.IPv6===this&&(e.IPv6=t),this}return{best:n,noConflict:r}})})),xa=i(((e,t)=>{(function(e,n){typeof t==`object`&&t.exports?t.exports=n():typeof define==`function`&&define.amd?define(n):e.SecondLevelDomains=n(e)})(e,function(e){var t=e&&e.SecondLevelDomains,n={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(e){var t=e.lastIndexOf(`.`);if(t<=0||t>=e.length-1)return!1;var r=e.lastIndexOf(`.`,t-1);if(r<=0||r>=t-1)return!1;var i=n.list[e.slice(t+1)];return i?i.indexOf(` `+e.slice(r+1,t)+` `)>=0:!1},is:function(e){var t=e.lastIndexOf(`.`);if(t<=0||t>=e.length-1||e.lastIndexOf(`.`,t-1)>=0)return!1;var r=n.list[e.slice(t+1)];return r?r.indexOf(` `+e.slice(0,t)+` `)>=0:!1},get:function(e){var t=e.lastIndexOf(`.`);if(t<=0||t>=e.length-1)return null;var r=e.lastIndexOf(`.`,t-1);if(r<=0||r>=t-1)return null;var i=n.list[e.slice(t+1)];return!i||i.indexOf(` `+e.slice(r+1,t)+` `)<0?null:e.slice(r+1)},noConflict:function(){return e.SecondLevelDomains===this&&(e.SecondLevelDomains=t),this}};return n})})),Sa=i(((e,t)=>{(function(e,n){typeof t==`object`&&t.exports?t.exports=n(ya(),ba(),xa()):typeof define==`function`&&define.amd?define([`./punycode`,`./IPv6`,`./SecondLevelDomains`],n):e.URI=n(e.punycode,e.IPv6,e.SecondLevelDomains,e)})(e,function(e,t,n,r){var i=r&&r.URI;function a(e,t){var n=arguments.length>=1,r=arguments.length>=2;if(!(this instanceof a))return n?r?new a(e,t):new a(e):new a;if(e===void 0){if(n)throw TypeError(`undefined is not a valid argument for URI`);e=typeof location<`u`?location.href+``:``}if(e===null&&n)throw TypeError(`null is not a valid argument for URI`);return this.href(e),t===void 0?this:this.absoluteTo(t)}function o(e){return/^[0-9]+$/.test(e)}a.version=`1.19.11`;var s=a.prototype,c=Object.prototype.hasOwnProperty;function l(e){return e.replace(/([.*+?^=!:${}()|[\]\/\\])/g,`\\$1`)}function u(e){return e===void 0?`Undefined`:String(Object.prototype.toString.call(e)).slice(8,-1)}function d(e){return u(e)===`Array`}function f(e,t){var n={},r,i;if(u(t)===`RegExp`)n=null;else if(d(t))for(r=0,i=t.length;r<i;r++)n[t[r]]=!0;else n[t]=!0;for(r=0,i=e.length;r<i;r++)(n&&n[e[r]]!==void 0||!n&&t.test(e[r]))&&(e.splice(r,1),i--,r--);return e}function p(e,t){var n,r;if(d(t)){for(n=0,r=t.length;n<r;n++)if(!p(e,t[n]))return!1;return!0}var i=u(t);for(n=0,r=e.length;n<r;n++)if(i===`RegExp`){if(typeof e[n]==`string`&&e[n].match(t))return!0}else if(e[n]===t)return!0;return!1}function m(e,t){if(!d(e)||!d(t)||e.length!==t.length)return!1;e.sort(),t.sort();for(var n=0,r=e.length;n<r;n++)if(e[n]!==t[n])return!1;return!0}function h(e){return e.replace(/^\/+|\/+$/g,``)}a._parts=function(){return{protocol:null,username:null,password:null,hostname:null,urn:null,port:null,path:null,query:null,fragment:null,preventInvalidHostname:a.preventInvalidHostname,duplicateQueryParameters:a.duplicateQueryParameters,escapeQuerySpace:a.escapeQuerySpace}},a.preventInvalidHostname=!1,a.duplicateQueryParameters=!1,a.escapeQuerySpace=!0,a.protocol_expression=/^[a-z][a-z0-9.+-]*$/i,a.idn_expression=/[^a-z0-9\._-]/i,a.punycode_expression=/(xn--)/i,a.ip4_expression=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,a.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*$/,a.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`!()\[\]{};:'".,<>?«»“”‘’]))/gi,a.findUri={start:/\b(?:([a-z][a-z0-9.+-]*:\/\/)|www\.)/gi,end:/[\s\r\n]|$/,trim:/[`!()\[\]{};:'".,<>?«»“”„‘’]+$/,parens:/(\([^\)]*\)|\[[^\]]*\]|\{[^}]*\}|<[^>]*>)/g},a.leading_whitespace_expression=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,a.ascii_tab_whitespace=/[\u0009\u000A\u000D]+/g,a.defaultPorts={http:`80`,https:`443`,ftp:`21`,gopher:`70`,ws:`80`,wss:`443`},a.hostProtocols=[`http`,`https`],a.invalid_hostname_characters=/[^a-zA-Z0-9\.\-:_]/,a.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`},a.getDomAttribute=function(e){if(!(!e||!e.nodeName)){var t=e.nodeName.toLowerCase();if(!(t===`input`&&e.type!==`image`))return a.domAttributes[t]}};function g(e){return escape(e)}function _(e){return encodeURIComponent(e).replace(/[!'()*]/g,g).replace(/\*/g,`%2A`)}a.encode=_,a.decode=decodeURIComponent,a.iso8859=function(){a.encode=escape,a.decode=unescape},a.unicode=function(){a.encode=_,a.decode=decodeURIComponent},a.characters={pathname:{encode:{expression:/%(24|26|2B|2C|3B|3D|3A|40)/gi,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)/gi,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)/gi,map:{"%21":`!`,"%24":`$`,"%27":`'`,"%28":`(`,"%29":`)`,"%2A":`*`,"%2B":`+`,"%2C":`,`,"%3B":`;`,"%3D":`=`,"%40":`@`}},decode:{expression:/[\/\?#:]/g,map:{"/":`%2F`,"?":`%3F`,"#":`%23`,":":`%3A`}}}},a.encodeQuery=function(e,t){var n=a.encode(e+``);return t===void 0&&(t=a.escapeQuerySpace),t?n.replace(/%20/g,`+`):n},a.decodeQuery=function(e,t){e+=``,t===void 0&&(t=a.escapeQuerySpace);try{return a.decode(t?e.replace(/\+/g,`%20`):e)}catch{return e}};var v={encode:`encode`,decode:`decode`},y,b=function(e,t){return function(n){try{return a[t](n+``).replace(a.characters[e][t].expression,function(n){return a.characters[e][t].map[n]})}catch{return n}}};for(y in v)a[y+`PathSegment`]=b(`pathname`,v[y]),a[y+`UrnPathSegment`]=b(`urnpath`,v[y]);var x=function(e,t,n){return function(r){for(var i=n?function(e){return a[t](a[n](e))}:a[t],o=(r+``).split(e),s=0,c=o.length;s<c;s++)o[s]=i(o[s]);return o.join(e)}};a.decodePath=x(`/`,`decodePathSegment`),a.decodeUrnPath=x(`:`,`decodeUrnPathSegment`),a.recodePath=x(`/`,`encodePathSegment`,`decode`),a.recodeUrnPath=x(`:`,`encodeUrnPathSegment`,`decode`),a.encodeReserved=b(`reserved`,`encode`),a.parse=function(e,t){var n;return t||={preventInvalidHostname:a.preventInvalidHostname},e=e.replace(a.leading_whitespace_expression,``),e=e.replace(a.ascii_tab_whitespace,``),n=e.indexOf(`#`),n>-1&&(t.fragment=e.substring(n+1)||null,e=e.substring(0,n)),n=e.indexOf(`?`),n>-1&&(t.query=e.substring(n+1)||null,e=e.substring(0,n)),e=e.replace(/^(https?|ftp|wss?)?:+[/\\]*/i,`$1://`),e=e.replace(/^[/\\]{2,}/i,`//`),e.substring(0,2)===`//`?(t.protocol=null,e=e.substring(2),e=a.parseAuthority(e,t)):(n=e.indexOf(`:`),n>-1&&(t.protocol=e.substring(0,n)||null,t.protocol&&!t.protocol.match(a.protocol_expression)?t.protocol=void 0:e.substring(n+1,n+3).replace(/\\/g,`/`)===`//`?(e=e.substring(n+3),e=a.parseAuthority(e,t)):(e=e.substring(n+1),t.urn=!0))),t.path=e,t},a.parseHost=function(e,t){e||=``,e=e.replace(/\\/g,`/`);var n=e.indexOf(`/`),r,i;if(n===-1&&(n=e.length),e.charAt(0)===`[`)r=e.indexOf(`]`),t.hostname=e.substring(1,r)||null,t.port=e.substring(r+2,n)||null,t.port===`/`&&(t.port=null);else{var o=e.indexOf(`:`),s=e.indexOf(`/`),c=e.indexOf(`:`,o+1);c!==-1&&(s===-1||c<s)?(t.hostname=e.substring(0,n)||null,t.port=null):(i=e.substring(0,n).split(`:`),t.hostname=i[0]||null,t.port=i[1]||null)}return t.hostname&&e.substring(n).charAt(0)!==`/`&&(n++,e=`/`+e),t.preventInvalidHostname&&a.ensureValidHostname(t.hostname,t.protocol),t.port&&a.ensureValidPort(t.port),e.substring(n)||`/`},a.parseAuthority=function(e,t){return e=a.parseUserinfo(e,t),a.parseHost(e,t)},a.parseUserinfo=function(e,t){var n=e;e.indexOf(`\\`)!==-1&&(e=e.replace(/\\/g,`/`));var r=e.indexOf(`/`),i=e.lastIndexOf(`@`,r>-1?r:e.length-1),o;return i>-1&&(r===-1||i<r)?(o=e.substring(0,i).split(`:`),t.username=o[0]?a.decode(o[0]):null,o.shift(),t.password=o[0]?a.decode(o.join(`:`)):null,e=n.substring(i+1)):(t.username=null,t.password=null),e},a.parseQuery=function(e,t){if(!e||(e=e.replace(/&+/g,`&`).replace(/^\?*&*|&+$/g,``),!e))return{};for(var n={},r=e.split(`&`),i=r.length,o,s,l,u=0;u<i;u++)o=r[u].split(`=`),s=a.decodeQuery(o.shift(),t),l=o.length?a.decodeQuery(o.join(`=`),t):null,s!==`__proto__`&&(c.call(n,s)?((typeof n[s]==`string`||n[s]===null)&&(n[s]=[n[s]]),n[s].push(l)):n[s]=l);return n},a.build=function(e){var t=``,n=!1;return e.protocol&&(t+=e.protocol+`:`),!e.urn&&(t||e.hostname)&&(t+=`//`,n=!0),t+=a.buildAuthority(e)||``,typeof e.path==`string`&&(e.path.charAt(0)!==`/`&&n&&(t+=`/`),t+=e.path),typeof e.query==`string`&&e.query&&(t+=`?`+e.query),typeof e.fragment==`string`&&e.fragment&&(t+=`#`+e.fragment),t},a.buildHost=function(e){var t=``;if(e.hostname)a.ip6_expression.test(e.hostname)?t+=`[`+e.hostname+`]`:t+=e.hostname;else return``;return e.port&&(t+=`:`+e.port),t},a.buildAuthority=function(e){return a.buildUserinfo(e)+a.buildHost(e)},a.buildUserinfo=function(e){var t=``;return e.username&&(t+=a.encode(e.username)),e.password&&(t+=`:`+a.encode(e.password)),t&&(t+=`@`),t},a.buildQuery=function(e,t,n){var r=``,i,o,s,l;for(o in e)if(o===`__proto__`)continue;else if(c.call(e,o))if(d(e[o]))for(i={},s=0,l=e[o].length;s<l;s++)e[o][s]!==void 0&&i[e[o][s]+``]===void 0&&(r+=`&`+a.buildQueryParameter(o,e[o][s],n),t!==!0&&(i[e[o][s]+``]=!0));else e[o]!==void 0&&(r+=`&`+a.buildQueryParameter(o,e[o],n));return r.substring(1)},a.buildQueryParameter=function(e,t,n){return a.encodeQuery(e,n)+(t===null?``:`=`+a.encodeQuery(t,n))},a.addQuery=function(e,t,n){if(typeof t==`object`)for(var r in t)c.call(t,r)&&a.addQuery(e,r,t[r]);else if(typeof t==`string`){if(e[t]===void 0){e[t]=n;return}else typeof e[t]==`string`&&(e[t]=[e[t]]);d(n)||(n=[n]),e[t]=(e[t]||[]).concat(n)}else throw TypeError(`URI.addQuery() accepts an object, string as the name parameter`)},a.setQuery=function(e,t,n){if(typeof t==`object`)for(var r in t)c.call(t,r)&&a.setQuery(e,r,t[r]);else if(typeof t==`string`)e[t]=n===void 0?null:n;else throw TypeError(`URI.setQuery() accepts an object, string as the name parameter`)},a.removeQuery=function(e,t,n){var r,i,o;if(d(t))for(r=0,i=t.length;r<i;r++)e[t[r]]=void 0;else if(u(t)===`RegExp`)for(o in e)t.test(o)&&(e[o]=void 0);else if(typeof t==`object`)for(o in t)c.call(t,o)&&a.removeQuery(e,o,t[o]);else if(typeof t==`string`)n===void 0?e[t]=void 0:u(n)===`RegExp`?!d(e[t])&&n.test(e[t])?e[t]=void 0:e[t]=f(e[t],n):e[t]===String(n)&&(!d(n)||n.length===1)?e[t]=void 0:d(e[t])&&(e[t]=f(e[t],n));else throw TypeError(`URI.removeQuery() accepts an object, string, RegExp as the first parameter`)},a.hasQuery=function(e,t,n,r){switch(u(t)){case`String`:break;case`RegExp`:for(var i in e)if(c.call(e,i)&&t.test(i)&&(n===void 0||a.hasQuery(e,i,n)))return!0;return!1;case`Object`:for(var o in t)if(c.call(t,o)&&!a.hasQuery(e,o,t[o]))return!1;return!0;default:throw TypeError(`URI.hasQuery() accepts a string, regular expression or object as the name parameter`)}switch(u(n)){case`Undefined`:return t in e;case`Boolean`:var s=!!(d(e[t])?e[t].length:e[t]);return n===s;case`Function`:return!!n(e[t],t,e);case`Array`:return d(e[t])?(r?p:m)(e[t],n):!1;case`RegExp`:return d(e[t])?r?p(e[t],n):!1:!!(e[t]&&e[t].match(n));case`Number`:n=String(n);case`String`:return d(e[t])?r?p(e[t],n):!1:e[t]===n;default:throw TypeError(`URI.hasQuery() accepts undefined, boolean, string, number, RegExp, Function as the value parameter`)}},a.joinPaths=function(){for(var e=[],t=[],n=0,r=0;r<arguments.length;r++){var i=new a(arguments[r]);e.push(i);for(var o=i.segment(),s=0;s<o.length;s++)typeof o[s]==`string`&&t.push(o[s]),o[s]&&n++}if(!t.length||!n)return new a(``);var c=new a(``).segment(t);return(e[0].path()===``||e[0].path().slice(0,1)===`/`)&&c.path(`/`+c.path()),c.normalize()},a.commonPath=function(e,t){var n=Math.min(e.length,t.length),r;for(r=0;r<n;r++)if(e.charAt(r)!==t.charAt(r)){r--;break}return r<1?e.charAt(0)===t.charAt(0)&&e.charAt(0)===`/`?`/`:``:((e.charAt(r)!==`/`||t.charAt(r)!==`/`)&&(r=e.substring(0,r).lastIndexOf(`/`)),e.substring(0,r+1))},a.withinString=function(e,t,n){n||={};var r=n.start||a.findUri.start,i=n.end||a.findUri.end,o=n.trim||a.findUri.trim,s=n.parens||a.findUri.parens,c=/[a-z0-9-]=["']?$/i;for(r.lastIndex=0;;){var l=r.exec(e);if(!l)break;var u=l.index;if(n.ignoreHtml){var d=e.slice(Math.max(u-3,0),u);if(d&&c.test(d))continue}for(var f=u+e.slice(u).search(i),p=e.slice(u,f),m=-1;;){var h=s.exec(p);if(!h)break;var g=h.index+h[0].length;m=Math.max(m,g)}if(p=m>-1?p.slice(0,m)+p.slice(m).replace(o,``):p.replace(o,``),!(p.length<=l[0].length)&&!(n.ignore&&n.ignore.test(p))){f=u+p.length;var _=t(p,u,f,e);if(_===void 0){r.lastIndex=f;continue}_=String(_),e=e.slice(0,u)+_+e.slice(f),r.lastIndex=u+_.length}}return r.lastIndex=0,e},a.ensureValidHostname=function(t,n){var r=!!t,i=!!n,o=!1;if(i&&(o=p(a.hostProtocols,n)),o&&!r)throw TypeError(`Hostname cannot be empty, if protocol is `+n);if(t&&t.match(a.invalid_hostname_characters)){if(!e)throw TypeError(`Hostname "`+t+`" contains characters other than [A-Z0-9.-:_] and Punycode.js is not available`);if(e.toASCII(t).match(a.invalid_hostname_characters))throw TypeError(`Hostname "`+t+`" contains characters other than [A-Z0-9.-:_]`)}},a.ensureValidPort=function(e){if(e){var t=Number(e);if(!(o(t)&&t>0&&t<65536))throw TypeError(`Port "`+e+`" is not a valid port`)}},a.noConflict=function(e){if(e){var t={URI:this.noConflict()};return r.URITemplate&&typeof r.URITemplate.noConflict==`function`&&(t.URITemplate=r.URITemplate.noConflict()),r.IPv6&&typeof r.IPv6.noConflict==`function`&&(t.IPv6=r.IPv6.noConflict()),r.SecondLevelDomains&&typeof r.SecondLevelDomains.noConflict==`function`&&(t.SecondLevelDomains=r.SecondLevelDomains.noConflict()),t}else r.URI===this&&(r.URI=i);return this},s.build=function(e){return e===!0?this._deferred_build=!0:(e===void 0||this._deferred_build)&&(this._string=a.build(this._parts),this._deferred_build=!1),this},s.clone=function(){return new a(this)},s.valueOf=s.toString=function(){return this.build(!1)._string};function S(e){return function(t,n){return t===void 0?this._parts[e]||``:(this._parts[e]=t||null,this.build(!n),this)}}function C(e,t){return function(n,r){return n===void 0?this._parts[e]||``:(n!==null&&(n+=``,n.charAt(0)===t&&(n=n.substring(1))),this._parts[e]=n,this.build(!r),this)}}s.protocol=S(`protocol`),s.username=S(`username`),s.password=S(`password`),s.hostname=S(`hostname`),s.port=S(`port`),s.query=C(`query`,`?`),s.fragment=C(`fragment`,`#`),s.search=function(e,t){var n=this.query(e,t);return typeof n==`string`&&n.length?`?`+n:n},s.hash=function(e,t){var n=this.fragment(e,t);return typeof n==`string`&&n.length?`#`+n:n},s.pathname=function(e,t){if(e===void 0||e===!0){var n=this._parts.path||(this._parts.hostname?`/`:``);return e?(this._parts.urn?a.decodeUrnPath:a.decodePath)(n):n}else return this._parts.urn?this._parts.path=e?a.recodeUrnPath(e):``:this._parts.path=e?a.recodePath(e):`/`,this.build(!t),this},s.path=s.pathname,s.href=function(e,t){var n;if(e===void 0)return this.toString();this._string=``,this._parts=a._parts();var r=e instanceof a,i=typeof e==`object`&&(e.hostname||e.path||e.pathname);if(e.nodeName){var o=a.getDomAttribute(e);e=e[o]||``,i=!1}if(!r&&i&&e.pathname!==void 0&&(e=e.toString()),typeof e==`string`||e instanceof String)this._parts=a.parse(String(e),this._parts);else if(r||i){var s=r?e._parts:e;for(n in s)n!==`query`&&c.call(this._parts,n)&&(this._parts[n]=s[n]);s.query&&this.query(s.query,!1)}else throw TypeError(`invalid input`);return this.build(!t),this},s.is=function(e){var t=!1,r=!1,i=!1,o=!1,s=!1,c=!1,l=!1,u=!this._parts.urn;switch(this._parts.hostname&&(u=!1,r=a.ip4_expression.test(this._parts.hostname),i=a.ip6_expression.test(this._parts.hostname),t=r||i,o=!t,s=o&&n&&n.has(this._parts.hostname),c=o&&a.idn_expression.test(this._parts.hostname),l=o&&a.punycode_expression.test(this._parts.hostname)),e.toLowerCase()){case`relative`:return u;case`absolute`:return!u;case`domain`:case`name`:return o;case`sld`:return s;case`ip`:return t;case`ip4`:case`ipv4`:case`inet4`:return r;case`ip6`:case`ipv6`:case`inet6`:return i;case`idn`:return c;case`url`:return!this._parts.urn;case`urn`:return!!this._parts.urn;case`punycode`:return l}return null};var w=s.protocol,T=s.port,E=s.hostname;s.protocol=function(e,t){if(e&&(e=e.replace(/:(\/\/)?$/,``),!e.match(a.protocol_expression)))throw TypeError(`Protocol "`+e+`" contains characters other than [A-Z0-9.+-] or doesn't start with [A-Z]`);return w.call(this,e,t)},s.scheme=s.protocol,s.port=function(e,t){return this._parts.urn?e===void 0?``:this:(e!==void 0&&(e===0&&(e=null),e&&(e+=``,e.charAt(0)===`:`&&(e=e.substring(1)),a.ensureValidPort(e))),T.call(this,e,t))},s.hostname=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e!==void 0){var n={preventInvalidHostname:this._parts.preventInvalidHostname};if(a.parseHost(e,n)!==`/`)throw TypeError(`Hostname "`+e+`" contains characters other than [A-Z0-9.-]`);e=n.hostname,this._parts.preventInvalidHostname&&a.ensureValidHostname(e,this._parts.protocol)}return E.call(this,e,t)},s.origin=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0){var n=this.protocol();return this.authority()?(n?n+`://`:``)+this.authority():``}else{var r=a(e);return this.protocol(r.protocol()).authority(r.authority()).build(!t),this}},s.host=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0)return this._parts.hostname?a.buildHost(this._parts):``;if(a.parseHost(e,this._parts)!==`/`)throw TypeError(`Hostname "`+e+`" contains characters other than [A-Z0-9.-]`);return this.build(!t),this},s.authority=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0)return this._parts.hostname?a.buildAuthority(this._parts):``;if(a.parseAuthority(e,this._parts)!==`/`)throw TypeError(`Hostname "`+e+`" contains characters other than [A-Z0-9.-]`);return this.build(!t),this},s.userinfo=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0){var n=a.buildUserinfo(this._parts);return n&&n.substring(0,n.length-1)}else return e[e.length-1]!==`@`&&(e+=`@`),a.parseUserinfo(e,this._parts),this.build(!t),this},s.resource=function(e,t){var n;return e===void 0?this.path()+this.search()+this.hash():(n=a.parse(e),this._parts.path=n.path,this._parts.query=n.query,this._parts.fragment=n.fragment,this.build(!t),this)},s.subdomain=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0){if(!this._parts.hostname||this.is(`IP`))return``;var n=this._parts.hostname.length-this.domain().length-1;return this._parts.hostname.substring(0,n)||``}else{var r=this._parts.hostname.length-this.domain().length,i=this._parts.hostname.substring(0,r),o=RegExp(`^`+l(i));if(e&&e.charAt(e.length-1)!==`.`&&(e+=`.`),e.indexOf(`:`)!==-1)throw TypeError(`Domains cannot contain colons`);return e&&a.ensureValidHostname(e,this._parts.protocol),this._parts.hostname=this._parts.hostname.replace(o,e),this.build(!t),this}},s.domain=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(typeof e==`boolean`&&(t=e,e=void 0),e===void 0){if(!this._parts.hostname||this.is(`IP`))return``;var n=this._parts.hostname.match(/\./g);if(n&&n.length<2)return this._parts.hostname;var r=this._parts.hostname.length-this.tld(t).length-1;return r=this._parts.hostname.lastIndexOf(`.`,r-1)+1,this._parts.hostname.substring(r)||``}else{if(!e)throw TypeError(`cannot set domain empty`);if(e.indexOf(`:`)!==-1)throw TypeError(`Domains cannot contain colons`);if(a.ensureValidHostname(e,this._parts.protocol),!this._parts.hostname||this.is(`IP`))this._parts.hostname=e;else{var i=RegExp(l(this.domain())+`$`);this._parts.hostname=this._parts.hostname.replace(i,e)}return this.build(!t),this}},s.tld=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(typeof e==`boolean`&&(t=e,e=void 0),e===void 0){if(!this._parts.hostname||this.is(`IP`))return``;var r=this._parts.hostname.lastIndexOf(`.`),i=this._parts.hostname.substring(r+1);return t!==!0&&n&&n.list[i.toLowerCase()]&&n.get(this._parts.hostname)||i}else{var a;if(e)if(e.match(/[^a-zA-Z0-9-]/))if(n&&n.is(e))a=RegExp(l(this.tld())+`$`),this._parts.hostname=this._parts.hostname.replace(a,e);else throw TypeError(`TLD "`+e+`" contains characters other than [A-Z0-9]`);else if(!this._parts.hostname||this.is(`IP`))throw ReferenceError(`cannot set TLD on non-domain host`);else a=RegExp(l(this.tld())+`$`),this._parts.hostname=this._parts.hostname.replace(a,e);else throw TypeError(`cannot set TLD empty`);return this.build(!t),this}},s.directory=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0||e===!0){if(!this._parts.path&&!this._parts.hostname)return``;if(this._parts.path===`/`)return`/`;var n=this._parts.path.length-this.filename().length-1,r=this._parts.path.substring(0,n)||(this._parts.hostname?`/`:``);return e?a.decodePath(r):r}else{var i=this._parts.path.length-this.filename().length,o=this._parts.path.substring(0,i),s=RegExp(`^`+l(o));return this.is(`relative`)||(e||=`/`,e.charAt(0)!==`/`&&(e=`/`+e)),e&&e.charAt(e.length-1)!==`/`&&(e+=`/`),e=a.recodePath(e),this._parts.path=this._parts.path.replace(s,e),this.build(!t),this}},s.filename=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(typeof e!=`string`){if(!this._parts.path||this._parts.path===`/`)return``;var n=this._parts.path.lastIndexOf(`/`),r=this._parts.path.substring(n+1);return e?a.decodePathSegment(r):r}else{var i=!1;e.charAt(0)===`/`&&(e=e.substring(1)),e.match(/\.?\//)&&(i=!0);var o=RegExp(l(this.filename())+`$`);return e=a.recodePath(e),this._parts.path=this._parts.path.replace(o,e),i?this.normalizePath(t):this.build(!t),this}},s.suffix=function(e,t){if(this._parts.urn)return e===void 0?``:this;if(e===void 0||e===!0){if(!this._parts.path||this._parts.path===`/`)return``;var n=this.filename(),r=n.lastIndexOf(`.`),i,o;return r===-1?``:(i=n.substring(r+1),o=/^[a-z0-9%]+$/i.test(i)?i:``,e?a.decodePathSegment(o):o)}else{e.charAt(0)===`.`&&(e=e.substring(1));var s=this.suffix(),c;if(s)c=e?RegExp(l(s)+`$`):RegExp(l(`.`+s)+`$`);else{if(!e)return this;this._parts.path+=`.`+a.recodePath(e)}return c&&(e=a.recodePath(e),this._parts.path=this._parts.path.replace(c,e)),this.build(!t),this}},s.segment=function(e,t,n){var r=this._parts.urn?`:`:`/`,i=this.path(),a=i.substring(0,1)===`/`,o=i.split(r);if(e!==void 0&&typeof e!=`number`&&(n=t,t=e,e=void 0),e!==void 0&&typeof e!=`number`)throw Error(`Bad segment "`+e+`", must be 0-based integer`);if(a&&o.shift(),e<0&&(e=Math.max(o.length+e,0)),t===void 0)return e===void 0?o:o[e];if(e===null||o[e]===void 0)if(d(t)){o=[];for(var s=0,c=t.length;s<c;s++)!t[s].length&&(!o.length||!o[o.length-1].length)||(o.length&&!o[o.length-1].length&&o.pop(),o.push(h(t[s])))}else (t||typeof t==`string`)&&(t=h(t),o[o.length-1]===``?o[o.length-1]=t:o.push(t));else t?o[e]=h(t):o.splice(e,1);return a&&o.unshift(``),this.path(o.join(r),n)},s.segmentCoded=function(e,t,n){var r,i,o;if(typeof e!=`number`&&(n=t,t=e,e=void 0),t===void 0){if(r=this.segment(e,t,n),!d(r))r=r===void 0?void 0:a.decode(r);else for(i=0,o=r.length;i<o;i++)r[i]=a.decode(r[i]);return r}if(!d(t))t=typeof t==`string`||t instanceof String?a.encode(t):t;else for(i=0,o=t.length;i<o;i++)t[i]=a.encode(t[i]);return this.segment(e,t,n)};var D=s.query;return s.query=function(e,t){if(e===!0)return a.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if(typeof e==`function`){var n=a.parseQuery(this._parts.query,this._parts.escapeQuerySpace),r=e.call(this,n);return this._parts.query=a.buildQuery(r||n,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!t),this}else if(e!==void 0&&typeof e!=`string`)return this._parts.query=a.buildQuery(e,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!t),this;else return D.call(this,e,t)},s.setQuery=function(e,t,n){var r=a.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if(typeof e==`string`||e instanceof String)r[e]=t===void 0?null:t;else if(typeof e==`object`)for(var i in e)c.call(e,i)&&(r[i]=e[i]);else throw TypeError(`URI.addQuery() accepts an object, string as the name parameter`);return this._parts.query=a.buildQuery(r,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof e!=`string`&&(n=t),this.build(!n),this},s.addQuery=function(e,t,n){var r=a.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return a.addQuery(r,e,t===void 0?null:t),this._parts.query=a.buildQuery(r,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof e!=`string`&&(n=t),this.build(!n),this},s.removeQuery=function(e,t,n){var r=a.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return a.removeQuery(r,e,t),this._parts.query=a.buildQuery(r,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),typeof e!=`string`&&(n=t),this.build(!n),this},s.hasQuery=function(e,t,n){var r=a.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return a.hasQuery(r,e,t,n)},s.setSearch=s.setQuery,s.addSearch=s.addQuery,s.removeSearch=s.removeQuery,s.hasSearch=s.hasQuery,s.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()},s.normalizeProtocol=function(e){return typeof this._parts.protocol==`string`&&(this._parts.protocol=this._parts.protocol.toLowerCase(),this.build(!e)),this},s.normalizeHostname=function(n){return this._parts.hostname&&(this.is(`IDN`)&&e?this._parts.hostname=e.toASCII(this._parts.hostname):this.is(`IPv6`)&&t&&(this._parts.hostname=t.best(this._parts.hostname)),this._parts.hostname=this._parts.hostname.toLowerCase(),this.build(!n)),this},s.normalizePort=function(e){return typeof this._parts.protocol==`string`&&this._parts.port===a.defaultPorts[this._parts.protocol]&&(this._parts.port=null,this.build(!e)),this},s.normalizePath=function(e){var t=this._parts.path;if(!t)return this;if(this._parts.urn)return this._parts.path=a.recodeUrnPath(this._parts.path),this.build(!e),this;if(this._parts.path===`/`)return this;t=a.recodePath(t);var n,r=``,i,o;for(t.charAt(0)!==`/`&&(n=!0,t=`/`+t),(t.slice(-3)===`/..`||t.slice(-2)===`/.`)&&(t+=`/`),t=t.replace(/(\/(\.\/)+)|(\/\.$)/g,`/`).replace(/\/{2,}/g,`/`),n&&(r=t.substring(1).match(/^(\.\.\/)+/)||``,r&&=r[0]);i=t.search(/\/\.\.(\/|$)/),i!==-1;){if(i===0){t=t.substring(3);continue}o=t.substring(0,i).lastIndexOf(`/`),o===-1&&(o=i),t=t.substring(0,o)+t.substring(i+3)}return n&&this.is(`relative`)&&(t=r+t.substring(1)),this._parts.path=t,this.build(!e),this},s.normalizePathname=s.normalizePath,s.normalizeQuery=function(e){return typeof this._parts.query==`string`&&(this._parts.query.length?this.query(a.parseQuery(this._parts.query,this._parts.escapeQuerySpace)):this._parts.query=null,this.build(!e)),this},s.normalizeFragment=function(e){return this._parts.fragment||(this._parts.fragment=null,this.build(!e)),this},s.normalizeSearch=s.normalizeQuery,s.normalizeHash=s.normalizeFragment,s.iso8859=function(){var e=a.encode,t=a.decode;a.encode=escape,a.decode=decodeURIComponent;try{this.normalize()}finally{a.encode=e,a.decode=t}return this},s.unicode=function(){var e=a.encode,t=a.decode;a.encode=_,a.decode=unescape;try{this.normalize()}finally{a.encode=e,a.decode=t}return this},s.readable=function(){var t=this.clone();t.username(``).password(``).normalize();var n=``;if(t._parts.protocol&&(n+=t._parts.protocol+`://`),t._parts.hostname&&(t.is(`punycode`)&&e?(n+=e.toUnicode(t._parts.hostname),t._parts.port&&(n+=`:`+t._parts.port)):n+=t.host()),t._parts.hostname&&t._parts.path&&t._parts.path.charAt(0)!==`/`&&(n+=`/`),n+=t.path(!0),t._parts.query){for(var r=``,i=0,o=t._parts.query.split(`&`),s=o.length;i<s;i++){var c=(o[i]||``).split(`=`);r+=`&`+a.decodeQuery(c[0],this._parts.escapeQuerySpace).replace(/&/g,`%26`),c[1]!==void 0&&(r+=`=`+a.decodeQuery(c[1],this._parts.escapeQuerySpace).replace(/&/g,`%26`))}n+=`?`+r.substring(1)}return n+=a.decodeQuery(t.hash(),!0),n},s.absoluteTo=function(e){var t=this.clone(),n=[`protocol`,`username`,`password`,`hostname`,`port`],r,i,o;if(this._parts.urn)throw Error(`URNs do not have any generally defined hierarchical components`);if(e instanceof a||(e=new a(e)),t._parts.protocol||(t._parts.protocol=e._parts.protocol,this._parts.hostname))return t;for(i=0;o=n[i];i++)t._parts[o]=e._parts[o];return t._parts.path?(t._parts.path.substring(-2)===`..`&&(t._parts.path+=`/`),t.path().charAt(0)!==`/`&&(r=e.directory(),r||=e.path().indexOf(`/`)===0?`/`:``,t._parts.path=(r?r+`/`:``)+t._parts.path,t.normalizePath())):(t._parts.path=e._parts.path,t._parts.query||(t._parts.query=e._parts.query)),t.build(),t},s.relativeTo=function(e){var t=this.clone().normalize(),n,r,i,o,s;if(t._parts.urn)throw Error(`URNs do not have any generally defined hierarchical components`);if(e=new a(e).normalize(),n=t._parts,r=e._parts,o=t.path(),s=e.path(),o.charAt(0)!==`/`)throw Error(`URI is already relative`);if(s.charAt(0)!==`/`)throw Error(`Cannot calculate a URI relative to another relative URI`);if(n.protocol===r.protocol&&(n.protocol=null),n.username!==r.username||n.password!==r.password||n.protocol!==null||n.username!==null||n.password!==null)return t.build();if(n.hostname===r.hostname&&n.port===r.port)n.hostname=null,n.port=null;else return t.build();if(o===s)return n.path=``,t.build();if(i=a.commonPath(o,s),!i)return t.build();var c=r.path.substring(i.length).replace(/[^\/]*$/,``).replace(/.*?\//g,`../`);return n.path=c+n.path.substring(i.length)||`./`,t.build()},s.equals=function(e){var t=this.clone(),n=new a(e),r={},i={},o={},s,l,u;if(t.normalize(),n.normalize(),t.toString()===n.toString())return!0;if(s=t.query(),l=n.query(),t.query(``),n.query(``),t.toString()!==n.toString()||s.length!==l.length)return!1;for(u in r=a.parseQuery(s,this._parts.escapeQuerySpace),i=a.parseQuery(l,this._parts.escapeQuerySpace),r)if(c.call(r,u)){if(d(r[u])){if(!m(r[u],i[u]))return!1}else if(r[u]!==i[u])return!1;o[u]=!0}for(u in i)if(c.call(i,u)&&!o[u])return!1;return!0},s.preventInvalidHostname=function(e){return this._parts.preventInvalidHostname=!!e,this},s.duplicateQueryParameters=function(e){return this._parts.duplicateQueryParameters=!!e,this},s.escapeQuerySpace=function(e){return this._parts.escapeQuerySpace=!!e,this},a})})),Ca=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.uriSchemaAttributesProducer=e.uriInferenceAttributesProducer=e.uriTypeAttributeKind=void 0;var n=t(Sa()),r=na(),i=a(),o=Q(),s=`qt-uri-protocols`,c=`qt-uri-extensions`;e.uriTypeAttributeKind=new class extends r.TypeAttributeKind{constructor(){super(`uriAttributes`)}get inIdentity(){return!0}combine(e){let t=e.map(e=>e[0]),n=e.map(e=>e[1]);return[(0,i.setUnionManyInto)(new Set,t),(0,i.setUnionManyInto)(new Set,n)]}makeInferred(e){}addToSchema(e,t,n){if(t.kind!==`string`&&t.kind!==`uri`)return;let[r,i]=n;r.size>0&&(e[s]=Array.from(r).sort()),i.size>0&&(e[c]=Array.from(i).sort())}};var l=/^.+(\.[^./\\]+)$/;function u(e){let t=e.match(l);if(t!==null)return t[1]}function d(t){try{let r=(0,n.default)(t),i=u(r.path()),a=i===void 0?[]:[i.toLowerCase()];return e.uriTypeAttributeKind.makeAttributes([new Set([r.protocol().toLowerCase()]),new Set(a)])}catch{return r.emptyTypeAttributes}}e.uriInferenceAttributesProducer=d;function f(t,n,r){if(typeof t!=`object`||!r.has(`string`))return;let i,a=t[s];i=a===void 0?new Set:new Set((0,o.checkArray)(a,o.checkString));let l,u=t[c];if(l=u===void 0?new Set:new Set((0,o.checkArray)(u,o.checkString)),!(i.size===0&&l.size===0))return{forString:e.uriTypeAttributeKind.makeAttributes([i,l])}}e.uriSchemaAttributesProducer=f})),wa=i((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;var t=a(),n=Q(),r=fa(),i=C(),o=va(),s=Ca(),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:s.uriInferenceAttributesProducer},"integer-string":{jsonSchema:`integer`,primitive:`integer`},"bool-string":{jsonSchema:`boolean`,primitive:`bool`}};e.transformedStringTypeTargetTypeKindsMap=(0,t.mapFromObject)(c),e.transformedStringTypeKinds=new Set(Object.getOwnPropertyNames(c));function l(e){return e===`string`||(0,t.hasOwnProperty)(c,e)}e.isPrimitiveStringTypeKind=l;function u(t){let n=e.transformedStringTypeTargetTypeKindsMap.get(t);if(n!==void 0)return n.primitive}e.targetTypeKindForTransformedStringTypeKind=u;function d(e){return e===`integer`||e===`double`}e.isNumberTypeKind=d;function f(e){return l(e)||d(e)?!0:e===`none`||e===`any`||e===`null`||e===`bool`}e.isPrimitiveTypeKind=f;function p(e,t){return e.index===t.index||e.kind===`none`||t.kind===`none`}var m=class e{constructor(e,n){this._kind=e,this._components=n;let r=t.hashCodeInit;r=(0,t.addHashCode)(r,(0,t.hashCodeOf)(this._kind));for(let e of n)r=(0,t.addHashCode)(r,(0,t.hashCodeOf)(e));this._hashCode=r}equals(r){if(!(r instanceof e)||this._kind!==r._kind)return!1;let i=this._components.length;(0,n.assert)(i===r._components.length,`Components of a type kind's identity must have the same length`);for(let e=0;e<i;e++)if(!(0,t.areEqual)(this._components[e],r._components[e]))return!1;return!0}hashCode(){return this._hashCode}};e.TypeIdentity=m;var h=class e{constructor(e,t){this.typeRef=e,this.graph=t}get index(){return(0,o.typeRefIndex)(this.typeRef)}getChildren(){let e=this.getNonAttributeChildren();for(let[n,r]of this.getAttributes())n.children!==void 0&&(0,t.setUnionInto)(e,n.children(r));return e}getAttributes(){return(0,o.attributesForTypeRef)(this.typeRef,this.graph)}get hasNames(){return r.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes())!==void 0}getNames(){return(0,n.defined)(r.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes()))}getCombinedName(){return this.getNames().combinedName}get debugPrintKind(){return this.kind}equals(t){return t instanceof e?this.typeRef===t.typeRef:!1}hashCode(){return(0,t.hashCodeOf)(this.typeRef)}structurallyCompatible(e,t=!1){function r(e,n){return e===n?!0:t?e===`integer`?n===`double`:e===`double`?n===`integer`:!1:!1}if(p(this,e))return!0;if(!r(this.kind,e.kind))return!1;let i=[[this,e]],a=[],o,s=(e,t)=>p(e,t)?!0:r(e.kind,t.kind)?(i.push([e,t]),!0):(o=!0,!1);for(;i.length>0;){let[e,r]=(0,n.defined)(i.pop());if(e.index>r.index&&([e,r]=[r,e]),!e.isPrimitive()){let t=e.index,n=r.index,i=!1;for(let[e,r]of a)if(e===t&&r===n){i=!0;break}if(i)continue;a.push([t,n])}if(o=!1,!e.structuralEqualityStep(r,t,s)||o)return!1}return!0}getParentTypes(){return this.graph.getParentsOfType(this)}getAncestorsNotInSet(e){let t=[this],n=new Set,r=new Set;for(;;){let i=t.pop();if(i===void 0)break;let a=i.getParentTypes();console.log(`${a.size} parents`);for(let i of a)n.has(i)||(n.add(i),e.has(i.typeRef)?(console.log(`adding ${i.kind}`),t.push(i)):(console.log(`found ${i.kind}`),r.add(i)))}return r}};e.Type=h;function g(e){return(0,t.mapSome)(e,(e,t)=>t.requiresUniqueIdentity(e))}function _(e){return(0,t.mapFilter)(e,(e,t)=>t.inIdentity)}function v(e,t){if(!g(t))return new m(e,[_(t)])}e.primitiveTypeIdentity=v,e.PrimitiveType=class extends h{constructor(e,t,n){super(e,t),this.kind=n}get isNullable(){return this.kind===`null`||this.kind===`any`||this.kind===`none`}isPrimitive(){return!0}getNonAttributeChildren(){return new Set}get identity(){return v(this.kind,this.getAttributes())}reconstitute(e){e.getPrimitiveType(this.kind)}structuralEqualityStep(e,t,n){return!0}};function y(e,t){if(!g(e))return new m(`array`,[_(e),t])}e.arrayTypeIdentity=y,e.ArrayType=class extends h{constructor(e,t,n){super(e,t),this._itemsRef=n,this.kind=`array`}setItems(e){if(this._itemsRef!==void 0)return(0,n.panic)(`Can only set array items once`);this._itemsRef=e}getItemsRef(){return this._itemsRef===void 0?(0,n.panic)(`Array items accessed before they were set`):this._itemsRef}get items(){return(0,o.derefTypeRef)(this.getItemsRef(),this.graph)}getNonAttributeChildren(){return new Set([this.items])}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return y(this.getAttributes(),this.getItemsRef())}reconstitute(e){let t=this.getItemsRef(),n=e.lookup(t);n===void 0?(e.getUniqueArrayType(),e.setArrayItems(e.reconstitute(this.getItemsRef()))):e.getArrayType(n)}structuralEqualityStep(e,t,n){return n(this.items,e.items)}};var b=class e{constructor(e,t){this.typeData=e,this.isOptional=t}equals(n){return n instanceof e?(0,t.areEqual)(this.typeData,n.typeData)&&this.isOptional===n.isOptional:!1}hashCode(){return(0,t.hashCodeOf)(this.typeData)+(this.isOptional?17:23)}};e.GenericClassProperty=b,e.ClassProperty=class extends b{constructor(e,t,n){super(e,n),this.graph=t}get typeRef(){return this.typeData}get type(){return(0,o.derefTypeRef)(this.typeRef,this.graph)}};function x(e,t,n,r){if(!g(t))return new m(e,[_(t),n,r])}function S(e,t){return x(`class`,e,t,void 0)}e.classTypeIdentity=S;function w(e,t){return x(`map`,e,new Map,t)}e.mapTypeIdentify=w;var T=class extends h{constructor(e,t,r,i,a,o){super(e,t),this.kind=r,this.isFixed=i,this._properties=a,this._additionalPropertiesRef=o,r===`map`?(a!==void 0&&(0,n.assert)(a.size===0),(0,n.assert)(!i)):r===`class`?(0,n.assert)(o===void 0):(0,n.assert)(i)}setProperties(e,t){(0,n.assert)(this._properties===void 0,`Tried to set object properties twice`),this instanceof D&&(0,n.assert)(e.size===0,`Cannot set properties on map type`),this instanceof E&&(0,n.assert)(t===void 0,`Cannot set additional properties of class type`),this._properties=e,this._additionalPropertiesRef=t}getProperties(){return(0,n.defined)(this._properties)}getSortedProperties(){return(0,t.mapSortByKey)(this.getProperties())}getAdditionalPropertiesRef(){return(0,n.assert)(this._properties!==void 0,`Properties are not set yet`),this._additionalPropertiesRef}getAdditionalProperties(){let e=this.getAdditionalPropertiesRef();if(e!==void 0)return(0,o.derefTypeRef)(e,this.graph)}getNonAttributeChildren(){let e=(0,t.mapSortToArray)(this.getProperties(),(e,t)=>t).map(([e,t])=>t.type),n=this.getAdditionalProperties();return n!==void 0&&e.push(n),new Set(e)}get isNullable(){return!1}isPrimitive(){return!1}get identity(){if(!this.isFixed)return x(this.kind,this.getAttributes(),this.getProperties(),this.getAdditionalPropertiesRef())}reconstitute(e,r){let i=this.getSortedProperties(),a=r?i:this.getProperties(),o=e.lookupMap((0,t.mapMap)(i,e=>e.typeRef)),s=(0,t.definedMap)(this._additionalPropertiesRef,t=>e.lookup(t));if(o!==void 0&&(s!==void 0||this._additionalPropertiesRef===void 0)){let r=(0,t.mapMap)(a,(t,r)=>e.makeClassProperty((0,n.defined)(o.get(r)),t.isOptional));switch(this.kind){case`object`:(0,n.assert)(this.isFixed),e.getObjectType(r,s);break;case`map`:e.getMapType((0,n.defined)(s));break;case`class`:this.isFixed?e.getUniqueClassType(!0,r):e.getClassType(r);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}}else{switch(this.kind){case`object`:(0,n.assert)(this.isFixed),e.getUniqueObjectType(void 0,void 0);break;case`map`:e.getUniqueMapType();break;case`class`:e.getUniqueClassType(this.isFixed,void 0);break;default:return(0,n.panic)(`Invalid object type kind ${this.kind}`)}let r=(0,t.mapMap)(i,t=>e.reconstitute(t.typeRef)),o=(0,t.mapMap)(a,(t,i)=>e.makeClassProperty((0,n.defined)(r.get(i)),t.isOptional)),s=(0,t.definedMap)(this._additionalPropertiesRef,t=>e.reconstitute(t));e.setObjectProperties(o,s)}}structuralEqualityStep(e,t,n){let r=this.getProperties(),i=e.getProperties();if(r.size!==i.size)return!1;let a=!1;for(let[e,t]of r){let r=i.get(e);if(r===void 0||t.isOptional!==r.isOptional||!n(t.type,r.type))return a=!0,!1}if(a)return!1;let o=this.getAdditionalProperties(),s=e.getAdditionalProperties();return o===void 0==(s===void 0)?o===void 0||s===void 0?!0:n(o,s):!1}};e.ObjectType=T;var E=class extends T{constructor(e,t,n,r){super(e,t,`class`,n,r,void 0)}};e.ClassType=E;var D=class extends T{constructor(e,n,r){super(e,n,`map`,!1,(0,t.definedMap)(r,()=>new Map),r)}get values(){return(0,n.defined)(this.getAdditionalProperties())}};e.MapType=D;function O(e,t){if(!g(e))return new m(`enum`,[_(e),t])}e.enumTypeIdentity=O,e.EnumType=class extends h{constructor(e,t,n){super(e,t),this.cases=n,this.kind=`enum`}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return O(this.getAttributes(),this.cases)}getNonAttributeChildren(){return new Set}reconstitute(e){e.getEnumType(this.cases)}structuralEqualityStep(e,n,r){return(0,t.areEqual)(this.cases,e.cases)}};function k(e,n,r,i){let a=(0,t.toReadonlySet)(e),o=(0,t.toReadonlySet)(n);return a.size===o.size?(0,t.iterableEvery)(a,e=>{let n=(0,t.iterableFind)(o,t=>t.kind===e.kind);return!!(n!==void 0&&i(e,n)||r&&(e.kind===`integer`&&(0,t.iterableSome)(o,e=>e.kind===`double`)||e.kind===`double`&&(0,t.iterableSome)(o,e=>e.kind===`integer`)))}):!1}e.setOperationCasesEqual=k;function A(e,t,n){if(!g(t))return new m(e,[_(t),n])}e.setOperationTypeIdentity=A;function j(e,t){return A(`union`,e,t)}e.unionTypeIdentity=j;function M(e,t){return A(`intersection`,e,t)}e.intersectionTypeIdentity=M;var N=class extends h{constructor(e,t,n,r){super(e,t),this.kind=n,this._memberRefs=r}setMembers(e){if(this._memberRefs!==void 0)return(0,n.panic)(`Can only set map members once`);this._memberRefs=e}getMemberRefs(){return this._memberRefs===void 0?(0,n.panic)(`Map members accessed before they were set`):this._memberRefs}get members(){return(0,t.setMap)(this.getMemberRefs(),e=>(0,o.derefTypeRef)(e,this.graph))}get sortedMembers(){return this.getNonAttributeChildren()}getNonAttributeChildren(){return(0,t.setSortBy)(this.members,e=>e.kind)}isPrimitive(){return!1}get identity(){return A(this.kind,this.getAttributes(),this.getMemberRefs())}reconstituteSetOperation(e,r,i){let a=(0,t.mapMap)(this.sortedMembers.entries(),e=>e.typeRef),o=r?this.sortedMembers:this.members,s=e.lookupMap(a);if(s===void 0){i(void 0);let r=e.reconstituteMap(a);e.setSetOperationMembers((0,t.setMap)(o,e=>(0,n.defined)(r.get(e))))}else i((0,t.setMap)(o,e=>(0,n.defined)(s.get(e))))}structuralEqualityStep(e,t,n){return k(this.members,e.members,t,n)}};e.SetOperationType=N,e.IntersectionType=class extends N{constructor(e,t,n){super(e,t,`intersection`,n)}get isNullable(){return(0,n.panic)(`isNullable not implemented for IntersectionType`)}reconstitute(e,t){this.reconstituteSetOperation(e,t,t=>{t===void 0?e.getUniqueIntersectionType():e.getIntersectionType(t)})}},e.UnionType=class extends N{constructor(e,t,n){super(e,t,`union`,n),n!==void 0&&(0,i.messageAssert)(n.size>0,`IRNoEmptyUnions`,{})}setMembers(e){(0,i.messageAssert)(e.size>0,`IRNoEmptyUnions`,{}),super.setMembers(e)}get stringTypeMembers(){return(0,t.setFilter)(this.members,e=>l(e.kind)||e.kind===`enum`)}findMember(e){return(0,t.iterableFind)(this.members,t=>t.kind===e)}get isNullable(){return this.findMember(`null`)!==void 0}get isCanonical(){let e=this.members;if(e.size<=1)return!1;let n=(0,t.setMap)(e,e=>e.kind);if(n.size<e.size||n.has(`union`)||n.has(`intersection`)||n.has(`none`)||n.has(`any`)||n.has(`string`)&&n.has(`enum`))return!1;let r=0;return n.has(`class`)&&(r+=1),n.has(`map`)&&(r+=1),n.has(`object`)&&(r+=1),!(r>1)}reconstitute(e,t){this.reconstituteSetOperation(e,t,t=>{t===void 0?e.getUniqueUnionType():e.getUnionType(t)})}}})),Ta=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.assignNames=e.keywordNamespace=e.DependencyName=e.AssociatedName=e.SimpleName=e.FixedName=e.Name=e.funPrefixNamer=e.Namer=e.Namespace=void 0;var t=a(),n=Q(),r=class{constructor(e,t,n,r){this._children=new Set,this._members=new Set,this.forbiddenNamespaces=new Set(n),this.additionalForbidden=new Set(r),t!==void 0&&t.addChild(this)}addChild(e){this._children.add(e)}get children(){return this._children}get members(){return this._members}get forbiddenNameds(){return(0,t.setUnion)(this.additionalForbidden,...Array.from(this.forbiddenNamespaces).map(e=>e.members))}add(e){return this._members.add(e),e}};e.Namespace=r;var i=class{constructor(e,t,n){this.name=e,this.nameStyle=t,this._prefixes=new Set(n)}assignNames(e,r,i){let a=new Set(r),o=Array.from(i);(0,n.assert)(o.length>0,`Number of names can't be less than 1`);let s=new Map,c=[];for(let n of o){let r=n.proposeUnstyledNames(e),i=n.namingFunction,l=(0,t.iterableFind)(r,t=>!a.has(i.nameStyle(t))&&o.every(r=>r===n||!r.proposeUnstyledNames(e).has(t)));if(l!==void 0){let e=i.nameStyle(l),r=n.nameAssignments(a,e);if(r!==null){(0,t.mapMergeInto)(s,r),(0,t.setUnionInto)(a,r.values());continue}}c.push(n)}let l=this._prefixes.values(),u=1;for(let r of c){let i=(0,n.defined)((0,t.iterableFirst)(r.proposeUnstyledNames(e)));for(;;){let e,{done:n,value:o}=l.next();n?(e=`${i}_${u.toString()}`,u++):e=`${o}_${i}`;let c=r.namingFunction.nameStyle(e),d=r.nameAssignments(a,c);if(d!==null){(0,t.mapMergeInto)(s,d),(0,t.setUnionInto)(a,d.values());break}}}return s}};e.Namer=i;var o=[`Purple`,`Fluffy`,`Tentacled`,`Sticky`,`Indigo`,`Indecent`,`Hilarious`,`Ambitious`,`Cunning`,`Magenta`,`Frisky`,`Mischievous`,`Braggadocious`];function s(e,t){return new i(e,t,o)}e.funPrefixNamer=s;var c=class{constructor(e,t){this._namingFunction=e,this.order=t,this._associates=new Set}addAssociate(e){this._associates.add(e)}isFixed(){return this instanceof l}get namingFunction(){return(0,n.defined)(this._namingFunction)}firstProposedName(e){return(0,n.defined)((0,t.iterableFirst)(this.proposeUnstyledNames(e)))}nameAssignments(e,t){if(e.has(t))return null;let n=new Map([[this,t]]);for(let r of this._associates){let i=r.getName(t);if(e.has(i))return null;n.set(r,i)}return n}};e.Name=c;var l=class extends c{constructor(e){super(void 0,0),this._fixedName=e}get dependencies(){return[]}addAssociate(e){return(0,n.panic)(`Cannot add associates to fixed names`)}get fixedName(){return this._fixedName}proposeUnstyledNames(e){return(0,n.panic)(`Only fixedName should be called on FixedName.`)}};e.FixedName=l,e.SimpleName=class extends c{constructor(e,t,n){super(t,n),this._unstyledNames=new Set(e)}get dependencies(){return[]}proposeUnstyledNames(e){return this._unstyledNames}},e.AssociatedName=class extends c{constructor(e,t,n){super(void 0,t),this._sponsor=e,this.getName=n}get dependencies(){return[this._sponsor]}proposeUnstyledNames(e){return(0,n.panic)(`AssociatedName must be assigned via its sponsor`)}},e.DependencyName=class extends c{constructor(e,t,n){super(e,t),this._proposeUnstyledName=n;let r=[];n(e=>(r.push(e),`0xDEADBEEF`)),this._dependencies=new Set(r)}get dependencies(){return Array.from(this._dependencies)}proposeUnstyledNames(e){return new Set([this._proposeUnstyledName(t=>((0,n.assert)(this._dependencies.has(t),`DependencyName proposer is not pure`),(0,n.defined)(e.get(t))))])}};function u(e,t){let n=new r(e,void 0,[],[]);for(let e of t)n.add(new l(e));return n}e.keywordNamespace=u;function d(e){return(0,t.setUnion)(e,...Array.from((0,t.setMap)(e,e=>d(e.children))))}var f=class{constructor(e){this._names=new Map,this._namedsForName=new Map,this.isReadyToBeNamed=e=>this._names.has(e)?!1:e.dependencies.every(e=>this._names.has(e)),this.isConflicting=(e,t)=>{let n=this._namedsForName.get(t);if(n===void 0)return!1;for(let t of n)if(e.members.has(t)||e.forbiddenNameds.has(t))return!0;return!1},this.assign=(e,t,r)=>{(0,n.assert)(!this.names.has(e),`Name "${r}" assigned twice`),(0,n.assert)(!this.isConflicting(t,r),`Assigned name "${r}" conflicts`),this._names.set(e,r);let i=this._namedsForName.get(r);i===void 0&&(i=new Set,this._namedsForName.set(r,i)),i.add(e)},this.namespaces=d(e)}get names(){return this._names}areForbiddensFullyNamed(e){return(0,t.iterableEvery)(e.forbiddenNameds,e=>this._names.has(e))}};function p(e){let n=new f(e);for(let e of n.namespaces)for(let t of e.members)t.isFixed()&&n.assign(t,e,t.fixedName);for(;;){let e=(0,t.setFilter)(n.namespaces,e=>n.areForbiddensFullyNamed(e)),r=(0,t.iterableFind)(e,e=>(0,t.iterableSome)(e.members,n.isReadyToBeNamed));if(r===void 0)return n.names;let i=(0,t.setUnion)(r.members,r.forbiddenNameds),a=(0,t.setFilterMap)(i,e=>n.names.get(e));for(;;){let e=(0,t.setFilter)(r.members,n.isReadyToBeNamed),i=(0,t.iterableMinBy)(e,e=>e.order);if(i===void 0)break;let o=i.order,s=(0,t.setFilter)(e,e=>e.order===o),c=(0,t.setGroupBy)(s,e=>e.namingFunction);for(let[e,i]of c){let o=(0,t.setGroupBy)(i,e=>e.namingFunction.nameStyle(e.firstProposedName(n.names)));for(let[,i]of o){let o=e.assignNames(n.names,a,i);for(let[e,t]of o)n.assign(e,r,t);(0,t.setUnionInto)(a,o.values())}}}}}e.assignNames=p})),Ea=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.parenIfNeeded=e.multiWord=e.singleWord=e.serializeRenderResult=e.modifySource=e.maybeAnnotated=e.annotated=e.sourcelikeToSource=e.newline=void 0;var t=a(),n=Ta(),r=Q(),i=ua();function o(){return{kind:`newline`,indentationChange:0}}e.newline=o;function s(e){if(e instanceof Array)return{kind:`sequence`,sequence:e.map(s)};if(typeof e==`string`){let n=e.split(`
117
+ `);return n.length===1?{kind:`text`,text:e}:{kind:`sequence`,sequence:(0,t.arrayIntercalate)(o(),n.map(e=>({kind:`text`,text:e})))}}return e instanceof n.Name?{kind:`name`,named:e}:e}e.sourcelikeToSource=s;function c(e,t){return{kind:`annotated`,annotation:e,source:s(t)}}e.annotated=c;function l(e,t,n){return e?c(t,n):n}e.maybeAnnotated=l;function u(e,t){return{kind:`modified`,modifier:e,source:s(t)}}e.modifySource=u;function d(e,t){switch(e.kind){case`text`:return e.text.length;case`newline`:return(0,r.panic)(`Newline must not occur within a line.`);case`sequence`:return e.sequence.map(e=>d(e,t)).reduce((e,t)=>e+t,0);case`table`:return(0,r.panic)(`Table must not occur within a line.`);case`annotated`:return d(e.source,t);case`name`:return(0,r.defined)(t.get(e.named)).length;case`modified`:return f(e,t,``).lines.join(`
118
+ `).length;default:return(0,r.assertNever)(e)}}function f(e,n,a){let o=0,s=0,c=[],l=[],u=[];function p(){s!==0&&(l.push((0,i.repeatString)(a,s)),s=0)}function m(){let e=l.join(``);return l=[e],e}function h(){return{line:c.length,column:m().length}}function g(){c.push(m()),l=[]}function _(e){switch(e.kind){case`text`:p(),l.push(e.text);break;case`newline`:g(),o+=e.indentationChange,s=o;break;case`sequence`:for(let t of e.sequence)_(t);break;case`table`:let c=e.table,m=c.length;if(m===0)break;let v=c.map(e=>e.map(e=>d(e,n))),y=(0,r.defined)((0,t.iterableMax)(c.map(e=>e.length)));if(y===0)break;let b=[];for(let e=0;e<y;e++)b.push((0,r.defined)((0,t.iterableMax)(v.map(n=>(0,t.withDefault)(n[e],0)))));for(let e=0;e<m;e++){p();let n=(0,r.defined)(c[e]),a=(0,r.defined)(v[e]);for(let e=0;e<y;e++){let r=b[e],o=(0,t.withDefault)(n[e],{kind:`text`,text:``}),s=(0,t.withDefault)(a[e],0);_(o),e<y-1&&s<r&&l.push((0,i.repeatString)(` `,r-s))}e<m-1&&(g(),s=o)}break;case`annotated`:let x=h();_(e.source);let S=h();u.push({annotation:e.annotation,span:{start:x,end:S}});break;case`name`:(0,r.assert)(n.has(e.named),`No name for Named`),p(),l.push((0,r.defined)(n.get(e.named)));break;case`modified`:p();let C=f(e.source,n,a).lines;(0,r.assert)(C.length===1,`Cannot modify more than one line.`),l.push(e.modifier(C[0]));break;default:return(0,r.assertNever)(e)}}return _(e),g(),{lines:c,annotations:u}}e.serializeRenderResult=f;function p(...e){return{source:e,needsParens:!1}}e.singleWord=p;function m(e,...t){if((0,r.assert)(t.length>0,`Zero words is not multiple`),t.length===1)return p(t[0]);let n=[];for(let r=0;r<t.length;r++)r>0&&n.push(e),n.push(t[r]);return{source:n,needsParens:!0}}e.multiWord=m;function h({source:e,needsParens:t}){return t?[`(`,e,`)`]:e}e.parenIfNeeded=h})),Da=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.nullTypeIssueAnnotation=e.anyTypeIssueAnnotation=e.IssueAnnotationData=e.AnnotationData=void 0;var t=class{};e.AnnotationData=t;var n=class extends t{constructor(e){super(),this.message=e}};e.IssueAnnotationData=n,e.anyTypeIssueAnnotation=new n(`quicktype cannot infer this type because there is no data about it in the input.`),e.nullTypeIssueAnnotation=new n(`The only value for this in the input is null, which means you probably need a more complete input sample.`)})),Oa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Renderer=void 0;var t=a(),n=Ta(),r=Ea(),i=Da(),o=Q();function s(e){return Array.isArray(e)?{position:e[0],count:e[1]}:{position:e,count:1}}function c(e){let t=e.length,n=0;for(let r=0;r<t;r++){let t=e.charAt(r);if(t===` `)n+=1;else if(t===` `)n=(n/4+1)*4;else return{indent:n,text:e.substring(r)}}return{indent:0,text:null}}var l=class{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(e){this._currentEmitTarget.push(e),this._preventBlankLine=!1}emitNewline(){let e=(0,r.newline)();this.pushItem(e),this._lastNewline=e}emitItem(e){if(!this.isEmpty)for(let e=0;e<this._numBlankLinesNeeded;e++)this.emitNewline();this._numBlankLinesNeeded=0,this.pushItem(e)}containsItem(e){return this._currentEmitTarget.find(t=>e===t)!==void 0}ensureBlankLine(e){this._preventBlankLine||(this._numBlankLinesNeeded=Math.max(this._numBlankLinesNeeded,e))}preventBlankLine(){this._numBlankLinesNeeded=0,this._preventBlankLine=!0}changeIndent(e){if(this._lastNewline===void 0)return(0,o.panic)(`Cannot change indent for the first line`);this._lastNewline.indentationChange+=e}};e.Renderer=class{constructor(e,t){this.targetLanguage=e,this.emitTable=e=>{if(e.length===0)return;let t=e.map(e=>e.map(e=>(0,r.sourcelikeToSource)(e)));this._emitContext.emitItem({kind:`table`,table:t}),this._emitContext.emitNewline()},this.typeGraph=t.typeGraph,this.leadingComments=t.leadingComments,this._finishedFiles=new Map,this._finishedEmitContexts=new Map,this._emitContext=new l}ensureBlankLine(e=1){this._emitContext.ensureBlankLine(e)}preventBlankLine(){this._emitContext.preventBlankLine()}emitItem(e){this._emitContext.emitItem(e)}emitItemOnce(e){return this._emitContext.containsItem(e)?!1:(this.emitItem(e),!0)}emitLineOnce(...e){let t=!0;e.length===1?t=this.emitItemOnce(e[0]):e.length>1&&(t=this.emitItemOnce(e)),t&&this._emitContext.emitNewline()}emitLine(...e){e.length===1?this._emitContext.emitItem(e[0]):e.length>1&&this._emitContext.emitItem(e),this._emitContext.emitNewline()}emitMultiline(e){let t=e.split(`
119
+ `),n=t.length;if(n===0)return;this.emitLine(t[0]);let r=0;for(let e=1;e<n;e++){let n=t[e],{indent:i,text:a}=c(n);if((0,o.assert)(i%4==0,`Indentation is not a multiple of 4.`),a!==null){let e=i/4;this.changeIndent(e-r),r=e,this.emitLine(a)}else this._emitContext.emitNewline()}r!==0&&this.changeIndent(-r)}gatherSource(e){let t=this._emitContext;this._emitContext=new l,e(),(0,o.assert)(!this._emitContext.isNested,`emit context not restored correctly`);let n=this._emitContext.source;return this._emitContext=t,n}emitGatheredSource(e){for(let t of e)this._emitContext.emitItem(t)}emitAnnotated(e,t){let n=this.gatherSource(t),i=(0,r.sourcelikeToSource)(n);this._emitContext.emitItem((0,r.annotated)(e,i))}emitIssue(e,t){this.emitAnnotated(new i.IssueAnnotationData(e),t)}changeIndent(e){this._emitContext.changeIndent(e)}iterableForEach(e,n){let r=Array.from(e),i=!0;for(let[e,a]of(0,t.iterableEnumerate)(r))n(a,r.length===1?`only`:i?`first`:e===r.length-1?`last`:`middle`),i=!1}forEach(e,t,n,r){let i=!1;return this.iterableForEach(e,([e,a],o)=>{o===`only`||o===`first`?this.ensureBlankLine(n):this.ensureBlankLine(t),r(a,e,o),i=!0}),i}forEachWithBlankLines(e,t,n){let{position:r,count:i}=s(t),a=[`interposing`,`leading-and-interposing`].indexOf(r)>=0,o=[`leading`,`leading-and-interposing`].indexOf(r)>=0;return this.forEach(e,a?i:0,o?i:0,n)}indent(e){this.changeIndent(1),e(),this.changeIndent(-1)}assignNames(){return(0,n.assignNames)(this.setUpNaming())}initializeEmitContextForFilename(e){if(this._finishedEmitContexts.has(e.toLowerCase())){let t=this._finishedEmitContexts.get(e.toLowerCase());t!==void 0&&(this._emitContext=t)}}finishFile(e){this._finishedFiles.has(e)&&console.log(`[WARNING] Tried to emit file ${e} more than once. If performing multi-file output this warning can be safely ignored.`);let t=(0,r.sourcelikeToSource)(this._emitContext.source);this._finishedFiles.set(e,t),this._finishedEmitContexts.set(e.toLowerCase(),this._emitContext),this._emitContext=new l}render(e){return this._names=this.assignNames(),this.emitSource(e),this._emitContext.isEmpty||this.finishFile(e),{sources:this._finishedFiles,names:this._names}}get names(){return this._names===void 0?(0,o.panic)(`Names accessed before they were assigned`):this._names}}})),ka=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.declarationsForGraph=e.cycleBreakerTypesForGraph=e.DeclarationIR=void 0;var t=a(),n=Q(),r=_a(),i=C(),o=class{constructor(e,t){this.forwardedTypes=t,this.declarations=Array.from(e)}};e.DeclarationIR=o;function s(e,t,r){let i=t.indexOf(e);if(i<0)return;if(r===void 0)return t[i];let a=t.slice(0,i+1).reverse().find(r);return a===void 0?(0,n.panic)(`Found a cycle that cannot be broken`):a}function c(e,t,r){let i=new Set,a=new Set,o=Array.from(e.topLevels.values());function c(e,n){if(!i.has(e)){if(t(e))for(let t of e.getChildren())o.push(t);else{let t=s(e,n,r);if(t!==void 0){a.add(t);return}for(let t of e.getChildren())n.unshift(e),c(t,n),n.shift()}i.add(e)}}for(;;){let e=o.pop();if(e===void 0)break;let t=[];c(e,t),(0,n.assert)(t.length===0)}return a}e.cycleBreakerTypesForGraph=c;function l(e,a,s,c){let l=a===void 0,u=[],d=new Set,f=new Set;function p(e,o){let m=e.stronglyConnectedComponents();function h(e){if(f.has(e))return;f.add(e);let o=(0,t.setFilter)(e,c);if(o.size===1){u.push({kind:`define`,type:(0,n.defined)((0,t.iterableFirst)(o))});return}if(o.size===0&&e.size===1)return;if(o.size===0){u.push({kind:`define`,type:(0,n.defined)((0,t.iterableFirst)(e))});return}if(a===void 0){for(let e of o)u.push({kind:`define`,type:e});return}let l=(0,t.setFilter)(e,a);if(l.size===0)return(0,i.messageError)(`IRNoForwardDeclarableTypeInCycle`,{});for(let e of l)u.push({kind:`forward`,type:e});(0,t.setUnionInto)(d,l);let m=(0,t.setSubtract)(e,l);p(new r.Graph(m,!0,e=>(0,t.setIntersect)(s(e),m)),!1);for(let e of l)u.push({kind:`define`,type:e})}let g=m.findRoots();for(let e of g)m.dfsTraversal(e,l,h)}return p(e.makeGraph(!1,s),!0),new o(u,d)}e.declarationsForGraph=l})),Aa=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,`__esModule`,{value:!0}),e.JSONSchemaStore=void 0;var n=Q();e.JSONSchemaStore=class{constructor(){this._schemas=new Map}add(e,t){(0,n.assert)(!this._schemas.has(e),`Cannot set a schema for an address twice`),this._schemas.set(e,t)}get(e,n){return t(this,void 0,void 0,function*(){let t=this._schemas.get(e);if(t!==void 0)return t;n&&console.log(`trying to fetch ${e}`);try{t=yield this.fetch(e)}catch{}if(t===void 0){n&&console.log(`couldn't fetch ${e}`);return}return n&&console.log(`successully fetched ${e}`),this.add(e,t),t})}}})),ja=i((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;var t=a(),n=na(),r=Q(),i=C();e.accessorNamesTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`accessorNames`)}makeInferred(e){}};function o(e,t){if(typeof e==`string`)return[e,!1];let n=e.get(t);if(n!==void 0)return[n,!0];let r=e.get(`*`);if(r!==void 0)return[r,!1]}function s(e,t,n){let r=e.get(t);if(r!==void 0)return o(r,n)}e.lookupKey=s;function c(n,r){let i=e.accessorNamesTypeAttributeKind.tryGetInAttributes(n.getAttributes()),a=n.getProperties();return i===void 0?(0,t.mapMap)(a,e=>void 0):(0,t.mapMap)(a,(e,t)=>s(i,t,r))}e.objectPropertyNames=c;function l(n,r){let i=e.accessorNamesTypeAttributeKind.tryGetInAttributes(n.getAttributes());return i===void 0?(0,t.mapMap)(n.cases.entries(),e=>void 0):(0,t.mapMap)(n.cases.entries(),e=>s(i,e,r))}e.enumCaseNames=l;function u(e,t){let n=e.get(t);return n===void 0?[void 0,!1]:n}e.getAccessorName=u,e.unionIdentifierTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`unionIdentifier`)}combine(e){return(0,t.setUnionManyInto)(new Set,e)}makeInferred(e){return new Set}};var d=0;function f(){let t=e.unionIdentifierTypeAttributeKind.makeAttributes(new Set([d]));return d+=1,t}e.makeUnionIdentifierAttribute=f,e.unionMemberNamesTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`unionMemberNames`)}combine(e){let n=new Map;for(let r of e)(0,t.mapMergeInto)(n,r);return n}};function p(n,i){let a=(0,r.defined)(e.unionIdentifierTypeAttributeKind.tryGetInAttributes(n)),o=(0,t.mapFromIterable)(a,e=>i);return e.unionMemberNamesTypeAttributeKind.makeAttributes(o)}e.makeUnionMemberNamesAttribute=p;function m(n,r,a){let s=e.unionIdentifierTypeAttributeKind.tryGetInAttributes(n.getAttributes());if(s===void 0)return[void 0,!1];let c=e.unionMemberNamesTypeAttributeKind.tryGetInAttributes(r.getAttributes());if(c===void 0)return[void 0,!1];let l=new Set,u=new Set;for(let e of s){let t=c.get(e);if(t===void 0)continue;let n=o(t,a);if(n===void 0)continue;let[r,i]=n;i?u.add(r):l.add(r)}let d,f,p=(0,t.iterableFirst)(u);if(p!==void 0)d=u.size,f=!0;else{if(p=(0,t.iterableFirst)(l),p===void 0)return[void 0,!1];d=l.size,f=!1}return(0,i.messageAssert)(d===1,`SchemaMoreThanOneUnionMemberName`,{names:Array.from(l)}),[p,f]}e.unionMemberName=m;function h(e){return typeof e==`string`?!0:(0,r.isStringMap)(e,e=>typeof e==`string`)}function g(e){return typeof e==`string`?e:(0,t.mapFromObject)(e)}function _(e){let n=(0,r.checkStringMap)(e,h);return(0,t.mapMap)((0,t.mapFromObject)(n),g)}e.makeAccessorNames=_;function v(t,n,a,o){if(typeof t!=`object`)return;let s=t[`qt-accessors`];if(s!==void 0){if(o===void 0)return{forType:e.accessorNamesTypeAttributeKind.makeAttributes(_(s))};{let e=f(),t=(0,r.checkArray)(s,h);return(0,i.messageAssert)(o.length===t.length,`SchemaWrongAccessorEntryArrayLength`,{operation:`oneOf`,ref:n.push(`oneOf`)}),{forUnion:e,forCases:t.map(t=>p(e,g(t)))}}}}e.accessorNamesAttributeProducer=v})),Ma=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.enumValuesAttributeProducer=e.enumCaseValues=e.enumValuesTypeAttributeKind=void 0;var t=a(),n=ja(),r=na();e.enumValuesTypeAttributeKind=new class extends r.TypeAttributeKind{constructor(){super(`enumValues`)}makeInferred(e){}};function i(r,i){let a=e.enumValuesTypeAttributeKind.tryGetInAttributes(r.getAttributes());return a===void 0?(0,t.mapMap)(r.cases.entries(),e=>void 0):(0,t.mapMap)(r.cases.entries(),e=>(0,n.lookupKey)(a,e,i))}e.enumCaseValues=i;function o(t,r,i){if(typeof t!=`object`)return;let a=t[`qt-enum-values`];if(a!==void 0)return{forType:e.enumValuesTypeAttributeKind.makeAttributes((0,n.makeAccessorNames)(a))}}e.enumValuesAttributeProducer=o})),Na=i((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;var t=na(),n=Q(),r=C();function i(e){let[t,n]=e;if(typeof t==`number`&&typeof n==`number`&&t>n)return(0,r.messageError)(`MiscInvalidMinMaxConstraint`,{min:t,max:n});if(!(t===void 0&&n===void 0))return e}var a=class extends t.TypeAttributeKind{constructor(e,t,n,r){super(e),this._typeKinds=t,this._minSchemaProperty=n,this._maxSchemaProperty=r}get inIdentity(){return!0}combine(e){(0,n.assert)(e.length>0);let[t,r]=e[0];for(let n=1;n<e.length;n++){let[i,a]=e[n];t=typeof t==`number`&&typeof i==`number`?Math.min(t,i):void 0,r=typeof r==`number`&&typeof a==`number`?Math.max(r,a):void 0}return i([t,r])}intersect(e){(0,n.assert)(e.length>0);let[t,r]=e[0];for(let n=1;n<e.length;n++){let[i,a]=e[n];typeof t==`number`&&typeof i==`number`?t=Math.max(t,i):t===void 0&&(t=i),typeof r==`number`&&typeof a==`number`?r=Math.min(r,a):r===void 0&&(r=a)}return i([t,r])}makeInferred(e){}addToSchema(e,t,n){if(this._typeKinds.has(t.kind))return;let[r,i]=n;r!==void 0&&(e[this._minSchemaProperty]=r),i!==void 0&&(e[this._maxSchemaProperty]=i)}stringify([e,t]){return`${e}-${t}`}};e.MinMaxConstraintTypeAttributeKind=a,e.minMaxTypeAttributeKind=new a(`minMax`,new Set([`integer`,`double`]),`minimum`,`maximum`),e.minMaxLengthTypeAttributeKind=new a(`minMaxLength`,new Set([`string`]),`minLength`,`maxLength`);function o(e,t,n){if(typeof e!=`object`)return;let r,i;if(typeof e[t]==`number`&&(r=e[t]),typeof e[n]==`number`&&(i=e[n]),!(r===void 0&&i===void 0))return[r,i]}function s(t,n,r){if(!r.has(`number`)&&!r.has(`integer`))return;let i=o(t,`minimum`,`maximum`);if(i!==void 0)return{forNumber:e.minMaxTypeAttributeKind.makeAttributes(i)}}e.minMaxAttributeProducer=s;function c(t,n,r){if(!r.has(`string`))return;let i=o(t,`minLength`,`maxLength`);if(i!==void 0)return{forString:e.minMaxLengthTypeAttributeKind.makeAttributes(i)}}e.minMaxLengthAttributeProducer=c;function l(t){return e.minMaxTypeAttributeKind.tryGetInAttributes(t.getAttributes())}e.minMaxValueForType=l;function u(t){return e.minMaxLengthTypeAttributeKind.tryGetInAttributes(t.getAttributes())}e.minMaxLengthForType=u;var d=class extends t.TypeAttributeKind{constructor(){super(`pattern`)}get inIdentity(){return!0}combine(e){return(0,n.assert)(e.length>0),e.map(e=>`(${e})`).join(`|`)}intersect(e){}makeInferred(e){}addToSchema(e,t,n){t.kind===`string`&&(e.pattern=n)}};e.PatternTypeAttributeKind=d,e.patternTypeAttributeKind=new d;function f(t,n,r){if(typeof t!=`object`||!r.has(`string`))return;let i=t.pattern;if(typeof i==`string`)return{forString:e.patternTypeAttributeKind.makeAttributes(i)}}e.patternAttributeProducer=f;function p(t){return e.patternTypeAttributeKind.tryGetInAttributes(t.getAttributes())}e.patternForType=p})),Pa=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},n=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.JSONSchemaInput=e.schemaTypeDict=e.Ref=e.PathElementKind=void 0;var r=n(Sa()),i=a(),o=wa(),s=Q(),c=fa(),l=fa(),u=na(),d=Aa(),f=C(),p=ma(),m=Fa(),h=ja(),g=Ma(),_=Na(),v=Na(),y=Na(),b=Ca(),x;(function(e){e[e.Root=0]=`Root`,e[e.KeyOrIndex=1]=`KeyOrIndex`,e[e.Type=2]=`Type`,e[e.Object=3]=`Object`})(x=e.PathElementKind||={});function S(e){if(e.kind===x.KeyOrIndex)return e.key}function w(e,t){if(e.kind!==t.kind)return!1;switch(e.kind){case x.Type:return e.index===t.index;case x.KeyOrIndex:return e.key===t.key;default:return!0}}function T(e,t){let n=typeof e==`function`?e():e instanceof A?e:e.canonicalRef;return Object.assign({ref:n},t===void 0?{}:t)}function E(e,t){return Array.isArray(e)?(0,f.messageError)(`SchemaArrayIsInvalidSchema`,T(t)):e===null?(0,f.messageError)(`SchemaNullIsInvalidSchema`,T(t)):typeof e==`object`?e:(0,f.messageError)(`SchemaInvalidJSONSchemaType`,T(t,{type:typeof e}))}function D(e,t){return typeof e==`boolean`?e:E(e,t)}var O=RegExp(`^[0-9]+$`);function k(e){return typeof e==`string`&&(e=new r.default(e)),new r.default(r.default.decode(e.clone().normalize().toString()))}var A=class e{static root(t){return new e((0,i.definedMap)(t,e=>new r.default(e)),[])}static parsePath(e){let t=[];if(e.startsWith(`/`)&&(t.push({kind:x.Root}),e=e.slice(1)),e!==``){let n=e.split(`/`);for(let e=0;e<n.length;e++)t.push({kind:x.KeyOrIndex,key:n[e]})}return t}static parseURI(t,n=!1){n||(t=t.clone());let r=t.fragment();t.fragment(``),(t.host()!==``||t.filename()!==``)&&r===``&&(r=`/`);let i=e.parsePath(r);return new e(t,i)}static parse(t){return e.parseURI(new r.default(t),!0)}constructor(e,t){this.path=t,e===void 0?this.addressURI=void 0:((0,s.assert)(e.fragment()===``,`Ref URI with fragment is not allowed: ${e.toString()}`),this.addressURI=k(e))}get hasAddress(){return this.addressURI!==void 0}get address(){return(0,s.defined)(this.addressURI).toString()}get isRoot(){return this.path.length===1&&this.path[0].kind===x.Root}pushElement(t){let n=Array.from(this.path);return n.push(t),new e(this.addressURI,n)}push(...e){let t=this;for(let n of e)t=t.pushElement({kind:x.KeyOrIndex,key:n});return t}pushObject(){return this.pushElement({kind:x.Object})}pushType(e){return this.pushElement({kind:x.Type,index:e})}resolveAgainst(t){let n=this.addressURI;return t!==void 0&&t.addressURI!==void 0&&(n=n===void 0?t.addressURI:n.absoluteTo(t.addressURI)),new e(n,this.path)}get name(){let e=Array.from(this.path);for(;;){let t=e.pop();if(t===void 0||t.kind===x.Root){let e=this.addressURI===void 0?``:this.addressURI.filename(),t=this.addressURI===void 0?``:this.addressURI.suffix();return e.length>t.length+1&&(e=e.slice(0,e.length-t.length-1)),e===``?`Something`:e}switch(t.kind){case x.KeyOrIndex:if(O.test(t.key))return t.key;break;case x.Type:case x.Object:return(0,s.panic)(`We shouldn't try to get the name of Type or Object refs`);default:return(0,s.assertNever)(t)}}}get definitionName(){let e=(0,i.arrayGetFromEnd)(this.path,2);if(e!==void 0&&S(e)===`definitions`)return S((0,s.defined)((0,i.arrayLast)(this.path)))}toString(){function e(e){switch(e.kind){case x.Root:return``;case x.Type:return`type/${e.index.toString()}`;case x.Object:return`object`;case x.KeyOrIndex:return e.key;default:return(0,s.assertNever)(e)}}return(this.addressURI===void 0?``:this.addressURI.toString())+`#`+this.path.map(e).join(`/`)}lookup(t,n,r){let a=()=>new e(this.addressURI,n),o=n[0];if(o===void 0)return D(t,a);let c=n.slice(1);switch(o.kind){case x.Root:return this.lookup(r,c,r);case x.KeyOrIndex:let e=o.key;if(Array.isArray(t)){if(!/^\d+$/.test(e))return(0,f.messageError)(`SchemaCannotIndexArrayWithNonNumber`,T(a,{actual:e}));let n=parseInt(o.key,10);return n>=t.length?(0,f.messageError)(`SchemaIndexNotInArray`,T(a,{index:n})):this.lookup(t[n],c,r)}else return(0,i.hasOwnProperty)(t,e)?this.lookup(E(t,a)[o.key],c,r):(0,f.messageError)(`SchemaKeyNotInObject`,T(a,{key:e}));case x.Type:return(0,s.panic)(`Cannot look up path that indexes "type"`);case x.Object:return(0,s.panic)(`Cannot look up path that indexes "object"`);default:return(0,s.assertNever)(o)}}lookupRef(e){return this.lookup(e,this.path,e)}equals(t){if(!(t instanceof e))return!1;if(this.addressURI!==void 0&&t.addressURI!==void 0){if(!this.addressURI.equals(t.addressURI))return!1}else if(this.addressURI===void 0!=(t.addressURI===void 0))return!1;let n=this.path.length;if(n!==t.path.length)return!1;for(let e=0;e<n;e++)if(!w(this.path[e],t.path[e]))return!1;return!0}hashCode(){let e=(0,i.hashCodeOf)((0,i.definedMap)(this.addressURI,e=>e.toString()));for(let t of this.path)switch(e=(0,i.addHashCode)(e,t.kind),t.kind){case x.Type:e=(0,i.addHashCode)(e,t.index);break;case x.KeyOrIndex:e=(0,i.addHashCode)(e,(0,i.hashString)(t.key));break;default:break}return e}};e.Ref=A;var j=class e{constructor(e,t,n=!1){this.haveID=n,this.canonicalRef=e,this.virtualRef=t===void 0?e:t}updateWithID(t){if(typeof t!=`string`)return this;let n=A.parse(t),r=this.haveID?n.resolveAgainst(this.virtualRef):n;return this.haveID||(0,f.messageAssert)(r.hasAddress,`SchemaIDMustHaveAddress`,T(this,{id:t})),new e(this.canonicalRef,r,!0)}push(...t){return new e(this.canonicalRef.push(...t),this.virtualRef.push(...t),this.haveID)}pushObject(){return new e(this.canonicalRef.pushObject(),this.virtualRef.pushObject(),this.haveID)}pushType(t){return new e(this.canonicalRef.pushType(t),this.virtualRef.pushType(t),this.haveID)}toString(){return`${this.virtualRef.toString()} (${this.canonicalRef.toString()})`}},M=class{constructor(e){this._ctx=e,this._map=new i.EqualityMap,this._schemaAddressesAdded=new Set}addIDs(e,t){if(e===null)return;if(Array.isArray(e)){for(let n=0;n<e.length;n++)this.addIDs(e[n],t.push(n.toString()));return}if(typeof e!=`object`)return;let n=t,r=e.$id;typeof r==`string`&&(t=t.updateWithID(r)),t.haveID&&(this._ctx.debugPrintSchemaResolving&&console.log(`adding mapping ${t.toString()}`),this._map.set(t.virtualRef,n));for(let n of Object.getOwnPropertyNames(e))this.addIDs(e[n],t.push(n))}addSchema(e,t){return this._schemaAddressesAdded.has(t)?!1:(this.addIDs(e,new j(A.root(t),A.root(void 0))),this._schemaAddressesAdded.add(t),!0)}canonize(e,t){let n=t.resolveAgainst(e.virtualRef),r=this._map.get(n);return r===void 0?new j(n.addressURI===void 0?new A(e.canonicalRef.addressURI,n.path):n,new A(void 0,n.path)):r}};function N(e,t){let n;if(typeof e==`string`)n=new Set([e]);else if(Array.isArray(e)){let r=[];for(let n of e){if(typeof n!=`string`)return(0,f.messageError)(`SchemaTypeElementMustBeString`,T(t,{element:n}));r.push(n)}n=new Set(r)}else return(0,f.messageError)(`SchemaTypeMustBeStringOrStringArray`,T(t,{actual:e}));(0,f.messageAssert)(n.size>0,`SchemaNoTypeSpecified`,T(t));let r=[`null`,`boolean`,`object`,`array`,`number`,`string`,`integer`],a=(0,i.iterableFind)(n,e=>r.indexOf(e)<0);return a===void 0?n:(0,f.messageError)(`SchemaInvalidType`,T(t,{type:a}))}function P(e,t){if(!Array.isArray(e))return(0,f.messageError)(`SchemaRequiredMustBeStringOrStringArray`,T(t,{actual:e}));for(let n of e)if(typeof n!=`string`)return(0,f.messageError)(`SchemaRequiredElementMustBeString`,T(t,{element:n}));return e}e.schemaTypeDict={null:!0,boolean:!0,string:!0,integer:!0,number:!0,array:!0,object:!0};var ee=Object.getOwnPropertyNames(e.schemaTypeDict);function F(e){let t=(0,i.iterableFind)(o.transformedStringTypeTargetTypeKindsMap,([t,{jsonSchema:n}])=>n===e);if(t!==void 0)return t[0]}function I(e,t){return e===void 0?(0,f.messageError)(`SchemaFetchErrorTopLevel`,{address:t}):(0,f.messageError)(`SchemaFetchError`,{address:t,base:e.canonicalRef})}var L=class{constructor(e,t,n){this._ctx=e,this._store=t,this._canonizer=n}tryResolveVirtualRef(e,n,r){return t(this,void 0,void 0,function*(){let t=!1;for(;;){let i=this._canonizer.canonize(e,r),a=i.canonicalRef;(0,s.assert)(a.hasAddress,`Canonical ref can't be resolved without an address`);let o=a.address,c=a.addressURI===void 0?void 0:yield this._store.get(o,this._ctx.debugPrintSchemaResolving);if(c===void 0)return[void 0,i];if(this._canonizer.addSchema(c,o))(0,s.assert)(!t,`We can't add a schema twice`),t=!0;else{let t=this._canonizer.canonize(n,r);return e!==void 0&&(t=new j(new A(i.canonicalRef.addressURI,t.canonicalRef.path),t.virtualRef,t.haveID)),[t.canonicalRef.lookupRef(c),t]}}})}resolveVirtualRef(e,n){return t(this,void 0,void 0,function*(){this._ctx.debugPrintSchemaResolving&&console.log(`resolving ${n.toString()} relative to ${e.toString()}`);let t=yield this.tryResolveVirtualRef(e,e,n),r=t[0];if(r!==void 0)return this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${t[1].toString()}`),[r,t[1]];let i=new j(e.canonicalRef,new A(e.canonicalRef.addressURI,e.virtualRef.path),e.haveID);return t=yield this.tryResolveVirtualRef(i,e,n),r=t[0],r===void 0?I(e,n.address):(this._ctx.debugPrintSchemaResolving&&console.log(`resolved to ${t[1].toString()}`),[r,t[1]])})}resolveTopLevelRef(e){return t(this,void 0,void 0,function*(){return yield this.resolveVirtualRef(new j(new A(e.addressURI,[])),new A(void 0,e.path))})}};function R(e,n,r,a){return t(this,void 0,void 0,function*(){let d=new i.EqualityMap;function m(e,t){let n=d.get(e.canonicalRef);n!==void 0&&(0,s.assert)(n===t,`Trying to set path again to different type`),d.set(e.canonicalRef,t)}function h(e,r,a,o,s,c=e=>e.toLowerCase()){return t(this,void 0,void 0,function*(){let u=new Set(o),d=(0,i.mapSortBy)((0,i.mapFromObject)(a),(e,t)=>c(t)),p=yield(0,i.mapMapSync)(d,(r,i)=>t(this,void 0,void 0,function*(){let t=e.push(`properties`,i),a=yield _(D(r,t.canonicalRef),t,(0,l.makeNamesTypeAttributes)(i,!0)),o=!u.has(i);return n.makeClassProperty(a,o)})),m;if(s===void 0||s===!0)m=n.getPrimitiveType(`any`);else if(s===!1)m=void 0;else{let t=e.push(`additionalProperties`);m=yield _(D(s,t.canonicalRef),t,(0,l.singularizeTypeNames)(r))}let h=(0,i.setSubtract)(u,p.keys());if(h.size>0){let t=m;if(t===void 0)return(0,f.messageError)(`SchemaAdditionalTypesForbidRequired`,T(e));let r=(0,i.mapFromIterable)(h,e=>n.makeClassProperty(t,!1));(0,i.mapMergeInto)(p,r)}return n.getUniqueObjectType(r,p,m)})}function g(r,d,g){return t(this,void 0,void 0,function*(){let v=Array.isArray(r.enum)?r.enum:void 0,y=(0,i.definedMap)(r.type,e=>N(e,d));function b(e){if(y!==void 0&&!y.has(e))return!1;if(v!==void 0){let t;switch(e){case`null`:t=e=>e===null;break;case`integer`:t=e=>typeof e==`number`&&e===Math.floor(e);break;default:t=t=>typeof t===e;break}return v.find(t)!==void 0}return!0}let x=(0,i.setFilter)(ee,b),S;function C(e,t){let n;if(e===void 0&&S!==void 0)n=S;else{n=[];for(let t of a){let i=t(r,d.canonicalRef,x,e);i!==void 0&&n.push(i)}e===void 0&&(S=n)}for(let e of n)t(e)}function w(e){let t=u.emptyTypeAttributes;return C(void 0,n=>{let r=e(n);r!==void 0&&(t=(0,u.combineTypeAttributes)(`union`,t,r))}),t}function O(e){return r.oneOf===void 0&&(e=(0,u.combineTypeAttributes)(`union`,e,w(({forType:e,forUnion:t,forCases:n})=>((0,s.assert)(t===void 0&&n===void 0,`We can't have attributes for unions and cases if we don't have a union`),e)))),(0,l.modifyTypeNames)(e,e=>{let t=(0,s.defined)(e);if(!t.areInferred)return t;let n=r.title;return typeof n!=`string`&&(n=d.canonicalRef.definitionName),typeof n==`string`?c.TypeNames.make(new Set([n]),new Set,r.$ref!==void 0):t.makeInferred()})}g=O(g);let k=(0,u.makeTypeAttributesInferred)(g);function j(e){let t=F(r.format);return t===void 0?n.getStringType(e,p.StringTypes.unrestricted):n.getPrimitiveType(t,e)}function M(){return t(this,void 0,void 0,function*(){let e=(0,l.singularizeTypeNames)(g),a=r.items,o;if(Array.isArray(a)){let r=d.push(`items`),s=yield(0,i.arrayMapSync)(a,(n,i)=>t(this,void 0,void 0,function*(){let t=r.push(i.toString());return yield _(D(n,t.canonicalRef),t,e)}));o=n.getUnionType(u.emptyTypeAttributes,new Set(s))}else if(typeof a==`object`){let t=d.push(`items`);o=yield _(D(a,t.canonicalRef),t,e)}else if(a!==void 0)return(0,f.messageError)(`SchemaArrayItemsMustBeStringOrArray`,T(d,{actual:a}));else o=n.getPrimitiveType(`any`);return n.addAttributes(o,e),n.getArrayType(u.emptyTypeAttributes,o)})}function I(){return t(this,void 0,void 0,function*(){let e;e=r.required===void 0||typeof r.required==`boolean`?[]:Array.from(P(r.required,d));let t;t=r.properties===void 0?{}:E(r.properties,d.canonicalRef);for(let n of Object.getOwnPropertyNames(t))t[n].required===!0&&e.indexOf(n)<0&&e.push(n);let n=r.additionalProperties;n===void 0&&typeof r.patternProperties==`object`&&(0,i.hasOwnProperty)(r.patternProperties,`.*`)&&(n=r.patternProperties[`.*`]);let a=(0,u.combineTypeAttributes)(`union`,k,w(({forObject:e})=>e)),o=r.quicktypePropertyOrder?r.quicktypePropertyOrder:[];return yield h(d,a,t,e,n,e=>{let t=o.indexOf(e);return t===-1?e.toLowerCase():t})})}function L(e,n){return t(this,void 0,void 0,function*(){let r=d.push(n);return Array.isArray(e)?yield(0,i.arrayMapSync)(e,(e,n)=>t(this,void 0,void 0,function*(){let t=r.push(n.toString());return yield _(D(e,t.canonicalRef),t,(0,u.makeTypeAttributesInferred)(g))})):(0,f.messageError)(`SchemaSetOperationCasesIsNotArray`,T(r,{operation:n,cases:e}))})}let R=n.getUniqueIntersectionType(g,void 0);m(d,R);function z(e,r){return t(this,void 0,void 0,function*(){let t=yield L(e,r),i=(0,u.makeTypeAttributesInferred)(g);r===`oneOf`&&C(e,({forType:e,forUnion:r,forCases:a})=>{if(e!==void 0&&n.addAttributes(R,e),r!==void 0&&(i=(0,u.combineTypeAttributes)(`union`,i,r)),a!==void 0){(0,s.assert)(a.length===t.length,`Number of case attributes doesn't match number of cases`);for(let e=0;e<t.length;e++)n.addAttributes(t[e],a[e])}});let a=n.getUniqueUnionType(i,void 0);return n.setSetOperationMembers(a,new Set(t)),a})}let te=v===void 0&&(y===void 0||y.has(`object`)),ne=v===void 0&&(y===void 0||y.has(`array`)),re=x.has(`string`)&&v!==void 0&&v.find(e=>typeof e==`string`)!==void 0,B=y!==void 0||r.properties!==void 0||r.additionalProperties!==void 0||r.items!==void 0||r.required!==void 0||v!==void 0,V=[];if(B){let e=[],t=w(({forNumber:e})=>e);for(let[r,i]of[[`null`,`null`],[`number`,`double`],[`integer`,`integer`],[`boolean`,`bool`]]){if(!x.has(r))continue;let a=(0,o.isNumberTypeKind)(i)?t:void 0;e.push(n.getPrimitiveType(i,a))}let r=(0,u.combineTypeAttributes)(`union`,k,w(({forString:e})=>e));if(re){let t=v.filter(e=>typeof e==`string`);e.push(n.getStringType(r,p.StringTypes.fromCases(t)))}else x.has(`string`)&&e.push(j(r));ne&&e.push(yield M()),te&&e.push(yield I()),V.push(n.getUniqueUnionType(k,new Set(e)))}if(r.$ref!==void 0){if(typeof r.$ref!=`string`)return(0,f.messageError)(`SchemaRefMustBeString`,T(d,{actual:typeof r.$ref}));let t=A.parse(r.$ref),[n,i]=yield e.resolveVirtualRef(d,t),a=(0,l.modifyTypeNames)(g,e=>(0,s.defined)(e).areInferred?c.TypeNames.make(new Set([i.canonicalRef.name]),new Set,!0):e);V.push(yield _(n,i,a))}return r.allOf!==void 0&&V.push(...yield L(r.allOf,`allOf`)),r.oneOf!==void 0&&V.push(yield z(r.oneOf,`oneOf`)),r.anyOf!==void 0&&V.push(yield z(r.anyOf,`anyOf`)),n.setSetOperationMembers(R,new Set(V)),R})}function _(e,r,i){return t(this,void 0,void 0,function*(){let t=d.get(r.canonicalRef);if(t!==void 0)return t;let a;return typeof e==`boolean`?((0,f.messageAssert)(e===!0,`SchemaFalseNotSupported`,T(r)),a=n.getPrimitiveType(`any`)):(r=r.updateWithID(e.$id),a=yield g(e,r,i)),m(r,a),a})}for(let[t,i]of r){let[r,a]=yield e.resolveTopLevelRef(i),o=yield _(r,a,(0,l.makeNamesTypeAttributes)(t,!1));n.addTopLevel(t,o)}})}function z(e){let t=e.toLowerCase();for(let n of[`.json`,`.schema`])if(t.endsWith(n)){let t=e.slice(0,e.length-n.length);if(t.length>0)return t}return e}function te(e){let t=e.fragment();if(t!==``){let e=t.split(`/`),n=e.length;if(e[n-1]!==``)return z(e[n-1]);if(n>1&&e[n-2]!==``)return z(e[n-2])}let n=e.filename();return n===``?(0,f.messageError)(`DriverCannotInferNameForSchema`,{uri:e.toString()}):z(n)}function ne(e,n,r){return t(this,void 0,void 0,function*(){let t=n.fragment(),a=t.endsWith(`/`);a&&(n=n.clone().fragment(t.slice(0,-1)));let o=A.parseURI(n);o.isRoot&&(a=!1);let s=(yield e.resolveTopLevelRef(o))[0];if(a)return typeof s==`object`?(0,i.mapMap)((0,i.mapFromObject)(s),(e,t)=>o.push(t)):(0,f.messageError)(`SchemaCannotGetTypesFromBoolean`,{ref:o.toString()});{let e;if(typeof s==`object`&&typeof s.title==`string`)e=s.title;else{let t=te(n);e=t===void 0?r:t}return[e,o]}})}var re=class extends d.JSONSchemaStore{constructor(e,t){super(),this._inputs=e,this._delegate=t}fetch(e){return t(this,void 0,void 0,function*(){let t=this._inputs.get(e);return t===void 0?this._delegate===void 0?(0,s.panic)(`Schema URI ${e} requested, but no store given`):yield this._delegate.fetch(e):D((0,s.parseJSON)(t,`JSON Schema`,e),()=>A.root(e))})}};e.JSONSchemaInput=class{constructor(e,t=[],n=[]){this._schemaStore=e,this._additionalSchemaAddresses=n,this.kind=`schema`,this.needSchemaProcessing=!0,this._schemaInputs=new Map,this._schemaSources=[],this._topLevels=new Map,this._needIR=!1,this._attributeProducers=[m.descriptionAttributeProducer,h.accessorNamesAttributeProducer,g.enumValuesAttributeProducer,b.uriSchemaAttributesProducer,_.minMaxAttributeProducer,v.minMaxLengthAttributeProducer,y.patternAttributeProducer].concat(t)}get needIR(){return this._needIR}addTopLevel(e,t){this._topLevels.set(e,t)}addTypes(e,n){return t(this,void 0,void 0,function*(){if(this._schemaSources.length===0)return;let t=this._schemaStore;if(this._schemaInputs.size===0){if(t===void 0)return(0,s.panic)(`Must have a schema store to process JSON Schema`)}else t=this._schemaStore=new re(this._schemaInputs,t);let r=t,i=new M(e);for(let t of this._additionalSchemaAddresses){let n=yield r.get(t,e.debugPrintSchemaResolving);if(n===void 0)return(0,f.messageError)(`SchemaFetchErrorAdditional`,{address:t});i.addSchema(n,t)}let a=new L(e,(0,s.defined)(this._schemaStore),i);for(let[e,t]of this._schemaSources){let n=t.name,r=yield ne(a,e,n);if(Array.isArray(r)){let e;e=this._schemaSources.length===1?n:r[0],this.addTopLevel(e,r[1])}else for(let[e,t]of r)this.addTopLevel(e,t)}yield R(a,n,this._topLevels,this._attributeProducers)})}addTypesSync(){return(0,s.panic)(`addTypesSync not supported in JSONSchemaInput`)}addSource(e){return t(this,void 0,void 0,function*(){return this.addSourceSync(e)})}addSourceSync(e){let{name:t,uris:n,schema:i,isConverted:a}=e;a!==!0&&(this._needIR=!0);let o;if(o=n===void 0?[new r.default(t)]:n.map(e=>{let n=k(e);return n.clone().hash(``).toString()===``&&n.path(t),n}),i===void 0)(0,s.assert)(n!==void 0,`URIs must be given if schema source is not specified`);else for(let e=0;e<o.length;e++){let t=o[e],n=t.clone().hash(``),r=n.path(),a=0;do a>0&&n.path(`${r}-${a}`),a++;while(this._schemaInputs.has(n.toString()));this._schemaInputs.set(n.toString(),i),o[e]=n.hash(t.hash())}for(let t of o)this._schemaSources.push([t,e])}singleStringSchemaSource(){if(!this._schemaSources.every(([e,{schema:t}])=>typeof t==`string`))return;let e=new Set(this._schemaSources.map(([e,{schema:t}])=>t));if(e.size===1)return(0,s.defined)((0,i.iterableFirst)(e))}}})),Fa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.descriptionAttributeProducer=e.propertyDescriptionsTypeAttributeKind=e.descriptionTypeAttributeKind=e.addDescriptionToSchema=void 0;var t=a(),n=na(),r=Pa();function i(e,t){t!==void 0&&(e.description=Array.from(t).join(`
120
+ `))}e.addDescriptionToSchema=i,e.descriptionTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`description`)}combine(e){return(0,t.setUnionManyInto)(new Set,e)}makeInferred(e){}addToSchema(e,t,n){i(e,n)}stringify(e){let n=(0,t.iterableFirst)(e);if(n!==void 0)return n.length>8&&(n=`${n.slice(0,5)}...`),e.size>1&&(n=`${n}, ...`),n}},e.propertyDescriptionsTypeAttributeKind=new class extends n.TypeAttributeKind{constructor(){super(`propertyDescriptions`)}combine(e){let n=new Map;for(let r of e)(0,t.mapMergeWithInto)(n,(e,n)=>(0,t.setUnion)(e,n),r);return n}makeInferred(e){}stringify(e){if(e.size!==0)return`prop descs: ${e.size}`}};function o(e){return e.kind===r.PathElementKind.KeyOrIndex&&e.key===`properties`}function s(r,i,a){if(typeof r!=`object`)return;let s=n.emptyTypeAttributes,c=n.emptyTypeAttributes,l=i.path.length;if(a.has(`object`)||(0,t.setSubtract)(a,[`null`]).size>1||r.enum!==void 0||l<2||!o(i.path[l-2])){let t=r.description;typeof t==`string`&&(s=e.descriptionTypeAttributeKind.makeAttributes(new Set([t])))}if(a.has(`object`)&&typeof r.properties==`object`){let n=(0,t.mapFilterMap)((0,t.mapFromObject)(r.properties),e=>{if(typeof e==`object`){let t=e.description;if(typeof t==`string`)return new Set([t])}});n.size>0&&(c=e.propertyDescriptionsTypeAttributeKind.makeAttributes(n))}return{forType:s,forObject:c}}e.descriptionAttributeProducer=s})),Ia=i((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;var t=a(),n=wa(),r=na(),i=Q(),o=va();function s(e){let t=x(e);return e===t?e.kind:`${e.kind} (${t.kind})`}function c(e){return(0,t.definedMapWithDefault)(e,0,e=>e.getNumberOfNodes())}var l=class e{constructor(e,t,n){this.kind=e,this.graph=t,this.sourceTypeRef=n}get sourceType(){return(0,o.derefTypeRef)(this.sourceTypeRef,this.graph)}getChildren(){return new Set([this.sourceType])}getNumberOfNodes(){return 1}equals(t){return t instanceof e?this.sourceTypeRef===t.sourceTypeRef:!1}hashCode(){return(0,t.hashCodeOf)(this.sourceTypeRef)}debugDescription(){return`${s(this.sourceType)} -> ${this.kind}`}debugPrintContinuations(e){}debugPrint(e){console.log((0,i.indentationString)(e)+this.debugDescription()),this.debugPrintContinuations(e+1)}};e.Transformer=l;var u=class e extends l{constructor(e,t,n,r){super(e,t,n),this.consumer=r}getChildren(){let e=super.getChildren();return this.consumer===void 0?e:(0,t.setUnionInto)(e,this.consumer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+c(this.consumer)}equals(n){return!super.equals(n)||!(n instanceof e)?!1:(0,t.areEqual)(this.consumer,n.consumer)}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.consumer))}debugPrintContinuations(e){this.consumer!==void 0&&this.consumer.debugPrint(e)}};e.ProducerTransformer=u;var d=class e extends l{constructor(e,t,n,r){super(e,t,n),this.transformer=r}getChildren(){return(0,t.setUnionInto)(super.getChildren(),this.transformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.transformer.getNumberOfNodes()}equals(t){return!super.equals(t)||!(t instanceof e)?!1:this.transformer.equals(t.transformer)}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,this.transformer.hashCode())}debugPrintContinuations(e){this.transformer.debugPrint(e)}};e.MatchTransformer=d,e.DecodingTransformer=class e extends u{constructor(e,t,n){super(`decode`,e,t,n)}get canFail(){return!1}reverse(e,t){return t===void 0?this.consumer===void 0?new f(this.graph,e):this.consumer.reverse(e,new f(this.graph,this.consumer.sourceTypeRef)):(0,i.panic)(`Reversing a decoding transformer cannot have a continuation`)}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)))}equals(t){return super.equals(t)?t instanceof e:!1}};var f=class e extends l{constructor(e,t){super(`encode`,e,t)}get canFail(){return!1}reverse(e,t){return(0,i.panic)(`Can't reverse encoding transformer`)}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef))}equals(t){return!(!super.equals(t)||!(t instanceof e))}};e.EncodingTransformer=f,e.ArrayDecodingTransformer=class e extends u{constructor(e,t,n,r,i){super(`decode-array`,e,t,n),this._itemTargetTypeRef=r,this.itemTransformer=i}getChildren(){let e=super.getChildren();return e.add(this.itemTargetType),(0,t.setUnionInto)(e,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return(0,o.derefTypeRef)(this._itemTargetTypeRef,this.graph)}reverse(e,t){if(t!==void 0)return(0,i.panic)(`Reversing a decoding transformer cannot have a continuation`);let n=this.itemTransformer.reverse(this._itemTargetTypeRef,void 0);return this.consumer===void 0?new p(this.graph,e,this.itemTransformer.sourceTypeRef,n):this.consumer.reverse(e,new p(this.graph,this.consumer.sourceTypeRef,this.itemTransformer.sourceTypeRef,n))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)),n.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(n))}hashCode(){let e=super.hashCode();return e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this._itemTargetTypeRef)),e=(0,t.addHashCode)(e,this.itemTransformer.hashCode()),e}equals(n){return!super.equals(n)||!(n instanceof e)||!(0,t.areEqual)(this._itemTargetTypeRef,n._itemTargetTypeRef)?!1:this.itemTransformer.equals(n.itemTransformer)}debugPrintContinuations(e){this.itemTransformer.debugPrint(e),super.debugPrintContinuations(e)}};var p=class e extends l{constructor(e,t,n,r){super(`encode-array`,e,t),this._itemTargetTypeRef=n,this.itemTransformer=r}getChildren(){let e=super.getChildren();return e.add(this.itemTargetType),(0,t.setUnionInto)(e,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return(0,o.derefTypeRef)(this._itemTargetTypeRef,this.graph)}reverse(e,t){return(0,i.panic)(`Can't reverse array encoding transformer`)}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef),t.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(t))}hashCode(){let e=super.hashCode();return e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this._itemTargetTypeRef)),(0,t.addHashCode)(e,this.itemTransformer.hashCode())}equals(n){return!super.equals(n)||!(n instanceof e)||!(0,t.areEqual)(this._itemTargetTypeRef,n._itemTargetTypeRef)?!1:this.itemTransformer.equals(n.itemTransformer)}debugPrintContinuations(e){this.itemTransformer.debugPrint(e),super.debugPrintContinuations(e)}};e.ArrayEncodingTransformer=p;var m=class e extends l{constructor(e,t,n){super(`choice`,e,t),this.transformers=n,(0,i.assert)(n.length>0,`Choice must have at least one transformer`)}getChildren(){let e=super.getChildren();for(let n of this.transformers)(0,t.setUnionInto)(e,n.getChildren());return e}getNumberOfNodes(){let e=0;for(let t of this.transformers)e+=t.getNumberOfNodes();return super.getNumberOfNodes()+e}get canFail(){return this.transformers.some(e=>e.canFail)}reverse(t,n){let r=this.transformers.map(e=>e.reverse(t,n));if(r.every(e=>e instanceof h)){let n=r,i=n[0];if(n.every(e=>i.memberType.equals(e.memberType))){let r=n.map(e=>e.transformer);return new h(this.graph,t,new e(this.graph,r[0].sourceTypeRef,r),i.memberTypeRef)}}return new e(this.graph,t,r)}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef),this.transformers.map(e=>e.reconstitute(t)))}equals(n){return!super.equals(n)||!(n instanceof e)?!1:(0,t.areEqual)(this.transformers,n.transformers)}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.transformers))}debugPrintContinuations(e){for(let t of this.transformers)t.debugPrint(e)}};e.ChoiceTransformer=m,e.DecodingChoiceTransformer=class e extends l{constructor(e,t,n,r,i,a,o,s,c){super(`decoding-choice`,e,t),this.nullTransformer=n,this.integerTransformer=r,this.doubleTransformer=i,this.boolTransformer=a,this.stringTransformer=o,this.arrayTransformer=s,this.objectTransformer=c}get transformers(){let e=[];function t(t){t!==void 0&&e.push(t)}return t(this.nullTransformer),t(this.integerTransformer),t(this.doubleTransformer),t(this.boolTransformer),t(this.stringTransformer),t(this.arrayTransformer),t(this.objectTransformer),e}getChildren(){let e=super.getChildren();for(let n of this.transformers)(0,t.setUnionInto)(e,n.getChildren());return e}getNumberOfNodes(){let e=super.getNumberOfNodes();for(let t of this.transformers)e+=c(t);return e}get canFail(){return!1}reverse(e,n){(0,i.assert)(n===void 0,`Reversing a decoding transformer can't have a target transformer`);let r=new Map,a=new Map;function o(e){if(e instanceof h){let t=e.memberType,n=a.get(t);n===void 0&&(n=[],a.set(t,n)),n.push(e)}else{let t=e.sourceType.kind,n=r.get(t);n===void 0&&(n=[],r.set(t,n)),n.push(e)}}function s(t){let n=t.reverse(e,void 0),r=[];r=n instanceof m?n.transformers:[n];for(let e of r)o(e)}function c(e){(0,i.assert)(e.length>0,`Must have at least one transformer`);let n=e.filter(e=>e instanceof h?!e.transformer.canFail:!e.canFail);return n.length===0?e:[(0,t.arraySortByInto)(n.map(e=>[e.getNumberOfNodes(),e]),([e,t])=>e)[0][1]]}this.transformers.forEach(s);let l=Array.from(r.values()).concat(Array.from(a.values())),u=[].concat(...l.map(c));return u.length===1?u[0]:new m(this.graph,e,u)}reconstitute(t){function n(e){if(e!==void 0)return e.reconstitute(t)}return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef),n(this.nullTransformer),n(this.integerTransformer),n(this.doubleTransformer),n(this.boolTransformer),n(this.stringTransformer),n(this.arrayTransformer),n(this.objectTransformer))}equals(n){return!(!super.equals(n)||!(n instanceof e)||!(0,t.areEqual)(this.nullTransformer,n.nullTransformer)||!(0,t.areEqual)(this.integerTransformer,n.integerTransformer)||!(0,t.areEqual)(this.doubleTransformer,n.doubleTransformer)||!(0,t.areEqual)(this.boolTransformer,n.boolTransformer)||!(0,t.areEqual)(this.stringTransformer,n.stringTransformer)||!(0,t.areEqual)(this.arrayTransformer,n.arrayTransformer)||!(0,t.areEqual)(this.objectTransformer,n.objectTransformer))}hashCode(){let e=super.hashCode();return e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.nullTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.integerTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.doubleTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.boolTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.stringTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.arrayTransformer)),e=(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.objectTransformer)),e}debugPrintContinuations(e){for(let t of this.transformers)t.debugPrint(e)}};var h=class e extends d{constructor(e,t,n,r){super(`union-member-match`,e,t,n),this.memberTypeRef=r}get sourceType(){let e=(0,o.derefTypeRef)(this.sourceTypeRef,this.graph);return e instanceof n.UnionType?e:(0,i.panic)(`The source of a union member match transformer must be a union type`)}get canFail(){return!0}get memberType(){return(0,o.derefTypeRef)(this.memberTypeRef,this.graph)}getChildren(){return super.getChildren().add(this.memberType)}reverse(e,t){return(0,i.panic)(`Can't reverse union member match transformer`)}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(t),t.reconstituteTypeRef(this.memberTypeRef))}equals(t){return!super.equals(t)||!(t instanceof e)?!1:this.memberTypeRef===t.memberTypeRef}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.memberTypeRef))}debugDescription(){return`${super.debugDescription()} - member: ${s(this.memberType)}`}};e.UnionMemberMatchTransformer=h;var g=class e extends d{constructor(e,t,n,r){super(`string-match`,e,t,n),this.stringCase=r}get sourceType(){let e=(0,o.derefTypeRef)(this.sourceTypeRef,this.graph);return!(e instanceof n.EnumType)&&!(e instanceof n.PrimitiveType&&e.kind===`string`)?(0,i.panic)(`The source of a string match transformer must be an enum or string type`):e}get canFail(){return!0}reverse(e,t){return this.transformer.reverse(e,new _(this.graph,this.transformer.sourceTypeRef,t,this.stringCase))}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(t),this.stringCase)}equals(t){return!super.equals(t)||!(t instanceof e)?!1:this.stringCase!==t.stringCase}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,(0,t.hashString)(this.stringCase))}debugDescription(){return`${super.debugDescription()} - case: ${this.stringCase}`}};e.StringMatchTransformer=g,e.UnionInstantiationTransformer=class e extends l{constructor(e,t){super(`union-instantiation`,e,t)}get canFail(){return!1}reverse(e,t){return t===void 0?(0,i.panic)(`Union instantiation transformer reverse must have a continuation`):new h(this.graph,e,t,this.sourceTypeRef)}reconstitute(t){return new e(t.typeGraph,t.reconstituteTypeRef(this.sourceTypeRef))}equals(t){return super.equals(t)?t instanceof e:!1}};var _=class e extends u{constructor(e,t,n,r){super(`string-producer`,e,t,n),this.result=r}get canFail(){return!1}reverse(e,t){return t===void 0?(0,i.panic)(`Reversing a string producer transformer must have a continuation`):this.consumer===void 0?new g(this.graph,e,t,this.result):this.consumer.reverse(e,new g(this.graph,this.consumer.sourceTypeRef,t,this.result))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)),this.result)}equals(t){return!super.equals(t)||!(t instanceof e)?!1:this.result===t.result}hashCode(){let e=super.hashCode();return(0,t.addHashCode)(e,(0,t.hashCodeOf)(this.consumer))}debugDescription(){return`${super.debugDescription()} - result: ${this.result}`}};e.StringProducerTransformer=_;var v=class e extends u{constructor(e,t,n){super(`parse-string`,e,t,n)}get canFail(){return!0}reverse(e,t){return this.consumer===void 0?new y(this.graph,e,t):this.consumer.reverse(e,new y(this.graph,this.consumer.sourceTypeRef,t))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)))}equals(t){return super.equals(t)?t instanceof e:!1}};e.ParseStringTransformer=v;var y=class e extends u{constructor(e,t,n){super(`stringify`,e,t,n)}get canFail(){return!1}reverse(e,t){return this.consumer===void 0?new v(this.graph,e,t):this.consumer.reverse(e,new v(this.graph,this.consumer.sourceTypeRef,t))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)))}equals(t){return super.equals(t)?t instanceof e:!1}};e.StringifyTransformer=y,e.MinMaxLengthCheckTransformer=class e extends u{constructor(e,t,n,r,i){super(`min-max-length-check`,e,t,n),this.minLength=r,this.maxLength=i}get canFail(){return!0}reverse(t,n){return this.consumer===void 0?new e(this.graph,t,n,this.minLength,this.maxLength):this.consumer.reverse(t,new e(this.graph,this.consumer.sourceTypeRef,n,this.minLength,this.maxLength))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)),this.minLength,this.maxLength)}equals(t){return super.equals(t)?t instanceof e&&this.minLength===t.minLength&&this.maxLength===t.maxLength:!1}},e.MinMaxValueTransformer=class e extends u{constructor(e,t,n,r,i){super(`min-max-value-check`,e,t,n),this.minimum=r,this.maximum=i}get canFail(){return!0}reverse(t,n){return this.consumer===void 0?new e(this.graph,t,n,this.minimum,this.maximum):this.consumer.reverse(t,new e(this.graph,this.consumer.sourceTypeRef,n,this.minimum,this.maximum))}reconstitute(n){return new e(n.typeGraph,n.reconstituteTypeRef(this.sourceTypeRef),(0,t.definedMap)(this.consumer,e=>e.reconstitute(n)),this.minimum,this.maximum)}equals(t){return super.equals(t)?t instanceof e&&this.minimum===t.minimum&&this.maximum===t.maximum:!1}},e.Transformation=class e{constructor(e,t,n){this._graph=e,this._targetTypeRef=t,this.transformer=n}get sourceType(){return this.transformer.sourceType}get targetType(){return(0,o.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(t){return new e(t.typeGraph,t.reconstituteTypeRef(this._targetTypeRef),this.transformer.reconstitute(t))}equals(t){return t instanceof e?this._targetTypeRef===t._targetTypeRef&&this.transformer.equals(t.transformer):!1}hashCode(){let e=(0,t.hashCodeOf)(this._targetTypeRef);return e=(0,t.addHashCode)(e,this.transformer.hashCode()),e}debugPrint(){this.transformer.debugPrint(0),console.log(`-> ${s(this.targetType)}`)}},e.transformationTypeAttributeKind=new class extends r.TypeAttributeKind{constructor(){super(`transformation`)}appliesToTypeKind(e){return!0}get inIdentity(){return!0}children(e){return e.getChildren()}reconstitute(e,t){return t.reconstitute(e)}stringify(e){return`transformation`}};function b(t){return e.transformationTypeAttributeKind.tryGetInAttributes(t.getAttributes())}e.transformationForType=b;function x(e){for(;;){let t=b(e);if(t===void 0)return e;e=t.targetType}}e.followTargetType=x})),La=i(((e,t)=>{var n=t.exports=function(e,t,n){typeof e==`object`&&(n=e,e=n.start,t=n.stop),typeof t==`object`&&(n=t,e||=n.start,t=void 0),t||(t=e,e=0),n||={};var r=n.mode||`soft`,i=r===`hard`?/\b/:/(\S+\s+)/;return function(n){return n.toString().split(i).reduce(function(n,i){if(r===`hard`)for(var a=0;a<i.length;a+=t-e)n.push(i.slice(a,a+t-e));else n.push(i);return n},[]).reduce(function(n,r){if(r===``)return n;var i=r.replace(/\t/g,` `),a=n.length-1;if(n[a].length+i.length>t)n[a]=n[a].replace(/\s+$/,``),i.split(/\n/).forEach(function(t){n.push(Array(e+1).join(` `)+t.replace(/^\s+/,``))});else if(i.match(/\n/)){var o=i.split(/\n/);n[a]+=o.shift(),o.forEach(function(t){n.push(Array(e+1).join(` `)+t.replace(/^\s+/,``))})}else n[a]+=i;return n},[Array(e+1).join(` `)]).join(`
121
+ `)}};n.soft=n,n.hard=function(e,t){return n(e,t,{mode:`hard`})}})),Ra=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ConvenienceRenderer=e.inferredNameOrder=e.topLevelNameOrder=void 0;var t=a(),n=wa(),r=ha(),i=Ta(),o=Oa(),s=Q(),c=ua(),l=Ea(),u=ka(),d=va(),f=na(),p=Fa(),m=ja(),h=Ia(),g=La()(90);e.topLevelNameOrder=1;var _=10;e.inferredNameOrder=30;var v=20,y=10,b=20,x=10,S=40;function C(e){if(e===void 0)return;let t=Array.from(e).join(`
122
+
123
+ `).trim();if(t!==``)return g(t).split(`
124
+ `).map(e=>e.trim())}var w=new f.TypeAttributeKind(`assignedName`),T=new f.TypeAttributeKind(`assignedPropertyNames`),E=new f.TypeAttributeKind(`assignedMemberNames`),D=new f.TypeAttributeKind(`assignedCaseNames`);e.ConvenienceRenderer=class extends o.Renderer{constructor(e,t){super(e,t),this._alphabetizeProperties=!1}get topLevels(){return this.typeGraph.topLevels}forbiddenNamesForGlobalNamespace(){return[]}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!1}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!1}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!1}}makeTopLevelDependencyNames(e,t){return[]}makeNamedTypeDependencyNames(e,t){return[]}makeNameForTransformation(e,t){}namedTypeToNameForTopLevel(e){if((0,r.isNamedType)(e))return e}get unionMembersInGlobalNamespace(){return!1}get enumCasesInGlobalNamespace(){return!1}get needsTypeDeclarationBeforeUse(){return!1}canBeForwardDeclared(e){return(0,s.panic)(`If needsTypeDeclarationBeforeUse returns true, canBeForwardDeclared must be implemented`)}unionNeedsName(e){return(0,r.nullableFromUnion)(e)===null}get globalNamespace(){return(0,s.defined)(this._globalNamespace)}get nameStoreView(){return(0,s.defined)(this._nameStoreView)}descriptionForType(e){return C(this.typeGraph.attributeStore.tryGet(p.descriptionTypeAttributeKind,e))}descriptionForClassProperty(e,t){let n=this.typeGraph.attributeStore.tryGet(p.propertyDescriptionsTypeAttributeKind,e);if(n!==void 0)return C(n.get(t))}setUpNaming(){this._nameStoreView=new d.TypeAttributeStoreView(this.typeGraph.attributeStore,w),this._propertyNamesStoreView=new d.TypeAttributeStoreView(this.typeGraph.attributeStore,T),this._memberNamesStoreView=new d.TypeAttributeStoreView(this.typeGraph.attributeStore,E),this._caseNamesStoreView=new d.TypeAttributeStoreView(this.typeGraph.attributeStore,D),this._namesForTransformations=new Map,this._namedTypeNamer=this.makeNamedTypeNamer(),this._unionMemberNamer=this.makeUnionMemberNamer(),this._enumCaseNamer=this.makeEnumCaseNamer(),this._globalForbiddenNamespace=(0,i.keywordNamespace)(`forbidden`,this.forbiddenNamesForGlobalNamespace()),this._otherForbiddenNamespaces=new Map,this._globalNamespace=new i.Namespace(`global`,void 0,[this._globalForbiddenNamespace],[]);let{objects:e,enums:n,unions:r}=this.typeGraph.allNamedTypesSeparated(),a=(0,t.setFilter)(r,e=>this.unionNeedsName(e));for(let[e,t]of this.topLevels)this.nameStoreView.setForTopLevel(e,this.addNameForTopLevel(t,e));for(let t of e){let e=this.addNameForNamedType(t);this.addPropertyNames(t,e)}for(let e of n){let t=this.addNameForNamedType(e);this.addEnumCaseNames(e,t)}for(let e of a){let t=this.addNameForNamedType(e);this.addUnionMemberNames(e,t)}for(let e of this.typeGraph.allTypesUnordered())this.addNameForTransformation(e);return(0,t.setUnion)([this._globalForbiddenNamespace,this._globalNamespace],this._otherForbiddenNamespaces.values())}addDependenciesForNamedType(e,t){let n=this.makeNamedTypeDependencyNames(e,t);for(let e of n)this.globalNamespace.add(e)}makeNameForTopLevel(t,n,r){return new i.SimpleName([n],(0,s.defined)(this._namedTypeNamer),e.topLevelNameOrder)}addNameForTopLevel(e,t){let n=this.namedTypeToNameForTopLevel(e),r=this.makeNameForTopLevel(e,t,n);this.globalNamespace.add(r);let i=this.makeTopLevelDependencyNames(e,r);for(let e of i)this.globalNamespace.add(e);return n!==void 0&&(this.addDependenciesForNamedType(n,r),this.nameStoreView.set(n,r)),r}makeNameForType(e,t,n,r){let a=e.getNames(),o=a.areInferred?r:n;return new i.SimpleName(a.proposedNames,t,o)}makeNameForNamedType(t){return this.makeNameForType(t,(0,s.defined)(this._namedTypeNamer),_,e.inferredNameOrder)}addNameForNamedType(e){let t=this.nameStoreView.tryGet(e);if(t!==void 0)return t;let n=this.globalNamespace.add(this.makeNameForNamedType(e));return this.addDependenciesForNamedType(e,n),this.nameStoreView.set(e,n),n}get typesWithNamedTransformations(){return(0,s.defined)(this._namesForTransformations)}nameForTransformation(e){if((0,h.transformationForType)(e)===void 0)return;let t=(0,s.defined)(this._namesForTransformations).get(e);return t===void 0?(0,s.panic)(`No name for transformation`):t}addNameForTransformation(e){let t=(0,h.transformationForType)(e);if(t===void 0)return;(0,s.assert)((0,s.defined)(this._namesForTransformations).get(e)===void 0,`Tried to give two names to the same transformation`);let n=this.makeNameForTransformation(t,this.nameStoreView.tryGet(t.targetType));n!==void 0&&(this.globalNamespace.add(n),(0,s.defined)(this._namesForTransformations).set(e,n))}processForbiddenWordsInfo(e,t){let n=[],r=[];for(let t of e.names)typeof t==`string`?r.push(t):n.push(t);let a=(0,s.defined)(this._otherForbiddenNamespaces).get(t);r.length>0&&a===void 0&&(a=(0,i.keywordNamespace)(t,r),this._otherForbiddenNamespaces=(0,s.defined)(this._otherForbiddenNamespaces).set(t,a));let o=new Set;return e.includeGlobalForbidden&&(o=o.add((0,s.defined)(this._globalForbiddenNamespace))),a!==void 0&&(o=o.add(a)),{forbiddenNames:new Set(n),forbiddenNamespaces:o}}makeNameForProperty(e,t,n,r,a){let o=this.namerForObjectProperty(e,n);if(o===null)return;let s=`${e.getCombinedName()}_${r}`,c=a===void 0?v:y,l=a===void 0?[r,s]:[a];return new i.SimpleName(l,o,c)}makePropertyDependencyNames(e,t,n,r,i){return[]}addPropertyNames(e,n){let{forbiddenNames:r,forbiddenNamespaces:a}=this.processForbiddenWordsInfo(this.forbiddenForObjectProperties(e,n),`forbidden-for-properties`),o,c=(0,m.objectPropertyNames)(e,this.targetLanguage.name),l=(0,t.mapFilterMap)(e.getSortedProperties(),(t,l)=>{let[u,d]=(0,m.getAccessorName)(c,l),f;if(f=d?new i.FixedName((0,s.defined)(u)):this.makeNameForProperty(e,n,t,l,u),f!==void 0){o===void 0&&(o=new i.Namespace(e.getCombinedName(),this.globalNamespace,a,r)),o.add(f);for(let r of this.makePropertyDependencyNames(e,n,t,l,f))o.add(r);return f}});(0,s.defined)(this._propertyNamesStoreView).set(e,l)}makeNameForUnionMember(e,t,n){let[r,a]=(0,m.unionMemberName)(e,n,this.targetLanguage.name);return a?new i.FixedName((0,s.defined)(r)):new i.DependencyName((0,s.nonNull)(this._unionMemberNamer),S,i=>r===void 0?this.proposeUnionMemberName(e,t,n,i):r)}addUnionMemberNames(e,t){if(this._unionMemberNamer===null)return;let{forbiddenNames:n,forbiddenNamespaces:r}=this.processForbiddenWordsInfo(this.forbiddenForUnionMembers(e,t),`forbidden-for-union-members`),a;a=this.unionMembersInGlobalNamespace?this.globalNamespace:new i.Namespace(e.getCombinedName(),this.globalNamespace,r,n);let o=new Map;for(let n of e.members){let r=this.makeNameForUnionMember(e,t,(0,h.followTargetType)(n));o.set(n,a.add(r))}(0,s.defined)(this._memberNamesStoreView).set(e,o)}makeNameForEnumCase(e,t,n,r){let a=`${e.getCombinedName()}_${n}`,o=r===void 0?b:x,c=r===void 0?[n,a]:[r];return new i.SimpleName(c,(0,s.nonNull)(this._enumCaseNamer),o)}addEnumCaseNames(e,t){if(this._enumCaseNamer===null)return;let{forbiddenNames:n,forbiddenNamespaces:r}=this.processForbiddenWordsInfo(this.forbiddenForEnumCases(e,t),`forbidden-for-enum-cases`),a;a=this.enumCasesInGlobalNamespace?this.globalNamespace:new i.Namespace(e.getCombinedName(),this.globalNamespace,r,n);let o=new Map,c=(0,m.enumCaseNames)(e,this.targetLanguage.name);for(let n of e.cases){let[r,l]=(0,m.getAccessorName)(c,n),u;u=l?new i.FixedName((0,s.defined)(r)):this.makeNameForEnumCase(e,t,n,r),o.set(n,a.add(u))}(0,s.defined)(this._caseNamesStoreView).set(e,o)}childrenOfType(e){let r=this.names;if(e instanceof n.ClassType){let n=(0,s.defined)(this._propertyNamesStoreView).get(e),i=(0,t.mapFilterMap)(e.getProperties(),(e,t)=>{if(n.get(t)!==void 0)return e.type}),a=(0,t.mapSortBy)(i,(e,t)=>(0,s.defined)(r.get((0,s.defined)(n.get(t)))));return new Set(a.values())}return e.getChildren()}get namedUnions(){return(0,s.defined)(this._namedUnions)}get haveNamedUnions(){return this.namedUnions.size>0}get haveNamedTypes(){return(0,s.defined)(this._namedTypes).length>0}get haveUnions(){return(0,s.defined)(this._haveUnions)}get haveMaps(){return(0,s.defined)(this._haveMaps)}get haveOptionalProperties(){return(0,s.defined)(this._haveOptionalProperties)}get enums(){return(0,s.defined)(this._namedEnums)}get haveEnums(){return this.enums.size>0}proposedUnionMemberNameForTypeKind(e){return null}proposeUnionMemberName(e,t,n,i){let a=this.proposedUnionMemberNameForTypeKind(n.kind);if(a!==null)return a;let o=e=>(0,r.matchTypeExhaustive)(e,e=>(0,s.panic)(`none type should have been replaced`),e=>`anything`,e=>`null`,e=>`bool`,e=>`integer`,e=>`double`,e=>`string`,e=>o(e.items)+`_array`,e=>i(this.nameForNamedType(e)),e=>o(e.values)+`_map`,e=>((0,s.assert)(this.targetLanguage.supportsFullObjectType,"Object type should have been replaced in `replaceObjectType`"),i(this.nameForNamedType(e))),e=>`enum`,e=>`union`,e=>e.kind.replace(`-`,`_`));return o(n)}nameForNamedType(e){return this.nameStoreView.get(e)}isForwardDeclaredType(e){return(0,s.defined)(this._declarationIR).forwardedTypes.has(e)}isImplicitCycleBreaker(e){return(0,s.panic)(`A renderer that invokes isCycleBreakerType must implement isImplicitCycleBreaker`)}canBreakCycles(e){return!0}isCycleBreakerType(e){return this._cycleBreakerTypes===void 0&&(this._cycleBreakerTypes=(0,u.cycleBreakerTypesForGraph)(this.typeGraph,e=>this.isImplicitCycleBreaker(e),e=>this.canBreakCycles(e))),this._cycleBreakerTypes.has(e)}forEachTopLevel(e,n,r){let i;return i=r===void 0?this.topLevels:(0,t.mapFilter)(this.topLevels,r),this.forEachWithBlankLines(i,e,(e,t,r)=>n(e,this.nameStoreView.getForTopLevel(t),r))}forEachDeclaration(e,n){this.forEachWithBlankLines((0,t.iterableEnumerate)((0,s.defined)(this._declarationIR).declarations),e,(e,t,r)=>n(e,r))}setAlphabetizeProperties(e){this._alphabetizeProperties=e}getAlphabetizeProperties(){return this._alphabetizeProperties}propertyCount(e){return(0,s.defined)(this._propertyNamesStoreView).get(e).size}sortClassProperties(e,n){return this._alphabetizeProperties?(0,t.mapSortBy)(e,(e,t)=>{let r=(0,s.defined)(n.get(t));return(0,s.defined)(this.names.get(r))}):e}forEachClassProperty(e,t,n){let r=(0,s.defined)(this._propertyNamesStoreView).get(e),i=this.sortClassProperties(e.getProperties(),r);this.forEachWithBlankLines(i,t,(e,t,i)=>{n((0,s.defined)(r.get(t)),t,e,i)})}nameForUnionMember(e,t){return(0,s.defined)((0,s.defined)(this._memberNamesStoreView).get(e).get(t))}nameForEnumCase(e,t){let n=(0,s.defined)(this._caseNamesStoreView).get(e);return(0,s.defined)(n.get(t))}forEachUnionMember(e,n,r,i,a){let o=n===null?e.members:n;i===null&&(i=e=>(0,s.defined)(this.names.get(e)));let c=(0,t.mapFilter)((0,s.defined)(this._memberNamesStoreView).get(e),(e,t)=>o.has(t)),l=(0,t.mapSortBy)(c,i);this.forEachWithBlankLines(l,r,a)}forEachEnumCase(e,n,r){let i=(0,s.defined)(this._caseNamesStoreView).get(e),a=(0,t.mapSortBy)(i,e=>(0,s.defined)(this.names.get(e)));this.forEachWithBlankLines(a,n,r)}forEachTransformation(e,t){this.forEachWithBlankLines((0,s.defined)(this._namesForTransformations),e,t)}forEachSpecificNamedType(e,t,n){this.forEachWithBlankLines(t,e,(e,t,r)=>n(e,this.nameForNamedType(e),r))}forEachObject(e,t){this.forEachSpecificNamedType(e,(0,s.defined)(this._namedObjects).entries(),t)}forEachEnum(e,t){this.forEachSpecificNamedType(e,this.enums.entries(),t)}forEachUnion(e,t){this.forEachSpecificNamedType(e,this.namedUnions.entries(),t)}forEachUniqueUnion(e,t,n){let r=new Map;for(let e of this.namedUnions){let n=t(e);r.has(n)||r.set(n,e)}this.forEachWithBlankLines(r,e,n)}forEachNamedType(e,t,r,i){this.forEachWithBlankLines((0,s.defined)(this._namedTypes).entries(),e,(e,a,o)=>{let c=this.nameForNamedType(e);if(e instanceof n.ObjectType)t(e,c,o);else if(e instanceof n.EnumType)r(e,c,o);else if(e instanceof n.UnionType)i(e,c,o);else return(0,s.panic)(`Named type that's neither a class nor union`)})}sourcelikeToString(e){return(0,l.serializeRenderResult)((0,l.sourcelikeToSource)(e),this.names,``).lines.join(`
125
+ `)}get commentLineStart(){return`// `}emitCommentLines(e,t,n,r,i){t===void 0&&(t=this.commentLineStart),i===void 0&&(i=t),n!==void 0&&this.emitLine(n);let a=!0;for(let n of e){let e=a?i:t;this.sourcelikeToString(n)===``&&(e=(0,c.trimEnd)(e)),this.emitLine(e,n),a=!1}r!==void 0&&this.emitLine(r)}emitDescription(e){e!==void 0&&this.emitDescriptionBlock(e)}emitDescriptionBlock(e){this.emitCommentLines(e)}emitPropertyTable(e,t){let n=[],r=()=>{n.length!==0&&(this.emitTable(n),n=[])};this.forEachClassProperty(e,`none`,(i,a,o)=>{let s=this.descriptionForClassProperty(e,a);s!==void 0&&(r(),this.emitDescription(s)),n.push(t(i,a,o))}),r()}processGraph(){this._declarationIR=(0,u.declarationsForGraph)(this.typeGraph,this.needsTypeDeclarationBeforeUse?e=>this.canBeForwardDeclared(e):void 0,e=>this.childrenOfType(e),e=>e instanceof n.UnionType?this.unionNeedsName(e):(0,r.isNamedType)(e));let e=this.typeGraph.allTypesUnordered();this._haveUnions=(0,t.iterableSome)(e,e=>e instanceof n.UnionType),this._haveMaps=(0,t.iterableSome)(e,e=>e instanceof n.MapType);let i=(0,t.setFilter)(e,e=>e instanceof n.ClassType);this._haveOptionalProperties=(0,t.iterableSome)(i,e=>(0,t.mapSome)(e.getProperties(),e=>e.isOptional)),this._namedTypes=this._declarationIR.declarations.filter(e=>e.kind===`define`).map(e=>e.type);let{objects:a,enums:o,unions:s}=(0,r.separateNamedTypes)(this._namedTypes);this._namedObjects=new Set(a),this._namedEnums=new Set(o),this._namedUnions=new Set(s)}emitSource(e){this.processGraph(),this.emitSourceStructure(e)}forEachType(e){let t=new Set,n=new Set,r=Array.from(this.typeGraph.topLevels.values());function i(i){if(!t.has(i)){for(let e of i.getChildren())r.push(e);t.add(i),n.add(e(i))}}for(;;){let e=r.pop();if(e===void 0)break;i(e)}return n}}})),za=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.DefaultDateTimeRecognizer=void 0;var t=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,n=[0,31,29,31,30,31,30,31,31,30,31,30,31],r=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i,i=/t|\s/i;e.DefaultDateTimeRecognizer=class{isDate(e){let r=e.match(t);if(r===null)return!1;let i=+r[2],a=+r[3];return i>=1&&i<=12&&a>=1&&a<=n[i]}isTime(e){let t=e.match(r);if(t===null)return!1;let n=+t[1],i=+t[2],a=+t[3];return n<=23&&i<=59&&a<=59}isDateTime(e){let t=e.split(i);return t.length===2&&this.isDate(t[0])&&this.isTime(t[1])}}})),Ba=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TargetLanguage=void 0;var t=a(),n=Ea(),r=Q(),i=za();e.TargetLanguage=class{constructor(e,t,n){this.displayName=e,this.names=t,this.extension=n}get optionDefinitions(){return this.getOptions().map(e=>e.definition)}get cliOptionDefinitions(){let e=[],t=[];for(let{cliDefinitions:n}of this.getOptions())e=e.concat(n.actual),t=t.concat(n.display);return{actual:e,display:t}}get name(){return(0,r.defined)(this.names[0])}renderGraphAndSerialize(e,i,a,o,s,c){c===void 0&&(c=this.defaultIndentation);let l={typeGraph:e,leadingComments:o},u=this.makeRenderer(l,s);u.setAlphabetizeProperties!==void 0&&u.setAlphabetizeProperties(a);let d=u.render(i);return(0,t.mapMap)(d.sources,e=>(0,n.serializeRenderResult)(e,d.names,(0,r.defined)(c)))}get defaultIndentation(){return` `}get stringTypeMapping(){return new Map}get supportsOptionalClassProperties(){return!1}get supportsUnionsWithBothNumberTypes(){return!1}get supportsFullObjectType(){return!1}needsTransformerForType(e){return!1}get dateTimeRecognizer(){return new i.DefaultDateTimeRecognizer}}})),Va=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};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;var n=a(),r=wa(),i=ha(),o=Ea(),s=ua(),c=Q(),l=Ta(),u=Ra(),d=Ba(),f=ra(),p=Da(),m=Ia(),h=Na(),g=t(la()),_;(function(e){e[e.Newtonsoft=0]=`Newtonsoft`,e[e.SystemTextJson=1]=`SystemTextJson`})(_=e.Framework||={});var v;(function(e){e[e.None=0]=`None`,e[e.Public=1]=`Public`,e[e.Internal=2]=`Internal`})(v=e.AccessModifier||={});function y(e){return e}function b(e){if(e instanceof r.UnionType){let t=(0,i.nullableFromUnion)(e);return t===null?`automatic`:b(t)===`manual`?`nullable`:`none`}if(e instanceof r.ArrayType){let t=b(e.items);return t===`manual`||t===`nullable`?`automatic`:`none`}return e instanceof r.EnumType?`automatic`:e.kind===`double`?(0,h.minMaxValueForType)(e)===void 0?`none`:`manual`:e.kind===`integer-string`||e.kind===`bool-string`?`manual`:e.kind===`string`?(0,h.minMaxLengthForType)(e)===void 0?`none`:`manual`:`none`}function x(e){let t=e.targetType;return t instanceof r.EnumType?!0:t instanceof r.UnionType?(0,i.nullableFromUnion)(t)===null:!1}function S(e){switch(e.kind){case`date-time`:return`DateTimeOffset`;case`uuid`:return`Guid`;case`uri`:return`Uri`;default:return(0,c.panic)(`Transformed string type ${e.kind} not supported`)}}e.cSharpOptions={framework:new f.EnumOption(`framework`,`Serialization framework`,[[`NewtonSoft`,_.Newtonsoft],[`SystemTextJson`,_.SystemTextJson]],`NewtonSoft`),useList:new f.EnumOption(`array-type`,`Use T[] or List<T>`,[[`array`,!1],[`list`,!0]]),dense:new f.EnumOption(`density`,`Property density`,[[`normal`,!1],[`dense`,!0]],`normal`,`secondary`),namespace:new f.StringOption(`namespace`,`Generated namespace`,`NAME`,`QuickType`),version:new f.EnumOption(`csharp-version`,`C# version`,[[`5`,5],[`6`,6]],`6`,`secondary`),virtual:new f.BooleanOption(`virtual`,`Generate virtual properties`,!1),typeForAny:new f.EnumOption(`any-type`,`Type to use for "any"`,[[`object`,`object`],[`dynamic`,`dynamic`]],`object`,`secondary`),useDecimal:new f.EnumOption(`number-type`,`Type to use for numbers`,[[`double`,!1],[`decimal`,!0]],`double`,`secondary`),features:new f.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 f.EnumOption(`base-class`,`Base class`,[[`EntityData`,`EntityData`],[`Object`,void 0]],`Object`,`secondary`),checkRequired:new f.BooleanOption(`check-required`,`Fail if required properties are missing`,!1)},e.CSharpTargetLanguage=class extends d.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(){let e=new Map;return e.set(`date`,`date-time`),e.set(`time`,`date-time`),e.set(`date-time`,`date-time`),e.set(`uuid`,`uuid`),e.set(`uri`,`uri`),e.set(`integer-string`,`integer-string`),e.set(`bool-string`,`bool-string`),e}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}needsTransformerForType(e){let t=b(e);return t!==`none`&&t!==`nullable`}makeRenderer(t,n){let r=(0,f.getOptionValues)(e.cSharpOptions,n);switch(r.framework){case _.Newtonsoft:return new N(this,t,(0,f.getOptionValues)(e.newtonsoftCSharpOptions,n));case _.SystemTextJson:return new P(this,t,(0,f.getOptionValues)(e.systemTextJsonCSharpOptions,n));default:return(0,c.assertNever)(r.framework)}}};var C=(0,l.funPrefixNamer)(`namer`,A),w=`J`,T=`R`,E=`N`;function D(e){return g.default.isAlphabetic(e)?!0:e===95}function O(e){let t=g.default.getCategory(e);return[`Nd`,`Pc`,`Mn`,`Mc`].indexOf(t)>=0?!0:D(e)}var k=(0,s.utf16LegalizeCharacters)(O);function A(e){let t=(0,s.splitIntoWords)(e);return(0,s.combineWords)(t,k,s.firstUpperWordStyle,s.firstUpperWordStyle,s.firstUpperWordStyle,s.firstUpperWordStyle,``,D)}function j(e){return e instanceof r.UnionType?(0,i.nullableFromUnion)(e)===null:[`integer`,`double`,`bool`,`enum`,`date-time`,`uuid`].indexOf(e.kind)>=0}var M=class extends u.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._csOptions=n}forbiddenNamesForGlobalNamespace(){return[`QuickType`,`Type`,`System`,`Console`,`Exception`,`DateTimeOffset`,`Guid`,`Uri`]}forbiddenForObjectProperties(e,t){return{names:[t,`ToString`,`GetHashCode`,`Finalize`,`Equals`,`GetType`,`MemberwiseClone`,`ReferenceEquals`],includeGlobalForbidden:!1}}forbiddenForUnionMembers(e,t){return{names:[t],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return C}namerForObjectProperty(){return C}makeUnionMemberNamer(){return C}makeEnumCaseNamer(){return C}unionNeedsName(e){return(0,i.nullableFromUnion)(e)===null}namedTypeToNameForTopLevel(e){return(0,i.directlyReachableSingleNamedType)(e)}emitBlock(e,t=!1){this.emitLine(`{`),this.indent(e),this.emitLine(`}`,t?`;`:``)}get doubleType(){return this._csOptions.useDecimal?`decimal`:`double`}csType(e,t=m.followTargetType,n=!1){let r=t(e);return(0,i.matchType)(r,e=>(0,o.maybeAnnotated)(n,p.anyTypeIssueAnnotation,this._csOptions.typeForAny),e=>(0,o.maybeAnnotated)(n,p.nullTypeIssueAnnotation,this._csOptions.typeForAny),e=>`bool`,e=>`long`,e=>this.doubleType,e=>`string`,e=>{let r=this.csType(e.items,t,n);return this._csOptions.useList?[`List<`,r,`>`]:[r,`[]`]},e=>this.nameForNamedType(e),e=>[`Dictionary<string, `,this.csType(e.values,t,n),`>`],e=>this.nameForNamedType(e),e=>{let t=(0,i.nullableFromUnion)(e);return t===null?this.nameForNamedType(e):this.nullableCSType(t,y)},e=>S(e))}nullableCSType(e,t=m.followTargetType,n=!1){e=(0,m.followTargetType)(e);let r=this.csType(e,t,n);return j(e)?[r,`?`]:r}baseclassForType(e){}emitType(e,t,n,r,i,a){switch(t){case v.Public:n=[`public `,n];break;case v.Internal:n=[`internal `,n];break;default:break}this.emitDescription(e),i===void 0?this.emitLine(n,` `,r):this.emitLine(n,` `,r,` : `,i),this.emitBlock(a)}attributesForProperty(e,t,n,r){}propertyDefinition(e,t,n,r){let i=e.type,a=e.isOptional?this.nullableCSType(i,m.followTargetType,!0):this.csType(i,m.followTargetType,!0),o=[`public `];return this._csOptions.virtual&&o.push(`virtual `),[...o,a,` `,t,` { get; set; }`]}emitDescriptionBlock(e){let t=`/// <summary>`;this._csOptions.dense?this.emitLine(t,e.join(`; `),`</summary>`):this.emitCommentLines(e,`/// `,t,`/// </summary>`)}blankLinesBetweenAttributes(){return!1}emitClassDefinition(e,t){this.emitType(this.descriptionForType(e),v.Public,`partial class`,t,this.baseclassForType(e),()=>{if(e.getProperties().size===0)return;let t=this.blankLinesBetweenAttributes()?`interposing`:`none`,n=[],r=!0,i;this.forEachClassProperty(e,t,(t,a,o)=>{let s=this.attributesForProperty(o,t,e,a),c=this.descriptionForClassProperty(e,a),l=this.propertyDefinition(o,t,e,a);if(s===void 0)(!r&&c!==void 0||i!==void 0)&&this.ensureBlankLine(),this.emitDescription(c),this.emitLine(l);else if(this._csOptions.dense&&s.length>0){let e=c===void 0?``:` // ${c.join(`; `)}`;n.push([s,` `,l,e])}else{this.emitDescription(c);for(let e of s)this.emitLine(e);this.emitLine(l)}r=!1,i=c}),n.length>0&&this.emitTable(n)})}emitUnionDefinition(e,t){let r=(0,i.removeNullFromUnion)(e,!0)[1];this.emitType(this.descriptionForType(e),v.Public,`partial struct`,t,this.baseclassForType(e),()=>{this.forEachUnionMember(e,r,`none`,null,(e,t)=>{let n=this.nullableCSType(t);this.emitLine(`public `,n,` `,e,`;`)}),this.ensureBlankLine();let i=Array.from(r).map(t=>[this.nameForUnionMember(e,t),` == null`]);this.ensureBlankLine(),this.forEachUnionMember(e,r,`none`,null,(e,n)=>{let r=this.csType(n);this.emitExpressionMember([`public static implicit operator `,t,`(`,r,` `,e,`)`],[`new `,t,` { `,e,` = `,e,` }`])}),e.findMember(`null`)!==void 0&&this.emitExpressionMember(`public bool IsNull`,(0,n.arrayIntercalate)(` && `,i),!0)})}emitEnumDefinition(e,t){let n=[];this.forEachEnumCase(e,`none`,e=>{n.length>0&&n.push(`, `),n.push(e)}),this.emitDescription(this.descriptionForType(e)),this.emitLine(`public enum `,t,` { `,n,` };`)}emitExpressionMember(e,t,n=!1){this._csOptions.version===5?(this.emitLine(e),this.emitBlock(()=>{let e=[`return `,t,`;`];n?(this.emitLine(`get`),this.emitBlock(()=>this.emitLine(e))):this.emitLine(e)})):this.emitLine(e,` => `,t,`;`)}emitTypeSwitch(e,t,n,r,i){(0,c.assert)(!r||n,`Can only have return with block`);for(let a of e)this.emitLine(`if (`,t(a),`)`),n?this.emitBlock(()=>{i(a),r&&this.emitLine(`return;`)}):this.indent(()=>i(a))}emitUsing(e){this.emitLine(`using `,e,`;`)}emitUsings(){for(let e of[`System`,`System.Collections.Generic`])this.emitUsing(e)}emitRequiredHelpers(){}emitTypesAndSupport(){this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t)),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitEnumDefinition(e,t)),this.forEachUnion(`leading-and-interposing`,(e,t)=>this.emitUnionDefinition(e,t)),this.emitRequiredHelpers()}emitDefaultLeadingComments(){}emitDefaultFollowingComments(){}needNamespace(){return!0}emitSourceStructure(){this.leadingComments===void 0?this.emitDefaultLeadingComments():this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.needNamespace()?(this.emitLine(`namespace `,this._csOptions.namespace),this.emitBlock(()=>{this.emitUsings(),this.emitTypesAndSupport()})):(this.emitUsings(),this.emitTypesAndSupport()),this.emitDefaultFollowingComments()}};e.CSharpRenderer=M,e.newtonsoftCSharpOptions=Object.assign({},e.cSharpOptions,{});var N=class extends M{constructor(e,t,n){super(e,t,n),this._options=n,this._enumExtensionsNames=new Map,this._needHelpers=n.features.helpers,this._needAttributes=n.features.attributes,this._needNamespaces=n.features.namespaces}forbiddenNamesForGlobalNamespace(){let e=[`Converter`,`JsonConverter`,`JsonSerializer`,`JsonWriter`,`JsonToken`,`Serialize`,`Newtonsoft`,`MetadataPropertyHandling`,`DateParseHandling`,`FromJson`,`Required`];return this._options.dense&&e.push(`J`,`R`,`N`),this._options.baseclass!==void 0&&e.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(e)}forbiddenForObjectProperties(e,t){let n=super.forbiddenForObjectProperties(e,t);return n.names=n.names.concat([`ToJson`,`FromJson`,`Required`]),n}makeNameForTransformation(e,t){if(t===void 0){let t=e.transformer;return t instanceof m.DecodingTransformer&&t.consumer!==void 0&&(t=t.consumer),new l.SimpleName([`${t.kind}_converter`],C,u.inferredNameOrder+30)}return new l.DependencyName(C,t.order+30,e=>`${e(t)}_converter`)}makeNamedTypeDependencyNames(e,t){if(!(e instanceof r.EnumType))return[];let n=new l.DependencyName(C,t.order+30,e=>`${e(t)}_extensions`);return this._enumExtensionsNames.set(t,n),[n]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(let e of[`System.Globalization`,`Newtonsoft.Json`,`Newtonsoft.Json.Converters`])this.emitUsing(e);this._options.dense&&(this.emitUsing([w,` = Newtonsoft.Json.JsonPropertyAttribute`]),this.emitUsing([T,` = Newtonsoft.Json.Required`]),this.emitUsing([E,` = Newtonsoft.Json.NullValueHandling`])),this._options.baseclass===`EntityData`&&this.emitUsing(`Microsoft.Azure.Mobile.Server`)}}baseclassForType(e){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`,(e,t)=>{let n;n=e instanceof r.EnumType?[`JsonConvert.DeserializeObject<`,t,`>(jsonString)`]:[t,`.FromJson(jsonString)`],this.emitLine(`// var `,(0,o.modifySource)(s.camelCase,t),` = `,n,`;`)}))}converterForType(e){let t=(0,m.transformationForType)(e);if(t===void 0&&e instanceof r.UnionType){let n=(0,i.nullableFromUnion)(e);n!==null&&(e=n,t=(0,m.transformationForType)(e))}if(t!==void 0&&!x(t))return(0,c.defined)(this.nameForTransformation(e))}attributesForProperty(e,t,n,r){if(!this._needAttributes)return;let i=[],a=this._options.dense?w:`JsonProperty`,o=(0,s.utf16StringEscape)(r),c=(0,m.followTargetType)(e.type).isNullable,l=e.isOptional,u=this._options.dense?`R`:`Required`,d=this._options.dense?`N`:`NullValueHandling`,f=l&&!c?[`, NullValueHandling = `,d,`.Ignore`]:[],p;p=!this._options.checkRequired||l&&c?[f]:l&&!c?[`, Required = `,u,`.DisallowNull`,f]:!l&&c?[`, Required = `,u,`.AllowNull`]:[`, Required = `,u,`.Always`,f],i.push([`[`,a,`("`,o,`"`,p,`)]`]);let h=this.converterForType(e.type);return h!==void 0&&i.push([`[JsonConverter(typeof(`,h,`))]`]),i}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(e){return e.kind===`any`||e.kind===`none`?`object`:this.csType(e)}emitFromJsonForTopLevel(e,t){if(e instanceof r.EnumType)return;let n,i,a=this.namedTypeToNameForTopLevel(e);a===void 0?(n=``,i=`class`):(n=`partial `,i=a instanceof r.ClassType?`class`:`struct`);let o=this.topLevelResultType(e);this.emitType(void 0,v.Public,[n,i],t,this.baseclassForType(e),()=>{this.emitExpressionMember([`public static `,o,` FromJson(string json)`],[`JsonConvert.DeserializeObject<`,o,`>(json, `,this._options.namespace,`.Converter.Settings)`])})}emitDecoderSwitch(e){this.emitLine(`switch (reader.TokenType)`),this.emitBlock(e)}emitTokenCase(e){this.emitLine(`case JsonToken.`,e,`:`)}emitThrow(e){this.emitLine(`throw new Exception(`,e,`);`)}deserializeTypeCode(e){return[`serializer.Deserialize<`,e,`>(reader)`]}serializeValueCode(e){return[`serializer.Serialize(writer, `,e,`)`]}emitSerializeClass(){this.emitType(void 0,v.Public,`static class`,`Serialize`,void 0,()=>{let e=new Set;this.forEachTopLevel(`none`,t=>{e.has(t)||(e.add(t),this.emitExpressionMember([`public static string ToJson(this `,this.topLevelResultType(t),` self)`],[`JsonConvert.SerializeObject(self, `,this._options.namespace,`.Converter.Settings)`]))})})}emitCanConvert(e){this.emitExpressionMember(`public override bool CanConvert(Type t)`,e)}emitReadJson(e){this.emitLine(`public override object ReadJson(JsonReader reader, Type t, object existingValue, JsonSerializer serializer)`),this.emitBlock(e)}emitWriteJson(e,t){this.emitLine(`public override void WriteJson(JsonWriter writer, object `,e,`, JsonSerializer serializer)`),this.emitBlock(t)}converterObject(e){return[e,`.Singleton`]}emitConverterClass(){this.emitType(void 0,v.Internal,`static class`,[`Converter`],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(let[e,t]of this.typesWithNamedTransformations)x((0,c.defined)((0,m.transformationForType)(e)))&&this.emitLine(this.converterObject(t),`,`);this.emitLine(`new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AssumeUniversal }`)}),this.emitLine(`},`)},!0)})}emitDecoderTransformerCase(e,t,n,r,i){if(n!==void 0){for(let t of e)this.emitTokenCase(t);this.indent(()=>{this.emitDecodeTransformer(n,r,i,t)||this.emitLine(`break;`)})}}emitConsume(e,t,n,r){return t===void 0?(r(e),!0):this.emitTransformer(e,t,n,r)}emitDecodeTransformer(e,t,n,i=`value`){if(e instanceof m.DecodingTransformer){let r=e.sourceType,a=this.converterForType(t);if(a!==void 0){let e=this.csType(t);this.emitLine(`var converter = `,this.converterObject(a),`;`),this.emitLine(`var `,i,` = (`,e,`)converter.ReadJson(reader, typeof(`,e,`), null, serializer);`)}else if(r.kind!==`null`){let e=t.kind===`double`?t:r;this.emitLine(`var `,i,` = `,this.deserializeTypeCode(this.csType(e)),`;`)}return this.emitConsume(i,e.consumer,t,n)}else if(e instanceof m.ArrayDecodingTransformer){if(!(t instanceof r.ArrayType))return(0,c.panic)(`Array decoding must produce an array type`);this.emitLine(`reader.Read();`),this.emitLine(`var `,i,` = new List<`,this.csType(t.items),`>();`),this.emitLine(`while (reader.TokenType != JsonToken.EndArray)`),this.emitBlock(()=>{this.emitDecodeTransformer(e.itemTransformer,e.itemTargetType,e=>this.emitLine(i,`.Add(`,e,`);`),`arrayItem`),this.emitLine(`reader.Read();`)});let a=i;return this._options.useList||(a=[a,`.ToArray()`]),n(a),!0}else if(e instanceof m.DecodingChoiceTransformer)return this.emitDecoderSwitch(()=>{let r=e.nullTransformer;r!==void 0&&(this.emitTokenCase(`Null`),this.indent(()=>{this.emitDecodeTransformer(r,t,n,`null`)||this.emitLine(`break`)})),this.emitDecoderTransformerCase([`Integer`],`integerValue`,e.integerTransformer,t,n),this.emitDecoderTransformerCase(e.integerTransformer===void 0?[`Integer`,`Float`]:[`Float`],`doubleValue`,e.doubleTransformer,t,n),this.emitDecoderTransformerCase([`Boolean`],`boolValue`,e.boolTransformer,t,n),this.emitDecoderTransformerCase([`String`,`Date`],`stringValue`,e.stringTransformer,t,n),this.emitDecoderTransformerCase([`StartObject`],`objectValue`,e.objectTransformer,t,n),this.emitDecoderTransformerCase([`StartArray`],`arrayValue`,e.arrayTransformer,t,n)}),!1;else return(0,c.panic)(`Unknown transformer`)}stringCaseValue(e,t){return e.kind===`string`?[`"`,(0,s.utf16StringEscape)(t),`"`]:e instanceof r.EnumType?[this.nameForNamedType(e),`.`,this.nameForEnumCase(e,t)]:(0,c.panic)(`Type ${e.kind} does not have string cases`)}emitTransformer(e,t,a,o){function s(e){return e===void 0?a:(0,m.followTargetType)(e.sourceType)}if(t instanceof m.ChoiceTransformer){let n=t.transformers;if(n.length>1&&n.every(e=>e instanceof m.StringMatchTransformer))return this.emitLine(`switch (`,e,`)`),this.emitBlock(()=>{for(let t of n){let n=t,r=this.stringCaseValue((0,m.followTargetType)(n.sourceType),n.stringCase);this.emitLine(`case `,r,`:`),this.indent(()=>{this.emitTransformer(e,n.transformer,a,o)||this.emitLine(`break;`)})}}),!1;for(let t of n)this.emitTransformer(e,t,a,o)}else if(t instanceof m.UnionMemberMatchTransformer){let n=t.memberType,r=(0,i.nullableFromUnion)(t.sourceType),s,c;r===null?n.kind===`null`?(s=[e,`.IsNull`],c=`null`):(c=[e,`.`,this.nameForUnionMember(t.sourceType,n)],s=[c,` != null`]):n.kind===`null`?(s=[e,` == null`],c=`null`):(s=[e,` != null`],c=e),n.kind!==`null`&&j(n)&&(c=[c,`.Value`]),this.emitLine(`if (`,s,`)`),this.emitBlock(()=>this.emitTransformer(c,t.transformer,a,o))}else if(t instanceof m.StringMatchTransformer){let n=this.stringCaseValue((0,m.followTargetType)(t.sourceType),t.stringCase);this.emitLine(`if (`,e,` == `,n,`)`),this.emitBlock(()=>this.emitTransformer(e,t.transformer,a,o))}else if(t instanceof m.EncodingTransformer){let n=this.converterForType(t.sourceType);return n===void 0?this.emitLine(this.serializeValueCode(e),`;`):(this.emitLine(`var converter = `,this.converterObject(n),`;`),this.emitLine(`converter.WriteJson(writer, `,e,`, serializer);`)),o([]),!0}else if(t instanceof m.ArrayEncodingTransformer){this.emitLine(`writer.WriteStartArray();`);let n=`arrayItem`;return this.emitLine(`foreach (var `,n,` in `,e,`)`),this.emitBlock(()=>{this.emitTransformer(n,t.itemTransformer,t.itemTargetType,()=>{})}),this.emitLine(`writer.WriteEndArray();`),o([]),!0}else if(t instanceof m.ParseStringTransformer){let n=t.consumer===void 0?a:t.consumer.sourceType;switch(n.kind){case`date-time`:this.emitLine(`DateTimeOffset dt;`),this.emitLine(`if (DateTimeOffset.TryParse(`,e,`, out dt))`),this.emitBlock(()=>this.emitConsume(`dt`,t.consumer,a,o));break;case`uuid`:this.emitLine(`Guid guid;`),this.emitLine(`if (Guid.TryParse(`,e,`, out guid))`),this.emitBlock(()=>this.emitConsume(`guid`,t.consumer,a,o));break;case`uri`:this.emitLine(`try`),this.emitBlock(()=>{this.emitLine(`var uri = new Uri(`,e,`);`),this.emitConsume(`uri`,t.consumer,a,o)}),this.emitLine(`catch (UriFormatException) {}`);break;case`integer`:this.emitLine(`long l;`),this.emitLine(`if (Int64.TryParse(`,e,`, out l))`),this.emitBlock(()=>this.emitConsume(`l`,t.consumer,a,o));break;case`bool`:this.emitLine(`bool b;`),this.emitLine(`if (Boolean.TryParse(`,e,`, out b))`),this.emitBlock(()=>this.emitConsume(`b`,t.consumer,a,o));break;default:return(0,c.panic)(`Parsing string to ${n.kind} not supported`)}}else if(t instanceof m.StringifyTransformer)switch(t.sourceType.kind){case`date-time`:return this.emitConsume([e,`.ToString("o", System.Globalization.CultureInfo.InvariantCulture)`],t.consumer,a,o);case`uuid`:return this.emitConsume([e,`.ToString("D", System.Globalization.CultureInfo.InvariantCulture)`],t.consumer,a,o);case`integer`:case`uri`:return this.emitConsume([e,`.ToString()`],t.consumer,a,o);case`bool`:return this.emitLine(`var boolString = `,e,` ? "true" : "false";`),this.emitConsume(`boolString`,t.consumer,a,o);default:return(0,c.panic)(`Stringifying ${t.sourceType.kind} not supported`)}else if(t instanceof m.StringProducerTransformer){let e=this.stringCaseValue(s(t.consumer),t.result);return this.emitConsume(e,t.consumer,a,o)}else if(t instanceof m.MinMaxLengthCheckTransformer){let r=t.minLength,i=t.maxLength,s=[];return r!==void 0&&s.push([e,`.Length >= `,r.toString()]),i!==void 0&&s.push([e,`.Length <= `,i.toString()]),this.emitLine(`if (`,(0,n.arrayIntercalate)([` && `],s),`)`),this.emitBlock(()=>this.emitConsume(e,t.consumer,a,o)),!1}else if(t instanceof m.MinMaxValueTransformer){let r=t.minimum,i=t.maximum,s=[];return r!==void 0&&s.push([e,` >= `,r.toString()]),i!==void 0&&s.push([e,` <= `,i.toString()]),this.emitLine(`if (`,(0,n.arrayIntercalate)([` && `],s),`)`),this.emitBlock(()=>this.emitConsume(e,t.consumer,a,o)),!1}else if(t instanceof m.UnionInstantiationTransformer){if(!(a instanceof r.UnionType))return(0,c.panic)(`Union instantiation transformer must produce a union type`);if((0,i.nullableFromUnion)(a)!==null)o(e);else{let n=this.nameForNamedType(a),r;r=t.sourceType.kind===`null`?` `:[` `,this.nameForUnionMember(a,t.sourceType),` = `,e,` `],o([`new `,n,` {`,r,`}`])}return!0}else return(0,c.panic)(`Unknown transformer`);return!1}emitTransformation(e,t){let n=(0,c.defined)((0,m.transformationForType)(t)),i=n.reverse,a=n.targetType,o=n.transformer;this.emitType(void 0,v.Internal,`class`,e,`JsonConverter`,()=>{let t=this.csType(a),n=[`t == typeof(`,t,`)`],s=j(a);s&&(n=[n,` || t == typeof(`,t,`?)`]),this.emitCanConvert(n),this.ensureBlankLine(),this.emitReadJson(()=>{s&&!(a instanceof r.UnionType)&&this.emitLine(`if (reader.TokenType == JsonToken.Null) return null;`),this.emitDecodeTransformer(o,a,e=>this.emitLine(`return `,e,`;`))||this.emitThrow([`"Cannot unmarshal type `,t,`"`])}),this.ensureBlankLine(),this.emitWriteJson(`untypedValue`,()=>{s&&!(a instanceof r.UnionType)&&(this.emitLine(`if (untypedValue == null)`),this.emitBlock(()=>{this.emitLine(`serializer.Serialize(writer, null);`),this.emitLine(`return;`)})),this.emitLine(`var value = (`,t,`)untypedValue;`),this.emitTransformer(`value`,i.transformer,i.targetType,()=>this.emitLine(`return;`))||this.emitThrow([`"Cannot marshal type `,t,`"`])}),this.ensureBlankLine(),this.emitLine(`public static readonly `,e,` Singleton = new `,e,`();`)})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitFromJsonForTopLevel(e,t)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation(`leading-and-interposing`,(e,t)=>this.emitTransformation(e,t)))}needNamespace(){return this._needNamespaces}};e.NewtonsoftCSharpRenderer=N,e.systemTextJsonCSharpOptions=Object.assign({},e.cSharpOptions,{});var P=class extends M{constructor(e,t,n){super(e,t,n),this._options=n,this._enumExtensionsNames=new Map,this._needHelpers=n.features.helpers,this._needAttributes=n.features.attributes,this._needNamespaces=n.features.namespaces}forbiddenNamesForGlobalNamespace(){let e=[`Converter`,`JsonConverter`,`JsonSerializer`,`JsonWriter`,`JsonToken`,`Serialize`,`JsonSerializerOptions`,`FromJson`,`Required`];return this._options.dense&&e.push(`J`,`R`,`N`),this._options.baseclass!==void 0&&e.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(e)}forbiddenForObjectProperties(e,t){let n=super.forbiddenForObjectProperties(e,t);return n.names=n.names.concat([`ToJson`,`FromJson`,`Required`]),n}makeNameForTransformation(e,t){if(t===void 0){let t=e.transformer;return t instanceof m.DecodingTransformer&&t.consumer!==void 0&&(t=t.consumer),new l.SimpleName([`${t.kind}_converter`],C,u.inferredNameOrder+30)}return new l.DependencyName(C,t.order+30,e=>`${e(t)}_converter`)}makeNamedTypeDependencyNames(e,t){if(!(e instanceof r.EnumType))return[];let n=new l.DependencyName(C,t.order+30,e=>`${e(t)}_extensions`);return this._enumExtensionsNames.set(t,n),[n]}emitUsings(){if(!(!this._needAttributes&&!this._needHelpers)){super.emitUsings(),this.ensureBlankLine();for(let e of[`System.Text.Json`,`System.Text.Json.Serialization`,`System.Globalization`])this.emitUsing(e);this._options.dense&&(this.emitUsing([w,` = System.Text.Json.Serialization.JsonPropertyNameAttribute`]),this.emitUsing([E,` = System.Text.Json.Serialization.JsonIgnoreCondition`])),this._options.baseclass===`EntityData`&&this.emitUsing(`Microsoft.Azure.Mobile.Server`)}}baseclassForType(e){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`,(e,t)=>{let n;n=e instanceof r.EnumType?[`JsonSerializer.Deserialize<`,t,`>(jsonString)`]:[t,`.FromJson(jsonString)`],this.emitLine(`// var `,(0,o.modifySource)(s.camelCase,t),` = `,n,`;`)}),this.emitLine(`#nullable enable`),this.emitLine(`#pragma warning disable CS8618`),this.emitLine(`#pragma warning disable CS8601`),this.emitLine(`#pragma warning disable CS8603`))}converterForType(e){let t=(0,m.transformationForType)(e);if(t===void 0&&e instanceof r.UnionType){let n=(0,i.nullableFromUnion)(e);n!==null&&(e=n,t=(0,m.transformationForType)(e))}if(t!==void 0&&!x(t))return(0,c.defined)(this.nameForTransformation(e))}attributesForProperty(e,t,n,r){if(!this._needAttributes)return;let i=[],a=this._options.dense?w:`JsonPropertyName`,o=(0,s.utf16StringEscape)(r),c=(0,m.followTargetType)(e.type).isNullable;e.isOptional&&!c&&i.push([`[`,`JsonIgnore`,`(Condition = JsonIgnoreCondition.WhenWritingNull)]`]),i.push([`[`,a,`("`,o,`")]`]);let l=this.converterForType(e.type);return l!==void 0&&i.push([`[JsonConverter(typeof(`,l,`))]`]),i}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(e){return e.kind===`any`||e.kind===`none`?`object`:this.csType(e)}emitFromJsonForTopLevel(e,t){if(e instanceof r.EnumType)return;let n,i,a=this.namedTypeToNameForTopLevel(e);a===void 0?(n=``,i=`class`):(n=`partial `,i=a instanceof r.ClassType?`class`:`struct`);let o=this.topLevelResultType(e);this.emitType(void 0,v.Public,[n,i],t,this.baseclassForType(e),()=>{this.emitExpressionMember([`public static `,o,` FromJson(string json)`],[`JsonSerializer.Deserialize<`,o,`>(json, `,this._options.namespace,`.Converter.Settings)`])})}emitDecoderSwitch(e){this.emitLine(`switch (reader.TokenType)`),this.emitBlock(e)}emitTokenCase(e){this.emitLine(`case JsonTokenType.`,e,`:`)}emitThrow(e){this.emitLine(`throw new Exception(`,e,`);`)}deserializeTypeCode(e){switch(e){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<`,e,`>(ref reader, options)`]}}serializeValueCode(e){return e===`null`?[`writer.WriteNullValue()`]:[`JsonSerializer.Serialize(writer, `,e,`, options)`]}emitSerializeClass(){this.emitType(void 0,v.Public,`static class`,`Serialize`,void 0,()=>{let e=new Set;this.forEachTopLevel(`none`,t=>{e.has(t)||(e.add(t),this.emitExpressionMember([`public static string ToJson(this `,this.topLevelResultType(t),` self)`],[`JsonSerializer.Serialize(self, `,this._options.namespace,`.Converter.Settings)`]))})})}emitCanConvert(e){this.emitExpressionMember(`public override bool CanConvert(Type t)`,e)}emitReadJson(e,t){this.emitLine(`public override `,t,` Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)`),this.emitBlock(e)}emitWriteJson(e,t,n){this.emitLine(`public override void Write(Utf8JsonWriter writer, `,n,` `,e,`, JsonSerializerOptions options)`),this.emitBlock(t)}converterObject(e){return[e,`.Singleton`]}emitConverterClass(){this.emitType(void 0,v.Internal,`static class`,[`Converter`],void 0,()=>{this.emitLine(`public static readonly JsonSerializerOptions Settings = new(JsonSerializerDefaults.General)`),this.emitBlock(()=>{this.emitLine(`Converters =`),this.emitLine(`{`),this.indent(()=>{for(let[e,t]of this.typesWithNamedTransformations)x((0,c.defined)((0,m.transformationForType)(e)))&&this.emitLine(this.converterObject(t),`,`);this.emitLine(`new DateOnlyConverter(),`),this.emitLine(`new TimeOnlyConverter(),`),this.emitLine(`IsoDateTimeOffsetConverter.Singleton`)}),this.emitLine(`},`)},!0)})}emitDecoderTransformerCase(e,t,n,r,i){if(n!==void 0){for(let t of e)this.emitTokenCase(t);this.indent(()=>{this.emitDecodeTransformer(n,r,i,t)||this.emitLine(`break;`)})}}emitConsume(e,t,n,r){return t===void 0?(r(e),!0):this.emitTransformer(e,t,n,r)}emitDecodeTransformer(e,t,n,i=`value`){if(e instanceof m.DecodingTransformer){let r=e.sourceType,a=this.converterForType(t);if(a!==void 0){let e=this.csType(t);this.emitLine(`var converter = `,this.converterObject(a),`;`),this.emitLine(`var `,i,` = (`,e,`)converter.ReadJson(reader, typeof(`,e,`), null, serializer);`)}else if(r.kind!==`null`){let e=t.kind===`double`?t:r;this.emitLine(`var `,i,` = `,this.deserializeTypeCode(this.csType(e)),`;`)}return this.emitConsume(i,e.consumer,t,n)}else if(e instanceof m.ArrayDecodingTransformer){if(!(t instanceof r.ArrayType))return(0,c.panic)(`Array decoding must produce an array type`);this.emitLine(`reader.Read();`),this.emitLine(`var `,i,` = new List<`,this.csType(t.items),`>();`),this.emitLine(`while (reader.TokenType != JsonToken.EndArray)`),this.emitBlock(()=>{this.emitDecodeTransformer(e.itemTransformer,e.itemTargetType,e=>this.emitLine(i,`.Add(`,e,`);`),`arrayItem`),this.emitLine(`reader.Read();`)});let a=i;return this._options.useList||(a=[a,`.ToArray()`]),n(a),!0}else if(e instanceof m.DecodingChoiceTransformer)return this.emitDecoderSwitch(()=>{let r=e.nullTransformer;r!==void 0&&(this.emitTokenCase(`Null`),this.indent(()=>{this.emitDecodeTransformer(r,t,n,`null`)||this.emitLine(`break`)})),this.emitDecoderTransformerCase([`Number`],`integerValue`,e.integerTransformer,t,n),this.emitDecoderTransformerCase([`Number`],`doubleValue`,e.doubleTransformer,t,n),this.emitDecoderTransformerCase([`True`,`False`],`boolValue`,e.boolTransformer,t,n),this.emitDecoderTransformerCase([`String`],`stringValue`,e.stringTransformer,t,n),this.emitDecoderTransformerCase([`StartObject`],`objectValue`,e.objectTransformer,t,n),this.emitDecoderTransformerCase([`StartArray`],`arrayValue`,e.arrayTransformer,t,n)}),!1;else return(0,c.panic)(`Unknown transformer`)}stringCaseValue(e,t){return e.kind===`string`?[`"`,(0,s.utf16StringEscape)(t),`"`]:e instanceof r.EnumType?[this.nameForNamedType(e),`.`,this.nameForEnumCase(e,t)]:(0,c.panic)(`Type ${e.kind} does not have string cases`)}emitTransformer(e,t,a,o){function s(e){return e===void 0?a:(0,m.followTargetType)(e.sourceType)}if(t instanceof m.ChoiceTransformer){let n=t.transformers;if(n.length>1&&n.every(e=>e instanceof m.StringMatchTransformer))return this.emitLine(`switch (`,e,`)`),this.emitBlock(()=>{for(let t of n){let n=t,r=this.stringCaseValue((0,m.followTargetType)(n.sourceType),n.stringCase);this.emitLine(`case `,r,`:`),this.indent(()=>{this.emitTransformer(e,n.transformer,a,o)||this.emitLine(`break;`)})}}),!1;for(let t of n)this.emitTransformer(e,t,a,o)}else if(t instanceof m.UnionMemberMatchTransformer){let n=t.memberType,r=(0,i.nullableFromUnion)(t.sourceType),s,c;r===null?n.kind===`null`?(s=[e,`.IsNull`],c=`null`):(c=[e,`.`,this.nameForUnionMember(t.sourceType,n)],s=[c,` != null`]):n.kind===`null`?(s=[e,` == null`],c=`null`):(s=[e,` != null`],c=e),n.kind!==`null`&&j(n)&&(c=[c,`.Value`]),this.emitLine(`if (`,s,`)`),this.emitBlock(()=>this.emitTransformer(c,t.transformer,a,o))}else if(t instanceof m.StringMatchTransformer){let n=this.stringCaseValue((0,m.followTargetType)(t.sourceType),t.stringCase);this.emitLine(`if (`,e,` == `,n,`)`),this.emitBlock(()=>this.emitTransformer(e,t.transformer,a,o))}else if(t instanceof m.EncodingTransformer){let n=this.converterForType(t.sourceType);return n===void 0?this.emitLine(this.serializeValueCode(e),`;`):(this.emitLine(`var converter = `,this.converterObject(n),`;`),this.emitLine(`converter.WriteJson(writer, `,e,`, serializer);`)),o([]),!0}else if(t instanceof m.ArrayEncodingTransformer){this.emitLine(`writer.WriteStartArray();`);let n=`arrayItem`;return this.emitLine(`foreach (var `,n,` in `,e,`)`),this.emitBlock(()=>{this.emitTransformer(n,t.itemTransformer,t.itemTargetType,()=>{})}),this.emitLine(`writer.WriteEndArray();`),o([]),!0}else if(t instanceof m.ParseStringTransformer){let n=t.consumer===void 0?a:t.consumer.sourceType;switch(n.kind){case`date-time`:this.emitLine(`DateTimeOffset dt;`),this.emitLine(`if (DateTimeOffset.TryParse(`,e,`, out dt))`),this.emitBlock(()=>this.emitConsume(`dt`,t.consumer,a,o));break;case`uuid`:this.emitLine(`Guid guid;`),this.emitLine(`if (Guid.TryParse(`,e,`, out guid))`),this.emitBlock(()=>this.emitConsume(`guid`,t.consumer,a,o));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(`,e,`);`)}),this.emitConsume(`uri`,t.consumer,a,o)}),this.emitLine(`catch (UriFormatException) {}`);break;case`integer`:this.emitLine(`long l;`),this.emitLine(`if (Int64.TryParse(`,e,`, out l))`),this.emitBlock(()=>this.emitConsume(`l`,t.consumer,a,o));break;case`bool`:this.emitLine(`bool b;`),this.emitLine(`if (Boolean.TryParse(`,e,`, out b))`),this.emitBlock(()=>this.emitConsume(`b`,t.consumer,a,o));break;default:return(0,c.panic)(`Parsing string to ${n.kind} not supported`)}}else if(t instanceof m.StringifyTransformer)switch(t.sourceType.kind){case`date-time`:return this.emitConsume([e,`.ToString("o", System.Globalization.CultureInfo.InvariantCulture)`],t.consumer,a,o);case`uuid`:return this.emitConsume([e,`.ToString("D", System.Globalization.CultureInfo.InvariantCulture)`],t.consumer,a,o);case`integer`:case`uri`:return this.emitConsume([e,`.ToString()`],t.consumer,a,o);case`bool`:return this.emitLine(`var boolString = `,e,` ? "true" : "false";`),this.emitConsume(`boolString`,t.consumer,a,o);default:return(0,c.panic)(`Stringifying ${t.sourceType.kind} not supported`)}else if(t instanceof m.StringProducerTransformer){let e=this.stringCaseValue(s(t.consumer),t.result);return this.emitConsume(e,t.consumer,a,o)}else if(t instanceof m.MinMaxLengthCheckTransformer){let r=t.minLength,i=t.maxLength,s=[];return r!==void 0&&s.push([e,`.Length >= `,r.toString()]),i!==void 0&&s.push([e,`.Length <= `,i.toString()]),this.emitLine(`if (`,(0,n.arrayIntercalate)([` && `],s),`)`),this.emitBlock(()=>this.emitConsume(e,t.consumer,a,o)),!1}else if(t instanceof m.MinMaxValueTransformer){let r=t.minimum,i=t.maximum,s=[];return r!==void 0&&s.push([e,` >= `,r.toString()]),i!==void 0&&s.push([e,` <= `,i.toString()]),this.emitLine(`if (`,(0,n.arrayIntercalate)([` && `],s),`)`),this.emitBlock(()=>this.emitConsume(e,t.consumer,a,o)),!1}else if(t instanceof m.UnionInstantiationTransformer){if(!(a instanceof r.UnionType))return(0,c.panic)(`Union instantiation transformer must produce a union type`);if((0,i.nullableFromUnion)(a)!==null)o(e);else{let n=this.nameForNamedType(a),r;r=t.sourceType.kind===`null`?` `:[` `,this.nameForUnionMember(a,t.sourceType),` = `,e,` `],o([`new `,n,` {`,r,`}`])}return!0}else return(0,c.panic)(`Unknown transformer`);return!1}emitTransformation(e,t){let n=(0,c.defined)((0,m.transformationForType)(t)),r=n.reverse,i=n.targetType,a=n.transformer,o=this.csType(i);this.emitType(void 0,v.Internal,`class`,e,[`JsonConverter<`,o,`>`],()=>{let t=[`t == typeof(`,o,`)`];this.emitCanConvert(t),this.ensureBlankLine(),this.emitReadJson(()=>{this.emitDecodeTransformer(a,i,e=>this.emitLine(`return `,e,`;`))||this.emitThrow([`"Cannot unmarshal type `,o,`"`])},o),this.ensureBlankLine(),this.emitWriteJson(`value`,()=>{this.emitTransformer(`value`,r.transformer,r.targetType,()=>this.emitLine(`return;`))||this.emitThrow([`"Cannot marshal type `,o,`"`])},o),this.ensureBlankLine(),this.emitLine(`public static readonly `,e,` Singleton = new `,e,`();`)})}emitRequiredHelpers(){this._needHelpers&&(this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitFromJsonForTopLevel(e,t)),this.ensureBlankLine(),this.emitSerializeClass()),(this._needHelpers||this._needAttributes&&(this.haveNamedUnions||this.haveEnums))&&(this.ensureBlankLine(),this.emitConverterClass(),this.forEachTransformation(`leading-and-interposing`,(e,t)=>this.emitTransformation(e,t)),this.emitMultiline(`
126
+ public class DateOnlyConverter : JsonConverter<DateOnly>
127
+ {
128
+ private readonly string serializationFormat;
129
+ public DateOnlyConverter() : this(null) { }
130
+
131
+ public DateOnlyConverter(string? serializationFormat)
132
+ {
133
+ this.serializationFormat = serializationFormat ?? "yyyy-MM-dd";
134
+ }
135
+
136
+ public override DateOnly Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
137
+ {
138
+ var value = reader.GetString();
139
+ return DateOnly.Parse(value!);
140
+ }
141
+
142
+ public override void Write(Utf8JsonWriter writer, DateOnly value, JsonSerializerOptions options)
143
+ => writer.WriteStringValue(value.ToString(serializationFormat));
144
+ }
145
+
146
+ public class TimeOnlyConverter : JsonConverter<TimeOnly>
147
+ {
148
+ private readonly string serializationFormat;
149
+
150
+ public TimeOnlyConverter() : this(null) { }
151
+
152
+ public TimeOnlyConverter(string? serializationFormat)
153
+ {
154
+ this.serializationFormat = serializationFormat ?? "HH:mm:ss.fff";
155
+ }
156
+
157
+ public override TimeOnly Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
158
+ {
159
+ var value = reader.GetString();
160
+ return TimeOnly.Parse(value!);
161
+ }
162
+
163
+ public override void Write(Utf8JsonWriter writer, TimeOnly value, JsonSerializerOptions options)
164
+ => writer.WriteStringValue(value.ToString(serializationFormat));
165
+ }
166
+
167
+ internal class IsoDateTimeOffsetConverter : JsonConverter<DateTimeOffset>
168
+ {
169
+ public override bool CanConvert(Type t) => t == typeof(DateTimeOffset);
170
+
171
+ private const string DefaultDateTimeFormat = "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK";
172
+
173
+ private DateTimeStyles _dateTimeStyles = DateTimeStyles.RoundtripKind;
174
+ private string? _dateTimeFormat;
175
+ private CultureInfo? _culture;
176
+
177
+ public DateTimeStyles DateTimeStyles
178
+ {
179
+ get => _dateTimeStyles;
180
+ set => _dateTimeStyles = value;
181
+ }
182
+
183
+ public string? DateTimeFormat
184
+ {
185
+ get => _dateTimeFormat ?? string.Empty;
186
+ set => _dateTimeFormat = (string.IsNullOrEmpty(value)) ? null : value;
187
+ }
188
+
189
+ public CultureInfo Culture
190
+ {
191
+ get => _culture ?? CultureInfo.CurrentCulture;
192
+ set => _culture = value;
193
+ }
194
+
195
+ public override void Write(Utf8JsonWriter writer, DateTimeOffset value, JsonSerializerOptions options)
196
+ {
197
+ string text;
198
+
199
+
200
+ if ((_dateTimeStyles & DateTimeStyles.AdjustToUniversal) == DateTimeStyles.AdjustToUniversal
201
+ || (_dateTimeStyles & DateTimeStyles.AssumeUniversal) == DateTimeStyles.AssumeUniversal)
202
+ {
203
+ value = value.ToUniversalTime();
204
+ }
205
+
206
+ text = value.ToString(_dateTimeFormat ?? DefaultDateTimeFormat, Culture);
207
+
208
+ writer.WriteStringValue(text);
209
+ }
210
+
211
+ public override DateTimeOffset Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
212
+ {
213
+ string? dateText = reader.GetString();
214
+
215
+ if (string.IsNullOrEmpty(dateText) == false)
216
+ {
217
+ if (!string.IsNullOrEmpty(_dateTimeFormat))
218
+ {
219
+ return DateTimeOffset.ParseExact(dateText, _dateTimeFormat, Culture, _dateTimeStyles);
220
+ }
221
+ else
222
+ {
223
+ return DateTimeOffset.Parse(dateText, Culture, _dateTimeStyles);
224
+ }
225
+ }
226
+ else
227
+ {
228
+ return default(DateTimeOffset);
229
+ }
230
+ }
231
+
232
+
233
+ public static readonly IsoDateTimeOffsetConverter Singleton = new IsoDateTimeOffsetConverter();
234
+ }`))}needNamespace(){return this._needNamespaces}};e.SystemTextJsonCSharpRenderer=P})),Ha=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.GoRenderer=e.GoTargetLanguage=e.goOptions=void 0;var t=wa(),n=ha(),r=Ta(),i=ua(),a=Q(),o=ra(),s=Ea(),c=Da(),l=Ba(),u=Ra();e.goOptions={justTypes:new o.BooleanOption(`just-types`,`Plain types only`,!1),justTypesAndPackage:new o.BooleanOption(`just-types-and-package`,`Plain types with package only`,!1),packageName:new o.StringOption(`package`,`Generated package name`,`NAME`,`main`),multiFileOutput:new o.BooleanOption(`multi-file-output`,`Renders each top-level object in its own Go file`,!1)},e.GoTargetLanguage=class extends l.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(t,n){return new v(this,t,(0,o.getOptionValues)(e.goOptions,n))}get defaultIndentation(){return` `}};var d=(0,r.funPrefixNamer)(`namer`,p),f=(0,i.legalizeCharacters)(i.isLetterOrUnderscoreOrDigit);function p(e){let t=(0,i.splitIntoWords)(e);return(0,i.combineWords)(t,f,i.firstUpperWordStyle,i.firstUpperWordStyle,i.allUpperWordStyle,i.allUpperWordStyle,``,i.isLetterOrUnderscore)}var m=[`integer`,`double`,`bool`,`string`],h=[`array`,`class`,`map`,`enum`];function g(e){let t=e.kind;return m.indexOf(t)>=0||t===`class`||t===`enum`}function _(e){if(!e.isOptional)return!1;let t=e.type;return[`union`,`null`,`any`].indexOf(t.kind)<0}var v=class extends u.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._topLevelUnmarshalNames=new Map}makeNamedTypeNamer(){return d}namerForObjectProperty(){return d}makeUnionMemberNamer(){return d}makeEnumCaseNamer(){return d}get enumCasesInGlobalNamespace(){return!0}makeTopLevelDependencyNames(e,t){let n=new r.DependencyName(d,t.order,e=>`unmarshal_${e(t)}`);return this._topLevelUnmarshalNames.set(t,n),[n]}startFile(e){this._options.multiFileOutput!==!1&&((0,a.assert)(this._currentFilename===void 0,`Previous file wasn't finished: `+this._currentFilename),this._currentFilename=`${this.sourcelikeToString(e)}.go`.toLowerCase(),this.initializeEmitContextForFilename(this._currentFilename))}endFile(){this._options.multiFileOutput!==!1&&(this.finishFile((0,a.defined)(this._currentFilename)),this._currentFilename=void 0)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}emitFunc(e,t){this.emitBlock([`func `,e],t)}emitStruct(e,t){this.emitBlock([`type `,e,` struct`],()=>this.emitTable(t))}nullableGoType(e,t){let n=this.goType(e,t);return g(e)?[`*`,n]:n}propertyGoType(e){let r=e.type;return r instanceof t.UnionType&&(0,n.nullableFromUnion)(r)===null?[`*`,this.goType(r,!0)]:e.isOptional?this.nullableGoType(r,!0):this.goType(r,!0)}goType(e,r=!1){return(0,n.matchType)(e,e=>(0,s.maybeAnnotated)(r,c.anyTypeIssueAnnotation,`interface{}`),e=>(0,s.maybeAnnotated)(r,c.nullTypeIssueAnnotation,`interface{}`),e=>`bool`,e=>`int64`,e=>`float64`,e=>`string`,e=>[`[]`,this.goType(e.items,r)],e=>this.nameForNamedType(e),e=>{let i,a=e.values;return i=a instanceof t.UnionType&&(0,n.nullableFromUnion)(a)===null?[`*`,this.nameForNamedType(a)]:this.goType(a,r),[`map[string]`,i]},e=>this.nameForNamedType(e),e=>{let t=(0,n.nullableFromUnion)(e);return t===null?this.nameForNamedType(e):this.nullableGoType(t,r)})}emitTopLevel(e,t){if(this.startFile(t),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(`//`);let e=(0,s.modifySource)(i.camelCase,t);this.emitLineOnce(`// `,e,`, err := `,(0,a.defined)(this._topLevelUnmarshalNames.get(t)),`(bytes)`),this.emitLineOnce(`// bytes, err = `,e,`.Marshal()`)}this.emitPackageDefinitons(!0);let n=(0,a.defined)(this._topLevelUnmarshalNames.get(t));this.namedTypeToNameForTopLevel(e)===void 0&&this.emitLine(`type `,t,` `,this.goType(e)),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc([n,`(data []byte) (`,t,`, error)`],()=>{this.emitLine(`var r `,t),this.emitLine(`err := json.Unmarshal(data, &r)`),this.emitLine(`return r, err`)}),this.ensureBlankLine(),this.emitFunc([`(r *`,t,`) Marshal() ([]byte, error)`],()=>{this.emitLine(`return json.Marshal(r)`)}),this.endFile())}emitClass(e,t){this.startFile(t),this.emitPackageDefinitons(!1);let n=[];this.forEachClassProperty(e,`none`,(t,r,a)=>{let o=this.descriptionForClassProperty(e,r),s=o!==void 0&&o.length>0?o.map(e=>`// `+e):[],c=this.propertyGoType(a),l=_(a)?`,omitempty`:[];s.forEach(e=>n.push([e])),n.push([[t,` `],[c,` `],['`json:"',(0,i.stringEscape)(r),l,'"`']])}),this.emitDescription(this.descriptionForType(e)),this.emitStruct(t,n),this.endFile()}emitEnum(e,t){this.startFile(t),this.emitPackageDefinitons(!1),this.emitDescription(this.descriptionForType(e)),this.emitLine(`type `,t,` string`),this.emitLine(`const (`),this.indent(()=>this.forEachEnumCase(e,`none`,(e,n)=>{this.emitLine(e,` `,t,` = "`,(0,i.stringEscape)(n),`"`)})),this.emitLine(`)`),this.endFile()}emitUnion(e,t){this.startFile(t),this.emitPackageDefinitons(!1);let[r,i]=(0,n.removeNullFromUnion)(e),a=r===null?`false`:`true`,o=(t,n,r)=>{let i=e.findMember(t);return i===void 0?n:r(i,this.nameForUnionMember(e,i),this.goType(i))},s=e=>{o(e,void 0,(e,t,n)=>{this.emitLine(`x.`,t,` = nil`)})},c=(e,t)=>{let n=[];for(let t of m)n.push(o(t,`nil`,(t,n,r)=>e(n)),`, `);for(let e of h)n.push(o(e,`false, nil`,(e,n,r)=>t(e.kind===`class`,n)),`, `);return n.push(a),n},l=[];this.forEachUnionMember(e,i,`none`,null,(e,t)=>{let n=this.nullableGoType(t,!0);l.push([[e,` `],n])}),this.emitDescription(this.descriptionForType(e)),this.emitStruct(t,l),!(this._options.justTypes||this._options.justTypesAndPackage)&&(this.ensureBlankLine(),this.emitFunc([`(x *`,t,`) UnmarshalJSON(data []byte) error`],()=>{for(let e of h)s(e);o(`class`,void 0,(e,t,n)=>{this.emitLine(`var c `,n)});let e=c(e=>[`&x.`,e],(e,t)=>e?`true, &c`:[`true, &x.`,t]);this.emitLine(`object, err := unmarshalUnion(data, `,e,`)`),this.emitBlock(`if err != nil`,()=>{this.emitLine(`return err`)}),this.emitBlock(`if object`,()=>{o(`class`,void 0,(e,t,n)=>{this.emitLine(`x.`,t,` = &c`)})}),this.emitLine(`return nil`)}),this.ensureBlankLine(),this.emitFunc([`(x *`,t,`) MarshalJSON() ([]byte, error)`],()=>{let e=c(e=>[`x.`,e],(e,t)=>[`x.`,t,` != nil, x.`,t]);this.emitLine(`return marshalUnion(`,e,`)`)}),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`,(e,t)=>{this.emitLine(`//`);let n=(0,s.modifySource)(i.camelCase,t);this.emitLine(`// `,n,`, err := `,(0,a.defined)(this._topLevelUnmarshalNames.get(t)),`(bytes)`),this.emitLine(`// bytes, err = `,n,`.Marshal()`)})}emitPackageDefinitons(e){if(!this._options.justTypes||this._options.justTypesAndPackage){this.ensureBlankLine();let e=`package `+this._options.packageName;this.emitLineOnce(e),this.ensureBlankLine()}!this._options.justTypes&&!this._options.justTypesAndPackage&&(this.ensureBlankLine(),this.haveNamedUnions&&this._options.multiFileOutput===!1&&(this.emitLineOnce(`import "bytes"`),this.emitLineOnce(`import "errors"`)),e&&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) {
235
+ if pi != nil {
236
+ *pi = nil
237
+ }
238
+ if pf != nil {
239
+ *pf = nil
240
+ }
241
+ if pb != nil {
242
+ *pb = nil
243
+ }
244
+ if ps != nil {
245
+ *ps = nil
246
+ }
247
+
248
+ dec := json.NewDecoder(bytes.NewReader(data))
249
+ dec.UseNumber()
250
+ tok, err := dec.Token()
251
+ if err != nil {
252
+ return false, err
253
+ }
254
+
255
+ switch v := tok.(type) {
256
+ case json.Number:
257
+ if pi != nil {
258
+ i, err := v.Int64()
259
+ if err == nil {
260
+ *pi = &i
261
+ return false, nil
262
+ }
263
+ }
264
+ if pf != nil {
265
+ f, err := v.Float64()
266
+ if err == nil {
267
+ *pf = &f
268
+ return false, nil
269
+ }
270
+ return false, errors.New("Unparsable number")
271
+ }
272
+ return false, errors.New("Union does not contain number")
273
+ case float64:
274
+ return false, errors.New("Decoder should not return float64")
275
+ case bool:
276
+ if pb != nil {
277
+ *pb = &v
278
+ return false, nil
279
+ }
280
+ return false, errors.New("Union does not contain bool")
281
+ case string:
282
+ if haveEnum {
283
+ return false, json.Unmarshal(data, pe)
284
+ }
285
+ if ps != nil {
286
+ *ps = &v
287
+ return false, nil
288
+ }
289
+ return false, errors.New("Union does not contain string")
290
+ case nil:
291
+ if nullable {
292
+ return false, nil
293
+ }
294
+ return false, errors.New("Union does not contain null")
295
+ case json.Delim:
296
+ if v == '{' {
297
+ if haveObject {
298
+ return true, json.Unmarshal(data, pc)
299
+ }
300
+ if haveMap {
301
+ return false, json.Unmarshal(data, pm)
302
+ }
303
+ return false, errors.New("Union does not contain object")
304
+ }
305
+ if v == '[' {
306
+ if haveArray {
307
+ return false, json.Unmarshal(data, pa)
308
+ }
309
+ return false, errors.New("Union does not contain array")
310
+ }
311
+ return false, errors.New("Cannot handle delimiter")
312
+ }
313
+ return false, errors.New("Cannot unmarshal union")
314
+
315
+ }
316
+
317
+ 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) {
318
+ if pi != nil {
319
+ return json.Marshal(*pi)
320
+ }
321
+ if pf != nil {
322
+ return json.Marshal(*pf)
323
+ }
324
+ if pb != nil {
325
+ return json.Marshal(*pb)
326
+ }
327
+ if ps != nil {
328
+ return json.Marshal(*ps)
329
+ }
330
+ if haveArray {
331
+ return json.Marshal(pa)
332
+ }
333
+ if haveObject {
334
+ return json.Marshal(pc)
335
+ }
336
+ if haveMap {
337
+ return json.Marshal(pm)
338
+ }
339
+ if haveEnum {
340
+ return json.Marshal(pe)
341
+ }
342
+ if nullable {
343
+ return json.Marshal(nil)
344
+ }
345
+ return nil, errors.New("Union must not be null")
346
+ }`),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`,(e,t)=>this.emitTopLevel(e,t),e=>!(this._options.justTypes||this._options.justTypesAndPackage)||this.namedTypeToNameForTopLevel(e)===void 0),this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitClass(e,t)),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitEnum(e,t)),this.forEachUnion(`leading-and-interposing`,(e,t)=>this.emitUnion(e,t)),!(this._options.justTypes||this._options.justTypesAndPackage)&&this.emitHelperFunctions()}};e.GoRenderer=v})),Ua=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.CPlusPlusRenderer=e.MemberNames=e.GlobalNames=e.IncludeKind=e.CPlusPlusTargetLanguage=e.cPlusPlusOptions=void 0;var t=a(),n=Ba(),r=wa(),i=ha(),o=Ta(),s=Ea(),c=Da(),l=ua(),u=Q(),d=Ra(),f=ra(),p=Q(),m=ja(),h=Ma(),g=Na(),_=[`pascal-case`,`pascal`],v=[`underscore-case`,`underscore`],y=[`camel-case`,`camel`],b=[`upper-underscore-case`,`upper-underscore`],x=[`pascal-case-upper-acronyms`,`pascal-upper-acronyms`],S=[`camel-case-upper-acronyms`,`camel-upper-acronyms`];e.cPlusPlusOptions={typeSourceStyle:new f.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 f.EnumOption(`include-location`,`Whether json.hpp is to be located globally or locally`,[[`local-include`,!0],[`global-include`,!1]],`local-include`,`secondary`),codeFormat:new f.EnumOption(`code-format`,`Generate classes with getters/setters, instead of structs`,[[`with-struct`,!1],[`with-getter-setter`,!0]],`with-getter-setter`),wstring:new f.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 f.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 f.BooleanOption(`just-types`,`Plain types only`,!1),namespace:new f.StringOption(`namespace`,`Name of the generated namespace(s)`,`NAME`,`quicktype`),enumType:new f.StringOption(`enum-type`,`Type of enum class`,`NAME`,`int`,`secondary`),typeNamingStyle:new f.EnumOption(`type-style`,`Naming style for types`,[_,v,y,b,x,S]),memberNamingStyle:new f.EnumOption(`member-style`,`Naming style for members`,[v,_,y,b,x,S]),enumeratorNamingStyle:new f.EnumOption(`enumerator-style`,`Naming style for enumerators`,[b,v,_,y,x,S]),boost:new f.BooleanOption(`boost`,`Require a dependency on boost. Without boost, C++17 is required`,!0),hideNullOptional:new f.BooleanOption(`hide-null-optional`,`Hide null value for optional field`,!1)},e.CPlusPlusTargetLanguage=class extends n.TargetLanguage{constructor(e=`C++`,t=[`c++`,`cpp`,`cplusplus`],n=`cpp`){super(e,t,n)}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,n){return new P(this,t,(0,f.getOptionValues)(e.cPlusPlusOptions,n))}};function C(e){let t=(0,g.minMaxValueForType)(e),n=(0,g.minMaxLengthForType)(e),r=(0,g.patternForType)(e);if(!(t===void 0&&n===void 0&&r===void 0))return{minMax:t,minMaxLength:n,pattern:r}}var w=(0,l.legalizeCharacters)(e=>(0,l.isAscii)(e)&&(0,l.isLetterOrUnderscoreOrDigit)(e)),T=`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`.split(`.`),E=`std::shared_ptr`,D=`std::make_shared`,O;(function(e){e[e.ForwardDeclare=0]=`ForwardDeclare`,e[e.Include=1]=`Include`})(O=e.IncludeKind||={});var k;(function(e){e[e.ClassMemberConstraints=0]=`ClassMemberConstraints`,e[e.ClassMemberConstraintException=1]=`ClassMemberConstraintException`,e[e.ValueTooLowException=2]=`ValueTooLowException`,e[e.ValueTooHighException=3]=`ValueTooHighException`,e[e.ValueTooShortException=4]=`ValueTooShortException`,e[e.ValueTooLongException=5]=`ValueTooLongException`,e[e.InvalidPatternException=6]=`InvalidPatternException`,e[e.CheckConstraint=7]=`CheckConstraint`})(k=e.GlobalNames||={});var A;(function(e){e[e.MinValue=0]=`MinValue`,e[e.GetMinValue=1]=`GetMinValue`,e[e.SetMinValue=2]=`SetMinValue`,e[e.MaxValue=3]=`MaxValue`,e[e.GetMaxValue=4]=`GetMaxValue`,e[e.SetMaxValue=5]=`SetMaxValue`,e[e.MinLength=6]=`MinLength`,e[e.GetMinLength=7]=`GetMinLength`,e[e.SetMinLength=8]=`SetMinLength`,e[e.MaxLength=9]=`MaxLength`,e[e.GetMaxLength=10]=`GetMaxLength`,e[e.SetMaxLength=11]=`SetMaxLength`,e[e.Pattern=12]=`Pattern`,e[e.GetPattern=13]=`GetPattern`,e[e.SetPattern=14]=`SetPattern`})(A=e.MemberNames||={});function j(e,t){return t.length===0?[]:[e,t]}var M=class{constructor(e,t){this._start=e,this._end=t}wrap(e,t){return[j(e,this._start),t,this._end]}},N=class{constructor(e,t,n,r,i,a,o,s){this._stringType=e,this._constStringType=t,this._smatch=n,this._regex=r,this._stringLiteralPrefix=i,this._toString=a,this._encodingClass=o,this._encodingFunction=s}getType(){return this._stringType}getConstType(){return this._constStringType}getSMatch(){return this._smatch}getRegex(){return this._regex}createStringLiteral(e){return[this._stringLiteralPrefix,`"`,e,`"`]}wrapToString(e){return this._toString.wrap([],e)}},P=class extends d.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._gettersAndSettersForPropertyName=new Map,this.NarrowString=new class extends N{constructor(){super(`std::string`,`const std::string & `,`std::smatch`,`std::regex`,``,new M([`std::to_string(`],[`)`]),``,``)}wrapEncodingChange(e,t,n,r){return r}emitHelperFunctions(){}},this.WideString=new class extends N{constructor(e){super(`std::wstring`,`const std::wstring & `,`std::wsmatch`,`std::wregex`,`L`,new M([`std::to_wstring(`],[`)`]),`Utf16_Utf8`,`convert`),this.superThis=e}wrapEncodingChange(e,t,n,r){return this.superThis.sourcelikeToString(t)===this.superThis.sourcelikeToString(n)?r:[j(e,[this._encodingClass]),`<`,t,`, `,n,`>::`,this._encodingFunction,`(`,r,`)`]}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=n.enumType,this._namespaceNames=n.namespace.split(`::`),this.typeNamingStyle=n.typeNamingStyle,this._namedTypeNameStyle=(0,l.makeNameStyle)(this.typeNamingStyle,w),this.enumeratorNamingStyle=n.enumeratorNamingStyle,this._memberNameStyle=(0,l.makeNameStyle)(n.memberNamingStyle,w),this._memberNamingFunction=(0,o.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=[],n.wstring?this._stringType=this.WideString:this._stringType=this.NarrowString,n.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(e){return e.kind===`union`}isOptionalAsValuePossible(e){if(this.isForwardDeclaredType(e))return!1;if(this.isUnion(e)){let[,n]=(0,i.removeNullFromUnion)(e);if(n.size===1){let e=(0,u.defined)((0,t.iterableFirst)(n));return!this.isCycleBreakerType(e)}}return!this.isCycleBreakerType(e)}isImplicitCycleBreaker(e){let t=e.kind;return t===`array`||t===`map`}optionalTypeStack(){return this._optionalType}optionalFactoryStack(){return this._optionalFactory}optionalTypeHeap(){return E}optionalFactoryHeap(){return D}optionalType(e){return this.isOptionalAsValuePossible(e)?this.optionalTypeStack():this.optionalTypeHeap()}optionalTypeLabel(e){return this.isOptionalAsValuePossible(e)?`stack`:`heap`}getConstraintMembers(){return[{name:A.MinValue,getter:A.GetMinValue,setter:A.SetMinValue,cppType:`int64_t`},{name:A.MaxValue,getter:A.GetMaxValue,setter:A.SetMaxValue,cppType:`int64_t`},{name:A.MinLength,getter:A.GetMinLength,setter:A.SetMinLength,cppType:`size_t`},{name:A.MaxLength,getter:A.GetMaxLength,setter:A.SetMaxLength,cppType:`size_t`},{name:A.Pattern,getter:A.GetPattern,setter:A.SetPattern,cppType:this._stringType.getType(),cppConstType:this._stringType.getConstType()}]}lookupGlobalName(e){return(0,u.defined)(this._generatedGlobalNames.get(e))}lookupMemberName(e){return(0,u.defined)(this._generatedMemberNames.get(e))}addGlobalName(e){let t=this._namedTypeNameStyle(k[e]);this._generatedGlobalNames.set(e,t),this._forbiddenGlobalNames.push(t)}addMemberName(e){this._generatedMemberNames.set(e,this._memberNameStyle(A[e]))}setupGlobalNames(){for(let e of(0,u.numberEnumValues)(k))this.addGlobalName(e);for(let e of(0,u.numberEnumValues)(A))this.addMemberName(e)}forbiddenNamesForGlobalNamespace(){return[...T,...this._forbiddenGlobalNames]}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,o.funPrefixNamer)(`types`,this._namedTypeNameStyle)}namerForObjectProperty(){return this._memberNamingFunction}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,o.funPrefixNamer)(`enumerators`,(0,l.makeNameStyle)(this.enumeratorNamingStyle,w))}makeNamesForPropertyGetterAndSetter(e,t,n,r,i){return[new o.DependencyName(this._memberNamingFunction,i.order,e=>`get_${e(i)}`),new o.DependencyName(this._memberNamingFunction,i.order,e=>`getMutable_${e(i)}`),new o.DependencyName(this._memberNamingFunction,i.order,e=>`set_${e(i)}`)]}makePropertyDependencyNames(e,t,n,r,i){let a=this.makeNamesForPropertyGetterAndSetter(e,t,n,r,i);return this._gettersAndSettersForPropertyName.set(i,a),a}withConst(e){return this._options.westConst?[`const `,e]:[e,` const`]}emitInclude(e,t){this.emitLine(`#include `,e?`<`:`"`,t,e?`>`:`"`)}startFile(e,t=!0){(0,p.assert)(this._currentFilename===void 0,`Previous file wasn't finished`),e!==void 0&&(this._currentFilename=this.sourcelikeToString(e)),this.leadingComments===void 0?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`,(e,t)=>{this.emitLine(`// `,t,` data = nlohmann::json::parse(jsonString);`)}):this.emitLine(`// `,e,` 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`,(e,t)=>{this.emitLine(`// std::wcout << `,`wdump((nlohmann::json) `,t,`);`)}))):this.emitCommentLines(this.leadingComments),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`),t&&!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(e){return e.kind===`class`}emitDescriptionBlock(e){this.emitCommentLines(e,` * `,`/**`,` */`)}emitBlock(e,t,n,r=!0){this.emitLine(e,` {`),this.preventBlankLine(),r?this.indent(n):n(),this.preventBlankLine(),t?this.emitLine(`};`):this.emitLine(`}`)}emitNamespaces(e,n){let r=(0,t.toReadonlyArray)(e),i=r[0];i===void 0?n():this.emitBlock([`namespace `,i],!1,()=>this.emitNamespaces(r.slice(1),n),r.length===1)}cppTypeInOptional(e,n,r,i){if(e.size===1)return this.cppType((0,u.defined)((0,t.iterableFirst)(e)),n,r,i,!1);let a=[];for(let t of e)a.length!==0&&a.push(`, `),a.push(this.cppType(t,{needsForwardIndirection:!0,needsOptionalIndirection:!1,inJsonNamespace:n.inJsonNamespace},r,!1,!1));return[this._variantType,`<`,a,`>`]}variantType(e,t){let[n,r]=(0,i.removeNullFromUnion)(e,!0);(0,p.assert)(r.size>=2,`Variant not needed for less than two types.`);let a=n!==null,o=this.cppTypeInOptional(r,{needsForwardIndirection:!a,needsOptionalIndirection:!a,inJsonNamespace:t},!0,!1);return a?[this.optionalType(e),`<`,o,`>`]:o}ourQualifier(e){return e?[(0,t.arrayIntercalate)(`::`,this._namespaceNames),`::`]:[]}jsonQualifier(e){return e?[]:`nlohmann::`}variantIndirection(e,t,n){return t?[this.optionalType(e),`<`,n,`>`]:n}cppType(e,t,n,a,o){let l=t.inJsonNamespace;if(o&&e instanceof r.UnionType){for(let t of e.getChildren())if(t.isNullable){o=!1;break}}let u=(0,i.matchType)(e,e=>(o=!1,(0,s.maybeAnnotated)(n,c.anyTypeIssueAnnotation,[this.jsonQualifier(l),`json`])),e=>(o=!1,(0,s.maybeAnnotated)(n,c.nullTypeIssueAnnotation,[this.jsonQualifier(l),`json`])),e=>`bool`,e=>`int64_t`,e=>`double`,e=>a?`std::string`:this._stringType.getType(),e=>[`std::vector<`,this.cppType(e.items,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:l},n,a,!1),`>`],e=>this.variantIndirection(e,t.needsForwardIndirection&&this.isForwardDeclaredType(e)&&!o,[this.ourQualifier(l),this.nameForNamedType(e)]),e=>{let t=this._stringType.getType();return a&&(t=`std::string`),[`std::map<`,t,`, `,this.cppType(e.values,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:l},n,a,!1),`>`]},e=>[this.ourQualifier(l),this.nameForNamedType(e)],e=>{let t=(0,i.nullableFromUnion)(e);return t===null?[this.ourQualifier(l),this.nameForNamedType(e)]:(o=!0,this.cppType(t,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:l},n,a,!1))});return o?[this.optionalType(e),`<`,u,`>`]:u}generatedTypes(e,t){let n=[],a=(t,o,s,c)=>{if(c instanceof r.ArrayType)a(t,o,s+1,c.items);else if(c instanceof r.ClassType)n.push({name:this.nameForNamedType(c),type:c,level:s,variant:o,forceInclude:t});else if(c instanceof r.MapType)a(t,o,s+1,c.values);else if(c instanceof r.EnumType)n.push({name:this.nameForNamedType(c),type:c,level:s,variant:o,forceInclude:!1});else if(c instanceof r.UnionType){this.unionNeedsName(c)&&e&&(t=!0,n.push({name:this.nameForNamedType(c),type:c,level:s,variant:!0,forceInclude:t}));let[r,l]=(0,i.removeNullFromUnion)(c);o=r!==null;for(let e of l)a(t,o,s+1,e)}};return a(!1,!1,0,t),n}constraintMember(e){return this._memberNameStyle(e+`Constraint`)}emitMember(e,t){this.emitLine(e,` `,t,`;`)}emitClassMembers(e,t){this._options.codeFormat&&(this.emitLine(`private:`),this.forEachClassProperty(e,`none`,(e,n,r)=>{if(this.emitMember(this.cppType(r.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,r.isOptional),e),t!==void 0&&t.has(n)){let e=this.lookupGlobalName(k.ClassMemberConstraints);this.emitMember(e,this.constraintMember(n))}}),this.ensureBlankLine(),this.emitLine(`public:`)),this.forEachClassProperty(e,`none`,(n,i,a)=>{if(this.emitDescription(this.descriptionForClassProperty(e,i)),!this._options.codeFormat)this.emitMember(this.cppType(a.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,a.isOptional),n);else{let[e,o,s]=(0,u.defined)(this._gettersAndSettersForPropertyName.get(n)),c=this.cppType(a.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,a.isOptional),l=this.lookupGlobalName(k.CheckConstraint);a.type instanceof r.UnionType&&a.type.findMember(`null`)!==void 0||a.isOptional&&a.type.kind!==`null`&&a.type.kind!==`any`?(this.emitLine(c,` `,e,`() const { return `,n,`; }`),t!==void 0&&t.has(i)?this.emitLine(`void `,s,`(`,c,` value) { if (value) `,l,`(`,this._stringType.createStringLiteral([n]),`, `,this.constraintMember(i),`, *value); this->`,n,` = value; }`):this.emitLine(`void `,s,`(`,c,` value) { this->`,n,` = value; }`)):(this.emitLine(this.withConst(c),` & `,e,`() const { return `,n,`; }`),this.emitLine(c,` & `,o,`() { return `,n,`; }`),t!==void 0&&t.has(i)?this.emitLine(`void `,s,`(`,this.withConst(c),` & value) { `,l,`(`,this._stringType.createStringLiteral([n]),`, `,this.constraintMember(i),`, value); this->`,n,` = value; }`):this.emitLine(`void `,s,`(`,this.withConst(c),` & value) { this->`,n,` = value; }`)),this.ensureBlankLine()}})}generateClassConstraints(e){let t=new Map;return this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=C(r.type);if(i===void 0)return;let{minMax:a,minMaxLength:o,pattern:s}=i;t.set(n,[this.constraintMember(n),`(`,a!==void 0&&a[0]!==void 0?String(a[0]):this._nulloptType,`, `,a!==void 0&&a[1]!==void 0?String(a[1]):this._nulloptType,`, `,o!==void 0&&o[0]!==void 0?String(o[0]):this._nulloptType,`, `,o!==void 0&&o[1]!==void 0?String(o[1]):this._nulloptType,`, `,s===void 0?this._nulloptType:[this._stringType.getType(),`(`,this._stringType.createStringLiteral([(0,l.stringEscape)(s)]),`)`],`)`])}),t.size===0?void 0:t}emitClass(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([this._options.codeFormat?`class `:`struct `,t],!0,()=>{let n=this.generateClassConstraints(e);if(this._options.codeFormat){if(this.emitLine(`public:`),n===void 0)this.emitLine(t,`() = default;`);else{this.emitLine(t,`() :`);let e=0;n.forEach((t,r)=>{e++,this.indent(()=>{e===n.size?this.emitLine(t):this.emitLine(t,`,`)})}),this.emitLine(`{}`)}this.emitLine(`virtual ~`,t,`() = default;`),this.ensureBlankLine()}this.emitClassMembers(e,n)})}emitTopLevelHeaders(e,t){if(e instanceof r.MapType&&this._stringType!==this.NarrowString){let e=this.ourQualifier(!0);this.emitBlock([`struct adl_serializer<`,e,t,`>`],!0,()=>{this.emitLine(`template <>`),this.emitLine(`static void from_json(`,this.withConst(`json`),` & j, `,e,t,` & x);`),this.emitLine(`static void to_json(json & j, `,this.withConst([e,t]),` & x);`)})}}emitClassHeaders(e){let t=this.ourQualifier(!1);this.emitLine(`void from_json(`,this.withConst(`json`),` & j, `,t,e,` & x);`),this.emitLine(`void to_json(json & j, `,this.withConst([t,e]),` & x);`)}emitTopLevelFunction(e,t){if(e instanceof r.MapType&&this._stringType!==this.NarrowString){let n=this.ourQualifier(!0),r,i;this.emitBlock([`inline void adl_serializer<`,n,t,`>::from_json(`,this.withConst(`json`),` & j, `,n,t,`& x)`],!1,()=>{r=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),i=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),this.emitLine([`x = `,this._stringType.wrapEncodingChange([n],r,i,[`j.get<`,r,`>()`]),`;`])}),this.emitBlock([`inline void adl_serializer<`,n,t,`>::to_json(json & j, `,this.withConst([n,t]),` & x)`],!1,()=>{r=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),i=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),this.emitLine([`j = `,this._stringType.wrapEncodingChange([n],r,i,`x`),`;`])})}}emitClassFunctions(e,t){let n=this.ourQualifier(!1),a,o;this.emitBlock([`inline void from_json(`,this.withConst(`json`),` & j, `,n,t,`& x)`],!1,()=>{this.forEachClassProperty(e,`none`,(e,t,s)=>{let[,,c]=(0,u.defined)(this._gettersAndSettersForPropertyName.get(e)),d=s.type,f;if(f=this._options.codeFormat?new M([`x.`,c,`(`],[`)`]):new M([`x.`,e,` = `],[]),d.kind===`null`||d.kind===`any`){this.emitLine(f.wrap([],[n,`get_untyped(j, `,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,l.stringEscape)(t)])]),`)`]),`;`);return}if(s.isOptional||d instanceof r.UnionType){let[e,c]=(function(){if(d instanceof r.UnionType){let[e,t]=(0,i.removeNullFromUnion)(d,!0);return[e!==null||s.isOptional,t]}else{let e=new Set;return e.add(d),[!0,e]}})();if(e){a=this.cppTypeInOptional(c,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!0),o=this.cppTypeInOptional(c,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!1,!1),this.emitLine(f.wrap([],[this._stringType.wrapEncodingChange([n],[this.optionalType(d),`<`,a,`>`],[this.optionalType(d),`<`,o,`>`],[n,`get_${this.optionalTypeLabel(d)}_optional<`,a,`>(j, `,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,l.stringEscape)(t)])]),`)`])]),`;`);return}}a=this.cppType(d,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,s.isOptional),o=this.cppType(d,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,s.isOptional),this.emitLine(f.wrap([],this._stringType.wrapEncodingChange([n],a,o,[`j.at(`,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,l.stringEscape)(t)])),`).get<`,a,`>()`])),`;`)})}),this.ensureBlankLine(),this.emitBlock([`inline void to_json(json & j, `,this.withConst([n,t]),` & x)`],!1,()=>{this.emitLine(`j = json::object();`),this.forEachClassProperty(e,`none`,(e,t,r)=>{let i=r.type;a=this.cppType(i,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!1,r.isOptional),o=this.cppType(i,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!1,!0,r.isOptional);let[s,,]=(0,u.defined)(this._gettersAndSettersForPropertyName.get(e)),c;c=this._options.codeFormat?[s,`()`]:[e];let d=[`j[`,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([(0,l.stringEscape)(t)])),`] = `,this._stringType.wrapEncodingChange([n],a,o,[`x.`,c]),`;`];r.isOptional&&this._options.hideNullOptional?this.emitBlock([`if (`,this._stringType.wrapEncodingChange([n],a,o,[`x.`,c]),`)`],!1,()=>{this.emitLine(d)}):this.emitLine(d)})})}emitEnum(e,t){let n=[],r=(0,h.enumCaseValues)(e,this.targetLanguage.name);this.forEachEnumCase(e,`none`,(e,t)=>{if(n.length>0&&n.push(`, `),n.push(e),r!==void 0){let[e]=(0,m.getAccessorName)(r,t);e!==void 0&&n.push(` = `,e.toString())}}),this.emitDescription(this.descriptionForType(e)),this.emitLine(`enum class `,t,` : `,this._enumType,` { `,n,` };`)}emitUnionTypedefs(e,t){this.emitLine(`using `,t,` = `,this.variantType(e,!1),`;`)}emitUnionHeaders(e){let t=(0,i.removeNullFromUnion)(e,!0)[1],n=this.cppTypeInOptional(t,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitLine(`template <>`),this.emitBlock([`struct adl_serializer<`,n,`>`],!0,()=>{this.emitLine(`static void from_json(`,this.withConst(`json`),` & j, `,n,` & x);`),this.emitLine(`static void to_json(json & j, `,this.withConst(n),` & x);`)})}emitUnionFunctions(e){let n=this.ourQualifier(!0),r=[[`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`]],a=(0,i.removeNullFromUnion)(e,!0)[1],o=this.cppTypeInOptional(a,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitBlock([`inline void adl_serializer<`,o,`>::from_json(`,this.withConst(`json`),` & j, `,o,` & x)`],!1,()=>{let e=!0;for(let[i,o]of r){let r=(0,t.iterableFind)(a,e=>e.kind===i);r!==void 0&&(this.emitLine(e?`if`:`else if`,` (j.`,o,`())`),this.indent(()=>{let e=this.cppType(r,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),t=this.cppType(r,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1);this.emitLine(`x = `,this._stringType.wrapEncodingChange([n],e,t,[`j.get<`,e,`>()`]),`;`)}),e=!1)}this.emitLine(`else throw "Could not deserialize";`)}),this.ensureBlankLine(),this.emitBlock([`inline void adl_serializer<`,o,`>::to_json(json & j, `,this.withConst(o),` & x)`],!1,()=>{this.emitBlock([`switch (x.`,this._variantIndexMethodName,`())`],!1,()=>{let e=0;for(let t of a)this.emitLine(`case `,e.toString(),`:`),this.indent(()=>{let e=this.cppType(t,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),r=this.cppType(t,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);this.emitLine(`j = `,this._stringType.wrapEncodingChange([n],e,r,[this._options.boost?`boost::get<`:`std::get<`,e,`>(x)`]),`;`),this.emitLine(`break;`)}),e++;this.emitLine(`default: throw "Input JSON does not conform to schema";`)})})}emitEnumHeaders(e){let t=this.ourQualifier(!1);this.emitLine(`void from_json(`,this.withConst(`json`),` & j, `,t,e,` & x);`),this.emitLine(`void to_json(json & j, `,this.withConst([t,e]),` & x);`)}isLargeEnum(e){return e.cases.size>15}emitEnumFunctions(e,t){let n=this.ourQualifier(!1);this.emitBlock([`inline void from_json(`,this.withConst(`json`),` & j, `,n,t,` & x)`],!1,()=>{if(this.isLargeEnum(e))this.emitBlock([`static std::unordered_map<`,this._stringType.getType(),`, `,n,t,`> enumValues`],!0,()=>{this.forEachEnumCase(e,`none`,(e,r)=>{this.emitLine(`{`,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,l.stringEscape)(r)])]),`, `,n,t,`::`,e,`},`)})}),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 r=!0;this.forEachEnumCase(e,`none`,(e,i)=>{let a=r?``:`else `;this.emitLine(a,`if (j == `,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,l.stringEscape)(i)])]),`) x = `,n,t,`::`,e,`;`),r=!1}),this.emitLine(`else throw "Input JSON does not conform to schema";`)}}),this.ensureBlankLine(),this.emitBlock([`inline void to_json(json & j, `,this.withConst([n,t]),` & x)`],!1,()=>{this.emitBlock(`switch (x)`,!1,()=>{this.forEachEnumCase(e,`none`,(e,r)=>{this.emitLine(`case `,n,t,`::`,e,`: j = `,this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([(0,l.stringEscape)(r)])]),`; break;`)}),this.emitLine(`default: throw "This should not happen";`)})})}emitTopLevelTypedef(e,t){this.emitLine(`using `,t,` = `,this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,!1),`;`)}emitAllUnionFunctions(){this.forEachUniqueUnion(`leading-and-interposing`,e=>this.sourcelikeToString(this.cppTypeInOptional((0,i.removeNullFromUnion)(e,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),e=>this.emitUnionFunctions(e))}emitAllUnionHeaders(){this.forEachUniqueUnion(`interposing`,e=>this.sourcelikeToString(this.cppTypeInOptional((0,i.removeNullFromUnion)(e,!0)[1],{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1)),e=>this.emitUnionHeaders(e))}emitOptionalHelpers(){this.emitLine(`#ifndef NLOHMANN_OPT_HELPER`),this.emitLine(`#define NLOHMANN_OPT_HELPER`),this.emitNamespaces([`nlohmann`],()=>{let e=(e,t)=>{this.emitLine(`template <typename T>`),this.emitBlock([`struct adl_serializer<`,e,`<T>>`],!0,()=>{this.emitBlock([`static void to_json(json & j, `,this.withConst([e,`<T>`]),` & opt)`],!1,()=>{this.emitLine(`if (!opt) j = nullptr; else j = *opt;`)}),this.ensureBlankLine(),this.emitBlock([`static `,e,`<T> from_json(`,this.withConst(`json`),` & j)`],!1,()=>{this.emitLine(`if (j.is_null()) return ${t}<T>(); else return ${t}<T>(j.get<T>());`)})})};e(this.optionalTypeHeap(),this.optionalFactoryHeap()),e(this.optionalTypeStack(),this.optionalFactoryStack())}),this.emitLine(`#endif`)}emitDeclaration(e){if(e.kind===`forward`)this._options.codeFormat?this.emitLine(`class `,this.nameForNamedType(e.type),`;`):this.emitLine(`struct `,this.nameForNamedType(e.type),`;`);else if(e.kind===`define`){let t=e.type,n=this.nameForNamedType(t);if(t instanceof r.ClassType)this.emitClass(t,n);else if(t instanceof r.EnumType)this.emitEnum(t,n);else if(t instanceof r.UnionType)this.emitUnionTypedefs(t,n);else return(0,u.panic)(`Cannot declare type ${t.kind}`)}else return(0,u.assertNever)(e.kind)}emitGetterSetter(e,t,n,r){this.emitLine(`void `,n,`(`,e,` `,r,`) { this->`,r,` = `,r,`; }`),this.emitLine(`auto `,t,`() const { return `,r,`; }`)}emitConstraintClasses(){let e=this.ourQualifier(!1),n=this.lookupMemberName(A.GetMinValue),r=this.lookupMemberName(A.GetMaxValue),i=this.lookupMemberName(A.GetMinLength),a=this.lookupMemberName(A.GetMaxLength),o=this.lookupMemberName(A.GetPattern),s=this.lookupGlobalName(k.ClassMemberConstraints);this.emitBlock([`class `,s],!0,()=>{this.emitLine(`private:`);let e=this.getConstraintMembers();for(let t of e)this.emitMember([this._optionalType,`<`,t.cppType,`>`],this.lookupMemberName(t.name));this.ensureBlankLine(),this.emitLine(`public:`),this.emitLine(s,`(`),this.indent(()=>{this.iterableForEach(e,({name:e,cppType:t},n)=>{let r=n===`first`||n===`middle`?`,`:[];this.emitLine(this._optionalType,`<`,t,`> `,this.lookupMemberName(e),r)})});let n=e.map(({name:e})=>{let t=this.lookupMemberName(e);return[t,`(`,t,`)`]});this.emitLine(`) : `,(0,t.arrayIntercalate)([`, `],n),` {}`),this.emitLine(s,`() = default;`),this.emitLine(`virtual ~`,s,`() = default;`);for(let n of e)this.ensureBlankLine(),this.emitGetterSetter((0,t.withDefault)(n.cppConstType,n.cppType),this.lookupMemberName(n.getter),this.lookupMemberName(n.setter),this.lookupMemberName(n.name))}),this.ensureBlankLine();let c=this.lookupGlobalName(k.ClassMemberConstraintException);this.emitBlock([`class `,c,` : public std::runtime_error`],!0,()=>{this.emitLine(`public:`),this.emitLine(c,`(`,this._stringType.getConstType(),` msg) : std::runtime_error(`,this._stringType.wrapEncodingChange([e],this._stringType.getType(),this.NarrowString.getType(),[`msg`]),`) {}`)}),this.ensureBlankLine();let l=[k.ValueTooLowException,k.ValueTooHighException,k.ValueTooShortException,k.ValueTooLongException,k.InvalidPatternException];for(let e of l){let t=this.lookupGlobalName(e);this.emitBlock([`class `,t,` : public `,c],!0,()=>{this.emitLine(`public:`),this.emitLine(t,`(`,this._stringType.getConstType(),` msg) : `,c,`(msg) {}`)}),this.ensureBlankLine()}let u=this.lookupGlobalName(k.CheckConstraint);this.emitBlock([`inline void `,u,`(`,this._stringType.getConstType(),` name, `,this.withConst(s),` & c, int64_t value)`],!1,()=>{this.emitBlock([`if (c.`,n,`() != `,this._nulloptType,` && value < *c.`,n,`())`],!1,()=>{this.emitLine(`throw `,this.lookupGlobalName(k.ValueTooLowException),` (`,this._stringType.createStringLiteral([`Value too low for `]),` + name + `,this._stringType.createStringLiteral([` (`]),` + `,this._stringType.wrapToString([`value`]),` + `,this._stringType.createStringLiteral([`<`]),` + `,this._stringType.wrapToString([`*c.`,n,`()`]),` + `,this._stringType.createStringLiteral([`)`]),`);`)}),this.ensureBlankLine(),this.emitBlock([`if (c.`,r,`() != `,this._nulloptType,` && value > *c.`,r,`())`],!1,()=>{this.emitLine(`throw `,this.lookupGlobalName(k.ValueTooHighException),` (`,this._stringType.createStringLiteral([`Value too high for `]),` + name + `,this._stringType.createStringLiteral([` (`]),` + `,this._stringType.wrapToString([`value`]),` + `,this._stringType.createStringLiteral([`>`]),` + `,this._stringType.wrapToString([`*c.`,r,`()`]),` + `,this._stringType.createStringLiteral([`)`]),`);`)}),this.ensureBlankLine()}),this.ensureBlankLine(),this.emitBlock([`inline void `,u,`(`,this._stringType.getConstType(),` name, `,this.withConst(s),` & c, `,this._stringType.getConstType(),` value)`],!1,()=>{this.emitBlock([`if (c.`,i,`() != `,this._nulloptType,` && value.length() < *c.`,i,`())`],!1,()=>{this.emitLine(`throw `,this.lookupGlobalName(k.ValueTooShortException),` (`,this._stringType.createStringLiteral([`Value too short for `]),` + name + `,this._stringType.createStringLiteral([` (`]),` + `,this._stringType.wrapToString([`value.length()`]),` + `,this._stringType.createStringLiteral([`<`]),` + `,this._stringType.wrapToString([`*c.`,i,`()`]),` + `,this._stringType.createStringLiteral([`)`]),`);`)}),this.ensureBlankLine(),this.emitBlock([`if (c.`,a,`() != `,this._nulloptType,` && value.length() > *c.`,a,`())`],!1,()=>{this.emitLine(`throw `,this.lookupGlobalName(k.ValueTooLongException),` (`,this._stringType.createStringLiteral([`Value too long for `]),` + name + `,this._stringType.createStringLiteral([` (`]),` + `,this._stringType.wrapToString([`value.length()`]),` + `,this._stringType.createStringLiteral([`>`]),` + `,this._stringType.wrapToString([`*c.`,a,`()`]),` + `,this._stringType.createStringLiteral([`)`]),`);`)}),this.ensureBlankLine(),this.emitBlock([`if (c.`,o,`() != `,this._nulloptType,`)`],!1,()=>{this.emitLine(this._stringType.getSMatch(),` result;`),this.emitLine(`std::regex_search(value, result, `,this._stringType.getRegex(),`( *c.`,o,`() ));`),this.emitBlock([`if (result.empty())`],!1,()=>{this.emitLine(`throw `,this.lookupGlobalName(k.InvalidPatternException),` (`,this._stringType.createStringLiteral([`Value doesn't match pattern for `]),` + name + `,this._stringType.createStringLiteral([` (`]),` + value +`,this._stringType.createStringLiteral([` != `]),` + *c.`,o,`() + `,this._stringType.createStringLiteral([`)`]),`);`)})}),this.ensureBlankLine()})}emitHelperFunctions(){this._stringType.emitHelperFunctions(),this._options.codeFormat&&(0,t.iterableSome)(this.typeGraph.allTypesUnordered(),e=>C(e)!==void 0)&&(this.emitConstraintClasses(),this.ensureBlankLine()),this.ensureBlankLine();let e=`NLOHMANN_UNTYPED_`,n=`NLOHMANN_OPTIONAL_`;if(this._namespaceNames.forEach(t=>{e+=t,e+=`_`,n+=t,n+=`_`}),e+=`HELPER`,e+=`HELPER`,this.emitLine(`#ifndef `+e),this.emitLine(`#define `+e),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 `+n),this.emitLine(`#define `+n);let e=(e,t)=>{this.emitLine(`template <typename T>`),this.emitBlock([`inline `,e,`<T> get_${t}_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<`,e,`<T>>();`)}),this.emitLine(`return `,e,`<T>();`)}),this.ensureBlankLine(),this.emitLine(`template <typename T>`),this.emitBlock([`inline `,e,`<T> get_${t}_optional(`,this.withConst(`json`),` & j, std::string property)`],!1,()=>{this.emitLine(`return get_${t}_optional<T>(j, property.data());`)})};e(this.optionalTypeHeap(),`heap`),e(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(e=>this.isLargeEnum(e))&&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`,e=>this.emitDeclaration(e)),!this._options.justTypes&&this.forEachTopLevel(`leading`,(e,t)=>this.emitTopLevelTypedef(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0)}gatherUserNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitClassHeaders(t)),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitEnumHeaders(t))})}gatherNlohmannNamespaceForwardDecls(){return this.gatherSource(()=>{this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelHeaders(e,t)),this.ensureBlankLine(),this.emitAllUnionHeaders()})}emitUserNamespaceImpls(){this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitClassFunctions(e,t)),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitEnumFunctions(e,t))}emitNlohmannNamespaceImpls(){this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelFunction(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this.ensureBlankLine(),this.emitAllUnionFunctions()}emitGenerators(){if(this._options.justTypes){let e=!1,t=this.gatherSource(()=>this.emitNamespaces(this._namespaceNames,()=>{e=this.forEachTopLevel(`none`,(e,t)=>this.emitTopLevelTypedef(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0)}));e&&(this.emitGatheredSource(t),this.ensureBlankLine())}else{let e=this.gatherUserNamespaceForwardDecls(),t=this.gatherNlohmannNamespaceForwardDecls();e.length==0&&t.length>0?this.emitNamespaces([`nlohmann`],()=>{this.emitGatheredSource(t),this.emitNlohmannNamespaceImpls()}):e.length>0&&t.length==0?this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(e),this.emitUserNamespaceImpls()}):e.length>0&&t.length>0&&(this.emitNamespaces(this._namespaceNames,()=>{this.emitGatheredSource(e)}),this.emitNamespaces([`nlohmann`],()=>{this.emitGatheredSource(t)}),this.emitNamespaces(this._namespaceNames,()=>{this.emitUserNamespaceImpls()}),this.emitNamespaces([`nlohmann`],()=>{this.emitNlohmannNamespaceImpls()}))}}emitSingleSourceStructure(e){this.startFile(e),this._generatedFiles.add(e),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(e,t,n,a){let o=this.generatedTypes(e,n);for(let e of o){let n=this.sourcelikeToString(e.name),a={kind:void 0,typeKind:void 0};if(e.type instanceof r.ClassType)a.typeKind=`class`,a.kind=e.level===0?O.Include:O.ForwardDeclare,e.forceInclude&&(a.kind=O.Include);else if(e.type instanceof r.EnumType)a.typeKind=`enum`,a.kind=O.ForwardDeclare;else if(e.type instanceof r.UnionType){a.typeKind=`union`;let[t]=(0,i.removeNullFromUnion)(e.type,!0);t===void 0?e.forceInclude?a.kind=O.Include:a.kind=O.ForwardDeclare:a.kind=O.Include}if(t.has(n)){let e=t.get(n);e!==void 0&&e.kind===O.ForwardDeclare&&t.set(n,a)}else t.set(n,a)}}emitIncludes(e,t){let n=new Map;if(e instanceof r.UnionType?this.updateIncludes(!1,n,e,t):e instanceof r.ClassType&&this.forEachClassProperty(e,`none`,(e,r,i)=>{this.updateIncludes(!0,n,i.type,t)}),n.size!==0){let e=0,r=0;n.forEach((n,i)=>{i!==t&&(n.kind===O.ForwardDeclare?e++:(this.emitInclude(!1,[i,`.hpp`]),r++))}),r>0&&this.ensureBlankLine(),e>0&&this.emitNamespaces(this._namespaceNames,()=>{n.forEach((e,n)=>{n!==t&&e.kind===O.ForwardDeclare&&(e.typeKind===`class`||e.typeKind===`union`?this._options.codeFormat?this.emitLine(`class `,n,`;`):this.emitLine(`struct `,n,`;`):e.typeKind===`enum`?this.emitLine(`enum class `,n,` : `,this._enumType,`;`):(0,u.panic)(`Invalid type "${e.typeKind}" to forward declare`))})}),this.ensureBlankLine()}}emitDefinition(e,t){let n=this.sourcelikeToString(t)+`.hpp`;this.startFile(n,!0),this._generatedFiles.add(n),this.emitIncludes(e,this.sourcelikeToString(t)),this.emitNamespaces(this._namespaceNames,()=>{this.emitDescription(this.descriptionForType(e)),this.ensureBlankLine(),this.emitLine(`using nlohmann::json;`),this.ensureBlankLine(),e instanceof r.ClassType?this.emitClass(e,t):e instanceof r.EnumType?this.emitEnum(e,t):e instanceof r.UnionType&&this.emitUnionTypedefs(e,t)}),this.finishFile()}emitMultiSourceStructure(e){!this._options.justTypes&&this.haveNamedTypes&&(this.emitHelper(),this.startFile(`Generators.hpp`,!0),this._allTypeNames.forEach(e=>{this.emitInclude(!1,[e,`.hpp`])}),this.ensureBlankLine(),this.emitGenerators(),this.finishFile()),this.forEachNamedType(`leading-and-interposing`,(e,t)=>{this.emitDefinition(e,t)},(e,t)=>{this.emitDefinition(e,t)},(e,t)=>{this.emitDefinition(e,t)}),this._generatedFiles.has(e)||(this.haveNamedTypes||this.emitHelper(),this.startFile(e),this._generatedFiles.forEach(e=>{this.emitInclude(!1,e)}),this.emitNamespaces(this._namespaceNames,()=>{this.forEachTopLevel(`leading`,(e,t)=>this.emitTopLevelTypedef(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0)}),this.finishFile())}emitSourceStructure(e){this._generatedFiles.clear(),this._allTypeNames.clear(),this.forEachDeclaration(`none`,e=>{let n=(0,i.directlyReachableTypes)(e.type,e=>(0,i.isNamedType)(e)&&(e instanceof r.ClassType||e instanceof r.EnumType||e instanceof r.UnionType)?new Set([this.sourcelikeToString(this.cppType(e,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!0,!1,!1))]):null);this._allTypeNames=(0,t.setUnion)(n,this._allTypeNames)}),this._options.typeSourceStyle?this.emitSingleSourceStructure(e):this.emitMultiSourceStructure(e)}isConversionRequired(e){return this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1)!==this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1)}};e.CPlusPlusRenderer=P})),Wa=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.ObjectiveCRenderer=e.ObjectiveCTargetLanguage=e.objcOptions=void 0;var n=a(),r=Ba(),i=wa(),o=ha(),s=Ta(),c=Ea(),l=ua(),u=Ra(),d=ra(),f=Q(),p=t(la()),m=`QT`;e.objcOptions={features:new d.EnumOption(`features`,`Interface and implementation`,[[`all`,{interface:!0,implementation:!0}],[`interface`,{interface:!0,implementation:!1}],[`implementation`,{interface:!1,implementation:!0}]]),justTypes:new d.BooleanOption(`just-types`,`Plain types only`,!1),marshallingFunctions:new d.BooleanOption(`functions`,`C-style functions`,!1),classPrefix:new d.StringOption(`class-prefix`,`Class prefix`,`PREFIX`,m),extraComments:new d.BooleanOption(`extra-comments`,`Extra comments`,!1)},e.ObjectiveCTargetLanguage=class extends r.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(t,n){return new E(this,t,(0,d.getOptionValues)(e.objcOptions,n))}};function h(e,t){let n=(0,l.splitIntoWords)(t),r=(0,l.combineWords)(n,S,l.firstUpperWordStyle,l.firstUpperWordStyle,l.allUpperWordStyle,l.allUpperWordStyle,``,b);return(0,l.addPrefixIfNecessary)(e,r)}function g(e,t=!1){e===`id`&&(e=`identifier`);let n=(0,l.splitIntoWords)(e);return t&&(n.length===0?n=[{word:`flag`,isAcronym:!1}]:!n[0].isAcronym&&y.indexOf(n[0].word)<0&&(n=[{word:`is`,isAcronym:!1},...n])),n.length>0&&v.indexOf(n[0].word)>=0&&(n=[{word:`the`,isAcronym:!1},...n]),(0,l.combineWords)(n,S,l.allLowerWordStyle,l.firstUpperWordStyle,l.allLowerWordStyle,l.allUpperWordStyle,``,b)}var _=`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`.split(`.`),v=[`id`,`hash`,`description`,`init`,`copy`,`mutableCopy`,`superclass`,`debugDescription`,`new`],y=[`is`,`are`,`were`,`was`,`will`,`all`,`some`,`many`,`has`,`have`,`had`,`does`,`do`,`requires`,`require`,`needs`,`need`];function b(e){return p.default.isAlphabetic(e)||e===95}function x(e){let t=p.default.getCategory(e);return[`Nd`,`Pc`,`Mn`,`Mc`].indexOf(t)>=0||b(e)}var S=(0,l.utf16LegalizeCharacters)(x),C=`values`,w=[`new`,C];function T(e){let t=e.lastIndexOf(`.`),n=t===-1?`m`:e.split(`.`).pop();return e=t===-1?e:e.slice(0,t),[e,n===void 0?`m`:n]}var E=class extends u.ConvenienceRenderer{constructor(e,t,r){if(super(e,t),this._options=r,r.classPrefix===m){let e=(0,f.defined)((0,n.iterableFirst)(this.topLevels.keys()));this._classPrefix=this.inferClassPrefix(e)}else this._classPrefix=r.classPrefix}inferClassPrefix(e){let t=e.length,n=0;for(;n<t&&(0,l.fastIsUpperCase)(e.charCodeAt(n));)n+=1;return n<2?m:e.slice(0,n-1)}forbiddenNamesForGlobalNamespace(){return _}forbiddenForObjectProperties(e,t){return{names:v,includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:w,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,s.funPrefixNamer)(`types`,e=>h(this._classPrefix,e))}namerForObjectProperty(e,t){return new s.Namer(`properties`,e=>g(e,t.type.kind===`bool`),[`_`,`the`,`one`,`some`,`another`])}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return new s.Namer(`enum-cases`,g,[])}namedTypeToNameForTopLevel(e){return e}emitDescriptionBlock(e){this.emitCommentLines(e,`/// `)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}emitMethod(e,t){this.emitLine(e),this.emitLine(`{`),this.indent(t),this.emitLine(`}`)}emitExtraComments(...e){if(this._options.extraComments)for(let t of e)this.emitLine(`// `,t)}startFile(e,t){(0,f.assert)(this._currentFilename===void 0,`Previous file wasn't finished`),this._currentFilename=`${this.sourcelikeToString(e)}.${t}`}finishFile(){super.finishFile((0,f.defined)(this._currentFilename)),this._currentFilename=void 0}memoryAttribute(e,t){return(0,o.matchType)(e,e=>`copy`,e=>`copy`,e=>t?`strong`:`assign`,e=>t?`strong`:`assign`,e=>t?`strong`:`assign`,e=>`copy`,e=>`copy`,e=>`strong`,e=>`copy`,e=>`assign`,e=>{let t=(0,o.nullableFromUnion)(e);return t===null?`copy`:this.memoryAttribute(t,!0)})}objcType(e,t=!1){return(0,o.matchType)(e,e=>[`id`,``],e=>[`id`,``],e=>t?[`NSNumber`,` *`]:[`BOOL`,``],e=>t?[`NSNumber`,` *`]:[`NSInteger`,``],e=>t?[`NSNumber`,` *`]:[`double`,``],e=>[`NSString`,` *`],e=>{let t=e.items,n=this.objcType(t,!0);return(0,o.isAnyOrNull)(t)?[`NSArray`,` *`]:[[`NSArray<`,n,`>`],` *`]},e=>[this.nameForNamedType(e),` *`],e=>[[`NSDictionary<NSString *, `,this.objcType(e.values,!0),`>`],` *`],e=>[this.nameForNamedType(e),` *`],e=>{let t=(0,o.nullableFromUnion)(e);return t===null?[`id`,``]:this.objcType(t,!0)})}jsonType(e){return(0,o.matchType)(e,e=>[`id`,``],e=>[`id`,``],e=>[`NSNumber`,` *`],e=>[`NSNumber`,` *`],e=>[`NSNumber`,` *`],e=>[`NSString`,` *`],e=>[`NSArray`,` *`],e=>[`NSDictionary<NSString *, id>`,` *`],e=>[[`NSDictionary<NSString *, `,this.jsonType(e.values),`>`],` *`],e=>[`NSString`,` *`],e=>{let t=(0,o.nullableFromUnion)(e);return t===null?[`id`,``]:this.jsonType(t)})}fromDynamicExpression(e,...t){return(0,o.matchType)(e,e=>t,e=>t,e=>t,e=>t,e=>t,e=>t,e=>[`map(`,t,`, λ(id x, `,this.fromDynamicExpression(e.items,`x`),`))`],e=>[`[`,this.nameForNamedType(e),` fromJSONDictionary:`,t,`]`],e=>[`map(`,t,`, λ(id x, `,this.fromDynamicExpression(e.values,`x`),`))`],e=>[`[`,this.nameForNamedType(e),` withValue:`,t,`]`],e=>{let n=(0,o.nullableFromUnion)(e);return n===null?t:this.fromDynamicExpression(n,t)})}toDynamicExpression(e,t){return(0,o.matchType)(e,e=>[`NSNullify(`,t,`)`],e=>[`NSNullify(`,t,`)`],e=>[t,` ? @YES : @NO`],e=>t,e=>t,e=>t,e=>this.implicitlyConvertsFromJSON(e)?t:[`map(`,t,`, λ(id x, `,this.toDynamicExpression(e.items,`x`),`))`],e=>[`[`,t,` JSONDictionary]`],e=>this.implicitlyConvertsFromJSON(e)?t:[`map(`,t,`, λ(id x, `,this.toDynamicExpression(e.values,`x`),`))`],e=>[`[`,t,` value]`],e=>{let n=(0,o.nullableFromUnion)(e);return n===null?t:this.implicitlyConvertsFromJSON(n)?[`NSNullify(`,t,`)`]:[`NSNullify(`,this.toDynamicExpression(n,t),`)`]})}implicitlyConvertsFromJSON(e){if(e instanceof i.ClassType||e instanceof i.EnumType)return!1;if(e instanceof i.ArrayType)return this.implicitlyConvertsFromJSON(e.items);if(e instanceof i.MapType)return this.implicitlyConvertsFromJSON(e.values);if(e.isPrimitive())return!0;if(e instanceof i.UnionType){let t=(0,o.nullableFromUnion)(e);return t===null?!0:this.implicitlyConvertsFromJSON(t)}else return!1}implicitlyConvertsToJSON(e){return this.implicitlyConvertsFromJSON(e)&&e.kind!==`bool`}emitPropertyAssignment(e,t,n){let r=[`_`,e];(0,o.matchType)(n,e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,r),`;`),e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,[`(id)`,r]),`;`),e=>{let t=e.values;this.emitLine(r,` = map(`,r,`, `,[`λ(id x, `,this.fromDynamicExpression(t,`x`),`)`],`);`)},e=>this.emitLine(r,` = `,this.fromDynamicExpression(e,[`(id)`,r]),`;`),n=>{let i=(0,o.nullableFromUnion)(n);i===null?this.emitLine(r,` = `,this.fromDynamicExpression(n,r),`;`):this.emitPropertyAssignment(e,t,i)})}emitPrivateClassInterface(e,t){this.emitLine(`@interface `,t,` (JSONConversion)`),this.emitLine(`+ (instancetype)fromJSONDictionary:(NSDictionary *)dict;`),this.emitLine(`- (NSDictionary *)JSONDictionary;`),this.emitLine(`@end`)}pointerAwareTypeName(e){let t=e instanceof i.Type?this.objcType(e):e;return t[1]===``?[t,` `]:t}emitNonClassTopLevelTypedef(e,t){let n=this.objcType(e)[0];this.emitLine(`typedef `,n,` `,t,`;`)}topLevelFromDataPrototype(e){return[e,` *_Nullable `,e,`FromData(NSData *data, NSError **error)`]}topLevelFromJSONPrototype(e){return[e,` *_Nullable `,e,`FromJSON(NSString *json, NSStringEncoding encoding, NSError **error)`]}topLevelToDataPrototype(e,t=!1){let n=this.variableNameForTopLevel(e);return[`NSData`,t?(0,l.repeatString)(` `,this.sourcelikeToString(e).length-6):``,` *_Nullable `,e,`ToData(`,e,` *`,n,`, NSError **error)`]}topLevelToJSONPrototype(e,t=!1){let n=this.variableNameForTopLevel(e);return[`NSString`,t?(0,l.repeatString)(` `,this.sourcelikeToString(e).length-8):``,` *_Nullable `,e,`ToJSON(`,e,` *`,n,`, NSStringEncoding encoding, NSError **error)`]}emitTopLevelFunctionDeclarations(e,t){this.emitLine(this.topLevelFromDataPrototype(t),`;`),this.emitLine(this.topLevelFromJSONPrototype(t),`;`),this.emitLine(this.topLevelToDataPrototype(t,!0),`;`),this.emitLine(this.topLevelToJSONPrototype(t,!0),`;`)}emitTryCatchAsError(e,t){this.emitLine(`@try {`),this.indent(e),this.emitLine(`} @catch (NSException *exception) {`),this.indent(()=>{this.emitLine(`*error = [NSError errorWithDomain:@"JSONSerialization" code:-1 userInfo:@{ @"exception": exception }];`),t()}),this.emitLine(`}`)}emitTopLevelFunctions(e,t){let n=this.variableNameForTopLevel(t);this.ensureBlankLine(),this.emitMethod(this.topLevelFromDataPrototype(t),()=>{this.emitTryCatchAsError(()=>{this.emitLine(`id json = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:error];`),this.emitLine(`return *error ? nil : `,this.fromDynamicExpression(e,`json`),`;`)},()=>this.emitLine(`return nil;`))}),this.ensureBlankLine(),this.emitMethod(this.topLevelFromJSONPrototype(t),()=>{this.emitLine(`return `,t,`FromData([json dataUsingEncoding:encoding], error);`)}),this.ensureBlankLine(),this.emitMethod(this.topLevelToDataPrototype(t),()=>{this.emitTryCatchAsError(()=>{this.emitLine(`id json = `,this.toDynamicExpression(e,n),`;`),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(t),()=>{this.emitLine(`NSData *data = `,t,`ToData(`,n,`, error);`),this.emitLine(`return data ? [[NSString alloc] initWithData:data encoding:encoding] : nil;`)})}emitClassInterface(e,t){let r=(0,n.mapContains)(this.topLevels,e);this.emitDescription(this.descriptionForType(e)),this.emitLine(`@interface `,t,` : NSObject`),this.emitPropertyTable(e,(e,t,n)=>{let r=[`nonatomic`];return n.type.isNullable&&r.push(`nullable`),r.push(this.memoryAttribute(n.type,n.type.isNullable)),[[`@property `,[`(`,r.join(`, `),`)`],` `],[this.pointerAwareTypeName(n.type),e,`;`]]}),!this._options.justTypes&&r&&(e.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(e){let t=!1;return this.forEachClassProperty(e,`none`,(e,n)=>{t||=(0,l.stringEscape)(n)!==this.sourcelikeToString(e)}),t}hasUnsafeProperties(e){let t=!1;return this.forEachClassProperty(e,`none`,(e,n,r)=>{t||=!this.implicitlyConvertsToJSON(r.type)}),t}emitClassImplementation(e,t){let r=(0,n.mapContains)(this.topLevels,e),i=this.hasIrregularProperties(e),a=this.hasUnsafeProperties(e);this.emitLine(`@implementation `,t),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(e,`none`,(e,t)=>this.emitLine(`@"${(0,l.stringEscape)(t)}": @"`,e,`",`))}),this.emitLine(`};`)}),this.ensureBlankLine(),r&&(this.emitMethod(`+ (_Nullable instancetype)fromData:(NSData *)data error:(NSError *_Nullable *)error`,()=>{this.emitLine(`return `,t,`FromData(data, error);`)}),this.ensureBlankLine(),this.emitMethod(`+ (_Nullable instancetype)fromJSON:(NSString *)json encoding:(NSStringEncoding)encoding error:(NSError *_Nullable *)error`,()=>{this.emitLine(`return `,t,`FromJSON(json, encoding, error);`)}),this.ensureBlankLine()),this.emitMethod(`+ (instancetype)fromJSONDictionary:(NSDictionary *)dict`,()=>{this.emitLine(`return dict ? [[`,t,` 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(e,`none`,(e,t,n)=>{this.implicitlyConvertsFromJSON(n.type)||this.emitPropertyAssignment(e,t,n.type)})}),this.emitLine(`return self;`)}),this.ensureBlankLine(),this.emitMethod(`- (void)setValue:(nullable id)value forKey:(NSString *)key`,()=>{this.emitLine(`id resolved = `,t,`.properties[key];`),this.emitLine(`if (resolved) [super setValue:value forKey:resolved];`)}),this.ensureBlankLine(),this.emitMethod(`- (void)setNilValueForKey:(NSString *)key`,()=>{this.emitLine(`id resolved = `,t,`.properties[key];`),this.emitLine(`if (resolved) [super setValue:@(0) forKey:resolved];`)}),this.ensureBlankLine(),this.emitMethod(`- (NSDictionary *)JSONDictionary`,()=>{if(!i&&!a){this.emitLine(`return [self dictionaryWithValuesForKeys:`,t,`.properties.allValues];`);return}this.emitLine(`id dict = [[self dictionaryWithValuesForKeys:`,t,`.properties.allValues] mutableCopy];`),this.ensureBlankLine(),i&&(this.emitExtraComments(`Rewrite property names that differ in JSON`),this.emitBlock([`for (id jsonName in `,t,`.properties)`],()=>{this.emitLine(`id propertyName = `,t,`.properties[jsonName];`),this.emitBlock(`if (![jsonName isEqualToString:propertyName])`,()=>{this.emitLine(`dict[jsonName] = dict[propertyName];`),this.emitLine(`[dict removeObjectForKey:propertyName];`)})})),a&&(this.ensureBlankLine(),this.emitExtraComments(`Map values that need translation`),this.emitLine(`[dict addEntriesFromDictionary:@{`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{if(!this.implicitlyConvertsToJSON(n.type)){let r=(0,l.stringEscape)(t),i=[`_`,e];this.emitLine(`@"`,r,`": `,this.toDynamicExpression(n.type,i),`,`)}})}),this.emitLine(`}];`)),this.ensureBlankLine(),this.emitLine(`return dict;`)}),r&&(this.ensureBlankLine(),this.emitMethod(`- (NSData *_Nullable)toData:(NSError *_Nullable *)error`,()=>{this.emitLine(`return `,t,`ToData(self, error);`)}),this.ensureBlankLine(),this.emitMethod(`- (NSString *_Nullable)toJSON:(NSStringEncoding)encoding error:(NSError *_Nullable *)error`,()=>{this.emitLine(`return `,t,`ToJSON(self, encoding, error);`)}))),this.emitLine(`@end`)}emitMark(e){this.ensureBlankLine(),this.emitLine(`#pragma mark - ${e}`),this.ensureBlankLine()}variableNameForTopLevel(e){return(0,c.modifySource)(e=>(e=e.slice(this._classPrefix.length),(0,l.camelCase)(e)),e)}emitPseudoEnumInterface(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`@interface `,t,` : NSObject`),this.emitLine(`@property (nonatomic, readonly, copy) NSString *value;`),this.emitLine(`+ (instancetype _Nullable)withValue:(NSString *)value;`),this.forEachEnumCase(e,`none`,(e,n)=>{this.emitLine(`+ (`,t,` *)`,e,`;`)}),this.emitLine(`@end`)}emitPseudoEnumImplementation(e,t){this.emitLine(`@implementation `,t);let n=[t,`.`,C];this.emitMethod([`+ (NSDictionary<NSString *, `,t,` *> *)`,C],()=>{this.emitLine(`static NSDictionary<NSString *, `,t,` *> *`,C,`;`),this.emitLine(`return `,C,` = `,C,` ? `,C,` : @{`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,n)=>{let r=[`@"`,(0,l.stringEscape)(n),`"`];this.emitLine(r,`: [[`,t,` alloc] initWithValue:`,r,`],`)})}),this.emitLine(`};`)}),this.ensureBlankLine(),this.forEachEnumCase(e,`none`,(e,r)=>{this.emitLine(`+ (`,t,` *)`,e,` { return `,n,`[@"`,(0,l.stringEscape)(r),`"]; }`)}),this.ensureBlankLine(),this.emitMethod(`+ (instancetype _Nullable)withValue:(NSString *)value`,()=>this.emitLine(`return `,n,`[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(e){if(e===`stdout`){let t=(0,f.defined)((0,n.mapFirst)(this.topLevels));e=this.sourcelikeToString(this.nameForNamedType(t))+`.m`}let[t,r]=T(e);if(this._options.features.interface){this.startFile(t,`h`),this.leadingComments===void 0?this._options.justTypes||(this.emitCommentLines([`To parse this JSON:`,``]),this.emitLine(`// NSError *error;`),this.forEachTopLevel(`none`,(e,t)=>{let n=e instanceof i.ClassType?[`[`,t,` fromJSON:json encoding:NSUTF8Encoding error:&error];`]:[t,`FromJSON(json, NSUTF8Encoding, &error);`];this.emitLine(`// `,t,` *`,this.variableNameForTopLevel(t),` = `,n)})):this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitLine(`#import <Foundation/Foundation.h>`),this.ensureBlankLine(),this.forEachNamedType(`none`,(e,t)=>this.emitLine(`@class `,t,`;`),(e,t)=>this.emitLine(`@class `,t,`;`),()=>null),this.ensureBlankLine(),this.ensureBlankLine(),this.emitLine(`NS_ASSUME_NONNULL_BEGIN`),this.ensureBlankLine(),this.haveEnums&&(this.emitMark(`Boxed enums`),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitPseudoEnumInterface(e,t))),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitNonClassTopLevelTypedef(e,t),e=>!(e instanceof i.ClassType));let e=(0,n.iterableSome)(this.topLevels,([e,t])=>!(t instanceof i.ClassType));!this._options.justTypes&&(e||this._options.marshallingFunctions)&&(this.ensureBlankLine(),this.emitMark(`Top-level marshaling functions`),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelFunctionDeclarations(e,t),e=>this._options.marshallingFunctions||!(e instanceof i.ClassType))),this.emitMark(`Object interfaces`),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassInterface(e,t),()=>null,()=>null),this.ensureBlankLine(),this.emitLine(`NS_ASSUME_NONNULL_END`),this.finishFile()}this._options.features.implementation&&(this.startFile(t,r),this.emitLine(`#import "${t}.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`,(e,t)=>this.emitPrivateClassInterface(e,t),()=>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`,(e,t)=>this.emitPseudoEnumImplementation(e,t))),this.ensureBlankLine(),this.emitMapFunction(),this.ensureBlankLine(),this.emitMark(`JSON serialization`),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelFunctions(e,t))),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassImplementation(e,t),()=>null,()=>null),this._options.justTypes||(this.ensureBlankLine(),this.emitLine(`NS_ASSUME_NONNULL_END`)),this.finishFile())}get needsMap(){function e(t){return t instanceof i.MapType||t instanceof i.ArrayType||t instanceof i.ClassType&&(0,n.mapSome)(t.getProperties(),t=>e(t.type))}return(0,n.iterableSome)(this.typeGraph.allTypesUnordered(),e)}emitMapFunction(){this.needsMap&&this.emitMultiline(`static id map(id collection, id (^f)(id value)) {
347
+ id result = nil;
348
+ if ([collection isKindOfClass:NSArray.class]) {
349
+ result = [NSMutableArray arrayWithCapacity:[collection count]];
350
+ for (id x in collection) [result addObject:f(x)];
351
+ } else if ([collection isKindOfClass:NSDictionary.class]) {
352
+ result = [NSMutableDictionary dictionaryWithCapacity:[collection count]];
353
+ for (id key in collection) [result setObject:f([collection objectForKey:key]) forKey:key];
354
+ }
355
+ return result;
356
+ }`)}};e.ObjectiveCRenderer=E})),Ga=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.JacksonRenderer=e.JavaRenderer=e.javaNameStyle=e.stringEscape=e.JavaTargetLanguage=e.javaOptions=void 0;var t=Da(),n=Ra(),r=Ta(),i=ra(),a=Ea(),o=ia(),s=ua(),c=Q(),l=Ba(),u=wa(),d=ha();e.javaOptions={classStyle:new i.EnumOption(`class-style`,`Style of generated Java classes`,[[`java`,`java`],[`java-record`,`java-record`],[`lombok`,`lombok`]],`java`),useList:new i.EnumOption(`array-type`,`Use T[] or List<T>`,[[`array`,!1],[`list`,!0]],`array`),justTypes:new i.BooleanOption(`just-types`,`Plain types only`,!1),dateTimeProvider:new i.EnumOption(`datetime-provider`,`Date time provider type`,[[`java8`,`java8`],[`legacy`,`legacy`]],`java8`),acronymStyle:(0,o.acronymOption)(o.AcronymStyleOptions.Pascal),packageName:new i.StringOption(`package`,`Generated package name`,`NAME`,`io.quicktype`),lombokCopyAnnotations:new i.BooleanOption(`lombok-copy-annotations`,`Copy accessor annotations`,!0,`secondary`)},e.JavaTargetLanguage=class extends l.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(t,n){let r=(0,i.getOptionValues)(e.javaOptions,n);return r.justTypes?new b(this,t,r):new x(this,t,r)}get stringTypeMapping(){let e=new Map;return e.set(`date`,`date`),e.set(`time`,`time`),e.set(`date-time`,`date-time`),e.set(`uuid`,`uuid`),e}};var f=`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`.split(`.`);e.stringEscape=(0,s.utf16ConcatMap)((0,s.escapeNonPrintableMapper)(s.isAscii,s.standardUnicodeHexEscape));function p(e){return e===95?!0:(0,s.isAscii)(e)&&(0,s.isLetter)(e)}function m(e){return p(e)||(0,s.isAscii)(e)&&(0,s.isDigit)(e)}var h=(0,s.utf16LegalizeCharacters)(m);function g(e,t,n,r=s.allUpperWordStyle){let i=(0,s.splitIntoWords)(n);return(0,s.combineWords)(i,h,t?s.allUpperWordStyle:e?s.firstUpperWordStyle:s.allLowerWordStyle,t?s.allUpperWordStyle:s.firstUpperWordStyle,t||e?s.allUpperWordStyle:s.allLowerWordStyle,r,t?`_`:``,p)}e.javaNameStyle=g;var _=class{constructor(e,t){this._renderer=e,this._className=t,this.shouldEmitDateTimeConverter=!0,this.shouldEmitTimeConverter=!0,this.shouldEmitDateConverter=!0}},v=class extends _{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(e){return[this._className,`.parseDateTimeString(`,e,`)`]}convertStringToTime(e){return[this._className,`.parseTimeString(`,e,`)`]}convertStringToDate(e){return[`LocalDate.parse(`,e,`)`]}convertDateTimeToString(e){return[e,`.format(java.time.format.DateTimeFormatter.ISO_OFFSET_DATE_TIME)`]}convertTimeToString(e){return[e,`.format(java.time.format.DateTimeFormatter.ISO_OFFSET_TIME)`]}convertDateToString(e){return[e,`.format(java.time.format.DateTimeFormatter.ISO_DATE)`]}},y=class extends _{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(e){return[this._className,`.parseAllDateTimeString(`,e,`)`]}convertStringToTime(e){return[this._className,`.parseAllDateTimeString(`,e,`)`]}convertStringToDate(e){return[this._className,`.parseAllDateTimeString(`,e,`)`]}convertDateTimeToString(e){return[this._className,`.serializeDateTime(`,e,`)`]}convertTimeToString(e){return[this._className,`.serializeTime(`,e,`)`]}convertDateToString(e){return[this._className,`.serializeDate(`,e,`)`]}},b=class extends n.ConvenienceRenderer{constructor(e,t,n){switch(super(e,t),this._options=n,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname=`Converter`,this._converterKeywords=[],n.dateTimeProvider){default:case`java8`:this._dateTimeProvider=new v(this,this._converterClassname);break;case`legacy`:this._dateTimeProvider=new y(this,this._converterClassname);break}}forbiddenNamesForGlobalNamespace(){return[...f,...this._converterKeywords,this._converterClassname,...this._dateTimeProvider.keywords]}forbiddenForObjectProperties(e,t){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(e){return(0,d.nullableFromUnion)(e)===null}namedTypeToNameForTopLevel(e){return(0,d.directlyReachableSingleNamedType)(e)}makeNamesForPropertyGetterAndSetter(e,t,n,i,a){return[new r.DependencyName(this.getNameStyling(`propertyNamingFunction`),a.order,e=>`get_${e(a)}`),new r.DependencyName(this.getNameStyling(`propertyNamingFunction`),a.order,e=>`set_${e(a)}`)]}makePropertyDependencyNames(e,t,n,r,i){let a=this.makeNamesForPropertyGetterAndSetter(e,t,n,r,i);return this._gettersAndSettersForPropertyName.set(i,a),a}getNameStyling(e){return{typeNamingFunction:(0,r.funPrefixNamer)(`types`,e=>g(!0,!1,e,(0,o.acronymStyle)(this._options.acronymStyle))),propertyNamingFunction:(0,r.funPrefixNamer)(`properties`,e=>g(!1,!1,e,(0,o.acronymStyle)(this._options.acronymStyle))),enumCaseNamingFunction:(0,r.funPrefixNamer)(`enum-cases`,e=>g(!0,!0,e,(0,o.acronymStyle)(this._options.acronymStyle)))}[e]}fieldOrMethodName(e,t){return this.topLevels.size===1?e:[t,(0,s.capitalize)(e)]}methodName(e,t,n){return this.topLevels.size===1?[e,t]:[e,n,t]}decoderName(e){return this.fieldOrMethodName(`fromJsonString`,e)}encoderName(e){return this.fieldOrMethodName(`toJsonString`,e)}readerGetterName(e){return this.methodName(`get`,`ObjectReader`,e)}writerGetterName(e){return this.methodName(`get`,`ObjectWriter`,e)}startFile(e){(0,c.assert)(this._currentFilename===void 0,`Previous file wasn't finished`),this._currentFilename=`${this.sourcelikeToString(e)}.java`,this.ensureBlankLine(),!this._haveEmittedLeadingComments&&this.leadingComments!==void 0&&(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){super.finishFile((0,c.defined)(this._currentFilename)),this._currentFilename=void 0}emitPackageAndImports(e){this.emitLine(`package `,this._options.packageName,`;`),this.ensureBlankLine();for(let t of e)this.emitLine(`import `,t,`;`)}emitFileHeader(e,t){this.startFile(e),this.emitPackageAndImports(t),this.ensureBlankLine()}emitDescriptionBlock(e){this.emitCommentLines(e,` * `,`/**`,` */`)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}emitTryCatch(e,t,n=`Exception`){this.emitLine(`try {`),this.indent(e),this.emitLine(`} catch (`,n,` ex) {`),this.indent(t),this.emitLine(`}`)}emitIgnoredTryCatchBlock(e){this.emitTryCatch(e,()=>this.emitLine(`// Ignored`))}javaType(e,n,r=!1){return(0,d.matchType)(n,e=>(0,a.maybeAnnotated)(r,t.anyTypeIssueAnnotation,`Object`),e=>(0,a.maybeAnnotated)(r,t.nullTypeIssueAnnotation,`Object`),t=>e?`Boolean`:`boolean`,t=>e?`Long`:`long`,t=>e?`Double`:`double`,e=>`String`,e=>this._options.useList?[`List<`,this.javaType(!0,e.items,r),`>`]:[this.javaType(!1,e.items,r),`[]`],e=>this.nameForNamedType(e),e=>[`Map<String, `,this.javaType(!0,e.values,r),`>`],e=>this.nameForNamedType(e),e=>{let t=(0,d.nullableFromUnion)(e);return t===null?this.nameForNamedType(e):this.javaType(!0,t,r)},e=>e.kind===`time`?this._dateTimeProvider.timeType:e.kind===`date`?this._dateTimeProvider.dateType:e.kind===`date-time`?this._dateTimeProvider.dateTimeType:e.kind===`uuid`?`UUID`:`String`)}javaImport(e){return(0,d.matchType)(e,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=>{let t=[];return e.members.forEach(e=>this.javaImport(e).forEach(e=>t.push(e))),t},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(e,t){if(t instanceof u.ArrayType)return this._options.useList?[`List`]:[this.javaTypeWithoutGenerics(!1,t.items),`[]`];if(t instanceof u.MapType)return`Map`;if(t instanceof u.UnionType){let e=(0,d.nullableFromUnion)(t);return e===null?this.nameForNamedType(t):this.javaTypeWithoutGenerics(!0,e)}else return this.javaType(e,t)}emitClassAttributes(e,t){this._options.classStyle===`lombok`&&this.emitLine(`@lombok.Data`)}annotationsForAccessor(e,t,n,r,i,a){return[]}importsForType(e){return e instanceof u.ClassType?[]:e instanceof u.UnionType||e instanceof u.EnumType?[`java.io.IOException`]:(0,c.assertNever)(e)}importsForClass(e){let t=[];return this.forEachClassProperty(e,`none`,(e,n,r)=>{this.javaImport(r.type).forEach(e=>t.push(e))}),t.sort(),[...new Set(t)]}importsForUnionMembers(e){let t=[],[,n]=(0,d.removeNullFromUnion)(e);return this.forEachUnionMember(e,n,`none`,null,(e,n)=>{this.javaImport(n).forEach(e=>t.push(e))}),t.sort(),[...new Set(t)]}emitClassDefinition(e,t){let n=[...this.importsForType(e),...this.importsForClass(e)];if(this.emitFileHeader(t,n),this.emitDescription(this.descriptionForType(e)),this.emitClassAttributes(e,t),this._options.classStyle===`java-record`)return this.emitClassRecordDefinition(e,t);this.emitBlock([`public class `,t],()=>{this.forEachClassProperty(e,`none`,(n,r,i)=>{if(this._options.classStyle===`lombok`&&this._options.lombokCopyAnnotations){let a=this.annotationsForAccessor(e,t,n,r,i,!1),o=this.annotationsForAccessor(e,t,n,r,i,!0);a.length!==0&&this.emitLine(`@lombok.Getter(onMethod_ = {`+a.join(`, `)+`})`),o.length!==0&&this.emitLine(`@lombok.Setter(onMethod_ = {`+o.join(`, `)+`})`)}this.emitLine(`private `,this.javaType(!1,i.type,!0),` `,n,`;`)}),this._options.classStyle!==`lombok`&&this.forEachClassProperty(e,`leading-and-interposing`,(n,r,i)=>{this.emitDescription(this.descriptionForClassProperty(e,r));let[a,o]=(0,c.defined)(this._gettersAndSettersForPropertyName.get(n)),s=this.javaType(!1,i.type);this.annotationsForAccessor(e,t,n,r,i,!1).forEach(e=>this.emitLine(e)),this.emitLine(`public `,s,` `,a,`() { return `,n,`; }`),this.annotationsForAccessor(e,t,n,r,i,!0).forEach(e=>this.emitLine(e)),this.emitLine(`public void `,o,`(`,s,` value) { this.`,n,` = value; }`)})}),this.finishFile()}emitClassRecordDefinition(e,t){this.emitLine(`public record `,t,` (`),this.indent(()=>{this.forEachClassProperty(e,`leading-and-interposing`,(n,r,i,a)=>{this.annotationsForAccessor(e,t,n,r,i,!1).forEach(e=>this.emitLine(e));let o=this.javaType(!1,i.type),s=a===`first`||a===`middle`?`,`:[];this.emitLine(o,` `,n,s)})}),this.emitLine(`) {}`),this.finishFile()}unionField(e,t,n=!1){return{fieldType:this.javaType(!0,t,n),fieldName:[this.nameForUnionMember(e,t),`Value`]}}emitUnionAttributes(e,t){}emitUnionSerializer(e,t){}emitUnionDefinition(e,t){let n=[...this.importsForType(e),...this.importsForUnionMembers(e)];this.emitFileHeader(t,n),this.emitDescription(this.descriptionForType(e));let[,r]=(0,d.removeNullFromUnion)(e);this.emitUnionAttributes(e,t),this.emitBlock([`public class `,t],()=>{for(let t of r){let{fieldType:n,fieldName:r}=this.unionField(e,t,!0);this.emitLine(`public `,n,` `,r,`;`)}this.emitUnionSerializer(e,t)}),this.finishFile()}emitEnumSerializationAttributes(e){}emitEnumDeserializationAttributes(e){}emitEnumDefinition(t,n){this.emitFileHeader(n,this.importsForType(t)),this.emitDescription(this.descriptionForType(t));let r=[];this.forEachEnumCase(t,`none`,e=>{r.length>0&&r.push(`, `),r.push(e)}),r.push(`;`),this.emitBlock([`public enum `,n],()=>{this.emitLine(r),this.ensureBlankLine(),this.emitEnumSerializationAttributes(t),this.emitBlock(`public String toValue()`,()=>{this.emitLine(`switch (this) {`),this.indent(()=>{this.forEachEnumCase(t,`none`,(t,n)=>{this.emitLine(`case `,t,`: return "`,(0,e.stringEscape)(n),`";`)})}),this.emitLine(`}`),this.emitLine(`return null;`)}),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(t),this.emitBlock([`public static `,n,` forValue(String value) throws IOException`],()=>{this.forEachEnumCase(t,`none`,(t,n)=>{this.emitLine(`if (value.equals("`,(0,e.stringEscape)(n),`")) return `,t,`;`)}),this.emitLine(`throw new IOException("Cannot deserialize `,n,`");`)})}),this.finishFile()}emitSourceStructure(){this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>this.emitUnionDefinition(e,t))}};e.JavaRenderer=b;var x=class extends b{constructor(e,t,n){super(e,t,n),this._converterKeywords=[`JsonProperty`,`JsonDeserialize`,`JsonDeserializer`,`JsonSerialize`,`JsonSerializer`,`JsonParser`,`JsonProcessingException`,`DeserializationContext`,`SerializerProvider`]}emitClassAttributes(e,t){e.getProperties().size===0&&this.emitLine(`@JsonAutoDetect(fieldVisibility=JsonAutoDetect.Visibility.NONE)`),super.emitClassAttributes(e,t)}annotationsForAccessor(t,n,r,i,a,o){let s=super.annotationsForAccessor(t,n,r,i,a,o),c=[`@JsonProperty("`+(0,e.stringEscape)(i)+`")`];switch(a.type.kind){case`date-time`:this._dateTimeProvider.dateTimeJacksonAnnotations.forEach(e=>c.push(e));break;case`date`:this._dateTimeProvider.dateJacksonAnnotations.forEach(e=>c.push(e));break;case`time`:this._dateTimeProvider.timeJacksonAnnotations.forEach(e=>c.push(e));break;default:break}return[...s,...c]}importsForType(e){if(e instanceof u.ClassType){let t=super.importsForType(e);return t.push(`com.fasterxml.jackson.annotation.*`),t}if(e instanceof u.UnionType){let t=super.importsForType(e);return t.push(`java.io.IOException`,`com.fasterxml.jackson.core.*`,`com.fasterxml.jackson.databind.*`,`com.fasterxml.jackson.databind.annotation.*`),this._options.useList&&t.push(`com.fasterxml.jackson.core.type.*`),t}if(e instanceof u.EnumType){let t=super.importsForType(e);return t.push(`com.fasterxml.jackson.annotation.*`),t}return(0,c.assertNever)(e)}emitUnionAttributes(e,t){this.emitLine(`@JsonDeserialize(using = `,t,`.Deserializer.class)`),this.emitLine(`@JsonSerialize(using = `,t,`.Serializer.class)`)}emitUnionSerializer(e,t){let n=[`uuid`,`time`,`date`,`date-time`],r=e=>{this.emitLine(`case `,e,`:`)},i=()=>{this.indent(()=>{r(`VALUE_NULL`),this.indent(()=>this.emitLine(`break;`))})},a=(e,t,n)=>{switch(t){case`date`:this.emitLine(`value.`,e,` = `,this._dateTimeProvider.convertStringToDate(n),`;`);break;case`time`:this.emitLine(`value.`,e,` = `,this._dateTimeProvider.convertStringToTime(n),`;`);break;case`date-time`:this.emitLine(`value.`,e,` = `,this._dateTimeProvider.convertStringToDateTime(n),`;`);break;case`uuid`:this.emitLine(`value.`,e,` = UUID.fromString(`,n,`);`);break;default:return(0,c.panic)(`Requested type isnt an object!`)}},o=(t,r=``)=>{let{fieldName:i}=this.unionField(e,t),o=this.javaTypeWithoutGenerics(!0,t);if(this._options.useList&&t instanceof u.ArrayType)this.emitLine(`value.`,i,` = jsonParser.readValueAs(new TypeReference<`,o,`>() {});`);else if(n.some(e=>t.kind===e))a(i,t.kind,r);else if(t.kind===`string`)this.emitLine(`value.`,i,` = `,r,`;`);else if(t.kind===`enum`){let{fieldType:n}=this.unionField(e,t,!0);this.emitLine(`value.`,i,` = `,n,`.forValue(`,r,`);`)}else this.emitLine(`value.`,i,` = jsonParser.readValueAs(`,o,`.class);`)},s=(t,n)=>{let i=e.findMember(n);i!==void 0&&this.indent(()=>{for(let e of t)r(e);this.indent(()=>{o(i),this.emitLine(`break;`)})})},l=()=>{let t=e.findMember(`enum`),i=e.findMember(`string`);n.every(t=>e.findMember(t)===void 0)&&i===void 0&&t===void 0||this.indent(()=>{r(`VALUE_STRING`),this.indent(()=>{let r=`string`;this.emitLine(`String `+r+` = jsonParser.readValueAs(String.class);`),n.forEach(t=>{let n=e.findMember(t);n!==void 0&&this.emitIgnoredTryCatchBlock(()=>{o(n,r)})}),t!==void 0&&this.emitIgnoredTryCatchBlock(()=>{o(t,r)}),i!==void 0&&o(i,r),this.emitLine(`break;`)})})},f=()=>{let t=e.findMember(`integer`),n=e.findMember(`double`);n===void 0&&t===void 0||this.indent(()=>{r(`VALUE_NUMBER_INT`),t!==void 0&&this.indent(()=>{o(t),this.emitLine(`break;`)}),n!==void 0&&(r(`VALUE_NUMBER_FLOAT`),this.indent(()=>{o(n),this.emitLine(`break;`)}))})},p=[`time`,`date`,`date-time`],m=(e,t)=>{switch(e.kind){case`date`:return this._dateTimeProvider.convertDateToString(t);case`time`:return this._dateTimeProvider.convertTimeToString(t);case`date-time`:return this._dateTimeProvider.convertDateTimeToString(t);default:return(0,c.panic)(`Requested type doesn't have custom serializer code!`)}},h=t=>{let{fieldName:n}=this.unionField(e,t,!0);this.emitBlock([`if (obj.`,n,` != null)`],()=>{p.some(e=>t.kind===e)?this.emitLine(`jsonGenerator.writeObject(`,m(t,[`obj.`,n]),`);`):this.emitLine(`jsonGenerator.writeObject(obj.`,n,`);`),this.emitLine(`return;`)})},[g,_]=(0,d.removeNullFromUnion)(e);this.ensureBlankLine(),this.emitBlock([`static class Deserializer extends JsonDeserializer<`,t,`>`],()=>{this.emitLine(`@Override`),this.emitBlock([`public `,t,` deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException, JsonProcessingException`],()=>{this.emitLine(t,` value = new `,t,`();`),this.emitLine(`switch (jsonParser.currentToken()) {`),g!==null&&i(),f(),s([`VALUE_TRUE`,`VALUE_FALSE`],`bool`),l(),s([`START_ARRAY`],`array`),s([`START_OBJECT`],`class`),s([`START_OBJECT`],`map`),this.indent(()=>this.emitLine(`default: throw new IOException("Cannot deserialize `,t,`");`)),this.emitLine(`}`),this.emitLine(`return value;`)})}),this.ensureBlankLine(),this.emitBlock([`static class Serializer extends JsonSerializer<`,t,`>`],()=>{this.emitLine(`@Override`),this.emitBlock([`public void serialize(`,t,` obj, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException`],()=>{for(let e of _)h(e);g===null?this.emitLine(`throw new IOException("`,t,` must not be null");`):this.emitLine(`jsonGenerator.writeNull();`)})})}emitEnumSerializationAttributes(e){this.emitLine(`@JsonValue`)}emitEnumDeserializationAttributes(e){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(`//
357
+ // Then you can deserialize a JSON string with
358
+ //`),this.forEachTopLevel(`none`,(e,t)=>{this.emitLine(`// `,this.javaType(!1,e),` data = Converter.`,this.decoderName(t),`(jsonString);`)}),this.ensureBlankLine();let e=[`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(e),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,t)=>{let n=this.javaType(!1,e);this.emitBlock([`public static `,n,` `,this.decoderName(t),`(String json) throws IOException`],()=>{this.emitLine(`return `,this.readerGetterName(t),`().readValue(json);`)}),this.ensureBlankLine(),this.emitBlock([`public static String `,this.encoderName(t),`(`,n,` obj) throws JsonProcessingException`],()=>{this.emitLine(`return `,this.writerGetterName(t),`().writeValueAsString(obj);`)})}),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>{let n=this.fieldOrMethodName(`reader`,t),r=this.fieldOrMethodName(`writer`,t);this.emitLine(`private static ObjectReader `,n,`;`),this.emitLine(`private static ObjectWriter `,r,`;`),this.ensureBlankLine(),this.emitBlock([`private static void `,this.methodName(`instantiate`,`Mapper`,t),`()`],()=>{let t=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(n,` = mapper.readerFor(`,t,`.class);`),this.emitLine(r,` = mapper.writerFor(`,t,`.class);`)}),this.ensureBlankLine(),this.emitBlock([`private static ObjectReader `,this.readerGetterName(t),`()`],()=>{this.emitLine(`if (`,n,` == null) `,this.methodName(`instantiate`,`Mapper`,t),`();`),this.emitLine(`return `,n,`;`)}),this.ensureBlankLine(),this.emitBlock([`private static ObjectWriter `,this.writerGetterName(t),`()`],()=>{this.emitLine(`if (`,r,` == null) `,this.methodName(`instantiate`,`Mapper`,t),`();`),this.emitLine(`return `,r,`;`)})})}),this.finishFile()}emitSourceStructure(){this.emitConverterClass(),super.emitSourceStructure()}};e.JacksonRenderer=x})),Ka=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.convertersOption=e.ConvertersOptions=void 0;var t=ra(),n;(function(e){e.TopLevel=`top-level`,e.AllObjects=`all-objects`})(n=e.ConvertersOptions||={});function r(){return new t.EnumOption(`converters`,`Which converters to generate (top-level by default)`,[[n.TopLevel,n.TopLevel],[n.AllObjects,n.AllObjects]],n.TopLevel,`secondary`)}e.convertersOption=r})),qa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.isES3IdentifierPart=e.isES3IdentifierStart=void 0;function t(e,t){if(e<t[0])return!1;let n=0,r=t.length,i;for(;n+1<r;){if(i=n+(r-n)/2,i-=i%2,t[i]<=e&&e<=t[i+1])return!0;e<t[i]?r=i:n=i+2}return!1}function n(e){return e>=65&&e<=90||e>=97&&e<=122||e===36||e===95||e>127&&t(e,i)}e.isES3IdentifierStart=n;function r(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===36||e===95||e>127&&t(e,a)}e.isES3IdentifierPart=r;var i=[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],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,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]})),Ja=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.JavaScriptRenderer=e.legalizeName=e.JavaScriptTargetLanguage=e.javaScriptOptions=void 0;var t=a(),n=ha(),r=ia(),i=Ka(),o=ua(),s=Q(),c=Ea(),l=Ta(),u=Ra(),d=Ba(),f=ra(),p=qa();e.javaScriptOptions={acronymStyle:(0,r.acronymOption)(r.AcronymStyleOptions.Pascal),runtimeTypecheck:new f.BooleanOption(`runtime-typecheck`,`Verify JSON.parse results at runtime`,!0),runtimeTypecheckIgnoreUnknownProperties:new f.BooleanOption(`runtime-typecheck-ignore-unknown-properties`,`Ignore unknown properties when verifying at runtime`,!1,`secondary`),converters:(0,i.convertersOption)(),rawType:new f.EnumOption(`raw-type`,`Type of raw input (json by default)`,[[`json`,`json`],[`any`,`any`]],`json`,`secondary`)},e.JavaScriptTargetLanguage=class extends d.TargetLanguage{constructor(e=`JavaScript`,t=[`javascript`,`js`,`jsx`],n=`js`){super(e,t,n)}getOptions(){return[e.javaScriptOptions.runtimeTypecheck,e.javaScriptOptions.runtimeTypecheckIgnoreUnknownProperties,e.javaScriptOptions.acronymStyle,e.javaScriptOptions.converters,e.javaScriptOptions.rawType]}get stringTypeMapping(){let e=new Map,t=`date-time`;return e.set(`date`,t),e.set(`date-time`,t),e}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(t,n){return new h(this,t,(0,f.getOptionValues)(e.javaScriptOptions,n))}},e.legalizeName=(0,o.utf16LegalizeCharacters)(p.isES3IdentifierPart);var m=(0,l.funPrefixNamer)(`properties`,e=>e),h=class extends u.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._jsOptions=n}nameStyle(t,n){let i=(0,r.acronymStyle)(this._jsOptions.acronymStyle),a=(0,o.splitIntoWords)(t);return(0,o.combineWords)(a,e.legalizeName,n?o.firstUpperWordStyle:o.allLowerWordStyle,o.firstUpperWordStyle,n?e=>(0,o.capitalize)(i(e)):o.allLowerWordStyle,i,``,p.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,l.funPrefixNamer)(`types`,e=>this.nameStyle(e,!0))}namerForObjectProperty(){return m}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,l.funPrefixNamer)(`enum-cases`,e=>this.nameStyle(e,!0))}namedTypeToNameForTopLevel(e){return(0,n.directlyReachableSingleNamedType)(e)}makeNameForProperty(e,t,n,r,i){return super.makeNameForProperty(e,t,n,r,void 0)}emitDescriptionBlock(e){this.emitCommentLines(e,` * `,`/**`,` */`)}typeMapTypeFor(e){return[`class`,`object`,`enum`].indexOf(e.kind)>=0?[`r("`,this.nameForNamedType(e),`")`]:(0,n.matchType)(e,e=>`"any"`,e=>`null`,e=>`true`,e=>`0`,e=>`3.14`,e=>`""`,e=>[`a(`,this.typeMapTypeFor(e.items),`)`],e=>(0,s.panic)(`We handled this above`),e=>[`m(`,this.typeMapTypeFor(e.values),`)`],e=>(0,s.panic)(`We handled this above`),e=>{let n=Array.from(e.getChildren()).map(e=>this.typeMapTypeFor(e));return[`u(`,...(0,t.arrayIntercalate)(`, `,n),`)`]},e=>e.kind===`date-time`?`Date`:`""`)}typeMapTypeForProperty(e){let t=this.typeMapTypeFor(e.type);return e.isOptional?[`u(undefined, `,t,`)`]:t}emitBlock(e,t,n){this.emitLine(e,`{`),this.indent(n),this.emitLine(`}`,t)}emitTypeMap(){let{any:e}=this.typeAnnotations;this.emitBlock(`const typeMap${e} = `,`;`,()=>{this.forEachObject(`none`,(e,t)=>{let n=e.getAdditionalProperties(),r=n===void 0?`false`:this.typeMapTypeFor(n);this.emitLine(`"`,t,`": o([`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(`{ json: "`,(0,o.utf16StringEscape)(t),`", js: "`,(0,c.modifySource)(o.utf16StringEscape,e),`", typ: `,this.typeMapTypeForProperty(n),` },`)})}),this.emitLine(`], `,r,`),`)}),this.forEachEnum(`none`,(e,t)=>{this.emitLine(`"`,t,`": [`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(`"${(0,o.utf16StringEscape)(t)}",`)})}),this.emitLine(`],`)})})}deserializerFunctionName(e){return[`to`,e]}deserializerFunctionLine(e,t){return[`function `,this.deserializerFunctionName(t),`(json)`]}serializerFunctionName(e){return[(0,c.modifySource)(o.camelCase,e),`ToJson`]}serializerFunctionLine(e,t){return[`function `,this.serializerFunctionName(t),`(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(){let e=(e,t)=>{let n=this.typeMapTypeFor(e);this.emitBlock([this.deserializerFunctionLine(e,t),` `],``,()=>{let e=this._jsOptions.rawType===`json`?`JSON.parse(json)`:`json`;this._jsOptions.runtimeTypecheck?this.emitLine(`return cast(`,e,`, `,n,`);`):this.emitLine(`return `,e,`;`)}),this.ensureBlankLine(),this.emitBlock([this.serializerFunctionLine(e,t),` `],``,()=>{this._jsOptions.rawType===`json`?this._jsOptions.runtimeTypecheck?this.emitLine(`return JSON.stringify(uncast(value, `,n,`), null, 2);`):this.emitLine(`return JSON.stringify(value);`):this._jsOptions.runtimeTypecheck?this.emitLine(`return uncast(value, `,n,`);`):this.emitLine(`return value;`)})};switch(this._jsOptions.converters){case i.ConvertersOptions.AllObjects:this.forEachObject(`interposing`,e);break;default:this.forEachTopLevel(`interposing`,e);break}}emitConvertModuleHelpers(){if(this._jsOptions.runtimeTypecheck){let{any:e,anyArray:t,anyMap:n,string:r,stringArray:i,never:a}=this.typeAnnotations;this.ensureBlankLine(),this.emitMultiline(`function invalidValue(typ${e}, val${e}, key${e}, parent${e} = '')${a} {
359
+ const prettyTyp = prettyTypeName(typ);
360
+ const parentText = parent ? \` on \${parent}\` : '';
361
+ const keyText = key ? \` for key "\${key}"\` : '';
362
+ throw Error(\`Invalid value\${keyText}\${parentText}. Expected \${prettyTyp} but got \${JSON.stringify(val)}\`);
363
+ }
364
+
365
+ function prettyTypeName(typ${e})${r} {
366
+ if (Array.isArray(typ)) {
367
+ if (typ.length === 2 && typ[0] === undefined) {
368
+ return \`an optional \${prettyTypeName(typ[1])}\`;
369
+ } else {
370
+ return \`one of [\${typ.map(a => { return prettyTypeName(a); }).join(", ")}]\`;
371
+ }
372
+ } else if (typeof typ === "object" && typ.literal !== undefined) {
373
+ return typ.literal;
374
+ } else {
375
+ return typeof typ;
376
+ }
377
+ }
378
+
379
+ function jsonToJSProps(typ${e})${e} {
380
+ if (typ.jsonToJS === undefined) {
381
+ const map${e} = {};
382
+ typ.props.forEach((p${e}) => map[p.json] = { key: p.js, typ: p.typ });
383
+ typ.jsonToJS = map;
384
+ }
385
+ return typ.jsonToJS;
386
+ }
387
+
388
+ function jsToJSONProps(typ${e})${e} {
389
+ if (typ.jsToJSON === undefined) {
390
+ const map${e} = {};
391
+ typ.props.forEach((p${e}) => map[p.js] = { key: p.json, typ: p.typ });
392
+ typ.jsToJSON = map;
393
+ }
394
+ return typ.jsToJSON;
395
+ }
396
+
397
+ function transform(val${e}, typ${e}, getProps${e}, key${e} = '', parent${e} = '')${e} {
398
+ function transformPrimitive(typ${r}, val${e})${e} {
399
+ if (typeof typ === typeof val) return val;
400
+ return invalidValue(typ, val, key, parent);
401
+ }
402
+
403
+ function transformUnion(typs${t}, val${e})${e} {
404
+ // val must validate against one typ in typs
405
+ const l = typs.length;
406
+ for (let i = 0; i < l; i++) {
407
+ const typ = typs[i];
408
+ try {
409
+ return transform(val, typ, getProps);
410
+ } catch (_) {}
411
+ }
412
+ return invalidValue(typs, val, key, parent);
413
+ }
414
+
415
+ function transformEnum(cases${i}, val${e})${e} {
416
+ if (cases.indexOf(val) !== -1) return val;
417
+ return invalidValue(cases.map(a => { return l(a); }), val, key, parent);
418
+ }
419
+
420
+ function transformArray(typ${e}, val${e})${e} {
421
+ // val must be an array with no invalid elements
422
+ if (!Array.isArray(val)) return invalidValue(l("array"), val, key, parent);
423
+ return val.map(el => transform(el, typ, getProps));
424
+ }
425
+
426
+ function transformDate(val${e})${e} {
427
+ if (val === null) {
428
+ return null;
429
+ }
430
+ const d = new Date(val);
431
+ if (isNaN(d.valueOf())) {
432
+ return invalidValue(l("Date"), val, key, parent);
433
+ }
434
+ return d;
435
+ }
436
+
437
+ function transformObject(props${n}, additional${e}, val${e})${e} {
438
+ if (val === null || typeof val !== "object" || Array.isArray(val)) {
439
+ return invalidValue(l(ref || "object"), val, key, parent);
440
+ }
441
+ const result${e} = {};
442
+ Object.getOwnPropertyNames(props).forEach(key => {
443
+ const prop = props[key];
444
+ const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;
445
+ result[prop.key] = transform(v, prop.typ, getProps, key, ref);
446
+ });
447
+ Object.getOwnPropertyNames(val).forEach(key => {
448
+ if (!Object.prototype.hasOwnProperty.call(props, key)) {
449
+ result[key] = ${this._jsOptions.runtimeTypecheckIgnoreUnknownProperties?`val[key]`:`transform(val[key], additional, getProps, key, ref)`};
450
+ }
451
+ });
452
+ return result;
453
+ }
454
+
455
+ if (typ === "any") return val;
456
+ if (typ === null) {
457
+ if (val === null) return val;
458
+ return invalidValue(typ, val, key, parent);
459
+ }
460
+ if (typ === false) return invalidValue(typ, val, key, parent);
461
+ let ref${e} = undefined;
462
+ while (typeof typ === "object" && typ.ref !== undefined) {
463
+ ref = typ.ref;
464
+ typ = typeMap[typ.ref];
465
+ }
466
+ if (Array.isArray(typ)) return transformEnum(typ, val);
467
+ if (typeof typ === "object") {
468
+ return typ.hasOwnProperty("unionMembers") ? transformUnion(typ.unionMembers, val)
469
+ : typ.hasOwnProperty("arrayItems") ? transformArray(typ.arrayItems, val)
470
+ : typ.hasOwnProperty("props") ? transformObject(getProps(typ), typ.additional, val)
471
+ : invalidValue(typ, val, key, parent);
472
+ }
473
+ // Numbers can be parsed by Date but shouldn't be.
474
+ if (typ === Date && typeof val !== "number") return transformDate(val);
475
+ return transformPrimitive(typ, val);
476
+ }
477
+
478
+ ${this.castFunctionLines[0]} {
479
+ return transform(val, typ, jsonToJSProps);
480
+ }
481
+
482
+ ${this.castFunctionLines[1]} {
483
+ return transform(val, typ, jsToJSONProps);
484
+ }
485
+
486
+ function l(typ${e}) {
487
+ return { literal: typ };
488
+ }
489
+
490
+ function a(typ${e}) {
491
+ return { arrayItems: typ };
492
+ }
493
+
494
+ function u(...typs${t}) {
495
+ return { unionMembers: typs };
496
+ }
497
+
498
+ function o(props${t}, additional${e}) {
499
+ return { props, additional };
500
+ }
501
+
502
+ function m(additional${e}) {
503
+ return { props: [], additional };
504
+ }
505
+
506
+ function r(name${r}) {
507
+ return { ref: name };
508
+ }
509
+ `),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`);let e=this.moduleLine;e===void 0?this.emitConvertModuleBody():this.emitBlock([e,` `],``,()=>this.emitConvertModuleBody())}emitTypes(){}emitUsageImportComment(){this.emitLine(`// const Convert = require("./file");`)}emitUsageComments(){this.emitMultiline(`// To parse this data:
510
+ //`),this.emitUsageImportComment(),this.emitLine(`//`),this.forEachTopLevel(`none`,(e,t)=>{let n=(0,c.modifySource)(o.camelCase,t);this.emitLine(`// const `,n,` = Convert.to`,t,`(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`,(e,t)=>{let n=this.serializerFunctionName(t),r=this.deserializerFunctionName(t);this.emitLine(`"`,n,`": `,n,`,`),this.emitLine(`"`,r,`": `,r,`,`)})})}emitSourceStructure(){this.leadingComments===void 0?this.emitUsageComments():this.emitCommentLines(this.leadingComments),this.emitTypes(),this.emitConvertModule(),this.emitConvertModuleHelpers(),this.emitModuleExports()}};e.JavaScriptRenderer=h})),Ya=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.JavaScriptPropTypesRenderer=e.JavaScriptPropTypesTargetLanguage=e.javaScriptPropTypesOptions=void 0;var t=Ba(),n=ra(),r=Ra(),i=Ta(),o=ia(),s=bs(),c=ua(),l=qa(),u=Ja(),d=Ka(),f=ha(),p=a(),m=wa();e.javaScriptPropTypesOptions={acronymStyle:(0,o.acronymOption)(o.AcronymStyleOptions.Pascal),converters:(0,d.convertersOption)(),moduleSystem:new n.EnumOption(`module-system`,`Which module system to use`,[[`common-js`,!1],[`es6`,!0]],`es6`)},e.JavaScriptPropTypesTargetLanguage=class extends t.TargetLanguage{getOptions(){return[e.javaScriptPropTypesOptions.acronymStyle,e.javaScriptPropTypesOptions.converters]}constructor(e=`JavaScript PropTypes`,t=[`javascript-prop-types`],n=`js`){super(e,t,n)}makeRenderer(t,r){return new g(this,t,(0,n.getOptionValues)(e.javaScriptPropTypesOptions,r))}};var h=(0,i.funPrefixNamer)(`properties`,e=>e),g=class extends r.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._jsOptions=n}nameStyle(e,t){let n=(0,o.acronymStyle)(this._jsOptions.acronymStyle),r=(0,s.splitIntoWords)(e);return(0,s.combineWords)(r,u.legalizeName,t?s.firstUpperWordStyle:c.allLowerWordStyle,s.firstUpperWordStyle,t?e=>(0,s.capitalize)(n(e)):c.allLowerWordStyle,n,``,l.isES3IdentifierStart)}makeNamedTypeNamer(){return(0,i.funPrefixNamer)(`types`,e=>this.nameStyle(e,!0))}namerForObjectProperty(){return h}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,i.funPrefixNamer)(`enum-cases`,e=>this.nameStyle(e,!1))}namedTypeToNameForTopLevel(e){return(0,f.directlyReachableSingleNamedType)(e)}makeNameForProperty(e,t,n,r,i){return super.makeNameForProperty(e,t,n,r,void 0)}typeMapTypeFor(e,t=!0){if([`class`,`object`,`enum`].indexOf(e.kind)>=0)return[`_`,this.nameForNamedType(e)];let n=(0,s.matchType)(e,e=>`PropTypes.any`,e=>`PropTypes.any`,e=>`PropTypes.bool`,e=>`PropTypes.number`,e=>`PropTypes.number`,e=>`PropTypes.string`,e=>[`PropTypes.arrayOf(`,this.typeMapTypeFor(e.items,!1),`)`],e=>(0,s.panic)(`Should already be handled.`),e=>`PropTypes.object`,e=>(0,s.panic)(`Should already be handled.`),e=>{let t=Array.from(e.getChildren()).map(e=>this.typeMapTypeFor(e,!1));return[`PropTypes.oneOfType([`,...(0,p.arrayIntercalate)(`, `,t),`])`]},e=>`PropTypes.string`);return t?[n]:n}typeMapTypeForProperty(e){return this.typeMapTypeFor(e.type)}importStatement(e,t){return this._jsOptions.moduleSystem?[`import `,e,` from `,t,`;`]:[`const `,e,` = require(`,t,`);`]}emitUsageComments(){this.emitCommentLines([`Example usage:`,``,this.importStatement(`{ MyShape }`,`./myShape.js`),``,`class MyComponent extends React.Component {`,` //`,`}`,``,`MyComponent.propTypes = {`,` input: MyShape`,`};`],`// `)}emitBlock(e,t,n){this.emitLine(e,`{`),this.indent(n),this.emitLine(`}`,t)}emitImports(){this.ensureBlankLine(),this.emitLine(this.importStatement(`PropTypes`,`"prop-types"`))}emitExport(e,t){this._jsOptions.moduleSystem?this.emitLine(`export const `,e,` = `,t,`;`):this.emitLine(`module.exports = exports = { `,e,`: `,t,` };`)}emitTypes(){this.ensureBlankLine(),this.forEachObject(`none`,(e,t)=>{this.emitLine(`let _`,t,`;`)}),this.forEachEnum(`none`,(e,t)=>{let n=[];this.forEachEnumCase(e,`none`,(e,t,r)=>{n.push(`'`),n.push(e),n.push(`'`),n.push(`, `)}),n.pop(),this.emitLine([`const _`,t,` = PropTypes.oneOfType([`,...n,`]);`])});let e=[],t=[],n=[];this.forEachObject(`none`,(e,r)=>{t.push(r),n.push(this.gatherSource(()=>this.emitObject(r,e)))}),t.forEach((r,i)=>{let a=0,o=n[i].filter(e=>e);for(let n=0;n<o.length;n++){let r=o[n];for(let n=0;n<e.length;n++){let i=e[n];t[i]===r&&(a=Math.max(a,i+1))}}e.splice(a,0,i)}),e.forEach(e=>this.emitGatheredSource(n[e])),this.forEachTopLevel(`none`,(e,t)=>{e instanceof m.PrimitiveType?(this.ensureBlankLine(),this.emitExport(t,this.typeMapTypeFor(e))):e.kind===`array`?(this.ensureBlankLine(),this.emitExport(t,[`PropTypes.arrayOf(`,this.typeMapTypeFor(e.items),`)`])):(this.ensureBlankLine(),this.emitExport(t,[`_`,t]))})}emitObject(e,t){this.ensureBlankLine(),this.emitLine(`_`,e,` = PropTypes.shape({`),this.indent(()=>{this.forEachClassProperty(t,`none`,(e,t,n)=>{this.emitLine(`"${(0,c.utf16StringEscape)(t)}"`,`: `,this.typeMapTypeForProperty(n),`,`)})}),this.emitLine(`});`)}emitSourceStructure(){this.leadingComments===void 0?this.emitUsageComments():this.emitCommentLines(this.leadingComments),this.emitImports(),this.emitTypes()}};e.JavaScriptPropTypesRenderer=g})),Xa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.FlowRenderer=e.FlowTargetLanguage=e.TypeScriptRenderer=e.TypeScriptFlowBaseRenderer=e.TypeScriptTargetLanguage=e.TypeScriptFlowBaseTargetLanguage=e.tsFlowOptions=void 0;var t=wa(),n=ha(),r=ua(),i=Ea(),a=Ta(),o=ra(),s=Ja(),c=Q(),l=qa();e.tsFlowOptions=Object.assign({},s.javaScriptOptions,{justTypes:new o.BooleanOption(`just-types`,`Interfaces only`,!1),nicePropertyNames:new o.BooleanOption(`nice-property-names`,`Transform property names to be JavaScripty`,!1),declareUnions:new o.BooleanOption(`explicit-unions`,`Explicitly name unions`,!1),preferUnions:new o.BooleanOption(`prefer-unions`,`Use union type instead of enum`,!1),preferTypes:new o.BooleanOption(`prefer-types`,`Use types instead of interfaces`,!1)});var u={any:`: any`,anyArray:`: any[]`,anyMap:`: { [k: string]: any }`,string:`: string`,stringArray:`: string[]`,boolean:`: boolean`},d=class extends s.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=d,e.TypeScriptTargetLanguage=class extends d{constructor(){super(`TypeScript`,[`typescript`,`ts`,`tsx`],`ts`)}makeRenderer(t,n){return new m(this,t,(0,o.getOptionValues)(e.tsFlowOptions,n))}};function f(e){let t=(0,r.utf16StringEscape)(e),n=`"${t}"`;return e.length===0?n:(0,l.isES3IdentifierStart)(e.codePointAt(0))&&t===e&&(0,s.legalizeName)(e)===e?e:n}var p=class extends s.JavaScriptRenderer{constructor(e,t,n){super(e,t,n),this._tsFlowOptions=n}namerForObjectProperty(){return this._tsFlowOptions.nicePropertyNames?(0,a.funPrefixNamer)(`properties`,e=>this.nameStyle(e,!1)):super.namerForObjectProperty()}sourceFor(e){return[`class`,`object`,`enum`].indexOf(e.kind)>=0?(0,i.singleWord)(this.nameForNamedType(e)):(0,n.matchType)(e,e=>(0,i.singleWord)(`any`),e=>(0,i.singleWord)(`null`),e=>(0,i.singleWord)(`boolean`),e=>(0,i.singleWord)(`number`),e=>(0,i.singleWord)(`number`),e=>(0,i.singleWord)(`string`),e=>{let n=this.sourceFor(e.items);return e.items instanceof t.UnionType&&!this._tsFlowOptions.declareUnions||e.items instanceof t.ArrayType?(0,i.singleWord)([`Array<`,n.source,`>`]):(0,i.singleWord)([(0,i.parenIfNeeded)(n),`[]`])},e=>(0,c.panic)(`We handled this above`),e=>(0,i.singleWord)([`{ [key: string]: `,this.sourceFor(e.values).source,` }`]),e=>(0,c.panic)(`We handled this above`),e=>{if(!this._tsFlowOptions.declareUnions||(0,n.nullableFromUnion)(e)!==null){let t=Array.from(e.getChildren()).map(e=>(0,i.parenIfNeeded)(this.sourceFor(e)));return(0,i.multiWord)(` | `,...t)}else return(0,i.singleWord)(this.nameForNamedType(e))},e=>e.kind===`date-time`?(0,i.singleWord)(`Date`):(0,i.singleWord)(`string`))}emitClassBlockBody(e){this.emitPropertyTable(e,(e,t,n)=>{let r=n.type;return[[(0,i.modifySource)(f,e),n.isOptional?`?`:``,`: `],[this.sourceFor(r).source,`;`]]});let t=e.getAdditionalProperties();t&&this.emitTable([[`[property: string]`,`: `,this.sourceFor(t).source,`;`]])}emitClass(e,t){this.emitDescription(this.descriptionForType(e)),this.emitClassBlock(e,t)}emitUnion(e,t){if(!this._tsFlowOptions.declareUnions)return;this.emitDescription(this.descriptionForType(e));let n=(0,i.multiWord)(` | `,...Array.from(e.getChildren()).map(e=>(0,i.parenIfNeeded)(this.sourceFor(e))));this.emitLine(`export type `,t,` = `,n.source,`;`)}emitTypes(){this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClass(e,t),(e,t)=>this.emitEnum(e,t),(e,t)=>this.emitUnion(e,t))}emitUsageComments(){this._tsFlowOptions.justTypes||super.emitUsageComments()}deserializerFunctionLine(e,t){return[`function to`,t,`(json: `,this._tsFlowOptions.rawType===`json`?`string`:`any`,`): `,this.sourceFor(e).source]}serializerFunctionLine(e,t){let n=(0,i.modifySource)(r.camelCase,t),a=this._tsFlowOptions.rawType===`json`?`string`:`any`;return[`function `,n,`ToJson(value: `,this.sourceFor(e).source,`): `,a]}get moduleLine(){}get castFunctionLines(){return[`function cast<T>(val: any, typ: any): T`,`function uncast<T>(val: T, typ: any): any`]}get typeAnnotations(){throw Error(`not implemented`)}emitConvertModule(){this._tsFlowOptions.justTypes||super.emitConvertModule()}emitConvertModuleHelpers(){this._tsFlowOptions.justTypes||super.emitConvertModuleHelpers()}emitModuleExports(){this._tsFlowOptions.justTypes||super.emitModuleExports()}};e.TypeScriptFlowBaseRenderer=p;var m=class extends p{forbiddenNamesForGlobalNamespace(){return[`Array`,`Date`]}deserializerFunctionLine(e,t){return[`public static to`,t,`(json: `,this._tsFlowOptions.rawType===`json`?`string`:`any`,`): `,this.sourceFor(e).source]}serializerFunctionLine(e,t){let n=(0,i.modifySource)(r.camelCase,t),a=this._tsFlowOptions.rawType===`json`?`string`:`any`;return[`public static `,n,`ToJson(value: `,this.sourceFor(e).source,`): `,a]}get moduleLine(){return`export class Convert`}get typeAnnotations(){return Object.assign({never:`: never`},u)}emitModuleExports(){}emitUsageImportComment(){let e=[];this.forEachTopLevel(`none`,(t,n)=>{e.push(`, `,n)},n.isNamedType),this.emitLine(`// import { Convert`,e,` } from "./file";`)}emitEnum(e,t){if(this.emitDescription(this.descriptionForType(e)),this._tsFlowOptions.preferUnions){let n=``;e.cases.forEach(e=>{if(n===``){n+=`"${(0,r.utf16StringEscape)(e)}"`;return}n+=` | "${(0,r.utf16StringEscape)(e)}"`}),this.emitLine(`export type `,t,` = `,n,`;`)}else this.emitBlock([`export enum `,t,` `],``,()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(e,` = "${(0,r.utf16StringEscape)(t)}",`)})})}emitClassBlock(e,t){this.emitBlock(this._tsFlowOptions.preferTypes?[`export type `,t,` = `]:[`export interface `,t,` `],``,()=>{this.emitClassBlockBody(e)})}};e.TypeScriptRenderer=m,e.FlowTargetLanguage=class extends d{constructor(){super(`Flow`,[`flow`],`js`)}makeRenderer(t,n){return new h(this,t,(0,o.getOptionValues)(e.tsFlowOptions,n))}};var h=class extends p{forbiddenNamesForGlobalNamespace(){return[`Class`,`Date`,`Object`,`String`,`Array`,`JSON`,`Error`]}get typeAnnotations(){return Object.assign({never:``},u)}emitEnum(e,t){this.emitDescription(this.descriptionForType(e));let n=[];this.forEachEnumCase(e,`none`,(e,t)=>{let i=n.length===0?` `:`| `;n.push([i,`"`,(0,r.utf16StringEscape)(t),`"`])}),(0,c.defined)(n[n.length-1]).push(`;`),this.emitLine(`export type `,t,` =`),this.indent(()=>{for(let e of n)this.emitLine(e)})}emitClassBlock(e,t){this.emitBlock([`export type `,t,` = `],`;`,()=>{this.emitClassBlockBody(e)})}emitSourceStructure(){this.emitLine(`// @flow`),this.ensureBlankLine(),super.emitSourceStructure()}};e.FlowRenderer=h})),Za=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.SwiftRenderer=e.SwiftTargetLanguage=e.swiftOptions=void 0;var t=a(),n=Q(),r=Ba(),i=wa(),o=ha(),s=Ta(),c=ra(),l=Ea(),u=Da(),d=Ra(),f=ua(),p=Q(),m=za(),h=ia(),g=4;e.swiftOptions={justTypes:new c.BooleanOption(`just-types`,`Plain types only`,!1),convenienceInitializers:new c.BooleanOption(`initializers`,`Generate initializers and mutators`,!0),explicitCodingKeys:new c.BooleanOption(`coding-keys`,`Explicit CodingKey values in Codable types`,!0),alamofire:new c.BooleanOption(`alamofire`,`Alamofire extensions`,!1),namedTypePrefix:new c.StringOption(`type-prefix`,`Prefix for type names`,`PREFIX`,``,`secondary`),useClasses:new c.EnumOption(`struct-or-class`,`Structs or classes`,[[`struct`,!1],[`class`,!0]]),mutableProperties:new c.BooleanOption(`mutable-properties`,`Use var instead of let for object properties`,!1),acronymStyle:(0,h.acronymOption)(h.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`)};var _=/^\d+-\d+-\d+T\d+:\d+:\d+([zZ]|[+-]\d+(:\d+)?)$/,v=class extends m.DefaultDateTimeRecognizer{isDateTime(e){return e.match(_)!==null}};e.SwiftTargetLanguage=class extends r.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(){let e=new Map;return e.set(`date-time`,`date-time`),e}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(t,n){return new E(this,t,(0,c.getOptionValues)(e.swiftOptions,n))}get dateTimeRecognizer(){return new v}};var y=`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`.split(`.`);function b(e){return(0,f.isLetterOrUnderscore)(e)||(0,f.isNumeric)(e)}function x(e){return b(e)&&!(0,f.isDigit)(e)}var S=(0,f.legalizeCharacters)(b);function C(e,t,n,r=f.allUpperWordStyle){let i=(0,f.splitIntoWords)(n),a=(0,f.combineWords)(i,S,t?f.firstUpperWordStyle:f.allLowerWordStyle,f.firstUpperWordStyle,t?f.allUpperWordStyle:f.allLowerWordStyle,r,``,x);return(0,f.addPrefixIfNecessary)(e,a)}function w(e){return`\\u{`+(0,f.intToHex)(e,0)+`}`}var T=(0,f.utf32ConcatMap)((0,f.escapeNonPrintableMapper)(f.isPrintable,w)),E=class extends d.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._needAny=!1,this._needNull=!1,this.emitSupportFunctions4=()=>{this.startFile(`JSONSchemaSupport`),this.emitLineOnce(`import Foundation`),this.forEachTopLevel(`leading`,(e,t)=>this.renderTopLevelAlias(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this._options.convenienceInitializers&&(this.ensureBlankLine(),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelMapAndArrayConvenienceInitializerExtensions(e,t))),(!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 {
511
+ return true
512
+ }`),this._options.objcSupport===!1&&(this.ensureBlankLine(),this.emitMultiline(` public var hashValue: Int {
513
+ return 0
514
+ }`),this._options.swift5Support&&(this.ensureBlankLine(),this.emitMultiline(` public func hash(into hasher: inout Hasher) {
515
+ // No-op
516
+ }`))),this.ensureBlankLine(),this._options.objcSupport?this.emitItem(` override `):this.emitItem(` `),this.emitMultiline(`public init() {}
517
+
518
+ public required init(from decoder: Decoder) throws {
519
+ let container = try decoder.singleValueContainer()
520
+ if !container.decodeNil() {
521
+ throw DecodingError.typeMismatch(JSONNull.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for JSONNull"))
522
+ }
523
+ }
524
+
525
+ public func encode(to encoder: Encoder) throws {
526
+ var container = encoder.singleValueContainer()
527
+ try container.encodeNil()
528
+ }
529
+ }`)),this._needAny&&(this.ensureBlankLine(),this.emitMultiline(`class JSONCodingKey: CodingKey {
530
+ let key: String
531
+
532
+ required init?(intValue: Int) {
533
+ return nil
534
+ }
535
+
536
+ required init?(stringValue: String) {
537
+ key = stringValue
538
+ }
539
+
540
+ var intValue: Int? {
541
+ return nil
542
+ }
543
+
544
+ var stringValue: String {
545
+ return key
546
+ }
547
+ }`),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
548
+
549
+ static func decodingError(forCodingPath codingPath: [CodingKey]) -> DecodingError {
550
+ let context = DecodingError.Context(codingPath: codingPath, debugDescription: "Cannot decode JSONAny")
551
+ return DecodingError.typeMismatch(JSONAny.self, context)
552
+ }
553
+
554
+ static func encodingError(forValue value: Any, codingPath: [CodingKey]) -> EncodingError {
555
+ let context = EncodingError.Context(codingPath: codingPath, debugDescription: "Cannot encode JSONAny")
556
+ return EncodingError.invalidValue(value, context)
557
+ }
558
+
559
+ static func decode(from container: SingleValueDecodingContainer) throws -> Any {
560
+ if let value = try? container.decode(Bool.self) {
561
+ return value
562
+ }
563
+ if let value = try? container.decode(Int64.self) {
564
+ return value
565
+ }
566
+ if let value = try? container.decode(Double.self) {
567
+ return value
568
+ }
569
+ if let value = try? container.decode(String.self) {
570
+ return value
571
+ }
572
+ if container.decodeNil() {
573
+ return JSONNull()
574
+ }
575
+ throw decodingError(forCodingPath: container.codingPath)
576
+ }
577
+
578
+ static func decode(from container: inout UnkeyedDecodingContainer) throws -> Any {
579
+ if let value = try? container.decode(Bool.self) {
580
+ return value
581
+ }
582
+ if let value = try? container.decode(Int64.self) {
583
+ return value
584
+ }
585
+ if let value = try? container.decode(Double.self) {
586
+ return value
587
+ }
588
+ if let value = try? container.decode(String.self) {
589
+ return value
590
+ }
591
+ if let value = try? container.decodeNil() {
592
+ if value {
593
+ return JSONNull()
594
+ }
595
+ }
596
+ if var container = try? container.nestedUnkeyedContainer() {
597
+ return try decodeArray(from: &container)
598
+ }
599
+ if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self) {
600
+ return try decodeDictionary(from: &container)
601
+ }
602
+ throw decodingError(forCodingPath: container.codingPath)
603
+ }
604
+
605
+ static func decode(from container: inout KeyedDecodingContainer<JSONCodingKey>, forKey key: JSONCodingKey) throws -> Any {
606
+ if let value = try? container.decode(Bool.self, forKey: key) {
607
+ return value
608
+ }
609
+ if let value = try? container.decode(Int64.self, forKey: key) {
610
+ return value
611
+ }
612
+ if let value = try? container.decode(Double.self, forKey: key) {
613
+ return value
614
+ }
615
+ if let value = try? container.decode(String.self, forKey: key) {
616
+ return value
617
+ }
618
+ if let value = try? container.decodeNil(forKey: key) {
619
+ if value {
620
+ return JSONNull()
621
+ }
622
+ }
623
+ if var container = try? container.nestedUnkeyedContainer(forKey: key) {
624
+ return try decodeArray(from: &container)
625
+ }
626
+ if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key) {
627
+ return try decodeDictionary(from: &container)
628
+ }
629
+ throw decodingError(forCodingPath: container.codingPath)
630
+ }
631
+
632
+ static func decodeArray(from container: inout UnkeyedDecodingContainer) throws -> [Any] {
633
+ var arr: [Any] = []
634
+ while !container.isAtEnd {
635
+ let value = try decode(from: &container)
636
+ arr.append(value)
637
+ }
638
+ return arr
639
+ }
640
+
641
+ static func decodeDictionary(from container: inout KeyedDecodingContainer<JSONCodingKey>) throws -> [String: Any] {
642
+ var dict = [String: Any]()
643
+ for key in container.allKeys {
644
+ let value = try decode(from: &container, forKey: key)
645
+ dict[key.stringValue] = value
646
+ }
647
+ return dict
648
+ }
649
+
650
+ static func encode(to container: inout UnkeyedEncodingContainer, array: [Any]) throws {
651
+ for value in array {
652
+ if let value = value as? Bool {
653
+ try container.encode(value)
654
+ } else if let value = value as? Int64 {
655
+ try container.encode(value)
656
+ } else if let value = value as? Double {
657
+ try container.encode(value)
658
+ } else if let value = value as? String {
659
+ try container.encode(value)
660
+ } else if value is JSONNull {
661
+ try container.encodeNil()
662
+ } else if let value = value as? [Any] {
663
+ var container = container.nestedUnkeyedContainer()
664
+ try encode(to: &container, array: value)
665
+ } else if let value = value as? [String: Any] {
666
+ var container = container.nestedContainer(keyedBy: JSONCodingKey.self)
667
+ try encode(to: &container, dictionary: value)
668
+ } else {
669
+ throw encodingError(forValue: value, codingPath: container.codingPath)
670
+ }
671
+ }
672
+ }
673
+
674
+ static func encode(to container: inout KeyedEncodingContainer<JSONCodingKey>, dictionary: [String: Any]) throws {
675
+ for (key, value) in dictionary {
676
+ let key = JSONCodingKey(stringValue: key)!
677
+ if let value = value as? Bool {
678
+ try container.encode(value, forKey: key)
679
+ } else if let value = value as? Int64 {
680
+ try container.encode(value, forKey: key)
681
+ } else if let value = value as? Double {
682
+ try container.encode(value, forKey: key)
683
+ } else if let value = value as? String {
684
+ try container.encode(value, forKey: key)
685
+ } else if value is JSONNull {
686
+ try container.encodeNil(forKey: key)
687
+ } else if let value = value as? [Any] {
688
+ var container = container.nestedUnkeyedContainer(forKey: key)
689
+ try encode(to: &container, array: value)
690
+ } else if let value = value as? [String: Any] {
691
+ var container = container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key)
692
+ try encode(to: &container, dictionary: value)
693
+ } else {
694
+ throw encodingError(forValue: value, codingPath: container.codingPath)
695
+ }
696
+ }
697
+ }
698
+
699
+ static func encode(to container: inout SingleValueEncodingContainer, value: Any) throws {
700
+ if let value = value as? Bool {
701
+ try container.encode(value)
702
+ } else if let value = value as? Int64 {
703
+ try container.encode(value)
704
+ } else if let value = value as? Double {
705
+ try container.encode(value)
706
+ } else if let value = value as? String {
707
+ try container.encode(value)
708
+ } else if value is JSONNull {
709
+ try container.encodeNil()
710
+ } else {
711
+ throw encodingError(forValue: value, codingPath: container.codingPath)
712
+ }
713
+ }
714
+
715
+ public required init(from decoder: Decoder) throws {
716
+ if var arrayContainer = try? decoder.unkeyedContainer() {
717
+ self.value = try JSONAny.decodeArray(from: &arrayContainer)
718
+ } else if var container = try? decoder.container(keyedBy: JSONCodingKey.self) {
719
+ self.value = try JSONAny.decodeDictionary(from: &container)
720
+ } else {
721
+ let container = try decoder.singleValueContainer()
722
+ self.value = try JSONAny.decode(from: container)
723
+ }
724
+ }
725
+
726
+ public func encode(to encoder: Encoder) throws {
727
+ if let arr = self.value as? [Any] {
728
+ var container = encoder.unkeyedContainer()
729
+ try JSONAny.encode(to: &container, array: arr)
730
+ } else if let dict = self.value as? [String: Any] {
731
+ var container = encoder.container(keyedBy: JSONCodingKey.self)
732
+ try JSONAny.encode(to: &container, dictionary: dict)
733
+ } else {
734
+ var container = encoder.singleValueContainer()
735
+ try JSONAny.encode(to: &container, value: self.value)
736
+ }
737
+ }
738
+ }`)),this.endFile()}}forbiddenNamesForGlobalNamespace(){return this._options.alamofire?[`DataRequest`,...y]:y}forbiddenForObjectProperties(e,t){return{names:[`fromURL`,`json`],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return(0,s.funPrefixNamer)(`upper`,e=>C(this._options.namedTypePrefix,!0,e,(0,h.acronymStyle)(this._options.acronymStyle)))}namerForObjectProperty(){return this.lowerNamingFunction}makeUnionMemberNamer(){return this.lowerNamingFunction}makeEnumCaseNamer(){return this.lowerNamingFunction}isImplicitCycleBreaker(e){let t=e.kind;return t===`array`||t===`map`}emitDescriptionBlock(e){this.emitCommentLines(e,`/// `)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}emitBlockWithAccess(e,t){this.emitBlock([this.accessLevel,e],t)}justTypesCase(e,t){return this._options.justTypes?e:t}get lowerNamingFunction(){return(0,s.funPrefixNamer)(`lower`,e=>C(``,!1,e,(0,h.acronymStyle)(this._options.acronymStyle)))}swiftPropertyType(e){return e.isOptional||this._options.optionalEnums&&e.type.kind===`enum`?[this.swiftType(e.type,!0,!0),`?`]:this.swiftType(e.type,!0)}swiftType(e,t=!1,n=!1){let r=n?``:`?`;return(0,o.matchType)(e,e=>(this._needAny=!0,(0,l.maybeAnnotated)(t,u.anyTypeIssueAnnotation,this.justTypesCase([`Any`,r],`JSONAny`))),e=>(this._needNull=!0,(0,l.maybeAnnotated)(t,u.nullTypeIssueAnnotation,this.justTypesCase(`NSNull`,[`JSONNull`,r]))),e=>`Bool`,e=>`Int`,e=>`Double`,e=>`String`,e=>[`[`,this.swiftType(e.items,t),`]`],e=>this.nameForNamedType(e),e=>[`[String: `,this.swiftType(e.values,t),`]`],e=>this.nameForNamedType(e),e=>{let n=(0,o.nullableFromUnion)(e);return n===null?this.nameForNamedType(e):[this.swiftType(n,t),r]},e=>e.kind===`date-time`?`Date`:(0,p.panic)(`Transformed string type ${e.kind} not supported`))}proposedUnionMemberNameForTypeKind(e){return e===`enum`?`enumeration`:e===`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`,(e,t)=>{this._options.convenienceInitializers&&!(e instanceof i.EnumType)?this.emitLineOnce(`// let `,(0,l.modifySource)(f.camelCase,t),` = try `,t,`(json)`):this.emitLineOnce(`// let `,(0,l.modifySource)(f.camelCase,t),` = `,`try? JSONDecoder().decode(`,t,`.self, from: jsonData)`)})}renderHeader(e,t){this.leadingComments===void 0?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&&!(e instanceof i.EnumType)?this.emitLine(`// let `,(0,l.modifySource)(f.camelCase,t),` = try `,t,`(json)`):this.emitLine(`// let `,(0,l.modifySource)(f.camelCase,t),` = `,`try? newJSONDecoder().decode(`,t,`.self, from: jsonData)`)),this._options.alamofire&&(this.emitLine(`//`),this.emitLine(`// To parse values from Alamofire responses:`),this.emitLine(`//`),this.emitLine(`// Alamofire.request(url).response`,t,` { response in`),this.emitLine(`// if let `,(0,l.modifySource)(f.camelCase,t),` = 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.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitLineOnce(`import Foundation`),!this._options.justTypes&&this._options.alamofire&&this.emitLineOnce(`import Alamofire`),this.ensureBlankLine()}renderTopLevelAlias(e,t){this.emitLine(this.accessLevel,`typealias `,t,` = `,this.swiftType(e,!0))}getProtocolsArray(e,t){let n=[];return t&&this._options.objcSupport&&n.push(`NSObject`),this._options.justTypes||n.push(`Codable`),this._options.protocol.hashable&&n.push(`Hashable`),this._options.protocol.equatable&&n.push(`Equatable`),n}getProtocolString(e,t){let n=this.getProtocolsArray(e,t);return n.length>0?`: `+n.join(`, `):``}getEnumPropertyGroups(e){let t=[],n=[];return this.forEachClassProperty(e,`none`,(e,r)=>{let i=T(r),a=this.sourcelikeToString(e)===i;this._options.dense&&a?n.push({name:e}):(n.length>0&&(t.push(n),n=[]),t.push([{name:e,label:i}]))}),n.length>0&&t.push(n),t}get accessLevel(){return this._options.accessLevel===`internal`?``:this._options.accessLevel+` `}get objcMembersDeclaration(){return this._options.objcSupport?`@objcMembers `:``}startFile(e){this._options.multiFileOutput!==!1&&((0,n.assert)(this._currentFilename===void 0,`Previous file wasn't finished: `+this._currentFilename),this._currentFilename=`${this.sourcelikeToString(e)}.swift`,this.initializeEmitContextForFilename(this._currentFilename))}endFile(){this._options.multiFileOutput!==!1&&(this.finishFile((0,n.defined)(this._currentFilename)),this._currentFilename=void 0)}propertyLinesDefinition(e,t){let n=this._options.mutableProperties;return[this.accessLevel,n?`var `:`let `,e,`: `,this.swiftPropertyType(t)]}renderClassDefinition(e,n){this.startFile(n),this.renderHeader(e,n),this.emitDescription(this.descriptionForType(e)),this.emitMark(this.sourcelikeToString(n),!0);let r=this._options.useClasses||this.isCycleBreakerType(e),i=r?`class`:`struct`;r&&this._options.objcSupport&&this.emitItem(this.objcMembersDeclaration),this.emitBlockWithAccess([i,` `,n,this.getProtocolString(e,r)],()=>{if(this._options.dense){let t,n=[],r=()=>{if(t===void 0)return;let e=this._options.mutableProperties,r=[[this._options.optionalEnums&&t.type.kind===`enum`?`@NilOnFail${this._options.namedTypePrefix} `:``,this.accessLevel,e||this._options.optionalEnums&&t.type.kind===`enum`?`var `:`let `]];n.forEach((e,t)=>{t>0&&r.push(`, `),r.push(e)}),r.push(`: `),r.push(this.swiftPropertyType(t)),this.emitLine(r),t=void 0,n=[]};this.forEachClassProperty(e,`none`,(i,a,o)=>{let s=this.descriptionForClassProperty(e,a);(!o.equals(t)||n.length>=g||s!==void 0)&&r(),t===void 0&&(t=o),n.push(i),s!==void 0&&(this.emitDescription(s),r())}),r()}else this.forEachClassProperty(e,`none`,(t,n,r)=>{let i=this.descriptionForClassProperty(e,n),a=this.propertyLinesDefinition(t,r);this.emitDescription(i),this.emitLine(a)});if(!this._options.justTypes){let n=this.getEnumPropertyGroups(e);!n.every(e=>e.every(e=>e.label===void 0))&&e.getProperties().size>0&&(this.ensureBlankLine(),this.emitBlock(`enum CodingKeys: String, CodingKey`,()=>{for(let e of n){let{name:n,label:r}=e[0];if(this._options.explicitCodingKeys&&r!==void 0)this.emitLine(`case `,n,` = "`,r,`"`);else{let n=(0,t.arrayIntercalate)(`, `,e.map(e=>e.name));this.emitLine(`case `,n)}}}))}if(r||this._options.accessLevel===`public`){this.ensureBlankLine();let t=this.initializableProperties(e),n=[];for(let e of t)n.length>0&&n.push(`, `),n.push(e.name,`: `,this.swiftPropertyType(e.parameter));this.propertyCount(e)===0&&this._options.objcSupport?this.emitBlockWithAccess([`override init()`],()=>``):this.emitBlockWithAccess([`init(`,...n,`)`],()=>{for(let e of t)this.emitLine(`self.`,e.name,` = `,e.name)})}}),this._options.justTypes||this._options.convenienceInitializers&&(this.ensureBlankLine(),this.emitMark(this.sourcelikeToString(n)+` convenience initializers and mutators`),this.ensureBlankLine(),this.emitConvenienceInitializersExtension(e,n),this.ensureBlankLine()),this.endFile()}initializableProperties(e){let t=[];return this.forEachClassProperty(e,`none`,(e,n,r,i)=>{let a={name:e,jsonName:n,parameter:r,position:i};t.push(a)}),t}emitNewEncoderDecoder(){this.emitBlock(`func newJSONDecoder() -> JSONDecoder`,()=>{this.emitLine(`let decoder = JSONDecoder()`),this._options.linux?this.emitMultiline(`decoder.dateDecodingStrategy = .custom({ (decoder) -> Date in
739
+ let container = try decoder.singleValueContainer()
740
+ let dateStr = try container.decode(String.self)
741
+
742
+ let formatter = DateFormatter()
743
+ formatter.calendar = Calendar(identifier: .iso8601)
744
+ formatter.locale = Locale(identifier: "en_US_POSIX")
745
+ formatter.timeZone = TimeZone(secondsFromGMT: 0)
746
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSXXXXX"
747
+ if let date = formatter.date(from: dateStr) {
748
+ return date
749
+ }
750
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssXXXXX"
751
+ if let date = formatter.date(from: dateStr) {
752
+ return date
753
+ }
754
+ throw DecodingError.typeMismatch(Date.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Could not decode date"))
755
+ })`):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()
756
+ formatter.calendar = Calendar(identifier: .iso8601)
757
+ formatter.locale = Locale(identifier: "en_US_POSIX")
758
+ formatter.timeZone = TimeZone(secondsFromGMT: 0)
759
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssXXXXX"
760
+ 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(e,t){let n=this._options.useClasses||this.isCycleBreakerType(e),r=n?`convenience `:``;this.emitBlockWithAccess([`extension `,t],()=>{n?this.emitBlock(`convenience init(data: Data) throws`,()=>{this.propertyCount(e)>0?this.emitLine(`let me = try newJSONDecoder().decode(`,this.swiftType(e),`.self, from: data)`):this.emitLine(`let _ = try newJSONDecoder().decode(`,this.swiftType(e),`.self, from: data)`);let t=[];this.forEachClassProperty(e,`none`,e=>{t.length>0&&t.push(`, `),t.push(e,`: `,`me.`,e)}),this.emitLine(`self.init(`,...t,`)`)}):this.emitBlock(`init(data: Data) throws`,()=>{this.emitLine(`self = try newJSONDecoder().decode(`,this.swiftType(e),`.self, from: data)`)}),this.ensureBlankLine(),this.emitBlock([r,`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([r,`init(fromURL url: URL) throws`],()=>{this.emitLine(`try self.init(data: try Data(contentsOf: url))`)}),this.ensureBlankLine(),this.emitConvenienceMutator(e,t),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(e,t){this.startFile(t),this.emitLineOnce(`import Foundation`),this.ensureBlankLine(),this.emitDescription(this.descriptionForType(e));let n=[];this._options.justTypes||(n.push(`String`),n.push(`Codable`)),this._options.protocol.hashable&&n.push(`Hashable`),this._options.protocol.equatable&&n.push(`Equatable`);let r=n.length>0?`: `+n.join(`, `):``;this._options.justTypes?this.emitBlockWithAccess([`enum `,t,r],()=>{this.forEachEnumCase(e,`none`,e=>{this.emitLine(`case `,e)})}):this.emitBlockWithAccess([`enum `,t,r],()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(`case `,e,` = "`,T(t),`"`)})}),this.endFile()}renderUnionDefinition(e,t){this.startFile(t),this.emitLineOnce(`import Foundation`),this.ensureBlankLine();function n(e){let t=e.kind;return t===`class`?t:`_`+t}let r=t=>{this.emitBlock([`if let x = try? container.decode(`,this.swiftType(t),`.self)`],()=>{this.emitLine(`self = .`,this.nameForUnionMember(e,t),`(x)`),this.emitLine(`return`)})};this.emitDescription(this.descriptionForType(e));let i=this.isCycleBreakerType(e)?`indirect `:``,[a,s]=(0,o.removeNullFromUnion)(e,n);this.emitBlockWithAccess([i,`enum `,t,this.getProtocolString(e,!1)],()=>{this.forEachUnionMember(e,s,`none`,null,(e,t)=>{this.emitLine(`case `,e,`(`,this.swiftType(t),`)`)}),a!==null&&this.emitLine(`case `,this.nameForUnionMember(e,a)),this._options.justTypes||(this.ensureBlankLine(),this.emitBlockWithAccess(`init(from decoder: Decoder) throws`,()=>{this.emitLine(`let container = try decoder.singleValueContainer()`);let n=e.findMember(`bool`);n!==void 0&&r(n);let i=e.findMember(`integer`);i!==void 0&&r(i);for(let e of s)e.kind===`bool`||e.kind===`integer`||r(e);a!==null&&this.emitBlock(`if container.decodeNil()`,()=>{this.emitLine(`self = .`,this.nameForUnionMember(e,a)),this.emitLine(`return`)}),this.emitDecodingError(t)}),this.ensureBlankLine(),this.emitBlockWithAccess(`func encode(to encoder: Encoder) throws`,()=>{this.emitLine(`var container = encoder.singleValueContainer()`),this.emitLine(`switch self {`),this.forEachUnionMember(e,s,`none`,null,(e,t)=>{this.emitLine(`case .`,e,`(let x):`),this.indent(()=>this.emitLine(`try container.encode(x)`))}),a!==null&&(this.emitLine(`case .`,this.nameForUnionMember(e,a),`:`),this.indent(()=>this.emitLine(`try container.encodeNil()`))),this.emitLine(`}`)}))}),this.endFile()}emitTopLevelMapAndArrayConvenienceInitializerExtensions(e,t){let n;if(e instanceof i.ArrayType)n=[`Array where Element == `,t,`.Element`];else if(e instanceof i.MapType)n=[`Dictionary where Key == String, Value == `,this.swiftType(e.values)];else return;this.emitBlockWithAccess([`extension `,n],()=>{this.emitBlock([`init(data: Data) throws`],()=>{this.emitLine(`self = try newJSONDecoder().decode(`,t,`.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(e){this.emitLine(`throw DecodingError.typeMismatch(`,e,`.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for `,e,`"))`)}emitConvenienceMutator(e,t){this.emitLine(`func with(`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n,r)=>{this.emitLine(e,`: `,this.swiftPropertyType(n),`? = nil`,r!==`only`&&r!==`last`?`,`:``)})}),this.emitBlock([`) -> `,t],()=>{this.emitLine(`return `,t,`(`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n,r)=>{this.emitLine(e,`: `,e,` ?? self.`,e,r!==`only`&&r!==`last`?`,`:``)})}),this.emitLine(`)`)})}emitMark(e,t=!1){this.emitLine(`// MARK:`,t?` - `:` `,e)}emitSourceStructure(){this._options.multiFileOutput===!1&&this.renderSingleFileHeaderComments(),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.renderClassDefinition(e,t),(e,t)=>this.renderEnumDefinition(e,t),(e,t)=>this.renderUnionDefinition(e,t)),this._options.justTypes||this.emitSupportFunctions4(),this._options.optionalEnums&&this.emitBlockWithAccess(`@propertyWrapper public struct NilOnFail${this._options.namedTypePrefix}<T: Codable>: Codable`,()=>{this.emitMultiline(`
761
+ public let wrappedValue: T?
762
+ public init(from decoder: Decoder) throws {
763
+ wrappedValue = try? T(from: decoder)
764
+ }
765
+ public init(_ wrappedValue: T?) {
766
+ self.wrappedValue = wrappedValue
767
+ }`)})}emitAlamofireExtension(){this.ensureBlankLine(),this.emitBlockWithAccess(`extension DataRequest`,()=>{this.emitMultiline(`fileprivate func decodableResponseSerializer<T: Decodable>() -> DataResponseSerializer<T> {
768
+ return DataResponseSerializer { _, response, data, error in
769
+ guard error == nil else { return .failure(error!) }
770
+
771
+ guard let data = data else {
772
+ return .failure(AFError.responseSerializationFailed(reason: .inputDataNil))
773
+ }
774
+
775
+ return Result { try newJSONDecoder().decode(T.self, from: data) }
776
+ }
777
+ }
778
+
779
+ @discardableResult
780
+ fileprivate func responseDecodable<T: Decodable>(queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse<T>) -> Void) -> Self {
781
+ return response(queue: queue, responseSerializer: decodableResponseSerializer(), completionHandler: completionHandler)
782
+ }`),this.ensureBlankLine(),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>{this.emitLine(`@discardableResult`),this.emitBlock([`func response`,t,`(queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse<`,t,`>) -> Void) -> Self`],()=>{this.emitLine(`return responseDecodable(queue: queue, completionHandler: completionHandler)`)})})})}};e.SwiftRenderer=E})),Qa=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.KotlinXRenderer=e.KotlinJacksonRenderer=e.KotlinKlaxonRenderer=e.KotlinRenderer=e.KotlinTargetLanguage=e.kotlinOptions=e.Framework=void 0;var t=a(),n=Da(),r=Ra(),i=Ta(),o=ra(),s=Ea(),c=ua(),l=Q(),u=Ba(),d=wa(),f=ha(),p=ia(),m;(function(e){e[e.None=0]=`None`,e[e.Jackson=1]=`Jackson`,e[e.Klaxon=2]=`Klaxon`,e[e.KotlinX=3]=`KotlinX`})(m=e.Framework||={}),e.kotlinOptions={framework:new o.EnumOption(`framework`,`Serialization framework`,[[`just-types`,m.None],[`jackson`,m.Jackson],[`klaxon`,m.Klaxon],[`kotlinx`,m.KotlinX]],`klaxon`),acronymStyle:(0,p.acronymOption)(p.AcronymStyleOptions.Pascal),packageName:new o.StringOption(`package`,`Package`,`PACKAGE`,`quicktype`)},e.KotlinTargetLanguage=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(t,n){let r=(0,o.getOptionValues)(e.kotlinOptions,n);switch(r.framework){case m.None:return new C(this,t,r);case m.Jackson:return new T(this,t,r);case m.Klaxon:return new w(this,t,r);case m.KotlinX:return new E(this,t,r);default:return(0,l.assertNever)(r.framework)}}};var h=`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`.split(`.`);function g(e){return(0,c.isLetterOrUnderscore)(e)||(0,c.isNumeric)(e)}function _(e){return g(e)&&!(0,c.isDigit)(e)}var v=(0,c.legalizeCharacters)(g);function y(e,t,n=c.allUpperWordStyle){let r=(0,c.splitIntoWords)(t);return(0,c.combineWords)(r,v,e?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,e?c.allUpperWordStyle:c.allLowerWordStyle,n,``,_)}function b(e){return`\\u`+(0,c.intToHex)(e,4)}var x=(0,c.utf32ConcatMap)((0,c.escapeNonPrintableMapper)(c.isPrintable,b));function S(e){return x(e).replace(/\$/g,`\\$`)}var C=class extends r.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._kotlinOptions=n}forbiddenNamesForGlobalNamespace(){return h}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!1}}topLevelNameStyle(e){return y(!0,e)}makeNamedTypeNamer(){return(0,i.funPrefixNamer)(`upper`,e=>y(!0,e,(0,p.acronymStyle)(this._kotlinOptions.acronymStyle)))}namerForObjectProperty(){return(0,i.funPrefixNamer)(`lower`,e=>y(!1,e,(0,p.acronymStyle)(this._kotlinOptions.acronymStyle)))}makeUnionMemberNamer(){return(0,i.funPrefixNamer)(`upper`,e=>y(!0,e)+`Value`)}makeEnumCaseNamer(){return(0,i.funPrefixNamer)(`upper`,e=>y(!0,e,(0,p.acronymStyle)(this._kotlinOptions.acronymStyle)))}emitDescriptionBlock(e){this.emitCommentLines(e,` * `,`/**`,` */`)}emitBlock(e,t,n=`curly`){let[r,i]=n===`curly`?[`{`,`}`]:n===`paren`?[`(`,`)`]:[`{`,`})`];this.emitLine(e,` `,r),this.indent(t),this.emitLine(i)}anySourceType(e){return[`Any`,e]}arrayType(e,t=!1,n=!1){return[`List<`,this.kotlinType(e.items,t),`>`]}mapType(e,t=!1,n=!1){return[`Map<String, `,this.kotlinType(e.values,t),`>`]}kotlinType(e,t=!1,r=!1){let i=r?``:`?`;return(0,f.matchType)(e,e=>(0,s.maybeAnnotated)(t,n.anyTypeIssueAnnotation,this.anySourceType(i)),e=>(0,s.maybeAnnotated)(t,n.nullTypeIssueAnnotation,this.anySourceType(i)),e=>`Boolean`,e=>`Long`,e=>`Double`,e=>`String`,e=>this.arrayType(e,t),e=>this.nameForNamedType(e),e=>this.mapType(e,t),e=>this.nameForNamedType(e),e=>{let n=(0,f.nullableFromUnion)(e);return n===null?this.nameForNamedType(e):[this.kotlinType(n,t),i]})}emitUsageHeader(){}emitHeader(){this.leadingComments===void 0?this.emitUsageHeader():this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitLine(`package `,this._kotlinOptions.packageName),this.ensureBlankLine()}emitTopLevelArray(e,t){let n=this.kotlinType(e.items);this.emitLine([`typealias `,t,` = ArrayList<`,n,`>`])}emitTopLevelMap(e,t){let n=this.kotlinType(e.values);this.emitLine([`typealias `,t,` = HashMap<String, `,n,`>`])}emitEmptyClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitClassAnnotations(e,t),this.emitLine(`class `,t,`()`)}emitClassDefinition(e,t){if(e.getProperties().size===0){this.emitEmptyClassDefinition(e,t);return}let n=e=>e.isOptional?[this.kotlinType(e.type,!0,!0),`?`]:this.kotlinType(e.type,!0);this.emitDescription(this.descriptionForType(e)),this.emitClassAnnotations(e,t),this.emitLine(`data class `,t,` (`),this.indent(()=>{let t=e.getProperties().size,r=!0;this.forEachClassProperty(e,`none`,(i,a,o)=>{let s=o.type.kind===`union`&&(0,f.nullableFromUnion)(o.type)!==null,c=o.isOptional||o.type.kind===`null`||s,l=--t===0,u=[],d=this.descriptionForClassProperty(e,a);d!==void 0&&u.push(()=>this.emitDescription(d)),this.renameAttribute(i,a,!c,u),u.length>0&&!r&&this.ensureBlankLine();for(let e of u)e();this.emitLine(`val `,i,`: `,n(o),c?` = null`:``,l?``:`,`),u.length>0&&!l&&this.ensureBlankLine(),r=!1})}),this.emitClassDefinitionMethods(e,t)}emitClassDefinitionMethods(e,t){this.emitLine(`)`)}emitClassAnnotations(e,t){}renameAttribute(e,t,n,r){}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`enum class `,t],()=>{let t=e.cases.size;this.forEachEnumCase(e,`none`,e=>{this.emitLine(e,--t===0?``:`,`)})})}emitUnionDefinition(e,t){function n(e){let t=e.kind;return t===`class`?t:`_`+t}this.emitDescription(this.descriptionForType(e));let[r,i]=(0,f.removeNullFromUnion)(e,n);this.emitClassAnnotations(e,t),this.emitBlock([`sealed class `,t],()=>{{let n=[];this.forEachUnionMember(e,i,`none`,null,(e,r)=>{n.push([[`class `,e,`(val value: `,this.kotlinType(r),`)`],[` : `,t,`()`]])}),r!==null&&n.push([[`class `,this.nameForUnionMember(e,r),`()`],[` : `,t,`()`]]),this.emitTable(n)}this.emitUnionDefinitionMethods(e,i,r,t)})}emitUnionDefinitionMethods(e,t,n,r){}emitSourceStructure(){this.emitHeader(),this.forEachTopLevel(`leading`,(e,t)=>{e instanceof d.ArrayType?this.emitTopLevelArray(e,t):e instanceof d.MapType&&this.emitTopLevelMap(e,t)}),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>this.emitUnionDefinition(e,t))}};e.KotlinRenderer=C;var w=class extends C{constructor(e,t,n){super(e,t,n)}unionMemberFromJsonValue(e,t){return(0,f.matchType)(e,e=>[t,`.inside`],e=>`null`,e=>[t,`.boolean`],e=>[`(`,t,`.int?.toLong() ?: `,t,`.longValue)`],e=>[t,`.double`],e=>[t,`.string`],e=>[t,`.array?.let { klaxon.parseFromJsonArray<`,this.kotlinType(e.items),`>(it) }`],n=>[t,`.obj?.let { klaxon.parseFromJsonObject<`,this.kotlinType(e),`>(it) }`],n=>[t,`.obj?.let { klaxon.parseFromJsonObject<`,this.kotlinType(e),`>(it) }`],e=>[t,`.string?.let { `,this.kotlinType(e),`.fromValue(it) }`],e=>(0,l.mustNotHappen)())}unionMemberJsonValueGuard(e,t){return(0,f.matchType)(e,e=>`is Any`,e=>`null`,e=>`is Boolean`,e=>`is Int, is Long`,e=>`is Double`,e=>`is String`,e=>`is JsonArray<*>`,e=>`is JsonObject`,e=>`is JsonObject`,e=>`is String`,e=>(0,l.mustNotHappen)())}emitUsageHeader(){this.emitLine(`// To parse the JSON, install Klaxon and do:`),this.emitLine(`//`),this.forEachTopLevel(`none`,(e,t)=>{this.emitLine(`// val `,(0,s.modifySource)(c.camelCase,t),` = `,t,`.fromJson(jsonString)`)})}emitHeader(){super.emitHeader(),this.emitLine(`import com.beust.klaxon.*`);let e=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),e=>e instanceof d.UnionType&&(0,f.nullableFromUnion)(e)===null),n=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),e=>e instanceof d.ClassType&&e.getProperties().size===0);(e||this.haveEnums||n)&&this.emitGenericConverter();let r=[];n&&r.push([[`.convert(JsonObject::class,`],[` { it.obj!! },`],[` { it.toJsonString() })`]]),this.forEachEnum(`none`,(e,t)=>{r.push([[`.convert(`,t,`::class,`],[` { `,t,`.fromValue(it.string!!) },`],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion(`none`,(e,t)=>{r.push([[`.convert(`,t,`::class,`],[` { `,t,`.fromJson(it) },`],[` { it.toJson() }, true)`]])}),this.ensureBlankLine(),this.emitLine(`private val klaxon = Klaxon()`),r.length>0&&this.indent(()=>this.emitTable(r))}emitTopLevelArray(e,t){let n=this.kotlinType(e.items);this.emitBlock([`class `,t,`(elements: Collection<`,n,`>) : ArrayList<`,n,`>(elements)`],()=>{this.emitLine(`public fun toJson() = klaxon.toJsonString(this)`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`public fun fromJson(json: String) = `,t,`(klaxon.parseArray<`,n,`>(json)!!)`)})})}emitTopLevelMap(e,t){let n=this.kotlinType(e.values);this.emitBlock([`class `,t,`(elements: Map<String, `,n,`>) : HashMap<String, `,n,`>(elements)`],()=>{this.emitLine(`public fun toJson() = klaxon.toJsonString(this)`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitBlock([`public fun fromJson(json: String) = `,t],()=>{this.emitLine(`klaxon.parseJsonObject(java.io.StringReader(json)) as Map<String, `,n,`>`)},`paren`)})})}klaxonRenameAttribute(e,n,r=!1){let i=S(n),a=this.sourcelikeToString(e)!==i,o=[];return a&&o.push([`name = "`,i,`"`]),r&&o.push(`ignored = true`),o.length===0?void 0:[`@Json(`,(0,t.arrayIntercalate)(`, `,o),`)`]}emitEmptyClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`typealias `,t,` = JsonObject`)}emitClassDefinitionMethods(e,n){(0,t.iterableSome)(this.topLevels,([t,n])=>n===e)?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<`,n,`>(json)`)})}):this.emitLine(`)`)}renameAttribute(e,t,n,r){let i=this.klaxonRenameAttribute(e,t);i!==void 0&&r.push(()=>this.emitLine(i))}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`enum class `,t,`(val value: String)`],()=>{let n=e.cases.size;this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(e,`("${S(t)}")`,--n===0?`;`:`,`)}),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitBlock([`public fun fromValue(value: String): `,t,` = when (value)`],()=>{let t=[];this.forEachEnumCase(e,`none`,(e,n)=>{t.push([[`"${S(n)}"`],[` -> `,e]])}),t.push([[`else`],[` -> throw IllegalArgumentException()`]]),this.emitTable(t)})})})}emitGenericConverter(){this.ensureBlankLine(),this.emitLine(`private fun <T> Klaxon.convert(k: kotlin.reflect.KClass<*>, fromJson: (JsonValue) -> T, toJson: (T) -> String, isUnion: Boolean = false) =`),this.indent(()=>{this.emitLine(`this.converter(object: Converter {`),this.indent(()=>{this.emitLine(`@Suppress("UNCHECKED_CAST")`),this.emitTable([[`override fun toJson(value: Any)`,` = toJson(value as T)`],[`override fun fromJson(jv: JsonValue)`,` = fromJson(jv) as Any`],[`override fun canConvert(cls: Class<*>)`,` = cls == k.java || (isUnion && cls.superclass == k.java)`]])}),this.emitLine(`})`)})}emitUnionDefinitionMethods(e,t,n,r){this.ensureBlankLine(),this.emitLine(`public fun toJson(): String = klaxon.toJsonString(when (this) {`),this.indent(()=>{let r=[];if(this.forEachUnionMember(e,t,`none`,null,e=>{r.push([[`is `,e],[` -> this.value`]])}),n!==null){let t=this.nameForUnionMember(e,n);r.push([[`is `,t],[` -> "null"`]])}this.emitTable(r)}),this.emitLine(`})`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`public fun fromJson(jv: JsonValue): `,r,` = when (jv.inside) {`),this.indent(()=>{let r=[];if(this.forEachUnionMember(e,t,`none`,null,(e,t)=>{r.push([[this.unionMemberJsonValueGuard(t,`jv.inside`)],[` -> `,e,`(`,this.unionMemberFromJsonValue(t,`jv`),`!!)`]])}),n!==null){let t=this.nameForUnionMember(e,n);r.push([[this.unionMemberJsonValueGuard(n,`jv.inside`)],[` -> `,t,`()`]])}r.push([[`else`],[` -> throw IllegalArgumentException()`]]),this.emitTable(r)}),this.emitLine(`}`)})}};e.KotlinKlaxonRenderer=w;var T=class extends C{constructor(e,t,n){super(e,t,n)}unionMemberJsonValueGuard(e,t){return(0,f.matchType)(e,e=>`is Any`,e=>`null`,e=>`is BooleanNode`,e=>`is IntNode, is LongNode`,e=>`is DoubleNode`,e=>`is TextNode`,e=>`is ArrayNode`,e=>`is ObjectNode`,e=>`is ObjectNode`,e=>`is TextNode`,e=>(0,l.mustNotHappen)())}emitUsageHeader(){this.emitLine(`// To parse the JSON, install jackson-module-kotlin and do:`),this.emitLine(`//`),this.forEachTopLevel(`none`,(e,t)=>{this.emitLine(`// val `,(0,s.modifySource)(c.camelCase,t),` = `,t,`.fromJson(jsonString)`)})}emitHeader(){super.emitHeader(),this.emitMultiline(`import com.fasterxml.jackson.annotation.*
783
+ import com.fasterxml.jackson.core.*
784
+ import com.fasterxml.jackson.databind.*
785
+ import com.fasterxml.jackson.databind.deser.std.StdDeserializer
786
+ import com.fasterxml.jackson.databind.module.SimpleModule
787
+ import com.fasterxml.jackson.databind.node.*
788
+ import com.fasterxml.jackson.databind.ser.std.StdSerializer
789
+ import com.fasterxml.jackson.module.kotlin.*`);let e=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),e=>e instanceof d.UnionType&&(0,f.nullableFromUnion)(e)===null),n=(0,t.iterableSome)(this.typeGraph.allNamedTypes(),e=>e instanceof d.ClassType&&e.getProperties().size===0);(e||this.haveEnums||n)&&this.emitGenericConverter();let r=[];this.forEachEnum(`none`,(e,t)=>{r.push([[`convert(`,t,`::class,`],[` { `,t,`.fromValue(it.asText()) },`],[' { "\\"${it.value}\\"" })']])}),this.forEachUnion(`none`,(e,t)=>{r.push([[`convert(`,t,`::class,`],[` { `,t,`.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)`)}),r.length>0&&this.indent(()=>this.emitTable(r)),this.emitLine(`}`)}emitTopLevelArray(e,t){let n=this.kotlinType(e.items);this.emitBlock([`class `,t,`(elements: Collection<`,n,`>) : ArrayList<`,n,`>(elements)`],()=>{this.emitLine(`fun toJson() = mapper.writeValueAsString(this)`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`fun fromJson(json: String) = mapper.readValue<`,t,`>(json)`)})})}emitTopLevelMap(e,t){let n=this.kotlinType(e.values);this.emitBlock([`class `,t,`(elements: Map<String, `,n,`>) : HashMap<String, `,n,`>(elements)`],()=>{this.emitLine(`fun toJson() = mapper.writeValueAsString(this)`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`fun fromJson(json: String) = mapper.readValue<`,t,`>(json)`)})})}jacksonRenameAttribute(e,n,r,i=!1){let a=S(n),o=this.sourcelikeToString(e)!==a,s=[],c=n.startsWith(`is`),l=[];return(o||c)&&l.push(`"`+a+`"`),r&&l.push(`required=true`),l.length>0&&(s.push([`@get:JsonProperty(`,(0,t.arrayIntercalate)(`, `,l),`)`]),s.push([`@field:JsonProperty(`,(0,t.arrayIntercalate)(`, `,l),`)`])),i&&(s.push(`@get:JsonIgnore`),s.push(`@field:JsonIgnore`)),s.length===0?void 0:s}emitEmptyClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`typealias `,t,` = JsonNode`)}emitClassDefinitionMethods(e,n){(0,t.iterableSome)(this.topLevels,([t,n])=>n===e)?this.emitBlock(`)`,()=>{this.emitLine(`fun toJson() = mapper.writeValueAsString(this)`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`fun fromJson(json: String) = mapper.readValue<`,n,`>(json)`)})}):this.emitLine(`)`)}renameAttribute(e,t,n,r){let i=this.jacksonRenameAttribute(e,t,n);i!==void 0&&r.push(()=>this.emitLine(i))}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`enum class `,t,`(val value: String)`],()=>{let n=e.cases.size;this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(e,`("${S(t)}")`,--n===0?`;`:`,`)}),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitBlock([`fun fromValue(value: String): `,t,` = when (value)`],()=>{let t=[];this.forEachEnumCase(e,`none`,(e,n)=>{t.push([[`"${S(n)}"`],[` -> `,e]])}),t.push([[`else`],[` -> throw IllegalArgumentException()`]]),this.emitTable(t)})})})}emitGenericConverter(){this.ensureBlankLine(),this.emitMultiline(`
790
+ @Suppress("UNCHECKED_CAST")
791
+ private fun <T> ObjectMapper.convert(k: kotlin.reflect.KClass<*>, fromJson: (JsonNode) -> T, toJson: (T) -> String, isUnion: Boolean = false) = registerModule(SimpleModule().apply {
792
+ addSerializer(k.java as Class<T>, object : StdSerializer<T>(k.java as Class<T>) {
793
+ override fun serialize(value: T, gen: JsonGenerator, provider: SerializerProvider) = gen.writeRawValue(toJson(value))
794
+ })
795
+ addDeserializer(k.java as Class<T>, object : StdDeserializer<T>(k.java as Class<T>) {
796
+ override fun deserialize(p: JsonParser, ctxt: DeserializationContext) = fromJson(p.readValueAsTree())
797
+ })
798
+ })`)}emitUnionDefinitionMethods(e,t,n,r){this.ensureBlankLine(),this.emitLine(`fun toJson(): String = mapper.writeValueAsString(when (this) {`),this.indent(()=>{let r=[];if(this.forEachUnionMember(e,t,`none`,null,e=>{r.push([[`is `,e],[` -> this.value`]])}),n!==null){let t=this.nameForUnionMember(e,n);r.push([[`is `,t],[` -> "null"`]])}this.emitTable(r)}),this.emitLine(`})`),this.ensureBlankLine(),this.emitBlock(`companion object`,()=>{this.emitLine(`fun fromJson(jn: JsonNode): `,r,` = when (jn) {`),this.indent(()=>{let r=[];if(this.forEachUnionMember(e,t,`none`,null,(e,t)=>{r.push([[this.unionMemberJsonValueGuard(t,`jn`)],[` -> `,e,`(mapper.treeToValue(jn))`]])}),n!==null){let t=this.nameForUnionMember(e,n);r.push([[this.unionMemberJsonValueGuard(n,`jn`)],[` -> `,t,`()`]])}r.push([[`else`],[` -> throw IllegalArgumentException()`]]),this.emitTable(r)}),this.emitLine(`}`)})}};e.KotlinJacksonRenderer=T;var E=class extends C{constructor(e,t,n){super(e,t,n)}anySourceType(e){return[`JsonElement`,e]}arrayType(e,t=!1,n=!1){let r=this.kotlinType(e.items,t,!0),i=this.sourcelikeToString(r);return i===`JsonObject`||i===`JsonElement`?`JsonArray`:super.arrayType(e,t,n)}mapType(e,t=!1,n=!1){let r=this.kotlinType(e.values,t,!0),i=this.sourcelikeToString(r);return i===`JsonObject`||i===`JsonElement`?`JsonObject`:super.mapType(e,t,n)}emitTopLevelMap(e,t){this.kotlinType(e.values)===`JsonObject`?this.emitLine([`typealias `,t,` = JsonObject`]):super.emitTopLevelMap(e,t)}emitTopLevelArray(e,t){let n=this.kotlinType(e.items);this.emitLine([`typealias `,t,` = JsonArray<`,n,`>`])}emitUsageHeader(){this.emitLine(`// To parse the JSON, install kotlin's serialization plugin and do:`),this.emitLine(`//`);let e=[];e.push([`// val `,`json`,` = Json { allowStructuredMapKeys = true }`]),this.forEachTopLevel(`none`,(t,n)=>{e.push([`// val `,(0,s.modifySource)(c.camelCase,n),` = json.parse(${this.sourcelikeToString(n)}.serializer(), jsonString)`])}),this.emitTable(e)}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(e,t){this.emitLine(`@Serializable`)}renameAttribute(e,t,n,r){let i=this._rename(e,t);i!==void 0&&r.push(()=>this.emitLine(i))}_rename(e,t){let n=S(t);if(this.sourcelikeToString(e)!==n)return[`@SerialName("`,n,`")`]}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine([`@Serializable`]),this.emitBlock([`enum class `,t,`(val value: String)`],()=>{let t=e.cases.size;this.forEachEnumCase(e,`none`,(e,n)=>{let r=S(n);this.emitLine(`@SerialName("${r}") `,e,`("${r}")`,--t===0?`;`:`,`)})})}};e.KotlinXRenderer=E})),$a=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ElmRenderer=e.ElmTargetLanguage=e.elmOptions=void 0;var t=a(),n=Ba(),r=ra(),i=wa(),o=ha(),s=Ra(),c=Ta(),l=ua(),u=Q(),d=Ea(),f=Da();e.elmOptions={justTypes:new r.BooleanOption(`just-types`,`Plain types only`,!1),useList:new r.EnumOption(`array-type`,`Use Array or List`,[[`array`,!1],[`list`,!0]]),moduleName:new r.StringOption(`module`,`Generated module name`,`NAME`,`QuickType`)},e.ElmTargetLanguage=class 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(t,n){return new y(this,t,(0,r.getOptionValues)(e.elmOptions,n))}};var p=`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`.split(`.`),m=(0,l.legalizeCharacters)(e=>(0,l.isAscii)(e)&&(0,l.isLetterOrUnderscoreOrDigit)(e));function h(e,t){let n=(0,l.splitIntoWords)(e);return(0,l.combineWords)(n,m,t?l.firstUpperWordStyle:l.allLowerWordStyle,l.firstUpperWordStyle,t?l.allUpperWordStyle:l.allLowerWordStyle,l.allUpperWordStyle,``,l.isLetterOrUnderscore)}var g=(0,c.funPrefixNamer)(`upper`,e=>h(e,!0)),_=(0,c.funPrefixNamer)(`lower`,e=>h(e,!1));function v(e){function t(e){return{reqOrOpt:`Jpipe.optional`,fallback:e}}let n=e.type;return e.isOptional||n instanceof i.UnionType&&(0,o.nullableFromUnion)(n)!==null?t(` Nothing`):n.kind===`null`?t(` ()`):{reqOrOpt:`Jpipe.required`,fallback:``}}var y=class extends s.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._topLevelDependents=new Map,this._namedTypeDependents=new Map}forbiddenNamesForGlobalNamespace(){return p}makeTopLevelDependencyNames(e,t){let n=new c.DependencyName(_,t.order,e=>`${e(t)}_to_string`),r;return this.namedTypeToNameForTopLevel(e)===void 0&&(r=new c.DependencyName(_,t.order,e=>e(t))),this._topLevelDependents.set(t,{encoder:n,decoder:r}),r===void 0?[n]:[n,r]}makeNamedTypeNamer(){return g}makeNamedTypeDependencyNames(e,t){let n=new c.DependencyName(_,t.order,e=>`encode_${e(t)}`),r=new c.DependencyName(_,t.order,e=>e(t));return this._namedTypeDependents.set(t,{encoder:n,decoder:r}),[n,r]}namerForObjectProperty(){return _}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return g}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return g}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(e,t,n,r){return`${super.proposeUnionMemberName(e,t,n,r)}_in_${r(t)}`}get commentLineStart(){return`-- `}emitDescriptionBlock(e){e.length===1?this.emitLine(`{-| `,e[0],` -}`):this.emitCommentLines(e,``,void 0,`-}`,`{-| `)}get arrayType(){return this._options.useList?`List`:`Array`}elmType(e,t=!1){return(0,o.matchType)(e,e=>(0,d.singleWord)((0,d.annotated)(f.anyTypeIssueAnnotation,`Jdec.Value`)),e=>(0,d.singleWord)((0,d.annotated)(f.nullTypeIssueAnnotation,`()`)),e=>(0,d.singleWord)(`Bool`),e=>(0,d.singleWord)(`Int`),e=>(0,d.singleWord)(`Float`),e=>(0,d.singleWord)(`String`),e=>(0,d.multiWord)(` `,this.arrayType,(0,d.parenIfNeeded)(this.elmType(e.items))),e=>(0,d.singleWord)(this.nameForNamedType(e)),e=>(0,d.multiWord)(` `,`Dict String`,(0,d.parenIfNeeded)(this.elmType(e.values))),e=>(0,d.singleWord)(this.nameForNamedType(e)),e=>{let n=(0,o.nullableFromUnion)(e);if(n!==null){let e=this.elmType(n);return t?e:(0,d.multiWord)(` `,`Maybe`,(0,d.parenIfNeeded)(e))}return(0,d.singleWord)(this.nameForNamedType(e))})}elmProperty(e){return e.isOptional?(0,d.multiWord)(` `,`Maybe`,(0,d.parenIfNeeded)(this.elmType(e.type,!0))).source:this.elmType(e.type).source}decoderNameForNamedType(e){let t=this.nameForNamedType(e);return(0,u.defined)(this._namedTypeDependents.get(t)).decoder}decoderNameForType(e,t=!1){return(0,o.matchType)(e,e=>(0,d.singleWord)(`Jdec.value`),e=>(0,d.multiWord)(` `,`Jdec.null`,`()`),e=>(0,d.singleWord)(`Jdec.bool`),e=>(0,d.singleWord)(`Jdec.int`),e=>(0,d.singleWord)(`Jdec.float`),e=>(0,d.singleWord)(`Jdec.string`),e=>(0,d.multiWord)(` `,[`Jdec.`,(0,l.decapitalize)(this.arrayType)],(0,d.parenIfNeeded)(this.decoderNameForType(e.items))),e=>(0,d.singleWord)(this.decoderNameForNamedType(e)),e=>(0,d.multiWord)(` `,`Jdec.dict`,(0,d.parenIfNeeded)(this.decoderNameForType(e.values))),e=>(0,d.singleWord)(this.decoderNameForNamedType(e)),e=>{let n=(0,o.nullableFromUnion)(e);if(n!==null){let e=this.decoderNameForType(n);return t?e:(0,d.multiWord)(` `,`Jdec.nullable`,(0,d.parenIfNeeded)(e))}return(0,d.singleWord)(this.decoderNameForNamedType(e))})}decoderNameForProperty(e){return e.isOptional?(0,d.multiWord)(` `,`Jdec.nullable`,(0,d.parenIfNeeded)(this.decoderNameForType(e.type,!0))):this.decoderNameForType(e.type)}encoderNameForNamedType(e){let t=this.nameForNamedType(e);return(0,u.defined)(this._namedTypeDependents.get(t)).encoder}encoderNameForType(e,t=!1){return(0,o.matchType)(e,e=>(0,d.singleWord)(`identity`),e=>(0,d.multiWord)(` `,`always`,`Jenc.null`),e=>(0,d.singleWord)(`Jenc.bool`),e=>(0,d.singleWord)(`Jenc.int`),e=>(0,d.singleWord)(`Jenc.float`),e=>(0,d.singleWord)(`Jenc.string`),e=>(0,d.multiWord)(` `,[`make`,this.arrayType,`Encoder`],(0,d.parenIfNeeded)(this.encoderNameForType(e.items))),e=>(0,d.singleWord)(this.encoderNameForNamedType(e)),e=>(0,d.multiWord)(` `,`makeDictEncoder`,(0,d.parenIfNeeded)(this.encoderNameForType(e.values))),e=>(0,d.singleWord)(this.encoderNameForNamedType(e)),e=>{let n=(0,o.nullableFromUnion)(e);if(n!==null){let e=this.encoderNameForType(n);return t?e:(0,d.multiWord)(` `,`makeNullableEncoder`,(0,d.parenIfNeeded)(e))}return(0,d.singleWord)(this.encoderNameForNamedType(e))})}encoderNameForProperty(e){return e.isOptional?(0,d.multiWord)(` `,`makeNullableEncoder`,(0,d.parenIfNeeded)(this.encoderNameForType(e.type,!0))):this.encoderNameForType(e.type)}emitTopLevelDefinition(e,t){this.emitLine(`type alias `,t,` = `,this.elmType(e).source)}emitClassDefinition(e,t){let n=this.descriptionForType(e);this.forEachClassProperty(e,`none`,(t,r)=>{let i=this.descriptionForClassProperty(e,r);i!==void 0&&(n===void 0?n=[]:n.push(``),n.push(`${this.sourcelikeToString(t)}:`),n.push(...i))}),this.emitDescription(n),this.emitLine(`type alias `,t,` =`),this.indent(()=>{let t=!0;this.forEachClassProperty(e,`none`,(e,n,r)=>{this.emitLine(t?`{`:`,`,` `,e,` : `,this.elmProperty(r)),t=!1}),t&&this.emitLine(`{`),this.emitLine(`}`)})}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`type `,t),this.indent(()=>{let t=!0;this.forEachEnumCase(e,`none`,e=>{let n=t?`=`:`|`;this.emitLine(n,` `,e),t=!1})})}emitUnionDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`type `,t),this.indent(()=>{let t=!0;this.forEachUnionMember(e,null,`none`,null,(e,n)=>{let r=t?`=`:`|`;n.kind===`null`?this.emitLine(r,` `,e):this.emitLine(r,` `,e,` `,(0,d.parenIfNeeded)(this.elmType(n))),t=!1})})}emitTopLevelFunctions(e,t){let{encoder:n,decoder:r}=(0,u.defined)(this._topLevelDependents.get(t));this.namedTypeToNameForTopLevel(e)===void 0&&(this.emitLine((0,u.defined)(r),` : Jdec.Decoder `,t),this.emitLine((0,u.defined)(r),` = `,this.decoderNameForType(e).source),this.ensureBlankLine()),this.emitLine(n,` : `,t,` -> String`),this.emitLine(n,` r = Jenc.encode 0 (`,this.encoderNameForType(e).source,` r)`)}emitClassFunctions(e,t){let n=this.decoderNameForNamedType(e);this.emitLine(n,` : Jdec.Decoder `,t),this.emitLine(n,` =`),this.indent(()=>{this.emitLine(`Jpipe.decode `,t),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{let r=(0,d.parenIfNeeded)(this.decoderNameForProperty(n)),{reqOrOpt:i,fallback:a}=v(n);this.emitLine(`|> `,i,` "`,(0,l.stringEscape)(t),`" `,r,a)})})}),this.ensureBlankLine();let r=this.encoderNameForNamedType(e);this.emitLine(r,` : `,t,` -> Jenc.Value`),this.emitLine(r,` x =`),this.indent(()=>{this.emitLine(`Jenc.object`),this.indent(()=>{let t=!0;this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=t?`[`:`,`,a=this.encoderNameForProperty(r).source;this.emitLine(i,` ("`,(0,l.stringEscape)(n),`", `,a,` x.`,e,`)`),t=!1}),t&&this.emitLine(`[`),this.emitLine(`]`)})})}emitEnumFunctions(e,t){let n=this.decoderNameForNamedType(e);this.emitLine(n,` : Jdec.Decoder `,t),this.emitLine(n,` =`),this.indent(()=>{this.emitLine(`Jdec.string`),this.indent(()=>{this.emitLine(`|> Jdec.andThen (\\str ->`),this.indent(()=>{this.emitLine(`case str of`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(`"`,(0,l.stringEscape)(t),`" -> Jdec.succeed `,e)}),this.emitLine(`somethingElse -> Jdec.fail <| "Invalid `,t,`: " ++ somethingElse`)})}),this.emitLine(`)`)})}),this.ensureBlankLine();let r=this.encoderNameForNamedType(e);this.emitLine(r,` : `,t,` -> Jenc.Value`),this.emitLine(r,` x = case x of`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine(e,` -> Jenc.string "`,(0,l.stringEscape)(t),`"`)})})}emitUnionFunctions(e,t){function n(e,t){return t.kind===`array`?` array`:t.kind===`double`?` xdouble`:t.isPrimitive()?` `+t.kind:t.kind}let r=this.decoderNameForNamedType(e);this.emitLine(r,` : Jdec.Decoder `,t),this.emitLine(r,` =`),this.indent(()=>{this.emitLine(`Jdec.oneOf`),this.indent(()=>{let t=!0;this.forEachUnionMember(e,null,`none`,n,(e,n)=>{let r=t?`[`:`,`;if(n.kind===`null`)this.emitLine(r,` Jdec.null `,e);else{let t=(0,d.parenIfNeeded)(this.decoderNameForType(n));this.emitLine(r,` Jdec.map `,e,` `,t)}t=!1}),this.emitLine(`]`)})}),this.ensureBlankLine();let i=this.encoderNameForNamedType(e);this.emitLine(i,` : `,t,` -> Jenc.Value`),this.emitLine(i,` x = case x of`),this.indent(()=>{this.forEachUnionMember(e,null,`none`,n,(e,t)=>{if(t.kind===`null`)this.emitLine(e,` -> Jenc.null`);else{let n=this.encoderNameForType(t).source;this.emitLine(e,` y -> `,n,` y`)}})})}emitSourceStructure(){let e=[],n=[];this.forEachTopLevel(`none`,(t,r)=>{let{encoder:i,decoder:a}=(0,u.defined)(this._topLevelDependents.get(r));a===void 0&&(a=(0,u.defined)(this._namedTypeDependents.get(r)).decoder),n.push(a),e.push(r,i,a)}),this.forEachObject(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push(r)}),this.forEachEnum(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push([r,`(..)`])}),this.forEachUnion(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push([r,`(..)`])}),this.leadingComments===void 0?this._options.justTypes||(this.emitCommentLines([`To decode the JSON data, add this file to your project, run`,``,` elm-package install NoRedInk/elm-decode-pipeline`,``,`add these imports`,``," import Json.Decode exposing (decodeString)`);"]),this.emitLine(`-- import `,this._options.moduleName,` exposing (`,(0,t.arrayIntercalate)(`, `,n),`)`),this.emitMultiline(`--
799
+ -- and you're off to the races with
800
+ --`),this.forEachTopLevel(`none`,(e,t)=>{let{decoder:n}=(0,u.defined)(this._topLevelDependents.get(t));n===void 0&&(n=(0,u.defined)(this._namedTypeDependents.get(t)).decoder),this.emitLine(`-- decodeString `,n,` myJsonString`)})):this.emitCommentLines(this.leadingComments),this._options.justTypes||(this.ensureBlankLine(),this.emitLine(`module `,this._options.moduleName,` exposing`),this.indent(()=>{for(let t=0;t<e.length;t++)this.emitLine(t===0?`(`:`,`,` `,e[t]);this.emitLine(`)`)}),this.ensureBlankLine(),this.emitMultiline(`import Json.Decode as Jdec
801
+ import Json.Decode.Pipeline as Jpipe
802
+ import Json.Encode as Jenc
803
+ 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`,(e,t)=>this.emitTopLevelDefinition(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>this.emitUnionDefinition(e,t)),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine(`-- decoders and encoders`),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelFunctions(e,t)),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassFunctions(e,t),(e,t)=>this.emitEnumFunctions(e,t),(e,t)=>this.emitUnionFunctions(e,t)),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,l.decapitalize)(this.arrayType),` (`,this.arrayType,`.map f arr)`)}),this.ensureBlankLine(),this.emitMultiline(`makeDictEncoder : (a -> Jenc.Value) -> Dict String a -> Jenc.Value
804
+ makeDictEncoder f dict =
805
+ Jenc.object (toList (Dict.map (\\k -> f) dict))
806
+
807
+ makeNullableEncoder : (a -> Jenc.Value) -> Maybe a -> Jenc.Value
808
+ makeNullableEncoder f m =
809
+ case m of
810
+ Just x -> f x
811
+ Nothing -> Jenc.null`))}};e.ElmRenderer=y})),eo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.JSONSchemaRenderer=e.JSONSchemaTargetLanguage=void 0;var t=a(),n=Ba(),r=wa(),i=ha(),o=Ra(),s=Ta(),c=ua(),l=Q(),u=pa(),d=Fa();e.JSONSchemaTargetLanguage=class extends n.TargetLanguage{constructor(){super(`JSON Schema`,[`schema`,`json-schema`],`schema`)}getOptions(){return[]}get stringTypeMapping(){return(0,u.getNoStringTypeMapping)()}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(e,t){return new h(this,e)}};var f=(0,s.funPrefixNamer)(`namer`,m),p=(0,c.legalizeCharacters)(e=>e>=32&&e<128&&e!==47);function m(e){let t=(0,c.splitIntoWords)(e);return(0,c.combineWords)(t,p,c.firstUpperWordStyle,c.firstUpperWordStyle,c.allUpperWordStyle,c.allUpperWordStyle,``,e=>!0)}var h=class extends o.ConvenienceRenderer{makeNamedTypeNamer(){return f}namerForObjectProperty(){return null}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return null}nameForType(e){return(0,l.defined)(this.names.get(this.nameForNamedType(e)))}makeOneOf(e){let n=(0,t.iterableFirst)(e);return n===void 0?(0,l.panic)(`Must have at least one type for oneOf`):e.size===1?this.schemaForType(n):{anyOf:Array.from(e).map(e=>this.schemaForType(e))}}makeRef(e){return{$ref:`#/definitions/${this.nameForType(e)}`}}addAttributesToSchema(e,t){let n=this.typeGraph.attributeStore.attributesForType(e);for(let[r,i]of n)r.addToSchema(t,e,i)}schemaForType(e){let t=(0,i.matchTypeExhaustive)(e,e=>(0,l.panic)(`none type should have been replaced`),e=>({}),e=>({type:`null`}),e=>({type:`boolean`}),e=>({type:`integer`}),e=>({type:`number`}),e=>({type:`string`}),e=>({type:`array`,items:this.schemaForType(e.items)}),e=>this.makeRef(e),e=>this.definitionForObject(e,void 0),e=>this.makeRef(e),e=>this.makeRef(e),e=>this.unionNeedsName(e)?this.makeRef(e):this.definitionForUnion(e),e=>{let t=r.transformedStringTypeTargetTypeKindsMap.get(e.kind);return t===void 0?(0,l.panic)(`Unknown transformed string type ${e.kind}`):{type:`string`,format:t.jsonSchema}});return t.$ref===void 0&&this.addAttributesToSchema(e,t),t}definitionForObject(e,t){let n,r;if(e.getProperties().size===0)n=void 0,r=void 0;else{let t={},i=[];for(let[n,r]of e.getProperties()){let a=this.schemaForType(r.type);a.description===void 0&&(0,d.addDescriptionToSchema)(a,this.descriptionForClassProperty(e,n)),t[n]=a,r.isOptional||i.push(n)}n=t,r=i.sort()}let i=e.getAdditionalProperties(),a={type:`object`,additionalProperties:i===void 0?!1:this.schemaForType(i),properties:n,required:r,title:t};return this.addAttributesToSchema(e,a),a}definitionForUnion(e,t){let n=this.makeOneOf(e.sortedMembers);return t!==void 0&&(n.title=t),this.addAttributesToSchema(e,n),n}definitionForEnum(e,t){let n={type:`string`,enum:Array.from(e.cases),title:t};return this.addAttributesToSchema(e,n),n}emitSourceStructure(){let e=this.topLevels.size===1?this.schemaForType((0,l.defined)((0,t.mapFirst)(this.topLevels))):{},n=Object.assign({$schema:`http://json-schema.org/draft-06/schema#`},e),r={};this.forEachObject(`none`,(e,t)=>{let n=(0,l.defined)(this.names.get(t));r[n]=this.definitionForObject(e,n)}),this.forEachUnion(`none`,(e,t)=>{if(!this.unionNeedsName(e))return;let n=(0,l.defined)(this.names.get(t));r[n]=this.definitionForUnion(e,n)}),this.forEachEnum(`none`,(e,t)=>{let n=(0,l.defined)(this.names.get(t));r[n]=this.definitionForEnum(e,n)}),n.definitions=r,this.emitMultiline(JSON.stringify(n,void 0,` `))}};e.JSONSchemaRenderer=h})),to=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.RustRenderer=e.RustTargetLanguage=e.rustOptions=e.Visibility=e.Density=void 0;var t=a(),n=Ba(),r=Ra(),i=ua(),o=Ta(),s=ha(),c=Ea(),l=Da(),u=ra(),d=Q(),f;(function(e){e[e.Normal=0]=`Normal`,e[e.Dense=1]=`Dense`})(f=e.Density||={});var p;(function(e){e[e.Private=0]=`Private`,e[e.Crate=1]=`Crate`,e[e.Public=2]=`Public`})(p=e.Visibility||={}),e.rustOptions={density:new u.EnumOption(`density`,`Density`,[[`normal`,f.Normal],[`dense`,f.Dense]]),visibility:new u.EnumOption(`visibility`,`Field visibility`,[[`private`,p.Private],[`crate`,p.Crate],[`public`,p.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)},e.RustTargetLanguage=class extends n.TargetLanguage{makeRenderer(t,n){return new S(this,t,(0,u.getOptionValues)(e.rustOptions,n))}constructor(){super(`Rust`,[`rust`,`rs`,`rustlang`],`rs`)}getOptions(){return[e.rustOptions.density,e.rustOptions.visibility,e.rustOptions.deriveDebug,e.rustOptions.edition2018,e.rustOptions.leadingComments]}};var m=`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`.split(`.`),h=e=>(0,i.isAscii)(e)?(0,i.isLetterOrUnderscoreOrDigit)(e):!1,g=e=>(0,i.isAscii)(e)?(0,i.isLetterOrUnderscore)(e):!1,_=(0,i.legalizeCharacters)(h);function v(e,t){let n=(0,i.splitIntoWords)(e),r=t?i.allLowerWordStyle:i.firstUpperWordStyle,a=(0,i.combineWords)(n,_,r,r,r,r,t?`_`:``,g);return a===`_`?`_underscore`:a}var y=(0,o.funPrefixNamer)(`default`,e=>v(e,!0)),b=(0,o.funPrefixNamer)(`camel`,e=>v(e,!1)),x=(0,i.utf32ConcatMap)((0,i.escapeNonPrintableMapper)(i.isPrintable,e=>e<=65535?`\\u{`+(0,i.intToHex)(e,4)+`}`:`\\u{`+(0,i.intToHex)(e,6)+`}`)),S=class extends r.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}makeNamedTypeNamer(){return b}namerForObjectProperty(){return y}makeUnionMemberNamer(){return b}makeEnumCaseNamer(){return b}forbiddenNamesForGlobalNamespace(){return m}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return`/// `}nullableRustType(e,t){return[`Option<`,this.breakCycle(e,t),`>`]}isImplicitCycleBreaker(e){let t=e.kind;return t===`array`||t===`map`}rustType(e,t=!1){return(0,s.matchType)(e,e=>(0,c.maybeAnnotated)(t,l.anyTypeIssueAnnotation,`Option<serde_json::Value>`),e=>(0,c.maybeAnnotated)(t,l.nullTypeIssueAnnotation,`Option<serde_json::Value>`),e=>`bool`,e=>`i64`,e=>`f64`,e=>`String`,e=>[`Vec<`,this.rustType(e.items,t),`>`],e=>this.nameForNamedType(e),e=>[`HashMap<String, `,this.rustType(e.values,t),`>`],e=>this.nameForNamedType(e),e=>{let n=(0,s.nullableFromUnion)(e);if(n!==null)return this.nullableRustType(n,t);let[r]=(0,s.removeNullFromUnion)(e),i=this.isCycleBreakerType(e)?[`Box<`,this.nameForNamedType(e),`>`]:this.nameForNamedType(e);return r===null?i:[`Option<`,i,`>`]})}breakCycle(e,t){let n=this.rustType(e,t);return this.isCycleBreakerType(e)?[`Box<`,n,`>`]:n}emitRenameAttribute(e,t){let n=x(t);(this.sourcelikeToString(e)!==n||this._options.density===f.Normal)&&this.emitLine(`#[serde(rename = "`,n,`")]`)}get visibility(){return this._options.visibility===p.Crate?`pub(crate) `:this._options.visibility===p.Public?`pub `:``}emitStructDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`#[derive(`,this._options.deriveDebug?`Debug, `:``,`Serialize, Deserialize)]`);let n=this._options.density===f.Dense?`none`:`interposing`;this.emitBlock([`pub struct `,t],()=>this.forEachClassProperty(e,n,(t,n,r)=>{this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitRenameAttribute(t,n),this.emitLine(this.visibility,t,`: `,this.breakCycle(r.type,!0),`,`)}))}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}emitUnion(e,t){if((0,s.nullableFromUnion)(e)!==null)return;this.emitDescription(this.descriptionForType(e)),this.emitLine(`#[derive(`,this._options.deriveDebug?`Debug, `:``,`Serialize, Deserialize)]`),this.emitLine(`#[serde(untagged)]`);let[,n]=(0,s.removeNullFromUnion)(e),r=this._options.density===f.Dense?`none`:`interposing`;this.emitBlock([`pub enum `,t],()=>this.forEachUnionMember(e,n,r,null,(e,t)=>{let n=this.breakCycle(t,!0);this.emitLine([e,`(`,n,`),`])}))}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`#[derive(`,this._options.deriveDebug?`Debug, `:``,`Serialize, Deserialize)]`);let n=this._options.density===f.Dense?`none`:`interposing`;this.emitBlock([`pub enum `,t],()=>this.forEachEnumCase(e,n,(e,t)=>{this.emitRenameAttribute(e,t),this.emitLine([e,`,`])}))}emitTopLevelAlias(e,t){this.emitLine(`pub type `,t,` = `,this.rustType(e),`;`)}emitLeadingComments(){if(this.leadingComments!==void 0){this.emitCommentLines(this.leadingComments);return}let e=(0,d.defined)((0,t.mapFirst)(this.topLevels)).getCombinedName();this.emitMultiline(`// Example code that deserializes and serializes the model.
812
+ // extern crate serde;
813
+ // #[macro_use]
814
+ // extern crate serde_derive;
815
+ // extern crate serde_json;
816
+ //
817
+ // use generated_module::${e};
818
+ //
819
+ // fn main() {
820
+ // let json = r#"{"answer": 42}"#;
821
+ // let model: ${e} = serde_json::from_str(&json).unwrap();
822
+ // }`)}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,t)=>this.emitTopLevelAlias(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitStructDefinition(e,t)),this.forEachUnion(`leading-and-interposing`,(e,t)=>this.emitUnion(e,t)),this.forEachEnum(`leading-and-interposing`,(e,t)=>this.emitEnumDefinition(e,t))}};e.RustRenderer=S})),no=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.CrystalRenderer=e.CrystalTargetLanguage=void 0;var t=Ba(),n=Ra(),r=ua(),i=Ta(),a=ha(),o=Ea(),s=Da();e.CrystalTargetLanguage=class extends t.TargetLanguage{makeRenderer(e){return new _(this,e)}constructor(){super(`Crystal`,[`crystal`,`cr`,`crystallang`],`cr`)}get defaultIndentation(){return` `}getOptions(){return[]}};var c=`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`.split(`.`);function l(e){return(0,r.isAscii)(e)?(0,r.isLetterOrUnderscoreOrDigit)(e):!1}function u(e){return(0,r.isAscii)(e)?(0,r.isLetterOrUnderscore)(e):!1}var d=(0,r.legalizeCharacters)(l);function f(e,t){let n=(0,r.splitIntoWords)(e),i=t?r.allLowerWordStyle:r.firstUpperWordStyle,a=(0,r.combineWords)(n,d,i,i,i,i,t?`_`:``,u);return a===`_`?`_underscore`:a}var p=(0,i.funPrefixNamer)(`default`,e=>f(e,!0)),m=(0,i.funPrefixNamer)(`camel`,e=>f(e,!1));function h(e){return e<=65535?`\\u{`+(0,r.intToHex)(e,4)+`}`:`\\u{`+(0,r.intToHex)(e,6)+`}`}var g=(0,r.utf32ConcatMap)((0,r.escapeNonPrintableMapper)(r.isPrintable,h)),_=class extends n.ConvenienceRenderer{constructor(e,t){super(e,t)}makeNamedTypeNamer(){return m}namerForObjectProperty(){return p}makeUnionMemberNamer(){return m}makeEnumCaseNamer(){return m}forbiddenNamesForGlobalNamespace(){return c}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}get commentLineStart(){return`# `}nullableCrystalType(e,t){return[this.crystalType(e,t),`?`]}isImplicitCycleBreaker(e){let t=e.kind;return t===`array`||t===`map`}crystalType(e,t=!1){return(0,a.matchType)(e,e=>(0,o.maybeAnnotated)(t,s.anyTypeIssueAnnotation,`JSON::Any?`),e=>(0,o.maybeAnnotated)(t,s.nullTypeIssueAnnotation,`Nil`),e=>`Bool`,e=>`Int32`,e=>`Float64`,e=>`String`,e=>[`Array(`,this.crystalType(e.items,t),`)`],e=>this.nameForNamedType(e),e=>[`Hash(String, `,this.crystalType(e.values,t),`)`],e=>`String`,e=>{let n=(0,a.nullableFromUnion)(e);if(n!==null)return this.nullableCrystalType(n,t);let[r]=(0,a.removeNullFromUnion)(e),i=this.nameForNamedType(e);return r===null?i:[i,`?`]})}breakCycle(e,t){return this.crystalType(e,t)}emitRenameAttribute(e,t){let n=g(t);this.sourcelikeToString(e)!==n&&this.emitLine(`@[JSON::Field(key: "`,n,`")]`)}emitStructDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`class `,t],()=>this.forEachClassProperty(e,`none`,(t,n,r)=>{this.ensureBlankLine(),this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitRenameAttribute(t,n),this.emitLine(`property `,t,` : `,this.crystalType(r.type,!0))}))}emitBlock(e,t){this.emitLine(e),this.indent(()=>{this.emitLine(`include JSON::Serializable`)}),this.ensureBlankLine(),this.indent(t),this.emitLine(`end`)}emitEnum(e,t){this.emitLine(e),this.indent(t),this.emitLine(`end`)}emitUnion(e,t){if((0,a.nullableFromUnion)(e)!==null)return;this.emitDescription(this.descriptionForType(e));let[,n]=(0,a.removeNullFromUnion)(e),r=[];this.forEachUnionMember(e,n,`none`,null,(e,t)=>{let n=this.breakCycle(t,!0);r.push([n])}),this.emitLine([`alias `,t,` = `,r.map(e=>e.map(e=>this.sourcelikeToString(e))).join(` | `)])}emitTopLevelAlias(e,t){this.emitLine(`alias `,t,` = `,this.crystalType(e))}emitLeadingComments(){if(this.leadingComments!==void 0){this.emitCommentLines(this.leadingComments);return}this.emitMultiline(`# Example code that deserializes and serializes the model:
823
+ #
824
+ # require "json"
825
+ #
826
+ # class Location
827
+ # include JSON::Serializable
828
+ #
829
+ # @[JSON::Field(key: "lat")]
830
+ # property latitude : Float64
831
+ #
832
+ # @[JSON::Field(key: "lng")]
833
+ # property longitude : Float64
834
+ # end
835
+ #
836
+ # class House
837
+ # include JSON::Serializable
838
+ # property address : String
839
+ # property location : Location?
840
+ # end
841
+ #
842
+ # house = House.from_json(%({"address": "Crystal Road 1234", "location": {"lat": 12.3, "lng": 34.5}}))
843
+ # house.address # => "Crystal Road 1234"
844
+ # house.location # => #<Location:0x10cd93d80 @latitude=12.3, @longitude=34.5>
845
+ `)}emitSourceStructure(){this.emitLeadingComments(),this.ensureBlankLine(),this.emitLine(`require "json"`),this.forEachTopLevel(`leading`,(e,t)=>this.emitTopLevelAlias(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this.forEachObject(`leading-and-interposing`,(e,t)=>this.emitStructDefinition(e,t)),this.forEachUnion(`leading-and-interposing`,(e,t)=>this.emitUnion(e,t))}};e.CrystalRenderer=_})),ro=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.reservedProperties=e.globals=e.keywords=void 0,e.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`.split(`.`);var t=`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`.split(`.`);e.globals=`__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`.split(`.`).concat(t),e.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`.split(`.`)})),io=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r},i=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.RubyRenderer=e.RubyTargetLanguage=e.rubyOptions=e.Strictness=void 0;var a=i(la()),o=Ea(),s=Ta(),c=Ra(),l=Ba(),u=ra(),d=r(ro()),f=Array.from(new Set([...d.keywords,...d.reservedProperties])),p=wa(),m=ha(),h=ua();function g(e){return`\\u{`+(0,h.intToHex)(e,0)+`}`}var _=(0,h.utf32ConcatMap)((0,h.escapeNonPrintableMapper)(h.isPrintable,g)),v;(function(e){e.Strict=`Strict::`,e.Coercible=`Coercible::`,e.None=`Types::`})(v=e.Strictness||={}),e.rubyOptions={justTypes:new u.BooleanOption(`just-types`,`Plain types only`,!1),strictness:new u.EnumOption(`strictness`,`Type strictness`,[[`strict`,v.Strict],[`coercible`,v.Coercible],[`none`,v.None]]),namespace:new u.StringOption(`namespace`,`Specify a wrapping Namespace`,`NAME`,``,`secondary`)},e.RubyTargetLanguage=class extends l.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(t,n){return new w(this,t,(0,u.getOptionValues)(e.rubyOptions,n))}};var y=h.isLetterOrUnderscore;function b(e){let t=a.default.getCategory(e);return[`Nd`,`Pc`,`Mn`,`Mc`].indexOf(t)>=0||y(e)}var x=(0,h.legalizeCharacters)(b);function S(e,t){/^[0-9]+$/.test(e)&&(e+=`N`);let n=(0,h.splitIntoWords)(e);return(0,h.combineWords)(n,x,t?h.firstUpperWordStyle:h.allLowerWordStyle,t?h.firstUpperWordStyle:h.allLowerWordStyle,h.allUpperWordStyle,h.allUpperWordStyle,``,y)}function C(e){let t=(0,h.splitIntoWords)(e);return(0,h.combineWords)(t,x,h.allLowerWordStyle,h.allLowerWordStyle,h.allLowerWordStyle,h.allLowerWordStyle,`_`,y)}var w=class extends c.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}get commentLineStart(){return`# `}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(e){return e.kind===`class`}forbiddenNamesForGlobalNamespace(){return d.globals.concat([`Types`,`JSON`,`Dry`,`Constructor`,`Self`])}forbiddenForObjectProperties(e,t){return{names:f,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return new s.Namer(`types`,e=>S(e,!0),[])}namerForObjectProperty(){return new s.Namer(`properties`,C,[])}makeUnionMemberNamer(){return new s.Namer(`properties`,C,[])}makeEnumCaseNamer(){return new s.Namer(`enum-cases`,e=>S(e,!0),[])}dryType(e,t=!1){let n=t?`.optional`:``;return(0,m.matchType)(e,e=>[`Types::Any`,n],e=>[`Types::Nil`,n],e=>[`Types::Bool`,n],e=>[`Types::Integer`,n],e=>[`Types::Double`,n],e=>[`Types::String`,n],e=>[`Types.Array(`,this.dryType(e.items),`)`,n],e=>[this.nameForNamedType(e),n],e=>[`Types::Hash.meta(of: `,this.dryType(e.values),`)`,n],e=>[`Types::`,this.nameForNamedType(e),n],e=>{let t=(0,m.nullableFromUnion)(e);return t===null?[`Types.Instance(`,this.nameForNamedType(e),`)`,n]:[this.dryType(t),`.optional`]})}exampleUse(e,t,n=6,r=!1){if(n--<=0)return t;let i=r?`&`:``;return(0,m.matchType)(e,e=>t,e=>[t,`.nil?`],e=>t,e=>[t,`.even?`],e=>t,e=>t,e=>this.exampleUse(e.items,[t,i,`.first`],n),e=>{let r;return this.forEachClassProperty(e,`none`,(e,t,n)=>{([`class`,`map`,`array`].indexOf(n.type.kind)>=0||r===void 0)&&(r={name:e,prop:n})}),r===void 0?t:this.exampleUse(r.prop.type,[t,i,`.`,r.name],n,r.prop.isOptional)},e=>this.exampleUse(e.values,[t,i,`["…"]`],n),e=>{let n;return this.forEachEnumCase(e,`none`,e=>{n===void 0&&(n=e)}),n===void 0?t:[t,` == `,this.nameForNamedType(e),`::`,n]},e=>{let r=(0,m.nullableFromUnion)(e);return r===null?t:[`class`,`map`,`array`].indexOf(r.kind)>=0?this.exampleUse(r,t,n,!0):[t,`.nil?`]})}jsonSample(e){function t(){return e instanceof p.ArrayType?`[…]`:e instanceof p.MapType||e instanceof p.ClassType?`{…}`:`…`}return`"${t()}"`}fromDynamic(e,t,n=!1,r=!1){let i=[this.dryType(e,n),`[`,t,`]`],a=r?i:t,o=n?`&`:``;return(0,m.matchType)(e,e=>a,e=>a,e=>a,e=>a,e=>a,e=>a,e=>[t,o,`.map { |x| `,this.fromDynamic(e.items,`x`,!1,!0),` }`],e=>{let r=[this.nameForNamedType(e),`.from_dynamic!(`,t,`)`];return n?[t,` ? `,r,` : nil`]:r},e=>[[`Types::Hash`,n?`.optional`:``,`[`,t,`]`],o,`.map { |k, v| [k, `,this.fromDynamic(e.values,`v`,!1,!0),`] }`,o,`.to_h`],e=>{let r=[`Types::`,this.nameForNamedType(e),`[`,t,`]`];return n?[t,`.nil? ? nil : `,r]:r},e=>{let r=(0,m.nullableFromUnion)(e);if(r!==null)return this.fromDynamic(r,t,!0);let i=[this.nameForNamedType(e),`.from_dynamic!(`,t,`)`];return n?[t,` ? `,i,` : nil`]:i})}toDynamic(e,t,n=!1){return this.marshalsImplicitlyToDynamic(e)?t:(0,m.matchType)(e,e=>t,e=>t,e=>t,e=>t,e=>t,e=>t,e=>[t,n?`&`:``,`.map { |x| `,this.toDynamic(e.items,`x`),` }`],e=>[t,n?`&`:``,`.to_dynamic`],e=>[t,n?`&`:``,`.map { |k, v| [k, `,this.toDynamic(e.values,`v`),`] }.to_h`],e=>t,e=>{let r=(0,m.nullableFromUnion)(e);return r===null?this.marshalsImplicitlyToDynamic(e)?t:[t,n?`&`:``,`.to_dynamic`]:this.toDynamic(r,t,!0)})}marshalsImplicitlyToDynamic(e){return(0,m.matchType)(e,e=>!0,e=>!0,e=>!0,e=>!0,e=>!0,e=>!0,e=>this.marshalsImplicitlyToDynamic(e.items),e=>!1,e=>this.marshalsImplicitlyToDynamic(e.values),e=>!0,e=>{let t=(0,m.nullableFromUnion)(e);return t===null?!1:this.marshalsImplicitlyToDynamic(t)})}propertyTypeMarshalsImplicitlyFromDynamic(e){return(0,m.matchType)(e,e=>!0,e=>!0,e=>!0,e=>!0,e=>!0,e=>!0,e=>this.propertyTypeMarshalsImplicitlyFromDynamic(e.items),e=>!1,e=>!1,e=>!0,e=>{let t=(0,m.nullableFromUnion)(e);return t===null?!1:this.propertyTypeMarshalsImplicitlyFromDynamic(t)})}emitBlock(e,t){this.emitLine(e),this.indent(t),this.emitLine(`end`)}emitModule(e){let t=n=>{let[r,...i]=n.split(`::`);i.length>0?this.emitBlock([`module `,r],()=>{t(i.join(`::`))}):this.emitBlock([`module `,n],e)};this._options.namespace!==void 0&&this._options.namespace!==``?t(this._options.namespace):e()}emitClass(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`class `,t,` < Dry::Struct`],()=>{let t=[],n=e.getProperties().size;this.forEachClassProperty(e,`none`,(r,i,a)=>{let o=--n===0,s=this.descriptionForClassProperty(e,i),c=[[`attribute :`,r,`,`],[` `,this.dryType(a.type),a.isOptional?`.optional`:``]];s===void 0?t.push(c):(t.length>0&&(this.emitTable(t),t=[]),this.ensureBlankLine(),this.emitDescriptionBlock(s),this.emitLine(c),o||this.ensureBlankLine())}),t.length>0&&this.emitTable(t),!this._options.justTypes&&(this.ensureBlankLine(),this.emitBlock([`def self.from_dynamic!(d)`],()=>{this.emitLine(`d = Types::Hash[d]`),this.emitLine(`new(`),this.indent(()=>{let t=[];this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=r.isOptional?`d["${_(n)}"]`:`d.fetch("${_(n)}")`;if(this.propertyTypeMarshalsImplicitlyFromDynamic(r.type))t.push([[e,`: `],[i,`,`]]);else{let n=this.fromDynamic(r.type,i,r.isOptional);t.push([[e,`: `],[n,`,`]])}}),this.emitTable(t)}),this.emitLine(`)`)}),this.ensureBlankLine(),this.emitBlock(`def self.from_json!(json)`,()=>{this.emitLine(`from_dynamic!(JSON.parse(json))`)}),this.ensureBlankLine(),this.emitBlock([`def to_dynamic`],()=>{this.emitLine(`{`),this.indent(()=>{let t=[];this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=this.toDynamic(r.type,e,r.isOptional);t.push([[`"${_(n)}"`],[` => `,i,`,`]])}),this.emitTable(t)}),this.emitLine(`}`)}),this.ensureBlankLine(),this.emitBlock(`def to_json(options = nil)`,()=>{this.emitLine(`JSON.generate(to_dynamic, options)`)}))})}emitEnum(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`module `,t],()=>{let t=[];this.forEachEnumCase(e,`none`,(e,n)=>{t.push([[e],[` = "${_(n)}"`]])}),this.emitTable(t)})}emitUnion(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`class `,t,` < Dry::Struct`],()=>{let t=[];if(this.forEachUnionMember(e,e.getChildren(),`none`,null,(e,n)=>{t.push([[`attribute :`,e,`, `],[this.dryType(n,!0)]])}),this.emitTable(t),this._options.justTypes)return;this.ensureBlankLine();let[n,r]=(0,m.removeNullFromUnion)(e,!1);this.emitBlock(`def self.from_dynamic!(d)`,()=>{let t=Array.from(e.getChildren()).map(t=>this.nameForUnionMember(e,t));this.forEachUnionMember(e,e.getChildren(),`none`,null,(e,n)=>{let r=t.filter(t=>t!==e).map(e=>[`, `,e,`: nil`]);this.propertyTypeMarshalsImplicitlyFromDynamic(n)?this.emitBlock([`if schema[:`,e,`].right.valid? d`],()=>{this.emitLine(`return new(`,e,`: d`,r,`)`)}):(this.emitLine(`begin`),this.indent(()=>{this.emitLine(`value = `,this.fromDynamic(n,`d`)),this.emitBlock([`if schema[:`,e,`].right.valid? value`],()=>{this.emitLine(`return new(`,e,`: value`,r,`)`)})}),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 t=!0;this.forEachUnionMember(e,r,`none`,null,(e,n)=>{this.emitLine(t?`if`:`elsif`,` `,e,` != nil`),this.indent(()=>{this.emitLine(this.toDynamic(n,e))}),t=!1}),n!==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)`);let e=[];if(this._options.strictness!==v.None){let t={int:!1,nil:!1,bool:!1,hash:!1,string:!1,double:!1};this.forEachType(e=>{t={int:t.int||e.kind===`integer`,nil:t.nil||e.kind===`null`,bool:t.bool||e.kind===`bool`,hash:t.hash||e.kind===`map`||e.kind===`class`,string:t.string||e.kind===`string`||e.kind===`enum`,double:t.double||e.kind===`double`}}),t.int&&e.push([[`Integer`],[` = ${this._options.strictness}Integer`]]),this._options.strictness===v.Strict&&t.nil&&e.push([[`Nil`],[` = ${this._options.strictness}Nil`]]),t.bool&&e.push([[`Bool`],[` = ${this._options.strictness}Bool`]]),t.hash&&e.push([[`Hash`],[` = ${this._options.strictness}Hash`]]),t.string&&e.push([[`String`],[` = ${this._options.strictness}String`]]),t.double&&e.push([[`Double`],[` = ${this._options.strictness}Float | ${this._options.strictness}Integer`]])}this.forEachEnum(`none`,(t,n)=>{let r=[];this.forEachEnumCase(t,`none`,(e,t)=>{r.push([r.length===0?``:`, `,`"${_(t)}"`])}),e.push([[n],[` = `,this._options.strictness,`String.enum(`,...r,`)`]])}),e.length>0&&(this.ensureBlankLine(),this.emitTable(e))})}emitSourceStructure(){this.leadingComments===void 0?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`,(e,t)=>{let n=(0,o.modifySource)(h.snakeCase,t);this.emitLine(`# `,n,` = `,t,`.from_json! `,this.jsonSample(e)),this.emitLine(`# puts `,this.exampleUse(e,n)),this.emitLine(`#`)}),this.emitLine(`# If from_json! succeeds, the value returned matches the schema.`)):this.emitCommentLines(this.leadingComments),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`,e=>{e.kind===`forward`&&(this.emitCommentLines([`(forward declaration)`]),this.emitModule(()=>{this.emitLine(`class `,this.nameForNamedType(e.type),` < Dry::Struct; end`)}))}),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClass(e,t),(e,t)=>this.emitEnum(e,t),(e,t)=>this.emitUnion(e,t)),this._options.justTypes||this.forEachTopLevel(`leading-and-interposing`,(e,t)=>{let n=(0,o.modifySource)(h.snakeCase,t),r=e.kind===`array`,i=()=>{this.emitBlock([`class `,t],()=>{this.emitBlock([`def self.from_json!(json)`],()=>{r?(this.emitLine(n,` = `,this.fromDynamic(e,`JSON.parse(json, quirks_mode: true)`)),this.emitBlock([n,`.define_singleton_method(:to_json) do`],()=>{this.emitLine(`JSON.generate(`,this.toDynamic(e,`self`),`)`)}),this.emitLine(n)):this.emitLine(this.fromDynamic(e,`JSON.parse(json, quirks_mode: true)`))})})};this.emitModule(()=>{i()})},e=>this.namedTypeToNameForTopLevel(e)===void 0)})}};e.RubyRenderer=w})),ao=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.DartRenderer=e.DartTargetLanguage=e.dartOptions=void 0;var t=wa(),n=ha(),r=Ea(),i=ua(),o=Ta(),s=Ra(),c=Ba(),l=ra(),u=Da(),d=Q(),f=a();e.dartOptions={nullSafety:new l.BooleanOption(`null-safety`,`Null Safety`,!0),justTypes:new l.BooleanOption(`just-types`,`Types only`,!1),codersInClass:new l.BooleanOption(`coders-in-class`,`Put encoder & decoder in Class`,!1),methodNamesWithMap:new l.BooleanOption(`from-map`,`Use method names fromMap() & toMap()`,!1,`secondary`),requiredProperties:new l.BooleanOption(`required-props`,`Make all properties required`,!1),finalProperties:new l.BooleanOption(`final-props`,`Make all properties final`,!1),generateCopyWith:new l.BooleanOption(`copy-with`,`Generate CopyWith method`,!1),useFreezed:new l.BooleanOption(`use-freezed`,`Generate class definitions with @freezed compatibility`,!1,`secondary`),useHive:new l.BooleanOption(`use-hive`,`Generate annotations for Hive type adapters`,!1,`secondary`),partName:new l.StringOption(`part-name`,"Use this name in `part` directive",`NAME`,``,`secondary`)},e.DartTargetLanguage=class 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(){let e=new Map;return e.set(`date`,`date`),e.set(`date-time`,`date-time`),e}makeRenderer(t,n){let r=(0,l.getOptionValues)(e.dartOptions,n);return new S(this,t,r)}};var p=`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`.split(`.`),m=(0,o.funPrefixNamer)(`types`,e=>x(!0,!1,e)),h=(0,o.funPrefixNamer)(`properties`,e=>x(!1,!1,e)),g=(0,o.funPrefixNamer)(`enum-cases`,e=>x(!0,!0,e)),_=(0,i.utf16ConcatMap)((0,i.escapeNonPrintableMapper)(e=>(0,i.isPrintable)(e)&&e!==36,i.standardUnicodeHexEscape));function v(e){return e===95?!1:(0,i.isAscii)(e)&&(0,i.isLetter)(e)}function y(e){return v(e)||(0,i.isAscii)(e)&&(0,i.isDigit)(e)}var b=(0,i.utf16LegalizeCharacters)(y);function x(e,t,n){let r=(0,i.splitIntoWords)(n),a=t?i.allUpperWordStyle:e?i.firstUpperWordStyle:i.allLowerWordStyle,o=t?i.allUpperWordStyle:i.firstUpperWordStyle;return(0,i.combineWords)(r,b,a,o,a,o,t?`_`:``,v)}var S=class extends s.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._gettersAndSettersForPropertyName=new Map,this._needEnumValues=!1,this.classCounter=0,this.classPropertyCounter=0,this._topLevelDependents=new Map,this._enumValues=new Map}forbiddenNamesForGlobalNamespace(){return p}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return m}namerForObjectProperty(){return h}makeUnionMemberNamer(){return h}makeEnumCaseNamer(){return g}unionNeedsName(e){return(0,n.nullableFromUnion)(e)===null}namedTypeToNameForTopLevel(e){return(0,n.directlyReachableSingleNamedType)(e)}get toJson(){return`to${this._options.methodNamesWithMap?`Map`:`Json`}`}get fromJson(){return`from${this._options.methodNamesWithMap?`Map`:`Json`}`}makeTopLevelDependencyNames(e,t){let n=new o.DependencyName(h,t.order,e=>`${e(t)}_${this.toJson}`),r=new o.DependencyName(h,t.order,e=>`${e(t)}_${this.fromJson}`);return this._topLevelDependents.set(t,{encoder:n,decoder:r}),[n,r]}makeNamesForPropertyGetterAndSetter(e,t,n,r,i){return[new o.DependencyName(h,i.order,e=>`get_${e(i)}`),new o.DependencyName(h,i.order,e=>`set_${e(i)}`)]}makePropertyDependencyNames(e,t,n,r,i){let a=this.makeNamesForPropertyGetterAndSetter(e,t,n,r,i);return this._gettersAndSettersForPropertyName.set(i,a),a}makeNamedTypeDependencyNames(e,n){if(!(e instanceof t.EnumType))return[];let r=new o.DependencyName(h,n.order,e=>`${e(n)}_values`);return this._enumValues.set(e,r),[r]}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`,(e,t)=>{let{decoder:n}=(0,d.defined)(this._topLevelDependents.get(t));this.emitLine(`// final `,(0,r.modifySource)(i.decapitalize,t),` = `,n,`(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();let e=this._options.partName.length===0,t=(0,r.modifySource)(i.snakeCase,e?[...this.topLevels.keys()][0]:this._options.partName);this._options.useFreezed&&this.emitLine(`part '`,t,`.freezed.dart';`),this._options.justTypes||this.emitLine(`part '`,t,`.g.dart';`)}}emitDescriptionBlock(e){this.emitCommentLines(e,`///`,``)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}dartType(e,t=!1){let i=this._options.nullSafety&&e.isNullable&&!this._options.requiredProperties,a=e=>i?[e,`?`]:e;return(0,n.matchType)(e,e=>(0,r.maybeAnnotated)(t,u.anyTypeIssueAnnotation,`dynamic`),e=>(0,r.maybeAnnotated)(t,u.nullTypeIssueAnnotation,`dynamic`),e=>a(`bool`),e=>a(`int`),e=>a(`double`),e=>a(`String`),e=>a([`List<`,this.dartType(e.items,t),`>`]),e=>a(this.nameForNamedType(e)),e=>a([`Map<String, `,this.dartType(e.values,t),`>`]),e=>a(this.nameForNamedType(e)),e=>{let r=(0,n.nullableFromUnion)(e);return r===null?`dynamic`:a(this.dartType(r,t))},e=>{switch(e.kind){case`date-time`:case`date`:return a(`DateTime`);default:return a(`String`)}})}mapList(e,t,n,r){return this._options.nullSafety&&e&&!this._options.requiredProperties?[n,` == null ? [] : `,`List<`,t,`>.from(`,n,`!.map((x) => `,r,`))`]:[`List<`,t,`>.from(`,n,`.map((x) => `,r,`))`]}mapMap(e,t,n,r){return this._options.nullSafety&&e&&!this._options.requiredProperties?[`Map.from(`,n,`!).map((k, v) => MapEntry<String, `,t,`>(k, `,r,`))`]:[`Map.from(`,n,`).map((k, v) => MapEntry<String, `,t,`>(k, `,r,`))`]}mapClass(e,t,n){return this._options.nullSafety&&e&&!this._options.requiredProperties?[n,` == null ? null : `,this.nameForNamedType(t),`.`,this.fromJson,`(`,n,`)`]:[this.nameForNamedType(t),`.`,this.fromJson,`(`,n,`)`]}fromDynamicExpression(e=!1,t,...r){return(0,n.matchType)(t,e=>r,e=>r,e=>r,e=>r,e=>[r,this._options.nullSafety?`?.toDouble()`:`.toDouble()`],e=>r,t=>this.mapList(e||t.isNullable,this.dartType(t.items),r,this.fromDynamicExpression(t.items.isNullable,t.items,`x`)),t=>this.mapClass(e||t.isNullable,t,r),t=>this.mapMap(t.isNullable||e,this.dartType(t.values),r,this.fromDynamicExpression(t.values.isNullable,t.values,`v`)),e=>[(0,d.defined)(this._enumValues.get(e)),`.map[`,r,this._options.nullSafety?`]!`:`]`],e=>{let t=(0,n.nullableFromUnion)(e);return t===null?r:this.fromDynamicExpression(e.isNullable,t,r)},t=>{switch(t.kind){case`date-time`:case`date`:return(t.isNullable||e)&&!this._options.requiredProperties&&this._options.nullSafety?[r,` == null ? null : `,`DateTime.parse(`,r,`)`]:[`DateTime.parse(`,r,`)`];default:return r}})}toDynamicExpression(e=!1,t,...r){return(0,n.matchType)(t,e=>r,e=>r,e=>r,e=>r,e=>r,e=>r,t=>this.mapList(t.isNullable||e,`dynamic`,r,this.toDynamicExpression(t.items.isNullable,t.items,`x`)),t=>this._options.nullSafety&&(t.isNullable||e)&&!this._options.requiredProperties?[r,`?.`,this.toJson,`()`]:[r,`.`,this.toJson,`()`],t=>this.mapMap(t.isNullable||e,`dynamic`,r,this.toDynamicExpression(t.values.isNullable,t.values,`v`)),e=>[(0,d.defined)(this._enumValues.get(e)),`.reverse[`,r,`]`],e=>{let t=(0,n.nullableFromUnion)(e);return t===null?r:this.toDynamicExpression(e.isNullable,t,r)},t=>{switch(t.kind){case`date-time`:return this._options.nullSafety&&!this._options.requiredProperties&&(t.isNullable||e)?[r,`?.toIso8601String()`]:[r,`.toIso8601String()`];case`date`:return this._options.nullSafety&&!this._options.requiredProperties&&(t.isNullable||e)?['"${',r,`!.year.toString().padLeft(4, '0')`,"}-${",r,"!.month.toString().padLeft(2, '0')}-${",r,`!.day.toString().padLeft(2, '0')}"`]:['"${',r,`.year.toString().padLeft(4, '0')`,"}-${",r,".month.toString().padLeft(2, '0')}-${",r,`.day.toString().padLeft(2, '0')}"`];default:return r}})}emitClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this._options.useHive&&(this.classCounter++,this.emitLine(`@HiveType(typeId: ${this.classCounter})`),this.classPropertyCounter=0),this.emitBlock([`class `,t],()=>{e.getProperties().size===0?this.emitLine(t,`();`):(this.emitLine(t,`({`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{let r=this._options.requiredProperties||this._options.nullSafety&&!n.type.isNullable;this.emitLine(r?`required `:``,`this.`,e,`,`)})}),this.emitLine(`});`),this.ensureBlankLine(),this.forEachClassProperty(e,`none`,(t,n,r)=>{let i=this.descriptionForClassProperty(e,n);i!==void 0&&this.emitDescription(i),this._options.useHive&&(this.classPropertyCounter++,this.emitLine(`@HiveField(${this.classPropertyCounter})`)),this.emitLine(this._options.finalProperties?`final `:``,this.dartType(r.type,!0),` `,t,`;`)})),this._options.generateCopyWith&&(this.ensureBlankLine(),this.emitLine(t,` copyWith({`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(this.dartType(n.type,!0),` `,e,`,`)})}),this.emitLine(`}) => `),this.indent(()=>{this.emitLine(t,`(`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(e,`: `,e,` ?? `,`this.`,e,`,`)})}),this.emitLine(`);`)})),!this._options.justTypes&&(this._options.codersInClass&&(this.ensureBlankLine(),this.emitLine(`factory `,t,`.from`,this._options.methodNamesWithMap?`Json`:`RawJson`,`(String str) => `,t,`.`,this.fromJson,`(json.decode(str));`),this.ensureBlankLine(),this.emitLine(`String `,this._options.methodNamesWithMap?`toJson() => `:`toRawJson() => `,`json.encode(`,this.toJson,`());`)),this.ensureBlankLine(),this.emitLine(`factory `,t,`.`,this.fromJson,`(Map<String, dynamic> json) => `,t,`(`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(e,`: `,this.fromDynamicExpression(n.type.isNullable,n.type,`json["`,_(t),`"]`),`,`)})}),this.emitLine(`);`),this.ensureBlankLine(),this.emitLine(`Map<String, dynamic> `,this.toJson,`() => {`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(`"`,_(t),`": `,this.toDynamicExpression(n.type.isNullable,n.type,e),`,`)})}),this.emitLine(`};`))})}emitFreezedClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`@freezed`),this.emitBlock([`class `,t,` with _$`,t],()=>{e.getProperties().size===0?this.emitLine(`const factory `,t,`() = _`,t,`;`):(this.emitLine(`const factory `,t,`({`),this.indent(()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(this._options.requiredProperties?`required `:``,this.dartType(n.type,!0),this._options.requiredProperties?``:`?`,` `,e,`,`)})}),this.emitLine(`}) = _`,t,`;`)),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine(`factory `,t,`.fromJson(Map<String, dynamic> json) => `,`_$`,t,`FromJson(json);`))})}emitEnumDefinition(e,t){let n=Array.from(e.cases).map(t=>this.nameForEnumCase(e,t));this.emitDescription(this.descriptionForType(e)),this.emitLine(`enum `,t,` { `,(0,f.arrayIntercalate)(`, `,n),` }`),!this._options.justTypes&&(this.ensureBlankLine(),this.emitLine(`final `,(0,d.defined)(this._enumValues.get(e)),` = EnumValues({`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,n,r)=>{let i=r===`first`||r===`middle`?`,`:[];this.emitLine(`"`,_(n),`": `,t,`.`,e,i)})}),this.emitLine(`});`),this._needEnumValues=!0)}emitEnumValues(){this.ensureBlankLine(),this.emitMultiline(`class EnumValues<T> {
846
+ Map<String, T> map;
847
+ late Map<T, String> reverseMap;
848
+
849
+ EnumValues(this.map);
850
+
851
+ Map<T, String> get reverse {
852
+ reverseMap = map.map((k, v) => MapEntry(v, k));
853
+ return reverseMap;
854
+ }
855
+ }`)}emitSourceStructure(){this.emitFileHeader(),!this._options.justTypes&&!this._options.codersInClass&&this.forEachTopLevel(`leading-and-interposing`,(e,t)=>{let{encoder:n,decoder:r}=(0,d.defined)(this._topLevelDependents.get(t));this.emitLine(this.dartType(e),` `,r,`(String str) => `,this.fromDynamicExpression(e.isNullable,e,`json.decode(str)`),`;`),this.ensureBlankLine(),this.emitLine(`String `,n,`(`,this.dartType(e),` data) => json.encode(`,this.toDynamicExpression(e.isNullable,e,`data`),`);`)}),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this._options.useFreezed?this.emitFreezedClassDefinition(e,t):this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>{}),this._needEnumValues&&this.emitEnumValues()}};e.DartRenderer=S})),oo=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.JSONPythonRenderer=e.PythonRenderer=e.PythonTargetLanguage=e.pythonOptions=void 0;var n=Ba(),r=wa(),i=ra(),o=Ra(),s=Ta(),c=ua(),l=Q(),u=Ea(),d=ha(),f=Ia(),p=a(),m=t(la()),h=[`Any`,`True`,`False`,`None`,`Enum`,`List`,`Dict`,`Optional`,`Union`,`Iterable`,`Type`,`TypeVar`,`T`,`EnumT`],g=`and.as.assert.async.await.bool.break.class.continue.datetime.def.del.dict.elif.else.except.finally.float.for.from.global.if.import.in.int.is.lambda.nonlocal.not.or.pass.print.raise.return.self.str.try.while.with.yield`.split(`.`);e.pythonOptions={features:new i.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 i.BooleanOption(`just-types`,`Classes only`,!1),nicePropertyNames:new i.BooleanOption(`nice-property-names`,`Transform property names to be Pythonic`,!0)},e.PythonTargetLanguage=class extends n.TargetLanguage{getOptions(){return[e.pythonOptions.features,e.pythonOptions.justTypes,e.pythonOptions.nicePropertyNames]}get stringTypeMapping(){let e=new Map,t=`date-time`;return e.set(`date`,t),e.set(`time`,t),e.set(`date-time`,t),e.set(`uuid`,`uuid`),e.set(`integer-string`,`integer-string`),e.set(`bool-string`,`bool-string`),e}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!1}needsTransformerForType(e){return e instanceof r.UnionType?(0,p.iterableSome)(e.members,e=>this.needsTransformerForType(e)):e.kind===`integer-string`||e.kind===`bool-string`}makeRenderer(t,n){let r=(0,i.getOptionValues)(e.pythonOptions,n);return r.justTypes?new T(this,t,r):new A(this,t,r)}};function _(e){let t=m.default.getCategory(e);return[`Lu`,`Ll`,`Lt`,`Lm`,`Lo`,`Nl`].indexOf(t)>=0}function v(e){if(_(e))return!0;let t=m.default.getCategory(e);return[`Mn`,`Mc`,`Nd`,`Pc`].indexOf(t)>=0}function y(e){let t=String.fromCharCode(e).normalize(`NFKC`),n=t.length;if(n===0||!_(t.charCodeAt(0)))return!1;for(let e=1;e<n;e++)if(!v(t.charCodeAt(e)))return!1;return!0}function b(e){let t=String.fromCharCode(e).normalize(`NFKC`),n=t.length;for(let e=0;e<n;e++)if(!v(t.charCodeAt(e)))return!1;return!0}var x=(0,c.utf16LegalizeCharacters)(b);function S(e){let t=(0,c.splitIntoWords)(e);return(0,c.combineWords)(t,x,c.firstUpperWordStyle,c.firstUpperWordStyle,c.allUpperWordStyle,c.allUpperWordStyle,``,y)}function C(e,t){return t?e?c.allUpperWordStyle:c.allLowerWordStyle:c.originalWord}function w(e,t,n){let r=C(t,n),i=n?`_`:``,a=(0,c.splitIntoWords)(e);return(0,c.combineWords)(a,x,r,r,r,r,i,y)}var T=class extends o.ConvenienceRenderer{constructor(e,t,n){super(e,t),this.pyOptions=n,this.imports=new Map,this.declaredTypes=new Set}forbiddenNamesForGlobalNamespace(){return h}forbiddenForObjectProperties(e,t){return{names:g,includeGlobalForbidden:!1}}makeNamedTypeNamer(){return(0,s.funPrefixNamer)(`type`,S)}namerForObjectProperty(){return(0,s.funPrefixNamer)(`property`,e=>w(e,!1,this.pyOptions.nicePropertyNames))}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return(0,s.funPrefixNamer)(`enum-case`,e=>w(e,!0,this.pyOptions.nicePropertyNames))}get commentLineStart(){return`# `}emitDescriptionBlock(e){e.length===1?this.emitLine(`"""`,e[0],`"""`):this.emitCommentLines(e,``,void 0,`"""`,`"""`)}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(e){let t=e.kind;return t===`class`||t===`enum`}emitBlock(e,t){this.emitLine(e),this.indent(t)}string(e){return[`"`,(0,c.stringEscape)(e),`"`]}withImport(e,t){return(this.pyOptions.features.typeHints||e!==`typing`)&&(0,p.mapUpdateInto)(this.imports,e,e=>e?(0,p.setUnionInto)(e,[t]):new Set([t])),t}withTyping(e){return this.withImport(`typing`,e)}namedType(e){let t=this.nameForNamedType(e);return this.declaredTypes.has(e)?t:[`'`,t,`'`]}pythonType(e){let t=(0,f.followTargetType)(e);return(0,d.matchType)(t,e=>this.withTyping(`Any`),e=>`None`,e=>`bool`,e=>`int`,e=>`float`,e=>`str`,e=>[this.withTyping(`List`),`[`,this.pythonType(e.items),`]`],e=>this.namedType(e),e=>[this.withTyping(`Dict`),`[str, `,this.pythonType(e.values),`]`],e=>this.namedType(e),e=>{let[t,n]=(0,d.removeNullFromUnion)(e),r=Array.from(n).map(e=>this.pythonType(e));if(t!==null){let e=[];return!this.getAlphabetizeProperties()&&this.pyOptions.features.dataClasses&&e.push(` = None`),n.size>1?(this.withImport(`typing`,`Union`),[this.withTyping(`Optional`),`[Union[`,(0,p.arrayIntercalate)(`, `,r),`]]`,...e]):[this.withTyping(`Optional`),`[`,(0,l.defined)((0,p.iterableFirst)(r)),`]`,...e]}else return[this.withTyping(`Union`),`[`,(0,p.arrayIntercalate)(`, `,r),`]`]},e=>e.kind===`date-time`?this.withImport(`datetime`,`datetime`):e.kind===`uuid`?this.withImport(`uuid`,`UUID`):(0,l.panic)(`Transformed type ${e.kind} not supported`))}declarationLine(e){return e instanceof r.ClassType?[`class `,this.nameForNamedType(e),`:`]:e instanceof r.EnumType?[`class `,this.nameForNamedType(e),`(`,this.withImport(`enum`,`Enum`),`):`]:(0,l.panic)(`Can't declare type ${e.kind}`)}declareType(e,t){this.emitBlock(this.declarationLine(e),()=>{this.emitDescription(this.descriptionForType(e)),t()}),this.declaredTypes.add(e)}emitClassMembers(e){if(this.pyOptions.features.dataClasses)return;let t=[];this.forEachClassProperty(e,`none`,(e,n,r)=>{t.push([e,this.typeHint(`: `,this.pythonType(r.type))])}),this.emitBlock([`def __init__(self, `,(0,p.arrayIntercalate)(`, `,t),`)`,this.typeHint(` -> None`),`:`],()=>{t.length===0?this.emitLine(`pass`):this.forEachClassProperty(e,`none`,e=>{this.emitLine(`self.`,e,` = `,e)})})}typeHint(...e){return this.pyOptions.features.typeHints?e:[]}typingDecl(e,t){return[e,this.typeHint(`: `,this.withTyping(t))]}typingReturn(e){return this.typeHint(` -> `,this.withTyping(e))}sortClassProperties(e,t){return this.pyOptions.features.dataClasses?(0,p.mapSortBy)(e,e=>e.type instanceof r.UnionType&&(0,d.nullableFromUnion)(e.type)!=null?1:0):super.sortClassProperties(e,t)}emitClass(e){this.pyOptions.features.dataClasses&&this.emitLine(`@`,this.withImport(`dataclasses`,`dataclass`)),this.declareType(e,()=>{this.pyOptions.features.typeHints&&(e.getProperties().size===0?this.emitLine(`pass`):this.forEachClassProperty(e,`none`,(t,n,r)=>{this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitLine(t,this.typeHint(`: `,this.pythonType(r.type)))}),this.ensureBlankLine()),this.emitClassMembers(e)})}emitEnum(e){this.declareType(e,()=>{this.forEachEnumCase(e,`none`,(e,t)=>{this.emitLine([e,` = `,this.string(t)])})})}emitImports(){this.imports.forEach((e,t)=>{this.emitLine(`from `,t,` import `,Array.from(e).join(`, `))})}emitSupportCode(){}emitClosingCode(){}emitSourceStructure(e){let t=this.gatherSource(()=>{this.forEachNamedType([`interposing`,2],e=>this.emitClass(e),e=>this.emitEnum(e),e=>{})}),n=this.gatherSource(()=>this.emitClosingCode()),r=this.gatherSource(()=>this.emitSupportCode());this.leadingComments!==void 0&&this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this.emitImports(),this.ensureBlankLine(2),this.emitGatheredSource(r),this.ensureBlankLine(2),this.emitGatheredSource(t),this.ensureBlankLine(2),this.emitGatheredSource(n)}};e.PythonRenderer=T;function E(e,t){return typeof t==`function`?e.value===void 0?e.lambda===void 0?{lambda:(0,u.multiWord)(` `,`lambda x:`,t(`x`)),value:void 0}:{lambda:(0,u.multiWord)(` `,`lambda x:`,t([(0,u.parenIfNeeded)(e.lambda),`(x)`])),value:void 0}:{value:t(k(e))}:t.value===void 0?t.lambda===void 0?e:e.value===void 0?e.lambda===void 0?t:{lambda:(0,u.multiWord)(``,`lambda x: `,(0,u.parenIfNeeded)(t.lambda),`(`,(0,u.parenIfNeeded)(e.lambda),`(x))`),value:void 0}:{lambda:t.lambda,value:k(e)}:(0,l.panic)(`Cannot compose into a value`)}var D={value:void 0};function O(e){return e.lambda===void 0?e.value===void 0?(0,u.multiWord)(` `,`lambda x:`,`x`):(0,u.multiWord)(` `,`lambda x:`,e.value):e.value===void 0?e.lambda:(0,u.multiWord)(``,`lambda x: `,(0,u.parenIfNeeded)(e.lambda),`(`,e.value,`)`)}function k(e){return e.value===void 0?(0,l.panic)(`Cannot make value from lambda without value`):e.lambda===void 0?e.value:[(0,u.parenIfNeeded)(e.lambda),`(`,e.value,`)`]}var A=class extends T{constructor(){super(...arguments),this._deserializerFunctions=new Set,this._converterNamer=(0,s.funPrefixNamer)(`converter`,e=>w(e,!1,this.pyOptions.nicePropertyNames)),this._topLevelConverterNames=new Map,this._haveTypeVar=!1,this._haveEnumTypeVar=!1,this._haveDateutil=!1}emitTypeVar(e,t){this.pyOptions.features.typeHints&&this.emitLine(e,` = `,this.withTyping(`TypeVar`),`(`,this.string(e),t,`)`)}typeVar(){return this._haveTypeVar=!0,this.withTyping(`TypeVar`),`T`}enumTypeVar(){return this._haveEnumTypeVar=!0,this.withTyping(`TypeVar`),this.withImport(`enum`,`Enum`),`EnumT`}cast(e,t){return this.pyOptions.features.typeHints?[this.withTyping(`cast`),`(`,e,`, `,t,`)`]:t}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(){let e=this.enumTypeVar();this.emitBlock([`def to_enum(c`,this.typeHint(`: `,this.withTyping(`Type`),`[`,e,`]`),`, `,this.typingDecl(`x`,`Any`),`)`,this.typeHint(` -> `,e),`:`],()=>{this.emitLine(`assert isinstance(x, c)`),this.emitLine(`return x.value`)})}emitListConverter(){let e=this.typeVar();this.emitBlock([`def from_list(f`,this.typeHint(`: `,this.withTyping(`Callable`),`[[`,this.withTyping(`Any`),`], `,e,`]`),`, `,this.typingDecl(`x`,`Any`),`)`,this.typeHint(` -> `,this.withTyping(`List`),`[`,e,`]`),`:`],()=>{this.emitLine(`assert isinstance(x, list)`),this.emitLine(`return [f(y) for y in x]`)})}emitToClassConverter(){let e=this.typeVar();this.emitBlock([`def to_class(c`,this.typeHint(`: `,this.withTyping(`Type`),`[`,e,`]`),`, `,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(){let e=this.typeVar();this.emitBlock([`def from_dict(f`,this.typeHint(`: `,this.withTyping(`Callable`),`[[`,this.withTyping(`Any`),`], `,e,`]`),`, `,this.typingDecl(`x`,`Any`),`)`,this.typeHint(` -> `,this.withTyping(`Dict`),`[str, `,e,`]`),`:`],()=>{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):
856
+ for f in fs:
857
+ try:
858
+ return f(x)
859
+ except:
860
+ pass
861
+ 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(){let e=this.typeVar();this.emitBlock([`def is_type(t`,this.typeHint(`: `,this.withTyping(`Type`),`[`,e,`]`),`, `,this.typingDecl(`x`,`Any`),`)`,this.typeHint(` -> `,e),`:`],()=>{this.emitLine(`assert isinstance(x, t)`),this.emitLine(`return x`)})}emitConverter(e){switch(e){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,l.assertNever)(e)}}conv(e){this._deserializerFunctions.add(e);let t=e.replace(/-/g,`_`);return e.startsWith(`from-`)||e.startsWith(`to-`)||e.startsWith(`is-`)?t:[`from_`,t]}convFn(e,t){return E(t,{lambda:(0,u.singleWord)(this.conv(e)),value:void 0})}typeObject(e){let t=(0,d.matchType)(e,e=>void 0,e=>`type(None)`,e=>`bool`,e=>`int`,e=>`float`,e=>`str`,e=>`List`,e=>this.nameForNamedType(e),e=>`dict`,e=>this.nameForNamedType(e),e=>void 0,e=>{if(e.kind===`date-time`)return this.withImport(`datetime`,`datetime`);if(e.kind===`uuid`)return this.withImport(`uuid`,`UUID`)});return t===void 0?(0,l.panic)(`No type object for ${e.kind}`):t}transformer(e,t,n){let r=(e,t)=>e===void 0?t:this.transformer(t,e,n),i=(e,t)=>E(t,t=>[this.conv(`is-type`),`(`,this.typeObject(e),`, `,t,`)`]);if(t instanceof f.DecodingChoiceTransformer||t instanceof f.ChoiceTransformer){let r=t.transformers.map(e=>O(this.transformer(D,e,n)).source);return E(e,e=>[this.conv(`union`),`([`,(0,p.arrayIntercalate)(`, `,r),`], `,e,`)`])}else if(t instanceof f.DecodingTransformer){let n=t.consumer;return r(n,this.deserializer(e,t.sourceType))}else if(t instanceof f.EncodingTransformer)return this.serializer(e,t.sourceType);else if(t instanceof f.UnionInstantiationTransformer)return e;else if(t instanceof f.UnionMemberMatchTransformer){let n=t.transformer;return r(n,i(t.memberType,e))}else if(t instanceof f.ParseStringTransformer){let i=t.consumer,a=i===void 0?n:i.sourceType,o;switch(a.kind){case`integer`:o=E(e,e=>[`int(`,e,`)`]);break;case`bool`:o=this.convFn(`from-stringified-bool`,e);break;case`enum`:o=this.deserializer(e,a);break;case`date-time`:o=this.convFn(`from-datetime`,e);break;case`uuid`:o=E(e,e=>[this.withImport(`uuid`,`UUID`),`(`,e,`)`]);break;default:return(0,l.panic)(`Parsing of ${a.kind} in a transformer is not supported`)}return r(i,o)}else if(t instanceof f.StringifyTransformer){let n=t.consumer,i;switch(t.sourceType.kind){case`integer`:i=E(e,e=>[`str(`,e,`)`]);break;case`bool`:i=E(e,e=>[`str(`,e,`).lower()`]);break;case`enum`:i=this.serializer(e,t.sourceType);break;case`date-time`:i=E(e,e=>[e,`.isoformat()`]);break;case`uuid`:i=E(e,e=>[`str(`,e,`)`]);break;default:return(0,l.panic)(`Parsing of ${t.sourceType.kind} in a transformer is not supported`)}return r(n,i)}else return(0,l.panic)(`Transformer ${t.kind} is not supported`)}deserializer(e,t){let n=(0,f.transformationForType)(t);return n===void 0?(0,d.matchType)(t,t=>e,t=>this.convFn(`none`,e),t=>this.convFn(`bool`,e),t=>this.convFn(`int`,e),t=>this.convFn(`from-float`,e),t=>this.convFn(`str`,e),t=>E(e,e=>[this.conv(`list`),`(`,O(this.deserializer(D,t.items)).source,`, `,e,`)`]),t=>E(e,{lambda:(0,u.singleWord)(this.nameForNamedType(t),`.from_dict`),value:void 0}),t=>E(e,e=>[this.conv(`dict`),`(`,O(this.deserializer(D,t.values)).source,`, `,e,`)`]),t=>E(e,{lambda:(0,u.singleWord)(this.nameForNamedType(t)),value:void 0}),t=>{let n=Array.from(t.members).map(e=>O(this.deserializer(D,e)).source);return E(e,e=>[this.conv(`union`),`([`,(0,p.arrayIntercalate)(`, `,n),`], `,e,`)`])},t=>t.kind===`date-time`?this.convFn(`from-datetime`,e):t.kind===`uuid`?E(e,e=>[this.withImport(`uuid`,`UUID`),`(`,e,`)`]):(0,l.panic)(`Transformed type ${t.kind} not supported`)):this.transformer(e,n.transformer,n.targetType)}serializer(e,t){let n=(0,f.transformationForType)(t);if(n!==void 0){let t=n.reverse;return this.transformer(e,t.transformer,t.targetType)}return(0,d.matchType)(t,t=>e,t=>this.convFn(`none`,e),t=>this.convFn(`bool`,e),t=>this.convFn(`int`,e),t=>this.convFn(`to-float`,e),t=>this.convFn(`str`,e),t=>E(e,e=>[this.conv(`list`),`(`,O(this.serializer(D,t.items)).source,`, `,e,`)`]),t=>E(e,e=>[this.conv(`to-class`),`(`,this.nameForNamedType(t),`, `,e,`)`]),t=>E(e,e=>[this.conv(`dict`),`(`,O(this.serializer(D,t.values)).source,`, `,e,`)`]),t=>E(e,e=>[this.conv(`to-enum`),`(`,this.nameForNamedType(t),`, `,e,`)`]),t=>{let n=Array.from(t.members).map(e=>O(this.serializer(D,e)).source);return E(e,e=>[this.conv(`union`),`([`,(0,p.arrayIntercalate)(`, `,n),`], `,e,`)`])},t=>t.kind===`date-time`?E(e,e=>[e,`.isoformat()`]):t.kind===`uuid`?E(e,e=>[`str(`,e,`)`]):(0,l.panic)(`Transformed type ${t.kind} not supported`))}emitClassMembers(e){super.emitClassMembers(e),this.ensureBlankLine();let t=this.nameForNamedType(e);this.emitLine(`@staticmethod`),this.emitBlock([`def from_dict(`,this.typingDecl(`obj`,`Any`),`)`,this.typeHint(` -> `,this.namedType(e)),`:`],()=>{let n=[];this.emitLine(`assert isinstance(obj, dict)`),this.forEachClassProperty(e,`none`,(e,t,r)=>{let i={value:[`obj.get(`,this.string(t),`)`]};this.emitLine(e,` = `,k(this.deserializer(i,r.type))),n.push(e)}),this.emitLine(`return `,t,`(`,(0,p.arrayIntercalate)(`, `,n),`)`)}),this.ensureBlankLine(),this.emitBlock([`def to_dict(self)`,this.typeHint(` -> dict`),`:`],()=>{this.emitLine(`result`,this.typeHint(`: dict`),` = {}`),this.forEachClassProperty(e,`none`,(e,t,n)=>{let r={value:[`self.`,e]};n.isOptional?this.emitBlock([`if self.`,e,` is not None:`],()=>{this.emitLine(`result[`,this.string(t),`] = `,k(this.serializer(r,n.type)))}):this.emitLine(`result[`,this.string(t),`] = `,k(this.serializer(r,n.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(){let e=Array.from(this._deserializerFunctions).map(e=>[e,e]);this.forEachWithBlankLines(e,[`interposing`,2],e=>{this.emitConverter(e)})}makeTopLevelDependencyNames(e,t){let n=new s.DependencyName(this._converterNamer,o.topLevelNameOrder,e=>`${e(t)}_from_dict`),r=new s.DependencyName(this._converterNamer,o.topLevelNameOrder,e=>`${e(t)}_to_dict`);return this._topLevelConverterNames.set(t,{fromDict:n,toDict:r}),[n,r]}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`,(e,t)=>{let{fromDict:n}=(0,l.defined)(this._topLevelConverterNames.get(t));this.emitLine(this.commentLineStart,` result = `,n,`(json.loads(json_string))`)})}emitClosingCode(){this.forEachTopLevel([`interposing`,2],(e,t)=>{let{fromDict:n,toDict:r}=(0,l.defined)(this._topLevelConverterNames.get(t)),i=this.pythonType(e);this.emitBlock([`def `,n,`(`,this.typingDecl(`s`,`Any`),`)`,this.typeHint(` -> `,i),`:`],()=>{this.emitLine(`return `,k(this.deserializer({value:`s`},e)))}),this.ensureBlankLine(2),this.emitBlock([`def `,r,`(x`,this.typeHint(`: `,i),`)`,this.typingReturn(`Any`),`:`],()=>{this.emitLine(`return `,k(this.serializer({value:`x`},e)))})})}};e.JSONPythonRenderer=A})),so=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.PikeRenderer=e.PikeTargetLanguage=e.pikeOptions=void 0;var t=Ra(),n=Ta(),r=Ea(),i=Ba(),a=wa(),o=ha(),s=ua();e.pikeOptions={};var 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`.split(`.`),l=(0,s.legalizeCharacters)(s.isLetterOrUnderscoreOrDigit),u=(0,n.funPrefixNamer)(`enumNamer`,(0,s.makeNameStyle)(`upper-underscore`,l)),d=(0,n.funPrefixNamer)(`genericNamer`,(0,s.makeNameStyle)(`underscore`,l)),f=(0,n.funPrefixNamer)(`typeNamer`,(0,s.makeNameStyle)(`pascal`,l));e.PikeTargetLanguage=class extends i.TargetLanguage{constructor(){super(`Pike`,[`pike`,`pikelang`],`pmod`)}getOptions(){return[]}makeRenderer(e){return new p(this,e)}};var p=class extends t.ConvenienceRenderer{emitSourceStructure(){this.emitInformationComment(),this.ensureBlankLine(),this.forEachTopLevel(`leading`,(e,t)=>{this.emitTopLevelTypedef(e,t),this.ensureBlankLine(),this.emitTopLevelConverter(e,t),this.ensureBlankLine()},e=>this.namedTypeToNameForTopLevel(e)===void 0),this.ensureBlankLine(),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnum(e,t),(e,t)=>this.emitUnion(e,t))}get enumCasesInGlobalNamespace(){return!0}makeEnumCaseNamer(){return u}makeNamedTypeNamer(){return f}makeUnionMemberNamer(){return d}namerForObjectProperty(){return d}forbiddenNamesForGlobalNamespace(){return[...c]}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!0}}sourceFor(e){return[`class`,`object`,`enum`].indexOf(e.kind)>=0?(0,r.singleWord)(this.nameForNamedType(e)):(0,o.matchType)(e,e=>(0,r.singleWord)(`mixed`),e=>(0,r.singleWord)(`mixed`),e=>(0,r.singleWord)(`bool`),e=>(0,r.singleWord)(`int`),e=>(0,r.singleWord)(`float`),e=>(0,r.singleWord)(`string`),e=>(0,r.singleWord)([`array(`,this.sourceFor(e.items).source,`)`]),e=>(0,r.singleWord)(this.nameForNamedType(e)),e=>{let t,n=e.values;return t=this.sourceFor(n).source,(0,r.singleWord)([`mapping(string:`,t,`)`])},e=>(0,r.singleWord)(`enum`),e=>{if((0,o.nullableFromUnion)(e)!==null){let t=Array.from(e.getChildren()).map(e=>(0,r.parenIfNeeded)(this.sourceFor(e)));return(0,r.multiWord)(`|`,...t)}else return(0,r.singleWord)(this.nameForNamedType(e))})}emitClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([`class `,t],()=>{this.emitClassMembers(e),this.ensureBlankLine(),this.emitEncodingFunction(e)}),this.ensureBlankLine(),this.emitDecodingFunction(t,e)}emitEnum(e,t){this.emitBlock([e.kind,` `,t],()=>{let t=[];this.forEachEnumCase(e,`none`,(e,n)=>{t.push([[e,` = "`,(0,s.stringEscape)(n),`", `],[`// json: "`,n,`"`]])}),this.emitTable(t)})}emitUnion(e,t){if((0,o.nullableFromUnion)(e)!==null)return;this.emitDescription(this.descriptionForType(e));let[,n]=(0,o.removeNullFromUnion)(e),r=[];this.forEachUnionMember(e,n,`none`,null,(e,t)=>{let n=this.sourceFor(t).source;r.push([n])}),this.emitLine([`typedef `,r.map(e=>e.map(e=>this.sourcelikeToString(e))).join(`|`),` `,t,`;`]),this.ensureBlankLine(),this.emitBlock([t,` `,t,`_from_JSON(mixed json)`],()=>{this.emitLine([`return json;`])})}emitBlock(e,t,n=` {`,r=`}`){this.emitLine(e,n),this.indent(t),this.emitLine(r)}emitMappingBlock(e,t){this.emitBlock(e,t,`([`,`]);`)}emitClassMembers(e){let t=[];this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=this.sourceFor(r.type).source;t.push([[i,` `],[e,`; `],[`// json: "`,n,`"`]])}),this.emitTable(t)}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(e,t){this.emitLine(`typedef `,this.sourceFor(e).source,` `,t,`;`)}emitTopLevelConverter(e,t){this.emitBlock([t,` `,t,`_from_JSON(mixed json)`],()=>{if(e instanceof a.PrimitiveType)this.emitLine([`return json;`]);else if(e instanceof a.ArrayType)e.items instanceof a.PrimitiveType?this.emitLine([`return json;`]):this.emitLine([`return map(json, `,this.sourceFor(e.items).source,`_from_JSON);`]);else if(e instanceof a.MapType){let t=this.sourceFor(e.values).source;this.emitLine([`mapping(string:`,t,`) retval = ([]);`]);let n;n=e.values instanceof a.PrimitiveType?[`(`,t,`) v`]:[t,`_from_JSON(v)`],this.emitBlock([`foreach (json; string k; mixed v)`],()=>{this.emitLine([`retval[k] = `,n,`;`])}),this.emitLine([`return retval;`])}})}emitEncodingFunction(e){this.emitBlock([`string encode_json()`],()=>{this.emitMappingBlock([`mapping(string:mixed) json = `],()=>{this.forEachClassProperty(e,`none`,(e,t)=>{this.emitLine([`"`,(0,s.stringEscape)(t),`" : `,e,`,`])})}),this.ensureBlankLine(),this.emitLine([`return Standards.JSON.encode(json);`])})}emitDecodingFunction(e,t){this.emitBlock([e,` `,e,`_from_JSON(mixed json)`],()=>{this.emitLine([e,` retval = `,e,`();`]),this.ensureBlankLine(),this.forEachClassProperty(t,`none`,(e,t)=>{this.emitLine([`retval.`,e,` = json["`,(0,s.stringEscape)(t),`"];`])}),this.ensureBlankLine(),this.emitLine([`return retval;`])})}};e.PikeRenderer=p})),co=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.HaskellRenderer=e.HaskellTargetLanguage=e.haskellOptions=void 0;var t=a(),n=Ba(),r=ra(),i=ha(),o=Ra(),s=Ta(),c=ua(),l=Ea();e.haskellOptions={justTypes:new r.BooleanOption(`just-types`,`Plain types only`,!1),useList:new r.EnumOption(`array-type`,`Use Array or List`,[[`array`,!1],[`list`,!0]]),moduleName:new r.StringOption(`module`,`Generated module name`,`NAME`,`QuickType`)},e.HaskellTargetLanguage=class 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(t,n){return new h(this,t,(0,r.getOptionValues)(e.haskellOptions,n))}};var u=`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`.split(`.`),d=(0,c.legalizeCharacters)(e=>(0,c.isAscii)(e)&&(0,c.isLetterOrUnderscoreOrDigit)(e));function f(e,t){let n=(0,c.splitIntoWords)(e);return(0,c.combineWords)(n,d,t?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,t?c.allUpperWordStyle:c.allLowerWordStyle,c.allUpperWordStyle,``,c.isLetterOrUnderscore)}var p=(0,s.funPrefixNamer)(`upper`,e=>f(e,!0)),m=(0,s.funPrefixNamer)(`lower`,e=>f(e,!1)),h=class extends o.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}forbiddenNamesForGlobalNamespace(){return u}makeNamedTypeNamer(){return p}namerForObjectProperty(){return m}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return p}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return p}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(e,t,n,r){return`${super.proposeUnionMemberName(e,t,n,r)}_in_${r(t)}`}get commentLineStart(){return`-- `}emitDescriptionBlock(e){e.length===1?this.emitLine(`{-| `,e[0],` -}`):this.emitCommentLines(e,``,void 0,`-}`,`{-| `)}haskellType(e,t=!1){return(0,i.matchType)(e,e=>(0,l.multiWord)(` `,`Maybe`,`Text`),e=>(0,l.multiWord)(` `,`Maybe`,`Text`),e=>(0,l.singleWord)(`Bool`),e=>(0,l.singleWord)(`Int`),e=>(0,l.singleWord)(`Float`),e=>(0,l.singleWord)(`Text`),e=>this._options.useList?(0,l.multiWord)(``,`[`,(0,l.parenIfNeeded)(this.haskellType(e.items)),`]`):(0,l.multiWord)(` `,`Vector`,(0,l.parenIfNeeded)(this.haskellType(e.items))),e=>(0,l.singleWord)(this.nameForNamedType(e)),e=>(0,l.multiWord)(` `,`HashMap Text`,(0,l.parenIfNeeded)(this.haskellType(e.values))),e=>(0,l.singleWord)(this.nameForNamedType(e)),e=>{let n=(0,i.nullableFromUnion)(e);if(n!==null){let e=this.haskellType(n);return t?e:(0,l.multiWord)(` `,`Maybe`,(0,l.parenIfNeeded)(e))}return(0,l.singleWord)(this.nameForNamedType(e))})}haskellProperty(e){return e.isOptional?(0,l.multiWord)(` `,`Maybe`,(0,l.parenIfNeeded)(this.haskellType(e.type,!0))).source:this.haskellType(e.type).source}encoderNameForType(e){return(0,i.matchType)(e,e=>(0,l.singleWord)(`String`),e=>(0,l.singleWord)(`Null`),e=>(0,l.singleWord)(`Bool`),e=>(0,l.singleWord)(`Number`),e=>(0,l.singleWord)(`Number`),e=>(0,l.singleWord)(`String`),e=>(0,l.singleWord)(`Array`),e=>(0,l.singleWord)(`Object`),e=>(0,l.singleWord)(`Object`),e=>(0,l.singleWord)(`Object`),e=>(0,l.singleWord)(`Object`))}emitTopLevelDefinition(e,t){this.emitLine(`type `,t,` = `,this.haskellType(e).source)}emitClassDefinition(e,t){let n=this.descriptionForType(e);this.forEachClassProperty(e,`none`,(t,r)=>{let i=this.descriptionForClassProperty(e,r);i!==void 0&&(n===void 0?n=[]:n.push(``),n.push(`${this.sourcelikeToString(t)}:`),n.push(...i))}),this.emitDescription(n),this.emitLine(`data `,t,` = `,t),this.indent(()=>{let n=!0;this.forEachClassProperty(e,`none`,(e,r,i)=>{this.emitLine(n?`{ `:`, `,e,t,` :: `,this.haskellProperty(i)),n=!1}),n&&this.emitLine(`{`),this.emitLine(`} deriving (Show)`)})}emitEnumDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`data `,t),this.indent(()=>{let n=!0;this.forEachEnumCase(e,`none`,e=>{let r=n?`=`:`|`;this.emitLine(r,` `,e,t),n=!1}),this.emitLine(`deriving (Show)`)})}emitUnionDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine(`data `,t),this.indent(()=>{let t=!0;this.forEachUnionMember(e,null,`none`,null,(e,n)=>{let r=t?`=`:`|`;n.kind===`null`?this.emitLine(r,` `,e):this.emitLine(r,` `,e,` `,(0,l.parenIfNeeded)(this.haskellType(n))),t=!1}),this.emitLine(`deriving (Show)`)})}emitTopLevelFunctions(e){this.emitLine(`decodeTopLevel :: ByteString -> Maybe `,e),this.emitLine(`decodeTopLevel = decode`)}classPropertyLength(e){let t=0;return this.forEachClassProperty(e,`none`,()=>{t+=1}),t}emitClassEncoderInstance(e,t){let n=[];this.forEachClassProperty(e,`none`,e=>{n.push(` `),n.push(e),n.push(t)}),this.emitLine(`instance ToJSON `,t,` where`),this.indent(()=>{n.length===0?this.emitLine(`toJSON = \\_ -> emptyObject`):(this.emitLine(`toJSON (`,t,...n,`) =`),this.indent(()=>{this.emitLine(`object`);let n=!0;this.forEachClassProperty(e,`none`,(e,r)=>{this.emitLine(n?`[ `:`, `,`"`,(0,c.stringEscape)(r),`" .= `,e,t),n=!1}),n&&this.emitLine(`[`),this.emitLine(`]`)}))})}emitClassDecoderInstance(e,t){this.emitLine(`instance FromJSON `,t,` where`),this.indent(()=>{this.classPropertyLength(e)===0?this.emitLine(`parseJSON emptyObject = return `,t):(this.emitLine(`parseJSON (Object v) = `,t),this.indent(()=>{let t=!0;this.forEachClassProperty(e,`none`,(e,n,r)=>{let i=r.isOptional?`.:?`:`.:`;this.emitLine(t?`<$> `:`<*> `,`v `,i,` "`,(0,c.stringEscape)(n),`"`),t=!1})}))})}emitClassFunctions(e,t){this.emitClassEncoderInstance(e,t),this.ensureBlankLine(),this.emitClassDecoderInstance(e,t)}emitEnumEncoderInstance(e,t){this.emitLine(`instance ToJSON `,t,` where`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,n)=>{this.emitLine(`toJSON `,e,t,` = "`,(0,c.stringEscape)(n),`"`)})})}emitEnumDecoderInstance(e,t){this.emitLine(`instance FromJSON `,t,` where`),this.indent(()=>{this.emitLine(`parseJSON = withText "`,t,`" parseText`),this.indent(()=>{this.emitLine(`where`),this.indent(()=>{this.forEachEnumCase(e,`none`,(e,n)=>{this.emitLine(`parseText "`,(0,c.stringEscape)(n),`" = return `,e,t)})})})})}emitEnumFunctions(e,t){this.emitEnumEncoderInstance(e,t),this.ensureBlankLine(),this.emitEnumDecoderInstance(e,t)}emitUnionEncoderInstance(e,t){this.emitLine(`instance ToJSON `,t,` where`),this.indent(()=>{this.forEachUnionMember(e,null,`none`,null,(e,t)=>{t.kind===`null`?this.emitLine(`toJSON `,e,` = Null`):this.emitLine(`toJSON (`,e,` x) = toJSON x`)})})}emitUnionDecoderInstance(e,t){this.emitLine(`instance FromJSON `,t,` where`),this.indent(()=>{this.forEachUnionMember(e,null,`none`,null,(e,t)=>{t.kind===`null`?this.emitLine(`parseJSON Null = return `,e):this.emitLine(`parseJSON xs@(`,this.encoderNameForType(t).source,` _) = (fmap `,e,` . parseJSON) xs`)})})}emitUnionFunctions(e,t){this.emitUnionEncoderInstance(e,t),this.ensureBlankLine(),this.emitUnionDecoderInstance(e,t)}emitLanguageExtensions(e){this.emitLine(`{-# LANGUAGE ${e} #-}`)}emitSourceStructure(){let e=[];this.forEachTopLevel(`none`,(t,n)=>{e.push([n,` (..)`])}),this.forEachObject(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push([r,` (..)`])}),this.forEachEnum(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push([r,` (..)`])}),this.forEachUnion(`none`,(n,r)=>{(0,t.mapContains)(this.topLevels,n)||e.push([r,` (..)`])}),this.emitLanguageExtensions(`StrictData`),this.emitLanguageExtensions(`OverloadedStrings`),this._options.justTypes||(this.ensureBlankLine(),this.emitLine(`module `,this._options.moduleName),this.indent(()=>{for(let t=0;t<e.length;t++)this.emitLine(t===0?`(`:`,`,` `,e[t]);this.emitLine(`, decodeTopLevel`),this.emitLine(`) where`)}),this.ensureBlankLine(),this.emitMultiline(`import Data.Aeson
862
+ import Data.Aeson.Types (emptyObject)
863
+ import Data.ByteString.Lazy (ByteString)
864
+ import Data.HashMap.Strict (HashMap)
865
+ import Data.Text (Text)`),this._options.useList||this.emitLine(`import Data.Vector (Vector)`)),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelDefinition(e,t),e=>this.namedTypeToNameForTopLevel(e)===void 0),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>this.emitUnionDefinition(e,t)),this.forEachTopLevel(`leading-and-interposing`,(e,t)=>this.emitTopLevelFunctions(t)),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassFunctions(e,t),(e,t)=>this.emitEnumFunctions(e,t),(e,t)=>this.emitUnionFunctions(e,t)),!this._options.justTypes&&this.ensureBlankLine()}};e.HaskellRenderer=h})),lo=i(((e,t)=>{(function(){var n,r=`4.17.21`,i=200,a=`Unsupported core-js use. Try https://npms.io/search?q=ponyfill.`,o=`Expected a function`,s="Invalid `variable` option passed into `_.template`",c=`__lodash_hash_undefined__`,l=500,u=`__lodash_placeholder__`,d=1,f=2,p=4,m=1,h=2,g=1,_=2,v=4,y=8,b=16,x=32,S=64,C=128,w=256,T=512,E=30,D=`...`,O=800,k=16,A=1,j=2,M=3,N=1/0,P=9007199254740991,ee=17976931348623157e292,F=NaN,I=4294967295,L=I-1,R=I>>>1,z=[[`ary`,C],[`bind`,g],[`bindKey`,_],[`curry`,y],[`curryRight`,b],[`flip`,T],[`partial`,x],[`partialRight`,S],[`rearg`,w]],te=`[object Arguments]`,ne=`[object Array]`,re=`[object AsyncFunction]`,B=`[object Boolean]`,V=`[object Date]`,ie=`[object DOMException]`,ae=`[object Error]`,H=`[object Function]`,oe=`[object GeneratorFunction]`,U=`[object Map]`,se=`[object Number]`,ce=`[object Null]`,le=`[object Object]`,ue=`[object Promise]`,de=`[object Proxy]`,fe=`[object RegExp]`,W=`[object Set]`,G=`[object String]`,pe=`[object Symbol]`,me=`[object Undefined]`,K=`[object WeakMap]`,q=`[object WeakSet]`,he=`[object ArrayBuffer]`,ge=`[object DataView]`,J=`[object Float32Array]`,_e=`[object Float64Array]`,ve=`[object Int8Array]`,ye=`[object Int16Array]`,Y=`[object Int32Array]`,be=`[object Uint8Array]`,X=`[object Uint8ClampedArray]`,xe=`[object Uint16Array]`,Se=`[object Uint32Array]`,Ce=/\b__p \+= '';/g,we=/\b(__p \+=) '' \+/g,Te=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Ee=/&(?:amp|lt|gt|quot|#39);/g,De=/[&<>"']/g,Oe=RegExp(Ee.source),ke=RegExp(De.source),Ae=/<%-([\s\S]+?)%>/g,je=/<%([\s\S]+?)%>/g,Me=/<%=([\s\S]+?)%>/g,Ne=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Pe=/^\w*$/,Fe=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ie=/[\\^$.*+?()[\]{}|]/g,Le=RegExp(Ie.source),Re=/^\s+/,ze=/\s/,Be=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ve=/\{\n\/\* \[wrapped with (.+)\] \*/,He=/,? & /,Ue=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,We=/[()=,{}\[\]\/\s]/,Ge=/\\(\\)?/g,Ke=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qe=/\w*$/,Je=/^[-+]0x[0-9a-f]+$/i,Ye=/^0b[01]+$/i,Xe=/^\[object .+?Constructor\]$/,Ze=/^0o[0-7]+$/i,Qe=/^(?:0|[1-9]\d*)$/,$e=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,et=/($^)/,tt=/['\n\r\u2028\u2029\\]/g,nt=`\\ud800-\\udfff`,rt=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,it=`\\u2700-\\u27bf`,at=`a-z\\xdf-\\xf6\\xf8-\\xff`,ot=`\\xac\\xb1\\xd7\\xf7`,st=`\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf`,ct=`\\u2000-\\u206f`,lt=` \\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`,ut=`A-Z\\xc0-\\xd6\\xd8-\\xde`,dt=`\\ufe0e\\ufe0f`,ft=ot+st+ct+lt,pt=`['’]`,mt=`[`+nt+`]`,ht=`[`+ft+`]`,gt=`[`+rt+`]`,_t=`\\d+`,vt=`[`+it+`]`,yt=`[`+at+`]`,bt=`[^`+nt+ft+_t+it+at+ut+`]`,xt=`\\ud83c[\\udffb-\\udfff]`,St=`(?:`+gt+`|`+xt+`)`,Ct=`[^`+nt+`]`,wt=`(?:\\ud83c[\\udde6-\\uddff]){2}`,Tt=`[\\ud800-\\udbff][\\udc00-\\udfff]`,Et=`[`+ut+`]`,Dt=`\\u200d`,Ot=`(?:`+yt+`|`+bt+`)`,kt=`(?:`+Et+`|`+bt+`)`,At=`(?:`+pt+`(?:d|ll|m|re|s|t|ve))?`,jt=`(?:`+pt+`(?:D|LL|M|RE|S|T|VE))?`,Mt=St+`?`,Nt=`[`+dt+`]?`,Pt=`(?:`+Dt+`(?:`+[Ct,wt,Tt].join(`|`)+`)`+Nt+Mt+`)*`,Ft=`\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])`,It=`\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])`,Lt=Nt+Mt+Pt,Rt=`(?:`+[vt,wt,Tt].join(`|`)+`)`+Lt,zt=`(?:`+[Ct+gt+`?`,gt,wt,Tt,mt].join(`|`)+`)`,Bt=RegExp(pt,`g`),Vt=RegExp(gt,`g`),Ht=RegExp(xt+`(?=`+xt+`)|`+zt+Lt,`g`),Ut=RegExp([Et+`?`+yt+`+`+At+`(?=`+[ht,Et,`$`].join(`|`)+`)`,kt+`+`+jt+`(?=`+[ht,Et+Ot,`$`].join(`|`)+`)`,Et+`?`+Ot+`+`+At,Et+`+`+jt,It,Ft,_t,Rt].join(`|`),`g`),Wt=RegExp(`[`+Dt+nt+rt+dt+`]`),Gt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Kt=`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`.split(`.`),qt=-1,Jt={};Jt[J]=Jt[_e]=Jt[ve]=Jt[ye]=Jt[Y]=Jt[be]=Jt[X]=Jt[xe]=Jt[Se]=!0,Jt[te]=Jt[ne]=Jt[he]=Jt[B]=Jt[ge]=Jt[V]=Jt[ae]=Jt[H]=Jt[U]=Jt[se]=Jt[le]=Jt[fe]=Jt[W]=Jt[G]=Jt[K]=!1;var Yt={};Yt[te]=Yt[ne]=Yt[he]=Yt[ge]=Yt[B]=Yt[V]=Yt[J]=Yt[_e]=Yt[ve]=Yt[ye]=Yt[Y]=Yt[U]=Yt[se]=Yt[le]=Yt[fe]=Yt[W]=Yt[G]=Yt[pe]=Yt[be]=Yt[X]=Yt[xe]=Yt[Se]=!0,Yt[ae]=Yt[H]=Yt[K]=!1;var Xt={À:`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`},Zt={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},Qt={"&amp;":`&`,"&lt;":`<`,"&gt;":`>`,"&quot;":`"`,"&#39;":`'`},$t={"\\":`\\`,"'":`'`,"\n":`n`,"\r":`r`,"\u2028":`u2028`,"\u2029":`u2029`},en=parseFloat,tn=parseInt,nn=typeof global==`object`&&global&&global.Object===Object&&global,rn=typeof self==`object`&&self&&self.Object===Object&&self,an=nn||rn||Function(`return this`)(),on=typeof e==`object`&&e&&!e.nodeType&&e,sn=on&&typeof t==`object`&&t&&!t.nodeType&&t,cn=sn&&sn.exports===on,ln=cn&&nn.process,un=function(){try{return sn&&sn.require&&sn.require(`util`).types||ln&&ln.binding&&ln.binding(`util`)}catch{}}(),dn=un&&un.isArrayBuffer,fn=un&&un.isDate,pn=un&&un.isMap,mn=un&&un.isRegExp,hn=un&&un.isSet,gn=un&&un.isTypedArray;function _n(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function vn(e,t,n,r){for(var i=-1,a=e==null?0:e.length;++i<a;){var o=e[i];t(r,o,n(o),e)}return r}function yn(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}function bn(e,t){for(var n=e==null?0:e.length;n--&&t(e[n],n,e)!==!1;);return e}function xn(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function Sn(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}function Cn(e,t){return!!(e!=null&&e.length)&&Fn(e,t,0)>-1}function wn(e,t,n){for(var r=-1,i=e==null?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function Tn(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function En(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function Dn(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}function On(e,t,n,r){var i=e==null?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function kn(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var An=zn(`length`);function jn(e){return e.split(``)}function Mn(e){return e.match(Ue)||[]}function Nn(e,t,n){var r;return n(e,function(e,n,i){if(t(e,n,i))return r=n,!1}),r}function Pn(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function Fn(e,t,n){return t===t?dr(e,t,n):Pn(e,Ln,n)}function In(e,t,n,r){for(var i=n-1,a=e.length;++i<a;)if(r(e[i],t))return i;return-1}function Ln(e){return e!==e}function Rn(e,t){var n=e==null?0:e.length;return n?Un(e,t)/n:F}function zn(e){return function(t){return t==null?n:t[e]}}function Bn(e){return function(t){return e==null?n:e[t]}}function Vn(e,t,n,r,i){return i(e,function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)}),n}function Hn(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}function Un(e,t){for(var r,i=-1,a=e.length;++i<a;){var o=t(e[i]);o!==n&&(r=r===n?o:r+o)}return r}function Wn(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Gn(e,t){return Tn(t,function(t){return[t,e[t]]})}function Kn(e){return e&&e.slice(0,hr(e)+1).replace(Re,``)}function qn(e){return function(t){return e(t)}}function Jn(e,t){return Tn(t,function(t){return e[t]})}function Yn(e,t){return e.has(t)}function Xn(e,t){for(var n=-1,r=e.length;++n<r&&Fn(t,e[n],0)>-1;);return n}function Zn(e,t){for(var n=e.length;n--&&Fn(t,e[n],0)>-1;);return n}function Qn(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}var $n=Bn(Xt),er=Bn(Zt);function tr(e){return`\\`+$t[e]}function nr(e,t){return e==null?n:e[t]}function rr(e){return Wt.test(e)}function ir(e){return Gt.test(e)}function ar(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}function or(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function sr(e,t){return function(n){return e(t(n))}}function cr(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var o=e[n];(o===t||o===u)&&(e[n]=u,a[i++]=n)}return a}function lr(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}function ur(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=[e,e]}),n}function dr(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}function fr(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}function pr(e){return rr(e)?_r(e):An(e)}function mr(e){return rr(e)?vr(e):jn(e)}function hr(e){for(var t=e.length;t--&&ze.test(e.charAt(t)););return t}var gr=Bn(Qt);function _r(e){for(var t=Ht.lastIndex=0;Ht.test(e);)++t;return t}function vr(e){return e.match(Ht)||[]}function yr(e){return e.match(Ut)||[]}var br=(function e(t){t=t==null?an:br.defaults(an.Object(),t,br.pick(an,Kt));var ze=t.Array,Ue=t.Date,nt=t.Error,rt=t.Function,it=t.Math,at=t.Object,ot=t.RegExp,st=t.String,ct=t.TypeError,lt=ze.prototype,ut=rt.prototype,dt=at.prototype,ft=t[`__core-js_shared__`],pt=ut.toString,mt=dt.hasOwnProperty,ht=0,gt=function(){var e=/[^.]+$/.exec(ft&&ft.keys&&ft.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}(),_t=dt.toString,vt=pt.call(at),yt=an._,bt=ot(`^`+pt.call(mt).replace(Ie,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`),xt=cn?t.Buffer:n,St=t.Symbol,Ct=t.Uint8Array,wt=xt?xt.allocUnsafe:n,Tt=sr(at.getPrototypeOf,at),Et=at.create,Dt=dt.propertyIsEnumerable,Ot=lt.splice,kt=St?St.isConcatSpreadable:n,At=St?St.iterator:n,jt=St?St.toStringTag:n,Mt=function(){try{var e=qo(at,`defineProperty`);return e({},``,{}),e}catch{}}(),Nt=t.clearTimeout!==an.clearTimeout&&t.clearTimeout,Pt=Ue&&Ue.now!==an.Date.now&&Ue.now,Ft=t.setTimeout!==an.setTimeout&&t.setTimeout,It=it.ceil,Lt=it.floor,Rt=at.getOwnPropertySymbols,zt=xt?xt.isBuffer:n,Ht=t.isFinite,Ut=lt.join,Wt=sr(at.keys,at),Gt=it.max,Xt=it.min,Zt=Ue.now,Qt=t.parseInt,$t=it.random,nn=lt.reverse,rn=qo(t,`DataView`),on=qo(t,`Map`),sn=qo(t,`Promise`),ln=qo(t,`Set`),un=qo(t,`WeakMap`),An=qo(at,`create`),jn=un&&new un,Bn={},dr=Ms(rn),_r=Ms(on),vr=Ms(sn),xr=Ms(ln),Sr=Ms(un),Cr=St?St.prototype:n,wr=Cr?Cr.valueOf:n,Tr=Cr?Cr.toString:n;function Z(e){if(Tu(e)&&!cu(e)&&!(e instanceof kr)){if(e instanceof Or)return e;if(mt.call(e,`__wrapped__`))return Ps(e)}return new Or(e)}var Er=function(){function e(){}return function(t){if(!wu(t))return{};if(Et)return Et(t);e.prototype=t;var r=new e;return e.prototype=n,r}}();function Dr(){}function Or(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=n}Z.templateSettings={escape:Ae,evaluate:je,interpolate:Me,variable:``,imports:{_:Z}},Z.prototype=Dr.prototype,Z.prototype.constructor=Z,Or.prototype=Er(Dr.prototype),Or.prototype.constructor=Or;function kr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=I,this.__views__=[]}function Ar(){var e=new kr(this.__wrapped__);return e.__actions__=io(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=io(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=io(this.__views__),e}function jr(){if(this.__filtered__){var e=new kr(this);e.__dir__=-1,e.__filtered__=!0}else e=this.clone(),e.__dir__*=-1;return e}function Mr(){var e=this.__wrapped__.value(),t=this.__dir__,n=cu(e),r=t<0,i=n?e.length:0,a=Qo(0,i,this.__views__),o=a.start,s=a.end,c=s-o,l=r?s:o-1,u=this.__iteratees__,d=u.length,f=0,p=Xt(c,this.__takeCount__);if(!n||!r&&i==c&&p==c)return za(e,this.__actions__);var m=[];outer:for(;c--&&f<p;){l+=t;for(var h=-1,g=e[l];++h<d;){var _=u[h],v=_.iteratee,y=_.type,b=v(g);if(y==j)g=b;else if(!b){if(y==A)continue outer;break outer}}m[f++]=g}return m}kr.prototype=Er(Dr.prototype),kr.prototype.constructor=kr;function Nr(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Pr(){this.__data__=An?An(null):{},this.size=0}function Fr(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}function Ir(e){var t=this.__data__;if(An){var r=t[e];return r===c?n:r}return mt.call(t,e)?t[e]:n}function Lr(e){var t=this.__data__;return An?t[e]!==n:mt.call(t,e)}function Rr(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=An&&t===n?c:t,this}Nr.prototype.clear=Pr,Nr.prototype.delete=Fr,Nr.prototype.get=Ir,Nr.prototype.has=Lr,Nr.prototype.set=Rr;function zr(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Br(){this.__data__=[],this.size=0}function Vr(e){var t=this.__data__,n=fi(t,e);return n<0?!1:(n==t.length-1?t.pop():Ot.call(t,n,1),--this.size,!0)}function Hr(e){var t=this.__data__,r=fi(t,e);return r<0?n:t[r][1]}function Ur(e){return fi(this.__data__,e)>-1}function Wr(e,t){var n=this.__data__,r=fi(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}zr.prototype.clear=Br,zr.prototype.delete=Vr,zr.prototype.get=Hr,zr.prototype.has=Ur,zr.prototype.set=Wr;function Gr(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Kr(){this.size=0,this.__data__={hash:new Nr,map:new(on||zr),string:new Nr}}function qr(e){var t=Go(this,e).delete(e);return this.size-=t?1:0,t}function Jr(e){return Go(this,e).get(e)}function Yr(e){return Go(this,e).has(e)}function Xr(e,t){var n=Go(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}Gr.prototype.clear=Kr,Gr.prototype.delete=qr,Gr.prototype.get=Jr,Gr.prototype.has=Yr,Gr.prototype.set=Xr;function Zr(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new Gr;++t<n;)this.add(e[t])}function Qr(e){return this.__data__.set(e,c),this}function $r(e){return this.__data__.has(e)}Zr.prototype.add=Zr.prototype.push=Qr,Zr.prototype.has=$r;function ei(e){this.size=(this.__data__=new zr(e)).size}function ti(){this.__data__=new zr,this.size=0}function ni(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function ri(e){return this.__data__.get(e)}function ii(e){return this.__data__.has(e)}function ai(e,t){var n=this.__data__;if(n instanceof zr){var r=n.__data__;if(!on||r.length<i-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Gr(r)}return n.set(e,t),this.size=n.size,this}ei.prototype.clear=ti,ei.prototype.delete=ni,ei.prototype.get=ri,ei.prototype.has=ii,ei.prototype.set=ai;function oi(e,t){var n=cu(e),r=!n&&su(e),i=!n&&!r&&pu(e),a=!n&&!r&&!i&&Bu(e),o=n||r||i||a,s=o?Wn(e.length,st):[],c=s.length;for(var l in e)(t||mt.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||os(l,c)))&&s.push(l);return s}function si(e){var t=e.length;return t?e[va(0,t-1)]:n}function ci(e,t){return ks(io(e),vi(t,0,e.length))}function li(e){return ks(io(e))}function ui(e,t,r){(r!==n&&!iu(e[t],r)||r===n&&!(t in e))&&gi(e,t,r)}function di(e,t,r){var i=e[t];(!(mt.call(e,t)&&iu(i,r))||r===n&&!(t in e))&&gi(e,t,r)}function fi(e,t){for(var n=e.length;n--;)if(iu(e[n][0],t))return n;return-1}function pi(e,t,n,r){return wi(e,function(e,i,a){t(r,e,n(e),a)}),r}function mi(e,t){return e&&ao(t,Sd(t),e)}function hi(e,t){return e&&ao(t,Cd(t),e)}function gi(e,t,n){t==`__proto__`&&Mt?Mt(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function _i(e,t){for(var r=-1,i=t.length,a=ze(i),o=e==null;++r<i;)a[r]=o?n:gd(e,t[r]);return a}function vi(e,t,r){return e===e&&(r!==n&&(e=e<=r?e:r),t!==n&&(e=e>=t?e:t)),e}function yi(e,t,r,i,a,o){var s,c=t&d,l=t&f,u=t&p;if(r&&(s=a?r(e,i,a,o):r(e)),s!==n)return s;if(!wu(e))return e;var m=cu(e);if(m){if(s=ts(e),!c)return io(e,s)}else{var h=Zo(e),g=h==H||h==oe;if(pu(e))return Ja(e,c);if(h==le||h==te||g&&!a){if(s=l||g?{}:ns(e),!c)return l?so(e,hi(s,e)):oo(e,mi(s,e))}else{if(!Yt[h])return a?e:{};s=rs(e,h,c)}}o||=new ei;var _=o.get(e);if(_)return _;o.set(e,s),Lu(e)?e.forEach(function(n){s.add(yi(n,t,r,n,e,o))}):Eu(e)&&e.forEach(function(n,i){s.set(i,yi(n,t,r,i,e,o))});var v=m?n:(u?l?Vo:Bo:l?Cd:Sd)(e);return yn(v||e,function(n,i){v&&(i=n,n=e[i]),di(s,i,yi(n,t,r,i,e,o))}),s}function bi(e){var t=Sd(e);return function(n){return xi(n,e,t)}}function xi(e,t,r){var i=r.length;if(e==null)return!i;for(e=at(e);i--;){var a=r[i],o=t[a],s=e[a];if(s===n&&!(a in e)||!o(s))return!1}return!0}function Si(e,t,r){if(typeof e!=`function`)throw new ct(o);return Ts(function(){e.apply(n,r)},t)}function Ci(e,t,n,r){var a=-1,o=Cn,s=!0,c=e.length,l=[],u=t.length;if(!c)return l;n&&(t=Tn(t,qn(n))),r?(o=wn,s=!1):t.length>=i&&(o=Yn,s=!1,t=new Zr(t));outer:for(;++a<c;){var d=e[a],f=n==null?d:n(d);if(d=r||d!==0?d:0,s&&f===f){for(var p=u;p--;)if(t[p]===f)continue outer;l.push(d)}else o(t,f,r)||l.push(d)}return l}var wi=uo(Ni),Ti=uo(Pi,!0);function Ei(e,t){var n=!0;return wi(e,function(e,r,i){return n=!!t(e,r,i),n}),n}function Di(e,t,r){for(var i=-1,a=e.length;++i<a;){var o=e[i],s=t(o);if(s!=null&&(c===n?s===s&&!zu(s):r(s,c)))var c=s,l=o}return l}function Oi(e,t,r,i){var a=e.length;for(r=Ju(r),r<0&&(r=-r>a?0:a+r),i=i===n||i>a?a:Ju(i),i<0&&(i+=a),i=r>i?0:Yu(i);r<i;)e[r++]=t;return e}function ki(e,t){var n=[];return wi(e,function(e,r,i){t(e,r,i)&&n.push(e)}),n}function Ai(e,t,n,r,i){var a=-1,o=e.length;for(n||=as,i||=[];++a<o;){var s=e[a];t>0&&n(s)?t>1?Ai(s,t-1,n,r,i):En(i,s):r||(i[i.length]=s)}return i}var ji=fo(),Mi=fo(!0);function Ni(e,t){return e&&ji(e,t,Sd)}function Pi(e,t){return e&&Mi(e,t,Sd)}function Fi(e,t){return Sn(t,function(t){return xu(e[t])})}function Ii(e,t){t=Wa(t,e);for(var r=0,i=t.length;e!=null&&r<i;)e=e[js(t[r++])];return r&&r==i?e:n}function Li(e,t,n){var r=t(e);return cu(e)?r:En(r,n(e))}function Ri(e){return e==null?e===n?me:ce:jt&&jt in at(e)?Jo(e):ys(e)}function zi(e,t){return e>t}function Bi(e,t){return e!=null&&mt.call(e,t)}function Vi(e,t){return e!=null&&t in at(e)}function Hi(e,t,n){return e>=Xt(t,n)&&e<Gt(t,n)}function Ui(e,t,r){for(var i=r?wn:Cn,a=e[0].length,o=e.length,s=o,c=ze(o),l=1/0,u=[];s--;){var d=e[s];s&&t&&(d=Tn(d,qn(t))),l=Xt(d.length,l),c[s]=!r&&(t||a>=120&&d.length>=120)?new Zr(s&&d):n}d=e[0];var f=-1,p=c[0];outer:for(;++f<a&&u.length<l;){var m=d[f],h=t?t(m):m;if(m=r||m!==0?m:0,!(p?Yn(p,h):i(u,h,r))){for(s=o;--s;){var g=c[s];if(!(g?Yn(g,h):i(e[s],h,r)))continue outer}p&&p.push(h),u.push(m)}}return u}function Wi(e,t,n,r){return Ni(e,function(e,i,a){t(r,n(e),i,a)}),r}function Gi(e,t,r){t=Wa(t,e),e=xs(e,t);var i=e==null?e:e[js(ac(t))];return i==null?n:_n(i,e,r)}function Ki(e){return Tu(e)&&Ri(e)==te}function qi(e){return Tu(e)&&Ri(e)==he}function Ji(e){return Tu(e)&&Ri(e)==V}function Yi(e,t,n,r,i){return e===t?!0:e==null||t==null||!Tu(e)&&!Tu(t)?e!==e&&t!==t:Xi(e,t,n,r,Yi,i)}function Xi(e,t,n,r,i,a){var o=cu(e),s=cu(t),c=o?ne:Zo(e),l=s?ne:Zo(t);c=c==te?le:c,l=l==te?le:l;var u=c==le,d=l==le,f=c==l;if(f&&pu(e)){if(!pu(t))return!1;o=!0,u=!1}if(f&&!u)return a||=new ei,o||Bu(e)?Io(e,t,n,r,i,a):Lo(e,t,c,n,r,i,a);if(!(n&m)){var p=u&&mt.call(e,`__wrapped__`),h=d&&mt.call(t,`__wrapped__`);if(p||h){var g=p?e.value():e,_=h?t.value():t;return a||=new ei,i(g,_,n,r,a)}}return f?(a||=new ei,Ro(e,t,n,r,i,a)):!1}function Zi(e){return Tu(e)&&Zo(e)==U}function Qi(e,t,r,i){var a=r.length,o=a,s=!i;if(e==null)return!o;for(e=at(e);a--;){var c=r[a];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<o;){c=r[a];var l=c[0],u=e[l],d=c[1];if(s&&c[2]){if(u===n&&!(l in e))return!1}else{var f=new ei;if(i)var p=i(u,d,l,e,t,f);if(!(p===n?Yi(d,u,m|h,i,f):p))return!1}}return!0}function $i(e){return!wu(e)||ds(e)?!1:(xu(e)?bt:Xe).test(Ms(e))}function ea(e){return Tu(e)&&Ri(e)==fe}function Q(e){return Tu(e)&&Zo(e)==W}function ta(e){return Tu(e)&&Cu(e.length)&&!!Jt[Ri(e)]}function na(e){return typeof e==`function`?e:e==null?jf:typeof e==`object`?cu(e)?ca(e[0],e[1]):sa(e):Wf(e)}function ra(e){if(!ps(e))return Wt(e);var t=[];for(var n in at(e))mt.call(e,n)&&n!=`constructor`&&t.push(n);return t}function ia(e){if(!wu(e))return vs(e);var t=ps(e),n=[];for(var r in e)r==`constructor`&&(t||!mt.call(e,r))||n.push(r);return n}function aa(e,t){return e<t}function oa(e,t){var n=-1,r=uu(e)?ze(e.length):[];return wi(e,function(e,i,a){r[++n]=t(e,i,a)}),r}function sa(e){var t=Ko(e);return t.length==1&&t[0][2]?hs(t[0][0],t[0][1]):function(n){return n===e||Qi(n,e,t)}}function ca(e,t){return cs(e)&&ms(t)?hs(js(e),t):function(r){var i=gd(r,e);return i===n&&i===t?vd(r,e):Yi(t,i,m|h)}}function la(e,t,r,i,a){e!==t&&ji(t,function(o,s){if(a||=new ei,wu(o))ua(e,t,s,r,la,i,a);else{var c=i?i(Cs(e,s),o,s+``,e,t,a):n;c===n&&(c=o),ui(e,s,c)}},Cd)}function ua(e,t,r,i,a,o,s){var c=Cs(e,r),l=Cs(t,r),u=s.get(l);if(u){ui(e,r,u);return}var d=o?o(c,l,r+``,e,t,s):n,f=d===n;if(f){var p=cu(l),m=!p&&pu(l),h=!p&&!m&&Bu(l);d=l,p||m||h?cu(c)?d=c:du(c)?d=io(c):m?(f=!1,d=Ja(l,!0)):h?(f=!1,d=$a(l,!0)):d=[]:Pu(l)||su(l)?(d=c,su(c)?d=Zu(c):(!wu(c)||xu(c))&&(d=ns(l))):f=!1}f&&(s.set(l,d),a(d,l,i,o,s),s.delete(l)),ui(e,r,d)}function da(e,t){var r=e.length;if(r)return t+=t<0?r:0,os(t,r)?e[t]:n}function fa(e,t,n){t=t.length?Tn(t,function(e){return cu(e)?function(t){return Ii(t,e.length===1?e[0]:e)}:e}):[jf];var r=-1;return t=Tn(t,qn($())),Hn(oa(e,function(e,n,i){return{criteria:Tn(t,function(t){return t(e)}),index:++r,value:e}}),function(e,t){return to(e,t,n)})}function pa(e,t){return ma(e,t,function(t,n){return vd(e,n)})}function ma(e,t,n){for(var r=-1,i=t.length,a={};++r<i;){var o=t[r],s=Ii(e,o);n(s,o)&&wa(a,Wa(o,e),s)}return a}function ha(e){return function(t){return Ii(t,e)}}function ga(e,t,n,r){var i=r?In:Fn,a=-1,o=t.length,s=e;for(e===t&&(t=io(t)),n&&(s=Tn(e,qn(n)));++a<o;)for(var c=0,l=t[a],u=n?n(l):l;(c=i(s,u,c,r))>-1;)s!==e&&Ot.call(s,c,1),Ot.call(e,c,1);return e}function _a(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==a){var a=i;os(i)?Ot.call(e,i,1):Ia(e,i)}}return e}function va(e,t){return e+Lt($t()*(t-e+1))}function ya(e,t,n,r){for(var i=-1,a=Gt(It((t-e)/(n||1)),0),o=ze(a);a--;)o[r?a:++i]=e,e+=n;return o}function ba(e,t){var n=``;if(!e||t<1||t>P)return n;do t%2&&(n+=e),t=Lt(t/2),t&&(e+=e);while(t);return n}function xa(e,t){return Es(bs(e,t,jf),e+``)}function Sa(e){return si(Vd(e))}function Ca(e,t){var n=Vd(e);return ks(n,vi(t,0,n.length))}function wa(e,t,r,i){if(!wu(e))return e;t=Wa(t,e);for(var a=-1,o=t.length,s=o-1,c=e;c!=null&&++a<o;){var l=js(t[a]),u=r;if(l===`__proto__`||l===`constructor`||l===`prototype`)return e;if(a!=s){var d=c[l];u=i?i(d,l,c):n,u===n&&(u=wu(d)?d:os(t[a+1])?[]:{})}di(c,l,u),c=c[l]}return e}var Ta=jn?function(e,t){return jn.set(e,t),e}:jf,Ea=Mt?function(e,t){return Mt(e,`toString`,{configurable:!0,enumerable:!1,value:Df(t),writable:!0})}:jf;function Da(e){return ks(Vd(e))}function Oa(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),n=n>i?i:n,n<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var a=ze(i);++r<i;)a[r]=e[r+t];return a}function ka(e,t){var n;return wi(e,function(e,r,i){return n=t(e,r,i),!n}),!!n}function Aa(e,t,n){var r=0,i=e==null?r:e.length;if(typeof t==`number`&&t===t&&i<=R){for(;r<i;){var a=r+i>>>1,o=e[a];o!==null&&!zu(o)&&(n?o<=t:o<t)?r=a+1:i=a}return i}return ja(e,t,jf,n)}function ja(e,t,r,i){var a=0,o=e==null?0:e.length;if(o===0)return 0;t=r(t);for(var s=t!==t,c=t===null,l=zu(t),u=t===n;a<o;){var d=Lt((a+o)/2),f=r(e[d]),p=f!==n,m=f===null,h=f===f,g=zu(f);if(s)var _=i||h;else _=u?h&&(i||p):c?h&&p&&(i||!m):l?h&&p&&!m&&(i||!g):m||g?!1:i?f<=t:f<t;_?a=d+1:o=d}return Xt(o,L)}function Ma(e,t){for(var n=-1,r=e.length,i=0,a=[];++n<r;){var o=e[n],s=t?t(o):o;if(!n||!iu(s,c)){var c=s;a[i++]=o===0?0:o}}return a}function Na(e){return typeof e==`number`?e:zu(e)?F:+e}function Pa(e){if(typeof e==`string`)return e;if(cu(e))return Tn(e,Pa)+``;if(zu(e))return Tr?Tr.call(e):``;var t=e+``;return t==`0`&&1/e==-N?`-0`:t}function Fa(e,t,n){var r=-1,a=Cn,o=e.length,s=!0,c=[],l=c;if(n)s=!1,a=wn;else if(o>=i){var u=t?null:Ao(e);if(u)return lr(u);s=!1,a=Yn,l=new Zr}else l=t?[]:c;outer:for(;++r<o;){var d=e[r],f=t?t(d):d;if(d=n||d!==0?d:0,s&&f===f){for(var p=l.length;p--;)if(l[p]===f)continue outer;t&&l.push(f),c.push(d)}else a(l,f,n)||(l!==c&&l.push(f),c.push(d))}return c}function Ia(e,t){return t=Wa(t,e),e=xs(e,t),e==null||delete e[js(ac(t))]}function La(e,t,n,r){return wa(e,t,n(Ii(e,t)),r)}function Ra(e,t,n,r){for(var i=e.length,a=r?i:-1;(r?a--:++a<i)&&t(e[a],a,e););return n?Oa(e,r?0:a,r?a+1:i):Oa(e,r?a+1:0,r?i:a)}function za(e,t){var n=e;return n instanceof kr&&(n=n.value()),Dn(t,function(e,t){return t.func.apply(t.thisArg,En([e],t.args))},n)}function Ba(e,t,n){var r=e.length;if(r<2)return r?Fa(e[0]):[];for(var i=-1,a=ze(r);++i<r;)for(var o=e[i],s=-1;++s<r;)s!=i&&(a[i]=Ci(a[i]||o,e[s],t,n));return Fa(Ai(a,1),t,n)}function Va(e,t,r){for(var i=-1,a=e.length,o=t.length,s={};++i<a;){var c=i<o?t[i]:n;r(s,e[i],c)}return s}function Ha(e){return du(e)?e:[]}function Ua(e){return typeof e==`function`?e:jf}function Wa(e,t){return cu(e)?e:cs(e,t)?[e]:As($u(e))}var Ga=xa;function Ka(e,t,r){var i=e.length;return r=r===n?i:r,!t&&r>=i?e:Oa(e,t,r)}var qa=Nt||function(e){return an.clearTimeout(e)};function Ja(e,t){if(t)return e.slice();var n=e.length,r=wt?wt(n):new e.constructor(n);return e.copy(r),r}function Ya(e){var t=new e.constructor(e.byteLength);return new Ct(t).set(new Ct(e)),t}function Xa(e,t){var n=t?Ya(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}function Za(e){var t=new e.constructor(e.source,qe.exec(e));return t.lastIndex=e.lastIndex,t}function Qa(e){return wr?at(wr.call(e)):{}}function $a(e,t){var n=t?Ya(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function eo(e,t){if(e!==t){var r=e!==n,i=e===null,a=e===e,o=zu(e),s=t!==n,c=t===null,l=t===t,u=zu(t);if(!c&&!u&&!o&&e>t||o&&s&&l&&!c&&!u||i&&s&&l||!r&&l||!a)return 1;if(!i&&!o&&!u&&e<t||u&&r&&a&&!i&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}function to(e,t,n){for(var r=-1,i=e.criteria,a=t.criteria,o=i.length,s=n.length;++r<o;){var c=eo(i[r],a[r]);if(c)return r>=s?c:c*(n[r]==`desc`?-1:1)}return e.index-t.index}function no(e,t,n,r){for(var i=-1,a=e.length,o=n.length,s=-1,c=t.length,l=Gt(a-o,0),u=ze(c+l),d=!r;++s<c;)u[s]=t[s];for(;++i<o;)(d||i<a)&&(u[n[i]]=e[i]);for(;l--;)u[s++]=e[i++];return u}function ro(e,t,n,r){for(var i=-1,a=e.length,o=-1,s=n.length,c=-1,l=t.length,u=Gt(a-s,0),d=ze(u+l),f=!r;++i<u;)d[i]=e[i];for(var p=i;++c<l;)d[p+c]=t[c];for(;++o<s;)(f||i<a)&&(d[p+n[o]]=e[i++]);return d}function io(e,t){var n=-1,r=e.length;for(t||=ze(r);++n<r;)t[n]=e[n];return t}function ao(e,t,r,i){var a=!r;r||={};for(var o=-1,s=t.length;++o<s;){var c=t[o],l=i?i(r[c],e[c],c,r,e):n;l===n&&(l=e[c]),a?gi(r,c,l):di(r,c,l)}return r}function oo(e,t){return ao(e,Yo(e),t)}function so(e,t){return ao(e,Xo(e),t)}function co(e,t){return function(n,r){var i=cu(n)?vn:pi,a=t?t():{};return i(n,e,$(r,2),a)}}function lo(e){return xa(function(t,r){var i=-1,a=r.length,o=a>1?r[a-1]:n,s=a>2?r[2]:n;for(o=e.length>3&&typeof o==`function`?(a--,o):n,s&&ss(r[0],r[1],s)&&(o=a<3?n:o,a=1),t=at(t);++i<a;){var c=r[i];c&&e(t,c,i,o)}return t})}function uo(e,t){return function(n,r){if(n==null)return n;if(!uu(n))return e(n,r);for(var i=n.length,a=t?i:-1,o=at(n);(t?a--:++a<i)&&r(o[a],a,o)!==!1;);return n}}function fo(e){return function(t,n,r){for(var i=-1,a=at(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}function po(e,t,n){var r=t&g,i=go(e);function a(){return(this&&this!==an&&this instanceof a?i:e).apply(r?n:this,arguments)}return a}function mo(e){return function(t){t=$u(t);var r=rr(t)?mr(t):n,i=r?r[0]:t.charAt(0),a=r?Ka(r,1).join(``):t.slice(1);return i[e]()+a}}function ho(e){return function(t){return Dn(Sf(Jd(t).replace(Bt,``)),e,``)}}function go(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Er(e.prototype),r=e.apply(n,t);return wu(r)?r:n}}function _o(e,t,r){var i=go(e);function a(){for(var o=arguments.length,s=ze(o),c=o,l=Wo(a);c--;)s[c]=arguments[c];var u=o<3&&s[0]!==l&&s[o-1]!==l?[]:cr(s,l);return o-=u.length,o<r?Oo(e,t,bo,a.placeholder,n,s,u,n,n,r-o):_n(this&&this!==an&&this instanceof a?i:e,this,s)}return a}function vo(e){return function(t,r,i){var a=at(t);if(!uu(t)){var o=$(r,3);t=Sd(t),r=function(e){return o(a[e],e,a)}}var s=e(t,r,i);return s>-1?a[o?t[s]:s]:n}}function yo(e){return zo(function(t){var r=t.length,i=r,a=Or.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if(typeof s!=`function`)throw new ct(o);if(a&&!c&&Uo(s)==`wrapper`)var c=new Or([],!0)}for(i=c?i:r;++i<r;){s=t[i];var l=Uo(s),u=l==`wrapper`?Ho(s):n;c=u&&us(u[0])&&u[1]==(C|y|x|w)&&!u[4].length&&u[9]==1?c[Uo(u[0])].apply(c,u[3]):s.length==1&&us(s)?c[l]():c.thru(s)}return function(){var e=arguments,n=e[0];if(c&&e.length==1&&cu(n))return c.plant(n).value();for(var i=0,a=r?t[i].apply(this,e):n;++i<r;)a=t[i].call(this,a);return a}})}function bo(e,t,r,i,a,o,s,c,l,u){var d=t&C,f=t&g,p=t&_,m=t&(y|b),h=t&T,v=p?n:go(e);function x(){for(var n=arguments.length,g=ze(n),_=n;_--;)g[_]=arguments[_];if(m)var y=Wo(x),b=Qn(g,y);if(i&&(g=no(g,i,a,m)),o&&(g=ro(g,o,s,m)),n-=b,m&&n<u){var S=cr(g,y);return Oo(e,t,bo,x.placeholder,r,g,S,c,l,u-n)}var C=f?r:this,w=p?C[e]:e;return n=g.length,c?g=Ss(g,c):h&&n>1&&g.reverse(),d&&l<n&&(g.length=l),this&&this!==an&&this instanceof x&&(w=v||go(w)),w.apply(C,g)}return x}function xo(e,t){return function(n,r){return Wi(n,e,t(r),{})}}function So(e,t){return function(r,i){var a;if(r===n&&i===n)return t;if(r!==n&&(a=r),i!==n){if(a===n)return i;typeof r==`string`||typeof i==`string`?(r=Pa(r),i=Pa(i)):(r=Na(r),i=Na(i)),a=e(r,i)}return a}}function Co(e){return zo(function(t){return t=Tn(t,qn($())),xa(function(n){var r=this;return e(t,function(e){return _n(e,r,n)})})})}function wo(e,t){t=t===n?` `:Pa(t);var r=t.length;if(r<2)return r?ba(t,e):t;var i=ba(t,It(e/pr(t)));return rr(t)?Ka(mr(i),0,e).join(``):i.slice(0,e)}function To(e,t,n,r){var i=t&g,a=go(e);function o(){for(var t=-1,s=arguments.length,c=-1,l=r.length,u=ze(l+s),d=this&&this!==an&&this instanceof o?a:e;++c<l;)u[c]=r[c];for(;s--;)u[c++]=arguments[++t];return _n(d,i?n:this,u)}return o}function Eo(e){return function(t,r,i){return i&&typeof i!=`number`&&ss(t,r,i)&&(r=i=n),t=qu(t),r===n?(r=t,t=0):r=qu(r),i=i===n?t<r?1:-1:qu(i),ya(t,r,i,e)}}function Do(e){return function(t,n){return typeof t==`string`&&typeof n==`string`||(t=Xu(t),n=Xu(n)),e(t,n)}}function Oo(e,t,r,i,a,o,s,c,l,u){var d=t&y,f=d?s:n,p=d?n:s,m=d?o:n,h=d?n:o;t|=d?x:S,t&=~(d?S:x),t&v||(t&=~(g|_));var b=[e,t,a,m,f,h,p,c,l,u],C=r.apply(n,b);return us(e)&&ws(C,b),C.placeholder=i,Ds(C,e,t)}function ko(e){var t=it[e];return function(e,n){if(e=Xu(e),n=n==null?0:Xt(Ju(n),292),n&&Ht(e)){var r=($u(e)+`e`).split(`e`);return r=($u(t(r[0]+`e`+(+r[1]+n)))+`e`).split(`e`),+(r[0]+`e`+(+r[1]-n))}return t(e)}}var Ao=ln&&1/lr(new ln([,-0]))[1]==N?function(e){return new ln(e)}:zf;function jo(e){return function(t){var n=Zo(t);return n==U?or(t):n==W?ur(t):Gn(t,e(t))}}function Mo(e,t,r,i,a,s,c,l){var u=t&_;if(!u&&typeof e!=`function`)throw new ct(o);var d=i?i.length:0;if(d||(t&=~(x|S),i=a=n),c=c===n?c:Gt(Ju(c),0),l=l===n?l:Ju(l),d-=a?a.length:0,t&S){var f=i,p=a;i=a=n}var m=u?n:Ho(e),h=[e,t,r,i,a,f,p,s,c,l];if(m&&_s(h,m),e=h[0],t=h[1],r=h[2],i=h[3],a=h[4],l=h[9]=h[9]===n?u?0:e.length:Gt(h[9]-d,0),!l&&t&(y|b)&&(t&=~(y|b)),!t||t==g)var v=po(e,t,r);else v=t==y||t==b?_o(e,t,l):(t==x||t==(g|x))&&!a.length?To(e,t,r,i):bo.apply(n,h);return Ds((m?Ta:ws)(v,h),e,t)}function No(e,t,r,i){return e===n||iu(e,dt[r])&&!mt.call(i,r)?t:e}function Po(e,t,r,i,a,o){return wu(e)&&wu(t)&&(o.set(t,e),la(e,t,n,Po,o),o.delete(t)),e}function Fo(e){return Pu(e)?n:e}function Io(e,t,r,i,a,o){var s=r&m,c=e.length,l=t.length;if(c!=l&&!(s&&l>c))return!1;var u=o.get(e),d=o.get(t);if(u&&d)return u==t&&d==e;var f=-1,p=!0,g=r&h?new Zr:n;for(o.set(e,t),o.set(t,e);++f<c;){var _=e[f],v=t[f];if(i)var y=s?i(v,_,f,t,e,o):i(_,v,f,e,t,o);if(y!==n){if(y)continue;p=!1;break}if(g){if(!kn(t,function(e,t){if(!Yn(g,t)&&(_===e||a(_,e,r,i,o)))return g.push(t)})){p=!1;break}}else if(!(_===v||a(_,v,r,i,o))){p=!1;break}}return o.delete(e),o.delete(t),p}function Lo(e,t,n,r,i,a,o){switch(n){case ge:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case he:return!(e.byteLength!=t.byteLength||!a(new Ct(e),new Ct(t)));case B:case V:case se:return iu(+e,+t);case ae:return e.name==t.name&&e.message==t.message;case fe:case G:return e==t+``;case U:var s=or;case W:var c=r&m;if(s||=lr,e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;r|=h,o.set(e,t);var u=Io(s(e),s(t),r,i,a,o);return o.delete(e),u;case pe:if(wr)return wr.call(e)==wr.call(t)}return!1}function Ro(e,t,r,i,a,o){var s=r&m,c=Bo(e),l=c.length;if(l!=Bo(t).length&&!s)return!1;for(var u=l;u--;){var d=c[u];if(!(s?d in t:mt.call(t,d)))return!1}var f=o.get(e),p=o.get(t);if(f&&p)return f==t&&p==e;var h=!0;o.set(e,t),o.set(t,e);for(var g=s;++u<l;){d=c[u];var _=e[d],v=t[d];if(i)var y=s?i(v,_,d,t,e,o):i(_,v,d,e,t,o);if(!(y===n?_===v||a(_,v,r,i,o):y)){h=!1;break}g||=d==`constructor`}if(h&&!g){var b=e.constructor,x=t.constructor;b!=x&&`constructor`in e&&`constructor`in t&&!(typeof b==`function`&&b instanceof b&&typeof x==`function`&&x instanceof x)&&(h=!1)}return o.delete(e),o.delete(t),h}function zo(e){return Es(bs(e,n,Js),e+``)}function Bo(e){return Li(e,Sd,Yo)}function Vo(e){return Li(e,Cd,Xo)}var Ho=jn?function(e){return jn.get(e)}:zf;function Uo(e){for(var t=e.name+``,n=Bn[t],r=mt.call(Bn,t)?n.length:0;r--;){var i=n[r],a=i.func;if(a==null||a==e)return i.name}return t}function Wo(e){return(mt.call(Z,`placeholder`)?Z:e).placeholder}function $(){var e=Z.iteratee||Mf;return e=e===Mf?na:e,arguments.length?e(arguments[0],arguments[1]):e}function Go(e,t){var n=e.__data__;return ls(t)?n[typeof t==`string`?`string`:`hash`]:n.map}function Ko(e){for(var t=Sd(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,ms(i)]}return t}function qo(e,t){var r=nr(e,t);return $i(r)?r:n}function Jo(e){var t=mt.call(e,jt),r=e[jt];try{e[jt]=n;var i=!0}catch{}var a=_t.call(e);return i&&(t?e[jt]=r:delete e[jt]),a}var Yo=Rt?function(e){return e==null?[]:(e=at(e),Sn(Rt(e),function(t){return Dt.call(e,t)}))}:Jf,Xo=Rt?function(e){for(var t=[];e;)En(t,Yo(e)),e=Tt(e);return t}:Jf,Zo=Ri;(rn&&Zo(new rn(new ArrayBuffer(1)))!=ge||on&&Zo(new on)!=U||sn&&Zo(sn.resolve())!=ue||ln&&Zo(new ln)!=W||un&&Zo(new un)!=K)&&(Zo=function(e){var t=Ri(e),r=t==le?e.constructor:n,i=r?Ms(r):``;if(i)switch(i){case dr:return ge;case _r:return U;case vr:return ue;case xr:return W;case Sr:return K}return t});function Qo(e,t,n){for(var r=-1,i=n.length;++r<i;){var a=n[r],o=a.size;switch(a.type){case`drop`:e+=o;break;case`dropRight`:t-=o;break;case`take`:t=Xt(t,e+o);break;case`takeRight`:e=Gt(e,t-o);break}}return{start:e,end:t}}function $o(e){var t=e.match(Ve);return t?t[1].split(He):[]}function es(e,t,n){t=Wa(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var o=js(t[r]);if(!(a=e!=null&&n(e,o)))break;e=e[o]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&Cu(i)&&os(o,i)&&(cu(e)||su(e)))}function ts(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]==`string`&&mt.call(e,`index`)&&(n.index=e.index,n.input=e.input),n}function ns(e){return typeof e.constructor==`function`&&!ps(e)?Er(Tt(e)):{}}function rs(e,t,n){var r=e.constructor;switch(t){case he:return Ya(e);case B:case V:return new r(+e);case ge:return Xa(e,n);case J:case _e:case ve:case ye:case Y:case be:case X:case xe:case Se:return $a(e,n);case U:return new r;case se:case G:return new r(e);case fe:return Za(e);case W:return new r;case pe:return Qa(e)}}function is(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?`& `:``)+t[r],t=t.join(n>2?`, `:` `),e.replace(Be,`{
866
+ /* [wrapped with `+t+`] */
867
+ `)}function as(e){return cu(e)||su(e)||!!(kt&&e&&e[kt])}function os(e,t){var n=typeof e;return t??=P,!!t&&(n==`number`||n!=`symbol`&&Qe.test(e))&&e>-1&&e%1==0&&e<t}function ss(e,t,n){if(!wu(n))return!1;var r=typeof t;return(r==`number`?uu(n)&&os(t,n.length):r==`string`&&t in n)?iu(n[t],e):!1}function cs(e,t){if(cu(e))return!1;var n=typeof e;return n==`number`||n==`symbol`||n==`boolean`||e==null||zu(e)?!0:Pe.test(e)||!Ne.test(e)||t!=null&&e in at(t)}function ls(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}function us(e){var t=Uo(e),n=Z[t];if(typeof n!=`function`||!(t in kr.prototype))return!1;if(e===n)return!0;var r=Ho(n);return!!r&&e===r[0]}function ds(e){return!!gt&&gt in e}var fs=ft?xu:Yf;function ps(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||dt)}function ms(e){return e===e&&!wu(e)}function hs(e,t){return function(r){return r==null?!1:r[e]===t&&(t!==n||e in at(r))}}function gs(e){var t=Bl(e,function(e){return n.size===l&&n.clear(),e}),n=t.cache;return t}function _s(e,t){var n=e[1],r=t[1],i=n|r,a=i<(g|_|C),o=r==C&&n==y||r==C&&n==w&&e[7].length<=t[8]||r==(C|w)&&t[7].length<=t[8]&&n==y;if(!(a||o))return e;r&g&&(e[2]=t[2],i|=n&g?0:v);var s=t[3];if(s){var c=e[3];e[3]=c?no(c,s,t[4]):s,e[4]=c?cr(e[3],u):t[4]}return s=t[5],s&&(c=e[5],e[5]=c?ro(c,s,t[6]):s,e[6]=c?cr(e[5],u):t[6]),s=t[7],s&&(e[7]=s),r&C&&(e[8]=e[8]==null?t[8]:Xt(e[8],t[8])),e[9]??=t[9],e[0]=t[0],e[1]=i,e}function vs(e){var t=[];if(e!=null)for(var n in at(e))t.push(n);return t}function ys(e){return _t.call(e)}function bs(e,t,r){return t=Gt(t===n?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=Gt(n.length-t,0),o=ze(a);++i<a;)o[i]=n[t+i];i=-1;for(var s=ze(t+1);++i<t;)s[i]=n[i];return s[t]=r(o),_n(e,this,s)}}function xs(e,t){return t.length<2?e:Ii(e,Oa(t,0,-1))}function Ss(e,t){for(var r=e.length,i=Xt(t.length,r),a=io(e);i--;){var o=t[i];e[i]=os(o,r)?a[o]:n}return e}function Cs(e,t){if(!(t===`constructor`&&typeof e[t]==`function`)&&t!=`__proto__`)return e[t]}var ws=Os(Ta),Ts=Ft||function(e,t){return an.setTimeout(e,t)},Es=Os(Ea);function Ds(e,t,n){var r=t+``;return Es(e,is(r,Ns($o(r),n)))}function Os(e){var t=0,r=0;return function(){var i=Zt(),a=k-(i-r);if(r=i,a>0){if(++t>=O)return arguments[0]}else t=0;return e.apply(n,arguments)}}function ks(e,t){var r=-1,i=e.length,a=i-1;for(t=t===n?i:t;++r<t;){var o=va(r,a),s=e[o];e[o]=e[r],e[r]=s}return e.length=t,e}var As=gs(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(``),e.replace(Fe,function(e,n,r,i){t.push(r?i.replace(Ge,`$1`):n||e)}),t});function js(e){if(typeof e==`string`||zu(e))return e;var t=e+``;return t==`0`&&1/e==-N?`-0`:t}function Ms(e){if(e!=null){try{return pt.call(e)}catch{}try{return e+``}catch{}}return``}function Ns(e,t){return yn(z,function(n){var r=`_.`+n[0];t&n[1]&&!Cn(e,r)&&e.push(r)}),e.sort()}function Ps(e){if(e instanceof kr)return e.clone();var t=new Or(e.__wrapped__,e.__chain__);return t.__actions__=io(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}function Fs(e,t,r){t=(r?ss(e,t,r):t===n)?1:Gt(Ju(t),0);var i=e==null?0:e.length;if(!i||t<1)return[];for(var a=0,o=0,s=ze(It(i/t));a<i;)s[o++]=Oa(e,a,a+=t);return s}function Is(e){for(var t=-1,n=e==null?0:e.length,r=0,i=[];++t<n;){var a=e[t];a&&(i[r++]=a)}return i}function Ls(){var e=arguments.length;if(!e)return[];for(var t=ze(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return En(cu(n)?io(n):[n],Ai(t,1))}var Rs=xa(function(e,t){return du(e)?Ci(e,Ai(t,1,du,!0)):[]}),zs=xa(function(e,t){var r=ac(t);return du(r)&&(r=n),du(e)?Ci(e,Ai(t,1,du,!0),$(r,2)):[]}),Bs=xa(function(e,t){var r=ac(t);return du(r)&&(r=n),du(e)?Ci(e,Ai(t,1,du,!0),n,r):[]});function Vs(e,t,r){var i=e==null?0:e.length;return i?(t=r||t===n?1:Ju(t),Oa(e,t<0?0:t,i)):[]}function Hs(e,t,r){var i=e==null?0:e.length;return i?(t=r||t===n?1:Ju(t),t=i-t,Oa(e,0,t<0?0:t)):[]}function Us(e,t){return e&&e.length?Ra(e,$(t,3),!0,!0):[]}function Ws(e,t){return e&&e.length?Ra(e,$(t,3),!0):[]}function Gs(e,t,n,r){var i=e==null?0:e.length;return i?(n&&typeof n!=`number`&&ss(e,t,n)&&(n=0,r=i),Oi(e,t,n,r)):[]}function Ks(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var i=n==null?0:Ju(n);return i<0&&(i=Gt(r+i,0)),Pn(e,$(t,3),i)}function qs(e,t,r){var i=e==null?0:e.length;if(!i)return-1;var a=i-1;return r!==n&&(a=Ju(r),a=r<0?Gt(i+a,0):Xt(a,i-1)),Pn(e,$(t,3),a,!0)}function Js(e){return e!=null&&e.length?Ai(e,1):[]}function Ys(e){return e!=null&&e.length?Ai(e,N):[]}function Xs(e,t){return e!=null&&e.length?(t=t===n?1:Ju(t),Ai(e,t)):[]}function Zs(e){for(var t=-1,n=e==null?0:e.length,r={};++t<n;){var i=e[t];r[i[0]]=i[1]}return r}function Qs(e){return e&&e.length?e[0]:n}function $s(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var i=n==null?0:Ju(n);return i<0&&(i=Gt(r+i,0)),Fn(e,t,i)}function ec(e){return e!=null&&e.length?Oa(e,0,-1):[]}var tc=xa(function(e){var t=Tn(e,Ha);return t.length&&t[0]===e[0]?Ui(t):[]}),nc=xa(function(e){var t=ac(e),r=Tn(e,Ha);return t===ac(r)?t=n:r.pop(),r.length&&r[0]===e[0]?Ui(r,$(t,2)):[]}),rc=xa(function(e){var t=ac(e),r=Tn(e,Ha);return t=typeof t==`function`?t:n,t&&r.pop(),r.length&&r[0]===e[0]?Ui(r,n,t):[]});function ic(e,t){return e==null?``:Ut.call(e,t)}function ac(e){var t=e==null?0:e.length;return t?e[t-1]:n}function oc(e,t,r){var i=e==null?0:e.length;if(!i)return-1;var a=i;return r!==n&&(a=Ju(r),a=a<0?Gt(i+a,0):Xt(a,i-1)),t===t?fr(e,t,a):Pn(e,Ln,a,!0)}function sc(e,t){return e&&e.length?da(e,Ju(t)):n}var cc=xa(lc);function lc(e,t){return e&&e.length&&t&&t.length?ga(e,t):e}function uc(e,t,n){return e&&e.length&&t&&t.length?ga(e,t,$(n,2)):e}function dc(e,t,r){return e&&e.length&&t&&t.length?ga(e,t,n,r):e}var fc=zo(function(e,t){var n=e==null?0:e.length,r=_i(e,t);return _a(e,Tn(t,function(e){return os(e,n)?+e:e}).sort(eo)),r});function pc(e,t){var n=[];if(!(e&&e.length))return n;var r=-1,i=[],a=e.length;for(t=$(t,3);++r<a;){var o=e[r];t(o,r,e)&&(n.push(o),i.push(r))}return _a(e,i),n}function mc(e){return e==null?e:nn.call(e)}function hc(e,t,r){var i=e==null?0:e.length;return i?(r&&typeof r!=`number`&&ss(e,t,r)?(t=0,r=i):(t=t==null?0:Ju(t),r=r===n?i:Ju(r)),Oa(e,t,r)):[]}function gc(e,t){return Aa(e,t)}function _c(e,t,n){return ja(e,t,$(n,2))}function vc(e,t){var n=e==null?0:e.length;if(n){var r=Aa(e,t);if(r<n&&iu(e[r],t))return r}return-1}function yc(e,t){return Aa(e,t,!0)}function bc(e,t,n){return ja(e,t,$(n,2),!0)}function xc(e,t){if(e!=null&&e.length){var n=Aa(e,t,!0)-1;if(iu(e[n],t))return n}return-1}function Sc(e){return e&&e.length?Ma(e):[]}function Cc(e,t){return e&&e.length?Ma(e,$(t,2)):[]}function wc(e){var t=e==null?0:e.length;return t?Oa(e,1,t):[]}function Tc(e,t,r){return e&&e.length?(t=r||t===n?1:Ju(t),Oa(e,0,t<0?0:t)):[]}function Ec(e,t,r){var i=e==null?0:e.length;return i?(t=r||t===n?1:Ju(t),t=i-t,Oa(e,t<0?0:t,i)):[]}function Dc(e,t){return e&&e.length?Ra(e,$(t,3),!1,!0):[]}function Oc(e,t){return e&&e.length?Ra(e,$(t,3)):[]}var kc=xa(function(e){return Fa(Ai(e,1,du,!0))}),Ac=xa(function(e){var t=ac(e);return du(t)&&(t=n),Fa(Ai(e,1,du,!0),$(t,2))}),jc=xa(function(e){var t=ac(e);return t=typeof t==`function`?t:n,Fa(Ai(e,1,du,!0),n,t)});function Mc(e){return e&&e.length?Fa(e):[]}function Nc(e,t){return e&&e.length?Fa(e,$(t,2)):[]}function Pc(e,t){return t=typeof t==`function`?t:n,e&&e.length?Fa(e,n,t):[]}function Fc(e){if(!(e&&e.length))return[];var t=0;return e=Sn(e,function(e){if(du(e))return t=Gt(e.length,t),!0}),Wn(t,function(t){return Tn(e,zn(t))})}function Ic(e,t){if(!(e&&e.length))return[];var r=Fc(e);return t==null?r:Tn(r,function(e){return _n(t,n,e)})}var Lc=xa(function(e,t){return du(e)?Ci(e,t):[]}),Rc=xa(function(e){return Ba(Sn(e,du))}),zc=xa(function(e){var t=ac(e);return du(t)&&(t=n),Ba(Sn(e,du),$(t,2))}),Bc=xa(function(e){var t=ac(e);return t=typeof t==`function`?t:n,Ba(Sn(e,du),n,t)}),Vc=xa(Fc);function Hc(e,t){return Va(e||[],t||[],di)}function Uc(e,t){return Va(e||[],t||[],wa)}var Wc=xa(function(e){var t=e.length,r=t>1?e[t-1]:n;return r=typeof r==`function`?(e.pop(),r):n,Ic(e,r)});function Gc(e){var t=Z(e);return t.__chain__=!0,t}function Kc(e,t){return t(e),e}function qc(e,t){return t(e)}var Jc=zo(function(e){var t=e.length,r=t?e[0]:0,i=this.__wrapped__,a=function(t){return _i(t,e)};return t>1||this.__actions__.length||!(i instanceof kr)||!os(r)?this.thru(a):(i=i.slice(r,+r+(t?1:0)),i.__actions__.push({func:qc,args:[a],thisArg:n}),new Or(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(n),e}))});function Yc(){return Gc(this)}function Xc(){return new Or(this.value(),this.__chain__)}function Zc(){this.__values__===n&&(this.__values__=Ku(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?n:this.__values__[this.__index__++]}}function Qc(){return this}function $c(e){for(var t,r=this;r instanceof Dr;){var i=Ps(r);i.__index__=0,i.__values__=n,t?a.__wrapped__=i:t=i;var a=i;r=r.__wrapped__}return a.__wrapped__=e,t}function el(){var e=this.__wrapped__;if(e instanceof kr){var t=e;return this.__actions__.length&&(t=new kr(this)),t=t.reverse(),t.__actions__.push({func:qc,args:[mc],thisArg:n}),new Or(t,this.__chain__)}return this.thru(mc)}function tl(){return za(this.__wrapped__,this.__actions__)}var nl=co(function(e,t,n){mt.call(e,n)?++e[n]:gi(e,n,1)});function rl(e,t,r){var i=cu(e)?xn:Ei;return r&&ss(e,t,r)&&(t=n),i(e,$(t,3))}function il(e,t){return(cu(e)?Sn:ki)(e,$(t,3))}var al=vo(Ks),ol=vo(qs);function sl(e,t){return Ai(gl(e,t),1)}function cl(e,t){return Ai(gl(e,t),N)}function ll(e,t,r){return r=r===n?1:Ju(r),Ai(gl(e,t),r)}function ul(e,t){return(cu(e)?yn:wi)(e,$(t,3))}function dl(e,t){return(cu(e)?bn:Ti)(e,$(t,3))}var fl=co(function(e,t,n){mt.call(e,n)?e[n].push(t):gi(e,n,[t])});function pl(e,t,n,r){e=uu(e)?e:Vd(e),n=n&&!r?Ju(n):0;var i=e.length;return n<0&&(n=Gt(i+n,0)),Ru(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&Fn(e,t,n)>-1}var ml=xa(function(e,t,n){var r=-1,i=typeof t==`function`,a=uu(e)?ze(e.length):[];return wi(e,function(e){a[++r]=i?_n(t,e,n):Gi(e,t,n)}),a}),hl=co(function(e,t,n){gi(e,n,t)});function gl(e,t){return(cu(e)?Tn:oa)(e,$(t,3))}function _l(e,t,r,i){return e==null?[]:(cu(t)||(t=t==null?[]:[t]),r=i?n:r,cu(r)||(r=r==null?[]:[r]),fa(e,t,r))}var vl=co(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]});function yl(e,t,n){var r=cu(e)?Dn:Vn,i=arguments.length<3;return r(e,$(t,4),n,i,wi)}function bl(e,t,n){var r=cu(e)?On:Vn,i=arguments.length<3;return r(e,$(t,4),n,i,Ti)}function xl(e,t){return(cu(e)?Sn:ki)(e,Vl($(t,3)))}function Sl(e){return(cu(e)?si:Sa)(e)}function Cl(e,t,r){return t=(r?ss(e,t,r):t===n)?1:Ju(t),(cu(e)?ci:Ca)(e,t)}function wl(e){return(cu(e)?li:Da)(e)}function Tl(e){if(e==null)return 0;if(uu(e))return Ru(e)?pr(e):e.length;var t=Zo(e);return t==U||t==W?e.size:ra(e).length}function El(e,t,r){var i=cu(e)?kn:ka;return r&&ss(e,t,r)&&(t=n),i(e,$(t,3))}var Dl=xa(function(e,t){if(e==null)return[];var n=t.length;return n>1&&ss(e,t[0],t[1])?t=[]:n>2&&ss(t[0],t[1],t[2])&&(t=[t[0]]),fa(e,Ai(t,1),[])}),Ol=Pt||function(){return an.Date.now()};function kl(e,t){if(typeof t!=`function`)throw new ct(o);return e=Ju(e),function(){if(--e<1)return t.apply(this,arguments)}}function Al(e,t,r){return t=r?n:t,t=e&&t==null?e.length:t,Mo(e,C,n,n,n,n,t)}function jl(e,t){var r;if(typeof t!=`function`)throw new ct(o);return e=Ju(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=n),r}}var Ml=xa(function(e,t,n){var r=g;if(n.length){var i=cr(n,Wo(Ml));r|=x}return Mo(e,r,t,n,i)}),Nl=xa(function(e,t,n){var r=g|_;if(n.length){var i=cr(n,Wo(Nl));r|=x}return Mo(t,r,e,n,i)});function Pl(e,t,r){t=r?n:t;var i=Mo(e,y,n,n,n,n,n,t);return i.placeholder=Pl.placeholder,i}function Fl(e,t,r){t=r?n:t;var i=Mo(e,b,n,n,n,n,n,t);return i.placeholder=Fl.placeholder,i}function Il(e,t,r){var i,a,s,c,l,u,d=0,f=!1,p=!1,m=!0;if(typeof e!=`function`)throw new ct(o);t=Xu(t)||0,wu(r)&&(f=!!r.leading,p=`maxWait`in r,s=p?Gt(Xu(r.maxWait)||0,t):s,m=`trailing`in r?!!r.trailing:m);function h(t){var r=i,o=a;return i=a=n,d=t,c=e.apply(o,r),c}function g(e){return d=e,l=Ts(y,t),f?h(e):c}function _(e){var n=e-u,r=e-d,i=t-n;return p?Xt(i,s-r):i}function v(e){var r=e-u,i=e-d;return u===n||r>=t||r<0||p&&i>=s}function y(){var e=Ol();if(v(e))return b(e);l=Ts(y,_(e))}function b(e){return l=n,m&&i?h(e):(i=a=n,c)}function x(){l!==n&&qa(l),d=0,i=u=a=l=n}function S(){return l===n?c:b(Ol())}function C(){var e=Ol(),r=v(e);if(i=arguments,a=this,u=e,r){if(l===n)return g(u);if(p)return qa(l),l=Ts(y,t),h(u)}return l===n&&(l=Ts(y,t)),c}return C.cancel=x,C.flush=S,C}var Ll=xa(function(e,t){return Si(e,1,t)}),Rl=xa(function(e,t,n){return Si(e,Xu(t)||0,n)});function zl(e){return Mo(e,T)}function Bl(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw new ct(o);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(Bl.Cache||Gr),n}Bl.Cache=Gr;function Vl(e){if(typeof e!=`function`)throw new ct(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}function Hl(e){return jl(2,e)}var Ul=Ga(function(e,t){t=t.length==1&&cu(t[0])?Tn(t[0],qn($())):Tn(Ai(t,1),qn($()));var n=t.length;return xa(function(r){for(var i=-1,a=Xt(r.length,n);++i<a;)r[i]=t[i].call(this,r[i]);return _n(e,this,r)})}),Wl=xa(function(e,t){return Mo(e,x,n,t,cr(t,Wo(Wl)))}),Gl=xa(function(e,t){return Mo(e,S,n,t,cr(t,Wo(Gl)))}),Kl=zo(function(e,t){return Mo(e,w,n,n,n,t)});function ql(e,t){if(typeof e!=`function`)throw new ct(o);return t=t===n?t:Ju(t),xa(e,t)}function Jl(e,t){if(typeof e!=`function`)throw new ct(o);return t=t==null?0:Gt(Ju(t),0),xa(function(n){var r=n[t],i=Ka(n,0,t);return r&&En(i,r),_n(e,this,i)})}function Yl(e,t,n){var r=!0,i=!0;if(typeof e!=`function`)throw new ct(o);return wu(n)&&(r=`leading`in n?!!n.leading:r,i=`trailing`in n?!!n.trailing:i),Il(e,t,{leading:r,maxWait:t,trailing:i})}function Xl(e){return Al(e,1)}function Zl(e,t){return Wl(Ua(t),e)}function Ql(){if(!arguments.length)return[];var e=arguments[0];return cu(e)?e:[e]}function $l(e){return yi(e,p)}function eu(e,t){return t=typeof t==`function`?t:n,yi(e,p,t)}function tu(e){return yi(e,d|p)}function nu(e,t){return t=typeof t==`function`?t:n,yi(e,d|p,t)}function ru(e,t){return t==null||xi(e,t,Sd(t))}function iu(e,t){return e===t||e!==e&&t!==t}var au=Do(zi),ou=Do(function(e,t){return e>=t}),su=Ki(function(){return arguments}())?Ki:function(e){return Tu(e)&&mt.call(e,`callee`)&&!Dt.call(e,`callee`)},cu=ze.isArray,lu=dn?qn(dn):qi;function uu(e){return e!=null&&Cu(e.length)&&!xu(e)}function du(e){return Tu(e)&&uu(e)}function fu(e){return e===!0||e===!1||Tu(e)&&Ri(e)==B}var pu=zt||Yf,mu=fn?qn(fn):Ji;function hu(e){return Tu(e)&&e.nodeType===1&&!Pu(e)}function gu(e){if(e==null)return!0;if(uu(e)&&(cu(e)||typeof e==`string`||typeof e.splice==`function`||pu(e)||Bu(e)||su(e)))return!e.length;var t=Zo(e);if(t==U||t==W)return!e.size;if(ps(e))return!ra(e).length;for(var n in e)if(mt.call(e,n))return!1;return!0}function _u(e,t){return Yi(e,t)}function vu(e,t,r){r=typeof r==`function`?r:n;var i=r?r(e,t):n;return i===n?Yi(e,t,n,r):!!i}function yu(e){if(!Tu(e))return!1;var t=Ri(e);return t==ae||t==ie||typeof e.message==`string`&&typeof e.name==`string`&&!Pu(e)}function bu(e){return typeof e==`number`&&Ht(e)}function xu(e){if(!wu(e))return!1;var t=Ri(e);return t==H||t==oe||t==re||t==de}function Su(e){return typeof e==`number`&&e==Ju(e)}function Cu(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=P}function wu(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}function Tu(e){return typeof e==`object`&&!!e}var Eu=pn?qn(pn):Zi;function Du(e,t){return e===t||Qi(e,t,Ko(t))}function Ou(e,t,r){return r=typeof r==`function`?r:n,Qi(e,t,Ko(t),r)}function ku(e){return Nu(e)&&e!=+e}function Au(e){if(fs(e))throw new nt(a);return $i(e)}function ju(e){return e===null}function Mu(e){return e==null}function Nu(e){return typeof e==`number`||Tu(e)&&Ri(e)==se}function Pu(e){if(!Tu(e)||Ri(e)!=le)return!1;var t=Tt(e);if(t===null)return!0;var n=mt.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n instanceof n&&pt.call(n)==vt}var Fu=mn?qn(mn):ea;function Iu(e){return Su(e)&&e>=-P&&e<=P}var Lu=hn?qn(hn):Q;function Ru(e){return typeof e==`string`||!cu(e)&&Tu(e)&&Ri(e)==G}function zu(e){return typeof e==`symbol`||Tu(e)&&Ri(e)==pe}var Bu=gn?qn(gn):ta;function Vu(e){return e===n}function Hu(e){return Tu(e)&&Zo(e)==K}function Uu(e){return Tu(e)&&Ri(e)==q}var Wu=Do(aa),Gu=Do(function(e,t){return e<=t});function Ku(e){if(!e)return[];if(uu(e))return Ru(e)?mr(e):io(e);if(At&&e[At])return ar(e[At]());var t=Zo(e);return(t==U?or:t==W?lr:Vd)(e)}function qu(e){return e?(e=Xu(e),e===N||e===-N?(e<0?-1:1)*ee:e===e?e:0):e===0?e:0}function Ju(e){var t=qu(e),n=t%1;return t===t?n?t-n:t:0}function Yu(e){return e?vi(Ju(e),0,I):0}function Xu(e){if(typeof e==`number`)return e;if(zu(e))return F;if(wu(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=wu(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=Kn(e);var n=Ye.test(e);return n||Ze.test(e)?tn(e.slice(2),n?2:8):Je.test(e)?F:+e}function Zu(e){return ao(e,Cd(e))}function Qu(e){return e?vi(Ju(e),-P,P):e===0?e:0}function $u(e){return e==null?``:Pa(e)}var ed=lo(function(e,t){if(ps(t)||uu(t)){ao(t,Sd(t),e);return}for(var n in t)mt.call(t,n)&&di(e,n,t[n])}),td=lo(function(e,t){ao(t,Cd(t),e)}),nd=lo(function(e,t,n,r){ao(t,Cd(t),e,r)}),rd=lo(function(e,t,n,r){ao(t,Sd(t),e,r)}),id=zo(_i);function ad(e,t){var n=Er(e);return t==null?n:mi(n,t)}var od=xa(function(e,t){e=at(e);var r=-1,i=t.length,a=i>2?t[2]:n;for(a&&ss(t[0],t[1],a)&&(i=1);++r<i;)for(var o=t[r],s=Cd(o),c=-1,l=s.length;++c<l;){var u=s[c],d=e[u];(d===n||iu(d,dt[u])&&!mt.call(e,u))&&(e[u]=o[u])}return e}),sd=xa(function(e){return e.push(n,Po),_n(Dd,n,e)});function cd(e,t){return Nn(e,$(t,3),Ni)}function ld(e,t){return Nn(e,$(t,3),Pi)}function ud(e,t){return e==null?e:ji(e,$(t,3),Cd)}function dd(e,t){return e==null?e:Mi(e,$(t,3),Cd)}function fd(e,t){return e&&Ni(e,$(t,3))}function pd(e,t){return e&&Pi(e,$(t,3))}function md(e){return e==null?[]:Fi(e,Sd(e))}function hd(e){return e==null?[]:Fi(e,Cd(e))}function gd(e,t,r){var i=e==null?n:Ii(e,t);return i===n?r:i}function _d(e,t){return e!=null&&es(e,t,Bi)}function vd(e,t){return e!=null&&es(e,t,Vi)}var yd=xo(function(e,t,n){t!=null&&typeof t.toString!=`function`&&(t=_t.call(t)),e[t]=n},Df(jf)),bd=xo(function(e,t,n){t!=null&&typeof t.toString!=`function`&&(t=_t.call(t)),mt.call(e,t)?e[t].push(n):e[t]=[n]},$),xd=xa(Gi);function Sd(e){return uu(e)?oi(e):ra(e)}function Cd(e){return uu(e)?oi(e,!0):ia(e)}function wd(e,t){var n={};return t=$(t,3),Ni(e,function(e,r,i){gi(n,t(e,r,i),e)}),n}function Td(e,t){var n={};return t=$(t,3),Ni(e,function(e,r,i){gi(n,r,t(e,r,i))}),n}var Ed=lo(function(e,t,n){la(e,t,n)}),Dd=lo(function(e,t,n,r){la(e,t,n,r)}),Od=zo(function(e,t){var n={};if(e==null)return n;var r=!1;t=Tn(t,function(t){return t=Wa(t,e),r||=t.length>1,t}),ao(e,Vo(e),n),r&&(n=yi(n,d|f|p,Fo));for(var i=t.length;i--;)Ia(n,t[i]);return n});function kd(e,t){return jd(e,Vl($(t)))}var Ad=zo(function(e,t){return e==null?{}:pa(e,t)});function jd(e,t){if(e==null)return{};var n=Tn(Vo(e),function(e){return[e]});return t=$(t),ma(e,n,function(e,n){return t(e,n[0])})}function Md(e,t,r){t=Wa(t,e);var i=-1,a=t.length;for(a||(a=1,e=n);++i<a;){var o=e==null?n:e[js(t[i])];o===n&&(i=a,o=r),e=xu(o)?o.call(e):o}return e}function Nd(e,t,n){return e==null?e:wa(e,t,n)}function Pd(e,t,r,i){return i=typeof i==`function`?i:n,e==null?e:wa(e,t,r,i)}var Fd=jo(Sd),Id=jo(Cd);function Ld(e,t,n){var r=cu(e),i=r||pu(e)||Bu(e);if(t=$(t,4),n==null){var a=e&&e.constructor;n=i?r?new a:[]:wu(e)&&xu(a)?Er(Tt(e)):{}}return(i?yn:Ni)(e,function(e,r,i){return t(n,e,r,i)}),n}function Rd(e,t){return e==null?!0:Ia(e,t)}function zd(e,t,n){return e==null?e:La(e,t,Ua(n))}function Bd(e,t,r,i){return i=typeof i==`function`?i:n,e==null?e:La(e,t,Ua(r),i)}function Vd(e){return e==null?[]:Jn(e,Sd(e))}function Hd(e){return e==null?[]:Jn(e,Cd(e))}function Ud(e,t,r){return r===n&&(r=t,t=n),r!==n&&(r=Xu(r),r=r===r?r:0),t!==n&&(t=Xu(t),t=t===t?t:0),vi(Xu(e),t,r)}function Wd(e,t,r){return t=qu(t),r===n?(r=t,t=0):r=qu(r),e=Xu(e),Hi(e,t,r)}function Gd(e,t,r){if(r&&typeof r!=`boolean`&&ss(e,t,r)&&(t=r=n),r===n&&(typeof t==`boolean`?(r=t,t=n):typeof e==`boolean`&&(r=e,e=n)),e===n&&t===n?(e=0,t=1):(e=qu(e),t===n?(t=e,e=0):t=qu(t)),e>t){var i=e;e=t,t=i}if(r||e%1||t%1){var a=$t();return Xt(e+a*(t-e+en(`1e-`+((a+``).length-1))),t)}return va(e,t)}var Kd=ho(function(e,t,n){return t=t.toLowerCase(),e+(n?qd(t):t)});function qd(e){return xf($u(e).toLowerCase())}function Jd(e){return e=$u(e),e&&e.replace($e,$n).replace(Vt,``)}function Yd(e,t,r){e=$u(e),t=Pa(t);var i=e.length;r=r===n?i:vi(Ju(r),0,i);var a=r;return r-=t.length,r>=0&&e.slice(r,a)==t}function Xd(e){return e=$u(e),e&&ke.test(e)?e.replace(De,er):e}function Zd(e){return e=$u(e),e&&Le.test(e)?e.replace(Ie,`\\$&`):e}var Qd=ho(function(e,t,n){return e+(n?`-`:``)+t.toLowerCase()}),$d=ho(function(e,t,n){return e+(n?` `:``)+t.toLowerCase()}),ef=mo(`toLowerCase`);function tf(e,t,n){e=$u(e),t=Ju(t);var r=t?pr(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return wo(Lt(i),n)+e+wo(It(i),n)}function nf(e,t,n){e=$u(e),t=Ju(t);var r=t?pr(e):0;return t&&r<t?e+wo(t-r,n):e}function rf(e,t,n){e=$u(e),t=Ju(t);var r=t?pr(e):0;return t&&r<t?wo(t-r,n)+e:e}function af(e,t,n){return n||t==null?t=0:t&&=+t,Qt($u(e).replace(Re,``),t||0)}function of(e,t,r){return t=(r?ss(e,t,r):t===n)?1:Ju(t),ba($u(e),t)}function sf(){var e=arguments,t=$u(e[0]);return e.length<3?t:t.replace(e[1],e[2])}var cf=ho(function(e,t,n){return e+(n?`_`:``)+t.toLowerCase()});function lf(e,t,r){return r&&typeof r!=`number`&&ss(e,t,r)&&(t=r=n),r=r===n?I:r>>>0,r?(e=$u(e),e&&(typeof t==`string`||t!=null&&!Fu(t))&&(t=Pa(t),!t&&rr(e))?Ka(mr(e),0,r):e.split(t,r)):[]}var uf=ho(function(e,t,n){return e+(n?` `:``)+xf(t)});function df(e,t,n){return e=$u(e),n=n==null?0:vi(Ju(n),0,e.length),t=Pa(t),e.slice(n,n+t.length)==t}function ff(e,t,r){var i=Z.templateSettings;r&&ss(e,t,r)&&(t=n),e=$u(e),t=nd({},t,i,No);var a=nd({},t.imports,i.imports,No),o=Sd(a),c=Jn(a,o),l,u,d=0,f=t.interpolate||et,p=`__p += '`,m=ot((t.escape||et).source+`|`+f.source+`|`+(f===Me?Ke:et).source+`|`+(t.evaluate||et).source+`|$`,`g`),h=`//# sourceURL=`+(mt.call(t,`sourceURL`)?(t.sourceURL+``).replace(/\s/g,` `):`lodash.templateSources[`+ ++qt+`]`)+`
868
+ `;e.replace(m,function(t,n,r,i,a,o){return r||=i,p+=e.slice(d,o).replace(tt,tr),n&&(l=!0,p+=`' +
869
+ __e(`+n+`) +
870
+ '`),a&&(u=!0,p+=`';
871
+ `+a+`;
872
+ __p += '`),r&&(p+=`' +
873
+ ((__t = (`+r+`)) == null ? '' : __t) +
874
+ '`),d=o+t.length,t}),p+=`';
875
+ `;var g=mt.call(t,`variable`)&&t.variable;if(!g)p=`with (obj) {
876
+ `+p+`
877
+ }
878
+ `;else if(We.test(g))throw new nt(s);p=(u?p.replace(Ce,``):p).replace(we,`$1`).replace(Te,`$1;`),p=`function(`+(g||`obj`)+`) {
879
+ `+(g?``:`obj || (obj = {});
880
+ `)+`var __t, __p = ''`+(l?`, __e = _.escape`:``)+(u?`, __j = Array.prototype.join;
881
+ function print() { __p += __j.call(arguments, '') }
882
+ `:`;
883
+ `)+p+`return __p
884
+ }`;var _=Cf(function(){return rt(o,h+`return `+p).apply(n,c)});if(_.source=p,yu(_))throw _;return _}function pf(e){return $u(e).toLowerCase()}function mf(e){return $u(e).toUpperCase()}function hf(e,t,r){if(e=$u(e),e&&(r||t===n))return Kn(e);if(!e||!(t=Pa(t)))return e;var i=mr(e),a=mr(t);return Ka(i,Xn(i,a),Zn(i,a)+1).join(``)}function gf(e,t,r){if(e=$u(e),e&&(r||t===n))return e.slice(0,hr(e)+1);if(!e||!(t=Pa(t)))return e;var i=mr(e);return Ka(i,0,Zn(i,mr(t))+1).join(``)}function _f(e,t,r){if(e=$u(e),e&&(r||t===n))return e.replace(Re,``);if(!e||!(t=Pa(t)))return e;var i=mr(e);return Ka(i,Xn(i,mr(t))).join(``)}function vf(e,t){var r=E,i=D;if(wu(t)){var a=`separator`in t?t.separator:a;r=`length`in t?Ju(t.length):r,i=`omission`in t?Pa(t.omission):i}e=$u(e);var o=e.length;if(rr(e)){var s=mr(e);o=s.length}if(r>=o)return e;var c=r-pr(i);if(c<1)return i;var l=s?Ka(s,0,c).join(``):e.slice(0,c);if(a===n)return l+i;if(s&&(c+=l.length-c),Fu(a)){if(e.slice(c).search(a)){var u,d=l;for(a.global||(a=ot(a.source,$u(qe.exec(a))+`g`)),a.lastIndex=0;u=a.exec(d);)var f=u.index;l=l.slice(0,f===n?c:f)}}else if(e.indexOf(Pa(a),c)!=c){var p=l.lastIndexOf(a);p>-1&&(l=l.slice(0,p))}return l+i}function yf(e){return e=$u(e),e&&Oe.test(e)?e.replace(Ee,gr):e}var bf=ho(function(e,t,n){return e+(n?` `:``)+t.toUpperCase()}),xf=mo(`toUpperCase`);function Sf(e,t,r){return e=$u(e),t=r?n:t,t===n?ir(e)?yr(e):Mn(e):e.match(t)||[]}var Cf=xa(function(e,t){try{return _n(e,n,t)}catch(e){return yu(e)?e:new nt(e)}}),wf=zo(function(e,t){return yn(t,function(t){t=js(t),gi(e,t,Ml(e[t],e))}),e});function Tf(e){var t=e==null?0:e.length,n=$();return e=t?Tn(e,function(e){if(typeof e[1]!=`function`)throw new ct(o);return[n(e[0]),e[1]]}):[],xa(function(n){for(var r=-1;++r<t;){var i=e[r];if(_n(i[0],this,n))return _n(i[1],this,n)}})}function Ef(e){return bi(yi(e,d))}function Df(e){return function(){return e}}function Of(e,t){return e==null||e!==e?t:e}var kf=yo(),Af=yo(!0);function jf(e){return e}function Mf(e){return na(typeof e==`function`?e:yi(e,d))}function Nf(e){return sa(yi(e,d))}function Pf(e,t){return ca(e,yi(t,d))}var Ff=xa(function(e,t){return function(n){return Gi(n,e,t)}}),If=xa(function(e,t){return function(n){return Gi(e,n,t)}});function Lf(e,t,n){var r=Sd(t),i=Fi(t,r);n==null&&!(wu(t)&&(i.length||!r.length))&&(n=t,t=e,e=this,i=Fi(t,Sd(t)));var a=!(wu(n)&&`chain`in n)||!!n.chain,o=xu(e);return yn(i,function(n){var r=t[n];e[n]=r,o&&(e.prototype[n]=function(){var t=this.__chain__;if(a||t){var n=e(this.__wrapped__);return(n.__actions__=io(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,En([this.value()],arguments))})}),e}function Rf(){return an._===this&&(an._=yt),this}function zf(){}function Bf(e){return e=Ju(e),xa(function(t){return da(t,e)})}var Vf=Co(Tn),Hf=Co(xn),Uf=Co(kn);function Wf(e){return cs(e)?zn(js(e)):ha(e)}function Gf(e){return function(t){return e==null?n:Ii(e,t)}}var Kf=Eo(),qf=Eo(!0);function Jf(){return[]}function Yf(){return!1}function Xf(){return{}}function Zf(){return``}function Qf(){return!0}function $f(e,t){if(e=Ju(e),e<1||e>P)return[];var n=I,r=Xt(e,I);t=$(t),e-=I;for(var i=Wn(r,t);++n<e;)t(n);return i}function ep(e){return cu(e)?Tn(e,js):zu(e)?[e]:io(As($u(e)))}function tp(e){var t=++ht;return $u(e)+t}var np=So(function(e,t){return e+t},0),rp=ko(`ceil`),ip=So(function(e,t){return e/t},1),ap=ko(`floor`);function op(e){return e&&e.length?Di(e,jf,zi):n}function sp(e,t){return e&&e.length?Di(e,$(t,2),zi):n}function cp(e){return Rn(e,jf)}function lp(e,t){return Rn(e,$(t,2))}function up(e){return e&&e.length?Di(e,jf,aa):n}function dp(e,t){return e&&e.length?Di(e,$(t,2),aa):n}var fp=So(function(e,t){return e*t},1),pp=ko(`round`),mp=So(function(e,t){return e-t},0);function hp(e){return e&&e.length?Un(e,jf):0}function gp(e,t){return e&&e.length?Un(e,$(t,2)):0}return Z.after=kl,Z.ary=Al,Z.assign=ed,Z.assignIn=td,Z.assignInWith=nd,Z.assignWith=rd,Z.at=id,Z.before=jl,Z.bind=Ml,Z.bindAll=wf,Z.bindKey=Nl,Z.castArray=Ql,Z.chain=Gc,Z.chunk=Fs,Z.compact=Is,Z.concat=Ls,Z.cond=Tf,Z.conforms=Ef,Z.constant=Df,Z.countBy=nl,Z.create=ad,Z.curry=Pl,Z.curryRight=Fl,Z.debounce=Il,Z.defaults=od,Z.defaultsDeep=sd,Z.defer=Ll,Z.delay=Rl,Z.difference=Rs,Z.differenceBy=zs,Z.differenceWith=Bs,Z.drop=Vs,Z.dropRight=Hs,Z.dropRightWhile=Us,Z.dropWhile=Ws,Z.fill=Gs,Z.filter=il,Z.flatMap=sl,Z.flatMapDeep=cl,Z.flatMapDepth=ll,Z.flatten=Js,Z.flattenDeep=Ys,Z.flattenDepth=Xs,Z.flip=zl,Z.flow=kf,Z.flowRight=Af,Z.fromPairs=Zs,Z.functions=md,Z.functionsIn=hd,Z.groupBy=fl,Z.initial=ec,Z.intersection=tc,Z.intersectionBy=nc,Z.intersectionWith=rc,Z.invert=yd,Z.invertBy=bd,Z.invokeMap=ml,Z.iteratee=Mf,Z.keyBy=hl,Z.keys=Sd,Z.keysIn=Cd,Z.map=gl,Z.mapKeys=wd,Z.mapValues=Td,Z.matches=Nf,Z.matchesProperty=Pf,Z.memoize=Bl,Z.merge=Ed,Z.mergeWith=Dd,Z.method=Ff,Z.methodOf=If,Z.mixin=Lf,Z.negate=Vl,Z.nthArg=Bf,Z.omit=Od,Z.omitBy=kd,Z.once=Hl,Z.orderBy=_l,Z.over=Vf,Z.overArgs=Ul,Z.overEvery=Hf,Z.overSome=Uf,Z.partial=Wl,Z.partialRight=Gl,Z.partition=vl,Z.pick=Ad,Z.pickBy=jd,Z.property=Wf,Z.propertyOf=Gf,Z.pull=cc,Z.pullAll=lc,Z.pullAllBy=uc,Z.pullAllWith=dc,Z.pullAt=fc,Z.range=Kf,Z.rangeRight=qf,Z.rearg=Kl,Z.reject=xl,Z.remove=pc,Z.rest=ql,Z.reverse=mc,Z.sampleSize=Cl,Z.set=Nd,Z.setWith=Pd,Z.shuffle=wl,Z.slice=hc,Z.sortBy=Dl,Z.sortedUniq=Sc,Z.sortedUniqBy=Cc,Z.split=lf,Z.spread=Jl,Z.tail=wc,Z.take=Tc,Z.takeRight=Ec,Z.takeRightWhile=Dc,Z.takeWhile=Oc,Z.tap=Kc,Z.throttle=Yl,Z.thru=qc,Z.toArray=Ku,Z.toPairs=Fd,Z.toPairsIn=Id,Z.toPath=ep,Z.toPlainObject=Zu,Z.transform=Ld,Z.unary=Xl,Z.union=kc,Z.unionBy=Ac,Z.unionWith=jc,Z.uniq=Mc,Z.uniqBy=Nc,Z.uniqWith=Pc,Z.unset=Rd,Z.unzip=Fc,Z.unzipWith=Ic,Z.update=zd,Z.updateWith=Bd,Z.values=Vd,Z.valuesIn=Hd,Z.without=Lc,Z.words=Sf,Z.wrap=Zl,Z.xor=Rc,Z.xorBy=zc,Z.xorWith=Bc,Z.zip=Vc,Z.zipObject=Hc,Z.zipObjectDeep=Uc,Z.zipWith=Wc,Z.entries=Fd,Z.entriesIn=Id,Z.extend=td,Z.extendWith=nd,Lf(Z,Z),Z.add=np,Z.attempt=Cf,Z.camelCase=Kd,Z.capitalize=qd,Z.ceil=rp,Z.clamp=Ud,Z.clone=$l,Z.cloneDeep=tu,Z.cloneDeepWith=nu,Z.cloneWith=eu,Z.conformsTo=ru,Z.deburr=Jd,Z.defaultTo=Of,Z.divide=ip,Z.endsWith=Yd,Z.eq=iu,Z.escape=Xd,Z.escapeRegExp=Zd,Z.every=rl,Z.find=al,Z.findIndex=Ks,Z.findKey=cd,Z.findLast=ol,Z.findLastIndex=qs,Z.findLastKey=ld,Z.floor=ap,Z.forEach=ul,Z.forEachRight=dl,Z.forIn=ud,Z.forInRight=dd,Z.forOwn=fd,Z.forOwnRight=pd,Z.get=gd,Z.gt=au,Z.gte=ou,Z.has=_d,Z.hasIn=vd,Z.head=Qs,Z.identity=jf,Z.includes=pl,Z.indexOf=$s,Z.inRange=Wd,Z.invoke=xd,Z.isArguments=su,Z.isArray=cu,Z.isArrayBuffer=lu,Z.isArrayLike=uu,Z.isArrayLikeObject=du,Z.isBoolean=fu,Z.isBuffer=pu,Z.isDate=mu,Z.isElement=hu,Z.isEmpty=gu,Z.isEqual=_u,Z.isEqualWith=vu,Z.isError=yu,Z.isFinite=bu,Z.isFunction=xu,Z.isInteger=Su,Z.isLength=Cu,Z.isMap=Eu,Z.isMatch=Du,Z.isMatchWith=Ou,Z.isNaN=ku,Z.isNative=Au,Z.isNil=Mu,Z.isNull=ju,Z.isNumber=Nu,Z.isObject=wu,Z.isObjectLike=Tu,Z.isPlainObject=Pu,Z.isRegExp=Fu,Z.isSafeInteger=Iu,Z.isSet=Lu,Z.isString=Ru,Z.isSymbol=zu,Z.isTypedArray=Bu,Z.isUndefined=Vu,Z.isWeakMap=Hu,Z.isWeakSet=Uu,Z.join=ic,Z.kebabCase=Qd,Z.last=ac,Z.lastIndexOf=oc,Z.lowerCase=$d,Z.lowerFirst=ef,Z.lt=Wu,Z.lte=Gu,Z.max=op,Z.maxBy=sp,Z.mean=cp,Z.meanBy=lp,Z.min=up,Z.minBy=dp,Z.stubArray=Jf,Z.stubFalse=Yf,Z.stubObject=Xf,Z.stubString=Zf,Z.stubTrue=Qf,Z.multiply=fp,Z.nth=sc,Z.noConflict=Rf,Z.noop=zf,Z.now=Ol,Z.pad=tf,Z.padEnd=nf,Z.padStart=rf,Z.parseInt=af,Z.random=Gd,Z.reduce=yl,Z.reduceRight=bl,Z.repeat=of,Z.replace=sf,Z.result=Md,Z.round=pp,Z.runInContext=e,Z.sample=Sl,Z.size=Tl,Z.snakeCase=cf,Z.some=El,Z.sortedIndex=gc,Z.sortedIndexBy=_c,Z.sortedIndexOf=vc,Z.sortedLastIndex=yc,Z.sortedLastIndexBy=bc,Z.sortedLastIndexOf=xc,Z.startCase=uf,Z.startsWith=df,Z.subtract=mp,Z.sum=hp,Z.sumBy=gp,Z.template=ff,Z.times=$f,Z.toFinite=qu,Z.toInteger=Ju,Z.toLength=Yu,Z.toLower=pf,Z.toNumber=Xu,Z.toSafeInteger=Qu,Z.toString=$u,Z.toUpper=mf,Z.trim=hf,Z.trimEnd=gf,Z.trimStart=_f,Z.truncate=vf,Z.unescape=yf,Z.uniqueId=tp,Z.upperCase=bf,Z.upperFirst=xf,Z.each=ul,Z.eachRight=dl,Z.first=Qs,Lf(Z,function(){var e={};return Ni(Z,function(t,n){mt.call(Z.prototype,n)||(e[n]=t)}),e}(),{chain:!1}),Z.VERSION=r,yn([`bind`,`bindKey`,`curry`,`curryRight`,`partial`,`partialRight`],function(e){Z[e].placeholder=Z}),yn([`drop`,`take`],function(e,t){kr.prototype[e]=function(r){r=r===n?1:Gt(Ju(r),0);var i=this.__filtered__&&!t?new kr(this):this.clone();return i.__filtered__?i.__takeCount__=Xt(r,i.__takeCount__):i.__views__.push({size:Xt(r,I),type:e+(i.__dir__<0?`Right`:``)}),i},kr.prototype[e+`Right`]=function(t){return this.reverse()[e](t).reverse()}}),yn([`filter`,`map`,`takeWhile`],function(e,t){var n=t+1,r=n==A||n==M;kr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:$(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}}),yn([`head`,`last`],function(e,t){var n=`take`+(t?`Right`:``);kr.prototype[e]=function(){return this[n](1).value()[0]}}),yn([`initial`,`tail`],function(e,t){var n=`drop`+(t?``:`Right`);kr.prototype[e]=function(){return this.__filtered__?new kr(this):this[n](1)}}),kr.prototype.compact=function(){return this.filter(jf)},kr.prototype.find=function(e){return this.filter(e).head()},kr.prototype.findLast=function(e){return this.reverse().find(e)},kr.prototype.invokeMap=xa(function(e,t){return typeof e==`function`?new kr(this):this.map(function(n){return Gi(n,e,t)})}),kr.prototype.reject=function(e){return this.filter(Vl($(e)))},kr.prototype.slice=function(e,t){e=Ju(e);var r=this;return r.__filtered__&&(e>0||t<0)?new kr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==n&&(t=Ju(t),r=t<0?r.dropRight(-t):r.take(t-e)),r)},kr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},kr.prototype.toArray=function(){return this.take(I)},Ni(kr.prototype,function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),a=Z[i?`take`+(t==`last`?`Right`:``):t],o=i||/^find/.test(t);a&&(Z.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,c=t instanceof kr,l=s[0],u=c||cu(t),d=function(e){var t=a.apply(Z,En([e],s));return i&&f?t[0]:t};u&&r&&typeof l==`function`&&l.length!=1&&(c=u=!1);var f=this.__chain__,p=!!this.__actions__.length,m=o&&!f,h=c&&!p;if(!o&&u){t=h?t:new kr(this);var g=e.apply(t,s);return g.__actions__.push({func:qc,args:[d],thisArg:n}),new Or(g,f)}return m&&h?e.apply(this,s):(g=this.thru(d),m?i?g.value()[0]:g.value():g)})}),yn([`pop`,`push`,`shift`,`sort`,`splice`,`unshift`],function(e){var t=lt[e],n=/^(?:push|sort|unshift)$/.test(e)?`tap`:`thru`,r=/^(?:pop|shift)$/.test(e);Z.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(cu(i)?i:[],e)}return this[n](function(n){return t.apply(cu(n)?n:[],e)})}}),Ni(kr.prototype,function(e,t){var n=Z[t];if(n){var r=n.name+``;mt.call(Bn,r)||(Bn[r]=[]),Bn[r].push({name:t,func:n})}}),Bn[bo(n,_).name]=[{name:`wrapper`,func:n}],kr.prototype.clone=Ar,kr.prototype.reverse=jr,kr.prototype.value=Mr,Z.prototype.at=Jc,Z.prototype.chain=Yc,Z.prototype.commit=Xc,Z.prototype.next=Zc,Z.prototype.plant=$c,Z.prototype.reverse=el,Z.prototype.toJSON=Z.prototype.valueOf=Z.prototype.value=tl,Z.prototype.first=Z.prototype.head,At&&(Z.prototype[At]=Qc),Z})();typeof define==`function`&&typeof define.amd==`object`&&define.amd?(an._=br,define(function(){return br})):sn?((sn.exports=br)._=br,on._=br):an._=br}).call(e)})),uo=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.PhpRenderer=e.phpNameStyle=e.stringEscape=e.PhpTargetLanguage=e.phpOptions=void 0;var i=Da(),a=Ra(),o=Ta(),s=ra(),c=Ea(),l=ia(),u=ua(),d=Q(),f=Ba(),p=ha(),m=r(lo());e.phpOptions={withGet:new s.BooleanOption(`with-get`,`Create Getter`,!0),fastGet:new s.BooleanOption(`fast-get`,`getter without validation`,!1),withSet:new s.BooleanOption(`with-set`,`Create Setter`,!1),withClosing:new s.BooleanOption(`with-closing`,`PHP Closing Tag`,!1),acronymStyle:(0,l.acronymOption)(l.AcronymStyleOptions.Pascal)},e.PhpTargetLanguage=class extends f.TargetLanguage{constructor(){super(`PHP`,[`php`],`php`)}getOptions(){return m.values(e.phpOptions)}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(t,n){let r=(0,s.getOptionValues)(e.phpOptions,n);return new y(this,t,r)}get stringTypeMapping(){let e=new Map;return e.set(`date`,`date`),e.set(`time`,`time`),e.set(`uuid`,`uuid`),e.set(`date-time`,`date-time`),e}},e.stringEscape=(0,u.utf16ConcatMap)((0,u.escapeNonPrintableMapper)(u.isAscii,u.standardUnicodeHexEscape));function h(e){return e===95?!0:(0,u.isAscii)(e)&&(0,u.isLetter)(e)}function g(e){return h(e)||(0,u.isAscii)(e)&&(0,u.isDigit)(e)}var _=(0,u.utf16LegalizeCharacters)(g);function v(e,t,n,r=u.allUpperWordStyle){let i=(0,u.splitIntoWords)(n);return(0,u.combineWords)(i,_,t?u.allUpperWordStyle:e?u.firstUpperWordStyle:u.allLowerWordStyle,t?u.allUpperWordStyle:u.firstUpperWordStyle,t||e?u.allUpperWordStyle:u.allLowerWordStyle,r,t?`_`:``,h)}e.phpNameStyle=v;var y=class extends a.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._gettersAndSettersForPropertyName=new Map,this._haveEmittedLeadingComments=!1,this._converterClassname=`Converter`,this._converterKeywords=[]}forbiddenForObjectProperties(e,t){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(e){return(0,p.nullableFromUnion)(e)===null}namedTypeToNameForTopLevel(e){return(0,p.directlyReachableSingleNamedType)(e)}makeNamesForPropertyGetterAndSetter(e,t,n,r,i){return{getter:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`get_${e(i)}`),setter:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`set_${e(i)}`),validate:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`validate_${e(i)}`),from:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`from_${e(i)}`),to:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`to_${e(i)}`),sample:new o.DependencyName(this.getNameStyling(`propertyNamingFunction`),i.order,e=>`sample_${e(i)}`)}}makePropertyDependencyNames(e,t,n,r,i){let a=this.makeNamesForPropertyGetterAndSetter(e,t,n,r,i);return this._gettersAndSettersForPropertyName.set(i,a),[a.getter,a.setter,a.validate,a.to,a.from,a.sample]}getNameStyling(e){return{typeNamingFunction:(0,o.funPrefixNamer)(`types`,e=>v(!0,!1,e,(0,l.acronymStyle)(this._options.acronymStyle))),propertyNamingFunction:(0,o.funPrefixNamer)(`properties`,e=>v(!1,!1,e,(0,l.acronymStyle)(this._options.acronymStyle))),enumCaseNamingFunction:(0,o.funPrefixNamer)(`enum-cases`,e=>v(!0,!0,e,(0,l.acronymStyle)(this._options.acronymStyle)))}[e]}startFile(e){this.ensureBlankLine(),!this._haveEmittedLeadingComments&&this.leadingComments!==void 0&&(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){}emitFileHeader(e,t){this.startFile(e),this.emitLine(`// This is a autogenerated file:`,e),this.ensureBlankLine()}emitDescriptionBlock(e){this.emitCommentLines(e,` * `,`/**`,` */`)}emitBlock(e,t){this.emitLine(e,` {`),this.indent(t),this.emitLine(`}`)}phpType(e,t,n=!1,r=`?`,a=``){function o(e){return[n?r:``,e,n?a:``]}return(0,p.matchType)(t,e=>(0,c.maybeAnnotated)(n,i.anyTypeIssueAnnotation,`Object`),e=>(0,c.maybeAnnotated)(n,i.nullTypeIssueAnnotation,`Object`),e=>o(`bool`),e=>o(`int`),e=>o(`float`),e=>o(`string`),e=>o(`array`),e=>o(this.nameForNamedType(e)),e=>o(`stdClass`),e=>o(this.nameForNamedType(e)),e=>{let t=(0,p.nullableFromUnion)(e);return t===null?this.nameForNamedType(e):this.phpType(!0,t,!0,r,a)},e=>{if(e.kind===`time`)throw Error(`transformedStringType.kind === "time"`);if(e.kind===`date`)throw Error(`transformedStringType.kind === "date"`);if(e.kind===`date-time`)return`DateTime`;if(e.kind===`uuid`)throw Error(`transformedStringType.kind === "uuid"`);return`string`})}phpDocConvertType(e,t){return(0,p.matchType)(t,e=>`any`,e=>`null`,e=>`bool`,e=>`int`,e=>`float`,e=>`string`,t=>[this.phpDocConvertType(e,t.items),`[]`],e=>e.getCombinedName(),e=>`stdClass`,e=>this.nameForNamedType(e),t=>{let n=(0,p.nullableFromUnion)(t);if(n!==null)return[this.phpDocConvertType(e,n),`|null`];throw Error(`union are not supported`)},e=>{if(e.kind===`date-time`)return`DateTime`;throw Error(`transformedStringType.kind === "unknown"`)})}phpConvertType(e,t){return(0,p.matchType)(t,e=>`any`,e=>`null`,e=>`bool`,e=>`int`,e=>`float`,e=>`string`,e=>`array`,e=>`stdClass`,e=>`stdClass`,e=>`string`,t=>{let n=(0,p.nullableFromUnion)(t);if(n!==null)return[`?`,this.phpConvertType(e,n)];throw Error(`union are not supported`)},e=>{if(e.kind===`date-time`)return`string`;throw Error(`transformedStringType.kind === "unknown"`)})}phpToObjConvert(e,t,n,r){return(0,p.matchType)(t,e=>this.emitLine(...n,...r,`; /*any*/`),e=>this.emitLine(...n,...r,`; /*null*/`),e=>this.emitLine(...n,...r,`; /*bool*/`),e=>this.emitLine(...n,...r,`; /*int*/`),e=>this.emitLine(...n,...r,`; /*float*/`),e=>this.emitLine(...n,...r,`; /*string*/`),t=>{this.emitLine(...n,`array_map(function ($value) {`),this.indent(()=>{this.phpToObjConvert(e,t.items,[`return `],[`$value`])}),this.emitLine(`}, `,...r,`);`)},e=>this.emitLine(...n,...r,`->to(); `,`/*class*/`),t=>{this.emitBlock([`function to($my): stdClass`],()=>{this.emitLine(`$out = new stdClass();`),this.emitBlock([`foreach ($my as $k => $v)`],()=>{this.phpToObjConvert(e,t.values,[`$my->$k = `],[`$v`])}),this.emitLine(`return $out;`)}),this.emitLine(`return to(`,...r,`);`)},e=>this.emitLine(...n,this.nameForNamedType(e),`::to(`,...r,`); `,`/*enum*/`),t=>{let i=(0,p.nullableFromUnion)(t);if(i!==null){this.emitLine(`if (!is_null(`,...r,`)) {`),this.indent(()=>this.phpToObjConvert(e,i,n,r)),this.emitLine(`} else {`),this.indent(()=>this.emitLine(...n,` null;`)),this.emitLine(`}`);return}throw Error(`union are not supported`)},e=>{if(e.kind===`date-time`){this.emitLine(...n,...r,`->format(DateTimeInterface::ISO8601);`);return}throw Error(`transformedStringType.kind === "unknown"`)})}transformDateTime(e,t,n){this.emitBlock([`if (!is_a(`,n,`, 'DateTime'))`],()=>this.emitLine(`throw new Exception('Attribute Error:`,e,`::`,t,`');`))}phpFromObjConvert(e,t,n,r){return(0,p.matchType)(t,e=>this.emitLine(...n,...r,`; /*any*/`),e=>this.emitLine(...n,...r,`; /*null*/`),e=>this.emitLine(...n,...r,`; /*bool*/`),e=>this.emitLine(...n,...r,`; /*int*/`),e=>this.emitLine(...n,...r,`; /*float*/`),e=>this.emitLine(...n,...r,`; /*string*/`),t=>{this.emitLine(...n,` array_map(function ($value) {`),this.indent(()=>{this.phpFromObjConvert(e,t.items,[`return `],[`$value`])}),this.emitLine(`}, `,...r,`);`)},e=>this.emitLine(...n,this.nameForNamedType(e),`::from(`,...r,`); `,`/*class*/`),t=>{this.emitBlock([`function from($my): stdClass`],()=>{this.emitLine(`$out = new stdClass();`),this.emitBlock([`foreach ($my as $k => $v)`],()=>{this.phpFromObjConvert(e,t.values,[`$out->$k = `],[`$v`])}),this.emitLine(`return $out;`)}),this.emitLine(`return from(`,...r,`);`)},e=>this.emitLine(...n,this.nameForNamedType(e),`::from(`,...r,`); `,`/*enum*/`),t=>{let i=(0,p.nullableFromUnion)(t);if(i!==null){this.emitLine(`if (!is_null(`,...r,`)) {`),this.indent(()=>this.phpFromObjConvert(e,i,n,r)),this.emitLine(`} else {`),this.indent(()=>this.emitLine(`return null;`)),this.emitLine(`}`);return}throw Error(`union are not supported`)},t=>{if(t.kind===`date-time`){this.emitLine(`$tmp = `,`DateTime::createFromFormat(DateTimeInterface::ISO8601, `,r,`);`),this.transformDateTime(e,``,[`$tmp`]),this.emitLine(`return $tmp;`);return}throw Error(`transformedStringType.kind === "unknown"`)})}phpSampleConvert(e,t,n,r,i,a){return(0,p.matchType)(t,t=>this.emitLine(...n,`'AnyType::`,e,`::`,r,`::`+i,`'`,a,`/*`,``+i,`:`,r,`*/`),e=>this.emitLine(...n,`null`,a,` /*`,``+i,`:`,r,`*/`),e=>this.emitLine(...n,`true`,a,` /*`,``+i,`:`,r,`*/`),e=>this.emitLine(...n,``+i,a,` /*`,``+i,`:`,r,`*/`),e=>this.emitLine(...n,``+(i+i/1e3),a,` /*`,``+i,`:`,r,`*/`),t=>this.emitLine(...n,`'`,e,`::`,r,`::`+i,`'`,a,` /*`,``+i,`:`,r,`*/`),t=>{this.emitLine(...n,` array(`),this.indent(()=>{this.phpSampleConvert(e,t.items,[],[],i,``)}),this.emitLine(`); /* `,``+i,`:`,r,`*/`)},e=>this.emitLine(...n,this.nameForNamedType(e),`::sample()`,a,` /*`,``+i,`:`,r,`*/`),t=>{this.emitBlock([`function sample(): stdClass`],()=>{this.emitLine(`$out = new stdClass();`),this.phpSampleConvert(e,t.values,[`$out->{'`,e,`'} = `],r,i,`;`),this.emitLine(`return $out;`)}),this.emitLine(`return sample();`)},e=>this.emitLine(...n,this.nameForNamedType(e),`::sample()`,a,` /*enum*/`),t=>{let o=(0,p.nullableFromUnion)(t);if(o!==null){this.phpSampleConvert(e,o,n,r,i,a);return}throw Error(`union are not supported:`+t)},e=>{if(e.kind===`date-time`){let e=m.pad(``+(1+i%31),2,`0`);this.emitLine(...n,`DateTime::createFromFormat(DateTimeInterface::ISO8601, '`,`2020-12-${e}T12:${e}:${e}+00:00`,`')`,a);return}throw Error(`transformedStringType.kind === "unknown"`)})}phpValidate(e,t,n,r){let i=(t,i=e)=>{this.emitBlock([`if (!`,t,`(`,r,`))`],()=>this.emitLine(`throw new Exception("Attribute Error:`,i,`::`,n,`");`))};return(0,p.matchType)(t,e=>i(`defined`),e=>i(`is_null`),e=>i(`is_bool`),e=>i(`is_integer`),e=>i(`is_float`),e=>i(`is_string`),t=>{i(`is_array`),this.emitLine(`array_walk(`,r,`, function(`,r,`_v) {`),this.indent(()=>{this.phpValidate(e,t.items,n,`${r}_v`)}),this.emitLine(`});`)},e=>{this.emitLine(r,`->validate();`)},t=>{this.emitLine(`foreach (`,r,` as $k => $v) {`),this.indent(()=>{this.phpValidate(e,t.values,n,`$v`)}),this.emitLine(`}`)},e=>{this.emitLine(this.phpType(!1,e),`::to(`,r,`);`)},t=>{let i=(0,p.nullableFromUnion)(t);if(i!==null){this.emitBlock([`if (!is_null(`,r,`))`],()=>{this.phpValidate(e,i,n,r)});return}throw Error(`not implemented`)},t=>{if(t.kind===`date-time`){this.transformDateTime(e,n,[r]);return}throw Error(`transformedStringType.kind === ${t.kind}`)})}emitFromMethod(e,t,n,r,i){this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`)),this.emitLine(` * @param `,this.phpConvertType(n,t.type),` $value`),this.emitLine(` * @throws Exception`),this.emitLine(` * @return `,this.phpType(!1,t.type)),this.emitLine(` */`),this.emitBlock([`public static function `,e.from,`(`,this.phpConvertType(n,t.type),` $value): `,this.phpType(!1,t.type)],()=>{this.phpFromObjConvert(n,t.type,[`return `],[`$value`])})}emitToMethod(e,t,n,r,i){this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`)),this.emitLine(` * @throws Exception`),this.emitLine(` * @return `,this.phpConvertType(n,t.type)),this.emitLine(` */`),this.emitBlock([`public function `,e.to,`(): `,this.phpConvertType(n,t.type)],()=>{this.emitBlock([`if (`,n,`::`,e.validate,`($this->`,r,`)) `],()=>{this.phpToObjConvert(n,t.type,[`return `],[`$this->`,r])}),this.emitLine(`throw new Exception('never get to this `,n,`::`,r,`');`)})}emitValidateMethod(e,t,n,r,i){this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`)),this.emitLine(` * @param `,this.phpType(!1,t.type,!1,``,`|null`)),this.emitLine(` * @return bool`),this.emitLine(` * @throws Exception`),this.emitLine(` */`),this.emitBlock([`public static function `,e.validate,`(`,this.phpType(!1,t.type),` $value): bool`],()=>{this.phpValidate(n,t.type,r,`$value`),this.emitLine(`return true;`)})}emitGetMethod(e,t,n,r,i){if(this._options.withGet){this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`)),this._options.fastGet||this.emitLine(` * @throws Exception`);let a=this.phpType(!1,t.type);this.emitLine(` * @return `,a),this.emitLine(` */`),this.emitBlock([`public function `,e.getter,`(): `,a],()=>{this._options.fastGet?this.emitLine(`return $this->`,r,`;`):(this.emitBlock([`if (`,n,`::`,e.validate,`($this->`,r,`)) `],()=>{this.emitLine(`return $this->`,r,`;`)}),this.emitLine(`throw new Exception('never get to `,e.getter,` `,n,`::`,r,`');`))})}}emitSetMethod(e,t,n,r,i){this._options.withSet&&(this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`)),this.emitLine(` * @param `,this.phpType(!1,t.type,!1,``,`|null`)),this.emitLine(` * @throws Exception`),this.emitLine(` */`),this.emitBlock([`public function `,e.setter,`(`,this.phpType(!1,t.type),` $value)`],()=>{this.emitBlock([`if (`,n,`::`,e.validate,`($value)) `],()=>{this.emitLine(`$this->`,r,` = $value;`)})}))}emitSampleMethod(e,t,n,r,i,a){if(this._options.withGet){this.emitLine(`/**`),i!==void 0&&(this.emitLine(` * `,i),this.emitLine(` *`));let o=this.phpType(!1,t.type);this.emitLine(` * @return `,o),this.emitLine(` */`),this.emitBlock([`public static function `,e.sample,`(): `,o],()=>{this.phpSampleConvert(n,t.type,[`return `],[r],a,`;`)})}}emitClassDefinition(e,t){this.emitFileHeader(t,[]),this.emitBlock([`class `,t],()=>{this.forEachClassProperty(e,`none`,(e,t,n)=>{this.emitLine(`private `,this.phpType(!1,n.type),` $`,e,`; // json:`,t,` `,n.type.isNullable?`Optional`:`Required`)}),this.ensureBlankLine();let n=[],r=[],i=``;this.forEachClassProperty(e,`none`,(e,t,a)=>{r.push([i,this.phpType(!1,a.type),` $`,e]),i=`, `,n.push([` * @param `,this.phpType(!1,a.type,!1,``,`|null`),` $`,e,`
885
+ `])}),this.emitBlock([`/**
886
+ `,...n,` */
887
+ `,`public function __construct(`,...r,`)`],()=>{this.forEachClassProperty(e,`none`,e=>{this.emitLine(`$this->`,e,` = $`,e,`;`)})});let a=31;this.forEachClassProperty(e,`leading-and-interposing`,(n,r,i)=>{let o=this.descriptionForClassProperty(e,r),s=(0,d.defined)(this._gettersAndSettersForPropertyName.get(n));this.ensureBlankLine(),this.emitFromMethod(s,i,t,n,o),this.ensureBlankLine(),this.emitToMethod(s,i,t,n,o),this.ensureBlankLine(),this.emitValidateMethod(s,i,t,n,o),this.ensureBlankLine(),this.emitGetMethod(s,i,t,n,o),this.ensureBlankLine(),this.emitSetMethod(s,i,t,n,o),this.ensureBlankLine(),this.emitSampleMethod(s,i,t,n,o,a++)}),this.ensureBlankLine(),this.emitBlock([`/**
888
+ `,` * @throws Exception
889
+ `,` * @return bool
890
+ `,` */
891
+ `,`public function validate(): bool`],()=>{let n=[],r=`return `;this.forEachClassProperty(e,`none`,(e,i,a)=>{let o=(0,d.defined)(this._gettersAndSettersForPropertyName.get(e));n.push([r,t,`::`,o.validate,`($this->`,e,`)`]),r=`|| `}),n.forEach((e,t)=>{this.emitLine(...e,n.length===t+1?`;`:``)})}),this.ensureBlankLine(),this.emitBlock([`/**
892
+ `,` * @return stdClass
893
+ `,` * @throws Exception
894
+ `,` */
895
+ `,`public function to(): stdClass `],()=>{this.emitLine(`$out = new stdClass();`),this.forEachClassProperty(e,`none`,(e,t)=>{let n=(0,d.defined)(this._gettersAndSettersForPropertyName.get(e));this.emitLine(`$out->{'`,t,`'} = $this->`,n.to,`();`)}),this.emitLine(`return $out;`)}),this.ensureBlankLine(),this.emitBlock([`/**
896
+ `,` * @param stdClass $obj
897
+ `,` * @return `,t,`
898
+ `,` * @throws Exception
899
+ `,` */
900
+ `,`public static function from(stdClass $obj): `,t],()=>{this._options.fastGet&&this.forEachClassProperty(e,`none`,e=>{let n=(0,d.defined)(this._gettersAndSettersForPropertyName.get(e));this.emitLine(t,`::`,n.validate,`($this->`,e,`, true);`)}),this.emitLine(`return new `,t,`(`);let n=` `;this.forEachClassProperty(e,`none`,(e,r)=>{let i=(0,d.defined)(this._gettersAndSettersForPropertyName.get(e));this.emitLine(n,t,`::`,i.from,`($obj->{'`,r,`'})`),n=`,`}),this.emitLine(`);`)}),this.ensureBlankLine(),this.emitBlock([`/**
901
+ `,` * @return `,t,`
902
+ `,` */
903
+ `,`public static function sample(): `,t],()=>{this.emitLine(`return new `,t,`(`);let n=` `;this.forEachClassProperty(e,`none`,e=>{let r=(0,d.defined)(this._gettersAndSettersForPropertyName.get(e));this.emitLine(n,t,`::`,r.sample,`()`),n=`,`}),this.emitLine(`);`)})}),this.finishFile()}emitUnionAttributes(e,t){}emitUnionSerializer(e,t){}emitUnionDefinition(e,t){throw Error(`emitUnionDefinition not implemented`)}emitEnumSerializationAttributes(e){}emitEnumDeserializationAttributes(e){}emitEnumDefinition(t,n){this.emitFileHeader(n,[]),this.emitDescription(this.descriptionForType(t)),[].push(`;`);let r=`string`;this.emitBlock([`class `,n],()=>{this.forEachEnumCase(t,`none`,(e,t)=>{this.emitLine(`public static `,n,` $`,e,`;`)}),this.emitBlock(`public static function init()`,()=>{this.forEachEnumCase(t,`none`,(e,t)=>{this.emitLine(n,`::$`,e,` = new `,n,`('`,t,`');`)})}),this.emitLine(`private `,r,` $enum;`),this.emitBlock([`public function __construct(`,r,` $enum)`],()=>{this.emitLine(`$this->enum = $enum;`)}),this.ensureBlankLine(),this.emitEnumSerializationAttributes(t),this.emitBlock([`/**
904
+ `,` * @param `,n,`
905
+ `,` * @return `,r,`
906
+ `,` * @throws Exception
907
+ `,` */
908
+ `,`public static function to(`,n,` $obj): `,r],()=>{this.emitLine(`switch ($obj->enum) {`),this.indent(()=>{this.forEachEnumCase(t,`none`,(t,r)=>{this.emitLine(`case `,n,`::$`,t,`->enum: return '`,(0,e.stringEscape)(r),`';`)})}),this.emitLine(`}`),this.emitLine(`throw new Exception('the give value is not an enum-value.');`)}),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(t),this.emitBlock([`/**
909
+ `,` * @param mixed
910
+ `,` * @return `,n,`
911
+ `,` * @throws Exception
912
+ `,` */
913
+ `,`public static function from($obj): `,n],()=>{this.emitLine(`switch ($obj) {`),this.indent(()=>{this.forEachEnumCase(t,`none`,(t,r)=>{this.emitLine(`case '`,(0,e.stringEscape)(r),`': return `,n,`::$`,t,`;`)})}),this.emitLine(`}`),this.emitLine(`throw new Exception("Cannot deserialize `,n,`");`)}),this.ensureBlankLine(),this.emitBlock([`/**
914
+ `,` * @return `,n,`
915
+ `,` */
916
+ `,`public static function sample(): `,n],()=>{let e=[];this.forEachEnumCase(t,`none`,t=>{e.push([n,`::$`,t])}),this.emitLine(`return `,e[0],`;`)})}),this.emitLine(n,`::init();`),this.finishFile()}emitSourceStructure(e){this.emitLine(`<?php`),this.forEachNamedType(`leading-and-interposing`,(e,t)=>this.emitClassDefinition(e,t),(e,t)=>this.emitEnumDefinition(e,t),(e,t)=>this.emitUnionDefinition(e,t)),this._options.withClosing&&this.emitLine(`?>`),super.finishFile((0,d.defined)(e))}};e.PhpRenderer=y})),fo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.languageNamed=e.all=void 0;var t=a(),n=Va(),r=Ha(),i=Ua(),o=Wa(),s=Ga(),c=Ja(),l=Ya(),u=Xa(),d=Za(),f=Qa(),p=$a(),m=eo(),h=to(),g=no(),_=io(),v=ao(),y=oo(),b=so(),x=co(),S=uo();e.all=[new n.CSharpTargetLanguage,new r.GoTargetLanguage,new h.RustTargetLanguage,new g.CrystalTargetLanguage,new i.CPlusPlusTargetLanguage,new o.ObjectiveCTargetLanguage,new s.JavaTargetLanguage,new u.TypeScriptTargetLanguage,new c.JavaScriptTargetLanguage,new l.JavaScriptPropTypesTargetLanguage,new u.FlowTargetLanguage,new d.SwiftTargetLanguage,new f.KotlinTargetLanguage,new p.ElmTargetLanguage,new m.JSONSchemaTargetLanguage,new _.RubyTargetLanguage,new v.DartTargetLanguage,new y.PythonTargetLanguage(`Python`,[`python`,`py`],`py`),new b.PikeTargetLanguage,new x.HaskellTargetLanguage,new S.PhpTargetLanguage];function C(n,r){r===void 0&&(r=e.all);let i=(0,t.iterableFind)(r,e=>e.names.indexOf(n)>=0||e.displayName===n);return i===void 0?(0,t.iterableFind)(r,e=>e.extension===n):i}e.languageNamed=C})),po=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.UnionBuilder=e.TypeRefUnionAccumulator=e.UnionAccumulator=void 0;var t=a(),n=wa(),r=ha(),i=na(),o=Q(),s=ma();function c(e,t){return e===void 0?t:(0,i.combineTypeAttributes)(`union`,e,t)}function l(e,t,n){e.set(t,c(e.get(t),n))}function u(e,t,n){let r=e.get(t);r===void 0&&(r=[],e.set(t,r)),r.push(n)}function d(e){return(0,t.mapMap)(e,e=>(0,i.combineTypeAttributes)(`union`,e))}function f(e,t,n){let r=(0,o.defined)(e.get(t));e.delete(t),l(e,n,r)}var p=class{constructor(e){this._conflateNumbers=e,this._nonStringTypeAttributes=new Map,this._stringTypeAttributes=new Map,this.arrayData=[],this.objectData=[],this._enumCases=new Set,this._lostTypeAttributes=!1}have(e){return this._nonStringTypeAttributes.has(e)||this._stringTypeAttributes.has(e)}addNone(e){this._lostTypeAttributes=!0}addAny(e){u(this._nonStringTypeAttributes,`any`,e),this._lostTypeAttributes=!0}addPrimitive(e,t){(0,o.assert)(e!==`any`,`any must be added with addAny`),u(this._nonStringTypeAttributes,e,t)}addFullStringType(e,t){let n;t===void 0?t=s.stringTypesTypeAttributeKind.tryGetInAttributes(e):n=s.stringTypesTypeAttributeKind.makeAttributes(t),t===void 0&&(t=s.StringTypes.unrestricted,n=s.stringTypesTypeAttributeKind.makeAttributes(t));let r=this._nonStringTypeAttributes.get(`enum`);t.isRestricted&&(0,o.assert)(r===void 0,`We can't add both an enum as well as a restricted string type to a union builder`),u(this._stringTypeAttributes,`string`,e),n!==void 0&&u(this._stringTypeAttributes,`string`,n)}addStringType(e,t,n){if(e===`string`){this.addFullStringType(t,n);return}u(this._stringTypeAttributes,e,t),n!==void 0&&u(this._stringTypeAttributes,e,s.stringTypesTypeAttributeKind.makeAttributes(n))}addArray(e,t){this.arrayData.push(e),u(this._nonStringTypeAttributes,`array`,t)}addObject(e,t){this.objectData.push(e),u(this._nonStringTypeAttributes,`object`,t)}addEnum(e,n){if(this._stringTypeAttributes.get(`string`)!==void 0){u(this._stringTypeAttributes,`string`,n);return}u(this._nonStringTypeAttributes,`enum`,n),(0,t.setUnionInto)(this._enumCases,e)}addStringCases(e,t){this.addFullStringType(t,s.StringTypes.fromCases(e))}addStringCase(e,t,n){this.addFullStringType(n,s.StringTypes.fromCase(e,t))}get enumCases(){return this._enumCases}getMemberKinds(){(0,o.assert)(!(this.have(`enum`)&&this.have(`string`)),`We can't have both strings and enums in the same union`);let e=(0,t.mapMerge)(d(this._nonStringTypeAttributes),d(this._stringTypeAttributes));if(e.size===0)return new Map([[`none`,i.emptyTypeAttributes]]);if(this._nonStringTypeAttributes.has(`any`)){(0,o.assert)(this._lostTypeAttributes,`This had to be set when we added 'any'`);let t=(0,i.combineTypeAttributes)(`union`,Array.from(e.values()));return new Map([[`any`,t]])}return this._conflateNumbers&&this.have(`integer`)&&this.have(`double`)&&f(e,`integer`,`double`),this.have(`map`)&&f(e,`map`,`class`),e}get lostTypeAttributes(){return this._lostTypeAttributes}};e.UnionAccumulator=p;var m=class{getAttributes(){return i.emptyTypeAttributes}};function h(e){let r=new Map,a=new Map,s=new Set,c=new Set;function l(e,i,o){if(e instanceof n.UnionType){s.add(e),o&&(c=c.add(e)),o&&=e.members.size===1,i.push(e);for(let t of e.members)l(t,i,o);i.pop()}else{(0,t.mapUpdateInto)(r,e,e=>e===void 0?new Set(i):(0,t.setUnionInto)(e,i));for(let n of i)(0,t.mapUpdateInto)(a,n,t=>t===void 0?new Set([e]):t.add(e))}}let u=[new m],d=Array.from(e);for(let e of d)l(e,u,d.length===1);let f=(0,t.mapMap)(r,(e,t)=>{let n=Array.from(e).filter(e=>(0,o.defined)(a.get(e)).size===1);(0,o.assert)(n.every(e=>(0,o.defined)(a.get(e)).has(t)),`We messed up bookkeeping`);let r=n.map(e=>e.getAttributes());return(0,i.combineTypeAttributes)(`union`,[t.getAttributes()].concat(r))}),p=Array.from(s).map(e=>{let t=a.get(e);if(t!==void 0&&t.size===1)return i.emptyTypeAttributes;let n=e.getAttributes();return c.has(e)?n:(0,i.makeTypeAttributesInferred)(n)});return[f,(0,i.combineTypeAttributes)(`union`,p)]}e.TypeRefUnionAccumulator=class extends p{addType(e,t){(0,r.matchTypeExhaustive)(e,e=>this.addNone(t),e=>this.addAny(t),e=>this.addPrimitive(`null`,t),e=>this.addPrimitive(`bool`,t),e=>this.addPrimitive(`integer`,t),e=>this.addPrimitive(`double`,t),e=>this.addStringType(`string`,t),e=>this.addArray(e.items.typeRef,t),e=>this.addObject(e.typeRef,t),e=>this.addObject(e.typeRef,t),e=>this.addObject(e.typeRef,t),e=>this.addEnum(e.cases,t),e=>(0,o.panic)(`The unions should have been eliminated in attributesForTypesInUnion`),e=>this.addStringType(e.kind,t))}addTypes(e){let[t,n]=h(e);for(let[e,n]of t)this.addType(e,n);return n}},e.UnionBuilder=class{constructor(e){this.typeBuilder=e}makeTypeOfKind(e,t,r,i){switch(t){case`string`:return this.typeBuilder.getStringType(r,void 0,i);case`enum`:return this.typeBuilder.getEnumType(r,e.enumCases,i);case`object`:return this.makeObject(e.objectData,r,i);case`array`:return this.makeArray(e.arrayData,r,i);default:return(0,n.isPrimitiveTypeKind)(t)?this.typeBuilder.getPrimitiveType(t,r,i):t===`union`||t===`class`||t===`map`||t===`intersection`?(0,o.panic)(`getMemberKinds() shouldn't return ${t}`):(0,o.assertNever)(t)}}buildUnion(e,t,n,r){let a=e.getMemberKinds();if(e.lostTypeAttributes&&this.typeBuilder.setLostTypeAttributes(),a.size===1){let[[t,o]]=Array.from(a),s=(0,i.combineTypeAttributes)(`union`,n,(0,i.increaseTypeAttributesDistance)(o));return this.makeTypeOfKind(e,t,s,r)}let o=t?this.typeBuilder.getUniqueUnionType(n,void 0,r):void 0,s=[];for(let[t,n]of a)s.push(this.makeTypeOfKind(e,t,n,void 0));let c=new Set(s);return o===void 0?this.typeBuilder.getUnionType(n,c,r):(this.typeBuilder.setSetOperationMembers(o,c),o)}}})),mo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.unifyTypes=e.unionBuilderForUnification=e.UnifyUnionBuilder=void 0;var t=a(),n=wa(),r=ha(),i=po(),o=Q(),s=na(),c=va();function l(e,n,r){let i=new Set;for(let n of e)(0,t.setUnionInto)(i,n.getProperties().keys());let a=Array.from(i).map(e=>[e,new Set,!1]),o;for(let t of e){let e=t.getAdditionalProperties();e!==void 0&&(o===void 0&&(o=new Set),e!==void 0&&o.add(e));for(let n=0;n<a.length;n++){let[r,i,o]=a[n],s=t.getProperties().get(r);s===void 0?(o=!0,e!==void 0&&e.kind!==`any`&&i.add(e)):(s.isOptional&&(o=!0),i.add(s.type)),a[n][2]=o}}let s=o===void 0?void 0:r(o),c=a.map(([e,t,i])=>[e,n.makeClassProperty(r(t),i)]);return[new Map(c),s,!1]}function u(e){let t=!1,n=!1,r=!1;for(let i of e){i.getProperties().size>0&&(t=!0);let e=i.getAdditionalProperties();e!==void 0&&(n=!0,e.kind!==`any`&&(r=!0))}return{hasProperties:t,hasAdditionalProperties:n,hasNonAnyAdditionalProperties:r}}var d=class extends i.UnionBuilder{constructor(e,t,n,r){super(e),this._makeObjectTypes=t,this._makeClassesFixed=n,this._unifyTypes=r}makeObject(e,n,i){let a=this.typeBuilder.lookupTypeRefs(e,i);if(a!==void 0)return(0,o.assert)(i===void 0||a===i,`The forwarding ref must be consumed`),this.typeBuilder.addAttributes(a,n),a;if(e.length===1)return this.typeBuilder.reconstituteTypeRef(e[0],n,i);let s=e.map(e=>(0,r.assertIsObject)((0,c.derefTypeRef)(e,this.typeBuilder))),{hasProperties:d,hasAdditionalProperties:f,hasNonAnyAdditionalProperties:p}=u(s);if(!this._makeObjectTypes&&(p||!d&&f)){let e=new Set;for(let n of s)(0,t.setUnionInto)(e,Array.from(n.getProperties().values()).map(e=>e.typeRef));let r=new Set(s.filter(e=>e.getAdditionalProperties()!==void 0).map(e=>(0,o.defined)(e.getAdditionalProperties()).typeRef));return(0,t.setUnionInto)(e,r),this.typeBuilder.getMapType(n,this._unifyTypes(Array.from(e)))}else{let[e,t,r]=l(s,this.typeBuilder,e=>((0,o.assert)(e.size>0,`Property has no type`),this._unifyTypes(Array.from(e).map(e=>e.typeRef))));return r&&this.typeBuilder.setLostTypeAttributes(),this._makeObjectTypes?this.typeBuilder.getUniqueObjectType(n,e,t,i):((0,o.assert)(t===void 0,`We have additional properties but want to make a class`),this.typeBuilder.getUniqueClassType(n,this._makeClassesFixed,e,i))}}makeArray(e,t,n){return this.typeBuilder.getArrayType(t,this._unifyTypes(e),n)}};e.UnifyUnionBuilder=d;function f(e,t,n,r){return new d(e,t,n,i=>p(new Set(i.map(t=>(0,c.derefTypeRef)(t,e))),s.emptyTypeAttributes,e,f(e,t,n,r),r))}e.unionBuilderForUnification=f;function p(e,r,a,c,l,u){if(r=a.reconstituteTypeAttributes(r),e.size===0)return(0,o.panic)(`Cannot unify empty set of types`);if(e.size===1){let i=(0,o.defined)((0,t.iterableFirst)(e));if(!(i instanceof n.UnionType))return a.reconstituteTypeRef(i.typeRef,r,u)}let d=Array.from(e).map(e=>e.typeRef),f=a.lookupTypeRefs(d,u);if(f!==void 0)return a.addAttributes(f,r),f;let p=new i.TypeRefUnionAccumulator(l),m=a.reconstituteTypeAttributes(p.addTypes(e));return r=(0,s.combineTypeAttributes)(`union`,r,m),a.withForwardingRef(u,e=>(a.registerUnion(d,e),c.buildUnion(p,!1,r,e)))}e.unifyTypes=p})),ho=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.combineClasses=void 0;var t=wa(),n=ha(),r=Q(),i=mo(),a=3/4;function o(e,n){return(0,t.setOperationCasesEqual)(e,n,!0,(e,t)=>e.structurallyCompatible(t,!0))}function s(e,t,i){let s=e.getProperties(),c=t.getProperties();if(i){if(s.size!==c.size)return!1}else if(s.size<c.size*a||c.size<s.size*a)return!1;let l,u;s.size>c.size?(l=s,u=c):(l=c,u=s);let d;if(i)d=0;else{let e=Math.ceil(l.size*a);d=u.size-e}(0,r.assert)(d>=0,`Max faults negative`);let f=[],p=0;for(let[e]of u)if(l.has(e))f.push(e);else if(p+=1,p>d)break;if(p>d)return!1;for(let e of f){let t=u.get(e),i=l.get(e);if(t===void 0||i===void 0)return(0,r.panic)(`Both classes should have property ${e}`);let a=(0,n.nonNullTypeCases)(t.type),s=(0,n.nonNullTypeCases)(i.type);if(a.size>0&&s.size>0&&!o(a,s))return!1}return!0}function c(e,t,n){for(let n of t.prototypes)if(n.structurallyCompatible(e))return t.members.push(e),!0;for(let r of t.prototypes)if(s(r,e,n))return t.prototypes.push(e),t.members.push(e),!0;return!1}function l(e,n,r){let i=Array.from(e.allNamedTypesSeparated().objects).filter(e=>e instanceof t.ClassType&&(r||!e.isFixed)),a=[];for(let e of i){let t;for(let r=0;r<a.length;r++)if(c(e,a[r],n)){t=r;break}t===void 0&&(t=a.length,a.push({members:[e],prototypes:[e]}));let r=a[0];a[0]=a[t],a[t]=r}return a.map(e=>e.members).filter(e=>e.length>1)}function u(e,t,a,o,s,c){let u=e.time(` find similarity cliques`,()=>l(t,s,!1));function d(e,t,a){(0,r.assert)(e.size>0,`Clique can't be empty`);let s=(0,n.combineTypeAttributesOfTypes)(`union`,e);return(0,i.unifyTypes)(e,s,t,(0,i.unionBuilderForUnification)(t,!1,!1,o),o,a)}return t.rewrite(`combine classes`,e.stringTypeMapping,a,u,c,d)}e.combineClasses=u})),go=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.encodedMarkovChain=void 0,e.encodedMarkovChain=`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`})),_o=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.test=e.generate=e.evaluate=e.evaluateFull=e.load=e.train=void 0;var t=Q(),n=go();function r(){let e=[];for(let t=0;t<128;t++)e.push(null);return{count:0,arr:e}}function i(e,t,n){if(n>=t.length)return e;let r=t.charCodeAt(n);r>=128&&(r=0);let a=e.arr[r];if(a!==null)return typeof a==`object`?i(a,t,n+1):a/e.count}function a(e,n,i){let o=n.charCodeAt(i);if(o>=128&&(o=0),i>=n.length-1){if(typeof e!=`object`)return(0,t.panic)(`Malformed trie`);let n=e.arr[o];if(n===null)n=0;else if(typeof n==`object`)return(0,t.panic)(`Malformed trie`);e.arr[o]=n+1,e.count+=1;return}let s=e.arr[o];return s===null&&(e.arr[o]=s=r()),typeof s==`object`?a(s,n,i+1):(0,t.panic)(`Malformed trie`)}function o(e,t){let n=r();for(let r of e)for(let e=t;e<=r.length;e++)a(n,r.slice(e-t,e),0);return{trie:n,depth:t}}e.train=o;function s(){return JSON.parse((0,t.inflateBase64)(n.encodedMarkovChain))}e.load=s;function c(e,n){let{trie:r,depth:a}=e;if(n.length<a)return[1,[]];let o=1,s=[];for(let e=a;e<=n.length;e++){let c=i(r,n.slice(e-a,e),0);if(typeof c==`object`)return(0,t.panic)(`Did we mess up the depth?`);c===void 0&&(c=1e-4),s.push(c),o*=c}return[o**(1/(n.length-a+1)),s]}e.evaluateFull=c;function l(e,t){return c(e,t)[0]}e.evaluate=l;function u(e,t){let n=t-e;return e+Math.floor(Math.random()*n)}function d(e,n,r){(0,t.assert)(n.length===e.depth-1,`State and chain length don't match up`);let a=i(e.trie,n,0);if(typeof a==`number`)return(0,t.panic)(`Wrong depth?`);if(a===void 0)return String.fromCharCode(u(32,127));let o=a.arr.map((e,t)=>e===null?t===0?0:r:e),s=0;for(let e of o)s+=e;let c=u(0,s),l=0;for(let e=0;e<o.length;e++)if(l+=o[e],c<l)return String.fromCharCode(e);return(0,t.panic)(`We screwed up bookkeeping, or randomInt`)}e.generate=d;function f(e,t){console.log(`"${t}": ${l(e,t)}`)}function p(){let e=s();f(e,`url`),f(e,`json`),f(e,`my_property`),f(e,`ordinary`),f(e,`different`),f(e,`189512`),f(e,`2BTZIqw0ntH9MvilQ3ewNY`),f(e,`0uBTNdNGb2OY5lou41iYL52LcDq2`),f(e,`-KpqHmWuDOUnr1hmAhxp`),f(e,`granularity`),f(e,`coverage`),f(e,`postingFrequency`),f(e,`dataFrequency`),f(e,`units`),f(e,`datasetOwner`),f(e,`organization`),f(e,`timePeriod`),f(e,`contactInformation`),f(e,`🚾 🆒 🆓 🆕 🆖 🆗 🆙 🏧`)}e.test=p})),vo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.inferMaps=void 0;var t=a(),n=wa(),r=ha(),i=Q(),o=mo(),s=_o(),c=20,l=50,u=void 0;function d(e){return u===void 0&&(u=(0,s.load)()),(0,s.evaluate)(u,e)}function f(e){let i=e.size;if(i<2)return;if((0,t.iterableEvery)(e.keys(),e=>/^[0-9]+$/.test(e)))return(0,t.setMap)(e.values(),e=>e.type);if(i<l&&(0,t.iterableEvery)(e.values(),e=>(0,n.isPrimitiveStringTypeKind)(e.type.kind)||e.type.kind===`null`))return;if(i<c){let t=Array.from(e.keys()).map(d).reduce((e,t)=>e*t,1)**(1/i),n=22**5;if(t>(i+2)**5/n+(.0025-3**5/n))return}let a,o=new Set,s=!0;for(let[,t]of e){let e=(0,r.removeNullFromType)(t.type)[1];if(e.size>0)if(a!==void 0){if(!(0,n.setOperationCasesEqual)(e,a,!0,(e,t)=>e.structurallyCompatible(t,!0))){s=!1;break}}else a=e;o.add(t.type)}if(s)return o}function p(e,r,a,s){function c(e,n,r){let s=(0,i.defined)((0,t.iterableFirst)(e)),c=f(s.getProperties());return c===void 0?(0,i.panic)(`We shouldn't be replacing class ${s.getCombinedName()} with a map`):n.getMapType(s.getAttributes(),(0,o.unifyTypes)(c,s.getAttributes(),n,(0,o.unionBuilderForUnification)(n,!1,!1,a),a),r)}let l=Array.from(e.allNamedTypesSeparated().objects).filter(e=>e instanceof n.ClassType?!e.isFixed&&f(e.getProperties())!==void 0:!1);return e.rewrite(`infer maps`,r,!1,l.map(e=>[e]),s,c)}e.inferMaps=p})),yo=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r};Object.defineProperty(e,`__esModule`,{value:!0}),e.gatherNames=void 0;var i=r(ta()),o=a(),s=wa(),c=ha(),l=fa(),u=Q(),d=Ia(),f=class{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(e){this._present.has(e)||(this._queue.push(e),this._present.add(e))}unshift(){(0,u.assert)(!this.isEmpty,`Trying to unshift from an empty queue`);let e=this._queue[this._front];return e===void 0?(0,u.panic)(`Value should have been present in queue`):(this._queue[this._front]=void 0,this._front+=1,this._present.delete(e),this._front>this.size&&(this._queue=this._queue.slice(this._front),this._front=0),e)}};function p(e,t,n){function r(t,n){e.attributeStore.set(l.namesTypeAttributeKind,t,n)}if(t)for(let t of e.allTypesUnordered())t.hasNames&&r(t,t.getNames().clearInferred());let a=new f,p=new Map;function m(e,t){if(e.hasNames){let n=e.getNames();n.areInferred||(t=n.names)}let n=p.get(e);if(n===null)return;let r;r=n===void 0?t:t===null?null:(0,o.setUnion)(n,t),r!==null&&r.size>=l.tooManyNamesThreshold&&(r=null),p.set(e,r);let i=(0,d.transformationForType)(e);if(i!==void 0&&m(i.targetType,t),n!==void 0&&r!==null){if(n.size===r.size)return}else if(n===r)return;a.push(e)}for(let[t,n]of e.topLevels)m(n,new Set([t]));for(;!a.isEmpty;){let e=a.unshift(),t=(0,u.defined)(p.get(e));if(e instanceof s.ObjectType){let n=e.getSortedProperties();for(let[e,t]of n)m(t.type,new Set([e]));let r=e.getAdditionalProperties();r!==void 0&&m(r,t===null?null:(0,o.setMap)(t,i.singular))}else (0,c.matchCompoundType)(e,e=>{m(e.items,t===null?null:(0,o.setMap)(t,i.singular))},e=>(0,u.panic)(`We handled this above`),e=>(0,u.panic)(`We handled this above`),e=>(0,u.panic)(`We handled this above`),e=>{let n=(0,o.setSortBy)(e.members,e=>e.kind);for(let e of n)m(e,t)})}if(n)for(let t of e.allTypesUnordered()){let e=p.get(t);if(e===void 0)return;let n=t.index;console.log(`${n}: ${e===null?`*** too many ***`:Array.from(e).join(` `)}`)}let h=new Map,g=new Map,_=new Map;function v(e,t){return t.length===0||(e===void 0&&(e=new Set),e=(0,o.setUnion)(e,t),e.size<l.tooManyNamesThreshold)?e:null}function y(e,t,n){let r=(0,u.defined)(p.get(t)),i=_.get(e);if(i===void 0&&(i=new Set),i.has(t))return;i.add(t),_.set(e,i);let a=(0,d.transformationForType)(t);a!==void 0&&y(e,a.targetType,n);let l=g.get(t),f=h.get(t);if(r===null)l=null,f=null;else{if(e!==void 0&&l!==null){let n=p.get(e);if(n===null)l=null;else if(n!==void 0){let e=[];for(let i of r)e.push(...Array.from(n).map(e=>`${e}_${i}`)),e.push(...Array.from(n).map(e=>`${e}_${i}_${t.kind}`));l=v(l,e)}}if(n!==void 0&&f!==null){let e=[];for(let t of r)e.push(`${t}_${n}`);f=v(f,e)}}if(l!==void 0&&g.set(t,l),f!==void 0&&h.set(t,f),t instanceof s.ObjectType){let n=t.getSortedProperties();for(let[,e]of n)y(t,e.type,void 0);let r=t.getAdditionalProperties();r!==void 0&&y(n.size===0?e:t,r,`value`)}else (0,c.matchCompoundType)(t,t=>{y(e,t.items,`element`)},e=>(0,u.panic)(`We handled this above`),e=>(0,u.panic)(`We handled this above`),e=>(0,u.panic)(`We handled this above`),t=>{let n=(0,o.setSortBy)(t.members,e=>e.kind),r=t.hasNames&&!t.getNames().areInferred||(0,c.nullableFromUnion)(t)===null?t:e;for(let e of n)y(r,e,void 0)})}for(let[,t]of e.topLevels)y(void 0,t,void 0);for(let t of e.allTypesUnordered()){let e=p.get(t);if(e===void 0)continue;if(e===null){h.set(t,null);continue}let n=h.get(t);n!==null&&(n===void 0&&(n=new Set),n=(0,o.setUnion)(n,(0,o.setMap)(e,e=>`${e}_${t.kind}`)),h.set(t,n))}for(let n of e.allTypesUnordered()){let e=p.get(n);if(e===void 0)continue;let i;if(e===null)i=new l.TooManyTypeNames(1);else{let r=g.get(n),a=h.get(n),s;r===null&&a===null?s=void 0:(s=a??new Set,r!=null&&(s=(0,o.setUnion)(s,r))),i=l.TypeNames.makeWithDistance(e,s,t?1:10)}r(n,n.hasNames?n.getNames().add([i]):i)}}e.gatherNames=p})),bo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.expandStrings=void 0;var t=a(),n=ha(),r=Q(),i=na(),o=ma(),s=10,c=5,l=3/4;function u({numValues:e,cases:t}){return e>=s&&t.size<Math.sqrt(e)}function d(e,n,r){let i=r?e.size:Math.min(e.size,n.size);return(0,t.setIntersect)(e,n).size>=i*l}function f(e){return e.length===1&&e[0]===``}function p(e,a,s){let l=e.stringTypeMapping,p=Array.from(a.allTypesUnordered()).filter(e=>e.kind===`string`&&(0,n.stringTypesForType)(e).isRestricted);function m(e){let i=(0,n.stringTypesForType)(e).applyStringTypeMapping(l);if(!i.isRestricted)return;let a=(0,r.defined)(i.cases);if(a.size===0)return;let o=(0,t.iterableReduce)(a.values(),0,(e,t)=>e+t);if(s!==`all`){let e=Array.from(a.keys());if(f(e)||!(0,t.iterableSome)(e,e=>/^(\-|\+)?[0-9]+(\.[0-9]+)?$/.test(e)===!1))return}return{cases:new Set(a.keys()),numValues:o}}let h=new Map,g=[];if(s!==`none`){for(let e of p){let t=m(e);t!==void 0&&h.set(e,t)}function e(e,t){return g.findIndex(n=>d(e,n,t))}for(let n of Array.from(h.keys())){let i=(0,r.defined)(h.get(n)),a=i.cases;if(s===`all`)g.push(a);else{if(!u(i))continue;let n=e(a,!1);n>=0?g[n]=(0,t.setUnion)(g[n],a):g.push(a)}h.delete(n)}s===`all`&&(0,r.assert)(h.size===0);for(let[,n]of h.entries()){if(n.numValues<c)continue;let r=e(n.cases,!0);r>=0&&(g[r]=(0,t.setUnion)(g[r],n.cases))}}function _(e,a,c){(0,r.assert)(e.size===1);let u=(0,r.defined)((0,t.iterableFirst)(e)),d=(0,n.stringTypesForType)(u),p=(0,t.mapFilter)(u.getAttributes(),e=>e!==d),m=d.applyStringTypeMapping(l);if(!m.isRestricted)return a.getStringType(p,o.StringTypes.unrestricted,c);let h=s===`all`?t.areEqual:t.setIsSuperset,_=[],v=(0,r.defined)(m.cases);if(v.size>0){let e=new Set(v.keys()),t=g.find(t=>h(t,e));if(s!==`none`&&!f(Array.from(e))&&t!==void 0)_.push(a.getEnumType(i.emptyTypeAttributes,t));else return a.getStringType(p,o.StringTypes.unrestricted,c)}let y=m.transformations;if(_.length===0&&y.size===1){let e=(0,r.defined)((0,t.iterableFirst)(y));return a.getPrimitiveType(e,p,c)}return _.push(...Array.from(y).map(e=>a.getPrimitiveType(e))),(0,r.assert)(_.length>0,`We got an empty string type`),a.getUnionType(p,new Set(_),c)}return a.rewrite(`expand strings`,l,!1,p.map(e=>[e]),e.debugPrintReconstitution,_)}e.expandStrings=p})),xo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.flattenUnions=void 0;var t=a(),n=va(),r=wa(),i=ha(),o=Q(),s=mo(),c=C(),l=na();function u(e,a,u,d,f){let p=!1;function m(t,r,i){let a=new s.UnifyUnionBuilder(r,d,!0,t=>((0,o.assert)(t.length>0,`Must have at least one type to build union`),t=t.map(t=>r.reconstituteType((0,n.derefTypeRef)(t,e))),t.length===1?t[0]:(p=!0,r.getUnionType(l.emptyTypeAttributes,new Set(t)))));return(0,s.unifyTypes)(t,l.emptyTypeAttributes,r,a,u,i)}let h=(0,t.setFilter)(e.allTypesUnordered(),e=>e instanceof r.UnionType),g=(0,t.setFilter)(h,e=>!e.isCanonical),_=!1,v=(0,i.makeGroupsToFlatten)(g,e=>((0,c.messageAssert)(e.size>0,`IRNoEmptyUnions`,{}),(0,t.iterableSome)(e,e=>e instanceof r.IntersectionType)?(_=!0,!1):!0));return e=e.rewrite(`flatten unions`,a,!1,v,f,m),[e,!p&&!_]}e.flattenUnions=u})),So=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.resolveIntersections=void 0;var t=a(),n=po(),r=wa(),i=ha(),o=Q(),s=na();function c(e){let n=(0,i.setOperationMembersRecursively)(e,void 0)[0];return n.size<=1?!0:(0,t.iterableEvery)(n,e=>!(e instanceof r.UnionType)||e.isCanonical)}function l(e){return(0,t.mapMapEntries)(e.entries(),e=>[e.kind,e.getAttributes()])}var u=class{constructor(){this._primitiveAttributes=new Map,this._arrayAttributes=s.emptyTypeAttributes,this._objectProperties=new Map,this._objectAttributes=s.emptyTypeAttributes,this._additionalPropertyTypes=new Set,this._lostTypeAttributes=!1}updatePrimitiveTypes(e){let n=(0,t.setFilter)(e,e=>(0,r.isPrimitiveTypeKind)(e.kind)),i=l(n);(0,t.mapMergeWithInto)(this._primitiveAttributes,(e,t)=>(0,s.combineTypeAttributes)(`intersect`,e,t),i);let a=(0,t.setMap)(n,e=>e.kind);if(this._primitiveTypes===void 0){this._primitiveTypes=new Set(a);return}let o=(0,t.iterableFind)(this._primitiveTypes,r.isNumberTypeKind)!==void 0&&(0,t.iterableFind)(a,r.isNumberTypeKind)!==void 0;this._primitiveTypes=(0,t.setIntersect)(this._primitiveTypes,a),o&&(0,t.iterableFind)(this._primitiveTypes,r.isNumberTypeKind)===void 0&&(this._primitiveTypes=this._primitiveTypes.add(`integer`))}updateArrayItemTypes(e){let n=(0,t.iterableFind)(e,e=>e instanceof r.ArrayType);if(n===void 0){this._arrayItemTypes=!1;return}this._arrayAttributes=(0,s.combineTypeAttributes)(`intersect`,this._arrayAttributes,n.getAttributes()),this._arrayItemTypes===void 0?this._arrayItemTypes=new Set:this._arrayItemTypes!==!1&&this._arrayItemTypes.add(n.items)}updateObjectProperties(e){let n=(0,t.iterableFind)(e,e=>e instanceof r.ObjectType);if(n===void 0){this._objectProperties=void 0,this._additionalPropertyTypes=void 0;return}this._objectAttributes=(0,s.combineTypeAttributes)(`intersect`,this._objectAttributes,n.getAttributes());let i=n.getAdditionalProperties();if(this._objectProperties===void 0){(0,o.assert)(this._additionalPropertyTypes===void 0);return}let a=(0,t.setUnionInto)(new Set(this._objectProperties.keys()),n.getProperties().keys());for(let e of a){let t=(0,o.defined)(this._objectProperties).get(e),a=n.getProperties().get(e);if(t!==void 0&&a!==void 0){let n=new r.GenericClassProperty(t.typeData.add(a.type),t.isOptional&&a.isOptional);(0,o.defined)(this._objectProperties).set(e,n)}else if(t!==void 0&&i!==void 0){let n=new r.GenericClassProperty(t.typeData.add(i),t.isOptional);(0,o.defined)(this._objectProperties).set(e,n)}else if(t!==void 0)(0,o.defined)(this._objectProperties).delete(e);else if(a!==void 0&&this._additionalPropertyTypes!==void 0){let t=new Set(this._additionalPropertyTypes).add(a.type);(0,o.defined)(this._objectProperties).set(e,new r.GenericClassProperty(t,a.isOptional))}else if(a!==void 0)(0,o.defined)(this._objectProperties).delete(e);else return(0,o.mustNotHappen)()}this._additionalPropertyTypes!==void 0&&i!==void 0?this._additionalPropertyTypes.add(i):(this._additionalPropertyTypes!==void 0||i!==void 0)&&(this._additionalPropertyTypes=void 0,this._lostTypeAttributes=!0)}addUnionSet(e){this.updatePrimitiveTypes(e),this.updateArrayItemTypes(e),this.updateObjectProperties(e)}addType(e){let t=e.getAttributes();return(0,i.matchTypeExhaustive)(e,e=>(0,o.panic)(`There shouldn't be a none type`),e=>(0,o.panic)(`The any type should have been filtered out in setOperationMembersRecursively`),e=>this.addUnionSet([e]),e=>this.addUnionSet([e]),e=>this.addUnionSet([e]),e=>this.addUnionSet([e]),e=>this.addUnionSet([e]),e=>this.addUnionSet([e]),e=>(0,o.panic)(`We should never see class types in intersections`),e=>(0,o.panic)(`We should never see map types in intersections`),e=>this.addUnionSet([e]),e=>(0,o.panic)(`We should never see enum types in intersections`),e=>{t=(0,s.combineTypeAttributes)(`intersect`,[t].concat(Array.from(e.members).map(e=>e.getAttributes()))),this.addUnionSet(e.members)},e=>this.addUnionSet([e])),(0,s.makeTypeAttributesInferred)(t)}get arrayData(){return this._arrayItemTypes===void 0||this._arrayItemTypes===!1?(0,o.panic)(`This should not be called if the type can't be an array`):this._arrayItemTypes}get objectData(){if(this._objectProperties===void 0){(0,o.assert)(this._additionalPropertyTypes===void 0);return}return[this._objectProperties,this._additionalPropertyTypes]}get enumCases(){return(0,o.panic)(`We don't support enums in intersections`)}getMemberKinds(){let e=(0,t.mapMap)((0,o.defined)(this._primitiveTypes).entries(),e=>(0,o.defined)(this._primitiveAttributes.get(e))),n=this._primitiveAttributes.get(`double`);return n!==void 0&&!e.has(`double`)&&e.has(`integer`)&&(0,t.mapUpdateInto)(e,`integer`,e=>(0,s.combineTypeAttributes)(`intersect`,(0,o.defined)(e),n)),this._arrayItemTypes!==void 0&&this._arrayItemTypes!==!1?e.set(`array`,this._arrayAttributes):this._arrayAttributes.size>0&&(this._lostTypeAttributes=!0),this._objectProperties===void 0?this._objectAttributes.size>0&&(this._lostTypeAttributes=!0):e.set(`object`,this._objectAttributes),e}get lostTypeAttributes(){return this._lostTypeAttributes}},d=class extends n.UnionBuilder{constructor(){super(...arguments),this._createdNewIntersections=!1}makeIntersection(e,n){let r=(0,t.setMap)(e,e=>this.typeBuilder.reconstituteTypeRef(e.typeRef)),i=(0,o.defined)((0,t.iterableFirst)(r));return r.size===1?(this.typeBuilder.addAttributes(i,n),i):(this._createdNewIntersections=!0,this.typeBuilder.getUniqueIntersectionType(n,r))}get createdNewIntersections(){return this._createdNewIntersections}makeObject(e,n,r){if(e===void 0)return(0,o.panic)(`Either properties or additional properties must be given to make an object type`);let[i,a]=e,c=(0,t.mapMap)(i,e=>this.typeBuilder.makeClassProperty(this.makeIntersection(e.typeData,s.emptyTypeAttributes),e.isOptional)),l=a===void 0?void 0:this.makeIntersection(a,s.emptyTypeAttributes);return this.typeBuilder.getUniqueObjectType(n,c,l,r)}makeArray(e,t,n){let r=this.makeIntersection(e,s.emptyTypeAttributes);return this.typeBuilder.getArrayType(t,r,n)}};function f(e,n,a){let l=!1;function f(e,n,a){let c=(0,t.setFilter)(e,e=>e instanceof r.IntersectionType),[f,p]=(0,i.setOperationMembersRecursively)(Array.from(c),`intersect`);if(f.size===0)return n.getPrimitiveType(`any`,p,a);if(f.size===1)return n.reconstituteType((0,o.defined)((0,t.iterableFirst)(f)),p,a);let m=new u,h=(0,s.makeTypeAttributesInferred)((0,s.combineTypeAttributes)(`intersect`,Array.from(f).map(e=>m.addType(e)))),g=(0,s.combineTypeAttributes)(`intersect`,p,h),_=new d(n),v=_.buildUnion(m,!0,g,a);return _.createdNewIntersections&&(l=!0),v}let p=(0,t.setFilter)(e.allTypesUnordered(),e=>e instanceof r.IntersectionType),m=(0,t.setFilter)(p,c),h=(0,i.makeGroupsToFlatten)(m,void 0);return e=e.rewrite(`resolve intersections`,n,!1,h,a,f),[e,!l&&p.size===m.size]}e.resolveIntersections=f})),Co=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.replaceObjectType=void 0;var t=a(),n=Q(),r=na();function i(e,i,a,o,s){function c(e,i,a){let o=(0,n.defined)((0,t.iterableFirst)(e)),s=o.getAttributes(),c=o.getProperties(),l=o.getAdditionalProperties();function u(){return(0,t.mapMap)(c,e=>i.makeClassProperty(i.reconstituteTypeRef(e.typeRef),e.isOptional))}function d(){return i.getUniqueClassType(s,!0,u(),a)}function f(){return i.reconstituteType((0,n.defined)(l))}if(l===void 0)return d();if(c.size===0)return i.getMapType(s,f(),a);if(l.kind===`any`)return i.setLostTypeAttributes(),d();let p=(0,t.setMap)(c.values(),e=>e.type).add(l),m=i.lookupTypeRefs(Array.from(p).map(e=>e.typeRef));if(m===void 0){let e=(0,t.setMap)(p,e=>i.reconstituteType(e));m=i.getUniqueUnionType(r.emptyTypeAttributes,new Set(e))}return i.getMapType(s,m,a)}let l=(0,t.setFilter)(e.allTypesUnordered(),e=>e.kind===`object`),u=o?(0,t.setFilter)(l,e=>e.getProperties().size===0||e.getAdditionalProperties()===void 0):l,d=Array.from(u).map(e=>[e]);return e.rewrite(`replace object type`,i,!1,d,s,c)}e.replaceObjectType=i})),wo=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,`__esModule`,{value:!0}),e.CompressedJSONFromString=e.CompressedJSON=e.valueTag=e.makeValue=e.Tag=void 0;var n=a(),r=Q(),i=wa(),o=ma(),s;(function(e){e[e.Null=0]=`Null`,e[e.False=1]=`False`,e[e.True=2]=`True`,e[e.Integer=3]=`Integer`,e[e.Double=4]=`Double`,e[e.InternedString=5]=`InternedString`,e[e.UninternedString=6]=`UninternedString`,e[e.Object=7]=`Object`,e[e.Array=8]=`Array`,e[e.StringFormat=9]=`StringFormat`,e[e.TransformedString=10]=`TransformedString`})(s=e.Tag||={});var c=4,l=(1<<c)-1;function u(e,t){return e|t<<c}e.makeValue=u;function d(e,t){return(0,r.assert)(f(e)===t,`Trying to get index for value with invalid tag`),e>>c}function f(e){return e&l}e.valueTag=f;var p=class{constructor(e,t){this.dateTimeRecognizer=e,this.handleRefs=t,this._contextStack=[],this._strings=[],this._stringIndexes={},this._objects=[],this._arrays=[],this.getObjectForValue=e=>this._objects[d(e,s.Object)],this.getArrayForValue=e=>this._arrays[d(e,s.Array)],this.internArray=e=>{let t=this._arrays.length;return this._arrays.push(e),u(s.Array,t)}}parseSync(e){return(0,r.panic)(`parseSync not implemented in CompressedJSON`)}getStringForValue(e){let t=f(e);return(0,r.assert)(t===s.InternedString||t===s.TransformedString),this._strings[d(e,t)]}getStringFormatTypeKind(e){let t=this._strings[d(e,s.StringFormat)];return!(0,i.isPrimitiveStringTypeKind)(t)||t===`string`?(0,r.panic)(`Not a transformed string type kind`):t}get context(){return(0,r.defined)(this._ctx)}internString(e){if(Object.prototype.hasOwnProperty.call(this._stringIndexes,e))return this._stringIndexes[e];let t=this._strings.length;return this._strings.push(e),this._stringIndexes[e]=t,t}makeString(e){let t=u(s.InternedString,this.internString(e));return(0,r.assert)(typeof t==`number`,`Interned string value is not a number: ${t}`),t}internObject(e){let t=this._objects.length;return this._objects.push(e),u(s.Object,t)}get isExpectingRef(){return this._ctx!==void 0&&this._ctx.currentKey===`$ref`}commitValue(e){if((0,r.assert)(typeof e==`number`,`CompressedJSON value is not a number: ${e}`),this._ctx===void 0)(0,r.assert)(this._rootValue===void 0,`Committing value but nowhere to commit to - root value still there.`),this._rootValue=e;else if(this._ctx.currentObject!==void 0){if(this._ctx.currentKey===void 0)return(0,r.panic)(`Must have key and can't have string when committing`);this._ctx.currentObject.push(this.makeString(this._ctx.currentKey),e),this._ctx.currentKey=void 0}else if(this._ctx.currentArray!==void 0)this._ctx.currentArray.push(e);else return(0,r.panic)(`Committing value but nowhere to commit to`)}commitNull(){this.commitValue(u(s.Null,0))}commitBoolean(e){this.commitValue(u(e?s.True:s.False,0))}commitNumber(e){let t=e?s.Double:s.Integer;this.commitValue(u(t,0))}commitString(e){let t;if(this.handleRefs&&this.isExpectingRef)t=this.makeString(e);else{let n=(0,o.inferTransformedStringTypeKindForString)(e,this.dateTimeRecognizer);t=n===void 0?e.length<=64?this.makeString(e):u(s.UninternedString,0):(0,r.defined)(i.transformedStringTypeTargetTypeKindsMap.get(n)).attributesProducer===void 0?u(s.StringFormat,this.internString(n)):u(s.TransformedString,this.internString(e))}this.commitValue(t)}finish(){let e=this._rootValue;return e===void 0?(0,r.panic)(`Finished without root document`):((0,r.assert)(this._ctx===void 0&&this._contextStack.length===0,`Finished with contexts present`),this._rootValue=void 0,e)}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,r.defined)(this._ctx).currentObject=[]}setPropertyKey(e){let t=this.context;t.currentKey=e}finishObject(){let e=this.context.currentObject;if(e===void 0)return(0,r.panic)(`Object ended but not started`);this.popContext(),this.commitValue(this.internObject(e))}pushArrayContext(){this.pushContext(),(0,r.defined)(this._ctx).currentArray=[]}finishArray(){let e=this.context.currentArray;if(e===void 0)return(0,r.panic)(`Array ended but not started`);this.popContext(),this.commitValue(this.internArray(e))}popContext(){(0,r.assert)(this._ctx!==void 0,`Popping context when there isn't one`),this._ctx=this._contextStack.pop()}equals(e){return this===e}hashCode(){let e=n.hashCodeInit;for(let t of this._strings)e=(0,n.addHashCode)(e,(0,n.hashString)(t));for(let t of Object.getOwnPropertyNames(this._stringIndexes).sort())e=(0,n.addHashCode)(e,(0,n.hashString)(t)),e=(0,n.addHashCode)(e,this._stringIndexes[t]);for(let t of this._objects)for(let r of t)e=(0,n.addHashCode)(e,r);for(let t of this._arrays)for(let r of t)e=(0,n.addHashCode)(e,r);return e}};e.CompressedJSON=p,e.CompressedJSONFromString=class extends p{parse(e){return t(this,void 0,void 0,function*(){return this.parseSync(e)})}parseSync(e){let t=JSON.parse(e);return this.process(t),this.finish()}process(e){if(e===null)this.commitNull();else if(typeof e==`boolean`)this.commitBoolean(e);else if(typeof e==`string`)this.commitString(e);else if(typeof e==`number`){let t=e!==Math.floor(e)||e<-(2**53-1)||e>2**53-1;this.commitNumber(t)}else if(Array.isArray(e)){this.pushArrayContext();for(let t of e)this.process(t);this.finishArray()}else if(typeof e==`object`){this.pushObjectContext();for(let t of Object.getOwnPropertyNames(e))this.setPropertyKey(t),this.process(e[t]);this.finishObject()}else return(0,r.panic)(`Invalid JSON object`)}}})),To=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.TypeInference=void 0;var t=wo(),n=Q(),r=po(),i=wa(),a=na(),o=ma(),s=va(),c=C(),l=ha();function u(e,t){if(e.length!==0)if(Array.isArray(e[0]))for(let n of e)u(n,t);else t(e)}function d(e,t){u(e,e=>{for(let n of e)t(n)})}var f=class extends r.UnionBuilder{constructor(e,t,n){super(e),this._typeInference=t,this._fixed=n}makeObject(e,t,n){return this._typeInference.inferClassType(t,e,this._fixed,n)}makeArray(e,t,n){return this.typeBuilder.getArrayType(t,this._typeInference.inferType(a.emptyTypeAttributes,e,this._fixed,n))}};function p(e){return!0}e.TypeInference=class{constructor(e,t,n,r){this._cjson=e,this._typeBuilder=t,this._inferMaps=n,this._inferEnums=r}addValuesToAccumulator(e,r){d(e,e=>{let s=(0,t.valueTag)(e);switch(s){case t.Tag.Null:r.addPrimitive(`null`,a.emptyTypeAttributes);break;case t.Tag.False:case t.Tag.True:r.addPrimitive(`bool`,a.emptyTypeAttributes);break;case t.Tag.Integer:r.addPrimitive(`integer`,a.emptyTypeAttributes);break;case t.Tag.Double:r.addPrimitive(`double`,a.emptyTypeAttributes);break;case t.Tag.InternedString:if(this._inferEnums){let t=this._cjson.getStringForValue(e);p(t)?r.addStringCase(t,1,a.emptyTypeAttributes):r.addStringType(`string`,a.emptyTypeAttributes)}else r.addStringType(`string`,a.emptyTypeAttributes);break;case t.Tag.UninternedString:r.addStringType(`string`,a.emptyTypeAttributes);break;case t.Tag.Object:r.addObject(this._cjson.getObjectForValue(e),a.emptyTypeAttributes);break;case t.Tag.Array:r.addArray(this._cjson.getArrayForValue(e),a.emptyTypeAttributes);break;case t.Tag.StringFormat:{let t=this._cjson.getStringFormatTypeKind(e);r.addStringType(`string`,a.emptyTypeAttributes,new o.StringTypes(new Map,new Set([t])));break}case t.Tag.TransformedString:{let t=this._cjson.getStringForValue(e),a=(0,o.inferTransformedStringTypeKindForString)(t,this._cjson.dateTimeRecognizer);if(a===void 0)return(0,n.panic)(`TransformedString does not have a kind`);let s=(0,n.defined)(i.transformedStringTypeTargetTypeKindsMap.get(a)).attributesProducer;if(s===void 0)return(0,n.panic)(`TransformedString does not have attribute producer`);r.addStringType(`string`,s(t),new o.StringTypes(new Map,new Set([a])));break}default:return(0,n.assertNever)(s)}})}inferType(e,t,n,r){let i=this.accumulatorForArray(t);return this.makeTypeFromAccumulator(i,e,n,r)}resolveRef(e,t){if(!e.startsWith(`#/`))return(0,c.messageError)(`InferenceJSONReferenceNotRooted`,{reference:e});let n=e.split(`/`).slice(1),r=this._typeBuilder.typeGraph,a=t;for(let t of n){let n=(0,s.derefTypeRef)(a,r);if(n instanceof i.UnionType){let t=(0,l.nullableFromUnion)(n);if(t===null)return(0,c.messageError)(`InferenceJSONReferenceToUnion`,{reference:e});n=t}if(n instanceof i.ClassType){let r=n.getProperties().get(t);if(r===void 0)return(0,c.messageError)(`InferenceJSONReferenceWrongProperty`,{reference:e});a=r.typeRef}else if(n instanceof i.MapType)a=n.values.typeRef;else if(n instanceof i.ArrayType){if(t.match(`^[0-9]+$`)===null)return(0,c.messageError)(`InferenceJSONReferenceInvalidArrayIndex`,{reference:e});a=n.items.typeRef}else return(0,c.messageError)(`InferenceJSONReferenceWrongProperty`,{reference:e})}return a}inferTopLevelType(e,t,r){(0,n.assert)(this._refIntersections===void 0,`Didn't reset ref intersections - nested invocations?`),this._cjson.handleRefs&&(this._refIntersections=[]);let i=this.inferType(e,t,r);if(this._cjson.handleRefs){for(let[e,t]of(0,n.defined)(this._refIntersections)){let n=t.map(e=>this.resolveRef(e,i));this._typeBuilder.setSetOperationMembers(e,new Set(n))}this._refIntersections=void 0}return i}accumulatorForArray(e){let t=new r.UnionAccumulator(!0);return this.addValuesToAccumulator(e,t),t}makeTypeFromAccumulator(e,t,n,r){return new f(this._typeBuilder,this,n).buildUnion(e,!1,t,r)}inferClassType(e,i,o,s){let c=[],l={};if(u(i,e=>{for(let t=0;t<e.length;t+=2){let n=this._cjson.getStringForValue(e[t]),r=e[t+1];Object.prototype.hasOwnProperty.call(l,n)||(c.push(n),l[n]=[]),l[n].push(r)}}),this._cjson.handleRefs&&c.length===1&&c[0]===`$ref`){let r=l.$ref;if(r.every(e=>(0,t.valueTag)(e)===t.Tag.InternedString)){let t=r.map(e=>this._cjson.getStringForValue(e)),i=this._typeBuilder.getUniqueIntersectionType(e,void 0);return(0,n.defined)(this._refIntersections).push([i,t]),i}}if(this._inferMaps&&c.length>500){let t=new r.UnionAccumulator(!0);for(let e of c)this.addValuesToAccumulator(l[e],t);let n=this.makeTypeFromAccumulator(t,a.emptyTypeAttributes,o);return this._typeBuilder.getMapType(e,n,s)}let d=new Map;for(let e of c){let t=l[e],n=this.inferType(a.emptyTypeAttributes,t,!1),r=t.length<i.length;d.set(e,this._typeBuilder.makeClassProperty(n,r))}return o?this._typeBuilder.getUniqueClassType(e,!0,d,s):this._typeBuilder.getClassType(e,d,s)}}})),Eo=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,`__esModule`,{value:!0}),e.InputData=e.jsonInputForTargetLanguage=e.JSONInput=void 0;var n=a(),r=wo(),i=Q(),o=C(),s=fa(),c=Fa(),l=To(),u=fo();function d(e,t,r){return(0,o.messageError)(`MiscJSONParseError`,{description:(0,n.withDefault)(t,`input`),address:e,message:(0,i.errorMessage)(r)})}var f=class{constructor(e){this._compressedJSON=e,this.kind=`json`,this.needIR=!0,this.needSchemaProcessing=!1,this._topLevels=new Map}addSample(e,t){let n=this._topLevels.get(e);n===void 0&&(n={samples:[],description:void 0},this._topLevels.set(e,n)),n.samples.push(t)}setDescription(e,t){let n=this._topLevels.get(e);if(n===void 0)return(0,i.panic)(`Trying to set description for a top-level that doesn't exist`);n.description=t}addSamples(e,t,n){for(let r of t)this.addSample(e,r),n!==void 0&&this.setDescription(e,n)}addSource(e){return t(this,void 0,void 0,function*(){let{name:r,samples:i,description:a}=e;try{let e=yield(0,n.arrayMapSync)(i,e=>t(this,void 0,void 0,function*(){return yield this._compressedJSON.parse(e)}));this.addSamples(r,e,a)}catch(e){return d(r,a,e)}})}addSourceSync(e){let{name:t,samples:n,description:r}=e;try{let e=n.map(e=>this._compressedJSON.parseSync(e));this.addSamples(t,e,r)}catch(e){return d(t,r,e)}}singleStringSchemaSource(){}addTypes(e,n,r,i,a){return t(this,void 0,void 0,function*(){return this.addTypesSync(e,n,r,i,a)})}addTypesSync(e,t,n,r,i){let a=new l.TypeInference(this._compressedJSON,t,n,r);for(let[e,{samples:n,description:r}]of this._topLevels){let o=a.inferTopLevelType((0,s.makeNamesTypeAttributes)(e,!1),n,i);if(t.addTopLevel(e,o),r!==void 0){let e=c.descriptionTypeAttributeKind.makeAttributes(new Set([r]));t.addAttributes(o,e)}}}};e.JSONInput=f;function p(e,t,n=!1){return typeof e==`string`&&(e=(0,i.defined)((0,u.languageNamed)(e,t))),new f(new r.CompressedJSONFromString(e.dateTimeRecognizer,n))}e.jsonInputForTargetLanguage=p,e.InputData=class{constructor(){this._inputs=new Set}addInput(e){this._inputs=this._inputs.add(e)}getOrAddInput(e,t){let r=(0,n.iterableFind)(this._inputs,t=>t.kind===e);return r===void 0&&(r=t(),this.addInput(r)),r}addSource(e,n,r){return t(this,void 0,void 0,function*(){yield this.getOrAddInput(e,r).addSource(n)})}addSourceSync(e,t,n){this.getOrAddInput(e,n).addSourceSync(t)}addTypes(e,n,r,i,a){return t(this,void 0,void 0,function*(){for(let t of this._inputs)yield t.addTypes(e,n,r,i,a)})}addTypesSync(e,t,n,r,i){for(let a of this._inputs)a.addTypesSync(e,t,n,r,i)}get needIR(){return(0,n.iterableSome)(this._inputs,e=>e.needIR)}get needSchemaProcessing(){return(0,n.iterableSome)(this._inputs,e=>e.needSchemaProcessing)}singleStringSchemaSource(){let e=(0,n.setFilterMap)(this._inputs,e=>e.singleStringSchemaSource());return e.size>1?(0,i.panic)(`We have more than one input with a string schema source`):(0,n.iterableFirst)(e)}}})),Do=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.flattenStrings=void 0;var t=a(),n=ha(),r=Q(),i=na();function o(e){let t=e.stringTypeMembers;if(t.size<=1)return;let i=e.findMember(`string`);if(i!==void 0)return(0,r.assert)(!(0,n.stringTypesForType)(i).isRestricted,`We must only flatten strings if we have no restriced strings`),t}function s(e,a,s){(0,r.assert)(e.size===1);let c=(0,r.defined)((0,t.iterableFirst)(e)),l=(0,r.defined)(o(c)),u=(0,n.combineTypeAttributesOfTypes)(`union`,l),d=[];for(let e of c.members)l.has(e)||d.push(a.reconstituteType(e));return d.length===0?a.getStringType((0,i.combineTypeAttributes)(`union`,u,c.getAttributes()),void 0,s):(d.push(a.getStringType(u,void 0)),a.getUnionType(c.getAttributes(),new Set(d),s))}function c(e,t,n){let r=e.allNamedTypesSeparated().unions,i=Array.from(r).filter(o).map(e=>[e]);return e.rewrite(`flatten strings`,t,!1,i,n,s)}e.flattenStrings=c})),Oo=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.makeTransformations=void 0;var t=a(),n=va(),r=wa(),i=Q(),o=Ia(),s=na(),c=ma(),l=Na();function u(e,t,r,i){let a=new o.Transformation(e,t,r);return i&&(console.log(`transformation for ${(0,n.typeRefIndex)(t)}:`),a.debugPrint(),console.log(`reverse:`),a.reverse.debugPrint()),o.transformationTypeAttributeKind.makeAttributes(a)}function d(e,t,n,r){let i=Array.from(t.cases).sort().map(t=>new o.StringMatchTransformer(e,n,new o.StringProducerTransformer(e,n,r,t),t));return new o.ChoiceTransformer(e,n,i)}function f(e,n,a,f,p){let m=n.typeGraph;(0,i.assert)(e.members.size>0,`We can't have empty unions`);let h=s.emptyTypeAttributes;function g(t){if((0,r.isPrimitiveStringTypeKind)(t.kind)){let i=(0,r.targetTypeKindForTransformedStringTypeKind)(t.kind);if(i!==void 0){let r=e.findMember(i);return h=(0,s.combineTypeAttributes)(`union`,h,t.getAttributes()),r===void 0?n.getPrimitiveType(i):n.reconstituteType(r)}}return n.reconstituteType(t)}let _=(0,t.mapMapEntries)(e.members.entries(),e=>[e.kind,g(e)]),v=new Set(_.values()),y=v.size>1;y||n.setLostTypeAttributes();let b=y?n.getUnionType(e.getAttributes(),v):(0,i.defined)((0,t.iterableFirst)(v));function x(e){return(0,i.defined)(_.get(e))}function S(e){if(y)return new o.UnionInstantiationTransformer(m,e)}function C(t){if(e.findMember(t)===void 0)return;let n=x(t);return new o.DecodingTransformer(m,n,S(n))}let w;function T(){return w===void 0&&(w=n.getStringType(s.emptyTypeAttributes,c.StringTypes.unrestricted)),w}function E(e){let t=x(e.kind);if(e.kind===`string`){let n=(0,l.minMaxLengthForType)(e);if(n===void 0)return S(t);let[r,i]=n;return new o.MinMaxLengthCheckTransformer(m,T(),S(t),r,i)}else if(e instanceof r.EnumType&&f.has(e))return d(m,e,T(),S(t));else return new o.ParseStringTransformer(m,T(),S(t))}let D=(0,t.arraySortByInto)(Array.from(e.stringTypeMembers),e=>e.kind),O;if(D.length===0)O=void 0;else if(D.length===1){let e=D[0];O=new o.DecodingTransformer(m,T(),E(e))}else O=new o.DecodingTransformer(m,T(),new o.ChoiceTransformer(m,T(),D.map(e=>(0,i.defined)(E(e)))));let k=C(`class`),A=C(`map`);(0,i.assert)(k===void 0||A===void 0,`Can't have both class and map in a transformed union`);let j=k===void 0?A:k,M=u(m,b,new o.DecodingChoiceTransformer(m,n.getPrimitiveType(`any`),C(`null`),C(`integer`),C(`double`),C(`bool`),O,C(`array`),j),p);return n.getPrimitiveType(`any`,(0,s.combineTypeAttributes)(`union`,M,h),a)}function p(e,t,n,r){let i=t.getPrimitiveType(`any`),a=t.getArrayType(s.emptyTypeAttributes,i),c=t.reconstituteType(e.items),l=new o.ArrayDecodingTransformer(t.typeGraph,a,void 0,c,new o.DecodingTransformer(t.typeGraph,i,void 0)),d=t.getArrayType(t.reconstituteTypeAttributes(e.getAttributes()),c),f=u(t.typeGraph,d,l,r);return t.getArrayType(f,i,n)}function m(e,t,n,r){let i=t.getStringType(s.emptyTypeAttributes,c.StringTypes.unrestricted),a=new o.DecodingTransformer(t.typeGraph,i,d(t.typeGraph,e,i)),l=t.getEnumType(e.getAttributes(),e.cases),f=u(t.typeGraph,l,a,r);return t.getStringType(f,c.StringTypes.unrestricted,n)}function h(e,t,n,r){let a=t.getStringType(s.emptyTypeAttributes,c.StringTypes.unrestricted),[d,f]=(0,i.defined)((0,l.minMaxValueForType)(e)),p=new o.DecodingTransformer(t.typeGraph,a,new o.MinMaxValueTransformer(t.typeGraph,a,void 0,d,f)),m=t.reconstituteTypeAttributes(e.getAttributes()),h=u(t.typeGraph,t.getPrimitiveType(`double`,m,void 0),p,r);return t.getPrimitiveType(`double`,h,n)}function g(e,t,n,r){let[a,d]=(0,i.defined)((0,l.minMaxLengthForType)(e)),f=t.reconstituteTypeAttributes(e.getAttributes()),p=t.getStringType(s.emptyTypeAttributes,c.StringTypes.unrestricted),m=new o.DecodingTransformer(t.typeGraph,p,new o.MinMaxLengthCheckTransformer(t.typeGraph,p,void 0,a,d)),h=u(t.typeGraph,t.getStringType(f,void 0),m,r);return t.getStringType(h,c.StringTypes.unrestricted,n)}function _(e,n,i,a,l){let d=i.reconstituteTypeAttributes(e.getAttributes()),f=(0,t.withDefault)((0,r.targetTypeKindForTransformedStringTypeKind)(n),n),p=i.getStringType(s.emptyTypeAttributes,c.StringTypes.unrestricted),m=new o.DecodingTransformer(i.typeGraph,p,new o.ParseStringTransformer(i.typeGraph,p,void 0)),h=u(i.typeGraph,i.getPrimitiveType(f,d),m,l);return i.getStringType(h,c.StringTypes.unrestricted,a)}function v(e,n,a){let o=(0,t.setFilter)(n.allTypesUnordered(),e=>{if(a.needsTransformerForType(e))return!0;if(!(e instanceof r.UnionType))return!1;let n=e.stringTypeMembers;return n.size<=1?!1:(0,t.iterableSome)(n,e=>a.needsTransformerForType(e))});function s(n,a,s){let c=(0,i.defined)((0,t.iterableFirst)(n));return c instanceof r.UnionType?f(c,a,s,o,e.debugPrintTransformations):c instanceof r.ArrayType?p(c,a,s,e.debugPrintTransformations):c instanceof r.EnumType?m(c,a,s,e.debugPrintTransformations):c.kind===`string`?g(c,a,s,e.debugPrintTransformations):(0,r.isNumberTypeKind)(c.kind)?h(c,a,s,e.debugPrintTransformations):(0,r.isPrimitiveStringTypeKind)(c.kind)?_(c,c.kind,a,s,e.debugPrintTransformations):(0,i.panic)(`Cannot make transformation for type ${c.kind}`)}let c=Array.from(o).map(e=>[e]);return n.rewrite(`make-transformations`,e.stringTypeMapping,!1,c,e.debugPrintReconstitution,s)}e.makeTransformations=v})),ko=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r},i=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).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;var o=a(),s=r(fo()),c=Q(),l=ho(),u=vo(),d=pa(),f=va(),p=fa(),m=yo(),h=bo(),g=xo(),_=So(),v=Co(),y=C(),b=Eo(),x=Do(),S=Oo();function w(e){if(typeof e==`object`)return e;let t=s.languageNamed(e);return t===void 0?(0,y.messageError)(`DriverUnknownOutputLanguage`,{lang:e}):t}e.getTargetLanguage=w,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,
917
+ 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.
918
+ 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.
919
+ 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,
920
+ 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
921
+ '{ $ref: "#/foo/bar" }' to refer
922
+ to another part of the input.`,order:8}},e.inferenceFlagNames=Object.getOwnPropertyNames(e.inferenceFlagsObject),e.inferenceFlags=e.inferenceFlagsObject;var T={lang:`ts`,inputData:new b.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 E(){let t={};for(let n of e.inferenceFlagNames)t[n]=!0;return t}e.defaultInferenceFlags=E();var D=class{constructor(t){this._options=Object.assign({},T,e.defaultInferenceFlags);for(let e of Object.getOwnPropertyNames(t)){let n=t[e];n!==void 0&&(this._options[e]=n)}}get stringTypeMapping(){let t=w(this._options.lang),n=new Map(t.stringTypeMapping);for(let t of e.inferenceFlagNames){let r=e.inferenceFlags[t].stringType;!this._options[t]&&r!==void 0&&n.set(r,`string`)}return n}get debugPrintReconstitution(){return this._options.debugPrintReconstitution===!0}get debugPrintTransformations(){return this._options.debugPrintTransformations}get debugPrintSchemaResolving(){return this._options.debugPrintSchemaResolving}timeSync(e,t){return i(this,void 0,void 0,function*(){let n=Date.now(),r=yield t(),i=Date.now();return this._options.debugPrintTimes&&console.log(`${e} took ${i-n}ms`),r})}time(e,t){let n=Date.now(),r=t(),i=Date.now();return this._options.debugPrintTimes&&console.log(`${e} took ${i-n}ms`),r}makeGraphInputs(){let e=w(this._options.lang),t=this.stringTypeMapping;return{targetLanguage:e,stringTypeMapping:t,conflateNumbers:!e.supportsUnionsWithBothNumberTypes,typeBuilder:new d.TypeBuilder(0,t,this._options.alphabetizeProperties,this._options.allPropertiesOptional,this._options.checkProvenance,!1)}}makeGraph(e){return i(this,void 0,void 0,function*(){let t=this.makeGraphInputs();return yield this.timeSync(`read input`,()=>i(this,void 0,void 0,function*(){return yield e.addTypes(this,t.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)})),this.processGraph(e,t)})}makeGraphSync(e){let t=this.makeGraphInputs();return this.time(`read input`,()=>e.addTypesSync(this,t.typeBuilder,this._options.inferMaps,this._options.inferEnums,this._options.fixedTopLevels)),this.processGraph(e,t)}processGraph(e,t){let{targetLanguage:n,stringTypeMapping:r,conflateNumbers:i,typeBuilder:a}=t,o=a.finish();this._options.debugPrintGraph&&(o.setPrintOnRewrite(),o.printGraph());let s=this.debugPrintReconstitution;(a.didAddForwardingIntersection||!this._options.ignoreJsonRefs)&&this.time(`remove indirection intersections`,()=>o=(0,f.removeIndirectionIntersections)(o,r,s));let d=!1;if(e.needSchemaProcessing||!this._options.ignoreJsonRefs){let e=!1;do{let t=o;e||this.time(`resolve intersections`,()=>[o,e]=(0,_.resolveIntersections)(o,r,s)),d||this.time(`flatten unions`,()=>[o,d]=(0,g.flattenUnions)(o,r,i,!0,s)),o===t&&(0,c.assert)(e&&d,`Graph didn't change but we're not done`)}while(!e||!d)}this.time(`replace object type`,()=>o=(0,v.replaceObjectType)(o,r,i,n.supportsFullObjectType,s));do this.time(`flatten unions`,()=>[o,d]=(0,g.flattenUnions)(o,r,i,!1,s));while(!d);if(this._options.combineClasses){let e=this.time(`combine classes`,()=>(0,l.combineClasses)(this,o,this._options.alphabetizeProperties,!0,!1,s));e===o?o=e:this.time(`combine classes cleanup`,()=>o=(0,l.combineClasses)(this,e,this._options.alphabetizeProperties,!1,!0,s))}if(this._options.inferMaps)for(;;){let e=this.time(`infer maps`,()=>(0,u.inferMaps)(o,r,!0,s));if(e===o)break;o=e}let p=e.needSchemaProcessing?`all`:this._options.inferEnums?`infer`:`none`;return this.time(`expand strings`,()=>o=(0,h.expandStrings)(this,o,p)),this.time(`flatten unions`,()=>[o,d]=(0,g.flattenUnions)(o,r,i,!1,s)),(0,c.assert)(d,`We should only have to flatten unions once after expanding strings`),e.needSchemaProcessing&&this.time(`flatten strings`,()=>o=(0,x.flattenStrings)(o,r,s)),this.time(`none to any`,()=>o=(0,f.noneToAny)(o,r,s)),n.supportsOptionalClassProperties||this.time(`optional to nullable`,()=>o=(0,f.optionalToNullable)(o,r,s)),this.time(`fixed point`,()=>o=o.rewriteFixedPoint(!1,s)),this.time(`make transformations`,()=>o=(0,S.makeTransformations)(this,o,n)),this.time(`flatten unions`,()=>[o,d]=(0,g.flattenUnions)(o,r,i,!1,s)),(0,c.assert)(d,`We should only have to flatten unions once after making transformations`),this.time(`GC`,()=>o=o.garbageCollect(this._options.alphabetizeProperties,s)),this._options.debugPrintGraph&&console.log(`
923
+ # gather names`),this.time(`gather names`,()=>(0,m.gatherNames)(o,!e.needSchemaProcessing,this._options.debugPrintGatherNames)),this._options.debugPrintGraph&&o.printGraph(),o}makeSimpleTextResult(e){return new Map([[this._options.outputFilename,{lines:e,annotations:[]}]])}preRun(){(0,p.initTypeNames)();let e=w(this._options.lang),t=this._options.inputData,n=t.needIR||e.names.indexOf(`schema`)<0?void 0:t.singleStringSchemaSource();if(n!==void 0){let e=JSON.stringify(JSON.parse(n),void 0,4).split(`
924
+ `);e.push(``);let t={lines:e,annotations:[]};return new Map([[this._options.outputFilename,t]])}return[t,e]}run(){return i(this,void 0,void 0,function*(){let e=this.preRun();if(!Array.isArray(e))return e;let[t,n]=e,r=yield this.makeGraph(t);return this.renderGraph(n,r)})}runSync(){let e=this.preRun();if(!Array.isArray(e))return e;let[t,n]=e,r=this.makeGraphSync(t);return this.renderGraph(n,r)}renderGraph(e,t){return this._options.noRender?this.makeSimpleTextResult([`Done.`,``]):e.renderGraphAndSerialize(t,this._options.outputFilename,this._options.alphabetizeProperties,this._options.leadingComments,this._options.rendererOptions,this._options.indentation)}};function O(e){return i(this,void 0,void 0,function*(){return yield new D(e).run()})}e.quicktypeMultiFile=O;function k(e){return new D(e).runSync()}e.quicktypeMultiFileSync=k;function A(e,t){return{line:e.line+t,column:e.column}}function j(e,t){return{start:A(e.start,t),end:A(e.end,t)}}function M(e){if(e.size<=1){let t=(0,o.mapFirst)(e);return t===void 0?{lines:[],annotations:[]}:t}let t=[],n=[];for(let[r,i]of e){let e=t.length+2;t=t.concat([`// ${r}`,``],i.lines),n=n.concat(i.annotations.map(t=>({annotation:t.annotation,span:j(t.span,e)})))}return{lines:t,annotations:n}}e.combineRenderResults=M;function N(e){return i(this,void 0,void 0,function*(){return M(yield O(e))})}e.quicktype=N})),Ao=i((e=>{e.read=function(e,t,n,r,i){var a,o,s=i*8-r-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=a*256+e[t+d],d+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=o*256+e[t+d],d+=f,u-=8);if(a===0)a=1-l;else if(a===c)return o?NaN:(p?-1:1)*(1/0);else o+=2**r,a-=l;return(p?-1:1)*o*2**(a-r)},e.write=function(e,t,n,r,i,a){var o,s,c,l=a*8-i-1,u=(1<<l)-1,d=u>>1,f=i===23?2**-24-2**-77:0,p=r?0:a-1,m=r?1:-1,h=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=2**-o)<1&&(o--,c*=2),o+d>=1?t+=f/c:t+=f*2**(1-d),t*c>=2&&(o++,c/=2),o+d>=u?(s=0,o=u):o+d>=1?(s=(t*c-1)*2**i,o+=d):(s=t*2**(d-1)*2**i,o=0));i>=8;e[n+p]=s&255,p+=m,s/=256,i-=8);for(o=o<<i|s,l+=i;l>0;e[n+p]=o&255,p+=m,o/=256,l-=8);e[n+p-m]|=h*128}})),jo=i((e=>{var t=aa(),n=Ao(),r=typeof Symbol==`function`&&typeof Symbol.for==`function`?Symbol.for(`nodejs.util.inspect.custom`):null;e.Buffer=s,e.SlowBuffer=v,e.INSPECT_MAX_BYTES=50;var i=2147483647;e.kMaxLength=i,s.TYPED_ARRAY_SUPPORT=a(),!s.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 a(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(s.prototype,`parent`,{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,`offset`,{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}});function o(e){if(e>i)throw RangeError(`The value "`+e+`" is invalid for option "size"`);let t=new Uint8Array(e);return Object.setPrototypeOf(t,s.prototype),t}function s(e,t,n){if(typeof e==`number`){if(typeof t==`string`)throw TypeError(`The "string" argument must be of type string. Received type number`);return d(e)}return c(e,t,n)}s.poolSize=8192;function c(e,t,n){if(typeof e==`string`)return f(e,t);if(ArrayBuffer.isView(e))return m(e);if(e==null)throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e);if(G(e,ArrayBuffer)||e&&G(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<`u`&&(G(e,SharedArrayBuffer)||e&&G(e.buffer,SharedArrayBuffer)))return h(e,t,n);if(typeof e==`number`)throw TypeError(`The "value" argument must not be of type number. Received type number`);let r=e.valueOf&&e.valueOf();if(r!=null&&r!==e)return s.from(r,t,n);let i=g(e);if(i)return i;if(typeof Symbol<`u`&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]==`function`)return s.from(e[Symbol.toPrimitive](`string`),t,n);throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e)}s.from=function(e,t,n){return c(e,t,n)},Object.setPrototypeOf(s.prototype,Uint8Array.prototype),Object.setPrototypeOf(s,Uint8Array);function l(e){if(typeof e!=`number`)throw TypeError(`"size" argument must be of type number`);if(e<0)throw RangeError(`The value "`+e+`" is invalid for option "size"`)}function u(e,t,n){return l(e),e<=0||t===void 0?o(e):typeof n==`string`?o(e).fill(t,n):o(e).fill(t)}s.alloc=function(e,t,n){return u(e,t,n)};function d(e){return l(e),o(e<0?0:_(e)|0)}s.allocUnsafe=function(e){return d(e)},s.allocUnsafeSlow=function(e){return d(e)};function f(e,t){if((typeof t!=`string`||t===``)&&(t=`utf8`),!s.isEncoding(t))throw TypeError(`Unknown encoding: `+t);let n=y(e,t)|0,r=o(n),i=r.write(e,t);return i!==n&&(r=r.slice(0,i)),r}function p(e){let t=e.length<0?0:_(e.length)|0,n=o(t);for(let r=0;r<t;r+=1)n[r]=e[r]&255;return n}function m(e){if(G(e,Uint8Array)){let t=new Uint8Array(e);return h(t.buffer,t.byteOffset,t.byteLength)}return p(e)}function h(e,t,n){if(t<0||e.byteLength<t)throw RangeError(`"offset" is outside of buffer bounds`);if(e.byteLength<t+(n||0))throw RangeError(`"length" is outside of buffer bounds`);let r;return r=t===void 0&&n===void 0?new Uint8Array(e):n===void 0?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,s.prototype),r}function g(e){if(s.isBuffer(e)){let t=_(e.length)|0,n=o(t);return n.length===0||e.copy(n,0,0,t),n}if(e.length!==void 0)return typeof e.length!=`number`||pe(e.length)?o(0):p(e);if(e.type===`Buffer`&&Array.isArray(e.data))return p(e.data)}function _(e){if(e>=i)throw RangeError(`Attempt to allocate Buffer larger than maximum size: 0x`+i.toString(16)+` bytes`);return e|0}function v(e){return+e!=e&&(e=0),s.alloc(+e)}s.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==s.prototype},s.compare=function(e,t){if(G(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),G(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw TypeError(`The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array`);if(e===t)return 0;let n=e.length,r=t.length;for(let i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},s.isEncoding=function(e){switch(String(e).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}},s.concat=function(e,t){if(!Array.isArray(e))throw TypeError(`"list" argument must be an Array of Buffers`);if(e.length===0)return s.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let r=s.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){let t=e[n];if(G(t,Uint8Array))i+t.length>r.length?(s.isBuffer(t)||(t=s.from(t)),t.copy(r,i)):Uint8Array.prototype.set.call(r,t,i);else if(s.isBuffer(t))t.copy(r,i);else throw TypeError(`"list" argument must be an Array of Buffers`);i+=t.length}return r};function y(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||G(e,ArrayBuffer))return e.byteLength;if(typeof e!=`string`)throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type `+typeof e);let n=e.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;let i=!1;for(;;)switch(t){case`ascii`:case`latin1`:case`binary`:return n;case`utf8`:case`utf-8`:return le(e).length;case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return n*2;case`hex`:return n>>>1;case`base64`:return fe(e).length;default:if(i)return r?-1:le(e).length;t=(``+t).toLowerCase(),i=!0}}s.byteLength=y;function b(e,t,n){let r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,t>>>=0,n<=t))return``;for(e||=`utf8`;;)switch(e){case`hex`:return ee(this,t,n);case`utf8`:case`utf-8`:return A(this,t,n);case`ascii`:return N(this,t,n);case`latin1`:case`binary`:return P(this,t,n);case`base64`:return k(this,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return F(this,t,n);default:if(r)throw TypeError(`Unknown encoding: `+e);e=(e+``).toLowerCase(),r=!0}}s.prototype._isBuffer=!0;function x(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}s.prototype.swap16=function(){let e=this.length;if(e%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let t=0;t<e;t+=2)x(this,t,t+1);return this},s.prototype.swap32=function(){let e=this.length;if(e%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let t=0;t<e;t+=4)x(this,t,t+3),x(this,t+1,t+2);return this},s.prototype.swap64=function(){let e=this.length;if(e%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let t=0;t<e;t+=8)x(this,t,t+7),x(this,t+1,t+6),x(this,t+2,t+5),x(this,t+3,t+4);return this},s.prototype.toString=function(){let e=this.length;return e===0?``:arguments.length===0?A(this,0,e):b.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw TypeError(`Argument must be a Buffer`);return this===e?!0:s.compare(this,e)===0},s.prototype.inspect=function(){let t=``,n=e.INSPECT_MAX_BYTES;return t=this.toString(`hex`,0,n).replace(/(.{2})/g,`$1 `).trim(),this.length>n&&(t+=` ... `),`<Buffer `+t+`>`},r&&(s.prototype[r]=s.prototype.inspect),s.prototype.compare=function(e,t,n,r,i){if(G(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw TypeError(`The "target" argument must be one of type Buffer or Uint8Array. Received type `+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw RangeError(`out of range index`);if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;let a=i-r,o=n-t,c=Math.min(a,o),l=this.slice(r,i),u=e.slice(t,n);for(let e=0;e<c;++e)if(l[e]!==u[e]){a=l[e],o=u[e];break}return a<o?-1:o<a?1:0};function S(e,t,n,r,i){if(e.length===0)return-1;if(typeof n==`string`?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,pe(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0)if(i)n=0;else return-1;if(typeof t==`string`&&(t=s.from(t,r)),s.isBuffer(t))return t.length===0?-1:C(e,t,n,r,i);if(typeof t==`number`)return t&=255,typeof Uint8Array.prototype.indexOf==`function`?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):C(e,[t],n,r,i);throw TypeError(`val must be string, number or Buffer`)}function C(e,t,n,r,i){let a=1,o=e.length,s=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===`ucs2`||r===`ucs-2`||r===`utf16le`||r===`utf-16le`)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,n/=2}function c(e,t){return a===1?e[t]:e.readUInt16BE(t*a)}let l;if(i){let r=-1;for(l=n;l<o;l++)if(c(e,l)===c(t,r===-1?0:l-r)){if(r===-1&&(r=l),l-r+1===s)return r*a}else r!==-1&&(l-=l-r),r=-1}else for(n+s>o&&(n=o-s),l=n;l>=0;l--){let n=!0;for(let r=0;r<s;r++)if(c(e,l+r)!==c(t,r)){n=!1;break}if(n)return l}return-1}s.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},s.prototype.indexOf=function(e,t,n){return S(this,e,t,n,!0)},s.prototype.lastIndexOf=function(e,t,n){return S(this,e,t,n,!1)};function w(e,t,n,r){n=Number(n)||0;let i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;let a=t.length;r>a/2&&(r=a/2);let o;for(o=0;o<r;++o){let r=parseInt(t.substr(o*2,2),16);if(pe(r))return o;e[n+o]=r}return o}function T(e,t,n,r){return W(le(t,e.length-n),e,n,r)}function E(e,t,n,r){return W(ue(t),e,n,r)}function D(e,t,n,r){return W(fe(t),e,n,r)}function O(e,t,n,r){return W(de(t,e.length-n),e,n,r)}s.prototype.write=function(e,t,n,r){if(t===void 0)r=`utf8`,n=this.length,t=0;else if(n===void 0&&typeof t==`string`)r=t,n=this.length,t=0;else if(isFinite(t))t>>>=0,isFinite(n)?(n>>>=0,r===void 0&&(r=`utf8`)):(r=n,n=void 0);else throw Error(`Buffer.write(string, encoding, offset[, length]) is no longer supported`);let i=this.length-t;if((n===void 0||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw RangeError(`Attempt to write outside buffer bounds`);r||=`utf8`;let a=!1;for(;;)switch(r){case`hex`:return w(this,e,t,n);case`utf8`:case`utf-8`:return T(this,e,t,n);case`ascii`:case`latin1`:case`binary`:return E(this,e,t,n);case`base64`:return D(this,e,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return O(this,e,t,n);default:if(a)throw TypeError(`Unknown encoding: `+r);r=(``+r).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:`Buffer`,data:Array.prototype.slice.call(this._arr||this,0)}};function k(e,n,r){return n===0&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function A(e,t,n){n=Math.min(e.length,n);let r=[],i=t;for(;i<n;){let t=e[i],a=null,o=t>239?4:t>223?3:t>191?2:1;if(i+o<=n){let n,r,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:n=e[i+1],(n&192)==128&&(c=(t&31)<<6|n&63,c>127&&(a=c));break;case 3:n=e[i+1],r=e[i+2],(n&192)==128&&(r&192)==128&&(c=(t&15)<<12|(n&63)<<6|r&63,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:n=e[i+1],r=e[i+2],s=e[i+3],(n&192)==128&&(r&192)==128&&(s&192)==128&&(c=(t&15)<<18|(n&63)<<12|(r&63)<<6|s&63,c>65535&&c<1114112&&(a=c))}}a===null?(a=65533,o=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),i+=o}return M(r)}var j=4096;function M(e){let t=e.length;if(t<=j)return String.fromCharCode.apply(String,e);let n=``,r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=j));return n}function N(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]&127);return r}function P(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function ee(e,t,n){let r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);let i=``;for(let r=t;r<n;++r)i+=me[e[r]];return i}function F(e,t,n){let r=e.slice(t,n),i=``;for(let e=0;e<r.length-1;e+=2)i+=String.fromCharCode(r[e]+r[e+1]*256);return i}s.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let r=this.subarray(e,t);return Object.setPrototypeOf(r,s.prototype),r};function I(e,t,n){if(e%1!=0||e<0)throw RangeError(`offset is not uint`);if(e+t>n)throw RangeError(`Trying to access beyond buffer length`)}s.prototype.readUintLE=s.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return r},s.prototype.readUintBE=s.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);let r=this[e+--t],i=1;for(;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUint8=s.prototype.readUInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),this[e]},s.prototype.readUint16LE=s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUint16BE=s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUint32LE=s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},s.prototype.readUint32BE=s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readBigUInt64LE=K(function(e){e>>>=0,oe(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&U(e,this.length-8);let r=t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*2**8+this[++e]*2**16+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))}),s.prototype.readBigUInt64BE=K(function(e){e>>>=0,oe(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&U(e,this.length-8);let r=t*2**24+this[++e]*2**16+this[++e]*2**8+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n;return(BigInt(r)<<BigInt(32))+BigInt(i)}),s.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=2**(8*t)),r},s.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);let r=t,i=1,a=this[e+--r];for(;r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=2**(8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||I(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},s.prototype.readInt16BE=function(e,t){e>>>=0,t||I(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readBigInt64LE=K(function(e){e>>>=0,oe(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&U(e,this.length-8);let r=this[e+4]+this[e+5]*2**8+this[e+6]*2**16+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(t+this[++e]*2**8+this[++e]*2**16+this[++e]*2**24)}),s.prototype.readBigInt64BE=K(function(e){e>>>=0,oe(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&U(e,this.length-8);let r=(t<<24)+this[++e]*2**16+this[++e]*2**8+this[++e];return(BigInt(r)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*2**8+n)}),s.prototype.readFloatLE=function(e,t){return e>>>=0,t||I(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||I(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||I(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||I(e,8,this.length),n.read(this,e,!1,52,8)};function L(e,t,n,r,i,a){if(!s.isBuffer(e))throw TypeError(`"buffer" argument must be a Buffer instance`);if(t>i||t<a)throw RangeError(`"value" argument is out of bounds`);if(n+r>e.length)throw RangeError(`Index out of range`)}s.prototype.writeUintLE=s.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;L(this,e,t,n,r,0)}let i=1,a=0;for(this[t]=e&255;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},s.prototype.writeUintBE=s.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;L(this,e,t,n,r,0)}let i=n-1,a=1;for(this[t+i]=e&255;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},s.prototype.writeUint8=s.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,1,255,0),this[t]=e&255,t+1},s.prototype.writeUint16LE=s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeUint16BE=s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeUint32LE=s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4},s.prototype.writeUint32BE=s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function R(e,t,n,r,i){H(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,n}function z(e,t,n,r,i){H(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n+7]=a,a>>=8,e[n+6]=a,a>>=8,e[n+5]=a,a>>=8,e[n+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=o,o>>=8,e[n+2]=o,o>>=8,e[n+1]=o,o>>=8,e[n]=o,n+8}s.prototype.writeBigUInt64LE=K(function(e,t=0){return R(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeBigUInt64BE=K(function(e,t=0){return z(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);L(this,e,t,n,r-1,-r)}let i=0,a=1,o=0;for(this[t]=e&255;++i<n&&(a*=256);)e<0&&o===0&&this[t+i-1]!==0&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);L(this,e,t,n,r-1,-r)}let i=n-1,a=1,o=0;for(this[t+i]=e&255;--i>=0&&(a*=256);)e<0&&o===0&&this[t+i+1]!==0&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4},s.prototype.writeBigInt64LE=K(function(e,t=0){return R(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))}),s.prototype.writeBigInt64BE=K(function(e,t=0){return z(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))});function te(e,t,n,r,i,a){if(n+r>e.length||n<0)throw RangeError(`Index out of range`)}function ne(e,t,r,i,a){return t=+t,r>>>=0,a||te(e,t,r,4,34028234663852886e22,-34028234663852886e22),n.write(e,t,r,i,23,4),r+4}s.prototype.writeFloatLE=function(e,t,n){return ne(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return ne(this,e,t,!1,n)};function re(e,t,r,i,a){return t=+t,r>>>=0,a||te(e,t,r,8,17976931348623157e292,-17976931348623157e292),n.write(e,t,r,i,52,8),r+8}s.prototype.writeDoubleLE=function(e,t,n){return re(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return re(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(!s.isBuffer(e))throw TypeError(`argument should be a Buffer`);if(n||=0,!r&&r!==0&&(r=this.length),t>=e.length&&(t=e.length),t||=0,r>0&&r<n&&(r=n),r===n||e.length===0||this.length===0)return 0;if(t<0)throw RangeError(`targetStart out of bounds`);if(n<0||n>=this.length)throw RangeError(`Index out of range`);if(r<0)throw RangeError(`sourceEnd out of bounds`);r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);let i=r-n;return this===e&&typeof Uint8Array.prototype.copyWithin==`function`?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},s.prototype.fill=function(e,t,n,r){if(typeof e==`string`){if(typeof t==`string`?(r=t,t=0,n=this.length):typeof n==`string`&&(r=n,n=this.length),r!==void 0&&typeof r!=`string`)throw TypeError(`encoding must be a string`);if(typeof r==`string`&&!s.isEncoding(r))throw TypeError(`Unknown encoding: `+r);if(e.length===1){let t=e.charCodeAt(0);(r===`utf8`&&t<128||r===`latin1`)&&(e=t)}}else typeof e==`number`?e&=255:typeof e==`boolean`&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw RangeError(`Out of range index`);if(n<=t)return this;t>>>=0,n=n===void 0?this.length:n>>>0,e||=0;let i;if(typeof e==`number`)for(i=t;i<n;++i)this[i]=e;else{let a=s.isBuffer(e)?e:s.from(e,r),o=a.length;if(o===0)throw TypeError(`The value "`+e+`" is invalid for argument "value"`);for(i=0;i<n-t;++i)this[i+t]=a[i%o]}return this};var B={};function V(e,t,n){B[e]=class extends n{constructor(){super(),Object.defineProperty(this,`message`,{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,`code`,{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}V(`ERR_BUFFER_OUT_OF_BOUNDS`,function(e){return e?`${e} is outside of buffer bounds`:`Attempt to access memory outside buffer bounds`},RangeError),V(`ERR_INVALID_ARG_TYPE`,function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError),V(`ERR_OUT_OF_RANGE`,function(e,t,n){let r=`The value of "${e}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=ie(String(n)):typeof n==`bigint`&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=ie(i)),i+=`n`),r+=` It must be ${t}. Received ${i}`,r},RangeError);function ie(e){let t=``,n=e.length,r=e[0]===`-`?1:0;for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function ae(e,t,n){oe(t,`offset`),(e[t]===void 0||e[t+n]===void 0)&&U(t,e.length-(n+1))}function H(e,t,n,r,i,a){if(e>n||e<t){let r=typeof t==`bigint`?`n`:``,i;throw i=a>3?t===0||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${(a+1)*8}${r}`:`>= -(2${r} ** ${(a+1)*8-1}${r}) and < 2 ** ${(a+1)*8-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new B.ERR_OUT_OF_RANGE(`value`,i,e)}ae(r,i,a)}function oe(e,t){if(typeof e!=`number`)throw new B.ERR_INVALID_ARG_TYPE(t,`number`,e)}function U(e,t,n){throw Math.floor(e)===e?t<0?new B.ERR_BUFFER_OUT_OF_BOUNDS:new B.ERR_OUT_OF_RANGE(n||`offset`,`>= ${n?1:0} and <= ${t}`,e):(oe(e,n),new B.ERR_OUT_OF_RANGE(n||`offset`,`an integer`,e))}var se=/[^+/0-9A-Za-z-_]/g;function ce(e){if(e=e.split(`=`)[0],e=e.trim().replace(se,``),e.length<2)return``;for(;e.length%4!=0;)e+=`=`;return e}function le(e,t){t||=1/0;let n,r=e.length,i=null,a=[];for(let o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if(--t<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw Error(`Invalid code point`)}return a}function ue(e){let t=[];for(let n=0;n<e.length;++n)t.push(e.charCodeAt(n)&255);return t}function de(e,t){let n,r,i,a=[];for(let o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function fe(e){return t.toByteArray(ce(e))}function W(e,t,n,r){let i;for(i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function G(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function pe(e){return e!==e}var me=(function(){let e=`0123456789abcdef`,t=Array(256);for(let n=0;n<16;++n){let r=n*16;for(let i=0;i<16;++i)t[r+i]=e[n]+e[i]}return t})();function K(e){return typeof BigInt>`u`?q:e}function q(){throw Error(`BigInt not supported`)}})),Mo=i(((e,t)=>{t.exports={ArrayIsArray(e){return Array.isArray(e)},ArrayPrototypeIncludes(e,t){return e.includes(t)},ArrayPrototypeIndexOf(e,t){return e.indexOf(t)},ArrayPrototypeJoin(e,t){return e.join(t)},ArrayPrototypeMap(e,t){return e.map(t)},ArrayPrototypePop(e,t){return e.pop(t)},ArrayPrototypePush(e,t){return e.push(t)},ArrayPrototypeSlice(e,t,n){return e.slice(t,n)},Error,FunctionPrototypeCall(e,t,...n){return e.call(t,...n)},FunctionPrototypeSymbolHasInstance(e,t){return Function.prototype[Symbol.hasInstance].call(e,t)},MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:2**53-1,NumberMIN_SAFE_INTEGER:-(2**53-1),NumberParseInt:Number.parseInt,ObjectDefineProperties(e,t){return Object.defineProperties(e,t)},ObjectDefineProperty(e,t,n){return Object.defineProperty(e,t,n)},ObjectGetOwnPropertyDescriptor(e,t){return Object.getOwnPropertyDescriptor(e,t)},ObjectKeys(e){return Object.keys(e)},ObjectSetPrototypeOf(e,t){return Object.setPrototypeOf(e,t)},Promise,PromisePrototypeCatch(e,t){return e.catch(t)},PromisePrototypeThen(e,t,n){return e.then(t,n)},PromiseReject(e){return Promise.reject(e)},ReflectApply:Reflect.apply,RegExpPrototypeTest(e,t){return e.test(t)},SafeSet:Set,String,StringPrototypeSlice(e,t,n){return e.slice(t,n)},StringPrototypeToLowerCase(e){return e.toLowerCase()},StringPrototypeToUpperCase(e){return e.toUpperCase()},StringPrototypeTrim(e){return e.trim()},Symbol,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,TypedArrayPrototypeSet(e,t,n){return e.set(t,n)},Uint8Array}})),No=i(((e,t)=>{var n=jo(),r=Object.getPrototypeOf(async function(){}).constructor,i=globalThis.Blob||n.Blob,a=i===void 0?function(e){return!1}:function(e){return e instanceof i};t.exports={AggregateError:class extends Error{constructor(e){if(!Array.isArray(e))throw TypeError(`Expected input to be an Array, got ${typeof e}`);let t=``;for(let n=0;n<e.length;n++)t+=` ${e[n].stack}\n`;super(t),this.name=`AggregateError`,this.errors=e}},kEmptyObject:Object.freeze({}),once(e){let t=!1;return function(...n){t||(t=!0,e.apply(this,n))}},createDeferredPromise:function(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}},promisify(e){return new Promise((t,n)=>{e((e,...r)=>e?n(e):t(...r))})},debuglog(){return function(){}},format(e,...t){return e.replace(/%([sdifj])/g,function(...[e,n]){let r=t.shift();return n===`f`?r.toFixed(6):n===`j`?JSON.stringify(r):n===`s`&&typeof r==`object`?`${r.constructor===Object?``:r.constructor.name} {}`.trim():r.toString()})},inspect(e){switch(typeof e){case`string`:if(e.includes(`'`))if(e.includes(`"`)){if(!e.includes("`")&&!e.includes("${"))return`\`${e}\``}else return`"${e}"`;return`'${e}'`;case`number`:return isNaN(e)?`NaN`:Object.is(e,-0)?String(e):e;case`bigint`:return`${String(e)}n`;case`boolean`:case`undefined`:return String(e);case`object`:return`{}`}},types:{isAsyncFunction(e){return e instanceof r},isArrayBufferView(e){return ArrayBuffer.isView(e)}},isBlob:a},t.exports.promisify.custom=Symbol.for(`nodejs.util.promisify.custom`)})),Po=r({default:()=>Fo},1),Fo,Io=n((()=>{Fo=Object.freeze(Object.create(null,{__mock__:{get:()=>!0}}))})),Lo=i(((e,t)=>{var{format:n,inspect:r,AggregateError:i}=No(),a=globalThis.AggregateError||i,o=Symbol(`kIsNodeError`),s=[`string`,`function`,`number`,`object`,`Function`,`Object`,`boolean`,`bigint`,`symbol`],c=/^([A-Z][a-z0-9]*)+$/,l=`__node_internal_`,u={};function d(e,t){if(!e)throw new u.ERR_INTERNAL_ASSERTION(t)}function f(e){let t=``,n=e.length,r=e[0]===`-`?1:0;for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function p(e,t,r){if(typeof t==`function`)return d(t.length<=r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${t.length}).`),t(...r);let i=(t.match(/%[dfijoOs]/g)||[]).length;return d(i===r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${i}).`),r.length===0?t:n(t,...r)}function m(e,t,n){n||=Error;class r extends n{constructor(...n){super(p(e,t,n))}toString(){return`${this.name} [${e}]: ${this.message}`}}Object.defineProperties(r.prototype,{name:{value:n.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${e}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),r.prototype.code=e,r.prototype[o]=!0,u[e]=r}function h(e){let t=l+e.name;return Object.defineProperty(e,`name`,{value:t}),e}function g(e,t){if(e&&t&&e!==t){if(Array.isArray(t.errors))return t.errors.push(e),t;let n=new a([t,e],t.message);return n.code=t.code,n}return e||t}var _=class extends Error{constructor(e=`The operation was aborted`,t=void 0){if(t!==void 0&&typeof t!=`object`)throw new u.ERR_INVALID_ARG_TYPE(`options`,`Object`,t);super(e,t),this.code=`ABORT_ERR`,this.name=`AbortError`}};m(`ERR_ASSERTION`,`%s`,Error),m(`ERR_INVALID_ARG_TYPE`,(e,t,n)=>{d(typeof e==`string`,`'name' must be a string`),Array.isArray(t)||(t=[t]);let i=`The `;e.endsWith(` argument`)?i+=`${e} `:i+=`"${e}" ${e.includes(`.`)?`property`:`argument`} `,i+=`must be `;let a=[],o=[],l=[];for(let e of t)d(typeof e==`string`,`All expected entries have to be of type string`),s.includes(e)?a.push(e.toLowerCase()):c.test(e)?o.push(e):(d(e!==`object`,`The value "object" should be written as "Object"`),l.push(e));if(o.length>0){let e=a.indexOf(`object`);e!==-1&&(a.splice(a,e,1),o.push(`Object`))}if(a.length>0){switch(a.length){case 1:i+=`of type ${a[0]}`;break;case 2:i+=`one of type ${a[0]} or ${a[1]}`;break;default:{let e=a.pop();i+=`one of type ${a.join(`, `)}, or ${e}`}}(o.length>0||l.length>0)&&(i+=` or `)}if(o.length>0){switch(o.length){case 1:i+=`an instance of ${o[0]}`;break;case 2:i+=`an instance of ${o[0]} or ${o[1]}`;break;default:{let e=o.pop();i+=`an instance of ${o.join(`, `)}, or ${e}`}}l.length>0&&(i+=` or `)}switch(l.length){case 0:break;case 1:l[0].toLowerCase()!==l[0]&&(i+=`an `),i+=`${l[0]}`;break;case 2:i+=`one of ${l[0]} or ${l[1]}`;break;default:{let e=l.pop();i+=`one of ${l.join(`, `)}, or ${e}`}}if(n==null)i+=`. Received ${n}`;else if(typeof n==`function`&&n.name)i+=`. Received function ${n.name}`;else if(typeof n==`object`){var u;if((u=n.constructor)!=null&&u.name)i+=`. Received an instance of ${n.constructor.name}`;else{let e=r(n,{depth:-1});i+=`. Received ${e}`}}else{let e=r(n,{colors:!1});e.length>25&&(e=`${e.slice(0,25)}...`),i+=`. Received type ${typeof n} (${e})`}return i},TypeError),m(`ERR_INVALID_ARG_VALUE`,(e,t,n=`is invalid`)=>{let i=r(t);return i.length>128&&(i=i.slice(0,128)+`...`),`The ${e.includes(`.`)?`property`:`argument`} '${e}' ${n}. Received ${i}`},TypeError),m(`ERR_INVALID_RETURN_VALUE`,(e,t,n)=>{var r;return`Expected ${e} to be returned from the "${t}" function but got ${n!=null&&(r=n.constructor)!=null&&r.name?`instance of ${n.constructor.name}`:`type ${typeof n}`}.`},TypeError),m(`ERR_MISSING_ARGS`,(...e)=>{d(e.length>0,`At least one arg needs to be specified`);let t,n=e.length;switch(e=(Array.isArray(e)?e:[e]).map(e=>`"${e}"`).join(` or `),n){case 1:t+=`The ${e[0]} argument`;break;case 2:t+=`The ${e[0]} and ${e[1]} arguments`;break;default:{let n=e.pop();t+=`The ${e.join(`, `)}, and ${n} arguments`}break}return`${t} must be specified`},TypeError),m(`ERR_OUT_OF_RANGE`,(e,t,n)=>{d(t,`Missing "range" argument`);let i;return Number.isInteger(n)&&Math.abs(n)>2**32?i=f(String(n)):typeof n==`bigint`?(i=String(n),(n>2n**32n||n<-(2n**32n))&&(i=f(i)),i+=`n`):i=r(n),`The value of "${e}" is out of range. It must be ${t}. Received ${i}`},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),t.exports={AbortError:_,aggregateTwoErrors:h(g),hideStackFrames:h,codes:u}})),Ro=i(((e,t)=>{var{ArrayIsArray:n,ArrayPrototypeIncludes:r,ArrayPrototypeJoin:i,ArrayPrototypeMap:a,NumberIsInteger:o,NumberIsNaN:s,NumberMAX_SAFE_INTEGER:c,NumberMIN_SAFE_INTEGER:l,NumberParseInt:u,ObjectPrototypeHasOwnProperty:d,RegExpPrototypeExec:f,String:p,StringPrototypeToUpperCase:m,StringPrototypeTrim:h}=Mo(),{hideStackFrames:g,codes:{ERR_SOCKET_BAD_PORT:_,ERR_INVALID_ARG_TYPE:v,ERR_INVALID_ARG_VALUE:y,ERR_OUT_OF_RANGE:b,ERR_UNKNOWN_SIGNAL:x}}=Lo(),{normalizeEncoding:S}=No(),{isAsyncFunction:C,isArrayBufferView:w}=No().types,T={};function E(e){return e===(e|0)}function D(e){return e===e>>>0}var O=/^[0-7]+$/,k=`must be a 32-bit unsigned integer or an octal string`;function A(e,t,n){if(e===void 0&&(e=n),typeof e==`string`){if(f(O,e)===null)throw new y(t,e,k);e=u(e,8)}return N(e,t),e}var j=g((e,t,n=l,r=c)=>{if(typeof e!=`number`)throw new v(t,`number`,e);if(!o(e))throw new b(t,`an integer`,e);if(e<n||e>r)throw new b(t,`>= ${n} && <= ${r}`,e)}),M=g((e,t,n=-2147483648,r=2147483647)=>{if(typeof e!=`number`)throw new v(t,`number`,e);if(!o(e))throw new b(t,`an integer`,e);if(e<n||e>r)throw new b(t,`>= ${n} && <= ${r}`,e)}),N=g((e,t,n=!1)=>{if(typeof e!=`number`)throw new v(t,`number`,e);if(!o(e))throw new b(t,`an integer`,e);let r=n?1:0,i=4294967295;if(e<r||e>i)throw new b(t,`>= ${r} && <= ${i}`,e)});function P(e,t){if(typeof e!=`string`)throw new v(t,`string`,e)}function ee(e,t,n=void 0,r){if(typeof e!=`number`)throw new v(t,`number`,e);if(n!=null&&e<n||r!=null&&e>r||(n!=null||r!=null)&&s(e))throw new b(t,`${n==null?``:`>= ${n}`}${n!=null&&r!=null?` && `:``}${r==null?``:`<= ${r}`}`,e)}var F=g((e,t,n)=>{if(!r(n,e))throw new y(t,e,`must be one of: `+i(a(n,e=>typeof e==`string`?`'${e}'`:p(e)),`, `))});function I(e,t){if(typeof e!=`boolean`)throw new v(t,`boolean`,e)}function L(e,t,n){return e==null||!d(e,t)?n:e[t]}var R=g((e,t,r=null)=>{let i=L(r,`allowArray`,!1),a=L(r,`allowFunction`,!1);if(!L(r,`nullable`,!1)&&e===null||!i&&n(e)||typeof e!=`object`&&(!a||typeof e!=`function`))throw new v(t,`Object`,e)}),z=g((e,t,r=0)=>{if(!n(e))throw new v(t,`Array`,e);if(e.length<r)throw new y(t,e,`must be longer than ${r}`)});function te(e,t=`signal`){if(P(e,t),T[e]===void 0)throw T[m(e)]===void 0?new x(e):new x(e+` (signals must use all capital letters)`)}var ne=g((e,t=`buffer`)=>{if(!w(e))throw new v(t,[`Buffer`,`TypedArray`,`DataView`],e)});function re(e,t){let n=S(t),r=e.length;if(n===`hex`&&r%2!=0)throw new y(`encoding`,t,`is invalid for data of length ${r}`)}function B(e,t=`Port`,n=!0){if(typeof e!=`number`&&typeof e!=`string`||typeof e==`string`&&h(e).length===0||+e!=e>>>0||e>65535||e===0&&!n)throw new _(t,e,n);return e|0}var V=g((e,t)=>{if(e!==void 0&&(typeof e!=`object`||!e||!(`aborted`in e)))throw new v(t,`AbortSignal`,e)}),ie=g((e,t)=>{if(typeof e!=`function`)throw new v(t,`Function`,e)}),ae=g((e,t)=>{if(typeof e!=`function`||C(e))throw new v(t,`Function`,e)}),H=g((e,t)=>{if(e!==void 0)throw new v(t,`undefined`,e)});function oe(e,t,n){if(!r(n,e))throw new v(t,`('${i(n,`|`)}')`,e)}t.exports={isInt32:E,isUint32:D,parseFileMode:A,validateArray:z,validateBoolean:I,validateBuffer:ne,validateEncoding:re,validateFunction:ie,validateInt32:M,validateInteger:j,validateNumber:ee,validateObject:R,validateOneOf:F,validatePlainFunction:ae,validatePort:B,validateSignalName:te,validateString:P,validateUint32:N,validateUndefined:H,validateUnion:oe,validateAbortSignal:V}})),zo=i(((e,t)=>{var n=t.exports={},r,i;function a(){throw Error(`setTimeout has not been defined`)}function o(){throw Error(`clearTimeout has not been defined`)}(function(){try{r=typeof setTimeout==`function`?setTimeout:a}catch{r=a}try{i=typeof clearTimeout==`function`?clearTimeout:o}catch{i=o}})();function s(e){if(r===setTimeout)return setTimeout(e,0);if((r===a||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch{try{return r.call(null,e,0)}catch{return r.call(this,e,0)}}}function c(e){if(i===clearTimeout)return clearTimeout(e);if((i===o||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(e);try{return i(e)}catch{try{return i.call(null,e)}catch{return i.call(this,e)}}}var l=[],u=!1,d,f=-1;function p(){!u||!d||(u=!1,d.length?l=d.concat(l):f=-1,l.length&&m())}function m(){if(!u){var e=s(p);u=!0;for(var t=l.length;t;){for(d=l,l=[];++f<t;)d&&d[f].run();f=-1,t=l.length}d=null,u=!1,c(e)}}n.nextTick=function(e){var t=Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new h(e,t)),l.length===1&&!u&&s(m)};function h(e,t){this.fun=e,this.array=t}h.prototype.run=function(){this.fun.apply(null,this.array)},n.title=`browser`,n.browser=!0,n.env={},n.argv=[],n.version=``,n.versions={};function g(){}n.on=g,n.addListener=g,n.once=g,n.off=g,n.removeListener=g,n.removeAllListeners=g,n.emit=g,n.prependListener=g,n.prependOnceListener=g,n.listeners=function(e){return[]},n.binding=function(e){throw Error(`process.binding is not supported`)},n.cwd=function(){return`/`},n.chdir=function(e){throw Error(`process.chdir is not supported`)},n.umask=function(){return 0}})),Bo=i(((e,t)=>{var{Symbol:n,SymbolAsyncIterator:r,SymbolIterator:i}=Mo(),a=n(`kDestroyed`),o=n(`kIsErrored`),s=n(`kIsReadable`),c=n(`kIsDisturbed`);function l(e,t=!1){return!!(e&&typeof e.pipe==`function`&&typeof e.on==`function`&&(!t||typeof e.pause==`function`&&typeof e.resume==`function`)&&(!e._writableState||e._readableState?.readable!==!1)&&(!e._writableState||e._readableState))}function u(e){return!!(e&&typeof e.write==`function`&&typeof e.on==`function`&&(!e._readableState||e._writableState?.writable!==!1))}function d(e){return!!(e&&typeof e.pipe==`function`&&e._readableState&&typeof e.on==`function`&&typeof e.write==`function`)}function f(e){return e&&(e._readableState||e._writableState||typeof e.write==`function`&&typeof e.on==`function`||typeof e.pipe==`function`&&typeof e.on==`function`)}function p(e,t){return e==null?!1:t===!0?typeof e[r]==`function`:t===!1?typeof e[i]==`function`:typeof e[r]==`function`||typeof e[i]==`function`}function m(e){if(!f(e))return null;let t=e._writableState,n=e._readableState,r=t||n;return!!(e.destroyed||e[a]||r!=null&&r.destroyed)}function h(e){if(!u(e))return null;if(e.writableEnded===!0)return!0;let t=e._writableState;return t!=null&&t.errored?!1:typeof t?.ended==`boolean`?t.ended:null}function g(e,t){if(!u(e))return null;if(e.writableFinished===!0)return!0;let n=e._writableState;return n!=null&&n.errored?!1:typeof n?.finished==`boolean`?!!(n.finished||t===!1&&n.ended===!0&&n.length===0):null}function _(e){if(!l(e))return null;if(e.readableEnded===!0)return!0;let t=e._readableState;return!t||t.errored?!1:typeof t?.ended==`boolean`?t.ended:null}function v(e,t){if(!l(e))return null;let n=e._readableState;return n!=null&&n.errored?!1:typeof n?.endEmitted==`boolean`?!!(n.endEmitted||t===!1&&n.ended===!0&&n.length===0):null}function y(e){return e&&e[s]!=null?e[s]:typeof e?.readable==`boolean`?m(e)?!1:l(e)&&e.readable&&!v(e):null}function b(e){return typeof e?.writable==`boolean`?m(e)?!1:u(e)&&e.writable&&!h(e):null}function x(e,t){return f(e)?m(e)?!0:!(t?.readable!==!1&&y(e)||t?.writable!==!1&&b(e)):null}function S(e){return f(e)?e.writableErrored?e.writableErrored:e._writableState?.errored??null:null}function C(e){return f(e)?e.readableErrored?e.readableErrored:e._readableState?.errored??null:null}function w(e){if(!f(e))return null;if(typeof e.closed==`boolean`)return e.closed;let t=e._writableState,n=e._readableState;return typeof t?.closed==`boolean`||typeof n?.closed==`boolean`?t?.closed||n?.closed:typeof e._closed==`boolean`&&T(e)?e._closed:null}function T(e){return typeof e._closed==`boolean`&&typeof e._defaultKeepAlive==`boolean`&&typeof e._removedConnection==`boolean`&&typeof e._removedContLen==`boolean`}function E(e){return typeof e._sent100==`boolean`&&T(e)}function D(e){return typeof e._consuming==`boolean`&&typeof e._dumped==`boolean`&&e.req?.upgradeOrConnect===void 0}function O(e){if(!f(e))return null;let t=e._writableState,n=e._readableState,r=t||n;return!r&&E(e)||!!(r&&r.autoDestroy&&r.emitClose&&r.closed===!1)}function k(e){return!!(e&&(e[c]??(e.readableDidRead||e.readableAborted)))}function A(e){return!!(e&&(e[o]??e.readableErrored??e.writableErrored??e._readableState?.errorEmitted??e._writableState?.errorEmitted??e._readableState?.errored??e._writableState?.errored))}t.exports={kDestroyed:a,isDisturbed:k,kIsDisturbed:c,isErrored:A,kIsErrored:o,isReadable:y,kIsReadable:s,isClosed:w,isDestroyed:m,isDuplexNodeStream:d,isFinished:x,isIterable:p,isReadableNodeStream:l,isReadableEnded:_,isReadableFinished:v,isReadableErrored:C,isNodeStream:f,isWritable:b,isWritableNodeStream:u,isWritableEnded:h,isWritableFinished:g,isWritableErrored:S,isServerRequest:D,isServerResponse:E,willEmitClose:O}})),Vo=i(((e,t)=>{var n=zo(),{AbortError:r,codes:i}=Lo(),{ERR_INVALID_ARG_TYPE:a,ERR_STREAM_PREMATURE_CLOSE:o}=i,{kEmptyObject:s,once:c}=No(),{validateAbortSignal:l,validateFunction:u,validateObject:d}=Ro(),{Promise:f}=Mo(),{isClosed:p,isReadable:m,isReadableNodeStream:h,isReadableFinished:g,isReadableErrored:_,isWritable:v,isWritableNodeStream:y,isWritableFinished:b,isWritableErrored:x,isNodeStream:S,willEmitClose:C}=Bo();function w(e){return e.setHeader&&typeof e.abort==`function`}var T=()=>{};function E(e,t,i){arguments.length===2?(i=t,t=s):t==null?t=s:d(t,`options`),u(i,`callback`),l(t.signal,`options.signal`),i=c(i);let f=t.readable??h(e),E=t.writable??y(e);if(!S(e))throw new a(`stream`,`Stream`,e);let D=e._writableState,O=e._readableState,k=()=>{e.writable||M()},A=C(e)&&h(e)===f&&y(e)===E,j=b(e,!1),M=()=>{j=!0,e.destroyed&&(A=!1),!(A&&(!e.readable||f))&&(!f||N)&&i.call(e)},N=g(e,!1),P=()=>{N=!0,e.destroyed&&(A=!1),!(A&&(!e.writable||E))&&(!E||j)&&i.call(e)},ee=t=>{i.call(e,t)},F=p(e),I=()=>{F=!0;let t=x(e)||_(e);if(t&&typeof t!=`boolean`)return i.call(e,t);if(f&&!N&&h(e,!0)&&!g(e,!1)||E&&!j&&!b(e,!1))return i.call(e,new o);i.call(e)},L=()=>{e.req.on(`finish`,M)};w(e)?(e.on(`complete`,M),A||e.on(`abort`,I),e.req?L():e.on(`request`,L)):E&&!D&&(e.on(`end`,k),e.on(`close`,k)),!A&&typeof e.aborted==`boolean`&&e.on(`aborted`,I),e.on(`end`,P),e.on(`finish`,M),t.error!==!1&&e.on(`error`,ee),e.on(`close`,I),F?n.nextTick(I):D!=null&&D.errorEmitted||O!=null&&O.errorEmitted?A||n.nextTick(I):(!f&&(!A||m(e))&&(j||v(e)===!1)||!E&&(!A||v(e))&&(N||m(e)===!1)||O&&e.req&&e.aborted)&&n.nextTick(I);let R=()=>{i=T,e.removeListener(`aborted`,I),e.removeListener(`complete`,M),e.removeListener(`abort`,I),e.removeListener(`request`,L),e.req&&e.req.removeListener(`finish`,M),e.removeListener(`end`,k),e.removeListener(`close`,k),e.removeListener(`finish`,M),e.removeListener(`end`,P),e.removeListener(`error`,ee),e.removeListener(`close`,I)};if(t.signal&&!F){let a=()=>{let n=i;R(),n.call(e,new r(void 0,{cause:t.signal.reason}))};if(t.signal.aborted)n.nextTick(a);else{let n=i;i=c((...r)=>{t.signal.removeEventListener(`abort`,a),n.apply(e,r)}),t.signal.addEventListener(`abort`,a)}}return R}function D(e,t){return new f((n,r)=>{E(e,t,e=>{e?r(e):n()})})}t.exports=E,t.exports.finished=D})),Ho=i(((t,n)=>{var r=globalThis.AbortController||(Io(),e(Po)).AbortController,{codes:{ERR_INVALID_ARG_TYPE:i,ERR_MISSING_ARGS:a,ERR_OUT_OF_RANGE:o},AbortError:s}=Lo(),{validateAbortSignal:c,validateInteger:l,validateObject:u}=Ro(),d=Mo().Symbol(`kWeak`),{finished:f}=Vo(),{ArrayPrototypePush:p,MathFloor:m,Number:h,NumberIsNaN:g,Promise:_,PromiseReject:v,PromisePrototypeThen:y,Symbol:b}=Mo(),x=b(`kEmpty`),S=b(`kEof`);function C(e,t){if(typeof e!=`function`)throw new i(`fn`,[`Function`,`AsyncFunction`],e);t!=null&&u(t,`options`),t?.signal!=null&&c(t.signal,`options.signal`);let n=1;return t?.concurrency!=null&&(n=m(t.concurrency)),l(n,`concurrency`,1),async function*(){var i,a;let o=new r,c=this,l=[],u=o.signal,d={signal:u},f=()=>o.abort();t!=null&&(i=t.signal)!=null&&i.aborted&&f(),t==null||(a=t.signal)==null||a.addEventListener(`abort`,f);let p,m,h=!1;function g(){h=!0}async function b(){try{for await(let t of c){if(h)return;if(u.aborted)throw new s;try{t=e(t,d)}catch(e){t=v(e)}t!==x&&(typeof t?.catch==`function`&&t.catch(g),l.push(t),p&&=(p(),null),!h&&l.length&&l.length>=n&&await new _(e=>{m=e}))}l.push(S)}catch(e){let t=v(e);y(t,void 0,g),l.push(t)}finally{var r;h=!0,p&&=(p(),null),t==null||(r=t.signal)==null||r.removeEventListener(`abort`,f)}}b();try{for(;;){for(;l.length>0;){let e=await l[0];if(e===S)return;if(u.aborted)throw new s;e!==x&&(yield e),l.shift(),m&&=(m(),null)}await new _(e=>{p=e})}}finally{o.abort(),h=!0,m&&=(m(),null)}}.call(this)}function w(e=void 0){return e!=null&&u(e,`options`),e?.signal!=null&&c(e.signal,`options.signal`),async function*(){let t=0;for await(let r of this){var n;if(e!=null&&(n=e.signal)!=null&&n.aborted)throw new s({cause:e.signal.reason});yield[t++,r]}}.call(this)}async function T(e,t=void 0){for await(let n of k.call(this,e,t))return!0;return!1}async function E(e,t=void 0){if(typeof e!=`function`)throw new i(`fn`,[`Function`,`AsyncFunction`],e);return!await T.call(this,async(...t)=>!await e(...t),t)}async function D(e,t){for await(let n of k.call(this,e,t))return n}async function O(e,t){if(typeof e!=`function`)throw new i(`fn`,[`Function`,`AsyncFunction`],e);async function n(t,n){return await e(t,n),x}for await(let e of C.call(this,n,t));}function k(e,t){if(typeof e!=`function`)throw new i(`fn`,[`Function`,`AsyncFunction`],e);async function n(t,n){return await e(t,n)?t:x}return C.call(this,n,t)}var A=class extends a{constructor(){super(`reduce`),this.message=`Reduce of an empty stream requires an initial value`}};async function j(e,t,n){var a;if(typeof e!=`function`)throw new i(`reducer`,[`Function`,`AsyncFunction`],e);n!=null&&u(n,`options`),n?.signal!=null&&c(n.signal,`options.signal`);let o=arguments.length>1;if(n!=null&&(a=n.signal)!=null&&a.aborted){let e=new s(void 0,{cause:n.signal.reason});throw this.once(`error`,()=>{}),await f(this.destroy(e)),e}let l=new r,p=l.signal;if(n!=null&&n.signal){let e={once:!0,[d]:this};n.signal.addEventListener(`abort`,()=>l.abort(),e)}let m=!1;try{for await(let r of this){var h;if(m=!0,n!=null&&(h=n.signal)!=null&&h.aborted)throw new s;o?t=await e(t,r,{signal:p}):(t=r,o=!0)}if(!m&&!o)throw new A}finally{l.abort()}return t}async function M(e){e!=null&&u(e,`options`),e?.signal!=null&&c(e.signal,`options.signal`);let t=[];for await(let r of this){var n;if(e!=null&&(n=e.signal)!=null&&n.aborted)throw new s(void 0,{cause:e.signal.reason});p(t,r)}return t}function N(e,t){let n=C.call(this,e,t);return async function*(){for await(let e of n)yield*e}.call(this)}function P(e){if(e=h(e),g(e))return 0;if(e<0)throw new o(`number`,`>= 0`,e);return e}function ee(e,t=void 0){return t!=null&&u(t,`options`),t?.signal!=null&&c(t.signal,`options.signal`),e=P(e),async function*(){var n;if(t!=null&&(n=t.signal)!=null&&n.aborted)throw new s;for await(let n of this){var r;if(t!=null&&(r=t.signal)!=null&&r.aborted)throw new s;e--<=0&&(yield n)}}.call(this)}function F(e,t=void 0){return t!=null&&u(t,`options`),t?.signal!=null&&c(t.signal,`options.signal`),e=P(e),async function*(){var n;if(t!=null&&(n=t.signal)!=null&&n.aborted)throw new s;for await(let n of this){var r;if(t!=null&&(r=t.signal)!=null&&r.aborted)throw new s;if(e-- >0)yield n;else return}}.call(this)}n.exports.streamReturningOperators={asIndexedPairs:w,drop:ee,filter:k,flatMap:N,map:C,take:F},n.exports.promiseReturningOperators={every:E,forEach:O,reduce:j,toArray:M,some:T,find:D}})),Uo=i(((e,t)=>{var n=zo(),{aggregateTwoErrors:r,codes:{ERR_MULTIPLE_CALLBACK:i},AbortError:a}=Lo(),{Symbol:o}=Mo(),{kDestroyed:s,isDestroyed:c,isFinished:l,isServerRequest:u}=Bo(),d=o(`kDestroy`),f=o(`kConstruct`);function p(e,t,n){e&&(e.stack,t&&!t.errored&&(t.errored=e),n&&!n.errored&&(n.errored=e))}function m(e,t){let n=this._readableState,i=this._writableState,a=i||n;return i&&i.destroyed||n&&n.destroyed?(typeof t==`function`&&t(),this):(p(e,i,n),i&&(i.destroyed=!0),n&&(n.destroyed=!0),a.constructed?h(this,e,t):this.once(d,function(n){h(this,r(n,e),t)}),this)}function h(e,t,r){let i=!1;function a(t){if(i)return;i=!0;let a=e._readableState,o=e._writableState;p(t,o,a),o&&(o.closed=!0),a&&(a.closed=!0),typeof r==`function`&&r(t),t?n.nextTick(g,e,t):n.nextTick(_,e)}try{e._destroy(t||null,a)}catch(e){a(e)}}function g(e,t){v(e,t),_(e)}function _(e){let t=e._readableState,n=e._writableState;n&&(n.closeEmitted=!0),t&&(t.closeEmitted=!0),(n&&n.emitClose||t&&t.emitClose)&&e.emit(`close`)}function v(e,t){let n=e._readableState,r=e._writableState;r&&r.errorEmitted||n&&n.errorEmitted||(r&&(r.errorEmitted=!0),n&&(n.errorEmitted=!0),e.emit(`error`,t))}function y(){let e=this._readableState,t=this._writableState;e&&(e.constructed=!0,e.closed=!1,e.closeEmitted=!1,e.destroyed=!1,e.errored=null,e.errorEmitted=!1,e.reading=!1,e.ended=e.readable===!1,e.endEmitted=e.readable===!1),t&&(t.constructed=!0,t.destroyed=!1,t.closed=!1,t.closeEmitted=!1,t.errored=null,t.errorEmitted=!1,t.finalCalled=!1,t.prefinished=!1,t.ended=t.writable===!1,t.ending=t.writable===!1,t.finished=t.writable===!1)}function b(e,t,r){let i=e._readableState,a=e._writableState;if(a&&a.destroyed||i&&i.destroyed)return this;i&&i.autoDestroy||a&&a.autoDestroy?e.destroy(t):t&&(t.stack,a&&!a.errored&&(a.errored=t),i&&!i.errored&&(i.errored=t),r?n.nextTick(v,e,t):v(e,t))}function x(e,t){if(typeof e._construct!=`function`)return;let r=e._readableState,i=e._writableState;r&&(r.constructed=!1),i&&(i.constructed=!1),e.once(f,t),!(e.listenerCount(f)>1)&&n.nextTick(S,e)}function S(e){let t=!1;function r(r){if(t){b(e,r??new i);return}t=!0;let a=e._readableState,o=e._writableState,s=o||a;a&&(a.constructed=!0),o&&(o.constructed=!0),s.destroyed?e.emit(d,r):r?b(e,r,!0):n.nextTick(C,e)}try{e._construct(r)}catch(e){r(e)}}function C(e){e.emit(f)}function w(e){return e&&e.setHeader&&typeof e.abort==`function`}function T(e){e.emit(`close`)}function E(e,t){e.emit(`error`,t),n.nextTick(T,e)}function D(e,t){!e||c(e)||(!t&&!l(e)&&(t=new a),u(e)?(e.socket=null,e.destroy(t)):w(e)?e.abort():w(e.req)?e.req.abort():typeof e.destroy==`function`?e.destroy(t):typeof e.close==`function`?e.close():t?n.nextTick(E,e,t):n.nextTick(T,e),e.destroyed||(e[s]=!0))}t.exports={construct:x,destroyer:D,destroy:m,undestroy:y,errorOrDestroy:b}})),Wo=i(((e,t)=>{var n=typeof Reflect==`object`?Reflect:null,r=n&&typeof n.apply==`function`?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)},i=n&&typeof n.ownKeys==`function`?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};function a(e){console&&console.warn&&console.warn(e)}var o=Number.isNaN||function(e){return e!==e};function s(){s.init.call(this)}t.exports=s,t.exports.once=y,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var c=10;function l(e){if(typeof e!=`function`)throw TypeError(`The "listener" argument must be of type Function. Received type `+typeof e)}Object.defineProperty(s,`defaultMaxListeners`,{enumerable:!0,get:function(){return c},set:function(e){if(typeof e!=`number`||e<0||o(e))throw RangeError(`The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received `+e+`.`);c=e}}),s.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},s.prototype.setMaxListeners=function(e){if(typeof e!=`number`||e<0||o(e))throw RangeError(`The value of "n" is out of range. It must be a non-negative number. Received `+e+`.`);return this._maxListeners=e,this};function u(e){return e._maxListeners===void 0?s.defaultMaxListeners:e._maxListeners}s.prototype.getMaxListeners=function(){return u(this)},s.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var i=e===`error`,a=this._events;if(a!==void 0)i&&=a.error===void 0;else if(!i)return!1;if(i){var o;if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var s=Error(`Unhandled error.`+(o?` (`+o.message+`)`:``));throw s.context=o,s}var c=a[e];if(c===void 0)return!1;if(typeof c==`function`)r(c,this,t);else for(var l=c.length,u=g(c,l),n=0;n<l;++n)r(u[n],this,t);return!0};function d(e,t,n,r){var i,o,s;if(l(n),o=e._events,o===void 0?(o=e._events=Object.create(null),e._eventsCount=0):(o.newListener!==void 0&&(e.emit(`newListener`,t,n.listener?n.listener:n),o=e._events),s=o[t]),s===void 0)s=o[t]=n,++e._eventsCount;else if(typeof s==`function`?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),i=u(e),i>0&&s.length>i&&!s.warned){s.warned=!0;var c=Error(`Possible EventEmitter memory leak detected. `+s.length+` `+String(t)+` listeners added. Use emitter.setMaxListeners() to increase limit`);c.name=`MaxListenersExceededWarning`,c.emitter=e,c.type=t,c.count=s.length,a(c)}return e}s.prototype.addListener=function(e,t){return d(this,e,t,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(e,t){return d(this,e,t,!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 p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=f.bind(r);return i.listener=n,r.wrapFn=i,i}s.prototype.once=function(e,t){return l(t),this.on(e,p(this,e,t)),this},s.prototype.prependOnceListener=function(e,t){return l(t),this.prependListener(e,p(this,e,t)),this},s.prototype.removeListener=function(e,t){var n,r,i,a,o;if(l(t),r=this._events,r===void 0||(n=r[e],n===void 0))return this;if(n===t||n.listener===t)--this._eventsCount===0?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit(`removeListener`,e,n.listener||t));else if(typeof n!=`function`){for(i=-1,a=n.length-1;a>=0;a--)if(n[a]===t||n[a].listener===t){o=n[a].listener,i=a;break}if(i<0)return this;i===0?n.shift():_(n,i),n.length===1&&(r[e]=n[0]),r.removeListener!==void 0&&this.emit(`removeListener`,e,o||t)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(e){var t,n=this._events,r;if(n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[e]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[e]),this;if(arguments.length===0){var i=Object.keys(n),a;for(r=0;r<i.length;++r)a=i[r],a!==`removeListener`&&this.removeAllListeners(a);return this.removeAllListeners(`removeListener`),this._events=Object.create(null),this._eventsCount=0,this}if(t=n[e],typeof t==`function`)this.removeListener(e,t);else if(t!==void 0)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this};function m(e,t,n){var r=e._events;if(r===void 0)return[];var i=r[t];return i===void 0?[]:typeof i==`function`?n?[i.listener||i]:[i]:n?v(i):g(i,i.length)}s.prototype.listeners=function(e){return m(this,e,!0)},s.prototype.rawListeners=function(e){return m(this,e,!1)},s.listenerCount=function(e,t){return typeof e.listenerCount==`function`?e.listenerCount(t):h.call(e,t)},s.prototype.listenerCount=h;function h(e){var t=this._events;if(t!==void 0){var n=t[e];if(typeof n==`function`)return 1;if(n!==void 0)return n.length}return 0}s.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]};function g(e,t){for(var n=Array(t),r=0;r<t;++r)n[r]=e[r];return n}function _(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}function v(e){for(var t=Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}function y(e,t){return new Promise(function(n,r){function i(n){e.removeListener(t,a),r(n)}function a(){typeof e.removeListener==`function`&&e.removeListener(`error`,i),n([].slice.call(arguments))}x(e,t,a,{once:!0}),t!==`error`&&b(e,i,{once:!0})})}function b(e,t,n){typeof e.on==`function`&&x(e,`error`,t,n)}function x(e,t,n,r){if(typeof e.on==`function`)r.once?e.once(t,n):e.on(t,n);else if(typeof e.addEventListener==`function`)e.addEventListener(t,function i(a){r.once&&e.removeEventListener(t,i),n(a)});else throw TypeError(`The "emitter" argument must be of type EventEmitter. Received type `+typeof e)}})),$=i(((e,t)=>{var{ArrayIsArray:n,ObjectSetPrototypeOf:r}=Mo(),{EventEmitter:i}=Wo();function a(e){i.call(this,e)}r(a.prototype,i.prototype),r(a,i),a.prototype.pipe=function(e,t){let n=this;function r(t){e.writable&&e.write(t)===!1&&n.pause&&n.pause()}n.on(`data`,r);function a(){n.readable&&n.resume&&n.resume()}e.on(`drain`,a),!e._isStdio&&(!t||t.end!==!1)&&(n.on(`end`,c),n.on(`close`,l));let s=!1;function c(){s||(s=!0,e.end())}function l(){s||(s=!0,typeof e.destroy==`function`&&e.destroy())}function u(e){d(),i.listenerCount(this,`error`)===0&&this.emit(`error`,e)}o(n,`error`,u),o(e,`error`,u);function d(){n.removeListener(`data`,r),e.removeListener(`drain`,a),n.removeListener(`end`,c),n.removeListener(`close`,l),n.removeListener(`error`,u),e.removeListener(`error`,u),n.removeListener(`end`,d),n.removeListener(`close`,d),e.removeListener(`close`,d)}return n.on(`end`,d),n.on(`close`,d),e.on(`close`,d),e.emit(`pipe`,n),e};function o(e,t,r){if(typeof e.prependListener==`function`)return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):n(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}t.exports={Stream:a,prependListener:o}})),Go=i(((e,t)=>{var{AbortError:n,codes:r}=Lo(),i=Vo(),{ERR_INVALID_ARG_TYPE:a}=r,o=(e,t)=>{if(typeof e!=`object`||!(`aborted`in e))throw new a(t,`AbortSignal`,e)};function s(e){return!!(e&&typeof e.pipe==`function`)}t.exports.addAbortSignal=function(e,n){if(o(e,`signal`),!s(n))throw new a(`stream`,`stream.Stream`,n);return t.exports.addAbortSignalNoValidate(e,n)},t.exports.addAbortSignalNoValidate=function(e,t){if(typeof e!=`object`||!(`aborted`in e))return t;let r=()=>{t.destroy(new n(void 0,{cause:e.reason}))};return e.aborted?r():(e.addEventListener(`abort`,r),i(t,()=>e.removeEventListener(`abort`,r))),t}})),Ko=i(((e,t)=>{var{StringPrototypeSlice:n,SymbolIterator:r,TypedArrayPrototypeSet:i,Uint8Array:a}=Mo(),{Buffer:o}=jo(),{inspect:s}=No();t.exports=class{constructor(){this.head=null,this.tail=null,this.length=0}push(e){let t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}unshift(e){let t={data:e,next:this.head};this.length===0&&(this.tail=t),this.head=t,++this.length}shift(){if(this.length===0)return;let e=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,e}clear(){this.head=this.tail=null,this.length=0}join(e){if(this.length===0)return``;let t=this.head,n=``+t.data;for(;(t=t.next)!==null;)n+=e+t.data;return n}concat(e){if(this.length===0)return o.alloc(0);let t=o.allocUnsafe(e>>>0),n=this.head,r=0;for(;n;)i(t,n.data,r),r+=n.data.length,n=n.next;return t}consume(e,t){let n=this.head.data;if(e<n.length){let t=n.slice(0,e);return this.head.data=n.slice(e),t}return e===n.length?this.shift():t?this._getString(e):this._getBuffer(e)}first(){return this.head.data}*[r](){for(let e=this.head;e;e=e.next)yield e.data}_getString(e){let t=``,r=this.head,i=0;do{let a=r.data;if(e>a.length)t+=a,e-=a.length;else{e===a.length?(t+=a,++i,r.next?this.head=r.next:this.head=this.tail=null):(t+=n(a,0,e),this.head=r,r.data=n(a,e));break}++i}while((r=r.next)!==null);return this.length-=i,t}_getBuffer(e){let t=o.allocUnsafe(e),n=e,r=this.head,s=0;do{let o=r.data;if(e>o.length)i(t,o,n-e),e-=o.length;else{e===o.length?(i(t,o,n-e),++s,r.next?this.head=r.next:this.head=this.tail=null):(i(t,new a(o.buffer,o.byteOffset,e),n-e),this.head=r,r.data=o.slice(e));break}++s}while((r=r.next)!==null);return this.length-=s,t}[Symbol.for(`nodejs.util.inspect.custom`)](e,t){return s(this,{...t,depth:0,customInspect:!1})}}})),qo=i(((e,t)=>{var{MathFloor:n,NumberIsInteger:r}=Mo(),{ERR_INVALID_ARG_VALUE:i}=Lo().codes;function a(e,t,n){return e.highWaterMark==null?t?e[n]:null:e.highWaterMark}function o(e){return e?16:16*1024}function s(e,t,s,c){let l=a(t,c,s);if(l!=null){if(!r(l)||l<0)throw new i(c?`options.${s}`:`options.highWaterMark`,l);return n(l)}return o(e.objectMode)}t.exports={getHighWaterMark:s,getDefaultHighWaterMark:o}})),Jo=i((e=>{var t=aa(),n=Ao(),r=typeof Symbol==`function`&&typeof Symbol.for==`function`?Symbol.for(`nodejs.util.inspect.custom`):null;e.Buffer=s,e.SlowBuffer=v,e.INSPECT_MAX_BYTES=50;var i=2147483647;e.kMaxLength=i,s.TYPED_ARRAY_SUPPORT=a(),!s.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 a(){try{var e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(s.prototype,`parent`,{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,`offset`,{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}});function o(e){if(e>i)throw RangeError(`The value "`+e+`" is invalid for option "size"`);var t=new Uint8Array(e);return Object.setPrototypeOf(t,s.prototype),t}function s(e,t,n){if(typeof e==`number`){if(typeof t==`string`)throw TypeError(`The "string" argument must be of type string. Received type number`);return d(e)}return c(e,t,n)}s.poolSize=8192;function c(e,t,n){if(typeof e==`string`)return f(e,t);if(ArrayBuffer.isView(e))return m(e);if(e==null)throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e);if(oe(e,ArrayBuffer)||e&&oe(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<`u`&&(oe(e,SharedArrayBuffer)||e&&oe(e.buffer,SharedArrayBuffer)))return h(e,t,n);if(typeof e==`number`)throw TypeError(`The "value" argument must not be of type number. Received type number`);var r=e.valueOf&&e.valueOf();if(r!=null&&r!==e)return s.from(r,t,n);var i=g(e);if(i)return i;if(typeof Symbol<`u`&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]==`function`)return s.from(e[Symbol.toPrimitive](`string`),t,n);throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e)}s.from=function(e,t,n){return c(e,t,n)},Object.setPrototypeOf(s.prototype,Uint8Array.prototype),Object.setPrototypeOf(s,Uint8Array);function l(e){if(typeof e!=`number`)throw TypeError(`"size" argument must be of type number`);if(e<0)throw RangeError(`The value "`+e+`" is invalid for option "size"`)}function u(e,t,n){return l(e),e<=0||t===void 0?o(e):typeof n==`string`?o(e).fill(t,n):o(e).fill(t)}s.alloc=function(e,t,n){return u(e,t,n)};function d(e){return l(e),o(e<0?0:_(e)|0)}s.allocUnsafe=function(e){return d(e)},s.allocUnsafeSlow=function(e){return d(e)};function f(e,t){if((typeof t!=`string`||t===``)&&(t=`utf8`),!s.isEncoding(t))throw TypeError(`Unknown encoding: `+t);var n=y(e,t)|0,r=o(n),i=r.write(e,t);return i!==n&&(r=r.slice(0,i)),r}function p(e){for(var t=e.length<0?0:_(e.length)|0,n=o(t),r=0;r<t;r+=1)n[r]=e[r]&255;return n}function m(e){if(oe(e,Uint8Array)){var t=new Uint8Array(e);return h(t.buffer,t.byteOffset,t.byteLength)}return p(e)}function h(e,t,n){if(t<0||e.byteLength<t)throw RangeError(`"offset" is outside of buffer bounds`);if(e.byteLength<t+(n||0))throw RangeError(`"length" is outside of buffer bounds`);var r=t===void 0&&n===void 0?new Uint8Array(e):n===void 0?new Uint8Array(e,t):new Uint8Array(e,t,n);return Object.setPrototypeOf(r,s.prototype),r}function g(e){if(s.isBuffer(e)){var t=_(e.length)|0,n=o(t);return n.length===0||e.copy(n,0,0,t),n}if(e.length!==void 0)return typeof e.length!=`number`||U(e.length)?o(0):p(e);if(e.type===`Buffer`&&Array.isArray(e.data))return p(e.data)}function _(e){if(e>=i)throw RangeError(`Attempt to allocate Buffer larger than maximum size: 0x`+i.toString(16)+` bytes`);return e|0}function v(e){return+e!=e&&(e=0),s.alloc(+e)}s.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==s.prototype},s.compare=function(e,t){if(oe(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),oe(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw TypeError(`The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array`);if(e===t)return 0;for(var n=e.length,r=t.length,i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},s.isEncoding=function(e){switch(String(e).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}},s.concat=function(e,t){if(!Array.isArray(e))throw TypeError(`"list" argument must be an Array of Buffers`);if(e.length===0)return s.alloc(0);var n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=s.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var a=e[n];if(oe(a,Uint8Array))i+a.length>r.length?s.from(a).copy(r,i):Uint8Array.prototype.set.call(r,a,i);else if(s.isBuffer(a))a.copy(r,i);else throw TypeError(`"list" argument must be an Array of Buffers`);i+=a.length}return r};function y(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||oe(e,ArrayBuffer))return e.byteLength;if(typeof e!=`string`)throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type `+typeof e);var n=e.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;for(var i=!1;;)switch(t){case`ascii`:case`latin1`:case`binary`:return n;case`utf8`:case`utf-8`:return B(e).length;case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return n*2;case`hex`:return n>>>1;case`base64`:return ae(e).length;default:if(i)return r?-1:B(e).length;t=(``+t).toLowerCase(),i=!0}}s.byteLength=y;function b(e,t,n){var r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,t>>>=0,n<=t))return``;for(e||=`utf8`;;)switch(e){case`hex`:return ee(this,t,n);case`utf8`:case`utf-8`:return A(this,t,n);case`ascii`:return N(this,t,n);case`latin1`:case`binary`:return P(this,t,n);case`base64`:return k(this,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return F(this,t,n);default:if(r)throw TypeError(`Unknown encoding: `+e);e=(e+``).toLowerCase(),r=!0}}s.prototype._isBuffer=!0;function x(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}s.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(var t=0;t<e;t+=2)x(this,t,t+1);return this},s.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(var t=0;t<e;t+=4)x(this,t,t+3),x(this,t+1,t+2);return this},s.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(var t=0;t<e;t+=8)x(this,t,t+7),x(this,t+1,t+6),x(this,t+2,t+5),x(this,t+3,t+4);return this},s.prototype.toString=function(){var e=this.length;return e===0?``:arguments.length===0?A(this,0,e):b.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw TypeError(`Argument must be a Buffer`);return this===e?!0:s.compare(this,e)===0},s.prototype.inspect=function(){var t=``,n=e.INSPECT_MAX_BYTES;return t=this.toString(`hex`,0,n).replace(/(.{2})/g,`$1 `).trim(),this.length>n&&(t+=` ... `),`<Buffer `+t+`>`},r&&(s.prototype[r]=s.prototype.inspect),s.prototype.compare=function(e,t,n,r,i){if(oe(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw TypeError(`The "target" argument must be one of type Buffer or Uint8Array. Received type `+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw RangeError(`out of range index`);if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;for(var a=i-r,o=n-t,c=Math.min(a,o),l=this.slice(r,i),u=e.slice(t,n),d=0;d<c;++d)if(l[d]!==u[d]){a=l[d],o=u[d];break}return a<o?-1:o<a?1:0};function S(e,t,n,r,i){if(e.length===0)return-1;if(typeof n==`string`?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,U(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0)if(i)n=0;else return-1;if(typeof t==`string`&&(t=s.from(t,r)),s.isBuffer(t))return t.length===0?-1:C(e,t,n,r,i);if(typeof t==`number`)return t&=255,typeof Uint8Array.prototype.indexOf==`function`?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):C(e,[t],n,r,i);throw TypeError(`val must be string, number or Buffer`)}function C(e,t,n,r,i){var a=1,o=e.length,s=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===`ucs2`||r===`ucs-2`||r===`utf16le`||r===`utf-16le`)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,n/=2}function c(e,t){return a===1?e[t]:e.readUInt16BE(t*a)}var l;if(i){var u=-1;for(l=n;l<o;l++)if(c(e,l)===c(t,u===-1?0:l-u)){if(u===-1&&(u=l),l-u+1===s)return u*a}else u!==-1&&(l-=l-u),u=-1}else for(n+s>o&&(n=o-s),l=n;l>=0;l--){for(var d=!0,f=0;f<s;f++)if(c(e,l+f)!==c(t,f)){d=!1;break}if(d)return l}return-1}s.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},s.prototype.indexOf=function(e,t,n){return S(this,e,t,n,!0)},s.prototype.lastIndexOf=function(e,t,n){return S(this,e,t,n,!1)};function w(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;var a=t.length;r>a/2&&(r=a/2);for(var o=0;o<r;++o){var s=parseInt(t.substr(o*2,2),16);if(U(s))return o;e[n+o]=s}return o}function T(e,t,n,r){return H(B(t,e.length-n),e,n,r)}function E(e,t,n,r){return H(V(t),e,n,r)}function D(e,t,n,r){return H(ae(t),e,n,r)}function O(e,t,n,r){return H(ie(t,e.length-n),e,n,r)}s.prototype.write=function(e,t,n,r){if(t===void 0)r=`utf8`,n=this.length,t=0;else if(n===void 0&&typeof t==`string`)r=t,n=this.length,t=0;else if(isFinite(t))t>>>=0,isFinite(n)?(n>>>=0,r===void 0&&(r=`utf8`)):(r=n,n=void 0);else throw Error(`Buffer.write(string, encoding, offset[, length]) is no longer supported`);var i=this.length-t;if((n===void 0||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw RangeError(`Attempt to write outside buffer bounds`);r||=`utf8`;for(var a=!1;;)switch(r){case`hex`:return w(this,e,t,n);case`utf8`:case`utf-8`:return T(this,e,t,n);case`ascii`:case`latin1`:case`binary`:return E(this,e,t,n);case`base64`:return D(this,e,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return O(this,e,t,n);default:if(a)throw TypeError(`Unknown encoding: `+r);r=(``+r).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:`Buffer`,data:Array.prototype.slice.call(this._arr||this,0)}};function k(e,n,r){return n===0&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function A(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a=e[i],o=null,s=a>239?4:a>223?3:a>191?2:1;if(i+s<=n){var c,l,u,d;switch(s){case 1:a<128&&(o=a);break;case 2:c=e[i+1],(c&192)==128&&(d=(a&31)<<6|c&63,d>127&&(o=d));break;case 3:c=e[i+1],l=e[i+2],(c&192)==128&&(l&192)==128&&(d=(a&15)<<12|(c&63)<<6|l&63,d>2047&&(d<55296||d>57343)&&(o=d));break;case 4:c=e[i+1],l=e[i+2],u=e[i+3],(c&192)==128&&(l&192)==128&&(u&192)==128&&(d=(a&15)<<18|(c&63)<<12|(l&63)<<6|u&63,d>65535&&d<1114112&&(o=d))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,r.push(o>>>10&1023|55296),o=56320|o&1023),r.push(o),i+=s}return M(r)}var j=4096;function M(e){var t=e.length;if(t<=j)return String.fromCharCode.apply(String,e);for(var n=``,r=0;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=j));return n}function N(e,t,n){var r=``;n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]&127);return r}function P(e,t,n){var r=``;n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function ee(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i=``,a=t;a<n;++a)i+=se[e[a]];return i}function F(e,t,n){for(var r=e.slice(t,n),i=``,a=0;a<r.length-1;a+=2)i+=String.fromCharCode(r[a]+r[a+1]*256);return i}s.prototype.slice=function(e,t){var n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);var r=this.subarray(e,t);return Object.setPrototypeOf(r,s.prototype),r};function I(e,t,n){if(e%1!=0||e<0)throw RangeError(`offset is not uint`);if(e+t>n)throw RangeError(`Trying to access beyond buffer length`)}s.prototype.readUintLE=s.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},s.prototype.readUintBE=s.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUint8=s.prototype.readUInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),this[e]},s.prototype.readUint16LE=s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUint16BE=s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||I(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUint32LE=s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},s.prototype.readUint32BE=s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=2**(8*t)),r},s.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||I(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=2**(8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||I(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||I(e,2,this.length);var n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},s.prototype.readInt16BE=function(e,t){e>>>=0,t||I(e,2,this.length);var n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||I(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readFloatLE=function(e,t){return e>>>=0,t||I(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||I(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||I(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||I(e,8,this.length),n.read(this,e,!1,52,8)};function L(e,t,n,r,i,a){if(!s.isBuffer(e))throw TypeError(`"buffer" argument must be a Buffer instance`);if(t>i||t<a)throw RangeError(`"value" argument is out of bounds`);if(n+r>e.length)throw RangeError(`Index out of range`)}s.prototype.writeUintLE=s.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){var i=2**(8*n)-1;L(this,e,t,n,i,0)}var a=1,o=0;for(this[t]=e&255;++o<n&&(a*=256);)this[t+o]=e/a&255;return t+n},s.prototype.writeUintBE=s.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){var i=2**(8*n)-1;L(this,e,t,n,i,0)}var a=n-1,o=1;for(this[t+a]=e&255;--a>=0&&(o*=256);)this[t+a]=e/o&255;return t+n},s.prototype.writeUint8=s.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,1,255,0),this[t]=e&255,t+1},s.prototype.writeUint16LE=s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeUint16BE=s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeUint32LE=s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4},s.prototype.writeUint32BE=s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4},s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=2**(8*n-1);L(this,e,t,n,i-1,-i)}var a=0,o=1,s=0;for(this[t]=e&255;++a<n&&(o*=256);)e<0&&s===0&&this[t+a-1]!==0&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=2**(8*n-1);L(this,e,t,n,i-1,-i)}var a=n-1,o=1,s=0;for(this[t+a]=e&255;--a>=0&&(o*=256);)e<0&&s===0&&this[t+a+1]!==0&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||L(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function R(e,t,n,r,i,a){if(n+r>e.length||n<0)throw RangeError(`Index out of range`)}function z(e,t,r,i,a){return t=+t,r>>>=0,a||R(e,t,r,4,34028234663852886e22,-34028234663852886e22),n.write(e,t,r,i,23,4),r+4}s.prototype.writeFloatLE=function(e,t,n){return z(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return z(this,e,t,!1,n)};function te(e,t,r,i,a){return t=+t,r>>>=0,a||R(e,t,r,8,17976931348623157e292,-17976931348623157e292),n.write(e,t,r,i,52,8),r+8}s.prototype.writeDoubleLE=function(e,t,n){return te(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return te(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(!s.isBuffer(e))throw TypeError(`argument should be a Buffer`);if(n||=0,!r&&r!==0&&(r=this.length),t>=e.length&&(t=e.length),t||=0,r>0&&r<n&&(r=n),r===n||e.length===0||this.length===0)return 0;if(t<0)throw RangeError(`targetStart out of bounds`);if(n<0||n>=this.length)throw RangeError(`Index out of range`);if(r<0)throw RangeError(`sourceEnd out of bounds`);r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i=r-n;return this===e&&typeof Uint8Array.prototype.copyWithin==`function`?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},s.prototype.fill=function(e,t,n,r){if(typeof e==`string`){if(typeof t==`string`?(r=t,t=0,n=this.length):typeof n==`string`&&(r=n,n=this.length),r!==void 0&&typeof r!=`string`)throw TypeError(`encoding must be a string`);if(typeof r==`string`&&!s.isEncoding(r))throw TypeError(`Unknown encoding: `+r);if(e.length===1){var i=e.charCodeAt(0);(r===`utf8`&&i<128||r===`latin1`)&&(e=i)}}else typeof e==`number`?e&=255:typeof e==`boolean`&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw RangeError(`Out of range index`);if(n<=t)return this;t>>>=0,n=n===void 0?this.length:n>>>0,e||=0;var a;if(typeof e==`number`)for(a=t;a<n;++a)this[a]=e;else{var o=s.isBuffer(e)?e:s.from(e,r),c=o.length;if(c===0)throw TypeError(`The value "`+e+`" is invalid for argument "value"`);for(a=0;a<n-t;++a)this[a+t]=o[a%c]}return this};var ne=/[^+/0-9A-Za-z-_]/g;function re(e){if(e=e.split(`=`)[0],e=e.trim().replace(ne,``),e.length<2)return``;for(;e.length%4!=0;)e+=`=`;return e}function B(e,t){t||=1/0;for(var n,r=e.length,i=null,a=[],o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if(--t<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw Error(`Invalid code point`)}return a}function V(e){for(var t=[],n=0;n<e.length;++n)t.push(e.charCodeAt(n)&255);return t}function ie(e,t){for(var n,r,i,a=[],o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function ae(e){return t.toByteArray(re(e))}function H(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function oe(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function U(e){return e!==e}var se=(function(){for(var e=`0123456789abcdef`,t=Array(256),n=0;n<16;++n)for(var r=n*16,i=0;i<16;++i)t[r+i]=e[n]+e[i];return t})()})),Yo=i(((e,t)=>{var n=Jo(),r=n.Buffer;function i(e,t){for(var n in e)t[n]=e[n]}r.from&&r.alloc&&r.allocUnsafe&&r.allocUnsafeSlow?t.exports=n:(i(n,e),e.Buffer=a);function a(e,t,n){return r(e,t,n)}a.prototype=Object.create(r.prototype),i(r,a),a.from=function(e,t,n){if(typeof e==`number`)throw TypeError(`Argument must not be a number`);return r(e,t,n)},a.alloc=function(e,t,n){if(typeof e!=`number`)throw TypeError(`Argument must be a number`);var i=r(e);return t===void 0?i.fill(0):typeof n==`string`?i.fill(t,n):i.fill(t),i},a.allocUnsafe=function(e){if(typeof e!=`number`)throw TypeError(`Argument must be a number`);return r(e)},a.allocUnsafeSlow=function(e){if(typeof e!=`number`)throw TypeError(`Argument must be a number`);return n.SlowBuffer(e)}})),Xo=i((e=>{var t=Yo().Buffer,n=t.isEncoding||function(e){switch(e=``+e,e&&e.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 r(e){if(!e)return`utf8`;for(var t;;)switch(e){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 e;default:if(t)return;e=(``+e).toLowerCase(),t=!0}}function i(e){var i=r(e);if(typeof i!=`string`&&(t.isEncoding===n||!n(e)))throw Error(`Unknown encoding: `+e);return i||e}e.StringDecoder=a;function a(e){this.encoding=i(e);var n;switch(this.encoding){case`utf16le`:this.text=f,this.end=p,n=4;break;case`utf8`:this.fillLast=l,n=4;break;case`base64`:this.text=m,this.end=h,n=3;break;default:this.write=g,this.end=_;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=t.allocUnsafe(n)}a.prototype.write=function(e){if(e.length===0)return``;var t,n;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return``;n=this.lastNeed,this.lastNeed=0}else n=0;return n<e.length?t?t+this.text(e,n):this.text(e,n):t||``},a.prototype.end=d,a.prototype.text=u,a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length};function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e,t,n){var r=t.length-1;if(r<n)return 0;var i=o(t[r]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--r<n||i===-2?0:(i=o(t[r]),i>=0?(i>0&&(e.lastNeed=i-2),i):--r<n||i===-2?0:(i=o(t[r]),i>=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function c(e,t,n){if((t[0]&192)!=128)return e.lastNeed=0,`�`;if(e.lastNeed>1&&t.length>1){if((t[1]&192)!=128)return e.lastNeed=1,`�`;if(e.lastNeed>2&&t.length>2&&(t[2]&192)!=128)return e.lastNeed=2,`�`}}function l(e){var t=this.lastTotal-this.lastNeed,n=c(this,e,t);if(n!==void 0)return n;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function u(e,t){var n=s(this,e,t);if(!this.lastNeed)return e.toString(`utf8`,t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString(`utf8`,t,r)}function d(e){var t=e&&e.length?this.write(e):``;return this.lastNeed?t+`�`:t}function f(e,t){if((e.length-t)%2==0){var n=e.toString(`utf16le`,t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString(`utf16le`,t,e.length-1)}function p(e){var t=e&&e.length?this.write(e):``;if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString(`utf16le`,0,n)}return t}function m(e,t){var n=(e.length-t)%3;return n===0?e.toString(`base64`,t):(this.lastNeed=3-n,this.lastTotal=3,n===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString(`base64`,t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):``;return this.lastNeed?t+this.lastChar.toString(`base64`,0,3-this.lastNeed):t}function g(e){return e.toString(this.encoding)}function _(e){return e&&e.length?this.write(e):``}})),Zo=i(((e,t)=>{var n=zo(),{PromisePrototypeThen:r,SymbolAsyncIterator:i,SymbolIterator:a}=Mo(),{Buffer:o}=jo(),{ERR_INVALID_ARG_TYPE:s,ERR_STREAM_NULL_VALUES:c}=Lo().codes;function l(e,t,l){let u;if(typeof t==`string`||t instanceof o)return new e({objectMode:!0,...l,read(){this.push(t),this.push(null)}});let d;if(t&&t[i])d=!0,u=t[i]();else if(t&&t[a])d=!1,u=t[a]();else throw new s(`iterable`,[`Iterable`],t);let f=new e({objectMode:!0,highWaterMark:1,...l}),p=!1;f._read=function(){p||(p=!0,h())},f._destroy=function(e,t){r(m(e),()=>n.nextTick(t,e),r=>n.nextTick(t,r||e))};async function m(e){let t=e!=null,n=typeof u.throw==`function`;if(t&&n){let{value:t,done:n}=await u.throw(e);if(await t,n)return}if(typeof u.return==`function`){let{value:e}=await u.return();await e}}async function h(){for(;;){try{let{value:e,done:t}=d?await u.next():u.next();if(t)f.push(null);else{let t=e&&typeof e.then==`function`?await e:e;if(t===null)throw p=!1,new c;if(f.push(t))continue;p=!1}}catch(e){f.destroy(e)}break}}return f}t.exports=l})),Qo=i(((e,t)=>{var n=zo(),{ArrayPrototypeIndexOf:r,NumberIsInteger:i,NumberIsNaN:a,NumberParseInt:o,ObjectDefineProperties:s,ObjectKeys:c,ObjectSetPrototypeOf:l,Promise:u,SafeSet:d,SymbolAsyncIterator:f,Symbol:p}=Mo();t.exports=L,L.ReadableState=I;var{EventEmitter:m}=Wo(),{Stream:h,prependListener:g}=$(),{Buffer:_}=jo(),{addAbortSignal:v}=Go(),y=Vo(),b=No().debuglog(`stream`,e=>{b=e}),x=Ko(),S=Uo(),{getHighWaterMark:C,getDefaultHighWaterMark:w}=qo(),{aggregateTwoErrors:T,codes:{ERR_INVALID_ARG_TYPE:E,ERR_METHOD_NOT_IMPLEMENTED:D,ERR_OUT_OF_RANGE:O,ERR_STREAM_PUSH_AFTER_EOF:k,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:A}}=Lo(),{validateObject:j}=Ro(),M=p(`kPaused`),{StringDecoder:N}=Xo(),P=Zo();l(L.prototype,h.prototype),l(L,h);var ee=()=>{},{errorOrDestroy:F}=S;function I(e,t,n){typeof n!=`boolean`&&(n=t instanceof ts()),this.objectMode=!!(e&&e.objectMode),n&&(this.objectMode=this.objectMode||!!(e&&e.readableObjectMode)),this.highWaterMark=e?C(this,e,`readableHighWaterMark`,n):w(!1),this.buffer=new x,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[M]=null,this.errorEmitted=!1,this.emitClose=!e||e.emitClose!==!1,this.autoDestroy=!e||e.autoDestroy!==!1,this.destroyed=!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this.defaultEncoding=e&&e.defaultEncoding||`utf8`,this.awaitDrainWriters=null,this.multiAwaitDrain=!1,this.readingMore=!1,this.dataEmitted=!1,this.decoder=null,this.encoding=null,e&&e.encoding&&(this.decoder=new N(e.encoding),this.encoding=e.encoding)}function L(e){if(!(this instanceof L))return new L(e);let t=this instanceof ts();this._readableState=new I(e,this,t),e&&(typeof e.read==`function`&&(this._read=e.read),typeof e.destroy==`function`&&(this._destroy=e.destroy),typeof e.construct==`function`&&(this._construct=e.construct),e.signal&&!t&&v(e.signal,this)),h.call(this,e),S.construct(this,()=>{this._readableState.needReadable&&ae(this,this._readableState)})}L.prototype.destroy=S.destroy,L.prototype._undestroy=S.undestroy,L.prototype._destroy=function(e,t){t(e)},L.prototype[m.captureRejectionSymbol]=function(e){this.destroy(e)},L.prototype.push=function(e,t){return R(this,e,t,!1)},L.prototype.unshift=function(e,t){return R(this,e,t,!0)};function R(e,t,n,r){b(`readableAddChunk`,t);let i=e._readableState,a;if(i.objectMode||(typeof t==`string`?(n||=i.defaultEncoding,i.encoding!==n&&(r&&i.encoding?t=_.from(t,n).toString(i.encoding):(t=_.from(t,n),n=``))):t instanceof _?n=``:h._isUint8Array(t)?(t=h._uint8ArrayToBuffer(t),n=``):t!=null&&(a=new E(`chunk`,[`string`,`Buffer`,`Uint8Array`],t))),a)F(e,a);else if(t===null)i.reading=!1,B(e,i);else if(i.objectMode||t&&t.length>0)if(r)if(i.endEmitted)F(e,new A);else if(i.destroyed||i.errored)return!1;else z(e,i,t,!0);else if(i.ended)F(e,new k);else if(i.destroyed||i.errored)return!1;else i.reading=!1,i.decoder&&!n?(t=i.decoder.write(t),i.objectMode||t.length!==0?z(e,i,t,!1):ae(e,i)):z(e,i,t,!1);else r||(i.reading=!1,ae(e,i));return!i.ended&&(i.length<i.highWaterMark||i.length===0)}function z(e,t,n,r){t.flowing&&t.length===0&&!t.sync&&e.listenerCount(`data`)>0?(t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null,t.dataEmitted=!0,e.emit(`data`,n)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&V(e)),ae(e,t)}L.prototype.isPaused=function(){let e=this._readableState;return e[M]===!0||e.flowing===!1},L.prototype.setEncoding=function(e){let t=new N(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;let n=this._readableState.buffer,r=``;for(let e of n)r+=t.write(e);return n.clear(),r!==``&&n.push(r),this._readableState.length=r.length,this};var te=1073741824;function ne(e){if(e>te)throw new O(`size`,`<= 1GiB`,e);return e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++,e}function re(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:a(e)?t.flowing&&t.length?t.buffer.first().length:t.length:e<=t.length?e:t.ended?t.length:0}L.prototype.read=function(e){b(`read`,e),e===void 0?e=NaN:i(e)||(e=o(e,10));let t=this._readableState,n=e;if(e>t.highWaterMark&&(t.highWaterMark=ne(e)),e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark===0?t.length>0:t.length>=t.highWaterMark)||t.ended))return b(`read: emitReadable`,t.length,t.ended),t.length===0&&t.ended?G(this):V(this),null;if(e=re(e,t),e===0&&t.ended)return t.length===0&&G(this),null;let r=t.needReadable;if(b(`need readable`,r),(t.length===0||t.length-e<t.highWaterMark)&&(r=!0,b(`length less than watermark`,r)),t.ended||t.reading||t.destroyed||t.errored||!t.constructed)r=!1,b(`reading, ended or constructing`,r);else if(r){b(`do read`),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0);try{this._read(t.highWaterMark)}catch(e){F(this,e)}t.sync=!1,t.reading||(e=re(n,t))}let a;return a=e>0?W(e,t):null,a===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null),t.length===0&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&G(this)),a!==null&&!t.errorEmitted&&!t.closeEmitted&&(t.dataEmitted=!0,this.emit(`data`,a)),a};function B(e,t){if(b(`onEofChunk`),!t.ended){if(t.decoder){let e=t.decoder.end();e&&e.length&&(t.buffer.push(e),t.length+=t.objectMode?1:e.length)}t.ended=!0,t.sync?V(e):(t.needReadable=!1,t.emittedReadable=!0,ie(e))}}function V(e){let t=e._readableState;b(`emitReadable`,t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(b(`emitReadable`,t.flowing),t.emittedReadable=!0,n.nextTick(ie,e))}function ie(e){let t=e._readableState;b(`emitReadable_`,t.destroyed,t.length,t.ended),!t.destroyed&&!t.errored&&(t.length||t.ended)&&(e.emit(`readable`),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,ue(e)}function ae(e,t){!t.readingMore&&t.constructed&&(t.readingMore=!0,n.nextTick(H,e,t))}function H(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&t.length===0);){let n=t.length;if(b(`maybeReadMore read 0`),e.read(0),n===t.length)break}t.readingMore=!1}L.prototype._read=function(e){throw new D(`_read()`)},L.prototype.pipe=function(e,t){let r=this,i=this._readableState;i.pipes.length===1&&(i.multiAwaitDrain||(i.multiAwaitDrain=!0,i.awaitDrainWriters=new d(i.awaitDrainWriters?[i.awaitDrainWriters]:[]))),i.pipes.push(e),b(`pipe count=%d opts=%j`,i.pipes.length,t);let a=(!t||t.end!==!1)&&e!==n.stdout&&e!==n.stderr?s:v;i.endEmitted?n.nextTick(a):r.once(`end`,a),e.on(`unpipe`,o);function o(e,t){b(`onunpipe`),e===r&&t&&t.hasUnpiped===!1&&(t.hasUnpiped=!0,u())}function s(){b(`onend`),e.end()}let c,l=!1;function u(){b(`cleanup`),e.removeListener(`close`,h),e.removeListener(`finish`,_),c&&e.removeListener(`drain`,c),e.removeListener(`error`,m),e.removeListener(`unpipe`,o),r.removeListener(`end`,s),r.removeListener(`end`,v),r.removeListener(`data`,p),l=!0,c&&i.awaitDrainWriters&&(!e._writableState||e._writableState.needDrain)&&c()}function f(){l||(i.pipes.length===1&&i.pipes[0]===e?(b(`false write response, pause`,0),i.awaitDrainWriters=e,i.multiAwaitDrain=!1):i.pipes.length>1&&i.pipes.includes(e)&&(b(`false write response, pause`,i.awaitDrainWriters.size),i.awaitDrainWriters.add(e)),r.pause()),c||(c=oe(r,e),e.on(`drain`,c))}r.on(`data`,p);function p(t){b(`ondata`);let n=e.write(t);b(`dest.write`,n),n===!1&&f()}function m(t){if(b(`onerror`,t),v(),e.removeListener(`error`,m),e.listenerCount(`error`)===0){let n=e._writableState||e._readableState;n&&!n.errorEmitted?F(e,t):e.emit(`error`,t)}}g(e,`error`,m);function h(){e.removeListener(`finish`,_),v()}e.once(`close`,h);function _(){b(`onfinish`),e.removeListener(`close`,h),v()}e.once(`finish`,_);function v(){b(`unpipe`),r.unpipe(e)}return e.emit(`pipe`,r),e.writableNeedDrain===!0?i.flowing&&f():i.flowing||(b(`pipe resume`),r.resume()),e};function oe(e,t){return function(){let n=e._readableState;n.awaitDrainWriters===t?(b(`pipeOnDrain`,1),n.awaitDrainWriters=null):n.multiAwaitDrain&&(b(`pipeOnDrain`,n.awaitDrainWriters.size),n.awaitDrainWriters.delete(t)),(!n.awaitDrainWriters||n.awaitDrainWriters.size===0)&&e.listenerCount(`data`)&&e.resume()}}L.prototype.unpipe=function(e){let t=this._readableState,n={hasUnpiped:!1};if(t.pipes.length===0)return this;if(!e){let e=t.pipes;t.pipes=[],this.pause();for(let t=0;t<e.length;t++)e[t].emit(`unpipe`,this,{hasUnpiped:!1});return this}let i=r(t.pipes,e);return i===-1?this:(t.pipes.splice(i,1),t.pipes.length===0&&this.pause(),e.emit(`unpipe`,this,n),this)},L.prototype.on=function(e,t){let r=h.prototype.on.call(this,e,t),i=this._readableState;return e===`data`?(i.readableListening=this.listenerCount(`readable`)>0,i.flowing!==!1&&this.resume()):e===`readable`&&!i.endEmitted&&!i.readableListening&&(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,b(`on readable`,i.length,i.reading),i.length?V(this):i.reading||n.nextTick(se,this)),r},L.prototype.addListener=L.prototype.on,L.prototype.removeListener=function(e,t){let r=h.prototype.removeListener.call(this,e,t);return e===`readable`&&n.nextTick(U,this),r},L.prototype.off=L.prototype.removeListener,L.prototype.removeAllListeners=function(e){let t=h.prototype.removeAllListeners.apply(this,arguments);return(e===`readable`||e===void 0)&&n.nextTick(U,this),t};function U(e){let t=e._readableState;t.readableListening=e.listenerCount(`readable`)>0,t.resumeScheduled&&t[M]===!1?t.flowing=!0:e.listenerCount(`data`)>0?e.resume():t.readableListening||(t.flowing=null)}function se(e){b(`readable nexttick read 0`),e.read(0)}L.prototype.resume=function(){let e=this._readableState;return e.flowing||(b(`resume`),e.flowing=!e.readableListening,ce(this,e)),e[M]=!1,this};function ce(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(le,e,t))}function le(e,t){b(`resume`,t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit(`resume`),ue(e),t.flowing&&!t.reading&&e.read(0)}L.prototype.pause=function(){return b(`call pause flowing=%j`,this._readableState.flowing),this._readableState.flowing!==!1&&(b(`pause`),this._readableState.flowing=!1,this.emit(`pause`)),this._readableState[M]=!0,this};function ue(e){let t=e._readableState;for(b(`flow`,t.flowing);t.flowing&&e.read()!==null;);}L.prototype.wrap=function(e){let t=!1;e.on(`data`,n=>{!this.push(n)&&e.pause&&(t=!0,e.pause())}),e.on(`end`,()=>{this.push(null)}),e.on(`error`,e=>{F(this,e)}),e.on(`close`,()=>{this.destroy()}),e.on(`destroy`,()=>{this.destroy()}),this._read=()=>{t&&e.resume&&(t=!1,e.resume())};let n=c(e);for(let t=1;t<n.length;t++){let r=n[t];this[r]===void 0&&typeof e[r]==`function`&&(this[r]=e[r].bind(e))}return this},L.prototype[f]=function(){return de(this)},L.prototype.iterator=function(e){return e!==void 0&&j(e,`options`),de(this,e)};function de(e,t){typeof e.read!=`function`&&(e=L.wrap(e,{objectMode:!0}));let n=fe(e,t);return n.stream=e,n}async function*fe(e,t){let n=ee;function r(t){this===e?(n(),n=ee):n=t}e.on(`readable`,r);let i,a=y(e,{writable:!1},e=>{i=e?T(i,e):null,n(),n=ee});try{for(;;){let t=e.destroyed?null:e.read();if(t!==null)yield t;else if(i)throw i;else if(i===null)return;else await new u(r)}}catch(e){throw i=T(i,e),i}finally{(i||t?.destroyOnReturn!==!1)&&(i===void 0||e._readableState.autoDestroy)?S.destroyer(e,null):(e.off(`readable`,r),a())}}s(L.prototype,{readable:{__proto__:null,get(){let e=this._readableState;return!!e&&e.readable!==!1&&!e.destroyed&&!e.errorEmitted&&!e.endEmitted},set(e){this._readableState&&(this._readableState.readable=!!e)}},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(e){this._readableState&&(this._readableState.flowing=e)}},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(e){this._readableState&&(this._readableState.destroyed=e)}},readableEnded:{__proto__:null,enumerable:!1,get(){return this._readableState?this._readableState.endEmitted:!1}}}),s(I.prototype,{pipesCount:{__proto__:null,get(){return this.pipes.length}},paused:{__proto__:null,get(){return this[M]!==!1},set(e){this[M]=!!e}}}),L._fromList=W;function W(e,t){if(t.length===0)return null;let n;return t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(``):t.buffer.length===1?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n}function G(e){let t=e._readableState;b(`endReadable`,t.endEmitted),t.endEmitted||(t.ended=!0,n.nextTick(pe,t,e))}function pe(e,t){if(b(`endReadableNT`,e.endEmitted,e.length),!e.errored&&!e.closeEmitted&&!e.endEmitted&&e.length===0){if(e.endEmitted=!0,t.emit(`end`),t.writable&&t.allowHalfOpen===!1)n.nextTick(me,t);else if(e.autoDestroy){let e=t._writableState;(!e||e.autoDestroy&&(e.finished||e.writable===!1))&&t.destroy()}}}function me(e){e.writable&&!e.writableEnded&&!e.destroyed&&e.end()}L.from=function(e,t){return P(L,e,t)};var K;function q(){return K===void 0&&(K={}),K}L.fromWeb=function(e,t){return q().newStreamReadableFromReadableStream(e,t)},L.toWeb=function(e,t){return q().newReadableStreamFromStreamReadable(e,t)},L.wrap=function(e,t){return new L({objectMode:e.readableObjectMode??e.objectMode??!0,...t,destroy(t,n){S.destroyer(e,t),n(t)}}).wrap(e)}})),$o=i(((e,t)=>{var n=zo(),{ArrayPrototypeSlice:r,Error:i,FunctionPrototypeSymbolHasInstance:a,ObjectDefineProperty:o,ObjectDefineProperties:s,ObjectSetPrototypeOf:c,StringPrototypeToLowerCase:l,Symbol:u,SymbolHasInstance:d}=Mo();t.exports=N,N.WritableState=j;var{EventEmitter:f}=Wo(),p=$().Stream,{Buffer:m}=jo(),h=Uo(),{addAbortSignal:g}=Go(),{getHighWaterMark:_,getDefaultHighWaterMark:v}=qo(),{ERR_INVALID_ARG_TYPE:y,ERR_METHOD_NOT_IMPLEMENTED:b,ERR_MULTIPLE_CALLBACK:x,ERR_STREAM_CANNOT_PIPE:S,ERR_STREAM_DESTROYED:C,ERR_STREAM_ALREADY_FINISHED:w,ERR_STREAM_NULL_VALUES:T,ERR_STREAM_WRITE_AFTER_END:E,ERR_UNKNOWN_ENCODING:D}=Lo().codes,{errorOrDestroy:O}=h;c(N.prototype,p.prototype),c(N,p);function k(){}var A=u(`kOnFinished`);function j(e,t,n){typeof n!=`boolean`&&(n=t instanceof ts()),this.objectMode=!!(e&&e.objectMode),n&&(this.objectMode=this.objectMode||!!(e&&e.writableObjectMode)),this.highWaterMark=e?_(this,e,`writableHighWaterMark`,n):v(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1,this.decodeStrings=!(e&&e.decodeStrings===!1),this.defaultEncoding=e&&e.defaultEncoding||`utf8`,this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=L.bind(void 0,t),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,M(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!e||e.emitClose!==!1,this.autoDestroy=!e||e.autoDestroy!==!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[A]=[]}function M(e){e.buffered=[],e.bufferedIndex=0,e.allBuffers=!0,e.allNoop=!0}j.prototype.getBuffer=function(){return r(this.buffered,this.bufferedIndex)},o(j.prototype,`bufferedRequestCount`,{__proto__:null,get(){return this.buffered.length-this.bufferedIndex}});function N(e){let t=this instanceof ts();if(!t&&!a(N,this))return new N(e);this._writableState=new j(e,this,t),e&&(typeof e.write==`function`&&(this._write=e.write),typeof e.writev==`function`&&(this._writev=e.writev),typeof e.destroy==`function`&&(this._destroy=e.destroy),typeof e.final==`function`&&(this._final=e.final),typeof e.construct==`function`&&(this._construct=e.construct),e.signal&&g(e.signal,this)),p.call(this,e),h.construct(this,()=>{let e=this._writableState;e.writing||ne(this,e),ie(this,e)})}o(N,d,{__proto__:null,value:function(e){return a(this,e)?!0:this===N?e&&e._writableState instanceof j:!1}}),N.prototype.pipe=function(){O(this,new S)};function P(e,t,r,i){let a=e._writableState;if(typeof r==`function`)i=r,r=a.defaultEncoding;else{if(!r)r=a.defaultEncoding;else if(r!==`buffer`&&!m.isEncoding(r))throw new D(r);typeof i!=`function`&&(i=k)}if(t===null)throw new T;if(!a.objectMode)if(typeof t==`string`)a.decodeStrings!==!1&&(t=m.from(t,r),r=`buffer`);else if(t instanceof m)r=`buffer`;else if(p._isUint8Array(t))t=p._uint8ArrayToBuffer(t),r=`buffer`;else throw new y(`chunk`,[`string`,`Buffer`,`Uint8Array`],t);let o;return a.ending?o=new E:a.destroyed&&(o=new C(`write`)),o?(n.nextTick(i,o),O(e,o,!0),o):(a.pendingcb++,ee(e,a,t,r,i))}N.prototype.write=function(e,t,n){return P(this,e,t,n)===!0},N.prototype.cork=function(){this._writableState.corked++},N.prototype.uncork=function(){let e=this._writableState;e.corked&&(e.corked--,e.writing||ne(this,e))},N.prototype.setDefaultEncoding=function(e){if(typeof e==`string`&&(e=l(e)),!m.isEncoding(e))throw new D(e);return this._writableState.defaultEncoding=e,this};function ee(e,t,n,r,i){let a=t.objectMode?1:n.length;t.length+=a;let o=t.length<t.highWaterMark;return o||(t.needDrain=!0),t.writing||t.corked||t.errored||!t.constructed?(t.buffered.push({chunk:n,encoding:r,callback:i}),t.allBuffers&&r!==`buffer`&&(t.allBuffers=!1),t.allNoop&&i!==k&&(t.allNoop=!1)):(t.writelen=a,t.writecb=i,t.writing=!0,t.sync=!0,e._write(n,r,t.onwrite),t.sync=!1),o&&!t.errored&&!t.destroyed}function F(e,t,n,r,i,a,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new C(`write`)):n?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function I(e,t,n,r){--t.pendingcb,r(n),te(t),O(e,n)}function L(e,t){let r=e._writableState,i=r.sync,a=r.writecb;if(typeof a!=`function`){O(e,new x);return}r.writing=!1,r.writecb=null,r.length-=r.writelen,r.writelen=0,t?(t.stack,r.errored||=t,e._readableState&&!e._readableState.errored&&(e._readableState.errored=t),i?n.nextTick(I,e,r,t,a):I(e,r,t,a)):(r.buffered.length>r.bufferedIndex&&ne(e,r),i?r.afterWriteTickInfo!==null&&r.afterWriteTickInfo.cb===a?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:a,stream:e,state:r},n.nextTick(R,r.afterWriteTickInfo)):z(e,r,1,a))}function R({stream:e,state:t,count:n,cb:r}){return t.afterWriteTickInfo=null,z(e,t,n,r)}function z(e,t,n,r){for(!t.ending&&!e.destroyed&&t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit(`drain`));n-- >0;)t.pendingcb--,r();t.destroyed&&te(t),ie(e,t)}function te(e){if(e.writing)return;for(let t=e.bufferedIndex;t<e.buffered.length;++t){let{chunk:n,callback:r}=e.buffered[t],i=e.objectMode?1:n.length;e.length-=i,r(e.errored??new C(`write`))}let t=e[A].splice(0);for(let n=0;n<t.length;n++)t[n](e.errored??new C(`end`));M(e)}function ne(e,t){if(t.corked||t.bufferProcessing||t.destroyed||!t.constructed)return;let{buffered:n,bufferedIndex:i,objectMode:a}=t,o=n.length-i;if(!o)return;let s=i;if(t.bufferProcessing=!0,o>1&&e._writev){t.pendingcb-=o-1;let i=t.allNoop?k:e=>{for(let t=s;t<n.length;++t)n[t].callback(e)},a=t.allNoop&&s===0?n:r(n,s);a.allBuffers=t.allBuffers,F(e,t,!0,t.length,a,``,i),M(t)}else{do{let{chunk:r,encoding:i,callback:o}=n[s];n[s++]=null,F(e,t,!1,a?1:r.length,r,i,o)}while(s<n.length&&!t.writing);s===n.length?M(t):s>256?(n.splice(0,s),t.bufferedIndex=0):t.bufferedIndex=s}t.bufferProcessing=!1}N.prototype._write=function(e,t,n){if(this._writev)this._writev([{chunk:e,encoding:t}],n);else throw new b(`_write()`)},N.prototype._writev=null,N.prototype.end=function(e,t,r){let a=this._writableState;typeof e==`function`?(r=e,e=null,t=null):typeof t==`function`&&(r=t,t=null);let o;if(e!=null){let n=P(this,e,t);n instanceof i&&(o=n)}return a.corked&&(a.corked=1,this.uncork()),o||(!a.errored&&!a.ending?(a.ending=!0,ie(this,a,!0),a.ended=!0):a.finished?o=new w(`end`):a.destroyed&&(o=new C(`end`))),typeof r==`function`&&(o||a.finished?n.nextTick(r,o):a[A].push(r)),this};function re(e){return e.ending&&!e.destroyed&&e.constructed&&e.length===0&&!e.errored&&e.buffered.length===0&&!e.finished&&!e.writing&&!e.errorEmitted&&!e.closeEmitted}function B(e,t){let r=!1;function i(i){if(r){O(e,i??x());return}if(r=!0,t.pendingcb--,i){let n=t[A].splice(0);for(let e=0;e<n.length;e++)n[e](i);O(e,i,t.sync)}else re(t)&&(t.prefinished=!0,e.emit(`prefinish`),t.pendingcb++,n.nextTick(ae,e,t))}t.sync=!0,t.pendingcb++;try{e._final(i)}catch(e){i(e)}t.sync=!1}function V(e,t){!t.prefinished&&!t.finalCalled&&(typeof e._final==`function`&&!t.destroyed?(t.finalCalled=!0,B(e,t)):(t.prefinished=!0,e.emit(`prefinish`)))}function ie(e,t,r){re(t)&&(V(e,t),t.pendingcb===0&&(r?(t.pendingcb++,n.nextTick((e,t)=>{re(t)?ae(e,t):t.pendingcb--},e,t)):re(t)&&(t.pendingcb++,ae(e,t))))}function ae(e,t){t.pendingcb--,t.finished=!0;let n=t[A].splice(0);for(let e=0;e<n.length;e++)n[e]();if(e.emit(`finish`),t.autoDestroy){let t=e._readableState;(!t||t.autoDestroy&&(t.endEmitted||t.readable===!1))&&e.destroy()}}s(N.prototype,{closed:{__proto__:null,get(){return this._writableState?this._writableState.closed:!1}},destroyed:{__proto__:null,get(){return this._writableState?this._writableState.destroyed:!1},set(e){this._writableState&&(this._writableState.destroyed=e)}},writable:{__proto__:null,get(){let e=this._writableState;return!!e&&e.writable!==!1&&!e.destroyed&&!e.errored&&!e.ending&&!e.ended},set(e){this._writableState&&(this._writableState.writable=!!e)}},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(){let e=this._writableState;return e?!e.destroyed&&!e.ending&&e.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)}}});var H=h.destroy;N.prototype.destroy=function(e,t){let r=this._writableState;return!r.destroyed&&(r.bufferedIndex<r.buffered.length||r[A].length)&&n.nextTick(te,r),H.call(this,e,t),this},N.prototype._undestroy=h.undestroy,N.prototype._destroy=function(e,t){t(e)},N.prototype[f.captureRejectionSymbol]=function(e){this.destroy(e)};var oe;function U(){return oe===void 0&&(oe={}),oe}N.fromWeb=function(e,t){return U().newStreamWritableFromWritableStream(e,t)},N.toWeb=function(e){return U().newWritableStreamFromStreamWritable(e)}})),es=i(((t,n)=>{var r=zo(),i=jo(),{isReadable:a,isWritable:o,isIterable:s,isNodeStream:c,isReadableNodeStream:l,isWritableNodeStream:u,isDuplexNodeStream:d}=Bo(),f=Vo(),{AbortError:p,codes:{ERR_INVALID_ARG_TYPE:m,ERR_INVALID_RETURN_VALUE:h}}=Lo(),{destroyer:g}=Uo(),_=ts(),v=Qo(),{createDeferredPromise:y}=No(),b=Zo(),x=globalThis.Blob||i.Blob,S=x===void 0?function(e){return!1}:function(e){return e instanceof x},C=globalThis.AbortController||(Io(),e(Po)).AbortController,{FunctionPrototypeCall:w}=Mo(),T=class extends _{constructor(e){super(e),e?.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),e?.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}};n.exports=function e(t,n){if(d(t))return t;if(l(t))return D({readable:t});if(u(t))return D({writable:t});if(c(t))return D({writable:!1,readable:!1});if(typeof t==`function`){let{value:e,write:i,final:a,destroy:o}=E(t);if(s(e))return b(T,e,{objectMode:!0,write:i,final:a,destroy:o});let c=e?.then;if(typeof c==`function`){let t,n=w(c,e,e=>{if(e!=null)throw new h(`nully`,`body`,e)},e=>{g(t,e)});return t=new T({objectMode:!0,readable:!1,write:i,final(e){a(async()=>{try{await n,r.nextTick(e,null)}catch(t){r.nextTick(e,t)}})},destroy:o})}throw new h(`Iterable, AsyncIterable or AsyncFunction`,n,e)}if(S(t))return e(t.arrayBuffer());if(s(t))return b(T,t,{objectMode:!0,writable:!1});if(typeof t?.writable==`object`||typeof t?.readable==`object`)return D({readable:t!=null&&t.readable?l(t?.readable)?t?.readable:e(t.readable):void 0,writable:t!=null&&t.writable?u(t?.writable)?t?.writable:e(t.writable):void 0});let i=t?.then;if(typeof i==`function`){let e;return w(i,t,t=>{t!=null&&e.push(t),e.push(null)},t=>{g(e,t)}),e=new T({objectMode:!0,writable:!1,read(){}})}throw new m(n,[`Blob`,`ReadableStream`,`WritableStream`,`Stream`,`Iterable`,`AsyncIterable`,`Function`,`{ readable, writable } pair`,`Promise`],t)};function E(e){let{promise:t,resolve:n}=y(),i=new C,a=i.signal;return{value:e((async function*(){for(;;){let e=t;t=null;let{chunk:i,done:o,cb:s}=await e;if(r.nextTick(s),o)return;if(a.aborted)throw new p(void 0,{cause:a.reason});({promise:t,resolve:n}=y()),yield i}})(),{signal:a}),write(e,t,r){let i=n;n=null,i({chunk:e,done:!1,cb:r})},final(e){let t=n;n=null,t({done:!0,cb:e})},destroy(e,t){i.abort(),t(e)}}}function D(e){let t=e.readable&&typeof e.readable.read!=`function`?v.wrap(e.readable):e.readable,n=e.writable,r=!!a(t),i=!!o(n),s,c,l,u,d;function m(e){let t=u;u=null,t?t(e):e?d.destroy(e):!r&&!i&&d.destroy()}return d=new T({readableObjectMode:!!(t!=null&&t.readableObjectMode),writableObjectMode:!!(n!=null&&n.writableObjectMode),readable:r,writable:i}),i&&(f(n,e=>{i=!1,e&&g(t,e),m(e)}),d._write=function(e,t,r){n.write(e,t)?r():s=r},d._final=function(e){n.end(),c=e},n.on(`drain`,function(){if(s){let e=s;s=null,e()}}),n.on(`finish`,function(){if(c){let e=c;c=null,e()}})),r&&(f(t,e=>{r=!1,e&&g(t,e),m(e)}),t.on(`readable`,function(){if(l){let e=l;l=null,e()}}),t.on(`end`,function(){d.push(null)}),d._read=function(){for(;;){let e=t.read();if(e===null){l=d._read;return}if(!d.push(e))return}}),d._destroy=function(e,r){!e&&u!==null&&(e=new p),l=null,s=null,c=null,u===null?r(e):(u=r,g(n,e),g(t,e))},d}})),ts=i(((e,t)=>{var{ObjectDefineProperties:n,ObjectGetOwnPropertyDescriptor:r,ObjectKeys:i,ObjectSetPrototypeOf:a}=Mo();t.exports=c;var o=Qo(),s=$o();a(c.prototype,o.prototype),a(c,o);{let e=i(s.prototype);for(let t=0;t<e.length;t++){let n=e[t];c.prototype[n]||(c.prototype[n]=s.prototype[n])}}function c(e){if(!(this instanceof c))return new c(e);o.call(this,e),s.call(this,e),e?(this.allowHalfOpen=e.allowHalfOpen!==!1,e.readable===!1&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),e.writable===!1&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)):this.allowHalfOpen=!0}n(c.prototype,{writable:{__proto__:null,...r(s.prototype,`writable`)},writableHighWaterMark:{__proto__:null,...r(s.prototype,`writableHighWaterMark`)},writableObjectMode:{__proto__:null,...r(s.prototype,`writableObjectMode`)},writableBuffer:{__proto__:null,...r(s.prototype,`writableBuffer`)},writableLength:{__proto__:null,...r(s.prototype,`writableLength`)},writableFinished:{__proto__:null,...r(s.prototype,`writableFinished`)},writableCorked:{__proto__:null,...r(s.prototype,`writableCorked`)},writableEnded:{__proto__:null,...r(s.prototype,`writableEnded`)},writableNeedDrain:{__proto__:null,...r(s.prototype,`writableNeedDrain`)},destroyed:{__proto__:null,get(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set(e){this._readableState&&this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}});var l;function u(){return l===void 0&&(l={}),l}c.fromWeb=function(e,t){return u().newStreamDuplexFromReadableWritablePair(e,t)},c.toWeb=function(e){return u().newReadableWritablePairFromDuplex(e)};var d;c.from=function(e){return d||=es(),d(e,`body`)}})),ns=i(((e,t)=>{var{ObjectSetPrototypeOf:n,Symbol:r}=Mo();t.exports=c;var{ERR_METHOD_NOT_IMPLEMENTED:i}=Lo().codes,a=ts(),{getHighWaterMark:o}=qo();n(c.prototype,a.prototype),n(c,a);var s=r(`kCallback`);function c(e){if(!(this instanceof c))return new c(e);let t=e?o(this,e,`readableHighWaterMark`,!0):null;t===0&&(e={...e,highWaterMark:null,readableHighWaterMark:t,writableHighWaterMark:e.writableHighWaterMark||0}),a.call(this,e),this._readableState.sync=!1,this[s]=null,e&&(typeof e.transform==`function`&&(this._transform=e.transform),typeof e.flush==`function`&&(this._flush=e.flush)),this.on(`prefinish`,u)}function l(e){typeof this._flush==`function`&&!this.destroyed?this._flush((t,n)=>{if(t){e?e(t):this.destroy(t);return}n!=null&&this.push(n),this.push(null),e&&e()}):(this.push(null),e&&e())}function u(){this._final!==l&&l.call(this)}c.prototype._final=l,c.prototype._transform=function(e,t,n){throw new i(`_transform()`)},c.prototype._write=function(e,t,n){let r=this._readableState,i=this._writableState,a=r.length;this._transform(e,t,(e,t)=>{if(e){n(e);return}t!=null&&this.push(t),i.ended||a===r.length||r.length<r.highWaterMark?n():this[s]=n})},c.prototype._read=function(){if(this[s]){let e=this[s];this[s]=null,e()}}})),rs=i(((e,t)=>{var{ObjectSetPrototypeOf:n}=Mo();t.exports=i;var r=ns();n(i.prototype,r.prototype),n(i,r);function i(e){if(!(this instanceof i))return new i(e);r.call(this,e)}i.prototype._transform=function(e,t,n){n(null,e)}})),is=i(((t,n)=>{var r=zo(),{ArrayIsArray:i,Promise:a,SymbolAsyncIterator:o}=Mo(),s=Vo(),{once:c}=No(),l=Uo(),u=ts(),{aggregateTwoErrors:d,codes:{ERR_INVALID_ARG_TYPE:f,ERR_INVALID_RETURN_VALUE:p,ERR_MISSING_ARGS:m,ERR_STREAM_DESTROYED:h,ERR_STREAM_PREMATURE_CLOSE:g},AbortError:_}=Lo(),{validateFunction:v,validateAbortSignal:y}=Ro(),{isIterable:b,isReadable:x,isReadableNodeStream:S,isNodeStream:C}=Bo(),w=globalThis.AbortController||(Io(),e(Po)).AbortController,T,E;function D(e,t,n){let r=!1;return e.on(`close`,()=>{r=!0}),{destroy:t=>{r||(r=!0,l.destroyer(e,t||new h(`pipe`)))},cleanup:s(e,{readable:t,writable:n},e=>{r=!e})}}function O(e){return v(e[e.length-1],`streams[stream.length - 1]`),e.pop()}function k(e){if(b(e))return e;if(S(e))return A(e);throw new f(`val`,[`Readable`,`Iterable`,`AsyncIterable`],e)}async function*A(e){E||=Qo(),yield*E.prototype[o].call(e)}async function j(e,t,n,{end:r}){let i,o=null,c=e=>{if(e&&(i=e),o){let e=o;o=null,e()}},l=()=>new a((e,t)=>{i?t(i):o=()=>{i?t(i):e()}});t.on(`drain`,c);let u=s(t,{readable:!1},c);try{t.writableNeedDrain&&await l();for await(let n of e)t.write(n)||await l();r&&t.end(),await l(),n()}catch(e){n(i===e?e:d(i,e))}finally{u(),t.off(`drain`,c)}}function M(...e){return N(e,c(O(e)))}function N(e,t,n){if(e.length===1&&i(e[0])&&(e=e[0]),e.length<2)throw new m(`streams`);let a=new w,o=a.signal,s=n?.signal,c=[];y(s,`options.signal`);function l(){O(new _)}s?.addEventListener(`abort`,l);let d,h,g=[],v=0;function E(e){O(e,--v===0)}function O(e,n){if(e&&(!d||d.code===`ERR_STREAM_PREMATURE_CLOSE`)&&(d=e),!(!d&&!n)){for(;g.length;)g.shift()(d);s?.removeEventListener(`abort`,l),a.abort(),n&&(d||c.forEach(e=>e()),r.nextTick(t,d,h))}}let A;for(let t=0;t<e.length;t++){let i=e[t],a=t<e.length-1,s=t>0,l=a||n?.end!==!1,d=t===e.length-1;if(C(i)){if(l){let{destroy:e,cleanup:t}=D(i,a,s);g.push(e),x(i)&&d&&c.push(t)}function e(e){e&&e.name!==`AbortError`&&e.code!==`ERR_STREAM_PREMATURE_CLOSE`&&E(e)}i.on(`error`,e),x(i)&&d&&c.push(()=>{i.removeListener(`error`,e)})}if(t===0)if(typeof i==`function`){if(A=i({signal:o}),!b(A))throw new p(`Iterable, AsyncIterable or Stream`,`source`,A)}else A=b(i)||S(i)?i:u.from(i);else if(typeof i==`function`)if(A=k(A),A=i(A,{signal:o}),a){if(!b(A,!0))throw new p(`AsyncIterable`,`transform[${t-1}]`,A)}else{T||=rs();let e=new T({objectMode:!0}),t=A?.then;if(typeof t==`function`)v++,t.call(A,t=>{h=t,t!=null&&e.write(t),l&&e.end(),r.nextTick(E)},t=>{e.destroy(t),r.nextTick(E,t)});else if(b(A,!0))v++,j(A,e,E,{end:l});else throw new p(`AsyncIterable or Promise`,`destination`,A);A=e;let{destroy:n,cleanup:i}=D(A,!1,!0);g.push(n),d&&c.push(i)}else if(C(i)){if(S(A)){v+=2;let e=P(A,i,E,{end:l});x(i)&&d&&c.push(e)}else if(b(A))v++,j(A,i,E,{end:l});else throw new f(`val`,[`Readable`,`Iterable`,`AsyncIterable`],A);A=i}else A=u.from(i)}return(o!=null&&o.aborted||s!=null&&s.aborted)&&r.nextTick(l),A}function P(e,t,n,{end:r}){let i=!1;return t.on(`close`,()=>{i||n(new g)}),e.pipe(t,{end:r}),r?e.once(`end`,()=>{i=!0,t.end()}):n(),s(e,{readable:!0,writable:!1},t=>{let r=e._readableState;t&&t.code===`ERR_STREAM_PREMATURE_CLOSE`&&r&&r.ended&&!r.errored&&!r.errorEmitted?e.once(`end`,n).once(`error`,n):n(t)}),s(t,{readable:!1,writable:!0},n)}n.exports={pipelineImpl:N,pipeline:M}})),as=i(((e,t)=>{var{pipeline:n}=is(),r=ts(),{destroyer:i}=Uo(),{isNodeStream:a,isReadable:o,isWritable:s}=Bo(),{AbortError:c,codes:{ERR_INVALID_ARG_VALUE:l,ERR_MISSING_ARGS:u}}=Lo();t.exports=function(...e){if(e.length===0)throw new u(`streams`);if(e.length===1)return r.from(e[0]);let t=[...e];if(typeof e[0]==`function`&&(e[0]=r.from(e[0])),typeof e[e.length-1]==`function`){let t=e.length-1;e[t]=r.from(e[t])}for(let n=0;n<e.length;++n)if(a(e[n])){if(n<e.length-1&&!o(e[n]))throw new l(`streams[${n}]`,t[n],`must be readable`);if(n>0&&!s(e[n]))throw new l(`streams[${n}]`,t[n],`must be writable`)}let d,f,p,m,h;function g(e){let t=m;m=null,t?t(e):e?h.destroy(e):!b&&!y&&h.destroy()}let _=e[0],v=n(e,g),y=!!s(_),b=!!o(v);return h=new r({writableObjectMode:!!(_!=null&&_.writableObjectMode),readableObjectMode:!!(v!=null&&v.writableObjectMode),writable:y,readable:b}),y&&(h._write=function(e,t,n){_.write(e,t)?n():d=n},h._final=function(e){_.end(),f=e},_.on(`drain`,function(){if(d){let e=d;d=null,e()}}),v.on(`finish`,function(){if(f){let e=f;f=null,e()}})),b&&(v.on(`readable`,function(){if(p){let e=p;p=null,e()}}),v.on(`end`,function(){h.push(null)}),h._read=function(){for(;;){let e=v.read();if(e===null){p=h._read;return}if(!h.push(e))return}}),h._destroy=function(e,t){!e&&m!==null&&(e=new c),p=null,d=null,f=null,m===null?t(e):(m=t,i(v,e))},h}})),os=i(((e,t)=>{var{ArrayPrototypePop:n,Promise:r}=Mo(),{isIterable:i,isNodeStream:a}=Bo(),{pipelineImpl:o}=is(),{finished:s}=Vo();function c(...e){return new r((t,r)=>{let s,c,l=e[e.length-1];if(l&&typeof l==`object`&&!a(l)&&!i(l)){let t=n(e);s=t.signal,c=t.end}o(e,(e,n)=>{e?r(e):t(n)},{signal:s,end:c})})}t.exports={finished:s,pipeline:c}})),ss=i(((e,t)=>{var{Buffer:n}=jo(),{ObjectDefineProperty:r,ObjectKeys:i,ReflectApply:a}=Mo(),{promisify:{custom:o}}=No(),{streamReturningOperators:s,promiseReturningOperators:c}=Ho(),{codes:{ERR_ILLEGAL_CONSTRUCTOR:l}}=Lo(),u=as(),{pipeline:d}=is(),{destroyer:f}=Uo(),p=Vo(),m=os(),h=Bo(),g=t.exports=$().Stream;g.isDisturbed=h.isDisturbed,g.isErrored=h.isErrored,g.isReadable=h.isReadable,g.Readable=Qo();for(let e of i(s)){let t=s[e];function n(...e){if(new.target)throw l();return g.Readable.from(a(t,this,e))}r(n,`name`,{__proto__:null,value:t.name}),r(n,`length`,{__proto__:null,value:t.length}),r(g.Readable.prototype,e,{__proto__:null,value:n,enumerable:!1,configurable:!0,writable:!0})}for(let e of i(c)){let t=c[e];function n(...e){if(new.target)throw l();return a(t,this,e)}r(n,`name`,{__proto__:null,value:t.name}),r(n,`length`,{__proto__:null,value:t.length}),r(g.Readable.prototype,e,{__proto__:null,value:n,enumerable:!1,configurable:!0,writable:!0})}g.Writable=$o(),g.Duplex=ts(),g.Transform=ns(),g.PassThrough=rs(),g.pipeline=d;var{addAbortSignal:_}=Go();g.addAbortSignal=_,g.finished=p,g.destroy=f,g.compose=u,r(g,`promises`,{__proto__:null,configurable:!0,enumerable:!0,get(){return m}}),r(d,o,{__proto__:null,enumerable:!0,get(){return m.pipeline}}),r(p,o,{__proto__:null,enumerable:!0,get(){return m.finished}}),g.Stream=g,g._isUint8Array=function(e){return e instanceof Uint8Array},g._uint8ArrayToBuffer=function(e){return n.from(e.buffer,e.byteOffset,e.byteLength)}})),cs=i(((e,t)=>{var n=ss(),r=os(),i=n.Readable.destroy;t.exports=n.Readable,t.exports._uint8ArrayToBuffer=n._uint8ArrayToBuffer,t.exports._isUint8Array=n._isUint8Array,t.exports.isDisturbed=n.isDisturbed,t.exports.isErrored=n.isErrored,t.exports.isReadable=n.isReadable,t.exports.Readable=n.Readable,t.exports.Writable=n.Writable,t.exports.Duplex=n.Duplex,t.exports.Transform=n.Transform,t.exports.PassThrough=n.PassThrough,t.exports.addAbortSignal=n.addAbortSignal,t.exports.finished=n.finished,t.exports.destroy=n.destroy,t.exports.destroy=i,t.exports.pipeline=n.pipeline,t.exports.compose=n.compose,Object.defineProperty(n,`promises`,{configurable:!0,enumerable:!0,get(){return r}}),t.exports.Stream=n.Stream,t.exports.default=t.exports})),ls=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t=cs();function n(e){e=Object.assign({},e);let n=e.array,r=e.encoding,i=r===`buffer`,a=!1;n?a=!(r||i):r||=`utf8`,i&&(r=void 0);let o=0,s=[],c=new t.PassThrough({objectMode:a});return r&&c.setEncoding(r),c.on(`data`,e=>{s.push(e),a?o=s.length:o+=e.length}),c.getBufferedValue=()=>n?s:i?Buffer.concat(s,o):s.join(``),c.getBufferedLength=()=>o,c}e.default=n})),us=i((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.array=e.buffer=e.getStream=void 0;var n=t(ls());function r(e,t={}){if(!e)return Promise.reject(Error(`Expected a stream`));t=Object.assign({maxBuffer:1/0},t);let r=t.maxBuffer||1/0,i,a,o=new Promise((o,s)=>{let c=e=>{e&&(e.bufferedData=i.getBufferedValue()),s(e)};i=(0,n.default)(t),e.once(`error`,c),e.pipe(i),i.on(`data`,()=>{i.getBufferedLength()>r&&s(Error(`maxBuffer exceeded`))}),i.once(`error`,c),i.on(`end`,o),a=()=>{e.unpipe&&e.unpipe(i)}});return o.then(a,a),o.then(()=>i.getBufferedValue())}e.getStream=r;function i(e,t={}){r(e,Object.assign({},t,{encoding:`buffer`}))}e.buffer=i;function a(e,t={}){r(e,Object.assign({},t,{array:!0}))}e.array=a})),ds=i(((e,t)=>{t.exports={}})),fs=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0});var t=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},n=typeof window<`u`&&window.document!==void 0,r=typeof process<`u`&&process.versions!=null&&process.versions.node!=null,i=(typeof self>`u`?`undefined`:t(self))===`object`&&self.constructor&&self.constructor.name===`DedicatedWorkerGlobalScope`,a=typeof window<`u`&&window.name===`nodejs`||typeof navigator<`u`&&(navigator.userAgent.includes(`Node.js`)||navigator.userAgent.includes(`jsdom`)),o=typeof Deno<`u`&&Deno.version!==void 0&&Deno.version.deno!==void 0;e.isBrowser=n,e.isWebWorker=i,e.isNode=r,e.isJsDom=a,e.isDeno=o})),ps=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.DefaultMap=void 0,e.DefaultMap=class extends Map{constructor(e,t){super(t),this._defaultFunc=e}get(e){let t=super.get(e);if(t===void 0){if(this.has(e))return t;t=this._defaultFunc(e),this.set(e,t)}return t}update(e,t){let n=t(this.get(e));return this.set(e,n),n}}})),ms=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.DefaultMap=e.exceptionToError=e.exceptionToString=e.filterUndefined=e.mapFilterUndefined=e.hasOwnProperty=e.isEnumValue=e.definedMap=e.reduceTwo=e.sleep=e.dontAwait=e.defined=e.assertNever=e.assert=e.panic=e.proveNever=e.proveType=void 0;function t(e){}e.proveType=t;function n(e,t,n){return console.trace(t),n}e.proveNever=n;function r(e=`This should not happen`){throw console.trace(e),Error(e)}e.panic=r;function i(e,t=`Assertion failed`){if(!e)return r(t)}e.assert=i;function a(e,t="`never` happened"){return r(t)}e.assertNever=a;function o(e,t){return e===void 0?r(`Value was undefined but should be defined`+(t===void 0?``:` because: ${t}`)):e}e.defined=o;function s(e){e instanceof Promise&&e.catch(e=>{throw console.trace(`Unhandled error from unawaited promise`,e),e})}e.dontAwait=s;function c(e){return new Promise(t=>{setTimeout(t,e)})}e.sleep=c;function l(e,t,n){return e===void 0?t:t===void 0?e:n(e,t)}e.reduceTwo=l;function u(e,t){if(e!==void 0)return t(e)}e.definedMap=u;function d(e,t){return Object.keys(e).map(t=>e[t]).some(e=>e===t)}e.isEnumValue=d;function f(e,t){return e==null?!1:Object.prototype.hasOwnProperty.call(e,t)}e.hasOwnProperty=f;function p(e,t){let n=[],r=0;for(let i of e){let e=t(i,r);r+=1,e!==void 0&&n.push(e)}return n}e.mapFilterUndefined=p;function m(e){let t=[];for(let n of e)n!==void 0&&t.push(n);return t}e.filterUndefined=m;function h(e){if(e===void 0)return``;try{return e.toString()}catch(e){try{return`Exception can't be stringified: ${h(e)}`}catch{return`Exception can't be stringified`}}}e.exceptionToString=h;function g(e){return e instanceof Error?e:Error(h(e))}e.exceptionToError=g;var _=ps();Object.defineProperty(e,`DefaultMap`,{enumerable:!0,get:function(){return _.DefaultMap}})})),hs=i(((e,t)=>{t.exports=a;var n=/^(?:\w+:)?\/\/(\S+)$/,r=/^localhost[\:?\d]*(?:[^\:?\d]\S*)?$/,i=/^[^\s\.]+\.\S{2,}$/;function a(e){if(typeof e!=`string`)return!1;var t=e.match(n);if(!t)return!1;var a=t[1];return a?!!(r.test(a)||i.test(a)):!1}})),gs=i(((e,t)=>{var n=typeof globalThis<`u`&&globalThis||typeof self<`u`&&self||typeof global<`u`&&global,r=(function(){function e(){this.fetch=!1,this.DOMException=n.DOMException}return e.prototype=n,new e})();(function(e){(function(t){var n=e!==void 0&&e||typeof self<`u`&&self||typeof global<`u`&&global||{},r={searchParams:`URLSearchParams`in n,iterable:`Symbol`in n&&`iterator`in Symbol,blob:`FileReader`in n&&`Blob`in n&&(function(){try{return new Blob,!0}catch{return!1}})(),formData:`FormData`in n,arrayBuffer:`ArrayBuffer`in n};function i(e){return e&&DataView.prototype.isPrototypeOf(e)}if(r.arrayBuffer)var a=[`[object Int8Array]`,`[object Uint8Array]`,`[object Uint8ClampedArray]`,`[object Int16Array]`,`[object Uint16Array]`,`[object Int32Array]`,`[object Uint32Array]`,`[object Float32Array]`,`[object Float64Array]`],o=ArrayBuffer.isView||function(e){return e&&a.indexOf(Object.prototype.toString.call(e))>-1};function s(e){if(typeof e!=`string`&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||e===``)throw TypeError(`Invalid character in header field name: "`+e+`"`);return e.toLowerCase()}function c(e){return typeof e!=`string`&&(e=String(e)),e}function l(e){var t={next:function(){var t=e.shift();return{done:t===void 0,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function u(e){this.map={},e instanceof u?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){if(e.length!=2)throw TypeError(`Headers constructor: expected name/value pair to be length 2, found`+e.length);this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}u.prototype.append=function(e,t){e=s(e),t=c(t);var n=this.map[e];this.map[e]=n?n+`, `+t:t},u.prototype.delete=function(e){delete this.map[s(e)]},u.prototype.get=function(e){return e=s(e),this.has(e)?this.map[e]:null},u.prototype.has=function(e){return this.map.hasOwnProperty(s(e))},u.prototype.set=function(e,t){this.map[s(e)]=c(t)},u.prototype.forEach=function(e,t){for(var n in this.map)this.map.hasOwnProperty(n)&&e.call(t,this.map[n],n,this)},u.prototype.keys=function(){var e=[];return this.forEach(function(t,n){e.push(n)}),l(e)},u.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),l(e)},u.prototype.entries=function(){var e=[];return this.forEach(function(t,n){e.push([n,t])}),l(e)},r.iterable&&(u.prototype[Symbol.iterator]=u.prototype.entries);function d(e){if(!e._noBody){if(e.bodyUsed)return Promise.reject(TypeError(`Already read`));e.bodyUsed=!0}}function f(e){return new Promise(function(t,n){e.onload=function(){t(e.result)},e.onerror=function(){n(e.error)}})}function p(e){var t=new FileReader,n=f(t);return t.readAsArrayBuffer(e),n}function m(e){var t=new FileReader,n=f(t),r=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=r?r[1]:`utf-8`;return t.readAsText(e,i),n}function h(e){for(var t=new Uint8Array(e),n=Array(t.length),r=0;r<t.length;r++)n[r]=String.fromCharCode(t[r]);return n.join(``)}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?typeof e==`string`?this._bodyText=e:r.blob&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:r.formData&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():r.arrayBuffer&&r.blob&&i(e)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||o(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=``),this.headers.get(`content-type`)||(typeof e==`string`?this.headers.set(`content-type`,`text/plain;charset=UTF-8`):this._bodyBlob&&this._bodyBlob.type?this.headers.set(`content-type`,this._bodyBlob.type):r.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set(`content-type`,`application/x-www-form-urlencoded;charset=UTF-8`))},r.blob&&(this.blob=function(){var e=d(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw Error(`could not read FormData body as blob`);return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer)return d(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer));if(r.blob)return this.blob().then(p);throw Error(`could not read as ArrayBuffer`)},this.text=function(){var e=d(this);if(e)return e;if(this._bodyBlob)return m(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(h(this._bodyArrayBuffer));if(this._bodyFormData)throw Error(`could not read FormData body as text`);return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(x)}),this.json=function(){return this.text().then(JSON.parse)},this}var v=[`CONNECT`,`DELETE`,`GET`,`HEAD`,`OPTIONS`,`PATCH`,`POST`,`PUT`,`TRACE`];function y(e){var t=e.toUpperCase();return v.indexOf(t)>-1?t:e}function b(e,t){if(!(this instanceof b))throw TypeError(`Please use the "new" operator, this DOM object constructor cannot be called as a function.`);t||={};var r=t.body;if(e instanceof b){if(e.bodyUsed)throw TypeError(`Already read`);this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new u(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,!r&&e._bodyInit!=null&&(r=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||`same-origin`,(t.headers||!this.headers)&&(this.headers=new u(t.headers)),this.method=y(t.method||this.method||`GET`),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal||function(){if(`AbortController`in n)return new AbortController().signal}(),this.referrer=null,(this.method===`GET`||this.method===`HEAD`)&&r)throw TypeError(`Body not allowed for GET or HEAD requests`);if(this._initBody(r),(this.method===`GET`||this.method===`HEAD`)&&(t.cache===`no-store`||t.cache===`no-cache`)){var i=/([?&])_=[^&]*/;i.test(this.url)?this.url=this.url.replace(i,`$1_=`+new Date().getTime()):this.url+=(/\?/.test(this.url)?`&`:`?`)+`_=`+new Date().getTime()}}b.prototype.clone=function(){return new b(this,{body:this._bodyInit})};function x(e){var t=new FormData;return e.trim().split(`&`).forEach(function(e){if(e){var n=e.split(`=`),r=n.shift().replace(/\+/g,` `),i=n.join(`=`).replace(/\+/g,` `);t.append(decodeURIComponent(r),decodeURIComponent(i))}}),t}function S(e){var t=new u;return e.replace(/\r?\n[\t ]+/g,` `).split(`\r`).map(function(e){return e.indexOf(`
925
+ `)===0?e.substr(1,e.length):e}).forEach(function(e){var n=e.split(`:`),r=n.shift().trim();if(r){var i=n.join(`:`).trim();try{t.append(r,i)}catch(e){console.warn(`Response `+e.message)}}}),t}_.call(b.prototype);function C(e,t){if(!(this instanceof C))throw TypeError(`Please use the "new" operator, this DOM object constructor cannot be called as a function.`);if(t||={},this.type=`default`,this.status=t.status===void 0?200:t.status,this.status<200||this.status>599)throw 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=t.statusText===void 0?``:``+t.statusText,this.headers=new u(t.headers),this.url=t.url||``,this._initBody(e)}_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new u(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:``});return e.ok=!1,e.status=0,e.type=`error`,e};var w=[301,302,303,307,308];C.redirect=function(e,t){if(w.indexOf(t)===-1)throw RangeError(`Invalid status code`);return new C(null,{status:t,headers:{location:e}})},t.DOMException=n.DOMException;try{new t.DOMException}catch{t.DOMException=function(e,t){this.message=e,this.name=t,this.stack=Error(e).stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function T(e,i){return new Promise(function(a,o){var l=new b(e,i);if(l.signal&&l.signal.aborted)return o(new t.DOMException(`Aborted`,`AbortError`));var d=new XMLHttpRequest;function f(){d.abort()}d.onload=function(){var e={statusText:d.statusText,headers:S(d.getAllResponseHeaders()||``)};l.url.indexOf(`file://`)===0&&(d.status<200||d.status>599)?e.status=200:e.status=d.status,e.url=`responseURL`in d?d.responseURL:e.headers.get(`X-Request-URL`);var t=`response`in d?d.response:d.responseText;setTimeout(function(){a(new C(t,e))},0)},d.onerror=function(){setTimeout(function(){o(TypeError(`Network request failed`))},0)},d.ontimeout=function(){setTimeout(function(){o(TypeError(`Network request timed out`))},0)},d.onabort=function(){setTimeout(function(){o(new t.DOMException(`Aborted`,`AbortError`))},0)};function p(e){try{return e===``&&n.location.href?n.location.href:e}catch{return e}}if(d.open(l.method,p(l.url),!0),l.credentials===`include`?d.withCredentials=!0:l.credentials===`omit`&&(d.withCredentials=!1),`responseType`in d&&(r.blob?d.responseType=`blob`:r.arrayBuffer&&(d.responseType=`arraybuffer`)),i&&typeof i.headers==`object`&&!(i.headers instanceof u||n.Headers&&i.headers instanceof n.Headers)){var m=[];Object.getOwnPropertyNames(i.headers).forEach(function(e){m.push(s(e)),d.setRequestHeader(e,c(i.headers[e]))}),l.headers.forEach(function(e,t){m.indexOf(t)===-1&&d.setRequestHeader(t,e)})}else l.headers.forEach(function(e,t){d.setRequestHeader(t,e)});l.signal&&(l.signal.addEventListener(`abort`,f),d.onreadystatechange=function(){d.readyState===4&&l.signal.removeEventListener(`abort`,f)}),d.send(l._bodyInit===void 0?null:l._bodyInit)})}return T.polyfill=!0,n.fetch||(n.fetch=T,n.Headers=u,n.Request=b,n.Response=C),t.Headers=u,t.Request=b,t.Response=C,t.fetch=T,Object.defineProperty(t,`__esModule`,{value:!0}),t})({})})(r),r.fetch.ponyfill=!0,delete r.fetch.polyfill;var i=n.fetch?n:r;e=i.fetch,e.default=i.fetch,e.fetch=i.fetch,e.Headers=i.Headers,e.Request=i.Request,e.Response=i.Response,t.exports=e})),_s=i((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),r=e&&e.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&t(r,e,i);return n(r,e),r},i=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},a=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.readFromFileOrURL=e.readableFromFileOrURL=void 0;var o=r(ds()),s=fs(),c=us(),l=ms(),u=bs(),d=hs(),f=a(gs());function p(e){return Array.isArray(e)?e.reduce(function(e,t){if(t!==void 0&&t.length>0){let n=t.indexOf(`:`);if(n<0)return(0,u.panic)(`Could not parse HTTP header "${t}".`);let r=t.slice(0,n).trim();e[r]=t.slice(n+1).trim()}return e},{}):{}}function m(e,t){return i(this,void 0,void 0,function*(){try{if(d(e)){let n=yield(0,f.default)(e,{headers:p(t)});return(0,l.defined)(n.body)}else if(s.isNode){if(e===`-`)return process.stdin;let t=o.lstatSync(e).isSymbolicLink()?o.readlinkSync(e):e;if(o.existsSync(t))return o.createReadStream(t,`utf8`)}}catch(t){return(0,u.messageError)(`MiscReadError`,{fileOrURL:e,message:(0,l.exceptionToString)(t)})}return(0,u.messageError)(`DriverInputFileDoesNotExist`,{filename:e})})}e.readableFromFileOrURL=m;function h(e,t){return i(this,void 0,void 0,function*(){let n=yield m(e,t);try{return yield(0,c.getStream)(n)}catch(t){return(0,u.messageError)(`MiscReadError`,{fileOrURL:e,message:(0,l.exceptionToString)(t)})}})}e.readFromFileOrURL=h})),vs=i((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};Object.defineProperty(e,`__esModule`,{value:!0}),e.FetchingJSONSchemaStore=void 0;var n=Aa(),r=bs(),i=_s();e.FetchingJSONSchemaStore=class extends n.JSONSchemaStore{constructor(e){super(),this._httpHeaders=e}fetch(e){return t(this,void 0,void 0,function*(){return(0,r.parseJSON)(yield(0,i.readFromFileOrURL)(e,this._httpHeaders),`JSON Schema`,e)})}}})),ys=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.sourcesFromPostmanCollection=void 0;var t=Q();function n(e){try{return JSON.parse(e),!0}catch{return!1}}function r(e,r){let i=[],a=[];function o(e){if(typeof e==`object`){if(Array.isArray(e.item)){for(let t of e.item)o(t);typeof e.info==`object`&&typeof e.info.description==`string`&&a.push(e.info.description)}if(typeof e.name==`string`&&Array.isArray(e.response)){let t=[];for(let r of e.response)typeof r==`object`&&typeof r.body==`string`&&n(r.body)&&t.push(r.body);if(t.length>0){let n={name:e.name,samples:t},r=[e.name];if(typeof e.request==`object`){let{method:t,url:n}=e.request;t!==void 0&&typeof n==`object`&&n.raw!==void 0&&r.push(`${t} ${n.raw}`)}typeof e.request==`object`&&typeof e.request.description==`string`&&r.push(e.request.description),n.description=r.length===0?void 0:r.join(`
926
+
927
+ `),i.push(n)}}}}o((0,t.parseJSON)(e,`Postman collection`,r));let s=a.join(`
928
+
929
+ `).trim(),c;return s!==``&&(c=s),{sources:i,description:c}}e.sourcesFromPostmanCollection=r})),bs=i((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.ClassType=e.ArrayType=e.PrimitiveType=e.Type=e.messageAssert=e.messageError=e.QuickTypeError=e.trainMarkovChain=e.isLetterOrDigit=e.legalizeCharacters=e.allUpperWordStyle=e.firstUpperWordStyle=e.combineWords=e.capitalize=e.splitIntoWords=e.inflateBase64=e.checkArray=e.checkStringMap=e.parseJSON=e.assertNever=e.defined=e.assert=e.panic=e.IssueAnnotationData=e.Namer=e.funPrefixNamer=e.Name=e.parenIfNeeded=e.singleWord=e.modifySource=e.languageNamed=e.defaultTargetLanguages=e.TargetLanguage=e.getOptionValues=e.Option=e.Ref=e.JSONSchemaInput=e.jsonInputForTargetLanguage=e.JSONInput=e.InputData=e.CompressedJSON=e.inferenceFlagsObject=e.defaultInferenceFlags=e.inferenceFlagNames=e.inferenceFlags=e.combineRenderResults=e.quicktype=e.quicktypeMultiFileSync=e.quicktypeMultiFile=e.getTargetLanguage=void 0,e.TypeScriptRenderer=e.TypeScriptTargetLanguage=e.javaScriptPropTypesOptions=e.JavaScriptPropTypesRenderer=e.JavaScriptPropTypesTargetLanguage=e.javaScriptOptions=e.JavaScriptRenderer=e.JavaScriptTargetLanguage=e.javaOptions=e.JavaRenderer=e.JavaTargetLanguage=e.objcOptions=e.ObjectiveCRenderer=e.ObjectiveCTargetLanguage=e.goOptions=e.GoRenderer=e.GoTargetLanguage=e.pythonOptions=e.PythonRenderer=e.PythonTargetLanguage=e.CSharpRenderer=e.cSharpOptions=e.CSharpTargetLanguage=e.cPlusPlusOptions=e.CPlusPlusRenderer=e.CPlusPlusTargetLanguage=e.uriTypeAttributeKind=e.ConvenienceRenderer=e.nullableFromUnion=e.matchType=e.removeNullFromUnion=e.StringTypes=e.namesTypeAttributeKind=e.makeNamesTypeAttributes=e.TypeNames=e.emptyTypeAttributes=e.TypeAttributeKind=e.derefTypeRef=e.TypeBuilder=e.sourcesFromPostmanCollection=e.JSONSchemaStore=e.FetchingJSONSchemaStore=e.readFromFileOrURL=e.readableFromFileOrURL=e.getStream=e.ObjectType=e.UnionType=e.MapType=e.EnumType=e.ClassProperty=void 0,e.dartOptions=e.DartRenderer=e.DartTargetLanguage=e.haskellOptions=e.HaskellRenderer=e.HaskellTargetLanguage=e.CrystalRenderer=e.CrystalTargetLanguage=e.rubyOptions=e.RubyRenderer=e.RubyTargetLanguage=e.rustOptions=e.RustRenderer=e.RustTargetLanguage=e.JSONSchemaRenderer=e.JSONSchemaTargetLanguage=e.elmOptions=e.ElmRenderer=e.ElmTargetLanguage=e.kotlinOptions=e.KotlinRenderer=e.KotlinTargetLanguage=e.swiftOptions=e.SwiftRenderer=e.SwiftTargetLanguage=e.tsFlowOptions=e.FlowRenderer=e.FlowTargetLanguage=void 0;var t=ko();Object.defineProperty(e,`getTargetLanguage`,{enumerable:!0,get:function(){return t.getTargetLanguage}}),Object.defineProperty(e,`quicktypeMultiFile`,{enumerable:!0,get:function(){return t.quicktypeMultiFile}}),Object.defineProperty(e,`quicktypeMultiFileSync`,{enumerable:!0,get:function(){return t.quicktypeMultiFileSync}}),Object.defineProperty(e,`quicktype`,{enumerable:!0,get:function(){return t.quicktype}}),Object.defineProperty(e,`combineRenderResults`,{enumerable:!0,get:function(){return t.combineRenderResults}}),Object.defineProperty(e,`inferenceFlags`,{enumerable:!0,get:function(){return t.inferenceFlags}}),Object.defineProperty(e,`inferenceFlagNames`,{enumerable:!0,get:function(){return t.inferenceFlagNames}}),Object.defineProperty(e,`defaultInferenceFlags`,{enumerable:!0,get:function(){return t.defaultInferenceFlags}}),Object.defineProperty(e,`inferenceFlagsObject`,{enumerable:!0,get:function(){return t.inferenceFlagsObject}});var n=wo();Object.defineProperty(e,`CompressedJSON`,{enumerable:!0,get:function(){return n.CompressedJSON}});var r=Eo();Object.defineProperty(e,`InputData`,{enumerable:!0,get:function(){return r.InputData}}),Object.defineProperty(e,`JSONInput`,{enumerable:!0,get:function(){return r.JSONInput}}),Object.defineProperty(e,`jsonInputForTargetLanguage`,{enumerable:!0,get:function(){return r.jsonInputForTargetLanguage}});var i=Pa();Object.defineProperty(e,`JSONSchemaInput`,{enumerable:!0,get:function(){return i.JSONSchemaInput}});var a=Pa();Object.defineProperty(e,`Ref`,{enumerable:!0,get:function(){return a.Ref}});var o=ra();Object.defineProperty(e,`Option`,{enumerable:!0,get:function(){return o.Option}}),Object.defineProperty(e,`getOptionValues`,{enumerable:!0,get:function(){return o.getOptionValues}});var s=Ba();Object.defineProperty(e,`TargetLanguage`,{enumerable:!0,get:function(){return s.TargetLanguage}});var c=fo();Object.defineProperty(e,`defaultTargetLanguages`,{enumerable:!0,get:function(){return c.all}}),Object.defineProperty(e,`languageNamed`,{enumerable:!0,get:function(){return c.languageNamed}});var l=Ea();Object.defineProperty(e,`modifySource`,{enumerable:!0,get:function(){return l.modifySource}}),Object.defineProperty(e,`singleWord`,{enumerable:!0,get:function(){return l.singleWord}}),Object.defineProperty(e,`parenIfNeeded`,{enumerable:!0,get:function(){return l.parenIfNeeded}});var u=Ta();Object.defineProperty(e,`Name`,{enumerable:!0,get:function(){return u.Name}}),Object.defineProperty(e,`funPrefixNamer`,{enumerable:!0,get:function(){return u.funPrefixNamer}}),Object.defineProperty(e,`Namer`,{enumerable:!0,get:function(){return u.Namer}});var d=Da();Object.defineProperty(e,`IssueAnnotationData`,{enumerable:!0,get:function(){return d.IssueAnnotationData}});var f=Q();Object.defineProperty(e,`panic`,{enumerable:!0,get:function(){return f.panic}}),Object.defineProperty(e,`assert`,{enumerable:!0,get:function(){return f.assert}}),Object.defineProperty(e,`defined`,{enumerable:!0,get:function(){return f.defined}}),Object.defineProperty(e,`assertNever`,{enumerable:!0,get:function(){return f.assertNever}}),Object.defineProperty(e,`parseJSON`,{enumerable:!0,get:function(){return f.parseJSON}}),Object.defineProperty(e,`checkStringMap`,{enumerable:!0,get:function(){return f.checkStringMap}}),Object.defineProperty(e,`checkArray`,{enumerable:!0,get:function(){return f.checkArray}}),Object.defineProperty(e,`inflateBase64`,{enumerable:!0,get:function(){return f.inflateBase64}});var p=ua();Object.defineProperty(e,`splitIntoWords`,{enumerable:!0,get:function(){return p.splitIntoWords}}),Object.defineProperty(e,`capitalize`,{enumerable:!0,get:function(){return p.capitalize}}),Object.defineProperty(e,`combineWords`,{enumerable:!0,get:function(){return p.combineWords}}),Object.defineProperty(e,`firstUpperWordStyle`,{enumerable:!0,get:function(){return p.firstUpperWordStyle}}),Object.defineProperty(e,`allUpperWordStyle`,{enumerable:!0,get:function(){return p.allUpperWordStyle}}),Object.defineProperty(e,`legalizeCharacters`,{enumerable:!0,get:function(){return p.legalizeCharacters}}),Object.defineProperty(e,`isLetterOrDigit`,{enumerable:!0,get:function(){return p.isLetterOrDigit}});var m=_o();Object.defineProperty(e,`trainMarkovChain`,{enumerable:!0,get:function(){return m.train}});var h=C();Object.defineProperty(e,`QuickTypeError`,{enumerable:!0,get:function(){return h.QuickTypeError}}),Object.defineProperty(e,`messageError`,{enumerable:!0,get:function(){return h.messageError}}),Object.defineProperty(e,`messageAssert`,{enumerable:!0,get:function(){return h.messageAssert}});var g=wa();Object.defineProperty(e,`Type`,{enumerable:!0,get:function(){return g.Type}}),Object.defineProperty(e,`PrimitiveType`,{enumerable:!0,get:function(){return g.PrimitiveType}}),Object.defineProperty(e,`ArrayType`,{enumerable:!0,get:function(){return g.ArrayType}}),Object.defineProperty(e,`ClassType`,{enumerable:!0,get:function(){return g.ClassType}}),Object.defineProperty(e,`ClassProperty`,{enumerable:!0,get:function(){return g.ClassProperty}}),Object.defineProperty(e,`EnumType`,{enumerable:!0,get:function(){return g.EnumType}}),Object.defineProperty(e,`MapType`,{enumerable:!0,get:function(){return g.MapType}}),Object.defineProperty(e,`UnionType`,{enumerable:!0,get:function(){return g.UnionType}}),Object.defineProperty(e,`ObjectType`,{enumerable:!0,get:function(){return g.ObjectType}});var _=us();Object.defineProperty(e,`getStream`,{enumerable:!0,get:function(){return _.getStream}});var v=_s();Object.defineProperty(e,`readableFromFileOrURL`,{enumerable:!0,get:function(){return v.readableFromFileOrURL}}),Object.defineProperty(e,`readFromFileOrURL`,{enumerable:!0,get:function(){return v.readFromFileOrURL}});var y=vs();Object.defineProperty(e,`FetchingJSONSchemaStore`,{enumerable:!0,get:function(){return y.FetchingJSONSchemaStore}});var b=Aa();Object.defineProperty(e,`JSONSchemaStore`,{enumerable:!0,get:function(){return b.JSONSchemaStore}});var x=ys();Object.defineProperty(e,`sourcesFromPostmanCollection`,{enumerable:!0,get:function(){return x.sourcesFromPostmanCollection}});var S=pa();Object.defineProperty(e,`TypeBuilder`,{enumerable:!0,get:function(){return S.TypeBuilder}});var w=va();Object.defineProperty(e,`derefTypeRef`,{enumerable:!0,get:function(){return w.derefTypeRef}});var T=na();Object.defineProperty(e,`TypeAttributeKind`,{enumerable:!0,get:function(){return T.TypeAttributeKind}}),Object.defineProperty(e,`emptyTypeAttributes`,{enumerable:!0,get:function(){return T.emptyTypeAttributes}});var E=fa();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 D=ma();Object.defineProperty(e,`StringTypes`,{enumerable:!0,get:function(){return D.StringTypes}});var O=ha();Object.defineProperty(e,`removeNullFromUnion`,{enumerable:!0,get:function(){return O.removeNullFromUnion}}),Object.defineProperty(e,`matchType`,{enumerable:!0,get:function(){return O.matchType}}),Object.defineProperty(e,`nullableFromUnion`,{enumerable:!0,get:function(){return O.nullableFromUnion}});var k=Ra();Object.defineProperty(e,`ConvenienceRenderer`,{enumerable:!0,get:function(){return k.ConvenienceRenderer}});var A=Ca();Object.defineProperty(e,`uriTypeAttributeKind`,{enumerable:!0,get:function(){return A.uriTypeAttributeKind}});var j=Ua();Object.defineProperty(e,`CPlusPlusTargetLanguage`,{enumerable:!0,get:function(){return j.CPlusPlusTargetLanguage}}),Object.defineProperty(e,`CPlusPlusRenderer`,{enumerable:!0,get:function(){return j.CPlusPlusRenderer}}),Object.defineProperty(e,`cPlusPlusOptions`,{enumerable:!0,get:function(){return j.cPlusPlusOptions}});var M=Va();Object.defineProperty(e,`CSharpTargetLanguage`,{enumerable:!0,get:function(){return M.CSharpTargetLanguage}}),Object.defineProperty(e,`cSharpOptions`,{enumerable:!0,get:function(){return M.cSharpOptions}}),Object.defineProperty(e,`CSharpRenderer`,{enumerable:!0,get:function(){return M.CSharpRenderer}});var N=oo();Object.defineProperty(e,`PythonTargetLanguage`,{enumerable:!0,get:function(){return N.PythonTargetLanguage}}),Object.defineProperty(e,`PythonRenderer`,{enumerable:!0,get:function(){return N.PythonRenderer}}),Object.defineProperty(e,`pythonOptions`,{enumerable:!0,get:function(){return N.pythonOptions}});var P=Ha();Object.defineProperty(e,`GoTargetLanguage`,{enumerable:!0,get:function(){return P.GoTargetLanguage}}),Object.defineProperty(e,`GoRenderer`,{enumerable:!0,get:function(){return P.GoRenderer}}),Object.defineProperty(e,`goOptions`,{enumerable:!0,get:function(){return P.goOptions}});var ee=Wa();Object.defineProperty(e,`ObjectiveCTargetLanguage`,{enumerable:!0,get:function(){return ee.ObjectiveCTargetLanguage}}),Object.defineProperty(e,`ObjectiveCRenderer`,{enumerable:!0,get:function(){return ee.ObjectiveCRenderer}}),Object.defineProperty(e,`objcOptions`,{enumerable:!0,get:function(){return ee.objcOptions}});var F=Ga();Object.defineProperty(e,`JavaTargetLanguage`,{enumerable:!0,get:function(){return F.JavaTargetLanguage}}),Object.defineProperty(e,`JavaRenderer`,{enumerable:!0,get:function(){return F.JavaRenderer}}),Object.defineProperty(e,`javaOptions`,{enumerable:!0,get:function(){return F.javaOptions}});var I=Ja();Object.defineProperty(e,`JavaScriptTargetLanguage`,{enumerable:!0,get:function(){return I.JavaScriptTargetLanguage}}),Object.defineProperty(e,`JavaScriptRenderer`,{enumerable:!0,get:function(){return I.JavaScriptRenderer}}),Object.defineProperty(e,`javaScriptOptions`,{enumerable:!0,get:function(){return I.javaScriptOptions}});var L=Ya();Object.defineProperty(e,`JavaScriptPropTypesTargetLanguage`,{enumerable:!0,get:function(){return L.JavaScriptPropTypesTargetLanguage}}),Object.defineProperty(e,`JavaScriptPropTypesRenderer`,{enumerable:!0,get:function(){return L.JavaScriptPropTypesRenderer}}),Object.defineProperty(e,`javaScriptPropTypesOptions`,{enumerable:!0,get:function(){return L.javaScriptPropTypesOptions}});var R=Xa();Object.defineProperty(e,`TypeScriptTargetLanguage`,{enumerable:!0,get:function(){return R.TypeScriptTargetLanguage}}),Object.defineProperty(e,`TypeScriptRenderer`,{enumerable:!0,get:function(){return R.TypeScriptRenderer}}),Object.defineProperty(e,`FlowTargetLanguage`,{enumerable:!0,get:function(){return R.FlowTargetLanguage}}),Object.defineProperty(e,`FlowRenderer`,{enumerable:!0,get:function(){return R.FlowRenderer}}),Object.defineProperty(e,`tsFlowOptions`,{enumerable:!0,get:function(){return R.tsFlowOptions}});var z=Za();Object.defineProperty(e,`SwiftTargetLanguage`,{enumerable:!0,get:function(){return z.SwiftTargetLanguage}}),Object.defineProperty(e,`SwiftRenderer`,{enumerable:!0,get:function(){return z.SwiftRenderer}}),Object.defineProperty(e,`swiftOptions`,{enumerable:!0,get:function(){return z.swiftOptions}});var te=Qa();Object.defineProperty(e,`KotlinTargetLanguage`,{enumerable:!0,get:function(){return te.KotlinTargetLanguage}}),Object.defineProperty(e,`KotlinRenderer`,{enumerable:!0,get:function(){return te.KotlinRenderer}}),Object.defineProperty(e,`kotlinOptions`,{enumerable:!0,get:function(){return te.kotlinOptions}});var ne=$a();Object.defineProperty(e,`ElmTargetLanguage`,{enumerable:!0,get:function(){return ne.ElmTargetLanguage}}),Object.defineProperty(e,`ElmRenderer`,{enumerable:!0,get:function(){return ne.ElmRenderer}}),Object.defineProperty(e,`elmOptions`,{enumerable:!0,get:function(){return ne.elmOptions}});var re=eo();Object.defineProperty(e,`JSONSchemaTargetLanguage`,{enumerable:!0,get:function(){return re.JSONSchemaTargetLanguage}}),Object.defineProperty(e,`JSONSchemaRenderer`,{enumerable:!0,get:function(){return re.JSONSchemaRenderer}});var B=to();Object.defineProperty(e,`RustTargetLanguage`,{enumerable:!0,get:function(){return B.RustTargetLanguage}}),Object.defineProperty(e,`RustRenderer`,{enumerable:!0,get:function(){return B.RustRenderer}}),Object.defineProperty(e,`rustOptions`,{enumerable:!0,get:function(){return B.rustOptions}});var V=io();Object.defineProperty(e,`RubyTargetLanguage`,{enumerable:!0,get:function(){return V.RubyTargetLanguage}}),Object.defineProperty(e,`RubyRenderer`,{enumerable:!0,get:function(){return V.RubyRenderer}}),Object.defineProperty(e,`rubyOptions`,{enumerable:!0,get:function(){return V.rubyOptions}});var ie=no();Object.defineProperty(e,`CrystalTargetLanguage`,{enumerable:!0,get:function(){return ie.CrystalTargetLanguage}}),Object.defineProperty(e,`CrystalRenderer`,{enumerable:!0,get:function(){return ie.CrystalRenderer}});var ae=co();Object.defineProperty(e,`HaskellTargetLanguage`,{enumerable:!0,get:function(){return ae.HaskellTargetLanguage}}),Object.defineProperty(e,`HaskellRenderer`,{enumerable:!0,get:function(){return ae.HaskellRenderer}}),Object.defineProperty(e,`haskellOptions`,{enumerable:!0,get:function(){return ae.haskellOptions}});var H=ao();Object.defineProperty(e,`DartTargetLanguage`,{enumerable:!0,get:function(){return H.DartTargetLanguage}}),Object.defineProperty(e,`DartRenderer`,{enumerable:!0,get:function(){return H.DartRenderer}}),Object.defineProperty(e,`dartOptions`,{enumerable:!0,get:function(){return H.dartOptions}})}));export{fo as n,bs as t};