/*! For license information please see 19.795893c5.chunk.js.LICENSE.txt */
(self.webpackChunkweb_toolbox=self.webpackChunkweb_toolbox||[]).push([[19],{16176:(e,t,n)=>{var i,r,s,o,a,u,l,c,h,p,d,m,f,y,g,_,v,b;m=n(18985),y=n(85683),v=n(68267),b=new Uint8Array(v.data),_=new m(b),g=Math.log2||function(e){return Math.log(e)/Math.LN2},i=(f=function(e){return g(e)+1|0})(y.categories.length-1),o=f(y.combiningClasses.length-1),h=f(y.scripts.length-1),l=f(y.eaw.length-1),s=o+h+l+10,u=h+l+10,d=l+10,r=(1<<i)-1,a=(1<<o)-1,p=(1<<h)-1,c=(1<<l)-1,t.getCategory=function(e){var t;return t=_.get(e),y.categories[t>>s&r]},t.getCombiningClass=function(e){var t;return t=_.get(e),y.combiningClasses[t>>u&a]},t.getScript=function(e){var t;return t=_.get(e),y.scripts[t>>d&p]},t.getEastAsianWidth=function(e){var t;return t=_.get(e),y.eaw[t>>10&c]},t.getNumericValue=function(e){var t,n,i;if(0===(n=1023&(i=_.get(e))))return null;if(n<=50)return n-1;if(n<480)return((n>>4)-12)/(1+(15&n));if(n<768){for(i=(n>>5)-14,t=2+(31&n);t>0;)i*=10,t--;return i}for(i=(n>>2)-191,t=1+(3&n);t>0;)i*=60,t--;return i},t.isAlphabetic=function(e){var n;return"Lu"===(n=t.getCategory(e))||"Ll"===n||"Lt"===n||"Lm"===n||"Lo"===n||"Nl"===n},t.isDigit=function(e){return"Nd"===t.getCategory(e)},t.isPunctuation=function(e){var n;return"Pc"===(n=t.getCategory(e))||"Pd"===n||"Pe"===n||"Pf"===n||"Pi"===n||"Po"===n||"Ps"===n},t.isLowerCase=function(e){return"Ll"===t.getCategory(e)},t.isUpperCase=function(e){return"Lu"===t.getCategory(e)},t.isTitleCase=function(e){return"Lt"===t.getCategory(e)},t.isWhiteSpace=function(e){var n;return"Zs"===(n=t.getCategory(e))||"Zl"===n||"Zp"===n},t.isBaseForm=function(e){var n;return"Nd"===(n=t.getCategory(e))||"No"===n||"Nl"===n||"Lu"===n||"Ll"===n||"Lt"===n||"Lm"===n||"Lo"===n||"Me"===n||"Mc"===n},t.isMark=function(e){var n;return"Mn"===(n=t.getCategory(e))||"Me"===n||"Mc"===n}},94774:(e,t,n)=>{"use strict";var i=n(24994);t.A=void 0;var r=i(n(79526)),s=n(44414);t.A=(0,r.default)((0,s.jsx)("path",{d:"M7 5h10v2h2V3c0-1.1-.9-1.99-2-1.99L7 1c-1.1 0-2 .9-2 2v4h2zm8.41 11.59L20 12l-4.59-4.59L14 8.83 17.17 12 14 15.17zM10 15.17 6.83 12 10 8.83 8.59 7.41 4 12l4.59 4.59zM17 19H7v-2H5v4c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2v-4h-2z"}),"DeveloperMode")},58531:(e,t,n)=>{"use strict";var i=n(24994);t.A=void 0;var r=i(n(79526)),s=n(44414);t.A=(0,r.default)((0,s.jsx)("path",{d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5"}),"Link")},80560:(e,t,n)=>{"use strict";var i=n(85224);Object.defineProperty(t,"__esModule",{value:!0});var r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s="undefined"!==typeof window&&"undefined"!==typeof window.document,o="object"===("undefined"===typeof self?"undefined":r(self))&&self.constructor&&"DedicatedWorkerGlobalScope"===self.constructor.name,a="undefined"!==typeof i&&null!=i.versions&&null!=i.versions.node;t.isBrowser=s,t.isWebWorker=o,t.isNode=a,t.isJsDom=function(){return"undefined"!==typeof window&&"nodejs"===window.name||navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")}},74868:function(e,t){"use strict";var n=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};function i(e){let t=0;for(let n=0;n<e.length;n++){t=(t<<5)-t+e.charCodeAt(n),t|=0}return t}function r(e,t){return 31*e+(0|t)|0}function s(e,t){return void 0!==e?e:t}function o(e,t){if(void 0!==e)return t(e)}function a(e,t){const n=e.length;if(!(t>n))return e[n-t]}function u(e,t){return e.sort(((e,n)=>{return i=t(e),r=t(n),i<r?-1:i>r?1:0;var i,r}))}function l(e,t){for(const[n,i]of t)e.set(n,i);return e}function c(e,t,n){for(const[i,r]of n){const n=e.get(i),s=void 0===n?r:t(n,r,i);e.set(i,s)}return e}function h(e,t){return u(Array.from(e),(e=>{let[n,i]=e;return t(i,n)}))}function p(e,t){return new Map(h(e,t))}function d(e,t){for(const n of t)for(const t of n)e.add(t);return e}function m(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return d(e,n)}Object.defineProperty(t,"__esModule",{value:!0}),t.hashCodeInit=17,t.hashString=i,t.addHashCode=r,t.withDefault=s,t.definedMap=o,t.definedMapWithDefault=function(e,t,n){return s(o(e,n),t)},t.hasOwnProperty=function(e,t){return void 0!==e&&null!==e&&Object.prototype.hasOwnProperty.call(e,t)},t.iterableFind=function(e,t){for(const n of e)if(t(n))return n},t.iterableEvery=function(e,t){for(const n of e)if(!t(n))return!1;return!0},t.iterableSome=function(e,t){for(const n of e)if(t(n))return!0;return!1},t.iterableFirst=function(e){for(const t of e)return t},t.iterableMax=function(e){let t;for(const n of e)(void 0===t||n>t)&&(t=n);return t},t.iterableMinBy=function(e,t){let n,i;for(const r of e){const e=t(r);(void 0===n||e<n)&&(n=e,i=r)}return i},t.iterableReduce=function(e,t,n){let i=t;for(const r of e)i=n(i,r);return i},t.iterableEnumerate=function*(e){let t=0;for(const n of e)yield[t,n],t+=1},t.iterableSkip=function*(e,t){let n=0;for(const i of e)n>=t?yield i:n+=1},t.arrayGetFromEnd=a,t.arrayLast=function(e){return a(e,1)},t.arrayPop=function(e){const t=e.length;if(0===t)throw new Error("Cannot pop empty array");return e.slice(0,t-1)},t.arrayIntercalate=function(e,t){const n=[];for(const i of t)n.length>0&&n.push(e),n.push(i);return n},t.arrayMapSync=function(e,t){return n(this,void 0,void 0,(function*(){const n=[];let i=0;for(const r of e)n.push(yield t(r,i)),i+=1;return n}))},t.arraySortByInto=u,t.toReadonlyArray=function(e){return Array.isArray(e)?e:Array.from(e)},t.mapMap=function(e,t){const n=new Map;for(const[i,r]of e)n.set(i,t(r,i));return n},t.mapFirst=function(e){for(const t of e.values())return t},t.mapContains=function(e,t){for(const n of e.values())if(n===t)return!0;return!1},t.mapSome=function(e,t){for(const[n,i]of e)if(t(i,n))return!0;return!1},t.mapMergeInto=l,t.mapMerge=function(e,t){const n=new Map(e);return l(n,t),n},t.mapMergeWithInto=c,t.mapMergeWith=function(e,t,n){const i=new Map(e);return c(i,t,n),i},t.mapFilter=function(e,t){const n=new Map;for(const[i,r]of e)t(r,i)&&n.set(i,r);return n},t.mapFilterMap=function(e,t){const n=new Map;for(const[i,r]of e){const e=t(r,i);void 0!==e&&n.set(i,e)}return n},t.mapSortToArray=h,t.mapSortBy=p,t.mapSortByKey=function(e){return p(e,((e,t)=>t))},t.mapMapEntries=function(e,t){const n=new Map;for(const[i,r]of e){const[e,s]=t(r,i);n.set(e,s)}return n},t.mapUpdateInto=function(e,t,n){return e.set(t,n(e.get(t))),e},t.mapFromObject=function(e){const t=new Map;for(const n of Object.getOwnPropertyNames(e))t.set(n,e[n]);return t},t.mapToObject=function(e){const t={};for(const[n,i]of e)t[n]=i;return t},t.mapFromIterable=function(e,t){const n=new Map;for(const i of e)n.set(i,t(i));return n},t.mapFind=function(e,t){for(const[n,i]of e)if(t(i,n))return i},t.mapTranspose=function(e){const t=new Map;for(const n of e)for(const[e,i]of n){let n=t.get(e);void 0===n&&(n=[],t.set(e,n)),n.push(i)}return t},t.mapMapSync=function(e,t){return n(this,void 0,void 0,(function*(){const n=new Map;for(const[i,r]of e)n.set(i,yield t(r,i));return n}))},t.setIsSuperset=function(e,t){for(const n of t)if(!e.has(n))return!1;return!0},t.setUnionManyInto=d,t.setUnionInto=m,t.setIntersect=function(e,t){const n=new Set;for(const i of e)t.has(i)&&n.add(i);return n},t.setSubtract=function(e,t){const n=new Set(e);for(const i of t)n.delete(i);return n},t.setUnion=function(){const e=new Set;for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return m(e,...n),e},t.setMap=function(e,t){const n=new Set;for(const i of e)n.add(t(i));return n},t.setFilter=function(e,t){const n=new Set;for(const i of e)t(i)&&n.add(i);return n},t.setFilterMap=function(e,t){const n=new Set;for(const i of e){const e=t(i);void 0!==e&&n.add(e)}return n},t.setSortBy=function(e,t){return new Set(u(Array.from(e),t))},t.setGroupBy=function(e,t){const n=new Map;for(const i of e){const e=t(i);let r=n.get(e);void 0===r&&(r=new Set,n.set(e,r)),r.add(i)}return n},t.toReadonlySet=function(e){return e instanceof Set?e:new Set(e)};function f(e,t){if(e===t)return!0;if(void 0===e||void 0===t||null===e||null===t)return!1;if("function"===typeof e.equals&&"function"===typeof t.equals)return e.equals(t);if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const 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(const[n,i]of e){if(!f(i,t.get(n)))return!1}return!0}if(Array.isArray(e)&&Array.isArray(t)){const n=e.length;if(n!==t.length)return!1;for(let i=0;i<n;i++)if(!f(e[i],t[i]))return!1;return!0}return!1}function y(e){if("number"===typeof e)return 0|e;if("string"===typeof e)return i(e);let n=t.hashCodeInit;if(void 0===e)return n;if(!0===e)return n+1|0;if(!1===e)return n+2|0;if(null===e)return n+3|0;if("function"===typeof e.hashCode)return e.hashCode();if(e instanceof Set){for(const t of e)n+=y(t);return n}if(e instanceof Map){let i=t.hashCodeInit;for(const[t,r]of e)i+=y(t),n+=y(r);return r(i,n)}if(Array.isArray(e)){for(const t of e)n=r(n,y(t));return n}throw new Error("Cannot hash ".concat(e))}t.EqualityMap=class{constructor(){this._map=new Map}set(e,t){let n=0|y(e);for(;;){const i=this._map.get(n);if(void 0===i)return void this._map.set(n,[e,t]);if(f(e,i[0]))return void(i[1]=t);n=n+1|0}}get(e){let t=0|y(e);for(;;){const n=this._map.get(t);if(void 0===n)return;if(f(e,n[0]))return n[1];t=t+1|0}}has(e){return void 0!==this.get(e)}*values(){for(const[,[,e]]of this._map)yield e}},t.areEqual=f,t.hashCodeOf=y},28981:e=>{"use strict";var t,n="object"===typeof Reflect?Reflect:null,i=n&&"function"===typeof n.apply?n.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};t=n&&"function"===typeof n.ownKeys?n.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var r=Number.isNaN||function(e){return e!==e};function s(){s.init.call(this)}e.exports=s,e.exports.once=function(e,t){return new Promise((function(n,i){function r(n){e.removeListener(t,s),i(n)}function s(){"function"===typeof e.removeListener&&e.removeListener("error",r),n([].slice.call(arguments))}f(e,t,s,{once:!0}),"error"!==t&&function(e,t,n){"function"===typeof e.on&&f(e,"error",t,n)}(e,r,{once:!0})}))},s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var o=10;function a(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function u(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function l(e,t,n,i){var r,s,o,l;if(a(n),void 0===(s=e._events)?(s=e._events=Object.create(null),e._eventsCount=0):(void 0!==s.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),s=e._events),o=s[t]),void 0===o)o=s[t]=n,++e._eventsCount;else if("function"===typeof o?o=s[t]=i?[n,o]:[o,n]:i?o.unshift(n):o.push(n),(r=u(e))>0&&o.length>r&&!o.warned){o.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=e,c.type=t,c.count=o.length,l=c,console&&console.warn&&console.warn(l)}return e}function c(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=c.bind(i);return r.listener=n,i.wrapFn=r,r}function p(e,t,n){var i=e._events;if(void 0===i)return[];var r=i[t];return void 0===r?[]:"function"===typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(r):m(r,r.length)}function d(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"===typeof n)return 1;if(void 0!==n)return n.length}return 0}function m(e,t){for(var n=new Array(t),i=0;i<t;++i)n[i]=e[i];return n}function f(e,t,n,i){if("function"===typeof e.on)i.once?e.once(t,n):e.on(t,n);else{if("function"!==typeof e.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e);e.addEventListener(t,(function r(s){i.once&&e.removeEventListener(t,r),n(s)}))}}Object.defineProperty(s,"defaultMaxListeners",{enumerable:!0,get:function(){return o},set:function(e){if("number"!==typeof e||e<0||r(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");o=e}}),s.init=function(){void 0!==this._events&&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("number"!==typeof e||e<0||r(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},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 r="error"===e,s=this._events;if(void 0!==s)r=r&&void 0===s.error;else if(!r)return!1;if(r){var o;if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var u=s[e];if(void 0===u)return!1;if("function"===typeof u)i(u,this,t);else{var l=u.length,c=m(u,l);for(n=0;n<l;++n)i(c[n],this,t)}return!0},s.prototype.addListener=function(e,t){return l(this,e,t,!1)},s.prototype.on=s.prototype.addListener,s.prototype.prependListener=function(e,t){return l(this,e,t,!0)},s.prototype.once=function(e,t){return a(t),this.on(e,h(this,e,t)),this},s.prototype.prependOnceListener=function(e,t){return a(t),this.prependListener(e,h(this,e,t)),this},s.prototype.removeListener=function(e,t){var n,i,r,s,o;if(a(t),void 0===(i=this._events))return this;if(void 0===(n=i[e]))return this;if(n===t||n.listener===t)0===--this._eventsCount?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!==typeof n){for(r=-1,s=n.length-1;s>=0;s--)if(n[s]===t||n[s].listener===t){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,r),1===n.length&&(i[e]=n[0]),void 0!==i.removeListener&&this.emit("removeListener",e,o||t)}return this},s.prototype.off=s.prototype.removeListener,s.prototype.removeAllListeners=function(e){var t,n,i;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0===--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var r,s=Object.keys(n);for(i=0;i<s.length;++i)"removeListener"!==(r=s[i])&&this.removeAllListeners(r);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"===typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(i=t.length-1;i>=0;i--)this.removeListener(e,t[i]);return this},s.prototype.listeners=function(e){return p(this,e,!0)},s.prototype.rawListeners=function(e){return p(this,e,!1)},s.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):d.call(e,t)},s.prototype.listenerCount=d,s.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},61596:e=>{"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},55391:e=>{e.exports=function(e){if("string"!==typeof e)return!1;var r=e.match(t);if(!r)return!1;var s=r[1];if(!s)return!1;if(n.test(s)||i.test(s))return!0;return!1};var t=/^(?:\w+:)?\/\/(\S+)$/,n=/^localhost[\:?\d]*(?:[^\:?\d]\S*)?$/,i=/^[^\s\.]+\.\S{2,}$/},60898:(e,t,n)=>{n(24038),e.exports=self.fetch.bind(self)},80153:function(e,t,n){var i,r;r="undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:this,e.exports=function(n){"use strict";var r,s=(n=n||{}).Base64,o="2.6.4",a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=function(e){for(var t={},n=0,i=e.length;n<i;n++)t[e.charAt(n)]=n;return t}(a),l=String.fromCharCode,c=function(e){if(e.length<2)return(t=e.charCodeAt(0))<128?e:t<2048?l(192|t>>>6)+l(128|63&t):l(224|t>>>12&15)+l(128|t>>>6&63)+l(128|63&t);var t=65536+1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320);return l(240|t>>>18&7)+l(128|t>>>12&63)+l(128|t>>>6&63)+l(128|63&t)},h=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,p=function(e){return e.replace(h,c)},d=function(e){var t=[0,2,1][e.length%3],n=e.charCodeAt(0)<<16|(e.length>1?e.charCodeAt(1):0)<<8|(e.length>2?e.charCodeAt(2):0);return[a.charAt(n>>>18),a.charAt(n>>>12&63),t>=2?"=":a.charAt(n>>>6&63),t>=1?"=":a.charAt(63&n)].join("")},m=n.btoa&&"function"==typeof n.btoa?function(e){return n.btoa(e)}:function(e){if(e.match(/[^\x00-\xFF]/))throw new RangeError("The string contains invalid characters.");return e.replace(/[\s\S]{1,3}/g,d)},f=function(e){return m(p(String(e)))},y=function(e){return e.replace(/[+\/]/g,(function(e){return"+"==e?"-":"_"})).replace(/=/g,"")},g=function(e,t){return t?y(f(e)):f(e)},_=function(e){return g(e,!0)};n.Uint8Array&&(r=function(e,t){for(var n="",i=0,r=e.length;i<r;i+=3){var s=e[i],o=e[i+1],u=e[i+2],l=s<<16|o<<8|u;n+=a.charAt(l>>>18)+a.charAt(l>>>12&63)+("undefined"!=typeof o?a.charAt(l>>>6&63):"=")+("undefined"!=typeof u?a.charAt(63&l):"=")}return t?y(n):n});var v,b=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,T=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 l(55296+(t>>>10))+l(56320+(1023&t));case 3:return l((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return l((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},w=function(e){return e.replace(b,T)},k=function(e){var t=e.length,n=t%4,i=(t>0?u[e.charAt(0)]<<18:0)|(t>1?u[e.charAt(1)]<<12:0)|(t>2?u[e.charAt(2)]<<6:0)|(t>3?u[e.charAt(3)]:0),r=[l(i>>>16),l(i>>>8&255),l(255&i)];return r.length-=[0,0,2,1][n],r.join("")},S=n.atob&&"function"==typeof n.atob?function(e){return n.atob(e)}:function(e){return e.replace(/\S{1,4}/g,k)},L=function(e){return S(String(e).replace(/[^A-Za-z0-9\+\/]/g,""))},N=function(e){return w(S(e))},O=function(e){return String(e).replace(/[-_]/g,(function(e){return"-"==e?"+":"/"})).replace(/[^A-Za-z0-9\+\/]/g,"")},x=function(e){return N(O(e))};n.Uint8Array&&(v=function(e){return Uint8Array.from(L(O(e)),(function(e){return e.charCodeAt(0)}))});var C=function(){var e=n.Base64;return n.Base64=s,e};if(n.Base64={VERSION:o,atob:L,btoa:m,fromBase64:x,toBase64:g,utob:p,encode:g,encodeURI:_,btou:w,decode:x,noConflict:C,fromUint8Array:r,toUint8Array:v},"function"===typeof Object.defineProperty){var E=function(e){return{value:e,enumerable:!1,writable:!0,configurable:!0}};n.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",E((function(){return x(this)}))),Object.defineProperty(String.prototype,"toBase64",E((function(e){return g(this,e)}))),Object.defineProperty(String.prototype,"toBase64URI",E((function(){return g(this,!0)})))}}return n.Meteor&&(Base64=n.Base64),e.exports?e.exports.Base64=n.Base64:void 0===(i=function(){return n.Base64}.apply(t,[]))||(e.exports=i),{Base64:n.Base64}}(r)},25060:(e,t,n)=>{"use strict";var i,r;i=[n(93531),n(26713),n(53081)],void 0===(r=function(e,t,n){return function(e,t,n){var i=function(t,n){return e.js_beautify(t,n)};return i.js=e.js_beautify,i.css=t.css_beautify,i.html=n.html_beautify,i.js_beautify=e.js_beautify,i.css_beautify=t.css_beautify,i.html_beautify=n.html_beautify,i}(e,t,n)}.apply(t,i))||(e.exports=r)},26713:(e,t)=>{var n;!function(){var i;!function(){"use strict";var e=[,,function(e){function t(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function n(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function i(e,i){this.__indent_cache=new n(e,i),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new t(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}t.prototype.clone_empty=function(){var e=new t(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},t.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},t.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},t.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},t.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},t.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},t.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},t.prototype.is_empty=function(){return 0===this.__items.length},t.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},t.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},t.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},t.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},t.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},t.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},t.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},n.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},n.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},n.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},n.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},i.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},i.prototype.get_line_number=function(){return this.__lines.length},i.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},i.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},i.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},i.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},i.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},i.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},i.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},i.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},i.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},i.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},i.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},i.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},i.prototype.just_added_newline=function(){return this.current_line.is_empty()},i.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},i.prototype.ensure_empty_line_above=function(e,n){for(var i=this.__lines.length-2;i>=0;){var r=this.__lines[i];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==n){this.__lines.splice(i+1,0,new t(this)),this.previous_line=this.__lines[this.__lines.length-2];break}i--}},e.exports.Output=i},,,,function(e){function t(e,t){this.raw_options=n(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","angular","django","erb","handlebars","php","smarty"],["auto"])}function n(e,t){var n,r={};for(n in e=i(e))n!==t&&(r[n]=e[n]);if(t&&e[t])for(n in e[t])r[n]=e[t][n];return r}function i(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}t.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"===typeof n?null!==n&&"function"===typeof n.concat&&(i=n.concat()):"string"===typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},t.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},t.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"===typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},t.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},t.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},t.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},t.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=t,e.exports.normalizeOpts=i,e.exports.mergeOpts=n},,function(e){var t=RegExp.prototype.hasOwnProperty("sticky");function n(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}n.prototype.restart=function(){this.__position=0},n.prototype.back=function(){this.__position>0&&(this.__position-=1)},n.prototype.hasNext=function(){return this.__position<this.__input_length},n.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},n.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},n.prototype.__match=function(e,n){e.lastIndex=n;var i=e.exec(this.__input);return!i||t&&e.sticky||i.index!==n&&(i=null),i},n.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},n.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},n.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},n.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},n.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},n.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},n.prototype.get_regexp=function(e,n){var i=null,r="g";return n&&t&&(r="y"),"string"===typeof e&&""!==e?i=new RegExp(e,r):e&&(i=new RegExp(e.source,r)),i},n.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},n.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},n.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=n},,,,,function(e){function t(e,t){e="string"===typeof e?e:e.source,t="string"===typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}t.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},t.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=t},,function(e,t,n){var i=n(16).Beautifier,r=n(17).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(17).Options,r=n(2).Output,s=n(8).InputScanner,o=new(0,n(13).Directives)(/\/\*/,/\*\//),a=/\r\n|[\r\n]/,u=/\r\n|[\r\n]/g,l=/\s/,c=/(?:\s|\n)+/g,h=/\/\*(?:[\s\S]*?)((?:\*\/)|$)/g,p=/\/\/(?:[^\n\r\u2028\u2029]*)/g;function d(e,t){this._source_text=e||"",this._options=new i(t),this._ch=null,this._input=null,this.NESTED_AT_RULE={page:!0,"font-face":!0,keyframes:!0,media:!0,supports:!0,document:!0},this.CONDITIONAL_GROUP_RULE={media:!0,supports:!0,document:!0},this.NON_SEMICOLON_NEWLINE_PROPERTY=["grid-template-areas","grid-template"]}d.prototype.eatString=function(e){var t="";for(this._ch=this._input.next();this._ch;){if(t+=this._ch,"\\"===this._ch)t+=this._input.next();else if(-1!==e.indexOf(this._ch)||"\n"===this._ch)break;this._ch=this._input.next()}return t},d.prototype.eatWhitespace=function(e){for(var t=l.test(this._input.peek()),n=0;l.test(this._input.peek());)this._ch=this._input.next(),e&&"\n"===this._ch&&(0===n||n<this._options.max_preserve_newlines)&&(n++,this._output.add_new_line(!0));return t},d.prototype.foundNestedPseudoClass=function(){for(var e=0,t=1,n=this._input.peek(t);n;){if("{"===n)return!0;if("("===n)e+=1;else if(")"===n){if(0===e)return!1;e-=1}else if(";"===n||"}"===n)return!1;t++,n=this._input.peek(t)}return!1},d.prototype.print_string=function(e){this._output.set_indent(this._indentLevel),this._output.non_breaking_space=!0,this._output.add_token(e)},d.prototype.preserveSingleSpace=function(e){e&&(this._output.space_before_token=!0)},d.prototype.indent=function(){this._indentLevel++},d.prototype.outdent=function(){this._indentLevel>0&&this._indentLevel--},d.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===t&&(t="\n",e&&a.test(e||"")&&(t=e.match(a)[0]));var n=(e=e.replace(u,"\n")).match(/^[\t ]*/)[0];this._output=new r(this._options,n),this._input=new s(e),this._indentLevel=0,this._nestedLevel=0,this._ch=null;for(var i,d,m=0,f=!1,y=!1,g=!1,_=!1,v=!1,b=this._ch,T=!1;i=""!==this._input.read(c),d=b,this._ch=this._input.next(),"\\"===this._ch&&this._input.hasNext()&&(this._ch+=this._input.next()),b=this._ch,this._ch;)if("/"===this._ch&&"*"===this._input.peek()){this._output.add_new_line(),this._input.back();var w=this._input.read(h),k=o.get_directives(w);k&&"start"===k.ignore&&(w+=o.readIgnored(this._input)),this.print_string(w),this.eatWhitespace(!0),this._output.add_new_line()}else if("/"===this._ch&&"/"===this._input.peek())this._output.space_before_token=!0,this._input.back(),this.print_string(this._input.read(p)),this.eatWhitespace(!0);else if("$"===this._ch){this.preserveSingleSpace(i),this.print_string(this._ch);var S=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);S.match(/[ :]$/)&&(S=this.eatString(": ").replace(/\s+$/,""),this.print_string(S),this._output.space_before_token=!0),0===m&&-1!==S.indexOf(":")&&(y=!0,this.indent())}else if("@"===this._ch)if(this.preserveSingleSpace(i),"{"===this._input.peek())this.print_string(this._ch+this.eatString("}"));else{this.print_string(this._ch);var L=this._input.peekUntilAfter(/[: ,;{}()[\]\/='"]/g);L.match(/[ :]$/)&&(L=this.eatString(": ").replace(/\s+$/,""),this.print_string(L),this._output.space_before_token=!0),0===m&&-1!==L.indexOf(":")?(y=!0,this.indent()):L in this.NESTED_AT_RULE?(this._nestedLevel+=1,L in this.CONDITIONAL_GROUP_RULE&&(g=!0)):0!==m||y||(_=!0)}else if("#"===this._ch&&"{"===this._input.peek())this.preserveSingleSpace(i),this.print_string(this._ch+this.eatString("}"));else if("{"===this._ch)y&&(y=!1,this.outdent()),_=!1,g?(g=!1,f=this._indentLevel>=this._nestedLevel):f=this._indentLevel>=this._nestedLevel-1,this._options.newline_between_rules&&f&&this._output.previous_line&&"{"!==this._output.previous_line.item(-1)&&this._output.ensure_empty_line_above("/",","),this._output.space_before_token=!0,"expand"===this._options.brace_style?(this._output.add_new_line(),this.print_string(this._ch),this.indent(),this._output.set_indent(this._indentLevel)):("("===d?this._output.space_before_token=!1:","!==d&&this.indent(),this.print_string(this._ch)),this.eatWhitespace(!0),this._output.add_new_line();else if("}"===this._ch)this.outdent(),this._output.add_new_line(),"{"===d&&this._output.trim(!0),y&&(this.outdent(),y=!1),this.print_string(this._ch),f=!1,this._nestedLevel&&this._nestedLevel--,this.eatWhitespace(!0),this._output.add_new_line(),this._options.newline_between_rules&&!this._output.just_added_blankline()&&"}"!==this._input.peek()&&this._output.add_new_line(!0),")"===this._input.peek()&&(this._output.trim(!0),"expand"===this._options.brace_style&&this._output.add_new_line(!0));else if(":"===this._ch){for(var N=0;N<this.NON_SEMICOLON_NEWLINE_PROPERTY.length;N++)if(this._input.lookBack(this.NON_SEMICOLON_NEWLINE_PROPERTY[N])){T=!0;break}!f&&!g||this._input.lookBack("&")||this.foundNestedPseudoClass()||this._input.lookBack("(")||_||0!==m?(this._input.lookBack(" ")&&(this._output.space_before_token=!0),":"===this._input.peek()?(this._ch=this._input.next(),this.print_string("::")):this.print_string(":")):(this.print_string(":"),y||(y=!0,this._output.space_before_token=!0,this.eatWhitespace(!0),this.indent()))}else if('"'===this._ch||"'"===this._ch){var O='"'===d||"'"===d;this.preserveSingleSpace(O||i),this.print_string(this._ch+this.eatString(this._ch)),this.eatWhitespace(!0)}else if(";"===this._ch)T=!1,0===m?(y&&(this.outdent(),y=!1),_=!1,this.print_string(this._ch),this.eatWhitespace(!0),"/"!==this._input.peek()&&this._output.add_new_line()):(this.print_string(this._ch),this.eatWhitespace(!0),this._output.space_before_token=!0);else if("("===this._ch)if(this._input.lookBack("url"))this.print_string(this._ch),this.eatWhitespace(),m++,this.indent(),this._ch=this._input.next(),")"===this._ch||'"'===this._ch||"'"===this._ch?this._input.back():this._ch&&(this.print_string(this._ch+this.eatString(")")),m&&(m--,this.outdent()));else{var x=!1;this._input.lookBack("with")&&(x=!0),this.preserveSingleSpace(i||x),this.print_string(this._ch),y&&"$"===d&&this._options.selector_separator_newline?(this._output.add_new_line(),v=!0):(this.eatWhitespace(),m++,this.indent())}else if(")"===this._ch)m&&(m--,this.outdent()),v&&";"===this._input.peek()&&this._options.selector_separator_newline&&(v=!1,this.outdent(),this._output.add_new_line()),this.print_string(this._ch);else if(","===this._ch)this.print_string(this._ch),this.eatWhitespace(!0),!this._options.selector_separator_newline||y&&!v||0!==m||_?this._output.space_before_token=!0:this._output.add_new_line();else if(">"!==this._ch&&"+"!==this._ch&&"~"!==this._ch||y||0!==m)if("]"===this._ch)this.print_string(this._ch);else if("["===this._ch)this.preserveSingleSpace(i),this.print_string(this._ch);else if("="===this._ch)this.eatWhitespace(),this.print_string("="),l.test(this._ch)&&(this._ch="");else if("!"!==this._ch||this._input.lookBack("\\")){var C='"'===d||"'"===d;this.preserveSingleSpace(C||i),this.print_string(this._ch),!this._output.just_added_newline()&&"\n"===this._input.peek()&&T&&this._output.add_new_line()}else this._output.space_before_token=!0,this.print_string(this._ch);else this._options.space_around_combinator?(this._output.space_before_token=!0,this.print_string(this._ch),this._output.space_before_token=!0):(this.print_string(this._ch),this.eatWhitespace(),this._ch&&l.test(this._ch)&&(this._ch=""));return this._output.get_code(t)},e.exports.Beautifier=d},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"css"),this.selector_separator_newline=this._get_boolean("selector_separator_newline",!0),this.newline_between_rules=this._get_boolean("newline_between_rules",!0);var t=this._get_boolean("space_around_selector_separator");this.space_around_combinator=this._get_boolean("space_around_combinator")||t;var n=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_style="collapse";for(var r=0;r<n.length;r++)"expand"!==n[r]?this.brace_style="collapse":this.brace_style=n[r]}r.prototype=new i,e.exports.Options=r}],t={};var n=function n(i){var r=t[i];if(void 0!==r)return r.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,n),s.exports}(15);i=n}();var r=i;void 0===(n=function(){return{css_beautify:r}}.apply(t,[]))||(e.exports=n)}()},53081:(e,t,n)=>{var i,r;!function(){var s;!function(){"use strict";var e=[,,function(e){function t(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function n(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function i(e,i){this.__indent_cache=new n(e,i),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new t(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}t.prototype.clone_empty=function(){var e=new t(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},t.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},t.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},t.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},t.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},t.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},t.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},t.prototype.is_empty=function(){return 0===this.__items.length},t.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},t.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},t.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},t.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},t.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},t.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},t.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},n.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},n.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},n.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},n.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},i.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},i.prototype.get_line_number=function(){return this.__lines.length},i.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},i.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},i.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},i.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},i.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},i.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},i.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},i.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},i.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},i.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},i.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},i.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},i.prototype.just_added_newline=function(){return this.current_line.is_empty()},i.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},i.prototype.ensure_empty_line_above=function(e,n){for(var i=this.__lines.length-2;i>=0;){var r=this.__lines[i];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==n){this.__lines.splice(i+1,0,new t(this)),this.previous_line=this.__lines[this.__lines.length-2];break}i--}},e.exports.Output=i},function(e){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},,,function(e){function t(e,t){this.raw_options=n(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","angular","django","erb","handlebars","php","smarty"],["auto"])}function n(e,t){var n,r={};for(n in e=i(e))n!==t&&(r[n]=e[n]);if(t&&e[t])for(n in e[t])r[n]=e[t][n];return r}function i(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}t.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"===typeof n?null!==n&&"function"===typeof n.concat&&(i=n.concat()):"string"===typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},t.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},t.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"===typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},t.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},t.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},t.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},t.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=t,e.exports.normalizeOpts=i,e.exports.mergeOpts=n},,function(e){var t=RegExp.prototype.hasOwnProperty("sticky");function n(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}n.prototype.restart=function(){this.__position=0},n.prototype.back=function(){this.__position>0&&(this.__position-=1)},n.prototype.hasNext=function(){return this.__position<this.__input_length},n.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},n.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},n.prototype.__match=function(e,n){e.lastIndex=n;var i=e.exec(this.__input);return!i||t&&e.sticky||i.index!==n&&(i=null),i},n.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},n.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},n.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},n.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},n.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},n.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},n.prototype.get_regexp=function(e,n){var i=null,r="g";return n&&t&&(r="y"),"string"===typeof e&&""!==e?i=new RegExp(e,r):e&&(i=new RegExp(e.source,r)),i},n.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},n.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},n.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=n},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,s=n(10).TokenStream,o=n(11).WhitespacePattern,a={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},u=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};u.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new s,this._reset();for(var t=new r(a.START,""),n=null,i=[],o=new s;t.type!==a.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new s),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},u.prototype._is_first_token=function(){return this.__tokens.isEmpty()},u.prototype._reset=function(){},u.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(a.RAW,n):this._create_token(a.EOF,"")},u.prototype._is_comment=function(e){return!1},u.prototype._is_opening=function(e){return!1},u.prototype._is_closing=function(e,t){return!1},u.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},u.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=u,e.exports.TOKEN=a},function(e){function t(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}t.prototype.restart=function(){this.__position=0},t.prototype.isEmpty=function(){return 0===this.__tokens_length},t.prototype.hasNext=function(){return this.__position<this.__tokens_length},t.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},t.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},t.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=t},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e){function t(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}t.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},t.prototype.read_match=function(){return this._input.match(this._match_pattern)},t.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},t.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},t.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},t.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},t.prototype._create=function(){return new t(this._input,this)},t.prototype._update=function(){},e.exports.Pattern=t},function(e){function t(e,t){e="string"===typeof e?e:e.source,t="string"===typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}t.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},t.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=t},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1,smarty:!1,angular:!1};function s(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[= ]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/),smarty:n.starting_with(/{(?=[^}{\s\n])/).until_after(/[^\s\n]}/),smarty_comment:n.starting_with(/{\*/).until_after(/\*}/),smarty_literal:n.starting_with(/{literal}/).until_after(/{\/literal}/)}}s.prototype=new i,s.prototype._create=function(){return new s(this._input,this)},s.prototype._update=function(){this.__set_templated_pattern()},s.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},s.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},s.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},s.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},s.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._disabled.smarty||e.push(this.__patterns.smarty._starting_pattern.source),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},s.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())),this._disabled.smarty||this._disabled.django&&this._disabled.handlebars&&(e=(e=(e=e||this.__patterns.smarty_comment.read())||this.__patterns.smarty_literal.read())||this.__patterns.smarty.read()));return e},e.exports.TemplatablePattern=s},,,,function(e,t,n){var i=n(19).Beautifier,r=n(20).Options;e.exports=function(e,t,n,r){return new i(e,t,n,r).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(20).Options,r=n(2).Output,s=n(21).Tokenizer,o=n(21).TOKEN,a=/\r\n|[\r\n]/,u=/\r\n|[\r\n]/g,l=function(e,t){this.indent_level=0,this.alignment_size=0,this.max_preserve_newlines=e.max_preserve_newlines,this.preserve_newlines=e.preserve_newlines,this._output=new r(e,t)};l.prototype.current_line_has_match=function(e){return this._output.current_line.has_match(e)},l.prototype.set_space_before_token=function(e,t){this._output.space_before_token=e,this._output.non_breaking_space=t},l.prototype.set_wrap_point=function(){this._output.set_indent(this.indent_level,this.alignment_size),this._output.set_wrap_point()},l.prototype.add_raw_token=function(e){this._output.add_raw_token(e)},l.prototype.print_preserved_newlines=function(e){var t=0;e.type!==o.TEXT&&e.previous.type!==o.TEXT&&(t=e.newlines?1:0),this.preserve_newlines&&(t=e.newlines<this.max_preserve_newlines+1?e.newlines:this.max_preserve_newlines+1);for(var n=0;n<t;n++)this.print_newline(n>0);return 0!==t},l.prototype.traverse_whitespace=function(e){return!(!e.whitespace_before&&!e.newlines)&&(this.print_preserved_newlines(e)||(this._output.space_before_token=!0),!0)},l.prototype.previous_token_wrapped=function(){return this._output.previous_token_wrapped},l.prototype.print_newline=function(e){this._output.add_new_line(e)},l.prototype.print_token=function(e){e.text&&(this._output.set_indent(this.indent_level,this.alignment_size),this._output.add_token(e.text))},l.prototype.indent=function(){this.indent_level++},l.prototype.deindent=function(){this.indent_level>0&&(this.indent_level--,this._output.set_indent(this.indent_level,this.alignment_size))},l.prototype.get_full_indent=function(e){return(e=this.indent_level+(e||0))<1?"":this._output.get_indent_string(e)};var c=function(e,t){var n=null,i=null;return t.closed?("script"===e?n="text/javascript":"style"===e&&(n="text/css"),n=function(e){for(var t=null,n=e.next;n.type!==o.EOF&&e.closed!==n;){if(n.type===o.ATTRIBUTE&&"type"===n.text){n.next&&n.next.type===o.EQUALS&&n.next.next&&n.next.next.type===o.VALUE&&(t=n.next.next.text);break}n=n.next}return t}(t)||n,n.search("text/css")>-1?i="css":n.search(/module|((text|application|dojo)\/(x-)?(javascript|ecmascript|jscript|livescript|(ld\+)?json|method|aspect))/)>-1?i="javascript":n.search(/(text|application|dojo)\/(x-)?(html)/)>-1?i="html":n.search(/test\/null/)>-1&&(i="null"),i):null};function h(e,t){return-1!==t.indexOf(e)}function p(e,t,n){this.parent=e||null,this.tag=t?t.tag_name:"",this.indent_level=n||0,this.parser_token=t||null}function d(e){this._printer=e,this._current_frame=null}function m(e,t,n,r){this._source_text=e||"",t=t||{},this._js_beautify=n,this._css_beautify=r,this._tag_stack=null;var s=new i(t,"html");this._options=s,this._is_wrap_attributes_force="force"===this._options.wrap_attributes.substr(0,5),this._is_wrap_attributes_force_expand_multiline="force-expand-multiline"===this._options.wrap_attributes,this._is_wrap_attributes_force_aligned="force-aligned"===this._options.wrap_attributes,this._is_wrap_attributes_aligned_multiple="aligned-multiple"===this._options.wrap_attributes,this._is_wrap_attributes_preserve="preserve"===this._options.wrap_attributes.substr(0,8),this._is_wrap_attributes_preserve_aligned="preserve-aligned"===this._options.wrap_attributes}d.prototype.get_parser_token=function(){return this._current_frame?this._current_frame.parser_token:null},d.prototype.record_tag=function(e){var t=new p(this._current_frame,e,this._printer.indent_level);this._current_frame=t},d.prototype._try_pop_frame=function(e){var t=null;return e&&(t=e.parser_token,this._printer.indent_level=e.indent_level,this._current_frame=e.parent),t},d.prototype._get_frame=function(e,t){for(var n=this._current_frame;n&&-1===e.indexOf(n.tag);){if(t&&-1!==t.indexOf(n.tag)){n=null;break}n=n.parent}return n},d.prototype.try_pop=function(e,t){var n=this._get_frame([e],t);return this._try_pop_frame(n)},d.prototype.indent_to_tag=function(e){var t=this._get_frame(e);t&&(this._printer.indent_level=t.indent_level)},m.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._source_text,t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&a.test(e)&&(t=e.match(a)[0]));var n=(e=e.replace(u,"\n")).match(/^[\t ]*/)[0],i={text:"",type:""},r=new f,c=new l(this._options,n),h=new s(e,this._options).tokenize();this._tag_stack=new d(c);for(var p=null,m=h.next();m.type!==o.EOF;)m.type===o.TAG_OPEN||m.type===o.COMMENT?r=p=this._handle_tag_open(c,m,r,i,h):m.type===o.ATTRIBUTE||m.type===o.EQUALS||m.type===o.VALUE||m.type===o.TEXT&&!r.tag_complete?p=this._handle_inside_tag(c,m,r,i):m.type===o.TAG_CLOSE?p=this._handle_tag_close(c,m,r):m.type===o.TEXT?p=this._handle_text(c,m,r):m.type===o.CONTROL_FLOW_OPEN?p=this._handle_control_flow_open(c,m):m.type===o.CONTROL_FLOW_CLOSE?p=this._handle_control_flow_close(c,m):c.add_raw_token(m),i=p,m=h.next();return c._output.get_code(t)},m.prototype._handle_control_flow_open=function(e,t){var n={text:t.text,type:t.type};return e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),t.newlines?e.print_preserved_newlines(t):e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),e.print_token(t),e.indent(),n},m.prototype._handle_control_flow_close=function(e,t){var n={text:t.text,type:t.type};return e.deindent(),t.newlines?e.print_preserved_newlines(t):e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),e.print_token(t),n},m.prototype._handle_tag_close=function(e,t,n){var i={text:t.text,type:t.type};return e.alignment_size=0,n.tag_complete=!0,e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):("<"===n.tag_start_char&&(e.set_space_before_token("/"===t.text[0],!0),this._is_wrap_attributes_force_expand_multiline&&n.has_wrapped_attrs&&e.print_newline(!1)),e.print_token(t)),!n.indent_content||n.is_unformatted||n.is_content_unformatted||(e.indent(),n.indent_content=!1),n.is_inline_element||n.is_unformatted||n.is_content_unformatted||e.set_wrap_point(),i},m.prototype._handle_inside_tag=function(e,t,n,i){var r=n.has_wrapped_attrs,s={text:t.text,type:t.type};return e.set_space_before_token(t.newlines||""!==t.whitespace_before,!0),n.is_unformatted?e.add_raw_token(t):"{"===n.tag_start_char&&t.type===o.TEXT?e.print_preserved_newlines(t)?(t.newlines=0,e.add_raw_token(t)):e.print_token(t):(t.type===o.ATTRIBUTE?e.set_space_before_token(!0):(t.type===o.EQUALS||t.type===o.VALUE&&t.previous.type===o.EQUALS)&&e.set_space_before_token(!1),t.type===o.ATTRIBUTE&&"<"===n.tag_start_char&&((this._is_wrap_attributes_preserve||this._is_wrap_attributes_preserve_aligned)&&(e.traverse_whitespace(t),r=r||0!==t.newlines),this._is_wrap_attributes_force&&n.attr_count>=this._options.wrap_attributes_min_attrs&&(i.type!==o.TAG_OPEN||this._is_wrap_attributes_force_expand_multiline)&&(e.print_newline(!1),r=!0)),e.print_token(t),r=r||e.previous_token_wrapped(),n.has_wrapped_attrs=r),s},m.prototype._handle_text=function(e,t,n){var i={text:t.text,type:"TK_CONTENT"};return n.custom_beautifier_name?this._print_custom_beatifier_text(e,t,n):n.is_unformatted||n.is_content_unformatted?e.add_raw_token(t):(e.traverse_whitespace(t),e.print_token(t)),i},m.prototype._print_custom_beatifier_text=function(e,t,n){var i=this;if(""!==t.text){var r,s=t.text,o=1,a="",u="";"javascript"===n.custom_beautifier_name&&"function"===typeof this._js_beautify?r=this._js_beautify:"css"===n.custom_beautifier_name&&"function"===typeof this._css_beautify?r=this._css_beautify:"html"===n.custom_beautifier_name&&(r=function(e,t){return new m(e,t,i._js_beautify,i._css_beautify).beautify()}),"keep"===this._options.indent_scripts?o=0:"separate"===this._options.indent_scripts&&(o=-e.indent_level);var l=e.get_full_indent(o);if(s=s.replace(/\n[ \t]*$/,""),"html"!==n.custom_beautifier_name&&"<"===s[0]&&s.match(/^(<!--|<!\[CDATA\[)/)){var c=/^(<!--[^\n]*|<!\[CDATA\[)(\n?)([ \t\n]*)([\s\S]*)(-->|]]>)$/.exec(s);if(!c)return void e.add_raw_token(t);a=l+c[1]+"\n",s=c[4],c[5]&&(u=l+c[5]),s=s.replace(/\n[ \t]*$/,""),(c[2]||-1!==c[3].indexOf("\n"))&&(c=c[3].match(/[ \t]+$/))&&(t.whitespace_before=c[0])}if(s)if(r){var h=function(){this.eol="\n"};h.prototype=this._options.raw_options,s=r(l+s,new h)}else{var p=t.whitespace_before;p&&(s=s.replace(new RegExp("\n("+p+")?","g"),"\n")),s=l+s.replace(/\n/g,"\n"+l)}a&&(s=s?a+s+"\n"+u:a+u),e.print_newline(!1),s&&(t.text=s,t.whitespace_before="",t.newlines=0,e.add_raw_token(t),e.print_newline(!0))}},m.prototype._handle_tag_open=function(e,t,n,i,r){var s=this._get_tag_open_token(t);if(!n.is_unformatted&&!n.is_content_unformatted||n.is_empty_element||t.type!==o.TAG_OPEN||s.is_start_tag?(e.traverse_whitespace(t),this._set_tag_position(e,t,s,n,i),s.is_inline_element||e.set_wrap_point(),e.print_token(t)):(e.add_raw_token(t),s.start_tag_token=this._tag_stack.try_pop(s.tag_name)),s.is_start_tag&&this._is_wrap_attributes_force){var a,u=0;do{(a=r.peek(u)).type===o.ATTRIBUTE&&(s.attr_count+=1),u+=1}while(a.type!==o.EOF&&a.type!==o.TAG_CLOSE)}return(this._is_wrap_attributes_force_aligned||this._is_wrap_attributes_aligned_multiple||this._is_wrap_attributes_preserve_aligned)&&(s.alignment_size=t.text.length+1),s.tag_complete||s.is_unformatted||(e.alignment_size=s.alignment_size),s};var f=function(e,t){if(this.parent=e||null,this.text="",this.type="TK_TAG_OPEN",this.tag_name="",this.is_inline_element=!1,this.is_unformatted=!1,this.is_content_unformatted=!1,this.is_empty_element=!1,this.is_start_tag=!1,this.is_end_tag=!1,this.indent_content=!1,this.multiline_content=!1,this.custom_beautifier_name=null,this.start_tag_token=null,this.attr_count=0,this.has_wrapped_attrs=!1,this.alignment_size=0,this.tag_complete=!1,this.tag_start_char="",this.tag_check="",t){var n;this.tag_start_char=t.text[0],this.text=t.text,"<"===this.tag_start_char?(n=t.text.match(/^<([^\s>]*)/),this.tag_check=n?n[1]:""):(n=t.text.match(/^{{~?(?:[\^]|#\*?)?([^\s}]+)/),this.tag_check=n?n[1]:"",(t.text.startsWith("{{#>")||t.text.startsWith("{{~#>"))&&">"===this.tag_check[0]&&(">"===this.tag_check&&null!==t.next?this.tag_check=t.next.text.split(" ")[0]:this.tag_check=t.text.split(">")[1])),this.tag_check=this.tag_check.toLowerCase(),t.type===o.COMMENT&&(this.tag_complete=!0),this.is_start_tag="/"!==this.tag_check.charAt(0),this.tag_name=this.is_start_tag?this.tag_check:this.tag_check.substr(1),this.is_end_tag=!this.is_start_tag||t.closed&&"/>"===t.closed.text;var i=2;"{"===this.tag_start_char&&this.text.length>=3&&"~"===this.text.charAt(2)&&(i=3),this.is_end_tag=this.is_end_tag||"{"===this.tag_start_char&&(this.text.length<3||/[^#\^]/.test(this.text.charAt(i)))}else this.tag_complete=!0};m.prototype._get_tag_open_token=function(e){var t=new f(this._tag_stack.get_parser_token(),e);return t.alignment_size=this._options.wrap_attributes_indent_size,t.is_end_tag=t.is_end_tag||h(t.tag_check,this._options.void_elements),t.is_empty_element=t.tag_complete||t.is_start_tag&&t.is_end_tag,t.is_unformatted=!t.tag_complete&&h(t.tag_check,this._options.unformatted),t.is_content_unformatted=!t.is_empty_element&&h(t.tag_check,this._options.content_unformatted),t.is_inline_element=h(t.tag_name,this._options.inline)||this._options.inline_custom_elements&&t.tag_name.includes("-")||"{"===t.tag_start_char,t},m.prototype._set_tag_position=function(e,t,n,i,r){if(n.is_empty_element||(n.is_end_tag?n.start_tag_token=this._tag_stack.try_pop(n.tag_name):(this._do_optional_end_element(n)&&(n.is_inline_element||e.print_newline(!1)),this._tag_stack.record_tag(n),"script"!==n.tag_name&&"style"!==n.tag_name||n.is_unformatted||n.is_content_unformatted||(n.custom_beautifier_name=c(n.tag_check,t)))),h(n.tag_check,this._options.extra_liners)&&(e.print_newline(!1),e._output.just_added_blankline()||e.print_newline(!0)),n.is_empty_element){if("{"===n.tag_start_char&&"else"===n.tag_check)this._tag_stack.indent_to_tag(["if","unless","each"]),n.indent_content=!0,e.current_line_has_match(/{{#if/)||e.print_newline(!1);"!--"===n.tag_name&&r.type===o.TAG_CLOSE&&i.is_end_tag&&-1===n.text.indexOf("\n")||(n.is_inline_element||n.is_unformatted||e.print_newline(!1),this._calcluate_parent_multiline(e,n))}else if(n.is_end_tag){var s=!1;s=(s=n.start_tag_token&&n.start_tag_token.multiline_content)||!n.is_inline_element&&!(i.is_inline_element||i.is_unformatted)&&!(r.type===o.TAG_CLOSE&&n.start_tag_token===i)&&"TK_CONTENT"!==r.type,(n.is_content_unformatted||n.is_unformatted)&&(s=!1),s&&e.print_newline(!1)}else n.indent_content=!n.custom_beautifier_name,"<"===n.tag_start_char&&("html"===n.tag_name?n.indent_content=this._options.indent_inner_html:"head"===n.tag_name?n.indent_content=this._options.indent_head_inner_html:"body"===n.tag_name&&(n.indent_content=this._options.indent_body_inner_html)),n.is_inline_element||n.is_unformatted||"TK_CONTENT"===r.type&&!n.is_content_unformatted||e.print_newline(!1),this._calcluate_parent_multiline(e,n)},m.prototype._calcluate_parent_multiline=function(e,t){!t.parent||!e._output.just_added_newline()||(t.is_inline_element||t.is_unformatted)&&t.parent.is_inline_element||(t.parent.multiline_content=!0)};var y=["address","article","aside","blockquote","details","div","dl","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hr","main","menu","nav","ol","p","pre","section","table","ul"],g=["a","audio","del","ins","map","noscript","video"];m.prototype._do_optional_end_element=function(e){var t=null;if(!e.is_empty_element&&e.is_start_tag&&e.parent){if("body"===e.tag_name)t=t||this._tag_stack.try_pop("head");else if("li"===e.tag_name)t=t||this._tag_stack.try_pop("li",["ol","ul","menu"]);else if("dd"===e.tag_name||"dt"===e.tag_name)t=(t=t||this._tag_stack.try_pop("dt",["dl"]))||this._tag_stack.try_pop("dd",["dl"]);else if("p"===e.parent.tag_name&&-1!==y.indexOf(e.tag_name)){var n=e.parent.parent;n&&-1!==g.indexOf(n.tag_name)||(t=t||this._tag_stack.try_pop("p"))}else"rp"===e.tag_name||"rt"===e.tag_name?t=(t=t||this._tag_stack.try_pop("rt",["ruby","rtc"]))||this._tag_stack.try_pop("rp",["ruby","rtc"]):"optgroup"===e.tag_name?t=t||this._tag_stack.try_pop("optgroup",["select"]):"option"===e.tag_name?t=t||this._tag_stack.try_pop("option",["select","datalist","optgroup"]):"colgroup"===e.tag_name?t=t||this._tag_stack.try_pop("caption",["table"]):"thead"===e.tag_name?t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]):"tbody"===e.tag_name||"tfoot"===e.tag_name?t=(t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("thead",["table"]))||this._tag_stack.try_pop("tbody",["table"]):"tr"===e.tag_name?t=(t=(t=t||this._tag_stack.try_pop("caption",["table"]))||this._tag_stack.try_pop("colgroup",["table"]))||this._tag_stack.try_pop("tr",["table","thead","tbody","tfoot"]):"th"!==e.tag_name&&"td"!==e.tag_name||(t=(t=t||this._tag_stack.try_pop("td",["table","thead","tbody","tfoot","tr"]))||this._tag_stack.try_pop("th",["table","thead","tbody","tfoot","tr"]));return e.parent=this._tag_stack.get_parser_token(),t}},e.exports.Beautifier=m},function(e,t,n){var i=n(6).Options;function r(e){i.call(this,e,"html"),1===this.templating.length&&"auto"===this.templating[0]&&(this.templating=["django","erb","handlebars","php"]),this.indent_inner_html=this._get_boolean("indent_inner_html"),this.indent_body_inner_html=this._get_boolean("indent_body_inner_html",!0),this.indent_head_inner_html=this._get_boolean("indent_head_inner_html",!0),this.indent_handlebars=this._get_boolean("indent_handlebars",!0),this.wrap_attributes=this._get_selection("wrap_attributes",["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"]),this.wrap_attributes_min_attrs=this._get_number("wrap_attributes_min_attrs",2),this.wrap_attributes_indent_size=this._get_number("wrap_attributes_indent_size",this.indent_size),this.extra_liners=this._get_array("extra_liners",["head","body","/html"]),this.inline=this._get_array("inline",["a","abbr","area","audio","b","bdi","bdo","br","button","canvas","cite","code","data","datalist","del","dfn","em","embed","i","iframe","img","input","ins","kbd","keygen","label","map","mark","math","meter","noscript","object","output","progress","q","ruby","s","samp","select","small","span","strong","sub","sup","svg","template","textarea","time","u","var","video","wbr","text","acronym","big","strike","tt"]),this.inline_custom_elements=this._get_boolean("inline_custom_elements",!0),this.void_elements=this._get_array("void_elements",["area","base","br","col","embed","hr","img","input","keygen","link","menuitem","meta","param","source","track","wbr","!doctype","?xml","basefont","isindex"]),this.unformatted=this._get_array("unformatted",[]),this.content_unformatted=this._get_array("content_unformatted",["pre","textarea"]),this.unformatted_content_delimiter=this._get_characters("unformatted_content_delimiter"),this.indent_scripts=this._get_selection("indent_scripts",["normal","keep","separate"])}r.prototype=new i,e.exports.Options=r},function(e,t,n){var i=n(9).Tokenizer,r=n(9).TOKEN,s=n(13).Directives,o=n(14).TemplatablePattern,a=n(12).Pattern,u={TAG_OPEN:"TK_TAG_OPEN",TAG_CLOSE:"TK_TAG_CLOSE",CONTROL_FLOW_OPEN:"TK_CONTROL_FLOW_OPEN",CONTROL_FLOW_CLOSE:"TK_CONTROL_FLOW_CLOSE",ATTRIBUTE:"TK_ATTRIBUTE",EQUALS:"TK_EQUALS",VALUE:"TK_VALUE",COMMENT:"TK_COMMENT",TEXT:"TK_TEXT",UNKNOWN:"TK_UNKNOWN",START:r.START,RAW:r.RAW,EOF:r.EOF},l=new s(/<\!--/,/-->/),c=function(e,t){i.call(this,e,t),this._current_tag_name="";var n=new o(this._input).read_options(this._options),r=new a(this._input);if(this.__patterns={word:n.until(/[\n\r\t <]/),word_control_flow_close_excluded:n.until(/[\n\r\t <}]/),single_quote:n.until_after(/'/),double_quote:n.until_after(/"/),attribute:n.until(/[\n\r\t =>]|\/>/),element_name:n.until(/[\n\r\t >\/]/),angular_control_flow_start:r.matching(/\@[a-zA-Z]+[^({]*[({]/),handlebars_comment:r.starting_with(/{{!--/).until_after(/--}}/),handlebars:r.starting_with(/{{/).until_after(/}}/),handlebars_open:r.until(/[\n\r\t }]/),handlebars_raw_close:r.until(/}}/),comment:r.starting_with(/<!--/).until_after(/-->/),cdata:r.starting_with(/<!\[CDATA\[/).until_after(/]]>/),conditional_comment:r.starting_with(/<!\[/).until_after(/]>/),processing:r.starting_with(/<\?/).until_after(/\?>/)},this._options.indent_handlebars&&(this.__patterns.word=this.__patterns.word.exclude("handlebars"),this.__patterns.word_control_flow_close_excluded=this.__patterns.word_control_flow_close_excluded.exclude("handlebars")),this._unformatted_content_delimiter=null,this._options.unformatted_content_delimiter){var s=this._input.get_literal_regexp(this._options.unformatted_content_delimiter);this.__patterns.unformatted_content_delimiter=r.matching(s).until_after(s)}};(c.prototype=new i)._is_comment=function(e){return!1},c.prototype._is_opening=function(e){return e.type===u.TAG_OPEN||e.type===u.CONTROL_FLOW_OPEN},c.prototype._is_closing=function(e,t){return e.type===u.TAG_CLOSE&&t&&((">"===e.text||"/>"===e.text)&&"<"===t.text[0]||"}}"===e.text&&"{"===t.text[0]&&"{"===t.text[1])||e.type===u.CONTROL_FLOW_CLOSE&&"}"===e.text&&t.text.endsWith("{")},c.prototype._reset=function(){this._current_tag_name=""},c.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(u.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_open_handlebars(i,t))||this._read_attribute(i,e,t))||this._read_close(i,t))||this._read_control_flows(i,t))||this._read_raw_content(i,e,t))||this._read_content_word(i,t))||this._read_comment_or_cdata(i))||this._read_processing(i))||this._read_open(i,t))||this._create_token(u.UNKNOWN,this._input.next())},c.prototype._read_comment_or_cdata=function(e){var t=null,n=null,i=null;"<"===e&&("!"===this._input.peek(1)&&((n=this.__patterns.comment.read())?(i=l.get_directives(n))&&"start"===i.ignore&&(n+=l.readIgnored(this._input)):n=this.__patterns.cdata.read()),n&&((t=this._create_token(u.COMMENT,n)).directives=i));return t},c.prototype._read_processing=function(e){var t=null,n=null;if("<"===e){var i=this._input.peek(1);"!"!==i&&"?"!==i||(n=(n=this.__patterns.conditional_comment.read())||this.__patterns.processing.read()),n&&((t=this._create_token(u.COMMENT,n)).directives=null)}return t},c.prototype._read_open=function(e,t){var n=null,i=null;return t&&t.type!==u.CONTROL_FLOW_OPEN||"<"===e&&(n=this._input.next(),"/"===this._input.peek()&&(n+=this._input.next()),n+=this.__patterns.element_name.read(),i=this._create_token(u.TAG_OPEN,n)),i},c.prototype._read_open_handlebars=function(e,t){var n=null,i=null;return t&&t.type!==u.CONTROL_FLOW_OPEN||this._options.indent_handlebars&&"{"===e&&"{"===this._input.peek(1)&&("!"===this._input.peek(2)?(n=(n=this.__patterns.handlebars_comment.read())||this.__patterns.handlebars.read(),i=this._create_token(u.COMMENT,n)):(n=this.__patterns.handlebars_open.read(),i=this._create_token(u.TAG_OPEN,n))),i},c.prototype._read_control_flows=function(e,t){var n="",i=null;if(!this._options.templating.includes("angular")||!this._options.indent_handlebars)return i;if("@"===e){if(""===(n=this.__patterns.angular_control_flow_start.read()))return i;for(var r=n.endsWith("(")?1:0,s=0;!n.endsWith("{")||r!==s;){var o=this._input.next();if(null===o)break;"("===o?r++:")"===o&&s++,n+=o}i=this._create_token(u.CONTROL_FLOW_OPEN,n)}else"}"===e&&t&&t.type===u.CONTROL_FLOW_OPEN&&(n=this._input.next(),i=this._create_token(u.CONTROL_FLOW_CLOSE,n));return i},c.prototype._read_close=function(e,t){var n=null,i=null;return t&&t.type===u.TAG_OPEN&&("<"===t.text[0]&&(">"===e||"/"===e&&">"===this._input.peek(1))?(n=this._input.next(),"/"===e&&(n+=this._input.next()),i=this._create_token(u.TAG_CLOSE,n)):"{"===t.text[0]&&"}"===e&&"}"===this._input.peek(1)&&(this._input.next(),this._input.next(),i=this._create_token(u.TAG_CLOSE,"}}"))),i},c.prototype._read_attribute=function(e,t,n){var i=null,r="";if(n&&"<"===n.text[0])if("="===e)i=this._create_token(u.EQUALS,this._input.next());else if('"'===e||"'"===e){var s=this._input.next();s+='"'===e?this.__patterns.double_quote.read():this.__patterns.single_quote.read(),i=this._create_token(u.VALUE,s)}else(r=this.__patterns.attribute.read())&&(i=t.type===u.EQUALS?this._create_token(u.VALUE,r):this._create_token(u.ATTRIBUTE,r));return i},c.prototype._is_content_unformatted=function(e){return-1===this._options.void_elements.indexOf(e)&&(-1!==this._options.content_unformatted.indexOf(e)||-1!==this._options.unformatted.indexOf(e))},c.prototype._read_raw_content=function(e,t,n){var i="";if(n&&"{"===n.text[0])i=this.__patterns.handlebars_raw_close.read();else if(t.type===u.TAG_CLOSE&&"<"===t.opened.text[0]&&"/"!==t.text[0]){var r=t.opened.text.substr(1).toLowerCase();if("script"===r||"style"===r){var s=this._read_comment_or_cdata(e);if(s)return s.type=u.TEXT,s;i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig"))}else this._is_content_unformatted(r)&&(i=this._input.readUntil(new RegExp("</"+r+"[\\n\\r\\t ]*?>","ig")))}return i?this._create_token(u.TEXT,i):null},c.prototype._read_content_word=function(e,t){var n="";if(this._options.unformatted_content_delimiter&&e===this._options.unformatted_content_delimiter[0]&&(n=this.__patterns.unformatted_content_delimiter.read()),n||(n=t&&t.type===u.CONTROL_FLOW_OPEN?this.__patterns.word_control_flow_close_excluded.read():this.__patterns.word.read()),n)return this._create_token(u.TEXT,n)},e.exports.Tokenizer=c,e.exports.TOKEN=u}],t={};var n=function n(i){var r=t[i];if(void 0!==r)return r.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,n),s.exports}(18);s=n}();var o=s;i=[n,n(93531),n(26713)],r=function(e){var t=n(93531),i=n(26713);return{html_beautify:function(e,n){return o(e,n,t.js_beautify,i.css_beautify)}}}.apply(t,i),void 0===r||(e.exports=r)}()},93531:(e,t)=>{var n;!function(){var i;!function(){"use strict";var e=[function(e,t,n){var i=n(1).Beautifier,r=n(5).Options;e.exports=function(e,t){return new i(e,t).beautify()},e.exports.defaultOptions=function(){return new r}},function(e,t,n){var i=n(2).Output,r=n(3).Token,s=n(4),o=n(5).Options,a=n(7).Tokenizer,u=n(7).line_starters,l=n(7).positionable_operators,c=n(7).TOKEN;function h(e,t){return-1!==t.indexOf(e)}function p(e,t){return e&&e.type===c.RESERVED&&e.text===t}function d(e,t){return e&&e.type===c.RESERVED&&h(e.text,t)}var m=["case","return","do","if","throw","else","await","break","continue","async"],f=function(e){for(var t={},n=0;n<e.length;n++)t[e[n].replace(/-/g,"_")]=e[n];return t}(["before-newline","after-newline","preserve-newline"]),y=[f.before_newline,f.preserve_newline],g="BlockStatement",_="Statement",v="ObjectLiteral",b="ArrayLiteral",T="ForInitializer",w="Conditional",k="Expression";function S(e,t){t.multiline_frame||t.mode===T||t.mode===w||e.remove_indent(t.start_line_index)}function L(e){return e===b}function N(e){return h(e,[k,T,w])}function O(e,t){t=t||{},this._source_text=e||"",this._output=null,this._tokens=null,this._last_last_text=null,this._flags=null,this._previous_flags=null,this._flag_store=null,this._options=new o(t)}O.prototype.create_flags=function(e,t){var n=0;return e&&(n=e.indentation_level,!this._output.just_added_newline()&&e.line_indent_level>n&&(n=e.line_indent_level)),{mode:t,parent:e,last_token:e?e.last_token:new r(c.START_BLOCK,""),last_word:e?e.last_word:"",declaration_statement:!1,declaration_assignment:!1,multiline_frame:!1,inline_frame:!1,if_block:!1,else_block:!1,class_start_block:!1,do_block:!1,do_while:!1,import_block:!1,in_case_statement:!1,in_case:!1,case_body:!1,case_block:!1,indentation_level:n,alignment:0,line_indent_level:e?e.line_indent_level:n,start_line_index:this._output.get_line_number(),ternary_depth:0}},O.prototype._reset=function(e){var t=e.match(/^[\t ]*/)[0];this._last_last_text="",this._output=new i(this._options,t),this._output.raw=this._options.test_output_raw,this._flag_store=[],this.set_mode(g);var n=new a(e,this._options);return this._tokens=n.tokenize(),e},O.prototype.beautify=function(){if(this._options.disabled)return this._source_text;var e=this._reset(this._source_text),t=this._options.eol;"auto"===this._options.eol&&(t="\n",e&&s.lineBreak.test(e||"")&&(t=e.match(s.lineBreak)[0]));for(var n=this._tokens.next();n;)this.handle_token(n),this._last_last_text=this._flags.last_token.text,this._flags.last_token=n,n=this._tokens.next();return this._output.get_code(t)},O.prototype.handle_token=function(e,t){e.type===c.START_EXPR?this.handle_start_expr(e):e.type===c.END_EXPR?this.handle_end_expr(e):e.type===c.START_BLOCK?this.handle_start_block(e):e.type===c.END_BLOCK?this.handle_end_block(e):e.type===c.WORD||e.type===c.RESERVED?this.handle_word(e):e.type===c.SEMICOLON?this.handle_semicolon(e):e.type===c.STRING?this.handle_string(e):e.type===c.EQUALS?this.handle_equals(e):e.type===c.OPERATOR?this.handle_operator(e):e.type===c.COMMA?this.handle_comma(e):e.type===c.BLOCK_COMMENT?this.handle_block_comment(e,t):e.type===c.COMMENT?this.handle_comment(e,t):e.type===c.DOT?this.handle_dot(e):e.type===c.EOF?this.handle_eof(e):(e.type,c.UNKNOWN,this.handle_unknown(e,t))},O.prototype.handle_whitespace_and_comments=function(e,t){var n=e.newlines,i=this._options.keep_array_indentation&&L(this._flags.mode);if(e.comments_before)for(var r=e.comments_before.next();r;)this.handle_whitespace_and_comments(r,t),this.handle_token(r,t),r=e.comments_before.next();if(i)for(var s=0;s<n;s+=1)this.print_newline(s>0,t);else if(this._options.max_preserve_newlines&&n>this._options.max_preserve_newlines&&(n=this._options.max_preserve_newlines),this._options.preserve_newlines&&n>1){this.print_newline(!1,t);for(var o=1;o<n;o+=1)this.print_newline(!0,t)}};var x=["async","break","continue","return","throw","yield"];O.prototype.allow_wrap_or_preserved_newline=function(e,t){if(t=void 0!==t&&t,!this._output.just_added_newline()){var n=this._options.preserve_newlines&&e.newlines||t;if(h(this._flags.last_token.text,l)||h(e.text,l)){var i=h(this._flags.last_token.text,l)&&h(this._options.operator_position,y)||h(e.text,l);n=n&&i}if(n)this.print_newline(!1,!0);else if(this._options.wrap_line_length){if(d(this._flags.last_token,x))return;this._output.set_wrap_point()}}},O.prototype.print_newline=function(e,t){if(!t&&";"!==this._flags.last_token.text&&","!==this._flags.last_token.text&&"="!==this._flags.last_token.text&&(this._flags.last_token.type!==c.OPERATOR||"--"===this._flags.last_token.text||"++"===this._flags.last_token.text))for(var n=this._tokens.peek();this._flags.mode===_&&(!this._flags.if_block||!p(n,"else"))&&!this._flags.do_block;)this.restore_mode();this._output.add_new_line(e)&&(this._flags.multiline_frame=!0)},O.prototype.print_token_line_indentation=function(e){this._output.just_added_newline()&&(this._options.keep_array_indentation&&e.newlines&&("["===e.text||L(this._flags.mode))?(this._output.current_line.set_indent(-1),this._output.current_line.push(e.whitespace_before),this._output.space_before_token=!1):this._output.set_indent(this._flags.indentation_level,this._flags.alignment)&&(this._flags.line_indent_level=this._flags.indentation_level))},O.prototype.print_token=function(e){if(this._output.raw)this._output.add_raw_token(e);else{if(this._options.comma_first&&e.previous&&e.previous.type===c.COMMA&&this._output.just_added_newline()&&","===this._output.previous_line.last()){var t=this._output.previous_line.pop();this._output.previous_line.is_empty()&&(this._output.previous_line.push(t),this._output.trim(!0),this._output.current_line.pop(),this._output.trim()),this.print_token_line_indentation(e),this._output.add_token(","),this._output.space_before_token=!0}this.print_token_line_indentation(e),this._output.non_breaking_space=!0,this._output.add_token(e.text),this._output.previous_token_wrapped&&(this._flags.multiline_frame=!0)}},O.prototype.indent=function(){this._flags.indentation_level+=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},O.prototype.deindent=function(){this._flags.indentation_level>0&&(!this._flags.parent||this._flags.indentation_level>this._flags.parent.indentation_level)&&(this._flags.indentation_level-=1,this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},O.prototype.set_mode=function(e){this._flags?(this._flag_store.push(this._flags),this._previous_flags=this._flags):this._previous_flags=this.create_flags(null,e),this._flags=this.create_flags(this._previous_flags,e),this._output.set_indent(this._flags.indentation_level,this._flags.alignment)},O.prototype.restore_mode=function(){this._flag_store.length>0&&(this._previous_flags=this._flags,this._flags=this._flag_store.pop(),this._previous_flags.mode===_&&S(this._output,this._previous_flags),this._output.set_indent(this._flags.indentation_level,this._flags.alignment))},O.prototype.start_of_object_property=function(){return this._flags.parent.mode===v&&this._flags.mode===_&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||d(this._flags.last_token,["get","set"]))},O.prototype.start_of_statement=function(e){var t=!1;return!!(t=(t=(t=(t=(t=(t=(t=t||d(this._flags.last_token,["var","let","const"])&&e.type===c.WORD)||p(this._flags.last_token,"do"))||!(this._flags.parent.mode===v&&this._flags.mode===_)&&d(this._flags.last_token,x)&&!e.newlines)||p(this._flags.last_token,"else")&&!(p(e,"if")&&!e.comments_before))||this._flags.last_token.type===c.END_EXPR&&(this._previous_flags.mode===T||this._previous_flags.mode===w))||this._flags.last_token.type===c.WORD&&this._flags.mode===g&&!this._flags.in_case&&!("--"===e.text||"++"===e.text)&&"function"!==this._last_last_text&&e.type!==c.WORD&&e.type!==c.RESERVED)||this._flags.mode===v&&(":"===this._flags.last_token.text&&0===this._flags.ternary_depth||d(this._flags.last_token,["get","set"])))&&(this.set_mode(_),this.indent(),this.handle_whitespace_and_comments(e,!0),this.start_of_object_property()||this.allow_wrap_or_preserved_newline(e,d(e,["do","for","if","while"])),!0)},O.prototype.handle_start_expr=function(e){this.start_of_statement(e)||this.handle_whitespace_and_comments(e);var t=k;if("["===e.text){if(this._flags.last_token.type===c.WORD||")"===this._flags.last_token.text)return d(this._flags.last_token,u)&&(this._output.space_before_token=!0),this.print_token(e),this.set_mode(t),this.indent(),void(this._options.space_in_paren&&(this._output.space_before_token=!0));t=b,L(this._flags.mode)&&("["!==this._flags.last_token.text&&(","!==this._flags.last_token.text||"]"!==this._last_last_text&&"}"!==this._last_last_text)||this._options.keep_array_indentation||this.print_newline()),h(this._flags.last_token.type,[c.START_EXPR,c.END_EXPR,c.WORD,c.OPERATOR,c.DOT])||(this._output.space_before_token=!0)}else{if(this._flags.last_token.type===c.RESERVED)"for"===this._flags.last_token.text?(this._output.space_before_token=this._options.space_before_conditional,t=T):h(this._flags.last_token.text,["if","while","switch"])?(this._output.space_before_token=this._options.space_before_conditional,t=w):h(this._flags.last_word,["await","async"])?this._output.space_before_token=!0:"import"===this._flags.last_token.text&&""===e.whitespace_before?this._output.space_before_token=!1:(h(this._flags.last_token.text,u)||"catch"===this._flags.last_token.text)&&(this._output.space_before_token=!0);else if(this._flags.last_token.type===c.EQUALS||this._flags.last_token.type===c.OPERATOR)this.start_of_object_property()||this.allow_wrap_or_preserved_newline(e);else if(this._flags.last_token.type===c.WORD){this._output.space_before_token=!1;var n=this._tokens.peek(-3);if(this._options.space_after_named_function&&n){var i=this._tokens.peek(-4);d(n,["async","function"])||"*"===n.text&&d(i,["async","function"])?this._output.space_before_token=!0:this._flags.mode===v?"{"!==n.text&&","!==n.text&&("*"!==n.text||"{"!==i.text&&","!==i.text)||(this._output.space_before_token=!0):this._flags.parent&&this._flags.parent.class_start_block&&(this._output.space_before_token=!0)}}else this.allow_wrap_or_preserved_newline(e);(this._flags.last_token.type===c.RESERVED&&("function"===this._flags.last_word||"typeof"===this._flags.last_word)||"*"===this._flags.last_token.text&&(h(this._last_last_text,["function","yield"])||this._flags.mode===v&&h(this._last_last_text,["{",","])))&&(this._output.space_before_token=this._options.space_after_anon_function)}";"===this._flags.last_token.text||this._flags.last_token.type===c.START_BLOCK?this.print_newline():this._flags.last_token.type!==c.END_EXPR&&this._flags.last_token.type!==c.START_EXPR&&this._flags.last_token.type!==c.END_BLOCK&&"."!==this._flags.last_token.text&&this._flags.last_token.type!==c.COMMA||this.allow_wrap_or_preserved_newline(e,e.newlines),this.print_token(e),this.set_mode(t),this._options.space_in_paren&&(this._output.space_before_token=!0),this.indent()},O.prototype.handle_end_expr=function(e){for(;this._flags.mode===_;)this.restore_mode();this.handle_whitespace_and_comments(e),this._flags.multiline_frame&&this.allow_wrap_or_preserved_newline(e,"]"===e.text&&L(this._flags.mode)&&!this._options.keep_array_indentation),this._options.space_in_paren&&(this._flags.last_token.type!==c.START_EXPR||this._options.space_in_empty_paren?this._output.space_before_token=!0:(this._output.trim(),this._output.space_before_token=!1)),this.deindent(),this.print_token(e),this.restore_mode(),S(this._output,this._previous_flags),this._flags.do_while&&this._previous_flags.mode===w&&(this._previous_flags.mode=k,this._flags.do_block=!1,this._flags.do_while=!1)},O.prototype.handle_start_block=function(e){this.handle_whitespace_and_comments(e);var t=this._tokens.peek(),n=this._tokens.peek(1);"switch"===this._flags.last_word&&this._flags.last_token.type===c.END_EXPR?(this.set_mode(g),this._flags.in_case_statement=!0):this._flags.case_body?this.set_mode(g):n&&(h(n.text,[":",","])&&h(t.type,[c.STRING,c.WORD,c.RESERVED])||h(t.text,["get","set","..."])&&h(n.type,[c.WORD,c.RESERVED]))?h(this._last_last_text,["class","interface"])&&!h(n.text,[":",","])?this.set_mode(g):this.set_mode(v):this._flags.last_token.type===c.OPERATOR&&"=>"===this._flags.last_token.text?this.set_mode(g):h(this._flags.last_token.type,[c.EQUALS,c.START_EXPR,c.COMMA,c.OPERATOR])||d(this._flags.last_token,["return","throw","import","default"])?this.set_mode(v):this.set_mode(g),this._flags.last_token&&d(this._flags.last_token.previous,["class","extends"])&&(this._flags.class_start_block=!0);var i=!t.comments_before&&"}"===t.text,r=i&&"function"===this._flags.last_word&&this._flags.last_token.type===c.END_EXPR;if(this._options.brace_preserve_inline){var s=0,o=null;this._flags.inline_frame=!0;do{if(s+=1,(o=this._tokens.peek(s-1)).newlines){this._flags.inline_frame=!1;break}}while(o.type!==c.EOF&&(o.type!==c.END_BLOCK||o.opened!==e))}("expand"===this._options.brace_style||"none"===this._options.brace_style&&e.newlines)&&!this._flags.inline_frame?this._flags.last_token.type!==c.OPERATOR&&(r||this._flags.last_token.type===c.EQUALS||d(this._flags.last_token,m)&&"else"!==this._flags.last_token.text)?this._output.space_before_token=!0:this.print_newline(!1,!0):(!L(this._previous_flags.mode)||this._flags.last_token.type!==c.START_EXPR&&this._flags.last_token.type!==c.COMMA||((this._flags.last_token.type===c.COMMA||this._options.space_in_paren)&&(this._output.space_before_token=!0),(this._flags.last_token.type===c.COMMA||this._flags.last_token.type===c.START_EXPR&&this._flags.inline_frame)&&(this.allow_wrap_or_preserved_newline(e),this._previous_flags.multiline_frame=this._previous_flags.multiline_frame||this._flags.multiline_frame,this._flags.multiline_frame=!1)),this._flags.last_token.type!==c.OPERATOR&&this._flags.last_token.type!==c.START_EXPR&&(h(this._flags.last_token.type,[c.START_BLOCK,c.SEMICOLON])&&!this._flags.inline_frame?this.print_newline():this._output.space_before_token=!0)),this.print_token(e),this.indent(),i||this._options.brace_preserve_inline&&this._flags.inline_frame||this.print_newline()},O.prototype.handle_end_block=function(e){for(this.handle_whitespace_and_comments(e);this._flags.mode===_;)this.restore_mode();var t=this._flags.last_token.type===c.START_BLOCK;this._flags.inline_frame&&!t?this._output.space_before_token=!0:"expand"===this._options.brace_style?t||this.print_newline():t||(L(this._flags.mode)&&this._options.keep_array_indentation?(this._options.keep_array_indentation=!1,this.print_newline(),this._options.keep_array_indentation=!0):this.print_newline()),this.restore_mode(),this.print_token(e)},O.prototype.handle_word=function(e){if(e.type===c.RESERVED)if(h(e.text,["set","get"])&&this._flags.mode!==v)e.type=c.WORD;else if("import"===e.text&&h(this._tokens.peek().text,["(","."]))e.type=c.WORD;else if(h(e.text,["as","from"])&&!this._flags.import_block)e.type=c.WORD;else if(this._flags.mode===v){":"===this._tokens.peek().text&&(e.type=c.WORD)}if(this.start_of_statement(e)?d(this._flags.last_token,["var","let","const"])&&e.type===c.WORD&&(this._flags.declaration_statement=!0):!e.newlines||N(this._flags.mode)||this._flags.last_token.type===c.OPERATOR&&"--"!==this._flags.last_token.text&&"++"!==this._flags.last_token.text||this._flags.last_token.type===c.EQUALS||!this._options.preserve_newlines&&d(this._flags.last_token,["var","let","const","set","get"])?this.handle_whitespace_and_comments(e):(this.handle_whitespace_and_comments(e),this.print_newline()),this._flags.do_block&&!this._flags.do_while){if(p(e,"while"))return this._output.space_before_token=!0,this.print_token(e),this._output.space_before_token=!0,void(this._flags.do_while=!0);this.print_newline(),this._flags.do_block=!1}if(this._flags.if_block)if(!this._flags.else_block&&p(e,"else"))this._flags.else_block=!0;else{for(;this._flags.mode===_;)this.restore_mode();this._flags.if_block=!1,this._flags.else_block=!1}if(this._flags.in_case_statement&&d(e,["case","default"]))return this.print_newline(),this._flags.case_block||!this._flags.case_body&&!this._options.jslint_happy||this.deindent(),this._flags.case_body=!1,this.print_token(e),void(this._flags.in_case=!0);if(this._flags.last_token.type!==c.COMMA&&this._flags.last_token.type!==c.START_EXPR&&this._flags.last_token.type!==c.EQUALS&&this._flags.last_token.type!==c.OPERATOR||this.start_of_object_property()||h(this._flags.last_token.text,["+","-"])&&":"===this._last_last_text&&this._flags.parent.mode===v||this.allow_wrap_or_preserved_newline(e),p(e,"function"))return(h(this._flags.last_token.text,["}",";"])||this._output.just_added_newline()&&!h(this._flags.last_token.text,["(","[","{",":","=",","])&&this._flags.last_token.type!==c.OPERATOR)&&(this._output.just_added_blankline()||e.comments_before||(this.print_newline(),this.print_newline(!0))),this._flags.last_token.type===c.RESERVED||this._flags.last_token.type===c.WORD?d(this._flags.last_token,["get","set","new","export"])||d(this._flags.last_token,x)||p(this._flags.last_token,"default")&&"export"===this._last_last_text||"declare"===this._flags.last_token.text?this._output.space_before_token=!0:this.print_newline():this._flags.last_token.type===c.OPERATOR||"="===this._flags.last_token.text?this._output.space_before_token=!0:(this._flags.multiline_frame||!N(this._flags.mode)&&!L(this._flags.mode))&&this.print_newline(),this.print_token(e),void(this._flags.last_word=e.text);var t="NONE";(this._flags.last_token.type===c.END_BLOCK?this._previous_flags.inline_frame?t="SPACE":d(e,["else","catch","finally","from"])?"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&e.newlines?t="NEWLINE":(t="SPACE",this._output.space_before_token=!0):t="NEWLINE":this._flags.last_token.type===c.SEMICOLON&&this._flags.mode===g?t="NEWLINE":this._flags.last_token.type===c.SEMICOLON&&N(this._flags.mode)?t="SPACE":this._flags.last_token.type===c.STRING?t="NEWLINE":this._flags.last_token.type===c.RESERVED||this._flags.last_token.type===c.WORD||"*"===this._flags.last_token.text&&(h(this._last_last_text,["function","yield"])||this._flags.mode===v&&h(this._last_last_text,["{",","]))?t="SPACE":this._flags.last_token.type===c.START_BLOCK?t=this._flags.inline_frame?"SPACE":"NEWLINE":this._flags.last_token.type===c.END_EXPR&&(this._output.space_before_token=!0,t="NEWLINE"),d(e,u)&&")"!==this._flags.last_token.text&&(t=this._flags.inline_frame||"else"===this._flags.last_token.text||"export"===this._flags.last_token.text?"SPACE":"NEWLINE"),d(e,["else","catch","finally"]))?(this._flags.last_token.type!==c.END_BLOCK||this._previous_flags.mode!==g||"expand"===this._options.brace_style||"end-expand"===this._options.brace_style||"none"===this._options.brace_style&&e.newlines)&&!this._flags.inline_frame?this.print_newline():(this._output.trim(!0),"}"!==this._output.current_line.last()&&this.print_newline(),this._output.space_before_token=!0):"NEWLINE"===t?d(this._flags.last_token,m)||"declare"===this._flags.last_token.text&&d(e,["var","let","const"])?this._output.space_before_token=!0:this._flags.last_token.type!==c.END_EXPR?this._flags.last_token.type===c.START_EXPR&&d(e,["var","let","const"])||":"===this._flags.last_token.text||(p(e,"if")&&p(e.previous,"else")?this._output.space_before_token=!0:this.print_newline()):d(e,u)&&")"!==this._flags.last_token.text&&this.print_newline():this._flags.multiline_frame&&L(this._flags.mode)&&","===this._flags.last_token.text&&"}"===this._last_last_text?this.print_newline():"SPACE"===t&&(this._output.space_before_token=!0);!e.previous||e.previous.type!==c.WORD&&e.previous.type!==c.RESERVED||(this._output.space_before_token=!0),this.print_token(e),this._flags.last_word=e.text,e.type===c.RESERVED&&("do"===e.text?this._flags.do_block=!0:"if"===e.text?this._flags.if_block=!0:"import"===e.text?this._flags.import_block=!0:this._flags.import_block&&p(e,"from")&&(this._flags.import_block=!1))},O.prototype.handle_semicolon=function(e){this.start_of_statement(e)?this._output.space_before_token=!1:this.handle_whitespace_and_comments(e);for(var t=this._tokens.peek();this._flags.mode===_&&(!this._flags.if_block||!p(t,"else"))&&!this._flags.do_block;)this.restore_mode();this._flags.import_block&&(this._flags.import_block=!1),this.print_token(e)},O.prototype.handle_string=function(e){(!e.text.startsWith("`")||0!==e.newlines||""!==e.whitespace_before||")"!==e.previous.text&&this._flags.last_token.type!==c.WORD)&&(this.start_of_statement(e)?this._output.space_before_token=!0:(this.handle_whitespace_and_comments(e),this._flags.last_token.type===c.RESERVED||this._flags.last_token.type===c.WORD||this._flags.inline_frame?this._output.space_before_token=!0:this._flags.last_token.type===c.COMMA||this._flags.last_token.type===c.START_EXPR||this._flags.last_token.type===c.EQUALS||this._flags.last_token.type===c.OPERATOR?this.start_of_object_property()||this.allow_wrap_or_preserved_newline(e):!e.text.startsWith("`")||this._flags.last_token.type!==c.END_EXPR||"]"!==e.previous.text&&")"!==e.previous.text||0!==e.newlines?this.print_newline():this._output.space_before_token=!0)),this.print_token(e)},O.prototype.handle_equals=function(e){this.start_of_statement(e)||this.handle_whitespace_and_comments(e),this._flags.declaration_statement&&(this._flags.declaration_assignment=!0),this._output.space_before_token=!0,this.print_token(e),this._output.space_before_token=!0},O.prototype.handle_comma=function(e){this.handle_whitespace_and_comments(e,!0),this.print_token(e),this._output.space_before_token=!0,this._flags.declaration_statement?(N(this._flags.parent.mode)&&(this._flags.declaration_assignment=!1),this._flags.declaration_assignment?(this._flags.declaration_assignment=!1,this.print_newline(!1,!0)):this._options.comma_first&&this.allow_wrap_or_preserved_newline(e)):this._flags.mode===v||this._flags.mode===_&&this._flags.parent.mode===v?(this._flags.mode===_&&this.restore_mode(),this._flags.inline_frame||this.print_newline()):this._options.comma_first&&this.allow_wrap_or_preserved_newline(e)},O.prototype.handle_operator=function(e){var t="*"===e.text&&(d(this._flags.last_token,["function","yield"])||h(this._flags.last_token.type,[c.START_BLOCK,c.COMMA,c.END_BLOCK,c.SEMICOLON])),n=h(e.text,["-","+"])&&(h(this._flags.last_token.type,[c.START_BLOCK,c.START_EXPR,c.EQUALS,c.OPERATOR])||h(this._flags.last_token.text,u)||","===this._flags.last_token.text);if(this.start_of_statement(e));else{var i=!t;this.handle_whitespace_and_comments(e,i)}if("*"!==e.text||this._flags.last_token.type!==c.DOT)if("::"!==e.text)if(h(e.text,["-","+"])&&this.start_of_object_property())this.print_token(e);else{if(this._flags.last_token.type===c.OPERATOR&&h(this._options.operator_position,y)&&this.allow_wrap_or_preserved_newline(e),":"===e.text&&this._flags.in_case)return this.print_token(e),this._flags.in_case=!1,this._flags.case_body=!0,void(this._tokens.peek().type!==c.START_BLOCK?(this.indent(),this.print_newline(),this._flags.case_block=!1):(this._flags.case_block=!0,this._output.space_before_token=!0));var r=!0,s=!0,o=!1;if(":"===e.text?0===this._flags.ternary_depth?r=!1:(this._flags.ternary_depth-=1,o=!0):"?"===e.text&&(this._flags.ternary_depth+=1),!n&&!t&&this._options.preserve_newlines&&h(e.text,l)){var a=":"===e.text,p=a&&o,v=a&&!o;switch(this._options.operator_position){case f.before_newline:return this._output.space_before_token=!v,this.print_token(e),a&&!p||this.allow_wrap_or_preserved_newline(e),void(this._output.space_before_token=!0);case f.after_newline:return this._output.space_before_token=!0,!a||p?this._tokens.peek().newlines?this.print_newline(!1,!0):this.allow_wrap_or_preserved_newline(e):this._output.space_before_token=!1,this.print_token(e),void(this._output.space_before_token=!0);case f.preserve_newline:return v||this.allow_wrap_or_preserved_newline(e),r=!(this._output.just_added_newline()||v),this._output.space_before_token=r,this.print_token(e),void(this._output.space_before_token=!0)}}if(t){this.allow_wrap_or_preserved_newline(e),r=!1;var b=this._tokens.peek();s=b&&h(b.type,[c.WORD,c.RESERVED])}else if("..."===e.text)this.allow_wrap_or_preserved_newline(e),r=this._flags.last_token.type===c.START_BLOCK,s=!1;else if(h(e.text,["--","++","!","~"])||n){if(this._flags.last_token.type!==c.COMMA&&this._flags.last_token.type!==c.START_EXPR||this.allow_wrap_or_preserved_newline(e),r=!1,s=!1,e.newlines&&("--"===e.text||"++"===e.text||"~"===e.text)){var T=d(this._flags.last_token,m)&&e.newlines;T&&(this._previous_flags.if_block||this._previous_flags.else_block)&&this.restore_mode(),this.print_newline(T,!0)}";"===this._flags.last_token.text&&N(this._flags.mode)&&(r=!0),this._flags.last_token.type===c.RESERVED?r=!0:this._flags.last_token.type===c.END_EXPR?r=!("]"===this._flags.last_token.text&&("--"===e.text||"++"===e.text)):this._flags.last_token.type===c.OPERATOR&&(r=h(e.text,["--","-","++","+"])&&h(this._flags.last_token.text,["--","-","++","+"]),h(e.text,["+","-"])&&h(this._flags.last_token.text,["--","++"])&&(s=!0)),(this._flags.mode!==g||this._flags.inline_frame)&&this._flags.mode!==_||"{"!==this._flags.last_token.text&&";"!==this._flags.last_token.text||this.print_newline()}this._output.space_before_token=this._output.space_before_token||r,this.print_token(e),this._output.space_before_token=s}else this.print_token(e);else this.print_token(e)},O.prototype.handle_block_comment=function(e,t){return this._output.raw?(this._output.add_raw_token(e),void(e.directives&&"end"===e.directives.preserve&&(this._output.raw=this._options.test_output_raw))):e.directives?(this.print_newline(!1,t),this.print_token(e),"start"===e.directives.preserve&&(this._output.raw=!0),void this.print_newline(!1,!0)):s.newline.test(e.text)||e.newlines?void this.print_block_commment(e,t):(this._output.space_before_token=!0,this.print_token(e),void(this._output.space_before_token=!0))},O.prototype.print_block_commment=function(e,t){var n,i=function(e){for(var t=[],n=(e=e.replace(s.allLineBreaks,"\n")).indexOf("\n");-1!==n;)t.push(e.substring(0,n)),n=(e=e.substring(n+1)).indexOf("\n");return e.length&&t.push(e),t}(e.text),r=!1,o=!1,a=e.whitespace_before,u=a.length;if(this.print_newline(!1,t),this.print_token_line_indentation(e),this._output.add_token(i[0]),this.print_newline(!1,t),i.length>1){for(r=function(e,t){for(var n=0;n<e.length;n++)if(e[n].trim().charAt(0)!==t)return!1;return!0}(i=i.slice(1),"*"),o=function(e,t){for(var n,i=0,r=e.length;i<r;i++)if((n=e[i])&&0!==n.indexOf(t))return!1;return!0}(i,a),r&&(this._flags.alignment=1),n=0;n<i.length;n++)r?(this.print_token_line_indentation(e),this._output.add_token(i[n].replace(/^\s+/g,""))):o&&i[n]?(this.print_token_line_indentation(e),this._output.add_token(i[n].substring(u))):(this._output.current_line.set_indent(-1),this._output.add_token(i[n])),this.print_newline(!1,t);this._flags.alignment=0}},O.prototype.handle_comment=function(e,t){e.newlines?this.print_newline(!1,t):this._output.trim(!0),this._output.space_before_token=!0,this.print_token(e),this.print_newline(!1,t)},O.prototype.handle_dot=function(e){this.start_of_statement(e)||this.handle_whitespace_and_comments(e,!0),this._flags.last_token.text.match("^[0-9]+$")&&(this._output.space_before_token=!0),d(this._flags.last_token,m)?this._output.space_before_token=!1:this.allow_wrap_or_preserved_newline(e,")"===this._flags.last_token.text&&this._options.break_chained_methods),this._options.unindent_chained_methods&&this._output.just_added_newline()&&this.deindent(),this.print_token(e)},O.prototype.handle_unknown=function(e,t){this.print_token(e),"\n"===e.text[e.text.length-1]&&this.print_newline(!1,t)},O.prototype.handle_eof=function(e){for(;this._flags.mode===_;)this.restore_mode();this.handle_whitespace_and_comments(e)},e.exports.Beautifier=O},function(e){function t(e){this.__parent=e,this.__character_count=0,this.__indent_count=-1,this.__alignment_count=0,this.__wrap_point_index=0,this.__wrap_point_character_count=0,this.__wrap_point_indent_count=-1,this.__wrap_point_alignment_count=0,this.__items=[]}function n(e,t){this.__cache=[""],this.__indent_size=e.indent_size,this.__indent_string=e.indent_char,e.indent_with_tabs||(this.__indent_string=new Array(e.indent_size+1).join(e.indent_char)),t=t||"",e.indent_level>0&&(t=new Array(e.indent_level+1).join(this.__indent_string)),this.__base_string=t,this.__base_string_length=t.length}function i(e,i){this.__indent_cache=new n(e,i),this.raw=!1,this._end_with_newline=e.end_with_newline,this.indent_size=e.indent_size,this.wrap_line_length=e.wrap_line_length,this.indent_empty_lines=e.indent_empty_lines,this.__lines=[],this.previous_line=null,this.current_line=null,this.next_line=new t(this),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1,this.__add_outputline()}t.prototype.clone_empty=function(){var e=new t(this.__parent);return e.set_indent(this.__indent_count,this.__alignment_count),e},t.prototype.item=function(e){return e<0?this.__items[this.__items.length+e]:this.__items[e]},t.prototype.has_match=function(e){for(var t=this.__items.length-1;t>=0;t--)if(this.__items[t].match(e))return!0;return!1},t.prototype.set_indent=function(e,t){this.is_empty()&&(this.__indent_count=e||0,this.__alignment_count=t||0,this.__character_count=this.__parent.get_indent_size(this.__indent_count,this.__alignment_count))},t.prototype._set_wrap_point=function(){this.__parent.wrap_line_length&&(this.__wrap_point_index=this.__items.length,this.__wrap_point_character_count=this.__character_count,this.__wrap_point_indent_count=this.__parent.next_line.__indent_count,this.__wrap_point_alignment_count=this.__parent.next_line.__alignment_count)},t.prototype._should_wrap=function(){return this.__wrap_point_index&&this.__character_count>this.__parent.wrap_line_length&&this.__wrap_point_character_count>this.__parent.next_line.__character_count},t.prototype._allow_wrap=function(){if(this._should_wrap()){this.__parent.add_new_line();var e=this.__parent.current_line;return e.set_indent(this.__wrap_point_indent_count,this.__wrap_point_alignment_count),e.__items=this.__items.slice(this.__wrap_point_index),this.__items=this.__items.slice(0,this.__wrap_point_index),e.__character_count+=this.__character_count-this.__wrap_point_character_count,this.__character_count=this.__wrap_point_character_count," "===e.__items[0]&&(e.__items.splice(0,1),e.__character_count-=1),!0}return!1},t.prototype.is_empty=function(){return 0===this.__items.length},t.prototype.last=function(){return this.is_empty()?null:this.__items[this.__items.length-1]},t.prototype.push=function(e){this.__items.push(e);var t=e.lastIndexOf("\n");-1!==t?this.__character_count=e.length-t:this.__character_count+=e.length},t.prototype.pop=function(){var e=null;return this.is_empty()||(e=this.__items.pop(),this.__character_count-=e.length),e},t.prototype._remove_indent=function(){this.__indent_count>0&&(this.__indent_count-=1,this.__character_count-=this.__parent.indent_size)},t.prototype._remove_wrap_indent=function(){this.__wrap_point_indent_count>0&&(this.__wrap_point_indent_count-=1)},t.prototype.trim=function(){for(;" "===this.last();)this.__items.pop(),this.__character_count-=1},t.prototype.toString=function(){var e="";return this.is_empty()?this.__parent.indent_empty_lines&&(e=this.__parent.get_indent_string(this.__indent_count)):(e=this.__parent.get_indent_string(this.__indent_count,this.__alignment_count),e+=this.__items.join("")),e},n.prototype.get_indent_size=function(e,t){var n=this.__base_string_length;return t=t||0,e<0&&(n=0),n+=e*this.__indent_size,n+=t},n.prototype.get_indent_string=function(e,t){var n=this.__base_string;return t=t||0,e<0&&(e=0,n=""),t+=e*this.__indent_size,this.__ensure_cache(t),n+=this.__cache[t]},n.prototype.__ensure_cache=function(e){for(;e>=this.__cache.length;)this.__add_column()},n.prototype.__add_column=function(){var e=this.__cache.length,t=0,n="";this.__indent_size&&e>=this.__indent_size&&(e-=(t=Math.floor(e/this.__indent_size))*this.__indent_size,n=new Array(t+1).join(this.__indent_string)),e&&(n+=new Array(e+1).join(" ")),this.__cache.push(n)},i.prototype.__add_outputline=function(){this.previous_line=this.current_line,this.current_line=this.next_line.clone_empty(),this.__lines.push(this.current_line)},i.prototype.get_line_number=function(){return this.__lines.length},i.prototype.get_indent_string=function(e,t){return this.__indent_cache.get_indent_string(e,t)},i.prototype.get_indent_size=function(e,t){return this.__indent_cache.get_indent_size(e,t)},i.prototype.is_empty=function(){return!this.previous_line&&this.current_line.is_empty()},i.prototype.add_new_line=function(e){return!(this.is_empty()||!e&&this.just_added_newline())&&(this.raw||this.__add_outputline(),!0)},i.prototype.get_code=function(e){this.trim(!0);var t=this.current_line.pop();t&&("\n"===t[t.length-1]&&(t=t.replace(/\n+$/g,"")),this.current_line.push(t)),this._end_with_newline&&this.__add_outputline();var n=this.__lines.join("\n");return"\n"!==e&&(n=n.replace(/[\n]/g,e)),n},i.prototype.set_wrap_point=function(){this.current_line._set_wrap_point()},i.prototype.set_indent=function(e,t){return e=e||0,t=t||0,this.next_line.set_indent(e,t),this.__lines.length>1?(this.current_line.set_indent(e,t),!0):(this.current_line.set_indent(),!1)},i.prototype.add_raw_token=function(e){for(var t=0;t<e.newlines;t++)this.__add_outputline();this.current_line.set_indent(-1),this.current_line.push(e.whitespace_before),this.current_line.push(e.text),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=!1},i.prototype.add_token=function(e){this.__add_space_before_token(),this.current_line.push(e),this.space_before_token=!1,this.non_breaking_space=!1,this.previous_token_wrapped=this.current_line._allow_wrap()},i.prototype.__add_space_before_token=function(){this.space_before_token&&!this.just_added_newline()&&(this.non_breaking_space||this.set_wrap_point(),this.current_line.push(" "))},i.prototype.remove_indent=function(e){for(var t=this.__lines.length;e<t;)this.__lines[e]._remove_indent(),e++;this.current_line._remove_wrap_indent()},i.prototype.trim=function(e){for(e=void 0!==e&&e,this.current_line.trim();e&&this.__lines.length>1&&this.current_line.is_empty();)this.__lines.pop(),this.current_line=this.__lines[this.__lines.length-1],this.current_line.trim();this.previous_line=this.__lines.length>1?this.__lines[this.__lines.length-2]:null},i.prototype.just_added_newline=function(){return this.current_line.is_empty()},i.prototype.just_added_blankline=function(){return this.is_empty()||this.current_line.is_empty()&&this.previous_line.is_empty()},i.prototype.ensure_empty_line_above=function(e,n){for(var i=this.__lines.length-2;i>=0;){var r=this.__lines[i];if(r.is_empty())break;if(0!==r.item(0).indexOf(e)&&r.item(-1)!==n){this.__lines.splice(i+1,0,new t(this)),this.previous_line=this.__lines[this.__lines.length-2];break}i--}},e.exports.Output=i},function(e){e.exports.Token=function(e,t,n,i){this.type=e,this.text=t,this.comments_before=null,this.newlines=n||0,this.whitespace_before=i||"",this.parent=null,this.next=null,this.previous=null,this.opened=null,this.closed=null,this.directives=null}},function(e,t){var n="\\x24\\x30-\\x39\\x41-\\x5a\\x5f\\x61-\\x7a",i="\\xaa\\xb5\\xba\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc",r="\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f",s="\\\\u[0-9a-fA-F]{4}|\\\\u\\{[0-9a-fA-F]+\\}",o="(?:"+s+"|[\\x23\\x24\\x40\\x41-\\x5a\\x5f\\x61-\\x7a"+i+"])",a="(?:"+s+"|["+n+i+r+"])*";t.identifier=new RegExp(o+a,"g"),t.identifierStart=new RegExp(o),t.identifierMatch=new RegExp("(?:"+s+"|["+n+i+r+"])+");t.newline=/[\n\r\u2028\u2029]/,t.lineBreak=new RegExp("\r\n|"+t.newline.source),t.allLineBreaks=new RegExp(t.lineBreak.source,"g")},function(e,t,n){var i=n(6).Options,r=["before-newline","after-newline","preserve-newline"];function s(e){i.call(this,e,"js");var t=this.raw_options.brace_style||null;"expand-strict"===t?this.raw_options.brace_style="expand":"collapse-preserve-inline"===t?this.raw_options.brace_style="collapse,preserve-inline":void 0!==this.raw_options.braces_on_own_line&&(this.raw_options.brace_style=this.raw_options.braces_on_own_line?"expand":"collapse");var n=this._get_selection_list("brace_style",["collapse","expand","end-expand","none","preserve-inline"]);this.brace_preserve_inline=!1,this.brace_style="collapse";for(var s=0;s<n.length;s++)"preserve-inline"===n[s]?this.brace_preserve_inline=!0:this.brace_style=n[s];this.unindent_chained_methods=this._get_boolean("unindent_chained_methods"),this.break_chained_methods=this._get_boolean("break_chained_methods"),this.space_in_paren=this._get_boolean("space_in_paren"),this.space_in_empty_paren=this._get_boolean("space_in_empty_paren"),this.jslint_happy=this._get_boolean("jslint_happy"),this.space_after_anon_function=this._get_boolean("space_after_anon_function"),this.space_after_named_function=this._get_boolean("space_after_named_function"),this.keep_array_indentation=this._get_boolean("keep_array_indentation"),this.space_before_conditional=this._get_boolean("space_before_conditional",!0),this.unescape_strings=this._get_boolean("unescape_strings"),this.e4x=this._get_boolean("e4x"),this.comma_first=this._get_boolean("comma_first"),this.operator_position=this._get_selection("operator_position",r),this.test_output_raw=this._get_boolean("test_output_raw"),this.jslint_happy&&(this.space_after_anon_function=!0)}s.prototype=new i,e.exports.Options=s},function(e){function t(e,t){this.raw_options=n(e,t),this.disabled=this._get_boolean("disabled"),this.eol=this._get_characters("eol","auto"),this.end_with_newline=this._get_boolean("end_with_newline"),this.indent_size=this._get_number("indent_size",4),this.indent_char=this._get_characters("indent_char"," "),this.indent_level=this._get_number("indent_level"),this.preserve_newlines=this._get_boolean("preserve_newlines",!0),this.max_preserve_newlines=this._get_number("max_preserve_newlines",32786),this.preserve_newlines||(this.max_preserve_newlines=0),this.indent_with_tabs=this._get_boolean("indent_with_tabs","\t"===this.indent_char),this.indent_with_tabs&&(this.indent_char="\t",1===this.indent_size&&(this.indent_size=4)),this.wrap_line_length=this._get_number("wrap_line_length",this._get_number("max_char")),this.indent_empty_lines=this._get_boolean("indent_empty_lines"),this.templating=this._get_selection_list("templating",["auto","none","angular","django","erb","handlebars","php","smarty"],["auto"])}function n(e,t){var n,r={};for(n in e=i(e))n!==t&&(r[n]=e[n]);if(t&&e[t])for(n in e[t])r[n]=e[t][n];return r}function i(e){var t,n={};for(t in e){n[t.replace(/-/g,"_")]=e[t]}return n}t.prototype._get_array=function(e,t){var n=this.raw_options[e],i=t||[];return"object"===typeof n?null!==n&&"function"===typeof n.concat&&(i=n.concat()):"string"===typeof n&&(i=n.split(/[^a-zA-Z0-9_\/\-]+/)),i},t.prototype._get_boolean=function(e,t){var n=this.raw_options[e];return void 0===n?!!t:!!n},t.prototype._get_characters=function(e,t){var n=this.raw_options[e],i=t||"";return"string"===typeof n&&(i=n.replace(/\\r/,"\r").replace(/\\n/,"\n").replace(/\\t/,"\t")),i},t.prototype._get_number=function(e,t){var n=this.raw_options[e];t=parseInt(t,10),isNaN(t)&&(t=0);var i=parseInt(n,10);return isNaN(i)&&(i=t),i},t.prototype._get_selection=function(e,t,n){var i=this._get_selection_list(e,t,n);if(1!==i.length)throw new Error("Invalid Option Value: The option '"+e+"' can only be one of the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i[0]},t.prototype._get_selection_list=function(e,t,n){if(!t||0===t.length)throw new Error("Selection list cannot be empty.");if(n=n||[t[0]],!this._is_valid_selection(n,t))throw new Error("Invalid Default Value!");var i=this._get_array(e,n);if(!this._is_valid_selection(i,t))throw new Error("Invalid Option Value: The option '"+e+"' can contain only the following values:\n"+t+"\nYou passed in: '"+this.raw_options[e]+"'");return i},t.prototype._is_valid_selection=function(e,t){return e.length&&t.length&&!e.some((function(e){return-1===t.indexOf(e)}))},e.exports.Options=t,e.exports.normalizeOpts=i,e.exports.mergeOpts=n},function(e,t,n){var i=n(8).InputScanner,r=n(9).Tokenizer,s=n(9).TOKEN,o=n(13).Directives,a=n(4),u=n(12).Pattern,l=n(14).TemplatablePattern;function c(e,t){return-1!==t.indexOf(e)}var h={START_EXPR:"TK_START_EXPR",END_EXPR:"TK_END_EXPR",START_BLOCK:"TK_START_BLOCK",END_BLOCK:"TK_END_BLOCK",WORD:"TK_WORD",RESERVED:"TK_RESERVED",SEMICOLON:"TK_SEMICOLON",STRING:"TK_STRING",EQUALS:"TK_EQUALS",OPERATOR:"TK_OPERATOR",COMMA:"TK_COMMA",BLOCK_COMMENT:"TK_BLOCK_COMMENT",COMMENT:"TK_COMMENT",DOT:"TK_DOT",UNKNOWN:"TK_UNKNOWN",START:s.START,RAW:s.RAW,EOF:s.EOF},p=new o(/\/\*/,/\*\//),d=/0[xX][0123456789abcdefABCDEF_]*n?|0[oO][01234567_]*n?|0[bB][01_]*n?|\d[\d_]*n|(?:\.\d[\d_]*|\d[\d_]*\.?[\d_]*)(?:[eE][+-]?[\d_]+)?/,m=/[0-9]/,f=/[^\d\.]/,y=">>> === !== &&= ??= ||= << && >= ** != == <= >> || ?? |> < / - + > : & % ? ^ | *".split(" "),g=">>>= ... >>= <<= === >>> !== **= &&= ??= ||= => ^= :: /= << <= == && -= >= >> != -- += ** || ?? ++ %= &= *= |= |> = ! ? > < : / ^ - + * & % ~ |";g=(g="\\?\\.(?!\\d) "+(g=g.replace(/[-[\]{}()*+?.,\\^$|#]/g,"\\$&"))).replace(/ /g,"|");var _,v=new RegExp(g),b="continue,try,throw,return,var,let,const,if,switch,case,default,for,while,break,function,import,export".split(","),T=b.concat(["do","in","of","else","get","set","new","catch","finally","typeof","yield","async","await","from","as","class","extends"]),w=new RegExp("^(?:"+T.join("|")+")$"),k=function(e,t){r.call(this,e,t),this._patterns.whitespace=this._patterns.whitespace.matching(/\u00A0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff/.source,/\u2028\u2029/.source);var n=new u(this._input),i=new l(this._input).read_options(this._options);this.__patterns={template:i,identifier:i.starting_with(a.identifier).matching(a.identifierMatch),number:n.matching(d),punct:n.matching(v),comment:n.starting_with(/\/\//).until(/[\n\r\u2028\u2029]/),block_comment:n.starting_with(/\/\*/).until_after(/\*\//),html_comment_start:n.matching(/<!--/),html_comment_end:n.matching(/-->/),include:n.starting_with(/#include/).until_after(a.lineBreak),shebang:n.starting_with(/#!/).until_after(a.lineBreak),xml:n.matching(/[\s\S]*?<(\/?)([-a-zA-Z:0-9_.]+|{[^}]+?}|!\[CDATA\[[^\]]*?\]\]|)(\s*{[^}]+?}|\s+[-a-zA-Z:0-9_.]+|\s+[-a-zA-Z:0-9_.]+\s*=\s*('[^']*'|"[^"]*"|{([^{}]|{[^}]+?})+?}))*\s*(\/?)\s*>/),single_quote:i.until(/['\\\n\r\u2028\u2029]/),double_quote:i.until(/["\\\n\r\u2028\u2029]/),template_text:i.until(/[`\\$]/),template_expression:i.until(/[`}\\]/)}};(k.prototype=new r)._is_comment=function(e){return e.type===h.COMMENT||e.type===h.BLOCK_COMMENT||e.type===h.UNKNOWN},k.prototype._is_opening=function(e){return e.type===h.START_BLOCK||e.type===h.START_EXPR},k.prototype._is_closing=function(e,t){return(e.type===h.END_BLOCK||e.type===h.END_EXPR)&&t&&("]"===e.text&&"["===t.text||")"===e.text&&"("===t.text||"}"===e.text&&"{"===t.text)},k.prototype._reset=function(){_=!1},k.prototype._get_next_token=function(e,t){var n=null;this._readWhitespace();var i=this._input.peek();return null===i?this._create_token(h.EOF,""):n=(n=(n=(n=(n=(n=(n=(n=(n=(n=n||this._read_non_javascript(i))||this._read_string(i))||this._read_pair(i,this._input.peek(1)))||this._read_word(e))||this._read_singles(i))||this._read_comment(i))||this._read_regexp(i,e))||this._read_xml(i,e))||this._read_punctuation())||this._create_token(h.UNKNOWN,this._input.next())},k.prototype._read_word=function(e){var t;return""!==(t=this.__patterns.identifier.read())?(t=t.replace(a.allLineBreaks,"\n"),e.type!==h.DOT&&(e.type!==h.RESERVED||"set"!==e.text&&"get"!==e.text)&&w.test(t)?"in"!==t&&"of"!==t||e.type!==h.WORD&&e.type!==h.STRING?this._create_token(h.RESERVED,t):this._create_token(h.OPERATOR,t):this._create_token(h.WORD,t)):""!==(t=this.__patterns.number.read())?this._create_token(h.WORD,t):void 0},k.prototype._read_singles=function(e){var t=null;return"("===e||"["===e?t=this._create_token(h.START_EXPR,e):")"===e||"]"===e?t=this._create_token(h.END_EXPR,e):"{"===e?t=this._create_token(h.START_BLOCK,e):"}"===e?t=this._create_token(h.END_BLOCK,e):";"===e?t=this._create_token(h.SEMICOLON,e):"."===e&&f.test(this._input.peek(1))?t=this._create_token(h.DOT,e):","===e&&(t=this._create_token(h.COMMA,e)),t&&this._input.next(),t},k.prototype._read_pair=function(e,t){var n=null;return"#"===e&&"{"===t&&(n=this._create_token(h.START_BLOCK,e+t)),n&&(this._input.next(),this._input.next()),n},k.prototype._read_punctuation=function(){var e=this.__patterns.punct.read();if(""!==e)return"="===e?this._create_token(h.EQUALS,e):"?."===e?this._create_token(h.DOT,e):this._create_token(h.OPERATOR,e)},k.prototype._read_non_javascript=function(e){var t="";if("#"===e){if(this._is_first_token()&&(t=this.__patterns.shebang.read()))return this._create_token(h.UNKNOWN,t.trim()+"\n");if(t=this.__patterns.include.read())return this._create_token(h.UNKNOWN,t.trim()+"\n");e=this._input.next();var n="#";if(this._input.hasNext()&&this._input.testChar(m)){do{n+=e=this._input.next()}while(this._input.hasNext()&&"#"!==e&&"="!==e);return"#"===e||("["===this._input.peek()&&"]"===this._input.peek(1)?(n+="[]",this._input.next(),this._input.next()):"{"===this._input.peek()&&"}"===this._input.peek(1)&&(n+="{}",this._input.next(),this._input.next())),this._create_token(h.WORD,n)}this._input.back()}else if("<"===e&&this._is_first_token()){if(t=this.__patterns.html_comment_start.read()){for(;this._input.hasNext()&&!this._input.testChar(a.newline);)t+=this._input.next();return _=!0,this._create_token(h.COMMENT,t)}}else if(_&&"-"===e&&(t=this.__patterns.html_comment_end.read()))return _=!1,this._create_token(h.COMMENT,t);return null},k.prototype._read_comment=function(e){var t=null;if("/"===e){var n="";if("*"===this._input.peek(1)){n=this.__patterns.block_comment.read();var i=p.get_directives(n);i&&"start"===i.ignore&&(n+=p.readIgnored(this._input)),n=n.replace(a.allLineBreaks,"\n"),(t=this._create_token(h.BLOCK_COMMENT,n)).directives=i}else"/"===this._input.peek(1)&&(n=this.__patterns.comment.read(),t=this._create_token(h.COMMENT,n))}return t},k.prototype._read_string=function(e){if("`"===e||"'"===e||'"'===e){var t=this._input.next();return this.has_char_escapes=!1,t+="`"===e?this._read_string_recursive("`",!0,"${"):this._read_string_recursive(e),this.has_char_escapes&&this._options.unescape_strings&&(t=function(e){var t="",n=0,r=new i(e),s=null;for(;r.hasNext();)if((s=r.match(/([\s]|[^\\]|\\\\)+/g))&&(t+=s[0]),"\\"===r.peek()){if(r.next(),"x"===r.peek())s=r.match(/x([0-9A-Fa-f]{2})/g);else{if("u"!==r.peek()){t+="\\",r.hasNext()&&(t+=r.next());continue}(s=r.match(/u([0-9A-Fa-f]{4})/g))||(s=r.match(/u\{([0-9A-Fa-f]+)\}/g))}if(!s)return e;if((n=parseInt(s[1],16))>126&&n<=255&&0===s[0].indexOf("x"))return e;t+=n>=0&&n<32||n>1114111?"\\"+s[0]:34===n||39===n||92===n?"\\"+String.fromCharCode(n):String.fromCharCode(n)}return t}(t)),this._input.peek()===e&&(t+=this._input.next()),t=t.replace(a.allLineBreaks,"\n"),this._create_token(h.STRING,t)}return null},k.prototype._allow_regexp_or_xml=function(e){return e.type===h.RESERVED&&c(e.text,["return","case","throw","else","do","typeof","yield"])||e.type===h.END_EXPR&&")"===e.text&&e.opened.previous.type===h.RESERVED&&c(e.opened.previous.text,["if","while","for"])||c(e.type,[h.COMMENT,h.START_EXPR,h.START_BLOCK,h.START,h.END_BLOCK,h.OPERATOR,h.EQUALS,h.EOF,h.SEMICOLON,h.COMMA])},k.prototype._read_regexp=function(e,t){if("/"===e&&this._allow_regexp_or_xml(t)){for(var n=this._input.next(),i=!1,r=!1;this._input.hasNext()&&(i||r||this._input.peek()!==e)&&!this._input.testChar(a.newline);)n+=this._input.peek(),i?i=!1:(i="\\"===this._input.peek(),"["===this._input.peek()?r=!0:"]"===this._input.peek()&&(r=!1)),this._input.next();return this._input.peek()===e&&(n+=this._input.next(),n+=this._input.read(a.identifier)),this._create_token(h.STRING,n)}return null},k.prototype._read_xml=function(e,t){if(this._options.e4x&&"<"===e&&this._allow_regexp_or_xml(t)){var n="",i=this.__patterns.xml.read_match();if(i){for(var r=i[2].replace(/^{\s+/,"{").replace(/\s+}$/,"}"),s=0===r.indexOf("{"),o=0;i;){var u=!!i[1],l=i[2];if(!(!!i[i.length-1]||"![CDATA["===l.slice(0,8))&&(l===r||s&&l.replace(/^{\s+/,"{").replace(/\s+}$/,"}"))&&(u?--o:++o),n+=i[0],o<=0)break;i=this.__patterns.xml.read_match()}return i||(n+=this._input.match(/[\s\S]*/g)[0]),n=n.replace(a.allLineBreaks,"\n"),this._create_token(h.STRING,n)}}return null},k.prototype._read_string_recursive=function(e,t,n){var i,r;"'"===e?r=this.__patterns.single_quote:'"'===e?r=this.__patterns.double_quote:"`"===e?r=this.__patterns.template_text:"}"===e&&(r=this.__patterns.template_expression);for(var s=r.read(),o="";this._input.hasNext();){if((o=this._input.next())===e||!t&&a.newline.test(o)){this._input.back();break}"\\"===o&&this._input.hasNext()?("x"===(i=this._input.peek())||"u"===i?this.has_char_escapes=!0:"\r"===i&&"\n"===this._input.peek(1)&&this._input.next(),o+=this._input.next()):n&&("${"===n&&"$"===o&&"{"===this._input.peek()&&(o+=this._input.next()),n===o&&(o+="`"===e?this._read_string_recursive("}",t,"`"):this._read_string_recursive("`",t,"${"),this._input.hasNext()&&(o+=this._input.next()))),s+=o+=r.read()}return s},e.exports.Tokenizer=k,e.exports.TOKEN=h,e.exports.positionable_operators=y.slice(),e.exports.line_starters=b.slice()},function(e){var t=RegExp.prototype.hasOwnProperty("sticky");function n(e){this.__input=e||"",this.__input_length=this.__input.length,this.__position=0}n.prototype.restart=function(){this.__position=0},n.prototype.back=function(){this.__position>0&&(this.__position-=1)},n.prototype.hasNext=function(){return this.__position<this.__input_length},n.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__input.charAt(this.__position),this.__position+=1),e},n.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__input_length&&(t=this.__input.charAt(e)),t},n.prototype.__match=function(e,n){e.lastIndex=n;var i=e.exec(this.__input);return!i||t&&e.sticky||i.index!==n&&(i=null),i},n.prototype.test=function(e,t){return t=t||0,(t+=this.__position)>=0&&t<this.__input_length&&!!this.__match(e,t)},n.prototype.testChar=function(e,t){var n=this.peek(t);return e.lastIndex=0,null!==n&&e.test(n)},n.prototype.match=function(e){var t=this.__match(e,this.__position);return t?this.__position+=t[0].length:t=null,t},n.prototype.read=function(e,t,n){var i,r="";return e&&(i=this.match(e))&&(r+=i[0]),!t||!i&&e||(r+=this.readUntil(t,n)),r},n.prototype.readUntil=function(e,t){var n,i=this.__position;e.lastIndex=this.__position;var r=e.exec(this.__input);return r?(i=r.index,t&&(i+=r[0].length)):i=this.__input_length,n=this.__input.substring(this.__position,i),this.__position=i,n},n.prototype.readUntilAfter=function(e){return this.readUntil(e,!0)},n.prototype.get_regexp=function(e,n){var i=null,r="g";return n&&t&&(r="y"),"string"===typeof e&&""!==e?i=new RegExp(e,r):e&&(i=new RegExp(e.source,r)),i},n.prototype.get_literal_regexp=function(e){return RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"))},n.prototype.peekUntilAfter=function(e){var t=this.__position,n=this.readUntilAfter(e);return this.__position=t,n},n.prototype.lookBack=function(e){var t=this.__position-1;return t>=e.length&&this.__input.substring(t-e.length,t).toLowerCase()===e},e.exports.InputScanner=n},function(e,t,n){var i=n(8).InputScanner,r=n(3).Token,s=n(10).TokenStream,o=n(11).WhitespacePattern,a={START:"TK_START",RAW:"TK_RAW",EOF:"TK_EOF"},u=function(e,t){this._input=new i(e),this._options=t||{},this.__tokens=null,this._patterns={},this._patterns.whitespace=new o(this._input)};u.prototype.tokenize=function(){var e;this._input.restart(),this.__tokens=new s,this._reset();for(var t=new r(a.START,""),n=null,i=[],o=new s;t.type!==a.EOF;){for(e=this._get_next_token(t,n);this._is_comment(e);)o.add(e),e=this._get_next_token(t,n);o.isEmpty()||(e.comments_before=o,o=new s),e.parent=n,this._is_opening(e)?(i.push(n),n=e):n&&this._is_closing(e,n)&&(e.opened=n,n.closed=e,n=i.pop(),e.parent=n),e.previous=t,t.next=e,this.__tokens.add(e),t=e}return this.__tokens},u.prototype._is_first_token=function(){return this.__tokens.isEmpty()},u.prototype._reset=function(){},u.prototype._get_next_token=function(e,t){this._readWhitespace();var n=this._input.read(/.+/g);return n?this._create_token(a.RAW,n):this._create_token(a.EOF,"")},u.prototype._is_comment=function(e){return!1},u.prototype._is_opening=function(e){return!1},u.prototype._is_closing=function(e,t){return!1},u.prototype._create_token=function(e,t){return new r(e,t,this._patterns.whitespace.newline_count,this._patterns.whitespace.whitespace_before_token)},u.prototype._readWhitespace=function(){return this._patterns.whitespace.read()},e.exports.Tokenizer=u,e.exports.TOKEN=a},function(e){function t(e){this.__tokens=[],this.__tokens_length=this.__tokens.length,this.__position=0,this.__parent_token=e}t.prototype.restart=function(){this.__position=0},t.prototype.isEmpty=function(){return 0===this.__tokens_length},t.prototype.hasNext=function(){return this.__position<this.__tokens_length},t.prototype.next=function(){var e=null;return this.hasNext()&&(e=this.__tokens[this.__position],this.__position+=1),e},t.prototype.peek=function(e){var t=null;return e=e||0,(e+=this.__position)>=0&&e<this.__tokens_length&&(t=this.__tokens[e]),t},t.prototype.add=function(e){this.__parent_token&&(e.parent=this.__parent_token),this.__tokens.push(e),this.__tokens_length+=1},e.exports.TokenStream=t},function(e,t,n){var i=n(12).Pattern;function r(e,t){i.call(this,e,t),t?this._line_regexp=this._input.get_regexp(t._line_regexp):this.__set_whitespace_patterns("",""),this.newline_count=0,this.whitespace_before_token=""}r.prototype=new i,r.prototype.__set_whitespace_patterns=function(e,t){e+="\\t ",t+="\\n\\r",this._match_pattern=this._input.get_regexp("["+e+t+"]+",!0),this._newline_regexp=this._input.get_regexp("\\r\\n|["+t+"]")},r.prototype.read=function(){this.newline_count=0,this.whitespace_before_token="";var e=this._input.read(this._match_pattern);if(" "===e)this.whitespace_before_token=" ";else if(e){var t=this.__split(this._newline_regexp,e);this.newline_count=t.length-1,this.whitespace_before_token=t[this.newline_count]}return e},r.prototype.matching=function(e,t){var n=this._create();return n.__set_whitespace_patterns(e,t),n._update(),n},r.prototype._create=function(){return new r(this._input,this)},r.prototype.__split=function(e,t){e.lastIndex=0;for(var n=0,i=[],r=e.exec(t);r;)i.push(t.substring(n,r.index)),n=r.index+r[0].length,r=e.exec(t);return n<t.length?i.push(t.substring(n,t.length)):i.push(""),i},e.exports.WhitespacePattern=r},function(e){function t(e,t){this._input=e,this._starting_pattern=null,this._match_pattern=null,this._until_pattern=null,this._until_after=!1,t&&(this._starting_pattern=this._input.get_regexp(t._starting_pattern,!0),this._match_pattern=this._input.get_regexp(t._match_pattern,!0),this._until_pattern=this._input.get_regexp(t._until_pattern),this._until_after=t._until_after)}t.prototype.read=function(){var e=this._input.read(this._starting_pattern);return this._starting_pattern&&!e||(e+=this._input.read(this._match_pattern,this._until_pattern,this._until_after)),e},t.prototype.read_match=function(){return this._input.match(this._match_pattern)},t.prototype.until_after=function(e){var t=this._create();return t._until_after=!0,t._until_pattern=this._input.get_regexp(e),t._update(),t},t.prototype.until=function(e){var t=this._create();return t._until_after=!1,t._until_pattern=this._input.get_regexp(e),t._update(),t},t.prototype.starting_with=function(e){var t=this._create();return t._starting_pattern=this._input.get_regexp(e,!0),t._update(),t},t.prototype.matching=function(e){var t=this._create();return t._match_pattern=this._input.get_regexp(e,!0),t._update(),t},t.prototype._create=function(){return new t(this._input,this)},t.prototype._update=function(){},e.exports.Pattern=t},function(e){function t(e,t){e="string"===typeof e?e:e.source,t="string"===typeof t?t:t.source,this.__directives_block_pattern=new RegExp(e+/ beautify( \w+[:]\w+)+ /.source+t,"g"),this.__directive_pattern=/ (\w+)[:](\w+)/g,this.__directives_end_ignore_pattern=new RegExp(e+/\sbeautify\signore:end\s/.source+t,"g")}t.prototype.get_directives=function(e){if(!e.match(this.__directives_block_pattern))return null;var t={};this.__directive_pattern.lastIndex=0;for(var n=this.__directive_pattern.exec(e);n;)t[n[1]]=n[2],n=this.__directive_pattern.exec(e);return t},t.prototype.readIgnored=function(e){return e.readUntilAfter(this.__directives_end_ignore_pattern)},e.exports.Directives=t},function(e,t,n){var i=n(12).Pattern,r={django:!1,erb:!1,handlebars:!1,php:!1,smarty:!1,angular:!1};function s(e,t){i.call(this,e,t),this.__template_pattern=null,this._disabled=Object.assign({},r),this._excluded=Object.assign({},r),t&&(this.__template_pattern=this._input.get_regexp(t.__template_pattern),this._excluded=Object.assign(this._excluded,t._excluded),this._disabled=Object.assign(this._disabled,t._disabled));var n=new i(e);this.__patterns={handlebars_comment:n.starting_with(/{{!--/).until_after(/--}}/),handlebars_unescaped:n.starting_with(/{{{/).until_after(/}}}/),handlebars:n.starting_with(/{{/).until_after(/}}/),php:n.starting_with(/<\?(?:[= ]|php)/).until_after(/\?>/),erb:n.starting_with(/<%[^%]/).until_after(/[^%]%>/),django:n.starting_with(/{%/).until_after(/%}/),django_value:n.starting_with(/{{/).until_after(/}}/),django_comment:n.starting_with(/{#/).until_after(/#}/),smarty:n.starting_with(/{(?=[^}{\s\n])/).until_after(/[^\s\n]}/),smarty_comment:n.starting_with(/{\*/).until_after(/\*}/),smarty_literal:n.starting_with(/{literal}/).until_after(/{\/literal}/)}}s.prototype=new i,s.prototype._create=function(){return new s(this._input,this)},s.prototype._update=function(){this.__set_templated_pattern()},s.prototype.disable=function(e){var t=this._create();return t._disabled[e]=!0,t._update(),t},s.prototype.read_options=function(e){var t=this._create();for(var n in r)t._disabled[n]=-1===e.templating.indexOf(n);return t._update(),t},s.prototype.exclude=function(e){var t=this._create();return t._excluded[e]=!0,t._update(),t},s.prototype.read=function(){var e="";e=this._match_pattern?this._input.read(this._starting_pattern):this._input.read(this._starting_pattern,this.__template_pattern);for(var t=this._read_template();t;)this._match_pattern?t+=this._input.read(this._match_pattern):t+=this._input.readUntil(this.__template_pattern),e+=t,t=this._read_template();return this._until_after&&(e+=this._input.readUntilAfter(this._until_pattern)),e},s.prototype.__set_templated_pattern=function(){var e=[];this._disabled.php||e.push(this.__patterns.php._starting_pattern.source),this._disabled.handlebars||e.push(this.__patterns.handlebars._starting_pattern.source),this._disabled.erb||e.push(this.__patterns.erb._starting_pattern.source),this._disabled.django||(e.push(this.__patterns.django._starting_pattern.source),e.push(this.__patterns.django_value._starting_pattern.source),e.push(this.__patterns.django_comment._starting_pattern.source)),this._disabled.smarty||e.push(this.__patterns.smarty._starting_pattern.source),this._until_pattern&&e.push(this._until_pattern.source),this.__template_pattern=this._input.get_regexp("(?:"+e.join("|")+")")},s.prototype._read_template=function(){var e="",t=this._input.peek();if("<"===t){var n=this._input.peek(1);this._disabled.php||this._excluded.php||"?"!==n||(e=e||this.__patterns.php.read()),this._disabled.erb||this._excluded.erb||"%"!==n||(e=e||this.__patterns.erb.read())}else"{"===t&&(this._disabled.handlebars||this._excluded.handlebars||(e=(e=(e=e||this.__patterns.handlebars_comment.read())||this.__patterns.handlebars_unescaped.read())||this.__patterns.handlebars.read()),this._disabled.django||(this._excluded.django||this._excluded.handlebars||(e=e||this.__patterns.django_value.read()),this._excluded.django||(e=(e=e||this.__patterns.django_comment.read())||this.__patterns.django.read())),this._disabled.smarty||this._disabled.django&&this._disabled.handlebars&&(e=(e=(e=e||this.__patterns.smarty_comment.read())||this.__patterns.smarty_literal.read())||this.__patterns.smarty.read()));return e},e.exports.TemplatablePattern=s}],t={};var n=function n(i){var r=t[i];if(void 0!==r)return r.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,n),s.exports}(0);i=n}();var r=i;void 0===(n=function(){return{js_beautify:r}}.apply(t,[]))||(e.exports=n)}()},86426:(e,t,n)=>{"use strict";var i={};(0,n(85899).assign)(i,n(28725),n(38085),n(30395)),e.exports=i},28725:(e,t,n)=>{"use strict";var i=n(17129),r=n(85899),s=n(74050),o=n(93384),a=n(46864),u=Object.prototype.toString,l=0,c=-1,h=0,p=8;function d(e){if(!(this instanceof d))return new d(e);this.options=r.assign({level:c,method:p,chunkSize:16384,windowBits:15,memLevel:8,strategy:h,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new a,this.strm.avail_out=0;var n=i.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==l)throw new Error(o[n]);if(t.header&&i.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m="string"===typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,(n=i.deflateSetDictionary(this.strm,m))!==l)throw new Error(o[n]);this._dict_set=!0}}function m(e,t){var n=new d(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}d.prototype.push=function(e,t){var n,o,a=this.strm,c=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"===typeof e?a.input=s.string2buf(e):"[object ArrayBuffer]"===u.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new r.Buf8(c),a.next_out=0,a.avail_out=c),1!==(n=i.deflate(a,o))&&n!==l)return this.onEnd(n),this.ended=!0,!1;0!==a.avail_out&&(0!==a.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(s.buf2binstring(r.shrinkBuf(a.output,a.next_out))):this.onData(r.shrinkBuf(a.output,a.next_out)))}while((a.avail_in>0||0===a.avail_out)&&1!==n);return 4===o?(n=i.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===l):2!==o||(this.onEnd(l),a.avail_out=0,!0)},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===l&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=r.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=d,t.deflate=m,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,m(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,m(e,t)}},38085:(e,t,n)=>{"use strict";var i=n(85281),r=n(85899),s=n(74050),o=n(30395),a=n(93384),u=n(46864),l=n(53016),c=Object.prototype.toString;function h(e){if(!(this instanceof h))return new h(e);this.options=r.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0===(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var n=i.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw new Error(a[n]);if(this.header=new l,i.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"===typeof t.dictionary?t.dictionary=s.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=i.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(a[n])}function p(e,t){var n=new h(t);if(n.push(e,!0),n.err)throw n.msg||a[n.err];return n.result}h.prototype.push=function(e,t){var n,a,u,l,h,p=this.strm,d=this.options.chunkSize,m=this.options.dictionary,f=!1;if(this.ended)return!1;a=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"===typeof e?p.input=s.binstring2buf(e):"[object ArrayBuffer]"===c.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new r.Buf8(d),p.next_out=0,p.avail_out=d),(n=i.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(n=i.inflateSetDictionary(this.strm,m)),n===o.Z_BUF_ERROR&&!0===f&&(n=o.Z_OK,f=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),this.ended=!0,!1;p.next_out&&(0!==p.avail_out&&n!==o.Z_STREAM_END&&(0!==p.avail_in||a!==o.Z_FINISH&&a!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(u=s.utf8border(p.output,p.next_out),l=p.next_out-u,h=s.buf2string(p.output,u),p.next_out=l,p.avail_out=d-l,l&&r.arraySet(p.output,p.output,u,l,0),this.onData(h)):this.onData(r.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(f=!0)}while((p.avail_in>0||0===p.avail_out)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(a=o.Z_FINISH),a===o.Z_FINISH?(n=i.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):a!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),p.avail_out=0,!0)},h.prototype.onData=function(e){this.chunks.push(e)},h.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=r.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Inflate=h,t.inflate=p,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,p(e,t)},t.ungzip=p},85899:(e,t)=>{"use strict";var n="undefined"!==typeof Uint8Array&&"undefined"!==typeof Uint16Array&&"undefined"!==typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if("object"!==typeof n)throw new TypeError(n+"must be non-object");for(var r in n)i(n,r)&&(e[r]=n[r])}}return e},t.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,i,r){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+i),r);else for(var s=0;s<i;s++)e[r+s]=t[n+s]},flattenChunks:function(e){var t,n,i,r,s,o;for(i=0,t=0,n=e.length;t<n;t++)i+=e[t].length;for(o=new Uint8Array(i),r=0,t=0,n=e.length;t<n;t++)s=e[t],o.set(s,r),r+=s.length;return o}},s={arraySet:function(e,t,n,i,r){for(var s=0;s<i;s++)e[r+s]=t[n+s]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,r)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,s))},t.setTyped(n)},74050:(e,t,n)=>{"use strict";var i=n(85899),r=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(l){r=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(l){s=!1}for(var o=new i.Buf8(256),a=0;a<256;a++)o[a]=a>=252?6:a>=248?5:a>=240?4:a>=224?3:a>=192?2:1;function u(e,t){if(t<65534&&(e.subarray&&s||!e.subarray&&r))return String.fromCharCode.apply(null,i.shrinkBuf(e,t));for(var n="",o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,t.string2buf=function(e){var t,n,r,s,o,a=e.length,u=0;for(s=0;s<a;s++)55296===(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320===(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),u+=n<128?1:n<2048?2:n<65536?3:4;for(t=new i.Buf8(u),o=0,s=0;o<u;s++)55296===(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320===(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),n<128?t[o++]=n:n<2048?(t[o++]=192|n>>>6,t[o++]=128|63&n):n<65536?(t[o++]=224|n>>>12,t[o++]=128|n>>>6&63,t[o++]=128|63&n):(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63,t[o++]=128|n>>>6&63,t[o++]=128|63&n);return t},t.buf2binstring=function(e){return u(e,e.length)},t.binstring2buf=function(e){for(var t=new i.Buf8(e.length),n=0,r=t.length;n<r;n++)t[n]=e.charCodeAt(n);return t},t.buf2string=function(e,t){var n,i,r,s,a=t||e.length,l=new Array(2*a);for(i=0,n=0;n<a;)if((r=e[n++])<128)l[i++]=r;else if((s=o[r])>4)l[i++]=65533,n+=s-1;else{for(r&=2===s?31:3===s?15:7;s>1&&n<a;)r=r<<6|63&e[n++],s--;s>1?l[i++]=65533:r<65536?l[i++]=r:(r-=65536,l[i++]=55296|r>>10&1023,l[i++]=56320|1023&r)}return u(l,i)},t.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;n>=0&&128===(192&e[n]);)n--;return n<0||0===n?t:n+o[e[n]]>t?n:t}},21875:e=>{"use strict";e.exports=function(e,t,n,i){for(var r=65535&e,s=e>>>16&65535,o=0;0!==n;){n-=o=n>2e3?2e3:n;do{s=s+(r=r+t[i++]|0)|0}while(--o);r%=65521,s%=65521}return r|s<<16}},30395:e=>{"use strict";e.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}},86181:e=>{"use strict";var t=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var i=0;i<8;i++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();e.exports=function(e,n,i,r){var s=t,o=r+i;e^=-1;for(var a=r;a<o;a++)e=e>>>8^s[255&(e^n[a])];return~e}},17129:(e,t,n)=>{"use strict";var i,r=n(85899),s=n(74867),o=n(21875),a=n(86181),u=n(93384),l=0,c=4,h=0,p=-2,d=-1,m=4,f=2,y=8,g=9,_=286,v=30,b=19,T=2*_+1,w=15,k=3,S=258,L=S+k+1,N=42,O=103,x=113,C=666,E=1,A=2,P=3,F=4;function M(e,t){return e.msg=u[t],t}function j(e){return(e<<1)-(e>4?9:0)}function R(e){for(var t=e.length;--t>=0;)e[t]=0}function I(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(r.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function B(e,t){s._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,I(e.strm)}function D(e,t){e.pending_buf[e.pending++]=t}function U(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function z(e,t,n,i){var s=e.avail_in;return s>i&&(s=i),0===s?0:(e.avail_in-=s,r.arraySet(t,e.input,e.next_in,s,n),1===e.state.wrap?e.adler=o(e.adler,t,s,n):2===e.state.wrap&&(e.adler=a(e.adler,t,s,n)),e.next_in+=s,e.total_in+=s,s)}function W(e,t){var n,i,r=e.max_chain_length,s=e.strstart,o=e.prev_length,a=e.nice_match,u=e.strstart>e.w_size-L?e.strstart-(e.w_size-L):0,l=e.window,c=e.w_mask,h=e.prev,p=e.strstart+S,d=l[s+o-1],m=l[s+o];e.prev_length>=e.good_match&&(r>>=2),a>e.lookahead&&(a=e.lookahead);do{if(l[(n=t)+o]===m&&l[n+o-1]===d&&l[n]===l[s]&&l[++n]===l[s+1]){s+=2,n++;do{}while(l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&s<p);if(i=S-(p-s),s=p-S,i>o){if(e.match_start=t,o=i,i>=a)break;d=l[s+o-1],m=l[s+o]}}}while((t=h[t&c])>u&&0!==--r);return o<=e.lookahead?o:e.lookahead}function J(e){var t,n,i,s,o,a=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=a+(a-L)){r.arraySet(e.window,e.window,a,a,0),e.match_start-=a,e.strstart-=a,e.block_start-=a,t=n=e.hash_size;do{i=e.head[--t],e.head[t]=i>=a?i-a:0}while(--n);t=n=a;do{i=e.prev[--t],e.prev[t]=i>=a?i-a:0}while(--n);s+=a}if(0===e.strm.avail_in)break;if(n=z(e.strm,e.window,e.strstart+e.lookahead,s),e.lookahead+=n,e.lookahead+e.insert>=k)for(o=e.strstart-e.insert,e.ins_h=e.window[o],e.ins_h=(e.ins_h<<e.hash_shift^e.window[o+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[o+k-1])&e.hash_mask,e.prev[o&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=o,o++,e.insert--,!(e.lookahead+e.insert<k)););}while(e.lookahead<L&&0!==e.strm.avail_in)}function G(e,t){for(var n,i;;){if(e.lookahead<L){if(J(e),e.lookahead<L&&t===l)return E;if(0===e.lookahead)break}if(n=0,e.lookahead>=k&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+k-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-L&&(e.match_length=W(e,n)),e.match_length>=k)if(i=s._tr_tally(e,e.strstart-e.match_start,e.match_length-k),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=k){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+k-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!==--e.match_length);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=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(i&&(B(e,!1),0===e.strm.avail_out))return E}return e.insert=e.strstart<k-1?e.strstart:k-1,t===c?(B(e,!0),0===e.strm.avail_out?P:F):e.last_lit&&(B(e,!1),0===e.strm.avail_out)?E:A}function H(e,t){for(var n,i,r;;){if(e.lookahead<L){if(J(e),e.lookahead<L&&t===l)return E;if(0===e.lookahead)break}if(n=0,e.lookahead>=k&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+k-1])&e.hash_mask,n=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=k-1,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-L&&(e.match_length=W(e,n),e.match_length<=5&&(1===e.strategy||e.match_length===k&&e.strstart-e.match_start>4096)&&(e.match_length=k-1)),e.prev_length>=k&&e.match_length<=e.prev_length){r=e.strstart+e.lookahead-k,i=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-k),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=r&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+k-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!==--e.prev_length);if(e.match_available=0,e.match_length=k-1,e.strstart++,i&&(B(e,!1),0===e.strm.avail_out))return E}else if(e.match_available){if((i=s._tr_tally(e,0,e.window[e.strstart-1]))&&B(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return E}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(i=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<k-1?e.strstart:k-1,t===c?(B(e,!0),0===e.strm.avail_out?P:F):e.last_lit&&(B(e,!1),0===e.strm.avail_out)?E:A}function q(e,t,n,i,r){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=i,this.func=r}function K(){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=y,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 r.Buf16(2*T),this.dyn_dtree=new r.Buf16(2*(2*v+1)),this.bl_tree=new r.Buf16(2*(2*b+1)),R(this.dyn_ltree),R(this.dyn_dtree),R(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new r.Buf16(w+1),this.heap=new r.Buf16(2*_+1),R(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new r.Buf16(2*_+1),R(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 V(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=f,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?N:x,e.adler=2===t.wrap?0:1,t.last_flush=l,s._tr_init(t),h):M(e,p)}function Q(e){var t,n=V(e);return n===h&&((t=e.state).window_size=2*t.w_size,R(t.head),t.max_lazy_match=i[t.level].max_lazy,t.good_match=i[t.level].good_length,t.nice_match=i[t.level].nice_length,t.max_chain_length=i[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=k-1,t.match_available=0,t.ins_h=0),n}function Z(e,t,n,i,s,o){if(!e)return p;var a=1;if(t===d&&(t=6),i<0?(a=0,i=-i):i>15&&(a=2,i-=16),s<1||s>g||n!==y||i<8||i>15||t<0||t>9||o<0||o>m)return M(e,p);8===i&&(i=9);var u=new K;return e.state=u,u.strm=e,u.wrap=a,u.gzhead=null,u.w_bits=i,u.w_size=1<<u.w_bits,u.w_mask=u.w_size-1,u.hash_bits=s+7,u.hash_size=1<<u.hash_bits,u.hash_mask=u.hash_size-1,u.hash_shift=~~((u.hash_bits+k-1)/k),u.window=new r.Buf8(2*u.w_size),u.head=new r.Buf16(u.hash_size),u.prev=new r.Buf16(u.w_size),u.lit_bufsize=1<<s+6,u.pending_buf_size=4*u.lit_bufsize,u.pending_buf=new r.Buf8(u.pending_buf_size),u.d_buf=1*u.lit_bufsize,u.l_buf=3*u.lit_bufsize,u.level=t,u.strategy=o,u.method=n,Q(e)}i=[new q(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(J(e),0===e.lookahead&&t===l)return E;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var i=e.block_start+n;if((0===e.strstart||e.strstart>=i)&&(e.lookahead=e.strstart-i,e.strstart=i,B(e,!1),0===e.strm.avail_out))return E;if(e.strstart-e.block_start>=e.w_size-L&&(B(e,!1),0===e.strm.avail_out))return E}return e.insert=0,t===c?(B(e,!0),0===e.strm.avail_out?P:F):(e.strstart>e.block_start&&(B(e,!1),e.strm.avail_out),E)})),new q(4,4,8,4,G),new q(4,5,16,8,G),new q(4,6,32,32,G),new q(4,4,16,16,H),new q(8,16,32,32,H),new q(8,16,128,128,H),new q(8,32,128,256,H),new q(32,128,258,1024,H),new q(32,258,258,4096,H)],t.deflateInit=function(e,t){return Z(e,t,y,15,8,0)},t.deflateInit2=Z,t.deflateReset=Q,t.deflateResetKeep=V,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?p:(e.state.gzhead=t,h):p},t.deflate=function(e,t){var n,r,o,u;if(!e||!e.state||t>5||t<0)return e?M(e,p):p;if(r=e.state,!e.output||!e.input&&0!==e.avail_in||r.status===C&&t!==c)return M(e,0===e.avail_out?-5:p);if(r.strm=e,n=r.last_flush,r.last_flush=t,r.status===N)if(2===r.wrap)e.adler=0,D(r,31),D(r,139),D(r,8),r.gzhead?(D(r,(r.gzhead.text?1:0)+(r.gzhead.hcrc?2:0)+(r.gzhead.extra?4:0)+(r.gzhead.name?8:0)+(r.gzhead.comment?16:0)),D(r,255&r.gzhead.time),D(r,r.gzhead.time>>8&255),D(r,r.gzhead.time>>16&255),D(r,r.gzhead.time>>24&255),D(r,9===r.level?2:r.strategy>=2||r.level<2?4:0),D(r,255&r.gzhead.os),r.gzhead.extra&&r.gzhead.extra.length&&(D(r,255&r.gzhead.extra.length),D(r,r.gzhead.extra.length>>8&255)),r.gzhead.hcrc&&(e.adler=a(e.adler,r.pending_buf,r.pending,0)),r.gzindex=0,r.status=69):(D(r,0),D(r,0),D(r,0),D(r,0),D(r,0),D(r,9===r.level?2:r.strategy>=2||r.level<2?4:0),D(r,3),r.status=x);else{var d=y+(r.w_bits-8<<4)<<8;d|=(r.strategy>=2||r.level<2?0:r.level<6?1:6===r.level?2:3)<<6,0!==r.strstart&&(d|=32),d+=31-d%31,r.status=x,U(r,d),0!==r.strstart&&(U(r,e.adler>>>16),U(r,65535&e.adler)),e.adler=1}if(69===r.status)if(r.gzhead.extra){for(o=r.pending;r.gzindex<(65535&r.gzhead.extra.length)&&(r.pending!==r.pending_buf_size||(r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),I(e),o=r.pending,r.pending!==r.pending_buf_size));)D(r,255&r.gzhead.extra[r.gzindex]),r.gzindex++;r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),r.gzindex===r.gzhead.extra.length&&(r.gzindex=0,r.status=73)}else r.status=73;if(73===r.status)if(r.gzhead.name){o=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),I(e),o=r.pending,r.pending===r.pending_buf_size)){u=1;break}u=r.gzindex<r.gzhead.name.length?255&r.gzhead.name.charCodeAt(r.gzindex++):0,D(r,u)}while(0!==u);r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),0===u&&(r.gzindex=0,r.status=91)}else r.status=91;if(91===r.status)if(r.gzhead.comment){o=r.pending;do{if(r.pending===r.pending_buf_size&&(r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),I(e),o=r.pending,r.pending===r.pending_buf_size)){u=1;break}u=r.gzindex<r.gzhead.comment.length?255&r.gzhead.comment.charCodeAt(r.gzindex++):0,D(r,u)}while(0!==u);r.gzhead.hcrc&&r.pending>o&&(e.adler=a(e.adler,r.pending_buf,r.pending-o,o)),0===u&&(r.status=O)}else r.status=O;if(r.status===O&&(r.gzhead.hcrc?(r.pending+2>r.pending_buf_size&&I(e),r.pending+2<=r.pending_buf_size&&(D(r,255&e.adler),D(r,e.adler>>8&255),e.adler=0,r.status=x)):r.status=x),0!==r.pending){if(I(e),0===e.avail_out)return r.last_flush=-1,h}else if(0===e.avail_in&&j(t)<=j(n)&&t!==c)return M(e,-5);if(r.status===C&&0!==e.avail_in)return M(e,-5);if(0!==e.avail_in||0!==r.lookahead||t!==l&&r.status!==C){var m=2===r.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(J(e),0===e.lookahead)){if(t===l)return E;break}if(e.match_length=0,n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(B(e,!1),0===e.strm.avail_out))return E}return e.insert=0,t===c?(B(e,!0),0===e.strm.avail_out?P:F):e.last_lit&&(B(e,!1),0===e.strm.avail_out)?E:A}(r,t):3===r.strategy?function(e,t){for(var n,i,r,o,a=e.window;;){if(e.lookahead<=S){if(J(e),e.lookahead<=S&&t===l)return E;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=k&&e.strstart>0&&(i=a[r=e.strstart-1])===a[++r]&&i===a[++r]&&i===a[++r]){o=e.strstart+S;do{}while(i===a[++r]&&i===a[++r]&&i===a[++r]&&i===a[++r]&&i===a[++r]&&i===a[++r]&&i===a[++r]&&i===a[++r]&&r<o);e.match_length=S-(o-r),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=k?(n=s._tr_tally(e,1,e.match_length-k),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(B(e,!1),0===e.strm.avail_out))return E}return e.insert=0,t===c?(B(e,!0),0===e.strm.avail_out?P:F):e.last_lit&&(B(e,!1),0===e.strm.avail_out)?E:A}(r,t):i[r.level].func(r,t);if(m!==P&&m!==F||(r.status=C),m===E||m===P)return 0===e.avail_out&&(r.last_flush=-1),h;if(m===A&&(1===t?s._tr_align(r):5!==t&&(s._tr_stored_block(r,0,0,!1),3===t&&(R(r.head),0===r.lookahead&&(r.strstart=0,r.block_start=0,r.insert=0))),I(e),0===e.avail_out))return r.last_flush=-1,h}return t!==c?h:r.wrap<=0?1:(2===r.wrap?(D(r,255&e.adler),D(r,e.adler>>8&255),D(r,e.adler>>16&255),D(r,e.adler>>24&255),D(r,255&e.total_in),D(r,e.total_in>>8&255),D(r,e.total_in>>16&255),D(r,e.total_in>>24&255)):(U(r,e.adler>>>16),U(r,65535&e.adler)),I(e),r.wrap>0&&(r.wrap=-r.wrap),0!==r.pending?h:1)},t.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==N&&69!==t&&73!==t&&91!==t&&t!==O&&t!==x&&t!==C?M(e,p):(e.state=null,t===x?M(e,-3):h):p},t.deflateSetDictionary=function(e,t){var n,i,s,a,u,l,c,d,m=t.length;if(!e||!e.state)return p;if(2===(a=(n=e.state).wrap)||1===a&&n.status!==N||n.lookahead)return p;for(1===a&&(e.adler=o(e.adler,t,m,0)),n.wrap=0,m>=n.w_size&&(0===a&&(R(n.head),n.strstart=0,n.block_start=0,n.insert=0),d=new r.Buf8(n.w_size),r.arraySet(d,t,m-n.w_size,n.w_size,0),t=d,m=n.w_size),u=e.avail_in,l=e.next_in,c=e.input,e.avail_in=m,e.next_in=0,e.input=t,J(n);n.lookahead>=k;){i=n.strstart,s=n.lookahead-(k-1);do{n.ins_h=(n.ins_h<<n.hash_shift^n.window[i+k-1])&n.hash_mask,n.prev[i&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=i,i++}while(--s);n.strstart=i,n.lookahead=k-1,J(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=k-1,n.match_available=0,e.next_in=l,e.input=c,e.avail_in=u,n.wrap=a,h},t.deflateInfo="pako deflate (from Nodeca project)"},53016:e=>{"use strict";e.exports=function(){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}},82903:e=>{"use strict";e.exports=function(e,t){var n,i,r,s,o,a,u,l,c,h,p,d,m,f,y,g,_,v,b,T,w,k,S,L,N;n=e.state,i=e.next_in,L=e.input,r=i+(e.avail_in-5),s=e.next_out,N=e.output,o=s-(t-e.avail_out),a=s+(e.avail_out-257),u=n.dmax,l=n.wsize,c=n.whave,h=n.wnext,p=n.window,d=n.hold,m=n.bits,f=n.lencode,y=n.distcode,g=(1<<n.lenbits)-1,_=(1<<n.distbits)-1;e:do{m<15&&(d+=L[i++]<<m,m+=8,d+=L[i++]<<m,m+=8),v=f[d&g];t:for(;;){if(d>>>=b=v>>>24,m-=b,0===(b=v>>>16&255))N[s++]=65535&v;else{if(!(16&b)){if(0===(64&b)){v=f[(65535&v)+(d&(1<<b)-1)];continue t}if(32&b){n.mode=12;break e}e.msg="invalid literal/length code",n.mode=30;break e}T=65535&v,(b&=15)&&(m<b&&(d+=L[i++]<<m,m+=8),T+=d&(1<<b)-1,d>>>=b,m-=b),m<15&&(d+=L[i++]<<m,m+=8,d+=L[i++]<<m,m+=8),v=y[d&_];n:for(;;){if(d>>>=b=v>>>24,m-=b,!(16&(b=v>>>16&255))){if(0===(64&b)){v=y[(65535&v)+(d&(1<<b)-1)];continue n}e.msg="invalid distance code",n.mode=30;break e}if(w=65535&v,m<(b&=15)&&(d+=L[i++]<<m,(m+=8)<b&&(d+=L[i++]<<m,m+=8)),(w+=d&(1<<b)-1)>u){e.msg="invalid distance too far back",n.mode=30;break e}if(d>>>=b,m-=b,w>(b=s-o)){if((b=w-b)>c&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(k=0,S=p,0===h){if(k+=l-b,b<T){T-=b;do{N[s++]=p[k++]}while(--b);k=s-w,S=N}}else if(h<b){if(k+=l+h-b,(b-=h)<T){T-=b;do{N[s++]=p[k++]}while(--b);if(k=0,h<T){T-=b=h;do{N[s++]=p[k++]}while(--b);k=s-w,S=N}}}else if(k+=h-b,b<T){T-=b;do{N[s++]=p[k++]}while(--b);k=s-w,S=N}for(;T>2;)N[s++]=S[k++],N[s++]=S[k++],N[s++]=S[k++],T-=3;T&&(N[s++]=S[k++],T>1&&(N[s++]=S[k++]))}else{k=s-w;do{N[s++]=N[k++],N[s++]=N[k++],N[s++]=N[k++],T-=3}while(T>2);T&&(N[s++]=N[k++],T>1&&(N[s++]=N[k++]))}break}}break}}while(i<r&&s<a);i-=T=m>>3,d&=(1<<(m-=T<<3))-1,e.next_in=i,e.next_out=s,e.avail_in=i<r?r-i+5:5-(i-r),e.avail_out=s<a?a-s+257:257-(s-a),n.hold=d,n.bits=m}},85281:(e,t,n)=>{"use strict";var i=n(85899),r=n(21875),s=n(86181),o=n(82903),a=n(68276),u=1,l=2,c=0,h=-2,p=1,d=12,m=30,f=852,y=592;function g(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function _(){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 i.Buf16(320),this.work=new i.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function v(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=p,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new i.Buf32(f),t.distcode=t.distdyn=new i.Buf32(y),t.sane=1,t.back=-1,c):h}function b(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,v(e)):h}function T(e,t){var n,i;return e&&e.state?(i=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?h:(null!==i.window&&i.wbits!==t&&(i.window=null),i.wrap=n,i.wbits=t,b(e))):h}function w(e,t){var n,i;return e?(i=new _,e.state=i,i.window=null,(n=T(e,t))!==c&&(e.state=null),n):h}var k,S,L=!0;function N(e){if(L){var t;for(k=new i.Buf32(512),S=new i.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(a(u,e.lens,0,288,k,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;a(l,e.lens,0,32,S,0,e.work,{bits:5}),L=!1}e.lencode=k,e.lenbits=9,e.distcode=S,e.distbits=5}function O(e,t,n,r){var s,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new i.Buf8(o.wsize)),r>=o.wsize?(i.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((s=o.wsize-o.wnext)>r&&(s=r),i.arraySet(o.window,t,n-r,s,o.wnext),(r-=s)?(i.arraySet(o.window,t,n-r,r,0),o.wnext=r,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}t.inflateReset=b,t.inflateReset2=T,t.inflateResetKeep=v,t.inflateInit=function(e){return w(e,15)},t.inflateInit2=w,t.inflate=function(e,t){var n,f,y,_,v,b,T,w,k,S,L,x,C,E,A,P,F,M,j,R,I,B,D,U,z=0,W=new i.Buf8(4),J=[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&&0!==e.avail_in)return h;(n=e.state).mode===d&&(n.mode=13),v=e.next_out,y=e.output,T=e.avail_out,_=e.next_in,f=e.input,b=e.avail_in,w=n.hold,k=n.bits,S=b,L=T,B=c;e:for(;;)switch(n.mode){case p:if(0===n.wrap){n.mode=13;break}for(;k<16;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(2&n.wrap&&35615===w){n.check=0,W[0]=255&w,W[1]=w>>>8&255,n.check=s(n.check,W,2,0),w=0,k=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&w)<<8)+(w>>8))%31){e.msg="incorrect header check",n.mode=m;break}if(8!==(15&w)){e.msg="unknown compression method",n.mode=m;break}if(k-=4,I=8+(15&(w>>>=4)),0===n.wbits)n.wbits=I;else if(I>n.wbits){e.msg="invalid window size",n.mode=m;break}n.dmax=1<<I,e.adler=n.check=1,n.mode=512&w?10:d,w=0,k=0;break;case 2:for(;k<16;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(n.flags=w,8!==(255&n.flags)){e.msg="unknown compression method",n.mode=m;break}if(57344&n.flags){e.msg="unknown header flags set",n.mode=m;break}n.head&&(n.head.text=w>>8&1),512&n.flags&&(W[0]=255&w,W[1]=w>>>8&255,n.check=s(n.check,W,2,0)),w=0,k=0,n.mode=3;case 3:for(;k<32;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.head&&(n.head.time=w),512&n.flags&&(W[0]=255&w,W[1]=w>>>8&255,W[2]=w>>>16&255,W[3]=w>>>24&255,n.check=s(n.check,W,4,0)),w=0,k=0,n.mode=4;case 4:for(;k<16;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.head&&(n.head.xflags=255&w,n.head.os=w>>8),512&n.flags&&(W[0]=255&w,W[1]=w>>>8&255,n.check=s(n.check,W,2,0)),w=0,k=0,n.mode=5;case 5:if(1024&n.flags){for(;k<16;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.length=w,n.head&&(n.head.extra_len=w),512&n.flags&&(W[0]=255&w,W[1]=w>>>8&255,n.check=s(n.check,W,2,0)),w=0,k=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((x=n.length)>b&&(x=b),x&&(n.head&&(I=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),i.arraySet(n.head.extra,f,_,x,I)),512&n.flags&&(n.check=s(n.check,f,x,_)),b-=x,_+=x,n.length-=x),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===b)break e;x=0;do{I=f[_+x++],n.head&&I&&n.length<65536&&(n.head.name+=String.fromCharCode(I))}while(I&&x<b);if(512&n.flags&&(n.check=s(n.check,f,x,_)),b-=x,_+=x,I)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===b)break e;x=0;do{I=f[_+x++],n.head&&I&&n.length<65536&&(n.head.comment+=String.fromCharCode(I))}while(I&&x<b);if(512&n.flags&&(n.check=s(n.check,f,x,_)),b-=x,_+=x,I)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;k<16;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(w!==(65535&n.check)){e.msg="header crc mismatch",n.mode=m;break}w=0,k=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=d;break;case 10:for(;k<32;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}e.adler=n.check=g(w),w=0,k=0,n.mode=11;case 11:if(0===n.havedict)return e.next_out=v,e.avail_out=T,e.next_in=_,e.avail_in=b,n.hold=w,n.bits=k,2;e.adler=n.check=1,n.mode=d;case d:if(5===t||6===t)break e;case 13:if(n.last){w>>>=7&k,k-=7&k,n.mode=27;break}for(;k<3;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}switch(n.last=1&w,k-=1,3&(w>>>=1)){case 0:n.mode=14;break;case 1:if(N(n),n.mode=20,6===t){w>>>=2,k-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=m}w>>>=2,k-=2;break;case 14:for(w>>>=7&k,k-=7&k;k<32;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if((65535&w)!==(w>>>16^65535)){e.msg="invalid stored block lengths",n.mode=m;break}if(n.length=65535&w,w=0,k=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(x=n.length){if(x>b&&(x=b),x>T&&(x=T),0===x)break e;i.arraySet(y,f,_,x,v),b-=x,_+=x,T-=x,v+=x,n.length-=x;break}n.mode=d;break;case 17:for(;k<14;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(n.nlen=257+(31&w),w>>>=5,k-=5,n.ndist=1+(31&w),w>>>=5,k-=5,n.ncode=4+(15&w),w>>>=4,k-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=m;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;k<3;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.lens[J[n.have++]]=7&w,w>>>=3,k-=3}for(;n.have<19;)n.lens[J[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,D={bits:n.lenbits},B=a(0,n.lens,0,19,n.lencode,0,n.work,D),n.lenbits=D.bits,B){e.msg="invalid code lengths set",n.mode=m;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;P=(z=n.lencode[w&(1<<n.lenbits)-1])>>>16&255,F=65535&z,!((A=z>>>24)<=k);){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(F<16)w>>>=A,k-=A,n.lens[n.have++]=F;else{if(16===F){for(U=A+2;k<U;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(w>>>=A,k-=A,0===n.have){e.msg="invalid bit length repeat",n.mode=m;break}I=n.lens[n.have-1],x=3+(3&w),w>>>=2,k-=2}else if(17===F){for(U=A+3;k<U;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}k-=A,I=0,x=3+(7&(w>>>=A)),w>>>=3,k-=3}else{for(U=A+7;k<U;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}k-=A,I=0,x=11+(127&(w>>>=A)),w>>>=7,k-=7}if(n.have+x>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=m;break}for(;x--;)n.lens[n.have++]=I}}if(n.mode===m)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=m;break}if(n.lenbits=9,D={bits:n.lenbits},B=a(u,n.lens,0,n.nlen,n.lencode,0,n.work,D),n.lenbits=D.bits,B){e.msg="invalid literal/lengths set",n.mode=m;break}if(n.distbits=6,n.distcode=n.distdyn,D={bits:n.distbits},B=a(l,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,D),n.distbits=D.bits,B){e.msg="invalid distances set",n.mode=m;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(b>=6&&T>=258){e.next_out=v,e.avail_out=T,e.next_in=_,e.avail_in=b,n.hold=w,n.bits=k,o(e,L),v=e.next_out,y=e.output,T=e.avail_out,_=e.next_in,f=e.input,b=e.avail_in,w=n.hold,k=n.bits,n.mode===d&&(n.back=-1);break}for(n.back=0;P=(z=n.lencode[w&(1<<n.lenbits)-1])>>>16&255,F=65535&z,!((A=z>>>24)<=k);){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(P&&0===(240&P)){for(M=A,j=P,R=F;P=(z=n.lencode[R+((w&(1<<M+j)-1)>>M)])>>>16&255,F=65535&z,!(M+(A=z>>>24)<=k);){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}w>>>=M,k-=M,n.back+=M}if(w>>>=A,k-=A,n.back+=A,n.length=F,0===P){n.mode=26;break}if(32&P){n.back=-1,n.mode=d;break}if(64&P){e.msg="invalid literal/length code",n.mode=m;break}n.extra=15&P,n.mode=22;case 22:if(n.extra){for(U=n.extra;k<U;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.length+=w&(1<<n.extra)-1,w>>>=n.extra,k-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;P=(z=n.distcode[w&(1<<n.distbits)-1])>>>16&255,F=65535&z,!((A=z>>>24)<=k);){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(0===(240&P)){for(M=A,j=P,R=F;P=(z=n.distcode[R+((w&(1<<M+j)-1)>>M)])>>>16&255,F=65535&z,!(M+(A=z>>>24)<=k);){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}w>>>=M,k-=M,n.back+=M}if(w>>>=A,k-=A,n.back+=A,64&P){e.msg="invalid distance code",n.mode=m;break}n.offset=F,n.extra=15&P,n.mode=24;case 24:if(n.extra){for(U=n.extra;k<U;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}n.offset+=w&(1<<n.extra)-1,w>>>=n.extra,k-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=m;break}n.mode=25;case 25:if(0===T)break e;if(x=L-T,n.offset>x){if((x=n.offset-x)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=m;break}x>n.wnext?(x-=n.wnext,C=n.wsize-x):C=n.wnext-x,x>n.length&&(x=n.length),E=n.window}else E=y,C=v-n.offset,x=n.length;x>T&&(x=T),T-=x,n.length-=x;do{y[v++]=E[C++]}while(--x);0===n.length&&(n.mode=21);break;case 26:if(0===T)break e;y[v++]=n.length,T--,n.mode=21;break;case 27:if(n.wrap){for(;k<32;){if(0===b)break e;b--,w|=f[_++]<<k,k+=8}if(L-=T,e.total_out+=L,n.total+=L,L&&(e.adler=n.check=n.flags?s(n.check,y,L,v-L):r(n.check,y,L,v-L)),L=T,(n.flags?w:g(w))!==n.check){e.msg="incorrect data check",n.mode=m;break}w=0,k=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;k<32;){if(0===b)break e;b--,w+=f[_++]<<k,k+=8}if(w!==(4294967295&n.total)){e.msg="incorrect length check",n.mode=m;break}w=0,k=0}n.mode=29;case 29:B=1;break e;case m:B=-3;break e;case 31:return-4;default:return h}return e.next_out=v,e.avail_out=T,e.next_in=_,e.avail_in=b,n.hold=w,n.bits=k,(n.wsize||L!==e.avail_out&&n.mode<m&&(n.mode<27||4!==t))&&O(e,e.output,e.next_out,L-e.avail_out)?(n.mode=31,-4):(S-=e.avail_in,L-=e.avail_out,e.total_in+=S,e.total_out+=L,n.total+=L,n.wrap&&L&&(e.adler=n.check=n.flags?s(n.check,y,L,e.next_out-L):r(n.check,y,L,e.next_out-L)),e.data_type=n.bits+(n.last?64:0)+(n.mode===d?128:0)+(20===n.mode||15===n.mode?256:0),(0===S&&0===L||4===t)&&B===c&&(B=-5),B)},t.inflateEnd=function(e){if(!e||!e.state)return h;var t=e.state;return t.window&&(t.window=null),e.state=null,c},t.inflateGetHeader=function(e,t){var n;return e&&e.state?0===(2&(n=e.state).wrap)?h:(n.head=t,t.done=!1,c):h},t.inflateSetDictionary=function(e,t){var n,i=t.length;return e&&e.state?0!==(n=e.state).wrap&&11!==n.mode?h:11===n.mode&&r(1,t,i,0)!==n.check?-3:O(e,t,i,i)?(n.mode=31,-4):(n.havedict=1,c):h},t.inflateInfo="pako inflate (from Nodeca project)"},68276:(e,t,n)=>{"use strict";var i=n(85899),r=15,s=[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],o=[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],a=[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],u=[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];e.exports=function(e,t,n,l,c,h,p,d){var m,f,y,g,_,v,b,T,w,k=d.bits,S=0,L=0,N=0,O=0,x=0,C=0,E=0,A=0,P=0,F=0,M=null,j=0,R=new i.Buf16(16),I=new i.Buf16(16),B=null,D=0;for(S=0;S<=r;S++)R[S]=0;for(L=0;L<l;L++)R[t[n+L]]++;for(x=k,O=r;O>=1&&0===R[O];O--);if(x>O&&(x=O),0===O)return c[h++]=20971520,c[h++]=20971520,d.bits=1,0;for(N=1;N<O&&0===R[N];N++);for(x<N&&(x=N),A=1,S=1;S<=r;S++)if(A<<=1,(A-=R[S])<0)return-1;if(A>0&&(0===e||1!==O))return-1;for(I[1]=0,S=1;S<r;S++)I[S+1]=I[S]+R[S];for(L=0;L<l;L++)0!==t[n+L]&&(p[I[t[n+L]]++]=L);if(0===e?(M=B=p,v=19):1===e?(M=s,j-=257,B=o,D-=257,v=256):(M=a,B=u,v=-1),F=0,L=0,S=N,_=h,C=x,E=0,y=-1,g=(P=1<<x)-1,1===e&&P>852||2===e&&P>592)return 1;for(;;){b=S-E,p[L]<v?(T=0,w=p[L]):p[L]>v?(T=B[D+p[L]],w=M[j+p[L]]):(T=96,w=0),m=1<<S-E,N=f=1<<C;do{c[_+(F>>E)+(f-=m)]=b<<24|T<<16|w}while(0!==f);for(m=1<<S-1;F&m;)m>>=1;if(0!==m?(F&=m-1,F+=m):F=0,L++,0===--R[S]){if(S===O)break;S=t[n+p[L]]}if(S>x&&(F&g)!==y){for(0===E&&(E=x),_+=N,A=1<<(C=S-E);C+E<O&&!((A-=R[C+E])<=0);)C++,A<<=1;if(P+=1<<C,1===e&&P>852||2===e&&P>592)return 1;c[y=F&g]=x<<24|C<<16|_-h}}return 0!==F&&(c[_+F]=S-E<<24|64<<16),d.bits=x,0}},93384:e=>{"use strict";e.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"}},74867:(e,t,n)=>{"use strict";var i=n(85899),r=0,s=1;function o(e){for(var t=e.length;--t>=0;)e[t]=0}var a=0,u=29,l=256,c=l+1+u,h=30,p=19,d=2*c+1,m=15,f=16,y=7,g=256,_=16,v=17,b=18,T=[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],w=[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],k=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],L=new Array(2*(c+2));o(L);var N=new Array(2*h);o(N);var O=new Array(512);o(O);var x=new Array(256);o(x);var C=new Array(u);o(C);var E,A,P,F=new Array(h);function M(e,t,n,i,r){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=i,this.max_length=r,this.has_stree=e&&e.length}function j(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function R(e){return e<256?O[e]:O[256+(e>>>7)]}function I(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function B(e,t,n){e.bi_valid>f-n?(e.bi_buf|=t<<e.bi_valid&65535,I(e,e.bi_buf),e.bi_buf=t>>f-e.bi_valid,e.bi_valid+=n-f):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function D(e,t,n){B(e,n[2*t],n[2*t+1])}function U(e,t){var n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}function z(e,t,n){var i,r,s=new Array(m+1),o=0;for(i=1;i<=m;i++)s[i]=o=o+n[i-1]<<1;for(r=0;r<=t;r++){var a=e[2*r+1];0!==a&&(e[2*r]=U(s[a]++,a))}}function W(e){var t;for(t=0;t<c;t++)e.dyn_ltree[2*t]=0;for(t=0;t<h;t++)e.dyn_dtree[2*t]=0;for(t=0;t<p;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*g]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function J(e){e.bi_valid>8?I(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 G(e,t,n,i){var r=2*t,s=2*n;return e[r]<e[s]||e[r]===e[s]&&i[t]<=i[n]}function H(e,t,n){for(var i=e.heap[n],r=n<<1;r<=e.heap_len&&(r<e.heap_len&&G(t,e.heap[r+1],e.heap[r],e.depth)&&r++,!G(t,i,e.heap[r],e.depth));)e.heap[n]=e.heap[r],n=r,r<<=1;e.heap[n]=i}function q(e,t,n){var i,r,s,o,a=0;if(0!==e.last_lit)do{i=e.pending_buf[e.d_buf+2*a]<<8|e.pending_buf[e.d_buf+2*a+1],r=e.pending_buf[e.l_buf+a],a++,0===i?D(e,r,t):(D(e,(s=x[r])+l+1,t),0!==(o=T[s])&&B(e,r-=C[s],o),D(e,s=R(--i),n),0!==(o=w[s])&&B(e,i-=F[s],o))}while(a<e.last_lit);D(e,g,t)}function K(e,t){var n,i,r,s=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.has_stree,u=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=d,n=0;n<u;n++)0!==s[2*n]?(e.heap[++e.heap_len]=l=n,e.depth[n]=0):s[2*n+1]=0;for(;e.heap_len<2;)s[2*(r=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[r]=0,e.opt_len--,a&&(e.static_len-=o[2*r+1]);for(t.max_code=l,n=e.heap_len>>1;n>=1;n--)H(e,s,n);r=u;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],H(e,s,1),i=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=i,s[2*r]=s[2*n]+s[2*i],e.depth[r]=(e.depth[n]>=e.depth[i]?e.depth[n]:e.depth[i])+1,s[2*n+1]=s[2*i+1]=r,e.heap[1]=r++,H(e,s,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,i,r,s,o,a,u=t.dyn_tree,l=t.max_code,c=t.stat_desc.static_tree,h=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,f=t.stat_desc.extra_base,y=t.stat_desc.max_length,g=0;for(s=0;s<=m;s++)e.bl_count[s]=0;for(u[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<d;n++)(s=u[2*u[2*(i=e.heap[n])+1]+1]+1)>y&&(s=y,g++),u[2*i+1]=s,i>l||(e.bl_count[s]++,o=0,i>=f&&(o=p[i-f]),a=u[2*i],e.opt_len+=a*(s+o),h&&(e.static_len+=a*(c[2*i+1]+o)));if(0!==g){do{for(s=y-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[y]--,g-=2}while(g>0);for(s=y;0!==s;s--)for(i=e.bl_count[s];0!==i;)(r=e.heap[--n])>l||(u[2*r+1]!==s&&(e.opt_len+=(s-u[2*r+1])*u[2*r],u[2*r+1]=s),i--)}}(e,t),z(s,l,e.bl_count)}function V(e,t,n){var i,r,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,i=0;i<=n;i++)r=o,o=t[2*(i+1)+1],++a<u&&r===o||(a<l?e.bl_tree[2*r]+=a:0!==r?(r!==s&&e.bl_tree[2*r]++,e.bl_tree[2*_]++):a<=10?e.bl_tree[2*v]++:e.bl_tree[2*b]++,a=0,s=r,0===o?(u=138,l=3):r===o?(u=6,l=3):(u=7,l=4))}function Q(e,t,n){var i,r,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),i=0;i<=n;i++)if(r=o,o=t[2*(i+1)+1],!(++a<u&&r===o)){if(a<l)do{D(e,r,e.bl_tree)}while(0!==--a);else 0!==r?(r!==s&&(D(e,r,e.bl_tree),a--),D(e,_,e.bl_tree),B(e,a-3,2)):a<=10?(D(e,v,e.bl_tree),B(e,a-3,3)):(D(e,b,e.bl_tree),B(e,a-11,7));a=0,s=r,0===o?(u=138,l=3):r===o?(u=6,l=3):(u=7,l=4)}}o(F);var Z=!1;function Y(e,t,n,r){B(e,(a<<1)+(r?1:0),3),function(e,t,n,r){J(e),r&&(I(e,n),I(e,~n)),i.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}t._tr_init=function(e){Z||(!function(){var e,t,n,i,r,s=new Array(m+1);for(n=0,i=0;i<u-1;i++)for(C[i]=n,e=0;e<1<<T[i];e++)x[n++]=i;for(x[n-1]=i,r=0,i=0;i<16;i++)for(F[i]=r,e=0;e<1<<w[i];e++)O[r++]=i;for(r>>=7;i<h;i++)for(F[i]=r<<7,e=0;e<1<<w[i]-7;e++)O[256+r++]=i;for(t=0;t<=m;t++)s[t]=0;for(e=0;e<=143;)L[2*e+1]=8,e++,s[8]++;for(;e<=255;)L[2*e+1]=9,e++,s[9]++;for(;e<=279;)L[2*e+1]=7,e++,s[7]++;for(;e<=287;)L[2*e+1]=8,e++,s[8]++;for(z(L,c+1,s),e=0;e<h;e++)N[2*e+1]=5,N[2*e]=U(e,5);E=new M(L,T,l+1,c,m),A=new M(N,w,0,h,m),P=new M(new Array(0),k,0,p,y)}(),Z=!0),e.l_desc=new j(e.dyn_ltree,E),e.d_desc=new j(e.dyn_dtree,A),e.bl_desc=new j(e.bl_tree,P),e.bi_buf=0,e.bi_valid=0,W(e)},t._tr_stored_block=Y,t._tr_flush_block=function(e,t,n,i){var o,a,u=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return r;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return s;for(t=32;t<l;t++)if(0!==e.dyn_ltree[2*t])return s;return r}(e)),K(e,e.l_desc),K(e,e.d_desc),u=function(e){var t;for(V(e,e.dyn_ltree,e.l_desc.max_code),V(e,e.dyn_dtree,e.d_desc.max_code),K(e,e.bl_desc),t=p-1;t>=3&&0===e.bl_tree[2*S[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(a=e.static_len+3+7>>>3)<=o&&(o=a)):o=a=n+5,n+4<=o&&-1!==t?Y(e,t,n,i):4===e.strategy||a===o?(B(e,2+(i?1:0),3),q(e,L,N)):(B(e,4+(i?1:0),3),function(e,t,n,i){var r;for(B(e,t-257,5),B(e,n-1,5),B(e,i-4,4),r=0;r<i;r++)B(e,e.bl_tree[2*S[r]+1],3);Q(e,e.dyn_ltree,t-1),Q(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,u+1),q(e,e.dyn_ltree,e.dyn_dtree)),W(e),i&&J(e)},t._tr_tally=function(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(x[n]+l+1)]++,e.dyn_dtree[2*R(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){B(e,2,3),D(e,g,L),function(e){16===e.bi_valid?(I(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},46864:e=>{"use strict";e.exports=function(){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}},73181:function(e){e.exports=function(){var e=[],t=[],n={},i={},r={};function s(e){return"string"===typeof e?new RegExp("^"+e+"$","i"):e}function o(e,t){return e===t?t:e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function a(e,t){return e.replace(/\$(\d{1,2})/g,(function(e,n){return t[n]||""}))}function u(e,t){return e.replace(t[0],(function(n,i){var r=a(t[1],arguments);return o(""===n?e[i-1]:n,r)}))}function l(e,t,i){if(!e.length||n.hasOwnProperty(e))return t;for(var r=i.length;r--;){var s=i[r];if(s[0].test(t))return u(t,s)}return t}function c(e,t,n){return function(i){var r=i.toLowerCase();return t.hasOwnProperty(r)?o(i,r):e.hasOwnProperty(r)?o(i,e[r]):l(r,i,n)}}function h(e,t,n,i){return function(i){var r=i.toLowerCase();return!!t.hasOwnProperty(r)||!e.hasOwnProperty(r)&&l(r,r,n)===r}}function p(e,t,n){return(n?t+" ":"")+(1===t?p.singular(e):p.plural(e))}return p.plural=c(r,i,e),p.isPlural=h(r,i,e),p.singular=c(i,r,t),p.isSingular=h(i,r,t),p.addPluralRule=function(t,n){e.push([s(t),n])},p.addSingularRule=function(e,n){t.push([s(e),n])},p.addUncountableRule=function(e){"string"!==typeof e?(p.addPluralRule(e,"$0"),p.addSingularRule(e,"$0")):n[e.toLowerCase()]=!0},p.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),r[e]=t,i[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"],["whiskey","whiskies"]].forEach((function(e){return p.addIrregularRule(e[0],e[1])})),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|tlas|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[emjzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|octop|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"],[/(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 p.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"],[/(m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|tlas|gas|(?:her|at|gr)o|ris)(?:es)?$/i,"$1"],[/(analy|ba|diagno|parenthe|progno|synop|the|empha|cri)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|octop|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 p.addSingularRule(e[0],e[1])})),["adulthood","advice","agenda","aid","alcohol","ammo","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","flounder","fun","gallows","garbage","graffiti","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","manga","news","pike","plankton","pliers","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","species","staff","swine","tennis","traffic","transporation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(p.addUncountableRule),p}()},78818:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});class n{}t.AnnotationData=n;class i extends n{constructor(e){super(),this.message=e}}t.IssueAnnotationData=i,t.anyTypeIssueAnnotation=new i("quicktype cannot infer this type because there is no data about it in the input."),t.nullTypeIssueAnnotation=new i("The only value for this in the input is null, which means you probably need a more complete input sample.")},4007:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(77239),a=n(58800),u=n(78920),l=n(60877),c=n(97714),h=n(5912),p=n(32351),d=n(62800),m=n(60087),f=n(59268),y=n(93587),g=n(19463)(90);t.topLevelNameOrder=1;t.inferredNameOrder=30;function _(e){if(void 0===e)return;const t=Array.from(e).join("\n\n").trim();return""!==t?g(t).split("\n").map((e=>e.trim())):void 0}const v=new d.TypeAttributeKind("assignedName"),b=new d.TypeAttributeKind("assignedPropertyNames"),T=new d.TypeAttributeKind("assignedMemberNames"),w=new d.TypeAttributeKind("assignedCaseNames");class k extends a.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(s.isNamedType(e))return e}get unionMembersInGlobalNamespace(){return!1}get enumCasesInGlobalNamespace(){return!1}get needsTypeDeclarationBeforeUse(){return!1}canBeForwardDeclared(e){return u.panic("If needsTypeDeclarationBeforeUse returns true, canBeForwardDeclared must be implemented")}unionNeedsName(e){return null===s.nullableFromUnion(e)}get globalNamespace(){return u.defined(this._globalNamespace)}get nameStoreView(){return u.defined(this._nameStoreView)}descriptionForType(e){return _(this.typeGraph.attributeStore.tryGet(m.descriptionTypeAttributeKind,e))}descriptionForClassProperty(e,t){const n=this.typeGraph.attributeStore.tryGet(m.propertyDescriptionsTypeAttributeKind,e);if(void 0!==n)return _(n.get(t))}setUpNaming(){this._nameStoreView=new p.TypeAttributeStoreView(this.typeGraph.attributeStore,v),this._propertyNamesStoreView=new p.TypeAttributeStoreView(this.typeGraph.attributeStore,b),this._memberNamesStoreView=new p.TypeAttributeStoreView(this.typeGraph.attributeStore,T),this._caseNamesStoreView=new p.TypeAttributeStoreView(this.typeGraph.attributeStore,w),this._namesForTransformations=new Map,this._namedTypeNamer=this.makeNamedTypeNamer(),this._unionMemberNamer=this.makeUnionMemberNamer(),this._enumCaseNamer=this.makeEnumCaseNamer(),this._globalForbiddenNamespace=o.keywordNamespace("forbidden",this.forbiddenNamesForGlobalNamespace()),this._otherForbiddenNamespaces=new Map,this._globalNamespace=new o.Namespace("global",void 0,[this._globalForbiddenNamespace],[]);const{objects:e,enums:t,unions:n}=this.typeGraph.allNamedTypesSeparated(),r=i.setFilter(n,(e=>this.unionNeedsName(e)));for(const[i,s]of this.topLevels)this.nameStoreView.setForTopLevel(i,this.addNameForTopLevel(s,i));for(const i of e){const e=this.addNameForNamedType(i);this.addPropertyNames(i,e)}for(const i of t){const e=this.addNameForNamedType(i);this.addEnumCaseNames(i,e)}for(const i of r){const e=this.addNameForNamedType(i);this.addUnionMemberNames(i,e)}for(const i of this.typeGraph.allTypesUnordered())this.addNameForTransformation(i);return i.setUnion([this._globalForbiddenNamespace,this._globalNamespace],this._otherForbiddenNamespaces.values())}addDependenciesForNamedType(e,t){const n=this.makeNamedTypeDependencyNames(e,t);for(const i of n)this.globalNamespace.add(i)}makeNameForTopLevel(e,n,i){return new o.SimpleName([n],u.defined(this._namedTypeNamer),t.topLevelNameOrder)}addNameForTopLevel(e,t){const n=this.namedTypeToNameForTopLevel(e),i=this.makeNameForTopLevel(e,t,n);this.globalNamespace.add(i);const r=this.makeTopLevelDependencyNames(e,i);for(const s of r)this.globalNamespace.add(s);return void 0!==n&&(this.addDependenciesForNamedType(n,i),this.nameStoreView.set(n,i)),i}makeNameForType(e,t,n,i){const r=e.getNames(),s=r.areInferred?i:n;return new o.SimpleName(r.proposedNames,t,s)}makeNameForNamedType(e){return this.makeNameForType(e,u.defined(this._namedTypeNamer),10,t.inferredNameOrder)}addNameForNamedType(e){const t=this.nameStoreView.tryGet(e);if(void 0!==t)return t;const n=this.globalNamespace.add(this.makeNameForNamedType(e));return this.addDependenciesForNamedType(e,n),this.nameStoreView.set(e,n),n}get typesWithNamedTransformations(){return u.defined(this._namesForTransformations)}nameForTransformation(e){if(void 0===y.transformationForType(e))return;const t=u.defined(this._namesForTransformations).get(e);return void 0===t?u.panic("No name for transformation"):t}addNameForTransformation(e){const t=y.transformationForType(e);if(void 0===t)return;u.assert(void 0===u.defined(this._namesForTransformations).get(e),"Tried to give two names to the same transformation");const n=this.makeNameForTransformation(t,this.nameStoreView.tryGet(t.targetType));void 0!==n&&(this.globalNamespace.add(n),u.defined(this._namesForTransformations).set(e,n))}processForbiddenWordsInfo(e,t){const n=[],i=[];for(const o of e.names)"string"===typeof o?i.push(o):n.push(o);let r=u.defined(this._otherForbiddenNamespaces).get(t);i.length>0&&void 0===r&&(r=o.keywordNamespace(t,i),this._otherForbiddenNamespaces=u.defined(this._otherForbiddenNamespaces).set(t,r));let s=new Set;return e.includeGlobalForbidden&&(s=s.add(u.defined(this._globalForbiddenNamespace))),void 0!==r&&(s=s.add(r)),{forbiddenNames:new Set(n),forbiddenNamespaces:s}}makeNameForProperty(e,t,n,i,r){const s=this.namerForObjectProperty(e,n);if(null===s)return;const a="".concat(e.getCombinedName(),"_").concat(i),u=void 0===r?20:10,l=void 0===r?[i,a]:[r];return new o.SimpleName(l,s,u)}makePropertyDependencyNames(e,t,n,i,r){return[]}addPropertyNames(e,t){const{forbiddenNames:n,forbiddenNamespaces:r}=this.processForbiddenWordsInfo(this.forbiddenForObjectProperties(e,t),"forbidden-for-properties");let s;const a=f.objectPropertyNames(e,this.targetLanguage.name),l=i.mapFilterMap(e.getSortedProperties(),((i,l)=>{const[c,h]=f.getAccessorName(a,l);let p;if(p=h?new o.FixedName(u.defined(c)):this.makeNameForProperty(e,t,i,l,c),void 0!==p){void 0===s&&(s=new o.Namespace(e.getCombinedName(),this.globalNamespace,r,n)),s.add(p);for(const n of this.makePropertyDependencyNames(e,t,i,l,p))s.add(n);return p}}));u.defined(this._propertyNamesStoreView).set(e,l)}makeNameForUnionMember(e,t,n){const[i,r]=f.unionMemberName(e,n,this.targetLanguage.name);return r?new o.FixedName(u.defined(i)):new o.DependencyName(u.nonNull(this._unionMemberNamer),40,(r=>void 0!==i?i:this.proposeUnionMemberName(e,t,n,r)))}addUnionMemberNames(e,t){if(null===this._unionMemberNamer)return;const{forbiddenNames:n,forbiddenNamespaces:i}=this.processForbiddenWordsInfo(this.forbiddenForUnionMembers(e,t),"forbidden-for-union-members");let r;r=this.unionMembersInGlobalNamespace?this.globalNamespace:new o.Namespace(e.getCombinedName(),this.globalNamespace,i,n);let s=new Map;for(const o of e.members){const n=this.makeNameForUnionMember(e,t,y.followTargetType(o));s.set(o,r.add(n))}u.defined(this._memberNamesStoreView).set(e,s)}makeNameForEnumCase(e,t,n,i){const r="".concat(e.getCombinedName(),"_").concat(n),s=void 0===i?20:10,a=void 0===i?[n,r]:[i];return new o.SimpleName(a,u.nonNull(this._enumCaseNamer),s)}addEnumCaseNames(e,t){if(null===this._enumCaseNamer)return;const{forbiddenNames:n,forbiddenNamespaces:i}=this.processForbiddenWordsInfo(this.forbiddenForEnumCases(e,t),"forbidden-for-enum-cases");let r;r=this.enumCasesInGlobalNamespace?this.globalNamespace:new o.Namespace(e.getCombinedName(),this.globalNamespace,i,n);let s=new Map;const a=f.enumCaseNames(e,this.targetLanguage.name);for(const l of e.cases){const[n,i]=f.getAccessorName(a,l);let c;c=i?new o.FixedName(u.defined(n)):this.makeNameForEnumCase(e,t,l,n),s.set(l,r.add(c))}u.defined(this._caseNamesStoreView).set(e,s)}childrenOfType(e){const t=this.names;if(e instanceof r.ClassType){const n=u.defined(this._propertyNamesStoreView).get(e),r=i.mapFilterMap(e.getProperties(),((e,t)=>{if(void 0!==n.get(t))return e.type})),s=i.mapSortBy(r,((e,i)=>u.defined(t.get(u.defined(n.get(i))))));return new Set(s.values())}return e.getChildren()}get namedUnions(){return u.defined(this._namedUnions)}get haveNamedUnions(){return this.namedUnions.size>0}get haveNamedTypes(){return u.defined(this._namedTypes).length>0}get haveUnions(){return u.defined(this._haveUnions)}get haveMaps(){return u.defined(this._haveMaps)}get haveOptionalProperties(){return u.defined(this._haveOptionalProperties)}get enums(){return u.defined(this._namedEnums)}get haveEnums(){return this.enums.size>0}proposedUnionMemberNameForTypeKind(e){return null}proposeUnionMemberName(e,t,n,i){const r=this.proposedUnionMemberNameForTypeKind(n.kind);if(null!==r)return r;const o=e=>s.matchTypeExhaustive(e,(e=>u.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=>(u.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 u.defined(this._declarationIR).forwardedTypes.has(e)}isImplicitCycleBreaker(e){return u.panic("A renderer that invokes isCycleBreakerType must implement isImplicitCycleBreaker")}canBreakCycles(e){return!0}isCycleBreakerType(e){return void 0===this._cycleBreakerTypes&&(this._cycleBreakerTypes=h.cycleBreakerTypesForGraph(this.typeGraph,(e=>this.isImplicitCycleBreaker(e)),(e=>this.canBreakCycles(e)))),this._cycleBreakerTypes.has(e)}forEachTopLevel(e,t,n){let r;return r=void 0!==n?i.mapFilter(this.topLevels,n):this.topLevels,this.forEachWithBlankLines(r,e,((e,n,i)=>t(e,this.nameStoreView.getForTopLevel(n),i)))}forEachDeclaration(e,t){this.forEachWithBlankLines(i.iterableEnumerate(u.defined(this._declarationIR).declarations),e,((e,n,i)=>t(e,i)))}setAlphabetizeProperties(e){this._alphabetizeProperties=e}getAlphabetizeProperties(){return this._alphabetizeProperties}propertyCount(e){return u.defined(this._propertyNamesStoreView).get(e).size}sortClassProperties(e,t){return this._alphabetizeProperties?i.mapSortBy(e,((e,n)=>{const i=u.defined(t.get(n));return u.defined(this.names.get(i))})):e}forEachClassProperty(e,t,n){const i=u.defined(this._propertyNamesStoreView).get(e),r=this.sortClassProperties(e.getProperties(),i);this.forEachWithBlankLines(r,t,((e,t,r)=>{const s=u.defined(i.get(t));n(s,t,e,r)}))}nameForUnionMember(e,t){return u.defined(u.defined(this._memberNamesStoreView).get(e).get(t))}nameForEnumCase(e,t){const n=u.defined(this._caseNamesStoreView).get(e);return u.defined(n.get(t))}forEachUnionMember(e,t,n,r,s){const o=null===t?e.members:t;null===r&&(r=e=>u.defined(this.names.get(e)));const a=i.mapFilter(u.defined(this._memberNamesStoreView).get(e),((e,t)=>o.has(t))),l=i.mapSortBy(a,r);this.forEachWithBlankLines(l,n,s)}forEachEnumCase(e,t,n){const r=u.defined(this._caseNamesStoreView).get(e),s=i.mapSortBy(r,(e=>u.defined(this.names.get(e))));this.forEachWithBlankLines(s,t,n)}forEachTransformation(e,t){this.forEachWithBlankLines(u.defined(this._namesForTransformations),e,t)}forEachSpecificNamedType(e,t,n){this.forEachWithBlankLines(t,e,((e,t,i)=>n(e,this.nameForNamedType(e),i)))}forEachObject(e,t){this.forEachSpecificNamedType(e,u.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){const i=new Map;for(const r of this.namedUnions){const e=t(r);i.has(e)||i.set(e,r)}this.forEachWithBlankLines(i,e,n)}forEachNamedType(e,t,n,i){this.forEachWithBlankLines(u.defined(this._namedTypes).entries(),e,((e,s,o)=>{const a=this.nameForNamedType(e);if(e instanceof r.ObjectType)t(e,a,o);else if(e instanceof r.EnumType)n(e,a,o);else{if(!(e instanceof r.UnionType))return u.panic("Named type that's neither a class nor union");i(e,a,o)}}))}sourcelikeToString(e){return c.serializeRenderResult(c.sourcelikeToSource(e),this.names,"").lines.join("\n")}get commentLineStart(){return"// "}emitCommentLines(e,t,n,i,r){void 0===t&&(t=this.commentLineStart),void 0===r&&(r=t),void 0!==n&&this.emitLine(n);let s=!0;for(const o of e){let e=s?r:t;""===this.sourcelikeToString(o)&&(e=l.trimEnd(e)),this.emitLine(e,o),s=!1}void 0!==i&&this.emitLine(i)}emitDescription(e){void 0!==e&&this.emitDescriptionBlock(e)}emitDescriptionBlock(e){this.emitCommentLines(e)}emitPropertyTable(e,t){let n=[];const i=()=>{0!==n.length&&(this.emitTable(n),n=[])};this.forEachClassProperty(e,"none",((r,s,o)=>{const a=this.descriptionForClassProperty(e,s);void 0!==a&&(i(),this.emitDescription(a)),n.push(t(r,s,o))})),i()}processGraph(){this._declarationIR=h.declarationsForGraph(this.typeGraph,this.needsTypeDeclarationBeforeUse?e=>this.canBeForwardDeclared(e):void 0,(e=>this.childrenOfType(e)),(e=>e instanceof r.UnionType?this.unionNeedsName(e):s.isNamedType(e)));const e=this.typeGraph.allTypesUnordered();this._haveUnions=i.iterableSome(e,(e=>e instanceof r.UnionType)),this._haveMaps=i.iterableSome(e,(e=>e instanceof r.MapType));const t=i.setFilter(e,(e=>e instanceof r.ClassType));this._haveOptionalProperties=i.iterableSome(t,(e=>i.mapSome(e.getProperties(),(e=>e.isOptional)))),this._namedTypes=this._declarationIR.declarations.filter((e=>"define"===e.kind)).map((e=>e.type));const{objects:n,enums:o,unions:a}=s.separateNamedTypes(this._namedTypes);this._namedObjects=new Set(n),this._namedEnums=new Set(o),this._namedUnions=new Set(a)}emitSource(e){this.processGraph(),this.emitSourceStructure(e)}forEachType(e){const t=new Set,n=new Set,i=Array.from(this.typeGraph.topLevels.values());function r(r){if(!t.has(r)){for(const e of r.getChildren())i.push(e);t.add(r),n.add(e(r))}}for(;;){const e=i.pop();if(void 0===e)break;r(e)}return n}}t.ConvenienceRenderer=k},72354:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[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,s=/t|\s/i;t.DefaultDateTimeRecognizer=class{isDate(e){const t=e.match(n);if(null===t)return!1;const r=+t[2],s=+t[3];return r>=1&&r<=12&&s>=1&&s<=i[r]}isTime(e){const t=e.match(r);if(null===t)return!1;const n=+t[1],i=+t[2],s=+t[3];return n<=23&&i<=59&&s<=59}isDateTime(e){const t=e.split(s);return 2===t.length&&this.isDate(t[0])&&this.isTime(t[1])}}},5912:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920),s=n(1143),o=n(59551);class a{constructor(e,t){this.forwardedTypes=t,this.declarations=Array.from(e)}}t.DeclarationIR=a,t.cycleBreakerTypesForGraph=function(e,t,n){const i=new Set,s=new Set,o=Array.from(e.topLevels.values());function a(e,u){if(!i.has(e)){if(t(e))for(const t of e.getChildren())o.push(t);else{const t=function(e,t,n){const i=t.indexOf(e);if(i<0)return;if(void 0===n)return t[i];const s=t.slice(0,i+1).reverse().find(n);return void 0===s?r.panic("Found a cycle that cannot be broken"):s}(e,u,n);if(void 0!==t)return void s.add(t);for(const n of e.getChildren())u.unshift(e),a(n,u),u.shift()}i.add(e)}}for(;;){const e=o.pop();if(void 0===e)break;const t=[];a(e,t),r.assert(0===t.length)}return s},t.declarationsForGraph=function(e,t,n,u){const l=void 0===t,c=[],h=new Set,p=new Set;return function e(a,d){const m=a.stronglyConnectedComponents();function f(a){if(p.has(a))return;p.add(a);const l=i.setFilter(a,u);if(1===l.size)return void c.push({kind:"define",type:r.defined(i.iterableFirst(l))});if(0===l.size&&1===a.size)return;if(0===l.size)return void c.push({kind:"define",type:r.defined(i.iterableFirst(a))});if(void 0===t){for(const e of l)c.push({kind:"define",type:e});return}const d=i.setFilter(a,t);if(0===d.size)return o.messageError("IRNoForwardDeclarableTypeInCycle",{});for(const e of d)c.push({kind:"forward",type:e});i.setUnionInto(h,d);const m=i.setSubtract(a,d);e(new s.Graph(m,!0,(e=>i.setIntersect(n(e),m))),!1);for(const e of d)c.push({kind:"define",type:e})}const y=m.findRoots();for(const t of y)m.dfsTraversal(t,l,f)}(e.makeGraph(!1,n)),new a(c,h)}},81876:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.encodedMarkovChain="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"},72594:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(73181),r=n(74868),s=n(41283),o=n(32866),a=n(94418),u=n(78920),l=n(93587);class c{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(){u.assert(!this.isEmpty,"Trying to unshift from an empty queue");const e=this._queue[this._front];return void 0===e?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)}}t.gatherNames=function(e,t,n){function h(t,n){e.attributeStore.set(a.namesTypeAttributeKind,t,n)}if(t)for(const i of e.allTypesUnordered())i.hasNames&&h(i,i.getNames().clearInferred());const p=new c,d=new Map;function m(e,t){if(e.hasNames){const n=e.getNames();n.areInferred||(t=n.names)}const n=d.get(e);if(null===n)return;let i;i=void 0===n?t:null===t?null:r.setUnion(n,t),null!==i&&i.size>=a.tooManyNamesThreshold&&(i=null),d.set(e,i);const s=l.transformationForType(e);if(void 0!==s&&m(s.targetType,t),void 0!==n&&null!==i){if(n.size===i.size)return}else if(n===i)return;p.push(e)}for(const[i,r]of e.topLevels)m(r,new Set([i]));for(;!p.isEmpty;){const e=p.unshift(),t=u.defined(d.get(e));if(e instanceof s.ObjectType){const n=e.getSortedProperties();for(const[e,t]of n)m(t.type,new Set([e]));const s=e.getAdditionalProperties();void 0!==s&&m(s,null===t?null:r.setMap(t,i.singular))}else o.matchCompoundType(e,(e=>{m(e.items,null===t?null:r.setMap(t,i.singular))}),(e=>u.panic("We handled this above")),(e=>u.panic("We handled this above")),(e=>u.panic("We handled this above")),(e=>{const n=r.setSortBy(e.members,(e=>e.kind));for(const i of n)m(i,t)}))}if(n)for(const i of e.allTypesUnordered()){const e=d.get(i);if(void 0===e)return;const t=i.index;console.log("".concat(t,": ").concat(null===e?"*** too many ***":Array.from(e).join(" ")))}const f=new Map,y=new Map,g=new Map;function _(e,t){return 0===t.length?e:(void 0===e&&(e=new Set),(e=r.setUnion(e,t)).size<a.tooManyNamesThreshold?e:null)}function v(e,t,n){const i=u.defined(d.get(t));let a=g.get(e);if(void 0===a&&(a=new Set),a.has(t))return;a.add(t),g.set(e,a);const c=l.transformationForType(t);void 0!==c&&v(e,c.targetType,n);let h=y.get(t),p=f.get(t);if(null===i)h=null,p=null;else{if(void 0!==e&&null!==h){const n=d.get(e);if(null===n)h=null;else if(void 0!==n){const e=[];for(const r of i)e.push(...Array.from(n).map((e=>"".concat(e,"_").concat(r)))),e.push(...Array.from(n).map((e=>"".concat(e,"_").concat(r,"_").concat(t.kind))));h=_(h,e)}}if(void 0!==n&&null!==p){const e=[];for(const t of i)e.push("".concat(t,"_").concat(n));p=_(p,e)}}if(void 0!==h&&y.set(t,h),void 0!==p&&f.set(t,p),t instanceof s.ObjectType){const n=t.getSortedProperties();for(const[,e]of n)v(t,e.type,void 0);const i=t.getAdditionalProperties();void 0!==i&&v(0===n.size?e:t,i,"value")}else o.matchCompoundType(t,(t=>{v(e,t.items,"element")}),(e=>u.panic("We handled this above")),(e=>u.panic("We handled this above")),(e=>u.panic("We handled this above")),(t=>{const n=r.setSortBy(t.members,(e=>e.kind)),i=t.hasNames&&!t.getNames().areInferred||null===o.nullableFromUnion(t)?t:e;for(const e of n)v(i,e,void 0)}))}for(const[,i]of e.topLevels)v(void 0,i,void 0);for(const i of e.allTypesUnordered()){const e=d.get(i);if(void 0===e)continue;if(null===e){f.set(i,null);continue}let t=f.get(i);null!==t&&(void 0===t&&(t=new Set),t=r.setUnion(t,r.setMap(e,(e=>"".concat(e,"_").concat(i.kind)))),f.set(i,t))}for(const i of e.allTypesUnordered()){const e=d.get(i);if(void 0===e)continue;let n;if(null===e)n=new a.TooManyTypeNames(1);else{const s=y.get(i),o=f.get(i);let u;null===s&&null===o?u=void 0:(u=null!==o&&void 0!==o?o:new Set,null!==s&&void 0!==s&&(u=r.setUnion(u,s))),n=a.TypeNames.makeWithDistance(e,u,t?1:10)}h(i,i.hasNames?i.getNames().add([n]):n)}}},1143:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920);function s(e){if(0===e.length)return 0;let t=-1,n=0;for(const i of e){r.assert(i.length>0,"Empty component not allowed");for(const e of i)r.assert(e>=0,"Negative vertex index is invalid"),t=Math.max(t,e),n+=1}return r.assert(t+1===n,"Vertex indexes and count don't match up"),n}function o(e,t){const n=t.length,i=function(e,t){const n=t.length,i=e.length;r.assert(i===s(t),"Components don't match up with graph");const o=r.repeated(i,-1);for(let s=0;s<n;s++)for(const e of t[s])r.assert(o[e]<0,"We have a node that's in two components"),o[e]=s;return o}(e,t),o=r.repeated(n,!1),a=[];for(let s=0;s<n;s++){const n=[];for(const r of t[s])for(const t of e[r]){const e=i[t];e===s||o[e]||(n.push(e),o[e]=!0)}for(const e of n)r.assert(o[e]),o[e]=!1;a.push(n)}return a}function a(e){const t=e.length,n=function(e){const t=e.length,n=r.repeated(t,0);for(const i of e)for(const e of i)n[e]+=1;return n}(e),i=[];for(let r=0;r<t;r++)0===n[r]&&i.push(r);return i}class u{constructor(e,t,n){let i;this._nodes=Array.from(e),this._indexByNode=new Map(this._nodes.map(((e,t)=>[e,t]))),i=Array.isArray(n)?n:this._nodes.map((e=>Array.from(n(e)).map((e=>r.defined(this._indexByNode.get(e)))))),t&&(i=function(e){const t=e.length,n=r.repeatedCall(t,(()=>[]));for(let i=0;i<t;i++)for(const t of e[i])n[t].push(i);return n}(i)),this._successors=i}get size(){return this._nodes.length}get nodes(){return this._nodes}findRoots(){const e=a(this._successors);return new Set(e.map((e=>this._nodes[e])))}dfsTraversal(e,t,n){const i=r.repeated(this.size,!1),s=e=>{if(!i[e]){i[e]=!0,t&&n(this._nodes[e]);for(const t of this._successors[e])s(t);t||n(this._nodes[e])}};s(r.defined(this._indexByNode.get(e)))}stronglyConnectedComponents(){const e=function(e){let t=0;const n=[],i=e.length,o=r.repeated(i,-1),a=r.repeated(i,-1),u=r.repeated(i,!1),l=[];function c(i){o[i]=t,a[i]=t,t+=1,n.push(i),u[i]=!0;for(const t of e[i])o[t]<0?(c(t),a[i]=Math.min(a[i],a[t])):u[t]&&(a[i]=Math.min(a[i],o[t]));if(a[i]===o[i]){const e=[];let t;do{t=r.defined(n.pop()),u[t]=!1,e.push(t)}while(t!==i);l.push(e)}}for(let r=0;r<i;r++)o[r]<0&&c(r);return r.assert(s(l)===i,"We didn't put all the nodes into SCCs"),l}(this._successors),t=o(this._successors,e);return new u(e.map((e=>i.setMap(e,(e=>this._nodes[e])))),!1,t)}makeDot(e,t){const n=[];n.push("digraph G {"),n.push("    ordering = out;"),n.push("");for(let i=0;i<this.size;i++){const r=this._nodes[i];e(r)&&n.push("    node".concat(i,' [label="').concat(t(r),'"];'))}for(let i=0;i<this.size;i++)if(e(this._nodes[i]))for(const t of this._successors[i])e(this._nodes[t])&&n.push("    node".concat(i," -> node").concat(t,";"));return n.push("}"),n.push(""),n.join("\n")}}t.Graph=u},26488:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32866),s=n(32351),o=n(62800),a=n(78920),u=n(35096);class l{constructor(e,t,n,i,r){this._typeBuilder=e,this._makeClassUnique=t,this._typeAttributes=n,this._forwardingRef=i,this._register=r,this._wasUsed=!1,this._typeRef=void 0}builderForNewType(){return a.assert(!this._wasUsed,"TypeReconstituter used more than once"),this._wasUsed=!0,this._typeBuilder}builderForSetting(){return a.assert(this._wasUsed&&void 0!==this._typeRef,"Can't set type members before constructing a type"),this._typeBuilder}getResult(){return void 0===this._typeRef?a.panic("Type was not reconstituted"):this._typeRef}register(e){a.assert(void 0===this._typeRef,"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(a.assert(!this._wasUsed,"Cannot lookup constituents after building type"),s.isTypeRef(e))return this._typeBuilder.lookupTypeRefs([e],void 0,!1);{const t=Array.from(e).map((e=>this._typeBuilder.lookupTypeRefs([e],void 0,!1)));if(t.some((e=>void 0===e)))return;return t}}lookupMap(e){const t=this.lookup(e.values());if(void 0===t)return;a.assert(t.length===e.size,"Didn't get back the correct number of types");const n=new Map;let i=0;for(const r of e.keys())n.set(r,t[i]),i+=1;return n}reconstitute(e){return a.assert(this._wasUsed,"Cannot reconstitute constituents before building type"),s.isTypeRef(e)?this._typeBuilder.reconstituteTypeRef(e):Array.from(e).map((e=>this._typeBuilder.reconstituteTypeRef(e)))}reconstituteMap(e){return i.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){this._makeClassUnique?this.getUniqueClassType(!1,e):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)}}t.TypeReconstituter=l;class c extends u.TypeBuilder{constructor(e,t,n,i,r){super(e.serial+1,t,n,!1,!1,i),this.originalGraph=e,this.debugPrint=r,this.reconstitutedTypes=new Map,this._lostTypeAttributes=!1,this._printIndent=0}withForwardingRef(e,t){if(void 0!==e)return t(e);const n=this.reserveTypeRef(),i=t(n);return a.assert(i===n,"Type creator didn't return its forwarding ref"),i}reconstituteType(e,t,n){return this.reconstituteTypeRef(e.typeRef,t,n)}reconstituteTypeRef(e,t,n){const i=this.lookupTypeRefs([e],n);return void 0!==i?(void 0!==t&&this.addAttributes(i,t),i):this.forceReconstituteTypeRef(e,t,n)}reconstituteTypeAttributes(e){return i.mapMap(e,((e,t)=>t.reconstitute(this,e)))}assertTypeRefsToReconstitute(e,t){a.assert(e.length>0,"Must have at least one type to reconstitute");for(const n of e)s.assertTypeRefGraph(n,this.originalGraph);void 0!==t&&s.assertTypeRefGraph(t,this.typeGraph)}changeDebugPrintIndent(e){this._printIndent+=e}get debugPrintIndentation(){return a.indentationString(this._printIndent)}finish(){for(const[e,t]of this.originalGraph.topLevels)this.addTopLevel(e,this.reconstituteType(t));return super.finish()}setLostTypeAttributes(){this._lostTypeAttributes=!0}get lostTypeAttributes(){return this._lostTypeAttributes}}t.BaseGraphRewriteBuilder=c;t.GraphRemapBuilder=class extends c{constructor(e,t,n,i,r,s){super(e,t,n,i,s),this._map=r,this._attributeSources=new Map;for(const[o,a]of r){let e=this._attributeSources.get(a);void 0===e&&(e=[a],this._attributeSources.set(a,e)),e.push(o)}}makeIdentity(e){}getMapTarget(e){const t=this._map.get(s.derefTypeRef(e,this.originalGraph));return void 0===t?e:(a.assert(void 0===this._map.get(t),"We have a type that's remapped to a remapped type"),t.typeRef)}addForwardingIntersection(e,t){return a.panic("We can't add forwarding intersections when we're removing forwarding intersections")}lookupTypeRefs(e,t){a.assert(void 0===t,"We can't have a forwarding ref when we remap"),this.assertTypeRefsToReconstitute(e,t);const n=this.reconstitutedTypes.get(s.typeRefIndex(this.getMapTarget(e[0])));if(void 0!==n){for(let t=1;t<e.length;t++){if(n!==this.reconstitutedTypes.get(s.typeRefIndex(this.getMapTarget(e[t]))))return}return n}}forceReconstituteTypeRef(e,t,n){e=this.getMapTarget(e);const i=s.typeRefIndex(e);return a.assert(void 0===this.reconstitutedTypes.get(i),"Type has already been reconstituted"),a.assert(void 0===n,"We can't have a forwarding ref when we remap"),this.withForwardingRef(void 0,(n=>{this.reconstitutedTypes.set(i,n),this.debugPrint&&(console.log("".concat(this.debugPrintIndentation,"reconstituting ").concat(i," as ").concat(s.typeRefIndex(n))),this.changeDebugPrintIndent(1));const[u,c]=s.typeAndAttributesForTypeRef(e,this.originalGraph),h=this._attributeSources.get(u);void 0===t&&(t=o.emptyTypeAttributes);const p=t=void 0===h?o.combineTypeAttributes("union",t,this.reconstituteTypeAttributes(c)):o.combineTypeAttributes("union",t,this.reconstituteTypeAttributes(r.combineTypeAttributesOfTypes("union",h))),d=new l(this,this.canonicalOrder,p,n,(e=>{a.assert(e===n,"Reconstituted type as a different ref"),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log("".concat(this.debugPrintIndentation,"reconstituted ").concat(i," as ").concat(s.typeRefIndex(e))))}));return u.reconstitute(d,this.canonicalOrder),d.getResult()}))}};t.GraphRewriteBuilder=class extends c{constructor(e,t,n,r,s,o,u){super(e,t,n,r,o),this._replacer=u,this._reconstitutedUnions=new i.EqualityMap,this._setsToReplaceByMember=new Map;for(const i of s){const e=new Set(i);for(const t of e){const n=t.index;a.assert(!this._setsToReplaceByMember.has(n),"A type is member of more than one set to be replaced"),this._setsToReplaceByMember.set(n,e)}}}registerUnion(e,t){const n=new Set(e);a.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("".concat(this.debugPrintIndentation,"replacing set ").concat(Array.from(e).map((e=>e.index.toString())).join(",")," as ").concat(s.typeRefIndex(t))),this.changeDebugPrintIndent(1));for(const i of e){const e=i.typeRef,n=s.typeRefIndex(e);this.reconstitutedTypes.set(n,t),this._setsToReplaceByMember.delete(n)}const n=this._replacer(e,this,t);return a.assert(n===t,"The forwarding ref got lost when replacing"),this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log("".concat(this.debugPrintIndentation,"replaced set ").concat(Array.from(e).map((e=>e.index.toString())).join(",")," as ").concat(s.typeRefIndex(t)))),n}))}forceReconstituteTypeRef(e,t,n){const[i,r]=s.typeAndAttributesForTypeRef(e,this.originalGraph),u=s.typeRefIndex(e);this.debugPrint&&(console.log("".concat(this.debugPrintIndentation,"reconstituting ").concat(u)),this.changeDebugPrintIndent(1)),t=void 0===t?this.reconstituteTypeAttributes(r):o.combineTypeAttributes("union",t,this.reconstituteTypeAttributes(r));const c=new l(this,this.canonicalOrder,t,n,(e=>{this.debugPrint&&(this.changeDebugPrintIndent(-1),console.log("".concat(this.debugPrintIndentation,"reconstituted ").concat(u," as ").concat(s.typeRefIndex(e)))),void 0!==n&&a.assert(e===n,"We didn't pass the forwarding ref");const t=this.reconstitutedTypes.get(u);void 0===t?this.reconstitutedTypes.set(u,e):a.assert(e===t,"We reconstituted a type twice differently")}));return i.reconstitute(c,this.canonicalOrder),c.getResult()}lookupTypeRefs(e,t){let n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];this.assertTypeRefsToReconstitute(e,t);let i=this.reconstitutedTypes.get(s.typeRefIndex(e[0]));if(void 0!==i&&i!==t){let n=!0;for(let t=1;t<e.length;t++)if(this.reconstitutedTypes.get(s.typeRefIndex(e[t]))!==i){n=!1;break}if(n)return this.forwardIfNecessary(t,i)}if(i=this._reconstitutedUnions.get(new Set(e)),void 0!==i&&i!==t)return this.forwardIfNecessary(t,i);const r=this._setsToReplaceByMember.get(s.typeRefIndex(e[0]));if(void 0!==r){for(let t=1;t<e.length;t++)if(this._setsToReplaceByMember.get(s.typeRefIndex(e[t]))!==r)return;if(n)return this.replaceSet(r,t)}}}},86987:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32351),s=n(41283),o=n(78920),a=n(93587),u=n(62800),l=n(20859),c=n(85101);function h(e,t,n,i){const s=new a.Transformation(e,t,n);return i&&(console.log("transformation for ".concat(r.typeRefIndex(t),":")),s.debugPrint(),console.log("reverse:"),s.reverse.debugPrint()),a.transformationTypeAttributeKind.makeAttributes(s)}function p(e,t,n,i){const r=Array.from(t.cases).sort().map((t=>new a.StringMatchTransformer(e,n,new a.StringProducerTransformer(e,n,i,t),t)));return new a.ChoiceTransformer(e,n,r)}t.makeTransformations=function(e,t,n){const r=i.setFilter(t.allTypesUnordered(),(e=>{if(n.needsTransformerForType(e))return!0;if(!(e instanceof s.UnionType))return!1;const t=e.stringTypeMembers;return!(t.size<=1)&&i.iterableSome(t,(e=>n.needsTransformerForType(e)))})),d=Array.from(r).map((e=>[e]));return t.rewrite("make-transformations",e.stringTypeMapping,!1,d,e.debugPrintReconstitution,(function(t,n,d){const m=o.defined(i.iterableFirst(t));return m instanceof s.UnionType?function(e,t,n,r,d){const m=t.typeGraph;o.assert(e.members.size>0,"We can't have empty unions");let f=u.emptyTypeAttributes;function y(n){if(s.isPrimitiveStringTypeKind(n.kind)){const i=s.targetTypeKindForTransformedStringTypeKind(n.kind);if(void 0!==i){const r=e.findMember(i);return f=u.combineTypeAttributes("union",f,n.getAttributes()),void 0!==r?t.reconstituteType(r):t.getPrimitiveType(i)}}return t.reconstituteType(n)}const g=i.mapMapEntries(e.members.entries(),(e=>[e.kind,y(e)])),_=new Set(g.values()),v=_.size>1;v||t.setLostTypeAttributes();const b=v?t.getUnionType(e.getAttributes(),_):o.defined(i.iterableFirst(_));function T(e){return o.defined(g.get(e))}function w(e){if(v)return new a.UnionInstantiationTransformer(m,e)}function k(t){if(void 0===e.findMember(t))return;const n=T(t);return new a.DecodingTransformer(m,n,w(n))}let S;function L(){return void 0===S&&(S=t.getStringType(u.emptyTypeAttributes,l.StringTypes.unrestricted)),S}function N(e){const t=T(e.kind);if("string"===e.kind){const n=c.minMaxLengthForType(e);if(void 0===n)return w(t);const[i,r]=n;return new a.MinMaxLengthCheckTransformer(m,L(),w(t),i,r)}return e instanceof s.EnumType&&r.has(e)?p(m,e,L(),w(t)):new a.ParseStringTransformer(m,L(),w(t))}const O=i.arraySortByInto(Array.from(e.stringTypeMembers),(e=>e.kind));let x;if(0===O.length)x=void 0;else if(1===O.length){const e=O[0];x=new a.DecodingTransformer(m,L(),N(e))}else x=new a.DecodingTransformer(m,L(),new a.ChoiceTransformer(m,L(),O.map((e=>o.defined(N(e))))));const C=k("class"),E=k("map");o.assert(void 0===C||void 0===E,"Can't have both class and map in a transformed union");const A=void 0!==C?C:E,P=new a.DecodingChoiceTransformer(m,t.getPrimitiveType("any"),k("null"),k("integer"),k("double"),k("bool"),x,k("array"),A),F=h(m,b,P,d);return t.getPrimitiveType("any",u.combineTypeAttributes("union",F,f),n)}(m,n,d,r,e.debugPrintTransformations):m instanceof s.ArrayType?function(e,t,n,i){const r=t.getPrimitiveType("any"),s=t.getArrayType(u.emptyTypeAttributes,r),o=t.reconstituteType(e.items),l=new a.ArrayDecodingTransformer(t.typeGraph,s,void 0,o,new a.DecodingTransformer(t.typeGraph,r,void 0)),c=t.getArrayType(t.reconstituteTypeAttributes(e.getAttributes()),o),p=h(t.typeGraph,c,l,i);return t.getArrayType(p,r,n)}(m,n,d,e.debugPrintTransformations):m instanceof s.EnumType?function(e,t,n,i){const r=t.getStringType(u.emptyTypeAttributes,l.StringTypes.unrestricted),s=new a.DecodingTransformer(t.typeGraph,r,p(t.typeGraph,e,r)),o=t.getEnumType(e.getAttributes(),e.cases),c=h(t.typeGraph,o,s,i);return t.getStringType(c,l.StringTypes.unrestricted,n)}(m,n,d,e.debugPrintTransformations):"string"===m.kind?function(e,t,n,i){const[r,s]=o.defined(c.minMaxLengthForType(e)),p=t.reconstituteTypeAttributes(e.getAttributes()),d=t.getStringType(u.emptyTypeAttributes,l.StringTypes.unrestricted),m=new a.DecodingTransformer(t.typeGraph,d,new a.MinMaxLengthCheckTransformer(t.typeGraph,d,void 0,r,s)),f=h(t.typeGraph,t.getStringType(p,void 0),m,i);return t.getStringType(f,l.StringTypes.unrestricted,n)}(m,n,d,e.debugPrintTransformations):s.isNumberTypeKind(m.kind)?function(e,t,n,i){const r=t.getStringType(u.emptyTypeAttributes,l.StringTypes.unrestricted),[s,p]=o.defined(c.minMaxValueForType(e)),d=new a.DecodingTransformer(t.typeGraph,r,new a.MinMaxValueTransformer(t.typeGraph,r,void 0,s,p)),m=t.reconstituteTypeAttributes(e.getAttributes()),f=h(t.typeGraph,t.getPrimitiveType("double",m,void 0),d,i);return t.getPrimitiveType("double",f,n)}(m,n,d,e.debugPrintTransformations):s.isPrimitiveStringTypeKind(m.kind)?function(e,t,n,r,o){const c=n.reconstituteTypeAttributes(e.getAttributes()),p=i.withDefault(s.targetTypeKindForTransformedStringTypeKind(t),t),d=n.getStringType(u.emptyTypeAttributes,l.StringTypes.unrestricted),m=new a.DecodingTransformer(n.typeGraph,d,new a.ParseStringTransformer(n.typeGraph,d,void 0)),f=h(n.typeGraph,n.getPrimitiveType(p,c),m,o);return n.getStringType(f,l.StringTypes.unrestricted,r)}(m,m.kind,n,d,e.debugPrintTransformations):o.panic("Cannot make transformation for type ".concat(m.kind))}))}},44234:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(78920),r=n(81876);function s(){const e=[];for(let t=0;t<128;t++)e.push(null);return{count:0,arr:e}}function o(e,t,n){if(n>=t.length)return e;let i=t.charCodeAt(n);i>=128&&(i=0);const r=e.arr[i];return null!==r?"object"===typeof r?o(r,t,n+1):r/e.count:void 0}function a(e,t,n){let r=t.charCodeAt(n);if(r>=128&&(r=0),n>=t.length-1){if("object"!==typeof e)return i.panic("Malformed trie");let t=e.arr[r];if(null===t)t=0;else if("object"===typeof t)return i.panic("Malformed trie");return e.arr[r]=t+1,void(e.count+=1)}let o=e.arr[r];return null===o&&(e.arr[r]=o=s()),"object"!==typeof o?i.panic("Malformed trie"):a(o,t,n+1)}function u(){return JSON.parse(i.inflateBase64(r.encodedMarkovChain))}function l(e,t){const{trie:n,depth:r}=e;if(t.length<r)return[1,[]];let s=1;const a=[];for(let u=r;u<=t.length;u++){let e=o(n,t.slice(u-r,u),0);if("object"===typeof e)return i.panic("Did we mess up the depth?");void 0===e&&(e=1e-4),a.push(e),s*=e}return[Math.pow(s,1/(t.length-r+1)),a]}function c(e,t){return l(e,t)[0]}function h(e,t){const n=t-e;return e+Math.floor(Math.random()*n)}function p(e,t){console.log('"'.concat(t,'": ').concat(c(e,t)))}t.train=function(e,t){const n=s();for(const i of e)for(let e=t;e<=i.length;e++)a(n,i.slice(e-t,e),0);return{trie:n,depth:t}},t.load=u,t.evaluateFull=l,t.evaluate=c,t.generate=function(e,t,n){i.assert(t.length===e.depth-1,"State and chain length don't match up");const r=o(e.trie,t,0);if("number"===typeof r)return i.panic("Wrong depth?");if(void 0===r)return String.fromCharCode(h(32,127));const s=r.arr.map(((e,t)=>null===e?0===t?0:n:e));let a=0;for(const i of s)a+=i;const u=h(0,a);let l=0;for(let i=0;i<s.length;i++)if(l+=s[i],u<l)return String.fromCharCode(i);return i.panic("We screwed up bookkeeping, or randomInt")},t.test=function(){const e=u();p(e,"url"),p(e,"json"),p(e,"my_property"),p(e,"ordinary"),p(e,"different"),p(e,"189512"),p(e,"2BTZIqw0ntH9MvilQ3ewNY"),p(e,"0uBTNdNGb2OY5lou41iYL52LcDq2"),p(e,"-KpqHmWuDOUnr1hmAhxp"),p(e,"granularity"),p(e,"coverage"),p(e,"postingFrequency"),p(e,"dataFrequency"),p(e,"units"),p(e,"datasetOwner"),p(e,"organization"),p(e,"timePeriod"),p(e,"contactInformation"),p(e,"\ud83d\udebe \ud83c\udd92 \ud83c\udd93 \ud83c\udd95 \ud83c\udd96 \ud83c\udd97 \ud83c\udd99 \ud83c\udfe7")}},59551:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n={InternalError:"Internal error: ${message}",MiscJSONParseError:"Syntax error in ${description} JSON ${address}: ${message}",MiscReadError:"Cannot read from file or URL ${fileOrURL}: ${message}",MiscUnicodeHighSurrogateWithoutLowSurrogate:"Malformed unicode: High surrogate not followed by low surrogate",MiscInvalidMinMaxConstraint:"Invalid min-max constraint: ${min}-${max}",InferenceJSONReferenceNotRooted:"JSON reference doesn't start with '#/': ${reference}",InferenceJSONReferenceToUnion:"JSON reference points to a union type: ${reference}",InferenceJSONReferenceWrongProperty:"JSON reference points to a non-existant property: ${reference}",InferenceJSONReferenceInvalidArrayIndex:"JSON reference uses invalid array index: ${reference}",SchemaArrayIsInvalidSchema:"An array is not a valid JSON Schema at ${ref}",SchemaNullIsInvalidSchema:"null is not a valid JSON Schema at ${ref}",SchemaRefMustBeString:"$ref must be a string, but is an ${actual} at ${ref}",SchemaAdditionalTypesForbidRequired:"Can't have non-specified required properties but forbidden additionalTypes at ${ref}",SchemaNoTypeSpecified:"JSON Schema must specify at least one type at ${ref}",SchemaInvalidType:"Invalid type ${type} in JSON Schema at ${ref}",SchemaFalseNotSupported:'Schema "false" is not supported at ${ref}',SchemaInvalidJSONSchemaType:"Value of type ${type} is not valid JSON Schema at ${ref}",SchemaRequiredMustBeStringOrStringArray:"`required` must be string or array of strings, but is ${actual} at ${ref}",SchemaRequiredElementMustBeString:"`required` must contain only strings, but it has ${element}, at ${ref}",SchemaTypeMustBeStringOrStringArray:"`type` must be string or array of strings, but is ${actual}",SchemaTypeElementMustBeString:"`type` must contain only strings, but it has ${element}",SchemaArrayItemsMustBeStringOrArray:"Array items must be an array or an object, but is ${actual}",SchemaIDMustHaveAddress:"$id ${id} doesn't have an address at ${ref}",SchemaWrongAccessorEntryArrayLength:"Accessor entry array must have the same number of entries as the ${operation} at ${ref}",SchemaSetOperationCasesIsNotArray:"${operation} cases must be an array, but is ${cases}, at ${ref}",SchemaMoreThanOneUnionMemberName:"More than one name given for union member: ${names}",SchemaCannotGetTypesFromBoolean:"Schema value to get top-level types from must be an object, but is boolean, at ${ref}",SchemaCannotIndexArrayWithNonNumber:"Trying to index array in schema with key that is not a number, but is ${actual} at ${ref}",SchemaIndexNotInArray:"Index ${index} out of range of schema array at ${ref}",SchemaKeyNotInObject:"Key ${key} not in schema object at ${ref}",SchemaFetchError:"Could not fetch schema ${address}, referred to from ${base}",SchemaFetchErrorTopLevel:"Could not fetch top-level schema ${address}",SchemaFetchErrorAdditional:"Could not fetch additional schema ${address}",GraphQLNoQueriesDefined:"GraphQL file doesn't have any queries defined.",DriverUnknownSourceLanguage:"Unknown source language ${lang}",DriverUnknownOutputLanguage:"Unknown output language ${lang}",DriverMoreThanOneInputGiven:"More than one input given for top-level ${topLevel}",DriverCannotInferNameForSchema:"Cannot infer name for schema ${uri}",DriverNoGraphQLQueryGiven:"Please specify at least one GraphQL query as input",DriverNoGraphQLSchemaInDir:"No GraphQL schema in ${dir}",DriverMoreThanOneGraphQLSchemaInDir:"More than one GraphQL schema in ${dir}",DriverSourceLangMustBeGraphQL:"If a GraphQL schema is specified, the source language must be GraphQL",DriverGraphQLSchemaNeeded:"Please specify a GraphQL schema with --graphql-schema or --graphql-introspect",DriverInputFileDoesNotExist:"Input file ${filename} does not exist",DriverCannotMixJSONWithOtherSamples:"Cannot mix JSON samples with JSON Schems, GraphQL, or TypeScript in input subdirectory ${dir}",DriverCannotMixNonJSONInputs:"Cannot mix JSON Schema, GraphQL, and TypeScript in an input subdirectory ${dir}",DriverUnknownDebugOption:"Unknown debug option ${option}",DriverNoLanguageOrExtension:"Please specify a language (--lang) or an output file extension",DriverCLIOptionParsingFailed:"Option parsing failed: ${message}",IRNoForwardDeclarableTypeInCycle:"Cannot resolve cycle because it doesn't contain types that can be forward declared",IRTypeAttributesNotPropagated:"Type attributes for ${count} types were not carried over to the new graph: ${indexes}",IRNoEmptyUnions:"Trying to make an empty union - do you have an impossible type in your schema?",RendererUnknownOptionValue:"Unknown value ${value} for option ${name}",TypeScriptCompilerError:"TypeScript error: ${message}"};class i extends Error{constructor(e,t,n,i){super(n),this.errorMessage=e,this.messageName=t,this.properties=i}}function r(e,t){const r=n[e];let s=r;for(const n of Object.getOwnPropertyNames(t)){let e=t[n];"object"===typeof e&&"function"===typeof e.toString?e=e.toString():"string"===typeof e.message?e=e.message:"string"!==typeof e&&(e=JSON.stringify(e)),s=s.replace("${"+n+"}",e)}throw new i(r,e,s,t)}t.QuickTypeError=i,t.messageError=r,t.messageAssert=function(e,t,n){if(!e)return r(t,n)}},77239:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920);class s{constructor(e,t,n,i){this._children=new Set,this._members=new Set,this.forbiddenNamespaces=new Set(n),this.additionalForbidden=new Set(i),void 0!==t&&t.addChild(this)}addChild(e){this._children.add(e)}get children(){return this._children}get members(){return this._members}get forbiddenNameds(){return i.setUnion(this.additionalForbidden,...Array.from(this.forbiddenNamespaces).map((e=>e.members)))}add(e){return this._members.add(e),e}}t.Namespace=s;class o{constructor(e,t,n){this.name=e,this.nameStyle=t,this._prefixes=new Set(n)}assignNames(e,t,n){const s=new Set(t),o=Array.from(n);r.assert(o.length>0,"Number of names can't be less than 1");const a=new Map;let u=[];for(const r of o){const t=r.proposeUnstyledNames(e),n=r.namingFunction,l=i.iterableFind(t,(t=>!s.has(n.nameStyle(t))&&o.every((n=>n===r||!n.proposeUnstyledNames(e).has(t)))));if(void 0!==l){const e=n.nameStyle(l),t=r.nameAssignments(s,e);if(null!==t){i.mapMergeInto(a,t),i.setUnionInto(s,t.values());continue}}u.push(r)}let l=this._prefixes.values(),c=1;for(const h of u){const t=r.defined(i.iterableFirst(h.proposeUnstyledNames(e)));for(;;){let e;const{done:n,value:r}=l.next();n?(e="".concat(t,"_").concat(c.toString()),c++):e="".concat(r,"_").concat(t);const o=h.namingFunction.nameStyle(e),u=h.nameAssignments(s,o);if(null!==u){i.mapMergeInto(a,u),i.setUnionInto(s,u.values());break}}}return a}}t.Namer=o;const a=["Purple","Fluffy","Tentacled","Sticky","Indigo","Indecent","Hilarious","Ambitious","Cunning","Magenta","Frisky","Mischievous","Braggadocious"];t.funPrefixNamer=function(e,t){return new o(e,t,a)};class u{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 r.defined(this._namingFunction)}firstProposedName(e){return r.defined(i.iterableFirst(this.proposeUnstyledNames(e)))}nameAssignments(e,t){if(e.has(t))return null;const n=new Map([[this,t]]);for(const i of this._associates){const r=i.getName(t);if(e.has(r))return null;n.set(i,r)}return n}}t.Name=u;class l extends u{constructor(e){super(void 0,0),this._fixedName=e}get dependencies(){return[]}addAssociate(e){return r.panic("Cannot add associates to fixed names")}get fixedName(){return this._fixedName}proposeUnstyledNames(e){return r.panic("Only fixedName should be called on FixedName.")}}t.FixedName=l;t.SimpleName=class extends u{constructor(e,t,n){super(t,n),this._unstyledNames=new Set(e)}get dependencies(){return[]}proposeUnstyledNames(e){return this._unstyledNames}};t.AssociatedName=class extends u{constructor(e,t,n){super(void 0,t),this._sponsor=e,this.getName=n}get dependencies(){return[this._sponsor]}proposeUnstyledNames(e){return r.panic("AssociatedName must be assigned via its sponsor")}};function c(e){return i.setUnion(e,...Array.from(i.setMap(e,(e=>c(e.children)))))}t.DependencyName=class extends u{constructor(e,t,n){super(e,t),this._proposeUnstyledName=n;const i=[];n((e=>(i.push(e),"0xDEADBEEF"))),this._dependencies=new Set(i)}get dependencies(){return Array.from(this._dependencies)}proposeUnstyledNames(e){return new Set([this._proposeUnstyledName((t=>(r.assert(this._dependencies.has(t),"DependencyName proposer is not pure"),r.defined(e.get(t)))))])}},t.keywordNamespace=function(e,t){const n=new s(e,void 0,[],[]);for(const i of t)n.add(new l(i));return n};class h{constructor(e){this._names=new Map,this._namedsForName=new Map,this.isReadyToBeNamed=e=>!this._names.has(e)&&e.dependencies.every((e=>this._names.has(e))),this.isConflicting=(e,t)=>{const n=this._namedsForName.get(t);if(void 0===n)return!1;for(const i of n)if(e.members.has(i)||e.forbiddenNameds.has(i))return!0;return!1},this.assign=(e,t,n)=>{r.assert(!this.names.has(e),'Name "'.concat(n,'" assigned twice')),r.assert(!this.isConflicting(t,n),'Assigned name "'.concat(n,'" conflicts')),this._names.set(e,n);let i=this._namedsForName.get(n);void 0===i&&(i=new Set,this._namedsForName.set(n,i)),i.add(e)},this.namespaces=c(e)}get names(){return this._names}areForbiddensFullyNamed(e){return i.iterableEvery(e.forbiddenNameds,(e=>this._names.has(e)))}}t.assignNames=function(e){const t=new h(e);for(const n of t.namespaces)for(const e of n.members)e.isFixed()&&t.assign(e,n,e.fixedName);for(;;){const e=i.setFilter(t.namespaces,(e=>t.areForbiddensFullyNamed(e))),n=i.iterableFind(e,(e=>i.iterableSome(e.members,t.isReadyToBeNamed)));if(void 0===n)return t.names;const r=i.setUnion(n.members,n.forbiddenNameds);let s=i.setFilterMap(r,(e=>t.names.get(e)));for(;;){const e=i.setFilter(n.members,t.isReadyToBeNamed),r=i.iterableMinBy(e,(e=>e.order));if(void 0===r)break;const o=r.order,a=i.setFilter(e,(e=>e.order===o)),u=i.setGroupBy(a,(e=>e.namingFunction));for(const[l,c]of u){const e=i.setGroupBy(c,(e=>e.namingFunction.nameStyle(e.firstProposedName(t.names))));for(const[,r]of e){const e=l.assignNames(t.names,s,r);for(const[i,r]of e)t.assign(i,n,r);i.setUnionInto(s,e.values())}}}}}},58800:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(77239),s=n(97714),o=n(78818),a=n(78920);function u(e){const t=e.length;let n=0;for(let i=0;i<t;i++){const t=e.charAt(i);if(" "===t)n+=1;else{if("\t"!==t)return{indent:n,text:e.substring(i)};n=4*(n/4+1)}}return{indent:0,text:null}}class l{constructor(){this._currentEmitTarget=this._emitted=[],this._numBlankLinesNeeded=0,this._preventBlankLine=!0}get isEmpty(){return 0===this._emitted.length}get isNested(){return this._emitted!==this._currentEmitTarget}get source(){return this._emitted}pushItem(e){this._currentEmitTarget.push(e),this._preventBlankLine=!1}emitNewline(){const e=s.newline();this.pushItem(e),this._lastNewline=e}emitItem(e){if(!this.isEmpty)for(let t=0;t<this._numBlankLinesNeeded;t++)this.emitNewline();this._numBlankLinesNeeded=0,this.pushItem(e)}containsItem(e){return void 0!==this._currentEmitTarget.find((t=>e===t))}ensureBlankLine(e){this._preventBlankLine||(this._numBlankLinesNeeded=Math.max(this._numBlankLinesNeeded,e))}preventBlankLine(){this._numBlankLinesNeeded=0,this._preventBlankLine=!0}changeIndent(e){if(void 0===this._lastNewline)return a.panic("Cannot change indent for the first line");this._lastNewline.indentationChange+=e}}t.Renderer=class{constructor(e,t){this.targetLanguage=e,this.emitTable=e=>{if(0===e.length)return;const t=e.map((e=>e.map((e=>s.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(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this._emitContext.ensureBlankLine(e)}preventBlankLine(){this._emitContext.preventBlankLine()}emitItem(e){this._emitContext.emitItem(e)}emitItemOnce(e){return!this._emitContext.containsItem(e)&&(this.emitItem(e),!0)}emitLineOnce(){let e=!0;for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];1===n.length?e=this.emitItemOnce(n[0]):n.length>1&&(e=this.emitItemOnce(n)),e&&this._emitContext.emitNewline()}emitLine(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];1===t.length?this._emitContext.emitItem(t[0]):t.length>1&&this._emitContext.emitItem(t),this._emitContext.emitNewline()}emitMultiline(e){const t=e.split("\n"),n=t.length;if(0===n)return;this.emitLine(t[0]);let i=0;for(let r=1;r<n;r++){const e=t[r],{indent:n,text:s}=u(e);if(a.assert(n%4===0,"Indentation is not a multiple of 4."),null!==s){const e=n/4;this.changeIndent(e-i),i=e,this.emitLine(s)}else this._emitContext.emitNewline()}0!==i&&this.changeIndent(-i)}gatherSource(e){const t=this._emitContext;this._emitContext=new l,e(),a.assert(!this._emitContext.isNested,"emit context not restored correctly");const n=this._emitContext.source;return this._emitContext=t,n}emitGatheredSource(e){for(const t of e)this._emitContext.emitItem(t)}emitAnnotated(e,t){const n=this.gatherSource(t),i=s.sourcelikeToSource(n);this._emitContext.emitItem(s.annotated(e,i))}emitIssue(e,t){this.emitAnnotated(new o.IssueAnnotationData(e),t)}changeIndent(e){this._emitContext.changeIndent(e)}iterableForEach(e,t){const n=Array.from(e);let r=!0;for(const[s,o]of i.iterableEnumerate(n)){t(o,1===n.length?"only":r?"first":s===n.length-1?"last":"middle"),r=!1}}forEach(e,t,n,i){let r=!1;return this.iterableForEach(e,((e,s)=>{let[o,a]=e;"only"===s||"first"===s?this.ensureBlankLine(n):this.ensureBlankLine(t),i(a,o,s),r=!0})),r}forEachWithBlankLines(e,t,n){const{position:i,count:r}=(s=t,Array.isArray(s)?{position:s[0],count:s[1]}:{position:s,count:1});var s;const o=["interposing","leading-and-interposing"].indexOf(i)>=0,a=["leading","leading-and-interposing"].indexOf(i)>=0;return this.forEach(e,o?r:0,a?r:0,n)}indent(e){this.changeIndent(1),e(),this.changeIndent(-1)}assignNames(){return r.assignNames(this.setUpNaming())}initializeEmitContextForFilename(e){if(this._finishedEmitContexts.has(e.toLowerCase())){const t=this._finishedEmitContexts.get(e.toLowerCase());void 0!==t&&(this._emitContext=t)}}finishFile(e){this._finishedFiles.has(e)&&console.log("[WARNING] Tried to emit file ".concat(e," more than once. If performing multi-file output this warning can be safely ignored."));const t=s.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 void 0===this._names?a.panic("Names accessed before they were assigned"):this._names}}},85332:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(78920),r=n(59551),s=n(74868);class o{constructor(e){e.renderer=!0,this.definition=e,i.assert(void 0!==e.kind,"Renderer option kind must be defined")}getValue(e){const t=e[this.definition.name];return void 0===t?this.definition.defaultValue:t}get cliDefinitions(){return{actual:[this.definition],display:[this.definition]}}}t.Option=o,t.getOptionValues=function(e,t){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=e[i].getValue(t);return n};t.BooleanOption=class extends o{constructor(e,t,n){super({name:e,kind:arguments.length>3&&void 0!==arguments[3]?arguments[3]:"primary",type:Boolean,description:t,defaultValue:n})}get cliDefinitions(){const e=Object.assign({},this.definition,{name:"no-".concat(this.definition.name),defaultValue:!this.definition.defaultValue});return{display:[Object.assign({},this.definition,{name:"[no-]".concat(this.definition.name),description:"".concat(this.definition.description," (").concat(this.definition.defaultValue?"on":"off"," by default)")})],actual:[this.definition,e]}}getValue(e){let t=e[this.definition.name];void 0===t&&(t=this.definition.defaultValue);let n=e["no-".concat(this.definition.name)];return void 0===n&&(n=!this.definition.defaultValue),"true"===t?t=!0:"false"===t&&(t=!1),this.definition.defaultValue?t&&!n:t||!n}};t.StringOption=class extends o{constructor(e,t,n,i){super({name:e,kind:arguments.length>4&&void 0!==arguments[4]?arguments[4]:"primary",type:String,description:t,typeLabel:n,defaultValue:i})}};t.EnumOption=class extends o{constructor(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0,r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"primary";void 0===i&&(i=n[0][0]);super({name:e,kind:r,type:String,description:t,typeLabel:n.map((e=>{let[t,n]=e;return t})).join("|"),legalValues:n.map((e=>{let[t,n]=e;return t})),defaultValue:i}),this._values={};for(const[s,o]of n)this._values[s]=o}getValue(e){let t=e[this.definition.name];return void 0===t&&(t=this.definition.defaultValue),s.hasOwnProperty(this._values,t)?this._values[t]:r.messageError("RendererUnknownOptionValue",{value:t,name:this.definition.name})}}},33538:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(74868),s=n(11865),o=n(78920),a=n(33426),u=n(95154),l=n(35096),c=n(32351),h=n(94418),p=n(72594),d=n(96143),m=n(11179),f=n(97063),y=n(66882),g=n(59551),_=n(37359),v=n(2657),b=n(86987);function T(e){if("object"===typeof e)return e;const t=s.languageNamed(e);return void 0!==t?t:g.messageError("DriverUnknownOutputLanguage",{lang:e})}t.getTargetLanguage=T,t.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,\ninfer 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.\nFor 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.\nFor 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,\ntreating 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\n'{ $ref: \"#/foo/bar\" }' to refer\nto another part of the input.",order:8}},t.inferenceFlagNames=Object.getOwnPropertyNames(t.inferenceFlagsObject),t.inferenceFlags=t.inferenceFlagsObject;const w={lang:"ts",inputData:new _.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};t.defaultInferenceFlags=function(){const e={};for(const n of t.inferenceFlagNames)e[n]=!0;return e}();class k{constructor(e){this._options=Object.assign({},w,t.defaultInferenceFlags);for(const t of Object.getOwnPropertyNames(e)){const n=e[t];void 0!==n&&(this._options[t]=n)}}get stringTypeMapping(){const e=T(this._options.lang),n=new Map(e.stringTypeMapping);for(const i of t.inferenceFlagNames){const e=t.inferenceFlags[i].stringType;this._options[i]||void 0===e||n.set(e,"string")}return n}get debugPrintReconstitution(){return!0===this._options.debugPrintReconstitution}get debugPrintTransformations(){return this._options.debugPrintTransformations}get debugPrintSchemaResolving(){return this._options.debugPrintSchemaResolving}timeSync(e,t){return i(this,void 0,void 0,(function*(){const n=Date.now(),i=yield t(),r=Date.now();return this._options.debugPrintTimes&&console.log("".concat(e," took ").concat(r-n,"ms")),i}))}time(e,t){const n=Date.now(),i=t(),r=Date.now();return this._options.debugPrintTimes&&console.log("".concat(e," took ").concat(r-n,"ms")),i}makeGraphInputs(){const e=T(this._options.lang),t=this.stringTypeMapping;return{targetLanguage:e,stringTypeMapping:t,conflateNumbers:!e.supportsUnionsWithBothNumberTypes,typeBuilder:new l.TypeBuilder(0,t,this._options.alphabetizeProperties,this._options.allPropertiesOptional,this._options.checkProvenance,!1)}}makeGraph(e){return i(this,void 0,void 0,(function*(){const 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){const 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){const{targetLanguage:n,stringTypeMapping:i,conflateNumbers:r,typeBuilder:s}=t;let l=s.finish();this._options.debugPrintGraph&&(l.setPrintOnRewrite(),l.printGraph());const h=this.debugPrintReconstitution;!s.didAddForwardingIntersection&&this._options.ignoreJsonRefs||this.time("remove indirection intersections",(()=>l=c.removeIndirectionIntersections(l,i,h)));let g=!1;if(e.needSchemaProcessing||!this._options.ignoreJsonRefs){let e=!1;do{const t=l;e||this.time("resolve intersections",(()=>[l,e]=f.resolveIntersections(l,i,h))),g||this.time("flatten unions",(()=>[l,g]=m.flattenUnions(l,i,r,!0,h))),l===t&&o.assert(e&&g,"Graph didn't change but we're not done")}while(!e||!g)}this.time("replace object type",(()=>l=y.replaceObjectType(l,i,r,n.supportsFullObjectType,h)));do{this.time("flatten unions",(()=>[l,g]=m.flattenUnions(l,i,r,!1,h)))}while(!g);if(this._options.combineClasses){const e=this.time("combine classes",(()=>a.combineClasses(this,l,this._options.alphabetizeProperties,!0,!1,h)));e===l?l=e:this.time("combine classes cleanup",(()=>l=a.combineClasses(this,e,this._options.alphabetizeProperties,!1,!0,h)))}if(this._options.inferMaps)for(;;){const e=this.time("infer maps",(()=>u.inferMaps(l,i,!0,h)));if(e===l)break;l=e}const _=e.needSchemaProcessing?"all":this._options.inferEnums?"infer":"none";return this.time("expand strings",(()=>l=d.expandStrings(this,l,_))),this.time("flatten unions",(()=>[l,g]=m.flattenUnions(l,i,r,!1,h))),o.assert(g,"We should only have to flatten unions once after expanding strings"),e.needSchemaProcessing&&this.time("flatten strings",(()=>l=v.flattenStrings(l,i,h))),this.time("none to any",(()=>l=c.noneToAny(l,i,h))),n.supportsOptionalClassProperties||this.time("optional to nullable",(()=>l=c.optionalToNullable(l,i,h))),this.time("fixed point",(()=>l=l.rewriteFixedPoint(!1,h))),this.time("make transformations",(()=>l=b.makeTransformations(this,l,n))),this.time("flatten unions",(()=>[l,g]=m.flattenUnions(l,i,r,!1,h))),o.assert(g,"We should only have to flatten unions once after making transformations"),this.time("GC",(()=>l=l.garbageCollect(this._options.alphabetizeProperties,h))),this._options.debugPrintGraph&&console.log("\n# gather names"),this.time("gather names",(()=>p.gatherNames(l,!e.needSchemaProcessing,this._options.debugPrintGatherNames))),this._options.debugPrintGraph&&l.printGraph(),l}makeSimpleTextResult(e){return new Map([[this._options.outputFilename,{lines:e,annotations:[]}]])}preRun(){h.initTypeNames();const e=T(this._options.lang),t=this._options.inputData,n=t.needIR||e.names.indexOf("schema")<0?void 0:t.singleStringSchemaSource();if(void 0!==n){const e=JSON.stringify(JSON.parse(n),void 0,4).split("\n");e.push("");const t={lines:e,annotations:[]};return new Map([[this._options.outputFilename,t]])}return[t,e]}run(){return i(this,void 0,void 0,(function*(){const e=this.preRun();if(!Array.isArray(e))return e;const[t,n]=e,i=yield this.makeGraph(t);return this.renderGraph(n,i)}))}runSync(){const e=this.preRun();if(!Array.isArray(e))return e;const[t,n]=e,i=this.makeGraphSync(t);return this.renderGraph(n,i)}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 S(e){return i(this,void 0,void 0,(function*(){return yield new k(e).run()}))}function L(e,t){return{line:e.line+t,column:e.column}}function N(e){if(e.size<=1){const t=r.mapFirst(e);return void 0===t?{lines:[],annotations:[]}:t}let t=[],n=[];for(const[i,r]of e){const e=t.length+2;t=t.concat(["// ".concat(i),""],r.lines),n=n.concat(r.annotations.map((t=>{return{annotation:t.annotation,span:(n=t.span,i=e,{start:L(n.start,i),end:L(n.end,i)})};var n,i})))}return{lines:t,annotations:n}}t.quicktypeMultiFile=S,t.quicktypeMultiFileSync=function(e){return new k(e).runSync()},t.combineRenderResults=N,t.quicktype=function(e){return i(this,void 0,void 0,(function*(){return N(yield S(e))}))}},97714:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(77239),s=n(78920),o=n(60877);function a(){return{kind:"newline",indentationChange:0}}function u(e){if(e instanceof Array)return{kind:"sequence",sequence:e.map(u)};if("string"===typeof e){const t=e.split("\n");return 1===t.length?{kind:"text",text:e}:{kind:"sequence",sequence:i.arrayIntercalate({kind:"newline",indentationChange:0},t.map((e=>({kind:"text",text:e}))))}}return e instanceof r.Name?{kind:"name",named:e}:e}function l(e,t){return{kind:"annotated",annotation:e,source:u(t)}}function c(e,t){switch(e.kind){case"text":return e.text.length;case"newline":return s.panic("Newline must not occur within a line.");case"sequence":return e.sequence.map((e=>c(e,t))).reduce(((e,t)=>e+t),0);case"table":return s.panic("Table must not occur within a  line.");case"annotated":return c(e.source,t);case"name":return s.defined(t.get(e.named)).length;case"modified":return h(e,t,"").lines.join("\n").length;default:return s.assertNever(e)}}function h(e,t,n){let r=0,a=0;const u=[];let l=[];const p=[];function d(){0!==a&&(l.push(o.repeatString(n,a)),a=0)}function m(){const e=l.join("");return l=[e],e}function f(){return{line:u.length,column:m().length}}function y(){u.push(m()),l=[]}return function e(u){switch(u.kind){case"text":d(),l.push(u.text);break;case"newline":y(),r+=u.indentationChange,a=r;break;case"sequence":for(const t of u.sequence)e(t);break;case"table":const m=u.table,g=m.length;if(0===g)break;const _=m.map((e=>e.map((e=>c(e,t))))),v=s.defined(i.iterableMax(m.map((e=>e.length))));if(0===v)break;const b=[];for(let e=0;e<v;e++)b.push(s.defined(i.iterableMax(_.map((t=>i.withDefault(t[e],0))))));for(let t=0;t<g;t++){d();const n=s.defined(m[t]),u=s.defined(_[t]);for(let t=0;t<v;t++){const r=b[t],s=i.withDefault(n[t],{kind:"text",text:""}),a=i.withDefault(u[t],0);e(s),t<v-1&&a<r&&l.push(o.repeatString(" ",r-a))}t<g-1&&(y(),a=r)}break;case"annotated":const T=f();e(u.source);const w=f();p.push({annotation:u.annotation,span:{start:T,end:w}});break;case"name":s.assert(t.has(u.named),"No name for Named"),d(),l.push(s.defined(t.get(u.named)));break;case"modified":d();const k=h(u.source,t,n).lines;s.assert(1===k.length,"Cannot modify more than one line."),l.push(u.modifier(k[0]));break;default:return s.assertNever(u)}}(e),y(),{lines:u,annotations:p}}function p(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return{source:t,needsParens:!1}}t.newline=a,t.sourcelikeToSource=u,t.annotated=l,t.maybeAnnotated=function(e,t,n){return e?l(t,n):n},t.modifySource=function(e,t){return{kind:"modified",modifier:e,source:u(t)}},t.serializeRenderResult=h,t.singleWord=p,t.multiWord=function(e){if(s.assert((arguments.length<=1?0:arguments.length-1)>0,"Zero words is not multiple"),1===(arguments.length<=1?0:arguments.length-1))return p(arguments.length<=1?void 0:arguments[1]);const t=[];for(let n=0;n<(arguments.length<=1?0:arguments.length-1);n++)n>0&&t.push(e),t.push(n+1<1||arguments.length<=n+1?void 0:arguments[n+1]);return{source:t,needsParens:!0}},t.parenIfNeeded=function(e){let{source:t,needsParens:n}=e;return n?["(",t,")"]:t}},59592:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(97714),s=n(78920),o=n(72354);t.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(const{cliDefinitions:n}of this.getOptions())e=e.concat(n.actual),t=t.concat(n.display);return{actual:e,display:t}}get name(){return s.defined(this.names[0])}renderGraphAndSerialize(e,t,n,o,a,u){void 0===u&&(u=this.defaultIndentation);const l={typeGraph:e,leadingComments:o},c=this.makeRenderer(l,a);void 0!==c.setAlphabetizeProperties&&c.setAlphabetizeProperties(n);const h=c.render(t);return i.mapMap(h.sources,(e=>r.serializeRenderResult(e,h.names,s.defined(u))))}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 o.DefaultDateTimeRecognizer}}},93587:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(62800),o=n(78920),a=n(32351);function u(e){const t=E(e);return e===t?e.kind:"".concat(e.kind," (").concat(t.kind,")")}function l(e){return i.definedMapWithDefault(e,0,(e=>e.getNumberOfNodes()))}class c{constructor(e,t,n){this.kind=e,this.graph=t,this.sourceTypeRef=n}get sourceType(){return a.derefTypeRef(this.sourceTypeRef,this.graph)}getChildren(){return new Set([this.sourceType])}getNumberOfNodes(){return 1}equals(e){return e instanceof c&&this.sourceTypeRef===e.sourceTypeRef}hashCode(){return i.hashCodeOf(this.sourceTypeRef)}debugDescription(){return"".concat(u(this.sourceType)," -> ").concat(this.kind)}debugPrintContinuations(e){}debugPrint(e){console.log(o.indentationString(e)+this.debugDescription()),this.debugPrintContinuations(e+1)}}t.Transformer=c;class h extends c{constructor(e,t,n,i){super(e,t,n),this.consumer=i}getChildren(){const e=super.getChildren();return void 0===this.consumer?e:i.setUnionInto(e,this.consumer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+l(this.consumer)}equals(e){return!!super.equals(e)&&(e instanceof h&&i.areEqual(this.consumer,e.consumer))}hashCode(){const e=super.hashCode();return i.addHashCode(e,i.hashCodeOf(this.consumer))}debugPrintContinuations(e){void 0!==this.consumer&&this.consumer.debugPrint(e)}}t.ProducerTransformer=h;class p extends c{constructor(e,t,n,i){super(e,t,n),this.transformer=i}getChildren(){return i.setUnionInto(super.getChildren(),this.transformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.transformer.getNumberOfNodes()}equals(e){return!!super.equals(e)&&(e instanceof p&&this.transformer.equals(e.transformer))}hashCode(){const e=super.hashCode();return i.addHashCode(e,this.transformer.hashCode())}debugPrintContinuations(e){this.transformer.debugPrint(e)}}t.MatchTransformer=p;class d extends h{constructor(e,t,n){super("decode",e,t,n)}get canFail(){return!1}reverse(e,t){return void 0!==t?o.panic("Reversing a decoding transformer cannot have a continuation"):void 0===this.consumer?new m(this.graph,e):this.consumer.reverse(e,new m(this.graph,this.consumer.sourceTypeRef))}reconstitute(e){return new d(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))))}equals(e){return!!super.equals(e)&&e instanceof d}}t.DecodingTransformer=d;class m extends c{constructor(e,t){super("encode",e,t)}get canFail(){return!1}reverse(e,t){return o.panic("Can't reverse encoding transformer")}reconstitute(e){return new m(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef))}equals(e){return!!super.equals(e)&&e instanceof m}}t.EncodingTransformer=m;class f extends h{constructor(e,t,n,i,r){super("decode-array",e,t,n),this._itemTargetTypeRef=i,this.itemTransformer=r}getChildren(){const e=super.getChildren();return e.add(this.itemTargetType),i.setUnionInto(e,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return a.derefTypeRef(this._itemTargetTypeRef,this.graph)}reverse(e,t){if(void 0!==t)return o.panic("Reversing a decoding transformer cannot have a continuation");const n=this.itemTransformer.reverse(this._itemTargetTypeRef,void 0);return void 0===this.consumer?new y(this.graph,e,this.itemTransformer.sourceTypeRef,n):this.consumer.reverse(e,new y(this.graph,this.consumer.sourceTypeRef,this.itemTransformer.sourceTypeRef,n))}reconstitute(e){return new f(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))),e.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(e))}hashCode(){let e=super.hashCode();return e=i.addHashCode(e,i.hashCodeOf(this._itemTargetTypeRef)),e=i.addHashCode(e,this.itemTransformer.hashCode()),e}equals(e){return!!super.equals(e)&&(e instanceof f&&(!!i.areEqual(this._itemTargetTypeRef,e._itemTargetTypeRef)&&this.itemTransformer.equals(e.itemTransformer)))}debugPrintContinuations(e){this.itemTransformer.debugPrint(e),super.debugPrintContinuations(e)}}t.ArrayDecodingTransformer=f;class y extends c{constructor(e,t,n,i){super("encode-array",e,t),this._itemTargetTypeRef=n,this.itemTransformer=i}getChildren(){const e=super.getChildren();return e.add(this.itemTargetType),i.setUnionInto(e,this.itemTransformer.getChildren())}getNumberOfNodes(){return super.getNumberOfNodes()+this.itemTransformer.getNumberOfNodes()}get canFail(){return!1}get itemTargetType(){return a.derefTypeRef(this._itemTargetTypeRef,this.graph)}reverse(e,t){return o.panic("Can't reverse array encoding transformer")}reconstitute(e){return new y(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),e.reconstituteTypeRef(this._itemTargetTypeRef),this.itemTransformer.reconstitute(e))}hashCode(){let e=super.hashCode();return e=i.addHashCode(e,i.hashCodeOf(this._itemTargetTypeRef)),i.addHashCode(e,this.itemTransformer.hashCode())}equals(e){return!!super.equals(e)&&(e instanceof y&&(!!i.areEqual(this._itemTargetTypeRef,e._itemTargetTypeRef)&&this.itemTransformer.equals(e.itemTransformer)))}debugPrintContinuations(e){this.itemTransformer.debugPrint(e),super.debugPrintContinuations(e)}}t.ArrayEncodingTransformer=y;class g extends c{constructor(e,t,n){super("choice",e,t),this.transformers=n,o.assert(n.length>0,"Choice must have at least one transformer")}getChildren(){let e=super.getChildren();for(const t of this.transformers)i.setUnionInto(e,t.getChildren());return e}getNumberOfNodes(){let e=0;for(const t of this.transformers)e+=t.getNumberOfNodes();return super.getNumberOfNodes()+e}get canFail(){return this.transformers.some((e=>e.canFail))}reverse(e,t){const n=this.transformers.map((n=>n.reverse(e,t)));if(n.every((e=>e instanceof v))){const t=n,i=t[0];if(t.every((e=>i.memberType.equals(e.memberType)))){const n=t.map((e=>e.transformer));return new v(this.graph,e,new g(this.graph,n[0].sourceTypeRef,n),i.memberTypeRef)}}return new g(this.graph,e,n)}reconstitute(e){return new g(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),this.transformers.map((t=>t.reconstitute(e))))}equals(e){return!!super.equals(e)&&(e instanceof g&&i.areEqual(this.transformers,e.transformers))}hashCode(){const e=super.hashCode();return i.addHashCode(e,i.hashCodeOf(this.transformers))}debugPrintContinuations(e){for(const t of this.transformers)t.debugPrint(e)}}t.ChoiceTransformer=g;class _ extends c{constructor(e,t,n,i,r,s,o,a,u){super("decoding-choice",e,t),this.nullTransformer=n,this.integerTransformer=i,this.doubleTransformer=r,this.boolTransformer=s,this.stringTransformer=o,this.arrayTransformer=a,this.objectTransformer=u}get transformers(){const e=[];function t(t){void 0!==t&&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(const t of this.transformers)i.setUnionInto(e,t.getChildren());return e}getNumberOfNodes(){let e=super.getNumberOfNodes();for(const t of this.transformers)e+=l(t);return e}get canFail(){return!1}reverse(e,t){o.assert(void 0===t,"Reversing a decoding transformer can't have a target transformer");let n=new Map,r=new Map;function s(e){if(e instanceof v){const t=e.memberType;let n=r.get(t);void 0===n&&(n=[],r.set(t,n)),n.push(e)}else{const t=e.sourceType.kind;let i=n.get(t);void 0===i&&(i=[],n.set(t,i)),i.push(e)}}this.transformers.forEach((function(t){const n=t.reverse(e,void 0);let i=[];i=n instanceof g?n.transformers:[n];for(const e of i)s(e)}));const a=Array.from(n.values()).concat(Array.from(r.values())),u=[].concat(...a.map((function(e){o.assert(e.length>0,"Must have at least one transformer");const t=e.filter((e=>e instanceof v?!e.transformer.canFail:!e.canFail));return 0===t.length?e:[i.arraySortByInto(t.map((e=>[e.getNumberOfNodes(),e])),(e=>{let[t,n]=e;return t}))[0][1]]})));return 1===u.length?u[0]:new g(this.graph,e,u)}reconstitute(e){function t(t){if(void 0!==t)return t.reconstitute(e)}return new _(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),t(this.nullTransformer),t(this.integerTransformer),t(this.doubleTransformer),t(this.boolTransformer),t(this.stringTransformer),t(this.arrayTransformer),t(this.objectTransformer))}equals(e){return!!super.equals(e)&&(e instanceof _&&(!!i.areEqual(this.nullTransformer,e.nullTransformer)&&(!!i.areEqual(this.integerTransformer,e.integerTransformer)&&(!!i.areEqual(this.doubleTransformer,e.doubleTransformer)&&(!!i.areEqual(this.boolTransformer,e.boolTransformer)&&(!!i.areEqual(this.stringTransformer,e.stringTransformer)&&(!!i.areEqual(this.arrayTransformer,e.arrayTransformer)&&!!i.areEqual(this.objectTransformer,e.objectTransformer))))))))}hashCode(){let e=super.hashCode();return e=i.addHashCode(e,i.hashCodeOf(this.nullTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.integerTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.doubleTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.boolTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.stringTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.arrayTransformer)),e=i.addHashCode(e,i.hashCodeOf(this.objectTransformer)),e}debugPrintContinuations(e){for(const t of this.transformers)t.debugPrint(e)}}t.DecodingChoiceTransformer=_;class v extends p{constructor(e,t,n,i){super("union-member-match",e,t,n),this.memberTypeRef=i}get sourceType(){const e=a.derefTypeRef(this.sourceTypeRef,this.graph);return e instanceof r.UnionType?e:o.panic("The source of a union member match transformer must be a union type")}get canFail(){return!0}get memberType(){return a.derefTypeRef(this.memberTypeRef,this.graph)}getChildren(){return super.getChildren().add(this.memberType)}reverse(e,t){return o.panic("Can't reverse union member match transformer")}reconstitute(e){return new v(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(e),e.reconstituteTypeRef(this.memberTypeRef))}equals(e){return!!super.equals(e)&&(e instanceof v&&this.memberTypeRef===e.memberTypeRef)}hashCode(){const e=super.hashCode();return i.addHashCode(e,i.hashCodeOf(this.memberTypeRef))}debugDescription(){return"".concat(super.debugDescription()," - member: ").concat(u(this.memberType))}}t.UnionMemberMatchTransformer=v;class b extends p{constructor(e,t,n,i){super("string-match",e,t,n),this.stringCase=i}get sourceType(){const e=a.derefTypeRef(this.sourceTypeRef,this.graph);return e instanceof r.EnumType||e instanceof r.PrimitiveType&&"string"===e.kind?e:o.panic("The source of a string match transformer must be an enum or string type")}get canFail(){return!0}reverse(e,t){return this.transformer.reverse(e,new w(this.graph,this.transformer.sourceTypeRef,t,this.stringCase))}reconstitute(e){return new b(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),this.transformer.reconstitute(e),this.stringCase)}equals(e){return!!super.equals(e)&&(e instanceof b&&this.stringCase!==e.stringCase)}hashCode(){const e=super.hashCode();return i.addHashCode(e,i.hashString(this.stringCase))}debugDescription(){return"".concat(super.debugDescription()," - case: ").concat(this.stringCase)}}t.StringMatchTransformer=b;class T extends c{constructor(e,t){super("union-instantiation",e,t)}get canFail(){return!1}reverse(e,t){return void 0===t?o.panic("Union instantiation transformer reverse must have a continuation"):new v(this.graph,e,t,this.sourceTypeRef)}reconstitute(e){return new T(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef))}equals(e){return!!super.equals(e)&&e instanceof T}}t.UnionInstantiationTransformer=T;class w extends h{constructor(e,t,n,i){super("string-producer",e,t,n),this.result=i}get canFail(){return!1}reverse(e,t){return void 0===t?o.panic("Reversing a string producer transformer must have a continuation"):void 0===this.consumer?new b(this.graph,e,t,this.result):this.consumer.reverse(e,new b(this.graph,this.consumer.sourceTypeRef,t,this.result))}reconstitute(e){return new w(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))),this.result)}equals(e){return!!super.equals(e)&&(e instanceof w&&this.result===e.result)}hashCode(){const e=super.hashCode();return i.addHashCode(e,i.hashCodeOf(this.consumer))}debugDescription(){return"".concat(super.debugDescription()," - result: ").concat(this.result)}}t.StringProducerTransformer=w;class k extends h{constructor(e,t,n){super("parse-string",e,t,n)}get canFail(){return!0}reverse(e,t){return void 0===this.consumer?new S(this.graph,e,t):this.consumer.reverse(e,new S(this.graph,this.consumer.sourceTypeRef,t))}reconstitute(e){return new k(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))))}equals(e){return!!super.equals(e)&&e instanceof k}}t.ParseStringTransformer=k;class S extends h{constructor(e,t,n){super("stringify",e,t,n)}get canFail(){return!1}reverse(e,t){return void 0===this.consumer?new k(this.graph,e,t):this.consumer.reverse(e,new k(this.graph,this.consumer.sourceTypeRef,t))}reconstitute(e){return new S(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))))}equals(e){return!!super.equals(e)&&e instanceof S}}t.StringifyTransformer=S;class L extends h{constructor(e,t,n,i,r){super("min-max-length-check",e,t,n),this.minLength=i,this.maxLength=r}get canFail(){return!0}reverse(e,t){return void 0===this.consumer?new L(this.graph,e,t,this.minLength,this.maxLength):this.consumer.reverse(e,new L(this.graph,this.consumer.sourceTypeRef,t,this.minLength,this.maxLength))}reconstitute(e){return new L(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))),this.minLength,this.maxLength)}equals(e){return!!super.equals(e)&&(e instanceof L&&this.minLength===e.minLength&&this.maxLength===e.maxLength)}}t.MinMaxLengthCheckTransformer=L;class N extends h{constructor(e,t,n,i,r){super("min-max-value-check",e,t,n),this.minimum=i,this.maximum=r}get canFail(){return!0}reverse(e,t){return void 0===this.consumer?new N(this.graph,e,t,this.minimum,this.maximum):this.consumer.reverse(e,new N(this.graph,this.consumer.sourceTypeRef,t,this.minimum,this.maximum))}reconstitute(e){return new N(e.typeGraph,e.reconstituteTypeRef(this.sourceTypeRef),i.definedMap(this.consumer,(t=>t.reconstitute(e))),this.minimum,this.maximum)}equals(e){return!!super.equals(e)&&(e instanceof N&&this.minimum===e.minimum&&this.maximum===e.maximum)}}t.MinMaxValueTransformer=N;class O{constructor(e,t,n){this._graph=e,this._targetTypeRef=t,this.transformer=n}get sourceType(){return this.transformer.sourceType}get targetType(){return a.derefTypeRef(this._targetTypeRef,this._graph)}get reverse(){return new O(this._graph,this.transformer.sourceTypeRef,this.transformer.reverse(this._targetTypeRef,void 0))}getChildren(){return this.transformer.getChildren().add(this.targetType)}reconstitute(e){return new O(e.typeGraph,e.reconstituteTypeRef(this._targetTypeRef),this.transformer.reconstitute(e))}equals(e){return e instanceof O&&(this._targetTypeRef===e._targetTypeRef&&this.transformer.equals(e.transformer))}hashCode(){let e=i.hashCodeOf(this._targetTypeRef);return e=i.addHashCode(e,this.transformer.hashCode()),e}debugPrint(){this.transformer.debugPrint(0),console.log("-> ".concat(u(this.targetType)))}}t.Transformation=O;class x extends s.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 C(e){return t.transformationTypeAttributeKind.tryGetInAttributes(e.getAttributes())}function E(e){for(;;){const t=C(e);if(void 0===t)return e;e=t.targetType}}t.transformationTypeAttributeKind=new x,t.transformationForType=C,t.followTargetType=E},41283:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920),s=n(94418),o=n(59551),a=n(32351),u={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:n(2226).uriInferenceAttributesProducer},"integer-string":{jsonSchema:"integer",primitive:"integer"},"bool-string":{jsonSchema:"boolean",primitive:"bool"}};function l(e){return"string"===e||i.hasOwnProperty(u,e)}function c(e){return"integer"===e||"double"===e}function h(e,t){return e.index===t.index||("none"===e.kind||"none"===t.kind)}t.transformedStringTypeTargetTypeKindsMap=i.mapFromObject(u),t.transformedStringTypeKinds=new Set(Object.getOwnPropertyNames(u)),t.isPrimitiveStringTypeKind=l,t.targetTypeKindForTransformedStringTypeKind=function(e){const n=t.transformedStringTypeTargetTypeKindsMap.get(e);if(void 0!==n)return n.primitive},t.isNumberTypeKind=c,t.isPrimitiveTypeKind=function(e){return!!l(e)||(!!c(e)||("none"===e||"any"===e||"null"===e||"bool"===e))};class p{constructor(e,t){this._kind=e,this._components=t;let n=i.hashCodeInit;n=i.addHashCode(n,i.hashCodeOf(this._kind));for(const r of t)n=i.addHashCode(n,i.hashCodeOf(r));this._hashCode=n}equals(e){if(!(e instanceof p))return!1;if(this._kind!==e._kind)return!1;const t=this._components.length;r.assert(t===e._components.length,"Components of a type kind's identity must have the same length");for(let n=0;n<t;n++)if(!i.areEqual(this._components[n],e._components[n]))return!1;return!0}hashCode(){return this._hashCode}}t.TypeIdentity=p;class d{constructor(e,t,n){this.typeRef=e,this.graph=t,this.kind=n}get index(){return a.typeRefIndex(this.typeRef)}getChildren(){let e=this.getNonAttributeChildren();for(const[t,n]of this.getAttributes())void 0!==t.children&&i.setUnionInto(e,t.children(n));return e}getAttributes(){return a.attributesForTypeRef(this.typeRef,this.graph)}get hasNames(){return void 0!==s.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes())}getNames(){return r.defined(s.namesTypeAttributeKind.tryGetInAttributes(this.getAttributes()))}getCombinedName(){return this.getNames().combinedName}get debugPrintKind(){return this.kind}equals(e){return e instanceof d&&this.typeRef===e.typeRef}hashCode(){return i.hashCodeOf(this.typeRef)}structurallyCompatible(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];function n(e,n){return e===n||!!t&&("integer"===e?"double"===n:"double"===e&&"integer"===n)}if(h(this,e))return!0;if(!n(this.kind,e.kind))return!1;const i=[[this,e]],s=[];let o;const a=(e,t)=>!!h(e,t)||(n(e.kind,t.kind)?(i.push([e,t]),!0):(o=!0,!1));for(;i.length>0;){let[e,n]=r.defined(i.pop());if(e.index>n.index&&([e,n]=[n,e]),!e.isPrimitive()){let t=e.index,i=n.index,r=!1;for(const[e,n]of s)if(e===t&&n===i){r=!0;break}if(r)continue;s.push([t,i])}if(o=!1,!e.structuralEqualityStep(n,t,a))return!1;if(o)return!1}return!0}getParentTypes(){return this.graph.getParentsOfType(this)}getAncestorsNotInSet(e){const t=[this],n=new Set,i=new Set;for(;;){const r=t.pop();if(void 0===r)break;const s=r.getParentTypes();console.log("".concat(s.size," parents"));for(const o of s)n.has(o)||(n.add(o),e.has(o.typeRef)?(console.log("adding ".concat(o.kind)),t.push(o)):(console.log("found ".concat(o.kind)),i.add(o)))}return i}}function m(e){return i.mapSome(e,((e,t)=>t.requiresUniqueIdentity(e)))}function f(e){return i.mapFilter(e,((e,t)=>t.inIdentity))}function y(e,t){if(!m(t))return new p(e,[f(t)])}t.Type=d,t.primitiveTypeIdentity=y;function g(e,t){if(!m(e))return new p("array",[f(e),t])}t.PrimitiveType=class extends d{get isNullable(){return"null"===this.kind||"any"===this.kind||"none"===this.kind}isPrimitive(){return!0}getNonAttributeChildren(){return new Set}get identity(){return y(this.kind,this.getAttributes())}reconstitute(e){e.getPrimitiveType(this.kind)}structuralEqualityStep(e,t,n){return!0}},t.arrayTypeIdentity=g;t.ArrayType=class extends d{constructor(e,t,n){super(e,t,"array"),this._itemsRef=n}setItems(e){if(void 0!==this._itemsRef)return r.panic("Can only set array items once");this._itemsRef=e}getItemsRef(){return void 0===this._itemsRef?r.panic("Array items accessed before they were set"):this._itemsRef}get items(){return a.derefTypeRef(this.getItemsRef(),this.graph)}getNonAttributeChildren(){return new Set([this.items])}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return g(this.getAttributes(),this.getItemsRef())}reconstitute(e){const t=this.getItemsRef(),n=e.lookup(t);void 0===n?(e.getUniqueArrayType(),e.setArrayItems(e.reconstitute(this.getItemsRef()))):e.getArrayType(n)}structuralEqualityStep(e,t,n){return n(this.items,e.items)}};class _{constructor(e,t){this.typeData=e,this.isOptional=t}equals(e){return e instanceof _&&(i.areEqual(this.typeData,e.typeData)&&this.isOptional===e.isOptional)}hashCode(){return i.hashCodeOf(this.typeData)+(this.isOptional?17:23)}}t.GenericClassProperty=_;function v(e,t,n,i){if(!m(t))return new p(e,[f(t),n,i])}t.ClassProperty=class extends _{constructor(e,t,n){super(e,n),this.graph=t}get typeRef(){return this.typeData}get type(){return a.derefTypeRef(this.typeRef,this.graph)}},t.classTypeIdentity=function(e,t){return v("class",e,t,void 0)},t.mapTypeIdentify=function(e,t){return v("map",e,new Map,t)};class b extends d{constructor(e,t,n,i,s,o){super(e,t,n),this.isFixed=i,this._properties=s,this._additionalPropertiesRef=o,"map"===n?(void 0!==s&&r.assert(0===s.size),r.assert(!i)):"class"===n?r.assert(void 0===o):r.assert(i)}setProperties(e,t){r.assert(void 0===this._properties,"Tried to set object properties twice"),this instanceof w&&r.assert(0===e.size,"Cannot set properties on map type"),this instanceof T&&r.assert(void 0===t,"Cannot set additional properties of class type"),this._properties=e,this._additionalPropertiesRef=t}getProperties(){return r.defined(this._properties)}getSortedProperties(){return i.mapSortByKey(this.getProperties())}getAdditionalPropertiesRef(){return r.assert(void 0!==this._properties,"Properties are not set yet"),this._additionalPropertiesRef}getAdditionalProperties(){const e=this.getAdditionalPropertiesRef();if(void 0!==e)return a.derefTypeRef(e,this.graph)}getNonAttributeChildren(){const e=i.mapSortToArray(this.getProperties(),((e,t)=>t)).map((e=>{let[t,n]=e;return n.type})),t=this.getAdditionalProperties();return void 0!==t&&e.push(t),new Set(e)}get isNullable(){return!1}isPrimitive(){return!1}get identity(){if(!this.isFixed)return v(this.kind,this.getAttributes(),this.getProperties(),this.getAdditionalPropertiesRef())}reconstitute(e,t){const n=this.getSortedProperties(),s=t?n:this.getProperties(),o=e.lookupMap(i.mapMap(n,(e=>e.typeRef))),a=i.definedMap(this._additionalPropertiesRef,(t=>e.lookup(t)));if(void 0===o||void 0===a&&void 0!==this._additionalPropertiesRef){switch(this.kind){case"object":r.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 r.panic("Invalid object type kind ".concat(this.kind))}const t=i.mapMap(n,(t=>e.reconstitute(t.typeRef))),o=i.mapMap(s,((n,i)=>e.makeClassProperty(r.defined(t.get(i)),n.isOptional))),a=i.definedMap(this._additionalPropertiesRef,(t=>e.reconstitute(t)));e.setObjectProperties(o,a)}else{const t=i.mapMap(s,((t,n)=>e.makeClassProperty(r.defined(o.get(n)),t.isOptional)));switch(this.kind){case"object":r.assert(this.isFixed),e.getObjectType(t,a);break;case"map":e.getMapType(r.defined(a));break;case"class":this.isFixed?e.getUniqueClassType(!0,t):e.getClassType(t);break;default:return r.panic("Invalid object type kind ".concat(this.kind))}}}structuralEqualityStep(e,t,n){const i=this.getProperties(),r=e.getProperties();if(i.size!==r.size)return!1;let s=!1;for(const[u,l]of i){const e=r.get(u);if(void 0===e||l.isOptional!==e.isOptional||!n(l.type,e.type))return s=!0,!1}if(s)return!1;const o=this.getAdditionalProperties(),a=e.getAdditionalProperties();return void 0===o===(void 0===a)&&(void 0===o||void 0===a||n(o,a))}}t.ObjectType=b;class T extends b{constructor(e,t,n,i){super(e,t,"class",n,i,void 0)}}t.ClassType=T;class w extends b{constructor(e,t,n){super(e,t,"map",!1,i.definedMap(n,(()=>new Map)),n)}get values(){return r.defined(this.getAdditionalProperties())}}function k(e,t){if(!m(e))return new p("enum",[f(e),t])}t.MapType=w,t.enumTypeIdentity=k;function S(e,t,n,r){const s=i.toReadonlySet(e),o=i.toReadonlySet(t);return s.size===o.size&&i.iterableEvery(s,(e=>{const t=i.iterableFind(o,(t=>t.kind===e.kind));if(void 0!==t&&r(e,t))return!0;if(n){if("integer"===e.kind&&i.iterableSome(o,(e=>"double"===e.kind)))return!0;if("double"===e.kind&&i.iterableSome(o,(e=>"integer"===e.kind)))return!0}return!1}))}function L(e,t,n){if(!m(t))return new p(e,[f(t),n])}t.EnumType=class extends d{constructor(e,t,n){super(e,t,"enum"),this.cases=n}get isNullable(){return!1}isPrimitive(){return!1}get identity(){return k(this.getAttributes(),this.cases)}getNonAttributeChildren(){return new Set}reconstitute(e){e.getEnumType(this.cases)}structuralEqualityStep(e,t,n){return i.areEqual(this.cases,e.cases)}},t.setOperationCasesEqual=S,t.setOperationTypeIdentity=L,t.unionTypeIdentity=function(e,t){return L("union",e,t)},t.intersectionTypeIdentity=function(e,t){return L("intersection",e,t)};class N extends d{constructor(e,t,n,i){super(e,t,n),this._memberRefs=i}setMembers(e){if(void 0!==this._memberRefs)return r.panic("Can only set map members once");this._memberRefs=e}getMemberRefs(){return void 0===this._memberRefs?r.panic("Map members accessed before they were set"):this._memberRefs}get members(){return i.setMap(this.getMemberRefs(),(e=>a.derefTypeRef(e,this.graph)))}get sortedMembers(){return this.getNonAttributeChildren()}getNonAttributeChildren(){return i.setSortBy(this.members,(e=>e.kind))}isPrimitive(){return!1}get identity(){return L(this.kind,this.getAttributes(),this.getMemberRefs())}reconstituteSetOperation(e,t,n){const s=i.mapMap(this.sortedMembers.entries(),(e=>e.typeRef)),o=t?this.sortedMembers:this.members,a=e.lookupMap(s);if(void 0===a){n(void 0);const t=e.reconstituteMap(s);e.setSetOperationMembers(i.setMap(o,(e=>r.defined(t.get(e)))))}else n(i.setMap(o,(e=>r.defined(a.get(e)))))}structuralEqualityStep(e,t,n){return S(this.members,e.members,t,n)}}t.SetOperationType=N;t.IntersectionType=class extends N{constructor(e,t,n){super(e,t,"intersection",n)}get isNullable(){return r.panic("isNullable not implemented for IntersectionType")}reconstitute(e,t){this.reconstituteSetOperation(e,t,(t=>{void 0===t?e.getUniqueIntersectionType():e.getIntersectionType(t)}))}};t.UnionType=class extends N{constructor(e,t,n){super(e,t,"union",n),void 0!==n&&o.messageAssert(n.size>0,"IRNoEmptyUnions",{})}setMembers(e){o.messageAssert(e.size>0,"IRNoEmptyUnions",{}),super.setMembers(e)}get stringTypeMembers(){return i.setFilter(this.members,(e=>l(e.kind)||"enum"===e.kind))}findMember(e){return i.iterableFind(this.members,(t=>t.kind===e))}get isNullable(){return void 0!==this.findMember("null")}get isCanonical(){const e=this.members;if(e.size<=1)return!1;const t=i.setMap(e,(e=>e.kind));if(t.size<e.size)return!1;if(t.has("union")||t.has("intersection"))return!1;if(t.has("none")||t.has("any"))return!1;if(t.has("string")&&t.has("enum"))return!1;let n=0;return t.has("class")&&(n+=1),t.has("map")&&(n+=1),t.has("object")&&(n+=1),!(n>1)}reconstitute(e,t){this.reconstituteSetOperation(e,t,(t=>{void 0===t?e.getUniqueUnionType():e.getUnionType(t)}))}}},35096:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32351),o=n(62800),a=n(78920),u=n(20859);class l extends o.TypeAttributeKind{constructor(){super("provenance")}appliesToTypeKind(e){return!0}combine(e){return i.setUnionManyInto(new Set,e)}makeInferred(e){return e}stringify(e){return Array.from(e).sort().map((e=>e.toString())).join(",")}}function c(e,t){const n=e.get(t);return void 0===n?"string":n}let h;t.provenanceTypeAttributeKind=new l,t.stringTypeMappingGet=c,t.getNoStringTypeMapping=function(){return void 0===h&&(h=new Map(Array.from(r.transformedStringTypeKinds).map((e=>[e,e])))),h};t.TypeBuilder=class{constructor(e,t,n,r,o,u){this._stringTypeMapping=t,this.canonicalOrder=n,this._allPropertiesOptional=r,this._addProvenanceAttributes=o,this.topLevels=new Map,this.types=[],this.typeAttributes=[],this._addedForwardingIntersection=!1,this._typeForIdentity=new i.EqualityMap,a.assert(!o||!u,"We can't both inherit as well as add provenance"),this.typeGraph=new s.TypeGraph(this,e,o||u)}addTopLevel(e,t){a.assert(!this.topLevels.has(e),"Trying to add top-level with existing name"),a.assert(void 0!==this.types[s.typeRefIndex(t)],"Trying to add a top-level type that doesn't exist (yet?)"),this.topLevels.set(e,t)}reserveTypeRef(){const e=this.types.length;this.types.push(void 0);const n=s.makeTypeRef(this.typeGraph,e),i=this._addProvenanceAttributes?t.provenanceTypeAttributeKind.makeAttributes(new Set([e])):o.emptyTypeAttributes;return this.typeAttributes.push(i),n}assertTypeRefGraph(e){void 0!==e&&s.assertTypeRefGraph(e,this.typeGraph)}assertTypeRefSetGraph(e){void 0!==e&&e.forEach((e=>this.assertTypeRefGraph(e)))}filterTypeAttributes(e,t){const n=i.mapFilter(t,((t,n)=>n.appliesToTypeKind(e.kind)));return t.size!==n.size&&this.setLostTypeAttributes(),n}commitType(e,t){this.assertTypeRefGraph(e);const n=s.typeRefIndex(e);a.assert(void 0===this.types[n],"A type index was committed twice"),this.types[n]=t,this.typeAttributes[n]=this.filterTypeAttributes(t,this.typeAttributes[n])}addType(e,t,n){void 0!==e&&(this.assertTypeRefGraph(e),a.assert(void 0===this.types[s.typeRefIndex(e)]));const i=void 0!==e?e:this.reserveTypeRef();if(void 0!==n){const e=s.typeRefIndex(i);this.typeAttributes[e]=o.combineTypeAttributes("union",this.typeAttributes[e],n)}const r=t(i);return this.commitType(i,r),i}typeAtIndex(e){const t=this.types[e];return void 0===t?a.panic("Trying to deref an undefined type in a type builder"):t}atIndex(e){return[this.typeAtIndex(e),this.typeAttributes[e]]}addAttributes(e,t){this.assertTypeRefGraph(e);const n=s.typeRefIndex(e),r=this.typeAttributes[n];a.assert(i.iterableEvery(t,(e=>{let[t,n]=e;if(!t.inIdentity)return!0;const s=r.get(t);return void 0!==s&&i.areEqual(s,n)})),"Can't add different identity type attributes to an existing type");const u=this.types[n];void 0!==u&&(t=this.filterTypeAttributes(u,t));const l=i.mapFilter(t,((e,t)=>!t.inIdentity));this.typeAttributes[n]=o.combineTypeAttributes("union",r,l)}finish(){return this.typeGraph.freeze(this.topLevels,this.types.map(a.defined),this.typeAttributes),this.typeGraph}addForwardingIntersection(e,t){return this.assertTypeRefGraph(t),this._addedForwardingIntersection=!0,this.addType(e,(e=>new r.IntersectionType(e,this.typeGraph,new Set([t]))),void 0)}forwardIfNecessary(e,t){if(void 0!==t)return void 0===e?t:this.addForwardingIntersection(e,t)}get didAddForwardingIntersection(){return this._addedForwardingIntersection}registerTypeForIdentity(e,t){void 0!==e&&this._typeForIdentity.set(e,t)}makeIdentity(e){return e()}getOrAddType(e,t,n,r){const s=this.makeIdentity(e);let o;if(o=void 0===s?void 0:this._typeForIdentity.get(s),void 0!==o){const e=this.forwardIfNecessary(r,o);return void 0!==n&&this.addAttributes(e,i.mapFilter(n,((e,t)=>!t.inIdentity))),e}const a=this.addType(r,t,n);return this.registerTypeForIdentity(s,a),a}registerType(e){this.registerTypeForIdentity(e.identity,e.typeRef)}getPrimitiveType(e,t,n){const s=i.withDefault(t,o.emptyTypeAttributes);let a="string"===e?void 0:u.StringTypes.unrestricted;return r.isPrimitiveStringTypeKind(e)&&"string"!==e&&(e=c(this._stringTypeMapping,e)),"string"===e?this.getStringType(s,a,n):this.getOrAddType((()=>r.primitiveTypeIdentity(e,s)),(t=>new r.PrimitiveType(t,this.typeGraph,e)),s,n)}getStringType(e,t,n){const s=i.mapFind(e,((e,t)=>t===u.stringTypesTypeAttributeKind));return a.assert(void 0===t!==(void 0===s),"Must instantiate string type with one enum case attribute"),void 0===s&&(e=o.combineTypeAttributes("union",e,u.stringTypesTypeAttributeKind.makeAttributes(a.defined(t)))),this.getOrAddType((()=>r.primitiveTypeIdentity("string",e)),(e=>new r.PrimitiveType(e,this.typeGraph,"string")),e,n)}getEnumType(e,t,n){return this.getOrAddType((()=>r.enumTypeIdentity(e,t)),(e=>new r.EnumType(e,this.typeGraph,t)),e,n)}makeClassProperty(e,t){return new r.ClassProperty(e,this.typeGraph,t)}getUniqueObjectType(e,t,n,s){return this.assertTypeRefGraph(n),t=i.definedMap(t,(e=>this.modifyPropertiesIfNecessary(e))),this.addType(s,(e=>new r.ObjectType(e,this.typeGraph,"object",!0,t,n)),e)}getUniqueMapType(e){return this.addType(e,(e=>new r.MapType(e,this.typeGraph,void 0)),void 0)}getMapType(e,t,n){return this.assertTypeRefGraph(t),this.getOrAddType((()=>r.mapTypeIdentify(e,t)),(e=>new r.MapType(e,this.typeGraph,t)),e,n)}setObjectProperties(e,t,n){this.assertTypeRefGraph(n);const i=s.derefTypeRef(e,this.typeGraph);if(!(i instanceof r.ObjectType))return a.panic("Tried to set properties of non-object type");i.setProperties(this.modifyPropertiesIfNecessary(t),n),this.registerType(i)}getUniqueArrayType(e){return this.addType(e,(e=>new r.ArrayType(e,this.typeGraph,void 0)),void 0)}getArrayType(e,t,n){return this.assertTypeRefGraph(t),this.getOrAddType((()=>r.arrayTypeIdentity(e,t)),(e=>new r.ArrayType(e,this.typeGraph,t)),e,n)}setArrayItems(e,t){this.assertTypeRefGraph(t);const n=s.derefTypeRef(e,this.typeGraph);if(!(n instanceof r.ArrayType))return a.panic("Tried to set items of non-array type");n.setItems(t),this.registerType(n)}modifyPropertiesIfNecessary(e){return e.forEach((e=>this.assertTypeRefGraph(e.typeRef))),this.canonicalOrder&&(e=i.mapSortByKey(e)),this._allPropertiesOptional&&(e=i.mapMap(e,(e=>this.makeClassProperty(e.typeRef,!0)))),e}getClassType(e,t,n){return t=this.modifyPropertiesIfNecessary(t),this.getOrAddType((()=>r.classTypeIdentity(e,t)),(e=>new r.ClassType(e,this.typeGraph,!1,t)),e,n)}getUniqueClassType(e,t,n,s){return n=i.definedMap(n,(e=>this.modifyPropertiesIfNecessary(e))),this.addType(s,(e=>new r.ClassType(e,this.typeGraph,t,n)),e)}getUnionType(e,t,n){return this.assertTypeRefSetGraph(t),this.getOrAddType((()=>r.unionTypeIdentity(e,t)),(e=>new r.UnionType(e,this.typeGraph,t)),e,n)}getUniqueUnionType(e,t,n){return this.assertTypeRefSetGraph(t),this.addType(n,(e=>new r.UnionType(e,this.typeGraph,t)),e)}getIntersectionType(e,t,n){return this.assertTypeRefSetGraph(t),this.getOrAddType((()=>r.intersectionTypeIdentity(e,t)),(e=>new r.IntersectionType(e,this.typeGraph,t)),e,n)}getUniqueIntersectionType(e,t,n){return this.assertTypeRefSetGraph(t),this.addType(n,(e=>new r.IntersectionType(e,this.typeGraph,t)),e)}setSetOperationMembers(e,t){this.assertTypeRefSetGraph(t);const n=s.derefTypeRef(e,this.typeGraph);if(!(n instanceof r.UnionType||n instanceof r.IntersectionType))return a.panic("Tried to set members of non-set-operation type");n.setMembers(t),this.registerType(n)}setLostTypeAttributes(){}}},32351:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(78920),a=n(35096),u=n(26488),l=n(94418),c=n(1143),h=n(62800),p=n(59551),d=26,m=(1<<d)-1,f=(1<<31-d)-1;function y(e){return e&m}function g(e,t){o.assert((e>>d&f)===(t.serial&f),"Mixing the wrong type reference and graph")}function _(e){return e instanceof w?e:e.originalGraph}function v(e,t){const n=_(t);return g(e,n),n.typeAtIndex(y(e))}t.isTypeRef=function(e){return"number"===typeof e},t.makeTypeRef=function(e,t){return o.assert(t<=m,"Too many types in graph"),(e.serial&f)<<d|t},t.typeRefIndex=y,t.assertTypeRefGraph=g,t.derefTypeRef=v,t.attributesForTypeRef=function(e,t){const n=_(t);return g(e,n),n.atIndex(y(e))[1]},t.typeAndAttributesForTypeRef=function(e,t){const n=_(t);return g(e,n),n.atIndex(y(e))};class b{constructor(e,t){this._typeGraph=e,this._values=t,this._topLevelValues=new Map}getTypeIndex(e){const t=e.typeRef;return g(t,this._typeGraph),y(t)}attributesForType(e){const t=this.getTypeIndex(e),n=this._values[t];return void 0!==n?n:h.emptyTypeAttributes}attributesForTopLevel(e){const t=this._topLevelValues.get(e);return void 0!==t?t:h.emptyTypeAttributes}setInMap(e,t,n){return new Map(e).set(t,n)}set(e,t,n){const i=this.getTypeIndex(t);for(;i>=this._values.length;)this._values.push(void 0);this._values[i]=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)}}t.TypeAttributeStore=b;class T{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 o.defined(this.tryGet(e))}tryGetForTopLevel(e){return this._attributeStore.tryGetForTopLevel(this._definition,e)}getForTopLevel(e){return o.defined(this.tryGetForTopLevel(e))}}t.TypeAttributeStoreView=T;class w{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 void 0===this._typeBuilder}get attributeStore(){return o.defined(this._attributeStore)}freeze(e,t,n){o.assert(!this.isFrozen,"Tried to freeze TypeGraph a second time");for(const i of t)g(i.typeRef,this);this._attributeStore=new b(this,n),this._types=t,this._typeBuilder=void 0,this._topLevels=i.mapMap(e,(e=>v(e,this)))}get topLevels(){return o.assert(this.isFrozen,"Cannot get top-levels from a non-frozen graph"),this._topLevels}typeAtIndex(e){return void 0!==this._typeBuilder?this._typeBuilder.typeAtIndex(e):o.defined(this._types)[e]}atIndex(e){if(void 0!==this._typeBuilder)return this._typeBuilder.atIndex(e);const t=this.typeAtIndex(e);return[t,o.defined(this._attributeStore).attributesForType(t)]}filterTypes(e){const t=new Set;let n=[];function i(r){if(t.has(r))return;t.add(r);(void 0===e||e(r))&&n.push(r);for(const e of r.getChildren())i(e)}for(const[,r]of this.topLevels)i(r);return new Set(n)}allNamedTypes(){return this.filterTypes(s.isNamedType)}allNamedTypesSeparated(){const e=this.allNamedTypes();return s.separateNamedTypes(e)}allProvenance(){o.assert(this._haveProvenanceAttributes);const e=new T(this.attributeStore,a.provenanceTypeAttributeKind),t=Array.from(this.allTypesUnordered()).map((t=>{const n=e.tryGet(t);return void 0!==n?n:new Set})),n=new Set;return i.setUnionManyInto(n,t),n}setPrintOnRewrite(){this._printOnRewrite=!0}checkLostTypeAttributes(e,t){if(!this._haveProvenanceAttributes||e.lostTypeAttributes)return;const n=this.allProvenance(),r=t.allProvenance();if(n.size!==r.size){const e=i.setSubtract(n,r),t=Array.from(e);return p.messageError("IRTypeAttributesNotPropagated",{count:e.size,indexes:t})}}printRewrite(e){this._printOnRewrite&&console.log("\n# ".concat(e))}rewrite(e,t,n,i,r,s){let o=arguments.length>6&&void 0!==arguments[6]&&arguments[6];if(this.printRewrite(e),!o&&0===i.length)return this;const a=new u.GraphRewriteBuilder(this,t,n,this._haveProvenanceAttributes,i,r,s),l=a.finish();return this.checkLostTypeAttributes(a,l),this._printOnRewrite&&(l.setPrintOnRewrite(),l.printGraph()),a.didAddForwardingIntersection?k(l,t,r):l}remap(e,t,n,i,r){let s=arguments.length>5&&void 0!==arguments[5]&&arguments[5];if(this.printRewrite(e),!s&&0===i.size)return this;const a=new u.GraphRemapBuilder(this,t,n,this._haveProvenanceAttributes,i,r),l=a.finish();return this.checkLostTypeAttributes(a,l),this._printOnRewrite&&(l.setPrintOnRewrite(),l.printGraph()),o.assert(!a.didAddForwardingIntersection),l}garbageCollect(e,t){return this.remap("GC",a.getNoStringTypeMapping(),e,new Map,t,!0)}rewriteFixedPoint(e,t){let n=this;for(;;){const i=this.rewrite("fixed-point",a.getNoStringTypeMapping(),e,[],t,o.mustNotHappen,!0);if(n.allTypesUnordered().size===i.allTypesUnordered().size)return n;n=i}}allTypesUnordered(){return o.assert(this.isFrozen,"Tried to get all graph types before it was frozen"),new Set(o.defined(this._types))}makeGraph(e,t){return new c.Graph(o.defined(this._types),e,t)}getParentsOfType(e){if(g(e.typeRef,this),void 0===this._parents){const e=o.defined(this._types).map((e=>new Set));for(const t of this.allTypesUnordered())for(const n of t.getChildren()){const i=n.index;e[i]=e[i].add(t)}this._parents=e}return this._parents[e.index]}printGraph(){const e=o.defined(this._types);for(let t=0;t<e.length;t++){const n=e[t],i=[];i.push("".concat(n.debugPrintKind).concat(n.hasNames?" ".concat(n.getCombinedName()):""));const r=n.getChildren();r.size>0&&i.push("children ".concat(Array.from(r).map((e=>e.index)).join(",")));for(const[e,t]of n.getAttributes()){const n=e.stringify(t);void 0!==n&&i.push(n)}console.log("".concat(t,": ").concat(i.join(" | ")))}}}function k(e,t,n){const s=[];for(const a of e.allTypesUnordered()){if(!(a instanceof r.IntersectionType))continue;const e=new Set([a]);let t=a;for(;1===t.members.size;){const n=o.defined(i.iterableFirst(t.members));if(!(n instanceof r.IntersectionType)){s.push([a,n]);break}if(e.has(n))return o.panic("There's a cycle of intersection types");e.add(n),t=n}}return e.remap("remove indirection intersections",t,!1,new Map(s),n)}t.TypeGraph=w,t.noneToAny=function(e,t,n){const r=i.setFilter(e.allTypesUnordered(),(e=>"none"===e.kind));return 0===r.size?e:(o.assert(1===r.size,"Cannot have more than one none type"),e.rewrite("none to any",t,!1,[Array.from(r)],n,((e,t,n)=>{const i=s.combineTypeAttributesOfTypes("union",e);return t.getPrimitiveType("any",i,n)})))},t.optionalToNullable=function(e,t,n){const s=i.setFilter(e.allTypesUnordered(),(e=>e instanceof r.ClassType&&i.mapSome(e.getProperties(),(e=>e.isOptional)))),a=Array.from(s).map((e=>[e]));return 0===s.size?e:e.rewrite("optional to nullable",t,!1,a,n,((e,t,n)=>{o.assert(1===e.size);return function(e,t,n){const s=i.mapMap(e.getProperties(),((e,n)=>{const s=e.type;let o;if(!e.isOptional||s.isNullable)o=t.reconstituteType(s);else{const e=t.getPrimitiveType("null");let a;a=s instanceof r.UnionType?i.setMap(s.members,(e=>t.reconstituteType(e))).add(e):new Set([t.reconstituteType(s),e]);const u=l.namesTypeAttributeKind.setDefaultInAttributes(s.getAttributes(),(()=>l.TypeNames.make(new Set([n]),new Set,!0)));o=t.getUnionType(u,a)}return t.makeClassProperty(o,e.isOptional)}));return e.isFixed?t.getUniqueClassType(e.getAttributes(),!0,s,n):t.getClassType(e.getAttributes(),s,n)}(o.defined(i.iterableFirst(e)),t,n)}))},t.removeIndirectionIntersections=k},32866:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920),s=n(62800),o=n(41283),a=n(20859);function u(e,t){const n=Array.isArray(e)?e:[e],i=n[0].kind,r="intersection"!==i,o=new Set,a=new Set;let u=s.emptyTypeAttributes;function l(e){if(e.kind===i){const n=e;if(o.has(n))return;o.add(n),void 0!==t&&(u=s.combineTypeAttributes(t,u,e.getAttributes()));for(const e of n.members)l(e)}else r||"any"!==e.kind?a.add(e):void 0!==t&&(u=s.combineTypeAttributes(t,u,e.getAttributes()))}for(const s of n)l(s);return[a,u]}function l(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];function n(e){return!1===t?e:!0===t?i.setSortBy(e,(e=>e.kind)):i.setSortBy(e,t)}const r=e.findMember("null");return void 0===r?[null,n(e.members)]:[r,n(i.setFilter(e.members,(e=>"null"!==e.kind)))]}function c(e){return"null"===e.kind?[e,new Set]:e instanceof o.UnionType?l(e):[null,new Set([e])]}function h(e){const[t,n]=l(e);return null===t||1!==n.size?null:r.defined(i.iterableFirst(n))}function p(e){return["class","union","enum","object"].indexOf(e.kind)>=0}function d(e,t){const n=t(e);return null!==n?n:i.setUnion(...Array.from(e.getNonAttributeChildren()).map((e=>d(e,t))))}function m(e,t,n,i,s,a,u,l,c,h,p,d,m,f,y){if(e.isPrimitive()){if(o.isPrimitiveStringTypeKind(e.kind))return"string"===e.kind?l(e):y(e);const c={none:t,any:n,null:i,bool:s,integer:a,double:u}[e.kind];return void 0!==c?c(e):r.assertNever(c)}return e instanceof o.ArrayType?c(e):e instanceof o.ClassType?h(e):e instanceof o.MapType?p(e):e instanceof o.ObjectType?d(e):e instanceof o.EnumType?m(e):e instanceof o.UnionType?f(e):r.panic("Unknown type ".concat(e.kind))}t.assertIsObject=function(e){return e instanceof o.ObjectType?e:r.panic("Supposed object type is not an object type")},t.assertIsClass=function(e){return e instanceof o.ClassType?e:r.panic("Supposed class type is not a class type")},t.setOperationMembersRecursively=u,t.makeGroupsToFlatten=function(e,t){const n=new i.EqualityMap;for(const s of e){const e=new Set(u(s,void 0)[0]);if(void 0!==t&&!t(e))continue;let o=n.get(e);void 0===o&&(o=new Set,1===e.size&&o.add(r.defined(i.iterableFirst(e)))),o.add(s),n.set(e,o)}return Array.from(n.values()).map((e=>Array.from(e)))},t.combineTypeAttributesOfTypes=function(e,t){return s.combineTypeAttributes(e,Array.from(t).map((e=>e.getAttributes())))},t.isAnyOrNull=function(e){return"any"===e.kind||"null"===e.kind},t.removeNullFromUnion=l,t.removeNullFromType=c,t.nullableFromUnion=h,t.nonNullTypeCases=function(e){return c(e)[1]},t.getNullAsOptional=function(e){const[t,n]=c(e.type);return e.isOptional?[!0,n]:[null!==t,n]},t.isNamedType=p,t.separateNamedTypes=function(e){return{objects:i.setFilter(e,(e=>"object"===e.kind||"class"===e.kind)),enums:i.setFilter(e,(e=>e instanceof o.EnumType)),unions:i.setFilter(e,(e=>e instanceof o.UnionType))}},t.directlyReachableTypes=d,t.directlyReachableSingleNamedType=function(e){const t=d(e,(e=>!(e instanceof o.UnionType)&&p(e)||e instanceof o.UnionType&&null===h(e)?new Set([e]):null));return r.assert(t.size<=1,"Cannot have more than one defined type per top-level"),i.iterableFirst(t)},t.stringTypesForType=function(e){r.assert("string"===e.kind,"Only strings can have string types");const t=a.stringTypesTypeAttributeKind.tryGetInAttributes(e.getAttributes());return void 0===t?r.panic("All strings must have a string type attribute"):t},t.matchTypeExhaustive=m,t.matchType=function(e,t,n,i,s,o,a,u,l,c,h,p,d){function f(e){return r.panic("Unsupported type ".concat(e.kind," in non-exhaustive match"))}return m(e,f,t,n,i,s,o,a,u,l,c,f,h,p,d||f)},t.matchCompoundType=function(e,t,n,i,r,s){function o(e){}return m(e,o,o,o,o,o,o,o,t,n,i,r,o,s,o)}},28846:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(50485),a=n(78920),u=n(62800),l=n(32351);class c extends o.UnionBuilder{constructor(e,t,n,i){super(e),this._makeObjectTypes=t,this._makeClassesFixed=n,this._unifyTypes=i}makeObject(e,t,n){const r=this.typeBuilder.lookupTypeRefs(e,n);if(void 0!==r)return a.assert(void 0===n||r===n,"The forwarding ref must be consumed"),this.typeBuilder.addAttributes(r,t),r;if(1===e.length)return this.typeBuilder.reconstituteTypeRef(e[0],t,n);const o=e.map((e=>s.assertIsObject(l.derefTypeRef(e,this.typeBuilder)))),{hasProperties:u,hasAdditionalProperties:c,hasNonAnyAdditionalProperties:h}=function(e){let t=!1,n=!1,i=!1;for(const r of e){r.getProperties().size>0&&(t=!0);const e=r.getAdditionalProperties();void 0!==e&&(n=!0,"any"!==e.kind&&(i=!0))}return{hasProperties:t,hasAdditionalProperties:n,hasNonAnyAdditionalProperties:i}}(o);if(!this._makeObjectTypes&&(h||!u&&c)){const e=new Set;for(const t of o)i.setUnionInto(e,Array.from(t.getProperties().values()).map((e=>e.typeRef)));const n=new Set(o.filter((e=>void 0!==e.getAdditionalProperties())).map((e=>a.defined(e.getAdditionalProperties()).typeRef)));return i.setUnionInto(e,n),this.typeBuilder.getMapType(t,this._unifyTypes(Array.from(e)))}{const[e,r,s]=function(e,t,n){let r=new Set;for(const l of e)i.setUnionInto(r,l.getProperties().keys());let s,o=Array.from(r).map((e=>[e,new Set,!1]));for(const i of e){let e=i.getAdditionalProperties();void 0!==e&&(void 0===s&&(s=new Set),void 0!==e&&s.add(e));for(let t=0;t<o.length;t++){let[n,r,s]=o[t];const a=i.getProperties().get(n);void 0===a?(s=!0,void 0!==e&&"any"!==e.kind&&r.add(e)):(a.isOptional&&(s=!0),r.add(a.type)),o[t][2]=s}}const a=void 0===s?void 0:n(s),u=o.map((e=>{let[i,r,s]=e;return[i,t.makeClassProperty(n(r),s)]}));return[new Map(u),a,!1]}(o,this.typeBuilder,(e=>(a.assert(e.size>0,"Property has no type"),this._unifyTypes(Array.from(e).map((e=>e.typeRef))))));return s&&this.typeBuilder.setLostTypeAttributes(),this._makeObjectTypes?this.typeBuilder.getUniqueObjectType(t,e,r,n):(a.assert(void 0===r,"We have additional properties but want to make a class"),this.typeBuilder.getUniqueClassType(t,this._makeClassesFixed,e,n))}}makeArray(e,t,n){return this.typeBuilder.getArrayType(t,this._unifyTypes(e),n)}}function h(e,t,n,s,l,c){if(t=n.reconstituteTypeAttributes(t),0===e.size)return a.panic("Cannot unify empty set of types");if(1===e.size){const s=a.defined(i.iterableFirst(e));if(!(s instanceof r.UnionType))return n.reconstituteTypeRef(s.typeRef,t,c)}const h=Array.from(e).map((e=>e.typeRef)),p=n.lookupTypeRefs(h,c);if(void 0!==p)return n.addAttributes(p,t),p;const d=new o.TypeRefUnionAccumulator(l),m=n.reconstituteTypeAttributes(d.addTypes(e));return t=u.combineTypeAttributes("union",t,m),n.withForwardingRef(c,(e=>(n.registerUnion(h,e),s.buildUnion(d,!1,t,e))))}t.UnifyUnionBuilder=c,t.unionBuilderForUnification=function e(t,n,i,r){return new c(t,n,i,(s=>h(new Set(s.map((e=>l.derefTypeRef(e,t)))),u.emptyTypeAttributes,t,e(t,n,i,r),r)))},t.unifyTypes=h},50485:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(62800),a=n(78920),u=n(20859);function l(e,t,n){e.set(t,function(e,t){return void 0===e?t:o.combineTypeAttributes("union",e,t)}(e.get(t),n))}function c(e,t,n){let i=e.get(t);void 0===i&&(i=[],e.set(t,i)),i.push(n)}function h(e){return i.mapMap(e,(e=>o.combineTypeAttributes("union",e)))}function p(e,t,n){const i=a.defined(e.get(t));e.delete(t),l(e,n,i)}class d{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){c(this._nonStringTypeAttributes,"any",e),this._lostTypeAttributes=!0}addPrimitive(e,t){a.assert("any"!==e,"any must be added with addAny"),c(this._nonStringTypeAttributes,e,t)}addFullStringType(e,t){let n;void 0===t?t=u.stringTypesTypeAttributeKind.tryGetInAttributes(e):n=u.stringTypesTypeAttributeKind.makeAttributes(t),void 0===t&&(t=u.StringTypes.unrestricted,n=u.stringTypesTypeAttributeKind.makeAttributes(t));const i=this._nonStringTypeAttributes.get("enum");t.isRestricted&&a.assert(void 0===i,"We can't add both an enum as well as a restricted string type to a union builder"),c(this._stringTypeAttributes,"string",e),void 0!==n&&c(this._stringTypeAttributes,"string",n)}addStringType(e,t,n){"string"!==e?(c(this._stringTypeAttributes,e,t),void 0!==n&&c(this._stringTypeAttributes,e,u.stringTypesTypeAttributeKind.makeAttributes(n))):this.addFullStringType(t,n)}addArray(e,t){this.arrayData.push(e),c(this._nonStringTypeAttributes,"array",t)}addObject(e,t){this.objectData.push(e),c(this._nonStringTypeAttributes,"object",t)}addEnum(e,t){void 0===this._stringTypeAttributes.get("string")?(c(this._nonStringTypeAttributes,"enum",t),i.setUnionInto(this._enumCases,e)):c(this._stringTypeAttributes,"string",t)}addStringCases(e,t){this.addFullStringType(t,u.StringTypes.fromCases(e))}addStringCase(e,t,n){this.addFullStringType(n,u.StringTypes.fromCase(e,t))}get enumCases(){return this._enumCases}getMemberKinds(){a.assert(!(this.have("enum")&&this.have("string")),"We can't have both strings and enums in the same union");let e=i.mapMerge(h(this._nonStringTypeAttributes),h(this._stringTypeAttributes));if(0===e.size)return new Map([["none",o.emptyTypeAttributes]]);if(this._nonStringTypeAttributes.has("any")){a.assert(this._lostTypeAttributes,"This had to be set when we added 'any'");const t=o.combineTypeAttributes("union",Array.from(e.values()));return new Map([["any",t]])}return this._conflateNumbers&&this.have("integer")&&this.have("double")&&p(e,"integer","double"),this.have("map")&&p(e,"map","class"),e}get lostTypeAttributes(){return this._lostTypeAttributes}}t.UnionAccumulator=d;class m{getAttributes(){return o.emptyTypeAttributes}}t.TypeRefUnionAccumulator=class extends d{addType(e,t){s.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=>a.panic("The unions should have been eliminated in attributesForTypesInUnion")),(e=>this.addStringType(e.kind,t)))}addTypes(e){const[t,n]=function(e){const t=new Map,n=new Map,s=new Set;let u=new Set;function l(e,o,a){if(e instanceof r.UnionType){s.add(e),a&&(u=u.add(e)),a=a&&1===e.members.size,o.push(e);for(const t of e.members)l(t,o,a);o.pop()}else{i.mapUpdateInto(t,e,(e=>void 0===e?new Set(o):i.setUnionInto(e,o)));for(const t of o)i.mapUpdateInto(n,t,(t=>void 0===t?new Set([e]):t.add(e)))}}const c=[new m],h=Array.from(e);for(const i of h)l(i,c,1===h.length);const p=i.mapMap(t,((e,t)=>{const i=Array.from(e).filter((e=>1===a.defined(n.get(e)).size));a.assert(i.every((e=>a.defined(n.get(e)).has(t))),"We messed up bookkeeping");const r=i.map((e=>e.getAttributes()));return o.combineTypeAttributes("union",[t.getAttributes()].concat(r))})),d=Array.from(s).map((e=>{const t=n.get(e);if(void 0!==t&&1===t.size)return o.emptyTypeAttributes;const i=e.getAttributes();return u.has(e)?i:o.makeTypeAttributesInferred(i)}));return[p,o.combineTypeAttributes("union",d)]}(e);for(const[i,r]of t)this.addType(i,r);return n}};t.UnionBuilder=class{constructor(e){this.typeBuilder=e}makeTypeOfKind(e,t,n,i){switch(t){case"string":return this.typeBuilder.getStringType(n,void 0,i);case"enum":return this.typeBuilder.getEnumType(n,e.enumCases,i);case"object":return this.makeObject(e.objectData,n,i);case"array":return this.makeArray(e.arrayData,n,i);default:return r.isPrimitiveTypeKind(t)?this.typeBuilder.getPrimitiveType(t,n,i):"union"===t||"class"===t||"map"===t||"intersection"===t?a.panic("getMemberKinds() shouldn't return ".concat(t)):a.assertNever(t)}}buildUnion(e,t,n,i){const r=e.getMemberKinds();if(e.lostTypeAttributes&&this.typeBuilder.setLostTypeAttributes(),1===r.size){const[[t,s]]=Array.from(r),a=o.combineTypeAttributes("union",n,o.increaseTypeAttributesDistance(s));return this.makeTypeOfKind(e,t,a,i)}const s=t?this.typeBuilder.getUniqueUnionType(n,void 0,i):void 0,a=[];for(const[o,l]of r)a.push(this.makeTypeOfKind(e,o,l,void 0));const u=new Set(a);return void 0!==s?(this.typeBuilder.setSetOperationMembers(s,u),s):this.typeBuilder.getUnionType(n,u,i)}}},59268:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(62800),s=n(78920),o=n(59551);class a extends r.TypeAttributeKind{constructor(){super("accessorNames")}makeInferred(e){}}function u(e,t){if("string"===typeof e)return[e,!1];const n=e.get(t);if(void 0!==n)return[n,!0];const i=e.get("*");return void 0!==i?[i,!1]:void 0}function l(e,t,n){const i=e.get(t);if(void 0!==i)return u(i,n)}t.accessorNamesTypeAttributeKind=new a,t.lookupKey=l,t.objectPropertyNames=function(e,n){const r=t.accessorNamesTypeAttributeKind.tryGetInAttributes(e.getAttributes()),s=e.getProperties();return void 0===r?i.mapMap(s,(e=>{})):i.mapMap(s,((e,t)=>l(r,t,n)))},t.enumCaseNames=function(e,n){const r=t.accessorNamesTypeAttributeKind.tryGetInAttributes(e.getAttributes());return void 0===r?i.mapMap(e.cases.entries(),(e=>{})):i.mapMap(e.cases.entries(),(e=>l(r,e,n)))},t.getAccessorName=function(e,t){const n=e.get(t);return void 0===n?[void 0,!1]:n};class c extends r.TypeAttributeKind{constructor(){super("unionIdentifier")}combine(e){return i.setUnionManyInto(new Set,e)}makeInferred(e){return new Set}}t.unionIdentifierTypeAttributeKind=new c;let h=0;function p(){const e=t.unionIdentifierTypeAttributeKind.makeAttributes(new Set([h]));return h+=1,e}t.makeUnionIdentifierAttribute=p;class d extends r.TypeAttributeKind{constructor(){super("unionMemberNames")}combine(e){const t=new Map;for(const n of e)i.mapMergeInto(t,n);return t}}function m(e,n){const r=s.defined(t.unionIdentifierTypeAttributeKind.tryGetInAttributes(e)),o=i.mapFromIterable(r,(e=>n));return t.unionMemberNamesTypeAttributeKind.makeAttributes(o)}function f(e){return"string"===typeof e||s.isStringMap(e,(e=>"string"===typeof e))}function y(e){return"string"===typeof e?e:i.mapFromObject(e)}function g(e){const t=s.checkStringMap(e,f);return i.mapMap(i.mapFromObject(t),y)}t.unionMemberNamesTypeAttributeKind=new d,t.makeUnionMemberNamesAttribute=m,t.unionMemberName=function(e,n,r){const s=t.unionIdentifierTypeAttributeKind.tryGetInAttributes(e.getAttributes());if(void 0===s)return[void 0,!1];const a=t.unionMemberNamesTypeAttributeKind.tryGetInAttributes(n.getAttributes());if(void 0===a)return[void 0,!1];const l=new Set,c=new Set;for(const t of s){const e=a.get(t);if(void 0===e)continue;const n=u(e,r);if(void 0===n)continue;const[i,s]=n;s?c.add(i):l.add(i)}let h,p,d=i.iterableFirst(c);if(void 0!==d)h=c.size,p=!0;else{if(d=i.iterableFirst(l),void 0===d)return[void 0,!1];h=l.size,p=!1}return o.messageAssert(1===h,"SchemaMoreThanOneUnionMemberName",{names:Array.from(l)}),[d,p]},t.makeAccessorNames=g,t.accessorNamesAttributeProducer=function(e,n,i,r){if("object"!==typeof e)return;const a=e["qt-accessors"];if(void 0!==a){if(void 0===r)return{forType:t.accessorNamesTypeAttributeKind.makeAttributes(g(a))};{const e=p(),t=s.checkArray(a,f);o.messageAssert(r.length===t.length,"SchemaWrongAccessorEntryArrayLength",{operation:"oneOf",ref:n.push("oneOf")});const i=t.map((t=>m(e,y(t))));return{forUnion:e,forCases:i}}}}},85101:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(62800),r=n(78920),s=n(59551);function o(e){const[t,n]=e;return"number"===typeof t&&"number"===typeof n&&t>n?s.messageError("MiscInvalidMinMaxConstraint",{min:t,max:n}):void 0!==t||void 0!==n?e:void 0}class a extends i.TypeAttributeKind{constructor(e,t,n,i){super(e),this._typeKinds=t,this._minSchemaProperty=n,this._maxSchemaProperty=i}get inIdentity(){return!0}combine(e){r.assert(e.length>0);let[t,n]=e[0];for(let i=1;i<e.length;i++){const[r,s]=e[i];t="number"===typeof t&&"number"===typeof r?Math.min(t,r):void 0,n="number"===typeof n&&"number"===typeof s?Math.max(n,s):void 0}return o([t,n])}intersect(e){r.assert(e.length>0);let[t,n]=e[0];for(let i=1;i<e.length;i++){const[r,s]=e[i];"number"===typeof t&&"number"===typeof r?t=Math.max(t,r):void 0===t&&(t=r),"number"===typeof n&&"number"===typeof s?n=Math.min(n,s):void 0===n&&(n=s)}return o([t,n])}makeInferred(e){}addToSchema(e,t,n){if(this._typeKinds.has(t.kind))return;const[i,r]=n;void 0!==i&&(e[this._minSchemaProperty]=i),void 0!==r&&(e[this._maxSchemaProperty]=r)}stringify(e){let[t,n]=e;return"".concat(t,"-").concat(n)}}function u(e,t,n){if("object"!==typeof e)return;let i,r;return"number"===typeof e[t]&&(i=e[t]),"number"===typeof e[n]&&(r=e[n]),void 0!==i||void 0!==r?[i,r]:void 0}t.MinMaxConstraintTypeAttributeKind=a,t.minMaxTypeAttributeKind=new a("minMax",new Set(["integer","double"]),"minimum","maximum"),t.minMaxLengthTypeAttributeKind=new a("minMaxLength",new Set(["string"]),"minLength","maxLength"),t.minMaxAttributeProducer=function(e,n,i){if(!i.has("number")&&!i.has("integer"))return;const r=u(e,"minimum","maximum");return void 0!==r?{forNumber:t.minMaxTypeAttributeKind.makeAttributes(r)}:void 0},t.minMaxLengthAttributeProducer=function(e,n,i){if(!i.has("string"))return;const r=u(e,"minLength","maxLength");return void 0!==r?{forString:t.minMaxLengthTypeAttributeKind.makeAttributes(r)}:void 0},t.minMaxValueForType=function(e){return t.minMaxTypeAttributeKind.tryGetInAttributes(e.getAttributes())},t.minMaxLengthForType=function(e){return t.minMaxLengthTypeAttributeKind.tryGetInAttributes(e.getAttributes())};class l extends i.TypeAttributeKind{constructor(){super("pattern")}get inIdentity(){return!0}combine(e){return r.assert(e.length>0),e.map((e=>"(".concat(e,")"))).join("|")}intersect(e){}makeInferred(e){}addToSchema(e,t,n){"string"===t.kind&&(e.pattern=n)}}t.PatternTypeAttributeKind=l,t.patternTypeAttributeKind=new l,t.patternAttributeProducer=function(e,n,i){if("object"!==typeof e)return;if(!i.has("string"))return;const r=e.pattern;return"string"===typeof r?{forString:t.patternTypeAttributeKind.makeAttributes(r)}:void 0},t.patternForType=function(e){return t.patternTypeAttributeKind.tryGetInAttributes(e.getAttributes())}},60087:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(62800),s=n(92775);function o(e,t){void 0!==t&&(e.description=Array.from(t).join("\n"))}t.addDescriptionToSchema=o;class a extends r.TypeAttributeKind{constructor(){super("description")}combine(e){return i.setUnionManyInto(new Set,e)}makeInferred(e){}addToSchema(e,t,n){o(e,n)}stringify(e){let t=i.iterableFirst(e);if(void 0!==t)return t.length>8&&(t="".concat(t.slice(0,5),"...")),e.size>1&&(t="".concat(t,", ...")),t}}t.descriptionTypeAttributeKind=new a;class u extends r.TypeAttributeKind{constructor(){super("propertyDescriptions")}combine(e){const t=new Map;for(const n of e)i.mapMergeWithInto(t,((e,t)=>i.setUnion(e,t)),n);return t}makeInferred(e){}stringify(e){if(0!==e.size)return"prop descs: ".concat(e.size)}}t.propertyDescriptionsTypeAttributeKind=new u,t.descriptionAttributeProducer=function(e,n,o){if("object"!==typeof e)return;let a=r.emptyTypeAttributes,u=r.emptyTypeAttributes;const l=n.path.length;if(o.has("object")||i.setSubtract(o,["null"]).size>1||void 0!==e.enum||l<2||((c=n.path[l-2]).kind!==s.PathElementKind.KeyOrIndex||"properties"!==c.key)){const n=e.description;"string"===typeof n&&(a=t.descriptionTypeAttributeKind.makeAttributes(new Set([n])))}var c;if(o.has("object")&&"object"===typeof e.properties){const n=i.mapFilterMap(i.mapFromObject(e.properties),(e=>{if("object"===typeof e){const t=e.description;if("string"===typeof t)return new Set([t])}}));n.size>0&&(u=t.propertyDescriptionsTypeAttributeKind.makeAttributes(n))}return{forType:a,forObject:u}}},97134:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59268),s=n(62800);class o extends s.TypeAttributeKind{constructor(){super("enumValues")}makeInferred(e){}}t.enumValuesTypeAttributeKind=new o,t.enumCaseValues=function(e,n){const s=t.enumValuesTypeAttributeKind.tryGetInAttributes(e.getAttributes());return void 0===s?i.mapMap(e.cases.entries(),(e=>{})):i.mapMap(e.cases.entries(),(e=>r.lookupKey(s,e,n)))},t.enumValuesAttributeProducer=function(e,n,i){if("object"!==typeof e)return;const s=e["qt-enum-values"];return void 0!==s?{forType:t.enumValuesTypeAttributeKind.makeAttributes(r.makeAccessorNames(s))}:void 0}},20859:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(62800),s=n(78920),o=n(35096);class a{constructor(e,t){this.cases=e,this.transformations=t,void 0===e&&s.assert(0===t.size,"We can't have an unrestricted string that also allows transformations")}static fromCase(e,t){return new a(new Map([[e,t]]),new Set)}static fromCases(e){const t={};for(const n of e)t[n]=1;return new a(new Map(e.map((e=>[e,1]))),new Set)}get isRestricted(){return void 0!==this.cases}union(e,t){if(void 0===this.cases)return this;const n=new Map(this.cases),r=new Set(this.transformations);for(let s=t;s<e.length;s++){const t=e[s];if(void 0===t.cases)return t;i.mapMergeWithInto(n,((e,t)=>e+t),t.cases),i.setUnionInto(r,t.transformations)}return new a(n,r)}intersect(e,t){let n=this.cases,r=this.transformations;for(let o=t;o<e.length;o++){const t=e[o];if(void 0===n)n=i.definedMap(t.cases,(e=>new Map(e)));else if(void 0!==t.cases){const e=n,r=t.cases;n=i.mapMap(i.setIntersect(e.keys(),new Set(r.keys())).entries(),(t=>Math.min(s.defined(e.get(t)),s.defined(r.get(t)))))}r=i.setIntersect(r,t.transformations)}return new a(n,r)}applyStringTypeMapping(e){if(!this.isRestricted)return this;const t=new Set;for(const n of this.transformations){const i=o.stringTypeMappingGet(e,n);if("string"===i)return a.unrestricted;t.add(i)}return new a(this.cases,new Set(t))}equals(e){return e instanceof a&&(i.areEqual(this.cases,e.cases)&&i.areEqual(this.transformations,e.transformations))}hashCode(){let e=i.hashCodeOf(this.cases);return e=i.addHashCode(e,i.hashCodeOf(this.transformations)),e}toString(){const e=[],t=this.cases;if(void 0===t)e.push("unrestricted");else{const n=i.iterableFirst(t.keys());void 0===n?e.push("enum with no cases"):e.push("".concat(t.size.toString()," enums: ").concat(n," (").concat(t.get(n),"), ..."))}return e.concat(Array.from(this.transformations)).join(",")}}a.unrestricted=new a(void 0,new Set),t.StringTypes=a;class u extends r.TypeAttributeKind{constructor(){super("stringTypes")}get inIdentity(){return!0}requiresUniqueIdentity(e){return void 0!==e.cases&&e.cases.size>0}combine(e){return s.assert(e.length>0),e[0].union(e,1)}intersect(e){return s.assert(e.length>0),e[0].intersect(e,1)}makeInferred(e){}stringify(e){return e.toString()}}t.stringTypesTypeAttributeKind=new u;const l=/^(0|-?[1-9]\d*)$/,c=1<<31,h=-(c+1);const p=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;const d=/^(https?|ftp):\/\/[^{}]+$/;t.inferTransformedStringTypeKindForString=function(e,t){if(!(0===e.length||"0123456789-abcdefth".indexOf(e[0])<0))return t.isDate(e)?"date":t.isTime(e)?"time":t.isDateTime(e)?"date-time":function(e){if(null===e.match(l))return!1;const t=parseInt(e,10);return t>=c&&t<=h}(e)?"integer-string":"false"===e||"true"===e?"bool-string":function(e){return null!==e.match(p)}(e)?"uuid":function(e){return null!==e.match(d)}(e)?"uri":void 0}},62800:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920);class s{constructor(e){this.name=e}appliesToTypeKind(e){return"any"!==e}combine(e){return r.panic("Cannot combine type attribute ".concat(this.name))}intersect(e){return this.combine(e)}makeInferred(e){return r.panic("Cannot make type attribute ".concat(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){return new Map([[this,e]])}tryGetInAttributes(e){return e.get(this)}setInAttributes(e,t){return new Map(e).set(this,t)}modifyInAttributes(e,t){const n=t(this.tryGetInAttributes(e));if(void 0===n){const t=new Map(e);return t.delete(this),t}return this.setInAttributes(e,n)}setDefaultInAttributes(e,t){return void 0!==this.tryGetInAttributes(e)?e:this.modifyInAttributes(e,t)}removeInAttributes(e){return i.mapFilter(e,((e,t)=>t!==this))}equals(e){return e instanceof s&&this.name===e.name}hashCode(){return i.hashString(this.name)}}t.TypeAttributeKind=s,t.emptyTypeAttributes=new Map,t.combineTypeAttributes=function(e,t,n){const s="union"===e;let o;if(Array.isArray(t))o=t;else{if(void 0===n)return r.panic("Must have on array or two attributes");o=[t,n]}const a=i.mapTranspose(o);return i.mapFilterMap(a,(function(e,t){return r.assert(e.length>0,"Cannot combine zero type attributes"),1===e.length?e[0]:s?t.combine(e):t.intersect(e)}))},t.makeTypeAttributesInferred=function(e){return i.mapFilterMap(e,((e,t)=>t.makeInferred(e)))},t.increaseTypeAttributesDistance=function(e){return i.mapFilterMap(e,((e,t)=>t.increaseDistance(e)))}},94418:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(73181),r=n(74868),s=n(78920),o=n(62800),a=n(60877),u=n(54199);let l,c;function h(){l=new u.Chance(31415),c=new Set}t.initTypeNames=h,h(),t.tooManyNamesThreshold=1e3;class p{constructor(e){this.distance=e}static makeWithDistance(e,n,i){return e.size>=t.tooManyNamesThreshold?new m(i):((void 0===n||n.size>t.tooManyNamesThreshold)&&(n=void 0),new d(e,n,i))}static make(e,t,n){return p.makeWithDistance(e,t,n?1:0)}get areInferred(){return this.distance>0}}t.TypeNames=p;class d extends p{constructor(e,t,n){super(n),this.names=e,this._alternativeNames=t}add(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=new Set(this.names),i=this.distance,o=r.definedMap(this._alternativeNames,(e=>new Set(e)));for(let a=t;a<e.length;a++){const t=e[a];if(t instanceof d&&void 0!==t._alternativeNames&&(void 0===o&&(o=new Set),r.setUnionInto(o,t._alternativeNames)),!(t.distance>i)){if(!(t instanceof d))return s.assert(t instanceof m,"Unknown TypeNames instance"),t.add(e,a+1);t.distance<i?(n=new Set(t.names),i=t.distance,o=r.definedMap(t._alternativeNames,(e=>new Set(e)))):(s.assert(t.distance===i,"This should be the only case left"),r.setUnionInto(n,t.names))}}return p.makeWithDistance(n,o,i)}clearInferred(){const e=this.areInferred?new Set:this.names;return p.makeWithDistance(e,new Set,this.distance)}get combinedName(){return function(e){let t=r.iterableFirst(e);if(void 0===t)return s.panic("Named type has no names");if(1===e.size)return t;const n=r.setMap(e,(e=>a.splitIntoWords(e).map((e=>e.word.toLowerCase())).join("_"))),i=s.defined(r.iterableFirst(n));if(1===n.size)return i;let o=i.length,u=i.length;for(const s of r.iterableSkip(n,1)){o=Math.min(o,s.length);for(let e=0;e<o;e++)if(i[e]!==s[e]){o=e;break}u=Math.min(u,s.length);for(let e=0;e<u;e++)if(i[i.length-e-1]!==s[s.length-e-1]){u=e;break}}const l=(o>2?i.slice(0,o):"")+(u>2?i.slice(i.length-u):"");return l.length>2?l:i}(this.names)}get proposedNames(){const e=new Set([this.combinedName]);return void 0===this._alternativeNames||r.setUnionInto(e,this._alternativeNames),e}makeInferred(){return p.makeWithDistance(this.names,this._alternativeNames,this.distance+1)}singularize(){return p.makeWithDistance(r.setMap(this.names,i.singular),r.definedMap(this._alternativeNames,(e=>r.setMap(e,i.singular))),this.distance+1)}toString(){const e=this.areInferred?"distance ".concat(this.distance):"given",t="".concat(e," ").concat(Array.from(this.names).join(","));return void 0===this._alternativeNames?t:"".concat(t," (").concat(Array.from(this._alternativeNames).join(","),")")}}t.RegularTypeNames=d;class m extends p{constructor(e,t){super(e),void 0===t&&(t=function(){for(;;){const e="".concat(l.city()," ").concat(l.animal());if(!c.has(e))return c.add(e),e}}()),this.names=new Set([t])}get combinedName(){return s.defined(r.iterableFirst(this.names))}get proposedNames(){return this.names}add(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!this.areInferred)return this;for(let n=t;n<e.length;n++){const t=e[n];if(t.distance<this.distance)return t.add(e,n+1)}return this}clearInferred(){return this.areInferred?p.makeWithDistance(new Set,new Set,this.distance):this}makeInferred(){return new m(this.distance+1,r.iterableFirst(this.names))}singularize(){return this}toString(){return"too many ".concat(this.combinedName)}}t.TooManyTypeNames=m;class f extends o.TypeAttributeKind{constructor(){super("names")}combine(e){return 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(e,n){return t.namesTypeAttributeKind.modifyInAttributes(e,n)}t.namesTypeAttributeKind=new f,t.modifyTypeNames=y,t.singularizeTypeNames=function(e){return y(e,(e=>{if(void 0!==e)return e.singularize()}))},t.makeNamesTypeAttributes=function(e,n){let i;return i="string"===typeof e?p.make(new Set([e]),new Set,s.defined(n)):e,t.namesTypeAttributeKind.makeAttributes(i)}},2226:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(64639),r=n(62800),s=n(74868),o=n(78920),a="qt-uri-protocols",u="qt-uri-extensions";class l extends r.TypeAttributeKind{constructor(){super("uriAttributes")}get inIdentity(){return!0}combine(e){const t=e.map((e=>e[0])),n=e.map((e=>e[1]));return[s.setUnionManyInto(new Set,t),s.setUnionManyInto(new Set,n)]}makeInferred(e){}addToSchema(e,t,n){if("string"!==t.kind&&"uri"!==t.kind)return;const[i,r]=n;i.size>0&&(e[a]=Array.from(i).sort()),r.size>0&&(e[u]=Array.from(r).sort())}}t.uriTypeAttributeKind=new l;const c=/^.+(\.[^./\\]+)$/;t.uriInferenceAttributesProducer=function(e){try{const n=i(e),r=function(e){const t=e.match(c);if(null!==t)return t[1]}(n.path()),s=void 0===r?[]:[r.toLowerCase()];return t.uriTypeAttributeKind.makeAttributes([new Set([n.protocol().toLowerCase()]),new Set(s)])}catch(n){return r.emptyTypeAttributes}},t.uriSchemaAttributesProducer=function(e,n,i){if("object"!==typeof e)return;if(!i.has("string"))return;let r;const s=e[a];let l;r=void 0!==s?new Set(o.checkArray(s,o.checkString)):new Set;const c=e[u];return l=void 0!==c?new Set(o.checkArray(c,o.checkString)):new Set,0!==r.size||0!==l.size?{forString:t.uriTypeAttributeKind.makeAttributes([r,l])}:void 0}},70991:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(33538);t.getTargetLanguage=i.getTargetLanguage,t.quicktypeMultiFile=i.quicktypeMultiFile,t.quicktypeMultiFileSync=i.quicktypeMultiFileSync,t.quicktype=i.quicktype,t.combineRenderResults=i.combineRenderResults,t.inferenceFlags=i.inferenceFlags,t.inferenceFlagNames=i.inferenceFlagNames,t.defaultInferenceFlags=i.defaultInferenceFlags,t.inferenceFlagsObject=i.inferenceFlagsObject;var r=n(5289);t.CompressedJSON=r.CompressedJSON;var s=n(37359);t.InputData=s.InputData,t.JSONInput=s.JSONInput,t.jsonInputForTargetLanguage=s.jsonInputForTargetLanguage;var o=n(92775);t.JSONSchemaInput=o.JSONSchemaInput;var a=n(92775);t.Ref=a.Ref;var u=n(85332);t.Option=u.Option,t.getOptionValues=u.getOptionValues;var l=n(59592);t.TargetLanguage=l.TargetLanguage;var c=n(11865);t.defaultTargetLanguages=c.all,t.languageNamed=c.languageNamed;var h=n(97714);t.modifySource=h.modifySource,t.singleWord=h.singleWord,t.parenIfNeeded=h.parenIfNeeded;var p=n(77239);t.Name=p.Name,t.funPrefixNamer=p.funPrefixNamer,t.Namer=p.Namer;var d=n(78818);t.IssueAnnotationData=d.IssueAnnotationData;var m=n(78920);t.panic=m.panic,t.assert=m.assert,t.defined=m.defined,t.assertNever=m.assertNever,t.parseJSON=m.parseJSON,t.checkStringMap=m.checkStringMap,t.checkArray=m.checkArray,t.inflateBase64=m.inflateBase64;var f=n(60877);t.splitIntoWords=f.splitIntoWords,t.capitalize=f.capitalize,t.combineWords=f.combineWords,t.firstUpperWordStyle=f.firstUpperWordStyle,t.allUpperWordStyle=f.allUpperWordStyle,t.legalizeCharacters=f.legalizeCharacters,t.isLetterOrDigit=f.isLetterOrDigit;var y=n(44234);t.trainMarkovChain=y.train;var g=n(59551);t.QuickTypeError=g.QuickTypeError,t.messageError=g.messageError,t.messageAssert=g.messageAssert;var _=n(41283);t.Type=_.Type,t.PrimitiveType=_.PrimitiveType,t.ArrayType=_.ArrayType,t.ClassType=_.ClassType,t.ClassProperty=_.ClassProperty,t.EnumType=_.EnumType,t.MapType=_.MapType,t.UnionType=_.UnionType,t.ObjectType=_.ObjectType;var v=n(84145);t.getStream=v.getStream;var b=n(3953);t.readableFromFileOrURL=b.readableFromFileOrURL,t.readFromFileOrURL=b.readFromFileOrURL;var T=n(63390);t.FetchingJSONSchemaStore=T.FetchingJSONSchemaStore;var w=n(50742);t.JSONSchemaStore=w.JSONSchemaStore;var k=n(44670);t.sourcesFromPostmanCollection=k.sourcesFromPostmanCollection;var S=n(35096);t.TypeBuilder=S.TypeBuilder;var L=n(32351);t.derefTypeRef=L.derefTypeRef;var N=n(62800);t.TypeAttributeKind=N.TypeAttributeKind,t.emptyTypeAttributes=N.emptyTypeAttributes;var O=n(94418);t.TypeNames=O.TypeNames,t.makeNamesTypeAttributes=O.makeNamesTypeAttributes,t.namesTypeAttributeKind=O.namesTypeAttributeKind;var x=n(20859);t.StringTypes=x.StringTypes;var C=n(32866);t.removeNullFromUnion=C.removeNullFromUnion,t.matchType=C.matchType,t.nullableFromUnion=C.nullableFromUnion;var E=n(4007);t.ConvenienceRenderer=E.ConvenienceRenderer;var A=n(2226);t.uriTypeAttributeKind=A.uriTypeAttributeKind;var P=n(82503);t.CPlusPlusTargetLanguage=P.CPlusPlusTargetLanguage,t.CPlusPlusRenderer=P.CPlusPlusRenderer,t.cPlusPlusOptions=P.cPlusPlusOptions;var F=n(56699);t.CSharpTargetLanguage=F.CSharpTargetLanguage,t.cSharpOptions=F.cSharpOptions,t.CSharpRenderer=F.CSharpRenderer,t.NewtonsoftCSharpTargetLanguage=F.NewtonsoftCSharpTargetLanguage,t.newtonsoftCSharpOptions=F.newtonsoftCSharpOptions,t.NewtonsoftCSharpRenderer=F.NewtonsoftCSharpRenderer;var M=n(6978);t.GoTargetLanguage=M.GoTargetLanguage,t.GoRenderer=M.GoRenderer,t.goOptions=M.goOptions;var j=n(94993);t.ObjectiveCTargetLanguage=j.ObjectiveCTargetLanguage,t.ObjectiveCRenderer=j.ObjectiveCRenderer,t.objcOptions=j.objcOptions;var R=n(40952);t.JavaTargetLanguage=R.JavaTargetLanguage,t.JavaRenderer=R.JavaRenderer,t.javaOptions=R.javaOptions;var I=n(83059);t.JavaScriptTargetLanguage=I.JavaScriptTargetLanguage,t.JavaScriptRenderer=I.JavaScriptRenderer,t.javaScriptOptions=I.javaScriptOptions;var B=n(83341);t.JavaScriptPropTypesTargetLanguage=B.JavaScriptPropTypesTargetLanguage,t.JavaScriptPropTypesRenderer=B.JavaScriptPropTypesRenderer,t.javaScriptPropTypesOptions=B.javaScriptPropTypesOptions;var D=n(28003);t.TypeScriptTargetLanguage=D.TypeScriptTargetLanguage,t.TypeScriptRenderer=D.TypeScriptRenderer,t.FlowTargetLanguage=D.FlowTargetLanguage,t.FlowRenderer=D.FlowRenderer,t.tsFlowOptions=D.tsFlowOptions;var U=n(66369);t.SwiftTargetLanguage=U.SwiftTargetLanguage,t.SwiftRenderer=U.SwiftRenderer,t.swiftOptions=U.swiftOptions;var z=n(12833);t.KotlinTargetLanguage=z.KotlinTargetLanguage,t.KotlinRenderer=z.KotlinRenderer,t.kotlinOptions=z.kotlinOptions;var W=n(90102);t.ElmTargetLanguage=W.ElmTargetLanguage,t.ElmRenderer=W.ElmRenderer,t.elmOptions=W.elmOptions;var J=n(33861);t.JSONSchemaTargetLanguage=J.JSONSchemaTargetLanguage,t.JSONSchemaRenderer=J.JSONSchemaRenderer;var G=n(1126);t.RustTargetLanguage=G.RustTargetLanguage,t.RustRenderer=G.RustRenderer,t.rustOptions=G.rustOptions;var H=n(96367);t.RubyTargetLanguage=H.RubyTargetLanguage,t.RubyRenderer=H.RubyRenderer,t.rubyOptions=H.rubyOptions;var q=n(46428);t.CrystalTargetLanguage=q.CrystalTargetLanguage,t.CrystalRenderer=q.CrystalRenderer;var K=n(32658);t.HaskellTargetLanguage=K.HaskellTargetLanguage,t.HaskellRenderer=K.HaskellRenderer,t.haskellOptions=K.haskellOptions;var V=n(30077);t.DartTargetLanguage=V.DartTargetLanguage,t.DartRenderer=V.DartRenderer,t.dartOptions=V.dartOptions},5289:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(74868),s=n(78920),o=n(41283),a=n(20859);var u;!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"}(u=t.Tag||(t.Tag={}));const l=15;function c(e,t){return e|t<<4}function h(e,t){return s.assert(p(e)===t,"Trying to get index for value with invalid tag"),e>>4}function p(e){return e&l}t.makeValue=c,t.valueTag=p;class d{constructor(e,t){this.dateTimeRecognizer=e,this.handleRefs=t,this._contextStack=[],this._strings=[],this._stringIndexes={},this._objects=[],this._arrays=[],this.getObjectForValue=e=>this._objects[h(e,u.Object)],this.getArrayForValue=e=>this._arrays[h(e,u.Array)],this.internArray=e=>{const t=this._arrays.length;return this._arrays.push(e),c(u.Array,t)}}parseSync(e){return s.panic("parseSync not implemented in CompressedJSON")}getStringForValue(e){const t=p(e);return s.assert(t===u.InternedString||t===u.TransformedString),this._strings[h(e,t)]}getStringFormatTypeKind(e){const t=this._strings[h(e,u.StringFormat)];return o.isPrimitiveStringTypeKind(t)&&"string"!==t?t:s.panic("Not a transformed string type kind")}get context(){return s.defined(this._ctx)}internString(e){if(Object.prototype.hasOwnProperty.call(this._stringIndexes,e))return this._stringIndexes[e];const t=this._strings.length;return this._strings.push(e),this._stringIndexes[e]=t,t}makeString(e){const t=c(u.InternedString,this.internString(e));return s.assert("number"===typeof t,"Interned string value is not a number: ".concat(t)),t}internObject(e){const t=this._objects.length;return this._objects.push(e),c(u.Object,t)}get isExpectingRef(){return void 0!==this._ctx&&"$ref"===this._ctx.currentKey}commitValue(e){if(s.assert("number"===typeof e,"CompressedJSON value is not a number: ".concat(e)),void 0===this._ctx)s.assert(void 0===this._rootValue,"Committing value but nowhere to commit to - root value still there."),this._rootValue=e;else if(void 0!==this._ctx.currentObject){if(void 0===this._ctx.currentKey)return s.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(void 0===this._ctx.currentArray)return s.panic("Committing value but nowhere to commit to");this._ctx.currentArray.push(e)}}commitNull(){this.commitValue(c(u.Null,0))}commitBoolean(e){this.commitValue(c(e?u.True:u.False,0))}commitNumber(e){const t=e?u.Double:u.Integer;this.commitValue(c(t,0))}commitString(e){let t;if(this.handleRefs&&this.isExpectingRef)t=this.makeString(e);else{const n=a.inferTransformedStringTypeKindForString(e,this.dateTimeRecognizer);t=void 0!==n?void 0!==s.defined(o.transformedStringTypeTargetTypeKindsMap.get(n)).attributesProducer?c(u.TransformedString,this.internString(e)):c(u.StringFormat,this.internString(n)):e.length<=64?this.makeString(e):c(u.UninternedString,0)}this.commitValue(t)}finish(){const e=this._rootValue;return void 0===e?s.panic("Finished without root document"):(s.assert(void 0===this._ctx&&0===this._contextStack.length,"Finished with contexts present"),this._rootValue=void 0,e)}pushContext(){void 0!==this._ctx&&this._contextStack.push(this._ctx),this._ctx={currentObject:void 0,currentArray:void 0,currentKey:void 0,currentNumberIsDouble:!1}}pushObjectContext(){this.pushContext(),s.defined(this._ctx).currentObject=[]}setPropertyKey(e){this.context.currentKey=e}finishObject(){const e=this.context.currentObject;if(void 0===e)return s.panic("Object ended but not started");this.popContext(),this.commitValue(this.internObject(e))}pushArrayContext(){this.pushContext(),s.defined(this._ctx).currentArray=[]}finishArray(){const e=this.context.currentArray;if(void 0===e)return s.panic("Array ended but not started");this.popContext(),this.commitValue(this.internArray(e))}popContext(){s.assert(void 0!==this._ctx,"Popping context when there isn't one"),this._ctx=this._contextStack.pop()}equals(e){return this===e}hashCode(){let e=r.hashCodeInit;for(const t of this._strings)e=r.addHashCode(e,r.hashString(t));for(const t of Object.getOwnPropertyNames(this._stringIndexes).sort())e=r.addHashCode(e,r.hashString(t)),e=r.addHashCode(e,this._stringIndexes[t]);for(const t of this._objects)for(const n of t)e=r.addHashCode(e,n);for(const t of this._arrays)for(const n of t)e=r.addHashCode(e,n);return e}}t.CompressedJSON=d;t.CompressedJSONFromString=class extends d{parse(e){return i(this,void 0,void 0,(function*(){return this.parseSync(e)}))}parseSync(e){const t=JSON.parse(e);return this.process(t),this.finish()}process(e){if(null===e)this.commitNull();else if("boolean"===typeof e)this.commitBoolean(e);else if("string"===typeof e)this.commitString(e);else if("number"===typeof e){const t=e!==Math.floor(e)||e<Number.MIN_SAFE_INTEGER||e>Number.MAX_SAFE_INTEGER;this.commitNumber(t)}else if(Array.isArray(e)){this.pushArrayContext();for(const t of e)this.process(t);this.finishArray()}else{if("object"!==typeof e)return s.panic("Invalid JSON object");this.pushObjectContext();for(const t of Object.getOwnPropertyNames(e))this.setPropertyKey(t),this.process(e[t]);this.finishObject()}}}},63390:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(50742),s=n(70991),o=n(3953);class a extends r.JSONSchemaStore{constructor(e){super(),this._httpHeaders=e}fetch(e){return i(this,void 0,void 0,(function*(){return s.parseJSON(yield o.readFromFileOrURL(e,this._httpHeaders),"JSON Schema",e)}))}}t.FetchingJSONSchemaStore=a},68291:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(5289),r=n(78920),s=n(50485),o=n(41283),a=n(62800),u=n(20859),l=n(32351),c=n(59551),h=n(32866);function p(e,t){if(0!==e.length)if(Array.isArray(e[0]))for(const n of e)p(n,t);else t(e)}class d extends s.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))}}t.TypeInference=class{constructor(e,t,n,i){this._cjson=e,this._typeBuilder=t,this._inferMaps=n,this._inferEnums=i}addValuesToAccumulator(e,t){var n;n=e=>{const n=i.valueTag(e);switch(n){case i.Tag.Null:t.addPrimitive("null",a.emptyTypeAttributes);break;case i.Tag.False:case i.Tag.True:t.addPrimitive("bool",a.emptyTypeAttributes);break;case i.Tag.Integer:t.addPrimitive("integer",a.emptyTypeAttributes);break;case i.Tag.Double:t.addPrimitive("double",a.emptyTypeAttributes);break;case i.Tag.InternedString:if(this._inferEnums){const n=this._cjson.getStringForValue(e);t.addStringCase(n,1,a.emptyTypeAttributes)}else t.addStringType("string",a.emptyTypeAttributes);break;case i.Tag.UninternedString:t.addStringType("string",a.emptyTypeAttributes);break;case i.Tag.Object:t.addObject(this._cjson.getObjectForValue(e),a.emptyTypeAttributes);break;case i.Tag.Array:t.addArray(this._cjson.getArrayForValue(e),a.emptyTypeAttributes);break;case i.Tag.StringFormat:{const n=this._cjson.getStringFormatTypeKind(e);t.addStringType("string",a.emptyTypeAttributes,new u.StringTypes(new Map,new Set([n])));break}case i.Tag.TransformedString:{const n=this._cjson.getStringForValue(e),i=u.inferTransformedStringTypeKindForString(n,this._cjson.dateTimeRecognizer);if(void 0===i)return r.panic("TransformedString does not have a kind");const s=r.defined(o.transformedStringTypeTargetTypeKindsMap.get(i)).attributesProducer;if(void 0===s)return r.panic("TransformedString does not have attribute producer");t.addStringType("string",s(n),new u.StringTypes(new Map,new Set([i])));break}default:return r.assertNever(n)}},p(e,(e=>{for(const t of e)n(t)}))}inferType(e,t,n,i){const r=this.accumulatorForArray(t);return this.makeTypeFromAccumulator(r,e,n,i)}resolveRef(e,t){if(!e.startsWith("#/"))return c.messageError("InferenceJSONReferenceNotRooted",{reference:e});const n=e.split("/").slice(1),i=this._typeBuilder.typeGraph;let r=t;for(const s of n){let t=l.derefTypeRef(r,i);if(t instanceof o.UnionType){const n=h.nullableFromUnion(t);if(null===n)return c.messageError("InferenceJSONReferenceToUnion",{reference:e});t=n}if(t instanceof o.ClassType){const n=t.getProperties().get(s);if(void 0===n)return c.messageError("InferenceJSONReferenceWrongProperty",{reference:e});r=n.typeRef}else if(t instanceof o.MapType)r=t.values.typeRef;else{if(!(t instanceof o.ArrayType))return c.messageError("InferenceJSONReferenceWrongProperty",{reference:e});if(null===s.match("^[0-9]+$"))return c.messageError("InferenceJSONReferenceInvalidArrayIndex",{reference:e});r=t.items.typeRef}}return r}inferTopLevelType(e,t,n){r.assert(void 0===this._refIntersections,"Didn't reset ref intersections - nested invocations?"),this._cjson.handleRefs&&(this._refIntersections=[]);const i=this.inferType(e,t,n);if(this._cjson.handleRefs){for(const[e,t]of r.defined(this._refIntersections)){const n=t.map((e=>this.resolveRef(e,i)));this._typeBuilder.setSetOperationMembers(e,new Set(n))}this._refIntersections=void 0}return i}accumulatorForArray(e){const t=new s.UnionAccumulator(!0);return this.addValuesToAccumulator(e,t),t}makeTypeFromAccumulator(e,t,n,i){return new d(this._typeBuilder,this,n).buildUnion(e,!1,t,i)}inferClassType(e,t,n,o){const u=[],l={};if(p(t,(e=>{for(let t=0;t<e.length;t+=2){const n=this._cjson.getStringForValue(e[t]),i=e[t+1];Object.prototype.hasOwnProperty.call(l,n)||(u.push(n),l[n]=[]),l[n].push(i)}})),this._cjson.handleRefs&&1===u.length&&"$ref"===u[0]){const t=l.$ref;if(t.every((e=>i.valueTag(e)===i.Tag.InternedString))){const n=t.map((e=>this._cjson.getStringForValue(e))),i=this._typeBuilder.getUniqueIntersectionType(e,void 0);return r.defined(this._refIntersections).push([i,n]),i}}if(this._inferMaps&&u.length>500){const t=new s.UnionAccumulator(!0);for(const e of u)this.addValuesToAccumulator(l[e],t);const i=this.makeTypeFromAccumulator(t,a.emptyTypeAttributes,n);return this._typeBuilder.getMapType(e,i,o)}const c=new Map;for(const i of u){const e=l[i],n=this.inferType(a.emptyTypeAttributes,e,!1),r=e.length<t.length;c.set(i,this._typeBuilder.makeClassProperty(n,r))}return n?this._typeBuilder.getUniqueClassType(e,!0,c,o):this._typeBuilder.getClassType(e,c,o)}}},37359:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(74868),s=n(5289),o=n(78920),a=n(59551),u=n(94418),l=n(60087),c=n(68291),h=n(11865);function p(e,t,n){return a.messageError("MiscJSONParseError",{description:r.withDefault(t,"input"),address:e,message:o.errorMessage(n)})}class d{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);void 0===n&&(n={samples:[],description:void 0},this._topLevels.set(e,n)),n.samples.push(t)}setDescription(e,t){let n=this._topLevels.get(e);if(void 0===n)return o.panic("Trying to set description for a top-level that doesn't exist");n.description=t}addSamples(e,t,n){for(const i of t)this.addSample(e,i),void 0!==n&&this.setDescription(e,n)}addSource(e){return i(this,void 0,void 0,(function*(){const{name:t,samples:n,description:s}=e;try{const e=yield r.arrayMapSync(n,(e=>i(this,void 0,void 0,(function*(){return yield this._compressedJSON.parse(e)}))));this.addSamples(t,e,s)}catch(o){return p(t,s,o)}}))}addSourceSync(e){const{name:t,samples:n,description:i}=e;try{const e=n.map((e=>this._compressedJSON.parseSync(e)));this.addSamples(t,e,i)}catch(r){return p(t,i,r)}}singleStringSchemaSource(){}addTypes(e,t,n,r,s){return i(this,void 0,void 0,(function*(){return this.addTypesSync(e,t,n,r,s)}))}addTypesSync(e,t,n,i,r){const s=new c.TypeInference(this._compressedJSON,t,n,i);for(const[o,{samples:a,description:c}]of this._topLevels){const e=s.inferTopLevelType(u.makeNamesTypeAttributes(o,!1),a,r);if(t.addTopLevel(o,e),void 0!==c){const n=l.descriptionTypeAttributeKind.makeAttributes(new Set([c]));t.addAttributes(e,n)}}}}t.JSONInput=d,t.jsonInputForTargetLanguage=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"string"===typeof e&&(e=o.defined(h.languageNamed(e,t)));const i=new s.CompressedJSONFromString(e.dateTimeRecognizer,n);return new d(i)};t.InputData=class{constructor(){this._inputs=new Set}addInput(e){this._inputs=this._inputs.add(e)}getOrAddInput(e,t){let n=r.iterableFind(this._inputs,(t=>t.kind===e));return void 0===n&&(n=t(),this.addInput(n)),n}addSource(e,t,n){return i(this,void 0,void 0,(function*(){const i=this.getOrAddInput(e,n);yield i.addSource(t)}))}addSourceSync(e,t,n){this.getOrAddInput(e,n).addSourceSync(t)}addTypes(e,t,n,r,s){return i(this,void 0,void 0,(function*(){for(const i of this._inputs)yield i.addTypes(e,t,n,r,s)}))}addTypesSync(e,t,n,i,r){for(const s of this._inputs)s.addTypesSync(e,t,n,i,r)}get needIR(){return r.iterableSome(this._inputs,(e=>e.needIR))}get needSchemaProcessing(){return r.iterableSome(this._inputs,(e=>e.needSchemaProcessing))}singleStringSchemaSource(){const e=r.setFilterMap(this._inputs,(e=>e.singleStringSchemaSource()));return e.size>1?o.panic("We have more than one input with a string schema source"):r.iterableFirst(e)}}},92775:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(64639),s=n(74868),o=n(41283),a=n(78920),u=n(94418),l=n(94418),c=n(62800),h=n(50742),p=n(59551),d=n(20859),m=n(60087),f=n(59268),y=n(97134),g=n(85101),_=n(85101),v=n(85101),b=n(2226);var T;function w(e){if(e.kind===T.KeyOrIndex)return e.key}function k(e,t){if(e.kind!==t.kind)return!1;switch(e.kind){case T.Type:return e.index===t.index;case T.KeyOrIndex:return e.key===t.key;default:return!0}}function S(e,t){const n="function"===typeof e?e():e instanceof C?e:e.canonicalRef;return Object.assign({ref:n},void 0===t?{}:t)}function L(e,t){return Array.isArray(e)?p.messageError("SchemaArrayIsInvalidSchema",S(t)):null===e?p.messageError("SchemaNullIsInvalidSchema",S(t)):"object"!==typeof e?p.messageError("SchemaInvalidJSONSchemaType",S(t,{type:typeof e})):e}function N(e,t){return"boolean"===typeof e?e:L(e,t)}!function(e){e[e.Root=0]="Root",e[e.KeyOrIndex=1]="KeyOrIndex",e[e.Type=2]="Type",e[e.Object=3]="Object"}(T=t.PathElementKind||(t.PathElementKind={}));const O=new RegExp("^[0-9]+$");function x(e){return"string"===typeof e&&(e=new r(e)),new r(r.decode(e.clone().normalize().toString()))}class C{constructor(e,t){this.path=t,void 0!==e?(a.assert(""===e.fragment(),"Ref URI with fragment is not allowed: ".concat(e.toString())),this.addressURI=x(e)):this.addressURI=void 0}static root(e){const t=s.definedMap(e,(e=>new r(e)));return new C(t,[])}static parsePath(e){const t=[];if(e.startsWith("/")&&(t.push({kind:T.Root}),e=e.slice(1)),""!==e){const n=e.split("/");for(let e=0;e<n.length;e++)t.push({kind:T.KeyOrIndex,key:n[e]})}return t}static parseURI(e){arguments.length>1&&void 0!==arguments[1]&&arguments[1]||(e=e.clone());let t=e.fragment();e.fragment(""),""===e.host()&&""===e.filename()||""!==t||(t="/");const n=C.parsePath(t);return new C(e,n)}static parse(e){return C.parseURI(new r(e),!0)}get hasAddress(){return void 0!==this.addressURI}get address(){return a.defined(this.addressURI).toString()}get isRoot(){return 1===this.path.length&&this.path[0].kind===T.Root}pushElement(e){const t=Array.from(this.path);return t.push(e),new C(this.addressURI,t)}push(){let e=this;for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];for(const r of n)e=e.pushElement({kind:T.KeyOrIndex,key:r});return e}pushObject(){return this.pushElement({kind:T.Object})}pushType(e){return this.pushElement({kind:T.Type,index:e})}resolveAgainst(e){let t=this.addressURI;return void 0!==e&&void 0!==e.addressURI&&(t=void 0===t?e.addressURI:t.absoluteTo(e.addressURI)),new C(t,this.path)}get name(){const e=Array.from(this.path);for(;;){const t=e.pop();if(void 0===t||t.kind===T.Root){let e=void 0!==this.addressURI?this.addressURI.filename():"";const t=void 0!==this.addressURI?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 T.KeyOrIndex:if(O.test(t.key))return t.key;break;case T.Type:case T.Object:return a.panic("We shouldn't try to get the name of Type or Object refs");default:return a.assertNever(t)}}}get definitionName(){const e=s.arrayGetFromEnd(this.path,2);if(void 0!==e)return"definitions"===w(e)?w(a.defined(s.arrayLast(this.path))):void 0}toString(){return(void 0===this.addressURI?"":this.addressURI.toString())+"#"+this.path.map((function(e){switch(e.kind){case T.Root:return"";case T.Type:return"type/".concat(e.index.toString());case T.Object:return"object";case T.KeyOrIndex:return e.key;default:return a.assertNever(e)}})).join("/")}lookup(e,t,n){const i=()=>new C(this.addressURI,t),r=t[0];if(void 0===r)return N(e,i);const o=t.slice(1);switch(r.kind){case T.Root:return this.lookup(n,o,n);case T.KeyOrIndex:const t=r.key;if(Array.isArray(e)){if(!/^\d+$/.test(t))return p.messageError("SchemaCannotIndexArrayWithNonNumber",S(i,{actual:t}));const s=parseInt(r.key,10);return s>=e.length?p.messageError("SchemaIndexNotInArray",S(i,{index:s})):this.lookup(e[s],o,n)}return s.hasOwnProperty(e,t)?this.lookup(L(e,i)[r.key],o,n):p.messageError("SchemaKeyNotInObject",S(i,{key:t}));case T.Type:return a.panic('Cannot look up path that indexes "type"');case T.Object:return a.panic('Cannot look up path that indexes "object"');default:return a.assertNever(r)}}lookupRef(e){return this.lookup(e,this.path,e)}equals(e){if(!(e instanceof C))return!1;if(void 0!==this.addressURI&&void 0!==e.addressURI){if(!this.addressURI.equals(e.addressURI))return!1}else if(void 0===this.addressURI!==(void 0===e.addressURI))return!1;const t=this.path.length;if(t!==e.path.length)return!1;for(let n=0;n<t;n++)if(!k(this.path[n],e.path[n]))return!1;return!0}hashCode(){let e=s.hashCodeOf(s.definedMap(this.addressURI,(e=>e.toString())));for(const t of this.path)switch(e=s.addHashCode(e,t.kind),t.kind){case T.Type:e=s.addHashCode(e,t.index);break;case T.KeyOrIndex:e=s.addHashCode(e,s.hashString(t.key))}return e}}t.Ref=C;class E{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.haveID=n,this.canonicalRef=e,this.virtualRef=void 0!==t?t:e}updateWithID(e){if("string"!==typeof e)return this;const t=C.parse(e),n=this.haveID?t.resolveAgainst(this.virtualRef):t;return this.haveID||p.messageAssert(n.hasAddress,"SchemaIDMustHaveAddress",S(this,{id:e})),new E(this.canonicalRef,n,!0)}push(){return new E(this.canonicalRef.push(...arguments),this.virtualRef.push(...arguments),this.haveID)}pushObject(){return new E(this.canonicalRef.pushObject(),this.virtualRef.pushObject(),this.haveID)}pushType(e){return new E(this.canonicalRef.pushType(e),this.virtualRef.pushType(e),this.haveID)}toString(){return"".concat(this.virtualRef.toString()," (").concat(this.canonicalRef.toString(),")")}}class A{constructor(e){this._ctx=e,this._map=new s.EqualityMap,this._schemaAddressesAdded=new Set}addIDs(e,t){if(null===e)return;if(Array.isArray(e)){for(let n=0;n<e.length;n++)this.addIDs(e[n],t.push(n.toString()));return}if("object"!==typeof e)return;const n=t,i=e.$id;"string"===typeof i&&(t=t.updateWithID(i)),t.haveID&&(this._ctx.debugPrintSchemaResolving&&console.log("adding mapping ".concat(t.toString())),this._map.set(t.virtualRef,n));for(const r of Object.getOwnPropertyNames(e))this.addIDs(e[r],t.push(r))}addSchema(e,t){return!this._schemaAddressesAdded.has(t)&&(this.addIDs(e,new E(C.root(t),C.root(void 0))),this._schemaAddressesAdded.add(t),!0)}canonize(e,t){const n=t.resolveAgainst(e.virtualRef),i=this._map.get(n);if(void 0!==i)return i;const r=void 0===n.addressURI?new C(e.canonicalRef.addressURI,n.path):n;return new E(r,new C(void 0,n.path))}}t.schemaTypeDict={null:!0,boolean:!0,string:!0,integer:!0,number:!0,array:!0,object:!0};const P=Object.getOwnPropertyNames(t.schemaTypeDict);class F{constructor(e,t,n){this._ctx=e,this._store=t,this._canonizer=n}tryResolveVirtualRef(e,t,n){return i(this,void 0,void 0,(function*(){let i=!1;for(;;){const r=this._canonizer.canonize(e,n),s=r.canonicalRef;a.assert(s.hasAddress,"Canonical ref can't be resolved without an address");const o=s.address;let u=void 0===s.addressURI?void 0:yield this._store.get(o,this._ctx.debugPrintSchemaResolving);if(void 0===u)return[void 0,r];if(!this._canonizer.addSchema(u,o)){let i=this._canonizer.canonize(t,n);return void 0!==e&&(i=new E(new C(r.canonicalRef.addressURI,i.canonicalRef.path),i.virtualRef,i.haveID)),[i.canonicalRef.lookupRef(u),i]}a.assert(!i,"We can't add a schema twice"),i=!0}}))}resolveVirtualRef(e,t){return i(this,void 0,void 0,(function*(){this._ctx.debugPrintSchemaResolving&&console.log("resolving ".concat(t.toString()," relative to ").concat(e.toString()));let n=yield this.tryResolveVirtualRef(e,e,t),i=n[0];if(void 0!==i)return this._ctx.debugPrintSchemaResolving&&console.log("resolved to ".concat(n[1].toString())),[i,n[1]];const r=new E(e.canonicalRef,new C(e.canonicalRef.addressURI,e.virtualRef.path),e.haveID);return n=yield this.tryResolveVirtualRef(r,e,t),i=n[0],void 0!==i?(this._ctx.debugPrintSchemaResolving&&console.log("resolved to ".concat(n[1].toString())),[i,n[1]]):function(e,t){return void 0===e?p.messageError("SchemaFetchErrorTopLevel",{address:t}):p.messageError("SchemaFetchError",{address:t,base:e.canonicalRef})}(e,t.address)}))}resolveTopLevelRef(e){return i(this,void 0,void 0,(function*(){return yield this.resolveVirtualRef(new E(new C(e.addressURI,[])),new C(void 0,e.path))}))}}function M(e,t,n,r){return i(this,void 0,void 0,(function*(){let h=new s.EqualityMap;function m(e,t){const n=h.get(e.canonicalRef);void 0!==n&&a.assert(n===t,"Trying to set path again to different type"),h.set(e.canonicalRef,t)}function f(n,h,f){return i(this,void 0,void 0,(function*(){const g=Array.isArray(n.enum)?n.enum:void 0,_=s.definedMap(n.type,(e=>function(e,t){let n;if("string"===typeof e)n=new Set([e]);else{if(!Array.isArray(e))return p.messageError("SchemaTypeMustBeStringOrStringArray",S(t,{actual:e}));{const i=[];for(const n of e){if("string"!==typeof n)return p.messageError("SchemaTypeElementMustBeString",S(t,{element:n}));i.push(n)}n=new Set(i)}}p.messageAssert(n.size>0,"SchemaNoTypeSpecified",S(t));const i=["null","boolean","object","array","number","string","integer"],r=s.iterableFind(n,(e=>i.indexOf(e)<0));return void 0!==r?p.messageError("SchemaInvalidType",S(t,{type:r})):n}(e,h)));const v=s.setFilter(P,(function(e){if(void 0!==_&&!_.has(e))return!1;if(void 0!==g){let t;switch(e){case"null":t=e=>null===e;break;case"integer":t=e=>"number"===typeof e&&e===Math.floor(e);break;default:t=t=>typeof t===e}return void 0!==g.find(t)}return!0}));let b;function T(e,t){let i;if(void 0===e&&void 0!==b)i=b;else{i=[];for(const t of r){const r=t(n,h.canonicalRef,v,e);void 0!==r&&i.push(r)}void 0===e&&(b=i)}for(const n of i)t(n)}function w(e){let t=c.emptyTypeAttributes;return T(void 0,(n=>{const i=e(n);void 0!==i&&(t=c.combineTypeAttributes("union",t,i))})),t}var k;k=f,void 0===n.oneOf&&(k=c.combineTypeAttributes("union",k,w((e=>{let{forType:t,forUnion:n,forCases:i}=e;return a.assert(void 0===n&&void 0===i,"We can't have attributes for unions and cases if we don't have a union"),t})))),f=l.modifyTypeNames(k,(e=>{const t=a.defined(e);if(!t.areInferred)return t;let i=n.title;return"string"!==typeof i&&(i=h.canonicalRef.definitionName),"string"===typeof i?u.TypeNames.make(new Set([i]),new Set,void 0!==n.$ref):t.makeInferred()}));const O=c.makeTypeAttributesInferred(f);function x(e,t){return i(this,void 0,void 0,(function*(){const n=h.push(t);return Array.isArray(e)?yield s.arrayMapSync(e,((e,t)=>i(this,void 0,void 0,(function*(){const i=n.push(t.toString());return yield y(N(e,i.canonicalRef),i,c.makeTypeAttributesInferred(f))})))):p.messageError("SchemaSetOperationCasesIsNotArray",S(n,{operation:t,cases:e}))}))}const E=t.getUniqueIntersectionType(f,void 0);function A(e,n){return i(this,void 0,void 0,(function*(){const i=yield x(e,n);let r=c.makeTypeAttributesInferred(f);"oneOf"===n&&T(e,(e=>{let{forType:n,forUnion:s,forCases:o}=e;if(void 0!==n&&t.addAttributes(E,n),void 0!==s&&(r=c.combineTypeAttributes("union",r,s)),void 0!==o){a.assert(o.length===i.length,"Number of case attributes doesn't match number of cases");for(let e=0;e<i.length;e++)t.addAttributes(i[e],o[e])}}));const s=t.getUniqueUnionType(r,void 0);return t.setSetOperationMembers(s,new Set(i)),s}))}m(h,E);const F=void 0===g&&(void 0===_||_.has("object")),M=void 0===g&&(void 0===_||_.has("array")),j=v.has("string")&&void 0!==g&&void 0!==g.find((e=>"string"===typeof e)),R=[];if(void 0!==_||void 0!==n.properties||void 0!==n.additionalProperties||void 0!==n.items||void 0!==n.required||void 0!==g){const e=[],r=w((e=>{let{forNumber:t}=e;return t}));for(const[n,i]of[["null","null"],["number","double"],["integer","integer"],["boolean","bool"]]){if(!v.has(n))continue;const s=o.isNumberTypeKind(i)?r:void 0;e.push(t.getPrimitiveType(i,s))}const a=c.combineTypeAttributes("union",O,w((e=>{let{forString:t}=e;return t})));if(j){const n=g.filter((e=>"string"===typeof e));e.push(t.getStringType(a,d.StringTypes.fromCases(n)))}else v.has("string")&&e.push(function(e){const i=function(e){const t=s.iterableFind(o.transformedStringTypeTargetTypeKindsMap,(t=>{let[n,{jsonSchema:i}]=t;return i===e}));if(void 0!==t)return t[0]}(n.format);return void 0===i?t.getStringType(e,d.StringTypes.unrestricted):t.getPrimitiveType(i,e)}(a));M&&e.push(yield function(){return i(this,void 0,void 0,(function*(){const e=l.singularizeTypeNames(f),r=n.items;let o;if(Array.isArray(r)){const n=h.push("items"),a=yield s.arrayMapSync(r,((t,r)=>i(this,void 0,void 0,(function*(){const i=n.push(r.toString());return yield y(N(t,i.canonicalRef),i,e)}))));o=t.getUnionType(c.emptyTypeAttributes,new Set(a))}else if("object"===typeof r){const t=h.push("items");o=yield y(N(r,t.canonicalRef),t,e)}else{if(void 0!==r)return p.messageError("SchemaArrayItemsMustBeStringOrArray",S(h,{actual:r}));o=t.getPrimitiveType("any")}return t.addAttributes(o,e),t.getArrayType(c.emptyTypeAttributes,o)}))}()),F&&e.push(yield function(){return i(this,void 0,void 0,(function*(){let e,r;e=void 0===n.required||"boolean"===typeof n.required?[]:Array.from(function(e,t){if(!Array.isArray(e))return p.messageError("SchemaRequiredMustBeStringOrStringArray",S(t,{actual:e}));for(const n of e)if("string"!==typeof n)return p.messageError("SchemaRequiredElementMustBeString",S(t,{element:n}));return e}(n.required,h)),r=void 0===n.properties?{}:L(n.properties,h.canonicalRef);for(const t of Object.getOwnPropertyNames(r))!0===r[t].required&&e.indexOf(t)<0&&e.push(t);let o=n.additionalProperties;void 0===o&&"object"===typeof n.patternProperties&&s.hasOwnProperty(n.patternProperties,".*")&&(o=n.patternProperties[".*"]);const a=c.combineTypeAttributes("union",O,w((e=>{let{forObject:t}=e;return t}))),u=n.quicktypePropertyOrder?n.quicktypePropertyOrder:[];return yield function(e,n,r,o,a){let u=arguments.length>5&&void 0!==arguments[5]?arguments[5]:e=>e.toLowerCase();return i(this,void 0,void 0,(function*(){const c=new Set(o),h=s.mapSortBy(s.mapFromObject(r),((e,t)=>u(t))),d=yield s.mapMapSync(h,((n,r)=>i(this,void 0,void 0,(function*(){const i=e.push("properties",r),s=yield y(N(n,i.canonicalRef),i,l.makeNamesTypeAttributes(r,!0)),o=!c.has(r);return t.makeClassProperty(s,o)}))));let m;if(void 0===a||!0===a)m=t.getPrimitiveType("any");else if(!1===a)m=void 0;else{const t=e.push("additionalProperties");m=yield y(N(a,t.canonicalRef),t,l.singularizeTypeNames(n))}const f=s.setSubtract(c,d.keys());if(f.size>0){const n=m;if(void 0===n)return p.messageError("SchemaAdditionalTypesForbidRequired",S(e));const i=s.mapFromIterable(f,(e=>t.makeClassProperty(n,!1)));s.mapMergeInto(d,i)}return t.getUniqueObjectType(n,d,m)}))}(h,a,r,e,o,(e=>{const t=u.indexOf(e);return-1!==t?t:e.toLowerCase()}))}))}()),R.push(t.getUniqueUnionType(O,new Set(e)))}if(void 0!==n.$ref){if("string"!==typeof n.$ref)return p.messageError("SchemaRefMustBeString",S(h,{actual:typeof n.$ref}));const t=C.parse(n.$ref),[i,r]=yield e.resolveVirtualRef(h,t),s=l.modifyTypeNames(f,(e=>a.defined(e).areInferred?u.TypeNames.make(new Set([r.canonicalRef.name]),new Set,!0):e));R.push(yield y(i,r,s))}return void 0!==n.allOf&&R.push(...yield x(n.allOf,"allOf")),void 0!==n.oneOf&&R.push(yield A(n.oneOf,"oneOf")),void 0!==n.anyOf&&R.push(yield A(n.anyOf,"anyOf")),t.setSetOperationMembers(E,new Set(R)),E}))}function y(e,n,r){return i(this,void 0,void 0,(function*(){const i=h.get(n.canonicalRef);if(void 0!==i)return i;let s;return"boolean"===typeof e?(p.messageAssert(!0===e,"SchemaFalseNotSupported",S(n)),s=t.getPrimitiveType("any")):(n=n.updateWithID(e.$id),s=yield f(e,n,r)),m(n,s),s}))}for(const[i,r]of n){const[n,s]=yield e.resolveTopLevelRef(r),o=yield y(n,s,l.makeNamesTypeAttributes(i,!1));t.addTopLevel(i,o)}}))}function j(e){const t=e.toLowerCase(),n=[".json",".schema"];for(const i of n)if(t.endsWith(i)){const t=e.slice(0,e.length-i.length);if(t.length>0)return t}return e}function R(e,t,n){return i(this,void 0,void 0,(function*(){const i=t.fragment();let r=i.endsWith("/");r&&(t=t.clone().fragment(i.slice(0,-1)));const o=C.parseURI(t);o.isRoot&&(r=!1);const a=(yield e.resolveTopLevelRef(o))[0];if(r)return"object"!==typeof a?p.messageError("SchemaCannotGetTypesFromBoolean",{ref:o.toString()}):s.mapMap(s.mapFromObject(a),((e,t)=>o.push(t)));{let e;if("object"===typeof a&&"string"===typeof a.title)e=a.title;else{const i=function(e){const t=e.fragment();if(""!==t){const e=t.split("/"),n=e.length;if(""!==e[n-1])return j(e[n-1]);if(n>1&&""!==e[n-2])return j(e[n-2])}const n=e.filename();return""!==n?j(n):p.messageError("DriverCannotInferNameForSchema",{uri:e.toString()})}(t);e=void 0!==i?i:n}return[e,o]}}))}class I extends h.JSONSchemaStore{constructor(e,t){super(),this._inputs=e,this._delegate=t}fetch(e){return i(this,void 0,void 0,(function*(){const t=this._inputs.get(e);return void 0!==t?N(a.parseJSON(t,"JSON Schema",e),(()=>C.root(e))):void 0===this._delegate?a.panic("Schema URI ".concat(e," requested, but no store given")):yield this._delegate.fetch(e)}))}}t.JSONSchemaInput=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];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,f.accessorNamesAttributeProducer,y.enumValuesAttributeProducer,b.uriSchemaAttributesProducer,g.minMaxAttributeProducer,_.minMaxLengthAttributeProducer,v.patternAttributeProducer].concat(t)}get needIR(){return this._needIR}addTopLevel(e,t){this._topLevels.set(e,t)}addTypes(e,t){return i(this,void 0,void 0,(function*(){if(0===this._schemaSources.length)return;let n=this._schemaStore;if(0===this._schemaInputs.size){if(void 0===n)return a.panic("Must have a schema store to process JSON Schema")}else n=this._schemaStore=new I(this._schemaInputs,n);const i=n,r=new A(e);for(const t of this._additionalSchemaAddresses){const n=yield i.get(t,e.debugPrintSchemaResolving);if(void 0===n)return p.messageError("SchemaFetchErrorAdditional",{address:t});r.addSchema(n,t)}const s=new F(e,a.defined(this._schemaStore),r);for(const[e,t]of this._schemaSources){const n=t.name,i=yield R(s,e,n);if(Array.isArray(i)){let e;e=1===this._schemaSources.length?n:i[0],this.addTopLevel(e,i[1])}else for(const[e,t]of i)this.addTopLevel(e,t)}yield M(s,t,this._topLevels,this._attributeProducers)}))}addTypesSync(){return a.panic("addTypesSync not supported in JSONSchemaInput")}addSource(e){return i(this,void 0,void 0,(function*(){return this.addSourceSync(e)}))}addSourceSync(e){const{name:t,uris:n,schema:i,isConverted:s}=e;let o;if(!0!==s&&(this._needIR=!0),o=void 0===n?[new r(t)]:n.map((e=>{const n=x(e);return""===n.clone().hash("").toString()&&n.path(t),n})),void 0===i)a.assert(void 0!==n,"URIs must be given if schema source is not specified");else for(let r=0;r<o.length;r++){const e=o[r],t=e.clone().hash(""),n=t.path();let s=0;do{s>0&&t.path("".concat(n,"-").concat(s)),s++}while(this._schemaInputs.has(t.toString()));this._schemaInputs.set(t.toString(),i),o[r]=t.hash(e.hash())}for(const r of o)this._schemaSources.push([r,e])}singleStringSchemaSource(){if(!this._schemaSources.every((e=>{let[t,{schema:n}]=e;return"string"===typeof n})))return;const e=new Set(this._schemaSources.map((e=>{let[t,{schema:n}]=e;return n})));return 1===e.size?a.defined(s.iterableFirst(e)):void 0}}},50742:function(e,t,n){"use strict";var i=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const r=n(78920);t.JSONSchemaStore=class{constructor(){this._schemas=new Map}add(e,t){r.assert(!this._schemas.has(e),"Cannot set a schema for an address twice"),this._schemas.set(e,t)}get(e,t){return i(this,void 0,void 0,(function*(){let n=this._schemas.get(e);if(void 0!==n)return n;t&&console.log("trying to fetch ".concat(e));try{n=yield this.fetch(e)}catch(i){}if(void 0!==n)return t&&console.log("successully fetched ".concat(e)),this.add(e,n),n;t&&console.log("couldn't fetch ".concat(e))}))}}},44670:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(78920);function r(e){try{return JSON.parse(e),!0}catch(t){return!1}}t.sourcesFromPostmanCollection=function(e,t){const n=[],s=[];!function e(t){if("object"===typeof t){if(Array.isArray(t.item)){for(const n of t.item)e(n);"object"===typeof t.info&&"string"===typeof t.info.description&&s.push(t.info.description)}if("string"===typeof t.name&&Array.isArray(t.response)){const e=[];for(const n of t.response)"object"===typeof n&&"string"===typeof n.body&&r(n.body)&&e.push(n.body);if(e.length>0){const i={name:t.name,samples:e},r=[t.name];if("object"===typeof t.request){const{method:e,url:n}=t.request;void 0!==e&&"object"===typeof n&&void 0!==n.raw&&r.push("".concat(e," ").concat(n.raw))}"object"===typeof t.request&&"string"===typeof t.request.description&&r.push(t.request.description),i.description=0===r.length?void 0:r.join("\n\n"),n.push(i)}}}}(i.parseJSON(e,"Postman collection",t));const o=s.join("\n\n").trim();let a;return""!==o&&(a=o),{sources:n,description:a}}},3953:function(e,t,n){"use strict";var i=n(85224),r=this&&this.__awaiter||function(e,t,n,i){return new(n||(n=Promise))((function(r,s){function o(e){try{u(i.next(e))}catch(t){s(t)}}function a(e){try{u(i.throw(e))}catch(t){s(t)}}function u(e){e.done?r(e.value):new n((function(t){t(e.value)})).then(o,a)}u((i=i.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0});const s=n(95276),o=n(80560),a=n(84145),u=n(70991),l=n(55391),c=n(60898);function h(e){return Array.isArray(e)?e.reduce((function(e,t){if(void 0!==t&&t.length>0){const n=t.indexOf(":");if(n<0)return u.panic('Could not parse HTTP header "'.concat(t,'".'));const i=t.slice(0,n).trim(),r=t.slice(n+1).trim();e[i]=r}return e}),{}):{}}function p(e,t){return r(this,void 0,void 0,(function*(){try{if(l(e)){return(yield c(e,{headers:h(t)})).body}if(o.isNode){if("-"===e)return i.stdin;const t=s.lstatSync(e).isSymbolicLink()?s.readlinkSync(e):e;if(s.existsSync(t))return s.createReadStream(t,"utf8")}}catch(n){const t="string"===typeof n.message?n.message:"Unknown error";return u.messageError("MiscReadError",{fileOrURL:e,message:t})}return u.messageError("DriverInputFileDoesNotExist",{filename:e})}))}t.readableFromFileOrURL=p,t.readFromFileOrURL=function(e,t){return r(this,void 0,void 0,(function*(){const n=yield p(e,t);try{return yield a.getStream(n)}catch(i){const t="string"===typeof i.message?i.message:"Unknown error";return u.messageError("MiscReadError",{fileOrURL:e,message:t})}}))}},52488:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(18772);t.default=function(e){const t=(e=Object.assign({},e)).array;let n=e.encoding;const r="buffer"===n;let s=!1;t?s=!(n||r):n=n||"utf8",r&&(n=void 0);let o=0;const a=[],u=new i.PassThrough({objectMode:s});return n&&u.setEncoding(n),u.on("data",(e=>{a.push(e),s?o=a.length:o+=e.length})),u.getBufferedValue=()=>t?a:r?Buffer.concat(a,o):a.join(""),u.getBufferedLength=()=>o,u}},84145:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(52488);function r(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return Promise.reject(new Error("Expected a stream"));t=Object.assign({maxBuffer:1/0},t);const n=t.maxBuffer||1/0;let r,s;const o=new Promise(((o,a)=>{const u=e=>{e&&(e.bufferedData=r.getBufferedValue()),a(e)};r=i.default(t),e.once("error",u),e.pipe(r),r.on("data",(()=>{r.getBufferedLength()>n&&a(new Error("maxBuffer exceeded"))})),r.once("error",u),r.on("end",o),s=()=>{e.unpipe&&e.unpipe(r)}}));return o.then(s,s),o.then((()=>r.getBufferedValue()))}t.getStream=r,t.buffer=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};r(e,Object.assign({},t,{encoding:"buffer"}))},t.array=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};r(e,Object.assign({},t,{array:!0}))}},11865:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(56699),s=n(6978),o=n(82503),a=n(94993),u=n(40952),l=n(83059),c=n(83341),h=n(28003),p=n(66369),d=n(12833),m=n(90102),f=n(33861),y=n(1126),g=n(46428),_=n(96367),v=n(30077),b=n(70670),T=n(38571),w=n(32658);t.all=[new r.NewtonsoftCSharpTargetLanguage,new s.GoTargetLanguage,new y.RustTargetLanguage,new g.CrystalTargetLanguage,new o.CPlusPlusTargetLanguage,new a.ObjectiveCTargetLanguage,new u.JavaTargetLanguage,new h.TypeScriptTargetLanguage,new l.JavaScriptTargetLanguage,new c.JavaScriptPropTypesTargetLanguage,new h.FlowTargetLanguage,new p.SwiftTargetLanguage,new d.KotlinTargetLanguage,new m.ElmTargetLanguage,new f.JSONSchemaTargetLanguage,new _.RubyTargetLanguage,new v.DartTargetLanguage,new b.PythonTargetLanguage("Python",["python","py"],"py"),new T.PikeTargetLanguage,new w.HaskellTargetLanguage],t.languageNamed=function(e,n){void 0===n&&(n=t.all);const r=i.iterableFind(n,(t=>t.names.indexOf(e)>=0||t.displayName===e));return void 0!==r?r:i.iterableFind(n,(t=>t.extension===e))}},82503:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(41283),o=n(32866),a=n(77239),u=n(97714),l=n(78818),c=n(60877),h=n(78920),p=n(4007),d=n(85332),m=n(78920),f=n(59268),y=n(97134),g=n(85101),_=["pascal-case","pascal"],v=["underscore-case","underscore"],b=["camel-case","camel"],T=["upper-underscore-case","upper-underscore"],w=["pascal-case-upper-acronyms","pascal-upper-acronyms"],k=["camel-case-upper-acronyms","camel-upper-acronyms"];t.cPlusPlusOptions={typeSourceStyle:new d.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 d.EnumOption("include-location","Whether json.hpp is to be located globally or locally",[["local-include",!0],["global-include",!1]],"local-include","secondary"),codeFormat:new d.EnumOption("code-format","Generate classes with getters/setters, instead of structs",[["with-struct",!1],["with-getter-setter",!0]],"with-getter-setter"),wstring:new d.EnumOption("wstring","Store strings using Utf-16 std::wstring, rather than Utf-8 std::string",[["use-string",!1],["use-wstring",!0]],"use-string"),msbuildPermissive:new d.EnumOption("msbuildPermissive","Moves to_json and from_json types into the nlohmann::details namespace, so that msbuild can build it with conformance mode disabled",[["not-permissive",!1],["use-permissive",!0]],"not-permissive","secondary"),westConst:new d.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 d.BooleanOption("just-types","Plain types only",!1),namespace:new d.StringOption("namespace","Name of the generated namespace(s)","NAME","quicktype"),enumType:new d.StringOption("enum-type","Type of enum class","NAME","int","secondary"),typeNamingStyle:new d.EnumOption("type-style","Naming style for types",[_,v,b,T,w,k]),memberNamingStyle:new d.EnumOption("member-style","Naming style for members",[v,_,b,T,w,k]),enumeratorNamingStyle:new d.EnumOption("enumerator-style","Naming style for enumerators",[T,v,_,b,w,k]),boost:new d.BooleanOption("boost","Require a dependency on boost. Without boost, C++17 is required",!0),hideNullOptional:new d.BooleanOption("hide-null-optional","Hide null value for optional field",!1)};class S extends r.TargetLanguage{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"C++",arguments.length>1&&void 0!==arguments[1]?arguments[1]:["c++","cpp","cplusplus"],arguments.length>2&&void 0!==arguments[2]?arguments[2]:"cpp")}getOptions(){return[t.cPlusPlusOptions.justTypes,t.cPlusPlusOptions.namespace,t.cPlusPlusOptions.codeFormat,t.cPlusPlusOptions.wstring,t.cPlusPlusOptions.msbuildPermissive,t.cPlusPlusOptions.westConst,t.cPlusPlusOptions.typeSourceStyle,t.cPlusPlusOptions.includeLocation,t.cPlusPlusOptions.typeNamingStyle,t.cPlusPlusOptions.memberNamingStyle,t.cPlusPlusOptions.enumeratorNamingStyle,t.cPlusPlusOptions.enumType,t.cPlusPlusOptions.boost,t.cPlusPlusOptions.hideNullOptional]}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}makeRenderer(e,n){return new j(this,e,d.getOptionValues(t.cPlusPlusOptions,n))}}function L(e){const t=g.minMaxValueForType(e),n=g.minMaxLengthForType(e),i=g.patternForType(e);if(void 0!==t||void 0!==n||void 0!==i)return{minMax:t,minMaxLength:n,pattern:i}}t.CPlusPlusTargetLanguage=S;const N=c.legalizeCharacters((e=>c.isAscii(e)&&c.isLetterOrUnderscoreOrDigit(e))),O=["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"],x="std::shared_ptr";var C,E,A;function P(e,t){return 0===t.length?[]:[e,t]}!function(e){e[e.ForwardDeclare=0]="ForwardDeclare",e[e.Include=1]="Include"}(C=t.IncludeKind||(t.IncludeKind={})),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"}(E=t.GlobalNames||(t.GlobalNames={})),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=t.MemberNames||(t.MemberNames={}));class F{constructor(e,t){this._start=e,this._end=t}wrap(e,t){return[P(e,this._start),t,this._end]}}class M{constructor(e,t,n,i,r,s,o,a){this._stringType=e,this._constStringType=t,this._smatch=n,this._regex=i,this._stringLiteralPrefix=r,this._toString=s,this._encodingClass=o,this._encodingFunction=a}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)}}class j extends p.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._gettersAndSettersForPropertyName=new Map,this.NarrowString=new class extends M{constructor(){super("std::string","const std::string & ","std::smatch","std::regex","",new F(["std::to_string("],[")"]),"","")}wrapEncodingChange(e,t,n,i){return i}emitHelperFunctions(){}},this.WideString=new class extends M{constructor(e){super("std::wstring","const std::wstring & ","std::wsmatch","std::wregex","L",new F(["std::to_wstring("],[")"]),"Utf16_Utf8","convert"),this.superThis=e}wrapEncodingChange(e,t,n,i){return this.superThis.sourcelikeToString(t)===this.superThis.sourcelikeToString(n)?i:[P(e,[this._encodingClass]),"<",t,", ",n,">::",this._encodingFunction,"(",i,")"]}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=c.makeNameStyle(this.typeNamingStyle,N),this.enumeratorNamingStyle=n.enumeratorNamingStyle,this._memberNameStyle=c.makeNameStyle(n.memberNamingStyle,N),this._memberNamingFunction=a.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._nulloptType="boost::none",this._variantType="boost::variant",this._variantIndexMethodName="which"):(this._optionalType="std::optional",this._nulloptType="std::nullopt",this._variantType="std::variant",this._variantIndexMethodName="index"),this.setupGlobalNames()}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 h.defined(this._generatedGlobalNames.get(e))}lookupMemberName(e){return h.defined(this._generatedMemberNames.get(e))}addGlobalName(e){const t=this._namedTypeNameStyle(E[e]);this._generatedGlobalNames.set(e,t),this._forbiddenGlobalNames.push(t)}addMemberName(e){this._generatedMemberNames.set(e,this._memberNameStyle(A[e]))}setupGlobalNames(){for(const e of h.numberEnumValues(E))this.addGlobalName(e);for(const e of h.numberEnumValues(A))this.addMemberName(e)}forbiddenNamesForGlobalNamespace(){return[...O,...this._forbiddenGlobalNames]}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return a.funPrefixNamer("types",this._namedTypeNameStyle)}namerForObjectProperty(){return this._memberNamingFunction}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return a.funPrefixNamer("enumerators",c.makeNameStyle(this.enumeratorNamingStyle,N))}makeNamesForPropertyGetterAndSetter(e,t,n,i,r){return[new a.DependencyName(this._memberNamingFunction,r.order,(e=>"get_".concat(e(r)))),new a.DependencyName(this._memberNamingFunction,r.order,(e=>"getMutable_".concat(e(r)))),new a.DependencyName(this._memberNamingFunction,r.order,(e=>"set_".concat(e(r))))]}makePropertyDependencyNames(e,t,n,i,r){const s=this.makeNamesForPropertyGetterAndSetter(e,t,n,i,r);return this._gettersAndSettersForPropertyName.set(r,s),s}withConst(e){return this._options.westConst?["const ",e]:[e," const"]}emitInclude(e,t){this.emitLine("#include ",e?"<":'"',t,e?">":'"')}startFile(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];m.assert(void 0===this._currentFilename,"Previous file wasn't finished"),void 0!==e&&(this._currentFilename=this.sourcelikeToString(e)),void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines([" To parse this JSON data, first install",""]),this._options.boost&&this.emitCommentLines(["     Boost     http://www.boost.org"]),this.emitCommentLines(["     json.hpp  https://github.com/nlohmann/json",""," Then include this file, and then do",""]),this._options.typeSourceStyle?this.forEachTopLevel("none",((e,t)=>{this.emitLine("//     ",this.ourQualifier(!1),t," data = nlohmann::json::parse(jsonString);")})):this.emitLine("//     ",this.ourQualifier(!1),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 << ",this.ourQualifier(!1),"wdump((nlohmann::json) ",t,");")})))),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(h.defined(this._currentFilename)),this._currentFilename=void 0}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(e){return"class"===e.kind}emitDescriptionBlock(e){this.emitCommentLines(e," * ","/**"," */")}emitBlock(e,t,n){let i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];this.emitLine(e," {"),this.preventBlankLine(),i?this.indent(n):n(),this.preventBlankLine(),t?this.emitLine("};"):this.emitLine("}")}emitNamespaces(e,t){const n=i.toReadonlyArray(e),r=n[0];void 0===r?t():this.emitBlock(["namespace ",r],!1,(()=>this.emitNamespaces(n.slice(1),t)),1===n.length)}cppTypeInOptional(e,t,n,r){if(1===e.size)return this.cppType(h.defined(i.iterableFirst(e)),t,n,r,!1);const s=[];for(const i of e)0!==s.length&&s.push(", "),s.push(this.cppType(i,{needsForwardIndirection:!0,needsOptionalIndirection:!1,inJsonNamespace:t.inJsonNamespace},n,!1,!1));return[this._variantType,"<",s,">"]}variantType(e,t){const[n,i]=o.removeNullFromUnion(e,!0);m.assert(i.size>=2,"Variant not needed for less than two types.");const r=null!==n,s=this.cppTypeInOptional(i,{needsForwardIndirection:!r,needsOptionalIndirection:!r,inJsonNamespace:t},!0,!1);return r?[x,"<",s,">"]:s}ourQualifier(e){return e||this._options.msbuildPermissive?[i.arrayIntercalate("::",this._namespaceNames),"::"]:[]}jsonQualifier(e){return e||this._options.msbuildPermissive?[]:"nlohmann::"}variantIndirection(e,t){return e?[x,"<",t,">"]:t}cppType(e,t,n,i,r){const a=t.inJsonNamespace;if(r&&e instanceof s.UnionType)for(const s of e.getChildren())if(s.isNullable){r=!1;break}let c=o.matchType(e,(e=>(r=!1,u.maybeAnnotated(n,l.anyTypeIssueAnnotation,[this.jsonQualifier(a),"json"]))),(e=>(r=!1,u.maybeAnnotated(n,l.nullTypeIssueAnnotation,[this.jsonQualifier(a),"json"]))),(e=>"bool"),(e=>"int64_t"),(e=>"double"),(e=>i?"std::string":this._stringType.getType()),(e=>["std::vector<",this.cppType(e.items,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:a},n,i,!1),">"]),(e=>this.variantIndirection(t.needsForwardIndirection&&this.isForwardDeclaredType(e)&&!r,[this.ourQualifier(a),this.nameForNamedType(e)])),(e=>{let t=this._stringType.getType();return i&&(t="std::string"),["std::map<",t,", ",this.cppType(e.values,{needsForwardIndirection:!1,needsOptionalIndirection:!0,inJsonNamespace:a},n,i,!1),">"]}),(e=>[this.ourQualifier(a),this.nameForNamedType(e)]),(e=>{const t=o.nullableFromUnion(e);return null===t?[this.ourQualifier(a),this.nameForNamedType(e)]:(r=!0,this.cppType(t,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:a},n,i,!1))}));return r?[x,"<",c,">"]:c}generatedTypes(e,t){const n=[],i=(t,r,a,u)=>{if(u instanceof s.ArrayType)i(t,r,a+1,u.items);else if(u instanceof s.ClassType)n.push({name:this.nameForNamedType(u),type:u,level:a,variant:r,forceInclude:t});else if(u instanceof s.MapType)i(t,r,a+1,u.values);else if(u instanceof s.EnumType)n.push({name:this.nameForNamedType(u),type:u,level:a,variant:r,forceInclude:!1});else if(u instanceof s.UnionType){this.unionNeedsName(u)&&e&&(t=!0,n.push({name:this.nameForNamedType(u),type:u,level:a,variant:!0,forceInclude:t}));const[s,l]=o.removeNullFromUnion(u);r=null!==s;for(const e of l)i(t,r,a+1,e)}};return i(!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,i)=>{if(this.emitMember(this.cppType(i.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,i.isOptional),e),void 0!==t&&t.has(n)){const e=this.lookupGlobalName(E.ClassMemberConstraints);this.emitMember(e,this.constraintMember(n))}})),this.ensureBlankLine(),this.emitLine("public:")),this.forEachClassProperty(e,"none",((n,i,r)=>{if(this.emitDescription(this.descriptionForClassProperty(e,i)),this._options.codeFormat){const[e,o,a]=h.defined(this._gettersAndSettersForPropertyName.get(n)),u=this.cppType(r.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,r.isOptional),l=this.lookupGlobalName(E.CheckConstraint);r.type instanceof s.UnionType&&void 0!==r.type.findMember("null")||r.isOptional&&"null"!==r.type.kind&&"any"!==r.type.kind?(this.emitLine(u," ",e,"() const { return ",n,"; }"),void 0!==t&&t.has(i)?this.emitLine("void ",a,"(",u," value) { if (value) ",l,"(",this._stringType.createStringLiteral([n]),", ",this.constraintMember(i),", *value); this->",n," = value; }"):this.emitLine("void ",a,"(",u," value) { this->",n," = value; }")):(this.emitLine(this.withConst(u)," & ",e,"() const { return ",n,"; }"),this.emitLine(u," & ",o,"() { return ",n,"; }"),void 0!==t&&t.has(i)?this.emitLine("void ",a,"(",this.withConst(u)," & value) { ",l,"(",this._stringType.createStringLiteral([n]),", ",this.constraintMember(i),", value); this->",n," = value; }"):this.emitLine("void ",a,"(",this.withConst(u)," & value) { this->",n," = value; }")),this.ensureBlankLine()}else this.emitMember(this.cppType(r.type,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!1},!0,!1,r.isOptional),n)}))}generateClassConstraints(e){let t=new Map;return this.forEachClassProperty(e,"none",((e,n,i)=>{const r=L(i.type);if(void 0===r)return;const{minMax:s,minMaxLength:o,pattern:a}=r;t.set(n,[this.constraintMember(n),"(",void 0!==s&&void 0!==s[0]?String(s[0]):this._nulloptType,", ",void 0!==s&&void 0!==s[1]?String(s[1]):this._nulloptType,", ",void 0!==o&&void 0!==o[0]?String(o[0]):this._nulloptType,", ",void 0!==o&&void 0!==o[1]?String(o[1]):this._nulloptType,", ",void 0===a?this._nulloptType:[this._stringType.getType(),"(",this._stringType.createStringLiteral([c.stringEscape(a)]),")"],")"])})),0===t.size?void 0:t}emitClass(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock([this._options.codeFormat?"class ":"struct ",t],!0,(()=>{const n=this.generateClassConstraints(e);if(this._options.codeFormat){if(this.emitLine("public:"),void 0===n)this.emitLine(t,"() = default;");else{this.emitLine(t,"() :");let e=0;n.forEach(((t,i)=>{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 s.MapType&&this._stringType!==this.NarrowString){const e=this.ourQualifier(!0);this.emitLine("void from_json(",this.withConst("json")," & j, ",e,t," & x);"),this.emitLine("void to_json(json & j, ",this.withConst([e,t])," & x);")}}emitClassHeaders(e){const t=this.ourQualifier(!0);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 s.MapType&&this._stringType!==this.NarrowString){const n=this.ourQualifier(!0);let i,r;this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",n,t,"& x)"],!1,(()=>{i=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),r=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),this.emitLine(["x = ",this._stringType.wrapEncodingChange([n],i,r,["j.get<",i,">()"]),";"])})),this.emitBlock(["inline void to_json(json & j, ",this.withConst([n,t])," & x)"],!1,(()=>{i=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),r=this.cppType(e,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1),this.emitLine(["j = ",this._stringType.wrapEncodingChange([n],i,r,"x"),";"])}))}}emitClassFunctions(e,t){const n=this.ourQualifier(!0);let i,r;this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",n,t,"& x)"],!1,(()=>{this.forEachClassProperty(e,"none",((e,t,a)=>{const[,,u]=h.defined(this._gettersAndSettersForPropertyName.get(e)),l=a.type;let p;if(p=this._options.codeFormat?new F(["x.",u,"("],[")"]):new F(["x.",e," = "],[]),"null"!==l.kind&&"any"!==l.kind){if(a.isOptional||l instanceof s.UnionType){const[e,u]=function(){if(l instanceof s.UnionType){const[e,t]=o.removeNullFromUnion(l,!0);return[null!==e||a.isOptional,t]}{let e=new Set;return e.add(l),[!0,e]}}();if(e)return i=this.cppTypeInOptional(u,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!0),r=this.cppTypeInOptional(u,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1),void this.emitLine(p.wrap([],[this._stringType.wrapEncodingChange([n],[x,"<",i,">"],[x,"<",r,">"],[n,"get_optional<",i,">(j, ",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([c.stringEscape(t)])]),")"])]),";")}i=this.cppType(l,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,a.isOptional),r=this.cppType(l,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,a.isOptional),this.emitLine(p.wrap([],this._stringType.wrapEncodingChange([n],i,r,["j.at(",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([c.stringEscape(t)])),").get<",i,">()"])),";")}else this.emitLine(p.wrap([],[n,"get_untyped(j, ",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([c.stringEscape(t)])]),")"]),";")}))})),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,s)=>{const o=s.type;i=this.cppType(o,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,s.isOptional),r=this.cppType(o,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,s.isOptional);const[a,,]=h.defined(this._gettersAndSettersForPropertyName.get(e));let u;u=this._options.codeFormat?[a,"()"]:[e];let l=["j[",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),this._stringType.createStringLiteral([c.stringEscape(t)])),"] = ",this._stringType.wrapEncodingChange([n],i,r,["x.",u]),";"];s.isOptional&&this._options.hideNullOptional?this.emitBlock(["if (",this._stringType.wrapEncodingChange([n],i,r,["x.",u]),")"],!1,(()=>{this.emitLine(l)})):this.emitLine(l)}))}))}emitEnum(e,t){const n=[],i=y.enumCaseValues(e,this.targetLanguage.name);this.forEachEnumCase(e,"none",((e,t)=>{if(n.length>0&&n.push(", "),n.push(e),void 0!==i){const[e]=f.getAccessorName(i,t);void 0!==e&&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){const t=o.removeNullFromUnion(e,!0)[1],n=this.cppTypeInOptional(t,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitLine("void from_json(",this.withConst("json")," & j, ",n," & x);"),this.emitLine("void to_json(json & j, ",this.withConst(n)," & x);")}emitUnionFunctions(e){const t=this.ourQualifier(!0),n=[["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"]],r=o.removeNullFromUnion(e,!0)[1],s=this.cppTypeInOptional(r,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!0},!1,!1);this.emitBlock(["inline void from_json(",this.withConst("json")," & j, ",s," & x)"],!1,(()=>{let e=!0;for(const[s,o]of n){const n=i.iterableFind(r,(e=>e.kind===s));void 0!==n&&(this.emitLine(e?"if":"else if"," (j.",o,"())"),this.indent((()=>{const e=this.cppType(n,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);let i=this.cppType(n,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1);this.emitLine("x = ",this._stringType.wrapEncodingChange([t],e,i,["j.get<",e,">()"]),";")})),e=!1)}this.emitLine('else throw "Could not deserialize";')})),this.ensureBlankLine(),this.emitBlock(["inline void to_json(json & j, ",this.withConst(s)," & x)"],!1,(()=>{this.emitBlock(["switch (x.",this._variantIndexMethodName,"())"],!1,(()=>{let e=0;for(const n of r)this.emitLine("case ",e.toString(),":"),this.indent((()=>{const e=this.cppType(n,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!1,!1),i=this.cppType(n,{needsForwardIndirection:!0,needsOptionalIndirection:!0,inJsonNamespace:!0},!1,!0,!1);this.emitLine("j = ",this._stringType.wrapEncodingChange([t],e,i,[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){const t=this.ourQualifier(!0);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){const n=this.ourQualifier(!0);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,i)=>{this.emitLine("{",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([c.stringEscape(i)])]),", ",n,t,"::",e,"},")}))})),this.emitLine("auto iter = enumValues.find(j.get<".concat(this._stringType.getType(),">());")),this.emitBlock("if (iter != enumValues.end())",!1,(()=>{this.emitLine("x = iter->second;")}));else{let i=!0;this.forEachEnumCase(e,"none",((e,r)=>{const s=i?"":"else ";this.emitLine(s,"if (j == ",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([c.stringEscape(r)])]),") x = ",n,t,"::",e,";"),i=!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,i)=>{this.emitLine("case ",n,t,"::",e,": j = ",this._stringType.wrapEncodingChange([n],this._stringType.getType(),this.NarrowString.getType(),[this._stringType.createStringLiteral([c.stringEscape(i)])]),"; 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("interposing",(e=>this.sourcelikeToString(this.cppTypeInOptional(o.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(o.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"],(()=>{this.emitLine("template <typename T>"),this.emitBlock(["struct adl_serializer<",x,"<T>>"],!0,(()=>{this.emitBlock(["static void to_json(json & j, ",this.withConst([x,"<T>"])," & opt)"],!1,(()=>{this.emitLine("if (!opt) j = nullptr; else j = *opt;")})),this.ensureBlankLine(),this.emitBlock(["static ",x,"<T> from_json(",this.withConst("json")," & j)"],!1,(()=>{this.emitLine("if (j.is_null()) return std::unique_ptr<T>(); else return std::unique_ptr<T>(new T(j.get<T>()));")}))}))})),this.emitLine("#endif")}emitDeclaration(e){if("forward"===e.kind)this._options.codeFormat?this.emitLine("class ",this.nameForNamedType(e.type),";"):this.emitLine("struct ",this.nameForNamedType(e.type),";");else{if("define"!==e.kind)return h.assertNever(e.kind);{const t=e.type,n=this.nameForNamedType(t);if(t instanceof s.ClassType)this.emitClass(t,n);else if(t instanceof s.EnumType)this.emitEnum(t,n);else{if(!(t instanceof s.UnionType))return h.panic("Cannot declare type ".concat(t.kind));this.emitUnionTypedefs(t,n)}}}}emitGetterSetter(e,t,n,i){this.emitLine("void ",n,"(",e," ",i,") { this->",i," = ",i,"; }"),this.emitLine("auto ",t,"() const { return ",i,"; }")}emitConstraintClasses(){const e=this.ourQualifier(!1),t=this.lookupMemberName(A.GetMinValue),n=this.lookupMemberName(A.GetMaxValue),r=this.lookupMemberName(A.GetMinLength),s=this.lookupMemberName(A.GetMaxLength),o=this.lookupMemberName(A.GetPattern),a=this.lookupGlobalName(E.ClassMemberConstraints);this.emitBlock(["class ",a],!0,(()=>{this.emitLine("private:");let e=this.getConstraintMembers();for(const n of e)this.emitMember([this._optionalType,"<",n.cppType,">"],this.lookupMemberName(n.name));this.ensureBlankLine(),this.emitLine("public:"),this.emitLine(a,"("),this.indent((()=>{this.iterableForEach(e,((e,t)=>{let{name:n,cppType:i}=e;const r="first"===t||"middle"===t?",":[];this.emitLine(this._optionalType,"<",i,"> ",this.lookupMemberName(n),r)}))}));const t=e.map((e=>{let{name:t}=e;const n=this.lookupMemberName(t);return[n,"(",n,")"]}));this.emitLine(") : ",i.arrayIntercalate([", "],t)," {}"),this.emitLine(a,"() = default;"),this.emitLine("virtual ~",a,"() = default;");for(const n of e)this.ensureBlankLine(),this.emitGetterSetter(i.withDefault(n.cppConstType,n.cppType),this.lookupMemberName(n.getter),this.lookupMemberName(n.setter),this.lookupMemberName(n.name))})),this.ensureBlankLine();const u=this.lookupGlobalName(E.ClassMemberConstraintException);this.emitBlock(["class ",u," : public std::runtime_error"],!0,(()=>{this.emitLine("public:"),this.emitLine(u,"(",this._stringType.getConstType()," msg) : std::runtime_error(",this._stringType.wrapEncodingChange([e],this._stringType.getType(),this.NarrowString.getType(),["msg"]),") {}")})),this.ensureBlankLine();const l=[E.ValueTooLowException,E.ValueTooHighException,E.ValueTooShortException,E.ValueTooLongException,E.InvalidPatternException];for(const i of l){const e=this.lookupGlobalName(i);this.emitBlock(["class ",e," : public ",u],!0,(()=>{this.emitLine("public:"),this.emitLine(e,"(",this._stringType.getConstType()," msg) : ",u,"(msg) {}")})),this.ensureBlankLine()}const c=this.lookupGlobalName(E.CheckConstraint);this.emitBlock(["inline void ",c,"(",this._stringType.getConstType()," name, ",this.withConst(a)," & c, int64_t value)"],!1,(()=>{this.emitBlock(["if (c.",t,"() != ",this._nulloptType," && value < *c.",t,"())"],!1,(()=>{this.emitLine("throw ",this.lookupGlobalName(E.ValueTooLowException)," (",this._stringType.createStringLiteral(["Value too low for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value"])," + ",this._stringType.createStringLiteral(["<"])," + ",this._stringType.wrapToString(["*c.",t,"()"])," + ",this._stringType.createStringLiteral([")"]),");")})),this.ensureBlankLine(),this.emitBlock(["if (c.",n,"() != ",this._nulloptType," && value > *c.",n,"())"],!1,(()=>{this.emitLine("throw ",this.lookupGlobalName(E.ValueTooHighException)," (",this._stringType.createStringLiteral(["Value too high for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value"])," + ",this._stringType.createStringLiteral([">"])," + ",this._stringType.wrapToString(["*c.",n,"()"])," + ",this._stringType.createStringLiteral([")"]),");")})),this.ensureBlankLine()})),this.ensureBlankLine(),this.emitBlock(["inline void ",c,"(",this._stringType.getConstType()," name, ",this.withConst(a)," & c, ",this._stringType.getConstType()," value)"],!1,(()=>{this.emitBlock(["if (c.",r,"() != ",this._nulloptType," && value.length() < *c.",r,"())"],!1,(()=>{this.emitLine("throw ",this.lookupGlobalName(E.ValueTooShortException)," (",this._stringType.createStringLiteral(["Value too short for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value.length()"])," + ",this._stringType.createStringLiteral(["<"])," + ",this._stringType.wrapToString(["*c.",r,"()"])," + ",this._stringType.createStringLiteral([")"]),");")})),this.ensureBlankLine(),this.emitBlock(["if (c.",s,"() != ",this._nulloptType," && value.length() > *c.",s,"())"],!1,(()=>{this.emitLine("throw ",this.lookupGlobalName(E.ValueTooLongException)," (",this._stringType.createStringLiteral(["Value too long for "])," + name + ",this._stringType.createStringLiteral([" ("])," + ",this._stringType.wrapToString(["value.length()"])," + ",this._stringType.createStringLiteral([">"])," + ",this._stringType.wrapToString(["*c.",s,"()"])," + ",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(E.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&&i.iterableSome(this.typeGraph.allTypesUnordered(),(e=>void 0!==L(e)))&&(this.emitConstraintClasses(),this.ensureBlankLine()),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.ensureBlankLine(),(this.haveUnions||this.haveOptionalProperties)&&(this.emitLine("template <typename T>"),this.emitBlock(["inline ",x,"<T> get_optional(",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<",x,"<T>>();")})),this.emitLine("return ",x,"<T>();")})),this.ensureBlankLine(),this.emitLine("template <typename T>"),this.emitBlock(["inline ",x,"<T> get_optional(",this.withConst("json")," & j, std::string property)"],!1,(()=>{this.emitLine("return get_optional<T>(j, property.data());")})),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=>void 0===this.namedTypeToNameForTopLevel(e)))}emitGenerators(){let e=!1;const t=this.gatherSource((()=>this.emitNamespaces(this._namespaceNames,(()=>{e=this.forEachTopLevel("none",((e,t)=>this.emitTopLevelTypedef(e,t)),(e=>void 0===this.namedTypeToNameForTopLevel(e)))}))));if(e&&(this.emitGatheredSource(t),this.ensureBlankLine()),!this._options.justTypes){let e=["nlohmann"];this._options.msbuildPermissive&&(e=["nlohmann","detail"]),this.emitNamespaces(e,(()=>{this.forEachObject("leading-and-interposing",((e,t)=>this.emitClassHeaders(t))),this.forEachTopLevel("leading-and-interposing",((e,t)=>this.emitTopLevelHeaders(e,t))),this.forEachEnum("leading-and-interposing",((e,t)=>this.emitEnumHeaders(t))),this.haveUnions&&this.emitAllUnionHeaders(),this.ensureBlankLine(),this.forEachObject("leading-and-interposing",((e,t)=>this.emitClassFunctions(e,t))),this.forEachEnum("leading-and-interposing",((e,t)=>this.emitEnumFunctions(e,t))),this.haveUnions&&this.emitAllUnionFunctions(),this.forEachTopLevel("leading-and-interposing",((e,t)=>this.emitTopLevelFunction(e,t)),(e=>void 0===this.namedTypeToNameForTopLevel(e)))}))}}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,i){const r=this.generatedTypes(e,n);for(const a of r){const e=this.sourcelikeToString(a.name);let n={kind:void 0,typeKind:void 0};if(a.type instanceof s.ClassType)n.typeKind="class",n.kind=0===a.level?C.Include:C.ForwardDeclare,a.forceInclude&&(n.kind=C.Include);else if(a.type instanceof s.EnumType)n.typeKind="enum",n.kind=C.ForwardDeclare;else if(a.type instanceof s.UnionType){n.typeKind="union";const[e]=o.removeNullFromUnion(a.type,!0);void 0!==e||a.forceInclude?n.kind=C.Include:n.kind=C.ForwardDeclare}if(t.has(e)){const i=t.get(e);void 0!==i&&i.kind===C.ForwardDeclare&&t.set(e,n)}else t.set(e,n)}}emitIncludes(e,t){let n=new Map;if(e instanceof s.UnionType?this.updateIncludes(!1,n,e,t):e instanceof s.ClassType&&this.forEachClassProperty(e,"none",((e,i,r)=>{this.updateIncludes(!0,n,r.type,t)})),0!==n.size){let e=0,i=0;n.forEach(((n,r)=>{r!==t&&(n.kind!==C.ForwardDeclare?(this.emitInclude(!1,[r,".hpp"]),i++):e++)})),i>0&&this.ensureBlankLine(),e>0&&this.emitNamespaces(this._namespaceNames,(()=>{n.forEach(((e,n)=>{n!==t&&e.kind===C.ForwardDeclare&&("class"===e.typeKind||"union"===e.typeKind?this._options.codeFormat?this.emitLine("class ",n,";"):this.emitLine("struct ",n,";"):"enum"===e.typeKind?this.emitLine("enum class ",n," : ",this._enumType,";"):h.panic('Invalid type "'.concat(e.typeKind,'" to forward declare')))}))})),this.ensureBlankLine()}}emitDefinition(e,t){const 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 s.ClassType?this.emitClass(e,t):e instanceof s.EnumType?this.emitEnum(e,t):e instanceof s.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=>void 0===this.namedTypeToNameForTopLevel(e)))})),this.finishFile())}emitSourceStructure(e){this._generatedFiles.clear(),this._allTypeNames.clear(),this.forEachDeclaration("none",(e=>{const t=o.directlyReachableTypes(e.type,(e=>o.isNamedType(e)&&(e instanceof s.ClassType||e instanceof s.EnumType||e instanceof s.UnionType)?new Set([this.sourcelikeToString(this.cppType(e,{needsForwardIndirection:!1,needsOptionalIndirection:!1,inJsonNamespace:!1},!0,!1,!1))]):null));this._allTypeNames=i.setUnion(t,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)}}t.CPlusPlusRenderer=j},56699:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(97714),a=n(60877),u=n(78920),l=n(77239),c=n(4007),h=n(59592),p=n(85332),d=n(78818),m=n(93587),f=n(85101),y=n(16176);var g;function _(e){return e}function v(e){if(e instanceof r.UnionType){const t=s.nullableFromUnion(e);return null===t?"automatic":"manual"===v(t)?"nullable":"none"}if(e instanceof r.ArrayType){const t=v(e.items);return"manual"===t||"nullable"===t?"automatic":"none"}return e instanceof r.EnumType?"automatic":"double"===e.kind?void 0!==f.minMaxValueForType(e)?"manual":"none":"integer-string"===e.kind||"bool-string"===e.kind||"string"===e.kind&&void 0!==f.minMaxLengthForType(e)?"manual":"none"}function b(e){const t=e.targetType;return t instanceof r.EnumType||t instanceof r.UnionType&&null===s.nullableFromUnion(t)}!function(e){e[e.None=0]="None",e[e.Public=1]="Public",e[e.Internal=2]="Internal"}(g=t.AccessModifier||(t.AccessModifier={})),t.cSharpOptions={useList:new p.EnumOption("array-type","Use T[] or List<T>",[["array",!1],["list",!0]]),dense:new p.EnumOption("density","Property density",[["normal",!1],["dense",!0]],"normal","secondary"),namespace:new p.StringOption("namespace","Generated namespace","NAME","QuickType"),version:new p.EnumOption("csharp-version","C# version",[["5",5],["6",6]],"6","secondary"),virtual:new p.BooleanOption("virtual","Generate virtual properties",!1),typeForAny:new p.EnumOption("any-type",'Type to use for "any"',[["object","object"],["dynamic","dynamic"]],"object","secondary"),useDecimal:new p.EnumOption("number-type","Type to use for numbers",[["double",!1],["decimal",!0]],"double","secondary")};class T extends h.TargetLanguage{getOptions(){return[t.cSharpOptions.namespace,t.cSharpOptions.version,t.cSharpOptions.dense,t.cSharpOptions.useList,t.cSharpOptions.useDecimal,t.cSharpOptions.typeForAny,t.cSharpOptions.virtual]}get stringTypeMapping(){const 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){const t=v(e);return"none"!==t&&"nullable"!==t}makeRenderer(e,n){return new N(this,e,p.getOptionValues(t.cSharpOptions,n))}}t.CSharpTargetLanguage=T;const w=l.funPrefixNamer("namer",(function(e){const t=a.splitIntoWords(e);return a.combineWords(t,S,a.firstUpperWordStyle,a.firstUpperWordStyle,a.firstUpperWordStyle,a.firstUpperWordStyle,"",k)}));function k(e){return!!y.isAlphabetic(e)||95===e}const S=a.utf16LegalizeCharacters((function(e){const t=y.getCategory(e);return["Nd","Pc","Mn","Mc"].indexOf(t)>=0||k(e)}));function L(e){return e instanceof r.UnionType?null===s.nullableFromUnion(e):["integer","double","bool","enum","date-time","uuid"].indexOf(e.kind)>=0}class N extends c.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 w}namerForObjectProperty(){return w}makeUnionMemberNamer(){return w}makeEnumCaseNamer(){return w}unionNeedsName(e){return null===s.nullableFromUnion(e)}namedTypeToNameForTopLevel(e){return s.directlyReachableSingleNamedType(e)}emitBlock(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.emitLine("{"),this.indent(e),this.emitLine("}",t?";":"")}get doubleType(){return this._csOptions.useDecimal?"decimal":"double"}csType(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:m.followTargetType,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const i=t(e);return s.matchType(i,(e=>o.maybeAnnotated(n,d.anyTypeIssueAnnotation,this._csOptions.typeForAny)),(e=>o.maybeAnnotated(n,d.nullTypeIssueAnnotation,this._csOptions.typeForAny)),(e=>"bool"),(e=>"long"),(e=>this.doubleType),(e=>"string"),(e=>{const i=this.csType(e.items,t,n);return this._csOptions.useList?["System.Collections.Generic.List<",i,">"]:[i,"[]"]}),(e=>this.nameForNamedType(e)),(e=>["System.Collections.Generic.Dictionary<string, ",this.csType(e.values,t,n),">"]),(e=>this.nameForNamedType(e)),(e=>{const t=s.nullableFromUnion(e);return null!==t?this.nullableCSType(t,_):this.nameForNamedType(e)}),(e=>function(e){switch(e.kind){case"date-time":return"DateTimeOffset";case"uuid":return"Guid";case"uri":return"Uri";default:return u.panic("Transformed string type ".concat(e.kind," not supported"))}}(e)))}nullableCSType(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:m.followTargetType,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];e=m.followTargetType(e);const i=this.csType(e,t,n);return L(e)?[i,"?"]:i}baseclassForType(e){}emitType(e,t,n,i,r,s){switch(t){case g.Public:n=["public ",n];break;case g.Internal:n=["internal ",n]}this.emitDescription(e),void 0===r?this.emitLine(n," ",i):this.emitLine(n," ",i," : ",r),this.emitBlock(s)}attributesForProperty(e,t,n,i){}propertyDefinition(e,t,n,i){const r=e.type,s=e.isOptional?this.nullableCSType(r,m.followTargetType,!0):this.csType(r,m.followTargetType,!0),o=["public "];return this._csOptions.virtual&&o.push("virtual "),[...o,s," ",t," { get; set; }"]}emitDescriptionBlock(e){const 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),g.Public,"partial class",t,this.baseclassForType(e),(()=>{if(0===e.getProperties().size)return;const t=this.blankLinesBetweenAttributes()?"interposing":"none";let n,i=[],r=!0;this.forEachClassProperty(e,t,((t,s,o)=>{const a=this.attributesForProperty(o,t,e,s),u=this.descriptionForClassProperty(e,s),l=this.propertyDefinition(o,t,e,s);if(void 0===a)(!r&&void 0!==u||void 0!==n)&&this.ensureBlankLine(),this.emitDescription(u),this.emitLine(l);else if(this._csOptions.dense&&a.length>0){const e=void 0===u?"":" // ".concat(u.join("; "));i.push([a," ",l,e])}else{this.emitDescription(u);for(const e of a)this.emitLine(e);this.emitLine(l)}r=!1,n=u})),i.length>0&&this.emitTable(i)}))}emitUnionDefinition(e,t){const n=s.removeNullFromUnion(e,!0)[1];this.emitType(this.descriptionForType(e),g.Public,"partial struct",t,this.baseclassForType(e),(()=>{this.forEachUnionMember(e,n,"none",null,((e,t)=>{const n=this.nullableCSType(t);this.emitLine("public ",n," ",e,";")})),this.ensureBlankLine();const r=Array.from(n).map((t=>[this.nameForUnionMember(e,t)," == null"]));this.ensureBlankLine(),this.forEachUnionMember(e,n,"none",null,((e,n)=>{const i=this.csType(n);this.emitExpressionMember(["public static implicit operator ",t,"(",i," ",e,")"],["new ",t," { ",e," = ",e," }"])})),void 0!==e.findMember("null")&&this.emitExpressionMember("public bool IsNull",i.arrayIntercalate(" && ",r),!0)}))}emitEnumDefinition(e,t){const 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){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];5===this._csOptions.version?(this.emitLine(e),this.emitBlock((()=>{const e=["return ",t,";"];n?(this.emitLine("get"),this.emitBlock((()=>this.emitLine(e)))):this.emitLine(e)}))):this.emitLine(e," => ",t,";")}emitTypeSwitch(e,t,n,i,r){u.assert(!i||n,"Can only have return with block");for(const s of e)this.emitLine("if (",t(s),")"),n?this.emitBlock((()=>{r(s),i&&this.emitLine("return;")})):this.indent((()=>r(s)))}emitUsing(e){this.emitLine("using ",e,";")}emitUsings(){for(const 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(){}needNamespace(){return!0}emitSourceStructure(){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this.emitDefaultLeadingComments(),this.ensureBlankLine(),this.needNamespace()?(this.emitLine("namespace ",this._csOptions.namespace),this.emitBlock((()=>{this.emitUsings(),this.emitTypesAndSupport()}))):(this.emitUsings(),this.emitTypesAndSupport())}}t.CSharpRenderer=N,t.newtonsoftCSharpOptions=Object.assign({},t.cSharpOptions,{features:new p.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 p.EnumOption("base-class","Base class",[["EntityData","EntityData"],["Object",void 0]],"Object","secondary"),checkRequired:new p.BooleanOption("check-required","Fail if required properties are missing",!1)});t.NewtonsoftCSharpTargetLanguage=class extends T{constructor(){super("C#",["cs","csharp"],"cs")}getOptions(){return[t.newtonsoftCSharpOptions.namespace,t.newtonsoftCSharpOptions.version,t.newtonsoftCSharpOptions.dense,t.newtonsoftCSharpOptions.useList,t.newtonsoftCSharpOptions.useDecimal,t.newtonsoftCSharpOptions.features,t.newtonsoftCSharpOptions.checkRequired,t.newtonsoftCSharpOptions.typeForAny,t.newtonsoftCSharpOptions.baseclass,t.newtonsoftCSharpOptions.virtual]}makeRenderer(e,n){return new O(this,e,p.getOptionValues(t.newtonsoftCSharpOptions,n))}};class O extends N{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(){const e=["Converter","JsonConverter","JsonSerializer","JsonWriter","JsonToken","Serialize","Newtonsoft","MetadataPropertyHandling","DateParseHandling","FromJson","Required"];return this._options.dense&&e.push("J","R","N"),void 0!==this._options.baseclass&&e.push(this._options.baseclass),super.forbiddenNamesForGlobalNamespace().concat(e)}forbiddenForObjectProperties(e,t){const n=super.forbiddenForObjectProperties(e,t);return n.names=n.names.concat(["ToJson","FromJson","Required"]),n}makeNameForTransformation(e,t){if(void 0===t){let t=e.transformer;return t instanceof m.DecodingTransformer&&void 0!==t.consumer&&(t=t.consumer),new l.SimpleName(["".concat(t.kind,"_converter")],w,c.inferredNameOrder+30)}return new l.DependencyName(w,t.order+30,(e=>"".concat(e(t),"_converter")))}makeNamedTypeDependencyNames(e,t){if(!(e instanceof r.EnumType))return[];const n=new l.DependencyName(w,t.order+30,(e=>"".concat(e(t),"_extensions")));return this._enumExtensionsNames.set(t,n),[n]}emitUsings(){if(this._needAttributes||this._needHelpers){super.emitUsings(),this.ensureBlankLine();for(const e of["System.Globalization","Newtonsoft.Json","Newtonsoft.Json.Converters"])this.emitUsing(e);this._options.dense&&(this.emitUsing(["J"," = Newtonsoft.Json.JsonPropertyAttribute"]),this.emitUsing(["R"," = Newtonsoft.Json.Required"]),this.emitUsing(["N"," = Newtonsoft.Json.NullValueHandling"])),"EntityData"===this._options.baseclass&&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",1===this.topLevels.size?"":" 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 ",o.modifySource(a.camelCase,t)," = ",n,";")})))}converterForType(e){let t=m.transformationForType(e);if(void 0===t&&e instanceof r.UnionType){const n=s.nullableFromUnion(e);null!==n&&(e=n,t=m.transformationForType(e))}if(void 0!==t&&!b(t))return u.defined(this.nameForTransformation(e))}attributesForProperty(e,t,n,i){if(!this._needAttributes)return;const r=[],s=this._options.dense?"J":"JsonProperty",o=a.utf16StringEscape(i),u=m.followTargetType(e.type).isNullable,l=e.isOptional,c=this._options.dense?"R":"Required",h=this._options.dense?"N":"NullValueHandling",p=l&&!u?[", NullValueHandling = ",h,".Ignore"]:[];let d;d=!this._options.checkRequired||l&&u?[p]:l&&!u?[", Required = ",c,".DisallowNull",p]:!l&&u?[", Required = ",c,".AllowNull"]:[", Required = ",c,".Always",p],r.push(["[",s,'("',o,'"',d,")]"]);const f=this.converterForType(e.type);return void 0!==f&&r.push(["[JsonConverter(typeof(",f,"))]"]),r}blankLinesBetweenAttributes(){return this._needAttributes&&!this._options.dense}topLevelResultType(e){return"any"===e.kind||"none"===e.kind?"object":this.csType(e)}emitFromJsonForTopLevel(e,t){if(e instanceof r.EnumType)return;let n,i;const s=this.namedTypeToNameForTopLevel(e);void 0!==s?(n="partial ",i=s instanceof r.ClassType?"class":"struct"):(n="",i="class");const o=this.topLevelResultType(e);this.emitType(void 0,g.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,g.Public,"static class","Serialize",void 0,(()=>{const 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,g.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(const[e,t]of this.typesWithNamedTransformations)b(u.defined(m.transformationForType(e)))&&this.emitLine(this.converterObject(t),",");this.emitLine("new IsoDateTimeConverter { DateTimeStyles = DateTimeStyles.AssumeUniversal }")})),this.emitLine("},")}),!0)}))}emitDecoderTransformerCase(e,t,n,i,r){if(void 0!==n){for(const t of e)this.emitTokenCase(t);this.indent((()=>{this.emitDecodeTransformer(n,i,r,t)||this.emitLine("break;")}))}}emitConsume(e,t,n,i){return void 0===t?(i(e),!0):this.emitTransformer(e,t,n,i)}emitDecodeTransformer(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"value";if(e instanceof m.DecodingTransformer){const r=e.sourceType,s=this.converterForType(t);if(void 0!==s){const e=this.csType(t);this.emitLine("var converter = ",this.converterObject(s),";"),this.emitLine("var ",i," = (",e,")converter.ReadJson(reader, typeof(",e,"), null, serializer);")}else if("null"!==r.kind){let e="double"===t.kind?t:r;this.emitLine("var ",i," = ",this.deserializeTypeCode(this.csType(e)),";")}return this.emitConsume(i,e.consumer,t,n)}if(e instanceof m.ArrayDecodingTransformer){if(!(t instanceof r.ArrayType))return u.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 s=i;return this._options.useList||(s=[s,".ToArray()"]),n(s),!0}return e instanceof m.DecodingChoiceTransformer?(this.emitDecoderSwitch((()=>{const i=e.nullTransformer;void 0!==i&&(this.emitTokenCase("Null"),this.indent((()=>{this.emitDecodeTransformer(i,t,n,"null")||this.emitLine("break")}))),this.emitDecoderTransformerCase(["Integer"],"integerValue",e.integerTransformer,t,n),this.emitDecoderTransformerCase(void 0===e.integerTransformer?["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):u.panic("Unknown transformer")}stringCaseValue(e,t){return"string"===e.kind?['"',a.utf16StringEscape(t),'"']:e instanceof r.EnumType?[this.nameForNamedType(e),".",this.nameForEnumCase(e,t)]:u.panic("Type ".concat(e.kind," does not have string cases"))}emitTransformer(e,t,n,o){if(t instanceof m.ChoiceTransformer){const i=t.transformers;if(i.length>1&&i.every((e=>e instanceof m.StringMatchTransformer)))return this.emitLine("switch (",e,")"),this.emitBlock((()=>{for(const t of i){const i=t,r=this.stringCaseValue(m.followTargetType(i.sourceType),i.stringCase);this.emitLine("case ",r,":"),this.indent((()=>{this.emitTransformer(e,i.transformer,n,o)||this.emitLine("break;")}))}})),!1;for(const t of i)this.emitTransformer(e,t,n,o)}else if(t instanceof m.UnionMemberMatchTransformer){const i=t.memberType;let r,a;if(null!==s.nullableFromUnion(t.sourceType))"null"===i.kind?(r=[e," == null"],a="null"):(r=[e," != null"],a=e);else if("null"===i.kind)r=[e,".IsNull"],a="null";else{const n=this.nameForUnionMember(t.sourceType,i);a=[e,".",n],r=[a," != null"]}"null"!==i.kind&&L(i)&&(a=[a,".Value"]),this.emitLine("if (",r,")"),this.emitBlock((()=>this.emitTransformer(a,t.transformer,n,o)))}else if(t instanceof m.StringMatchTransformer){const i=this.stringCaseValue(m.followTargetType(t.sourceType),t.stringCase);this.emitLine("if (",e," == ",i,")"),this.emitBlock((()=>this.emitTransformer(e,t.transformer,n,o)))}else{if(t instanceof m.EncodingTransformer){const n=this.converterForType(t.sourceType);return void 0!==n?(this.emitLine("var converter = ",this.converterObject(n),";"),this.emitLine("converter.WriteJson(writer, ",e,", serializer);")):this.emitLine(this.serializeValueCode(e),";"),o([]),!0}if(t instanceof m.ArrayEncodingTransformer){this.emitLine("writer.WriteStartArray();");const 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}if(t instanceof m.ParseStringTransformer){const i=void 0===t.consumer?n:t.consumer.sourceType;switch(i.kind){case"date-time":this.emitLine("DateTimeOffset dt;"),this.emitLine("if (DateTimeOffset.TryParse(",e,", out dt))"),this.emitBlock((()=>this.emitConsume("dt",t.consumer,n,o)));break;case"uuid":this.emitLine("Guid guid;"),this.emitLine("if (Guid.TryParse(",e,", out guid))"),this.emitBlock((()=>this.emitConsume("guid",t.consumer,n,o)));break;case"uri":this.emitLine("try"),this.emitBlock((()=>{this.emitLine("var uri = new Uri(",e,");"),this.emitConsume("uri",t.consumer,n,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,n,o)));break;case"bool":this.emitLine("bool b;"),this.emitLine("if (Boolean.TryParse(",e,", out b))"),this.emitBlock((()=>this.emitConsume("b",t.consumer,n,o)));break;default:return u.panic("Parsing string to ".concat(i.kind," not supported"))}}else{if(!(t instanceof m.StringifyTransformer)){if(t instanceof m.StringProducerTransformer){const e=this.stringCaseValue(void 0===(a=t.consumer)?n:m.followTargetType(a.sourceType),t.result);return this.emitConsume(e,t.consumer,n,o)}if(t instanceof m.MinMaxLengthCheckTransformer){const r=t.minLength,s=t.maxLength,a=[];return void 0!==r&&a.push([e,".Length >= ",r.toString()]),void 0!==s&&a.push([e,".Length <= ",s.toString()]),this.emitLine("if (",i.arrayIntercalate([" && "],a),")"),this.emitBlock((()=>this.emitConsume(e,t.consumer,n,o))),!1}if(t instanceof m.MinMaxValueTransformer){const r=t.minimum,s=t.maximum,a=[];return void 0!==r&&a.push([e," >= ",r.toString()]),void 0!==s&&a.push([e," <= ",s.toString()]),this.emitLine("if (",i.arrayIntercalate([" && "],a),")"),this.emitBlock((()=>this.emitConsume(e,t.consumer,n,o))),!1}if(t instanceof m.UnionInstantiationTransformer){if(!(n instanceof r.UnionType))return u.panic("Union instantiation transformer must produce a union type");if(null!==s.nullableFromUnion(n))o(e);else{const i=this.nameForNamedType(n);let r;if("null"===t.sourceType.kind)r=" ";else{r=[" ",this.nameForUnionMember(n,t.sourceType)," = ",e," "]}o(["new ",i," {",r,"}"])}return!0}return u.panic("Unknown transformer")}switch(t.sourceType.kind){case"date-time":return this.emitConsume([e,'.ToString("o", System.Globalization.CultureInfo.InvariantCulture)'],t.consumer,n,o);case"uuid":return this.emitConsume([e,'.ToString("D", System.Globalization.CultureInfo.InvariantCulture)'],t.consumer,n,o);case"integer":case"uri":return this.emitConsume([e,".ToString()"],t.consumer,n,o);case"bool":return this.emitLine("var boolString = ",e,' ? "true" : "false";'),this.emitConsume("boolString",t.consumer,n,o);default:return u.panic("Stringifying ".concat(t.sourceType.kind," not supported"))}}}var a;return!1}emitTransformation(e,t){const n=u.defined(m.transformationForType(t)),i=n.reverse,s=n.targetType,o=n.transformer;this.emitType(void 0,g.Internal,"class",e,"JsonConverter",(()=>{const t=this.csType(s);let n=["t == typeof(",t,")"];const a=L(s);a&&(n=[n," || t == typeof(",t,"?)"]),this.emitCanConvert(n),this.ensureBlankLine(),this.emitReadJson((()=>{!a||s instanceof r.UnionType||this.emitLine("if (reader.TokenType == JsonToken.Null) return null;");this.emitDecodeTransformer(o,s,(e=>this.emitLine("return ",e,";")))||this.emitThrow(['"Cannot unmarshal type ',t,'"'])})),this.ensureBlankLine(),this.emitWriteJson("untypedValue",(()=>{!a||s 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}}t.NewtonsoftCSharpRenderer=O},46428:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(59592),r=n(4007),s=n(60877),o=n(77239),a=n(32866),u=n(97714),l=n(78818);class c extends i.TargetLanguage{makeRenderer(e){return new _(this,e)}constructor(){super("Crystal",["crystal","cr","crystallang"],"cr")}get defaultIndentation(){return"  "}getOptions(){return[]}}t.CrystalTargetLanguage=c;const h=["Any","Array","Atomic","Bool","Channel","Char","Class","Enum","Enumerable","Event","Extern","Exception","File","Float","Float32","Float64","GC","GZip","Hash","HTML","HTTP","Int","Int128","Int16","Int32","Int64","Int8","Iterable","Link","Logger","Math","Mutex","Nil","Number","JSON","IO","Object","Pointer","Proc","Process","Range","Random","Regex","Reference","Set","Signal","Slice","Spec","StaticArray","String","Struct","Symbol","System","TCPServer","TCPSocket","Socket","Tempfile","Termios","Time","Tuple","ThreadLocal","UDPSocket","UInt128","UInt16","UInt32","UInt64","UInt8","Union","UNIXServer","UNIXSocket","UUID","URI","VaList","Value","Void","WeakRef","XML","YAML","Zip","Zlib","abstract","alias","as","as?","asm","begin","break","case","class","def","do","else","elsif","end","ensure","enum","extend","false","for","fun","if","in","include","instance_sizeof","is_a?","lib","macro","module","next","nil","nil?","of","out","pointerof","private","protected","require","rescue","return","select","self","sizeof","struct","super","then","true","type","typeof","uninitialized","union","unless","until","when","while","with","yield"];function p(e){return!!s.isAscii(e)&&s.isLetterOrUnderscore(e)}const d=s.legalizeCharacters((function(e){return!!s.isAscii(e)&&s.isLetterOrUnderscoreOrDigit(e)}));function m(e,t){const n=s.splitIntoWords(e),i=t?s.allLowerWordStyle:s.firstUpperWordStyle,r=s.combineWords(n,d,i,i,i,i,t?"_":"",p);return"_"===r?"_underscore":r}const f=o.funPrefixNamer("default",(e=>m(e,!0))),y=o.funPrefixNamer("camel",(e=>m(e,!1)));const g=s.utf32ConcatMap(s.escapeNonPrintableMapper(s.isPrintable,(function(e){return e<=65535?"\\u{"+s.intToHex(e,4)+"}":"\\u{"+s.intToHex(e,6)+"}"})));class _ extends r.ConvenienceRenderer{constructor(e,t){super(e,t)}makeNamedTypeNamer(){return y}namerForObjectProperty(){return f}makeUnionMemberNamer(){return y}makeEnumCaseNamer(){return y}forbiddenNamesForGlobalNamespace(){return h}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){const t=e.kind;return"array"===t||"map"===t}crystalType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return a.matchType(e,(e=>u.maybeAnnotated(t,l.anyTypeIssueAnnotation,"JSON::Any?")),(e=>u.maybeAnnotated(t,l.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=>{const n=a.nullableFromUnion(e);if(null!==n)return this.nullableCrystalType(n,t);const[i]=a.removeNullFromUnion(e),r=this.nameForNamedType(e);return null!==i?[r,"?"]:r}))}breakCycle(e,t){return this.crystalType(e,t)}emitRenameAttribute(e,t){const 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,i)=>{this.ensureBlankLine(),this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitRenameAttribute(t,n),this.emitLine("property ",t," : ",this.crystalType(i.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(null!==a.nullableFromUnion(e))return;this.emitDescription(this.descriptionForType(e));const[,n]=a.removeNullFromUnion(e);let i=[];this.forEachUnionMember(e,n,"none",null,((e,t)=>{const n=this.breakCycle(t,!0);i.push([n])})),this.emitLine(["alias ",t," = ",i.map((e=>e.map((e=>this.sourcelikeToString(e))))).join(" | ")])}emitTopLevelAlias(e,t){this.emitLine("alias ",t," = ",this.crystalType(e))}emitLeadingComments(){void 0===this.leadingComments?this.emitMultiline('# Example code that deserializes and serializes the model:\n#\n# require "json"\n#\n# class Location\n#   include JSON::Serializable\n#\n#   @[JSON::Field(key: "lat")]\n#   property latitude : Float64\n#\n#   @[JSON::Field(key: "lng")]\n#   property longitude : Float64\n# end\n#\n# class House\n#   include JSON::Serializable\n#   property address : String\n#   property location : Location?\n# end\n#\n# house = House.from_json(%({"address": "Crystal Road 1234", "location": {"lat": 12.3, "lng": 34.5}}))\n# house.address  # => "Crystal Road 1234"\n# house.location # => #<Location:0x10cd93d80 @latitude=12.3, @longitude=34.5>\n'):this.emitCommentLines(this.leadingComments)}emitSourceStructure(){this.emitLeadingComments(),this.ensureBlankLine(),this.emitLine('require "json"'),this.forEachTopLevel("leading",((e,t)=>this.emitTopLevelAlias(e,t)),(e=>void 0===this.namedTypeToNameForTopLevel(e))),this.forEachObject("leading-and-interposing",((e,t)=>this.emitStructDefinition(e,t))),this.forEachUnion("leading-and-interposing",((e,t)=>this.emitUnion(e,t)))}}t.CrystalRenderer=_},30077:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(41283),r=n(32866),s=n(97714),o=n(60877),a=n(77239),u=n(4007),l=n(59592),c=n(85332),h=n(78818),p=n(78920),d=n(74868);t.dartOptions={justTypes:new c.BooleanOption("just-types","Types only",!1),codersInClass:new c.BooleanOption("coders-in-class","Put encoder & decoder in Class",!1),methodNamesWithMap:new c.BooleanOption("from-map","Use method names fromMap() & toMap()",!1),requiredProperties:new c.BooleanOption("required-props","Make all properties required",!1),finalProperties:new c.BooleanOption("final-props","Make all properties final",!1),generateCopyWith:new c.BooleanOption("copy-with","Generate CopyWith method",!1),useFreezed:new c.BooleanOption("use-freezed","Generate class definitions with @freezed compatibility",!1),useHive:new c.BooleanOption("use-hive","Generate annotations for Hive type adapters",!1),partName:new c.StringOption("part-name","Use this name in `part` directive","NAME","")};class m extends l.TargetLanguage{constructor(){super("Dart",["dart"],"dart")}getOptions(){return[t.dartOptions.justTypes,t.dartOptions.codersInClass,t.dartOptions.methodNamesWithMap,t.dartOptions.requiredProperties,t.dartOptions.finalProperties,t.dartOptions.generateCopyWith,t.dartOptions.useFreezed,t.dartOptions.useHive,t.dartOptions.partName]}get supportsUnionsWithBothNumberTypes(){return!0}get stringTypeMapping(){const e=new Map;return e.set("date","date"),e.set("date-time","date-time"),e}makeRenderer(e,n){const i=c.getOptionValues(t.dartOptions,n);return new k(this,e,i)}}t.DartTargetLanguage=m;const f=["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"],y=a.funPrefixNamer("types",(e=>w(!0,!1,e))),g=a.funPrefixNamer("properties",(e=>w(!1,!1,e))),_=a.funPrefixNamer("enum-cases",(e=>w(!0,!0,e))),v=o.utf16ConcatMap(o.escapeNonPrintableMapper((e=>o.isPrintable(e)&&36!==e),o.standardUnicodeHexEscape));function b(e){return 95!==e&&(o.isAscii(e)&&o.isLetter(e))}const T=o.utf16LegalizeCharacters((function(e){return b(e)||o.isAscii(e)&&o.isDigit(e)}));function w(e,t,n){const i=o.splitIntoWords(n),r=t?o.allUpperWordStyle:e?o.firstUpperWordStyle:o.allLowerWordStyle,s=t?o.allUpperWordStyle:o.firstUpperWordStyle;return o.combineWords(i,T,r,s,r,s,t?"_":"",b)}class k extends u.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 f}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeNamedTypeNamer(){return y}namerForObjectProperty(){return g}makeUnionMemberNamer(){return g}makeEnumCaseNamer(){return _}unionNeedsName(e){return null===r.nullableFromUnion(e)}namedTypeToNameForTopLevel(e){return r.directlyReachableSingleNamedType(e)}get toJson(){return"to".concat(this._options.methodNamesWithMap?"Map":"Json")}get fromJson(){return"from".concat(this._options.methodNamesWithMap?"Map":"Json")}makeTopLevelDependencyNames(e,t){const n=new a.DependencyName(g,t.order,(e=>"".concat(e(t),"_").concat(this.toJson))),i=new a.DependencyName(g,t.order,(e=>"".concat(e(t),"_").concat(this.fromJson)));return this._topLevelDependents.set(t,{encoder:n,decoder:i}),[n,i]}makeNamesForPropertyGetterAndSetter(e,t,n,i,r){return[new a.DependencyName(g,r.order,(e=>"get_".concat(e(r)))),new a.DependencyName(g,r.order,(e=>"set_".concat(e(r))))]}makePropertyDependencyNames(e,t,n,i,r){const s=this.makeNamesForPropertyGetterAndSetter(e,t,n,i,r);return this._gettersAndSettersForPropertyName.set(r,s),s}makeNamedTypeDependencyNames(e,t){if(!(e instanceof i.EnumType))return[];const n=new a.DependencyName(g,t.order,(e=>"".concat(e(t),"_values")));return this._enumValues.set(e,n),[n]}emitFileHeader(){if(void 0!==this.leadingComments&&this.emitCommentLines(this.leadingComments),!this._options.justTypes&&(this.emitLine("// To parse this JSON data, do"),this.emitLine("//"),this.forEachTopLevel("none",((e,t)=>{const{decoder:n}=p.defined(this._topLevelDependents.get(t));this.emitLine("//     final ",s.modifySource(o.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();const e=0===this._options.partName.length,t=s.modifySource(o.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){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return r.matchType(e,(e=>s.maybeAnnotated(t,h.anyTypeIssueAnnotation,"dynamic")),(e=>s.maybeAnnotated(t,h.nullTypeIssueAnnotation,"dynamic")),(e=>"bool"),(e=>"int"),(e=>"double"),(e=>"String"),(e=>["List<",this.dartType(e.items,t),">"]),(e=>this.nameForNamedType(e)),(e=>["Map<String, ",this.dartType(e.values,t),">"]),(e=>this.nameForNamedType(e)),(e=>{const n=r.nullableFromUnion(e);return null===n?"dynamic":this.dartType(n,t)}),(e=>{switch(e.kind){case"date-time":case"date":return"DateTime";default:return"String"}}))}mapList(e,t,n){return["List<",e,">.from(",t,".map((x) => ",n,"))"]}mapMap(e,t,n){return["Map.from(",t,").map((k, v) => MapEntry<String, ",e,">(k, ",n,"))"]}fromDynamicExpression(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return r.matchType(e,(e=>n),(e=>n),(e=>n),(e=>n),(e=>[n,".toDouble()"]),(e=>n),(e=>this.mapList(this.dartType(e.items),n,this.fromDynamicExpression(e.items,"x"))),(e=>[this.nameForNamedType(e),".",this.fromJson,"(",n,")"]),(e=>this.mapMap(this.dartType(e.values),n,this.fromDynamicExpression(e.values,"v"))),(e=>[p.defined(this._enumValues.get(e)),".map[",n,"]"]),(e=>{const t=r.nullableFromUnion(e);return null===t?n:[n," == null ? null : ",this.fromDynamicExpression(t,n)]}),(e=>{switch(e.kind){case"date-time":case"date":return["DateTime.parse(",n,")"];default:return n}}))}toDynamicExpression(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return r.matchType(e,(e=>n),(e=>n),(e=>n),(e=>n),(e=>n),(e=>n),(e=>this.mapList("dynamic",n,this.toDynamicExpression(e.items,"x"))),(e=>[n,".",this.toJson,"()"]),(e=>this.mapMap("dynamic",n,this.toDynamicExpression(e.values,"v"))),(e=>[p.defined(this._enumValues.get(e)),".reverse[",n,"]"]),(e=>{const t=r.nullableFromUnion(e);return null===t?n:[n," == null ? null : ",this.toDynamicExpression(t,n)]}),(e=>{switch(e.kind){case"date-time":return[n,".toIso8601String()"];case"date":return['"${',n,".year.toString().padLeft(4, '0')","}-${",n,".month.toString().padLeft(2, '0')}-${",n,".day.toString().padLeft(2, '0')}\""];default:return n}}))}emitClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this._options.useHive&&(this.classCounter++,this.emitLine("@HiveType(typeId: ".concat(this.classCounter,")")),this.classPropertyCounter=0),this.emitBlock(["class ",t],(()=>{0===e.getProperties().size?this.emitLine(t,"();"):(this.emitLine(t,"({"),this.indent((()=>{this.forEachClassProperty(e,"none",((e,t,n)=>{this.emitLine(this._options.requiredProperties?"required ":"","this.",e,",")}))})),this.emitLine("});"),this.ensureBlankLine(),this.forEachClassProperty(e,"none",((t,n,i)=>{const r=this.descriptionForClassProperty(e,n);void 0!==r&&this.emitDescription(r),this._options.useHive&&(this.classPropertyCounter++,this.emitLine("@HiveField(".concat(this.classPropertyCounter,")"))),this.emitLine(this._options.finalProperties?"final ":"",this.dartType(i.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,'json["',v(t),'"]'),",")}))})),this.emitLine(");"),this.ensureBlankLine(),this.emitLine("Map<String, dynamic> ",this.toJson,"() => {"),this.indent((()=>{this.forEachClassProperty(e,"none",((e,t,n)=>{this.emitLine('"',v(t),'": ',this.toDynamicExpression(n.type,e),",")}))})),this.emitLine("};"))}))}emitFreezedClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine("@freezed"),this.emitBlock(["class ",t," with _$",t],(()=>{0===e.getProperties().size?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){const n=Array.from(e.cases).map((t=>this.nameForEnumCase(e,t)));this.emitDescription(this.descriptionForType(e)),this.emitLine("enum ",t," { ",d.arrayIntercalate(", ",n)," }"),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("final ",p.defined(this._enumValues.get(e))," = EnumValues({"),this.indent((()=>{this.forEachEnumCase(e,"none",((e,n,i)=>{const r="first"===i||"middle"===i?",":[];this.emitLine('"',v(n),'": ',t,".",e,r)}))})),this.emitLine("});"),this._needEnumValues=!0)}emitEnumValues(){this.ensureBlankLine(),this.emitMultiline("class EnumValues<T> {\n    Map<String, T> map;\n    Map<T, String> reverseMap;\n\n    EnumValues(this.map);\n\n    Map<T, String> get reverse {\n        if (reverseMap == null) {\n            reverseMap = map.map((k, v) => new MapEntry(v, k));\n        }\n        return reverseMap;\n    }\n}")}emitSourceStructure(){this.emitFileHeader(),this._options.justTypes||this._options.codersInClass||this.forEachTopLevel("leading-and-interposing",((e,t)=>{const{encoder:n,decoder:i}=p.defined(this._topLevelDependents.get(t));this.emitLine(this.dartType(e)," ",i,"(String str) => ",this.fromDynamicExpression(e,"json.decode(str)"),";"),this.ensureBlankLine(),this.emitLine("String ",n,"(",this.dartType(e)," data) => json.encode(",this.toDynamicExpression(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()}}t.DartRenderer=k},90102:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(85332),o=n(41283),a=n(32866),u=n(4007),l=n(77239),c=n(60877),h=n(78920),p=n(97714),d=n(78818);t.elmOptions={justTypes:new s.BooleanOption("just-types","Plain types only",!1),useList:new s.EnumOption("array-type","Use Array or List",[["array",!1],["list",!0]]),moduleName:new s.StringOption("module","Generated module name","NAME","QuickType")};class m extends r.TargetLanguage{constructor(){super("Elm",["elm"],"elm")}getOptions(){return[t.elmOptions.justTypes,t.elmOptions.moduleName,t.elmOptions.useList]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(e,n){return new b(this,e,s.getOptionValues(t.elmOptions,n))}}t.ElmTargetLanguage=m;const f=["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"],y=c.legalizeCharacters((e=>c.isAscii(e)&&c.isLetterOrUnderscoreOrDigit(e)));function g(e,t){const n=c.splitIntoWords(e);return c.combineWords(n,y,t?c.firstUpperWordStyle:c.allLowerWordStyle,c.firstUpperWordStyle,t?c.allUpperWordStyle:c.allLowerWordStyle,c.allUpperWordStyle,"",c.isLetterOrUnderscore)}const _=l.funPrefixNamer("upper",(e=>g(e,!0))),v=l.funPrefixNamer("lower",(e=>g(e,!1)));class b extends u.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._topLevelDependents=new Map,this._namedTypeDependents=new Map}forbiddenNamesForGlobalNamespace(){return f}makeTopLevelDependencyNames(e,t){const n=new l.DependencyName(v,t.order,(e=>"".concat(e(t),"_to_string")));let i;return void 0===this.namedTypeToNameForTopLevel(e)&&(i=new l.DependencyName(v,t.order,(e=>e(t)))),this._topLevelDependents.set(t,{encoder:n,decoder:i}),void 0!==i?[n,i]:[n]}makeNamedTypeNamer(){return _}makeNamedTypeDependencyNames(e,t){const n=new l.DependencyName(v,t.order,(e=>"encode_".concat(e(t)))),i=new l.DependencyName(v,t.order,(e=>e(t)));return this._namedTypeDependents.set(t,{encoder:n,decoder:i}),[n,i]}namerForObjectProperty(){return v}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return _}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return _}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(e,t,n,i){const r=super.proposeUnionMemberName(e,t,n,i);return"".concat(r,"_in_").concat(i(t))}get commentLineStart(){return"-- "}emitDescriptionBlock(e){1===e.length?this.emitLine("{-| ",e[0]," -}"):this.emitCommentLines(e,"",void 0,"-}","{-| ")}get arrayType(){return this._options.useList?"List":"Array"}elmType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return a.matchType(e,(e=>p.singleWord(p.annotated(d.anyTypeIssueAnnotation,"Jdec.Value"))),(e=>p.singleWord(p.annotated(d.nullTypeIssueAnnotation,"()"))),(e=>p.singleWord("Bool")),(e=>p.singleWord("Int")),(e=>p.singleWord("Float")),(e=>p.singleWord("String")),(e=>p.multiWord(" ",this.arrayType,p.parenIfNeeded(this.elmType(e.items)))),(e=>p.singleWord(this.nameForNamedType(e))),(e=>p.multiWord(" ","Dict String",p.parenIfNeeded(this.elmType(e.values)))),(e=>p.singleWord(this.nameForNamedType(e))),(e=>{const n=a.nullableFromUnion(e);if(null!==n){const e=this.elmType(n);return t?e:p.multiWord(" ","Maybe",p.parenIfNeeded(e))}return p.singleWord(this.nameForNamedType(e))}))}elmProperty(e){return e.isOptional?p.multiWord(" ","Maybe",p.parenIfNeeded(this.elmType(e.type,!0))).source:this.elmType(e.type).source}decoderNameForNamedType(e){const t=this.nameForNamedType(e);return h.defined(this._namedTypeDependents.get(t)).decoder}decoderNameForType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return a.matchType(e,(e=>p.singleWord("Jdec.value")),(e=>p.multiWord(" ","Jdec.null","()")),(e=>p.singleWord("Jdec.bool")),(e=>p.singleWord("Jdec.int")),(e=>p.singleWord("Jdec.float")),(e=>p.singleWord("Jdec.string")),(e=>p.multiWord(" ",["Jdec.",c.decapitalize(this.arrayType)],p.parenIfNeeded(this.decoderNameForType(e.items)))),(e=>p.singleWord(this.decoderNameForNamedType(e))),(e=>p.multiWord(" ","Jdec.dict",p.parenIfNeeded(this.decoderNameForType(e.values)))),(e=>p.singleWord(this.decoderNameForNamedType(e))),(e=>{const n=a.nullableFromUnion(e);if(null!==n){const e=this.decoderNameForType(n);return t?e:p.multiWord(" ","Jdec.nullable",p.parenIfNeeded(e))}return p.singleWord(this.decoderNameForNamedType(e))}))}decoderNameForProperty(e){return e.isOptional?p.multiWord(" ","Jdec.nullable",p.parenIfNeeded(this.decoderNameForType(e.type,!0))):this.decoderNameForType(e.type)}encoderNameForNamedType(e){const t=this.nameForNamedType(e);return h.defined(this._namedTypeDependents.get(t)).encoder}encoderNameForType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return a.matchType(e,(e=>p.singleWord("identity")),(e=>p.multiWord(" ","always","Jenc.null")),(e=>p.singleWord("Jenc.bool")),(e=>p.singleWord("Jenc.int")),(e=>p.singleWord("Jenc.float")),(e=>p.singleWord("Jenc.string")),(e=>p.multiWord(" ",["make",this.arrayType,"Encoder"],p.parenIfNeeded(this.encoderNameForType(e.items)))),(e=>p.singleWord(this.encoderNameForNamedType(e))),(e=>p.multiWord(" ","makeDictEncoder",p.parenIfNeeded(this.encoderNameForType(e.values)))),(e=>p.singleWord(this.encoderNameForNamedType(e))),(e=>{const n=a.nullableFromUnion(e);if(null!==n){const e=this.encoderNameForType(n);return t?e:p.multiWord(" ","makeNullableEncoder",p.parenIfNeeded(e))}return p.singleWord(this.encoderNameForNamedType(e))}))}encoderNameForProperty(e){return e.isOptional?p.multiWord(" ","makeNullableEncoder",p.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,i)=>{const r=this.descriptionForClassProperty(e,i);void 0!==r&&(void 0===n?n=[]:n.push(""),n.push("".concat(this.sourcelikeToString(t),":")),n.push(...r))})),this.emitDescription(n),this.emitLine("type alias ",t," ="),this.indent((()=>{let t=!0;this.forEachClassProperty(e,"none",((e,n,i)=>{this.emitLine(t?"{":","," ",e," : ",this.elmProperty(i)),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=>{const 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)=>{const i=t?"=":"|";"null"===n.kind?this.emitLine(i," ",e):this.emitLine(i," ",e," ",p.parenIfNeeded(this.elmType(n))),t=!1}))}))}emitTopLevelFunctions(e,t){const{encoder:n,decoder:i}=h.defined(this._topLevelDependents.get(t));void 0===this.namedTypeToNameForTopLevel(e)&&(this.emitLine(h.defined(i)," : Jdec.Decoder ",t),this.emitLine(h.defined(i)," = ",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){const 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)=>{const i=p.parenIfNeeded(this.decoderNameForProperty(n)),{reqOrOpt:r,fallback:s}=function(e){function t(e){return{reqOrOpt:"Jpipe.optional",fallback:e}}const n=e.type;return e.isOptional||n instanceof o.UnionType&&null!==a.nullableFromUnion(n)?t(" Nothing"):"null"===n.kind?t(" ()"):{reqOrOpt:"Jpipe.required",fallback:""}}(n);this.emitLine("|> ",r,' "',c.stringEscape(t),'" ',i,s)}))}))})),this.ensureBlankLine();const i=this.encoderNameForNamedType(e);this.emitLine(i," : ",t," -> Jenc.Value"),this.emitLine(i," x ="),this.indent((()=>{this.emitLine("Jenc.object"),this.indent((()=>{let t=!0;this.forEachClassProperty(e,"none",((e,n,i)=>{const r=t?"[":",",s=this.encoderNameForProperty(i).source;this.emitLine(r,' ("',c.stringEscape(n),'", ',s," x.",e,")"),t=!1})),t&&this.emitLine("["),this.emitLine("]")}))}))}emitEnumFunctions(e,t){const 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('"',c.stringEscape(t),'" -> Jdec.succeed ',e)})),this.emitLine('somethingElse -> Jdec.fail <| "Invalid ',t,': " ++ somethingElse')}))})),this.emitLine(")")}))})),this.ensureBlankLine();const i=this.encoderNameForNamedType(e);this.emitLine(i," : ",t," -> Jenc.Value"),this.emitLine(i," x = case x of"),this.indent((()=>{this.forEachEnumCase(e,"none",((e,t)=>{this.emitLine(e,' -> Jenc.string "',c.stringEscape(t),'"')}))}))}emitUnionFunctions(e,t){function n(e,t){return"array"===t.kind?"  array":"double"===t.kind?" xdouble":t.isPrimitive()?" "+t.kind:t.kind}const i=this.decoderNameForNamedType(e);this.emitLine(i," : Jdec.Decoder ",t),this.emitLine(i," ="),this.indent((()=>{this.emitLine("Jdec.oneOf"),this.indent((()=>{let t=!0;this.forEachUnionMember(e,null,"none",n,((e,n)=>{const i=t?"[":",";if("null"===n.kind)this.emitLine(i," Jdec.null ",e);else{const t=p.parenIfNeeded(this.decoderNameForType(n));this.emitLine(i," Jdec.map ",e," ",t)}t=!1})),this.emitLine("]")}))})),this.ensureBlankLine();const r=this.encoderNameForNamedType(e);this.emitLine(r," : ",t," -> Jenc.Value"),this.emitLine(r," x = case x of"),this.indent((()=>{this.forEachUnionMember(e,null,"none",n,((e,t)=>{if("null"===t.kind)this.emitLine(e," -> Jenc.null");else{const n=this.encoderNameForType(t).source;this.emitLine(e," y -> ",n," y")}}))}))}emitSourceStructure(){const e=[],t=[];this.forEachTopLevel("none",((n,i)=>{let{encoder:r,decoder:s}=h.defined(this._topLevelDependents.get(i));void 0===s&&(s=h.defined(this._namedTypeDependents.get(i)).decoder),t.push(s),e.push(i,r,s)})),this.forEachObject("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push(n)})),this.forEachEnum("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push([n,"(..)"])})),this.forEachUnion("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push([n,"(..)"])})),void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines(["To decode the JSON data, add this file to your project, run","","    elm-package install NoRedInk/elm-decode-pipeline","","add these imports","","    import Json.Decode exposing (decodeString)`);"]),this.emitLine("--     import ",this._options.moduleName," exposing (",i.arrayIntercalate(", ",t),")"),this.emitMultiline("--\n-- and you're off to the races with\n--"),this.forEachTopLevel("none",((e,t)=>{let{decoder:n}=h.defined(this._topLevelDependents.get(t));void 0===n&&(n=h.defined(this._namedTypeDependents.get(t)).decoder),this.emitLine("--     decodeString ",n," myJsonString")}))),this._options.justTypes||(this.ensureBlankLine(),this.emitLine("module ",this._options.moduleName," exposing"),this.indent((()=>{for(let t=0;t<e.length;t++)this.emitLine(0===t?"(":","," ",e[t]);this.emitLine(")")})),this.ensureBlankLine(),this.emitMultiline("import Json.Decode as Jdec\nimport Json.Decode.Pipeline as Jpipe\nimport Json.Encode as Jenc\nimport 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=>void 0===this.namedTypeToNameForTopLevel(e))),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.",c.decapitalize(this.arrayType)," (",this.arrayType,".map f arr)")})),this.ensureBlankLine(),this.emitMultiline("makeDictEncoder : (a -> Jenc.Value) -> Dict String a -> Jenc.Value\nmakeDictEncoder f dict =\n    Jenc.object (toList (Dict.map (\\k -> f) dict))\n\nmakeNullableEncoder : (a -> Jenc.Value) -> Maybe a -> Jenc.Value\nmakeNullableEncoder f m =\n    case m of\n    Just x -> f x\n    Nothing -> Jenc.null"))}}t.ElmRenderer=b},6978:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(41283),r=n(32866),s=n(77239),o=n(60877),a=n(78920),u=n(85332),l=n(97714),c=n(78818),h=n(59592),p=n(4007);t.goOptions={justTypes:new u.BooleanOption("just-types","Plain types only",!1),justTypesAndPackage:new u.BooleanOption("just-types-and-package","Plain types with package only",!1),packageName:new u.StringOption("package","Generated package name","NAME","main"),multiFileOutput:new u.BooleanOption("multi-file-output","Renders each top-level object in its own Go file",!1)};class d extends h.TargetLanguage{constructor(){super("Go",["go","golang"],"go")}getOptions(){return[t.goOptions.justTypes,t.goOptions.packageName,t.goOptions.multiFileOutput,t.goOptions.justTypesAndPackage]}get supportsUnionsWithBothNumberTypes(){return!0}get supportsOptionalClassProperties(){return!0}makeRenderer(e,n){return new _(this,e,u.getOptionValues(t.goOptions,n))}get defaultIndentation(){return"\t"}}t.GoTargetLanguage=d;const m=s.funPrefixNamer("namer",(function(e){const t=o.splitIntoWords(e);return o.combineWords(t,f,o.firstUpperWordStyle,o.firstUpperWordStyle,o.allUpperWordStyle,o.allUpperWordStyle,"",o.isLetterOrUnderscore)})),f=o.legalizeCharacters(o.isLetterOrUnderscoreOrDigit);const y=["integer","double","bool","string"],g=["array","class","map","enum"];class _ extends p.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n,this._topLevelUnmarshalNames=new Map}makeNamedTypeNamer(){return m}namerForObjectProperty(){return m}makeUnionMemberNamer(){return m}makeEnumCaseNamer(){return m}get enumCasesInGlobalNamespace(){return!0}makeTopLevelDependencyNames(e,t){const n=new s.DependencyName(m,t.order,(e=>"unmarshal_".concat(e(t))));return this._topLevelUnmarshalNames.set(t,n),[n]}startFile(e){!1!==this._options.multiFileOutput&&(a.assert(void 0===this._currentFilename,"Previous file wasn't finished: "+this._currentFilename),this._currentFilename="".concat(this.sourcelikeToString(e),".go").toLowerCase(),this.initializeEmitContextForFilename(this._currentFilename))}endFile(){!1!==this._options.multiFileOutput&&(this.finishFile(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){const n=this.goType(e,t);return function(e){const t=e.kind;return y.indexOf(t)>=0||"class"===t||"enum"===t}(e)?["*",n]:n}propertyGoType(e){const t=e.type;return t instanceof i.UnionType&&null===r.nullableFromUnion(t)?["*",this.goType(t,!0)]:e.isOptional?this.nullableGoType(t,!0):this.goType(t,!0)}goType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return r.matchType(e,(e=>l.maybeAnnotated(t,c.anyTypeIssueAnnotation,"interface{}")),(e=>l.maybeAnnotated(t,c.nullTypeIssueAnnotation,"interface{}")),(e=>"bool"),(e=>"int64"),(e=>"float64"),(e=>"string"),(e=>["[]",this.goType(e.items,t)]),(e=>this.nameForNamedType(e)),(e=>{let n;const s=e.values;return n=s instanceof i.UnionType&&null===r.nullableFromUnion(s)?["*",this.nameForNamedType(s)]:this.goType(s,t),["map[string]",n]}),(e=>this.nameForNamedType(e)),(e=>{const n=r.nullableFromUnion(e);return null!==n?this.nullableGoType(n,t):this.nameForNamedType(e)}))}emitTopLevel(e,t){if(this.startFile(t),this._options.multiFileOutput&&!1===this._options.justTypes&&!1===this._options.justTypesAndPackage&&void 0===this.leadingComments){this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse and unparse this JSON data, add this code to your project and do:"),this.emitLineOnce("//");const e=l.modifySource(o.camelCase,t);this.emitLineOnce("//    ",e,", err := ",a.defined(this._topLevelUnmarshalNames.get(t)),"(bytes)"),this.emitLineOnce("//    bytes, err = ",e,".Marshal()")}this.emitPackageDefinitons(!0);const n=a.defined(this._topLevelUnmarshalNames.get(t));void 0===this.namedTypeToNameForTopLevel(e)&&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,i,r)=>{const s=this.propertyGoType(r),a=void 0===(u=this.descriptionForClassProperty(e,i))?"":"// "+u.join("; ");var u;const l=function(e){if(!e.isOptional)return!1;const t=e.type;return["union","null","any"].indexOf(t.kind)<0}(r)?",omitempty":[];n.push([[t," "],[s," "],['`json:"',o.stringEscape(i),l,'"`'],a])})),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,' = "',o.stringEscape(n),'"')})))),this.emitLine(")"),this.endFile()}emitUnion(e,t){this.startFile(t),this.emitPackageDefinitons(!1);const[n,i]=r.removeNullFromUnion(e),s=null!==n?"true":"false",o=(t,n,i)=>{const r=e.findMember(t);return void 0===r?n:i(r,this.nameForUnionMember(e,r),this.goType(r))},a=e=>{o(e,void 0,((e,t,n)=>{this.emitLine("x.",t," = nil")}))},u=(e,t)=>{const n=[];for(const i of y)n.push(o(i,"nil",((t,n,i)=>e(n))),", ");for(const i of g)n.push(o(i,"false, nil",((e,n,i)=>t("class"===e.kind,n))),", ");return n.push(s),n};let l=[];this.forEachUnionMember(e,i,"none",null,((e,t)=>{const 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(const t of g)a(t);o("class",void 0,((e,t,n)=>{this.emitLine("var c ",n)}));const e=u((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)"],(()=>{const e=u((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("//");const n=l.modifySource(o.camelCase,t);this.emitLine("//    ",n,", err := ",a.defined(this._topLevelUnmarshalNames.get(t)),"(bytes)"),this.emitLine("//    bytes, err = ",n,".Marshal()")}))}emitPackageDefinitons(e){if(!this._options.justTypes||this._options.justTypesAndPackage){this.ensureBlankLine();const e="package "+this._options.packageName;this.emitLineOnce(e),this.ensureBlankLine()}this._options.justTypes||this._options.justTypesAndPackage||(this.ensureBlankLine(),this.haveNamedUnions&&!1===this._options.multiFileOutput&&(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) {\n    if pi != nil {\n        *pi = nil\n    }\n    if pf != nil {\n        *pf = nil\n    }\n    if pb != nil {\n        *pb = nil\n    }\n    if ps != nil {\n        *ps = nil\n    }\n\n    dec := json.NewDecoder(bytes.NewReader(data))\n    dec.UseNumber()\n    tok, err := dec.Token()\n    if err != nil {\n        return false, err\n    }\n\n    switch v := tok.(type) {\n    case json.Number:\n        if pi != nil {\n            i, err := v.Int64()\n            if err == nil {\n                *pi = &i\n                return false, nil\n            }\n        }\n        if pf != nil {\n            f, err := v.Float64()\n            if err == nil {\n                *pf = &f\n                return false, nil\n            }\n            return false, errors.New("Unparsable number")\n        }\n        return false, errors.New("Union does not contain number")\n    case float64:\n        return false, errors.New("Decoder should not return float64")\n    case bool:\n        if pb != nil {\n            *pb = &v\n            return false, nil\n        }\n        return false, errors.New("Union does not contain bool")\n    case string:\n        if haveEnum {\n            return false, json.Unmarshal(data, pe)\n        }\n        if ps != nil {\n            *ps = &v\n            return false, nil\n        }\n        return false, errors.New("Union does not contain string")\n    case nil:\n        if nullable {\n            return false, nil\n        }\n        return false, errors.New("Union does not contain null")\n    case json.Delim:\n        if v == \'{\' {\n            if haveObject {\n                return true, json.Unmarshal(data, pc)\n            }\n            if haveMap {\n                return false, json.Unmarshal(data, pm)\n            }\n            return false, errors.New("Union does not contain object")\n        }\n        if v == \'[\' {\n            if haveArray {\n                return false, json.Unmarshal(data, pa)\n            }\n            return false, errors.New("Union does not contain array")\n        }\n        return false, errors.New("Cannot handle delimiter")\n    }\n    return false, errors.New("Cannot unmarshal union")\n\n}\n\nfunc 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) {\n    if pi != nil {\n        return json.Marshal(*pi)\n    }\n    if pf != nil {\n        return json.Marshal(*pf)\n    }\n    if pb != nil {\n        return json.Marshal(*pb)\n    }\n    if ps != nil {\n        return json.Marshal(*ps)\n    }\n    if haveArray {\n        return json.Marshal(pa)\n    }\n    if haveObject {\n        return json.Marshal(pc)\n    }\n    if haveMap {\n        return json.Marshal(pm)\n    }\n    if haveEnum {\n        return json.Marshal(pe)\n    }\n    if nullable {\n        return json.Marshal(nil)\n    }\n    return nil, errors.New("Union must not be null")\n}'),this.endFile())}emitSourceStructure(){!1===this._options.multiFileOutput&&!1===this._options.justTypes&&!1===this._options.justTypesAndPackage&&void 0===this.leadingComments&&this.emitSingleFileHeaderComments(),this.forEachTopLevel("leading-and-interposing",((e,t)=>this.emitTopLevel(e,t)),(e=>!(this._options.justTypes||this._options.justTypesAndPackage)||void 0===this.namedTypeToNameForTopLevel(e))),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()}}t.GoRenderer=_},32658:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(85332),o=n(32866),a=n(4007),u=n(77239),l=n(60877),c=n(97714);t.haskellOptions={justTypes:new s.BooleanOption("just-types","Plain types only",!1),useList:new s.EnumOption("array-type","Use Array or List",[["array",!1],["list",!0]]),moduleName:new s.StringOption("module","Generated module name","NAME","QuickType")};class h extends r.TargetLanguage{constructor(){super("Haskell",["haskell"],"haskell")}getOptions(){return[t.haskellOptions.justTypes,t.haskellOptions.moduleName,t.haskellOptions.useList]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(e,n){return new g(this,e,s.getOptionValues(t.haskellOptions,n))}}t.HaskellTargetLanguage=h;const p=["as","case","class","data","default","deriving","do","else","family","forall","foreign","hiding","if","import","in","infix","infixl","infixr","instance","let","of","mdo","module","newtype","proc","qualified","rec","then","type","where","id","Array","HashMap","Map","Maybe","Bool","Int","True","False","Enum","encode","decode","text","Text","Value","Object","Result","Series","Error"],d=l.legalizeCharacters((e=>l.isAscii(e)&&l.isLetterOrUnderscoreOrDigit(e)));function m(e,t){const n=l.splitIntoWords(e);return l.combineWords(n,d,t?l.firstUpperWordStyle:l.allLowerWordStyle,l.firstUpperWordStyle,t?l.allUpperWordStyle:l.allLowerWordStyle,l.allUpperWordStyle,"",l.isLetterOrUnderscore)}const f=u.funPrefixNamer("upper",(e=>m(e,!0))),y=u.funPrefixNamer("lower",(e=>m(e,!1)));class g extends a.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}forbiddenNamesForGlobalNamespace(){return p}makeNamedTypeNamer(){return f}namerForObjectProperty(){return y}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}makeUnionMemberNamer(){return f}get unionMembersInGlobalNamespace(){return!0}makeEnumCaseNamer(){return f}get enumCasesInGlobalNamespace(){return!0}proposeUnionMemberName(e,t,n,i){const r=super.proposeUnionMemberName(e,t,n,i);return"".concat(r,"_in_").concat(i(t))}get commentLineStart(){return"-- "}emitDescriptionBlock(e){1===e.length?this.emitLine("{-| ",e[0]," -}"):this.emitCommentLines(e,"",void 0,"-}","{-| ")}haskellType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return o.matchType(e,(e=>c.multiWord(" ","Maybe","Text")),(e=>c.multiWord(" ","Maybe","Text")),(e=>c.singleWord("Bool")),(e=>c.singleWord("Int")),(e=>c.singleWord("Float")),(e=>c.singleWord("Text")),(e=>this._options.useList?c.multiWord("","[",c.parenIfNeeded(this.haskellType(e.items)),"]"):c.multiWord(" ","Vector",c.parenIfNeeded(this.haskellType(e.items)))),(e=>c.singleWord(this.nameForNamedType(e))),(e=>c.multiWord(" ","HashMap Text",c.parenIfNeeded(this.haskellType(e.values)))),(e=>c.singleWord(this.nameForNamedType(e))),(e=>{const n=o.nullableFromUnion(e);if(null!==n){const e=this.haskellType(n);return t?e:c.multiWord(" ","Maybe",c.parenIfNeeded(e))}return c.singleWord(this.nameForNamedType(e))}))}haskellProperty(e){return e.isOptional?c.multiWord(" ","Maybe",c.parenIfNeeded(this.haskellType(e.type,!0))).source:this.haskellType(e.type).source}encoderNameForType(e){return o.matchType(e,(e=>c.singleWord("String")),(e=>c.singleWord("Null")),(e=>c.singleWord("Bool")),(e=>c.singleWord("Number")),(e=>c.singleWord("Number")),(e=>c.singleWord("String")),(e=>c.singleWord("Array")),(e=>c.singleWord("Object")),(e=>c.singleWord("Object")),(e=>c.singleWord("Object")),(e=>c.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,i)=>{const r=this.descriptionForClassProperty(e,i);void 0!==r&&(void 0===n?n=[]:n.push(""),n.push("".concat(this.sourcelikeToString(t),":")),n.push(...r))})),this.emitDescription(n),this.emitLine("data ",t," = ",t),this.indent((()=>{let n=!0;this.forEachClassProperty(e,"none",((e,i,r)=>{this.emitLine(n?"{ ":", ",e,t," :: ",this.haskellProperty(r)),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=>{const i=n?"=":"|";this.emitLine(i," ",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)=>{const i=t?"=":"|";"null"===n.kind?this.emitLine(i," ",e):this.emitLine(i," ",e," ",c.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((()=>{0===n.length?this.emitLine("toJSON = \\_ -> emptyObject"):(this.emitLine("toJSON (",t,...n,") ="),this.indent((()=>{this.emitLine("object");let n=!0;this.forEachClassProperty(e,"none",((e,i)=>{this.emitLine(n?"[ ":", ",'"',l.stringEscape(i),'" .= ',e,t),n=!1})),n&&this.emitLine("["),this.emitLine("]")})))}))}emitClassDecoderInstance(e,t){this.emitLine("instance FromJSON ",t," where"),this.indent((()=>{0===this.classPropertyLength(e)?this.emitLine("parseJSON emptyObject = return ",t):(this.emitLine("parseJSON (Object v) = ",t),this.indent((()=>{let t=!0;this.forEachClassProperty(e,"none",((e,n,i)=>{const r=i.isOptional?".:?":".:";this.emitLine(t?"<$> ":"<*> ","v ",r,' "',l.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,' = "',l.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 "',l.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)=>{"null"===t.kind?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)=>{"null"===t.kind?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 ".concat(e," #-}"))}emitSourceStructure(){const e=[];this.forEachTopLevel("none",((t,n)=>{e.push([n," (..)"])})),this.forEachObject("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push([n," (..)"])})),this.forEachEnum("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push([n," (..)"])})),this.forEachUnion("none",((t,n)=>{i.mapContains(this.topLevels,t)||e.push([n," (..)"])})),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(0===t?"(":","," ",e[t]);this.emitLine(", decodeTopLevel"),this.emitLine(") where")})),this.ensureBlankLine(),this.emitMultiline("import Data.Aeson\nimport Data.Aeson.Types (emptyObject)\nimport Data.ByteString.Lazy (ByteString)\nimport Data.HashMap.Strict (HashMap)\nimport Data.Text (Text)"),this._options.useList||this.emitLine("import Data.Vector (Vector)")),this.forEachTopLevel("leading-and-interposing",((e,t)=>this.emitTopLevelDefinition(e,t)),(e=>void 0===this.namedTypeToNameForTopLevel(e))),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()}}t.HaskellRenderer=g},33861:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(41283),o=n(32866),a=n(4007),u=n(77239),l=n(60877),c=n(78920),h=n(35096),p=n(60087);class d extends r.TargetLanguage{constructor(){super("JSON Schema",["schema","json-schema"],"schema")}getOptions(){return[]}get stringTypeMapping(){return h.getNoStringTypeMapping()}get supportsOptionalClassProperties(){return!0}get supportsFullObjectType(){return!0}makeRenderer(e,t){return new y(this,e)}}t.JSONSchemaTargetLanguage=d;const m=u.funPrefixNamer("namer",(function(e){const t=l.splitIntoWords(e);return l.combineWords(t,f,l.firstUpperWordStyle,l.firstUpperWordStyle,l.allUpperWordStyle,l.allUpperWordStyle,"",(e=>!0))})),f=l.legalizeCharacters((e=>e>=32&&e<128&&47!==e));class y extends a.ConvenienceRenderer{makeNamedTypeNamer(){return m}namerForObjectProperty(){return null}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return null}nameForType(e){return c.defined(this.names.get(this.nameForNamedType(e)))}makeOneOf(e){const t=i.iterableFirst(e);return void 0===t?c.panic("Must have at least one type for oneOf"):1===e.size?this.schemaForType(t):{anyOf:Array.from(e).map((e=>this.schemaForType(e)))}}makeRef(e){return{$ref:"#/definitions/".concat(this.nameForType(e))}}addAttributesToSchema(e,t){const n=this.typeGraph.attributeStore.attributesForType(e);for(const[i,r]of n)i.addToSchema(t,e,r)}schemaForType(e){const t=o.matchTypeExhaustive(e,(e=>c.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=>{const t=s.transformedStringTypeTargetTypeKindsMap.get(e.kind);return void 0===t?c.panic("Unknown transformed string type ".concat(e.kind)):{type:"string",format:t.jsonSchema}}));return void 0===t.$ref&&this.addAttributesToSchema(e,t),t}definitionForObject(e,t){let n,i;if(0===e.getProperties().size)n=void 0,i=void 0;else{const t={},r=[];for(const[n,i]of e.getProperties()){const s=this.schemaForType(i.type);void 0===s.description&&p.addDescriptionToSchema(s,this.descriptionForClassProperty(e,n)),t[n]=s,i.isOptional||r.push(n)}n=t,i=r.sort()}const r=e.getAdditionalProperties(),s={type:"object",additionalProperties:void 0!==r&&this.schemaForType(r),properties:n,required:i,title:t};return this.addAttributesToSchema(e,s),s}definitionForUnion(e,t){const n=this.makeOneOf(e.sortedMembers);return void 0!==t&&(n.title=t),this.addAttributesToSchema(e,n),n}definitionForEnum(e,t){const n={type:"string",enum:Array.from(e.cases),title:t};return this.addAttributesToSchema(e,n),n}emitSourceStructure(){const e=1===this.topLevels.size?this.schemaForType(c.defined(i.mapFirst(this.topLevels))):{},t=Object.assign({$schema:"http://json-schema.org/draft-06/schema#"},e),n={};this.forEachObject("none",((e,t)=>{const i=c.defined(this.names.get(t));n[i]=this.definitionForObject(e,i)})),this.forEachUnion("none",((e,t)=>{if(!this.unionNeedsName(e))return;const i=c.defined(this.names.get(t));n[i]=this.definitionForUnion(e,i)})),this.forEachEnum("none",((e,t)=>{const i=c.defined(this.names.get(t));n[i]=this.definitionForEnum(e,i)})),t.definitions=n,this.emitMultiline(JSON.stringify(t,void 0,"    "))}}t.JSONSchemaRenderer=y},40952:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(78818),r=n(4007),s=n(77239),o=n(85332),a=n(97714),u=n(28609),l=n(60877),c=n(78920),h=n(59592),p=n(41283),d=n(32866);t.javaOptions={useList:new o.EnumOption("array-type","Use T[] or List<T>",[["array",!1],["list",!0]],"array"),justTypes:new o.BooleanOption("just-types","Plain types only",!1),dateTimeProvider:new o.EnumOption("datetime-provider","Date time provider type",[["java8","java8"],["legacy","legacy"]],"java8"),acronymStyle:u.acronymOption(u.AcronymStyleOptions.Pascal),packageName:new o.StringOption("package","Generated package name","NAME","io.quicktype"),lombok:new o.BooleanOption("lombok","Use lombok",!1,"primary"),lombokCopyAnnotations:new o.BooleanOption("lombok-copy-annotations","Copy accessor annotations",!0,"secondary")};class m extends h.TargetLanguage{constructor(){super("Java",["java"],"java")}getOptions(){return[t.javaOptions.useList,t.javaOptions.justTypes,t.javaOptions.dateTimeProvider,t.javaOptions.acronymStyle,t.javaOptions.packageName,t.javaOptions.lombok,t.javaOptions.lombokCopyAnnotations]}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(e,n){const i=o.getOptionValues(t.javaOptions,n);return i.justTypes?new w(this,e,i):new k(this,e,i)}get stringTypeMapping(){const e=new Map;return e.set("date","date"),e.set("time","time"),e.set("date-time","date-time"),e.set("uuid","uuid"),e}}t.JavaTargetLanguage=m;const 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"];function y(e){return 95===e||l.isAscii(e)&&l.isLetter(e)}t.stringEscape=l.utf16ConcatMap(l.escapeNonPrintableMapper(l.isAscii,l.standardUnicodeHexEscape));const g=l.utf16LegalizeCharacters((function(e){return y(e)||l.isAscii(e)&&l.isDigit(e)}));function _(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.allUpperWordStyle;const r=l.splitIntoWords(n);return l.combineWords(r,g,t?l.allUpperWordStyle:e?l.firstUpperWordStyle:l.allLowerWordStyle,t?l.allUpperWordStyle:l.firstUpperWordStyle,t||e?l.allUpperWordStyle:l.allLowerWordStyle,i,t?"_":"",y)}t.javaNameStyle=_;class v{constructor(e,t){this._renderer=e,this._className=t,this.shouldEmitDateTimeConverter=!0,this.shouldEmitTimeConverter=!0,this.shouldEmitDateConverter=!0}}class b extends v{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)"]}}class T extends v{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,")"]}}class w extends r.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 b(this,this._converterClassname);break;case"legacy":this._dateTimeProvider=new T(this,this._converterClassname)}}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 null===d.nullableFromUnion(e)}namedTypeToNameForTopLevel(e){return d.directlyReachableSingleNamedType(e)}makeNamesForPropertyGetterAndSetter(e,t,n,i,r){return[new s.DependencyName(this.getNameStyling("propertyNamingFunction"),r.order,(e=>"get_".concat(e(r)))),new s.DependencyName(this.getNameStyling("propertyNamingFunction"),r.order,(e=>"set_".concat(e(r))))]}makePropertyDependencyNames(e,t,n,i,r){const s=this.makeNamesForPropertyGetterAndSetter(e,t,n,i,r);return this._gettersAndSettersForPropertyName.set(r,s),s}getNameStyling(e){return{typeNamingFunction:s.funPrefixNamer("types",(e=>_(!0,!1,e,u.acronymStyle(this._options.acronymStyle)))),propertyNamingFunction:s.funPrefixNamer("properties",(e=>_(!1,!1,e,u.acronymStyle(this._options.acronymStyle)))),enumCaseNamingFunction:s.funPrefixNamer("enum-cases",(e=>_(!0,!0,e,u.acronymStyle(this._options.acronymStyle))))}[e]}fieldOrMethodName(e,t){return 1===this.topLevels.size?e:[t,l.capitalize(e)]}methodName(e,t,n){return 1===this.topLevels.size?[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){c.assert(void 0===this._currentFilename,"Previous file wasn't finished"),this._currentFilename="".concat(this.sourcelikeToString(e),".java"),this.ensureBlankLine(),this._haveEmittedLeadingComments||void 0===this.leadingComments||(this.emitCommentLines(this.leadingComments),this.ensureBlankLine(),this._haveEmittedLeadingComments=!0)}finishFile(){super.finishFile(c.defined(this._currentFilename)),this._currentFilename=void 0}emitPackageAndImports(e){this.emitLine("package ",this._options.packageName,";"),this.ensureBlankLine();for(const 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){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"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,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return d.matchType(t,(e=>a.maybeAnnotated(n,i.anyTypeIssueAnnotation,"Object")),(e=>a.maybeAnnotated(n,i.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,n),">"]:[this.javaType(!1,e.items,n),"[]"]),(e=>this.nameForNamedType(e)),(e=>["Map<String, ",this.javaType(!0,e.values,n),">"]),(e=>this.nameForNamedType(e)),(e=>{const t=d.nullableFromUnion(e);return null!==t?this.javaType(!0,t,n):this.nameForNamedType(e)}),(e=>"time"===e.kind?this._dateTimeProvider.timeType:"date"===e.kind?this._dateTimeProvider.dateType:"date-time"===e.kind?this._dateTimeProvider.dateTimeType:"uuid"===e.kind?"UUID":"String"))}javaImport(e){return 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=>{const t=[];return e.members.forEach((e=>this.javaImport(e).forEach((e=>t.push(e))))),t}),(e=>"time"===e.kind?this._dateTimeProvider.timeImports:"date"===e.kind?this._dateTimeProvider.dateImports:"date-time"===e.kind?this._dateTimeProvider.dateTimeImports:"uuid"===e.kind?["java.util.UUID"]:[]))}javaTypeWithoutGenerics(e,t){if(t instanceof p.ArrayType)return this._options.useList?["List"]:[this.javaTypeWithoutGenerics(!1,t.items),"[]"];if(t instanceof p.MapType)return"Map";if(t instanceof p.UnionType){const e=d.nullableFromUnion(t);return null!==e?this.javaTypeWithoutGenerics(!0,e):this.nameForNamedType(t)}return this.javaType(e,t)}emitClassAttributes(e,t){this._options.lombok&&this.emitLine("@lombok.Data")}annotationsForAccessor(e,t,n,i,r,s){return[]}importsForType(e){return e instanceof p.ClassType?[]:e instanceof p.UnionType||e instanceof p.EnumType?["java.io.IOException"]:c.assertNever(e)}importsForClass(e){const t=[];return this.forEachClassProperty(e,"none",((e,n,i)=>{this.javaImport(i.type).forEach((e=>t.push(e)))})),t.sort(),[...new Set(t)]}importsForUnionMembers(e){const t=[],[,n]=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)];this.emitFileHeader(t,n),this.emitDescription(this.descriptionForType(e)),this.emitClassAttributes(e,t),this.emitBlock(["public class ",t],(()=>{this.forEachClassProperty(e,"none",((n,i,r)=>{if(this._options.lombok&&this._options.lombokCopyAnnotations){const s=this.annotationsForAccessor(e,t,n,i,r,!1),o=this.annotationsForAccessor(e,t,n,i,r,!0);0!==s.length&&this.emitLine("@lombok.Getter(onMethod_ = {"+s.join(", ")+"})"),0!==o.length&&this.emitLine("@lombok.Setter(onMethod_ = {"+o.join(", ")+"})")}this.emitLine("private ",this.javaType(!1,r.type,!0)," ",n,";")})),this._options.lombok||this.forEachClassProperty(e,"leading-and-interposing",((n,i,r)=>{this.emitDescription(this.descriptionForClassProperty(e,i));const[s,o]=c.defined(this._gettersAndSettersForPropertyName.get(n)),a=this.javaType(!1,r.type);this.annotationsForAccessor(e,t,n,i,r,!1).forEach((e=>this.emitLine(e))),this.emitLine("public ",a," ",s,"() { return ",n,"; }"),this.annotationsForAccessor(e,t,n,i,r,!0).forEach((e=>this.emitLine(e))),this.emitLine("public void ",o,"(",a," value) { this.",n," = value; }")}))})),this.finishFile()}unionField(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{fieldType:this.javaType(!0,t,n),fieldName:[this.nameForUnionMember(e,t),"Value"]}}emitUnionAttributes(e,t){}emitUnionSerializer(e,t){}emitUnionDefinition(e,t){const n=[...this.importsForType(e),...this.importsForUnionMembers(e)];this.emitFileHeader(t,n),this.emitDescription(this.descriptionForType(e));const[,i]=d.removeNullFromUnion(e);this.emitUnionAttributes(e,t),this.emitBlock(["public class ",t],(()=>{for(const t of i){const{fieldType:n,fieldName:i}=this.unionField(e,t,!0);this.emitLine("public ",n," ",i,";")}this.emitUnionSerializer(e,t)})),this.finishFile()}emitEnumSerializationAttributes(e){}emitEnumDeserializationAttributes(e){}emitEnumDefinition(e,n){this.emitFileHeader(n,this.importsForType(e)),this.emitDescription(this.descriptionForType(e));const i=[];this.forEachEnumCase(e,"none",(e=>{i.length>0&&i.push(", "),i.push(e)})),i.push(";"),this.emitBlock(["public enum ",n],(()=>{this.emitLine(i),this.ensureBlankLine(),this.emitEnumSerializationAttributes(e),this.emitBlock("public String toValue()",(()=>{this.emitLine("switch (this) {"),this.indent((()=>{this.forEachEnumCase(e,"none",((e,n)=>{this.emitLine("case ",e,': return "',t.stringEscape(n),'";')}))})),this.emitLine("}"),this.emitLine("return null;")})),this.ensureBlankLine(),this.emitEnumDeserializationAttributes(e),this.emitBlock(["public static ",n," forValue(String value) throws IOException"],(()=>{this.forEachEnumCase(e,"none",((e,n)=>{this.emitLine('if (value.equals("',t.stringEscape(n),'")) return ',e,";")})),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)))}}t.JavaRenderer=w;class k extends w{constructor(e,t,n){super(e,t,n),this._converterKeywords=["JsonProperty","JsonDeserialize","JsonDeserializer","JsonSerialize","JsonSerializer","JsonParser","JsonProcessingException","DeserializationContext","SerializerProvider"]}emitClassAttributes(e,t){0===e.getProperties().size&&this.emitLine("@JsonAutoDetect(fieldVisibility=JsonAutoDetect.Visibility.NONE)"),super.emitClassAttributes(e,t)}annotationsForAccessor(e,n,i,r,s,o){const a=super.annotationsForAccessor(e,n,i,r,s,o),u=['@JsonProperty("'+t.stringEscape(r)+'")'];switch(s.type.kind){case"date-time":this._dateTimeProvider.dateTimeJacksonAnnotations.forEach((e=>u.push(e)));break;case"date":this._dateTimeProvider.dateJacksonAnnotations.forEach((e=>u.push(e)));break;case"time":this._dateTimeProvider.timeJacksonAnnotations.forEach((e=>u.push(e)))}return[...a,...u]}importsForType(e){if(e instanceof p.ClassType){const t=super.importsForType(e);return t.push("com.fasterxml.jackson.annotation.*"),t}if(e instanceof p.UnionType){const 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 p.EnumType){const t=super.importsForType(e);return t.push("com.fasterxml.jackson.annotation.*"),t}return c.assertNever(e)}emitUnionAttributes(e,t){this.emitLine("@JsonDeserialize(using = ",t,".Deserializer.class)"),this.emitLine("@JsonSerialize(using = ",t,".Serializer.class)")}emitUnionSerializer(e,t){var n=this;const i=["uuid","time","date","date-time"],r=e=>{this.emitLine("case ",e,":")},s=()=>{this.indent((()=>{r("VALUE_NULL"),this.indent((()=>this.emitLine("break;")))}))},o=(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 c.panic("Requested type isnt an object!")}},a=function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const{fieldName:s}=n.unionField(e,t),a=n.javaTypeWithoutGenerics(!0,t);if(n._options.useList&&t instanceof p.ArrayType)n.emitLine("value.",s," = jsonParser.readValueAs(new TypeReference<",a,">() {});");else if(i.some((e=>t.kind===e)))o(s,t.kind,r);else if("string"===t.kind)n.emitLine("value.",s," = ",r,";");else if("enum"===t.kind){const{fieldType:i}=n.unionField(e,t,!0);n.emitLine("value.",s," = ",i,".forValue(",r,");")}else n.emitLine("value.",s," = jsonParser.readValueAs(",a,".class);")},u=(t,n)=>{const i=e.findMember(n);void 0!==i&&this.indent((()=>{for(const e of t)r(e);this.indent((()=>{a(i),this.emitLine("break;")}))}))},l=()=>{const t=e.findMember("enum"),n=e.findMember("string");i.every((t=>void 0===e.findMember(t)))&&void 0===n&&void 0===t||this.indent((()=>{r("VALUE_STRING"),this.indent((()=>{const r="string";this.emitLine("String "+r+" = jsonParser.readValueAs(String.class);"),i.forEach((t=>{const n=e.findMember(t);void 0!==n&&this.emitIgnoredTryCatchBlock((()=>{a(n,r)}))})),void 0!==t&&this.emitIgnoredTryCatchBlock((()=>{a(t,r)})),void 0!==n&&a(n,r),this.emitLine("break;")}))}))},h=()=>{const t=e.findMember("integer"),n=e.findMember("double");void 0===n&&void 0===t||this.indent((()=>{r("VALUE_NUMBER_INT"),void 0!==t&&this.indent((()=>{a(t),this.emitLine("break;")})),void 0!==n&&(r("VALUE_NUMBER_FLOAT"),this.indent((()=>{a(n),this.emitLine("break;")})))}))},m=["time","date","date-time"],f=(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 c.panic("Requested type doesn't have custom serializer code!")}},y=t=>{let{fieldName:n}=this.unionField(e,t,!0);this.emitBlock(["if (obj.",n," != null)"],(()=>{m.some((e=>t.kind===e))?this.emitLine("jsonGenerator.writeObject(",f(t,["obj.",n]),");"):this.emitLine("jsonGenerator.writeObject(obj.",n,");"),this.emitLine("return;")}))},[g,_]=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()) {"),null!==g&&s(),h(),u(["VALUE_TRUE","VALUE_FALSE"],"bool"),l(),u(["START_ARRAY"],"array"),u(["START_OBJECT"],"class"),u(["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(const e of _)y(e);null!==g?this.emitLine("jsonGenerator.writeNull();"):this.emitLine('throw new IOException("',t,' must not be null");')}))}))}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.lombok?"    org.projectlombok : lombok : 1.18.2":"","    com.fasterxml.jackson.core     : jackson-databind          : 2.9.0","java8"===this._options.dateTimeProvider?"    com.fasterxml.jackson.datatype : jackson-datatype-jsr310   : 2.9.0":"","","Import this package:",""]),this.emitLine("//     import ",this._options.packageName,".Converter;"),this.emitMultiline("//\n// Then you can deserialize a JSON string with\n//"),this.forEachTopLevel("none",((e,t)=>{this.emitLine("//     ",this.javaType(!1,e)," data = Converter.",this.decoderName(t),"(jsonString);")})),this.ensureBlankLine();const 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)=>{const 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)=>{const n=this.fieldOrMethodName("reader",t),i=this.fieldOrMethodName("writer",t);this.emitLine("private static ObjectReader ",n,";"),this.emitLine("private static ObjectWriter ",i,";"),this.ensureBlankLine(),this.emitBlock(["private static void ",this.methodName("instantiate","Mapper",t),"()"],(()=>{const 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(i," = 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 (",i," == null) ",this.methodName("instantiate","Mapper",t),"();"),this.emitLine("return ",i,";")}))}))})),this.finishFile()}emitSourceStructure(){this.emitConverterClass(),super.emitSourceStructure()}}t.JacksonRenderer=k},83059:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32866),s=n(28609),o=n(50714),a=n(60877),u=n(78920),l=n(97714),c=n(77239),h=n(4007),p=n(59592),d=n(85332),m=n(35475);t.javaScriptOptions={acronymStyle:s.acronymOption(s.AcronymStyleOptions.Pascal),runtimeTypecheck:new d.BooleanOption("runtime-typecheck","Verify JSON.parse results at runtime",!0),runtimeTypecheckIgnoreUnknownProperties:new d.BooleanOption("runtime-typecheck-ignore-unknown-properties","Ignore unknown properties when verifying at runtime",!1,"secondary"),converters:o.convertersOption(),rawType:new d.EnumOption("raw-type","Type of raw input (json by default)",[["json","json"],["any","any"]],"json","secondary")};class f extends p.TargetLanguage{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"JavaScript",arguments.length>1&&void 0!==arguments[1]?arguments[1]:["javascript","js","jsx"],arguments.length>2&&void 0!==arguments[2]?arguments[2]:"js")}getOptions(){return[t.javaScriptOptions.runtimeTypecheck,t.javaScriptOptions.runtimeTypecheckIgnoreUnknownProperties,t.javaScriptOptions.acronymStyle,t.javaScriptOptions.converters,t.javaScriptOptions.rawType]}get stringTypeMapping(){const 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(e,n){return new g(this,e,d.getOptionValues(t.javaScriptOptions,n))}}t.JavaScriptTargetLanguage=f,t.legalizeName=a.utf16LegalizeCharacters(m.isES3IdentifierPart);const y=c.funPrefixNamer("properties",(e=>e));class g extends h.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._jsOptions=n}nameStyle(e,n){const i=s.acronymStyle(this._jsOptions.acronymStyle),r=a.splitIntoWords(e);return a.combineWords(r,t.legalizeName,n?a.firstUpperWordStyle:a.allLowerWordStyle,a.firstUpperWordStyle,n?e=>a.capitalize(i(e)):a.allLowerWordStyle,i,"",m.isES3IdentifierStart)}makeNamedTypeNamer(){return c.funPrefixNamer("types",(e=>this.nameStyle(e,!0)))}namerForObjectProperty(){return y}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return c.funPrefixNamer("enum-cases",(e=>this.nameStyle(e,!0)))}namedTypeToNameForTopLevel(e){return r.directlyReachableSingleNamedType(e)}makeNameForProperty(e,t,n,i,r){return super.makeNameForProperty(e,t,n,i,void 0)}emitDescriptionBlock(e){this.emitCommentLines(e," * ","/**"," */")}typeMapTypeFor(e){return["class","object","enum"].indexOf(e.kind)>=0?['r("',this.nameForNamedType(e),'")']:r.matchType(e,(e=>'"any"'),(e=>"null"),(e=>"true"),(e=>"0"),(e=>"3.14"),(e=>'""'),(e=>["a(",this.typeMapTypeFor(e.items),")"]),(e=>u.panic("We handled this above")),(e=>["m(",this.typeMapTypeFor(e.values),")"]),(e=>u.panic("We handled this above")),(e=>{const t=Array.from(e.getChildren()).map((e=>this.typeMapTypeFor(e)));return["u(",...i.arrayIntercalate(", ",t),")"]}),(e=>"date-time"===e.kind?"Date":'""'))}typeMapTypeForProperty(e){const 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(){const{any:e}=this.typeAnnotations;this.emitBlock("const typeMap".concat(e," = "),";",(()=>{this.forEachObject("none",((e,t)=>{const n=e.getAdditionalProperties(),i=void 0!==n?this.typeMapTypeFor(n):"false";this.emitLine('"',t,'": o(['),this.indent((()=>{this.forEachClassProperty(e,"none",((e,t,n)=>{this.emitLine('{ json: "',a.utf16StringEscape(t),'", js: "',l.modifySource(a.utf16StringEscape,e),'", typ: ',this.typeMapTypeForProperty(n)," },")}))})),this.emitLine("], ",i,"),")})),this.forEachEnum("none",((e,t)=>{this.emitLine('"',t,'": ['),this.indent((()=>{this.forEachEnumCase(e,"none",((e,t)=>{this.emitLine('"'.concat(a.utf16StringEscape(t),'",'))}))})),this.emitLine("],")}))}))}deserializerFunctionName(e){return["to",e]}deserializerFunctionLine(e,t){return["function ",this.deserializerFunctionName(t),"(json)"]}serializerFunctionName(e){return[l.modifySource(a.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(){const e=(e,t)=>{const n=this.typeMapTypeFor(e);this.emitBlock([this.deserializerFunctionLine(e,t)," "],"",(()=>{const e="json"===this._jsOptions.rawType?"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)," "],"",(()=>{"json"===this._jsOptions.rawType?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;")}))};if(this._jsOptions.converters===o.ConvertersOptions.AllObjects)this.forEachObject("interposing",e);else this.forEachTopLevel("interposing",e)}emitConvertModuleHelpers(){if(this._jsOptions.runtimeTypecheck){const{any:e,anyArray:t,anyMap:n,string:i,stringArray:r,never:s}=this.typeAnnotations;this.ensureBlankLine(),this.emitMultiline("function invalidValue(typ".concat(e,", val").concat(e,", key").concat(e," = '')").concat(s,' {\n    if (key) {\n        throw Error(`Invalid value for key "${key}". Expected type ${JSON.stringify(typ)} but got ${JSON.stringify(val)}`);\n    }\n    throw Error(`Invalid value ${JSON.stringify(val)} for type ${JSON.stringify(typ)}`, );\n}\n\nfunction jsonToJSProps(typ').concat(e,")").concat(e," {\n    if (typ.jsonToJS === undefined) {\n        const map").concat(e," = {};\n        typ.props.forEach((p").concat(e,") => map[p.json] = { key: p.js, typ: p.typ });\n        typ.jsonToJS = map;\n    }\n    return typ.jsonToJS;\n}\n\nfunction jsToJSONProps(typ").concat(e,")").concat(e," {\n    if (typ.jsToJSON === undefined) {\n        const map").concat(e," = {};\n        typ.props.forEach((p").concat(e,") => map[p.js] = { key: p.json, typ: p.typ });\n        typ.jsToJSON = map;\n    }\n    return typ.jsToJSON;\n}\n\nfunction transform(val").concat(e,", typ").concat(e,", getProps").concat(e,", key").concat(e," = '')").concat(e," {\n    function transformPrimitive(typ").concat(i,", val").concat(e,")").concat(e," {\n        if (typeof typ === typeof val) return val;\n        return invalidValue(typ, val, key);\n    }\n\n    function transformUnion(typs").concat(t,", val").concat(e,")").concat(e," {\n        // val must validate against one typ in typs\n        const l = typs.length;\n        for (let i = 0; i < l; i++) {\n            const typ = typs[i];\n            try {\n                return transform(val, typ, getProps);\n            } catch (_) {}\n        }\n        return invalidValue(typs, val);\n    }\n\n    function transformEnum(cases").concat(r,", val").concat(e,")").concat(e," {\n        if (cases.indexOf(val) !== -1) return val;\n        return invalidValue(cases, val);\n    }\n\n    function transformArray(typ").concat(e,", val").concat(e,")").concat(e,' {\n        // val must be an array with no invalid elements\n        if (!Array.isArray(val)) return invalidValue("array", val);\n        return val.map(el => transform(el, typ, getProps));\n    }\n\n    function transformDate(val').concat(e,")").concat(e,' {\n        if (val === null) {\n            return null;\n        }\n        const d = new Date(val);\n        if (isNaN(d.valueOf())) {\n            return invalidValue("Date", val);\n        }\n        return d;\n    }\n\n    function transformObject(props').concat(n,", additional").concat(e,", val").concat(e,")").concat(e,' {\n        if (val === null || typeof val !== "object" || Array.isArray(val)) {\n            return invalidValue("object", val);\n        }\n        const result').concat(e," = {};\n        Object.getOwnPropertyNames(props).forEach(key => {\n            const prop = props[key];\n            const v = Object.prototype.hasOwnProperty.call(val, key) ? val[key] : undefined;\n            result[prop.key] = transform(v, prop.typ, getProps, prop.key);\n        });\n        Object.getOwnPropertyNames(val).forEach(key => {\n            if (!Object.prototype.hasOwnProperty.call(props, key)) {\n                result[key] = ").concat(this._jsOptions.runtimeTypecheckIgnoreUnknownProperties?"val[key]":"transform(val[key], additional, getProps, key)",';\n            }\n        });\n        return result;\n    }\n\n    if (typ === "any") return val;\n    if (typ === null) {\n        if (val === null) return val;\n        return invalidValue(typ, val);\n    }\n    if (typ === false) return invalidValue(typ, val);\n    while (typeof typ === "object" && typ.ref !== undefined) {\n        typ = typeMap[typ.ref];\n    }\n    if (Array.isArray(typ)) return transformEnum(typ, val);\n    if (typeof typ === "object") {\n        return typ.hasOwnProperty("unionMembers") ? transformUnion(typ.unionMembers, val)\n            : typ.hasOwnProperty("arrayItems")    ? transformArray(typ.arrayItems, val)\n            : typ.hasOwnProperty("props")         ? transformObject(getProps(typ), typ.additional, val)\n            : invalidValue(typ, val);\n    }\n    // Numbers can be parsed by Date but shouldn\'t be.\n    if (typ === Date && typeof val !== "number") return transformDate(val);\n    return transformPrimitive(typ, val);\n}\n\n').concat(this.castFunctionLines[0]," {\n    return transform(val, typ, jsonToJSProps);\n}\n\n").concat(this.castFunctionLines[1]," {\n    return transform(val, typ, jsToJSONProps);\n}\n\nfunction a(typ").concat(e,") {\n    return { arrayItems: typ };\n}\n\nfunction u(...typs").concat(t,") {\n    return { unionMembers: typs };\n}\n\nfunction o(props").concat(t,", additional").concat(e,") {\n    return { props, additional };\n}\n\nfunction m(additional").concat(e,") {\n    return { props: [], additional };\n}\n\nfunction r(name").concat(i,") {\n    return { ref: name };\n}\n")),this.emitTypeMap()}}emitConvertModule(){this.ensureBlankLine(),this.emitMultiline("// Converts JSON ".concat("json"===this._jsOptions.rawType?"strings":"types"," to/from your types")),this._jsOptions.runtimeTypecheck&&this.emitMultiline("// and asserts the results".concat("json"===this._jsOptions.rawType?" of JSON.parse":""," at runtime"));const e=this.moduleLine;void 0===e?this.emitConvertModuleBody():this.emitBlock([e," "],"",(()=>this.emitConvertModuleBody()))}emitTypes(){}emitUsageImportComment(){this.emitLine('//   const Convert = require("./file");')}emitUsageComments(){this.emitMultiline("// To parse this data:\n//"),this.emitUsageImportComment(),this.emitLine("//"),this.forEachTopLevel("none",((e,t)=>{const n=l.modifySource(a.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)=>{const n=this.serializerFunctionName(t),i=this.deserializerFunctionName(t);this.emitLine('"',n,'": ',n,","),this.emitLine('"',i,'": ',i,",")}))}))}emitSourceStructure(){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitTypes(),this.emitConvertModule(),this.emitConvertModuleHelpers(),this.emitModuleExports()}}t.JavaScriptRenderer=g},83341:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(59592),r=n(85332),s=n(4007),o=n(77239),a=n(28609),u=n(70991),l=n(60877),c=n(35475),h=n(83059),p=n(50714),d=n(32866),m=n(74868),f=n(41283);t.javaScriptPropTypesOptions={acronymStyle:a.acronymOption(a.AcronymStyleOptions.Pascal),converters:p.convertersOption(),moduleSystem:new r.EnumOption("module-system","Which module system to use",[["common-js",!1],["es6",!0]],"es6")};class y extends i.TargetLanguage{getOptions(){return[t.javaScriptPropTypesOptions.acronymStyle,t.javaScriptPropTypesOptions.converters]}constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"JavaScript PropTypes",arguments.length>1&&void 0!==arguments[1]?arguments[1]:["javascript-prop-types"],arguments.length>2&&void 0!==arguments[2]?arguments[2]:"js")}makeRenderer(e,n){return new _(this,e,r.getOptionValues(t.javaScriptPropTypesOptions,n))}}t.JavaScriptPropTypesTargetLanguage=y;const g=o.funPrefixNamer("properties",(e=>e));class _ extends s.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._jsOptions=n}nameStyle(e,t){const n=a.acronymStyle(this._jsOptions.acronymStyle),i=u.splitIntoWords(e);return u.combineWords(i,h.legalizeName,t?u.firstUpperWordStyle:l.allLowerWordStyle,u.firstUpperWordStyle,t?e=>u.capitalize(n(e)):l.allLowerWordStyle,n,"",c.isES3IdentifierStart)}makeNamedTypeNamer(){return o.funPrefixNamer("types",(e=>this.nameStyle(e,!0)))}namerForObjectProperty(){return g}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return o.funPrefixNamer("enum-cases",(e=>this.nameStyle(e,!1)))}namedTypeToNameForTopLevel(e){return d.directlyReachableSingleNamedType(e)}makeNameForProperty(e,t,n,i,r){return super.makeNameForProperty(e,t,n,i,void 0)}typeMapTypeFor(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(["class","object","enum"].indexOf(e.kind)>=0)return["_",this.nameForNamedType(e)];const n=u.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=>u.panic("Should already be handled.")),(e=>"PropTypes.object"),(e=>u.panic("Should already be handled.")),(e=>{const t=Array.from(e.getChildren()).map((e=>this.typeMapTypeFor(e,!1)));return["PropTypes.oneOfType([",...m.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)=>{const n=[];this.forEachEnumCase(e,"none",((e,t,i)=>{n.push("'"),n.push(e),n.push("'"),n.push(", ")})),n.pop(),this.emitLine(["const _",t," = PropTypes.oneOfType([",...n,"]);"])}));const e=[],t=[],n=[];this.forEachObject("none",((e,i)=>{t.push(i),n.push(this.gatherSource((()=>this.emitObject(i,e))))})),t.forEach(((i,r)=>{let s=0;const o=n[r].filter((e=>e));for(let n=0;n<o.length;n++){const i=o[n];for(let n=0;n<e.length;n++){const r=e[n];t[r]===i&&(s=Math.max(s,r+1))}}e.splice(s,0,r)})),e.forEach((e=>this.emitGatheredSource(n[e]))),this.forEachTopLevel("none",((e,t)=>{e instanceof f.PrimitiveType?(this.ensureBlankLine(),this.emitExport(t,this.typeMapTypeFor(e))):"array"===e.kind?(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('"'.concat(l.utf16StringEscape(t),'"'),": ",this.typeMapTypeForProperty(n),",")}))})),this.emitLine("});")}emitSourceStructure(){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this.emitUsageComments(),this.emitImports(),this.emitTypes()}}t.JavaScriptPropTypesRenderer=_},35475:(e,t)=>{"use strict";function n(e,t){if(e<t[0])return!1;let n,i=0,r=t.length;for(;i+1<r;){if(n=i+(r-i)/2,n-=n%2,t[n]<=e&&e<=t[n+1])return!0;e<t[n]?r=n:i=n+2}return!1}Object.defineProperty(t,"__esModule",{value:!0}),t.isES3IdentifierStart=function(e){return e>=65&&e<=90||e>=97&&e<=122||36===e||95===e||e>127&&n(e,i)},t.isES3IdentifierPart=function(e){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||36===e||95===e||e>127&&n(e,r)};const 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],r=[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]},12833:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78818),s=n(4007),o=n(77239),a=n(85332),u=n(97714),l=n(60877),c=n(78920),h=n(59592),p=n(41283),d=n(32866),m=n(28609);var f;!function(e){e[e.None=0]="None",e[e.Jackson=1]="Jackson",e[e.Klaxon=2]="Klaxon",e[e.KotlinX=3]="KotlinX"}(f=t.Framework||(t.Framework={})),t.kotlinOptions={framework:new a.EnumOption("framework","Serialization framework",[["just-types",f.None],["jackson",f.Jackson],["klaxon",f.Klaxon],["kotlinx",f.KotlinX]],"klaxon"),acronymStyle:m.acronymOption(m.AcronymStyleOptions.Pascal),packageName:new a.StringOption("package","Package","PACKAGE","quicktype")};class y extends h.TargetLanguage{constructor(){super("Kotlin",["kotlin"],"kt")}getOptions(){return[t.kotlinOptions.framework,t.kotlinOptions.acronymStyle,t.kotlinOptions.packageName]}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(e,n){const i=a.getOptionValues(t.kotlinOptions,n);switch(i.framework){case f.None:return new S(this,e,i);case f.Jackson:return new N(this,e,i);case f.Klaxon:return new L(this,e,i);case f.KotlinX:return new O(this,e,i);default:return c.assertNever(i.framework)}}}t.KotlinTargetLanguage=y;const g=["package","as","typealias","class","this","super","val","var","fun","for","null","true","false","is","in","throw","return","break","continue","object","if","try","else","while","do","when","interface","typeof","klaxon","toJson","Any","Boolean","Double","Float","Long","Int","Short","System","Byte","String","Array","List","Map","Enum","Class","JsonObject","JsonValue","Converter","Klaxon"];function _(e){return l.isLetterOrUnderscore(e)||l.isNumeric(e)}function v(e){return _(e)&&!l.isDigit(e)}const b=l.legalizeCharacters(_);function T(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.allUpperWordStyle;const i=l.splitIntoWords(t);return l.combineWords(i,b,e?l.firstUpperWordStyle:l.allLowerWordStyle,l.firstUpperWordStyle,e?l.allUpperWordStyle:l.allLowerWordStyle,n,"",v)}const w=l.utf32ConcatMap(l.escapeNonPrintableMapper(l.isPrintable,(function(e){return"\\u"+l.intToHex(e,4)})));function k(e){return w(e).replace(/\$/g,"\\$")}class S extends s.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._kotlinOptions=n}forbiddenNamesForGlobalNamespace(){return g}forbiddenForObjectProperties(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:[],includeGlobalForbidden:!0}}forbiddenForUnionMembers(e,t){return{names:[],includeGlobalForbidden:!1}}topLevelNameStyle(e){return T(!0,e)}makeNamedTypeNamer(){return o.funPrefixNamer("upper",(e=>T(!0,e,m.acronymStyle(this._kotlinOptions.acronymStyle))))}namerForObjectProperty(){return o.funPrefixNamer("lower",(e=>T(!1,e,m.acronymStyle(this._kotlinOptions.acronymStyle))))}makeUnionMemberNamer(){return o.funPrefixNamer("upper",(e=>T(!0,e)+"Value"))}makeEnumCaseNamer(){return o.funPrefixNamer("upper",(e=>T(!0,e,m.acronymStyle(this._kotlinOptions.acronymStyle))))}emitDescriptionBlock(e){this.emitCommentLines(e," * ","/**"," */")}emitBlock(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"curly";const[i,r]="curly"===n?["{","}"]:"paren"===n?["(",")"]:["{","})"];this.emitLine(e," ",i),this.indent(t),this.emitLine(r)}anySourceType(e){return["Any",e]}arrayType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return["List<",this.kotlinType(e.items,t),">"]}mapType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return["Map<String, ",this.kotlinType(e.values,t),">"]}kotlinType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=arguments.length>2&&void 0!==arguments[2]&&arguments[2]?"":"?";return d.matchType(e,(e=>u.maybeAnnotated(t,r.anyTypeIssueAnnotation,this.anySourceType(n))),(e=>u.maybeAnnotated(t,r.nullTypeIssueAnnotation,this.anySourceType(n))),(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=>{const i=d.nullableFromUnion(e);return null!==i?[this.kotlinType(i,t),n]:this.nameForNamedType(e)}))}emitUsageHeader(){}emitHeader(){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this.emitUsageHeader(),this.ensureBlankLine(),this.emitLine("package ",this._kotlinOptions.packageName),this.ensureBlankLine()}emitTopLevelArray(e,t){const n=this.kotlinType(e.items);this.emitLine(["typealias ",t," = ArrayList<",n,">"])}emitTopLevelMap(e,t){const 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(0===e.getProperties().size)return void this.emitEmptyClassDefinition(e,t);const 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,i=!0;this.forEachClassProperty(e,"none",((r,s,o)=>{const a="union"===o.type.kind&&null!==d.nullableFromUnion(o.type),u=o.isOptional||"null"===o.type.kind||a,l=0===--t;let c=[];const h=this.descriptionForClassProperty(e,s);void 0!==h&&c.push((()=>this.emitDescription(h))),this.renameAttribute(r,s,!u,c),c.length>0&&!i&&this.ensureBlankLine();for(const e of c)e();this.emitLine("val ",r,": ",n(o),u?" = null":"",l?"":","),c.length>0&&!l&&this.ensureBlankLine(),i=!1}))})),this.emitClassDefinitionMethods(e,t)}emitClassDefinitionMethods(e,t){this.emitLine(")")}emitClassAnnotations(e,t){}renameAttribute(e,t,n,i){}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,0===--t?"":",")}))}))}emitUnionDefinition(e,t){this.emitDescription(this.descriptionForType(e));const[n,i]=d.removeNullFromUnion(e,(function(e){const t=e.kind;return"class"===t?t:"_"+t}));this.emitClassAnnotations(e,t),this.emitBlock(["sealed class ",t],(()=>{{let r=[];this.forEachUnionMember(e,i,"none",null,((e,n)=>{r.push([["class ",e,"(val value: ",this.kotlinType(n),")"],[" : ",t,"()"]])})),null!==n&&r.push([["class ",this.nameForUnionMember(e,n),"()"],[" : ",t,"()"]]),this.emitTable(r)}this.emitUnionDefinitionMethods(e,i,n,t)}))}emitUnionDefinitionMethods(e,t,n,i){}emitSourceStructure(){this.emitHeader(),this.forEachTopLevel("leading",((e,t)=>{e instanceof p.ArrayType?this.emitTopLevelArray(e,t):e instanceof p.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)))}}t.KotlinRenderer=S;class L extends S{constructor(e,t,n){super(e,t,n)}unionMemberFromJsonValue(e,t){return d.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=>c.mustNotHappen()))}unionMemberJsonValueGuard(e,t){return d.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=>c.mustNotHappen()))}emitUsageHeader(){this.emitLine("// To parse the JSON, install Klaxon and do:"),this.emitLine("//"),this.forEachTopLevel("none",((e,t)=>{this.emitLine("//   val ",u.modifySource(l.camelCase,t)," = ",t,".fromJson(jsonString)")}))}emitHeader(){super.emitHeader(),this.emitLine("import com.beust.klaxon.*");const e=i.iterableSome(this.typeGraph.allNamedTypes(),(e=>e instanceof p.UnionType&&null===d.nullableFromUnion(e))),t=i.iterableSome(this.typeGraph.allNamedTypes(),(e=>e instanceof p.ClassType&&0===e.getProperties().size));(e||this.haveEnums||t)&&this.emitGenericConverter();let n=[];t&&n.push([[".convert(JsonObject::class,"],[" { it.obj!! },"],[" { it.toJsonString() })"]]),this.forEachEnum("none",((e,t)=>{n.push([[".convert(",t,"::class,"],[" { ",t,".fromValue(it.string!!) },"],[' { "\\"${it.value}\\"" })']])})),this.forEachUnion("none",((e,t)=>{n.push([[".convert(",t,"::class,"],[" { ",t,".fromJson(it) },"],[" { it.toJson() }, true)"]])})),this.ensureBlankLine(),this.emitLine("private val klaxon = Klaxon()"),n.length>0&&this.indent((()=>this.emitTable(n)))}emitTopLevelArray(e,t){const 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){const 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,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=k(t),s=[];return this.sourcelikeToString(e)!==r&&s.push(['name = "',r,'"']),n&&s.push("ignored = true"),0===s.length?void 0:["@Json(",i.arrayIntercalate(", ",s),")"]}emitEmptyClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine("typealias ",t," = JsonObject")}emitClassDefinitionMethods(e,t){i.iterableSome(this.topLevels,(t=>{let[n,i]=t;return i===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<",t,">(json)")}))})):this.emitLine(")")}renameAttribute(e,t,n,i){const r=this.klaxonRenameAttribute(e,t);void 0!==r&&i.push((()=>this.emitLine(r)))}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,'("'.concat(k(t),'")'),0===--n?";":",")})),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([['"'.concat(k(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,i){this.ensureBlankLine(),this.emitLine("public fun toJson(): String = klaxon.toJsonString(when (this) {"),this.indent((()=>{let i=[];if(this.forEachUnionMember(e,t,"none",null,(e=>{i.push([["is ",e],[" -> this.value"]])})),null!==n){const t=this.nameForUnionMember(e,n);i.push([["is ",t],[' -> "null"']])}this.emitTable(i)})),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",(()=>{this.emitLine("public fun fromJson(jv: JsonValue): ",i," = when (jv.inside) {"),this.indent((()=>{let i=[];if(this.forEachUnionMember(e,t,"none",null,((e,t)=>{i.push([[this.unionMemberJsonValueGuard(t,"jv.inside")],[" -> ",e,"(",this.unionMemberFromJsonValue(t,"jv"),"!!)"]])})),null!==n){const t=this.nameForUnionMember(e,n);i.push([[this.unionMemberJsonValueGuard(n,"jv.inside")],[" -> ",t,"()"]])}i.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(i)})),this.emitLine("}")}))}}t.KotlinKlaxonRenderer=L;class N extends S{constructor(e,t,n){super(e,t,n)}unionMemberJsonValueGuard(e,t){return d.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=>c.mustNotHappen()))}emitUsageHeader(){this.emitLine("// To parse the JSON, install jackson-module-kotlin and do:"),this.emitLine("//"),this.forEachTopLevel("none",((e,t)=>{this.emitLine("//   val ",u.modifySource(l.camelCase,t)," = ",t,".fromJson(jsonString)")}))}emitHeader(){super.emitHeader(),this.emitMultiline("import com.fasterxml.jackson.annotation.*\nimport com.fasterxml.jackson.core.*\nimport com.fasterxml.jackson.databind.*\nimport com.fasterxml.jackson.databind.deser.std.StdDeserializer\nimport com.fasterxml.jackson.databind.module.SimpleModule\nimport com.fasterxml.jackson.databind.node.*\nimport com.fasterxml.jackson.databind.ser.std.StdSerializer\nimport com.fasterxml.jackson.module.kotlin.*");const e=i.iterableSome(this.typeGraph.allNamedTypes(),(e=>e instanceof p.UnionType&&null===d.nullableFromUnion(e))),t=i.iterableSome(this.typeGraph.allNamedTypes(),(e=>e instanceof p.ClassType&&0===e.getProperties().size));(e||this.haveEnums||t)&&this.emitGenericConverter();let n=[];this.forEachEnum("none",((e,t)=>{n.push([["convert(",t,"::class,"],[" { ",t,".fromValue(it.asText()) },"],[' { "\\"${it.value}\\"" })']])})),this.forEachUnion("none",((e,t)=>{n.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)")})),n.length>0&&this.indent((()=>this.emitTable(n))),this.emitLine("}")}emitTopLevelArray(e,t){const 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){const 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,t,n){let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const s=k(t),o=this.sourcelikeToString(e)!==s,a=[],u=t.startsWith("is"),l=[];return(o||u)&&l.push('"'+s+'"'),n&&l.push("required=true"),l.length>0&&(a.push(["@get:JsonProperty(",i.arrayIntercalate(", ",l),")"]),a.push(["@field:JsonProperty(",i.arrayIntercalate(", ",l),")"])),r&&(a.push("@get:JsonIgnore"),a.push("@field:JsonIgnore")),0===a.length?void 0:a}emitEmptyClassDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine("typealias ",t," = JsonNode")}emitClassDefinitionMethods(e,t){i.iterableSome(this.topLevels,(t=>{let[n,i]=t;return i===e}))?this.emitBlock(")",(()=>{this.emitLine("fun toJson() = mapper.writeValueAsString(this)"),this.ensureBlankLine(),this.emitBlock("companion object",(()=>{this.emitLine("fun fromJson(json: String) = mapper.readValue<",t,">(json)")}))})):this.emitLine(")")}renameAttribute(e,t,n,i){const r=this.jacksonRenameAttribute(e,t,n);void 0!==r&&i.push((()=>this.emitLine(r)))}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,'("'.concat(k(t),'")'),0===--n?";":",")})),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([['"'.concat(k(n),'"')],[" -> ",e]])})),t.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(t)}))}))}))}emitGenericConverter(){this.ensureBlankLine(),this.emitMultiline('\n@Suppress("UNCHECKED_CAST")\nprivate fun <T> ObjectMapper.convert(k: kotlin.reflect.KClass<*>, fromJson: (JsonNode) -> T, toJson: (T) -> String, isUnion: Boolean = false) = registerModule(SimpleModule().apply {\n    addSerializer(k.java as Class<T>, object : StdSerializer<T>(k.java as Class<T>) {\n        override fun serialize(value: T, gen: JsonGenerator, provider: SerializerProvider) = gen.writeRawValue(toJson(value))\n    })\n    addDeserializer(k.java as Class<T>, object : StdDeserializer<T>(k.java as Class<T>) {\n        override fun deserialize(p: JsonParser, ctxt: DeserializationContext) = fromJson(p.readValueAsTree())\n    })\n})')}emitUnionDefinitionMethods(e,t,n,i){this.ensureBlankLine(),this.emitLine("fun toJson(): String = mapper.writeValueAsString(when (this) {"),this.indent((()=>{let i=[];if(this.forEachUnionMember(e,t,"none",null,(e=>{i.push([["is ",e],[" -> this.value"]])})),null!==n){const t=this.nameForUnionMember(e,n);i.push([["is ",t],[' -> "null"']])}this.emitTable(i)})),this.emitLine("})"),this.ensureBlankLine(),this.emitBlock("companion object",(()=>{this.emitLine("fun fromJson(jn: JsonNode): ",i," = when (jn) {"),this.indent((()=>{let i=[];if(this.forEachUnionMember(e,t,"none",null,((e,t)=>{i.push([[this.unionMemberJsonValueGuard(t,"jn")],[" -> ",e,"(mapper.treeToValue(jn))"]])})),null!==n){const t=this.nameForUnionMember(e,n);i.push([[this.unionMemberJsonValueGuard(n,"jn")],[" -> ",t,"()"]])}i.push([["else"],[" -> throw IllegalArgumentException()"]]),this.emitTable(i)})),this.emitLine("}")}))}}t.KotlinJacksonRenderer=N;class O extends S{constructor(e,t,n){super(e,t,n)}anySourceType(e){return["JsonElement",e]}arrayType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const i=this.kotlinType(e.items,t,!0),r=this.sourcelikeToString(i);return"JsonObject"===r||"JsonElement"===r?"JsonArray":super.arrayType(e,t,n)}mapType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const i=this.kotlinType(e.values,t,!0),r=this.sourcelikeToString(i);return"JsonObject"===r||"JsonElement"===r?"JsonObject":super.mapType(e,t,n)}emitTopLevelMap(e,t){"JsonObject"===this.kotlinType(e.values)?this.emitLine(["typealias ",t," = JsonObject"]):super.emitTopLevelMap(e,t)}emitTopLevelArray(e,t){const 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("//");const e=[];e.push(["// val ","json"," = Json { allowStructuredMapKeys = true }"]),this.forEachTopLevel("none",((t,n)=>{e.push(["// val ",u.modifySource(l.camelCase,n)," = json.parse(".concat(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,i){const r=this._rename(e,t);void 0!==r&&i.push((()=>this.emitLine(r)))}_rename(e,t){const n=k(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)=>{const i=k(n);this.emitLine('@SerialName("'.concat(i,'") '),e,'("'.concat(i,'")'),0===--t?";":",")}))}))}}t.KotlinXRenderer=O},94993:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(41283),o=n(32866),a=n(77239),u=n(97714),l=n(60877),c=n(4007),h=n(85332),p=n(78920),d=n(16176),m="QT";t.objcOptions={features:new h.EnumOption("features","Interface and implementation",[["all",{interface:!0,implementation:!0}],["interface",{interface:!0,implementation:!1}],["implementation",{interface:!1,implementation:!0}]]),justTypes:new h.BooleanOption("just-types","Plain types only",!1),marshallingFunctions:new h.BooleanOption("functions","C-style functions",!1),classPrefix:new h.StringOption("class-prefix","Class prefix","PREFIX",m),extraComments:new h.BooleanOption("extra-comments","Extra comments",!1)};class f extends r.TargetLanguage{constructor(){super("Objective-C",["objc","objective-c","objectivec"],"m")}getOptions(){return[t.objcOptions.justTypes,t.objcOptions.classPrefix,t.objcOptions.features,t.objcOptions.extraComments,t.objcOptions.marshallingFunctions]}makeRenderer(e,n){return new S(this,e,h.getOptionValues(t.objcOptions,n))}}function y(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];"id"===e&&(e="identifier");let n=l.splitIntoWords(e);return t&&(0===n.length?n=[{word:"flag",isAcronym:!1}]:!n[0].isAcronym&&v.indexOf(n[0].word)<0&&(n=[{word:"is",isAcronym:!1},...n])),n.length>0&&_.indexOf(n[0].word)>=0&&(n=[{word:"the",isAcronym:!1},...n]),l.combineWords(n,T,l.allLowerWordStyle,l.firstUpperWordStyle,l.allLowerWordStyle,l.allUpperWordStyle,"",b)}t.ObjectiveCTargetLanguage=f;const g=["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"],_=["id","hash","description","init","copy","mutableCopy","superclass","debugDescription","new"],v=["is","are","were","was","will","all","some","many","has","have","had","does","do","requires","require","needs","need"];function b(e){return d.isAlphabetic(e)||95===e}const T=l.utf16LegalizeCharacters((function(e){const t=d.getCategory(e);return["Nd","Pc","Mn","Mc"].indexOf(t)>=0||b(e)})),w="values",k=["new",w];class S extends c.ConvenienceRenderer{constructor(e,t,n){if(super(e,t),this._options=n,n.classPrefix===m){const e=p.defined(i.iterableFirst(this.topLevels.keys()));this._classPrefix=this.inferClassPrefix(e)}else this._classPrefix=n.classPrefix}inferClassPrefix(e){const t=e.length;let n=0;for(;n<t&&l.fastIsUpperCase(e.charCodeAt(n));)n+=1;return n<2?m:e.slice(0,n-1)}forbiddenNamesForGlobalNamespace(){return g}forbiddenForObjectProperties(e,t){return{names:_,includeGlobalForbidden:!0}}forbiddenForEnumCases(e,t){return{names:k,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return a.funPrefixNamer("types",(e=>function(e,t){const n=l.splitIntoWords(t),i=l.combineWords(n,T,l.firstUpperWordStyle,l.firstUpperWordStyle,l.allUpperWordStyle,l.allUpperWordStyle,"",b);return l.addPrefixIfNecessary(e,i)}(this._classPrefix,e)))}namerForObjectProperty(e,t){return new a.Namer("properties",(e=>y(e,"bool"===t.type.kind)),["_","the","one","some","another"])}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return new a.Namer("enum-cases",y,[])}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(){if(this._options.extraComments){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(const e of t)this.emitLine("// ",e)}}startFile(e,t){p.assert(void 0===this._currentFilename,"Previous file wasn't finished"),this._currentFilename="".concat(this.sourcelikeToString(e),".").concat(t)}finishFile(){super.finishFile(p.defined(this._currentFilename)),this._currentFilename=void 0}memoryAttribute(e,t){return 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=>{const t=o.nullableFromUnion(e);return null!==t?this.memoryAttribute(t,!0):"copy"}))}objcType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return o.matchType(e,(e=>["id",""]),(e=>["id",""]),(e=>t?["NSNumber"," *"]:["BOOL",""]),(e=>t?["NSNumber"," *"]:["NSInteger",""]),(e=>t?["NSNumber"," *"]:["double",""]),(e=>["NSString"," *"]),(e=>{const t=e.items,n=this.objcType(t,!0);return o.isAnyOrNull(t)?["NSArray"," *"]:[["NSArray<",n,">"]," *"]}),(e=>[this.nameForNamedType(e)," *"]),(e=>[["NSDictionary<NSString *, ",this.objcType(e.values,!0),">"]," *"]),(e=>[this.nameForNamedType(e)," *"]),(e=>{const t=o.nullableFromUnion(e);return null!==t?this.objcType(t,!0):["id",""]}))}jsonType(e){return 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=>{const t=o.nullableFromUnion(e);return null!==t?this.jsonType(t):["id",""]}))}fromDynamicExpression(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return o.matchType(e,(e=>n),(e=>n),(e=>n),(e=>n),(e=>n),(e=>n),(e=>["map(",n,", \u03bb(id x, ",this.fromDynamicExpression(e.items,"x"),"))"]),(e=>["[",this.nameForNamedType(e)," fromJSONDictionary:",n,"]"]),(e=>["map(",n,", \u03bb(id x, ",this.fromDynamicExpression(e.values,"x"),"))"]),(e=>["[",this.nameForNamedType(e)," withValue:",n,"]"]),(e=>{const t=o.nullableFromUnion(e);return null!==t?this.fromDynamicExpression(t,n):n}))}toDynamicExpression(e,t){return 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,", \u03bb(id x, ",this.toDynamicExpression(e.items,"x"),"))"]),(e=>["[",t," JSONDictionary]"]),(e=>this.implicitlyConvertsFromJSON(e)?t:["map(",t,", \u03bb(id x, ",this.toDynamicExpression(e.values,"x"),"))"]),(e=>["[",t," value]"]),(e=>{const n=o.nullableFromUnion(e);return null!==n?this.implicitlyConvertsFromJSON(n)?["NSNullify(",t,")"]:["NSNullify(",this.toDynamicExpression(n,t),")"]:t}))}implicitlyConvertsFromJSON(e){if(e instanceof s.ClassType)return!1;if(e instanceof s.EnumType)return!1;if(e instanceof s.ArrayType)return this.implicitlyConvertsFromJSON(e.items);if(e instanceof s.MapType)return this.implicitlyConvertsFromJSON(e.values);if(e.isPrimitive())return!0;if(e instanceof s.UnionType){const t=o.nullableFromUnion(e);return null===t||this.implicitlyConvertsFromJSON(t)}return!1}implicitlyConvertsToJSON(e){return this.implicitlyConvertsFromJSON(e)&&"bool"!==e.kind}emitPropertyAssignment(e,t,n){const i=["_",e];o.matchType(n,(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,i),";")),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,["(id)",i]),";")),(e=>{const t=e.values;this.emitLine(i," = map(",i,", ",["\u03bb(id x, ",this.fromDynamicExpression(t,"x"),")"],");")}),(e=>this.emitLine(i," = ",this.fromDynamicExpression(e,["(id)",i]),";")),(n=>{const r=o.nullableFromUnion(n);null!==r?this.emitPropertyAssignment(e,t,r):this.emitLine(i," = ",this.fromDynamicExpression(n,i),";")}))}emitPrivateClassInterface(e,t){this.emitLine("@interface ",t," (JSONConversion)"),this.emitLine("+ (instancetype)fromJSONDictionary:(NSDictionary *)dict;"),this.emitLine("- (NSDictionary *)JSONDictionary;"),this.emitLine("@end")}pointerAwareTypeName(e){const t=e instanceof s.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){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=this.variableNameForTopLevel(e);return["NSData",t?l.repeatString(" ",this.sourcelikeToString(e).length-6):""," *_Nullable ",e,"ToData(",e," *",n,", NSError **error)"]}topLevelToJSONPrototype(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=this.variableNameForTopLevel(e);return["NSString",t?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){const 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){const n=i.mapContains(this.topLevels,e);this.emitDescription(this.descriptionForType(e)),this.emitLine("@interface ",t," : NSObject"),this.emitPropertyTable(e,((e,t,n)=>{let i=["nonatomic"];return n.type.isNullable&&i.push("nullable"),i.push(this.memoryAttribute(n.type,n.type.isNullable)),[["@property ",["(",i.join(", "),")"]," "],[this.pointerAwareTypeName(n.type),e,";"]]})),!this._options.justTypes&&n&&(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=t||l.stringEscape(n)!==this.sourcelikeToString(e)})),t}hasUnsafeProperties(e){let t=!1;return this.forEachClassProperty(e,"none",((e,n,i)=>{t=t||!this.implicitlyConvertsToJSON(i.type)})),t}emitClassImplementation(e,t){const n=i.mapContains(this.topLevels,e),r=this.hasIrregularProperties(e),s=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('@"'.concat(l.stringEscape(t),'": @"'),e,'",')))})),this.emitLine("};")})),this.ensureBlankLine(),n&&(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",(()=>{r||s?(this.emitLine("id dict = [[self dictionaryWithValuesForKeys:",t,".properties.allValues] mutableCopy];"),this.ensureBlankLine(),r&&(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];")}))}))),s&&(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)){const i=l.stringEscape(t),r=["_",e];this.emitLine('@"',i,'": ',this.toDynamicExpression(n.type,r),",")}}))})),this.emitLine("}];")),this.ensureBlankLine(),this.emitLine("return dict;")):this.emitLine("return [self dictionaryWithValuesForKeys:",t,".properties.allValues];")})),n&&(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 - ".concat(e)),this.ensureBlankLine()}variableNameForTopLevel(e){return u.modifySource((e=>(e=e.slice(this._classPrefix.length),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);const n=[t,".",w];this.emitMethod(["+ (NSDictionary<NSString *, ",t," *> *)",w],(()=>{this.emitLine("static NSDictionary<NSString *, ",t," *> *",w,";"),this.emitLine("return ",w," = ",w," ? ",w," : @{"),this.indent((()=>{this.forEachEnumCase(e,"none",((e,n)=>{const i=['@"',l.stringEscape(n),'"'];this.emitLine(i,": [[",t," alloc] initWithValue:",i,"],")}))})),this.emitLine("};")})),this.ensureBlankLine(),this.forEachEnumCase(e,"none",((e,i)=>{this.emitLine("+ (",t," *)",e," { return ",n,'[@"',l.stringEscape(i),'"]; }')})),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(!("stdout"!==e)){const t=p.defined(i.mapFirst(this.topLevels));e=this.sourcelikeToString(this.nameForNamedType(t))+".m"}const[t,n]=function(e){const t=e.lastIndexOf("."),n=-1!==t?e.split(".").pop():"m";return[e=-1!==t?e.slice(0,t):e,void 0===n?"m":n]}(e);if(this._options.features.interface){this.startFile(t,"h"),void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitCommentLines(["To parse this JSON:",""]),this.emitLine("//   NSError *error;"),this.forEachTopLevel("none",((e,t)=>{const n=e instanceof s.ClassType?["[",t," fromJSON:json encoding:NSUTF8Encoding error:&error];"]:[t,"FromJSON(json, NSUTF8Encoding, &error);"];this.emitLine("//   ",t," *",this.variableNameForTopLevel(t)," = ",n)}))),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 s.ClassType)));const e=i.iterableSome(this.topLevels,(e=>{let[t,n]=e;return!(n instanceof s.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 s.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,n),this.emitLine('#import "'.concat(t,'.h"')),this.ensureBlankLine(),this._options.justTypes||(this.ensureBlankLine(),this.emitExtraComments("Shorthand for simple blocks"),this.emitLine("#define \u03bb(decl, expr) (^(decl) { return (expr); })"),this.ensureBlankLine(),this.emitExtraComments("nil \u2192 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(){return i.iterableSome(this.typeGraph.allTypesUnordered(),(function e(t){return t instanceof s.MapType||t instanceof s.ArrayType||t instanceof s.ClassType&&i.mapSome(t.getProperties(),(t=>e(t.type)))}))}emitMapFunction(){this.needsMap&&this.emitMultiline("static id map(id collection, id (^f)(id value)) {\n    id result = nil;\n    if ([collection isKindOfClass:NSArray.class]) {\n        result = [NSMutableArray arrayWithCapacity:[collection count]];\n        for (id x in collection) [result addObject:f(x)];\n    } else if ([collection isKindOfClass:NSDictionary.class]) {\n        result = [NSMutableDictionary dictionaryWithCapacity:[collection count]];\n        for (id key in collection) [result setObject:f([collection objectForKey:key]) forKey:key];\n    }\n    return result;\n}")}}t.ObjectiveCRenderer=S},38571:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(4007),r=n(77239),s=n(97714),o=n(59592),a=n(41283),u=n(32866),l=n(60877);t.pikeOptions={};const c=["auto","nomask","final","static","extern","private","local","public","protected","inline","optional","variant","void","mixed","array","__attribute__","__deprecated__","mapping","multiset","object","function","__func__","program","string","float","int","enum","typedef","if","do","for","while","else","foreach","catch","gauge","class","break","case","const","constant","continue","default","import","inherit","lambda","predef","return","sscanf","switch","typeof","global"],h=l.legalizeCharacters(l.isLetterOrUnderscoreOrDigit),p=r.funPrefixNamer("enumNamer",l.makeNameStyle("upper-underscore",h)),d=r.funPrefixNamer("genericNamer",l.makeNameStyle("underscore",h)),m=r.funPrefixNamer("typeNamer",l.makeNameStyle("pascal",h));class f extends o.TargetLanguage{constructor(){super("Pike",["pike","pikelang"],"pmod")}getOptions(){return[]}makeRenderer(e){return new y(this,e)}}t.PikeTargetLanguage=f;class y extends i.ConvenienceRenderer{emitSourceStructure(){this.emitInformationComment(),this.ensureBlankLine(),this.forEachTopLevel("leading",((e,t)=>{this.emitTopLevelTypedef(e,t),this.ensureBlankLine(),this.emitTopLevelConverter(e,t),this.ensureBlankLine()}),(e=>void 0===this.namedTypeToNameForTopLevel(e))),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 p}makeNamedTypeNamer(){return m}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?s.singleWord(this.nameForNamedType(e)):u.matchType(e,(e=>s.singleWord("mixed")),(e=>s.singleWord("mixed")),(e=>s.singleWord("bool")),(e=>s.singleWord("int")),(e=>s.singleWord("float")),(e=>s.singleWord("string")),(e=>s.singleWord(["array(",this.sourceFor(e.items).source,")"])),(e=>s.singleWord(this.nameForNamedType(e))),(e=>{let t;const n=e.values;return t=this.sourceFor(n).source,s.singleWord(["mapping(string:",t,")"])}),(e=>s.singleWord("enum")),(e=>{if(null!==u.nullableFromUnion(e)){const t=Array.from(e.getChildren()).map((e=>s.parenIfNeeded(this.sourceFor(e))));return s.multiWord("|",...t)}return s.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,' = "',l.stringEscape(n),'", '],['// json: "',n,'"']])})),this.emitTable(t)}))}emitUnion(e,t){if(null!==u.nullableFromUnion(e))return;this.emitDescription(this.descriptionForType(e));const[,n]=u.removeNullFromUnion(e);let i=[];this.forEachUnionMember(e,n,"none",null,((e,t)=>{const n=this.sourceFor(t).source;i.push([n])})),this.emitLine(["typedef ",i.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){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:" {",i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"}";this.emitLine(e,n),this.indent(t),this.emitLine(i)}emitMappingBlock(e,t){this.emitBlock(e,t,"([","]);")}emitClassMembers(e){let t=[];this.forEachClassProperty(e,"none",((e,n,i)=>{const r=this.sourceFor(i.type).source;t.push([[r," "],[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){const t=this.sourceFor(e.values).source;let n;this.emitLine(["mapping(string:",t,") retval = ([]);"]),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(['"',l.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["',l.stringEscape(t),'"];'])})),this.ensureBlankLine(),this.emitLine(["return retval;"])}))}}t.PikeRenderer=y},70670:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(59592),r=n(41283),s=n(85332),o=n(4007),a=n(77239),u=n(60877),l=n(78920),c=n(97714),h=n(32866),p=n(93587),d=n(74868),m=n(16176),f=["Any","True","False","None","Enum","List","Dict","Optional","Union","Iterable","Type","TypeVar","T","EnumT"],y=["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"];t.pythonOptions={features:new s.EnumOption("python-version","Python version",[["2.7",{version:2,typeHints:!1,dataClasses:!1}],["3.5",{version:3,typeHints:!1,dataClasses:!1}],["3.6",{version:3,typeHints:!0,dataClasses:!1}],["3.7",{version:3,typeHints:!0,dataClasses:!0}]],"3.6"),justTypes:new s.BooleanOption("just-types","Classes only",!1),nicePropertyNames:new s.BooleanOption("nice-property-names","Transform property names to be Pythonic",!0)};class g extends i.TargetLanguage{getOptions(){return[t.pythonOptions.features,t.pythonOptions.justTypes,t.pythonOptions.nicePropertyNames]}get stringTypeMapping(){const 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?d.iterableSome(e.members,(e=>this.needsTransformerForType(e))):"integer-string"===e.kind||"bool-string"===e.kind}makeRenderer(e,n){const i=s.getOptionValues(t.pythonOptions,n);return i.justTypes?new L(this,e,i):new E(this,e,i)}}function _(e){return u.isAscii(e)&&u.isLetter(e)}function v(e){const t=m.getCategory(e);return["Lu","Ll","Lt","Lm","Lo","Nl"].indexOf(t)>=0}function b(e){if(v(e))return!0;const t=m.getCategory(e);return["Mn","Mc","Nd","Pc"].indexOf(t)>=0}function T(e){const t=String.fromCharCode(e).normalize("NFKC"),n=t.length;if(0===n||!v(t.charCodeAt(0)))return!1;for(let i=1;i<n;i++)if(!b(t.charCodeAt(i)))return!1;return!0}t.PythonTargetLanguage=g;const w=u.utf16LegalizeCharacters((function(e){return u.isAscii(e)&&u.isLetterOrUnderscoreOrDigit(e)})),k=u.utf16LegalizeCharacters((function(e){const t=String.fromCharCode(e).normalize("NFKC"),n=t.length;for(let i=0;i<n;i++)if(!b(t.charCodeAt(i)))return!1;return!0}));function S(e,t,n,i){const r=function(e,t){return t?e?u.allUpperWordStyle:u.allLowerWordStyle:u.originalWord}(n,i),s=i?"_":"",o=u.splitIntoWords(t);return u.combineWords(o,2===e?w:k,r,r,r,r,s,T)}class L extends o.ConvenienceRenderer{constructor(e,t,n){super(e,t),this.pyOptions=n,this.imports=new Map,this.declaredTypes=new Set}forbiddenNamesForGlobalNamespace(){return f}forbiddenForObjectProperties(e,t){return{names:y,includeGlobalForbidden:!1}}makeNamedTypeNamer(){return a.funPrefixNamer("type",(e=>function(e,t){const n=u.splitIntoWords(t);return u.combineWords(n,2===e?w:k,u.firstUpperWordStyle,u.firstUpperWordStyle,u.allUpperWordStyle,u.allUpperWordStyle,"",2===e?_:T)}(this.pyOptions.features.version,e)))}namerForObjectProperty(){return a.funPrefixNamer("property",(e=>S(this.pyOptions.features.version,e,!1,this.pyOptions.nicePropertyNames)))}makeUnionMemberNamer(){return null}makeEnumCaseNamer(){return a.funPrefixNamer("enum-case",(e=>S(this.pyOptions.features.version,e,!0,this.pyOptions.nicePropertyNames)))}get commentLineStart(){return"# "}emitDescriptionBlock(e){1===e.length?this.emitLine('"""',e[0],'"""'):this.emitCommentLines(e,"",void 0,'"""','"""')}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(e){const t=e.kind;return"class"===t||"enum"===t}emitBlock(e,t){this.emitLine(e),this.indent(t)}string(e){return[2===this.pyOptions.features.version?'u"':'"',u.stringEscape(e),'"']}withImport(e,t){return(this.pyOptions.features.typeHints||"typing"!==e)&&d.mapUpdateInto(this.imports,e,(e=>e?d.setUnionInto(e,[t]):new Set([t]))),t}withTyping(e){return this.withImport("typing",e)}namedType(e){const t=this.nameForNamedType(e);return this.declaredTypes.has(e)?t:["'",t,"'"]}pythonType(e){const t=p.followTargetType(e);return h.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=>{const t=h.nullableFromUnion(e);if(null!==t){let e=[];return!this.getAlphabetizeProperties()&&this.pyOptions.features.dataClasses&&e.push(" = None"),[this.withTyping("Optional"),"[",this.pythonType(t),"]",...e]}const n=Array.from(e.sortedMembers).map((e=>this.pythonType(e)));return[this.withTyping("Union"),"[",d.arrayIntercalate(", ",n),"]"]}),(e=>"date-time"===e.kind?this.withImport("datetime","datetime"):"uuid"===e.kind?this.withImport("uuid","UUID"):l.panic("Transformed type ".concat(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"),"):"]:l.panic("Can't declare type ".concat(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;const t=[];this.forEachClassProperty(e,"none",((e,n,i)=>{t.push([e,this.typeHint(": ",this.pythonType(i.type))])})),this.emitBlock(["def __init__(self, ",d.arrayIntercalate(", ",t),")",this.typeHint(" -> None"),":"],(()=>{0===t.length?this.emitLine("pass"):this.forEachClassProperty(e,"none",(e=>{this.emitLine("self.",e," = ",e)}))}))}typeHint(){if(this.pyOptions.features.typeHints){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t}return[]}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?d.mapSortBy(e,(e=>e.type instanceof r.UnionType&&null!=h.nullableFromUnion(e.type)?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&&(0===e.getProperties().size?this.emitLine("pass"):this.forEachClassProperty(e,"none",((t,n,i)=>{this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitLine(t,this.typeHint(": ",this.pythonType(i.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(", "))}))}emitDefaultLeadingComments(){2===this.pyOptions.features.version&&(this.emitCommentLines(["coding: utf-8"]),this.ensureBlankLine(),this.haveEnums&&this.emitCommentLines(["","To use this code in Python 2.7 you'll have to","","    pip install enum34"]))}emitSupportCode(){}emitClosingCode(){}emitSourceStructure(e){const t=this.gatherSource((()=>{this.forEachNamedType(["interposing",2],(e=>this.emitClass(e)),(e=>this.emitEnum(e)),(e=>{}))})),n=this.gatherSource((()=>this.emitClosingCode())),i=this.gatherSource((()=>this.emitSupportCode()));void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this.emitDefaultLeadingComments(),this.ensureBlankLine(),this.emitImports(),this.ensureBlankLine(2),this.emitGatheredSource(i),this.ensureBlankLine(2),this.emitGatheredSource(t),this.ensureBlankLine(2),this.emitGatheredSource(n)}}function N(e,t){return"function"===typeof t?void 0!==e.value?{value:t(C(e))}:void 0!==e.lambda?{lambda:c.multiWord(" ","lambda x:",t([c.parenIfNeeded(e.lambda),"(x)"])),value:void 0}:{lambda:c.multiWord(" ","lambda x:",t("x")),value:void 0}:void 0!==t.value?l.panic("Cannot compose into a value"):void 0===t.lambda?e:void 0===e.value?void 0===e.lambda?t:{lambda:c.multiWord("","lambda x: ",c.parenIfNeeded(t.lambda),"(",c.parenIfNeeded(e.lambda),"(x))"),value:void 0}:{lambda:t.lambda,value:C(e)}}t.PythonRenderer=L;const O={value:void 0};function x(e){return void 0!==e.lambda?void 0===e.value?e.lambda:c.multiWord("","lambda x: ",c.parenIfNeeded(e.lambda),"(",e.value,")"):void 0!==e.value?c.multiWord(" ","lambda x:",e.value):c.multiWord(" ","lambda x:","x")}function C(e){return void 0===e.value?l.panic("Cannot make value from lambda without value"):void 0!==e.lambda?[c.parenIfNeeded(e.lambda),"(",e.value,")"]:e.value}class E extends L{constructor(){super(...arguments),this._deserializerFunctions=new Set,this._converterNamer=a.funPrefixNamer("converter",(e=>S(this.pyOptions.features.version,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"),":"],(()=>{const e=2===this.pyOptions.features.version?"(str, unicode)":"str";this.emitLine("assert isinstance(x, ",e,")"),this.emitLine("return x")}))}emitToEnumConverter(){const 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(){const 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(){const 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(){const 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):\n    for f in fs:\n        try:\n            return f(x)\n        except:\n            pass\n    assert False")}emitFromDatetimeConverter(){this.emitBlock(["def from_datetime(",this.typingDecl("x","Any"),")",this.typeHint(" -> ",this.withImport("datetime","datetime")),":"],(()=>{this._haveDateutil=!0,this.emitLine("return dateutil.parser.parse(x)")}))}emitFromStringifiedBoolConverter(){this.emitBlock(["def from_stringified_bool(x",this.typeHint(": str"),")",this.typeHint(" -> bool"),":"],(()=>{this.emitBlock('if x == "true":',(()=>this.emitLine("return True"))),this.emitBlock('if x == "false":',(()=>this.emitLine("return False"))),this.emitLine("assert False")}))}emitIsTypeConverter(){const 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 l.assertNever(e)}}conv(e){this._deserializerFunctions.add(e);const t=e.replace(/-/g,"_");return e.startsWith("from-")||e.startsWith("to-")||e.startsWith("is-")?t:["from_",t]}convFn(e,t){return N(t,{lambda:c.singleWord(this.conv(e)),value:void 0})}typeObject(e){const t=h.matchType(e,(e=>{}),(e=>"type(None)"),(e=>"bool"),(e=>"int"),(e=>"float"),(e=>"str"),(e=>"List"),(e=>this.nameForNamedType(e)),(e=>"dict"),(e=>this.nameForNamedType(e)),(e=>{}),(e=>"date-time"===e.kind?this.withImport("datetime","datetime"):"uuid"===e.kind?this.withImport("uuid","UUID"):void 0));return void 0===t?l.panic("No type object for ".concat(e.kind)):t}transformer(e,t,n){const i=(e,t)=>void 0===e?t:this.transformer(t,e,n),r=(e,t)=>N(t,(t=>[this.conv("is-type"),"(",this.typeObject(e),", ",t,")"]));if(t instanceof p.DecodingChoiceTransformer||t instanceof p.ChoiceTransformer){const i=t.transformers.map((e=>x(this.transformer(O,e,n)).source));return N(e,(e=>[this.conv("union"),"([",d.arrayIntercalate(", ",i),"], ",e,")"]))}if(t instanceof p.DecodingTransformer){return i(t.consumer,this.deserializer(e,t.sourceType))}if(t instanceof p.EncodingTransformer)return this.serializer(e,t.sourceType);if(t instanceof p.UnionInstantiationTransformer)return e;if(t instanceof p.UnionMemberMatchTransformer){return i(t.transformer,r(t.memberType,e))}if(t instanceof p.ParseStringTransformer){const r=t.consumer,s=void 0===r?n:r.sourceType;let o;switch(s.kind){case"integer":o=N(e,(e=>["int(",e,")"]));break;case"bool":o=this.convFn("from-stringified-bool",e);break;case"enum":o=this.deserializer(e,s);break;case"date-time":o=this.convFn("from-datetime",e);break;case"uuid":o=N(e,(e=>[this.withImport("uuid","UUID"),"(",e,")"]));break;default:return l.panic("Parsing of ".concat(s.kind," in a transformer is not supported"))}return i(r,o)}if(t instanceof p.StringifyTransformer){const n=t.consumer;let r;switch(t.sourceType.kind){case"integer":case"uuid":r=N(e,(e=>["str(",e,")"]));break;case"bool":r=N(e,(e=>["str(",e,").lower()"]));break;case"enum":r=this.serializer(e,t.sourceType);break;case"date-time":r=N(e,(e=>[e,".isoformat()"]));break;default:return l.panic("Parsing of ".concat(t.sourceType.kind," in a transformer is not supported"))}return i(n,r)}return l.panic("Transformer ".concat(t.kind," is not supported"))}deserializer(e,t){const n=p.transformationForType(t);return void 0!==n?this.transformer(e,n.transformer,n.targetType):h.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=>N(e,(e=>[this.conv("list"),"(",x(this.deserializer(O,t.items)).source,", ",e,")"]))),(t=>N(e,{lambda:c.singleWord(this.nameForNamedType(t),".from_dict"),value:void 0})),(t=>N(e,(e=>[this.conv("dict"),"(",x(this.deserializer(O,t.values)).source,", ",e,")"]))),(t=>N(e,{lambda:c.singleWord(this.nameForNamedType(t)),value:void 0})),(t=>{const n=Array.from(t.members).map((e=>x(this.deserializer(O,e)).source));return N(e,(e=>[this.conv("union"),"([",d.arrayIntercalate(", ",n),"], ",e,")"]))}),(t=>"date-time"===t.kind?this.convFn("from-datetime",e):"uuid"===t.kind?N(e,(e=>[this.withImport("uuid","UUID"),"(",e,")"])):l.panic("Transformed type ".concat(t.kind," not supported"))))}serializer(e,t){const n=p.transformationForType(t);if(void 0!==n){const t=n.reverse;return this.transformer(e,t.transformer,t.targetType)}return h.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=>N(e,(e=>[this.conv("list"),"(",x(this.serializer(O,t.items)).source,", ",e,")"]))),(t=>N(e,(e=>[this.conv("to-class"),"(",this.nameForNamedType(t),", ",e,")"]))),(t=>N(e,(e=>[this.conv("dict"),"(",x(this.serializer(O,t.values)).source,", ",e,")"]))),(t=>N(e,(e=>[this.conv("to-enum"),"(",this.nameForNamedType(t),", ",e,")"]))),(t=>{const n=Array.from(t.members).map((e=>x(this.serializer(O,e)).source));return N(e,(e=>[this.conv("union"),"([",d.arrayIntercalate(", ",n),"], ",e,")"]))}),(t=>"date-time"===t.kind?N(e,(e=>[e,".isoformat()"])):"uuid"===t.kind?N(e,(e=>["str(",e,")"])):l.panic("Transformed type ".concat(t.kind," not supported"))))}emitClassMembers(e){super.emitClassMembers(e),this.ensureBlankLine();const t=this.nameForNamedType(e);this.emitLine("@staticmethod"),this.emitBlock(["def from_dict(",this.typingDecl("obj","Any"),")",this.typeHint(" -> ",this.namedType(e)),":"],(()=>{const n=[];this.emitLine("assert isinstance(obj, dict)"),this.forEachClassProperty(e,"none",((e,t,i)=>{const r={value:["obj.get(",this.string(t),")"]};this.emitLine(e," = ",C(this.deserializer(r,i.type))),n.push(e)})),this.emitLine("return ",t,"(",d.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)=>{const i={value:["self.",e]};n.isOptional?this.emitBlock(["if self.",e," is not None:"],(()=>{this.emitLine("result[",this.string(t),"] = ",C(this.serializer(i,n.type)))})):this.emitLine("result[",this.string(t),"] = ",C(this.serializer(i,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(){const e=Array.from(this._deserializerFunctions).map((e=>[e,e]));this.forEachWithBlankLines(e,["interposing",2],(e=>{this.emitConverter(e)}))}makeTopLevelDependencyNames(e,t){const n=new a.DependencyName(this._converterNamer,o.topLevelNameOrder,(e=>"".concat(e(t),"_from_dict"))),i=new a.DependencyName(this._converterNamer,o.topLevelNameOrder,(e=>"".concat(e(t),"_to_dict")));return this._topLevelConverterNames.set(t,{fromDict:n,toDict:i}),[n,i]}emitDefaultLeadingComments(){super.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)=>{const{fromDict:n}=l.defined(this._topLevelConverterNames.get(t));this.emitLine(this.commentLineStart,"    result = ",n,"(json.loads(json_string))")}))}emitClosingCode(){this.forEachTopLevel(["interposing",2],((e,t)=>{const{fromDict:n,toDict:i}=l.defined(this._topLevelConverterNames.get(t)),r=this.pythonType(e);this.emitBlock(["def ",n,"(",this.typingDecl("s","Any"),")",this.typeHint(" -> ",r),":"],(()=>{this.emitLine("return ",C(this.deserializer({value:"s"},e)))})),this.ensureBlankLine(2),this.emitBlock(["def ",i,"(x",this.typeHint(": ",r),")",this.typingReturn("Any"),":"],(()=>{this.emitLine("return ",C(this.serializer({value:"x"},e)))}))}))}}t.JSONPythonRenderer=E},1126:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(59592),s=n(4007),o=n(60877),a=n(77239),u=n(32866),l=n(97714),c=n(78818),h=n(85332),p=n(78920);var d,m;!function(e){e[e.Normal=0]="Normal",e[e.Dense=1]="Dense"}(d=t.Density||(t.Density={})),function(e){e[e.Private=0]="Private",e[e.Crate=1]="Crate",e[e.Public=2]="Public"}(m=t.Visibility||(t.Visibility={})),t.rustOptions={density:new h.EnumOption("density","Density",[["normal",d.Normal],["dense",d.Dense]]),visibility:new h.EnumOption("visibility","Field visibility",[["private",m.Private],["crate",m.Crate],["public",m.Public]]),deriveDebug:new h.BooleanOption("derive-debug","Derive Debug impl",!1),edition2018:new h.BooleanOption("edition-2018","Edition 2018",!1),leadingComments:new h.BooleanOption("leading-comments","Leading Comments",!0)};class f extends r.TargetLanguage{makeRenderer(e,n){return new k(this,e,h.getOptionValues(t.rustOptions,n))}constructor(){super("Rust",["rust","rs","rustlang"],"rs")}getOptions(){return[t.rustOptions.density,t.rustOptions.visibility,t.rustOptions.deriveDebug,t.rustOptions.edition2018,t.rustOptions.leadingComments]}}t.RustTargetLanguage=f;const y=["{{root}}","$crate","as","box","break","const","continue","crate","else","enum","extern","false","fn","for","if","impl","in","let","loop","match","mod","move","mut","pub","ref","return","self","Self","static","struct","super","trait","true","type","unsafe","use","where","while","abstract","alignof","become","do","final","macro","offsetof","override","priv","proc","pure","sizeof","typeof","unsized","virtual","yield","catch","default","dyn","'static","union"],g=e=>!!o.isAscii(e)&&o.isLetterOrUnderscore(e),_=o.legalizeCharacters((e=>!!o.isAscii(e)&&o.isLetterOrUnderscoreOrDigit(e)));function v(e,t){const n=o.splitIntoWords(e),i=t?o.allLowerWordStyle:o.firstUpperWordStyle,r=o.combineWords(n,_,i,i,i,i,t?"_":"",g);return"_"===r?"_underscore":r}const b=a.funPrefixNamer("default",(e=>v(e,!0))),T=a.funPrefixNamer("camel",(e=>v(e,!1))),w=o.utf32ConcatMap(o.escapeNonPrintableMapper(o.isPrintable,(e=>e<=65535?"\\u{"+o.intToHex(e,4)+"}":"\\u{"+o.intToHex(e,6)+"}")));class k extends s.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}makeNamedTypeNamer(){return T}namerForObjectProperty(){return b}makeUnionMemberNamer(){return T}makeEnumCaseNamer(){return T}forbiddenNamesForGlobalNamespace(){return y}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){const t=e.kind;return"array"===t||"map"===t}rustType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return u.matchType(e,(e=>l.maybeAnnotated(t,c.anyTypeIssueAnnotation,"Option<serde_json::Value>")),(e=>l.maybeAnnotated(t,c.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=>{const n=u.nullableFromUnion(e);if(null!==n)return this.nullableRustType(n,t);const[i]=u.removeNullFromUnion(e),r=this.isCycleBreakerType(e)?["Box<",this.nameForNamedType(e),">"]:this.nameForNamedType(e);return null!==i?["Option<",r,">"]:r}))}breakCycle(e,t){const n=this.rustType(e,t);return this.isCycleBreakerType(e)?["Box<",n,">"]:n}emitRenameAttribute(e,t){const n=w(t);(this.sourcelikeToString(e)!==n||this._options.density===d.Normal)&&this.emitLine('#[serde(rename = "',n,'")]')}get visibility(){return this._options.visibility===m.Crate?"pub(crate) ":this._options.visibility===m.Public?"pub ":""}emitStructDefinition(e,t){this.emitDescription(this.descriptionForType(e)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]");const n=this._options.density===d.Dense?"none":"interposing";this.emitBlock(["pub struct ",t],(()=>this.forEachClassProperty(e,n,((t,n,i)=>{this.emitDescription(this.descriptionForClassProperty(e,n)),this.emitRenameAttribute(t,n),this.emitLine(this.visibility,t,": ",this.breakCycle(i.type,!0),",")}))))}emitBlock(e,t){this.emitLine(e," {"),this.indent(t),this.emitLine("}")}emitUnion(e,t){if(null!==u.nullableFromUnion(e))return;this.emitDescription(this.descriptionForType(e)),this.emitLine("#[derive(",this._options.deriveDebug?"Debug, ":"","Serialize, Deserialize)]"),this.emitLine("#[serde(untagged)]");const[,n]=u.removeNullFromUnion(e),i=this._options.density===d.Dense?"none":"interposing";this.emitBlock(["pub enum ",t],(()=>this.forEachUnionMember(e,n,i,null,((e,t)=>{const 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)]");const n=this._options.density===d.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(void 0!==this.leadingComments)return void this.emitCommentLines(this.leadingComments);const e=p.defined(i.mapFirst(this.topLevels)).getCombinedName();this.emitMultiline("// Example code that deserializes and serializes the model.\n// extern crate serde;\n// #[macro_use]\n// extern crate serde_derive;\n// extern crate serde_json;\n//\n// use generated_module::".concat(e,';\n//\n// fn main() {\n//     let json = r#"{"answer": 42}"#;\n//     let model: ').concat(e," = serde_json::from_str(&json).unwrap();\n// }"))}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=>void 0===this.namedTypeToNameForTopLevel(e))),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)))}}t.RustRenderer=k},66369:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920),s=n(59592),o=n(41283),a=n(32866),u=n(77239),l=n(85332),c=n(97714),h=n(78818),p=n(4007),d=n(60877),m=n(78920),f=n(72354),y=n(28609);t.swiftOptions={justTypes:new l.BooleanOption("just-types","Plain types only",!1),convenienceInitializers:new l.BooleanOption("initializers","Generate initializers and mutators",!0),explicitCodingKeys:new l.BooleanOption("coding-keys","Explicit CodingKey values in Codable types",!0),alamofire:new l.BooleanOption("alamofire","Alamofire extensions",!1),namedTypePrefix:new l.StringOption("type-prefix","Prefix for type names","PREFIX","","secondary"),useClasses:new l.EnumOption("struct-or-class","Structs or classes",[["struct",!1],["class",!0]]),mutableProperties:new l.BooleanOption("mutable-properties","Use var instead of let for object properties",!1),acronymStyle:y.acronymOption(y.AcronymStyleOptions.Pascal),dense:new l.EnumOption("density","Code density",[["dense",!0],["normal",!1]],"dense","secondary"),linux:new l.BooleanOption("support-linux","Support Linux",!1,"secondary"),objcSupport:new l.BooleanOption("objective-c-support","Objects inherit from NSObject and @objcMembers is added to classes",!1),optionalEnums:new l.BooleanOption("optional-enums","If no matching case is found enum value is set to null",!1),swift5Support:new l.BooleanOption("swift-5-support","Renders output in a Swift 5 compatible mode",!1),multiFileOutput:new l.BooleanOption("multi-file-output","Renders each top-level object in its own Swift file",!1),accessLevel:new l.EnumOption("access-level","Access level",[["internal","internal"],["public","public"]],"internal","secondary"),protocol:new l.EnumOption("protocol","Make types implement protocol",[["none",{equatable:!1,hashable:!1}],["equatable",{equatable:!0,hashable:!1}],["hashable",{equatable:!1,hashable:!0}]],"none","secondary")};const g=/^\d+-\d+-\d+T\d+:\d+:\d+([zZ]|[+-]\d+(:\d+)?)$/;class _ extends f.DefaultDateTimeRecognizer{isDateTime(e){return null!==e.match(g)}}class v extends s.TargetLanguage{constructor(){super("Swift",["swift","swift4"],"swift")}getOptions(){return[t.swiftOptions.justTypes,t.swiftOptions.useClasses,t.swiftOptions.dense,t.swiftOptions.convenienceInitializers,t.swiftOptions.explicitCodingKeys,t.swiftOptions.accessLevel,t.swiftOptions.alamofire,t.swiftOptions.linux,t.swiftOptions.namedTypePrefix,t.swiftOptions.protocol,t.swiftOptions.acronymStyle,t.swiftOptions.objcSupport,t.swiftOptions.optionalEnums,t.swiftOptions.swift5Support,t.swiftOptions.multiFileOutput,t.swiftOptions.mutableProperties]}get stringTypeMapping(){const e=new Map;return e.set("date-time","date-time"),e}get supportsOptionalClassProperties(){return!0}get supportsUnionsWithBothNumberTypes(){return!0}makeRenderer(e,n){return new N(this,e,l.getOptionValues(t.swiftOptions,n))}get dateTimeRecognizer(){return new _}}t.SwiftTargetLanguage=v;const b=["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","description","do","else","fallthrough","for","guard","if","in","repeat","return","switch","where","while","as","Any","catch","false","is","nil","rethrows","super","self","Self","throw","throws","true","try","_","associativity","convenience","dynamic","didSet","final","get","infix","indirect","lazy","left","mutating","nonmutating","optional","override","postfix","precedence","prefix","Protocol","required","right","set","Type","unowned","weak","willSet","String","Int","Double","Bool","Data","Date","URL","CommandLine","FileHandle","JSONSerialization","checkNull","removeNSNull","nilToNSNull","convertArray","convertOptional","convertDict","convertDouble","jsonString","jsonData"];function T(e){return d.isLetterOrUnderscore(e)||d.isNumeric(e)}function w(e){return T(e)&&!d.isDigit(e)}const k=d.legalizeCharacters(T);function S(e,t,n){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:d.allUpperWordStyle;const r=d.splitIntoWords(n),s=d.combineWords(r,k,t?d.firstUpperWordStyle:d.allLowerWordStyle,d.firstUpperWordStyle,t?d.allUpperWordStyle:d.allLowerWordStyle,i,"",w);return d.addPrefixIfNecessary(e,s)}const L=d.utf32ConcatMap(d.escapeNonPrintableMapper(d.isPrintable,(function(e){return"\\u{"+d.intToHex(e,0)+"}"})));class N extends p.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=>void 0===this.namedTypeToNameForTopLevel(e))),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 {\n        return true\n    }"),!1===this._options.objcSupport&&(this.ensureBlankLine(),this.emitMultiline("    public var hashValue: Int {\n        return 0\n    }"),this._options.swift5Support&&(this.ensureBlankLine(),this.emitMultiline("    public func hash(into hasher: inout Hasher) {\n        // No-op\n    }"))),this.ensureBlankLine(),this._options.objcSupport?this.emitItem("    override "):this.emitItem("    "),this.emitMultiline('public init() {}\n    \n    public required init(from decoder: Decoder) throws {\n        let container = try decoder.singleValueContainer()\n        if !container.decodeNil() {\n            throw DecodingError.typeMismatch(JSONNull.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Wrong type for JSONNull"))\n        }\n    }\n    \n    public func encode(to encoder: Encoder) throws {\n        var container = encoder.singleValueContainer()\n        try container.encodeNil()\n    }\n}')),this._needAny&&(this.ensureBlankLine(),this.emitMultiline("class JSONCodingKey: CodingKey {\n    let key: String\n    \n    required init?(intValue: Int) {\n        return nil\n    }\n    \n    required init?(stringValue: String) {\n        key = stringValue\n    }\n    \n    var intValue: Int? {\n        return nil\n    }\n    \n    var stringValue: String {\n        return key\n    }\n}"),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("    ".concat(this.accessLevel,'let value: Any\n    \n    static func decodingError(forCodingPath codingPath: [CodingKey]) -> DecodingError {\n        let context = DecodingError.Context(codingPath: codingPath, debugDescription: "Cannot decode JSONAny")\n        return DecodingError.typeMismatch(JSONAny.self, context)\n    }\n    \n    static func encodingError(forValue value: Any, codingPath: [CodingKey]) -> EncodingError {\n        let context = EncodingError.Context(codingPath: codingPath, debugDescription: "Cannot encode JSONAny")\n        return EncodingError.invalidValue(value, context)\n    }\n\n    static func decode(from container: SingleValueDecodingContainer) throws -> Any {\n        if let value = try? container.decode(Bool.self) {\n            return value\n        }\n        if let value = try? container.decode(Int64.self) {\n            return value\n        }\n        if let value = try? container.decode(Double.self) {\n            return value\n        }\n        if let value = try? container.decode(String.self) {\n            return value\n        }\n        if container.decodeNil() {\n            return JSONNull()\n        }\n        throw decodingError(forCodingPath: container.codingPath)\n    }\n    \n    static func decode(from container: inout UnkeyedDecodingContainer) throws -> Any {\n        if let value = try? container.decode(Bool.self) {\n            return value\n        }\n        if let value = try? container.decode(Int64.self) {\n            return value\n        }\n        if let value = try? container.decode(Double.self) {\n            return value\n        }\n        if let value = try? container.decode(String.self) {\n            return value\n        }\n        if let value = try? container.decodeNil() {\n            if value {\n                return JSONNull()\n            }\n        }\n        if var container = try? container.nestedUnkeyedContainer() {\n            return try decodeArray(from: &container)\n        }\n        if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self) {\n            return try decodeDictionary(from: &container)\n        }\n        throw decodingError(forCodingPath: container.codingPath)\n    }\n    \n    static func decode(from container: inout KeyedDecodingContainer<JSONCodingKey>, forKey key: JSONCodingKey) throws -> Any {\n        if let value = try? container.decode(Bool.self, forKey: key) {\n            return value\n        }\n        if let value = try? container.decode(Int64.self, forKey: key) {\n            return value\n        }\n        if let value = try? container.decode(Double.self, forKey: key) {\n            return value\n        }\n        if let value = try? container.decode(String.self, forKey: key) {\n            return value\n        }\n        if let value = try? container.decodeNil(forKey: key) {\n            if value {\n                return JSONNull()\n            }\n        }\n        if var container = try? container.nestedUnkeyedContainer(forKey: key) {\n            return try decodeArray(from: &container)\n        }\n        if var container = try? container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key) {\n            return try decodeDictionary(from: &container)\n        }\n        throw decodingError(forCodingPath: container.codingPath)\n    }\n    \n    static func decodeArray(from container: inout UnkeyedDecodingContainer) throws -> [Any] {\n        var arr: [Any] = []\n        while !container.isAtEnd {\n            let value = try decode(from: &container)\n            arr.append(value)\n        }\n        return arr\n    }\n\n    static func decodeDictionary(from container: inout KeyedDecodingContainer<JSONCodingKey>) throws -> [String: Any] {\n        var dict = [String: Any]()\n        for key in container.allKeys {\n            let value = try decode(from: &container, forKey: key)\n            dict[key.stringValue] = value\n        }\n        return dict\n    }\n    \n    static func encode(to container: inout UnkeyedEncodingContainer, array: [Any]) throws {\n        for value in array {\n            if let value = value as? Bool {\n                try container.encode(value)\n            } else if let value = value as? Int64 {\n                try container.encode(value)\n            } else if let value = value as? Double {\n                try container.encode(value)\n            } else if let value = value as? String {\n                try container.encode(value)\n            } else if value is JSONNull {\n                try container.encodeNil()\n            } else if let value = value as? [Any] {\n                var container = container.nestedUnkeyedContainer()\n                try encode(to: &container, array: value)\n            } else if let value = value as? [String: Any] {\n                var container = container.nestedContainer(keyedBy: JSONCodingKey.self)\n                try encode(to: &container, dictionary: value)\n            } else {\n                throw encodingError(forValue: value, codingPath: container.codingPath)\n            }\n        }\n    }\n    \n    static func encode(to container: inout KeyedEncodingContainer<JSONCodingKey>, dictionary: [String: Any]) throws {\n        for (key, value) in dictionary {\n            let key = JSONCodingKey(stringValue: key)!\n            if let value = value as? Bool {\n                try container.encode(value, forKey: key)\n            } else if let value = value as? Int64 {\n                try container.encode(value, forKey: key)\n            } else if let value = value as? Double {\n                try container.encode(value, forKey: key)\n            } else if let value = value as? String {\n                try container.encode(value, forKey: key)\n            } else if value is JSONNull {\n                try container.encodeNil(forKey: key)\n            } else if let value = value as? [Any] {\n                var container = container.nestedUnkeyedContainer(forKey: key)\n                try encode(to: &container, array: value)\n            } else if let value = value as? [String: Any] {\n                var container = container.nestedContainer(keyedBy: JSONCodingKey.self, forKey: key)\n                try encode(to: &container, dictionary: value)\n            } else {\n                throw encodingError(forValue: value, codingPath: container.codingPath)\n            }\n        }\n    }\n\n    static func encode(to container: inout SingleValueEncodingContainer, value: Any) throws {\n        if let value = value as? Bool {\n            try container.encode(value)\n        } else if let value = value as? Int64 {\n            try container.encode(value)\n        } else if let value = value as? Double {\n            try container.encode(value)\n        } else if let value = value as? String {\n            try container.encode(value)\n        } else if value is JSONNull {\n            try container.encodeNil()\n        } else {\n            throw encodingError(forValue: value, codingPath: container.codingPath)\n        }\n    }\n    \n    public required init(from decoder: Decoder) throws {\n        if var arrayContainer = try? decoder.unkeyedContainer() {\n            self.value = try JSONAny.decodeArray(from: &arrayContainer)\n        } else if var container = try? decoder.container(keyedBy: JSONCodingKey.self) {\n            self.value = try JSONAny.decodeDictionary(from: &container)\n        } else {\n            let container = try decoder.singleValueContainer()\n            self.value = try JSONAny.decode(from: container)\n        }\n    }\n    \n    public func encode(to encoder: Encoder) throws {\n        if let arr = self.value as? [Any] {\n            var container = encoder.unkeyedContainer()\n            try JSONAny.encode(to: &container, array: arr)\n        } else if let dict = self.value as? [String: Any] {\n            var container = encoder.container(keyedBy: JSONCodingKey.self)\n            try JSONAny.encode(to: &container, dictionary: dict)\n        } else {\n            var container = encoder.singleValueContainer()\n            try JSONAny.encode(to: &container, value: self.value)\n        }\n    }\n}'))),this.endFile()}}forbiddenNamesForGlobalNamespace(){return this._options.alamofire?["DataRequest",...b]:b}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 u.funPrefixNamer("upper",(e=>S(this._options.namedTypePrefix,!0,e,y.acronymStyle(this._options.acronymStyle))))}namerForObjectProperty(){return this.lowerNamingFunction}makeUnionMemberNamer(){return this.lowerNamingFunction}makeEnumCaseNamer(){return this.lowerNamingFunction}isImplicitCycleBreaker(e){const t=e.kind;return"array"===t||"map"===t}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 u.funPrefixNamer("lower",(e=>S("",!1,e,y.acronymStyle(this._options.acronymStyle))))}swiftPropertyType(e){return e.isOptional||this._options.optionalEnums&&"enum"===e.type.kind?[this.swiftType(e.type,!0,!0),"?"]:this.swiftType(e.type,!0)}swiftType(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=arguments.length>2&&void 0!==arguments[2]&&arguments[2]?"":"?";return a.matchType(e,(e=>(this._needAny=!0,c.maybeAnnotated(t,h.anyTypeIssueAnnotation,this.justTypesCase(["Any",n],"JSONAny")))),(e=>(this._needNull=!0,c.maybeAnnotated(t,h.nullTypeIssueAnnotation,this.justTypesCase("NSNull",["JSONNull",n])))),(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=>{const i=a.nullableFromUnion(e);return null!==i?[this.swiftType(i,t),n]:this.nameForNamedType(e)}),(e=>"date-time"===e.kind?"Date":m.panic("Transformed string type ".concat(e.kind," not supported"))))}proposedUnionMemberNameForTypeKind(e){return"enum"===e?"enumeration":"union"===e?"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 o.EnumType?this.emitLineOnce("//   let ",c.modifySource(d.camelCase,t)," = ","try? JSONDecoder().decode(",t,".self, from: jsonData)"):this.emitLineOnce("//   let ",c.modifySource(d.camelCase,t)," = try ",t,"(json)")}))}renderHeader(e,t){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this._options.multiFileOutput&&(this.emitLineOnce("// This file was generated from JSON Schema using quicktype, do not modify it directly."),this.emitLineOnce("// To parse the JSON, add this file to your project and do:"),this.emitLineOnce("//"),!this._options.convenienceInitializers||e instanceof o.EnumType?this.emitLine("//   let ",c.modifySource(d.camelCase,t)," = ","try? newJSONDecoder().decode(",t,".self, from: jsonData)"):this.emitLine("//   let ",c.modifySource(d.camelCase,t)," = try ",t,"(json)")),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 ",c.modifySource(d.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.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){const 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){const n=this.getProtocolsArray(e,t);return n.length>0?": "+n.join(", "):""}getEnumPropertyGroups(e){let t=[],n=[];return this.forEachClassProperty(e,"none",((e,i)=>{const r=L(i),s=this.sourcelikeToString(e)===r;this._options.dense&&s?n.push({name:e}):(n.length>0&&(t.push(n),n=[]),t.push([{name:e,label:r}]))})),n.length>0&&t.push(n),t}get accessLevel(){return"internal"===this._options.accessLevel?"":this._options.accessLevel+" "}get objcMembersDeclaration(){return this._options.objcSupport?"@objcMembers ":""}startFile(e){!1!==this._options.multiFileOutput&&(r.assert(void 0===this._currentFilename,"Previous file wasn't finished: "+this._currentFilename),this._currentFilename="".concat(this.sourcelikeToString(e),".swift"),this.initializeEmitContextForFilename(this._currentFilename))}endFile(){!1!==this._options.multiFileOutput&&(this.finishFile(r.defined(this._currentFilename)),this._currentFilename=void 0)}propertyLinesDefinition(e,t){const n=this._options.mutableProperties;return[this.accessLevel,n?"var ":"let ",e,": ",this.swiftPropertyType(t)]}renderClassDefinition(e,t){this.startFile(t),this.renderHeader(e,t),this.emitDescription(this.descriptionForType(e)),this.emitMark(this.sourcelikeToString(t),!0);const n=this._options.useClasses||this.isCycleBreakerType(e),r=n?"class":"struct";n&&this._options.objcSupport&&this.emitItem(this.objcMembersDeclaration),this.emitBlockWithAccess([r," ",t,this.getProtocolString(e,n)],(()=>{if(this._options.dense){let t,n=[];const i=()=>{if(void 0===t)return;const e=this._options.mutableProperties;let i=[[this._options.optionalEnums&&"enum"===t.type.kind?"@NilOnFail".concat(this._options.namedTypePrefix," "):"",this.accessLevel,e||this._options.optionalEnums&&"enum"===t.type.kind?"var ":"let "]];n.forEach(((e,t)=>{t>0&&i.push(", "),i.push(e)})),i.push(": "),i.push(this.swiftPropertyType(t)),this.emitLine(i),t=void 0,n=[]};this.forEachClassProperty(e,"none",((r,s,o)=>{const a=this.descriptionForClassProperty(e,s);(!o.equals(t)||n.length>=4||void 0!==a)&&i(),void 0===t&&(t=o),n.push(r),void 0!==a&&(this.emitDescription(a),i())})),i()}else this.forEachClassProperty(e,"none",((t,n,i)=>{const r=this.descriptionForClassProperty(e,n),s=this.propertyLinesDefinition(t,i);this.emitDescription(r),this.emitLine(s)}));if(!this._options.justTypes){const t=this.getEnumPropertyGroups(e);!t.every((e=>e.every((e=>void 0===e.label))))&&e.getProperties().size>0&&(this.ensureBlankLine(),this.emitBlock("enum CodingKeys: String, CodingKey",(()=>{for(const e of t){const{name:t,label:n}=e[0];if(this._options.explicitCodingKeys&&void 0!==n)this.emitLine("case ",t,' = "',n,'"');else{const t=i.arrayIntercalate(", ",e.map((e=>e.name)));this.emitLine("case ",t)}}})))}if(n||"public"===this._options.accessLevel){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));0===this.propertyCount(e)&&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(t)+" convenience initializers and mutators"),this.ensureBlankLine(),this.emitConvenienceInitializersExtension(e,t),this.ensureBlankLine()),this.endFile()}initializableProperties(e){const t=[];return this.forEachClassProperty(e,"none",((e,n,i,r)=>{const s={name:e,jsonName:n,parameter:i,position:r};t.push(s)})),t}emitNewEncoderDecoder(){this.emitBlock("func newJSONDecoder() -> JSONDecoder",(()=>{this.emitLine("let decoder = JSONDecoder()"),this._options.linux?this.emitMultiline('decoder.dateDecodingStrategy = .custom({ (decoder) -> Date in\n    let container = try decoder.singleValueContainer()\n    let dateStr = try container.decode(String.self)\n\n    let formatter = DateFormatter()\n    formatter.calendar = Calendar(identifier: .iso8601)\n    formatter.locale = Locale(identifier: "en_US_POSIX")\n    formatter.timeZone = TimeZone(secondsFromGMT: 0)\n    formatter.dateFormat = "yyyy-MM-dd\'T\'HH:mm:ss.SSSXXXXX"\n    if let date = formatter.date(from: dateStr) {\n        return date\n    }\n    formatter.dateFormat = "yyyy-MM-dd\'T\'HH:mm:ssXXXXX"\n    if let date = formatter.date(from: dateStr) {\n        return date\n    }\n    throw DecodingError.typeMismatch(Date.self, DecodingError.Context(codingPath: decoder.codingPath, debugDescription: "Could not decode date"))\n})'):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()\nformatter.calendar = Calendar(identifier: .iso8601)\nformatter.locale = Locale(identifier: "en_US_POSIX")\nformatter.timeZone = TimeZone(secondsFromGMT: 0)\nformatter.dateFormat = "yyyy-MM-dd\'T\'HH:mm:ssXXXXX"\nencoder.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){const n=this._options.useClasses||this.isCycleBreakerType(e),i=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([i,"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([i,"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));const n=[];this._options.justTypes||(n.push("String"),n.push("Codable")),this._options.protocol.hashable&&n.push("Hashable"),this._options.protocol.equatable&&n.push("Equatable");const i=n.length>0?": "+n.join(", "):"";this._options.justTypes?this.emitBlockWithAccess(["enum ",t,i],(()=>{this.forEachEnumCase(e,"none",(e=>{this.emitLine("case ",e)}))})):this.emitBlockWithAccess(["enum ",t,i],(()=>{this.forEachEnumCase(e,"none",((e,t)=>{this.emitLine("case ",e,' = "',L(t),'"')}))})),this.endFile()}renderUnionDefinition(e,t){this.startFile(t),this.emitLineOnce("import Foundation"),this.ensureBlankLine();const n=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));const i=this.isCycleBreakerType(e)?"indirect ":"",[r,s]=a.removeNullFromUnion(e,(function(e){const t=e.kind;return"class"===t?t:"_"+t}));this.emitBlockWithAccess([i,"enum ",t,this.getProtocolString(e,!1)],(()=>{this.forEachUnionMember(e,s,"none",null,((e,t)=>{this.emitLine("case ",e,"(",this.swiftType(t),")")})),null!==r&&this.emitLine("case ",this.nameForUnionMember(e,r)),this._options.justTypes||(this.ensureBlankLine(),this.emitBlockWithAccess("init(from decoder: Decoder) throws",(()=>{this.emitLine("let container = try decoder.singleValueContainer()");const i=e.findMember("bool");void 0!==i&&n(i);const o=e.findMember("integer");void 0!==o&&n(o);for(const e of s)"bool"!==e.kind&&"integer"!==e.kind&&n(e);null!==r&&this.emitBlock("if container.decodeNil()",(()=>{this.emitLine("self = .",this.nameForUnionMember(e,r)),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)")))})),null!==r&&(this.emitLine("case .",this.nameForUnionMember(e,r),":"),this.indent((()=>this.emitLine("try container.encodeNil()")))),this.emitLine("}")})))})),this.endFile()}emitTopLevelMapAndArrayConvenienceInitializerExtensions(e,t){let n;if(e instanceof o.ArrayType)n=["Array where Element == ",t,".Element"];else{if(!(e instanceof o.MapType))return;n=["Dictionary where Key == String, Value == ",this.swiftType(e.values)]}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,i)=>{this.emitLine(e,": ",this.swiftPropertyType(n),"? = nil","only"!==i&&"last"!==i?",":"")}))})),this.emitBlock([") -> ",t],(()=>{this.emitLine("return ",t,"("),this.indent((()=>{this.forEachClassProperty(e,"none",((e,t,n,i)=>{this.emitLine(e,": ",e," ?? self.",e,"only"!==i&&"last"!==i?",":"")}))})),this.emitLine(")")}))}emitMark(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.emitLine("// MARK:",t?" - ":" ",e)}emitSourceStructure(){!1===this._options.multiFileOutput&&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".concat(this._options.namedTypePrefix,"<T: Codable>: Codable"),(()=>{this.emitMultiline("\npublic let wrappedValue: T?\npublic init(from decoder: Decoder) throws {\n    wrappedValue = try? T(from: decoder)\n}\npublic init(_ wrappedValue: T?) {\n    self.wrappedValue = wrappedValue\n}")}))}emitAlamofireExtension(){this.ensureBlankLine(),this.emitBlockWithAccess("extension DataRequest",(()=>{this.emitMultiline("fileprivate func decodableResponseSerializer<T: Decodable>() -> DataResponseSerializer<T> {\n    return DataResponseSerializer { _, response, data, error in\n        guard error == nil else { return .failure(error!) }\n        \n        guard let data = data else {\n            return .failure(AFError.responseSerializationFailed(reason: .inputDataNil))\n        }\n        \n        return Result { try newJSONDecoder().decode(T.self, from: data) }\n    }\n}\n\n@discardableResult\nfileprivate func responseDecodable<T: Decodable>(queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse<T>) -> Void) -> Self {\n    return response(queue: queue, responseSerializer: decodableResponseSerializer(), completionHandler: completionHandler)\n}"),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)")}))}))}))}}t.SwiftRenderer=N},28003:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(41283),r=n(32866),s=n(60877),o=n(97714),a=n(77239),u=n(85332),l=n(83059),c=n(78920),h=n(35475);t.tsFlowOptions=Object.assign({},l.javaScriptOptions,{justTypes:new u.BooleanOption("just-types","Interfaces only",!1),nicePropertyNames:new u.BooleanOption("nice-property-names","Transform property names to be JavaScripty",!1),declareUnions:new u.BooleanOption("explicit-unions","Explicitly name unions",!1),preferUnions:new u.BooleanOption("prefer-unions","Use union type instead of enum",!1)});const p={any:": any",anyArray:": any[]",anyMap:": { [k: string]: any }",string:": string",stringArray:": string[]",boolean:": boolean"};class d extends l.JavaScriptTargetLanguage{getOptions(){return[t.tsFlowOptions.justTypes,t.tsFlowOptions.nicePropertyNames,t.tsFlowOptions.declareUnions,t.tsFlowOptions.runtimeTypecheck,t.tsFlowOptions.runtimeTypecheckIgnoreUnknownProperties,t.tsFlowOptions.acronymStyle,t.tsFlowOptions.converters,t.tsFlowOptions.rawType,t.tsFlowOptions.preferUnions]}get supportsOptionalClassProperties(){return!0}}t.TypeScriptFlowBaseTargetLanguage=d;function m(e){const t=s.utf16StringEscape(e),n='"'.concat(t,'"');return 0===e.length?n:h.isES3IdentifierStart(e.codePointAt(0))?t!==e||l.legalizeName(e)!==e?n:e:n}t.TypeScriptTargetLanguage=class extends d{constructor(){super("TypeScript",["typescript","ts","tsx"],"ts")}makeRenderer(e,n){return new y(this,e,u.getOptionValues(t.tsFlowOptions,n))}};class f extends l.JavaScriptRenderer{constructor(e,t,n){super(e,t,n),this._tsFlowOptions=n}namerForObjectProperty(){return this._tsFlowOptions.nicePropertyNames?a.funPrefixNamer("properties",(e=>this.nameStyle(e,!1))):super.namerForObjectProperty()}sourceFor(e){return["class","object","enum"].indexOf(e.kind)>=0?o.singleWord(this.nameForNamedType(e)):r.matchType(e,(e=>o.singleWord("any")),(e=>o.singleWord("null")),(e=>o.singleWord("boolean")),(e=>o.singleWord("number")),(e=>o.singleWord("number")),(e=>o.singleWord("string")),(e=>{const t=this.sourceFor(e.items);return e.items instanceof i.UnionType&&!this._tsFlowOptions.declareUnions||e.items instanceof i.ArrayType?o.singleWord(["Array<",t.source,">"]):o.singleWord([o.parenIfNeeded(t),"[]"])}),(e=>c.panic("We handled this above")),(e=>o.singleWord(["{ [key: string]: ",this.sourceFor(e.values).source," }"])),(e=>c.panic("We handled this above")),(e=>{if(this._tsFlowOptions.declareUnions&&null===r.nullableFromUnion(e))return o.singleWord(this.nameForNamedType(e));{const t=Array.from(e.getChildren()).map((e=>o.parenIfNeeded(this.sourceFor(e))));return o.multiWord(" | ",...t)}}),(e=>"date-time"===e.kind?o.singleWord("Date"):o.singleWord("string")))}emitClassBlockBody(e){this.emitPropertyTable(e,((e,t,n)=>{const i=n.type;return[[o.modifySource(m,e),n.isOptional?"?":"",": "],[this.sourceFor(i).source,";"]]}));const 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));const n=o.multiWord(" | ",...Array.from(e.getChildren()).map((e=>o.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: ","json"===this._tsFlowOptions.rawType?"string":"any","): ",this.sourceFor(e).source]}serializerFunctionLine(e,t){const n=o.modifySource(s.camelCase,t),i="json"===this._tsFlowOptions.rawType?"string":"any";return["function ",n,"ToJson(value: ",this.sourceFor(e).source,"): ",i]}get moduleLine(){}get castFunctionLines(){return["function cast<T>(val: any, typ: any): T","function uncast<T>(val: T, typ: any): any"]}get typeAnnotations(){throw new Error("not implemented")}emitConvertModule(){this._tsFlowOptions.justTypes||super.emitConvertModule()}emitConvertModuleHelpers(){this._tsFlowOptions.justTypes||super.emitConvertModuleHelpers()}emitModuleExports(){this._tsFlowOptions.justTypes||super.emitModuleExports()}}t.TypeScriptFlowBaseRenderer=f;class y extends f{forbiddenNamesForGlobalNamespace(){return["Array","Date"]}deserializerFunctionLine(e,t){return["public static to",t,"(json: ","json"===this._tsFlowOptions.rawType?"string":"any","): ",this.sourceFor(e).source]}serializerFunctionLine(e,t){const n=o.modifySource(s.camelCase,t),i="json"===this._tsFlowOptions.rawType?"string":"any";return["public static ",n,"ToJson(value: ",this.sourceFor(e).source,"): ",i]}get moduleLine(){return"export class Convert"}get typeAnnotations(){return Object.assign({never:": never"},p)}emitModuleExports(){}emitUsageImportComment(){const e=[];this.forEachTopLevel("none",((t,n)=>{e.push(", ",n)}),r.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=>{n+=""!==n?' | "'.concat(s.utf16StringEscape(e),'"'):'"'.concat(s.utf16StringEscape(e),'"')})),this.emitLine("export type ",t," = ",n,";")}else this.emitBlock(["export enum ",t," "],"",(()=>{this.forEachEnumCase(e,"none",((e,t)=>{this.emitLine(e,' = "'.concat(s.utf16StringEscape(t),'",'))}))}))}emitClassBlock(e,t){this.emitBlock(["export interface ",t," "],"",(()=>{this.emitClassBlockBody(e)}))}}t.TypeScriptRenderer=y;t.FlowTargetLanguage=class extends d{constructor(){super("Flow",["flow"],"js")}makeRenderer(e,n){return new g(this,e,u.getOptionValues(t.tsFlowOptions,n))}};class g extends f{forbiddenNamesForGlobalNamespace(){return["Class","Date","Object","String","Array","JSON","Error"]}get typeAnnotations(){return Object.assign({never:""},p)}emitEnum(e,t){this.emitDescription(this.descriptionForType(e));const n=[];this.forEachEnumCase(e,"none",((e,t)=>{const i=0===n.length?"  ":"| ";n.push([i,'"',s.utf16StringEscape(t),'"'])})),c.defined(n[n.length-1]).push(";"),this.emitLine("export type ",t," ="),this.indent((()=>{for(const 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()}}t.FlowRenderer=g},96367:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(16176),r=n(97714),s=n(77239),o=n(4007),a=n(59592),u=n(85332),l=n(66811),c=n(41283),h=n(32866),p=n(60877);const d=p.utf32ConcatMap(p.escapeNonPrintableMapper(p.isPrintable,(function(e){return"\\u{"+p.intToHex(e,0)+"}"})));var m;!function(e){e.Strict="Strict::",e.Coercible="Coercible::",e.None="Types::"}(m=t.Strictness||(t.Strictness={})),t.rubyOptions={justTypes:new u.BooleanOption("just-types","Plain types only",!1),strictness:new u.EnumOption("strictness","Type strictness",[["strict",m.Strict],["coercible",m.Coercible],["none",m.None]])};class f extends a.TargetLanguage{constructor(){super("Ruby",["ruby"],"rb")}getOptions(){return[t.rubyOptions.justTypes,t.rubyOptions.strictness]}get supportsOptionalClassProperties(){return!0}get defaultIndentation(){return"  "}makeRenderer(e,n){return new b(this,e,u.getOptionValues(t.rubyOptions,n))}}function y(e){return i.isAlphabetic(e)||95===e}t.RubyTargetLanguage=f;const g=p.legalizeCharacters((function(e){const t=i.getCategory(e);return["Nd","Pc","Mn","Mc"].indexOf(t)>=0||y(e)}));function _(e,t){const n=p.splitIntoWords(e);return p.combineWords(n,g,t?p.firstUpperWordStyle:p.allLowerWordStyle,t?p.firstUpperWordStyle:p.allLowerWordStyle,p.allUpperWordStyle,p.allUpperWordStyle,"",y)}function v(e){const t=p.splitIntoWords(e);return p.combineWords(t,g,p.allLowerWordStyle,p.allLowerWordStyle,p.allLowerWordStyle,p.allLowerWordStyle,"_",y)}class b extends o.ConvenienceRenderer{constructor(e,t,n){super(e,t),this._options=n}get commentLineStart(){return"# "}get needsTypeDeclarationBeforeUse(){return!0}canBeForwardDeclared(e){return"class"===e.kind}forbiddenNamesForGlobalNamespace(){return l.globals.concat(["Types","JSON","Dry","Constructor"])}forbiddenForObjectProperties(e,t){return{names:l.reservedProperties,includeGlobalForbidden:!0}}makeNamedTypeNamer(){return new s.Namer("types",(e=>_(e,!0)),[])}namerForObjectProperty(){return new s.Namer("properties",v,[])}makeUnionMemberNamer(){return new s.Namer("properties",v,[])}makeEnumCaseNamer(){return new s.Namer("enum-cases",(e=>_(e,!0)),[])}dryType(e){const t=arguments.length>1&&void 0!==arguments[1]&&arguments[1]?".optional":"";return h.matchType(e,(e=>["Types::Any",t]),(e=>["Types::Nil",t]),(e=>["Types::Bool",t]),(e=>["Types::Int",t]),(e=>["Types::Double",t]),(e=>["Types::String",t]),(e=>["Types.Array(",this.dryType(e.items),")",t]),(e=>[this.nameForNamedType(e),t]),(e=>["Types::Hash.meta(of: ",this.dryType(e.values),")",t]),(e=>["Types::",this.nameForNamedType(e),t]),(e=>{const n=h.nullableFromUnion(e);return null!==n?[this.dryType(n),".optional"]:["Types.Instance(",this.nameForNamedType(e),")",t]}))}exampleUse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:6;if(n--<=0)return t;const i=arguments.length>3&&void 0!==arguments[3]&&arguments[3]?"&":"";return h.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||void 0===r)&&(r={name:e,prop:n})})),void 0!==r?this.exampleUse(r.prop.type,[t,i,".",r.name],n,r.prop.isOptional):t}),(e=>this.exampleUse(e.values,[t,i,'["\u2026"]'],n)),(e=>{let n;return this.forEachEnumCase(e,"none",(e=>{void 0===n&&(n=e)})),void 0!==n?[t," == ",this.nameForNamedType(e),"::",n]:t}),(e=>{const i=h.nullableFromUnion(e);return null!==i?["class","map","array"].indexOf(i.kind)>=0?this.exampleUse(i,t,n,!0):[t,".nil?"]:t}))}jsonSample(e){return'"'.concat(e instanceof c.ArrayType?"[\u2026]":e instanceof c.MapType||e instanceof c.ClassType?"{\u2026}":"\u2026",'"')}fromDynamic(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const r=[this.dryType(e,n),"[",t,"]"],s=i?r:t,o=n?"&":"";return h.matchType(e,(e=>s),(e=>s),(e=>s),(e=>s),(e=>s),(e=>s),(e=>[t,o,".map { |x| ",this.fromDynamic(e.items,"x",!1,!0)," }"]),(e=>{const i=[this.nameForNamedType(e),".from_dynamic!(",t,")"];return n?[t," ? ",i," : nil"]:i}),(e=>[["Types::Hash",n?".optional":"","[",t,"]"],o,".map { |k, v| [k, ",this.fromDynamic(e.values,"v",!1,!0),"] }",o,".to_h"]),(e=>{const i=["Types::",this.nameForNamedType(e),"[",t,"]"];return n?[t,".nil? ? nil : ",i]:i}),(e=>{const i=h.nullableFromUnion(e);if(null!==i)return this.fromDynamic(i,t,!0);const r=[this.nameForNamedType(e),".from_dynamic!(",t,")"];return n?[t," ? ",r," : nil"]:r}))}toDynamic(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return this.marshalsImplicitlyToDynamic(e)?t:h.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=>{const i=h.nullableFromUnion(e);return null!==i?this.toDynamic(i,t,!0):this.marshalsImplicitlyToDynamic(e)?t:[t,n?"&":"",".to_dynamic"]}))}marshalsImplicitlyToDynamic(e){return h.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=>{const t=h.nullableFromUnion(e);return null!==t&&this.marshalsImplicitlyToDynamic(t)}))}propertyTypeMarshalsImplicitlyFromDynamic(e){return h.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=>{const t=h.nullableFromUnion(e);return null!==t&&this.propertyTypeMarshalsImplicitlyFromDynamic(t)}))}emitBlock(e,t){this.emitLine(e),this.indent(t),this.emitLine("end")}emitClass(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock(["class ",t," < Dry::Struct"],(()=>{let t=[],n=e.getProperties().size;this.forEachClassProperty(e,"none",((i,r,s)=>{const o=0===--n,a=this.descriptionForClassProperty(e,r),u=[["attribute :",i,","],[" ",this.dryType(s.type),s.isOptional?".optional":""]];void 0!==a?(t.length>0&&(this.emitTable(t),t=[]),this.ensureBlankLine(),this.emitDescriptionBlock(a),this.emitLine(u),o||this.ensureBlankLine()):t.push(u)})),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((()=>{const t=[];this.forEachClassProperty(e,"none",((e,n,i)=>{const r=i.isOptional?'d["'.concat(d(n),'"]'):'d.fetch("'.concat(d(n),'")');if(this.propertyTypeMarshalsImplicitlyFromDynamic(i.type))t.push([[e,": "],[r,","]]);else{const n=this.fromDynamic(i.type,r,i.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((()=>{const t=[];this.forEachClassProperty(e,"none",((e,n,i)=>{const r=this.toDynamic(i.type,["@",e],i.isOptional);t.push([['"'.concat(d(n),'"')],[" => ",r,","]])})),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],(()=>{const t=[];this.forEachEnumCase(e,"none",((e,n)=>{t.push([[e],[' = "'.concat(d(n),'"')]])})),this.emitTable(t)}))}emitUnion(e,t){this.emitDescription(this.descriptionForType(e)),this.emitBlock(["class ",t," < Dry::Struct"],(()=>{const 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();const[n,i]=h.removeNullFromUnion(e,!1);this.emitBlock("def self.from_dynamic!(d)",(()=>{const t=Array.from(e.getChildren()).map((t=>this.nameForUnionMember(e,t)));this.forEachUnionMember(e,e.getChildren(),"none",null,((e,n)=>{const i=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",i,")")})):(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",i,")")}))})),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,i,"none",null,((e,n)=>{this.emitLine(t?"if":"elsif"," @",e," != nil"),this.indent((()=>{this.emitLine(this.toDynamic(n,["@",e]))})),t=!1})),null!==n&&(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.module");const e=[];if(this._options.strictness!==m.None){let t={int:!1,nil:!1,bool:!1,hash:!1,string:!1,double:!1};this.forEachType((e=>{t={int:t.int||"integer"===e.kind,nil:t.nil||"null"===e.kind,bool:t.bool||"bool"===e.kind,hash:t.hash||"map"===e.kind||"class"===e.kind,string:t.string||"string"===e.kind||"enum"===e.kind,double:t.double||"double"===e.kind}})),t.int&&e.push([["Int"],[" = ".concat(this._options.strictness,"Int")]]),this._options.strictness===m.Strict&&t.nil&&e.push([["Nil"],[" = ".concat(this._options.strictness,"Nil")]]),t.bool&&e.push([["Bool"],[" = ".concat(this._options.strictness,"Bool")]]),t.hash&&e.push([["Hash"],[" = ".concat(this._options.strictness,"Hash")]]),t.string&&e.push([["String"],[" = ".concat(this._options.strictness,"String")]]),t.double&&e.push([["Double"],[" = ".concat(this._options.strictness,"Float | ").concat(this._options.strictness,"Int")]])}this.forEachEnum("none",((t,n)=>{const i=[];this.forEachEnumCase(t,"none",((e,t)=>{i.push([0===i.length?"":", ",'"'.concat(d(t),'"')])})),e.push([[n],[" = ",this._options.strictness,"String.enum(",...i,")"]])})),e.length>0&&(this.ensureBlankLine(),this.emitTable(e))}))}emitSourceStructure(){void 0!==this.leadingComments?this.emitCommentLines(this.leadingComments):this._options.justTypes||(this.emitLine("# This code may look unusually verbose for Ruby (and it is), but"),this.emitLine("# it performs some subtle and complex validation of JSON data."),this.emitLine("#"),this.emitLine("# To parse this JSON, add 'dry-struct' and 'dry-types' gems, then do:"),this.emitLine("#"),this.forEachTopLevel("none",((e,t)=>{const n=r.modifySource(p.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.ensureBlankLine(),this.emitLine("require 'json'"),this.emitLine("require 'dry-types'"),this.emitLine("require 'dry-struct'"),this.ensureBlankLine(),this.emitTypesModule(),this.forEachDeclaration("leading-and-interposing",(e=>{"forward"===e.kind&&(this.emitCommentLines(["(forward declaration)"]),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)=>{const n=r.modifySource(p.snakeCase,t),i="array"===e.kind;this.emitBlock(["class ",t],(()=>{this.emitBlock(["def self.from_json!(json)"],(()=>{i?(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)"))}))}))}),(e=>void 0===this.namedTypeToNameForTopLevel(e)))}}t.RubyRenderer=b},66811:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.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"];t.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","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"].concat(["ArgumentError","Array","BasicObject","Class","ClosedQueueError","Comparable","Complex","ConditionVariable","Continuation","Data","Date","Dir","ENV","EOFError","Encoding","EncodingError","Enumerable","Enumerator","Errno","Exception","FalseClass","Fiber","FiberError","File","FileTest","Float","FloatDomainError","FrozenError","GC","Hash","IO","IOError","IndexError","Integer","Interrupt","KeyError","LoadError","LocalJumpError","Marshal","MatchData","Math","Method","Module","Mutex","NameError","NilClass","NoMemoryError","NoMethodError","NotImplementedError","Numeric","Object","ObjectSpace","Proc","Process","Queue","Random","Range","RangeError","Rational","Regexp","RegexpError","RubyVM","RuntimeError","ScriptError","SecurityError","Set","Signal","SignalException","SizedQueue","StandardError","StopIteration","String","Struct","Symbol","SyntaxError","SystemCallError","SystemExit","SystemStackError","Thread","ThreadError","ThreadGroup","Time","TracePoint","TrueClass","TypeError","UnboundMethod","UncaughtThrowError","Undefined","UnicodeNormalize","Warning","ZeroDivisionError"]),t.reservedProperties=["__id__","__send__","call","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","object_id","optional","options","pristine","private_methods","protected_methods","public_method","public_methods","public_send","remove_instance_variable","rule","safe","send","singleton_class","singleton_method","singleton_methods","taint","tap","to_ast","to_enum","to_json","to_s","trust","try","type","untaint","untrust","with"]},33426:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(41283),r=n(32866),s=n(78920),o=n(28846),a=3/4;function u(e,t,n){const o=e.getProperties(),u=t.getProperties();if(n){if(o.size!==u.size)return!1}else if(o.size<u.size*a||u.size<o.size*a)return!1;let l,c,h;if(o.size>u.size?(l=o,c=u):(l=u,c=o),n)h=0;else{const e=Math.ceil(l.size*a);h=c.size-e}s.assert(h>=0,"Max faults negative");const p=[];let d=0;for(const[i]of c)if(l.has(i))p.push(i);else if(d+=1,d>h)break;if(d>h)return!1;for(const a of p){let e=c.get(a),t=l.get(a);if(void 0===e||void 0===t)return s.panic("Both classes should have property ".concat(a));const n=r.nonNullTypeCases(e.type),o=r.nonNullTypeCases(t.type);if(n.size>0&&o.size>0&&(m=n,f=o,!i.setOperationCasesEqual(m,f,!0,((e,t)=>e.structurallyCompatible(t,!0)))))return!1}var m,f;return!0}function l(e,t,n){for(const i of t.prototypes)if(i.structurallyCompatible(e))return t.members.push(e),!0;for(const i of t.prototypes)if(u(i,e,n))return t.prototypes.push(e),t.members.push(e),!0;return!1}t.combineClasses=function(e,t,n,a,u,c){const h=e.time("  find similarity cliques",(()=>function(e,t,n){const r=Array.from(e.allNamedTypesSeparated().objects).filter((e=>e instanceof i.ClassType&&(n||!e.isFixed))),s=[];for(const i of r){let e;for(let r=0;r<s.length;r++)if(l(i,s[r],t)){e=r;break}void 0===e&&(e=s.length,s.push({members:[i],prototypes:[i]}));const n=s[0];s[0]=s[e],s[e]=n}return s.map((e=>e.members)).filter((e=>e.length>1))}(t,u,!1)));return t.rewrite("combine classes",e.stringTypeMapping,n,h,c,(function(e,t,n){s.assert(e.size>0,"Clique can't be empty");const i=r.combineTypeAttributesOfTypes("union",e);return o.unifyTypes(e,i,t,o.unionBuilderForUnification(t,!1,!1,a),a,n)}))}},96143:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32866),s=n(78920),o=n(62800),a=n(20859),u=10,l=3/4;function c(e){let{numValues:t,cases:n}=e;return t>=u&&n.size<Math.sqrt(t)}function h(e){return 1===e.length&&""===e[0]}t.expandStrings=function(e,t,n){const u=e.stringTypeMapping,p=Array.from(t.allTypesUnordered()).filter((e=>"string"===e.kind&&r.stringTypesForType(e).isRestricted));function d(e){const t=r.stringTypesForType(e).applyStringTypeMapping(u);if(!t.isRestricted)return;const o=s.defined(t.cases);if(0===o.size)return;const a=i.iterableReduce(o.values(),0,((e,t)=>e+t));if("all"!==n){const e=Array.from(o.keys());if(h(e))return;if(!i.iterableSome(e,(e=>!1===/^(\-|\+)?[0-9]+(\.[0-9]+)?$/.test(e))))return}return{cases:new Set(o.keys()),numValues:a}}const m=new Map,f=[];if("none"!==n){for(const g of p){const _=d(g);void 0!==_&&m.set(g,_)}function y(e,t){return f.findIndex((n=>function(e,t,n){const r=n?e.size:Math.min(e.size,t.size);return i.setIntersect(e,t).size>=r*l}(e,n,t)))}for(const v of Array.from(m.keys())){const b=s.defined(m.get(v)),T=b.cases;if("all"===n)f.push(T);else{if(!c(b))continue;const w=y(T,!1);w>=0?f[w]=i.setUnion(f[w],T):f.push(T)}m.delete(v)}"all"===n&&s.assert(0===m.size);for(const[,k]of m.entries()){if(k.numValues<5)continue;const S=y(k.cases,!0);S>=0&&(f[S]=i.setUnion(f[S],k.cases))}}return t.rewrite("expand strings",u,!1,p.map((e=>[e])),e.debugPrintReconstitution,(function(e,t,l){s.assert(1===e.size);const c=s.defined(i.iterableFirst(e)),p=r.stringTypesForType(c),d=i.mapFilter(c.getAttributes(),(e=>e!==p)),m=p.applyStringTypeMapping(u);if(!m.isRestricted)return t.getStringType(d,a.StringTypes.unrestricted,l);const y="all"===n?i.areEqual:i.setIsSuperset,g=[],_=s.defined(m.cases);if(_.size>0){const e=new Set(_.keys()),i=f.find((t=>y(t,e)));if("none"===n||h(Array.from(e))||void 0===i)return t.getStringType(d,a.StringTypes.unrestricted,l);g.push(t.getEnumType(o.emptyTypeAttributes,i))}const v=m.transformations;if(0===g.length&&1===v.size){const e=s.defined(i.iterableFirst(v));return t.getPrimitiveType(e,d,l)}return g.push(...Array.from(v).map((e=>t.getPrimitiveType(e)))),s.assert(g.length>0,"We got an empty string type"),t.getUnionType(d,new Set(g),l)}))}},2657:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32866),s=n(78920),o=n(62800);function a(e){const t=e.stringTypeMembers;if(t.size<=1)return;const n=e.findMember("string");return void 0!==n?(s.assert(!r.stringTypesForType(n).isRestricted,"We must only flatten strings if we have no restriced strings"),t):void 0}function u(e,t,n){s.assert(1===e.size);const u=s.defined(i.iterableFirst(e)),l=s.defined(a(u)),c=r.combineTypeAttributesOfTypes("union",l),h=[];for(const i of u.members)l.has(i)||h.push(t.reconstituteType(i));return 0===h.length?t.getStringType(o.combineTypeAttributes("union",c,u.getAttributes()),void 0,n):(h.push(t.getStringType(c,void 0)),t.getUnionType(u.getAttributes(),new Set(h),n))}t.flattenStrings=function(e,t,n){const i=e.allNamedTypesSeparated().unions,r=Array.from(i).filter(a).map((e=>[e]));return e.rewrite("flatten strings",t,!1,r,n,u)}},11179:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(32351),s=n(41283),o=n(32866),a=n(78920),u=n(28846),l=n(59551),c=n(62800);t.flattenUnions=function(e,t,n,h,p){let d=!1;const m=i.setFilter(e.allTypesUnordered(),(e=>e instanceof s.UnionType)),f=i.setFilter(m,(e=>!e.isCanonical));let y=!1;const g=o.makeGroupsToFlatten(f,(e=>(l.messageAssert(e.size>0,"IRNoEmptyUnions",{}),!i.iterableSome(e,(e=>e instanceof s.IntersectionType))||(y=!0,!1))));return[e=e.rewrite("flatten unions",t,!1,g,p,(function(t,i,s){const o=new u.UnifyUnionBuilder(i,h,!0,(t=>(a.assert(t.length>0,"Must have at least one type to build union"),1===(t=t.map((t=>i.reconstituteType(r.derefTypeRef(t,e))))).length?t[0]:(d=!0,i.getUnionType(c.emptyTypeAttributes,new Set(t))))));return u.unifyTypes(t,c.emptyTypeAttributes,i,o,n,s)})),!d&&!y]}},95154:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(41283),s=n(32866),o=n(78920),a=n(28846),u=n(44234),l=20,c=50;let h;function p(e){return void 0===h&&(h=u.load()),u.evaluate(h,e)}function d(e){const t=e.size;if(t<2)return;if(i.iterableEvery(e.keys(),(e=>/^[0-9]+$/.test(e))))return i.setMap(e.values(),(e=>e.type));if(t<c&&i.iterableEvery(e.values(),(e=>r.isPrimitiveStringTypeKind(e.type.kind)||"null"===e.type.kind)))return;if(t<l){const n=Array.from(e.keys()).map(p).reduce(((e,t)=>e*t),1),i=Math.pow(n,1/t),r=5,s=Math.pow(22,r);if(i>Math.pow(t+2,r)/s+(.0025-Math.pow(3,r)/s))return}let n;const o=new Set;let a=!0;for(const[,i]of e){const e=s.removeNullFromType(i.type)[1];if(e.size>0)if(void 0!==n){if(!r.setOperationCasesEqual(e,n,!0,((e,t)=>e.structurallyCompatible(t,!0)))){a=!1;break}}else n=e;o.add(i.type)}return a?o:void 0}t.inferMaps=function(e,t,n,s){const u=Array.from(e.allNamedTypesSeparated().objects).filter((e=>e instanceof r.ClassType&&(!e.isFixed&&void 0!==d(e.getProperties()))));return e.rewrite("infer maps",t,!1,u.map((e=>[e])),s,(function(e,t,r){const s=o.defined(i.iterableFirst(e)),u=d(s.getProperties());return void 0===u?o.panic("We shouldn't be replacing class ".concat(s.getCombinedName()," with a map")):t.getMapType(s.getAttributes(),a.unifyTypes(u,s.getAttributes(),t,a.unionBuilderForUnification(t,!1,!1,n),n),r)}))}},66882:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(78920),s=n(62800);t.replaceObjectType=function(e,t,n,o,a){const u=i.setFilter(e.allTypesUnordered(),(e=>"object"===e.kind)),l=o?i.setFilter(u,(e=>0===e.getProperties().size||void 0===e.getAdditionalProperties())):u,c=Array.from(l).map((e=>[e]));return e.rewrite("replace object type",t,!1,c,a,(function(e,t,n){const o=r.defined(i.iterableFirst(e)),a=o.getAttributes(),u=o.getProperties(),l=o.getAdditionalProperties();function c(){return t.getUniqueClassType(a,!0,i.mapMap(u,(e=>t.makeClassProperty(t.reconstituteTypeRef(e.typeRef),e.isOptional))),n)}if(void 0===l)return c();if(0===u.size)return t.getMapType(a,t.reconstituteType(r.defined(l)),n);if("any"===l.kind)return t.setLostTypeAttributes(),c();const h=i.setMap(u.values(),(e=>e.type)).add(l);let p=t.lookupTypeRefs(Array.from(h).map((e=>e.typeRef)));if(void 0===p){const e=i.setMap(h,(e=>t.reconstituteType(e)));p=t.getUniqueUnionType(s.emptyTypeAttributes,new Set(e))}return t.getMapType(a,p,n)}))}},97063:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(74868),r=n(50485),s=n(41283),o=n(32866),a=n(78920),u=n(62800);function l(e){const t=o.setOperationMembersRecursively(e,void 0)[0];return t.size<=1||i.iterableEvery(t,(e=>!(e instanceof s.UnionType)||e.isCanonical))}class c{constructor(){this._primitiveAttributes=new Map,this._arrayAttributes=u.emptyTypeAttributes,this._objectProperties=new Map,this._objectAttributes=u.emptyTypeAttributes,this._additionalPropertyTypes=new Set,this._lostTypeAttributes=!1}updatePrimitiveTypes(e){const t=i.setFilter(e,(e=>s.isPrimitiveTypeKind(e.kind))),n=function(e){return i.mapMapEntries(e.entries(),(e=>[e.kind,e.getAttributes()]))}(t);i.mapMergeWithInto(this._primitiveAttributes,((e,t)=>u.combineTypeAttributes("intersect",e,t)),n);const r=i.setMap(t,(e=>e.kind));if(void 0===this._primitiveTypes)return void(this._primitiveTypes=new Set(r));const o=void 0!==i.iterableFind(this._primitiveTypes,s.isNumberTypeKind)&&void 0!==i.iterableFind(r,s.isNumberTypeKind);this._primitiveTypes=i.setIntersect(this._primitiveTypes,r),o&&void 0===i.iterableFind(this._primitiveTypes,s.isNumberTypeKind)&&(this._primitiveTypes=this._primitiveTypes.add("integer"))}updateArrayItemTypes(e){const t=i.iterableFind(e,(e=>e instanceof s.ArrayType));void 0!==t?(this._arrayAttributes=u.combineTypeAttributes("intersect",this._arrayAttributes,t.getAttributes()),void 0===this._arrayItemTypes?this._arrayItemTypes=new Set:!1!==this._arrayItemTypes&&this._arrayItemTypes.add(t.items)):this._arrayItemTypes=!1}updateObjectProperties(e){const t=i.iterableFind(e,(e=>e instanceof s.ObjectType));if(void 0===t)return this._objectProperties=void 0,void(this._additionalPropertyTypes=void 0);this._objectAttributes=u.combineTypeAttributes("intersect",this._objectAttributes,t.getAttributes());const n=t.getAdditionalProperties();if(void 0===this._objectProperties)return void a.assert(void 0===this._additionalPropertyTypes);const r=i.setUnionInto(new Set(this._objectProperties.keys()),t.getProperties().keys());for(const i of r){const e=a.defined(this._objectProperties).get(i),r=t.getProperties().get(i);if(void 0!==e&&void 0!==r){const t=new s.GenericClassProperty(e.typeData.add(r.type),e.isOptional&&r.isOptional);a.defined(this._objectProperties).set(i,t)}else if(void 0!==e&&void 0!==n){const t=new s.GenericClassProperty(e.typeData.add(n),e.isOptional);a.defined(this._objectProperties).set(i,t)}else if(void 0!==e)a.defined(this._objectProperties).delete(i);else if(void 0!==r&&void 0!==this._additionalPropertyTypes){const e=new Set(this._additionalPropertyTypes).add(r.type);a.defined(this._objectProperties).set(i,new s.GenericClassProperty(e,r.isOptional))}else{if(void 0===r)return a.mustNotHappen();a.defined(this._objectProperties).delete(i)}}void 0!==this._additionalPropertyTypes&&void 0!==n?this._additionalPropertyTypes.add(n):void 0===this._additionalPropertyTypes&&void 0===n||(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 o.matchTypeExhaustive(e,(e=>a.panic("There shouldn't be a none type")),(e=>a.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=>a.panic("We should never see class types in intersections")),(e=>a.panic("We should never see map types in intersections")),(e=>this.addUnionSet([e])),(e=>a.panic("We should never see enum types in intersections")),(e=>{t=u.combineTypeAttributes("intersect",[t].concat(Array.from(e.members).map((e=>e.getAttributes())))),this.addUnionSet(e.members)}),(e=>this.addUnionSet([e]))),u.makeTypeAttributesInferred(t)}get arrayData(){return void 0===this._arrayItemTypes||!1===this._arrayItemTypes?a.panic("This should not be called if the type can't be an array"):this._arrayItemTypes}get objectData(){if(void 0!==this._objectProperties)return[this._objectProperties,this._additionalPropertyTypes];a.assert(void 0===this._additionalPropertyTypes)}get enumCases(){return a.panic("We don't support enums in intersections")}getMemberKinds(){const e=i.mapMap(a.defined(this._primitiveTypes).entries(),(e=>a.defined(this._primitiveAttributes.get(e)))),t=this._primitiveAttributes.get("double");return void 0!==t&&!e.has("double")&&e.has("integer")&&i.mapUpdateInto(e,"integer",(e=>u.combineTypeAttributes("intersect",a.defined(e),t))),void 0!==this._arrayItemTypes&&!1!==this._arrayItemTypes?e.set("array",this._arrayAttributes):this._arrayAttributes.size>0&&(this._lostTypeAttributes=!0),void 0!==this._objectProperties?e.set("object",this._objectAttributes):this._objectAttributes.size>0&&(this._lostTypeAttributes=!0),e}get lostTypeAttributes(){return this._lostTypeAttributes}}class h extends r.UnionBuilder{constructor(){super(...arguments),this._createdNewIntersections=!1}makeIntersection(e,t){const n=i.setMap(e,(e=>this.typeBuilder.reconstituteTypeRef(e.typeRef))),r=a.defined(i.iterableFirst(n));return 1===n.size?(this.typeBuilder.addAttributes(r,t),r):(this._createdNewIntersections=!0,this.typeBuilder.getUniqueIntersectionType(t,n))}get createdNewIntersections(){return this._createdNewIntersections}makeObject(e,t,n){if(void 0===e)return a.panic("Either properties or additional properties must be given to make an object type");const[r,s]=e,o=i.mapMap(r,(e=>this.typeBuilder.makeClassProperty(this.makeIntersection(e.typeData,u.emptyTypeAttributes),e.isOptional))),l=void 0===s?void 0:this.makeIntersection(s,u.emptyTypeAttributes);return this.typeBuilder.getUniqueObjectType(t,o,l,n)}makeArray(e,t,n){const i=this.makeIntersection(e,u.emptyTypeAttributes);return this.typeBuilder.getArrayType(t,i,n)}}t.resolveIntersections=function(e,t,n){let r=!1;const p=i.setFilter(e.allTypesUnordered(),(e=>e instanceof s.IntersectionType)),d=i.setFilter(p,l),m=o.makeGroupsToFlatten(d,void 0);return[e=e.rewrite("resolve intersections",t,!1,m,n,(function(e,t,n){const l=i.setFilter(e,(e=>e instanceof s.IntersectionType)),[p,d]=o.setOperationMembersRecursively(Array.from(l),"intersect");if(0===p.size){return t.getPrimitiveType("any",d,n)}if(1===p.size)return t.reconstituteType(a.defined(i.iterableFirst(p)),d,n);const m=new c,f=u.makeTypeAttributesInferred(u.combineTypeAttributes("intersect",Array.from(p).map((e=>m.addType(e))))),y=u.combineTypeAttributes("intersect",d,f),g=new h(t),_=g.buildUnion(m,!0,y,n);return g.createdNewIntersections&&(r=!0),_})),!r&&p.size===d.size]}},28609:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(85332),r=n(60877);var s;t.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"],function(e){e.Pascal="pascal",e.Camel="camel",e.Original="original",e.Lower="lowerCase"}(s=t.AcronymStyleOptions||(t.AcronymStyleOptions={})),t.acronymOption=function(e){return new i.EnumOption("acronym-style","Acronym naming style",[[s.Original,s.Original],[s.Pascal,s.Pascal],[s.Camel,s.Camel],[s.Lower,s.Lower]],e,"secondary")},t.acronymStyle=function(e){return{[s.Pascal]:r.allUpperWordStyle,[s.Camel]:r.firstUpperWordStyle,[s.Original]:r.originalWord,[s.Lower]:r.allLowerWordStyle}[e]}},54199:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});class n{constructor(e){void 0===e&&(e=Math.floor(Math.random()*Math.pow(10,13))),this.N=624,this.M=397,this.MATRIX_A=2567483615,this.UPPER_MASK=2147483648,this.LOWER_MASK=2147483647,this.mt=new Array(this.N),this.mti=this.N+1,this.init_genrand(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]=(1812433253*((4294901760&e)>>>16)<<16)+1812433253*(65535&e)+this.mti,this.mt[this.mti]>>>=0}genrand_int32(){let e,t=new Array(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[1&e];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[1&e];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[1&e],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)}}t.Chance=class{constructor(e){this.seed=e,this.mt=new n(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(0===e.length)throw new RangeError("Chance: Cannot pick() from an empty array");return e[this.natural({max:e.length-1})]}animal(){return this.pick(i[this.pick(["desert","forest","ocean","zoo","farm","pet","grassland"])])}city(){return this.pick(r)}};const i={ocean:["Acantharea","Anemone","Angelfish King","Ahi Tuna","Albacore","American Oyster","Anchovy","Armored Snail","Arctic Char","Atlantic Bluefin Tuna","Atlantic Cod","Atlantic Goliath Grouper","Atlantic Trumpetfish","Atlantic Wolffish","Baleen Whale","Banded Butterflyfish","Banded Coral Shrimp","Banded Sea Krait","Barnacle","Barndoor Skate","Barracuda","Basking Shark","Bass","Beluga Whale","Bluebanded Goby","Bluehead Wrasse","Bluefish","Bluestreak Cleaner-Wrasse","Blue Marlin","Blue Shark","Blue Spiny Lobster","Blue Tang","Blue Whale","Broadclub Cuttlefish","Bull Shark","Chambered Nautilus","Chilean Basket Star","Chilean Jack Mackerel","Chinook Salmon","Christmas Tree Worm","Clam","Clown Anemonefish","Clown Triggerfish","Cod","Coelacanth","Cockscomb Cup Coral","Common Fangtooth","Conch","Cookiecutter Shark","Copepod","Coral","Corydoras","Cownose Ray","Crab","Crown-of-Thorns Starfish","Cushion Star","Cuttlefish","California Sea Otters","Dolphin","Dolphinfish","Dory","Devil Fish","Dugong","Dumbo Octopus","Dungeness Crab","Eccentric Sand Dollar","Edible Sea Cucumber","Eel","Elephant Seal","Elkhorn Coral","Emperor Shrimp","Estuarine Crocodile","Fathead Sculpin","Fiddler Crab","Fin Whale","Flameback","Flamingo Tongue Snail","Flashlight Fish","Flatback Turtle","Flatfish","Flying Fish","Flounder","Fluke","French Angelfish","Frilled Shark","Fugu (also called Pufferfish)","Gar","Geoduck","Giant Barrel Sponge","Giant Caribbean Sea Anemone","Giant Clam","Giant Isopod","Giant Kingfish","Giant Oarfish","Giant Pacific Octopus","Giant Pyrosome","Giant Sea Star","Giant Squid","Glowing Sucker Octopus","Giant Tube Worm","Goblin Shark","Goosefish","Great White Shark","Greenland Shark","Grey Atlantic Seal","Grouper","Grunion","Guineafowl Puffer","Haddock","Hake","Halibut","Hammerhead Shark","Hapuka","Harbor Porpoise","Harbor Seal","Hatchetfish","Hawaiian Monk Seal","Hawksbill Turtle","Hector's Dolphin","Hermit Crab","Herring","Hoki","Horn Shark","Horseshoe Crab","Humpback Anglerfish","Humpback Whale","Icefish","Imperator Angelfish","Irukandji Jellyfish","Isopod","Ivory Bush Coral","Japanese Spider Crab","Jellyfish","John Dory","Juan Fernandez Fur Seal","Killer Whale","Kiwa Hirsuta","Krill","Lagoon Triggerfish","Lamprey","Leafy Seadragon","Leopard Seal","Limpet","Ling","Lionfish","Lions Mane Jellyfish","Lobe Coral","Lobster","Loggerhead Turtle","Longnose Sawshark","Longsnout Seahorse","Lophelia Coral","Marrus Orthocanna","Manatee","Manta Ray","Marlin","Megamouth Shark","Mexican Lookdown","Mimic Octopus","Moon Jelly","Mollusk","Monkfish","Moray Eel","Mullet","Mussel","Megaladon","Napoleon Wrasse","Nassau Grouper","Narwhal","Nautilus","Needlefish","Northern Seahorse","North Atlantic Right Whale","Northern Red Snapper","Norway Lobster","Nudibranch","Nurse Shark","Oarfish","Ocean Sunfish","Oceanic Whitetip Shark","Octopus","Olive Sea Snake","Orange Roughy","Ostracod","Otter","Oyster","Pacific Angelshark","Pacific Blackdragon","Pacific Halibut","Pacific Sardine","Pacific Sea Nettle Jellyfish","Pacific White Sided Dolphin","Pantropical Spotted Dolphin","Patagonian Toothfish","Peacock Mantis Shrimp","Pelagic Thresher Shark","Penguin","Peruvian Anchoveta","Pilchard","Pink Salmon","Pinniped","Plankton","Porpoise","Polar Bear","Portuguese Man o' War","Pycnogonid Sea Spider","Quahog","Queen Angelfish","Queen Conch","Queen Parrotfish","Queensland Grouper","Ragfish","Ratfish","Rattail Fish","Ray","Red Drum","Red King Crab","Ringed Seal","Risso's Dolphin","Ross Seals","Sablefish","Salmon","Sand Dollar","Sandbar Shark","Sawfish","Sarcastic Fringehead","Scalloped Hammerhead Shark","Seahorse","Sea Cucumber","Sea Lion","Sea Urchin","Seal","Shark","Shortfin Mako Shark","Shovelnose Guitarfish","Shrimp","Silverside Fish","Skipjack Tuna","Slender Snipe Eel","Smalltooth Sawfish","Smelts","Sockeye Salmon","Southern Stingray","Sponge","Spotted Porcupinefish","Spotted Dolphin","Spotted Eagle Ray","Spotted Moray","Squid","Squidworm","Starfish","Stickleback","Stonefish","Stoplight Loosejaw","Sturgeon","Swordfish","Tan Bristlemouth","Tasseled Wobbegong","Terrible Claw Lobster","Threespot Damselfish","Tiger Prawn","Tiger Shark","Tilefish","Toadfish","Tropical Two-Wing Flyfish","Tuna","Umbrella Squid","Velvet Crab","Venus Flytrap Sea Anemone","Vigtorniella Worm","Viperfish","Vampire Squid","Vaquita","Wahoo","Walrus","West Indian Manatee","Whale","Whale Shark","Whiptail Gulper","White-Beaked Dolphin","White-Ring Garden Eel","White Shrimp","Wobbegong","Wrasse","Wreckfish","Xiphosura","Yellowtail Damselfish","Yelloweye Rockfish","Yellow Cup Black Coral","Yellow Tube Sponge","Yellowfin Tuna","Zebrashark","Zooplankton"],desert:["Aardwolf","Addax","African Wild Ass","Ant","Antelope","Armadillo","Baboon","Badger","Bat","Bearded Dragon","Beetle","Bird","Black-footed Cat","Boa","Brown Bear","Bustard","Butterfly","Camel","Caracal","Caracara","Caterpillar","Centipede","Cheetah","Chipmunk","Chuckwalla","Climbing Mouse","Coati","Cobra","Cotton Rat","Cougar","Courser","Crane Fly","Crow","Dassie Rat","Dove","Dunnart","Eagle","Echidna","Elephant","Emu","Falcon","Fly","Fox","Frogmouth","Gecko","Geoffroy's Cat","Gerbil","Grasshopper","Guanaco","Gundi","Hamster","Hawk","Hedgehog","Hyena","Hyrax","Jackal","Kangaroo","Kangaroo Rat","Kestrel","Kowari","Kultarr","Leopard","Lion","Macaw","Meerkat","Mouse","Oryx","Ostrich","Owl","Pronghorn","Python","Rabbit","Raccoon","Rattlesnake","Rhinoceros","Sand Cat","Spectacled Bear","Spiny Mouse","Starling","Stick Bug","Tarantula","Tit","Toad","Tortoise","Tyrant Flycatcher","Viper","Vulture","Waxwing","Xerus","Zebra"],grassland:["Aardvark","Aardwolf","Accentor","African Buffalo","African Wild Dog","Alpaca","Anaconda","Ant","Anteater","Antelope","Armadillo","Baboon","Badger","Bandicoot","Barbet","Bat","Bee","Bee-eater","Beetle","Bird","Bison","Black-footed Cat","Black-footed Ferret","Bluebird","Boa","Bowerbird","Brown Bear","Bush Dog","Bushshrike","Bustard","Butterfly","Buzzard","Caracal","Caracara","Cardinal","Caterpillar","Cheetah","Chipmunk","Civet","Climbing Mouse","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Common Genet","Cotton Rat","Cougar","Courser","Coyote","Crane","Crane Fly","Cricket","Crow","Culpeo","Death Adder","Deer","Deer Mouse","Dingo","Dinosaur","Dove","Drongo","Duck","Duiker","Dunnart","Eagle","Echidna","Elephant","Elk","Emu","Falcon","Finch","Flea","Fly","Flying Frog","Fox","Frog","Frogmouth","Garter Snake","Gazelle","Gecko","Geoffroy's Cat","Gerbil","Giant Tortoise","Giraffe","Grasshopper","Grison","Groundhog","Grouse","Guanaco","Guinea Pig","Hamster","Harrier","Hartebeest","Hawk","Hedgehog","Helmetshrike","Hippopotamus","Hornbill","Hyena","Hyrax","Impala","Jackal","Jaguar","Jaguarundi","Kangaroo","Kangaroo Rat","Kestrel","Kultarr","Ladybug","Leopard","Lion","Macaw","Meerkat","Mouse","Newt","Oryx","Ostrich","Owl","Pangolin","Pheasant","Prairie Dog","Pronghorn","Przewalski's Horse","Python","Quoll","Rabbit","Raven","Rhinoceros","Shelduck","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Tamandua","Tasmanian Devil","Thornbill","Thrush","Toad","Tortoise"],forest:["Agouti","Anaconda","Anoa","Ant","Anteater","Antelope","Armadillo","Asian Black Bear","Aye-aye","Babirusa","Baboon","Badger","Bandicoot","Banteng","Barbet","Basilisk","Bat","Bearded Dragon","Bee","Bee-eater","Beetle","Bettong","Binturong","Bird-of-paradise","Bongo","Bowerbird","Bulbul","Bush Dog","Bushbaby","Bushshrike","Butterfly","Buzzard","Caecilian","Cardinal","Cassowary","Caterpillar","Centipede","Chameleon","Chimpanzee","Cicada","Civet","Clouded Leopard","Coati","Cobra","Cockatoo","Cockroach","Colugo","Cotinga","Cotton Rat","Cougar","Crane Fly","Cricket","Crocodile","Crow","Cuckoo","Cuscus","Death Adder","Deer","Dhole","Dingo","Dinosaur","Drongo","Duck","Duiker","Eagle","Echidna","Elephant","Finch","Flat-headed Cat","Flea","Flowerpecker","Fly","Flying Frog","Fossa","Frog","Frogmouth","Gaur","Gecko","Gorilla","Grison","Hawaiian Honeycreeper","Hawk","Hedgehog","Helmetshrike","Hornbill","Hyrax","Iguana","Jackal","Jaguar","Jaguarundi","Kestrel","Ladybug","Lemur","Leopard","Lion","Macaw","Mandrill","Margay","Monkey","Mouse","Mouse Deer","Newt","Okapi","Old World Flycatcher","Orangutan","Owl","Pangolin","Peafowl","Pheasant","Possum","Python","Quokka","Rabbit","Raccoon","Red Panda","Red River Hog","Rhinoceros","Sloth Bear","Spectacled Bear","Squirrel","Starling","Stick Bug","Sun Bear","Tamandua","Tamarin","Tapir","Tarantula","Thrush","Tiger","Tit","Toad","Tortoise","Toucan","Trogon","Trumpeter","Turaco","Turtle","Tyrant Flycatcher","Viper","Vulture","Wallaby","Warbler","Wasp","Waxwing","Weaver","Weaver-finch","Whistler","White-eye","Whydah","Woodswallow","Worm","Wren","Xenops","Yellowjacket","Accentor","African Buffalo","American Black Bear","Anole","Bird","Bison","Boa","Brown Bear","Chipmunk","Common Genet","Copperhead","Coyote","Deer Mouse","Dormouse","Elk","Emu","Fisher","Fox","Garter Snake","Giant Panda","Giant Tortoise","Groundhog","Grouse","Guanaco","Himalayan Tahr","Kangaroo","Koala","Numbat","Quoll","Raccoon dog","Tasmanian Devil","Thornbill","Turkey","Vole","Weasel","Wildcat","Wolf","Wombat","Woodchuck","Woodpecker"],farm:["Alpaca","Buffalo","Banteng","Cow","Cat","Chicken","Carp","Camel","Donkey","Dog","Duck","Emu","Goat","Gayal","Guinea","Goose","Horse","Honey","Llama","Pig","Pigeon","Rhea","Rabbit","Sheep","Silkworm","Turkey","Yak","Zebu"],pet:["Bearded Dragon","Birds","Burro","Cats","Chameleons","Chickens","Chinchillas","Chinese Water Dragon","Cows","Dogs","Donkey","Ducks","Ferrets","Fish","Geckos","Geese","Gerbils","Goats","Guinea Fowl","Guinea Pigs","Hamsters","Hedgehogs","Horses","Iguanas","Llamas","Lizards","Mice","Mule","Peafowl","Pigs and Hogs","Pigeons","Ponies","Pot Bellied Pig","Rabbits","Rats","Sheep","Skinks","Snakes","Stick Insects","Sugar Gliders","Tarantula","Turkeys","Turtles"],zoo:["Aardvark","African Wild Dog","Aldabra Tortoise","American Alligator","American Bison","Amur Tiger","Anaconda","Andean Condor","Asian Elephant","Baby Doll Sheep","Bald Eagle","Barred Owl","Blue Iguana","Boer Goat","California Sea Lion","Caribbean Flamingo","Chinchilla","Collared Lemur","Coquerel's Sifaka","Cuban Amazon Parrot","Ebony Langur","Fennec Fox","Fossa","Gelada","Giant Anteater","Giraffe","Gorilla","Grizzly Bear","Henkel's Leaf-tailed Gecko","Indian Gharial","Indian Rhinoceros","King Cobra","King Vulture","Komodo Dragon","Linne's Two-toed Sloth","Lion","Little Penguin","Madagascar Tree Boa","Magellanic Penguin","Malayan Tapir","Malayan Tiger","Matschies Tree Kangaroo","Mini Donkey","Monarch Butterfly","Nile crocodile","North American Porcupine","Nubian Ibex","Okapi","Poison Dart Frog","Polar Bear","Pygmy Marmoset","Radiated Tortoise","Red Panda","Red Ruffed Lemur","Ring-tailed Lemur","Ring-tailed Mongoose","Rock Hyrax","Small Clawed Asian Otter","Snow Leopard","Snowy Owl","Southern White-faced Owl","Southern White Rhinocerous","Squirrel Monkey","Tufted Puffin","White Cheeked Gibbon","White-throated Bee Eater","Zebra"]},r=["Alert","Nord","Eureka","Ny-\xc5lesund","Longyearbyen","Qaanaaq","Grise Fiord","Dikson","Upernavik","Tiksi","Belushya Guba","Barrow","Honningsv\xe5g","Hammerfest","Deadhorse","Nuorgam","Vads\xf8","Alta","Utsjoki","Kirkenes","Troms\xf8","Tuktoyaktuk","Norilsk","Murmansk","Harstad","Narvik","Inuvik","Kiruna","Verkhoyansk","Bod\xf8","G\xe4llivare","Kemij\xe4rvi","Rovaniemi","\xcdsafj\xf6r\xf0ur","Kuusamo","Tornio","Boden","Haparanda","Kemi","Akureyri","Lule\xe5","Pudasj\xe4rvi","Pite\xe5","Oulu","Fairbanks","Skellefte\xe5","Anadyr","Arkhangelsk","Nome","Nuuk (Godth\xe5b)","Reykjav\xedk","Ume\xe5","Iqaluit","Stj\xf8rdal","Trondheim","\xd6rnsk\xf6ldsvik","\xd6stersund","Vaasa","Kuopio","Yellowknife","Sundsvall","Jyv\xe4skyl\xe4","Yakutsk","T\xf3rshavn","Petrozavodsk","Tampere","Anchorage","Lillehammer","Lahti","Qaqortoq","Whitehorse","Turku","Bergen","Vantaa","Lerwick","Espoo","Helsinki","Oslo","Saint Petersburg","Uppsala","Fritz Creek","Magadan","Tallinn","Stockholm","Sarpsborg","\xd6rebro","Vologda","Norrk\xf6ping","Link\xf6ping","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\xf6","Esbjerg","Odense","Grande Prairie","Chelyabinsk","Novosibirsk","Derry","Omsk","Newcastle upon Tyne","Sunderland","Petropavl","Flensburg","Ufa","Kaliningrad","Vilnius","Belfast","Middlesbrough","Gdynia","Gda\u0144sk","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\u0144","Haarlem","Amsterdam","Hannover","Irkutsk","Warsaw","Enschede","Cambridge","Leiden","Saskatoon","Utrecht","The Hague","M\xfcnster","Rotterdam","Cork","Adak","Gloucester","Oxford","Voronezh","Swansea","Saratov","Dortmund","London","Cardiff","Greenwich","Bristol","Bath","Leipzig","D\xfcsseldorf","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\xf3w","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\xe9ans","Salzburg","Seattle","St. John's","Basel","Budapest","Qiqihar","Z\xfcrich","Innsbruck","Rostov-on-Don","Nantes","Vaduz","Atyrau","Graz","Chi\u015fin\u0103u","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","\u0160abac","Drobeta Turnu Severin","Bologna","Bucharest","Ravenna","Genoa","Pierre","Craiova","Augusta","Montpelier","Bath","San Marino","Changchun","Sarajevo","Yarmouth","\xdcr\xfcmqi","Florence","Asahikawa","Monaco","Nice","Toronto","Boise","Toulouse","Sochi","Cannes","Gij\xf3n","Sioux Falls","Split","Oviedo","Nemuro","San Sebasti\xe1n","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\xedsmo","Halkida","\u0130zmir","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\xeda","Tunis","Mersin","Algiers","M\xe1laga","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\u014dfu","Chiba","Latakia","Kawasaki","Tottori","Oklahoma City","Matsue","Kirkuk","Yokohama","Gifu","Tiaret","Heraklion","Melilla","Charlotte","Nagoya","Busan","Nicosia","Memphis","Albuquerque","\u014ctsu","Kyoto","Shizuoka","Zhengzhou","Little Rock","Sfax","Tsu","Osaka","K\u014dbe","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\u014dchi","Casablanca","Damascus","Phoenix","Lubbock","Baghdad","Saga","\u014cita","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\xe1rez","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\xfan","Sabha","Jaipur","Lucknow","Siliguri","Tezpur","Kanpur","Dammam","Naha","Manama","Guwahati","Brownsville","Miami","Luxor","Monterrey","Patna","Shillong","Torre\xf3n","Kulpahar","Doha","Dubai","Hyderabad","Nassau","Kunming","Taipei","Karachi","Culiac\xe1n","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\xed","Aguascalientes","Jeddah","Cockburn Town","Mecca","Honolulu","Chhattisgarh","Canc\xfan","Surat","Nagpur","Le\xf3n","Hanoi","M\xe9rida","Hai Phong","Zapopan","Puerto Vallarta","Guadalajara","Quer\xe9taro","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\u1ebf","Khon Kaen","Da Nang","Basse-Terre","Omdurman","Khartoum","Sana'a","Asmara","Roseau","Saipan","Son My","Nakhon Ratchasima","Praia","Tapachula","Quetzaltenango","Thi\xe8s","Dakar","Quezon City","Guatemala City","Fort-de-France","Manila","Makati","Ayutthaya","Tegucigalpa","Castries","Bangkok","San Salvador","Niamey","Dededo","Hag\xe5t\xf1a","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\xf3n","Jaffna","Hargeisa","Puntarenas","Kochi","San Jos\xe9","Tagbilaran","Conakry","Tamale","Surat Thani","Abuja","Addis Ababa","Panama City","M\xe9rida","Moundou","Trivandrum","Freetown","Ciudad Bol\xedvar","C\xfacuta","Phuket","San Crist\xf3bal","Nz\xe9r\xe9kor\xe9","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\xedn","Lom\xe9","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\xe1","Miri","Bangui","Mal\xe9","Douala","Yaound\xe9","Malabo","Medan","Santiago de Cali","Kuala Lumpur","Boa Vista","Malacca Town","Mogadishu","Kuching","Johor Bahru","South Tarawa","Singapore","Pekanbaru","Libreville","S\xe3o Tom\xe9","Kampala","Entebbe","Mbandaka","Macap\xe1","Pontianak","Quito","Kismayo","Yaren District","Padang","Balikpapan","Nairobi","Bel\xe9m","Kigali","Guayaquil","Mwanza","S\xe3o Lu\xeds","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\xe3o 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\xf3","Rio Branco","Aracaju","Palmas","Lubumbashi","Moroni","Sinop","Lima","Darwin","Huambo","Mamoudzou","Ndola","Salvador","Ayacucho","Mata-Utu","Cusco","Apia","Lilongwe","Pago Pago","Ilh\xe9us","Lusaka","Cuiab\xe1","Blantyre","Bras\xedlia","Jamestown","Arequipa","Labasa","Rabi Island","La Paz","Goi\xe2nia","Cairns","Papeete","Port Vila","Santa Cruz de la Sierra","Livingstone","Harare","Suva","Arica","Governador Valadares","Uberl\xe2ndia","Antananarivo","Mutare","Sucre","Alofi","Townsville","Gweru","Belo Horizonte","Port Louis","Bulawayo","Iquique","Port Hedland","Vit\xf3ria","Campo Grande","S\xe3o Jos\xe9 do Rio Preto","Saint-Denis","Nuku\u02bbalofa","Francistown","Ribeir\xe3o Preto","Avarua","Juiz de Fora","Po\xe7os de Caldas","Araraquara","Noum\xe9a","Bauru","Calama","Windhoek","Assis","Campinas","Rio de Janeiro","S\xe3o Jos\xe9 dos Campos","Rockhampton","S\xe3o Paulo","Antofagasta","Polokwane","Gaborone","Salta","Adamstown","Asunci\xf3n","Curitiba","Nelspruit","Ciudad del Este","Pretoria","Mafikeng","Maputo","Johannesburg","Mbabane","Lobamba","Manzini","San Miguel de Tucum\xe1n","Hanga Roa","Copiap\xf3","Brisbane","Corrientes","Florian\xf3polis","Gold Coast","Kimberley","Kingston","Bloemfontein","Maseru","Pietermaritzburg","Durban","La Serena","C\xf3rdoba","Santa Fe","Pelotas","Perth","San Juan","Mandurah","Bhisho","Mendoza","Newcastle","Rosario","Vi\xf1a del Mar","Valpara\xedso","Santiago","Chu\xed","Sydney","Cape Town","Port Elizabeth","Wollongong","Buenos Aires","Montevideo","Adelaide","Canberra","Concepci\xf3n","Auckland","Edinburgh of the Seven Seas","Hamilton","Melbourne","Mar del Plata","Geelong","Bah\xeda Blanca","Temuco","Neuqu\xe9n","Hastings","Valdivia","San Carlos de Bariloche","Nelson","Wellington","Puerto Montt","Launceston, Tasmania","Hobart","Trelew","Christchurch","Waitangi","Puerto Ais\xe9n","Coihaique","Comodoro Rivadavia","Dunedin","Invercargill","R\xedo Gallegos","Stanley","Punta Arenas","Grytviken","Ushuaia","Puerto Williams","Puerto Toro","Villa Las Estrellas","Esperanza","Rothera","Concordia"]},50714:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(85332);var r;!function(e){e.TopLevel="top-level",e.AllObjects="all-objects"}(r=t.ConvertersOptions||(t.ConvertersOptions={})),t.convertersOption=function(){return new i.EnumOption("converters","Which converters to generate (top-level by default)",[[r.TopLevel,r.TopLevel],[r.AllObjects,r.AllObjects]],r.TopLevel,"secondary")}},60877:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(78920),r=n(28609),s=n(59551),o=n(16176);function a(e){const t=[],n=[];for(let i=0;i<128;i++){let r=0;const s=e(i);s===String.fromCharCode(i)&&(r=1),t.push(s),n.push(r)}return{charStringMap:t,charNoEscapeMap:n}}function u(e){const t=[];for(let n=0;n<128;n++)t.push(e(n));return function(n){return n<128?t[n]:e(n)}}function l(e){const{charStringMap:t,charNoEscapeMap:n}=a(e);return function(i){let r=null,s=0,o=0;for(;o<i.length;){const a=i.charCodeAt(o);if(1!==n[a]){null===r&&(r=[]),r.push(i.substring(s,o));const n=t[a];void 0===n?r.push(e(i.charCodeAt(o))):r.push(n),s=o+1}o++}return null===r?i:(r.push(i.substring(s,o)),r.join(""))}}function c(e){return e>=55296&&e<=56319}function h(e){return e>=56320&&e<=57343}function p(e){const{charStringMap:t,charNoEscapeMap:n}=a(e);return function(i){let r=null,o=0,a=0;for(;a<i.length;){let u=i.charCodeAt(a);if(1!==n[u]){if(null===r&&(r=[]),r.push(i.substring(o,a)),c(u)){const e=u;a++;const t=i.charCodeAt(a);s.messageAssert(h(t),"MiscUnicodeHighSurrogateWithoutLowSurrogate",{});u=65536+(t-56320)+(e-55296<<10)}const n=t[u];void 0===n?r.push(e(u)):r.push(n),o=a+1}a++}return null===r?i:(r.push(i.substring(o,a)),r.join(""))}}function d(e,t){if(i.assert(t>=0,"Cannot repeat a string a negative number of times"),0===t)return"";let n="";do{t%2!==0&&(n+=e),(t=Math.floor(t/2))>0&&(e+=e)}while(t>0);return n}function m(e,t){let n=e.toString(16);return n.length>=t?n:d("0",t-n.length)+n}function f(e){return e<=65535?"\\u"+m(e,4):"\\U"+m(e,8)}function y(e,t){return function(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)}}}function g(e){if(e>65535)return!1;const t=o.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}function _(e){const t=o.getCategory(e);return["Lu","Ll","Lt","Lo"].indexOf(t)>=0}function v(e){const t=o.getCategory(e);return["Nd"].indexOf(t)>=0}function b(e){return _(e)||95===e}function T(e){return _(e)||v(e)}function w(e,t){return""===t?t:e(t[0])+t.slice(1)}function k(e){return w((e=>e.toUpperCase()),e)}function S(e){return w((e=>e.toLowerCase()),e)}t.utf16ConcatMap=l,t.utf32ConcatMap=p,t.utf16LegalizeCharacters=function(e){return l((t=>e(t)?String.fromCharCode(t):""))},t.legalizeCharacters=function(e){return p((t=>t<=65535&&e(t)?String.fromCharCode(t):""))},t.repeatString=d,t.intToHex=m,t.standardUnicodeHexEscape=f,t.escapeNonPrintableMapper=y,t.utf16StringEscape=l(y(g,f)),t.stringEscape=p(y(g,f)),t.isPrintable=g,t.isAscii=function(e){return e<128},t.isLetter=_,t.isDigit=v,t.isNumeric=function(e){const t=o.getCategory(e);return["No","Nd","Nl"].indexOf(t)>=0},t.isLetterOrDigit=function(e){return _(e)||v(e)},t.isLetterOrUnderscore=b,t.isLetterOrUnderscoreOrDigit=function(e){return b(e)||v(e)},t.isWordCharacter=T,t.trimEnd=function(e){const t=e.length;let n=t;for(let i=t-1;i>=0&&o.isWhiteSpace(e.charCodeAt(i));i--)n=i;return n===t?e:e.slice(0,n)},t.capitalize=k,t.decapitalize=S;const L=/[-_. ]+/;function N(e){return e.split(L).map(k).join("")}t.pascalCase=N,t.camelCase=function(e){return S(N(e))},t.snakeCase=function(e){return F(e).map((e=>{let{word:t}=e;return t.toLowerCase()})).join("_")},t.startWithLetter=function(e,t,n){const i=t?k:S;return""===n?i("empty"):e(n.charCodeAt(0))?i(n):i("the"+n)};const O=new Set(r.acronyms),x=u(T),C=u((e=>!T(e))),E=u((e=>o.isLowerCase(e)));t.fastIsUpperCase=u((e=>o.isUpperCase(e)));const A=u((e=>!o.isLowerCase(e)&&!o.isUpperCase(e))),P=u(v);function F(e){const n=[];let r;const s=e.length;let o,a=0;function u(){return a>=s}function l(){return i.defined(e.codePointAt(a))}function c(e){for(;!u();){const t=l();if(!e(t))break;E(t)&&(o=a),a++}}function p(){c(E)}function d(){c(P)}function m(){if(void 0===r)return i.panic("Tried to commit interval without starting one");i.assert(a>r,"Interval must be non-empty"),!u()&&h(l())&&(a+=1);const e=void 0===o||o<r;n.push([r,a,e]),r=void 0}for(;c(C),!u();)i.assert(void 0===r,"Interval started before last one was committed"),r=a,E(l())?(p(),d(),m()):t.fastIsUpperCase(l())?(c(t.fastIsUpperCase),u()?m():1===(void 0===r?i.panic("Tried to get interval length without starting one"):a-r)?(p(),d(),m()):v(l())?(d(),m()):(x(l())&&(a-=1),m())):(c(A),m());const f=[];for(const[t,i,h]of n){const n=e.slice(t,i),r=void 0!==o&&h||O.has(n.toLowerCase());f.push({word:n,isAcronym:r})}return f}function M(e){return i.assert(e.length>0,"Cannot style an empty string"),e[0].toUpperCase()+e.slice(1).toLowerCase()}function j(e){return e.toUpperCase()}function R(e){return e.toLowerCase()}function I(e,t){i.assert(t.length>0,"Tried to style an empty word");const n=e(t);return i.assert(n.length>0,"Word style must not make word empty"),n}function B(e,t,n,r,s,o,a,u){const l=[];for(const i of e){const e=t(i.word);0!==e.length&&l.push({word:e,isAcronym:i.isAcronym})}if(0===l.length){const e=t("empty");i.assert(e.length>0,'Word "empty" is invalid in target language'),l.push({word:e,isAcronym:!1})}const c=[],h=l[0],p=I(h.isAcronym?s:n,h.word);let d;if(u(i.defined(p.codePointAt(0))))c.push(p),d=l.slice(1);else{const e=t("the");i.assert(e.length>0,'Word "the" is invalid in the target language');const r=I(n,e);i.assert(u(i.defined(r.codePointAt(0))),'The first character of styling "the" is not a start character'),c.push(r),d=l}for(const i of d){const e=i.isAcronym?o:r;c.push(I(e,i.word))}return c.join(a)}function D(e,t){return t.startsWith(e)?t:e+t}t.splitIntoWords=F,t.firstUpperWordStyle=M,t.allUpperWordStyle=j,t.originalWord=function(e){return e},t.allLowerWordStyle=R,t.combineWords=B,t.addPrefixIfNecessary=D,t.makeNameStyle=function(e,t,n){let r,s,o,a,u;switch("pascal"===e||"camel"===e||"pascal-upper-acronyms"===e||"camel-upper-acronyms"===e?(r="","pascal-upper-acronyms"===e||"camel-upper-acronyms"===e?(o=M,u=j):o=u=M):r="_",e){case"pascal":case"pascal-upper-acronyms":s=a=M;break;case"camel":case"camel-upper-acronyms":s=a=R;break;case"underscore":s=o=a=u=R;break;case"upper-underscore":s=o=a=u=j;break;default:return i.assertNever(e)}return e=>{const i=B(F(e),t,s,o,a,u,r,b);return void 0!==n?D(n,i):i}}},78920:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=n(80153),r=n(86426),s=n(59551),o=n(97298);function a(e,t){if("object"!==typeof e||Array.isArray(e)||null===e)return!1;if(void 0!==t)for(const n of Object.getOwnPropertyNames(e)){if(!t(e[n]))return!1}return!0}function u(e){return s.messageError("InternalError",{message:e})}t.isStringMap=a,t.checkString=function(e){return"string"===typeof e},t.checkStringMap=function(e,t){return a(e,t)?e:u("Value must be an object, but is ".concat(e))},t.checkArray=function(e,t){if(!Array.isArray(e))return u("Value must be an array, but is ".concat(e));if(void 0!==t)for(const n of e)if(!t(n))return u("Array item does not satisfy constraint: ".concat(n));return e},t.defined=function(e){return void 0!==e?e:u("Defined value expected, but got undefined")},t.nonNull=function(e){return null!==e?e:u("Non-null value expected, but got null")},t.assertNever=function(e){return s.messageError("InternalError",{message:"Unexpected object ".concat(e)})},t.assert=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Assertion failed";if(!e)return s.messageError("InternalError",{message:t})},t.panic=u,t.mustNotHappen=function(){return u("This must not happen")},t.repeated=function(e,t){const n=[];for(let i=0;i<e;i++)n.push(t);return n},t.repeatedCall=function(e,t){const n=[];for(let i=0;i<e;i++)n.push(t());return n},t.errorMessage=function(e){return e instanceof Error?e.message:e.toString()},t.inflateBase64=function(e){const t=i.Base64.atob(e);return r.inflate(t,{to:"string"})},t.parseJSON=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"<unknown>";try{return 65279===e.charCodeAt(0)&&(e=e.slice(1)),o.parse(e)}catch(i){let e;return e=i instanceof SyntaxError?i.message:"Unknown exception ".concat(i),s.messageError("MiscJSONParseError",{description:t,address:n,message:e})}},t.indentationString=function(e){return"  ".repeat(e)},t.numberEnumValues=function(e){const t=[];for(const n of Object.keys(e)){const i=e[n];"number"===typeof i&&t.push(i)}return t}},26903:(e,t,n)=>{function i(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===i(e)},t.isBoolean=function(e){return"boolean"===typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"===typeof e},t.isString=function(e){return"string"===typeof e},t.isSymbol=function(e){return"symbol"===typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===i(e)},t.isObject=function(e){return"object"===typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===i(e)},t.isError=function(e){return"[object Error]"===i(e)||e instanceof Error},t.isFunction=function(e){return"function"===typeof e},t.isPrimitive=function(e){return null===e||"boolean"===typeof e||"number"===typeof e||"string"===typeof e||"symbol"===typeof e||"undefined"===typeof e},t.isBuffer=n(93325).Buffer.isBuffer},58871:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},92558:(e,t,n)=>{"use strict";var i=n(85224);!i.version||0===i.version.indexOf("v0.")||0===i.version.indexOf("v1.")&&0!==i.version.indexOf("v1.8.")?e.exports=function(e,t,n,r){if("function"!==typeof e)throw new TypeError('"callback" argument must be a function');var s,o,a=arguments.length;switch(a){case 0:case 1:return i.nextTick(e);case 2:return i.nextTick((function(){e.call(null,t)}));case 3:return i.nextTick((function(){e.call(null,t,n)}));case 4:return i.nextTick((function(){e.call(null,t,n,r)}));default:for(s=new Array(a-1),o=0;o<s.length;)s[o++]=arguments[o];return i.nextTick((function(){e.apply(null,s)}))}}:e.exports=i.nextTick},81369:(e,t,n)=>{"use strict";var i=n(92558),r=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=h;var s=n(26903);s.inherits=n(61596);var o=n(58383),a=n(69123);s.inherits(h,o);for(var u=r(a.prototype),l=0;l<u.length;l++){var c=u[l];h.prototype[c]||(h.prototype[c]=a.prototype[c])}function h(e){if(!(this instanceof h))return new h(e);o.call(this,e),a.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||i(d,this)}function d(e){e.end()}Object.defineProperty(h.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),h.prototype._destroy=function(e,t){this.push(null),this.end(),i(t,e)}},57325:(e,t,n)=>{"use strict";e.exports=s;var i=n(3439),r=n(26903);function s(e){if(!(this instanceof s))return new s(e);i.call(this,e)}r.inherits=n(61596),r.inherits(s,i),s.prototype._transform=function(e,t,n){n(null,e)}},58383:(e,t,n)=>{"use strict";var i=n(85224),r=n(92558);e.exports=_;var s,o=n(58871);_.ReadableState=g;n(28981).EventEmitter;var a=function(e,t){return e.listeners(t).length},u=n(752),l=n(94620).Buffer;var c=n(26903);c.inherits=n(61596);var h=n(6017),p=void 0;p=h&&h.debuglog?h.debuglog("stream"):function(){};var d,m=n(46751),f=n(80871);c.inherits(_,u);var y=["error","close","destroy","pause","resume"];function g(e,t){s=s||n(81369),e=e||{},this.objectMode=!!e.objectMode,t instanceof s&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,r=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=n(98896).I),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function _(e){if(s=s||n(81369),!(this instanceof _))return new _(e);this._readableState=new g(e,this),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),u.call(this)}function v(e,t,n,i,r){var s,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,k(e)}(e,o)):(r||(s=function(e,t){var n;i=t,"[object Uint8Array]"===Object.prototype.toString.call(i)||l.isBuffer(i)||"string"===typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var i;return n}(o,t)),s?e.emit("error",s):o.objectMode||t&&t.length>0?("string"===typeof t||Object.getPrototypeOf(t)===l.prototype||o.objectMode||(t=function(e){return l.from(e)}(t)),i?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!n?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):L(e,o)):b(e,o,t,!1))):i||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,n,i){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,i?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&k(e)),L(e,t)}Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.push(null),t(e)},_.prototype.push=function(e,t){var n,i=this._readableState;return i.objectMode?n=!0:"string"===typeof e&&((t=t||i.defaultEncoding)!==i.encoding&&(e=l.from(e,t),t=""),n=!0),v(this,e,t,!1,n)},_.prototype.unshift=function(e){return v(this,e,null,!0,!1)},_.prototype.isPaused=function(){return!1===this._readableState.flowing},_.prototype.setEncoding=function(e){return d||(d=n(98896).I),this._readableState.decoder=new d(e),this._readableState.encoding=e,this};var T=8388608;function w(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function k(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?r(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),C(e)}function L(e,t){t.readingMore||(t.readingMore=!0,r(N,e,t))}function N(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function O(e){p("readable nexttick read 0"),e.read(0)}function x(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),C(e),t.flowing&&!t.reading&&e.read(0)}function C(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function E(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var i;e<t.head.data.length?(i=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):i=e===t.head.data.length?t.shift():n?function(e,t){var n=t.head,i=1,r=n.data;e-=r.length;for(;n=n.next;){var s=n.data,o=e>s.length?s.length:e;if(o===s.length?r+=s:r+=s.slice(0,e),0===(e-=o)){o===s.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=s.slice(o));break}++i}return t.length-=i,r}(e,t):function(e,t){var n=l.allocUnsafe(e),i=t.head,r=1;i.data.copy(n),e-=i.data.length;for(;i=i.next;){var s=i.data,o=e>s.length?s.length:e;if(s.copy(n,n.length-e,0,o),0===(e-=o)){o===s.length?(++r,i.next?t.head=i.next:t.head=t.tail=null):(t.head=i,i.data=s.slice(o));break}++r}return t.length-=r,n}(e,t);return i}(e,t.buffer,t.decoder),n);var n}function A(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,r(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return n;return-1}_.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?A(this):k(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&A(this),null;var i,r=t.needReadable;return p("need readable",r),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",r=!0),t.ended||t.reading?p("reading or ended",r=!1):r&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=w(n,t))),null===(i=e>0?E(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&A(this)),null!==i&&this.emit("data",i),i},_.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},_.prototype.pipe=function(e,t){var n=this,s=this._readableState;switch(s.pipesCount){case 0:s.pipes=e;break;case 1:s.pipes=[s.pipes,e];break;default:s.pipes.push(e)}s.pipesCount+=1,p("pipe count=%d opts=%j",s.pipesCount,t);var u=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:v;function l(t,i){p("onunpipe"),t===n&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,p("cleanup"),e.removeListener("close",g),e.removeListener("finish",_),e.removeListener("drain",h),e.removeListener("error",y),e.removeListener("unpipe",l),n.removeListener("end",c),n.removeListener("end",v),n.removeListener("data",f),d=!0,!s.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function c(){p("onend"),e.end()}s.endEmitted?r(u):n.once("end",u),e.on("unpipe",l);var h=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,C(e))}}(n);e.on("drain",h);var d=!1;var m=!1;function f(t){p("ondata"),m=!1,!1!==e.write(t)||m||((1===s.pipesCount&&s.pipes===e||s.pipesCount>1&&-1!==F(s.pipes,e))&&!d&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,m=!0),n.pause())}function y(t){p("onerror",t),v(),e.removeListener("error",y),0===a(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",_),v()}function _(){p("onfinish"),e.removeListener("close",g),v()}function v(){p("unpipe"),n.unpipe(e)}return n.on("data",f),function(e,t,n){if("function"===typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",g),e.once("finish",_),e.emit("pipe",n),s.flowing||(p("pipe resume"),n.resume()),e},_.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var i=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var s=0;s<r;s++)i[s].emit("unpipe",this,n);return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,n)),this},_.prototype.on=function(e,t){var n=u.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&k(this):r(O,this))}return n},_.prototype.addListener=_.prototype.on,_.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,r(x,e,t))}(this,e)),this},_.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},_.prototype.wrap=function(e){var t=this._readableState,n=!1,i=this;for(var r in e.on("end",(function(){if(p("wrapped end"),t.decoder&&!t.ended){var e=t.decoder.end();e&&e.length&&i.push(e)}i.push(null)})),e.on("data",(function(r){(p("wrapped data"),t.decoder&&(r=t.decoder.write(r)),!t.objectMode||null!==r&&void 0!==r)&&((t.objectMode||r&&r.length)&&(i.push(r)||(n=!0,e.pause())))})),e)void 0===this[r]&&"function"===typeof e[r]&&(this[r]=function(t){return function(){return e[t].apply(e,arguments)}}(r));for(var s=0;s<y.length;s++)e.on(y[s],i.emit.bind(i,y[s]));return i._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},i},_._fromList=E},3439:(e,t,n)=>{"use strict";e.exports=o;var i=n(81369),r=n(26903);function s(e){this.afterTransform=function(t,n){return function(e,t,n){var i=e._transformState;i.transforming=!1;var r=i.writecb;if(!r)return e.emit("error",new Error("write callback called multiple times"));i.writechunk=null,i.writecb=null,null!==n&&void 0!==n&&e.push(n);r(t);var s=e._readableState;s.reading=!1,(s.needReadable||s.length<s.highWaterMark)&&e._read(s.highWaterMark)}(e,t,n)},this.needTransform=!1,this.transforming=!1,this.writecb=null,this.writechunk=null,this.writeencoding=null}function o(e){if(!(this instanceof o))return new o(e);i.call(this,e),this._transformState=new s(this);var t=this;this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"===typeof e.transform&&(this._transform=e.transform),"function"===typeof e.flush&&(this._flush=e.flush)),this.once("prefinish",(function(){"function"===typeof this._flush?this._flush((function(e,n){a(t,e,n)})):a(t)}))}function a(e,t,n){if(t)return e.emit("error",t);null!==n&&void 0!==n&&e.push(n);var i=e._writableState,r=e._transformState;if(i.length)throw new Error("Calling transform done when ws.length != 0");if(r.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}r.inherits=n(61596),r.inherits(o,i),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,i.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,n){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,n){var i=this._transformState;if(i.writecb=n,i.writechunk=e,i.writeencoding=t,!i.transforming){var r=this._readableState;(i.needTransform||r.needReadable||r.length<r.highWaterMark)&&this._read(r.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var n=this;i.prototype._destroy.call(this,e,(function(e){t(e),n.emit("close")}))}},69123:(e,t,n)=>{"use strict";var i=n(85224),r=n(92558);function s(e){this.next=null,this.entry=null,this.finish=S.bind(void 0,this,e)}e.exports=y;var o,a=!i.browser&&["v0.10","v0.9."].indexOf(i.version.slice(0,5))>-1?setImmediate:r;y.WritableState=f;var u=n(26903);u.inherits=n(61596);var l={deprecate:n(91421)},c=n(752),h=n(94620).Buffer;var p,d=n(80871);function m(){}function f(e,t){o=o||n(81369),e=e||{},this.objectMode=!!e.objectMode,t instanceof o&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,u=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var l=!1===e.decodeStrings;this.decodeStrings=!l,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,i=n.sync,s=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,i,s){--t.pendingcb,n?r(_,e,t,s,i):_(e,t,s,i);e._writableState.errorEmitted=!0,e.emit("error",i)}(e,n,i,t,s);else{var o=T(n);o||n.corked||n.bufferProcessing||!n.bufferedRequest||b(e,n),i?a(v,e,n,o,s):v(e,n,o,s)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new s(this)}function y(e){if(o=o||n(81369),!p.call(y,this)&&!(this instanceof o))return new y(e);this._writableState=new f(e,this),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),c.call(this)}function g(e,t,n,i,r,s,o){t.writelen=i,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(r,t.onwrite):e._write(r,s,t.onwrite),t.sync=!1}function _(e,t,n,i){n(i),k(e,t)}function v(e,t,n,i){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,i(),k(e,t)}function b(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var i=t.bufferedRequestCount,r=new Array(i),o=t.corkedRequestsFree;o.entry=n;for(var a=0,u=!0;n;)r[a]=n,n.isBuf||(u=!1),n=n.next,a+=1;r.allBuffers=u,g(e,t,!0,t.length,r,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t)}else{for(;n;){var l=n.chunk,c=n.encoding,h=n.callback;if(g(e,t,!1,t.objectMode?1:l.length,l,c,h),n=n.next,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequestCount=0,t.bufferedRequest=n,t.bufferProcessing=!1}function T(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function w(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),k(e,t)}))}function k(e,t){var n=T(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"===typeof e._final?(t.pendingcb++,t.finalCalled=!0,r(w,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}function S(e,t,n){var i=e.entry;for(e.entry=null;i;){var r=i.callback;t.pendingcb--,r(n),i=i.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}u.inherits(y,c),f.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(f.prototype,"buffer",{get:l.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(y,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||e&&e._writableState instanceof f}})):p=function(e){return e instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(e,t,n){var i,s=this._writableState,o=!1,a=(i=e,("[object Uint8Array]"===Object.prototype.toString.call(i)||h.isBuffer(i))&&!s.objectMode);return a&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"===typeof t&&(n=t,t=null),a?t="buffer":t||(t=s.defaultEncoding),"function"!==typeof n&&(n=m),s.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),r(t,n)}(this,n):(a||function(e,t,n,i){var s=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):"string"===typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),r(i,o),s=!1),s}(this,s,e,n))&&(s.pendingcb++,o=function(e,t,n,i,r,s){if(!n){var o=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=h.from(t,n));return t}(t,i,r);i!==o&&(n=!0,r="buffer",i=o)}var a=t.objectMode?1:i.length;t.length+=a;var u=t.length<t.highWaterMark;u||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:i,encoding:r,isBuf:n,callback:s,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else g(e,t,!1,a,i,r,s);return u}(this,s,a,e,t,n)),o},y.prototype.cork=function(){this._writableState.corked++},y.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||b(this,e))},y.prototype.setDefaultEncoding=function(e){if("string"===typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},y.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(e,t,n){var i=this._writableState;"function"===typeof e?(n=e,e=null,t=null):"function"===typeof t&&(n=t,t=null),null!==e&&void 0!==e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||function(e,t,n){t.ending=!0,k(e,t),n&&(t.finished?r(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,i,n)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),y.prototype.destroy=d.destroy,y.prototype._undestroy=d.undestroy,y.prototype._destroy=function(e,t){this.end(),t(e)}},46751:(e,t,n)=>{"use strict";var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}();var r=n(94620).Buffer;e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return i(e,[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,i,s=r.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,n=s,i=a,t.copy(n,i),a+=o.data.length,o=o.next;return s}}]),e}()},80871:(e,t,n)=>{"use strict";var i=n(92558);function r(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,s=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;s||o?t?t(e):!e||this._writableState&&this._writableState.errorEmitted||i(r,this,e):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(i(r,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})))},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},752:(e,t,n)=>{e.exports=n(28981).EventEmitter},18772:(e,t,n)=>{(t=e.exports=n(58383)).Stream=t,t.Readable=t,t.Writable=n(69123),t.Duplex=n(81369),t.Transform=n(3439),t.PassThrough=n(57325)},94620:(e,t,n)=>{var i=n(93325),r=i.Buffer;function s(e,t){for(var n in e)t[n]=e[n]}function o(e,t,n){return r(e,t,n)}r.from&&r.alloc&&r.allocUnsafe&&r.allocUnsafeSlow?e.exports=i:(s(i,t),t.Buffer=o),s(r,o),o.from=function(e,t,n){if("number"===typeof e)throw new TypeError("Argument must not be a number");return r(e,t,n)},o.alloc=function(e,t,n){if("number"!==typeof e)throw new TypeError("Argument must be a number");var i=r(e);return void 0!==t?"string"===typeof n?i.fill(t,n):i.fill(t):i.fill(0),i},o.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return r(e)},o.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i.SlowBuffer(e)}},98896:(e,t,n)=>{"use strict";var i=n(94620).Buffer,r=i.isEncoding||function(e){switch((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 s(e){var t;switch(this.encoding=function(e){var t=function(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}}(e);if("string"!==typeof t&&(i.isEncoding===r||!r(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=u,this.end=l,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=c,this.end=h,t=3;break;default:return this.write=p,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=i.allocUnsafe(t)}function o(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:-1}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd".repeat(n);if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd".repeat(n+1);if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd".repeat(n+2)}}(this,e,t);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function u(e,t){if((e.length-t)%2===0){var n=e.toString("utf16le",t);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=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 l(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 c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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 p(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}t.I=s,s.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))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||""},s.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\ufffd".repeat(this.lastTotal-this.lastNeed):t},s.prototype.text=function(e,t){var n=function(e,t,n){var i=t.length-1;if(i<n)return 0;var r=o(t[i]);if(r>=0)return r>0&&(e.lastNeed=r-1),r;if(--i<n)return 0;if(r=o(t[i]),r>=0)return r>0&&(e.lastNeed=r-2),r;if(--i<n)return 0;if(r=o(t[i]),r>=0)return r>0&&(2===r?r=0:e.lastNeed=r-3),r;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var i=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)},s.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}},81807:e=>{var t=0,n=-3;function i(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function r(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 s=new i,o=new i,a=new Uint8Array(30),u=new Uint16Array(30),l=new Uint8Array(30),c=new Uint16Array(30),h=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),p=new i,d=new Uint8Array(320);function m(e,t,n,i){var r,s;for(r=0;r<n;++r)e[r]=0;for(r=0;r<30-n;++r)e[r+n]=r/n|0;for(s=i,r=0;r<30;++r)t[r]=s,s+=1<<e[r]}var f=new Uint16Array(16);function y(e,t,n,i){var r,s;for(r=0;r<16;++r)e.table[r]=0;for(r=0;r<i;++r)e.table[t[n+r]]++;for(e.table[0]=0,s=0,r=0;r<16;++r)f[r]=s,s+=e.table[r];for(r=0;r<i;++r)t[n+r]&&(e.trans[f[t[n+r]]++]=r)}function g(e){e.bitcount--||(e.tag=e.source[e.sourceIndex++],e.bitcount=7);var t=1&e.tag;return e.tag>>>=1,t}function _(e,t,n){if(!t)return n;for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var i=e.tag&65535>>>16-t;return e.tag>>>=t,e.bitcount-=t,i+n}function v(e,t){for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var n=0,i=0,r=0,s=e.tag;do{i=2*i+(1&s),s>>>=1,++r,n+=t.table[r],i-=t.table[r]}while(i>=0);return e.tag=s,e.bitcount-=r,t.trans[n+i]}function b(e,t,n){var i,r,s,o,a,u;for(i=_(e,5,257),r=_(e,5,1),s=_(e,4,4),o=0;o<19;++o)d[o]=0;for(o=0;o<s;++o){var l=_(e,3,0);d[h[o]]=l}for(y(p,d,0,19),a=0;a<i+r;){var c=v(e,p);switch(c){case 16:var m=d[a-1];for(u=_(e,2,3);u;--u)d[a++]=m;break;case 17:for(u=_(e,3,3);u;--u)d[a++]=0;break;case 18:for(u=_(e,7,11);u;--u)d[a++]=0;break;default:d[a++]=c}}y(t,d,0,i),y(n,d,i,r)}function T(e,n,i){for(;;){var r,s,o,h,p=v(e,n);if(256===p)return t;if(p<256)e.dest[e.destLen++]=p;else for(r=_(e,a[p-=257],u[p]),s=v(e,i),h=o=e.destLen-_(e,l[s],c[s]);h<o+r;++h)e.dest[e.destLen++]=e.dest[h]}}function w(e){for(var i,r;e.bitcount>8;)e.sourceIndex--,e.bitcount-=8;if((i=256*(i=e.source[e.sourceIndex+1])+e.source[e.sourceIndex])!==(65535&~(256*e.source[e.sourceIndex+3]+e.source[e.sourceIndex+2])))return n;for(e.sourceIndex+=4,r=i;r;--r)e.dest[e.destLen++]=e.source[e.sourceIndex++];return e.bitcount=0,t}!function(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}(s,o),m(a,u,4,3),m(l,c,2,1),a[28]=0,u[28]=258,e.exports=function(e,i){var a,u,l=new r(e,i);do{switch(a=g(l),_(l,2,0)){case 0:u=w(l);break;case 1:u=T(l,s,o);break;case 2:b(l,l.ltree,l.dtree),u=T(l,l.ltree,l.dtree);break;default:u=n}if(u!==t)throw new Error("Data error")}while(!a);return l.destLen<l.dest.length?"function"===typeof l.dest.slice?l.dest.slice(0,l.destLen):l.dest.subarray(0,l.destLen):l.dest}},18985:(e,t,n)=>{var i,r;r=n(81807),i=function(){function e(e){var t,n,i;(t="function"===typeof e.readUInt32BE&&"function"===typeof e.slice)||e instanceof Uint8Array?(t?(this.highStart=e.readUInt32BE(0),this.errorValue=e.readUInt32BE(4),n=e.readUInt32BE(8),e=e.slice(12)):(i=new DataView(e.buffer),this.highStart=i.getUint32(0),this.errorValue=i.getUint32(4),n=i.getUint32(8),e=e.subarray(12)),e=r(e,new Uint8Array(n)),e=r(e,new Uint8Array(n)),this.data=new Uint32Array(e.buffer)):(this.data=e.data,this.highStart=e.highStart,this.errorValue=e.errorValue)}return 11,5,6,32,64,63,2,32,31,2048,32,2080,2080,32,2112,4,e.prototype.get=function(e){var t;return e<0||e>1114111?this.errorValue:e<55296||e>56319&&e<=65535?(t=(this.data[e>>5]<<2)+(31&e),this.data[t]):e<=65535?(t=(this.data[2048+(e-55296>>5)]<<2)+(31&e),this.data[t]):e<this.highStart?(t=this.data[2080+(e>>11)],t=((t=this.data[t+(e>>5&63)])<<2)+(31&e),this.data[t]):this.data[this.data.length-4]},e}(),e.exports=i},12388:function(e,t,n){var i,r;!function(s,o){"use strict";e.exports?e.exports=o():void 0===(r="function"===typeof(i=o)?i.call(t,n,t,e):i)||(e.exports=r)}(0,(function(e){"use strict";var t=e&&e.IPv6;return{best:function(e){var t,n,i=e.toLowerCase().split(":"),r=i.length,s=8;for(""===i[0]&&""===i[1]&&""===i[2]?(i.shift(),i.shift()):""===i[0]&&""===i[1]?i.shift():""===i[r-1]&&""===i[r-2]&&i.pop(),-1!==i[(r=i.length)-1].indexOf(".")&&(s=7),t=0;t<r&&""!==i[t];t++);if(t<s)for(i.splice(t,1,"0000");i.length<s;)i.splice(t,0,"0000");for(var o=0;o<s;o++){n=i[o].split("");for(var a=0;a<3&&("0"===n[0]&&n.length>1);a++)n.splice(0,1);i[o]=n.join("")}var u=-1,l=0,c=0,h=-1,p=!1;for(o=0;o<s;o++)p?"0"===i[o]?c+=1:(p=!1,c>l&&(u=h,l=c)):"0"===i[o]&&(p=!0,h=o,c=1);c>l&&(u=h,l=c),l>1&&i.splice(u,l,""),r=i.length;var d="";for(""===i[0]&&(d=":"),o=0;o<r&&(d+=i[o],o!==r-1);o++)d+=":";return""===i[r-1]&&(d+=":"),d},noConflict:function(){return e.IPv6===this&&(e.IPv6=t),this}}}))},92734:function(e,t,n){var i,r;!function(s,o){"use strict";e.exports?e.exports=o():void 0===(r="function"===typeof(i=o)?i.call(t,n,t,e):i)||(e.exports=r)}(0,(function(e){"use strict";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 i=e.lastIndexOf(".",t-1);if(i<=0||i>=t-1)return!1;var r=n.list[e.slice(t+1)];return!!r&&r.indexOf(" "+e.slice(i+1,t)+" ")>=0},is:function(e){var t=e.lastIndexOf(".");if(t<=0||t>=e.length-1)return!1;if(e.lastIndexOf(".",t-1)>=0)return!1;var i=n.list[e.slice(t+1)];return!!i&&i.indexOf(" "+e.slice(0,t)+" ")>=0},get:function(e){var t=e.lastIndexOf(".");if(t<=0||t>=e.length-1)return null;var i=e.lastIndexOf(".",t-1);if(i<=0||i>=t-1)return null;var r=n.list[e.slice(t+1)];return r?r.indexOf(" "+e.slice(i+1,t)+" ")<0?null:e.slice(i+1):null},noConflict:function(){return e.SecondLevelDomains===this&&(e.SecondLevelDomains=t),this}};return n}))},64639:function(e,t,n){var i,r,s;!function(o,a){"use strict";e.exports?e.exports=a(n(69678),n(12388),n(92734)):(r=[n(69678),n(12388),n(92734)],void 0===(s="function"===typeof(i=a)?i.apply(t,r):i)||(e.exports=s))}(0,(function(e,t,n,i){"use strict";var r=i&&i.URI;function s(e,t){var n=arguments.length>=1;if(!(this instanceof s))return n?arguments.length>=2?new s(e,t):new s(e):new s;if(void 0===e){if(n)throw new TypeError("undefined is not a valid argument for URI");e="undefined"!==typeof location?location.href+"":""}if(null===e&&n)throw new TypeError("null is not a valid argument for URI");return this.href(e),void 0!==t?this.absoluteTo(t):this}s.version="1.19.11";var o=s.prototype,a=Object.prototype.hasOwnProperty;function u(e){return e.replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")}function l(e){return void 0===e?"Undefined":String(Object.prototype.toString.call(e)).slice(8,-1)}function c(e){return"Array"===l(e)}function h(e,t){var n,i,r={};if("RegExp"===l(t))r=null;else if(c(t))for(n=0,i=t.length;n<i;n++)r[t[n]]=!0;else r[t]=!0;for(n=0,i=e.length;n<i;n++){(r&&void 0!==r[e[n]]||!r&&t.test(e[n]))&&(e.splice(n,1),i--,n--)}return e}function p(e,t){var n,i;if(c(t)){for(n=0,i=t.length;n<i;n++)if(!p(e,t[n]))return!1;return!0}var r=l(t);for(n=0,i=e.length;n<i;n++)if("RegExp"===r){if("string"===typeof e[n]&&e[n].match(t))return!0}else if(e[n]===t)return!0;return!1}function d(e,t){if(!c(e)||!c(t))return!1;if(e.length!==t.length)return!1;e.sort(),t.sort();for(var n=0,i=e.length;n<i;n++)if(e[n]!==t[n])return!1;return!0}function m(e){return e.replace(/^\/+|\/+$/g,"")}function f(e){return escape(e)}function y(e){return encodeURIComponent(e).replace(/[!'()*]/g,f).replace(/\*/g,"%2A")}s._parts=function(){return{protocol:null,username:null,password:null,hostname:null,urn:null,port:null,path:null,query:null,fragment:null,preventInvalidHostname:s.preventInvalidHostname,duplicateQueryParameters:s.duplicateQueryParameters,escapeQuerySpace:s.escapeQuerySpace}},s.preventInvalidHostname=!1,s.duplicateQueryParameters=!1,s.escapeQuerySpace=!0,s.protocol_expression=/^[a-z][a-z0-9.+-]*$/i,s.idn_expression=/[^a-z0-9\._-]/i,s.punycode_expression=/(xn--)/i,s.ip4_expression=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,s.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*$/,s.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`!()\[\]{};:'".,<>?\xab\xbb\u201c\u201d\u2018\u2019]))/gi,s.findUri={start:/\b(?:([a-z][a-z0-9.+-]*:\/\/)|www\.)/gi,end:/[\s\r\n]|$/,trim:/[`!()\[\]{};:'".,<>?\xab\xbb\u201c\u201d\u201e\u2018\u2019]+$/,parens:/(\([^\)]*\)|\[[^\]]*\]|\{[^}]*\}|<[^>]*>)/g},s.leading_whitespace_expression=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,s.ascii_tab_whitespace=/[\u0009\u000A\u000D]+/g,s.defaultPorts={http:"80",https:"443",ftp:"21",gopher:"70",ws:"80",wss:"443"},s.hostProtocols=["http","https"],s.invalid_hostname_characters=/[^a-zA-Z0-9\.\-:_]/,s.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"},s.getDomAttribute=function(e){if(e&&e.nodeName){var t=e.nodeName.toLowerCase();if("input"!==t||"image"===e.type)return s.domAttributes[t]}},s.encode=y,s.decode=decodeURIComponent,s.iso8859=function(){s.encode=escape,s.decode=unescape},s.unicode=function(){s.encode=y,s.decode=decodeURIComponent},s.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"}}}},s.encodeQuery=function(e,t){var n=s.encode(e+"");return void 0===t&&(t=s.escapeQuerySpace),t?n.replace(/%20/g,"+"):n},s.decodeQuery=function(e,t){e+="",void 0===t&&(t=s.escapeQuerySpace);try{return s.decode(t?e.replace(/\+/g,"%20"):e)}catch(n){return e}};var g,_={encode:"encode",decode:"decode"},v=function(e,t){return function(n){try{return s[t](n+"").replace(s.characters[e][t].expression,(function(n){return s.characters[e][t].map[n]}))}catch(i){return n}}};for(g in _)s[g+"PathSegment"]=v("pathname",_[g]),s[g+"UrnPathSegment"]=v("urnpath",_[g]);var b=function(e,t,n){return function(i){var r;r=n?function(e){return s[t](s[n](e))}:s[t];for(var o=(i+"").split(e),a=0,u=o.length;a<u;a++)o[a]=r(o[a]);return o.join(e)}};function T(e){return function(t,n){return void 0===t?this._parts[e]||"":(this._parts[e]=t||null,this.build(!n),this)}}function w(e,t){return function(n,i){return void 0===n?this._parts[e]||"":(null!==n&&(n+="").charAt(0)===t&&(n=n.substring(1)),this._parts[e]=n,this.build(!i),this)}}s.decodePath=b("/","decodePathSegment"),s.decodeUrnPath=b(":","decodeUrnPathSegment"),s.recodePath=b("/","encodePathSegment","decode"),s.recodeUrnPath=b(":","encodeUrnPathSegment","decode"),s.encodeReserved=v("reserved","encode"),s.parse=function(e,t){var n;return t||(t={preventInvalidHostname:s.preventInvalidHostname}),(n=(e=(e=e.replace(s.leading_whitespace_expression,"")).replace(s.ascii_tab_whitespace,"")).indexOf("#"))>-1&&(t.fragment=e.substring(n+1)||null,e=e.substring(0,n)),(n=e.indexOf("?"))>-1&&(t.query=e.substring(n+1)||null,e=e.substring(0,n)),"//"===(e=(e=e.replace(/^(https?|ftp|wss?)?:+[/\\]*/i,"$1://")).replace(/^[/\\]{2,}/i,"//")).substring(0,2)?(t.protocol=null,e=e.substring(2),e=s.parseAuthority(e,t)):(n=e.indexOf(":"))>-1&&(t.protocol=e.substring(0,n)||null,t.protocol&&!t.protocol.match(s.protocol_expression)?t.protocol=void 0:"//"===e.substring(n+1,n+3).replace(/\\/g,"/")?(e=e.substring(n+3),e=s.parseAuthority(e,t)):(e=e.substring(n+1),t.urn=!0)),t.path=e,t},s.parseHost=function(e,t){e||(e="");var n,i,r=(e=e.replace(/\\/g,"/")).indexOf("/");if(-1===r&&(r=e.length),"["===e.charAt(0))n=e.indexOf("]"),t.hostname=e.substring(1,n)||null,t.port=e.substring(n+2,r)||null,"/"===t.port&&(t.port=null);else{var o=e.indexOf(":"),a=e.indexOf("/"),u=e.indexOf(":",o+1);-1!==u&&(-1===a||u<a)?(t.hostname=e.substring(0,r)||null,t.port=null):(i=e.substring(0,r).split(":"),t.hostname=i[0]||null,t.port=i[1]||null)}return t.hostname&&"/"!==e.substring(r).charAt(0)&&(r++,e="/"+e),t.preventInvalidHostname&&s.ensureValidHostname(t.hostname,t.protocol),t.port&&s.ensureValidPort(t.port),e.substring(r)||"/"},s.parseAuthority=function(e,t){return e=s.parseUserinfo(e,t),s.parseHost(e,t)},s.parseUserinfo=function(e,t){var n=e;-1!==e.indexOf("\\")&&(e=e.replace(/\\/g,"/"));var i,r=e.indexOf("/"),o=e.lastIndexOf("@",r>-1?r:e.length-1);return o>-1&&(-1===r||o<r)?(i=e.substring(0,o).split(":"),t.username=i[0]?s.decode(i[0]):null,i.shift(),t.password=i[0]?s.decode(i.join(":")):null,e=n.substring(o+1)):(t.username=null,t.password=null),e},s.parseQuery=function(e,t){if(!e)return{};if(!(e=e.replace(/&+/g,"&").replace(/^\?*&*|&+$/g,"")))return{};for(var n,i,r,o={},u=e.split("&"),l=u.length,c=0;c<l;c++)n=u[c].split("="),i=s.decodeQuery(n.shift(),t),r=n.length?s.decodeQuery(n.join("="),t):null,"__proto__"!==i&&(a.call(o,i)?("string"!==typeof o[i]&&null!==o[i]||(o[i]=[o[i]]),o[i].push(r)):o[i]=r);return o},s.build=function(e){var t="",n=!1;return e.protocol&&(t+=e.protocol+":"),e.urn||!t&&!e.hostname||(t+="//",n=!0),t+=s.buildAuthority(e)||"","string"===typeof e.path&&("/"!==e.path.charAt(0)&&n&&(t+="/"),t+=e.path),"string"===typeof e.query&&e.query&&(t+="?"+e.query),"string"===typeof e.fragment&&e.fragment&&(t+="#"+e.fragment),t},s.buildHost=function(e){var t="";return e.hostname?(s.ip6_expression.test(e.hostname)?t+="["+e.hostname+"]":t+=e.hostname,e.port&&(t+=":"+e.port),t):""},s.buildAuthority=function(e){return s.buildUserinfo(e)+s.buildHost(e)},s.buildUserinfo=function(e){var t="";return e.username&&(t+=s.encode(e.username)),e.password&&(t+=":"+s.encode(e.password)),t&&(t+="@"),t},s.buildQuery=function(e,t,n){var i,r,o,u,l="";for(r in e)if("__proto__"!==r&&a.call(e,r))if(c(e[r]))for(i={},o=0,u=e[r].length;o<u;o++)void 0!==e[r][o]&&void 0===i[e[r][o]+""]&&(l+="&"+s.buildQueryParameter(r,e[r][o],n),!0!==t&&(i[e[r][o]+""]=!0));else void 0!==e[r]&&(l+="&"+s.buildQueryParameter(r,e[r],n));return l.substring(1)},s.buildQueryParameter=function(e,t,n){return s.encodeQuery(e,n)+(null!==t?"="+s.encodeQuery(t,n):"")},s.addQuery=function(e,t,n){if("object"===typeof t)for(var i in t)a.call(t,i)&&s.addQuery(e,i,t[i]);else{if("string"!==typeof t)throw new TypeError("URI.addQuery() accepts an object, string as the name parameter");if(void 0===e[t])return void(e[t]=n);"string"===typeof e[t]&&(e[t]=[e[t]]),c(n)||(n=[n]),e[t]=(e[t]||[]).concat(n)}},s.setQuery=function(e,t,n){if("object"===typeof t)for(var i in t)a.call(t,i)&&s.setQuery(e,i,t[i]);else{if("string"!==typeof t)throw new TypeError("URI.setQuery() accepts an object, string as the name parameter");e[t]=void 0===n?null:n}},s.removeQuery=function(e,t,n){var i,r,o;if(c(t))for(i=0,r=t.length;i<r;i++)e[t[i]]=void 0;else if("RegExp"===l(t))for(o in e)t.test(o)&&(e[o]=void 0);else if("object"===typeof t)for(o in t)a.call(t,o)&&s.removeQuery(e,o,t[o]);else{if("string"!==typeof t)throw new TypeError("URI.removeQuery() accepts an object, string, RegExp as the first parameter");void 0!==n?"RegExp"===l(n)?!c(e[t])&&n.test(e[t])?e[t]=void 0:e[t]=h(e[t],n):e[t]!==String(n)||c(n)&&1!==n.length?c(e[t])&&(e[t]=h(e[t],n)):e[t]=void 0:e[t]=void 0}},s.hasQuery=function(e,t,n,i){switch(l(t)){case"String":break;case"RegExp":for(var r in e)if(a.call(e,r)&&t.test(r)&&(void 0===n||s.hasQuery(e,r,n)))return!0;return!1;case"Object":for(var o in t)if(a.call(t,o)&&!s.hasQuery(e,o,t[o]))return!1;return!0;default:throw new TypeError("URI.hasQuery() accepts a string, regular expression or object as the name parameter")}switch(l(n)){case"Undefined":return t in e;case"Boolean":return n===Boolean(c(e[t])?e[t].length:e[t]);case"Function":return!!n(e[t],t,e);case"Array":return!!c(e[t])&&(i?p:d)(e[t],n);case"RegExp":return c(e[t])?!!i&&p(e[t],n):Boolean(e[t]&&e[t].match(n));case"Number":n=String(n);case"String":return c(e[t])?!!i&&p(e[t],n):e[t]===n;default:throw new TypeError("URI.hasQuery() accepts undefined, boolean, string, number, RegExp, Function as the value parameter")}},s.joinPaths=function(){for(var e=[],t=[],n=0,i=0;i<arguments.length;i++){var r=new s(arguments[i]);e.push(r);for(var o=r.segment(),a=0;a<o.length;a++)"string"===typeof o[a]&&t.push(o[a]),o[a]&&n++}if(!t.length||!n)return new s("");var u=new s("").segment(t);return""!==e[0].path()&&"/"!==e[0].path().slice(0,1)||u.path("/"+u.path()),u.normalize()},s.commonPath=function(e,t){var n,i=Math.min(e.length,t.length);for(n=0;n<i;n++)if(e.charAt(n)!==t.charAt(n)){n--;break}return n<1?e.charAt(0)===t.charAt(0)&&"/"===e.charAt(0)?"/":"":("/"===e.charAt(n)&&"/"===t.charAt(n)||(n=e.substring(0,n).lastIndexOf("/")),e.substring(0,n+1))},s.withinString=function(e,t,n){n||(n={});var i=n.start||s.findUri.start,r=n.end||s.findUri.end,o=n.trim||s.findUri.trim,a=n.parens||s.findUri.parens,u=/[a-z0-9-]=["']?$/i;for(i.lastIndex=0;;){var l=i.exec(e);if(!l)break;var c=l.index;if(n.ignoreHtml){var h=e.slice(Math.max(c-3,0),c);if(h&&u.test(h))continue}for(var p=c+e.slice(c).search(r),d=e.slice(c,p),m=-1;;){var f=a.exec(d);if(!f)break;var y=f.index+f[0].length;m=Math.max(m,y)}if(!((d=m>-1?d.slice(0,m)+d.slice(m).replace(o,""):d.replace(o,"")).length<=l[0].length)&&(!n.ignore||!n.ignore.test(d))){var g=t(d,c,p=c+d.length,e);void 0!==g?(g=String(g),e=e.slice(0,c)+g+e.slice(p),i.lastIndex=c+g.length):i.lastIndex=p}}return i.lastIndex=0,e},s.ensureValidHostname=function(t,n){var i=!!t,r=!1;if(!!n&&(r=p(s.hostProtocols,n)),r&&!i)throw new TypeError("Hostname cannot be empty, if protocol is "+n);if(t&&t.match(s.invalid_hostname_characters)){if(!e)throw new TypeError('Hostname "'+t+'" contains characters other than [A-Z0-9.-:_] and Punycode.js is not available');if(e.toASCII(t).match(s.invalid_hostname_characters))throw new TypeError('Hostname "'+t+'" contains characters other than [A-Z0-9.-:_]')}},s.ensureValidPort=function(e){if(e){var t=Number(e);if(!(/^[0-9]+$/.test(t)&&t>0&&t<65536))throw new TypeError('Port "'+e+'" is not a valid port')}},s.noConflict=function(e){if(e){var t={URI:this.noConflict()};return i.URITemplate&&"function"===typeof i.URITemplate.noConflict&&(t.URITemplate=i.URITemplate.noConflict()),i.IPv6&&"function"===typeof i.IPv6.noConflict&&(t.IPv6=i.IPv6.noConflict()),i.SecondLevelDomains&&"function"===typeof i.SecondLevelDomains.noConflict&&(t.SecondLevelDomains=i.SecondLevelDomains.noConflict()),t}return i.URI===this&&(i.URI=r),this},o.build=function(e){return!0===e?this._deferred_build=!0:(void 0===e||this._deferred_build)&&(this._string=s.build(this._parts),this._deferred_build=!1),this},o.clone=function(){return new s(this)},o.valueOf=o.toString=function(){return this.build(!1)._string},o.protocol=T("protocol"),o.username=T("username"),o.password=T("password"),o.hostname=T("hostname"),o.port=T("port"),o.query=w("query","?"),o.fragment=w("fragment","#"),o.search=function(e,t){var n=this.query(e,t);return"string"===typeof n&&n.length?"?"+n:n},o.hash=function(e,t){var n=this.fragment(e,t);return"string"===typeof n&&n.length?"#"+n:n},o.pathname=function(e,t){if(void 0===e||!0===e){var n=this._parts.path||(this._parts.hostname?"/":"");return e?(this._parts.urn?s.decodeUrnPath:s.decodePath)(n):n}return this._parts.urn?this._parts.path=e?s.recodeUrnPath(e):"":this._parts.path=e?s.recodePath(e):"/",this.build(!t),this},o.path=o.pathname,o.href=function(e,t){var n;if(void 0===e)return this.toString();this._string="",this._parts=s._parts();var i=e instanceof s,r="object"===typeof e&&(e.hostname||e.path||e.pathname);e.nodeName&&(e=e[s.getDomAttribute(e)]||"",r=!1);if(!i&&r&&void 0!==e.pathname&&(e=e.toString()),"string"===typeof e||e instanceof String)this._parts=s.parse(String(e),this._parts);else{if(!i&&!r)throw new TypeError("invalid input");var o=i?e._parts:e;for(n in o)"query"!==n&&a.call(this._parts,n)&&(this._parts[n]=o[n]);o.query&&this.query(o.query,!1)}return this.build(!t),this},o.is=function(e){var t=!1,i=!1,r=!1,o=!1,a=!1,u=!1,l=!1,c=!this._parts.urn;switch(this._parts.hostname&&(c=!1,i=s.ip4_expression.test(this._parts.hostname),r=s.ip6_expression.test(this._parts.hostname),a=(o=!(t=i||r))&&n&&n.has(this._parts.hostname),u=o&&s.idn_expression.test(this._parts.hostname),l=o&&s.punycode_expression.test(this._parts.hostname)),e.toLowerCase()){case"relative":return c;case"absolute":return!c;case"domain":case"name":return o;case"sld":return a;case"ip":return t;case"ip4":case"ipv4":case"inet4":return i;case"ip6":case"ipv6":case"inet6":return r;case"idn":return u;case"url":return!this._parts.urn;case"urn":return!!this._parts.urn;case"punycode":return l}return null};var k=o.protocol,S=o.port,L=o.hostname;o.protocol=function(e,t){if(e&&!(e=e.replace(/:(\/\/)?$/,"")).match(s.protocol_expression))throw new TypeError('Protocol "'+e+"\" contains characters other than [A-Z0-9.+-] or doesn't start with [A-Z]");return k.call(this,e,t)},o.scheme=o.protocol,o.port=function(e,t){return this._parts.urn?void 0===e?"":this:(void 0!==e&&(0===e&&(e=null),e&&(":"===(e+="").charAt(0)&&(e=e.substring(1)),s.ensureValidPort(e))),S.call(this,e,t))},o.hostname=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0!==e){var n={preventInvalidHostname:this._parts.preventInvalidHostname};if("/"!==s.parseHost(e,n))throw new TypeError('Hostname "'+e+'" contains characters other than [A-Z0-9.-]');e=n.hostname,this._parts.preventInvalidHostname&&s.ensureValidHostname(e,this._parts.protocol)}return L.call(this,e,t)},o.origin=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e){var n=this.protocol();return this.authority()?(n?n+"://":"")+this.authority():""}var i=s(e);return this.protocol(i.protocol()).authority(i.authority()).build(!t),this},o.host=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e)return this._parts.hostname?s.buildHost(this._parts):"";if("/"!==s.parseHost(e,this._parts))throw new TypeError('Hostname "'+e+'" contains characters other than [A-Z0-9.-]');return this.build(!t),this},o.authority=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e)return this._parts.hostname?s.buildAuthority(this._parts):"";if("/"!==s.parseAuthority(e,this._parts))throw new TypeError('Hostname "'+e+'" contains characters other than [A-Z0-9.-]');return this.build(!t),this},o.userinfo=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e){var n=s.buildUserinfo(this._parts);return n?n.substring(0,n.length-1):n}return"@"!==e[e.length-1]&&(e+="@"),s.parseUserinfo(e,this._parts),this.build(!t),this},o.resource=function(e,t){var n;return void 0===e?this.path()+this.search()+this.hash():(n=s.parse(e),this._parts.path=n.path,this._parts.query=n.query,this._parts.fragment=n.fragment,this.build(!t),this)},o.subdomain=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e){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)||""}var i=this._parts.hostname.length-this.domain().length,r=this._parts.hostname.substring(0,i),o=new RegExp("^"+u(r));if(e&&"."!==e.charAt(e.length-1)&&(e+="."),-1!==e.indexOf(":"))throw new TypeError("Domains cannot contain colons");return e&&s.ensureValidHostname(e,this._parts.protocol),this._parts.hostname=this._parts.hostname.replace(o,e),this.build(!t),this},o.domain=function(e,t){if(this._parts.urn)return void 0===e?"":this;if("boolean"===typeof e&&(t=e,e=void 0),void 0===e){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 i=this._parts.hostname.length-this.tld(t).length-1;return i=this._parts.hostname.lastIndexOf(".",i-1)+1,this._parts.hostname.substring(i)||""}if(!e)throw new TypeError("cannot set domain empty");if(-1!==e.indexOf(":"))throw new TypeError("Domains cannot contain colons");if(s.ensureValidHostname(e,this._parts.protocol),!this._parts.hostname||this.is("IP"))this._parts.hostname=e;else{var r=new RegExp(u(this.domain())+"$");this._parts.hostname=this._parts.hostname.replace(r,e)}return this.build(!t),this},o.tld=function(e,t){if(this._parts.urn)return void 0===e?"":this;if("boolean"===typeof e&&(t=e,e=void 0),void 0===e){if(!this._parts.hostname||this.is("IP"))return"";var i=this._parts.hostname.lastIndexOf("."),r=this._parts.hostname.substring(i+1);return!0!==t&&n&&n.list[r.toLowerCase()]&&n.get(this._parts.hostname)||r}var s;if(!e)throw new TypeError("cannot set TLD empty");if(e.match(/[^a-zA-Z0-9-]/)){if(!n||!n.is(e))throw new TypeError('TLD "'+e+'" contains characters other than [A-Z0-9]');s=new RegExp(u(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(s,e)}else{if(!this._parts.hostname||this.is("IP"))throw new ReferenceError("cannot set TLD on non-domain host");s=new RegExp(u(this.tld())+"$"),this._parts.hostname=this._parts.hostname.replace(s,e)}return this.build(!t),this},o.directory=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e||!0===e){if(!this._parts.path&&!this._parts.hostname)return"";if("/"===this._parts.path)return"/";var n=this._parts.path.length-this.filename().length-1,i=this._parts.path.substring(0,n)||(this._parts.hostname?"/":"");return e?s.decodePath(i):i}var r=this._parts.path.length-this.filename().length,o=this._parts.path.substring(0,r),a=new RegExp("^"+u(o));return this.is("relative")||(e||(e="/"),"/"!==e.charAt(0)&&(e="/"+e)),e&&"/"!==e.charAt(e.length-1)&&(e+="/"),e=s.recodePath(e),this._parts.path=this._parts.path.replace(a,e),this.build(!t),this},o.filename=function(e,t){if(this._parts.urn)return void 0===e?"":this;if("string"!==typeof e){if(!this._parts.path||"/"===this._parts.path)return"";var n=this._parts.path.lastIndexOf("/"),i=this._parts.path.substring(n+1);return e?s.decodePathSegment(i):i}var r=!1;"/"===e.charAt(0)&&(e=e.substring(1)),e.match(/\.?\//)&&(r=!0);var o=new RegExp(u(this.filename())+"$");return e=s.recodePath(e),this._parts.path=this._parts.path.replace(o,e),r?this.normalizePath(t):this.build(!t),this},o.suffix=function(e,t){if(this._parts.urn)return void 0===e?"":this;if(void 0===e||!0===e){if(!this._parts.path||"/"===this._parts.path)return"";var n,i,r=this.filename(),o=r.lastIndexOf(".");return-1===o?"":(n=r.substring(o+1),i=/^[a-z0-9%]+$/i.test(n)?n:"",e?s.decodePathSegment(i):i)}"."===e.charAt(0)&&(e=e.substring(1));var a,l=this.suffix();if(l)a=e?new RegExp(u(l)+"$"):new RegExp(u("."+l)+"$");else{if(!e)return this;this._parts.path+="."+s.recodePath(e)}return a&&(e=s.recodePath(e),this._parts.path=this._parts.path.replace(a,e)),this.build(!t),this},o.segment=function(e,t,n){var i=this._parts.urn?":":"/",r=this.path(),s="/"===r.substring(0,1),o=r.split(i);if(void 0!==e&&"number"!==typeof e&&(n=t,t=e,e=void 0),void 0!==e&&"number"!==typeof e)throw new Error('Bad segment "'+e+'", must be 0-based integer');if(s&&o.shift(),e<0&&(e=Math.max(o.length+e,0)),void 0===t)return void 0===e?o:o[e];if(null===e||void 0===o[e])if(c(t)){o=[];for(var a=0,u=t.length;a<u;a++)(t[a].length||o.length&&o[o.length-1].length)&&(o.length&&!o[o.length-1].length&&o.pop(),o.push(m(t[a])))}else(t||"string"===typeof t)&&(t=m(t),""===o[o.length-1]?o[o.length-1]=t:o.push(t));else t?o[e]=m(t):o.splice(e,1);return s&&o.unshift(""),this.path(o.join(i),n)},o.segmentCoded=function(e,t,n){var i,r,o;if("number"!==typeof e&&(n=t,t=e,e=void 0),void 0===t){if(c(i=this.segment(e,t,n)))for(r=0,o=i.length;r<o;r++)i[r]=s.decode(i[r]);else i=void 0!==i?s.decode(i):void 0;return i}if(c(t))for(r=0,o=t.length;r<o;r++)t[r]=s.encode(t[r]);else t="string"===typeof t||t instanceof String?s.encode(t):t;return this.segment(e,t,n)};var N=o.query;return o.query=function(e,t){if(!0===e)return s.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if("function"===typeof e){var n=s.parseQuery(this._parts.query,this._parts.escapeQuerySpace),i=e.call(this,n);return this._parts.query=s.buildQuery(i||n,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!t),this}return void 0!==e&&"string"!==typeof e?(this._parts.query=s.buildQuery(e,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),this.build(!t),this):N.call(this,e,t)},o.setQuery=function(e,t,n){var i=s.parseQuery(this._parts.query,this._parts.escapeQuerySpace);if("string"===typeof e||e instanceof String)i[e]=void 0!==t?t:null;else{if("object"!==typeof e)throw new TypeError("URI.addQuery() accepts an object, string as the name parameter");for(var r in e)a.call(e,r)&&(i[r]=e[r])}return this._parts.query=s.buildQuery(i,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),"string"!==typeof e&&(n=t),this.build(!n),this},o.addQuery=function(e,t,n){var i=s.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return s.addQuery(i,e,void 0===t?null:t),this._parts.query=s.buildQuery(i,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),"string"!==typeof e&&(n=t),this.build(!n),this},o.removeQuery=function(e,t,n){var i=s.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return s.removeQuery(i,e,t),this._parts.query=s.buildQuery(i,this._parts.duplicateQueryParameters,this._parts.escapeQuerySpace),"string"!==typeof e&&(n=t),this.build(!n),this},o.hasQuery=function(e,t,n){var i=s.parseQuery(this._parts.query,this._parts.escapeQuerySpace);return s.hasQuery(i,e,t,n)},o.setSearch=o.setQuery,o.addSearch=o.addQuery,o.removeSearch=o.removeQuery,o.hasSearch=o.hasQuery,o.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()},o.normalizeProtocol=function(e){return"string"===typeof this._parts.protocol&&(this._parts.protocol=this._parts.protocol.toLowerCase(),this.build(!e)),this},o.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},o.normalizePort=function(e){return"string"===typeof this._parts.protocol&&this._parts.port===s.defaultPorts[this._parts.protocol]&&(this._parts.port=null,this.build(!e)),this},o.normalizePath=function(e){var t,n=this._parts.path;if(!n)return this;if(this._parts.urn)return this._parts.path=s.recodeUrnPath(this._parts.path),this.build(!e),this;if("/"===this._parts.path)return this;var i,r,o="";for("/"!==(n=s.recodePath(n)).charAt(0)&&(t=!0,n="/"+n),"/.."!==n.slice(-3)&&"/."!==n.slice(-2)||(n+="/"),n=n.replace(/(\/(\.\/)+)|(\/\.$)/g,"/").replace(/\/{2,}/g,"/"),t&&(o=n.substring(1).match(/^(\.\.\/)+/)||"")&&(o=o[0]);-1!==(i=n.search(/\/\.\.(\/|$)/));)0!==i?(-1===(r=n.substring(0,i).lastIndexOf("/"))&&(r=i),n=n.substring(0,r)+n.substring(i+3)):n=n.substring(3);return t&&this.is("relative")&&(n=o+n.substring(1)),this._parts.path=n,this.build(!e),this},o.normalizePathname=o.normalizePath,o.normalizeQuery=function(e){return"string"===typeof this._parts.query&&(this._parts.query.length?this.query(s.parseQuery(this._parts.query,this._parts.escapeQuerySpace)):this._parts.query=null,this.build(!e)),this},o.normalizeFragment=function(e){return this._parts.fragment||(this._parts.fragment=null,this.build(!e)),this},o.normalizeSearch=o.normalizeQuery,o.normalizeHash=o.normalizeFragment,o.iso8859=function(){var e=s.encode,t=s.decode;s.encode=escape,s.decode=decodeURIComponent;try{this.normalize()}finally{s.encode=e,s.decode=t}return this},o.unicode=function(){var e=s.encode,t=s.decode;s.encode=y,s.decode=unescape;try{this.normalize()}finally{s.encode=e,s.decode=t}return this},o.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 i="",r=0,o=t._parts.query.split("&"),a=o.length;r<a;r++){var u=(o[r]||"").split("=");i+="&"+s.decodeQuery(u[0],this._parts.escapeQuerySpace).replace(/&/g,"%26"),void 0!==u[1]&&(i+="="+s.decodeQuery(u[1],this._parts.escapeQuerySpace).replace(/&/g,"%26"))}n+="?"+i.substring(1)}return n+=s.decodeQuery(t.hash(),!0)},o.absoluteTo=function(e){var t,n,i,r=this.clone(),o=["protocol","username","password","hostname","port"];if(this._parts.urn)throw new Error("URNs do not have any generally defined hierarchical components");if(e instanceof s||(e=new s(e)),r._parts.protocol)return r;if(r._parts.protocol=e._parts.protocol,this._parts.hostname)return r;for(n=0;i=o[n];n++)r._parts[i]=e._parts[i];return r._parts.path?(".."===r._parts.path.substring(-2)&&(r._parts.path+="/"),"/"!==r.path().charAt(0)&&(t=(t=e.directory())||(0===e.path().indexOf("/")?"/":""),r._parts.path=(t?t+"/":"")+r._parts.path,r.normalizePath())):(r._parts.path=e._parts.path,r._parts.query||(r._parts.query=e._parts.query)),r.build(),r},o.relativeTo=function(e){var t,n,i,r,o,a=this.clone().normalize();if(a._parts.urn)throw new Error("URNs do not have any generally defined hierarchical components");if(e=new s(e).normalize(),t=a._parts,n=e._parts,r=a.path(),o=e.path(),"/"!==r.charAt(0))throw new Error("URI is already relative");if("/"!==o.charAt(0))throw new Error("Cannot calculate a URI relative to another relative URI");if(t.protocol===n.protocol&&(t.protocol=null),t.username!==n.username||t.password!==n.password)return a.build();if(null!==t.protocol||null!==t.username||null!==t.password)return a.build();if(t.hostname!==n.hostname||t.port!==n.port)return a.build();if(t.hostname=null,t.port=null,r===o)return t.path="",a.build();if(!(i=s.commonPath(r,o)))return a.build();var u=n.path.substring(i.length).replace(/[^\/]*$/,"").replace(/.*?\//g,"../");return t.path=u+t.path.substring(i.length)||"./",a.build()},o.equals=function(e){var t,n,i,r,o,u=this.clone(),l=new s(e),h={};if(u.normalize(),l.normalize(),u.toString()===l.toString())return!0;if(i=u.query(),r=l.query(),u.query(""),l.query(""),u.toString()!==l.toString())return!1;if(i.length!==r.length)return!1;for(o in t=s.parseQuery(i,this._parts.escapeQuerySpace),n=s.parseQuery(r,this._parts.escapeQuerySpace),t)if(a.call(t,o)){if(c(t[o])){if(!d(t[o],n[o]))return!1}else if(t[o]!==n[o])return!1;h[o]=!0}for(o in n)if(a.call(n,o)&&!h[o])return!1;return!0},o.preventInvalidHostname=function(e){return this._parts.preventInvalidHostname=!!e,this},o.duplicateQueryParameters=function(e){return this._parts.duplicateQueryParameters=!!e,this},o.escapeQuerySpace=function(e){return this._parts.escapeQuerySpace=!!e,this},s}))},69678:function(e,t,n){var i;e=n.nmd(e),function(r){t&&t.nodeType,e&&e.nodeType;var s="object"==typeof n.g&&n.g;s.global!==s&&s.window!==s&&s.self;var o,a=2147483647,u=36,l=1,c=26,h=38,p=700,d=72,m=128,f="-",y=/^xn--/,g=/[^\x20-\x7E]/,_=/[\x2E\u3002\uFF0E\uFF61]/g,v={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},b=u-l,T=Math.floor,w=String.fromCharCode;function k(e){throw new RangeError(v[e])}function S(e,t){for(var n=e.length,i=[];n--;)i[n]=t(e[n]);return i}function L(e,t){var n=e.split("@"),i="";return n.length>1&&(i=n[0]+"@",e=n[1]),i+S((e=e.replace(_,".")).split("."),t).join(".")}function N(e){for(var t,n,i=[],r=0,s=e.length;r<s;)(t=e.charCodeAt(r++))>=55296&&t<=56319&&r<s?56320==(64512&(n=e.charCodeAt(r++)))?i.push(((1023&t)<<10)+(1023&n)+65536):(i.push(t),r--):i.push(t);return i}function O(e){return S(e,(function(e){var t="";return e>65535&&(t+=w((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=w(e)})).join("")}function x(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function C(e,t,n){var i=0;for(e=n?T(e/p):e>>1,e+=T(e/t);e>b*c>>1;i+=u)e=T(e/b);return T(i+(b+1)*e/(e+h))}function E(e){var t,n,i,r,s,o,h,p,y,g,_,v=[],b=e.length,w=0,S=m,L=d;for((n=e.lastIndexOf(f))<0&&(n=0),i=0;i<n;++i)e.charCodeAt(i)>=128&&k("not-basic"),v.push(e.charCodeAt(i));for(r=n>0?n+1:0;r<b;){for(s=w,o=1,h=u;r>=b&&k("invalid-input"),((p=(_=e.charCodeAt(r++))-48<10?_-22:_-65<26?_-65:_-97<26?_-97:u)>=u||p>T((a-w)/o))&&k("overflow"),w+=p*o,!(p<(y=h<=L?l:h>=L+c?c:h-L));h+=u)o>T(a/(g=u-y))&&k("overflow"),o*=g;L=C(w-s,t=v.length+1,0==s),T(w/t)>a-S&&k("overflow"),S+=T(w/t),w%=t,v.splice(w++,0,S)}return O(v)}function A(e){var t,n,i,r,s,o,h,p,y,g,_,v,b,S,L,O=[];for(v=(e=N(e)).length,t=m,n=0,s=d,o=0;o<v;++o)(_=e[o])<128&&O.push(w(_));for(i=r=O.length,r&&O.push(f);i<v;){for(h=a,o=0;o<v;++o)(_=e[o])>=t&&_<h&&(h=_);for(h-t>T((a-n)/(b=i+1))&&k("overflow"),n+=(h-t)*b,t=h,o=0;o<v;++o)if((_=e[o])<t&&++n>a&&k("overflow"),_==t){for(p=n,y=u;!(p<(g=y<=s?l:y>=s+c?c:y-s));y+=u)L=p-g,S=u-g,O.push(w(x(g+L%S,0))),p=T(L/S);O.push(w(x(p,0))),s=C(n,b,i==r),n=0,++i}++n,++t}return O.join("")}o={version:"1.3.2",ucs2:{decode:N,encode:O},decode:E,encode:A,toASCII:function(e){return L(e,(function(e){return g.test(e)?"xn--"+A(e):e}))},toUnicode:function(e){return L(e,(function(e){return y.test(e)?E(e.slice(4).toLowerCase()):e}))}},void 0===(i=function(){return o}.call(t,n,t,e))||(e.exports=i)}()},91421:(e,t,n)=>{function i(e){try{if(!n.g.localStorage)return!1}catch(i){return!1}var t=n.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(i("noDeprecation"))return e;var n=!1;return function(){if(!n){if(i("throwDeprecation"))throw new Error(t);i("traceDeprecation")?console.trace(t):console.warn(t),n=!0}return e.apply(this,arguments)}}},24038:(e,t,n)=>{"use strict";n.r(t),n.d(t,{DOMException:()=>w,Headers:()=>c,Request:()=>g,Response:()=>b,fetch:()=>k});var i="undefined"!==typeof globalThis&&globalThis||"undefined"!==typeof self&&self||"undefined"!==typeof n.g&&n.g||{},r={searchParams:"URLSearchParams"in i,iterable:"Symbol"in i&&"iterator"in Symbol,blob:"FileReader"in i&&"Blob"in i&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in i,arrayBuffer:"ArrayBuffer"in i};if(r.arrayBuffer)var s=["[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&&s.indexOf(Object.prototype.toString.call(e))>-1};function a(e){if("string"!==typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function u(e){return"string"!==typeof e&&(e=String(e)),e}function l(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function c(e){this.map={},e instanceof c?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new 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)}function h(e){if(!e._noBody)return e.bodyUsed?Promise.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function p(e){return new Promise((function(t,n){e.onload=function(){t(e.result)},e.onerror=function(){n(e.error)}}))}function d(e){var t=new FileReader,n=p(t);return t.readAsArrayBuffer(e),n}function m(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function f(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"===typeof e?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&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=m(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):r.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||o(e))?this._bodyArrayBuffer=m(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"===typeof e?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=h(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 new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=h(this);return e||(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(d);throw new Error("could not read as ArrayBuffer")},this.text=function(){var e=h(this);if(e)return e;if(this._bodyBlob)return function(e){var t=new FileReader,n=p(t),i=/charset=([A-Za-z0-9_-]+)/.exec(e.type),r=i?i[1]:"utf-8";return t.readAsText(e,r),n}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),n=new Array(t.length),i=0;i<t.length;i++)n[i]=String.fromCharCode(t[i]);return n.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},r.formData&&(this.formData=function(){return this.text().then(_)}),this.json=function(){return this.text().then(JSON.parse)},this}c.prototype.append=function(e,t){e=a(e),t=u(t);var n=this.map[e];this.map[e]=n?n+", "+t:t},c.prototype.delete=function(e){delete this.map[a(e)]},c.prototype.get=function(e){return e=a(e),this.has(e)?this.map[e]:null},c.prototype.has=function(e){return this.map.hasOwnProperty(a(e))},c.prototype.set=function(e,t){this.map[a(e)]=u(t)},c.prototype.forEach=function(e,t){for(var n in this.map)this.map.hasOwnProperty(n)&&e.call(t,this.map[n],n,this)},c.prototype.keys=function(){var e=[];return this.forEach((function(t,n){e.push(n)})),l(e)},c.prototype.values=function(){var e=[];return this.forEach((function(t){e.push(t)})),l(e)},c.prototype.entries=function(){var e=[];return this.forEach((function(t,n){e.push([n,t])})),l(e)},r.iterable&&(c.prototype[Symbol.iterator]=c.prototype.entries);var y=["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"];function g(e,t){if(!(this instanceof g))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');var n=(t=t||{}).body;if(e instanceof g){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new c(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,n||null==e._bodyInit||(n=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 c(t.headers)),this.method=function(e){var t=e.toUpperCase();return y.indexOf(t)>-1?t:e}(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal||function(){if("AbortController"in i)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(n),("GET"===this.method||"HEAD"===this.method)&&("no-store"===t.cache||"no-cache"===t.cache)){var r=/([?&])_=[^&]*/;if(r.test(this.url))this.url=this.url.replace(r,"$1_="+(new Date).getTime());else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var n=e.split("="),i=n.shift().replace(/\+/g," "),r=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(i),decodeURIComponent(r))}})),t}function v(e){var t=new c;return e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var n=e.split(":"),i=n.shift().trim();if(i){var r=n.join(":").trim();try{t.append(i,r)}catch(s){console.warn("Response "+s.message)}}})),t}function b(e,t){if(!(this instanceof b))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new c(t.headers),this.url=t.url||"",this._initBody(e)}g.prototype.clone=function(){return new g(this,{body:this._bodyInit})},f.call(g.prototype),f.call(b.prototype),b.prototype.clone=function(){return new b(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new c(this.headers),url:this.url})},b.error=function(){var e=new b(null,{status:200,statusText:""});return e.ok=!1,e.status=0,e.type="error",e};var T=[301,302,303,307,308];b.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new b(null,{status:t,headers:{location:e}})};var w=i.DOMException;try{new w}catch(S){(w=function(e,t){this.message=e,this.name=t;var n=Error(e);this.stack=n.stack}).prototype=Object.create(Error.prototype),w.prototype.constructor=w}function k(e,t){return new Promise((function(n,s){var o=new g(e,t);if(o.signal&&o.signal.aborted)return s(new w("Aborted","AbortError"));var l=new XMLHttpRequest;function h(){l.abort()}if(l.onload=function(){var e={statusText:l.statusText,headers:v(l.getAllResponseHeaders()||"")};0===o.url.indexOf("file://")&&(l.status<200||l.status>599)?e.status=200:e.status=l.status,e.url="responseURL"in l?l.responseURL:e.headers.get("X-Request-URL");var t="response"in l?l.response:l.responseText;setTimeout((function(){n(new b(t,e))}),0)},l.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},l.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},l.onabort=function(){setTimeout((function(){s(new w("Aborted","AbortError"))}),0)},l.open(o.method,function(e){try{return""===e&&i.location.href?i.location.href:e}catch(t){return e}}(o.url),!0),"include"===o.credentials?l.withCredentials=!0:"omit"===o.credentials&&(l.withCredentials=!1),"responseType"in l&&(r.blob?l.responseType="blob":r.arrayBuffer&&(l.responseType="arraybuffer")),t&&"object"===typeof t.headers&&!(t.headers instanceof c||i.Headers&&t.headers instanceof i.Headers)){var p=[];Object.getOwnPropertyNames(t.headers).forEach((function(e){p.push(a(e)),l.setRequestHeader(e,u(t.headers[e]))})),o.headers.forEach((function(e,t){-1===p.indexOf(t)&&l.setRequestHeader(t,e)}))}else o.headers.forEach((function(e,t){l.setRequestHeader(t,e)}));o.signal&&(o.signal.addEventListener("abort",h),l.onreadystatechange=function(){4===l.readyState&&o.signal.removeEventListener("abort",h)}),l.send("undefined"===typeof o._bodyInit?null:o._bodyInit)}))}k.polyfill=!0,i.fetch||(i.fetch=k,i.Headers=c,i.Request=g,i.Response=b)},19463:e=>{var t=e.exports=function(e,t,n){"object"===typeof e&&(e=(n=e).start,t=n.stop),"object"===typeof t&&(n=t,e=e||n.start,t=void 0),t||(t=e,e=0),n||(n={});var i=n.mode||"soft",r="hard"===i?/\b/:/(\S+\s+)/;return function(n){return n.toString().split(r).reduce((function(n,r){if("hard"===i)for(var s=0;s<r.length;s+=t-e)n.push(r.slice(s,s+t-e));else n.push(r);return n}),[]).reduce((function(n,i){if(""===i)return n;var r=i.replace(/\t/g,"    "),s=n.length-1;if(n[s].length+r.length>t)n[s]=n[s].replace(/\s+$/,""),r.split(/\n/).forEach((function(t){n.push(new Array(e+1).join(" ")+t.replace(/^\s+/,""))}));else if(r.match(/\n/)){var o=r.split(/\n/);n[s]+=o.shift(),o.forEach((function(t){n.push(new Array(e+1).join(" ")+t.replace(/^\s+/,""))}))}else n[s]+=r;return n}),[new Array(e+1).join(" ")]).join("\n")}};t.soft=t,t.hard=function(e,n){return t(e,n,{mode:"hard"})}},97298:(e,t,n)=>{e.exports=n(76394).YAML},76394:(e,t,n)=>{"use strict";function i(e){return i="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function o(e,t,n){return t&&s(e.prototype,t),n&&s(e,n),e}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&c(e,t)}function l(e){return l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},l(e)}function c(e,t){return c=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},c(e,t)}function h(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function p(e,t,n){return p=h()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&c(r,n.prototype),r},p.apply(null,arguments)}function d(e){var t="function"===typeof Map?new Map:void 0;return d=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!==typeof e)throw new TypeError("Super expression must either be null or a function");if("undefined"!==typeof t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return p(e,arguments,l(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),c(i,e)},d(e)}function m(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function f(e,t){return!t||"object"!==typeof t&&"function"!==typeof t?m(e):t}function y(e){var t=h();return function(){var n,i=l(e);if(t){var r=l(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return f(this,n)}}function g(e,t,n){return g="undefined"!==typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var i=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=l(e)););return e}(e,t);if(i){var r=Object.getOwnPropertyDescriptor(i,t);return r.get?r.get.call(n):r.value}},g(e,t,n||e)}function _(e,t){return b(e)||function(e,t){if("undefined"===typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],i=!0,r=!1,s=void 0;try{for(var o,a=e[Symbol.iterator]();!(i=(o=a.next()).done)&&(n.push(o.value),!t||n.length!==t);i=!0);}catch(u){r=!0,s=u}finally{try{i||null==a.return||a.return()}finally{if(r)throw s}}return n}(e,t)||T(e,t)||k()}function v(e){return b(e)||function(e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||T(e)||k()}function b(e){if(Array.isArray(e))return e}function T(e,t){if(e){if("string"===typeof e)return w(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?w(e,t):void 0}}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function k(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function S(e,t){var n;if("undefined"===typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=T(e))||t&&e&&"number"===typeof e.length){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,o=!0,a=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return o=e.done,e},e:function(e){a=!0,s=e},f:function(){try{o||null==n.return||n.return()}finally{if(a)throw s}}}}n.d(t,{YAML:()=>rn});var L={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},N={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},O="tag:yaml.org,2002:",x={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function C(e){for(var t=[0],n=e.indexOf("\n");-1!==n;)n+=1,t.push(n),n=e.indexOf("\n",n);return t}function E(e){var t,n;return"string"===typeof e?(t=C(e),n=e):(Array.isArray(e)&&(e=e[0]),e&&e.context&&(e.lineStarts||(e.lineStarts=C(e.context.src)),t=e.lineStarts,n=e.context.src)),{lineStarts:t,src:n}}function A(e,t){if("number"!==typeof e||e<0)return null;var n=E(t),i=n.lineStarts,r=n.src;if(!i||!r||e>r.length)return null;for(var s=0;s<i.length;++s){var o=i[s];if(e<o)return{line:s,col:e-i[s-1]+1};if(e===o)return{line:s+1,col:1}}var a=i.length;return{line:a,col:e-i[a-1]+1}}function P(e,t){var n=e.start,i=e.end,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:80,s=function(e,t){var n=E(t),i=n.lineStarts,r=n.src;if(!i||!(e>=1)||e>i.length)return null;for(var s=i[e-1],o=i[e];o&&o>s&&"\n"===r[o-1];)--o;return r.slice(s,o)}(n.line,t);if(!s)return null;var o=n.col;if(s.length>r)if(o<=r-10)s=s.substr(0,r-1)+"\u2026";else{var a=Math.round(r/2);s.length>o+a&&(s=s.substr(0,o+a-1)+"\u2026"),o-=s.length-r,s="\u2026"+s.substr(1-r)}var u=1,l="";i&&(i.line===n.line&&o+(i.col-n.col)<=r+1?u=i.col-n.col:(u=Math.min(s.length+1,r)-o,l="\u2026"));var c=o>1?" ".repeat(o-1):"",h="^".repeat(u);return"".concat(s,"\n").concat(c).concat(h).concat(l)}var F=function(){function e(t,n){r(this,e),this.start=t,this.end=n||t}return o(e,[{key:"isEmpty",value:function(){return"number"!==typeof this.start||!this.end||this.end<=this.start}},{key:"setOrigRange",value:function(e,t){var n=this.start,i=this.end;if(0===e.length||i<=e[0])return this.origStart=n,this.origEnd=i,t;for(var r=t;r<e.length&&!(e[r]>n);)++r;this.origStart=n+r;for(var s=r;r<e.length&&!(e[r]>=i);)++r;return this.origEnd=i+r,s}}],[{key:"copy",value:function(t){return new e(t.start,t.end)}}]),e}(),M=function(){function e(t,n,i){r(this,e),Object.defineProperty(this,"context",{value:i||null,writable:!0}),this.error=null,this.range=null,this.valueRange=null,this.props=n||[],this.type=t,this.value=null}return o(e,[{key:"getPropValue",value:function(e,t,n){if(!this.context)return null;var i=this.context.src,r=this.props[e];return r&&i[r.start]===t?i.slice(r.start+(n?1:0),r.end):null}},{key:"anchor",get:function(){for(var e=0;e<this.props.length;++e){var t=this.getPropValue(e,L.ANCHOR,!0);if(null!=t)return t}return null}},{key:"comment",get:function(){for(var e=[],t=0;t<this.props.length;++t){var n=this.getPropValue(t,L.COMMENT,!0);null!=n&&e.push(n)}return e.length>0?e.join("\n"):null}},{key:"commentHasRequiredWhitespace",value:function(t){var n=this.context.src;if(this.header&&t===this.header.end)return!1;if(!this.valueRange)return!1;var i=this.valueRange.end;return t!==i||e.atBlank(n,i-1)}},{key:"hasComment",get:function(){if(this.context)for(var e=this.context.src,t=0;t<this.props.length;++t)if(e[this.props[t].start]===L.COMMENT)return!0;return!1}},{key:"hasProps",get:function(){if(this.context)for(var e=this.context.src,t=0;t<this.props.length;++t)if(e[this.props[t].start]!==L.COMMENT)return!0;return!1}},{key:"includesTrailingLines",get:function(){return!1}},{key:"jsonLike",get:function(){return-1!==[N.FLOW_MAP,N.FLOW_SEQ,N.QUOTE_DOUBLE,N.QUOTE_SINGLE].indexOf(this.type)}},{key:"rangeAsLinePos",get:function(){if(this.range&&this.context){var e=A(this.range.start,this.context.root);if(e)return{start:e,end:A(this.range.end,this.context.root)}}}},{key:"rawValue",get:function(){if(!this.valueRange||!this.context)return null;var e=this.valueRange,t=e.start,n=e.end;return this.context.src.slice(t,n)}},{key:"tag",get:function(){for(var e=0;e<this.props.length;++e){var t=this.getPropValue(e,L.TAG,!1);if(null!=t){if("<"===t[1])return{verbatim:t.slice(2,-1)};var n=_(t.match(/^(.*!)([^!]*)$/),3);return n[0],{handle:n[1],suffix:n[2]}}}return null}},{key:"valueRangeContainsNewline",get:function(){if(!this.valueRange||!this.context)return!1;for(var e=this.valueRange,t=e.start,n=e.end,i=this.context.src,r=t;r<n;++r)if("\n"===i[r])return!0;return!1}},{key:"parseComment",value:function(t){var n=this.context.src;if(n[t]===L.COMMENT){var i=e.endOfLine(n,t+1),r=new F(t,i);return this.props.push(r),i}return t}},{key:"setOrigRanges",value:function(e,t){return this.range&&(t=this.range.setOrigRange(e,t)),this.valueRange&&this.valueRange.setOrigRange(e,t),this.props.forEach((function(n){return n.setOrigRange(e,t)})),t}},{key:"toString",value:function(){var t=this.context.src,n=this.range,i=this.value;if(null!=i)return i;var r=t.slice(n.start,n.end);return e.addStringTerminator(t,n.end,r)}}],[{key:"addStringTerminator",value:function(t,n,i){if("\n"===i[i.length-1])return i;var r=e.endOfWhiteSpace(t,n);return r>=t.length||"\n"===t[r]?i+"\n":i}},{key:"atDocumentBoundary",value:function(e,t,n){var i=e[t];if(!i)return!0;var r=e[t-1];if(r&&"\n"!==r)return!1;if(n){if(i!==n)return!1}else if(i!==L.DIRECTIVES_END&&i!==L.DOCUMENT_END)return!1;var s=e[t+1],o=e[t+2];if(s!==i||o!==i)return!1;var a=e[t+3];return!a||"\n"===a||"\t"===a||" "===a}},{key:"endOfIdentifier",value:function(e,t){for(var n=e[t],i="<"===n,r=i?["\n","\t"," ",">"]:["\n","\t"," ","[","]","{","}",","];n&&-1===r.indexOf(n);)n=e[t+=1];return i&&">"===n&&(t+=1),t}},{key:"endOfIndent",value:function(e,t){for(var n=e[t];" "===n;)n=e[t+=1];return t}},{key:"endOfLine",value:function(e,t){for(var n=e[t];n&&"\n"!==n;)n=e[t+=1];return t}},{key:"endOfWhiteSpace",value:function(e,t){for(var n=e[t];"\t"===n||" "===n;)n=e[t+=1];return t}},{key:"startOfLine",value:function(e,t){var n=e[t-1];if("\n"===n)return t;for(;n&&"\n"!==n;)n=e[t-=1];return t+1}},{key:"endOfBlockIndent",value:function(t,n,i){var r=e.endOfIndent(t,i);if(r>i+n)return r;var s=e.endOfWhiteSpace(t,r),o=t[s];return o&&"\n"!==o?null:s}},{key:"atBlank",value:function(e,t,n){var i=e[t];return"\n"===i||"\t"===i||" "===i||n&&!i}},{key:"nextNodeIsIndented",value:function(e,t,n){return!(!e||t<0)&&(t>0||n&&"-"===e)}},{key:"normalizeOffset",value:function(t,n){var i=t[n];return i?"\n"!==i&&"\n"===t[n-1]?n-1:e.endOfWhiteSpace(t,n):n}},{key:"foldNewline",value:function(t,n,i){for(var r=0,s=!1,o="",a=t[n+1];" "===a||"\t"===a||"\n"===a;){switch(a){case"\n":r=0,n+=1,o+="\n";break;case"\t":r<=i&&(s=!0),n=e.endOfWhiteSpace(t,n+2)-1;break;case" ":r+=1,n+=1}a=t[n+1]}return o||(o=" "),a&&r<=i&&(s=!0),{fold:o,offset:n,error:s}}}]),e}(),j=function(e){u(n,e);var t=y(n);function n(e,i,s){var o;if(r(this,n),!s||!(i instanceof M))throw new Error("Invalid arguments for new ".concat(e));return(o=t.call(this)).name=e,o.message=s,o.source=i,o}return o(n,[{key:"makePretty",value:function(){if(this.source){this.nodeType=this.source.type;var e=this.source.context&&this.source.context.root;if("number"===typeof this.offset){this.range=new F(this.offset,this.offset+1);var t=e&&A(this.offset,e);if(t){var n={line:t.line,col:t.col+1};this.linePos={start:t,end:n}}delete this.offset}else this.range=this.source.range,this.linePos=this.source.rangeAsLinePos;if(this.linePos){var i=this.linePos.start,r=i.line,s=i.col;this.message+=" at line ".concat(r,", column ").concat(s);var o=e&&P(this.linePos,e);o&&(this.message+=":\n\n".concat(o,"\n"))}delete this.source}}}]),n}(d(Error)),R=function(e){u(n,e);var t=y(n);function n(e,i){return r(this,n),t.call(this,"YAMLReferenceError",e,i)}return n}(j),I=function(e){u(n,e);var t=y(n);function n(e,i){return r(this,n),t.call(this,"YAMLSemanticError",e,i)}return n}(j),B=function(e){u(n,e);var t=y(n);function n(e,i){return r(this,n),t.call(this,"YAMLSyntaxError",e,i)}return n}(j),D=function(e){u(n,e);var t=y(n);function n(e,i){return r(this,n),t.call(this,"YAMLWarning",e,i)}return n}(j),U=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"strValue",get:function(){if(!this.valueRange||!this.context)return null;for(var e=this.valueRange,t=e.start,n=e.end,i=this.context.src,r=i[n-1];t<n&&("\n"===r||"\t"===r||" "===r);)r=i[--n-1];for(var s="",o=t;o<n;++o){var a=i[o];if("\n"===a){var u=M.foldNewline(i,o,-1);s+=u.fold,o=u.offset}else if(" "===a||"\t"===a){for(var l=o,c=i[o+1];o<n&&(" "===c||"\t"===c);)c=i[(o+=1)+1];"\n"!==c&&(s+=o>l?i.slice(l,o+1):a)}else s+=a}var h=i[t];switch(h){case"\t":return{errors:[new I(this,"Plain value cannot start with a tab character")],str:s};case"@":case"`":var p="Plain value cannot start with reserved character ".concat(h);return{errors:[new I(this,p)],str:s};default:return s}}},{key:"parseBlockValue",value:function(e){for(var t=this.context,i=t.indent,r=t.inFlow,s=t.src,o=e,a=e,u=s[o];"\n"===u&&!M.atDocumentBoundary(s,o+1);u=s[o]){var l=M.endOfBlockIndent(s,i,o+1);if(null===l||"#"===s[l])break;o="\n"===s[l]?l:a=n.endOfLine(s,l,r)}return this.valueRange.isEmpty()&&(this.valueRange.start=e),this.valueRange.end=a,a}},{key:"parse",value:function(e,t){this.context=e;var i=e.inFlow,r=e.src,s=t,o=r[s];return o&&"#"!==o&&"\n"!==o&&(s=n.endOfLine(r,t,i)),this.valueRange=new F(t,s),s=M.endOfWhiteSpace(r,s),s=this.parseComment(s),this.hasComment&&!this.valueRange.isEmpty()||(s=this.parseBlockValue(s)),s}}],[{key:"endOfLine",value:function(e,t,n){for(var i=e[t],r=t;i&&"\n"!==i&&(!n||"["!==i&&"]"!==i&&"{"!==i&&"}"!==i&&","!==i);){var s=e[r+1];if(":"===i&&(!s||"\n"===s||"\t"===s||" "===s||n&&","===s))break;if((" "===i||"\t"===i)&&"#"===s)break;r+=1,i=s}return r}}]),n}(M),z=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.call(this,N.BLANK_LINE)}return o(n,[{key:"includesTrailingLines",get:function(){return!0}},{key:"parse",value:function(e,t){return this.context=e,this.range=new F(t,t+1),t+1}}]),n}(M),W=function(e){u(n,e);var t=y(n);function n(e,i){var s;return r(this,n),(s=t.call(this,e,i)).node=null,s}return o(n,[{key:"includesTrailingLines",get:function(){return!!this.node&&this.node.includesTrailingLines}},{key:"parse",value:function(e,t){this.context=e;var n=e.parseNode,i=e.src,r=e.atLineStart,s=e.lineStart;r||this.type!==N.SEQ_ITEM||(this.error=new I(this,"Sequence items must not have preceding content on the same line"));for(var o=r?t-s:e.indent,a=M.endOfWhiteSpace(i,t+1),u=i[a],l="#"===u,c=[],h=null;"\n"===u||"#"===u;){if("#"===u){var p=M.endOfLine(i,a+1);c.push(new F(a,p)),a=p}else{r=!0,s=a+1,"\n"===i[M.endOfWhiteSpace(i,s)]&&0===c.length&&(s=(h=new z).parse({src:i},s)),a=M.endOfIndent(i,s)}u=i[a]}if(M.nextNodeIsIndented(u,a-(s+o),this.type!==N.SEQ_ITEM)?this.node=n({atLineStart:r,inCollection:!1,indent:o,lineStart:s,parent:this},a):u&&s>t+1&&(a=s-1),this.node){if(h){var d=e.parent.items||e.parent.contents;d&&d.push(h)}c.length&&Array.prototype.push.apply(this.props,c),a=this.node.range.end}else if(l){var m=c[0];this.props.push(m),a=m.end}else a=M.endOfLine(i,t+1);var f=this.node?this.node.valueRange.end:a;return this.valueRange=new F(t,f),a}},{key:"setOrigRanges",value:function(e,t){return t=g(l(n.prototype),"setOrigRanges",this).call(this,e,t),this.node?this.node.setOrigRanges(e,t):t}},{key:"toString",value:function(){var e=this.context.src,t=this.node,n=this.range,i=this.value;if(null!=i)return i;var r=t?e.slice(n.start,t.range.start)+String(t):e.slice(n.start,n.end);return M.addStringTerminator(e,n.end,r)}}]),n}(M),J=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.call(this,N.COMMENT)}return o(n,[{key:"parse",value:function(e,t){this.context=e;var n=this.parseComment(t);return this.range=new F(t,n),n}}]),n}(M);function G(e){for(var t=e;t instanceof W;)t=t.node;if(!(t instanceof H))return null;for(var n=t.items.length,i=-1,r=n-1;r>=0;--r){var s=t.items[r];if(s.type===N.COMMENT){var o=s.context,a=o.indent,u=o.lineStart;if(a>0&&s.range.start>=u+a)break;i=r}else{if(s.type!==N.BLANK_LINE)break;i=r}}if(-1===i)return null;for(var l=t.items.splice(i,n-i),c=l[0].range.start;t.range.end=c,t.valueRange&&t.valueRange.end>c&&(t.valueRange.end=c),t!==e;)t=t.context.parent;return l}var H=function(e){u(n,e);var t=y(n);function n(e){var i;r(this,n),i=t.call(this,e.type===N.SEQ_ITEM?N.SEQ:N.MAP);for(var s=e.props.length-1;s>=0;--s)if(e.props[s].start<e.context.lineStart){i.props=e.props.slice(0,s+1),e.props=e.props.slice(s+1);var o=e.props[0]||e.valueRange;e.range.start=o.start;break}i.items=[e];var a=G(e);return a&&Array.prototype.push.apply(i.items,a),i}return o(n,[{key:"includesTrailingLines",get:function(){return this.items.length>0}},{key:"parse",value:function(e,t){this.context=e;var i=e.parseNode,r=e.src,s=M.startOfLine(r,t),o=this.items[0];o.context.parent=this,this.valueRange=F.copy(o.valueRange);for(var a=o.range.start-o.context.lineStart,u=t,l=r[u=M.normalizeOffset(r,u)],c=M.endOfWhiteSpace(r,s)===u,h=!1;l;){for(;"\n"===l||"#"===l;){if(c&&"\n"===l&&!h){var p=new z;if(u=p.parse({src:r},u),this.valueRange.end=u,u>=r.length){l=null;break}this.items.push(p),u-=1}else if("#"===l){if(u<s+a&&!n.nextContentHasIndent(r,u,a))return u;var d=new J;if(u=d.parse({indent:a,lineStart:s,src:r},u),this.items.push(d),this.valueRange.end=u,u>=r.length){l=null;break}}if(s=u+1,u=M.endOfIndent(r,s),M.atBlank(r,u)){var m=M.endOfWhiteSpace(r,u),f=r[m];f&&"\n"!==f&&"#"!==f||(u=m)}l=r[u],c=!0}if(!l)break;if(u!==s+a&&(c||":"!==l)){if(u<s+a){s>t&&(u=s);break}if(!this.error){this.error=new B(this,"All collection items must start at the same column")}}if(o.type===N.SEQ_ITEM){if("-"!==l){s>t&&(u=s);break}}else if("-"===l&&!this.error){var y=r[u+1];if(!y||"\n"===y||"\t"===y||" "===y){this.error=new B(this,"A collection cannot be both a mapping and a sequence")}}var g=i({atLineStart:c,inCollection:!0,indent:a,lineStart:s,parent:this},u);if(!g)return u;if(this.items.push(g),this.valueRange.end=g.valueRange.end,l=r[u=M.normalizeOffset(r,g.range.end)],c=!1,h=g.includesTrailingLines,l){for(var _=u-1,v=r[_];" "===v||"\t"===v;)v=r[--_];"\n"===v&&(s=_+1,c=!0)}var b=G(g);b&&Array.prototype.push.apply(this.items,b)}return u}},{key:"setOrigRanges",value:function(e,t){return t=g(l(n.prototype),"setOrigRanges",this).call(this,e,t),this.items.forEach((function(n){t=n.setOrigRanges(e,t)})),t}},{key:"toString",value:function(){var e=this.context.src,t=this.items,n=this.range,i=this.value;if(null!=i)return i;for(var r=e.slice(n.start,t[0].range.start)+String(t[0]),s=1;s<t.length;++s){var o=t[s],a=o.context,u=a.atLineStart,l=a.indent;if(u)for(var c=0;c<l;++c)r+=" ";r+=String(o)}return M.addStringTerminator(e,n.end,r)}}],[{key:"nextContentHasIndent",value:function(e,t,i){var r=M.endOfLine(e,t)+1,s=e[t=M.endOfWhiteSpace(e,r)];return!!s&&(t>=r+i||("#"===s||"\n"===s)&&n.nextContentHasIndent(e,t,i))}}]),n}(M),q=function(e){u(n,e);var t=y(n);function n(){var e;return r(this,n),(e=t.call(this,N.DIRECTIVE)).name=null,e}return o(n,[{key:"parameters",get:function(){var e=this.rawValue;return e?e.trim().split(/[ \t]+/):[]}},{key:"parseName",value:function(e){for(var t=this.context.src,n=e,i=t[n];i&&"\n"!==i&&"\t"!==i&&" "!==i;)i=t[n+=1];return this.name=t.slice(e,n),n}},{key:"parseParameters",value:function(e){for(var t=this.context.src,n=e,i=t[n];i&&"\n"!==i&&"#"!==i;)i=t[n+=1];return this.valueRange=new F(e,n),n}},{key:"parse",value:function(e,t){this.context=e;var n=this.parseName(t+1);return n=this.parseParameters(n),n=this.parseComment(n),this.range=new F(t,n),n}}]),n}(M),K=function(e){u(n,e);var t=y(n);function n(){var e;return r(this,n),(e=t.call(this,N.DOCUMENT)).directives=null,e.contents=null,e.directivesEndMarker=null,e.documentEndMarker=null,e}return o(n,[{key:"parseDirectives",value:function(e){var t=this.context.src;this.directives=[];for(var i=!0,r=!1,s=e;!M.atDocumentBoundary(t,s,L.DIRECTIVES_END);)switch(t[s=n.startCommentOrEndBlankLine(t,s)]){case"\n":if(i){var o=new z;(s=o.parse({src:t},s))<t.length&&this.directives.push(o)}else s+=1,i=!0;break;case"#":var a=new J;s=a.parse({src:t},s),this.directives.push(a),i=!1;break;case"%":var u=new q;s=u.parse({parent:this,src:t},s),this.directives.push(u),r=!0,i=!1;break;default:return r?this.error=new I(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),s}return t[s]?(this.directivesEndMarker=new F(s,s+3),s+3):(r?this.error=new I(this,"Missing directives-end indicator line"):this.directives.length>0&&(this.contents=this.directives,this.directives=[]),s)}},{key:"parseContents",value:function(e){var t=this.context,i=t.parseNode,r=t.src;this.contents||(this.contents=[]);for(var s=e;"-"===r[s-1];)s-=1;var o=M.endOfWhiteSpace(r,e),a=s===e;for(this.valueRange=new F(o);!M.atDocumentBoundary(r,o,L.DOCUMENT_END);){switch(r[o]){case"\n":if(a){var u=new z;(o=u.parse({src:r},o))<r.length&&this.contents.push(u)}else o+=1,a=!0;s=o;break;case"#":var l=new J;o=l.parse({src:r},o),this.contents.push(l),a=!1;break;default:var c=M.endOfIndent(r,o),h=i({atLineStart:a,indent:-1,inFlow:!1,inCollection:!1,lineStart:s,parent:this},c);if(!h)return this.valueRange.end=c;this.contents.push(h),o=h.range.end,a=!1;var p=G(h);p&&Array.prototype.push.apply(this.contents,p)}o=n.startCommentOrEndBlankLine(r,o)}if(this.valueRange.end=o,r[o]&&(this.documentEndMarker=new F(o,o+3),r[o+=3])){if("#"===r[o=M.endOfWhiteSpace(r,o)]){var d=new J;o=d.parse({src:r},o),this.contents.push(d)}switch(r[o]){case"\n":o+=1;break;case void 0:break;default:this.error=new B(this,"Document end marker line cannot have a non-comment suffix")}}return o}},{key:"parse",value:function(e,t){e.root=this,this.context=e;var n=65279===e.src.charCodeAt(t)?t+1:t;return n=this.parseDirectives(n),n=this.parseContents(n)}},{key:"setOrigRanges",value:function(e,t){return t=g(l(n.prototype),"setOrigRanges",this).call(this,e,t),this.directives.forEach((function(n){t=n.setOrigRanges(e,t)})),this.directivesEndMarker&&(t=this.directivesEndMarker.setOrigRange(e,t)),this.contents.forEach((function(n){t=n.setOrigRanges(e,t)})),this.documentEndMarker&&(t=this.documentEndMarker.setOrigRange(e,t)),t}},{key:"toString",value:function(){var e=this.contents,t=this.directives,n=this.value;if(null!=n)return n;var i=t.join("");return e.length>0&&((t.length>0||e[0].type===N.COMMENT)&&(i+="---\n"),i+=e.join("")),"\n"!==i[i.length-1]&&(i+="\n"),i}}],[{key:"startCommentOrEndBlankLine",value:function(e,t){var n=M.endOfWhiteSpace(e,t),i=e[n];return"#"===i||"\n"===i?n:t}}]),n}(M),V=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"parse",value:function(e,t){this.context=e;var n=e.src,i=M.endOfIdentifier(n,t+1);return this.valueRange=new F(t+1,i),i=M.endOfWhiteSpace(n,i),i=this.parseComment(i)}}]),n}(M),Q="CLIP",Z="KEEP",Y="STRIP",X=function(e){u(n,e);var t=y(n);function n(e,i){var s;return r(this,n),(s=t.call(this,e,i)).blockIndent=null,s.chomping=Q,s.header=null,s}return o(n,[{key:"includesTrailingLines",get:function(){return this.chomping===Z}},{key:"strValue",get:function(){if(!this.valueRange||!this.context)return null;var e=this.valueRange,t=e.start,n=e.end,i=this.context,r=i.indent,s=i.src;if(this.valueRange.isEmpty())return"";for(var o=null,a=s[n-1];"\n"===a||"\t"===a||" "===a;){if((n-=1)<=t){if(this.chomping===Z)break;return""}"\n"===a&&(o=n),a=s[n-1]}var u=n+1;o&&(this.chomping===Z?(u=o,n=this.valueRange.end):n=o);for(var l=r+this.blockIndent,c=this.type===N.BLOCK_FOLDED,h=!0,p="",d="",m=!1,f=t;f<n;++f){for(var y=0;y<l&&" "===s[f];++y)f+=1;var g=s[f];if("\n"===g)"\n"===d?p+="\n":d="\n";else{var _=M.endOfLine(s,f),v=s.slice(f,_);f=_,c&&(" "===g||"\t"===g)&&f<u?(" "===d?d="\n":m||h||"\n"!==d||(d="\n\n"),p+=d+v,d=_<n&&s[_]||"",m=!0):(p+=d+v,d=c&&f<u?" ":"\n",m=!1),h&&""!==v&&(h=!1)}}return this.chomping===Y?p:p+"\n"}},{key:"parseBlockHeader",value:function(e){for(var t=this.context.src,n=e+1,i="";;){var r=t[n];switch(r){case"-":this.chomping=Y;break;case"+":this.chomping=Z;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":i+=r;break;default:return this.blockIndent=Number(i)||null,this.header=new F(e,n),n}n+=1}}},{key:"parseBlockValue",value:function(e){for(var t=this.context,n=t.indent,i=t.src,r=!!this.blockIndent,s=e,o=e,a=1,u=i[s];"\n"===u&&(s+=1,!M.atDocumentBoundary(i,s));u=i[s]){var l=M.endOfBlockIndent(i,n,s);if(null===l)break;var c=i[l],h=l-(s+n);if(this.blockIndent){if(c&&"\n"!==c&&h<this.blockIndent){if("#"===i[l])break;if(!this.error){var p="Block scalars must not be less indented than their ".concat(r?"explicit indentation indicator":"first line");this.error=new I(this,p)}}}else if("\n"!==i[l]){if(h<a){this.error=new I(this,"Block scalars with more-indented leading empty lines must use an explicit indentation indicator")}this.blockIndent=h}else h>a&&(a=h);s="\n"===i[l]?l:o=M.endOfLine(i,l)}return this.chomping!==Z&&(s=i[o]?o+1:o),this.valueRange=new F(e+1,s),s}},{key:"parse",value:function(e,t){this.context=e;var n=e.src,i=this.parseBlockHeader(t);return i=M.endOfWhiteSpace(n,i),i=this.parseComment(i),i=this.parseBlockValue(i)}},{key:"setOrigRanges",value:function(e,t){return t=g(l(n.prototype),"setOrigRanges",this).call(this,e,t),this.header?this.header.setOrigRange(e,t):t}}]),n}(M),$=function(e){u(n,e);var t=y(n);function n(e,i){var s;return r(this,n),(s=t.call(this,e,i)).items=null,s}return o(n,[{key:"prevNodeIsJsonLike",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.items.length,t=this.items[e-1];return!!t&&(t.jsonLike||t.type===N.COMMENT&&this.prevNodeIsJsonLike(e-1))}},{key:"parse",value:function(e,t){this.context=e;var n=e.parseNode,i=e.src,r=e.indent,s=e.lineStart,o=i[t];this.items=[{char:o,offset:t}];var a=M.endOfWhiteSpace(i,t+1);for(o=i[a];o&&"]"!==o&&"}"!==o;){switch(o){case"\n":if(s=a+1,"\n"===i[M.endOfWhiteSpace(i,s)]){var u=new z;s=u.parse({src:i},s),this.items.push(u)}if((a=M.endOfIndent(i,s))<=s+r&&(o=i[a],a<s+r||"]"!==o&&"}"!==o)){this.error=new I(this,"Insufficient indentation in flow collection")}break;case",":this.items.push({char:o,offset:a}),a+=1;break;case"#":var l=new J;a=l.parse({src:i},a),this.items.push(l);break;case"?":case":":var c=i[a+1];if("\n"===c||"\t"===c||" "===c||","===c||":"===o&&this.prevNodeIsJsonLike()){this.items.push({char:o,offset:a}),a+=1;break}default:var h=n({atLineStart:!1,inCollection:!1,inFlow:!0,indent:-1,lineStart:s,parent:this},a);if(!h)return this.valueRange=new F(t,a),a;this.items.push(h),a=M.normalizeOffset(i,h.range.end)}o=i[a=M.endOfWhiteSpace(i,a)]}return this.valueRange=new F(t,a+1),o&&(this.items.push({char:o,offset:a}),a=M.endOfWhiteSpace(i,a+1),a=this.parseComment(a)),a}},{key:"setOrigRanges",value:function(e,t){return t=g(l(n.prototype),"setOrigRanges",this).call(this,e,t),this.items.forEach((function(n){if(n instanceof M)t=n.setOrigRanges(e,t);else if(0===e.length)n.origOffset=n.offset;else{for(var i=t;i<e.length&&!(e[i]>n.offset);)++i;n.origOffset=n.offset+i,t=i}})),t}},{key:"toString",value:function(){var e=this.context.src,t=this.items,n=this.range,i=this.value;if(null!=i)return i;var r=t.filter((function(e){return e instanceof M})),s="",o=n.start;return r.forEach((function(t){var n=e.slice(o,t.range.start);o=t.range.end,"\n"===(s+=n+String(t))[s.length-1]&&"\n"!==e[o-1]&&"\n"===e[o]&&(o+=1)})),s+=e.slice(o,n.end),M.addStringTerminator(e,n.end,s)}}]),n}(M),ee=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"strValue",get:function(){if(!this.valueRange||!this.context)return null;var e=[],t=this.valueRange,n=t.start,i=t.end,r=this.context,s=r.indent,o=r.src;'"'!==o[i-1]&&e.push(new B(this,'Missing closing "quote'));for(var a="",u=n+1;u<i-1;++u){var l=o[u];if("\n"===l){M.atDocumentBoundary(o,u+1)&&e.push(new I(this,"Document boundary indicators are not allowed within string values"));var c=M.foldNewline(o,u,s);a+=c.fold,u=c.offset,c.error&&e.push(new I(this,"Multi-line double-quoted string needs to be sufficiently indented"))}else if("\\"===l)switch(o[u+=1]){case"0":a+="\0";break;case"a":a+="\x07";break;case"b":a+="\b";break;case"e":a+="\x1b";break;case"f":a+="\f";break;case"n":a+="\n";break;case"r":a+="\r";break;case"t":case"\t":a+="\t";break;case"v":a+="\v";break;case"N":a+="\x85";break;case"_":a+="\xa0";break;case"L":a+="\u2028";break;case"P":a+="\u2029";break;case" ":a+=" ";break;case'"':a+='"';break;case"/":a+="/";break;case"\\":a+="\\";break;case"x":a+=this.parseCharCode(u+1,2,e),u+=2;break;case"u":a+=this.parseCharCode(u+1,4,e),u+=4;break;case"U":a+=this.parseCharCode(u+1,8,e),u+=8;break;case"\n":for(;" "===o[u+1]||"\t"===o[u+1];)u+=1;break;default:e.push(new B(this,"Invalid escape sequence ".concat(o.substr(u-1,2)))),a+="\\"+o[u]}else if(" "===l||"\t"===l){for(var h=u,p=o[u+1];" "===p||"\t"===p;)p=o[(u+=1)+1];"\n"!==p&&(a+=u>h?o.slice(h,u+1):l)}else a+=l}return e.length>0?{errors:e,str:a}:a}},{key:"parseCharCode",value:function(e,t,n){var i=this.context.src,r=i.substr(e,t),s=r.length===t&&/^[0-9a-fA-F]+$/.test(r)?parseInt(r,16):NaN;return isNaN(s)?(n.push(new B(this,"Invalid escape sequence ".concat(i.substr(e-2,t+2)))),i.substr(e-2,t+2)):String.fromCodePoint(s)}},{key:"parse",value:function(e,t){this.context=e;var i=e.src,r=n.endOfQuote(i,t+1);return this.valueRange=new F(t,r),r=M.endOfWhiteSpace(i,r),r=this.parseComment(r)}}],[{key:"endOfQuote",value:function(e,t){for(var n=e[t];n&&'"'!==n;)n=e[t+="\\"===n?2:1];return t+1}}]),n}(M),te=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"strValue",get:function(){if(!this.valueRange||!this.context)return null;var e=[],t=this.valueRange,n=t.start,i=t.end,r=this.context,s=r.indent,o=r.src;"'"!==o[i-1]&&e.push(new B(this,"Missing closing 'quote"));for(var a="",u=n+1;u<i-1;++u){var l=o[u];if("\n"===l){M.atDocumentBoundary(o,u+1)&&e.push(new I(this,"Document boundary indicators are not allowed within string values"));var c=M.foldNewline(o,u,s);a+=c.fold,u=c.offset,c.error&&e.push(new I(this,"Multi-line single-quoted string needs to be sufficiently indented"))}else if("'"===l)a+=l,"'"!==o[u+=1]&&e.push(new B(this,"Unescaped single quote? This should not happen."));else if(" "===l||"\t"===l){for(var h=u,p=o[u+1];" "===p||"\t"===p;)p=o[(u+=1)+1];"\n"!==p&&(a+=u>h?o.slice(h,u+1):l)}else a+=l}return e.length>0?{errors:e,str:a}:a}},{key:"parse",value:function(e,t){this.context=e;var i=e.src,r=n.endOfQuote(i,t+1);return this.valueRange=new F(t,r),r=M.endOfWhiteSpace(i,r),r=this.parseComment(r)}}],[{key:"endOfQuote",value:function(e,t){for(var n=e[t];n;)if("'"===n){if("'"!==e[t+1])break;n=e[t+=2]}else n=e[t+=1];return t+1}}]),n}(M);var ne=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=i.atLineStart,o=i.inCollection,u=i.inFlow,l=i.indent,c=i.lineStart,h=i.parent;r(this,e),a(this,"parseNode",(function(n,i){if(M.atDocumentBoundary(t.src,i))return null;var r=new e(t,n),s=r.parseProps(i),o=s.props,a=s.type,u=s.valueStart,l=function(e,t){switch(e){case N.ALIAS:return new V(e,t);case N.BLOCK_FOLDED:case N.BLOCK_LITERAL:return new X(e,t);case N.FLOW_MAP:case N.FLOW_SEQ:return new $(e,t);case N.MAP_KEY:case N.MAP_VALUE:case N.SEQ_ITEM:return new W(e,t);case N.COMMENT:case N.PLAIN:return new U(e,t);case N.QUOTE_DOUBLE:return new ee(e,t);case N.QUOTE_SINGLE:return new te(e,t);default:return null}}(a,o),c=l.parse(r,u);if(l.range=new F(i,c),c<=i&&(l.error=new Error("Node#parse consumed no characters"),l.error.parseEnd=c,l.error.source=l,l.range.end=i+1),r.nodeStartsCollection(l)){l.error||r.atLineStart||r.parent.type!==N.DOCUMENT||(l.error=new B(l,"Block collection must not have preceding content here (e.g. directives-end indicator)"));var h=new H(l);return c=h.parse(new e(r),c),h.range=new F(i,c),h}return l})),this.atLineStart=null!=s?s:n.atLineStart||!1,this.inCollection=null!=o?o:n.inCollection||!1,this.inFlow=null!=u?u:n.inFlow||!1,this.indent=null!=l?l:n.indent,this.lineStart=null!=c?c:n.lineStart,this.parent=null!=h?h:n.parent||{},this.root=n.root,this.src=n.src}return o(e,[{key:"nodeStartsCollection",value:function(e){var t=this.inCollection,n=this.inFlow,i=this.src;if(t||n)return!1;if(e instanceof W)return!0;var r=e.range.end;return"\n"!==i[r]&&"\n"!==i[r-1]&&":"===i[r=M.endOfWhiteSpace(i,r)]}},{key:"parseProps",value:function(t){for(var n=this.inFlow,i=this.parent,r=this.src,s=[],o=!1,a=r[t=this.atLineStart?M.endOfIndent(r,t):M.endOfWhiteSpace(r,t)];a===L.ANCHOR||a===L.COMMENT||a===L.TAG||"\n"===a;){if("\n"===a){var u=t,l=void 0;do{l=u+1,u=M.endOfIndent(r,l)}while("\n"===r[u]);var c=u-(l+this.indent),h=i.type===N.SEQ_ITEM&&i.context.atLineStart;if("#"!==r[u]&&!M.nextNodeIsIndented(r[u],c,!h))break;this.atLineStart=!0,this.lineStart=l,o=!1,t=u}else if(a===L.COMMENT){var p=M.endOfLine(r,t+1);s.push(new F(t,p)),t=p}else{var d=M.endOfIdentifier(r,t+1);a===L.TAG&&","===r[d]&&/^[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+,\d\d\d\d(-\d\d){0,2}\/\S/.test(r.slice(t+1,d+13))&&(d=M.endOfIdentifier(r,d+5)),s.push(new F(t,d)),o=!0,t=M.endOfWhiteSpace(r,d)}a=r[t]}return o&&":"===a&&M.atBlank(r,t+1,!0)&&(t-=1),{props:s,type:e.parseType(r,t,n),valueStart:t}}}],[{key:"parseType",value:function(e,t,n){switch(e[t]){case"*":return N.ALIAS;case">":return N.BLOCK_FOLDED;case"|":return N.BLOCK_LITERAL;case"{":return N.FLOW_MAP;case"[":return N.FLOW_SEQ;case"?":return!n&&M.atBlank(e,t+1,!0)?N.MAP_KEY:N.PLAIN;case":":return!n&&M.atBlank(e,t+1,!0)?N.MAP_VALUE:N.PLAIN;case"-":return!n&&M.atBlank(e,t+1,!0)?N.SEQ_ITEM:N.PLAIN;case'"':return N.QUOTE_DOUBLE;case"'":return N.QUOTE_SINGLE;default:return N.PLAIN}}}]),e}();function ie(e){var t=[];-1!==e.indexOf("\r")&&(e=e.replace(/\r\n?/g,(function(e,n){return e.length>1&&t.push(n),"\n"})));var n=[],i=0;do{var r=new K,s=new ne({src:e});i=r.parse(s,i),n.push(r)}while(i<e.length);return n.setOrigRanges=function(){if(0===t.length)return!1;for(var e=1;e<t.length;++e)t[e]-=e;for(var i=0,r=0;r<n.length;++r)i=n[r].setOrigRanges(t,i);return t.splice(0,t.length),!0},n.toString=function(){return n.join("...\n")},n}function re(e,t,n){return n?-1===n.indexOf("\n")?"".concat(e," #").concat(n):"".concat(e,"\n")+n.replace(/^/gm,"".concat(t||"","#")):e}var se=function e(){r(this,e)};function oe(e,t,n){if(Array.isArray(e))return e.map((function(e,t){return oe(e,String(t),n)}));if(e&&"function"===typeof e.toJSON){var i=n&&n.anchors&&n.anchors.get(e);i&&(n.onCreate=function(e){i.res=e,delete n.onCreate});var r=e.toJSON(t,n);return i&&n.onCreate&&n.onCreate(r),r}return n&&n.keep||"bigint"!==typeof e?e:Number(e)}var ae=function(e){u(n,e);var t=y(n);function n(e){var i;return r(this,n),(i=t.call(this)).value=e,i}return o(n,[{key:"toJSON",value:function(e,t){return t&&t.keep?this.value:oe(this.value,e,t)}},{key:"toString",value:function(){return String(this.value)}}]),n}(se);function ue(e,t,n){for(var i=n,r=t.length-1;r>=0;--r){var s=t[r];if(Number.isInteger(s)&&s>=0){var o=[];o[s]=i,i=o}else{var a={};Object.defineProperty(a,s,{value:i,writable:!0,enumerable:!0,configurable:!0}),i=a}}return e.createNode(i,!1)}var le=function(e){return null==e||"object"===i(e)&&e[Symbol.iterator]().next().done},ce=function(e){u(n,e);var t=y(n);function n(e){var i;return r(this,n),a(m(i=t.call(this)),"items",[]),i.schema=e,i}return o(n,[{key:"addIn",value:function(e,t){if(le(e))this.add(t);else{var i=v(e),r=i[0],s=i.slice(1),o=this.get(r,!0);if(o instanceof n)o.addIn(s,t);else{if(void 0!==o||!this.schema)throw new Error("Expected YAML collection at ".concat(r,". Remaining path: ").concat(s));this.set(r,ue(this.schema,s,t))}}}},{key:"deleteIn",value:function(e){var t=v(e),i=t[0],r=t.slice(1);if(0===r.length)return this.delete(i);var s=this.get(i,!0);if(s instanceof n)return s.deleteIn(r);throw new Error("Expected YAML collection at ".concat(i,". Remaining path: ").concat(r))}},{key:"getIn",value:function(e,t){var i=v(e),r=i[0],s=i.slice(1),o=this.get(r,!0);return 0===s.length?!t&&o instanceof ae?o.value:o:o instanceof n?o.getIn(s,t):void 0}},{key:"hasAllNullValues",value:function(){return this.items.every((function(e){if(!e||"PAIR"!==e.type)return!1;var t=e.value;return null==t||t instanceof ae&&null==t.value&&!t.commentBefore&&!t.comment&&!t.tag}))}},{key:"hasIn",value:function(e){var t=v(e),i=t[0],r=t.slice(1);if(0===r.length)return this.has(i);var s=this.get(i,!0);return s instanceof n&&s.hasIn(r)}},{key:"setIn",value:function(e,t){var i=v(e),r=i[0],s=i.slice(1);if(0===s.length)this.set(r,t);else{var o=this.get(r,!0);if(o instanceof n)o.setIn(s,t);else{if(void 0!==o||!this.schema)throw new Error("Expected YAML collection at ".concat(r,". Remaining path: ").concat(s));this.set(r,ue(this.schema,s,t))}}}},{key:"toJSON",value:function(){return null}},{key:"toString",value:function(e,t,i,r){var s=this,o=t.blockItem,a=t.flowChars,u=t.isMap,l=t.itemIndent,c=e,h=c.indent,p=c.indentStep,d=c.stringify,m=this.type===N.FLOW_MAP||this.type===N.FLOW_SEQ||e.inFlow;m&&(l+=p);var f=u&&this.hasAllNullValues();e=Object.assign({},e,{allNullValues:f,indent:l,inFlow:m,type:null});var y,g=!1,_=!1,v=this.items.reduce((function(t,n,i){var r;n&&(!g&&n.spaceBefore&&t.push({type:"comment",str:""}),n.commentBefore&&n.commentBefore.match(/^.*$/gm).forEach((function(e){t.push({type:"comment",str:"#".concat(e)})})),n.comment&&(r=n.comment),m&&(!g&&n.spaceBefore||n.commentBefore||n.comment||n.key&&(n.key.commentBefore||n.key.comment)||n.value&&(n.value.commentBefore||n.value.comment))&&(_=!0)),g=!1;var o=d(n,e,(function(){return r=null}),(function(){return g=!0}));return m&&!_&&o.includes("\n")&&(_=!0),m&&i<s.items.length-1&&(o+=","),o=re(o,l,r),g&&(r||m)&&(g=!1),t.push({type:"item",str:o}),t}),[]);if(0===v.length)y=a.start+a.end;else if(m){var b=a.start,T=a.end,w=v.map((function(e){return e.str}));if(_||w.reduce((function(e,t){return e+t.length+2}),2)>n.maxFlowStringSingleLineLength){y=b;var k,L=S(w);try{for(L.s();!(k=L.n()).done;){var O=k.value;y+=O?"\n".concat(p).concat(h).concat(O):"\n"}}catch(P){L.e(P)}finally{L.f()}y+="\n".concat(h).concat(T)}else y="".concat(b," ").concat(w.join(" ")," ").concat(T)}else{var x=v.map(o);y=x.shift();var C,E=S(x);try{for(E.s();!(C=E.n()).done;){var A=C.value;y+=A?"\n".concat(h).concat(A):"\n"}}catch(P){E.e(P)}finally{E.f()}}return this.comment?(y+="\n"+this.comment.replace(/^/gm,"".concat(h,"#")),i&&i()):g&&r&&r(),y}}]),n}(se);function he(e){var t=e instanceof ae?e.value:e;return t&&"string"===typeof t&&(t=Number(t)),Number.isInteger(t)&&t>=0?t:null}a(ce,"maxFlowStringSingleLineLength",60);var pe=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"add",value:function(e){this.items.push(e)}},{key:"delete",value:function(e){var t=he(e);return"number"===typeof t&&this.items.splice(t,1).length>0}},{key:"get",value:function(e,t){var n=he(e);if("number"===typeof n){var i=this.items[n];return!t&&i instanceof ae?i.value:i}}},{key:"has",value:function(e){var t=he(e);return"number"===typeof t&&t<this.items.length}},{key:"set",value:function(e,t){var n=he(e);if("number"!==typeof n)throw new Error("Expected a valid index, not ".concat(e,"."));this.items[n]=t}},{key:"toJSON",value:function(e,t){var n=[];t&&t.onCreate&&t.onCreate(n);var i,r=0,s=S(this.items);try{for(s.s();!(i=s.n()).done;){var o=i.value;n.push(oe(o,String(r++),t))}}catch(a){s.e(a)}finally{s.f()}return n}},{key:"toString",value:function(e,t,i){return e?g(l(n.prototype),"toString",this).call(this,e,{blockItem:function(e){return"comment"===e.type?e.str:"- ".concat(e.str)},flowChars:{start:"[",end:"]"},isMap:!1,itemIndent:(e.indent||"")+"  "},t,i):JSON.stringify(this)}}]),n}(ce),de=function(e){u(n,e);var t=y(n);function n(e){var i,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return r(this,n),(i=t.call(this)).key=e,i.value=s,i.type=n.Type.PAIR,i}return o(n,[{key:"commentBefore",get:function(){return this.key instanceof se?this.key.commentBefore:void 0},set:function(e){if(null==this.key&&(this.key=new ae(null)),!(this.key instanceof se)){throw new Error("Pair.commentBefore is an alias for Pair.key.commentBefore. To set it, the key must be a Node.")}this.key.commentBefore=e}},{key:"addToJSMap",value:function(e,t){var n=oe(this.key,"",e);if(t instanceof Map){var r=oe(this.value,n,e);t.set(n,r)}else if(t instanceof Set)t.add(n);else{var s=function(e,t,n){return null===t?"":"object"!==i(t)?String(t):e instanceof se&&n&&n.doc?e.toString({anchors:Object.create(null),doc:n.doc,indent:"",indentStep:n.indentStep,inFlow:!0,inStringifyKey:!0,stringify:n.stringify}):JSON.stringify(t)}(this.key,n,e),o=oe(this.value,s,e);s in t?Object.defineProperty(t,s,{value:o,writable:!0,enumerable:!0,configurable:!0}):t[s]=o}return t}},{key:"toJSON",value:function(e,t){var n=t&&t.mapAsMap?new Map:{};return this.addToJSMap(t,n)}},{key:"toString",value:function(e,t,n){if(!e||!e.doc)return JSON.stringify(this);var r=e.doc.options,s=r.indent,o=r.indentSeq,a=r.simpleKeys,u=this.key,l=this.value,c=u instanceof se&&u.comment;if(a){if(c)throw new Error("With simple keys, key nodes cannot have comments");if(u instanceof ce){throw new Error("With simple keys, collection cannot be used as a key value")}}var h=!a&&(!u||c||(u instanceof se?u instanceof ce||u.type===N.BLOCK_FOLDED||u.type===N.BLOCK_LITERAL:"object"===i(u))),p=e,d=p.doc,m=p.indent,f=p.indentStep,y=p.stringify;e=Object.assign({},e,{implicitKey:!h,indent:m+f});var g=!1,_=y(u,e,(function(){return c=null}),(function(){return g=!0}));if(_=re(_,e.indent,c),!h&&_.length>1024){if(a)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");h=!0}if(e.allNullValues&&!a)return this.comment?(_=re(_,e.indent,this.comment),t&&t()):g&&!c&&n&&n(),e.inFlow&&!h?_:"? ".concat(_);_=h?"? ".concat(_,"\n").concat(m,":"):"".concat(_,":"),this.comment&&(_=re(_,e.indent,this.comment),t&&t());var v="",b=null;if(l instanceof se){if(l.spaceBefore&&(v="\n"),l.commentBefore){var T=l.commentBefore.replace(/^/gm,"".concat(e.indent,"#"));v+="\n".concat(T)}b=l.comment}else l&&"object"===i(l)&&(l=d.schema.createNode(l,!0));e.implicitKey=!1,!h&&!this.comment&&l instanceof ae&&(e.indentAtStart=_.length+1),g=!1,!o&&s>=2&&!e.inFlow&&!h&&l instanceof pe&&l.type!==N.FLOW_SEQ&&!l.tag&&!d.anchors.getName(l)&&(e.indent=e.indent.substr(2));var w=y(l,e,(function(){return b=null}),(function(){return g=!0})),k=" ";if(v||this.comment)k="".concat(v,"\n").concat(e.indent);else if(!h&&l instanceof ce){("["===w[0]||"{"===w[0])&&!w.includes("\n")||(k="\n".concat(e.indent))}else"\n"===w[0]&&(k="");return g&&!b&&n&&n(),re(_+k+w,e.indent,b)}}]),n}(se);a(de,"Type",{PAIR:"PAIR",MERGE_PAIR:"MERGE_PAIR"});var me=function e(t,n){if(t instanceof fe){var i=n.get(t.source);return i.count*i.aliasCount}if(t instanceof ce){var r,s=0,o=S(t.items);try{for(o.s();!(r=o.n()).done;){var a=e(r.value,n);a>s&&(s=a)}}catch(c){o.e(c)}finally{o.f()}return s}if(t instanceof de){var u=e(t.key,n),l=e(t.value,n);return Math.max(u,l)}return 1},fe=function(e){u(n,e);var t=y(n);function n(e){var i;return r(this,n),(i=t.call(this)).source=e,i.type=N.ALIAS,i}return o(n,[{key:"tag",set:function(e){throw new Error("Alias nodes cannot have tags")}},{key:"toJSON",value:function(e,t){if(!t)return oe(this.source,e,t);var n=t.anchors,i=t.maxAliasCount,r=n.get(this.source);if(!r||void 0===r.res){var s="This should not happen: Alias anchor was not resolved?";throw this.cstNode?new R(this.cstNode,s):new ReferenceError(s)}if(i>=0&&(r.count+=1,0===r.aliasCount&&(r.aliasCount=me(this.source,n)),r.count*r.aliasCount>i)){var o="Excessive alias count indicates a resource exhaustion attack";throw this.cstNode?new R(this.cstNode,o):new ReferenceError(o)}return r.res}},{key:"toString",value:function(e){return n.stringify(this,e)}}],[{key:"stringify",value:function(e,t){var n=e.range,i=e.source,r=t.anchors,s=t.doc,o=t.implicitKey,a=t.inStringifyKey,u=Object.keys(r).find((function(e){return r[e]===i}));if(!u&&a&&(u=s.anchors.getName(i)||s.anchors.newName()),u)return"*".concat(u).concat(o?" ":"");var l=s.anchors.getName(i)?"Alias node must be after source node":"Source node not found for alias node";throw new Error("".concat(l," [").concat(n,"]"))}}]),n}(se);function ye(e,t){var n,i=t instanceof ae?t.value:t,r=S(e);try{for(r.s();!(n=r.n()).done;){var s=n.value;if(s instanceof de){if(s.key===t||s.key===i)return s;if(s.key&&s.key.value===i)return s}}}catch(o){r.e(o)}finally{r.f()}}a(fe,"default",!0);var ge=function(e){u(n,e);var t=y(n);function n(){return r(this,n),t.apply(this,arguments)}return o(n,[{key:"add",value:function(e,t){e?e instanceof de||(e=new de(e.key||e,e.value)):e=new de(e);var n=ye(this.items,e.key),i=this.schema&&this.schema.sortMapEntries;if(n){if(!t)throw new Error("Key ".concat(e.key," already set"));n.value=e.value}else if(i){var r=this.items.findIndex((function(t){return i(e,t)<0}));-1===r?this.items.push(e):this.items.splice(r,0,e)}else this.items.push(e)}},{key:"delete",value:function(e){var t=ye(this.items,e);return!!t&&this.items.splice(this.items.indexOf(t),1).length>0}},{key:"get",value:function(e,t){var n=ye(this.items,e),i=n&&n.value;return!t&&i instanceof ae?i.value:i}},{key:"has",value:function(e){return!!ye(this.items,e)}},{key:"set",value:function(e,t){this.add(new de(e,t),!0)}},{key:"toJSON",value:function(e,t,n){var i=n?new n:t&&t.mapAsMap?new Map:{};t&&t.onCreate&&t.onCreate(i);var r,s=S(this.items);try{for(s.s();!(r=s.n()).done;){r.value.addToJSMap(t,i)}}catch(o){s.e(o)}finally{s.f()}return i}},{key:"toString",value:function(e,t,i){if(!e)return JSON.stringify(this);var r,s=S(this.items);try{for(s.s();!(r=s.n()).done;){var o=r.value;if(!(o instanceof de))throw new Error("Map items must all be pairs; found ".concat(JSON.stringify(o)," instead"))}}catch(a){s.e(a)}finally{s.f()}return g(l(n.prototype),"toString",this).call(this,e,{blockItem:function(e){return e.str},flowChars:{start:"{",end:"}"},isMap:!0,itemIndent:e.indent||""},t,i)}}]),n}(ce),_e="<<",ve=function(e){u(n,e);var t=y(n);function n(e){var i;if(r(this,n),e instanceof de){var s=e.value;s instanceof pe||((s=new pe).items.push(e.value),s.range=e.value.range),(i=t.call(this,e.key,s)).range=e.range}else i=t.call(this,new ae(_e),new pe);return i.type=de.Type.MERGE_PAIR,f(i)}return o(n,[{key:"addToJSMap",value:function(e,t){var n,i=S(this.value.items);try{for(i.s();!(n=i.n()).done;){var r=n.value.source;if(!(r instanceof ge))throw new Error("Merge sources must be maps");var s,o=S(r.toJSON(null,e,Map));try{for(o.s();!(s=o.n()).done;){var a=_(s.value,2),u=a[0],l=a[1];t instanceof Map?t.has(u)||t.set(u,l):t instanceof Set?t.add(u):Object.prototype.hasOwnProperty.call(t,u)||Object.defineProperty(t,u,{value:l,writable:!0,enumerable:!0,configurable:!0})}}catch(c){o.e(c)}finally{o.f()}}}catch(c){i.e(c)}finally{i.f()}return t}},{key:"toString",value:function(e,t){var i=this.value;if(i.items.length>1)return g(l(n.prototype),"toString",this).call(this,e,t);this.value=i.items[0];var r=g(l(n.prototype),"toString",this).call(this,e,t);return this.value=i,r}}]),n}(de),be={defaultType:N.BLOCK_LITERAL,lineWidth:76},Te={trueStr:"true",falseStr:"false"},we={asBigInt:!1},ke={nullStr:"null"},Se={defaultType:N.PLAIN,doubleQuoted:{jsonEncoding:!1,minMultiLineLength:40},fold:{lineWidth:80,minContentWidth:20}};function Le(e,t,n){var i,r=S(t);try{for(r.s();!(i=r.n()).done;){var s=i.value,o=s.format,a=s.test,u=s.resolve;if(a){var l=e.match(a);if(l){var c=u.apply(null,l);return c instanceof ae||(c=new ae(c)),o&&(c.format=o),c}}}}catch(h){r.e(h)}finally{r.f()}return n&&(e=n(e)),new ae(e)}var Ne="flow",Oe="block",xe="quoted",Ce=function(e,t){for(var n=e[t+1];" "===n||"\t"===n;){do{n=e[t+=1]}while(n&&"\n"!==n);n=e[t+1]}return t};function Ee(e,t,n,i){var r=i.indentAtStart,s=i.lineWidth,o=void 0===s?80:s,a=i.minContentWidth,u=void 0===a?20:a,l=i.onFold,c=i.onOverflow;if(!o||o<0)return e;var h=Math.max(1+u,1+o-t.length);if(e.length<=h)return e;var p=[],d={},m=o-t.length;"number"===typeof r&&(r>o-Math.max(2,u)?p.push(0):m=o-r);var f,y=void 0,g=void 0,_=!1,v=-1,b=-1,T=-1;for(n===Oe&&-1!==(v=Ce(e,v))&&(m=v+h);f=e[v+=1];){if(n===xe&&"\\"===f){switch(b=v,e[v+1]){case"x":v+=3;break;case"u":v+=5;break;case"U":v+=9;break;default:v+=1}T=v}if("\n"===f)n===Oe&&(v=Ce(e,v)),m=v+h,y=void 0;else{if(" "===f&&g&&" "!==g&&"\n"!==g&&"\t"!==g){var w=e[v+1];w&&" "!==w&&"\n"!==w&&"\t"!==w&&(y=v)}if(v>=m)if(y)p.push(y),m=y+h,y=void 0;else if(n===xe){for(;" "===g||"\t"===g;)g=f,f=e[v+=1],_=!0;var k=v>T+1?v-2:b-1;if(d[k])return e;p.push(k),d[k]=!0,m=k+h,y=void 0}else _=!0}g=f}if(_&&c&&c(),0===p.length)return e;l&&l();for(var S=e.slice(0,p[0]),L=0;L<p.length;++L){var N=p[L],O=p[L+1]||e.length;0===N?S="\n".concat(t).concat(e.slice(0,O)):(n===xe&&d[N]&&(S+="".concat(e[N],"\\")),S+="\n".concat(t).concat(e.slice(N+1,O)))}return S}var Ae=function(e){var t=e.indentAtStart;return t?Object.assign({indentAtStart:t},Se.fold):Se.fold},Pe=function(e){return/^(%|---|\.\.\.)/m.test(e)};function Fe(e,t){var n=t.implicitKey,i=Se.doubleQuoted,r=i.jsonEncoding,s=i.minMultiLineLength,o=JSON.stringify(e);if(r)return o;for(var a=t.indent||(Pe(e)?"  ":""),u="",l=0,c=0,h=o[c];h;h=o[++c])if(" "===h&&"\\"===o[c+1]&&"n"===o[c+2]&&(u+=o.slice(l,c)+"\\ ",l=c+=1,h="\\"),"\\"===h)switch(o[c+1]){case"u":u+=o.slice(l,c);var p=o.substr(c+2,4);switch(p){case"0000":u+="\\0";break;case"0007":u+="\\a";break;case"000b":u+="\\v";break;case"001b":u+="\\e";break;case"0085":u+="\\N";break;case"00a0":u+="\\_";break;case"2028":u+="\\L";break;case"2029":u+="\\P";break;default:"00"===p.substr(0,2)?u+="\\x"+p.substr(2):u+=o.substr(c,6)}l=(c+=5)+1;break;case"n":if(n||'"'===o[c+2]||o.length<s)c+=1;else{for(u+=o.slice(l,c)+"\n\n";"\\"===o[c+2]&&"n"===o[c+3]&&'"'!==o[c+4];)u+="\n",c+=2;u+=a," "===o[c+2]&&(u+="\\"),l=(c+=1)+1}break;default:c+=1}return u=l?u+o.slice(l):o,n?u:Ee(u,a,xe,Ae(t))}function Me(e,t){if(t.implicitKey){if(/\n/.test(e))return Fe(e,t)}else if(/[ \t]\n|\n[ \t]/.test(e))return Fe(e,t);var n=t.indent||(Pe(e)?"  ":""),i="'"+e.replace(/'/g,"''").replace(/\n+/g,"$&\n".concat(n))+"'";return t.implicitKey?i:Ee(i,n,Ne,Ae(t))}function je(e,t,n,i){var r=e.comment,s=e.type,o=e.value;if(/\n[\t ]+$/.test(o)||/^\s*$/.test(o))return Fe(o,t);var a=t.indent||(t.forceBlockIndent||Pe(o)?"  ":""),u=a?"2":"1",l=s!==N.BLOCK_FOLDED&&(s===N.BLOCK_LITERAL||!function(e,t,n){if(!t||t<0)return!1;var i=t-n,r=e.length;if(r<=i)return!1;for(var s=0,o=0;s<r;++s)if("\n"===e[s]){if(s-o>i)return!0;if(r-(o=s+1)<=i)return!1}return!0}(o,Se.fold.lineWidth,a.length)),c=l?"|":">";if(!o)return c+"\n";var h="",p="";if(o=o.replace(/[\n\t ]*$/,(function(e){var t=e.indexOf("\n");return-1===t?c+="-":o!==e&&t===e.length-1||(c+="+",i&&i()),p=e.replace(/\n$/,""),""})).replace(/^[\n ]*/,(function(e){-1!==e.indexOf(" ")&&(c+=u);var t=e.match(/ +$/);return t?(h=e.slice(0,-t[0].length),t[0]):(h=e,"")})),p&&(p=p.replace(/\n+(?!\n|$)/g,"$&".concat(a))),h&&(h=h.replace(/\n+/g,"$&".concat(a))),r&&(c+=" #"+r.replace(/ ?[\r\n]+/g," "),n&&n()),!o)return"".concat(c).concat(u,"\n").concat(a).concat(p);if(l)return o=o.replace(/\n+/g,"$&".concat(a)),"".concat(c,"\n").concat(a).concat(h).concat(o).concat(p);o=o.replace(/\n+/g,"\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,"$&".concat(a));var d=Ee("".concat(h).concat(o).concat(p),a,Oe,Se.fold);return"".concat(c,"\n").concat(a).concat(d)}function Re(e,t,n,i){var r=Se.defaultType,s=t.implicitKey,o=t.inFlow,a=e,u=a.type,l=a.value;"string"!==typeof l&&(l=String(l),e=Object.assign({},e,{value:l}));var c=function(r){switch(r){case N.BLOCK_FOLDED:case N.BLOCK_LITERAL:return je(e,t,n,i);case N.QUOTE_DOUBLE:return Fe(l,t);case N.QUOTE_SINGLE:return Me(l,t);case N.PLAIN:return function(e,t,n,i){var r=e.comment,s=e.type,o=e.value,a=t.actualString,u=t.implicitKey,l=t.indent,c=t.inFlow;if(u&&/[\n[\]{},]/.test(o)||c&&/[[\]{},]/.test(o))return Fe(o,t);if(!o||/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return u||c||-1===o.indexOf("\n")?-1!==o.indexOf('"')&&-1===o.indexOf("'")?Me(o,t):Fe(o,t):je(e,t,n,i);if(!u&&!c&&s!==N.PLAIN&&-1!==o.indexOf("\n"))return je(e,t,n,i);if(""===l&&Pe(o))return t.forceBlockIndent=!0,je(e,t,n,i);var h=o.replace(/\n+/g,"$&\n".concat(l));if(a){var p=t.doc.schema.tags;if("string"!==typeof Le(h,p,p.scalarFallback).value)return Fe(o,t)}var d=u?h:Ee(h,l,Ne,Ae(t));return!r||c||-1===d.indexOf("\n")&&-1===r.indexOf("\n")?d:(n&&n(),function(e,t,n){if(!n)return e;var i=n.replace(/[\s\S]^/gm,"$&".concat(t,"#"));return"#".concat(i,"\n").concat(t).concat(e)}(d,l,r))}(e,t,n,i);default:return null}};u!==N.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f]/.test(l)?u=N.QUOTE_DOUBLE:!s&&!o||u!==N.BLOCK_FOLDED&&u!==N.BLOCK_LITERAL||(u=N.QUOTE_DOUBLE);var h=c(u);if(null===h&&null===(h=c(r)))throw new Error("Unsupported default string type ".concat(r));return h}function Ie(e){var t=e.format,n=e.minFractionDigits,i=e.tag,r=e.value;if("bigint"===typeof r)return String(r);if(!isFinite(r))return isNaN(r)?".nan":r<0?"-.inf":".inf";var s=JSON.stringify(r);if(!t&&n&&(!i||"tag:yaml.org,2002:float"===i)&&/^\d/.test(s)){var o=s.indexOf(".");o<0&&(o=s.length,s+=".");for(var a=n-(s.length-o-1);a-- >0;)s+="0"}return s}function Be(e,t){var n,i,r;switch(t.type){case N.FLOW_MAP:n="}",i="flow map";break;case N.FLOW_SEQ:n="]",i="flow sequence";break;default:return void e.push(new I(t,"Not a flow collection!?"))}for(var s=t.items.length-1;s>=0;--s){var o=t.items[s];if(!o||o.type!==N.COMMENT){r=o;break}}if(r&&r.char!==n){var a,u="Expected ".concat(i," to end with ").concat(n);"number"===typeof r.offset?(a=new I(t,u)).offset=r.offset+1:(a=new I(r,u),r.range&&r.range.end&&(a.offset=r.range.end-r.range.start)),e.push(a)}}function De(e,t){var n=t.context.src[t.range.start-1];if("\n"!==n&&"\t"!==n&&" "!==n){e.push(new I(t,"Comments must be separated from other tokens by white space characters"))}}function Ue(e,t){var n=String(t),i=n.substr(0,8)+"..."+n.substr(-8);return new I(e,'The "'.concat(i,'" key is too long'))}function ze(e,t){var n,i=S(t);try{for(i.s();!(n=i.n()).done;){var r=n.value,s=r.afterKey,o=r.before,a=r.comment,u=e.items[o];u?(s&&u.value&&(u=u.value),void 0===a?!s&&u.commentBefore||(u.spaceBefore=!0):u.commentBefore?u.commentBefore+="\n"+a:u.commentBefore=a):void 0!==a&&(e.comment?e.comment+="\n"+a:e.comment=a)}}catch(l){i.e(l)}finally{i.f()}}function We(e,t){var n=t.strValue;return n?"string"===typeof n?n:(n.errors.forEach((function(n){n.source||(n.source=t),e.errors.push(n)})),n.str):""}function Je(e,t){var n=t.tag,i=t.type,r=!1;if(n){var s=n.handle,o=n.suffix,a=n.verbatim;if(a){if("!"!==a&&"!!"!==a)return a;var u="Verbatim tags aren't resolved, so ".concat(a," is invalid.");e.errors.push(new I(t,u))}else if("!"!==s||o)try{return function(e,t){var n=t.tag,i=n.handle,r=n.suffix,s=e.tagPrefixes.find((function(e){return e.handle===i}));if(!s){var o=e.getDefaults().tagPrefixes;if(o&&(s=o.find((function(e){return e.handle===i}))),!s)throw new I(t,"The ".concat(i," tag handle is non-default and was not declared."))}if(!r)throw new I(t,"The ".concat(i," tag has no suffix."));if("!"===i&&"1.0"===(e.version||e.options.version)){if("^"===r[0])return e.warnings.push(new D(t,"YAML 1.0 ^ tag expansion is not supported")),r;if(/[:/]/.test(r)){var a=r.match(/^([a-z0-9-]+)\/(.*)/i);return a?"tag:".concat(a[1],".yaml.org,2002:").concat(a[2]):"tag:".concat(r)}}return s.prefix+decodeURIComponent(r)}(e,t)}catch(l){e.errors.push(l)}else r=!0}switch(i){case N.BLOCK_FOLDED:case N.BLOCK_LITERAL:case N.QUOTE_DOUBLE:case N.QUOTE_SINGLE:return x.STR;case N.FLOW_MAP:case N.MAP:return x.MAP;case N.FLOW_SEQ:case N.SEQ:return x.SEQ;case N.PLAIN:return r?x.STR:null;default:return null}}function Ge(e,t,n){var i,r=e.schema.tags,s=[],o=S(r);try{for(o.s();!(i=o.n()).done;){var a=i.value;if(a.tag===n){if(!a.test){var u=a.resolve(e,t);return u instanceof ce?u:new ae(u)}s.push(a)}}}catch(c){o.e(c)}finally{o.f()}var l=We(e,t);return"string"===typeof l&&s.length>0?Le(l,s,r.scalarFallback):null}function He(e,t,n){try{var i=Ge(e,t,n);if(i)return n&&t.tag&&(i.tag=n),i}catch(u){return u.source||(u.source=t),e.errors.push(u),null}try{var r=function(e){switch(e.type){case N.FLOW_MAP:case N.MAP:return x.MAP;case N.FLOW_SEQ:case N.SEQ:return x.SEQ;default:return x.STR}}(t);if(!r)throw new Error("The tag ".concat(n," is unavailable"));var s="The tag ".concat(n," is unavailable, falling back to ").concat(r);e.warnings.push(new D(t,s));var o=Ge(e,t,r);return o.tag=n,o}catch(u){var a=new R(t,u.message);return a.stack=u.stack,e.errors.push(a),null}}var qe=function(e){if(!e)return!1;var t=e.type;return t===N.MAP_KEY||t===N.MAP_VALUE||t===N.SEQ_ITEM};function Ke(e,t){if(!t)return null;t.error&&e.errors.push(t.error);var n=function(e,t){var n,i={before:[],after:[]},r=!1,s=!1,o=S(qe(t.context.parent)?t.context.parent.props.concat(t.props):t.props);try{for(o.s();!(n=o.n()).done;){var a=n.value,u=a.start,l=a.end;switch(t.context.src[u]){case L.COMMENT:t.commentHasRequiredWhitespace(u)||e.push(new I(t,"Comments must be separated from other tokens by white space characters"));var c=t.header,h=t.valueRange;(h&&(u>h.start||c&&u>c.start)?i.after:i.before).push(t.context.src.slice(u+1,l));break;case L.ANCHOR:r&&e.push(new I(t,"A node can have at most one anchor")),r=!0;break;case L.TAG:s&&e.push(new I(t,"A node can have at most one tag")),s=!0}}}catch(p){o.e(p)}finally{o.f()}return{comments:i,hasAnchor:r,hasTag:s}}(e.errors,t),i=n.comments,r=n.hasAnchor,s=n.hasTag;if(r){var o=e.anchors,a=t.anchor,u=o.getNode(a);u&&(o.map[o.newName(a)]=u),o.map[a]=t}if(t.type===N.ALIAS&&(r||s)){e.errors.push(new I(t,"An alias node must not specify any properties"))}var l=function(e,t){var n=e.anchors,i=e.errors,r=e.schema;if(t.type===N.ALIAS){var s=t.rawValue,o=n.getNode(s);if(!o){var a="Aliased anchor not found: ".concat(s);return i.push(new R(t,a)),null}var u=new fe(o);return n._cstAliases.push(u),u}var l=Je(e,t);if(l)return He(e,t,l);if(t.type!==N.PLAIN){var c="Failed to resolve ".concat(t.type," node here");return i.push(new B(t,c)),null}try{return Le(We(e,t),r.tags,r.tags.scalarFallback)}catch(h){return h.source||(h.source=t),i.push(h),null}}(e,t);if(l){l.range=[t.range.start,t.range.end],e.options.keepCstNodes&&(l.cstNode=t),e.options.keepNodeTypes&&(l.type=t.type);var c=i.before.join("\n");c&&(l.commentBefore=l.commentBefore?"".concat(l.commentBefore,"\n").concat(c):c);var h=i.after.join("\n");h&&(l.comment=l.comment?"".concat(l.comment,"\n").concat(h):h)}return t.resolved=l}function Ve(e,t){if(t.type!==N.MAP&&t.type!==N.FLOW_MAP){var n="A ".concat(t.type," node cannot be resolved as a mapping");return e.errors.push(new B(t,n)),null}var i=t.type===N.FLOW_MAP?function(e,t){for(var n=[],i=[],r=void 0,s=!1,o="{",a=0;a<t.items.length;++a){var u=t.items[a];if("string"===typeof u.char){var l=u.char,c=u.offset;if("?"===l&&void 0===r&&!s){s=!0,o=":";continue}if(":"===l){if(void 0===r&&(r=null),":"===o){o=",";continue}}else if(s&&(void 0===r&&","!==l&&(r=null),s=!1),void 0!==r&&(i.push(new de(r)),r=void 0,","===l)){o=":";continue}if("}"===l){if(a===t.items.length-1)continue}else if(l===o){o=":";continue}var h="Flow map contains an unexpected ".concat(l),p=new B(t,h);p.offset=c,e.errors.push(p)}else u.type===N.BLANK_LINE?n.push({afterKey:!!r,before:i.length}):u.type===N.COMMENT?(De(e.errors,u),n.push({afterKey:!!r,before:i.length,comment:u.comment})):void 0===r?(","===o&&e.errors.push(new I(u,"Separator , missing in flow map")),r=Ke(e,u)):(","!==o&&e.errors.push(new I(u,"Indicator : missing in flow map entry")),i.push(new de(r,Ke(e,u))),r=void 0,s=!1)}Be(e.errors,t),void 0!==r&&i.push(new de(r));return{comments:n,items:i}}(e,t):function(e,t){for(var n=[],i=[],r=void 0,s=null,o=0;o<t.items.length;++o){var a=t.items[o];switch(a.type){case N.BLANK_LINE:n.push({afterKey:!!r,before:i.length});break;case N.COMMENT:n.push({afterKey:!!r,before:i.length,comment:a.comment});break;case N.MAP_KEY:void 0!==r&&i.push(new de(r)),a.error&&e.errors.push(a.error),r=Ke(e,a.node),s=null;break;case N.MAP_VALUE:if(void 0===r&&(r=null),a.error&&e.errors.push(a.error),!a.context.atLineStart&&a.node&&a.node.type===N.MAP&&!a.node.context.atLineStart){var u="Nested mappings are not allowed in compact mappings";e.errors.push(new I(a.node,u))}var l=a.node;if(!l&&a.props.length>0){(l=new U(N.PLAIN,[])).context={parent:a,src:a.context.src};var c=a.range.start+1;if(l.range={start:c,end:c},l.valueRange={start:c,end:c},"number"===typeof a.range.origStart){var h=a.range.origStart+1;l.range.origStart=l.range.origEnd=h,l.valueRange.origStart=l.valueRange.origEnd=h}}var p=new de(r,Ke(e,l));Ze(a,p),i.push(p),r&&"number"===typeof s&&a.range.start>s+1024&&e.errors.push(Ue(t,r)),r=void 0,s=null;break;default:void 0!==r&&i.push(new de(r)),r=Ke(e,a),s=a.range.start,a.error&&e.errors.push(a.error);e:for(var d=o+1;;++d){var m=t.items[d];switch(m&&m.type){case N.BLANK_LINE:case N.COMMENT:continue e;case N.MAP_VALUE:break e;default:var f="Implicit map keys need to be followed by map values";e.errors.push(new I(a,f));break e}}if(a.valueRangeContainsNewline){var y="Implicit map keys need to be on a single line";e.errors.push(new I(a,y))}}}void 0!==r&&i.push(new de(r));return{comments:n,items:i}}(e,t),r=i.comments,s=i.items,o=new ge;o.items=s,ze(o,r);for(var a=!1,u=0;u<s.length;++u){var l=s[u].key;if(l instanceof ce&&(a=!0),e.schema.merge&&l&&l.value===_e){s[u]=new ve(s[u]);var c=s[u].value.items,h=null;c.some((function(e){if(e instanceof fe){var t=e.source.type;return t!==N.MAP&&t!==N.FLOW_MAP&&(h="Merge nodes aliases can only point to maps")}return h="Merge nodes can only have Alias nodes as values"})),h&&e.errors.push(new I(t,h))}else for(var p=u+1;p<s.length;++p){var d=s[p].key;if(l===d||l&&d&&Object.prototype.hasOwnProperty.call(l,"value")&&l.value===d.value){var m='Map keys must be unique; "'.concat(l,'" is repeated');e.errors.push(new I(t,m));break}}}if(a&&!e.options.mapAsMap){e.warnings.push(new D(t,"Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this."))}return t.resolved=o,o}var Qe=function(e){var t=e.context,n=t.lineStart,i=t.node,r=t.src,s=e.props;if(0===s.length)return!1;var o=s[0].start;if(i&&o>i.valueRange.start)return!1;if(r[o]!==L.COMMENT)return!1;for(var a=n;a<o;++a)if("\n"===r[a])return!1;return!0};function Ze(e,t){if(Qe(e)){var n=e.getPropValue(0,L.COMMENT,!0),i=!1,r=t.value.commentBefore;if(r&&r.startsWith(n))t.value.commentBefore=r.substr(n.length+1),i=!0;else{var s=t.value.comment;!e.node&&s&&s.startsWith(n)&&(t.value.comment=s.substr(n.length+1),i=!0)}i&&(t.comment=n)}}function Ye(e,t){if(t.type!==N.SEQ&&t.type!==N.FLOW_SEQ){var n="A ".concat(t.type," node cannot be resolved as a sequence");return e.errors.push(new B(t,n)),null}var i=t.type===N.FLOW_SEQ?function(e,t){for(var n=[],i=[],r=!1,s=void 0,o=null,a="[",u=null,l=0;l<t.items.length;++l){var c=t.items[l];if("string"===typeof c.char){var h=c.char,p=c.offset;if(":"===h||!r&&void 0===s||(r&&void 0===s&&(s=a?i.pop():null),i.push(new de(s)),r=!1,s=void 0,o=null),h===a)a=null;else if(a||"?"!==h){if("["!==a&&":"===h&&void 0===s){if(","===a){if((s=i.pop())instanceof de){var d=new I(t,"Chaining flow sequence pairs is invalid");d.offset=p,e.errors.push(d)}if(!r&&"number"===typeof o){var m=c.range?c.range.start:c.offset;m>o+1024&&e.errors.push(Ue(t,s));for(var f=u.context.src,y=o;y<m;++y)if("\n"===f[y]){var g="Implicit keys of flow sequence pairs need to be on a single line";e.errors.push(new I(u,g));break}}}else s=null;o=null,r=!1,a=null}else if("["===a||"]"!==h||l<t.items.length-1){var _="Flow sequence contains an unexpected ".concat(h),v=new B(t,_);v.offset=p,e.errors.push(v)}}else r=!0}else if(c.type===N.BLANK_LINE)n.push({before:i.length});else if(c.type===N.COMMENT)De(e.errors,c),n.push({comment:c.comment,before:i.length});else{if(a){var b="Expected a ".concat(a," in flow sequence");e.errors.push(new I(c,b))}var T=Ke(e,c);void 0===s?(i.push(T),u=c):(i.push(new de(s,T)),s=void 0),o=c.range.start,a=","}}Be(e.errors,t),void 0!==s&&i.push(new de(s));return{comments:n,items:i}}(e,t):function(e,t){for(var n=[],i=[],r=0;r<t.items.length;++r){var s=t.items[r];switch(s.type){case N.BLANK_LINE:n.push({before:i.length});break;case N.COMMENT:n.push({comment:s.comment,before:i.length});break;case N.SEQ_ITEM:if(s.error&&e.errors.push(s.error),i.push(Ke(e,s.node)),s.hasProps){var o="Sequence items cannot have tags or anchors before the - indicator";e.errors.push(new I(s,o))}break;default:s.error&&e.errors.push(s.error),e.errors.push(new B(s,"Unexpected ".concat(s.type," node in sequence")))}}return{comments:n,items:i}}(e,t),r=i.comments,s=i.items,o=new pe;if(o.items=s,ze(o,r),!e.options.mapAsMap&&s.some((function(e){return e instanceof de&&e.key instanceof ce}))){e.warnings.push(new D(t,"Keys with collection values will be stringified as YAML due to JS Object restrictions. Use mapAsMap: true to avoid this."))}return t.resolved=o,o}var Xe=n(85224),$e={identify:function(e){return e instanceof Uint8Array},default:!1,tag:"tag:yaml.org,2002:binary",resolve:function(e,t){var n=We(e,t);if("function"===typeof Buffer)return Buffer.from(n,"base64");if("function"===typeof atob){for(var i=atob(n.replace(/[\n\r]/g,"")),r=new Uint8Array(i.length),s=0;s<i.length;++s)r[s]=i.charCodeAt(s);return r}return e.errors.push(new R(t,"This environment does not support reading binary tags; either Buffer or atob is required")),null},options:be,stringify:function(e,t,n,i){var r,s=e.comment,o=e.type,a=e.value;if("function"===typeof Buffer)r=a instanceof Buffer?a.toString("base64"):Buffer.from(a.buffer).toString("base64");else{if("function"!==typeof btoa)throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");for(var u="",l=0;l<a.length;++l)u+=String.fromCharCode(a[l]);r=btoa(u)}if(o||(o=be.defaultType),o===N.QUOTE_DOUBLE)a=r;else{for(var c=be.lineWidth,h=Math.ceil(r.length/c),p=new Array(h),d=0,m=0;d<h;++d,m+=c)p[d]=r.substr(m,c);a=p.join(o===N.BLOCK_LITERAL?"\n":" ")}return Re({comment:s,type:o,value:a},t,n,i)}};function et(e,t){for(var n=Ye(e,t),i=0;i<n.items.length;++i){var r=n.items[i];if(!(r instanceof de)){if(r instanceof ge){if(r.items.length>1){throw new I(t,"Each pair must have its own sequence indicator")}var s=r.items[0]||new de;r.commentBefore&&(s.commentBefore=s.commentBefore?"".concat(r.commentBefore,"\n").concat(s.commentBefore):r.commentBefore),r.comment&&(s.comment=s.comment?"".concat(r.comment,"\n").concat(s.comment):r.comment),r=s}n.items[i]=r instanceof de?r:new de(r)}}return n}function tt(e,t,n){var i=new pe(e);i.tag="tag:yaml.org,2002:pairs";var r,s=S(t);try{for(s.s();!(r=s.n()).done;){var o=r.value,a=void 0,u=void 0;if(Array.isArray(o)){if(2!==o.length)throw new TypeError("Expected [key, value] tuple: ".concat(o));a=o[0],u=o[1]}else if(o&&o instanceof Object){var l=Object.keys(o);if(1!==l.length)throw new TypeError("Expected { key: value } tuple: ".concat(o));u=o[a=l[0]]}else a=o;var c=e.createPair(a,u,n);i.items.push(c)}}catch(h){s.e(h)}finally{s.f()}return i}var nt={default:!1,tag:"tag:yaml.org,2002:pairs",resolve:et,createNode:tt},it=function(e){u(n,e);var t=y(n);function n(){var e;return r(this,n),a(m(e=t.call(this)),"add",ge.prototype.add.bind(m(e))),a(m(e),"delete",ge.prototype.delete.bind(m(e))),a(m(e),"get",ge.prototype.get.bind(m(e))),a(m(e),"has",ge.prototype.has.bind(m(e))),a(m(e),"set",ge.prototype.set.bind(m(e))),e.tag=n.tag,e}return o(n,[{key:"toJSON",value:function(e,t){var n=new Map;t&&t.onCreate&&t.onCreate(n);var i,r=S(this.items);try{for(r.s();!(i=r.n()).done;){var s=i.value,o=void 0,a=void 0;if(s instanceof de?(o=oe(s.key,"",t),a=oe(s.value,o,t)):o=oe(s,"",t),n.has(o))throw new Error("Ordered maps must not include duplicate keys");n.set(o,a)}}catch(u){r.e(u)}finally{r.f()}return n}}]),n}(pe);a(it,"tag","tag:yaml.org,2002:omap");var rt={identify:function(e){return e instanceof Map},nodeClass:it,default:!1,tag:"tag:yaml.org,2002:omap",resolve:function(e,t){var n,i=et(e,t),r=[],s=S(i.items);try{for(s.s();!(n=s.n()).done;){var o=n.value.key;if(o instanceof ae){if(r.includes(o.value)){throw new I(t,"Ordered maps must not include duplicate keys")}r.push(o.value)}}}catch(a){s.e(a)}finally{s.f()}return Object.assign(new it,i)},createNode:function(e,t,n){var i=tt(e,t,n),r=new it;return r.items=i.items,r}},st=function(e){u(n,e);var t=y(n);function n(){var e;return r(this,n),(e=t.call(this)).tag=n.tag,e}return o(n,[{key:"add",value:function(e){var t=e instanceof de?e:new de(e);ye(this.items,t.key)||this.items.push(t)}},{key:"get",value:function(e,t){var n=ye(this.items,e);return!t&&n instanceof de?n.key instanceof ae?n.key.value:n.key:n}},{key:"set",value:function(e,t){if("boolean"!==typeof t)throw new Error("Expected boolean value for set(key, value) in a YAML set, not ".concat(i(t)));var n=ye(this.items,e);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new de(e))}},{key:"toJSON",value:function(e,t){return g(l(n.prototype),"toJSON",this).call(this,e,t,Set)}},{key:"toString",value:function(e,t,i){if(!e)return JSON.stringify(this);if(this.hasAllNullValues())return g(l(n.prototype),"toString",this).call(this,e,t,i);throw new Error("Set items must all have null values")}}]),n}(ge);a(st,"tag","tag:yaml.org,2002:set");var ot={identify:function(e){return e instanceof Set},nodeClass:st,default:!1,tag:"tag:yaml.org,2002:set",resolve:function(e,t){var n=Ve(e,t);if(!n.hasAllNullValues())throw new I(t,"Set items must all have null values");return Object.assign(new st,n)},createNode:function(e,t,n){var i,r=new st,s=S(t);try{for(s.s();!(i=s.n()).done;){var o=i.value;r.items.push(e.createPair(o,null,n))}}catch(a){s.e(a)}finally{s.f()}return r}},at=function(e,t){var n=t.split(":").reduce((function(e,t){return 60*e+Number(t)}),0);return"-"===e?-n:n},ut=function(e){var t=e.value;if(isNaN(t)||!isFinite(t))return Ie(t);var n="";t<0&&(n="-",t=Math.abs(t));var i=[t%60];return t<60?i.unshift(0):(t=Math.round((t-i[0])/60),i.unshift(t%60),t>=60&&(t=Math.round((t-i[0])/60),i.unshift(t))),n+i.map((function(e){return e<10?"0"+String(e):String(e)})).join(":").replace(/000000\d*$/,"")},lt={identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+)$/,resolve:function(e,t,n){return at(t,n.replace(/_/g,""))},stringify:ut},ct={identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^([-+]?)([0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*)$/,resolve:function(e,t,n){return at(t,n.replace(/_/g,""))},stringify:ut},ht={identify:function(e){return 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:function(e,t,n,i,r,s,o,a,u){a&&(a=(a+"00").substr(1,3));var l=Date.UTC(t,n-1,i,r||0,s||0,o||0,a||0);if(u&&"Z"!==u){var c=at(u[0],u.slice(1));Math.abs(c)<30&&(c*=60),l-=6e4*c}return new Date(l)},stringify:function(e){return e.value.toISOString().replace(/((T00:00)?:00)?\.000Z$/,"")}};function pt(e){var t="undefined"!==typeof Xe&&{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0,REACT_APP_VERSION:"3.0.0",REACT_APP_NAME:"web-toolbox"}||{};return e?"undefined"!==typeof YAML_SILENCE_DEPRECATION_WARNINGS?!YAML_SILENCE_DEPRECATION_WARNINGS:!t.YAML_SILENCE_DEPRECATION_WARNINGS:"undefined"!==typeof YAML_SILENCE_WARNINGS?!YAML_SILENCE_WARNINGS:!t.YAML_SILENCE_WARNINGS}function dt(e,t){if(pt(!1)){var n="undefined"!==typeof Xe&&Xe.emitWarning;n?n(e,t):console.warn(t?"".concat(t,": ").concat(e):e)}}var mt={};var ft={createNode:function(e,t,n){var r=new ge(e);if(t instanceof Map){var s,o=S(t);try{for(o.s();!(s=o.n()).done;){var a=_(s.value,2),u=a[0],l=a[1];r.items.push(e.createPair(u,l,n))}}catch(d){o.e(d)}finally{o.f()}}else if(t&&"object"===i(t))for(var c=0,h=Object.keys(t);c<h.length;c++){var p=h[c];r.items.push(e.createPair(p,t[p],n))}return"function"===typeof e.sortMapEntries&&r.items.sort(e.sortMapEntries),r},default:!0,nodeClass:ge,tag:"tag:yaml.org,2002:map",resolve:Ve};var yt={createNode:function(e,t,n){var i=new pe(e);if(t&&t[Symbol.iterator]){var r,s=S(t);try{for(s.s();!(r=s.n()).done;){var o=r.value,a=e.createNode(o,n.wrapScalars,null,n);i.items.push(a)}}catch(u){s.e(u)}finally{s.f()}}return i},default:!0,nodeClass:pe,tag:"tag:yaml.org,2002:seq",resolve:Ye},gt=[ft,yt,{identify:function(e){return"string"===typeof e},default:!0,tag:"tag:yaml.org,2002:str",resolve:We,stringify:function(e,t,n,i){return Re(e,t=Object.assign({actualString:!0},t),n,i)},options:Se}],_t=function(e){return"bigint"===typeof e||Number.isInteger(e)},vt=function(e,t,n){return we.asBigInt?BigInt(e):parseInt(t,n)};function bt(e,t,n){var i=e.value;return _t(i)&&i>=0?n+i.toString(t):Ie(e)}var Tt={identify:function(e){return null==e},createNode:function(e,t,n){return n.wrapScalars?new ae(null):null},default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:function(){return null},options:ke,stringify:function(){return ke.nullStr}},wt={identify:function(e){return"boolean"===typeof e},default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:function(e){return"t"===e[0]||"T"===e[0]},options:Te,stringify:function(e){return e.value?Te.trueStr:Te.falseStr}},kt={identify:function(e){return _t(e)&&e>=0},default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o([0-7]+)$/,resolve:function(e,t){return vt(e,t,8)},options:we,stringify:function(e){return bt(e,8,"0o")}},St={identify:_t,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:function(e){return vt(e,e,10)},options:we,stringify:Ie},Lt={identify:function(e){return _t(e)&&e>=0},default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x([0-9a-fA-F]+)$/,resolve:function(e,t){return vt(e,t,16)},options:we,stringify:function(e){return bt(e,16,"0x")}},Nt={identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:function(e,t){return t?NaN:"-"===e[0]?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY},stringify:Ie},Ot={identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:function(e){return parseFloat(e)},stringify:function(e){var t=e.value;return Number(t).toExponential()}},xt={identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.([0-9]+)|[0-9]+\.([0-9]*))$/,resolve:function(e,t,n){var i=t||n,r=new ae(parseFloat(e));return i&&"0"===i[i.length-1]&&(r.minFractionDigits=i.length),r},stringify:Ie},Ct=gt.concat([Tt,wt,kt,St,Lt,Nt,Ot,xt]),Et=function(e){return"bigint"===typeof e||Number.isInteger(e)},At=function(e){var t=e.value;return JSON.stringify(t)},Pt=[ft,yt,{identify:function(e){return"string"===typeof e},default:!0,tag:"tag:yaml.org,2002:str",resolve:We,stringify:At},{identify:function(e){return null==e},createNode:function(e,t,n){return n.wrapScalars?new ae(null):null},default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:function(){return null},stringify:At},{identify:function(e){return"boolean"===typeof e},default:!0,tag:"tag:yaml.org,2002:bool",test:/^true|false$/,resolve:function(e){return"true"===e},stringify:At},{identify:Et,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:function(e){return we.asBigInt?BigInt(e):parseInt(e,10)},stringify:function(e){var t=e.value;return Et(t)?t.toString():JSON.stringify(t)}},{identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:function(e){return parseFloat(e)},stringify:At}];Pt.scalarFallback=function(e){throw new SyntaxError("Unresolved plain scalar ".concat(JSON.stringify(e)))};var Ft=function(e){return e.value?Te.trueStr:Te.falseStr},Mt=function(e){return"bigint"===typeof e||Number.isInteger(e)};function jt(e,t,n){var i=t.replace(/_/g,"");if(we.asBigInt){switch(n){case 2:i="0b".concat(i);break;case 8:i="0o".concat(i);break;case 16:i="0x".concat(i)}var r=BigInt(i);return"-"===e?BigInt(-1)*r:r}var s=parseInt(i,n);return"-"===e?-1*s:s}function Rt(e,t,n){var i=e.value;if(Mt(i)){var r=i.toString(t);return i<0?"-"+n+r.substr(1):n+r}return Ie(e)}var It=gt.concat([{identify:function(e){return null==e},createNode:function(e,t,n){return n.wrapScalars?new ae(null):null},default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:function(){return null},options:ke,stringify:function(){return ke.nullStr}},{identify:function(e){return"boolean"===typeof e},default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:function(){return!0},options:Te,stringify:Ft},{identify:function(e){return"boolean"===typeof e},default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/i,resolve:function(){return!1},options:Te,stringify:Ft},{identify:Mt,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^([-+]?)0b([0-1_]+)$/,resolve:function(e,t,n){return jt(t,n,2)},stringify:function(e){return Rt(e,2,"0b")}},{identify:Mt,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^([-+]?)0([0-7_]+)$/,resolve:function(e,t,n){return jt(t,n,8)},stringify:function(e){return Rt(e,8,"0")}},{identify:Mt,default:!0,tag:"tag:yaml.org,2002:int",test:/^([-+]?)([0-9][0-9_]*)$/,resolve:function(e,t,n){return jt(t,n,10)},stringify:Ie},{identify:Mt,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^([-+]?)0x([0-9a-fA-F_]+)$/,resolve:function(e,t,n){return jt(t,n,16)},stringify:function(e){return Rt(e,16,"0x")}},{identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.inf|(\.nan))$/i,resolve:function(e,t){return t?NaN:"-"===e[0]?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY},stringify:Ie},{identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?([0-9][0-9_]*)?(\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:function(e){return parseFloat(e.replace(/_/g,""))},stringify:function(e){var t=e.value;return Number(t).toExponential()}},{identify:function(e){return"number"===typeof e},default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.([0-9_]*)$/,resolve:function(e,t){var n=new ae(parseFloat(e.replace(/_/g,"")));if(t){var i=t.replace(/_/g,"");"0"===i[i.length-1]&&(n.minFractionDigits=i.length)}return n},stringify:Ie}],$e,rt,nt,ot,lt,ct,ht),Bt={core:Ct,failsafe:gt,json:Pt,yaml11:It},Dt={binary:$e,bool:wt,float:xt,floatExp:Ot,floatNaN:Nt,floatTime:ct,int:St,intHex:Lt,intOct:kt,intTime:lt,map:ft,null:Tt,omap:rt,pairs:nt,seq:yt,set:ot,timestamp:ht};function Ut(e,t,n){if(e instanceof se)return e;var r=n.defaultPrefix,s=n.onTagObj,o=n.prevObjects,a=n.schema,u=n.wrapScalars;t&&t.startsWith("!!")&&(t=r+t.slice(2));var l=function(e,t,n){if(t){var i=n.filter((function(e){return e.tag===t})),r=i.find((function(e){return!e.format}))||i[0];if(!r)throw new Error("Tag ".concat(t," not found"));return r}return n.find((function(t){return(t.identify&&t.identify(e)||t.class&&e instanceof t.class)&&!t.format}))}(e,t,a.tags);if(!l){if("function"===typeof e.toJSON&&(e=e.toJSON()),!e||"object"!==i(e))return u?new ae(e):e;l=e instanceof Map?ft:e[Symbol.iterator]?yt:ft}s&&(s(l),delete n.onTagObj);var c={value:void 0,node:void 0};if(e&&"object"===i(e)&&o){var h=o.get(e);if(h){var p=new fe(h);return n.aliasNodes.push(p),p}c.value=e,o.set(e,c)}return c.node=l.createNode?l.createNode(n.schema,e,n):u?new ae(e):e,t&&c.node instanceof se&&(c.node.tag=t),c.node}var zt=function(e,t){return e.key<t.key?-1:e.key>t.key?1:0},Wt=function(){function e(t){var n=t.customTags,i=t.merge,s=t.schema,o=t.sortMapEntries,a=t.tags;r(this,e),this.merge=!!i,this.name=s,this.sortMapEntries=!0===o?zt:o||null,!n&&a&&function(e,t){if(!mt[e]&&pt(!0)){mt[e]=!0;var n="The option '".concat(e,"' will be removed in a future release");dt(n+=t?", use '".concat(t,"' instead."):".","DeprecationWarning")}}("tags","customTags"),this.tags=function(e,t,n,i){var r=e[i.replace(/\W/g,"")];if(!r){var s=Object.keys(e).map((function(e){return JSON.stringify(e)})).join(", ");throw new Error('Unknown schema "'.concat(i,'"; use one of ').concat(s))}if(Array.isArray(n)){var o,a=S(n);try{for(a.s();!(o=a.n()).done;){var u=o.value;r=r.concat(u)}}catch(d){a.e(d)}finally{a.f()}}else"function"===typeof n&&(r=n(r.slice()));for(var l=0;l<r.length;++l){var c=r[l];if("string"===typeof c){var h=t[c];if(!h){var p=Object.keys(t).map((function(e){return JSON.stringify(e)})).join(", ");throw new Error('Unknown custom tag "'.concat(c,'"; use one of ').concat(p))}r[l]=h}}return r}(Bt,Dt,n||a,s)}return o(e,[{key:"createNode",value:function(t,n,i,r){var s={defaultPrefix:e.defaultPrefix,schema:this,wrapScalars:n};return Ut(t,i,r?Object.assign(r,s):s)}},{key:"createPair",value:function(e,t,n){n||(n={wrapScalars:!0});var i=this.createNode(e,n.wrapScalars,null,n),r=this.createNode(t,n.wrapScalars,null,n);return new de(i,r)}}]),e}();a(Wt,"defaultPrefix",O),a(Wt,"defaultTags",x);var Jt={anchorPrefix:"a",customTags:null,indent:2,indentSeq:!0,keepCstNodes:!1,keepNodeTypes:!0,keepBlobsInJSON:!0,mapAsMap:!1,maxAliasCount:100,prettyErrors:!1,simpleKeys:!1,version:"1.2"},Gt={get binary(){return be},set binary(e){Object.assign(be,e)},get bool(){return Te},set bool(e){Object.assign(Te,e)},get int(){return we},set int(e){Object.assign(we,e)},get null(){return ke},set null(e){Object.assign(ke,e)},get str(){return Se},set str(e){Object.assign(Se,e)}},Ht={"1.0":{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:O},{handle:"!!",prefix:"tag:private.yaml.org,2002:"}]},1.1:{schema:"yaml-1.1",merge:!0,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:O}]},1.2:{schema:"core",merge:!1,tagPrefixes:[{handle:"!",prefix:"!"},{handle:"!!",prefix:O}]}};function qt(e,t){if("1.0"===(e.version||e.options.version)){var n=t.match(/^tag:private\.yaml\.org,2002:([^:/]+)$/);if(n)return"!"+n[1];var i=t.match(/^tag:([a-zA-Z0-9-]+)\.yaml\.org,2002:(.*)/);return i?"!".concat(i[1],"/").concat(i[2]):"!".concat(t.replace(/^tag:/,""))}var r=e.tagPrefixes.find((function(e){return 0===t.indexOf(e.prefix)}));if(!r){var s=e.getDefaults().tagPrefixes;r=s&&s.find((function(e){return 0===t.indexOf(e.prefix)}))}if(!r)return"!"===t[0]?t:"!<".concat(t,">");var o=t.substr(r.prefix.length).replace(/[!,[\]{}]/g,(function(e){return{"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"}[e]}));return r.handle+o}function Kt(e,t,n,r){var s,o=t.doc,a=o.anchors,u=o.schema;if(!(e instanceof se)){var l={aliasNodes:[],onTagObj:function(e){return s=e},prevObjects:new Map};e=u.createNode(e,!0,null,l);var c,h=S(l.aliasNodes);try{for(h.s();!(c=h.n()).done;){var p=c.value;p.source=p.source.node;var d=a.getName(p.source);d||(d=a.newName(),a.map[d]=p.source)}}catch(y){h.e(y)}finally{h.f()}}if(e instanceof de)return e.toString(t,n,r);s||(s=function(e,t){if(t instanceof fe)return fe;if(t.tag){var n=e.filter((function(e){return e.tag===t.tag}));if(n.length>0)return n.find((function(e){return e.format===t.format}))||n[0]}var r,s;if(t instanceof ae){s=t.value;var o=e.filter((function(e){return e.identify&&e.identify(s)||e.class&&s instanceof e.class}));r=o.find((function(e){return e.format===t.format}))||o.find((function(e){return!e.format}))}else s=t,r=e.find((function(e){return e.nodeClass&&s instanceof e.nodeClass}));if(!r){var a=s&&s.constructor?s.constructor.name:i(s);throw new Error("Tag not resolved for ".concat(a," value"))}return r}(u.tags,e));var m=function(e,t,n){var i=n.anchors,r=n.doc,s=[],o=r.anchors.getName(e);return o&&(i[o]=e,s.push("&".concat(o))),e.tag?s.push(qt(r,e.tag)):t.default||s.push(qt(r,t.tag)),s.join(" ")}(e,s,t);m.length>0&&(t.indentAtStart=(t.indentAtStart||0)+m.length+1);var f="function"===typeof s.stringify?s.stringify(e,t,n,r):e instanceof ae?Re(e,t,n,r):e.toString(t,n,r);return m?e instanceof ae||"{"===f[0]||"["===f[0]?"".concat(m," ").concat(f):"".concat(m,"\n").concat(t.indent).concat(f):f}var Vt=function(){function e(t){r(this,e),a(this,"map",Object.create(null)),this.prefix=t}return o(e,[{key:"createAlias",value:function(e,t){return this.setAnchor(e,t),new fe(e)}},{key:"createMergePair",value:function(){for(var e=this,t=new ve,n=arguments.length,i=new Array(n),r=0;r<n;r++)i[r]=arguments[r];return t.value.items=i.map((function(t){if(t instanceof fe){if(t.source instanceof ge)return t}else if(t instanceof ge)return e.createAlias(t);throw new Error("Merge sources must be Map nodes or their Aliases")})),t}},{key:"getName",value:function(e){var t=this.map;return Object.keys(t).find((function(n){return t[n]===e}))}},{key:"getNames",value:function(){return Object.keys(this.map)}},{key:"getNode",value:function(e){return this.map[e]}},{key:"newName",value:function(e){e||(e=this.prefix);for(var t=Object.keys(this.map),n=1;;++n){var i="".concat(e).concat(n);if(!t.includes(i))return i}}},{key:"resolveNodes",value:function(){var e=this.map,t=this._cstAliases;Object.keys(e).forEach((function(t){e[t]=e[t].resolved})),t.forEach((function(e){e.source=e.source.resolved})),delete this._cstAliases}},{key:"setAnchor",value:function(t,n){if(null!=t&&!e.validAnchorNode(t))throw new Error("Anchors may only be set for Scalar, Seq and Map nodes");if(n&&/[\x00-\x19\s,[\]{}]/.test(n))throw new Error("Anchor names must not contain whitespace or control characters");var i=this.map,r=t&&Object.keys(i).find((function(e){return i[e]===t}));if(r){if(!n)return r;r!==n&&(delete i[r],i[n]=t)}else{if(!n){if(!t)return null;n=this.newName()}i[n]=t}return n}}],[{key:"validAnchorNode",value:function(e){return e instanceof ae||e instanceof pe||e instanceof ge}}]),e}(),Qt=function e(t,n){if(t&&"object"===i(t)){var r=t.tag;t instanceof ce?(r&&(n[r]=!0),t.items.forEach((function(t){return e(t,n)}))):t instanceof de?(e(t.key,n),e(t.value,n)):t instanceof ae&&r&&(n[r]=!0)}return n},Zt=function(e){return Object.keys(Qt(e,{}))};function Yt(e,t){var n=e.tagPrefixes,i=_(t.parameters,2),r=i[0],s=i[1];if(!r||!s){throw new I(t,"Insufficient parameters given for %TAG directive")}if(n.some((function(e){return e.handle===r}))){throw new I(t,"The %TAG directive must only be given at most once per handle in the same document.")}return{handle:r,prefix:s}}function Xt(e,t){var n=_(t.parameters,1)[0];if("YAML:1.0"===t.name&&(n="1.0"),!n){throw new I(t,"Insufficient parameters given for %YAML directive")}if(!Ht[n]){var i=e.version||e.options.version,r="Document will be parsed as YAML ".concat(i," rather than YAML ").concat(n);e.warnings.push(new D(t,r))}return n}function $t(e){if(e instanceof ce)return!0;throw new Error("Expected a YAML collection as document contents")}var en=function(){function e(t){r(this,e),this.anchors=new Vt(t.anchorPrefix),this.commentBefore=null,this.comment=null,this.contents=null,this.directivesEndMarker=null,this.errors=[],this.options=t,this.schema=null,this.tagPrefixes=[],this.version=null,this.warnings=[]}return o(e,[{key:"add",value:function(e){return $t(this.contents),this.contents.add(e)}},{key:"addIn",value:function(e,t){$t(this.contents),this.contents.addIn(e,t)}},{key:"delete",value:function(e){return $t(this.contents),this.contents.delete(e)}},{key:"deleteIn",value:function(e){return le(e)?null!=this.contents&&(this.contents=null,!0):($t(this.contents),this.contents.deleteIn(e))}},{key:"getDefaults",value:function(){return e.defaults[this.version]||e.defaults[this.options.version]||{}}},{key:"get",value:function(e,t){return this.contents instanceof ce?this.contents.get(e,t):void 0}},{key:"getIn",value:function(e,t){return le(e)?!t&&this.contents instanceof ae?this.contents.value:this.contents:this.contents instanceof ce?this.contents.getIn(e,t):void 0}},{key:"has",value:function(e){return this.contents instanceof ce&&this.contents.has(e)}},{key:"hasIn",value:function(e){return le(e)?void 0!==this.contents:this.contents instanceof ce&&this.contents.hasIn(e)}},{key:"set",value:function(e,t){$t(this.contents),this.contents.set(e,t)}},{key:"setIn",value:function(e,t){le(e)?this.contents=t:($t(this.contents),this.contents.setIn(e,t))}},{key:"setSchema",value:function(e,t){if(e||t||!this.schema){"number"===typeof e&&(e=e.toFixed(1)),"1.0"===e||"1.1"===e||"1.2"===e?(this.version?this.version=e:this.options.version=e,delete this.options.schema):e&&"string"===typeof e&&(this.options.schema=e),Array.isArray(t)&&(this.options.customTags=t);var n=Object.assign({},this.getDefaults(),this.options);this.schema=new Wt(n)}}},{key:"parse",value:function(e,t){this.options.keepCstNodes&&(this.cstNode=e),this.options.keepNodeTypes&&(this.type="DOCUMENT");var n=e.directives,i=void 0===n?[]:n,r=e.contents,s=void 0===r?[]:r,o=e.directivesEndMarker,a=e.error,u=e.valueRange;if(a&&(a.source||(a.source=this),this.errors.push(a)),function(e,t,n){var i,r=[],s=!1,o=S(t);try{for(o.s();!(i=o.n()).done;){var u=i.value,l=u.comment,c=u.name;switch(c){case"TAG":try{e.tagPrefixes.push(Yt(e,u))}catch(a){e.errors.push(a)}s=!0;break;case"YAML":case"YAML:1.0":e.version&&e.errors.push(new I(u,"The %YAML directive must only be given at most once per document."));try{e.version=Xt(e,u)}catch(a){e.errors.push(a)}s=!0;break;default:if(c){var h="YAML only supports %TAG and %YAML directives, and not %".concat(c);e.warnings.push(new D(u,h))}}l&&r.push(l)}}catch(p){o.e(p)}finally{o.f()}n&&!s&&"1.1"===(e.version||n.version||e.options.version)&&(e.tagPrefixes=n.tagPrefixes.map((function(e){return{handle:e.handle,prefix:e.prefix}})),e.version=n.version);e.commentBefore=r.join("\n")||null}(this,i,t),o&&(this.directivesEndMarker=!0),this.range=u?[u.start,u.end]:null,this.setSchema(),this.anchors._cstAliases=[],function(e,t){var n,i={before:[],after:[]},r=void 0,s=!1,o=S(t);try{for(o.s();!(n=o.n()).done;){var a=n.value;if(a.valueRange){if(void 0!==r){e.errors.push(new B(a,"Document contains trailing content not separated by a ... or --- line"));break}var u=Ke(e,a);s&&(u.spaceBefore=!0,s=!1),r=u}else null!==a.comment?(void 0===r?i.before:i.after).push(a.comment):a.type===N.BLANK_LINE&&(s=!0,void 0===r&&i.before.length>0&&!e.commentBefore&&(e.commentBefore=i.before.join("\n"),i.before=[]))}}catch(h){o.e(h)}finally{o.f()}if(e.contents=r||null,r){var l=i.before.join("\n");if(l){var c=r instanceof ce&&r.items[0]?r.items[0]:r;c.commentBefore=c.commentBefore?"".concat(l,"\n").concat(c.commentBefore):l}e.comment=i.after.join("\n")||null}else e.comment=i.before.concat(i.after).join("\n")||null}(this,s),this.anchors.resolveNodes(),this.options.prettyErrors){var l,c=S(this.errors);try{for(c.s();!(l=c.n()).done;){var h=l.value;h instanceof j&&h.makePretty()}}catch(f){c.e(f)}finally{c.f()}var p,d=S(this.warnings);try{for(d.s();!(p=d.n()).done;){var m=p.value;m instanceof j&&m.makePretty()}}catch(f){d.e(f)}finally{d.f()}}return this}},{key:"listNonDefaultTags",value:function(){return Zt(this.contents).filter((function(e){return 0!==e.indexOf(Wt.defaultPrefix)}))}},{key:"setTagPrefix",value:function(e,t){if("!"!==e[0]||"!"!==e[e.length-1])throw new Error("Handle must start and end with !");if(t){var n=this.tagPrefixes.find((function(t){return t.handle===e}));n?n.prefix=t:this.tagPrefixes.push({handle:e,prefix:t})}else this.tagPrefixes=this.tagPrefixes.filter((function(t){return t.handle!==e}))}},{key:"toJSON",value:function(e,t){var n=this,i=this.options,r=i.keepBlobsInJSON,s=i.mapAsMap,o=i.maxAliasCount,a=r&&("string"!==typeof e||!(this.contents instanceof ae)),u={doc:this,indentStep:"  ",keep:a,mapAsMap:a&&!!s,maxAliasCount:o,stringify:Kt},l=Object.keys(this.anchors.map);l.length>0&&(u.anchors=new Map(l.map((function(e){return[n.anchors.map[e],{alias:[],aliasCount:0,count:1}]}))));var c=oe(this.contents,e,u);if("function"===typeof t&&u.anchors){var h,p=S(u.anchors.values());try{for(p.s();!(h=p.n()).done;){var d=h.value,m=d.count;t(d.res,m)}}catch(f){p.e(f)}finally{p.f()}}return c}},{key:"toString",value:function(){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");var e=this.options.indent;if(!Number.isInteger(e)||e<=0){var t=JSON.stringify(e);throw new Error('"indent" option must be a positive integer, not '.concat(t))}this.setSchema();var n=[],i=!1;if(this.version){var r="%YAML 1.2";"yaml-1.1"===this.schema.name&&("1.0"===this.version?r="%YAML:1.0":"1.1"===this.version&&(r="%YAML 1.1")),n.push(r),i=!0}var s=this.listNonDefaultTags();this.tagPrefixes.forEach((function(e){var t=e.handle,r=e.prefix;s.some((function(e){return 0===e.indexOf(r)}))&&(n.push("%TAG ".concat(t," ").concat(r)),i=!0)})),(i||this.directivesEndMarker)&&n.push("---"),this.commentBefore&&(!i&&this.directivesEndMarker||n.unshift(""),n.unshift(this.commentBefore.replace(/^/gm,"#")));var o={anchors:Object.create(null),doc:this,indent:"",indentStep:" ".repeat(e),stringify:Kt},a=!1,u=null;if(this.contents){this.contents instanceof se&&(this.contents.spaceBefore&&(i||this.directivesEndMarker)&&n.push(""),this.contents.commentBefore&&n.push(this.contents.commentBefore.replace(/^/gm,"#")),o.forceBlockIndent=!!this.comment,u=this.contents.comment);var l=u?null:function(){return a=!0},c=Kt(this.contents,o,(function(){return u=null}),l);n.push(re(c,"",u))}else void 0!==this.contents&&n.push(Kt(this.contents,o));return this.comment&&(a&&!u||""===n[n.length-1]||n.push(""),n.push(this.comment.replace(/^/gm,"#"))),n.join("\n")+"\n"}}]),e}();a(en,"defaults",Ht);var tn=function(e){u(n,e);var t=y(n);function n(e){return r(this,n),t.call(this,Object.assign({},Jt,e))}return n}(en);function nn(e,t){var n=ie(e),i=new tn(t).parse(n[0]);if(n.length>1){i.errors.unshift(new I(n[1],"Source contains multiple documents; please use YAML.parseAllDocuments()"))}return i}var rn={createNode:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0;void 0===n&&"string"===typeof t&&(n=t,t=!0);var i=Object.assign({},en.defaults[Jt.version],Jt);return new Wt(i).createNode(e,t,n)},defaultOptions:Jt,Document:tn,parse:function(e,t){var n=nn(e,t);if(n.warnings.forEach((function(e){return dt(e)})),n.errors.length>0)throw n.errors[0];return n.toJSON()},parseAllDocuments:function(e,t){var n,i,r=[],s=S(ie(e));try{for(s.s();!(i=s.n()).done;){var o=i.value,a=new tn(t);a.parse(o,n),r.push(a),n=a}}catch(u){s.e(u)}finally{s.f()}return r},parseCST:ie,parseDocument:nn,scalarOptions:Gt,stringify:function(e,t){var n=new tn(t);return n.contents=e,String(n)}}},85683:e=>{"use strict";e.exports=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","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","Brahmi","Kaithi","Sora_Sompeng","Chakma","Mahajani","Sharada","Khojki","Multani","Khudawadi","Grantha","Tirhuta","Siddham","Modi","Takri","Ahom","Warang_Citi","Pau_Cin_Hau","Cuneiform","Egyptian_Hieroglyphs","Anatolian_Hieroglyphs","Mro","Bassa_Vah","Pahawh_Hmong","Miao","Duployan","SignWriting","Mende_Kikakui"],"eaw":["N","Na","A","W","H","F"]}')},68267:e=>{"use strict";e.exports=JSON.parse('{"type":"Buffer","data":[0,17,0,0,0,0,0,0,0,1,80,112,93,120,119,32,155,251,251,246,233,113,74,135,113,104,81,177,142,170,90,13,85,123,159,82,171,54,181,106,132,170,218,35,212,14,122,170,181,73,171,106,212,136,77,91,132,90,49,83,51,173,21,123,5,65,106,70,132,134,132,32,121,251,253,125,223,95,123,222,247,191,231,121,254,120,62,247,231,30,215,117,221,23,97,241,114,195,13,55,151,229,253,237,208,96,116,148,156,44,119,160,240,229,9,134,98,238,151,97,251,203,96,8,225,32,1,218,198,68,86,186,248,164,71,226,137,87,216,99,213,127,122,167,251,56,65,134,232,191,31,229,6,179,0,166,11,193,218,108,8,3,83,68,143,22,235,77,99,174,50,166,212,213,231,221,74,128,189,96,63,236,185,63,98,19,164,254,172,231,253,186,131,252,208,185,77,251,208,90,112,246,161,63,8,169,140,60,254,208,73,161,88,89,133,6,99,35,219,84,197,117,194,249,52,187,52,239,26,75,222,103,79,22,115,185,56,56,155,118,199,186,246,50,247,223,61,254,43,148,61,216,30,172,142,91,176,11,181,47,190,131,58,183,16,167,26,112,1,212,231,2,225,197,31,9,21,244,214,135,177,230,164,20,15,173,134,241,197,131,250,191,134,177,143,124,158,11,3,46,61,35,237,89,59,36,24,238,97,194,184,107,62,51,129,89,52,146,240,123,60,16,174,143,8,254,208,85,67,4,183,94,97,169,49,150,19,195,118,69,243,31,209,253,91,5,218,55,63,138,229,214,158,23,93,125,144,151,86,191,39,177,211,155,187,207,117,202,24,130,179,56,149,90,138,101,91,161,236,131,192,252,26,177,188,251,89,71,146,167,192,121,4,19,219,178,16,68,16,186,106,160,150,12,19,206,183,204,224,185,229,204,94,150,167,188,46,178,234,230,195,125,226,182,202,185,211,13,199,241,35,254,200,74,62,149,76,192,66,163,142,180,33,191,195,250,163,79,217,248,50,32,35,125,27,47,165,147,142,156,248,186,217,235,98,144,9,200,212,224,211,63,53,57,11,186,208,251,11,9,55,172,116,196,157,235,107,19,56,50,107,83,8,98,56,190,188,100,210,126,136,67,202,224,94,219,163,19,245,15,115,75,39,9,148,85,225,35,37,141,68,205,30,99,165,103,152,0,38,214,21,67,4,27,182,151,50,185,212,114,112,1,3,93,17,63,101,70,189,26,148,28,80,51,249,252,85,137,197,125,117,7,2,95,242,158,139,102,24,233,57,62,10,61,50,118,72,26,4,159,95,202,82,132,107,206,57,233,205,235,205,210,149,52,94,158,41,61,139,61,226,211,128,34,123,102,246,128,255,247,82,27,175,196,3,128,171,97,121,47,38,2,110,142,244,123,7,176,142,244,29,135,169,74,245,19,151,23,187,79,234,216,144,80,205,207,168,61,236,158,231,130,216,56,253,247,152,52,122,34,178,155,191,219,113,156,108,19,32,157,182,220,22,118,205,116,217,115,172,159,174,29,248,166,248,241,75,229,188,218,175,67,170,57,71,58,74,12,238,201,13,51,28,176,216,32,134,246,54,231,208,78,253,72,222,125,129,44,136,104,7,28,91,238,192,73,236,139,15,144,167,93,174,233,59,60,34,206,66,25,16,198,227,90,188,160,174,14,165,20,127,87,199,35,161,232,36,122,114,111,74,248,210,183,196,228,110,46,79,204,214,61,159,158,45,165,203,240,238,143,251,42,237,236,254,221,151,66,86,102,220,35,160,231,252,93,79,174,159,178,46,189,164,184,72,107,164,104,114,96,98,158,243,6,92,241,227,98,77,82,49,129,97,106,93,180,111,84,243,144,192,58,220,20,91,5,159,217,90,151,158,56,22,94,5,53,205,77,202,43,42,190,79,97,63,171,226,75,7,66,48,6,74,92,246,120,134,218,155,76,57,94,90,65,39,64,133,20,189,223,245,92,84,10,159,134,72,127,123,176,154,181,90,101,23,180,11,191,177,244,143,34,14,120,36,223,206,66,252,44,130,224,179,89,102,152,141,215,236,21,221,51,56,229,161,241,53,47,135,44,36,74,175,104,168,61,139,31,237,194,29,93,252,81,218,195,232,13,35,137,164,32,50,101,230,191,7,135,1,191,35,218,56,43,134,14,151,252,161,131,134,235,171,135,223,127,68,18,150,78,204,1,1,201,161,28,200,139,27,42,223,209,89,100,186,238,2,8,153,223,144,12,158,203,59,14,242,90,84,157,139,134,55,8,126,139,205,232,208,205,128,39,31,185,246,194,62,87,128,133,89,151,21,244,114,99,122,104,142,71,151,118,81,177,71,2,2,93,208,189,33,135,83,168,230,253,177,7,207,227,24,85,168,52,240,14,46,66,237,197,193,19,157,112,134,154,174,172,87,75,221,26,53,93,132,48,70,119,233,87,113,146,96,201,232,231,107,56,206,178,36,244,234,185,171,166,102,25,142,8,46,182,66,235,101,249,63,51,140,147,190,3,32,191,185,145,233,89,9,72,233,71,115,6,178,103,158,38,196,194,161,248,210,64,152,251,137,114,29,93,197,137,9,114,1,166,39,44,243,16,157,168,0,234,154,239,116,31,89,168,25,110,129,214,17,94,119,254,79,102,251,77,115,160,45,116,7,200,0,201,114,52,102,8,78,95,37,7,237,158,179,168,234,185,89,199,101,191,30,153,134,50,248,79,127,114,254,103,82,57,243,54,62,69,251,139,16,180,60,42,11,147,36,205,123,228,143,196,106,122,96,73,173,138,236,130,159,239,254,103,216,245,189,40,31,125,176,80,225,163,52,195,24,189,141,88,245,36,209,253,42,195,179,141,3,185,93,69,171,171,117,98,187,58,169,216,178,27,78,253,228,71,112,72,14,225,199,236,157,95,45,56,212,92,206,15,147,174,225,112,211,52,58,149,129,112,192,186,163,249,62,251,34,180,189,136,102,99,7,156,175,67,52,247,217,33,220,222,125,203,56,209,200,91,143,194,23,45,39,143,197,105,6,240,193,168,166,36,158,91,203,231,149,206,87,224,110,181,255,14,239,49,57,229,61,149,160,169,71,147,16,78,145,200,62,50,113,101,49,76,147,92,148,230,221,215,1,25,13,3,100,28,223,178,86,31,88,50,161,242,43,221,248,142,188,127,42,15,49,220,137,129,29,185,168,9,145,97,55,105,238,176,104,203,246,204,217,23,192,92,38,100,156,73,233,174,129,246,36,44,99,66,193,116,58,153,223,251,251,29,50,40,145,63,172,222,180,163,57,197,19,24,227,26,116,42,149,247,156,244,45,125,184,4,60,247,44,168,46,90,67,49,133,174,143,21,252,60,53,126,77,99,136,172,7,230,175,209,99,48,94,80,89,145,247,247,85,88,20,89,250,136,64,143,209,21,43,150,249,18,38,40,10,20,190,62,215,48,175,231,222,143,206,118,75,115,97,190,10,56,215,235,35,126,230,25,202,183,124,100,40,160,191,33,73,123,233,64,26,1,251,34,171,45,35,92,222,83,117,255,102,94,124,243,170,150,195,243,152,212,31,80,160,145,208,161,20,99,8,31,193,223,203,135,46,203,31,85,86,6,253,64,57,244,234,147,211,139,126,159,65,203,92,16,64,76,170,244,242,160,54,85,133,53,249,72,168,106,69,6,218,152,173,107,234,11,166,64,209,111,148,79,47,227,134,164,2,156,86,255,200,75,225,6,102,135,187,75,189,80,165,131,234,70,85,77,65,125,100,147,118,112,151,26,157,14,220,135,3,179,99,66,193,231,246,95,90,228,114,215,71,241,44,37,82,34,14,214,66,163,28,27,151,97,196,3,23,115,154,171,208,54,240,147,84,204,142,24,69,194,147,110,218,23,86,221,130,189,177,154,219,119,210,55,125,228,31,58,132,103,173,163,55,11,77,147,143,255,218,197,170,3,178,218,184,163,235,54,68,79,176,151,151,194,99,212,207,227,146,39,20,175,59,84,140,180,98,247,237,108,224,141,105,39,17,2,253,230,235,39,108,28,238,52,186,221,30,25,138,252,13,26,15,166,67,148,77,232,197,130,72,132,246,67,115,243,140,91,42,100,67,91,14,204,224,245,37,191,53,209,241,251,202,137,87,199,191,252,149,204,247,224,155,249,179,201,165,79,189,70,145,69,159,238,176,175,59,36,61,210,104,11,248,135,29,105,54,118,179,123,39,198,238,0,201,71,41,130,165,23,126,71,171,16,185,230,156,174,98,56,133,29,215,142,196,124,164,197,173,86,37,83,131,45,223,2,36,250,235,44,83,3,7,197,173,222,87,8,13,120,23,215,152,107,190,175,200,61,132,171,119,147,93,212,124,51,129,129,247,172,29,128,225,165,122,226,40,132,26,41,139,249,161,205,87,23,131,164,44,7,114,199,192,87,223,236,51,202,140,244,220,64,77,2,225,237,110,244,100,152,248,99,85,115,170,93,160,56,209,42,230,107,9,196,191,128,22,117,235,120,168,168,57,154,70,58,216,142,25,85,26,56,141,117,133,171,1,11,83,130,34,251,202,210,236,149,225,42,78,110,221,105,170,59,71,11,3,155,31,164,112,239,85,54,143,103,12,15,23,155,243,55,180,26,194,158,110,36,158,40,197,78,127,59,230,139,220,87,129,183,79,223,128,196,248,65,209,230,204,246,49,74,83,23,41,51,23,74,95,124,26,44,76,178,53,181,212,41,144,120,61,65,192,180,57,188,103,77,18,14,17,244,143,81,117,43,154,201,10,133,153,63,184,63,60,38,169,29,52,58,225,37,181,213,26,247,167,194,162,41,230,101,189,209,232,145,234,117,242,7,215,50,113,129,173,192,252,79,174,32,229,191,111,29,248,234,129,240,0,40,175,124,13,131,228,52,58,25,128,106,108,246,143,123,247,186,38,120,11,121,190,40,11,28,247,78,73,122,168,189,216,195,189,204,222,58,173,90,99,187,183,103,60,22,212,185,0,179,140,250,227,249,60,24,63,163,33,0,151,169,121,145,196,219,155,122,238,17,81,6,168,74,13,16,244,230,165,36,132,253,73,233,53,225,189,111,159,196,84,127,71,4,172,227,73,10,43,156,248,195,21,212,98,149,16,9,193,165,48,85,243,82,16,241,208,195,81,151,72,142,170,209,149,215,21,61,65,177,188,178,160,228,84,158,131,58,159,172,126,123,118,174,225,23,234,198,58,115,235,203,70,152,240,207,29,121,14,75,169,246,145,186,246,76,67,132,142,222,19,240,5,188,254,169,200,214,108,162,250,108,242,89,183,80,149,48,88,54,27,173,160,254,36,53,148,131,200,142,177,6,81,155,156,20,197,110,124,120,115,101,54,102,236,170,80,6,71,163,6,117,81,95,188,238,150,248,165,228,254,22,103,63,27,163,170,44,120,135,162,100,217,153,210,211,250,71,180,70,11,227,3,251,171,190,86,174,101,88,236,75,224,199,96,191,245,36,219,181,150,223,228,155,120,61,74,134,58,155,230,163,10,70,17,138,64,194,190,45,84,189,137,112,79,220,220,228,250,75,185,59,95,174,51,113,134,95,253,139,159,33,249,154,165,175,60,89,62,79,234,145,47,100,196,128,116,26,162,28,90,237,250,198,35,187,234,105,199,142,128,158,114,61,242,2,202,84,160,4,17,50,43,37,187,116,119,179,104,168,241,225,52,102,22,233,213,15,118,86,31,168,138,103,111,243,37,190,30,207,195,96,28,182,195,251,250,193,150,189,237,145,103,168,152,78,22,189,220,135,195,23,212,10,114,159,107,23,247,31,198,254,106,116,139,18,232,44,152,53,98,94,248,145,128,162,17,231,85,17,150,153,243,30,163,187,182,183,185,120,169,68,195,32,67,138,216,12,175,63,216,57,194,67,182,169,14,103,107,91,53,202,117,22,223,114,179,4,32,119,160,94,129,240,181,63,201,12,222,45,227,80,219,240,183,63,108,131,239,181,211,55,111,60,6,62,112,189,78,213,108,144,32,219,115,108,40,45,246,3,237,64,111,201,31,23,35,107,71,20,186,172,21,7,142,14,72,40,132,169,241,211,176,60,173,75,158,143,95,233,176,74,124,23,123,166,210,110,189,10,0,60,117,204,40,77,139,126,3,124,35,144,110,21,99,189,55,15,149,168,172,121,43,205,4,151,89,236,144,24,127,152,94,238,216,204,226,57,242,157,54,54,69,163,45,60,119,152,241,53,246,113,109,56,204,55,75,95,187,97,161,47,28,123,43,208,236,181,222,57,139,51,157,197,119,233,85,154,9,174,74,207,43,192,124,95,62,102,187,57,104,37,70,27,3,235,64,193,83,32,116,193,174,149,180,190,153,163,59,200,9,211,223,25,13,73,61,200,236,205,131,205,180,159,76,175,108,122,129,148,145,203,242,78,176,87,98,96,200,107,45,0,207,227,215,177,73,106,151,94,165,165,46,196,211,195,242,138,140,194,45,13,119,108,24,148,7,95,86,115,151,3,145,16,248,167,197,150,0,200,112,67,102,233,28,42,106,169,184,253,41,100,173,137,233,98,135,12,153,42,178,183,233,115,106,40,148,202,252,233,203,93,29,129,243,102,241,51,166,2,51,110,179,50,94,7,31,101,164,141,135,44,75,218,97,78,234,148,179,202,231,219,42,39,223,249,175,160,102,140,188,13,72,94,243,7,253,152,220,250,118,184,114,13,8,41,143,55,165,0,42,170,137,47,250,199,116,254,149,36,206,14,26,59,208,78,51,165,162,46,142,9,108,52,33,152,165,29,7,136,154,233,69,28,204,166,118,180,171,171,27,217,121,99,114,214,173,71,62,10,54,31,220,166,110,96,56,222,45,250,82,78,173,177,209,198,42,52,63,223,65,223,23,204,137,0,20,175,120,233,235,187,92,202,149,95,74,158,53,118,124,141,96,194,23,158,37,197,235,8,135,92,102,89,199,56,59,112,201,86,111,15,218,221,52,202,23,35,176,204,235,250,155,88,201,72,27,26,110,193,92,165,177,45,216,11,136,2,222,175,177,247,113,25,177,53,248,81,80,147,23,47,52,24,194,203,7,42,125,165,203,104,247,173,240,58,244,119,8,202,165,201,178,34,95,133,48,57,145,230,75,149,133,134,231,70,99,134,218,128,235,75,79,212,162,243,220,186,39,19,199,151,254,114,171,30,93,223,159,55,242,158,91,23,9,130,5,125,180,17,93,62,26,56,108,31,84,66,205,203,217,162,202,134,247,127,93,247,243,116,127,97,145,54,146,191,31,195,238,186,59,154,41,232,158,115,59,184,191,72,145,230,21,122,90,94,158,106,87,158,69,92,32,6,168,173,145,219,103,190,210,179,231,81,51,248,220,87,155,1,106,191,10,103,107,191,177,127,13,175,52,190,162,124,205,52,148,15,221,198,95,51,88,40,111,110,1,124,83,231,200,207,162,156,242,193,184,133,32,182,214,157,162,205,202,214,230,80,63,13,224,121,167,174,235,52,81,150,114,153,242,202,12,241,70,247,87,24,110,183,116,224,10,234,218,137,45,253,31,183,102,51,243,130,70,191,53,209,6,138,77,115,89,234,105,125,76,4,31,2,247,21,145,105,158,159,73,253,173,163,170,11,152,177,5,191,53,194,45,201,122,159,114,201,154,223,221,81,122,4,210,18,133,172,155,149,231,199,164,127,100,3,12,69,12,251,217,193,247,201,84,143,236,125,99,38,194,61,222,235,55,82,108,82,196,113,160,255,141,220,109,75,45,148,92,198,35,145,190,250,167,132,197,45,135,5,185,57,234,230,125,143,20,193,95,149,235,121,248,129,102,201,215,44,106,165,121,25,153,20,186,130,67,176,196,31,102,159,58,193,2,33,141,2,89,181,55,250,128,69,219,134,108,119,221,226,214,152,231,185,217,36,230,123,244,183,112,157,58,189,172,108,130,13,178,227,246,29,4,203,243,53,145,184,108,219,147,26,215,0,79,108,108,139,192,202,32,52,86,153,113,134,244,53,122,41,252,219,28,158,2,67,81,177,145,95,35,182,206,138,250,169,198,208,204,209,167,1,134,61,220,54,195,106,35,236,218,160,51,175,31,232,241,139,38,127,115,75,22,232,78,155,202,193,62,253,214,120,99,68,97,33,172,113,109,218,230,154,113,89,204,144,64,20,104,129,63,232,197,161,183,242,60,252,26,224,253,219,247,133,76,146,33,140,202,29,93,237,162,58,230,73,189,44,246,243,81,50,222,168,42,217,243,7,203,153,235,153,187,214,254,163,212,30,178,230,238,49,203,248,46,2,250,102,76,148,114,222,81,237,9,147,126,136,197,225,207,195,62,207,71,124,136,102,182,135,150,111,171,214,242,218,172,48,46,188,148,127,250,69,243,18,198,245,235,30,233,195,139,85,158,113,201,137,34,85,129,225,252,11,101,7,33,15,42,140,204,175,117,86,7,62,212,9,214,186,111,251,41,159,21,176,53,161,101,158,148,57,252,176,181,227,252,229,11,230,104,213,201,47,208,129,14,167,137,3,253,61,244,248,183,209,194,93,15,57,99,93,250,180,202,249,120,133,96,189,18,207,4,128,202,100,234,128,29,122,193,31,112,61,222,72,254,137,113,145,136,111,155,231,121,15,149,38,6,181,86,137,166,228,244,56,215,152,49,62,156,231,56,113,238,241,128,193,175,33,104,183,206,165,6,111,207,188,7,85,68,231,255,251,33,146,158,215,220,139,120,58,173,236,231,155,117,7,211,22,174,110,108,48,188,137,236,61,250,213,176,34,196,253,9,147,224,36,185,155,75,238,102,23,166,70,202,152,212,48,18,101,40,82,30,159,66,6,143,141,195,16,45,55,61,83,59,38,130,126,180,246,105,132,218,205,203,38,230,86,179,245,189,236,12,154,181,102,212,87,7,154,20,73,193,126,249,122,141,88,91,94,68,31,252,31,30,41,244,24,114,189,90,181,156,197,125,115,82,76,176,2,156,138,18,190,225,197,39,250,51,208,231,118,253,180,107,246,56,4,62,35,91,62,27,51,27,48,162,168,180,193,235,192,80,190,116,140,93,86,155,105,20,231,70,114,189,179,216,49,97,243,45,64,17,214,206,240,179,131,202,137,167,19,167,118,69,81,158,178,99,235,14,191,160,187,33,106,151,41,174,10,29,150,172,1,40,8,183,30,45,69,178,101,209,105,232,183,121,240,5,175,73,98,173,83,8,240,129,232,6,209,90,7,54,2,150,43,59,200,188,252,154,182,153,223,73,80,133,218,196,227,94,254,106,162,224,100,13,137,149,128,154,96,132,83,234,172,97,66,136,143,16,230,106,216,238,144,181,235,120,122,191,16,84,239,62,189,43,223,246,237,247,212,214,139,34,131,103,161,153,39,196,91,20,172,26,131,240,127,217,203,29,91,230,185,191,102,181,202,245,78,203,112,252,233,183,127,14,71,207,191,180,104,242,176,44,135,135,53,254,46,199,160,191,214,233,19,227,95,228,51,132,190,233,114,58,253,116,250,72,60,108,30,161,61,8,160,255,135,44,138,242,128,170,243,91,105,138,69,230,191,102,235,55,157,146,211,199,114,106,87,89,238,191,122,246,151,230,46,30,46,220,24,146,128,138,214,107,45,110,24,138,16,184,138,171,151,142,60,136,24,145,235,96,41,201,79,207,171,208,119,37,41,97,195,111,190,99,148,231,246,21,134,203,128,229,185,87,6,238,193,66,35,63,71,148,200,28,55,6,215,20,17,90,3,218,178,2,135,53,159,217,15,53,232,254,221,193,190,223,78,123,203,208,81,183,5,59,41,52,162,6,93,145,183,87,110,198,127,241,19,121,22,169,46,25,54,133,95,131,86,208,61,121,144,83,113,54,106,180,99,166,97,233,202,157,195,115,186,32,172,134,212,6,228,80,165,237,222,146,148,193,36,245,236,112,97,166,140,142,56,153,98,11,61,141,56,92,76,211,158,221,207,189,155,90,56,243,225,122,101,255,134,92,206,3,94,82,148,159,85,11,199,12,0,125,154,84,71,88,144,14,17,31,15,145,38,8,168,141,18,208,38,132,143,21,250,96,244,91,196,116,166,159,31,232,175,47,110,89,125,179,153,124,91,119,51,117,118,124,208,208,109,25,233,62,225,14,83,45,250,100,95,250,190,93,177,238,151,202,251,234,134,15,89,229,156,208,37,133,89,50,40,119,153,141,230,199,144,197,48,117,3,126,60,105,84,120,202,38,165,122,19,221,67,174,189,86,41,230,251,81,104,32,94,17,178,169,225,110,79,65,143,108,124,111,50,44,8,252,152,47,107,44,5,87,158,7,119,192,4,111,62,248,227,140,180,49,236,107,117,31,79,240,126,132,45,62,44,123,223,223,217,1,36,65,236,192,230,91,22,142,212,170,208,193,236,186,104,100,221,164,13,114,38,230,171,130,212,134,55,167,241,54,90,121,215,141,251,251,169,220,123,90,96,115,126,122,14,153,226,192,203,182,130,57,98,156,25,49,135,188,33,232,237,49,143,95,44,163,1,87,113,137,130,55,136,238,71,101,237,22,49,34,233,212,198,230,210,6,203,159,90,192,187,66,146,192,179,106,183,163,161,227,25,218,36,238,155,26,150,175,244,244,140,227,208,240,236,48,56,114,86,227,190,207,226,196,218,189,150,228,189,219,91,23,167,16,180,234,195,122,166,51,85,6,170,21,245,96,186,105,181,150,239,17,198,216,172,19,211,34,207,124,114,100,85,87,29,199,23,63,51,203,40,168,167,244,225,234,71,169,240,15,134,118,205,173,126,91,78,158,35,164,174,143,234,148,32,84,27,27,178,169,99,253,106,72,212,233,250,122,150,64,249,89,173,55,174,89,179,202,188,73,48,100,56,206,177,205,5,197,9,45,196,55,151,102,83,76,172,213,6,80,140,72,212,92,1,15,181,96,127,43,242,83,119,213,156,210,73,193,193,62,108,146,239,230,24,101,86,27,235,125,229,127,96,100,26,145,245,78,168,160,143,111,221,188,23,60,155,2,180,253,92,215,62,232,157,47,132,9,234,152,73,252,135,166,226,55,233,253,202,140,41,27,70,226,227,57,116,40,41,40,41,217,246,31,5,127,89,139,207,201,58,9,163,194,73,149,107,121,110,241,249,254,179,184,63,155,70,150,161,49,75,208,216,104,18,89,226,74,198,174,143,183,28,92,153,17,228,222,236,186,19,194,188,131,217,87,231,102,59,57,98,47,243,201,32,51,242,163,75,5,176,186,141,228,137,9,83,131,58,172,96,124,82,143,70,197,22,177,165,244,128,226,246,202,124,1,139,119,48,124,33,173,248,89,5,161,174,107,23,148,179,128,207,88,162,52,180,162,74,0,150,64,251,196,183,24,21,10,26,60,27,150,14,151,198,237,96,8,14,252,100,176,203,85,215,75,94,146,71,96,207,64,104,143,245,53,10,142,80,74,5,147,21,245,97,46,219,204,0,221,169,52,30,192,220,219,247,46,105,122,201,169,2,59,72,197,85,138,250,187,145,89,187,165,234,2,44,241,207,156,96,222,1,103,108,155,66,171,173,205,254,178,152,189,23,57,65,110,38,200,72,124,128,85,17,129,222,220,173,104,120,239,156,34,187,38,19,45,222,145,95,221,63,32,221,80,207,114,53,106,240,104,154,222,181,125,143,182,132,149,102,38,29,255,81,242,165,185,179,94,74,106,4,187,191,217,167,147,165,182,17,242,138,32,133,25,161,78,71,27,236,35,245,158,122,35,217,3,249,172,233,24,245,241,228,98,216,215,120,65,48,84,253,226,155,29,73,15,190,137,90,141,146,75,178,247,69,56,220,109,151,253,194,227,72,112,61,65,80,44,226,221,145,121,211,226,153,157,101,128,207,33,251,3,191,182,6,223,73,195,113,211,159,232,183,137,67,180,67,146,3,91,66,158,33,18,25,6,162,184,99,186,156,155,102,2,92,82,220,9,95,125,78,174,53,209,178,21,122,219,91,73,13,187,162,238,129,83,239,31,191,28,244,110,190,246,36,195,177,220,65,187,18,64,210,140,13,3,228,224,23,156,49,171,180,188,48,1,212,227,241,111,183,63,160,139,211,107,80,223,82,44,76,127,168,71,45,16,12,92,221,85,8,21,45,225,146,103,142,76,91,202,250,208,27,183,172,102,250,95,81,89,53,172,171,20,115,125,28,107,57,21,83,142,104,44,156,12,117,86,172,233,102,65,124,116,38,71,254,238,122,36,114,107,53,107,255,247,188,132,152,151,111,2,238,52,141,136,31,114,236,43,228,61,183,220,215,58,107,135,6,69,233,53,232,86,200,64,185,87,250,108,187,89,215,169,28,171,89,171,204,121,137,160,174,193,218,148,250,189,192,157,2,222,46,176,170,48,183,32,137,154,20,202,124,23,79,18,118,18,54,137,173,93,81,19,8,210,133,203,148,135,48,185,194,252,221,188,94,92,4,224,4,225,113,241,197,69,186,57,97,242,102,25,204,83,78,197,153,146,162,191,200,108,115,154,39,216,67,50,54,26,25,57,5,129,106,181,88,89,48,211,151,226,156,50,35,177,93,39,130,114,126,217,189,74,128,170,173,171,250,10,129,132,159,36,240,247,239,247,113,125,198,87,54,10,114,151,107,189,83,0,66,217,110,103,88,85,54,82,104,110,9,85,117,52,14,29,185,31,29,245,210,27,27,51,50,197,142,134,163,46,157,105,38,7,164,249,67,186,242,96,135,36,102,239,206,16,66,94,153,184,47,174,206,234,164,211,62,231,181,247,69,227,187,216,154,89,165,110,118,157,247,130,253,19,63,214,152,229,187,124,178,244,130,161,8,250,99,243,253,147,22,135,248,104,156,85,195,69,102,47,195,202,254,82,206,97,156,144,38,221,18,184,205,145,244,240,95,107,216,114,148,90,179,188,94,15,73,213,55,57,221,75,145,75,200,252,209,169,254,79,73,47,38,50,29,216,254,238,76,66,157,26,73,21,153,110,55,154,27,243,212,29,181,24,128,50,197,68,167,242,13,164,40,166,161,3,178,98,251,103,35,31,254,128,228,2,43,153,184,76,87,7,99,189,136,143,241,242,51,182,168,202,161,81,125,143,60,236,175,159,13,175,81,27,230,223,215,21,156,29,16,21,61,94,28,47,189,188,128,133,141,130,64,108,242,211,192,104,99,54,96,87,148,166,209,38,81,116,200,182,21,150,155,83,249,239,213,68,126,235,104,250,192,85,226,178,70,220,185,211,145,216,164,82,137,40,69,93,226,137,58,192,107,40,243,93,135,173,141,231,60,41,243,221,210,225,183,214,237,77,144,183,138,54,156,206,152,20,167,112,178,2,142,233,63,118,245,186,168,115,23,237,127,161,52,190,131,205,172,61,70,212,249,193,113,236,1,63,153,194,249,28,52,152,146,118,252,174,124,101,20,84,195,181,22,28,55,67,185,108,164,223,64,242,95,168,10,106,221,170,115,124,90,128,73,84,128,194,126,198,254,178,9,125,246,17,219,161,151,61,90,62,82,153,82,79,184,139,26,53,23,76,154,194,121,137,90,179,47,145,76,153,190,193,213,231,96,153,128,9,180,32,135,176,143,228,70,130,232,176,239,34,35,45,124,168,150,112,164,169,121,239,50,255,182,82,11,227,217,225,46,205,126,72,41,99,237,130,155,136,53,200,105,43,176,115,38,228,217,248,151,29,192,128,88,247,230,58,135,35,49,148,29,151,223,83,75,72,81,189,39,56,113,61,130,8,178,206,88,55,219,65,26,110,60,62,91,202,165,156,188,250,7,230,185,213,69,13,135,206,161,67,86,126,23,218,33,238,29,246,111,240,193,23,207,167,59,181,10,80,7,253,216,198,160,126,118,25,142,187,219,141,205,30,120,225,205,48,182,16,129,148,239,15,27,181,134,143,98,254,1,83,254,31,255,135,43,35,144,227,151,14,120,223,225,150,152,19,210,244,111,255,7,54,76,90,184,145,125,38,157,76,203,106,243,182,151,163,189,117,246,229,126,187,230,32,127,245,12,174,208,157,201,47,138,135,27,8,44,23,168,75,5,94,144,144,29,128,40,103,207,160,139,149,58,169,202,214,91,229,91,69,95,52,244,102,138,30,93,16,244,226,192,19,47,234,124,177,41,225,41,53,113,240,29,36,176,96,200,133,120,249,15,84,220,67,98,167,89,198,172,214,44,242,174,102,92,181,65,89,39,67,27,152,211,239,179,163,173,182,30,93,53,120,149,99,96,212,76,155,193,87,93,16,159,97,240,167,127,143,201,78,151,211,14,74,72,93,80,239,16,153,44,170,113,30,142,210,153,141,231,5,55,23,192,228,162,107,36,227,63,35,207,212,44,44,231,227,95,223,227,106,163,136,251,178,68,6,140,105,200,250,250,194,115,150,230,188,215,171,137,242,164,142,239,105,187,242,248,237,240,175,15,77,7,186,62,16,27,130,97,115,229,70,254,200,27,253,235,55,160,122,210,131,144,237,214,146,48,128,218,165,7,197,247,205,136,9,86,138,171,239,84,102,181,99,34,223,176,190,161,70,126,19,32,157,92,30,50,91,85,201,147,83,206,152,131,98,110,255,211,152,247,13,103,17,67,79,209,212,53,0,130,208,143,124,77,59,59,79,138,33,244,163,231,90,169,33,113,13,77,210,88,86,137,137,177,65,196,75,198,99,87,112,68,61,212,222,195,82,129,245,9,86,167,172,39,36,47,79,8,97,34,51,247,181,217,210,214,30,221,12,45,170,223,5,251,56,106,187,136,60,153,183,125,123,105,202,246,173,235,117,173,98,7,177,31,176,210,234,112,187,115,202,130,222,95,250,3,41,138,232,151,99,58,239,49,3,92,19,45,205,42,205,111,154,152,107,85,143,82,0,127,5,122,140,110,52,36,4,181,151,60,132,131,227,21,162,16,175,73,103,3,169,73,11,241,65,144,239,33,238,70,7,163,226,123,14,54,149,21,175,250,231,35,138,162,153,249,171,112,98,87,221,44,131,83,36,90,75,63,37,158,96,140,23,176,126,171,180,144,43,148,230,92,4,108,177,247,108,167,188,213,162,216,193,225,119,173,79,189,136,215,186,186,95,30,249,242,186,234,49,105,195,224,110,253,50,18,129,145,126,36,113,217,232,42,194,227,211,205,191,199,196,84,25,13,82,163,201,163,108,42,250,117,176,105,62,124,153,175,132,132,252,128,233,115,251,202,177,152,216,118,165,70,212,16,187,70,128,135,229,89,64,46,238,175,239,111,124,42,126,110,10,211,149,65,204,246,196,165,7,216,127,22,17,151,20,23,22,85,11,248,191,115,146,13,197,180,181,89,88,26,198,186,84,220,56,122,49,181,87,34,107,185,79,192,250,104,148,249,192,141,68,211,46,60,152,157,188,162,187,80,189,129,115,25,40,77,48,237,83,70,92,179,193,221,132,152,163,81,161,60,148,43,71,238,62,197,167,137,97,226,78,177,65,251,33,14,229,208,150,30,149,167,10,242,109,41,95,245,49,35,206,223,28,111,14,32,27,196,183,41,217,110,237,20,189,106,127,8,53,123,87,30,53,155,69,233,245,250,212,51,255,99,162,167,167,149,155,54,157,163,212,123,113,118,241,222,55,19,252,179,223,155,60,180,200,121,79,52,25,185,221,156,83,108,113,221,183,59,189,140,167,64,246,73,216,136,51,179,219,248,169,149,86,6,207,56,143,113,25,36,28,123,252,250,22,122,239,244,179,109,232,29,235,167,33,0,28,48,226,210,21,57,106,46,35,89,134,83,125,74,76,149,117,26,48,243,100,251,199,96,117,205,59,77,3,248,171,180,61,205,66,30,56,104,125,186,75,255,33,212,26,207,14,160,172,211,69,13,239,21,47,69,23,13,171,12,94,143,123,156,171,252,215,143,96,88,101,152,158,178,14,51,199,104,78,187,236,128,121,189,179,29,115,4,24,82,65,185,2,75,66,239,135,190,171,184,103,206,40,215,171,81,134,166,85,123,241,250,153,28,237,229,250,123,239,174,119,225,19,255,128,139,114,28,254,119,85,108,250,3,205,153,72,157,182,228,56,228,159,77,253,24,192,176,219,13,80,249,38,217,43,146,81,84,20,199,56,31,161,193,58,49,205,14,97,208,115,97,174,146,195,104,89,246,78,93,147,235,9,15,124,139,216,252,218,178,84,102,55,29,156,25,156,239,230,104,23,249,223,74,53,13,127,170,169,175,194,223,194,15,128,187,172,16,231,66,93,88,248,191,207,188,22,27,206,244,172,55,202,117,155,191,53,241,36,71,97,176,193,174,124,248,142,239,143,79,106,159,47,46,92,166,242,13,14,77,77,106,201,51,2,13,38,238,150,226,113,167,239,52,166,139,205,222,52,25,199,50,166,202,48,15,138,222,144,75,19,254,233,90,221,37,41,167,53,202,230,170,31,112,194,203,147,51,245,84,148,252,84,162,248,189,170,24,126,217,90,147,146,243,247,88,88,250,149,239,228,5,177,244,59,95,162,180,207,62,89,42,231,250,32,227,109,240,78,200,108,247,171,170,227,188,56,217,213,55,226,176,21,37,62,182,174,36,252,203,77,108,244,246,7,141,193,218,254,189,69,63,188,110,245,3,98,190,62,136,98,10,193,73,44,60,107,171,141,99,61,198,39,60,165,61,189,134,22,99,94,178,54,28,207,208,247,228,43,97,197,251,151,115,59,6,247,56,76,229,190,37,90,75,85,250,189,210,63,236,128,147,56,142,247,87,52,156,107,68,60,91,79,84,40,151,52,67,206,34,7,239,121,166,109,236,43,23,160,54,194,4,96,184,112,200,255,255,210,242,105,227,116,176,193,223,139,103,168,225,3,220,201,241,151,241,229,237,86,222,248,162,188,97,49,183,100,46,237,36,250,24,21,122,223,115,9,58,24,232,24,217,138,81,227,139,58,187,63,241,166,186,250,217,105,97,225,88,104,251,195,244,242,248,204,171,109,111,221,115,73,32,220,44,121,30,8,0,255,173,239,225,32,248,47,22,221,160,86,142,161,14,60,12,222,41,116,236,55,169,13,212,13,3,166,109,123,0,222,138,26,35,50,24,212,204,95,64,39,160,129,236,51,135,180,236,67,217,230,228,116,125,162,251,13,64,30,244,23,145,197,161,143,103,203,145,91,93,29,60,248,241,228,106,95,110,181,242,38,164,192,81,206,185,68,5,252,47,171,212,227,164,10,93,91,212,211,126,179,107,201,221,114,156,227,157,212,86,90,3,45,242,249,189,248,67,237,159,138,208,217,55,170,38,154,185,193,50,227,193,85,183,104,145,39,15,243,56,126,48,65,226,191,146,255,168,96,134,137,212,174,145,189,113,216,165,6,103,91,15,143,186,141,198,199,134,59,9,14,145,168,206,209,207,40,94,27,45,162,121,191,71,23,25,209,228,246,46,188,255,14,81,253,223,8,159,169,193,15,110,60,159,15,150,116,37,196,87,139,102,25,22,104,67,210,66,59,219,165,235,231,109,202,162,171,58,31,251,145,192,35,93,3,111,54,30,189,61,102,76,91,61,202,239,32,48,129,255,192,114,212,237,214,62,8,65,225,55,48,109,32,98,7,215,234,169,4,57,145,67,171,64,212,245,50,32,202,36,217,252,5,128,96,148,108,240,194,0,162,81,237,79,31,146,149,74,138,142,25,32,9,254,106,59,41,156,20,32,142,197,183,95,230,210,34,121,215,159,156,124,123,132,213,183,111,219,205,216,127,168,4,212,87,180,226,156,121,145,135,131,127,132,233,167,171,160,133,82,19,156,158,222,192,243,243,245,9,31,157,19,64,105,86,37,71,22,129,171,208,8,232,220,104,145,109,42,232,219,126,83,121,207,168,55,246,169,199,189,39,16,184,217,103,87,178,146,118,34,78,6,168,43,223,105,62,212,108,211,249,188,220,34,226,55,157,51,112,199,250,237,45,51,158,55,230,7,154,187,50,151,26,51,239,122,43,182,249,28,19,164,159,14,206,30,240,171,170,34,209,37,50,244,39,51,62,88,98,189,79,63,89,177,39,141,182,170,76,30,211,54,78,60,109,94,199,117,189,11,78,13,31,177,184,54,133,189,201,38,243,226,237,197,177,254,199,124,56,243,155,163,244,134,42,24,6,114,245,61,72,103,222,6,242,221,154,111,203,124,163,68,233,145,244,221,99,63,18,207,90,235,201,240,152,183,122,113,141,233,164,50,171,176,135,70,52,46,171,7,177,78,74,14,80,79,117,205,179,190,54,67,253,146,41,218,96,29,125,166,6,219,80,30,9,215,217,210,131,166,190,50,203,184,67,17,88,187,138,160,136,5,17,205,215,151,74,242,38,144,156,218,244,73,238,0,162,121,1,57,240,126,206,12,104,223,203,228,181,121,42,112,40,175,164,10,218,232,184,35,107,20,192,219,102,19,97,219,195,88,109,155,154,127,193,160,218,214,244,151,160,124,216,184,37,110,148,112,82,175,191,70,171,242,13,247,49,239,199,41,10,186,99,252,240,203,111,215,185,244,248,99,178,201,11,219,122,202,10,46,248,20,47,223,248,147,42,187,19,21,166,67,217,17,90,201,11,139,71,115,183,195,42,239,201,249,156,85,18,160,17,167,126,81,44,152,254,207,135,87,62,88,204,136,252,18,138,17,202,125,143,115,59,104,115,31,74,156,135,221,26,8,135,130,104,243,70,65,63,102,156,138,127,119,238,235,206,216,200,87,183,203,137,213,161,242,30,116,151,126,205,176,236,33,240,29,66,160,204,251,206,142,117,149,45,249,0,1,73,100,251,109,151,5,28,111,19,221,60,85,115,151,166,215,242,164,39,77,180,243,246,8,113,58,241,35,253,238,186,160,205,181,192,154,151,99,85,86,192,166,99,166,179,161,208,133,184,51,218,91,23,22,222,85,234,210,29,232,30,253,220,255,1]}')}}]);