cdk-insights 0.15.7 → 0.15.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/entry.js CHANGED
@@ -5,14 +5,14 @@
5
5
  `).reduce(function(r,i){return sx(i)>r?sx(i):r},0)}function ba(t,e){return Array(e+1).join(t)}function h_(t,e,s,n){let r=ln(t);if(e+1>=r){let i=e-r;switch(n){case"right":{t=ba(s,i)+t;break}case"center":{let o=Math.ceil(i/2),a=i-o;t=ba(s,a)+t+ba(s,o);break}default:{t=t+ba(s,i);break}}}return t}var Qi={};function va(t,e,s){e="\x1B["+e+"m",s="\x1B["+s+"m",Qi[e]={set:t,to:!0},Qi[s]={set:t,to:!1},Qi[t]={on:e,off:s}}va("bold",1,22);va("italics",3,23);va("underline",4,24);va("inverse",7,27);va("strikethrough",9,29);function nx(t,e){let s=e[1]?parseInt(e[1].split(";")[0]):0;if(s>=30&&s<=39||s>=90&&s<=97){t.lastForegroundAdded=e[0];return}if(s>=40&&s<=49||s>=100&&s<=107){t.lastBackgroundAdded=e[0];return}if(s===0){for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&delete t[r];return}let n=Qi[e[0]];n&&(t[n.set]=n.to)}function g_(t){let e=Vc(!0),s=e.exec(t),n={};for(;s!==null;)nx(n,s),s=e.exec(t);return n}function rx(t,e){let s=t.lastBackgroundAdded,n=t.lastForegroundAdded;return delete t.lastBackgroundAdded,delete t.lastForegroundAdded,Object.keys(t).forEach(function(r){t[r]&&(e+=Qi[r].off)}),s&&s!="\x1B[49m"&&(e+="\x1B[49m"),n&&n!="\x1B[39m"&&(e+="\x1B[39m"),e}function x_(t,e){let s=t.lastBackgroundAdded,n=t.lastForegroundAdded;return delete t.lastBackgroundAdded,delete t.lastForegroundAdded,Object.keys(t).forEach(function(r){t[r]&&(e=Qi[r].on+e)}),s&&s!="\x1B[49m"&&(e=s+e),n&&n!="\x1B[39m"&&(e=n+e),e}function y_(t,e){if(t.length===ln(t))return t.substr(0,e);for(;ln(t)>e;)t=t.slice(0,-1);return t}function b_(t,e){let s=Vc(!0),n=t.split(Vc()),r=0,i=0,o="",a,c={};for(;i<e;){a=s.exec(t);let u=n[r];if(r++,i+ln(u)>e&&(u=y_(u,e-i)),o+=u,i+=ln(u),i<e){if(!a)break;o+=a[0],nx(c,a)}}return rx(c,o)}function v_(t,e,s){if(s=s||"\u2026",ln(t)<=e)return t;e-=ln(s);let r=b_(t,e);r+=s;let i="\x1B]8;;\x07";return t.includes(i)&&!r.includes(i)&&(r+=i),r}function D_(){return{chars:{top:"\u2500","top-mid":"\u252C","top-left":"\u250C","top-right":"\u2510",bottom:"\u2500","bottom-mid":"\u2534","bottom-left":"\u2514","bottom-right":"\u2518",left:"\u2502","left-mid":"\u251C",mid:"\u2500","mid-mid":"\u253C",right:"\u2502","right-mid":"\u2524",middle:"\u2502"},truncate:"\u2026",colWidths:[],rowHeights:[],colAligns:[],rowAligns:[],style:{"padding-left":1,"padding-right":1,head:["red"],border:["grey"],compact:!1},head:[]}}function S_(t,e){t=t||{},e=e||D_();let s=Object.assign({},e,t);return s.chars=Object.assign({},e.chars,t.chars),s.style=Object.assign({},e.style,t.style),s}function C_(t,e){let s=[],n=e.split(/(\s+)/g),r=[],i=0,o;for(let a=0;a<n.length;a+=2){let c=n[a],u=i+ln(c);i>0&&o&&(u+=o.length),u>t?(i!==0&&s.push(r.join("")),r=[c],i=ln(c)):(r.push(o||"",c),i=u),o=n[a+1]}return i&&s.push(r.join("")),s}function w_(t,e){let s=[],n="";function r(o,a){for(n.length&&a&&(n+=a),n+=o;n.length>t;)s.push(n.slice(0,t)),n=n.slice(t)}let i=e.split(/(\s+)/g);for(let o=0;o<i.length;o+=2)r(i[o],o&&i[o-1]);return n.length&&s.push(n),s}function A_(t,e,s=!0){let n=[];e=e.split(`
6
6
  `);let r=s?C_:w_;for(let i=0;i<e.length;i++)n.push.apply(n,r(t,e[i]));return n}function E_(t){let e={},s=[];for(let n=0;n<t.length;n++){let r=x_(e,t[n]);e=g_(r);let i=Object.assign({},e);s.push(rx(i,r))}return s}function F_(t,e){let s="\x1B]",n="\x07",r=";";return[s,"8",r,r,t||e,n,e,s,"8",r,r,n].join("")}ix.exports={strlen:ln,repeat:ba,pad:h_,truncate:v_,mergeOptions:S_,wordWrap:A_,colorizeLines:E_,hyperlink:F_}});var ux=F(($N,cx)=>{var ax={};cx.exports=ax;var ox={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],grey:[90,39],brightRed:[91,39],brightGreen:[92,39],brightYellow:[93,39],brightBlue:[94,39],brightMagenta:[95,39],brightCyan:[96,39],brightWhite:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgGray:[100,49],bgGrey:[100,49],bgBrightRed:[101,49],bgBrightGreen:[102,49],bgBrightYellow:[103,49],bgBrightBlue:[104,49],bgBrightMagenta:[105,49],bgBrightCyan:[106,49],bgBrightWhite:[107,49],blackBG:[40,49],redBG:[41,49],greenBG:[42,49],yellowBG:[43,49],blueBG:[44,49],magentaBG:[45,49],cyanBG:[46,49],whiteBG:[47,49]};Object.keys(ox).forEach(function(t){var e=ox[t],s=ax[t]=[];s.open="\x1B["+e[0]+"m",s.close="\x1B["+e[1]+"m"})});var dx=F((WN,lx)=>{"use strict";lx.exports=function(t,e){e=e||process.argv;var s=e.indexOf("--"),n=/^-{1,2}/.test(t)?"":"--",r=e.indexOf(n+t);return r!==-1&&(s===-1?!0:r<s)}});var fx=F((UN,px)=>{"use strict";var __=require("os"),Vs=dx(),Ht=process.env,Xi=void 0;Vs("no-color")||Vs("no-colors")||Vs("color=false")?Xi=!1:(Vs("color")||Vs("colors")||Vs("color=true")||Vs("color=always"))&&(Xi=!0);"FORCE_COLOR"in Ht&&(Xi=Ht.FORCE_COLOR.length===0||parseInt(Ht.FORCE_COLOR,10)!==0);function k_(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function I_(t){if(Xi===!1)return 0;if(Vs("color=16m")||Vs("color=full")||Vs("color=truecolor"))return 3;if(Vs("color=256"))return 2;if(t&&!t.isTTY&&Xi!==!0)return 0;var e=Xi?1:0;if(process.platform==="win32"){var s=__.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in Ht)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(r){return r in Ht})||Ht.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in Ht)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Ht.TEAMCITY_VERSION)?1:0;if("TERM_PROGRAM"in Ht){var n=parseInt((Ht.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Ht.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Hyper":return 3;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Ht.TERM)?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(Ht.TERM)||"COLORTERM"in Ht?1:(Ht.TERM==="dumb",e)}function dp(t){var e=I_(t);return k_(e)}px.exports={supportsColor:dp,stdout:dp(process.stdout),stderr:dp(process.stderr)}});var hx=F((GN,mx)=>{mx.exports=function(e,s){var n="";e=e||"Run the trap, drop the bass",e=e.split("");var r={a:["@","\u0104","\u023A","\u0245","\u0394","\u039B","\u0414"],b:["\xDF","\u0181","\u0243","\u026E","\u03B2","\u0E3F"],c:["\xA9","\u023B","\u03FE"],d:["\xD0","\u018A","\u0500","\u0501","\u0502","\u0503"],e:["\xCB","\u0115","\u018E","\u0258","\u03A3","\u03BE","\u04BC","\u0A6C"],f:["\u04FA"],g:["\u0262"],h:["\u0126","\u0195","\u04A2","\u04BA","\u04C7","\u050A"],i:["\u0F0F"],j:["\u0134"],k:["\u0138","\u04A0","\u04C3","\u051E"],l:["\u0139"],m:["\u028D","\u04CD","\u04CE","\u0520","\u0521","\u0D69"],n:["\xD1","\u014B","\u019D","\u0376","\u03A0","\u048A"],o:["\xD8","\xF5","\xF8","\u01FE","\u0298","\u047A","\u05DD","\u06DD","\u0E4F"],p:["\u01F7","\u048E"],q:["\u09CD"],r:["\xAE","\u01A6","\u0210","\u024C","\u0280","\u042F"],s:["\xA7","\u03DE","\u03DF","\u03E8"],t:["\u0141","\u0166","\u0373"],u:["\u01B1","\u054D"],v:["\u05D8"],w:["\u0428","\u0460","\u047C","\u0D70"],x:["\u04B2","\u04FE","\u04FC","\u04FD"],y:["\xA5","\u04B0","\u04CB"],z:["\u01B5","\u0240"]};return e.forEach(function(i){i=i.toLowerCase();var o=r[i]||[" "],a=Math.floor(Math.random()*o.length);typeof r[i]<"u"?n+=r[i][a]:n+=i}),n}});var xx=F((zN,gx)=>{gx.exports=function(e,s){e=e||" he is here ";var n={up:["\u030D","\u030E","\u0304","\u0305","\u033F","\u0311","\u0306","\u0310","\u0352","\u0357","\u0351","\u0307","\u0308","\u030A","\u0342","\u0313","\u0308","\u034A","\u034B","\u034C","\u0303","\u0302","\u030C","\u0350","\u0300","\u0301","\u030B","\u030F","\u0312","\u0313","\u0314","\u033D","\u0309","\u0363","\u0364","\u0365","\u0366","\u0367","\u0368","\u0369","\u036A","\u036B","\u036C","\u036D","\u036E","\u036F","\u033E","\u035B","\u0346","\u031A"],down:["\u0316","\u0317","\u0318","\u0319","\u031C","\u031D","\u031E","\u031F","\u0320","\u0324","\u0325","\u0326","\u0329","\u032A","\u032B","\u032C","\u032D","\u032E","\u032F","\u0330","\u0331","\u0332","\u0333","\u0339","\u033A","\u033B","\u033C","\u0345","\u0347","\u0348","\u0349","\u034D","\u034E","\u0353","\u0354","\u0355","\u0356","\u0359","\u035A","\u0323"],mid:["\u0315","\u031B","\u0300","\u0301","\u0358","\u0321","\u0322","\u0327","\u0328","\u0334","\u0335","\u0336","\u035C","\u035D","\u035E","\u035F","\u0360","\u0362","\u0338","\u0337","\u0361"," \u0489"]},r=[].concat(n.up,n.down,n.mid);function i(c){var u=Math.floor(Math.random()*c);return u}function o(c){var u=!1;return r.filter(function(l){u=l===c}),u}function a(c,u){var l="",d,f;u=u||{},u.up=typeof u.up<"u"?u.up:!0,u.mid=typeof u.mid<"u"?u.mid:!0,u.down=typeof u.down<"u"?u.down:!0,u.size=typeof u.size<"u"?u.size:"maxi",c=c.split("");for(f in c)if(!o(f)){switch(l=l+c[f],d={up:0,down:0,mid:0},u.size){case"mini":d.up=i(8),d.mid=i(2),d.down=i(8);break;case"maxi":d.up=i(16)+3,d.mid=i(4)+1,d.down=i(64)+3;break;default:d.up=i(8)+1,d.mid=i(6)/2,d.down=i(8)+1;break}var p=["up","mid","down"];for(var m in p)for(var g=p[m],h=0;h<=d[g];h++)u[g]&&(l=l+n[g][i(n[g].length)])}return l}return a(e,s)}});var bx=F((qN,yx)=>{yx.exports=function(t){return function(e,s,n){if(e===" ")return e;switch(s%3){case 0:return t.red(e);case 1:return t.white(e);case 2:return t.blue(e)}}}});var Dx=F((HN,vx)=>{vx.exports=function(t){return function(e,s,n){return s%2===0?e:t.inverse(e)}}});var Cx=F((VN,Sx)=>{Sx.exports=function(t){var e=["red","yellow","green","blue","magenta"];return function(s,n,r){return s===" "?s:t[e[n++%e.length]](s)}}});var Ax=F((KN,wx)=>{wx.exports=function(t){var e=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(s,n,r){return s===" "?s:t[e[Math.round(Math.random()*(e.length-2))]](s)}}});var Rx=F((YN,Ix)=>{var Me={};Ix.exports=Me;Me.themes={};var R_=require("util"),kr=Me.styles=ux(),Fx=Object.defineProperties,T_=new RegExp(/[\r\n]+/g);Me.supportsColor=fx().supportsColor;typeof Me.enabled>"u"&&(Me.enabled=Me.supportsColor()!==!1);Me.enable=function(){Me.enabled=!0};Me.disable=function(){Me.enabled=!1};Me.stripColors=Me.strip=function(t){return(""+t).replace(/\x1B\[\d+m/g,"")};var ZN=Me.stylize=function(e,s){if(!Me.enabled)return e+"";var n=kr[s];return!n&&s in Me?Me[s](e):n.open+e+n.close},P_=/[|\\{}()[\]^$+*?.]/g,O_=function(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(P_,"\\$&")};function _x(t){var e=function s(){return B_.apply(s,arguments)};return e._styles=t,e.__proto__=L_,e}var kx=function(){var t={};return kr.grey=kr.gray,Object.keys(kr).forEach(function(e){kr[e].closeRe=new RegExp(O_(kr[e].close),"g"),t[e]={get:function(){return _x(this._styles.concat(e))}}}),t}(),L_=Fx(function(){},kx);function B_(){var t=Array.prototype.slice.call(arguments),e=t.map(function(o){return o!=null&&o.constructor===String?o:R_.inspect(o)}).join(" ");if(!Me.enabled||!e)return e;for(var s=e.indexOf(`
7
7
  `)!=-1,n=this._styles,r=n.length;r--;){var i=kr[n[r]];e=i.open+e.replace(i.closeRe,i.open)+i.close,s&&(e=e.replace(T_,function(o){return i.close+o+i.open}))}return e}Me.setTheme=function(t){if(typeof t=="string"){console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));");return}for(var e in t)(function(s){Me[s]=function(n){if(typeof t[s]=="object"){var r=n;for(var i in t[s])r=Me[t[s][i]](r);return r}return Me[t[s]](n)}})(e)};function N_(){var t={};return Object.keys(kx).forEach(function(e){t[e]={get:function(){return _x([e])}}}),t}var M_=function(e,s){var n=s.split("");return n=n.map(e),n.join("")};Me.trap=hx();Me.zalgo=xx();Me.maps={};Me.maps.america=bx()(Me);Me.maps.zebra=Dx()(Me);Me.maps.rainbow=Cx()(Me);Me.maps.random=Ax()(Me);for(Ex in Me.maps)(function(t){Me[t]=function(e){return M_(Me.maps[t],e)}})(Ex);var Ex;Fx(Me,N_())});var Px=F((JN,Tx)=>{var j_=Rx();Tx.exports=j_});var Nx=F((QN,Kc)=>{var{info:$_,debug:Bx}=qc(),cs=lp(),fp=class t{constructor(e){this.setOptions(e),this.x=null,this.y=null}setOptions(e){["boolean","number","bigint","string"].indexOf(typeof e)!==-1&&(e={content:""+e}),e=e||{},this.options=e;let s=e.content;if(["boolean","number","bigint","string"].indexOf(typeof s)!==-1)this.content=String(s);else if(!s)this.content=this.options.href||"";else throw new Error("Content needs to be a primitive, got: "+typeof s);this.colSpan=e.colSpan||1,this.rowSpan=e.rowSpan||1,this.options.href&&Object.defineProperty(this,"href",{get(){return this.options.href}})}mergeTableOptions(e,s){this.cells=s;let n=this.options.chars||{},r=e.chars,i=this.chars={};U_.forEach(function(c){pp(n,r,c,i)}),this.truncate=this.options.truncate||e.truncate;let o=this.options.style=this.options.style||{},a=e.style;pp(o,a,"padding-left",this),pp(o,a,"padding-right",this),this.head=o.head||a.head,this.border=o.border||a.border,this.fixedWidth=e.colWidths[this.x],this.lines=this.computeLines(e),this.desiredWidth=cs.strlen(this.content)+this.paddingLeft+this.paddingRight,this.desiredHeight=this.lines.length}computeLines(e){let s=e.wordWrap||e.textWrap,{wordWrap:n=s}=this.options;if(this.fixedWidth&&n){if(this.fixedWidth-=this.paddingLeft+this.paddingRight,this.colSpan){let o=1;for(;o<this.colSpan;)this.fixedWidth+=e.colWidths[this.x+o],o++}let{wrapOnWordBoundary:r=!0}=e,{wrapOnWordBoundary:i=r}=this.options;return this.wrapLines(cs.wordWrap(this.fixedWidth,this.content,i))}return this.wrapLines(this.content.split(`
8
- `))}wrapLines(e){let s=cs.colorizeLines(e);return this.href?s.map(n=>cs.hyperlink(this.href,n)):s}init(e){let s=this.x,n=this.y;this.widths=e.colWidths.slice(s,s+this.colSpan),this.heights=e.rowHeights.slice(n,n+this.rowSpan),this.width=this.widths.reduce(Lx,-1),this.height=this.heights.reduce(Lx,-1),this.hAlign=this.options.hAlign||e.colAligns[s],this.vAlign=this.options.vAlign||e.rowAligns[n],this.drawRight=s+this.colSpan==e.colWidths.length}draw(e,s){if(e=="top")return this.drawTop(this.drawRight);if(e=="bottom")return this.drawBottom(this.drawRight);let n=cs.truncate(this.content,10,this.truncate);e||$_(`${this.y}-${this.x}: ${this.rowSpan-e}x${this.colSpan} Cell ${n}`);let r=Math.max(this.height-this.lines.length,0),i;switch(this.vAlign){case"center":i=Math.ceil(r/2);break;case"bottom":i=r;break;default:i=0}if(e<i||e>=i+this.lines.length)return this.drawEmpty(this.drawRight,s);let o=this.lines.length>this.height&&e+1>=this.height;return this.drawLine(e-i,this.drawRight,o,s)}drawTop(e){let s=[];return this.cells?this.widths.forEach(function(n,r){s.push(this._topLeftChar(r)),s.push(cs.repeat(this.chars[this.y==0?"top":"mid"],n))},this):(s.push(this._topLeftChar(0)),s.push(cs.repeat(this.chars[this.y==0?"top":"mid"],this.width))),e&&s.push(this.chars[this.y==0?"topRight":"rightMid"]),this.wrapWithStyleColors("border",s.join(""))}_topLeftChar(e){let s=this.x+e,n;if(this.y==0)n=s==0?"topLeft":e==0?"topMid":"top";else if(s==0)n="leftMid";else if(n=e==0?"midMid":"bottomMid",this.cells&&(this.cells[this.y-1][s]instanceof t.ColSpanCell&&(n=e==0?"topMid":"mid"),e==0)){let i=1;for(;this.cells[this.y][s-i]instanceof t.ColSpanCell;)i++;this.cells[this.y][s-i]instanceof t.RowSpanCell&&(n="leftMid")}return this.chars[n]}wrapWithStyleColors(e,s){if(this[e]&&this[e].length)try{let n=Px();for(let r=this[e].length-1;r>=0;r--)n=n[this[e][r]];return n(s)}catch{return s}else return s}drawLine(e,s,n,r){let i=this.chars[this.x==0?"left":"middle"];if(this.x&&r&&this.cells){let f=this.cells[this.y+r][this.x-1];for(;f instanceof Da;)f=this.cells[f.y][f.x-1];f instanceof Sa||(i=this.chars.rightMid)}let o=cs.repeat(" ",this.paddingLeft),a=s?this.chars.right:"",c=cs.repeat(" ",this.paddingRight),u=this.lines[e],l=this.width-(this.paddingLeft+this.paddingRight);n&&(u+=this.truncate||"\u2026");let d=cs.truncate(u,l,this.truncate);return d=cs.pad(d,l," ",this.hAlign),d=o+d+c,this.stylizeLine(i,d,a)}stylizeLine(e,s,n){return e=this.wrapWithStyleColors("border",e),n=this.wrapWithStyleColors("border",n),this.y===0&&(s=this.wrapWithStyleColors("head",s)),e+s+n}drawBottom(e){let s=this.chars[this.x==0?"bottomLeft":"bottomMid"],n=cs.repeat(this.chars.bottom,this.width),r=e?this.chars.bottomRight:"";return this.wrapWithStyleColors("border",s+n+r)}drawEmpty(e,s){let n=this.chars[this.x==0?"left":"middle"];if(this.x&&s&&this.cells){let o=this.cells[this.y+s][this.x-1];for(;o instanceof Da;)o=this.cells[o.y][o.x-1];o instanceof Sa||(n=this.chars.rightMid)}let r=e?this.chars.right:"",i=cs.repeat(" ",this.width);return this.stylizeLine(n,i,r)}},Da=class{constructor(){}draw(e){return typeof e=="number"&&Bx(`${this.y}-${this.x}: 1x1 ColSpanCell`),""}init(){}mergeTableOptions(){}},Sa=class{constructor(e){this.originalCell=e}init(e){let s=this.y,n=this.originalCell.y;this.cellOffset=s-n,this.offset=W_(e.rowHeights,n,this.cellOffset)}draw(e){return e=="top"?this.originalCell.draw(this.offset,this.cellOffset):e=="bottom"?this.originalCell.draw("bottom"):(Bx(`${this.y}-${this.x}: 1x${this.colSpan} RowSpanCell for ${this.originalCell.content}`),this.originalCell.draw(this.offset+1+e))}mergeTableOptions(){}};function Ox(...t){return t.filter(e=>e!=null).shift()}function pp(t,e,s,n){let r=s.split("-");r.length>1?(r[1]=r[1].charAt(0).toUpperCase()+r[1].substr(1),r=r.join(""),n[r]=Ox(t[r],t[s],e[r],e[s])):n[s]=Ox(t[s],e[s])}function W_(t,e,s){let n=t[e];for(let r=1;r<s;r++)n+=1+t[e+r];return n}function Lx(t,e){return t+e+1}var U_=["top","top-mid","top-left","top-right","bottom","bottom-mid","bottom-left","bottom-right","left","left-mid","mid","mid-mid","right","right-mid","middle"];Kc.exports=fp;Kc.exports.ColSpanCell=Da;Kc.exports.RowSpanCell=Sa});var $x=F((XN,jx)=>{var{warn:G_,debug:z_}=qc(),mp=Nx(),{ColSpanCell:q_,RowSpanCell:H_}=mp;(function(){function t(p,m){return p[m]>0?t(p,m+1):m}function e(p){let m={};p.forEach(function(g,h){let y=0;g.forEach(function(x){x.y=h,x.x=h?t(m,y):y;let D=x.rowSpan||1,S=x.colSpan||1;if(D>1)for(let v=0;v<S;v++)m[x.x+v]=D;y=x.x+S}),Object.keys(m).forEach(x=>{m[x]--,m[x]<1&&delete m[x]})})}function s(p){let m=0;return p.forEach(function(g){g.forEach(function(h){m=Math.max(m,h.x+(h.colSpan||1))})}),m}function n(p){return p.length}function r(p,m){let g=p.y,h=p.y-1+(p.rowSpan||1),y=m.y,x=m.y-1+(m.rowSpan||1),D=!(g>x||y>h),S=p.x,v=p.x-1+(p.colSpan||1),E=m.x,T=m.x-1+(m.colSpan||1),_=!(S>T||E>v);return D&&_}function i(p,m,g){let h=Math.min(p.length-1,g),y={x:m,y:g};for(let x=0;x<=h;x++){let D=p[x];for(let S=0;S<D.length;S++)if(r(y,D[S]))return!0}return!1}function o(p,m,g,h){for(let y=g;y<h;y++)if(i(p,y,m))return!1;return!0}function a(p){p.forEach(function(m,g){m.forEach(function(h){for(let y=1;y<h.rowSpan;y++){let x=new H_(h);x.x=h.x,x.y=h.y+y,x.colSpan=h.colSpan,u(x,p[g+y])}})})}function c(p){for(let m=p.length-1;m>=0;m--){let g=p[m];for(let h=0;h<g.length;h++){let y=g[h];for(let x=1;x<y.colSpan;x++){let D=new q_;D.x=y.x+x,D.y=y.y,g.splice(h+1,0,D)}}}}function u(p,m){let g=0;for(;g<m.length&&m[g].x<p.x;)g++;m.splice(g,0,p)}function l(p){let m=n(p),g=s(p);z_(`Max rows: ${m}; Max cols: ${g}`);for(let h=0;h<m;h++)for(let y=0;y<g;y++)if(!i(p,y,h)){let x={x:y,y:h,colSpan:1,rowSpan:1};for(y++;y<g&&!i(p,y,h);)x.colSpan++,y++;let D=h+1;for(;D<m&&o(p,D,x.x,x.x+x.colSpan);)x.rowSpan++,D++;let S=new mp(x);S.x=x.x,S.y=x.y,G_(`Missing cell at ${S.y}-${S.x}.`),u(S,p[h])}}function d(p){return p.map(function(m){if(!Array.isArray(m)){let g=Object.keys(m)[0];m=m[g],Array.isArray(m)?(m=m.slice(),m.unshift(g)):m=[g,m]}return m.map(function(g){return new mp(g)})})}function f(p){let m=d(p);return e(m),l(m),a(m),c(m),m}jx.exports={makeTableLayout:f,layoutTable:e,addRowSpanCells:a,maxWidth:s,fillInTable:l,computeWidths:Mx("colSpan","desiredWidth","x",1),computeHeights:Mx("rowSpan","desiredHeight","y",1)}})();function Mx(t,e,s,n){return function(r,i){let o=[],a=[],c={};i.forEach(function(u){u.forEach(function(l){(l[t]||1)>1?a.push(l):o[l[s]]=Math.max(o[l[s]]||0,l[e]||0,n)})}),r.forEach(function(u,l){typeof u=="number"&&(o[l]=u)});for(let u=a.length-1;u>=0;u--){let l=a[u],d=l[t],f=l[s],p=o[f],m=typeof r[f]=="number"?0:1;if(typeof p=="number")for(let g=1;g<d;g++)p+=1+o[f+g],typeof r[f+g]!="number"&&m++;else p=e==="desiredWidth"?l.desiredWidth-1:1,(!c[f]||c[f]<p)&&(c[f]=p);if(l[e]>p){let g=0;for(;m>0&&l[e]>p;){if(typeof r[f+g]!="number"){let h=Math.round((l[e]-p)/m);p+=h,o[f+g]+=h,m--}g++}}}Object.assign(r,o,c);for(let u=0;u<r.length;u++)r[u]=Math.max(n,r[u]||0)}}});var Ux=F((eM,Wx)=>{var En=qc(),V_=lp(),hp=$x(),Zc=class extends Array{constructor(e){super();let s=V_.mergeOptions(e);if(Object.defineProperty(this,"options",{value:s,enumerable:s.debug}),s.debug){switch(typeof s.debug){case"boolean":En.setDebugLevel(En.WARN);break;case"number":En.setDebugLevel(s.debug);break;case"string":En.setDebugLevel(parseInt(s.debug,10));break;default:En.setDebugLevel(En.WARN),En.warn(`Debug option is expected to be boolean, number, or string. Received a ${typeof s.debug}`)}Object.defineProperty(this,"messages",{get(){return En.debugMessages()}})}}toString(){let e=this,s=this.options.head&&this.options.head.length;s?(e=[this.options.head],this.length&&e.push.apply(e,this)):this.options.style.head=[];let n=hp.makeTableLayout(e);n.forEach(function(i){i.forEach(function(o){o.mergeTableOptions(this.options,n)},this)},this),hp.computeWidths(this.options.colWidths,n),hp.computeHeights(this.options.rowHeights,n),n.forEach(function(i){i.forEach(function(o){o.init(this.options)},this)},this);let r=[];for(let i=0;i<n.length;i++){let o=n[i],a=this.options.rowHeights[i];(i===0||!this.options.style.compact||i==1&&s)&&gp(o,"top",r);for(let c=0;c<a;c++)gp(o,c,r);i+1==n.length&&gp(o,"bottom",r)}return r.join(`
8
+ `))}wrapLines(e){let s=cs.colorizeLines(e);return this.href?s.map(n=>cs.hyperlink(this.href,n)):s}init(e){let s=this.x,n=this.y;this.widths=e.colWidths.slice(s,s+this.colSpan),this.heights=e.rowHeights.slice(n,n+this.rowSpan),this.width=this.widths.reduce(Lx,-1),this.height=this.heights.reduce(Lx,-1),this.hAlign=this.options.hAlign||e.colAligns[s],this.vAlign=this.options.vAlign||e.rowAligns[n],this.drawRight=s+this.colSpan==e.colWidths.length}draw(e,s){if(e=="top")return this.drawTop(this.drawRight);if(e=="bottom")return this.drawBottom(this.drawRight);let n=cs.truncate(this.content,10,this.truncate);e||$_(`${this.y}-${this.x}: ${this.rowSpan-e}x${this.colSpan} Cell ${n}`);let r=Math.max(this.height-this.lines.length,0),i;switch(this.vAlign){case"center":i=Math.ceil(r/2);break;case"bottom":i=r;break;default:i=0}if(e<i||e>=i+this.lines.length)return this.drawEmpty(this.drawRight,s);let o=this.lines.length>this.height&&e+1>=this.height;return this.drawLine(e-i,this.drawRight,o,s)}drawTop(e){let s=[];return this.cells?this.widths.forEach(function(n,r){s.push(this._topLeftChar(r)),s.push(cs.repeat(this.chars[this.y==0?"top":"mid"],n))},this):(s.push(this._topLeftChar(0)),s.push(cs.repeat(this.chars[this.y==0?"top":"mid"],this.width))),e&&s.push(this.chars[this.y==0?"topRight":"rightMid"]),this.wrapWithStyleColors("border",s.join(""))}_topLeftChar(e){let s=this.x+e,n;if(this.y==0)n=s==0?"topLeft":e==0?"topMid":"top";else if(s==0)n="leftMid";else if(n=e==0?"midMid":"bottomMid",this.cells&&(this.cells[this.y-1][s]instanceof t.ColSpanCell&&(n=e==0?"topMid":"mid"),e==0)){let i=1;for(;this.cells[this.y][s-i]instanceof t.ColSpanCell;)i++;this.cells[this.y][s-i]instanceof t.RowSpanCell&&(n="leftMid")}return this.chars[n]}wrapWithStyleColors(e,s){if(this[e]&&this[e].length)try{let n=Px();for(let r=this[e].length-1;r>=0;r--)n=n[this[e][r]];return n(s)}catch{return s}else return s}drawLine(e,s,n,r){let i=this.chars[this.x==0?"left":"middle"];if(this.x&&r&&this.cells){let f=this.cells[this.y+r][this.x-1];for(;f instanceof Da;)f=this.cells[f.y][f.x-1];f instanceof Sa||(i=this.chars.rightMid)}let o=cs.repeat(" ",this.paddingLeft),a=s?this.chars.right:"",c=cs.repeat(" ",this.paddingRight),u=this.lines[e],l=this.width-(this.paddingLeft+this.paddingRight);n&&(u+=this.truncate||"\u2026");let d=cs.truncate(u,l,this.truncate);return d=cs.pad(d,l," ",this.hAlign),d=o+d+c,this.stylizeLine(i,d,a)}stylizeLine(e,s,n){return e=this.wrapWithStyleColors("border",e),n=this.wrapWithStyleColors("border",n),this.y===0&&(s=this.wrapWithStyleColors("head",s)),e+s+n}drawBottom(e){let s=this.chars[this.x==0?"bottomLeft":"bottomMid"],n=cs.repeat(this.chars.bottom,this.width),r=e?this.chars.bottomRight:"";return this.wrapWithStyleColors("border",s+n+r)}drawEmpty(e,s){let n=this.chars[this.x==0?"left":"middle"];if(this.x&&s&&this.cells){let o=this.cells[this.y+s][this.x-1];for(;o instanceof Da;)o=this.cells[o.y][o.x-1];o instanceof Sa||(n=this.chars.rightMid)}let r=e?this.chars.right:"",i=cs.repeat(" ",this.width);return this.stylizeLine(n,i,r)}},Da=class{constructor(){}draw(e){return typeof e=="number"&&Bx(`${this.y}-${this.x}: 1x1 ColSpanCell`),""}init(){}mergeTableOptions(){}},Sa=class{constructor(e){this.originalCell=e}init(e){let s=this.y,n=this.originalCell.y;this.cellOffset=s-n,this.offset=W_(e.rowHeights,n,this.cellOffset)}draw(e){return e=="top"?this.originalCell.draw(this.offset,this.cellOffset):e=="bottom"?this.originalCell.draw("bottom"):(Bx(`${this.y}-${this.x}: 1x${this.colSpan} RowSpanCell for ${this.originalCell.content}`),this.originalCell.draw(this.offset+1+e))}mergeTableOptions(){}};function Ox(...t){return t.filter(e=>e!=null).shift()}function pp(t,e,s,n){let r=s.split("-");r.length>1?(r[1]=r[1].charAt(0).toUpperCase()+r[1].substr(1),r=r.join(""),n[r]=Ox(t[r],t[s],e[r],e[s])):n[s]=Ox(t[s],e[s])}function W_(t,e,s){let n=t[e];for(let r=1;r<s;r++)n+=1+t[e+r];return n}function Lx(t,e){return t+e+1}var U_=["top","top-mid","top-left","top-right","bottom","bottom-mid","bottom-left","bottom-right","left","left-mid","mid","mid-mid","right","right-mid","middle"];Kc.exports=fp;Kc.exports.ColSpanCell=Da;Kc.exports.RowSpanCell=Sa});var $x=F((XN,jx)=>{var{warn:G_,debug:z_}=qc(),mp=Nx(),{ColSpanCell:q_,RowSpanCell:H_}=mp;(function(){function t(p,m){return p[m]>0?t(p,m+1):m}function e(p){let m={};p.forEach(function(g,h){let y=0;g.forEach(function(x){x.y=h,x.x=h?t(m,y):y;let D=x.rowSpan||1,S=x.colSpan||1;if(D>1)for(let v=0;v<S;v++)m[x.x+v]=D;y=x.x+S}),Object.keys(m).forEach(x=>{m[x]--,m[x]<1&&delete m[x]})})}function s(p){let m=0;return p.forEach(function(g){g.forEach(function(h){m=Math.max(m,h.x+(h.colSpan||1))})}),m}function n(p){return p.length}function r(p,m){let g=p.y,h=p.y-1+(p.rowSpan||1),y=m.y,x=m.y-1+(m.rowSpan||1),D=!(g>x||y>h),S=p.x,v=p.x-1+(p.colSpan||1),E=m.x,R=m.x-1+(m.colSpan||1),_=!(S>R||E>v);return D&&_}function i(p,m,g){let h=Math.min(p.length-1,g),y={x:m,y:g};for(let x=0;x<=h;x++){let D=p[x];for(let S=0;S<D.length;S++)if(r(y,D[S]))return!0}return!1}function o(p,m,g,h){for(let y=g;y<h;y++)if(i(p,y,m))return!1;return!0}function a(p){p.forEach(function(m,g){m.forEach(function(h){for(let y=1;y<h.rowSpan;y++){let x=new H_(h);x.x=h.x,x.y=h.y+y,x.colSpan=h.colSpan,u(x,p[g+y])}})})}function c(p){for(let m=p.length-1;m>=0;m--){let g=p[m];for(let h=0;h<g.length;h++){let y=g[h];for(let x=1;x<y.colSpan;x++){let D=new q_;D.x=y.x+x,D.y=y.y,g.splice(h+1,0,D)}}}}function u(p,m){let g=0;for(;g<m.length&&m[g].x<p.x;)g++;m.splice(g,0,p)}function l(p){let m=n(p),g=s(p);z_(`Max rows: ${m}; Max cols: ${g}`);for(let h=0;h<m;h++)for(let y=0;y<g;y++)if(!i(p,y,h)){let x={x:y,y:h,colSpan:1,rowSpan:1};for(y++;y<g&&!i(p,y,h);)x.colSpan++,y++;let D=h+1;for(;D<m&&o(p,D,x.x,x.x+x.colSpan);)x.rowSpan++,D++;let S=new mp(x);S.x=x.x,S.y=x.y,G_(`Missing cell at ${S.y}-${S.x}.`),u(S,p[h])}}function d(p){return p.map(function(m){if(!Array.isArray(m)){let g=Object.keys(m)[0];m=m[g],Array.isArray(m)?(m=m.slice(),m.unshift(g)):m=[g,m]}return m.map(function(g){return new mp(g)})})}function f(p){let m=d(p);return e(m),l(m),a(m),c(m),m}jx.exports={makeTableLayout:f,layoutTable:e,addRowSpanCells:a,maxWidth:s,fillInTable:l,computeWidths:Mx("colSpan","desiredWidth","x",1),computeHeights:Mx("rowSpan","desiredHeight","y",1)}})();function Mx(t,e,s,n){return function(r,i){let o=[],a=[],c={};i.forEach(function(u){u.forEach(function(l){(l[t]||1)>1?a.push(l):o[l[s]]=Math.max(o[l[s]]||0,l[e]||0,n)})}),r.forEach(function(u,l){typeof u=="number"&&(o[l]=u)});for(let u=a.length-1;u>=0;u--){let l=a[u],d=l[t],f=l[s],p=o[f],m=typeof r[f]=="number"?0:1;if(typeof p=="number")for(let g=1;g<d;g++)p+=1+o[f+g],typeof r[f+g]!="number"&&m++;else p=e==="desiredWidth"?l.desiredWidth-1:1,(!c[f]||c[f]<p)&&(c[f]=p);if(l[e]>p){let g=0;for(;m>0&&l[e]>p;){if(typeof r[f+g]!="number"){let h=Math.round((l[e]-p)/m);p+=h,o[f+g]+=h,m--}g++}}}Object.assign(r,o,c);for(let u=0;u<r.length;u++)r[u]=Math.max(n,r[u]||0)}}});var Ux=F((eM,Wx)=>{var En=qc(),V_=lp(),hp=$x(),Zc=class extends Array{constructor(e){super();let s=V_.mergeOptions(e);if(Object.defineProperty(this,"options",{value:s,enumerable:s.debug}),s.debug){switch(typeof s.debug){case"boolean":En.setDebugLevel(En.WARN);break;case"number":En.setDebugLevel(s.debug);break;case"string":En.setDebugLevel(parseInt(s.debug,10));break;default:En.setDebugLevel(En.WARN),En.warn(`Debug option is expected to be boolean, number, or string. Received a ${typeof s.debug}`)}Object.defineProperty(this,"messages",{get(){return En.debugMessages()}})}}toString(){let e=this,s=this.options.head&&this.options.head.length;s?(e=[this.options.head],this.length&&e.push.apply(e,this)):this.options.style.head=[];let n=hp.makeTableLayout(e);n.forEach(function(i){i.forEach(function(o){o.mergeTableOptions(this.options,n)},this)},this),hp.computeWidths(this.options.colWidths,n),hp.computeHeights(this.options.rowHeights,n),n.forEach(function(i){i.forEach(function(o){o.init(this.options)},this)},this);let r=[];for(let i=0;i<n.length;i++){let o=n[i],a=this.options.rowHeights[i];(i===0||!this.options.style.compact||i==1&&s)&&gp(o,"top",r);for(let c=0;c<a;c++)gp(o,c,r);i+1==n.length&&gp(o,"bottom",r)}return r.join(`
9
9
  `)}get width(){return this.toString().split(`
10
10
  `)[0].length}};Zc.reset=()=>En.reset();function gp(t,e,s){let n=[];t.forEach(function(i){n.push(i.draw(e))});let r=n.join("");r.length&&s.push(r)}Wx.exports=Zc});var xp=F((tM,Gx)=>{Gx.exports=Ux()});var Hp=F(xu=>{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.createJsonFormatter=void 0;var Ek=t=>{switch(t){case 0:return"DEBUG";case 1:return"INFO";case 2:return"WARN";case 3:return"ERROR";case 4:return"FATAL";default:return"UNKNOWN"}},Fk=()=>({format:t=>JSON.stringify({timestamp:t.timestamp,level:Ek(t.level),message:t.message,...t.context,...t.error&&{error:{name:t.error.name,message:t.error.message,stack:t.error.stack}},...t.metadata&&{metadata:t.metadata}})});xu.createJsonFormatter=Fk});var Ys=F(yu=>{"use strict";Object.defineProperty(yu,"__esModule",{value:!0});yu.LogLevel=void 0;var Jy;(function(t){t[t.DEBUG=0]="DEBUG",t[t.INFO=1]="INFO",t[t.WARN=2]="WARN",t[t.ERROR=3]="ERROR",t[t.FATAL=4]="FATAL"})(Jy||(yu.LogLevel=Jy={}))});var In=F(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.shouldLog=ao.BaseTransport=void 0;var _k=Ys(),Vp=class{constructor(){this.level=_k.LogLevel.INFO}setLevel(e){this.level=e}getLevel(){return this.level}shouldLog(e){return e>=this.level}};ao.BaseTransport=Vp;var kk=(t,e)=>t>=e;ao.shouldLog=kk});var vu=F(bu=>{"use strict";Object.defineProperty(bu,"__esModule",{value:!0});bu.createConsoleTransport=void 0;var co=Ys(),Ik=In(),Rk=(t={})=>{let e=t.level??co.LogLevel.INFO,s=t.formatter||{format:n=>JSON.stringify(n)};return{log:n=>{if(!(0,Ik.shouldLog)(n.level,e))return;let r=s.format(n);switch(n.level){case co.LogLevel.DEBUG:console.debug(r);break;case co.LogLevel.INFO:console.info(r);break;case co.LogLevel.WARN:console.warn(r);break;case co.LogLevel.ERROR:case co.LogLevel.FATAL:console.error(r);break}},setLevel:n=>{e=n},getLevel:()=>e}};bu.createConsoleTransport=Rk});var Kp=F(Gr=>{"use strict";Object.defineProperty(Gr,"__esModule",{value:!0});Gr.createBatchedLogger=Gr.createBatchedTransport=void 0;var Tk=(t,e={maxSize:100,maxWaitTime:5e3,maxBatchSize:1024*1024})=>{let s={logs:[],currentSize:0,lastFlush:Date.now()},n={totalLogs:0,totalBatches:0,averageBatchSize:0,lastFlushTime:0,pendingLogs:0},r=d=>d.reduce((f,p)=>f+JSON.stringify(p).length,0),i=async()=>{if(s.logs.length===0)return;let d=[...s.logs];s.logs=[],s.currentSize=0,s.lastFlush=Date.now(),s.flushTimer&&(clearTimeout(s.flushTimer),s.flushTimer=void 0);try{await Promise.allSettled(d.map(f=>t.log(f))),n.totalLogs+=d.length,n.totalBatches+=1,n.averageBatchSize=n.totalLogs/n.totalBatches,n.lastFlushTime=Date.now(),n.pendingLogs=s.logs.length}catch(f){console.error("Batch flush failed:",f),s.logs.unshift(...d),s.currentSize=r(s.logs)}},o=()=>{s.flushTimer||(s.flushTimer=setTimeout(()=>{i().catch(console.error)},e.maxWaitTime))};return{log:async d=>{let f=JSON.stringify(d).length;(s.logs.length>=e.maxSize||s.currentSize+f>=e.maxBatchSize)&&await i(),s.logs.push(d),s.currentSize+=f,n.pendingLogs=s.logs.length,s.logs.length===1&&o()},setLevel:d=>{t.setLevel(d)},getLevel:()=>t.getLevel(),flush:i,getStats:()=>({...n,pendingLogs:s.logs.length})}};Gr.createBatchedTransport=Tk;var Pk=(t,e={maxSize:50,maxWaitTime:2e3,maxBatchSize:512*1024})=>{let s=t.map(c=>(0,Gr.createBatchedTransport)(c,e));return{log:async c=>{await Promise.allSettled(s.map(u=>u.log(c)))},setLevel:c=>{for(let u of s)u.setLevel(c)},getLevel:()=>Math.min(...s.map(c=>c.getLevel())),flush:async()=>{await Promise.allSettled(s.map(c=>c.flush()))},getStats:()=>s.map(c=>c.getStats())}};Gr.createBatchedLogger=Pk});var Zp=F(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.createDefaultEnrichmentMiddleware=qe.createEnrichmentMiddleware=qe.createLoggerInstanceEnricher=qe.createUserEnricher=qe.createEnvironmentEnricher=qe.createSessionEnricher=qe.createCorrelationEnricher=qe.generateLoggerInstanceId=qe.generateSpanId=qe.generateTraceId=qe.generateCorrelationId=void 0;var Ok=()=>`corr_${Date.now()}_${Math.random().toString(36).substr(2,9)}`;qe.generateCorrelationId=Ok;var Lk=()=>Math.random().toString(16).substr(2,32);qe.generateTraceId=Lk;var Bk=()=>Math.random().toString(16).substr(2,16);qe.generateSpanId=Bk;var Nk=()=>{let t=Date.now(),e=Math.random().toString(36).substr(2,9),s=process.pid||0;return`logger_${t}_${e}_${s}`};qe.generateLoggerInstanceId=Nk;var Mk=()=>{let t,e,s;return{name:"correlation",enrich:n=>(n.correlationId||(t=t||(0,qe.generateCorrelationId)(),n.correlationId=t),n.traceId||(e=e||(0,qe.generateTraceId)(),n.traceId=e),n.spanId||(s=s||(0,qe.generateSpanId)(),n.spanId=s),n)}};qe.createCorrelationEnricher=Mk;var jk=t=>{let e=t||`session_${Date.now()}_${Math.random().toString(36).substr(2,9)}`;return{name:"session",enrich:s=>(s.sessionId||(s.sessionId=e),s)}};qe.createSessionEnricher=jk;var $k=(t,e)=>({name:"environment",enrich:s=>(t&&!s.serviceName&&(s.serviceName=t),e&&!s.stage&&(s.stage=e),s)});qe.createEnvironmentEnricher=$k;var Wk=t=>({name:"user",enrich:e=>(t&&!e.userId&&(e.userId=t),e)});qe.createUserEnricher=Wk;var Uk=t=>({name:"loggerInstance",enrich:e=>(e.instanceId||(e.instanceId=t),e)});qe.createLoggerInstanceEnricher=Uk;var Gk=t=>e=>t.reduce((s,n)=>n.enrich(s),{...e});qe.createEnrichmentMiddleware=Gk;var zk=(t,e,s,n)=>{let r=[(0,qe.createCorrelationEnricher)(),(0,qe.createSessionEnricher)(s),(0,qe.createEnvironmentEnricher)(t,e)];return n&&r.push((0,qe.createLoggerInstanceEnricher)(n)),(0,qe.createEnrichmentMiddleware)(r)};qe.createDefaultEnrichmentMiddleware=zk});var ka=F(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.getParsedType=tt.ZodParsedType=tt.objectUtil=tt.util=void 0;var Yp;(function(t){t.assertEqual=r=>{};function e(r){}t.assertIs=e;function s(r){throw new Error}t.assertNever=s,t.arrayToEnum=r=>{let i={};for(let o of r)i[o]=o;return i},t.getValidEnumValues=r=>{let i=t.objectKeys(r).filter(a=>typeof r[r[a]]!="number"),o={};for(let a of i)o[a]=r[a];return t.objectValues(o)},t.objectValues=r=>t.objectKeys(r).map(function(i){return r[i]}),t.objectKeys=typeof Object.keys=="function"?r=>Object.keys(r):r=>{let i=[];for(let o in r)Object.prototype.hasOwnProperty.call(r,o)&&i.push(o);return i},t.find=(r,i)=>{for(let o of r)if(i(o))return o},t.isInteger=typeof Number.isInteger=="function"?r=>Number.isInteger(r):r=>typeof r=="number"&&Number.isFinite(r)&&Math.floor(r)===r;function n(r,i=" | "){return r.map(o=>typeof o=="string"?`'${o}'`:o).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(r,i)=>typeof i=="bigint"?i.toString():i})(Yp||(tt.util=Yp={}));var Qy;(function(t){t.mergeShapes=(e,s)=>({...e,...s})})(Qy||(tt.objectUtil=Qy={}));tt.ZodParsedType=Yp.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]);var qk=t=>{switch(typeof t){case"undefined":return tt.ZodParsedType.undefined;case"string":return tt.ZodParsedType.string;case"number":return Number.isNaN(t)?tt.ZodParsedType.nan:tt.ZodParsedType.number;case"boolean":return tt.ZodParsedType.boolean;case"function":return tt.ZodParsedType.function;case"bigint":return tt.ZodParsedType.bigint;case"symbol":return tt.ZodParsedType.symbol;case"object":return Array.isArray(t)?tt.ZodParsedType.array:t===null?tt.ZodParsedType.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?tt.ZodParsedType.promise:typeof Map<"u"&&t instanceof Map?tt.ZodParsedType.map:typeof Set<"u"&&t instanceof Set?tt.ZodParsedType.set:typeof Date<"u"&&t instanceof Date?tt.ZodParsedType.date:tt.ZodParsedType.object;default:return tt.ZodParsedType.unknown}};tt.getParsedType=qk});var Du=F(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.ZodError=ir.quotelessJson=ir.ZodIssueCode=void 0;var Xy=ka();ir.ZodIssueCode=Xy.util.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var Hk=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:");ir.quotelessJson=Hk;var Ia=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let s=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,s):this.__proto__=s,this.name="ZodError",this.issues=e}format(e){let s=e||function(i){return i.message},n={_errors:[]},r=i=>{for(let o of i.issues)if(o.code==="invalid_union")o.unionErrors.map(r);else if(o.code==="invalid_return_type")r(o.returnTypeError);else if(o.code==="invalid_arguments")r(o.argumentsError);else if(o.path.length===0)n._errors.push(s(o));else{let a=n,c=0;for(;c<o.path.length;){let u=o.path[c];c===o.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(s(o))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return r(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Xy.util.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=s=>s.message){let s={},n=[];for(let r of this.issues)if(r.path.length>0){let i=r.path[0];s[i]=s[i]||[],s[i].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:s}}get formErrors(){return this.flatten()}};ir.ZodError=Ia;Ia.create=t=>new Ia(t)});var Qp=F(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});var Ut=Du(),zr=ka(),Vk=(t,e)=>{let s;switch(t.code){case Ut.ZodIssueCode.invalid_type:t.received===zr.ZodParsedType.undefined?s="Required":s=`Expected ${t.expected}, received ${t.received}`;break;case Ut.ZodIssueCode.invalid_literal:s=`Invalid literal value, expected ${JSON.stringify(t.expected,zr.util.jsonStringifyReplacer)}`;break;case Ut.ZodIssueCode.unrecognized_keys:s=`Unrecognized key(s) in object: ${zr.util.joinValues(t.keys,", ")}`;break;case Ut.ZodIssueCode.invalid_union:s="Invalid input";break;case Ut.ZodIssueCode.invalid_union_discriminator:s=`Invalid discriminator value. Expected ${zr.util.joinValues(t.options)}`;break;case Ut.ZodIssueCode.invalid_enum_value:s=`Invalid enum value. Expected ${zr.util.joinValues(t.options)}, received '${t.received}'`;break;case Ut.ZodIssueCode.invalid_arguments:s="Invalid function arguments";break;case Ut.ZodIssueCode.invalid_return_type:s="Invalid function return type";break;case Ut.ZodIssueCode.invalid_date:s="Invalid date";break;case Ut.ZodIssueCode.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(s=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(s=`${s} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?s=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?s=`Invalid input: must end with "${t.validation.endsWith}"`:zr.util.assertNever(t.validation):t.validation!=="regex"?s=`Invalid ${t.validation}`:s="Invalid";break;case Ut.ZodIssueCode.too_small:t.type==="array"?s=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?s=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?s=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?s=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?s=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:s="Invalid input";break;case Ut.ZodIssueCode.too_big:t.type==="array"?s=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?s=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?s=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?s=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?s=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:s="Invalid input";break;case Ut.ZodIssueCode.custom:s="Invalid input";break;case Ut.ZodIssueCode.invalid_intersection_types:s="Intersection results could not be merged";break;case Ut.ZodIssueCode.not_multiple_of:s=`Number must be a multiple of ${t.multipleOf}`;break;case Ut.ZodIssueCode.not_finite:s="Number must be finite";break;default:s=e.defaultError,zr.util.assertNever(t)}return{message:s}};Jp.default=Vk});var Su=F(or=>{"use strict";var Kk=or&&or.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(or,"__esModule",{value:!0});or.defaultErrorMap=void 0;or.setErrorMap=Zk;or.getErrorMap=Yk;var eb=Kk(Qp());or.defaultErrorMap=eb.default;var tb=eb.default;function Zk(t){tb=t}function Yk(){return tb}});var ef=F(Ye=>{"use strict";var Jk=Ye&&Ye.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ye,"__esModule",{value:!0});Ye.isAsync=Ye.isValid=Ye.isDirty=Ye.isAborted=Ye.OK=Ye.DIRTY=Ye.INVALID=Ye.ParseStatus=Ye.EMPTY_PATH=Ye.makeIssue=void 0;Ye.addIssueToContext=eI;var Qk=Su(),sb=Jk(Qp()),Xk=t=>{let{data:e,path:s,errorMaps:n,issueData:r}=t,i=[...s,...r.path||[]],o={...r,path:i};if(r.message!==void 0)return{...r,path:i,message:r.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...r,path:i,message:a}};Ye.makeIssue=Xk;Ye.EMPTY_PATH=[];function eI(t,e){let s=(0,Qk.getErrorMap)(),n=(0,Ye.makeIssue)({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,s,s===sb.default?void 0:sb.default].filter(r=>!!r)});t.common.issues.push(n)}var Xp=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,s){let n=[];for(let r of s){if(r.status==="aborted")return Ye.INVALID;r.status==="dirty"&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,s){let n=[];for(let r of s){let i=await r.key,o=await r.value;n.push({key:i,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,s){let n={};for(let r of s){let{key:i,value:o}=r;if(i.status==="aborted"||o.status==="aborted")return Ye.INVALID;i.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof o.value<"u"||r.alwaysSet)&&(n[i.value]=o.value)}return{status:e.value,value:n}}};Ye.ParseStatus=Xp;Ye.INVALID=Object.freeze({status:"aborted"});var tI=t=>({status:"dirty",value:t});Ye.DIRTY=tI;var sI=t=>({status:"valid",value:t});Ye.OK=sI;var nI=t=>t.status==="aborted";Ye.isAborted=nI;var rI=t=>t.status==="dirty";Ye.isDirty=rI;var iI=t=>t.status==="valid";Ye.isValid=iI;var oI=t=>typeof Promise<"u"&&t instanceof Promise;Ye.isAsync=oI});var rb=F(nb=>{"use strict";Object.defineProperty(nb,"__esModule",{value:!0})});var ob=F(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.errorUtil=void 0;var ib;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(ib||(Cu.errorUtil=ib={}))});var yb=F(k=>{"use strict";Object.defineProperty(k,"__esModule",{value:!0});k.discriminatedUnion=k.date=k.boolean=k.bigint=k.array=k.any=k.coerce=k.ZodFirstPartyTypeKind=k.late=k.ZodSchema=k.Schema=k.ZodReadonly=k.ZodPipeline=k.ZodBranded=k.BRAND=k.ZodNaN=k.ZodCatch=k.ZodDefault=k.ZodNullable=k.ZodOptional=k.ZodTransformer=k.ZodEffects=k.ZodPromise=k.ZodNativeEnum=k.ZodEnum=k.ZodLiteral=k.ZodLazy=k.ZodFunction=k.ZodSet=k.ZodMap=k.ZodRecord=k.ZodTuple=k.ZodIntersection=k.ZodDiscriminatedUnion=k.ZodUnion=k.ZodObject=k.ZodArray=k.ZodVoid=k.ZodNever=k.ZodUnknown=k.ZodAny=k.ZodNull=k.ZodUndefined=k.ZodSymbol=k.ZodDate=k.ZodBoolean=k.ZodBigInt=k.ZodNumber=k.ZodString=k.ZodType=void 0;k.NEVER=k.void=k.unknown=k.union=k.undefined=k.tuple=k.transformer=k.symbol=k.string=k.strictObject=k.set=k.record=k.promise=k.preprocess=k.pipeline=k.ostring=k.optional=k.onumber=k.oboolean=k.object=k.number=k.nullable=k.null=k.never=k.nativeEnum=k.nan=k.map=k.literal=k.lazy=k.intersection=k.instanceof=k.function=k.enum=k.effect=void 0;k.datetimeRegex=db;k.custom=fb;var ee=Du(),wu=Su(),ge=ob(),I=ef(),se=ka(),As=class{constructor(e,s,n,r){this._cachedPath=[],this.parent=e,this.data=s,this._path=n,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},ab=(t,e)=>{if((0,I.isValid)(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let s=new ee.ZodError(t.common.issues);return this._error=s,this._error}}};function ke(t){if(!t)return{};let{errorMap:e,invalid_type_error:s,required_error:n,description:r}=t;if(e&&(s||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:r}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??s??a.defaultError}},description:r}}var Ie=class{get description(){return this._def.description}_getType(e){return(0,se.getParsedType)(e.data)}_getOrReturnCtx(e,s){return s||{common:e.parent.common,data:e.data,parsedType:(0,se.getParsedType)(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new I.ParseStatus,ctx:{common:e.parent.common,data:e.data,parsedType:(0,se.getParsedType)(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let s=this._parse(e);if((0,I.isAsync)(s))throw new Error("Synchronous parse encountered promise.");return s}_parseAsync(e){let s=this._parse(e);return Promise.resolve(s)}parse(e,s){let n=this.safeParse(e,s);if(n.success)return n.data;throw n.error}safeParse(e,s){let n={common:{issues:[],async:s?.async??!1,contextualErrorMap:s?.errorMap},path:s?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:(0,se.getParsedType)(e)},r=this._parseSync({data:e,path:n.path,parent:n});return ab(n,r)}"~validate"(e){let s={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:(0,se.getParsedType)(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:s});return(0,I.isValid)(n)?{value:n.value}:{issues:s.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),s.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:s}).then(n=>(0,I.isValid)(n)?{value:n.value}:{issues:s.common.issues})}async parseAsync(e,s){let n=await this.safeParseAsync(e,s);if(n.success)return n.data;throw n.error}async safeParseAsync(e,s){let n={common:{issues:[],contextualErrorMap:s?.errorMap,async:!0},path:s?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:(0,se.getParsedType)(e)},r=this._parse({data:e,path:n.path,parent:n}),i=await((0,I.isAsync)(r)?r:Promise.resolve(r));return ab(n,i)}refine(e,s){let n=r=>typeof s=="string"||typeof s>"u"?{message:s}:typeof s=="function"?s(r):s;return this._refinement((r,i)=>{let o=e(r),a=()=>i.addIssue({code:ee.ZodIssueCode.custom,...n(r)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,s){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof s=="function"?s(n,r):s),!1))}_refinement(e){return new fs({schema:this,typeName:Ce.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:s=>this["~validate"](s)}}optional(){return ws.create(this,this._def)}nullable(){return mn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Pn.create(this)}promise(){return ur.create(this,this._def)}or(e){return Jr.create([this,e],this._def)}and(e){return Qr.create(this,e,this._def)}transform(e){return new fs({...ke(this._def),schema:this,typeName:Ce.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let s=typeof e=="function"?e:()=>e;return new ni({...ke(this._def),innerType:this,defaultValue:s,typeName:Ce.ZodDefault})}brand(){return new Ra({typeName:Ce.ZodBranded,type:this,...ke(this._def)})}catch(e){let s=typeof e=="function"?e:()=>e;return new ri({...ke(this._def),innerType:this,catchValue:s,typeName:Ce.ZodCatch})}describe(e){let s=this.constructor;return new s({...this._def,description:e})}pipe(e){return Ta.create(this,e)}readonly(){return ii.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}};k.ZodType=Ie;k.Schema=Ie;k.ZodSchema=Ie;var aI=/^c[^\s-]{8,}$/i,cI=/^[0-9a-z]+$/,uI=/^[0-9A-HJKMNP-TV-Z]{26}$/i,lI=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,dI=/^[a-z0-9_-]{21}$/i,pI=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,fI=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,mI=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,hI="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",tf,gI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,xI=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,yI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,bI=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,vI=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,DI=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,ub="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",SI=new RegExp(`^${ub}$`);function lb(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let s=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${s}`}function CI(t){return new RegExp(`^${lb(t)}$`)}function db(t){let e=`${ub}T${lb(t)}`,s=[];return s.push(t.local?"Z?":"Z"),t.offset&&s.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${s.join("|")})`,new RegExp(`^${e}$`)}function wI(t,e){return!!((e==="v4"||!e)&&gI.test(t)||(e==="v6"||!e)&&yI.test(t))}function AI(t,e){if(!pI.test(t))return!1;try{let[s]=t.split(".");if(!s)return!1;let n=s.replace(/-/g,"+").replace(/_/g,"/").padEnd(s.length+(4-s.length%4)%4,"="),r=JSON.parse(atob(n));return!(typeof r!="object"||r===null||"typ"in r&&r?.typ!=="JWT"||!r.alg||e&&r.alg!==e)}catch{return!1}}function EI(t,e){return!!((e==="v4"||!e)&&xI.test(t)||(e==="v6"||!e)&&bI.test(t))}var ar=class t extends Ie{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==se.ZodParsedType.string){let i=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(i,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.string,received:i.parsedType}),I.INVALID}let n=new I.ParseStatus,r;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let o=e.data.length>i.value,a=e.data.length<i.value;(o||a)&&(r=this._getOrReturnCtx(e,r),o?(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):a&&(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")mI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"email",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")tf||(tf=new RegExp(hI,"u")),tf.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"emoji",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")lI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"uuid",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")dI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"nanoid",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")aI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"cuid",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")cI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"cuid2",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")uI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"ulid",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"url",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"regex",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?db(i).test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?SI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?CI(i).test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?fI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"duration",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?wI(e.data,i.version)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"ip",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?AI(e.data,i.alg)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"jwt",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?EI(e.data,i.version)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"cidr",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?vI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"base64",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?DI.test(e.data)||(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{validation:"base64url",code:ee.ZodIssueCode.invalid_string,message:i.message}),n.dirty()):se.util.assertNever(i);return{status:n.value,value:e.data}}_regex(e,s,n){return this.refinement(r=>e.test(r),{validation:s,code:ee.ZodIssueCode.invalid_string,...ge.errorUtil.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...ge.errorUtil.errToObj(e)})}url(e){return this._addCheck({kind:"url",...ge.errorUtil.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...ge.errorUtil.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...ge.errorUtil.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...ge.errorUtil.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...ge.errorUtil.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...ge.errorUtil.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...ge.errorUtil.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...ge.errorUtil.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...ge.errorUtil.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...ge.errorUtil.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...ge.errorUtil.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...ge.errorUtil.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...ge.errorUtil.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...ge.errorUtil.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...ge.errorUtil.errToObj(e)})}regex(e,s){return this._addCheck({kind:"regex",regex:e,...ge.errorUtil.errToObj(s)})}includes(e,s){return this._addCheck({kind:"includes",value:e,position:s?.position,...ge.errorUtil.errToObj(s?.message)})}startsWith(e,s){return this._addCheck({kind:"startsWith",value:e,...ge.errorUtil.errToObj(s)})}endsWith(e,s){return this._addCheck({kind:"endsWith",value:e,...ge.errorUtil.errToObj(s)})}min(e,s){return this._addCheck({kind:"min",value:e,...ge.errorUtil.errToObj(s)})}max(e,s){return this._addCheck({kind:"max",value:e,...ge.errorUtil.errToObj(s)})}length(e,s){return this._addCheck({kind:"length",value:e,...ge.errorUtil.errToObj(s)})}nonempty(e){return this.min(1,ge.errorUtil.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxLength(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};k.ZodString=ar;ar.create=t=>new ar({checks:[],typeName:Ce.ZodString,coerce:t?.coerce??!1,...ke(t)});function FI(t,e){let s=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,r=s>n?s:n,i=Number.parseInt(t.toFixed(r).replace(".","")),o=Number.parseInt(e.toFixed(r).replace(".",""));return i%o/10**r}var qr=class t extends Ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==se.ZodParsedType.number){let i=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(i,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.number,received:i.parsedType}),I.INVALID}let n,r=new I.ParseStatus;for(let i of this._def.checks)i.kind==="int"?se.util.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:"integer",received:"float",message:i.message}),r.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),r.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),r.dirty()):i.kind==="multipleOf"?FI(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.not_multiple_of,multipleOf:i.value,message:i.message}),r.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.not_finite,message:i.message}),r.dirty()):se.util.assertNever(i);return{status:r.value,value:e.data}}gte(e,s){return this.setLimit("min",e,!0,ge.errorUtil.toString(s))}gt(e,s){return this.setLimit("min",e,!1,ge.errorUtil.toString(s))}lte(e,s){return this.setLimit("max",e,!0,ge.errorUtil.toString(s))}lt(e,s){return this.setLimit("max",e,!1,ge.errorUtil.toString(s))}setLimit(e,s,n,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:ge.errorUtil.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:ge.errorUtil.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ge.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ge.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ge.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ge.errorUtil.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:ge.errorUtil.toString(s)})}finite(e){return this._addCheck({kind:"finite",message:ge.errorUtil.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ge.errorUtil.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ge.errorUtil.toString(e)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&se.util.isInteger(e.value))}get isFinite(){let e=null,s=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(s===null||n.value>s)&&(s=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(s)&&Number.isFinite(e)}};k.ZodNumber=qr;qr.create=t=>new qr({checks:[],typeName:Ce.ZodNumber,coerce:t?.coerce||!1,...ke(t)});var Hr=class t extends Ie{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==se.ZodParsedType.bigint)return this._getInvalidInput(e);let n,r=new I.ParseStatus;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),r.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),r.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.not_multiple_of,multipleOf:i.value,message:i.message}),r.dirty()):se.util.assertNever(i);return{status:r.value,value:e.data}}_getInvalidInput(e){let s=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.bigint,received:s.parsedType}),I.INVALID}gte(e,s){return this.setLimit("min",e,!0,ge.errorUtil.toString(s))}gt(e,s){return this.setLimit("min",e,!1,ge.errorUtil.toString(s))}lte(e,s){return this.setLimit("max",e,!0,ge.errorUtil.toString(s))}lt(e,s){return this.setLimit("max",e,!1,ge.errorUtil.toString(s))}setLimit(e,s,n,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:ge.errorUtil.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ge.errorUtil.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ge.errorUtil.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ge.errorUtil.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ge.errorUtil.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:ge.errorUtil.toString(s)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};k.ZodBigInt=Hr;Hr.create=t=>new Hr({checks:[],typeName:Ce.ZodBigInt,coerce:t?.coerce??!1,...ke(t)});var Vr=class extends Ie{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==se.ZodParsedType.boolean){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.boolean,received:n.parsedType}),I.INVALID}return(0,I.OK)(e.data)}};k.ZodBoolean=Vr;Vr.create=t=>new Vr({typeName:Ce.ZodBoolean,coerce:t?.coerce||!1,...ke(t)});var Kr=class t extends Ie{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==se.ZodParsedType.date){let i=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(i,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.date,received:i.parsedType}),I.INVALID}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(i,{code:ee.ZodIssueCode.invalid_date}),I.INVALID}let n=new I.ParseStatus,r;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(r=this._getOrReturnCtx(e,r),(0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):se.util.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,s){return this._addCheck({kind:"min",value:e.getTime(),message:ge.errorUtil.toString(s)})}max(e,s){return this._addCheck({kind:"max",value:e.getTime(),message:ge.errorUtil.toString(s)})}get minDate(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e!=null?new Date(e):null}};k.ZodDate=Kr;Kr.create=t=>new Kr({checks:[],coerce:t?.coerce||!1,typeName:Ce.ZodDate,...ke(t)});var lo=class extends Ie{_parse(e){if(this._getType(e)!==se.ZodParsedType.symbol){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.symbol,received:n.parsedType}),I.INVALID}return(0,I.OK)(e.data)}};k.ZodSymbol=lo;lo.create=t=>new lo({typeName:Ce.ZodSymbol,...ke(t)});var Zr=class extends Ie{_parse(e){if(this._getType(e)!==se.ZodParsedType.undefined){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.undefined,received:n.parsedType}),I.INVALID}return(0,I.OK)(e.data)}};k.ZodUndefined=Zr;Zr.create=t=>new Zr({typeName:Ce.ZodUndefined,...ke(t)});var Yr=class extends Ie{_parse(e){if(this._getType(e)!==se.ZodParsedType.null){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.null,received:n.parsedType}),I.INVALID}return(0,I.OK)(e.data)}};k.ZodNull=Yr;Yr.create=t=>new Yr({typeName:Ce.ZodNull,...ke(t)});var cr=class extends Ie{constructor(){super(...arguments),this._any=!0}_parse(e){return(0,I.OK)(e.data)}};k.ZodAny=cr;cr.create=t=>new cr({typeName:Ce.ZodAny,...ke(t)});var Tn=class extends Ie{constructor(){super(...arguments),this._unknown=!0}_parse(e){return(0,I.OK)(e.data)}};k.ZodUnknown=Tn;Tn.create=t=>new Tn({typeName:Ce.ZodUnknown,...ke(t)});var Js=class extends Ie{_parse(e){let s=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.never,received:s.parsedType}),I.INVALID}};k.ZodNever=Js;Js.create=t=>new Js({typeName:Ce.ZodNever,...ke(t)});var po=class extends Ie{_parse(e){if(this._getType(e)!==se.ZodParsedType.undefined){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.void,received:n.parsedType}),I.INVALID}return(0,I.OK)(e.data)}};k.ZodVoid=po;po.create=t=>new po({typeName:Ce.ZodVoid,...ke(t)});var Pn=class t extends Ie{_parse(e){let{ctx:s,status:n}=this._processInputParams(e),r=this._def;if(s.parsedType!==se.ZodParsedType.array)return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.array,received:s.parsedType}),I.INVALID;if(r.exactLength!==null){let o=s.data.length>r.exactLength.value,a=s.data.length<r.exactLength.value;(o||a)&&((0,I.addIssueToContext)(s,{code:o?ee.ZodIssueCode.too_big:ee.ZodIssueCode.too_small,minimum:a?r.exactLength.value:void 0,maximum:o?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&s.data.length<r.minLength.value&&((0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&s.data.length>r.maxLength.value&&((0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),s.common.async)return Promise.all([...s.data].map((o,a)=>r.type._parseAsync(new As(s,o,s.path,a)))).then(o=>I.ParseStatus.mergeArray(n,o));let i=[...s.data].map((o,a)=>r.type._parseSync(new As(s,o,s.path,a)));return I.ParseStatus.mergeArray(n,i)}get element(){return this._def.type}min(e,s){return new t({...this._def,minLength:{value:e,message:ge.errorUtil.toString(s)}})}max(e,s){return new t({...this._def,maxLength:{value:e,message:ge.errorUtil.toString(s)}})}length(e,s){return new t({...this._def,exactLength:{value:e,message:ge.errorUtil.toString(s)}})}nonempty(e){return this.min(1,e)}};k.ZodArray=Pn;Pn.create=(t,e)=>new Pn({type:t,minLength:null,maxLength:null,exactLength:null,typeName:Ce.ZodArray,...ke(e)});function uo(t){if(t instanceof Jt){let e={};for(let s in t.shape){let n=t.shape[s];e[s]=ws.create(uo(n))}return new Jt({...t._def,shape:()=>e})}else return t instanceof Pn?new Pn({...t._def,type:uo(t.element)}):t instanceof ws?ws.create(uo(t.unwrap())):t instanceof mn?mn.create(uo(t.unwrap())):t instanceof fn?fn.create(t.items.map(e=>uo(e))):t}var Jt=class t extends Ie{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),s=se.util.objectKeys(e);return this._cached={shape:e,keys:s},this._cached}_parse(e){if(this._getType(e)!==se.ZodParsedType.object){let u=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(u,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.object,received:u.parsedType}),I.INVALID}let{status:n,ctx:r}=this._processInputParams(e),{shape:i,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Js&&this._def.unknownKeys==="strip"))for(let u in r.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=i[u],d=r.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new As(r,d,r.path,u)),alwaysSet:u in r.data})}if(this._def.catchall instanceof Js){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:r.data[l]}});else if(u==="strict")a.length>0&&((0,I.addIssueToContext)(r,{code:ee.ZodIssueCode.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=r.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new As(r,d,r.path,l)),alwaysSet:l in r.data})}}return r.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>I.ParseStatus.mergeObjectSync(n,u)):I.ParseStatus.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return ge.errorUtil.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(s,n)=>{let r=this._def.errorMap?.(s,n).message??n.defaultError;return s.code==="unrecognized_keys"?{message:ge.errorUtil.errToObj(e).message??r}:{message:r}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:Ce.ZodObject})}setKey(e,s){return this.augment({[e]:s})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let s={};for(let n of se.util.objectKeys(e))e[n]&&this.shape[n]&&(s[n]=this.shape[n]);return new t({...this._def,shape:()=>s})}omit(e){let s={};for(let n of se.util.objectKeys(this.shape))e[n]||(s[n]=this.shape[n]);return new t({...this._def,shape:()=>s})}deepPartial(){return uo(this)}partial(e){let s={};for(let n of se.util.objectKeys(this.shape)){let r=this.shape[n];e&&!e[n]?s[n]=r:s[n]=r.optional()}return new t({...this._def,shape:()=>s})}required(e){let s={};for(let n of se.util.objectKeys(this.shape))if(e&&!e[n])s[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof ws;)i=i._def.innerType;s[n]=i}return new t({...this._def,shape:()=>s})}keyof(){return pb(se.util.objectKeys(this.shape))}};k.ZodObject=Jt;Jt.create=(t,e)=>new Jt({shape:()=>t,unknownKeys:"strip",catchall:Js.create(),typeName:Ce.ZodObject,...ke(e)});Jt.strictCreate=(t,e)=>new Jt({shape:()=>t,unknownKeys:"strict",catchall:Js.create(),typeName:Ce.ZodObject,...ke(e)});Jt.lazycreate=(t,e)=>new Jt({shape:t,unknownKeys:"strip",catchall:Js.create(),typeName:Ce.ZodObject,...ke(e)});var Jr=class extends Ie{_parse(e){let{ctx:s}=this._processInputParams(e),n=this._def.options;function r(i){for(let a of i)if(a.result.status==="valid")return a.result;for(let a of i)if(a.result.status==="dirty")return s.common.issues.push(...a.ctx.common.issues),a.result;let o=i.map(a=>new ee.ZodError(a.ctx.common.issues));return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_union,unionErrors:o}),I.INVALID}if(s.common.async)return Promise.all(n.map(async i=>{let o={...s,common:{...s.common,issues:[]},parent:null};return{result:await i._parseAsync({data:s.data,path:s.path,parent:o}),ctx:o}})).then(r);{let i,o=[];for(let c of n){let u={...s,common:{...s.common,issues:[]},parent:null},l=c._parseSync({data:s.data,path:s.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(i)return s.common.issues.push(...i.ctx.common.issues),i.result;let a=o.map(c=>new ee.ZodError(c));return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_union,unionErrors:a}),I.INVALID}}get options(){return this._def.options}};k.ZodUnion=Jr;Jr.create=(t,e)=>new Jr({options:t,typeName:Ce.ZodUnion,...ke(e)});var Rn=t=>t instanceof Xr?Rn(t.schema):t instanceof fs?Rn(t.innerType()):t instanceof ei?[t.value]:t instanceof ti?t.options:t instanceof si?se.util.objectValues(t.enum):t instanceof ni?Rn(t._def.innerType):t instanceof Zr?[void 0]:t instanceof Yr?[null]:t instanceof ws?[void 0,...Rn(t.unwrap())]:t instanceof mn?[null,...Rn(t.unwrap())]:t instanceof Ra||t instanceof ii?Rn(t.unwrap()):t instanceof ri?Rn(t._def.innerType):[],Au=class t extends Ie{_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==se.ZodParsedType.object)return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.object,received:s.parsedType}),I.INVALID;let n=this.discriminator,r=s.data[n],i=this.optionsMap.get(r);return i?s.common.async?i._parseAsync({data:s.data,path:s.path,parent:s}):i._parseSync({data:s.data,path:s.path,parent:s}):((0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),I.INVALID)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,s,n){let r=new Map;for(let i of s){let o=Rn(i.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(r.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);r.set(a,i)}}return new t({typeName:Ce.ZodDiscriminatedUnion,discriminator:e,options:s,optionsMap:r,...ke(n)})}};k.ZodDiscriminatedUnion=Au;function sf(t,e){let s=(0,se.getParsedType)(t),n=(0,se.getParsedType)(e);if(t===e)return{valid:!0,data:t};if(s===se.ZodParsedType.object&&n===se.ZodParsedType.object){let r=se.util.objectKeys(e),i=se.util.objectKeys(t).filter(a=>r.indexOf(a)!==-1),o={...t,...e};for(let a of i){let c=sf(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(s===se.ZodParsedType.array&&n===se.ZodParsedType.array){if(t.length!==e.length)return{valid:!1};let r=[];for(let i=0;i<t.length;i++){let o=t[i],a=e[i],c=sf(o,a);if(!c.valid)return{valid:!1};r.push(c.data)}return{valid:!0,data:r}}else return s===se.ZodParsedType.date&&n===se.ZodParsedType.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Qr=class extends Ie{_parse(e){let{status:s,ctx:n}=this._processInputParams(e),r=(i,o)=>{if((0,I.isAborted)(i)||(0,I.isAborted)(o))return I.INVALID;let a=sf(i.value,o.value);return a.valid?(((0,I.isDirty)(i)||(0,I.isDirty)(o))&&s.dirty(),{status:s.value,value:a.data}):((0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_intersection_types}),I.INVALID)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,o])=>r(i,o)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};k.ZodIntersection=Qr;Qr.create=(t,e,s)=>new Qr({left:t,right:e,typeName:Ce.ZodIntersection,...ke(s)});var fn=class t extends Ie{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==se.ZodParsedType.array)return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.array,received:n.parsedType}),I.INVALID;if(n.data.length<this._def.items.length)return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),I.INVALID;!this._def.rest&&n.data.length>this._def.items.length&&((0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),s.dirty());let i=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new As(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(i).then(o=>I.ParseStatus.mergeArray(s,o)):I.ParseStatus.mergeArray(s,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};k.ZodTuple=fn;fn.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new fn({items:t,typeName:Ce.ZodTuple,rest:null,...ke(e)})};var Eu=class t extends Ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==se.ZodParsedType.object)return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.object,received:n.parsedType}),I.INVALID;let r=[],i=this._def.keyType,o=this._def.valueType;for(let a in n.data)r.push({key:i._parse(new As(n,a,n.path,a)),value:o._parse(new As(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?I.ParseStatus.mergeObjectAsync(s,r):I.ParseStatus.mergeObjectSync(s,r)}get element(){return this._def.valueType}static create(e,s,n){return s instanceof Ie?new t({keyType:e,valueType:s,typeName:Ce.ZodRecord,...ke(n)}):new t({keyType:ar.create(),valueType:e,typeName:Ce.ZodRecord,...ke(s)})}};k.ZodRecord=Eu;var fo=class extends Ie{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==se.ZodParsedType.map)return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.map,received:n.parsedType}),I.INVALID;let r=this._def.keyType,i=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:r._parse(new As(n,a,n.path,[u,"key"])),value:i._parse(new As(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return I.INVALID;(u.status==="dirty"||l.status==="dirty")&&s.dirty(),a.set(u.value,l.value)}return{status:s.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return I.INVALID;(u.status==="dirty"||l.status==="dirty")&&s.dirty(),a.set(u.value,l.value)}return{status:s.value,value:a}}}};k.ZodMap=fo;fo.create=(t,e,s)=>new fo({valueType:e,keyType:t,typeName:Ce.ZodMap,...ke(s)});var mo=class t extends Ie{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==se.ZodParsedType.set)return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.set,received:n.parsedType}),I.INVALID;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&((0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),s.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&((0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),s.dirty());let i=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return I.INVALID;l.status==="dirty"&&s.dirty(),u.add(l.value)}return{status:s.value,value:u}}let a=[...n.data.values()].map((c,u)=>i._parse(new As(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,s){return new t({...this._def,minSize:{value:e,message:ge.errorUtil.toString(s)}})}max(e,s){return new t({...this._def,maxSize:{value:e,message:ge.errorUtil.toString(s)}})}size(e,s){return this.min(e,s).max(e,s)}nonempty(e){return this.min(1,e)}};k.ZodSet=mo;mo.create=(t,e)=>new mo({valueType:t,minSize:null,maxSize:null,typeName:Ce.ZodSet,...ke(e)});var Fu=class t extends Ie{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==se.ZodParsedType.function)return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.function,received:s.parsedType}),I.INVALID;function n(a,c){return(0,I.makeIssue)({data:a,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,(0,wu.getErrorMap)(),wu.defaultErrorMap].filter(u=>!!u),issueData:{code:ee.ZodIssueCode.invalid_arguments,argumentsError:c}})}function r(a,c){return(0,I.makeIssue)({data:a,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,(0,wu.getErrorMap)(),wu.defaultErrorMap].filter(u=>!!u),issueData:{code:ee.ZodIssueCode.invalid_return_type,returnTypeError:c}})}let i={errorMap:s.common.contextualErrorMap},o=s.data;if(this._def.returns instanceof ur){let a=this;return(0,I.OK)(async function(...c){let u=new ee.ZodError([]),l=await a._def.args.parseAsync(c,i).catch(p=>{throw u.addIssue(n(c,p)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,i).catch(p=>{throw u.addIssue(r(d,p)),u})})}else{let a=this;return(0,I.OK)(function(...c){let u=a._def.args.safeParse(c,i);if(!u.success)throw new ee.ZodError([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,i);if(!d.success)throw new ee.ZodError([r(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:fn.create(e).rest(Tn.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,s,n){return new t({args:e||fn.create([]).rest(Tn.create()),returns:s||Tn.create(),typeName:Ce.ZodFunction,...ke(n)})}};k.ZodFunction=Fu;var Xr=class extends Ie{get schema(){return this._def.getter()}_parse(e){let{ctx:s}=this._processInputParams(e);return this._def.getter()._parse({data:s.data,path:s.path,parent:s})}};k.ZodLazy=Xr;Xr.create=(t,e)=>new Xr({getter:t,typeName:Ce.ZodLazy,...ke(e)});var ei=class extends Ie{_parse(e){if(e.data!==this._def.value){let s=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(s,{received:s.data,code:ee.ZodIssueCode.invalid_literal,expected:this._def.value}),I.INVALID}return{status:"valid",value:e.data}}get value(){return this._def.value}};k.ZodLiteral=ei;ei.create=(t,e)=>new ei({value:t,typeName:Ce.ZodLiteral,...ke(e)});function pb(t,e){return new ti({values:t,typeName:Ce.ZodEnum,...ke(e)})}var ti=class t extends Ie{_parse(e){if(typeof e.data!="string"){let s=this._getOrReturnCtx(e),n=this._def.values;return(0,I.addIssueToContext)(s,{expected:se.util.joinValues(n),received:s.parsedType,code:ee.ZodIssueCode.invalid_type}),I.INVALID}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let s=this._getOrReturnCtx(e),n=this._def.values;return(0,I.addIssueToContext)(s,{received:s.data,code:ee.ZodIssueCode.invalid_enum_value,options:n}),I.INVALID}return(0,I.OK)(e.data)}get options(){return this._def.values}get enum(){let e={};for(let s of this._def.values)e[s]=s;return e}get Values(){let e={};for(let s of this._def.values)e[s]=s;return e}get Enum(){let e={};for(let s of this._def.values)e[s]=s;return e}extract(e,s=this._def){return t.create(e,{...this._def,...s})}exclude(e,s=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...s})}};k.ZodEnum=ti;ti.create=pb;var si=class extends Ie{_parse(e){let s=se.util.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==se.ZodParsedType.string&&n.parsedType!==se.ZodParsedType.number){let r=se.util.objectValues(s);return(0,I.addIssueToContext)(n,{expected:se.util.joinValues(r),received:n.parsedType,code:ee.ZodIssueCode.invalid_type}),I.INVALID}if(this._cache||(this._cache=new Set(se.util.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let r=se.util.objectValues(s);return(0,I.addIssueToContext)(n,{received:n.data,code:ee.ZodIssueCode.invalid_enum_value,options:r}),I.INVALID}return(0,I.OK)(e.data)}get enum(){return this._def.values}};k.ZodNativeEnum=si;si.create=(t,e)=>new si({values:t,typeName:Ce.ZodNativeEnum,...ke(e)});var ur=class extends Ie{unwrap(){return this._def.type}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==se.ZodParsedType.promise&&s.common.async===!1)return(0,I.addIssueToContext)(s,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.promise,received:s.parsedType}),I.INVALID;let n=s.parsedType===se.ZodParsedType.promise?s.data:Promise.resolve(s.data);return(0,I.OK)(n.then(r=>this._def.type.parseAsync(r,{path:s.path,errorMap:s.common.contextualErrorMap})))}};k.ZodPromise=ur;ur.create=(t,e)=>new ur({type:t,typeName:Ce.ZodPromise,...ke(e)});var fs=class extends Ie{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Ce.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:s,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:o=>{(0,I.addIssueToContext)(n,o),o.fatal?s.abort():s.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type==="preprocess"){let o=r.transform(n.data,i);if(n.common.async)return Promise.resolve(o).then(async a=>{if(s.value==="aborted")return I.INVALID;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?I.INVALID:c.status==="dirty"||s.value==="dirty"?(0,I.DIRTY)(c.value):c});{if(s.value==="aborted")return I.INVALID;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?I.INVALID:a.status==="dirty"||s.value==="dirty"?(0,I.DIRTY)(a.value):a}}if(r.type==="refinement"){let o=a=>{let c=r.refinement(a,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?I.INVALID:(a.status==="dirty"&&s.dirty(),o(a.value),{status:s.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?I.INVALID:(a.status==="dirty"&&s.dirty(),o(a.value).then(()=>({status:s.value,value:a.value}))))}if(r.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!(0,I.isValid)(o))return I.INVALID;let a=r.transform(o.value,i);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:s.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>(0,I.isValid)(o)?Promise.resolve(r.transform(o.value,i)).then(a=>({status:s.value,value:a})):I.INVALID);se.util.assertNever(r)}};k.ZodEffects=fs;k.ZodTransformer=fs;fs.create=(t,e,s)=>new fs({schema:t,typeName:Ce.ZodEffects,effect:e,...ke(s)});fs.createWithPreprocess=(t,e,s)=>new fs({schema:e,effect:{type:"preprocess",transform:t},typeName:Ce.ZodEffects,...ke(s)});var ws=class extends Ie{_parse(e){return this._getType(e)===se.ZodParsedType.undefined?(0,I.OK)(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};k.ZodOptional=ws;ws.create=(t,e)=>new ws({innerType:t,typeName:Ce.ZodOptional,...ke(e)});var mn=class extends Ie{_parse(e){return this._getType(e)===se.ZodParsedType.null?(0,I.OK)(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};k.ZodNullable=mn;mn.create=(t,e)=>new mn({innerType:t,typeName:Ce.ZodNullable,...ke(e)});var ni=class extends Ie{_parse(e){let{ctx:s}=this._processInputParams(e),n=s.data;return s.parsedType===se.ZodParsedType.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:s.path,parent:s})}removeDefault(){return this._def.innerType}};k.ZodDefault=ni;ni.create=(t,e)=>new ni({innerType:t,typeName:Ce.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ke(e)});var ri=class extends Ie{_parse(e){let{ctx:s}=this._processInputParams(e),n={...s,common:{...s.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return(0,I.isAsync)(r)?r.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new ee.ZodError(n.common.issues)},input:n.data})})):{status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new ee.ZodError(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};k.ZodCatch=ri;ri.create=(t,e)=>new ri({innerType:t,typeName:Ce.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ke(e)});var ho=class extends Ie{_parse(e){if(this._getType(e)!==se.ZodParsedType.nan){let n=this._getOrReturnCtx(e);return(0,I.addIssueToContext)(n,{code:ee.ZodIssueCode.invalid_type,expected:se.ZodParsedType.nan,received:n.parsedType}),I.INVALID}return{status:"valid",value:e.data}}};k.ZodNaN=ho;ho.create=t=>new ho({typeName:Ce.ZodNaN,...ke(t)});k.BRAND=Symbol("zod_brand");var Ra=class extends Ie{_parse(e){let{ctx:s}=this._processInputParams(e),n=s.data;return this._def.type._parse({data:n,path:s.path,parent:s})}unwrap(){return this._def.type}};k.ZodBranded=Ra;var Ta=class t extends Ie{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?I.INVALID:i.status==="dirty"?(s.dirty(),(0,I.DIRTY)(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let r=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return r.status==="aborted"?I.INVALID:r.status==="dirty"?(s.dirty(),{status:"dirty",value:r.value}):this._def.out._parseSync({data:r.value,path:n.path,parent:n})}}static create(e,s){return new t({in:e,out:s,typeName:Ce.ZodPipeline})}};k.ZodPipeline=Ta;var ii=class extends Ie{_parse(e){let s=this._def.innerType._parse(e),n=r=>((0,I.isValid)(r)&&(r.value=Object.freeze(r.value)),r);return(0,I.isAsync)(s)?s.then(r=>n(r)):n(s)}unwrap(){return this._def.innerType}};k.ZodReadonly=ii;ii.create=(t,e)=>new ii({innerType:t,typeName:Ce.ZodReadonly,...ke(e)});function cb(t,e){let s=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof s=="string"?{message:s}:s}function fb(t,e={},s){return t?cr.create().superRefine((n,r)=>{let i=t(n);if(i instanceof Promise)return i.then(o=>{if(!o){let a=cb(e,n),c=a.fatal??s??!0;r.addIssue({code:"custom",...a,fatal:c})}});if(!i){let o=cb(e,n),a=o.fatal??s??!0;r.addIssue({code:"custom",...o,fatal:a})}}):cr.create()}k.late={object:Jt.lazycreate};var Ce;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(Ce||(k.ZodFirstPartyTypeKind=Ce={}));var _I=(t,e={message:`Input not instance of ${t.name}`})=>fb(s=>s instanceof t,e);k.instanceof=_I;var mb=ar.create;k.string=mb;var hb=qr.create;k.number=hb;var kI=ho.create;k.nan=kI;var II=Hr.create;k.bigint=II;var gb=Vr.create;k.boolean=gb;var RI=Kr.create;k.date=RI;var TI=lo.create;k.symbol=TI;var PI=Zr.create;k.undefined=PI;var OI=Yr.create;k.null=OI;var LI=cr.create;k.any=LI;var BI=Tn.create;k.unknown=BI;var NI=Js.create;k.never=NI;var MI=po.create;k.void=MI;var jI=Pn.create;k.array=jI;var $I=Jt.create;k.object=$I;var WI=Jt.strictCreate;k.strictObject=WI;var UI=Jr.create;k.union=UI;var GI=Au.create;k.discriminatedUnion=GI;var zI=Qr.create;k.intersection=zI;var qI=fn.create;k.tuple=qI;var HI=Eu.create;k.record=HI;var VI=fo.create;k.map=VI;var KI=mo.create;k.set=KI;var ZI=Fu.create;k.function=ZI;var YI=Xr.create;k.lazy=YI;var JI=ei.create;k.literal=JI;var QI=ti.create;k.enum=QI;var XI=si.create;k.nativeEnum=XI;var eR=ur.create;k.promise=eR;var xb=fs.create;k.effect=xb;k.transformer=xb;var tR=ws.create;k.optional=tR;var sR=mn.create;k.nullable=sR;var nR=fs.createWithPreprocess;k.preprocess=nR;var rR=Ta.create;k.pipeline=rR;var iR=()=>mb().optional();k.ostring=iR;var oR=()=>hb().optional();k.onumber=oR;var aR=()=>gb().optional();k.oboolean=aR;k.coerce={string:t=>ar.create({...t,coerce:!0}),number:t=>qr.create({...t,coerce:!0}),boolean:t=>Vr.create({...t,coerce:!0}),bigint:t=>Hr.create({...t,coerce:!0}),date:t=>Kr.create({...t,coerce:!0})};k.NEVER=I.INVALID});var nf=F(Es=>{"use strict";var cR=Es&&Es.__createBinding||(Object.create?function(t,e,s,n){n===void 0&&(n=s);var r=Object.getOwnPropertyDescriptor(e,s);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,n,r)}:function(t,e,s,n){n===void 0&&(n=s),t[n]=e[s]}),go=Es&&Es.__exportStar||function(t,e){for(var s in t)s!=="default"&&!Object.prototype.hasOwnProperty.call(e,s)&&cR(e,t,s)};Object.defineProperty(Es,"__esModule",{value:!0});go(Su(),Es);go(ef(),Es);go(rb(),Es);go(ka(),Es);go(yb(),Es);go(Du(),Es)});var Db=F(Qt=>{"use strict";var bb=Qt&&Qt.__createBinding||(Object.create?function(t,e,s,n){n===void 0&&(n=s);var r=Object.getOwnPropertyDescriptor(e,s);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,n,r)}:function(t,e,s,n){n===void 0&&(n=s),t[n]=e[s]}),uR=Qt&&Qt.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lR=Qt&&Qt.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var s in t)s!=="default"&&Object.prototype.hasOwnProperty.call(t,s)&&bb(e,t,s);return uR(e,t),e},dR=Qt&&Qt.__exportStar||function(t,e){for(var s in t)s!=="default"&&!Object.prototype.hasOwnProperty.call(e,s)&&bb(e,t,s)};Object.defineProperty(Qt,"__esModule",{value:!0});Qt.z=void 0;var vb=lR(nf());Qt.z=vb;dR(nf(),Qt);Qt.default=vb});var rf=F(_u=>{"use strict";Object.defineProperty(_u,"__esModule",{value:!0});_u.getEnvironment=void 0;var On=Db(),pR=On.z.object({LOG_LEVEL:On.z.enum(["DEBUG","INFO","WARN","ERROR","FATAL"]).optional(),STAGE:On.z.enum(["dev","prod","test"]).default("dev"),SERVICE_NAME:On.z.string().optional(),ENABLE_STRUCTURED_LOGGING:On.z.string().transform(t=>t==="true").optional(),CLOUDWATCH_LOG_GROUP:On.z.string().optional(),CLOUDWATCH_LOG_STREAM:On.z.string().optional(),AWS_REGION:On.z.string().optional()}),fR=(t=process.env)=>{let e;try{e=pR.parse(t)}catch(s){s instanceof On.z.ZodError&&console.warn("Environment validation failed, using defaults:",s.errors),e={STAGE:"dev"}}return{...e,isProduction:e.STAGE==="prod",isDevelopment:e.STAGE==="dev",logLevel:e.LOG_LEVEL??void 0,serviceName:e.SERVICE_NAME??void 0,enableStructuredLogging:e.ENABLE_STRUCTURED_LOGGING??!0,stage:e.STAGE}};_u.getEnvironment=fR});var of=F(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.createLogFilter=hn.createSampler=hn.createRateLimiter=void 0;var mR=(t,e)=>{let s={tokens:e,lastRefill:Date.now(),maxTokens:e,refillRate:t},n=()=>{let i=Date.now(),a=(i-s.lastRefill)/1e3*s.refillRate;s.tokens=Math.min(s.maxTokens,s.tokens+a),s.lastRefill=i};return{tryConsume:(i=1)=>(n(),s.tokens>=i?(s.tokens-=i,!0):!1),getState:()=>({...s})}};hn.createRateLimiter=mR;var hR=t=>{let e={totalLogs:0,sampledLogs:0};return{shouldSample:()=>(e.totalLogs++,t>=1?(e.sampledLogs++,!0):t<=0?!1:Math.random()<=t?(e.sampledLogs++,!0):!1),getStats:()=>({totalLogs:e.totalLogs,sampledLogs:e.sampledLogs,samplingRate:e.totalLogs>0?e.sampledLogs/e.totalLogs:0,configuredRate:t})}};hn.createSampler=hR;var gR=t=>{let e=t.rateLimit?(0,hn.createRateLimiter)(t.rateLimit.maxLogsPerSecond,t.rateLimit.burstSize):null,s=t.samplingRate!==void 0?(0,hn.createSampler)(t.samplingRate):null;return{shouldLog:()=>!e&&!s?!0:!(e&&!e.tryConsume()||s&&!s.shouldSample()),getStats:()=>({rateLimit:e?.getState(),sampling:s?.getStats()})}};hn.createLogFilter=gR});var af=F(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});Fs.printLoggerConfig=Fs.createStrogger=Fs.strogger=Fs.createLogger=void 0;var xR=Hp(),yR=vu(),Qe=Ys(),bR=Kp(),Sb=Zp(),vR=rf(),DR=of(),Cb=t=>{if(!t||typeof t!="object")return console.warn("[strogger] No environment provided, defaulting to DEBUG"),Qe.LogLevel.DEBUG;switch(t.LOG_LEVEL?.toUpperCase()){case"DEBUG":return Qe.LogLevel.DEBUG;case"INFO":return Qe.LogLevel.INFO;case"WARN":return Qe.LogLevel.WARN;case"ERROR":return Qe.LogLevel.ERROR;case"FATAL":return Qe.LogLevel.FATAL;case void 0:return t.STAGE==="prod"?Qe.LogLevel.INFO:Qe.LogLevel.DEBUG;default:return console.warn(`[strogger] Invalid LOG_LEVEL '${t.LOG_LEVEL}' provided. Defaulting to ${t.STAGE==="prod"?"INFO":"DEBUG"}.`),t.STAGE==="prod"?Qe.LogLevel.INFO:Qe.LogLevel.DEBUG}},SR=(t,e)=>t>=(e.level!==void 0?e.level:Qe.LogLevel.INFO),CR=(t,e,s,n,r,i)=>({timestamp:new Date().toISOString(),level:e,message:s,context:{...t.stage&&{stage:t.stage},...t.serviceName&&{serviceName:t.serviceName},...n},error:r?{name:r.name,message:r.message,stack:r.stack}:void 0,metadata:i}),wR=({config:t={},transports:e=[],formatter:s,env:n})=>{let r=t.instanceId||(0,Sb.generateLoggerInstanceId)(),i={level:Cb(n),serviceName:n.SERVICE_NAME||void 0,stage:n.STAGE||"dev",enableStructuredLogging:n.ENABLE_STRUCTURED_LOGGING??!0,includeTimestamp:!0,includeLogLevel:!0,instanceId:r,...t};if(typeof i.level=="string")switch(i.level.toUpperCase()){case"DEBUG":i.level=Qe.LogLevel.DEBUG;break;case"INFO":i.level=Qe.LogLevel.INFO;break;case"WARN":i.level=Qe.LogLevel.WARN;break;case"ERROR":i.level=Qe.LogLevel.ERROR;break;case"FATAL":i.level=Qe.LogLevel.FATAL;break;default:i.level=Qe.LogLevel.INFO}t.level!==void 0&&(i.level=t.level);let o=(0,DR.createLogFilter)(i),a=(0,Sb.createDefaultEnrichmentMiddleware)(i.serviceName,i.stage,void 0,r),u=t.batching===!0?e.map(d=>(0,bR.createBatchedTransport)(d,{maxSize:50,maxWaitTime:2e3,maxBatchSize:512*1024})):e,l=async(d,f,p,m,g)=>{if(!SR(d,i)||(i.samplingRate!==void 0||i.rateLimit)&&!o.shouldLog())return;let h=a(p||{}),y=CR(i,d,f,h,m,g),x=y;if(typeof i.redact=="function"&&(x=i.redact(y)),typeof i.validate=="function")try{i.validate(x)}catch(S){console.error("[LOGGER ERROR] Log entry validation failed:",S);return}if(Array.isArray(i.hooks))for(let S of i.hooks)try{let v=S(x);v&&typeof v.then=="function"&&await v}catch(v){console.error("[LOGGER ERROR] Log hook failed:",v)}let D=await Promise.allSettled(u.map(S=>S.log(x)));for(let S of D)S.status==="rejected"&&console.error(S.reason)};return{debug:(d,f,p)=>l(Qe.LogLevel.DEBUG,d,f,void 0,p),info:(d,f,p)=>l(Qe.LogLevel.INFO,d,f,void 0,p),warn:(d,f,p,m)=>l(Qe.LogLevel.WARN,d,f,p,m),error:(d,f,p,m)=>l(Qe.LogLevel.ERROR,d,f,p,m),fatal:(d,f,p,m)=>l(Qe.LogLevel.FATAL,d,f,p,m),logFunctionStart:(d,f,p)=>l(Qe.LogLevel.INFO,`Function ${d} started`,{...f,functionName:d},void 0,p),logFunctionEnd:(d,f,p,m)=>l(Qe.LogLevel.INFO,`Function ${d} completed in ${f}ms`,{...p,functionName:d,duration:f},void 0,m),logDatabaseOperation:(d,f,p,m)=>l(Qe.LogLevel.DEBUG,`Database operation: ${d} on table ${f}`,{...p,operation:d,table:f},void 0,m),logApiRequest:(d,f,p,m,g)=>l(Qe.LogLevel.INFO,`API ${d} ${f} - ${p}`,{...m,method:d,path:f,statusCode:p},void 0,g),setLevel:d=>{i.level=d;for(let f of e)f.setLevel?.(d)},getLevel:()=>i.level!==void 0?i.level:Qe.LogLevel.INFO,getInstanceId:()=>r,addTransport:d=>e.push(d),removeTransport:d=>{let f=e.indexOf(d);f>-1&&e.splice(f,1)},setFormatter:d=>{},getSamplingStats:()=>o.getStats(),flush:async()=>{await Promise.allSettled(u.map(d=>d.flush?.()||Promise.resolve()))},getBatchStats:()=>u.map(d=>d.getStats?.()||{})}};Fs.createLogger=wR;var AR=(0,vR.getEnvironment)(),wb=(0,xR.createJsonFormatter)(),ER=(0,yR.createConsoleTransport)({formatter:wb});Fs.strogger=(0,Fs.createLogger)({config:{},transports:[ER],formatter:wb,env:AR});Fs.createStrogger=Fs.createLogger;var FR=t=>{let e=Cb(t);console.log("--- Strogger Logger Configuration ---"),console.log("LOG_LEVEL:",t.LOG_LEVEL??"(default)"),console.log("STAGE:",t.STAGE??"dev"),console.log("SERVICE_NAME:",t.SERVICE_NAME??"(none)"),console.log("ENABLE_STRUCTURED_LOGGING:",t.ENABLE_STRUCTURED_LOGGING??!0),console.log("Effective log level:",e),console.log("--------------------------------------")};Fs.printLoggerConfig=FR});var dr=F(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.handleTransportError=mt.validateTransportConfig=mt.validateEnvironmentVariable=mt.createDetailedError=mt.ERROR_MESSAGES=mt.ValidationError=mt.ConfigurationError=mt.TransportError=mt.LoggerError=void 0;var lr=class extends Error{constructor(e,s,n){super(e),this.code=s,this.details=n,this.name="LoggerError"}};mt.LoggerError=lr;var oi=class extends lr{constructor(e,s,n){super(e,"TRANSPORT_ERROR",{transportName:s,...n}),this.transportName=s,this.name="TransportError"}};mt.TransportError=oi;var ku=class extends lr{constructor(e,s){super(e,"CONFIGURATION_ERROR",s),this.name="ConfigurationError"}};mt.ConfigurationError=ku;var cf=class extends lr{constructor(e,s){super(e,"VALIDATION_ERROR",s),this.name="ValidationError"}};mt.ValidationError=cf;mt.ERROR_MESSAGES={NEW_RELIC_MISSING_API_KEY:{message:"New Relic transport requires NEW_RELIC_LICENSE_KEY environment variable",solution:"Set NEW_RELIC_LICENSE_KEY in your environment variables or pass apiKey option",example:"NEW_RELIC_LICENSE_KEY=your-license-key-here"},NEW_RELIC_MISSING_ACCOUNT_ID:{message:"New Relic transport requires NEW_RELIC_ACCOUNT_ID environment variable",solution:"Set NEW_RELIC_ACCOUNT_ID in your environment variables or pass accountId option",example:"NEW_RELIC_ACCOUNT_ID=your-account-id-here"},NEW_RELIC_API_ERROR:{message:"Failed to send logs to New Relic API",solution:"Check your API key, account ID, and network connectivity"},DATADOG_MISSING_API_KEY:{message:"DataDog transport requires DATADOG_API_KEY environment variable",solution:"Set DATADOG_API_KEY in your environment variables",example:"DATADOG_API_KEY=your-api-key-here"},DATADOG_API_ERROR:{message:"Failed to send logs to DataDog API",solution:"Check your API key and network connectivity"},CLOUDWATCH_MISSING_CREDENTIALS:{message:"CloudWatch transport requires AWS credentials",solution:"Configure AWS credentials via environment variables, IAM role, or AWS credentials file",example:`AWS_ACCESS_KEY_ID=your-key
11
- AWS_SECRET_ACCESS_KEY=your-secret`},CLOUDWATCH_MISSING_LOG_GROUP:{message:"CloudWatch transport requires logGroupName option",solution:"Provide logGroupName in transport options or set CLOUDWATCH_LOG_GROUP environment variable",example:'logGroupName: "/aws/lambda/my-function"'},CLOUDWATCH_LOG_GROUP_NOT_FOUND:{message:"CloudWatch log group does not exist",solution:"Create the log group in CloudWatch before using this transport",example:'aws logs create-log-group --log-group-name "/aws/lambda/my-function"'},CLOUDWATCH_API_ERROR:{message:"Failed to send logs to CloudWatch",solution:"Check your AWS credentials, region, and network connectivity"},TRANSPORT_INITIALIZATION_FAILED:{message:"Failed to initialize transport",solution:"Check transport configuration and required dependencies"},TRANSPORT_SEND_FAILED:{message:"Failed to send log entry to transport",solution:"Check transport configuration and network connectivity"},MISSING_SERVICE_NAME:{message:"Logger configuration requires serviceName",solution:"Set SERVICE_NAME environment variable or provide serviceName in config",example:"SERVICE_NAME=my-service"},INVALID_LOG_LEVEL:{message:"Invalid log level specified",solution:"Use one of: DEBUG, INFO, WARN, ERROR, FATAL",example:"LOG_LEVEL=INFO"},ENVIRONMENT_VALIDATION_FAILED:{message:"Environment configuration validation failed",solution:"Check your environment variables and configuration"},FORMATTER_MISSING:{message:"Logger requires a formatter",solution:"Provide a formatter object with a format(entry) method",example:"formatter: createJsonFormatter()"},PERFORMANCE_MONITOR_INITIALIZATION_FAILED:{message:"Failed to initialize performance monitor",solution:"Check performance monitor configuration"},SPLUNK_MISSING_HEC_URL:{message:"Splunk transport requires SPLUNK_HEC_URL environment variable",solution:"Set SPLUNK_HEC_URL in your environment variables",example:"SPLUNK_HEC_URL=https://your-splunk-instance:8088/services/collector"},SPLUNK_MISSING_HEC_TOKEN:{message:"Splunk transport requires SPLUNK_HEC_TOKEN environment variable",solution:"Set SPLUNK_HEC_TOKEN in your environment variables",example:"SPLUNK_HEC_TOKEN=your-hec-token-here"},SPLUNK_API_ERROR:{message:"Failed to send logs to Splunk HEC",solution:"Check your HEC URL, token, and network connectivity"},ELASTICSEARCH_MISSING_AUTH:{message:"Elasticsearch transport requires authentication",solution:"Set ELASTICSEARCH_API_KEY or ELASTICSEARCH_USERNAME/PASSWORD",example:"ELASTICSEARCH_API_KEY=your-api-key-here"},ELASTICSEARCH_MISSING_DATE:{message:"Date string is missing for Elasticsearch index pattern",solution:"Check date generation logic and ensure valid date string is produced"},ELASTICSEARCH_API_ERROR:{message:"Failed to send logs to Elasticsearch",solution:"Check your connection URL, authentication, and network connectivity"}};var _R=(t,e,s)=>{let n=mt.ERROR_MESSAGES[t],r=`${n.message}${e?` (${e})`:""}`,i={...n,...s,...e&&{transportName:e}};return e?new oi(r,e,i):new lr(r,"LOGGER_ERROR",i)};mt.createDetailedError=_R;var kR=(t,e,s=!1)=>{if(s&&!e)throw new ku(`Required environment variable ${t} is not set`,{missingVariable:t,message:`Required environment variable ${t} is not set`})};mt.validateEnvironmentVariable=kR;var IR=(t,e,s)=>{let n=s.filter(r=>!e[r]);if(n.length>0)throw new oi(`Missing required configuration fields: ${n.join(", ")}`,t,{missingFields:n,message:`Missing required configuration fields: ${n.join(", ")}`})};mt.validateTransportConfig=IR;var RR=(t,e,s=!0)=>{let n;if(t instanceof lr?n=t:t instanceof Error?n=new oi(`Unexpected error in ${e}: ${t.message}`,e,{originalError:t.message,stack:t.stack}):n=new oi(`Unknown error in ${e}`,e,{originalError:t}),s&&(console.error(`[LOGGER ERROR] ${n.message}`),n.details?.solution&&console.error(`[LOGGER SOLUTION] ${n.details.solution}`),n.details?.example&&console.error(`[LOGGER EXAMPLE] ${n.details.example}`)),!s)throw n};mt.handleTransportError=RR});var uf=F(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.createDataDogTransport=void 0;var xo=Ys(),yo=dr(),TR=In(),PR=(t={})=>{let e="DataDog";try{let s=t.level??xo.LogLevel.INFO,n=t.apiKey||process.env.DATADOG_API_KEY,r=t.serviceName||process.env.DD_SERVICE||process.env.SERVICE_NAME,i=t.source||"nodejs",o=t.tags||[],a=t.batchSize||10,c=t.flushInterval||5e3,u=t.region||process.env.DD_SITE||"us";(0,yo.validateEnvironmentVariable)("DATADOG_API_KEY",n,!0),(0,yo.validateTransportConfig)(e,{apiKey:n},["apiKey"]);let d=[...[`env:${process.env.NODE_ENV||"dev"}`,`service:${r||"unknown"}`,`source:${i}`],...o].join(","),f=[],p=null,m=async x=>{try{let D=`https://http-intake.logs.${u==="eu"?"eu.":""}datadoghq.com/api/v2/logs`,S=x.map(E=>({message:E.message,level:g(E.level),timestamp:new Date(E.timestamp).getTime(),ddsource:i,ddtags:d,service:r,...E.context,...E.error&&{error_name:E.error.name,error_message:E.error.message,error_stack:E.error.stack},...E.metadata&&{metadata:E.metadata}})),v=await fetch(D,{method:"POST",headers:{"Content-Type":"application/json","DD-API-KEY":n},body:JSON.stringify(S)});if(!v.ok)throw(0,yo.createDetailedError)("DATADOG_API_ERROR",e,{status:v.status,statusText:v.statusText,url:D,responseBody:await v.text().catch(()=>"Unable to read response body")})}catch(D){(0,yo.handleTransportError)(D,e,!0)}},g=x=>{switch(x){case xo.LogLevel.DEBUG:return"debug";case xo.LogLevel.INFO:return"info";case xo.LogLevel.WARN:return"warning";case xo.LogLevel.ERROR:return"error";case xo.LogLevel.FATAL:return"critical";default:return"info"}},h=async()=>{if(f.length===0)return;let x=[...f];f=[],await m(x)};return(()=>{p||(p=setInterval(()=>{h().catch(x=>{(0,yo.handleTransportError)(x,e,!0)})},c))})(),{log:async x=>{(0,TR.shouldLog)(x.level,s)&&(f.push(x),f.length>=a&&await h())},setLevel:x=>{s=x},getLevel:()=>s,flush:async()=>{await h()},close:async()=>{p&&(clearInterval(p),p=null),await h()},addTags:x=>{o.push(...x)},getConfig:()=>({serviceName:r,source:i,tags:[...o],region:u,batchSize:a,flushInterval:c})}}catch(s){throw(0,yo.handleTransportError)(s,e,!1),s}};Iu.createDataDogTransport=PR});var lf=F(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.createSplunkTransport=void 0;var bo=Ys(),ai=dr(),OR=In(),LR=(t={})=>{let e="Splunk";try{let s=t.level??bo.LogLevel.INFO,n=t.hecUrl||process.env.SPLUNK_HEC_URL,r=t.hecToken||process.env.SPLUNK_HEC_TOKEN,i=t.source||"nodejs-logger",o=t.sourcetype||"_json",a=t.index||process.env.SPLUNK_INDEX,c=t.batchSize||10,u=t.flushInterval||5e3,l=t.channel||process.env.SPLUNK_CHANNEL;(0,ai.validateEnvironmentVariable)("SPLUNK_HEC_URL",n,!0),(0,ai.validateEnvironmentVariable)("SPLUNK_HEC_TOKEN",r,!0),(0,ai.validateTransportConfig)(e,{hecUrl:n,hecToken:r},["hecUrl","hecToken"]);let d=[],f=null,p=async y=>{try{let x=y.map(S=>({event:{message:S.message,level:m(S.level),timestamp:new Date(S.timestamp).getTime(),...S.context,...S.error&&{error_name:S.error.name,error_message:S.error.message,error_stack:S.error.stack},...S.metadata&&{metadata:S.metadata}},sourcetype:o,source:i,...a&&{index:a},...l&&{channel:l}})),D=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Splunk ${r}`},body:JSON.stringify(x)});if(!D.ok)throw(0,ai.createDetailedError)("SPLUNK_API_ERROR",e,{status:D.status,statusText:D.statusText,url:n,responseBody:await D.text().catch(()=>"Unable to read response body")})}catch(x){(0,ai.handleTransportError)(x,e,!0)}},m=y=>{switch(y){case bo.LogLevel.DEBUG:return"DEBUG";case bo.LogLevel.INFO:return"INFO";case bo.LogLevel.WARN:return"WARN";case bo.LogLevel.ERROR:return"ERROR";case bo.LogLevel.FATAL:return"FATAL";default:return"INFO"}},g=async()=>{if(d.length===0)return;let y=[...d];d=[],await p(y)};return(()=>{f||(f=setInterval(()=>{g().catch(y=>{(0,ai.handleTransportError)(y,e,!0)})},u))})(),{log:async y=>{(0,OR.shouldLog)(y.level,s)&&(d.push(y),d.length>=c&&await g())},setLevel:y=>{s=y},getLevel:()=>s,flush:async()=>{await g()},close:async()=>{f&&(clearInterval(f),f=null),await g()},getConfig:()=>({hecUrl:n,source:i,sourcetype:o,index:a,channel:l,batchSize:c,flushInterval:u})}}catch(s){throw(0,ai.handleTransportError)(s,e,!1),s}};Ru.createSplunkTransport=LR});var df=F(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.createElasticsearchTransport=void 0;var vo=Ys(),Do=dr(),BR=In(),NR=(t={})=>{let e="Elasticsearch";try{let s=t.level??vo.LogLevel.INFO,n=t.url||process.env.ELASTICSEARCH_URL||"http://localhost:9200",r=t.username||process.env.ELASTICSEARCH_USERNAME,i=t.password||process.env.ELASTICSEARCH_PASSWORD,o=t.apiKey||process.env.ELASTICSEARCH_API_KEY,a=t.index||process.env.ELASTICSEARCH_INDEX||"logs",c=t.indexPattern||process.env.ELASTICSEARCH_INDEX_PATTERN||"logs-{YYYY.MM.DD}",u=t.batchSize||10,l=t.flushInterval||5e3,d=t.timeout||3e4;if(!o&&(!r||!i))throw(0,Do.createDetailedError)("ELASTICSEARCH_MISSING_AUTH",e,{message:"Elasticsearch transport requires either API key or username/password"});let f=[],p=null,m=()=>{if(c?.includes("{YYYY.MM.DD}")){let v=new Date().toISOString().split("T")[0]?.replace(/-/g,".");if(!v)throw(0,Do.createDetailedError)("ELASTICSEARCH_MISSING_DATE",e,{message:"Date string is missing"});return c.replace("{YYYY.MM.DD}",v)}return typeof a=="string"&&a.length>0?a:"logs"},g=()=>o?{Authorization:`ApiKey ${o}`}:r&&i?{Authorization:`Basic ${Buffer.from(`${r}:${i}`).toString("base64")}`}:{},h=async S=>{try{let v=m(),E=`${n}/_bulk`,T=`${S.map(M=>{let j={message:M.message,level:y(M.level),timestamp:new Date(M.timestamp).toISOString(),service:process.env.SERVICE_NAME||"unknown",...M.context,...M.error&&{error_name:M.error.name,error_message:M.error.message,error_stack:M.error.stack},...M.metadata&&{metadata:M.metadata}};return`${JSON.stringify({index:{_index:v}})}
12
- ${JSON.stringify(j)}`}).join(`
11
+ AWS_SECRET_ACCESS_KEY=your-secret`},CLOUDWATCH_MISSING_LOG_GROUP:{message:"CloudWatch transport requires logGroupName option",solution:"Provide logGroupName in transport options or set CLOUDWATCH_LOG_GROUP environment variable",example:'logGroupName: "/aws/lambda/my-function"'},CLOUDWATCH_LOG_GROUP_NOT_FOUND:{message:"CloudWatch log group does not exist",solution:"Create the log group in CloudWatch before using this transport",example:'aws logs create-log-group --log-group-name "/aws/lambda/my-function"'},CLOUDWATCH_API_ERROR:{message:"Failed to send logs to CloudWatch",solution:"Check your AWS credentials, region, and network connectivity"},TRANSPORT_INITIALIZATION_FAILED:{message:"Failed to initialize transport",solution:"Check transport configuration and required dependencies"},TRANSPORT_SEND_FAILED:{message:"Failed to send log entry to transport",solution:"Check transport configuration and network connectivity"},MISSING_SERVICE_NAME:{message:"Logger configuration requires serviceName",solution:"Set SERVICE_NAME environment variable or provide serviceName in config",example:"SERVICE_NAME=my-service"},INVALID_LOG_LEVEL:{message:"Invalid log level specified",solution:"Use one of: DEBUG, INFO, WARN, ERROR, FATAL",example:"LOG_LEVEL=INFO"},ENVIRONMENT_VALIDATION_FAILED:{message:"Environment configuration validation failed",solution:"Check your environment variables and configuration"},FORMATTER_MISSING:{message:"Logger requires a formatter",solution:"Provide a formatter object with a format(entry) method",example:"formatter: createJsonFormatter()"},PERFORMANCE_MONITOR_INITIALIZATION_FAILED:{message:"Failed to initialize performance monitor",solution:"Check performance monitor configuration"},SPLUNK_MISSING_HEC_URL:{message:"Splunk transport requires SPLUNK_HEC_URL environment variable",solution:"Set SPLUNK_HEC_URL in your environment variables",example:"SPLUNK_HEC_URL=https://your-splunk-instance:8088/services/collector"},SPLUNK_MISSING_HEC_TOKEN:{message:"Splunk transport requires SPLUNK_HEC_TOKEN environment variable",solution:"Set SPLUNK_HEC_TOKEN in your environment variables",example:"SPLUNK_HEC_TOKEN=your-hec-token-here"},SPLUNK_API_ERROR:{message:"Failed to send logs to Splunk HEC",solution:"Check your HEC URL, token, and network connectivity"},ELASTICSEARCH_MISSING_AUTH:{message:"Elasticsearch transport requires authentication",solution:"Set ELASTICSEARCH_API_KEY or ELASTICSEARCH_USERNAME/PASSWORD",example:"ELASTICSEARCH_API_KEY=your-api-key-here"},ELASTICSEARCH_MISSING_DATE:{message:"Date string is missing for Elasticsearch index pattern",solution:"Check date generation logic and ensure valid date string is produced"},ELASTICSEARCH_API_ERROR:{message:"Failed to send logs to Elasticsearch",solution:"Check your connection URL, authentication, and network connectivity"}};var _R=(t,e,s)=>{let n=mt.ERROR_MESSAGES[t],r=`${n.message}${e?` (${e})`:""}`,i={...n,...s,...e&&{transportName:e}};return e?new oi(r,e,i):new lr(r,"LOGGER_ERROR",i)};mt.createDetailedError=_R;var kR=(t,e,s=!1)=>{if(s&&!e)throw new ku(`Required environment variable ${t} is not set`,{missingVariable:t,message:`Required environment variable ${t} is not set`})};mt.validateEnvironmentVariable=kR;var IR=(t,e,s)=>{let n=s.filter(r=>!e[r]);if(n.length>0)throw new oi(`Missing required configuration fields: ${n.join(", ")}`,t,{missingFields:n,message:`Missing required configuration fields: ${n.join(", ")}`})};mt.validateTransportConfig=IR;var RR=(t,e,s=!0)=>{let n;if(t instanceof lr?n=t:t instanceof Error?n=new oi(`Unexpected error in ${e}: ${t.message}`,e,{originalError:t.message,stack:t.stack}):n=new oi(`Unknown error in ${e}`,e,{originalError:t}),s&&(console.error(`[LOGGER ERROR] ${n.message}`),n.details?.solution&&console.error(`[LOGGER SOLUTION] ${n.details.solution}`),n.details?.example&&console.error(`[LOGGER EXAMPLE] ${n.details.example}`)),!s)throw n};mt.handleTransportError=RR});var uf=F(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.createDataDogTransport=void 0;var xo=Ys(),yo=dr(),TR=In(),PR=(t={})=>{let e="DataDog";try{let s=t.level??xo.LogLevel.INFO,n=t.apiKey||process.env.DATADOG_API_KEY,r=t.serviceName||process.env.DD_SERVICE||process.env.SERVICE_NAME,i=t.source||"nodejs",o=t.tags||[],a=t.batchSize||10,c=t.flushInterval||5e3,u=t.region||process.env.DD_SITE||"us";(0,yo.validateEnvironmentVariable)("DATADOG_API_KEY",n,!0),(0,yo.validateTransportConfig)(e,{apiKey:n},["apiKey"]);let d=[...[`env:${process.env.NODE_ENV||"dev"}`,`service:${r||"unknown"}`,`source:${i}`],...o].join(","),f=[],p=null,m=async x=>{try{let D=`https://http-intake.logs.${u==="eu"?"eu.":""}datadoghq.com/api/v2/logs`,S=x.map(E=>({message:E.message,level:g(E.level),timestamp:new Date(E.timestamp).getTime(),ddsource:i,ddtags:d,service:r,...E.context,...E.error&&{error_name:E.error.name,error_message:E.error.message,error_stack:E.error.stack},...E.metadata&&{metadata:E.metadata}})),v=await fetch(D,{method:"POST",headers:{"Content-Type":"application/json","DD-API-KEY":n},body:JSON.stringify(S)});if(!v.ok)throw(0,yo.createDetailedError)("DATADOG_API_ERROR",e,{status:v.status,statusText:v.statusText,url:D,responseBody:await v.text().catch(()=>"Unable to read response body")})}catch(D){(0,yo.handleTransportError)(D,e,!0)}},g=x=>{switch(x){case xo.LogLevel.DEBUG:return"debug";case xo.LogLevel.INFO:return"info";case xo.LogLevel.WARN:return"warning";case xo.LogLevel.ERROR:return"error";case xo.LogLevel.FATAL:return"critical";default:return"info"}},h=async()=>{if(f.length===0)return;let x=[...f];f=[],await m(x)};return(()=>{p||(p=setInterval(()=>{h().catch(x=>{(0,yo.handleTransportError)(x,e,!0)})},c))})(),{log:async x=>{(0,TR.shouldLog)(x.level,s)&&(f.push(x),f.length>=a&&await h())},setLevel:x=>{s=x},getLevel:()=>s,flush:async()=>{await h()},close:async()=>{p&&(clearInterval(p),p=null),await h()},addTags:x=>{o.push(...x)},getConfig:()=>({serviceName:r,source:i,tags:[...o],region:u,batchSize:a,flushInterval:c})}}catch(s){throw(0,yo.handleTransportError)(s,e,!1),s}};Iu.createDataDogTransport=PR});var lf=F(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.createSplunkTransport=void 0;var bo=Ys(),ai=dr(),OR=In(),LR=(t={})=>{let e="Splunk";try{let s=t.level??bo.LogLevel.INFO,n=t.hecUrl||process.env.SPLUNK_HEC_URL,r=t.hecToken||process.env.SPLUNK_HEC_TOKEN,i=t.source||"nodejs-logger",o=t.sourcetype||"_json",a=t.index||process.env.SPLUNK_INDEX,c=t.batchSize||10,u=t.flushInterval||5e3,l=t.channel||process.env.SPLUNK_CHANNEL;(0,ai.validateEnvironmentVariable)("SPLUNK_HEC_URL",n,!0),(0,ai.validateEnvironmentVariable)("SPLUNK_HEC_TOKEN",r,!0),(0,ai.validateTransportConfig)(e,{hecUrl:n,hecToken:r},["hecUrl","hecToken"]);let d=[],f=null,p=async y=>{try{let x=y.map(S=>({event:{message:S.message,level:m(S.level),timestamp:new Date(S.timestamp).getTime(),...S.context,...S.error&&{error_name:S.error.name,error_message:S.error.message,error_stack:S.error.stack},...S.metadata&&{metadata:S.metadata}},sourcetype:o,source:i,...a&&{index:a},...l&&{channel:l}})),D=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Splunk ${r}`},body:JSON.stringify(x)});if(!D.ok)throw(0,ai.createDetailedError)("SPLUNK_API_ERROR",e,{status:D.status,statusText:D.statusText,url:n,responseBody:await D.text().catch(()=>"Unable to read response body")})}catch(x){(0,ai.handleTransportError)(x,e,!0)}},m=y=>{switch(y){case bo.LogLevel.DEBUG:return"DEBUG";case bo.LogLevel.INFO:return"INFO";case bo.LogLevel.WARN:return"WARN";case bo.LogLevel.ERROR:return"ERROR";case bo.LogLevel.FATAL:return"FATAL";default:return"INFO"}},g=async()=>{if(d.length===0)return;let y=[...d];d=[],await p(y)};return(()=>{f||(f=setInterval(()=>{g().catch(y=>{(0,ai.handleTransportError)(y,e,!0)})},u))})(),{log:async y=>{(0,OR.shouldLog)(y.level,s)&&(d.push(y),d.length>=c&&await g())},setLevel:y=>{s=y},getLevel:()=>s,flush:async()=>{await g()},close:async()=>{f&&(clearInterval(f),f=null),await g()},getConfig:()=>({hecUrl:n,source:i,sourcetype:o,index:a,channel:l,batchSize:c,flushInterval:u})}}catch(s){throw(0,ai.handleTransportError)(s,e,!1),s}};Ru.createSplunkTransport=LR});var df=F(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.createElasticsearchTransport=void 0;var vo=Ys(),Do=dr(),BR=In(),NR=(t={})=>{let e="Elasticsearch";try{let s=t.level??vo.LogLevel.INFO,n=t.url||process.env.ELASTICSEARCH_URL||"http://localhost:9200",r=t.username||process.env.ELASTICSEARCH_USERNAME,i=t.password||process.env.ELASTICSEARCH_PASSWORD,o=t.apiKey||process.env.ELASTICSEARCH_API_KEY,a=t.index||process.env.ELASTICSEARCH_INDEX||"logs",c=t.indexPattern||process.env.ELASTICSEARCH_INDEX_PATTERN||"logs-{YYYY.MM.DD}",u=t.batchSize||10,l=t.flushInterval||5e3,d=t.timeout||3e4;if(!o&&(!r||!i))throw(0,Do.createDetailedError)("ELASTICSEARCH_MISSING_AUTH",e,{message:"Elasticsearch transport requires either API key or username/password"});let f=[],p=null,m=()=>{if(c?.includes("{YYYY.MM.DD}")){let v=new Date().toISOString().split("T")[0]?.replace(/-/g,".");if(!v)throw(0,Do.createDetailedError)("ELASTICSEARCH_MISSING_DATE",e,{message:"Date string is missing"});return c.replace("{YYYY.MM.DD}",v)}return typeof a=="string"&&a.length>0?a:"logs"},g=()=>o?{Authorization:`ApiKey ${o}`}:r&&i?{Authorization:`Basic ${Buffer.from(`${r}:${i}`).toString("base64")}`}:{},h=async S=>{try{let v=m(),E=`${n}/_bulk`,R=`${S.map(j=>{let M={message:j.message,level:y(j.level),timestamp:new Date(j.timestamp).toISOString(),service:process.env.SERVICE_NAME||"unknown",...j.context,...j.error&&{error_name:j.error.name,error_message:j.error.message,error_stack:j.error.stack},...j.metadata&&{metadata:j.metadata}};return`${JSON.stringify({index:{_index:v}})}
12
+ ${JSON.stringify(M)}`}).join(`
13
13
  `)}
14
- `,_=await fetch(E,{method:"POST",headers:{"Content-Type":"application/x-ndjson",...g()},body:T,signal:AbortSignal.timeout(d)});if(!_.ok){let M=await _.text().catch(()=>"Unable to read response body");throw(0,Do.createDetailedError)("ELASTICSEARCH_API_ERROR",e,{status:_.status,statusText:_.statusText,url:E,responseBody:M})}let W=await _.json().catch(()=>null);if(W?.errors&&Array.isArray(W.items)){let M=W.items.filter(j=>j.index?.error).map(j=>j.index?.error).slice(0,3);M?.length>0&&console.warn("[ELASTICSEARCH] Some documents failed to index:",M)}}catch(v){(0,Do.handleTransportError)(v,e,!0)}},y=S=>{switch(S){case vo.LogLevel.DEBUG:return"debug";case vo.LogLevel.INFO:return"info";case vo.LogLevel.WARN:return"warn";case vo.LogLevel.ERROR:return"error";case vo.LogLevel.FATAL:return"fatal";default:return"info"}},x=async()=>{if(f.length===0)return;let S=[...f];f=[],await h(S)};return(()=>{p||(p=setInterval(()=>{x().catch(S=>{(0,Do.handleTransportError)(S,e,!0)})},l))})(),{log:async S=>{(0,BR.shouldLog)(S.level,s)&&(f.push(S),f.length>=u&&await x())},setLevel:S=>{s=S},getLevel:()=>s,flush:async()=>{await x()},close:async()=>{p&&(clearInterval(p),p=null),await x()},getConfig:()=>({url:n,index:a,indexPattern:c,batchSize:u,flushInterval:l,timeout:d}),getCurrentIndex:()=>m()}}catch(s){throw(0,Do.handleTransportError)(s,e,!1),s}};Tu.createElasticsearchTransport=NR});var pf=F(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.createNewRelicTransport=void 0;var MR=Ys(),ci=dr(),jR=In(),$R=(t={})=>{let e="New Relic";try{let s=t.level??MR.LogLevel.INFO,n=t.apiKey||process.env.NEW_RELIC_LICENSE_KEY,r=t.accountId||process.env.NEW_RELIC_ACCOUNT_ID,i=t.region||process.env.NEW_RELIC_REGION||"us",o=t.serviceName||process.env.NEW_RELIC_SERVICE_NAME,a=t.batchSize||10,c=t.flushInterval||5e3;(0,ci.validateEnvironmentVariable)("NEW_RELIC_LICENSE_KEY",n,!0),(0,ci.validateEnvironmentVariable)("NEW_RELIC_ACCOUNT_ID",r,!0),(0,ci.validateTransportConfig)(e,{apiKey:n,accountId:r},["apiKey","accountId"]);let u=[],l=null,d=async m=>{try{let g=`https://log-api.${i}.newrelic.com/log/v1`,h={timestamp:Date.now(),service:o,attributes:{logtype:"application",timestamp:new Date().toISOString()},logs:m.map(x=>({message:x.message,level:x.level,timestamp:new Date(x.timestamp).getTime(),attributes:{...x.context,...x.error&&{error_name:x.error.name,error_message:x.error.message,error_stack:x.error.stack},...x.metadata&&{metadata:x.metadata}}}))},y=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json","Api-Key":n,"X-License-Key":n},body:JSON.stringify(h)});if(!y.ok)throw(0,ci.createDetailedError)("NEW_RELIC_API_ERROR",e,{status:y.status,statusText:y.statusText,url:g,responseBody:await y.text().catch(()=>"Unable to read response body")})}catch(g){(0,ci.handleTransportError)(g,e,!0)}},f=async()=>{if(u.length===0)return;let m=[...u];u=[],await d(m)};return(()=>{l||(l=setInterval(()=>{f().catch(m=>{(0,ci.handleTransportError)(m,e,!0)})},c))})(),{log:async m=>{(0,jR.shouldLog)(m.level,s)&&(u.push(m),u.length>=a&&await f())},setLevel:m=>{s=m},getLevel:()=>s,flush:async()=>{await f()},close:async()=>{l&&(clearInterval(l),l=null),await f()}}}catch(s){throw(0,ci.handleTransportError)(s,e,!1),s}};Pu.createNewRelicTransport=$R});var Ab=F(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.createFileTransport=void 0;var ms=require("node:fs"),Pa=require("node:path"),WR=require("node:util"),UR=require("node:zlib"),GR=Ys(),pr=dr(),zR=In(),qR=(0,WR.promisify)(UR.gzip),HR=(t={})=>{let e="File";try{let s=t.level??GR.LogLevel.INFO,n=t.formatter||{format:T=>JSON.stringify(T)},r=t.filePath||process.env.LOG_FILE_PATH||"./logs/app.log",i=t.maxFileSize??10*1024*1024,o=t.maxFiles??5,a=t.rotationInterval??24*60*60*1e3,c=t.compressOldFiles??!1,u=t.dateFormat??"YYYY-MM-DD",l=t.encoding??"utf8",d=t.createSymlink??!1,f=t.symlinkName??"current.log";(0,pr.validateEnvironmentVariable)("LOG_FILE_PATH",r,!1),(0,pr.validateTransportConfig)(e,{filePath:r},["filePath"]);let p={currentFile:r,currentSize:0,lastRotation:Date.now()},m=null,g=async T=>{let _=(0,Pa.dirname)(T);try{await ms.promises.access(_)}catch{await ms.promises.mkdir(_,{recursive:!0})}},h=(T,_)=>{let W=(0,Pa.extname)(T),M=T.replace(W,""),j=new Date().toISOString().split("T")[0];return`${M}.${j}.${_}${W}${c?".gz":""}`},y=()=>{let T=Date.now()-p.lastRotation;return p.currentSize>=i||T>=a},x=async T=>{if(c)try{let _=await ms.promises.readFile(T,l),W=await qR(_);await ms.promises.writeFile(`${T}.gz`,W),await ms.promises.unlink(T)}catch(_){(0,pr.handleTransportError)(_,e,!0)}},D=async()=>{try{p.fileHandle&&(await p.fileHandle.close(),p.fileHandle=void 0);for(let _=o-1;_>=1;_--){let W=h(r,_),M=h(r,_+1);try{await ms.promises.access(W),await ms.promises.rename(W,M)}catch{}}let T=h(r,1);try{await ms.promises.access(r),await ms.promises.rename(r,T),await x(T)}catch{}if(p.currentSize=0,p.lastRotation=Date.now(),await g(r),p.fileHandle=await ms.promises.open(r,"a"),d){let _=(0,Pa.join)((0,Pa.dirname)(r),f);try{await ms.promises.unlink(_)}catch{}await ms.promises.symlink((0,Pa.basename)(r),_)}console.log(`[FILE] Rotated log file to: ${T}`)}catch(T){(0,pr.handleTransportError)(T,e,!0)}},S=async T=>{try{y()&&await D(),p.fileHandle||(await g(r),p.fileHandle=await ms.promises.open(r,"a"));let _=`${T}
15
- `;await p.fileHandle.write(_,void 0,l),p.currentSize+=_.length}catch(_){(0,pr.handleTransportError)(_,e,!0)}},v=async()=>{try{p.fileHandle&&await p.fileHandle.sync()}catch(T){(0,pr.handleTransportError)(T,e,!0)}};return(()=>{m||(m=setInterval(()=>{v().catch(T=>{(0,pr.handleTransportError)(T,e,!0)})},5e3))})(),{log:async T=>{if(!(0,zR.shouldLog)(T.level,s))return;let _=n.format(T);await S(_)},setLevel:T=>{s=T},getLevel:()=>s,rotate:async()=>{await D()},getCurrentFile:()=>p.currentFile,getCurrentSize:()=>p.currentSize,flush:async()=>{await v()},close:async()=>{m&&(clearInterval(m),m=null),p.fileHandle&&(await p.fileHandle.close(),p.fileHandle=void 0)},getConfig:()=>({filePath:r,maxFileSize:i,maxFiles:o,rotationInterval:a,compressOldFiles:c,dateFormat:u,encoding:l,createSymlink:d,symlinkName:f}),getStats:()=>({currentFile:p.currentFile,currentSize:p.currentSize,lastRotation:p.lastRotation,fileHandleOpen:!!p.fileHandle,flushTimerActive:!!m})}}catch(s){throw(0,pr.handleTransportError)(s,e,!1),s}};Ou.createFileTransport=HR});var ff=F(gn=>{"use strict";var VR=gn&&gn.__createBinding||(Object.create?function(t,e,s,n){n===void 0&&(n=s);var r=Object.getOwnPropertyDescriptor(e,s);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,n,r)}:function(t,e,s,n){n===void 0&&(n=s),t[n]=e[s]}),KR=gn&&gn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ZR=gn&&gn.__importStar||function(){var t=function(e){return t=Object.getOwnPropertyNames||function(s){var n=[];for(var r in s)Object.prototype.hasOwnProperty.call(s,r)&&(n[n.length]=r);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var s={};if(e!=null)for(var n=t(e),r=0;r<n.length;r++)n[r]!=="default"&&VR(s,e,n[r]);return KR(s,e),s}}();Object.defineProperty(gn,"__esModule",{value:!0});gn.createCloudWatchTransport=void 0;var YR=Ys(),fr=dr(),JR=In(),QR=(t={})=>{let e="CloudWatch";try{let s=t.level??YR.LogLevel.INFO,n=t.formatter||{format:S=>JSON.stringify(S)},r=t.logGroupName||process.env.CLOUDWATCH_LOG_GROUP||"/aws/lambda/my-function",i=t.logStreamName||process.env.CLOUDWATCH_LOG_STREAM,o=t.region||process.env.AWS_REGION||"us-east-1",a=t.maxStreamSize??45*1024*1024,c=t.maxStreamAge??23*60*60*1e3,u=t.batchSize||10,l=t.flushInterval||5e3,d=t.timeout||3e4;(0,fr.validateEnvironmentVariable)("CLOUDWATCH_LOG_GROUP",r,!1),(0,fr.validateEnvironmentVariable)("AWS_REGION",o,!1),(0,fr.validateTransportConfig)(e,{logGroupName:r,region:o},["logGroupName","region"]);let f={currentStreamName:i||`${new Date().toISOString().split("T")[0]}-${Date.now()}`,currentStreamSize:0,streamStartTime:Date.now(),sequenceToken:void 0,batch:[]},p=null,m=()=>{let S=Date.now()-f.streamStartTime;return f.currentStreamSize>=a||S>=c},g=()=>{let S=new Date().toISOString().replace(/[:.]/g,"-");return i?`${i}-${S}`:`${new Date().toISOString().split("T")[0]}-${S}`},h=async S=>{try{let{CloudWatchLogsClient:v,PutLogEventsCommand:E,CreateLogStreamCommand:T}=await Promise.resolve().then(()=>ZR(require("@aws-sdk/client-cloudwatch-logs"))),_=new v({region:o,requestHandler:{requestTimeout:d}});try{await _.send(new T({logGroupName:r,logStreamName:f.currentStreamName}))}catch(L){if(L instanceof Error&&L.name!=="ResourceAlreadyExistsException")throw L}let W=S.map(L=>({timestamp:new Date(L.timestamp).getTime(),message:n.format(L)})),M=new E({logGroupName:r,logStreamName:f.currentStreamName,logEvents:W,sequenceToken:f.sequenceToken}),j=await _.send(M);j.nextSequenceToken&&(f.sequenceToken=j.nextSequenceToken);let $=W.reduce((L,z)=>L+z.message.length,0);f.currentStreamSize+=$}catch(v){if(v instanceof Error&&v.name==="InvalidSequenceTokenException"){let E=v.message.match(/sequenceToken is: (.+)/);if(E){f.sequenceToken=E[1],await h(S);return}}throw v instanceof Error&&v.name==="ResourceNotFoundException"?(0,fr.createDetailedError)("CLOUDWATCH_LOG_GROUP_NOT_FOUND",e,{logGroupName:r,region:o,message:"Log group does not exist. Create it first in CloudWatch."}):(0,fr.createDetailedError)("CLOUDWATCH_API_ERROR",e,{error:v instanceof Error?v.message:String(v),logGroupName:r,logStreamName:f.currentStreamName,region:o})}},y=async()=>{try{await x(),f.currentStreamName=g(),f.currentStreamSize=0,f.streamStartTime=Date.now(),f.sequenceToken=void 0,console.log(`[CLOUDWATCH] Rotated to stream: ${f.currentStreamName}`)}catch(S){(0,fr.handleTransportError)(S,e,!0)}},x=async()=>{if(f.batch.length===0)return;let S=[...f.batch];f.batch=[],await h(S)};return(()=>{p||(p=setInterval(()=>{x().catch(S=>{(0,fr.handleTransportError)(S,e,!0)})},l))})(),{log:async S=>{(0,JR.shouldLog)(S.level,s)&&(m()&&await y(),f.batch.push(S),f.batch.length>=u&&await x())},setLevel:S=>{s=S},getLevel:()=>s,rotateStream:async()=>{await y()},getCurrentStream:()=>f.currentStreamName,getCurrentStreamSize:()=>f.currentStreamSize,flush:async()=>{await x()},close:async()=>{p&&(clearInterval(p),p=null),await x()},getConfig:()=>({logGroupName:r,logStreamName:f.currentStreamName,region:o,maxStreamSize:a,maxStreamAge:c,batchSize:u,flushInterval:l,timeout:d}),getStats:()=>({currentStream:f.currentStreamName,currentStreamSize:f.currentStreamSize,streamAge:Date.now()-f.streamStartTime,batchSize:f.batch.length,sequenceToken:f.sequenceToken?"set":"not set",flushTimerActive:!!p})}}catch(s){throw(0,fr.handleTransportError)(s,e,!1),s}};gn.createCloudWatchTransport=QR});var Eb=F(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.createPerformanceMonitor=void 0;var XR=t=>{let e=t||{metrics:new Map},s=(d,f)=>{e.metrics.has(d)||e.metrics.set(d,[]);let p=e.metrics.get(d);p&&p.push(f)},n=d=>{let f=performance.now();return p=>{let m=performance.now(),g=m-f,h={functionName:d,duration:g,startTime:f,endTime:m,...p&&{metadata:p}};return s(d,h),h}},r=async(d,f,p)=>{let m=performance.now();try{let g=await f(),h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:p}};return s(d,x),g}catch(g){let h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:{...p,error:!0}}};throw s(d,x),g}},i=(d,f,p)=>{let m=performance.now();try{let g=f(),h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:p}};return s(d,x),g}catch(g){let h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:{...p,error:!0}}};throw s(d,x),g}},o=d=>{if(d)return e.metrics.get(d)||[];let f=[];for(let p of e.metrics.values())f.push(...p);return f},a=d=>{let f=o(d);return f.length===0?0:f.reduce((m,g)=>m+g.duration,0)/f.length};return{state:e,startTimer:n,timeAsync:r,timeSync:i,getMetrics:o,getAverageDuration:a,getSlowestExecution:d=>{let f=o(d);return f.length===0?null:f.reduce((p,m)=>m.duration>p.duration?m:p)},clearMetrics:d=>{d?e.metrics.delete(d):e.metrics.clear()},getMetricsSummary:()=>{let d={};for(let[f,p]of e.metrics.entries()){let m=p.length,g=a(f),h=Math.max(...p.map(y=>y.duration));d[f]={count:m,avgDuration:g,maxDuration:h}}return d}}};Lu.createPerformanceMonitor=XR});var Fb=F(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.stroggerWithFileTransport=ui.createFileTransportExample=void 0;var Bu=Ln(),eT=(t={})=>{let e=t.level??Bu.LogLevel.INFO,s=t.maxFileSize??10*1024*1024,n=t.rotationInterval??24*60*60*1e3,r=0,i=Date.now(),o=()=>r>=s||Date.now()-i>=n,a=async()=>{r=0,i=Date.now(),console.log("[MOCK FILE] Rotated log file")},c=async u=>{o()&&await a(),r+=u.length,console.log(`[MOCK FILE] Writing: ${u}`)};return{log:async u=>{if(u.level<e)return;let l=JSON.stringify(u);await c(l)},setLevel:u=>{e=u},getLevel:()=>e}};ui.createFileTransportExample=eT;var tT=(0,Bu.getEnvironment)(),sT=(0,Bu.createJsonFormatter)(),nT=(0,ui.createFileTransportExample)({maxFileSize:1024,rotationInterval:1e4});ui.stroggerWithFileTransport=(0,Bu.createLogger)({config:{serviceName:"file-rotation-example"},transports:[nT],formatter:sT,env:tT})});var _b=F(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.loggerWithCloudWatchTransport=li.createCloudWatchTransportExample=void 0;var Nu=Ln(),rT=(t={})=>{let e=t.level??Nu.LogLevel.INFO,s=t.maxStreamSize??45*1024*1024,n=t.maxStreamAge??23*60*60*1e3,r=0,i=Date.now(),o=()=>r>=s||Date.now()-i>=n,a=async()=>{r=0,i=Date.now(),console.log("[MOCK CW] Rotated log stream")},c=async u=>{o()&&await a(),r+=u.length,console.log(`[MOCK CW] Sending: ${u}`)};return{log:async u=>{if(u.level<e)return;let l=JSON.stringify(u);await c(l)},setLevel:u=>{e=u},getLevel:()=>e}};li.createCloudWatchTransportExample=rT;var iT=(0,Nu.getEnvironment)(),oT=(0,Nu.createJsonFormatter)(),aT=(0,li.createCloudWatchTransportExample)({maxStreamSize:1024,maxStreamAge:1e4});li.loggerWithCloudWatchTransport=(0,Nu.createLogger)({config:{serviceName:"cloudwatch-rotation-example"},transports:[aT],formatter:oT,env:iT})});var Bb=F((Lt,Lb)=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.demonstrateEnvironmentSpecificFileTransport=Lt.demonstrateCustomFileTransport=Lt.demonstrateMultipleFileTransports=Lt.demonstrateFileTransportWithSymlink=Lt.demonstrateCompressedFileTransport=Lt.demonstrateBasicFileTransport=Lt.runFileTransportExamples=void 0;var Ge=Ln(),kb=()=>{console.log(`=== Basic File Transport ===
14
+ `,_=await fetch(E,{method:"POST",headers:{"Content-Type":"application/x-ndjson",...g()},body:R,signal:AbortSignal.timeout(d)});if(!_.ok){let j=await _.text().catch(()=>"Unable to read response body");throw(0,Do.createDetailedError)("ELASTICSEARCH_API_ERROR",e,{status:_.status,statusText:_.statusText,url:E,responseBody:j})}let W=await _.json().catch(()=>null);if(W?.errors&&Array.isArray(W.items)){let j=W.items.filter(M=>M.index?.error).map(M=>M.index?.error).slice(0,3);j?.length>0&&console.warn("[ELASTICSEARCH] Some documents failed to index:",j)}}catch(v){(0,Do.handleTransportError)(v,e,!0)}},y=S=>{switch(S){case vo.LogLevel.DEBUG:return"debug";case vo.LogLevel.INFO:return"info";case vo.LogLevel.WARN:return"warn";case vo.LogLevel.ERROR:return"error";case vo.LogLevel.FATAL:return"fatal";default:return"info"}},x=async()=>{if(f.length===0)return;let S=[...f];f=[],await h(S)};return(()=>{p||(p=setInterval(()=>{x().catch(S=>{(0,Do.handleTransportError)(S,e,!0)})},l))})(),{log:async S=>{(0,BR.shouldLog)(S.level,s)&&(f.push(S),f.length>=u&&await x())},setLevel:S=>{s=S},getLevel:()=>s,flush:async()=>{await x()},close:async()=>{p&&(clearInterval(p),p=null),await x()},getConfig:()=>({url:n,index:a,indexPattern:c,batchSize:u,flushInterval:l,timeout:d}),getCurrentIndex:()=>m()}}catch(s){throw(0,Do.handleTransportError)(s,e,!1),s}};Tu.createElasticsearchTransport=NR});var pf=F(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.createNewRelicTransport=void 0;var MR=Ys(),ci=dr(),jR=In(),$R=(t={})=>{let e="New Relic";try{let s=t.level??MR.LogLevel.INFO,n=t.apiKey||process.env.NEW_RELIC_LICENSE_KEY,r=t.accountId||process.env.NEW_RELIC_ACCOUNT_ID,i=t.region||process.env.NEW_RELIC_REGION||"us",o=t.serviceName||process.env.NEW_RELIC_SERVICE_NAME,a=t.batchSize||10,c=t.flushInterval||5e3;(0,ci.validateEnvironmentVariable)("NEW_RELIC_LICENSE_KEY",n,!0),(0,ci.validateEnvironmentVariable)("NEW_RELIC_ACCOUNT_ID",r,!0),(0,ci.validateTransportConfig)(e,{apiKey:n,accountId:r},["apiKey","accountId"]);let u=[],l=null,d=async m=>{try{let g=`https://log-api.${i}.newrelic.com/log/v1`,h={timestamp:Date.now(),service:o,attributes:{logtype:"application",timestamp:new Date().toISOString()},logs:m.map(x=>({message:x.message,level:x.level,timestamp:new Date(x.timestamp).getTime(),attributes:{...x.context,...x.error&&{error_name:x.error.name,error_message:x.error.message,error_stack:x.error.stack},...x.metadata&&{metadata:x.metadata}}}))},y=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json","Api-Key":n,"X-License-Key":n},body:JSON.stringify(h)});if(!y.ok)throw(0,ci.createDetailedError)("NEW_RELIC_API_ERROR",e,{status:y.status,statusText:y.statusText,url:g,responseBody:await y.text().catch(()=>"Unable to read response body")})}catch(g){(0,ci.handleTransportError)(g,e,!0)}},f=async()=>{if(u.length===0)return;let m=[...u];u=[],await d(m)};return(()=>{l||(l=setInterval(()=>{f().catch(m=>{(0,ci.handleTransportError)(m,e,!0)})},c))})(),{log:async m=>{(0,jR.shouldLog)(m.level,s)&&(u.push(m),u.length>=a&&await f())},setLevel:m=>{s=m},getLevel:()=>s,flush:async()=>{await f()},close:async()=>{l&&(clearInterval(l),l=null),await f()}}}catch(s){throw(0,ci.handleTransportError)(s,e,!1),s}};Pu.createNewRelicTransport=$R});var Ab=F(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.createFileTransport=void 0;var ms=require("node:fs"),Pa=require("node:path"),WR=require("node:util"),UR=require("node:zlib"),GR=Ys(),pr=dr(),zR=In(),qR=(0,WR.promisify)(UR.gzip),HR=(t={})=>{let e="File";try{let s=t.level??GR.LogLevel.INFO,n=t.formatter||{format:R=>JSON.stringify(R)},r=t.filePath||process.env.LOG_FILE_PATH||"./logs/app.log",i=t.maxFileSize??10*1024*1024,o=t.maxFiles??5,a=t.rotationInterval??24*60*60*1e3,c=t.compressOldFiles??!1,u=t.dateFormat??"YYYY-MM-DD",l=t.encoding??"utf8",d=t.createSymlink??!1,f=t.symlinkName??"current.log";(0,pr.validateEnvironmentVariable)("LOG_FILE_PATH",r,!1),(0,pr.validateTransportConfig)(e,{filePath:r},["filePath"]);let p={currentFile:r,currentSize:0,lastRotation:Date.now()},m=null,g=async R=>{let _=(0,Pa.dirname)(R);try{await ms.promises.access(_)}catch{await ms.promises.mkdir(_,{recursive:!0})}},h=(R,_)=>{let W=(0,Pa.extname)(R),j=R.replace(W,""),M=new Date().toISOString().split("T")[0];return`${j}.${M}.${_}${W}${c?".gz":""}`},y=()=>{let R=Date.now()-p.lastRotation;return p.currentSize>=i||R>=a},x=async R=>{if(c)try{let _=await ms.promises.readFile(R,l),W=await qR(_);await ms.promises.writeFile(`${R}.gz`,W),await ms.promises.unlink(R)}catch(_){(0,pr.handleTransportError)(_,e,!0)}},D=async()=>{try{p.fileHandle&&(await p.fileHandle.close(),p.fileHandle=void 0);for(let _=o-1;_>=1;_--){let W=h(r,_),j=h(r,_+1);try{await ms.promises.access(W),await ms.promises.rename(W,j)}catch{}}let R=h(r,1);try{await ms.promises.access(r),await ms.promises.rename(r,R),await x(R)}catch{}if(p.currentSize=0,p.lastRotation=Date.now(),await g(r),p.fileHandle=await ms.promises.open(r,"a"),d){let _=(0,Pa.join)((0,Pa.dirname)(r),f);try{await ms.promises.unlink(_)}catch{}await ms.promises.symlink((0,Pa.basename)(r),_)}console.log(`[FILE] Rotated log file to: ${R}`)}catch(R){(0,pr.handleTransportError)(R,e,!0)}},S=async R=>{try{y()&&await D(),p.fileHandle||(await g(r),p.fileHandle=await ms.promises.open(r,"a"));let _=`${R}
15
+ `;await p.fileHandle.write(_,void 0,l),p.currentSize+=_.length}catch(_){(0,pr.handleTransportError)(_,e,!0)}},v=async()=>{try{p.fileHandle&&await p.fileHandle.sync()}catch(R){(0,pr.handleTransportError)(R,e,!0)}};return(()=>{m||(m=setInterval(()=>{v().catch(R=>{(0,pr.handleTransportError)(R,e,!0)})},5e3))})(),{log:async R=>{if(!(0,zR.shouldLog)(R.level,s))return;let _=n.format(R);await S(_)},setLevel:R=>{s=R},getLevel:()=>s,rotate:async()=>{await D()},getCurrentFile:()=>p.currentFile,getCurrentSize:()=>p.currentSize,flush:async()=>{await v()},close:async()=>{m&&(clearInterval(m),m=null),p.fileHandle&&(await p.fileHandle.close(),p.fileHandle=void 0)},getConfig:()=>({filePath:r,maxFileSize:i,maxFiles:o,rotationInterval:a,compressOldFiles:c,dateFormat:u,encoding:l,createSymlink:d,symlinkName:f}),getStats:()=>({currentFile:p.currentFile,currentSize:p.currentSize,lastRotation:p.lastRotation,fileHandleOpen:!!p.fileHandle,flushTimerActive:!!m})}}catch(s){throw(0,pr.handleTransportError)(s,e,!1),s}};Ou.createFileTransport=HR});var ff=F(gn=>{"use strict";var VR=gn&&gn.__createBinding||(Object.create?function(t,e,s,n){n===void 0&&(n=s);var r=Object.getOwnPropertyDescriptor(e,s);(!r||("get"in r?!e.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,n,r)}:function(t,e,s,n){n===void 0&&(n=s),t[n]=e[s]}),KR=gn&&gn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ZR=gn&&gn.__importStar||function(){var t=function(e){return t=Object.getOwnPropertyNames||function(s){var n=[];for(var r in s)Object.prototype.hasOwnProperty.call(s,r)&&(n[n.length]=r);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var s={};if(e!=null)for(var n=t(e),r=0;r<n.length;r++)n[r]!=="default"&&VR(s,e,n[r]);return KR(s,e),s}}();Object.defineProperty(gn,"__esModule",{value:!0});gn.createCloudWatchTransport=void 0;var YR=Ys(),fr=dr(),JR=In(),QR=(t={})=>{let e="CloudWatch";try{let s=t.level??YR.LogLevel.INFO,n=t.formatter||{format:S=>JSON.stringify(S)},r=t.logGroupName||process.env.CLOUDWATCH_LOG_GROUP||"/aws/lambda/my-function",i=t.logStreamName||process.env.CLOUDWATCH_LOG_STREAM,o=t.region||process.env.AWS_REGION||"us-east-1",a=t.maxStreamSize??45*1024*1024,c=t.maxStreamAge??23*60*60*1e3,u=t.batchSize||10,l=t.flushInterval||5e3,d=t.timeout||3e4;(0,fr.validateEnvironmentVariable)("CLOUDWATCH_LOG_GROUP",r,!1),(0,fr.validateEnvironmentVariable)("AWS_REGION",o,!1),(0,fr.validateTransportConfig)(e,{logGroupName:r,region:o},["logGroupName","region"]);let f={currentStreamName:i||`${new Date().toISOString().split("T")[0]}-${Date.now()}`,currentStreamSize:0,streamStartTime:Date.now(),sequenceToken:void 0,batch:[]},p=null,m=()=>{let S=Date.now()-f.streamStartTime;return f.currentStreamSize>=a||S>=c},g=()=>{let S=new Date().toISOString().replace(/[:.]/g,"-");return i?`${i}-${S}`:`${new Date().toISOString().split("T")[0]}-${S}`},h=async S=>{try{let{CloudWatchLogsClient:v,PutLogEventsCommand:E,CreateLogStreamCommand:R}=await Promise.resolve().then(()=>ZR(require("@aws-sdk/client-cloudwatch-logs"))),_=new v({region:o,requestHandler:{requestTimeout:d}});try{await _.send(new R({logGroupName:r,logStreamName:f.currentStreamName}))}catch(L){if(L instanceof Error&&L.name!=="ResourceAlreadyExistsException")throw L}let W=S.map(L=>({timestamp:new Date(L.timestamp).getTime(),message:n.format(L)})),j=new E({logGroupName:r,logStreamName:f.currentStreamName,logEvents:W,sequenceToken:f.sequenceToken}),M=await _.send(j);M.nextSequenceToken&&(f.sequenceToken=M.nextSequenceToken);let $=W.reduce((L,z)=>L+z.message.length,0);f.currentStreamSize+=$}catch(v){if(v instanceof Error&&v.name==="InvalidSequenceTokenException"){let E=v.message.match(/sequenceToken is: (.+)/);if(E){f.sequenceToken=E[1],await h(S);return}}throw v instanceof Error&&v.name==="ResourceNotFoundException"?(0,fr.createDetailedError)("CLOUDWATCH_LOG_GROUP_NOT_FOUND",e,{logGroupName:r,region:o,message:"Log group does not exist. Create it first in CloudWatch."}):(0,fr.createDetailedError)("CLOUDWATCH_API_ERROR",e,{error:v instanceof Error?v.message:String(v),logGroupName:r,logStreamName:f.currentStreamName,region:o})}},y=async()=>{try{await x(),f.currentStreamName=g(),f.currentStreamSize=0,f.streamStartTime=Date.now(),f.sequenceToken=void 0,console.log(`[CLOUDWATCH] Rotated to stream: ${f.currentStreamName}`)}catch(S){(0,fr.handleTransportError)(S,e,!0)}},x=async()=>{if(f.batch.length===0)return;let S=[...f.batch];f.batch=[],await h(S)};return(()=>{p||(p=setInterval(()=>{x().catch(S=>{(0,fr.handleTransportError)(S,e,!0)})},l))})(),{log:async S=>{(0,JR.shouldLog)(S.level,s)&&(m()&&await y(),f.batch.push(S),f.batch.length>=u&&await x())},setLevel:S=>{s=S},getLevel:()=>s,rotateStream:async()=>{await y()},getCurrentStream:()=>f.currentStreamName,getCurrentStreamSize:()=>f.currentStreamSize,flush:async()=>{await x()},close:async()=>{p&&(clearInterval(p),p=null),await x()},getConfig:()=>({logGroupName:r,logStreamName:f.currentStreamName,region:o,maxStreamSize:a,maxStreamAge:c,batchSize:u,flushInterval:l,timeout:d}),getStats:()=>({currentStream:f.currentStreamName,currentStreamSize:f.currentStreamSize,streamAge:Date.now()-f.streamStartTime,batchSize:f.batch.length,sequenceToken:f.sequenceToken?"set":"not set",flushTimerActive:!!p})}}catch(s){throw(0,fr.handleTransportError)(s,e,!1),s}};gn.createCloudWatchTransport=QR});var Eb=F(Lu=>{"use strict";Object.defineProperty(Lu,"__esModule",{value:!0});Lu.createPerformanceMonitor=void 0;var XR=t=>{let e=t||{metrics:new Map},s=(d,f)=>{e.metrics.has(d)||e.metrics.set(d,[]);let p=e.metrics.get(d);p&&p.push(f)},n=d=>{let f=performance.now();return p=>{let m=performance.now(),g=m-f,h={functionName:d,duration:g,startTime:f,endTime:m,...p&&{metadata:p}};return s(d,h),h}},r=async(d,f,p)=>{let m=performance.now();try{let g=await f(),h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:p}};return s(d,x),g}catch(g){let h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:{...p,error:!0}}};throw s(d,x),g}},i=(d,f,p)=>{let m=performance.now();try{let g=f(),h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:p}};return s(d,x),g}catch(g){let h=performance.now(),y=h-m,x={functionName:d,duration:y,startTime:m,endTime:h,...p&&{metadata:{...p,error:!0}}};throw s(d,x),g}},o=d=>{if(d)return e.metrics.get(d)||[];let f=[];for(let p of e.metrics.values())f.push(...p);return f},a=d=>{let f=o(d);return f.length===0?0:f.reduce((m,g)=>m+g.duration,0)/f.length};return{state:e,startTimer:n,timeAsync:r,timeSync:i,getMetrics:o,getAverageDuration:a,getSlowestExecution:d=>{let f=o(d);return f.length===0?null:f.reduce((p,m)=>m.duration>p.duration?m:p)},clearMetrics:d=>{d?e.metrics.delete(d):e.metrics.clear()},getMetricsSummary:()=>{let d={};for(let[f,p]of e.metrics.entries()){let m=p.length,g=a(f),h=Math.max(...p.map(y=>y.duration));d[f]={count:m,avgDuration:g,maxDuration:h}}return d}}};Lu.createPerformanceMonitor=XR});var Fb=F(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.stroggerWithFileTransport=ui.createFileTransportExample=void 0;var Bu=Ln(),eT=(t={})=>{let e=t.level??Bu.LogLevel.INFO,s=t.maxFileSize??10*1024*1024,n=t.rotationInterval??24*60*60*1e3,r=0,i=Date.now(),o=()=>r>=s||Date.now()-i>=n,a=async()=>{r=0,i=Date.now(),console.log("[MOCK FILE] Rotated log file")},c=async u=>{o()&&await a(),r+=u.length,console.log(`[MOCK FILE] Writing: ${u}`)};return{log:async u=>{if(u.level<e)return;let l=JSON.stringify(u);await c(l)},setLevel:u=>{e=u},getLevel:()=>e}};ui.createFileTransportExample=eT;var tT=(0,Bu.getEnvironment)(),sT=(0,Bu.createJsonFormatter)(),nT=(0,ui.createFileTransportExample)({maxFileSize:1024,rotationInterval:1e4});ui.stroggerWithFileTransport=(0,Bu.createLogger)({config:{serviceName:"file-rotation-example"},transports:[nT],formatter:sT,env:tT})});var _b=F(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.loggerWithCloudWatchTransport=li.createCloudWatchTransportExample=void 0;var Nu=Ln(),rT=(t={})=>{let e=t.level??Nu.LogLevel.INFO,s=t.maxStreamSize??45*1024*1024,n=t.maxStreamAge??23*60*60*1e3,r=0,i=Date.now(),o=()=>r>=s||Date.now()-i>=n,a=async()=>{r=0,i=Date.now(),console.log("[MOCK CW] Rotated log stream")},c=async u=>{o()&&await a(),r+=u.length,console.log(`[MOCK CW] Sending: ${u}`)};return{log:async u=>{if(u.level<e)return;let l=JSON.stringify(u);await c(l)},setLevel:u=>{e=u},getLevel:()=>e}};li.createCloudWatchTransportExample=rT;var iT=(0,Nu.getEnvironment)(),oT=(0,Nu.createJsonFormatter)(),aT=(0,li.createCloudWatchTransportExample)({maxStreamSize:1024,maxStreamAge:1e4});li.loggerWithCloudWatchTransport=(0,Nu.createLogger)({config:{serviceName:"cloudwatch-rotation-example"},transports:[aT],formatter:oT,env:iT})});var Bb=F((Lt,Lb)=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.demonstrateEnvironmentSpecificFileTransport=Lt.demonstrateCustomFileTransport=Lt.demonstrateMultipleFileTransports=Lt.demonstrateFileTransportWithSymlink=Lt.demonstrateCompressedFileTransport=Lt.demonstrateBasicFileTransport=Lt.runFileTransportExamples=void 0;var Ge=Ln(),kb=()=>{console.log(`=== Basic File Transport ===
16
16
  `);let t=(0,Ge.getEnvironment)(),e=(0,Ge.createJsonFormatter)(),s=(0,Ge.createFileTransport)({level:Ge.LogLevel.INFO,filePath:"./logs/basic-app.log",maxFileSize:5*1024*1024,maxFiles:3}),n=(0,Ge.createLogger)({config:{serviceName:"basic-file-example",stage:t.stage},transports:[s],formatter:e,env:t});return n.info("Application started with basic file transport"),n.warn("This is a warning message"),n.error("This is an error message",{userId:"user-123"}),n};Lt.demonstrateBasicFileTransport=kb;var Ib=()=>{console.log(`
17
17
  === File Transport with Compression ===
18
18
  `);let t=(0,Ge.getEnvironment)(),e=(0,Ge.createJsonFormatter)(),s=(0,Ge.createFileTransport)({level:Ge.LogLevel.DEBUG,filePath:"./logs/compressed-app.log",maxFileSize:10*1024*1024,maxFiles:5,compressOldFiles:!0,rotationInterval:12*60*60*1e3}),n=(0,Ge.createLogger)({config:{serviceName:"compressed-file-example",stage:t.stage},transports:[s],formatter:e,env:t});return n.info("Application started with compressed file transport"),n.debug("Debug message with compression enabled"),n.warn("Warning message",{component:"file-transport"}),n};Lt.demonstrateCompressedFileTransport=Ib;var Rb=()=>{console.log(`
@@ -75,7 +75,7 @@ ${JSON.stringify(j)}`}).join(`
75
75
  `);try{(0,Xt.demonstrateBrandedAPI)(),(0,Xt.demonstrateAPIComparison)(),(0,Xt.demonstrateMixedUsage)(),console.log(`
76
76
  \u2705 All branded API examples completed!`),console.log(`
77
77
  \u{1F4A1} Benefits of Branded API:`),console.log(" \u2022 Clear brand ownership"),console.log(" \u2022 Consistent naming convention"),console.log(" \u2022 Easy to identify Strogger functions"),console.log(" \u2022 No breaking changes - conventional API still works")}catch(t){console.error("\u274C Error running branded API examples:",t)}};Xt.runBrandedAPIExamples=bT;require.main===nv&&(0,Xt.runBrandedAPIExamples)()});var Ln=F(q=>{"use strict";Object.defineProperty(q,"__esModule",{value:!0});q.demonstrateAutomaticInstanceId=q.runCloudWatchTransportExamples=q.runFileTransportExamples=q.createCloudWatchTransportExample=q.createFileTransportExample=q.createBatchedLogger=q.createBatchedTransport=q.generateLoggerInstanceId=q.generateSpanId=q.generateTraceId=q.generateCorrelationId=q.createLoggerInstanceEnricher=q.createUserEnricher=q.createEnvironmentEnricher=q.createSessionEnricher=q.createCorrelationEnricher=q.createEnrichmentMiddleware=q.createDefaultEnrichmentMiddleware=q.createSampler=q.createRateLimiter=q.createLogFilter=q.validateTransportConfig=q.validateEnvironmentVariable=q.handleTransportError=q.createDetailedError=q.ERROR_MESSAGES=q.ValidationError=q.ConfigurationError=q.TransportError=q.LoggerError=q.createPerformanceMonitor=q.getEnvironment=q.createStroggerCloudWatchTransport=q.createStroggerNewRelicTransport=q.createStroggerElasticsearchTransport=q.createStroggerSplunkTransport=q.createStroggerDataDogTransport=q.createStroggerConsoleTransport=q.createCloudWatchTransport=q.createFileTransport=q.createNewRelicTransport=q.createElasticsearchTransport=q.createSplunkTransport=q.createDataDogTransport=q.createConsoleTransport=q.createJsonFormatter=q.LogLevel=q.strogger=q.createStrogger=q.createLogger=void 0;q.printLoggerConfig=q.shouldLog=q.runBrandedAPIExamples=q.runStructuredLoggingDemo=q.demonstrateManualGeneration=q.demonstrateInstanceIdInContexts=q.demonstrateMultipleInstances=q.demonstrateCustomInstanceId=void 0;var mf=af();Object.defineProperty(q,"createLogger",{enumerable:!0,get:function(){return mf.createLogger}});Object.defineProperty(q,"createStrogger",{enumerable:!0,get:function(){return mf.createStrogger}});Object.defineProperty(q,"strogger",{enumerable:!0,get:function(){return mf.strogger}});var vT=Ys();Object.defineProperty(q,"LogLevel",{enumerable:!0,get:function(){return vT.LogLevel}});var DT=Hp();Object.defineProperty(q,"createJsonFormatter",{enumerable:!0,get:function(){return DT.createJsonFormatter}});var ST=vu();Object.defineProperty(q,"createConsoleTransport",{enumerable:!0,get:function(){return ST.createConsoleTransport}});var CT=uf();Object.defineProperty(q,"createDataDogTransport",{enumerable:!0,get:function(){return CT.createDataDogTransport}});var wT=lf();Object.defineProperty(q,"createSplunkTransport",{enumerable:!0,get:function(){return wT.createSplunkTransport}});var AT=df();Object.defineProperty(q,"createElasticsearchTransport",{enumerable:!0,get:function(){return AT.createElasticsearchTransport}});var ET=pf();Object.defineProperty(q,"createNewRelicTransport",{enumerable:!0,get:function(){return ET.createNewRelicTransport}});var FT=Ab();Object.defineProperty(q,"createFileTransport",{enumerable:!0,get:function(){return FT.createFileTransport}});var _T=ff();Object.defineProperty(q,"createCloudWatchTransport",{enumerable:!0,get:function(){return _T.createCloudWatchTransport}});var kT=vu();Object.defineProperty(q,"createStroggerConsoleTransport",{enumerable:!0,get:function(){return kT.createConsoleTransport}});var IT=uf();Object.defineProperty(q,"createStroggerDataDogTransport",{enumerable:!0,get:function(){return IT.createDataDogTransport}});var RT=lf();Object.defineProperty(q,"createStroggerSplunkTransport",{enumerable:!0,get:function(){return RT.createSplunkTransport}});var TT=df();Object.defineProperty(q,"createStroggerElasticsearchTransport",{enumerable:!0,get:function(){return TT.createElasticsearchTransport}});var PT=pf();Object.defineProperty(q,"createStroggerNewRelicTransport",{enumerable:!0,get:function(){return PT.createNewRelicTransport}});var OT=ff();Object.defineProperty(q,"createStroggerCloudWatchTransport",{enumerable:!0,get:function(){return OT.createCloudWatchTransport}});var LT=rf();Object.defineProperty(q,"getEnvironment",{enumerable:!0,get:function(){return LT.getEnvironment}});var BT=Eb();Object.defineProperty(q,"createPerformanceMonitor",{enumerable:!0,get:function(){return BT.createPerformanceMonitor}});var Bn=dr();Object.defineProperty(q,"LoggerError",{enumerable:!0,get:function(){return Bn.LoggerError}});Object.defineProperty(q,"TransportError",{enumerable:!0,get:function(){return Bn.TransportError}});Object.defineProperty(q,"ConfigurationError",{enumerable:!0,get:function(){return Bn.ConfigurationError}});Object.defineProperty(q,"ValidationError",{enumerable:!0,get:function(){return Bn.ValidationError}});Object.defineProperty(q,"ERROR_MESSAGES",{enumerable:!0,get:function(){return Bn.ERROR_MESSAGES}});Object.defineProperty(q,"createDetailedError",{enumerable:!0,get:function(){return Bn.createDetailedError}});Object.defineProperty(q,"handleTransportError",{enumerable:!0,get:function(){return Bn.handleTransportError}});Object.defineProperty(q,"validateEnvironmentVariable",{enumerable:!0,get:function(){return Bn.validateEnvironmentVariable}});Object.defineProperty(q,"validateTransportConfig",{enumerable:!0,get:function(){return Bn.validateTransportConfig}});var hf=of();Object.defineProperty(q,"createLogFilter",{enumerable:!0,get:function(){return hf.createLogFilter}});Object.defineProperty(q,"createRateLimiter",{enumerable:!0,get:function(){return hf.createRateLimiter}});Object.defineProperty(q,"createSampler",{enumerable:!0,get:function(){return hf.createSampler}});var Qs=Zp();Object.defineProperty(q,"createDefaultEnrichmentMiddleware",{enumerable:!0,get:function(){return Qs.createDefaultEnrichmentMiddleware}});Object.defineProperty(q,"createEnrichmentMiddleware",{enumerable:!0,get:function(){return Qs.createEnrichmentMiddleware}});Object.defineProperty(q,"createCorrelationEnricher",{enumerable:!0,get:function(){return Qs.createCorrelationEnricher}});Object.defineProperty(q,"createSessionEnricher",{enumerable:!0,get:function(){return Qs.createSessionEnricher}});Object.defineProperty(q,"createEnvironmentEnricher",{enumerable:!0,get:function(){return Qs.createEnvironmentEnricher}});Object.defineProperty(q,"createUserEnricher",{enumerable:!0,get:function(){return Qs.createUserEnricher}});Object.defineProperty(q,"createLoggerInstanceEnricher",{enumerable:!0,get:function(){return Qs.createLoggerInstanceEnricher}});Object.defineProperty(q,"generateCorrelationId",{enumerable:!0,get:function(){return Qs.generateCorrelationId}});Object.defineProperty(q,"generateTraceId",{enumerable:!0,get:function(){return Qs.generateTraceId}});Object.defineProperty(q,"generateSpanId",{enumerable:!0,get:function(){return Qs.generateSpanId}});Object.defineProperty(q,"generateLoggerInstanceId",{enumerable:!0,get:function(){return Qs.generateLoggerInstanceId}});var iv=Kp();Object.defineProperty(q,"createBatchedTransport",{enumerable:!0,get:function(){return iv.createBatchedTransport}});Object.defineProperty(q,"createBatchedLogger",{enumerable:!0,get:function(){return iv.createBatchedLogger}});var NT=Fb();Object.defineProperty(q,"createFileTransportExample",{enumerable:!0,get:function(){return NT.createFileTransportExample}});var MT=_b();Object.defineProperty(q,"createCloudWatchTransportExample",{enumerable:!0,get:function(){return MT.createCloudWatchTransportExample}});var jT=Bb();Object.defineProperty(q,"runFileTransportExamples",{enumerable:!0,get:function(){return jT.runFileTransportExamples}});var $T=qb();Object.defineProperty(q,"runCloudWatchTransportExamples",{enumerable:!0,get:function(){return $T.runCloudWatchTransportExamples}});var La=Hb();Object.defineProperty(q,"demonstrateAutomaticInstanceId",{enumerable:!0,get:function(){return La.demonstrateAutomaticInstanceId}});Object.defineProperty(q,"demonstrateCustomInstanceId",{enumerable:!0,get:function(){return La.demonstrateCustomInstanceId}});Object.defineProperty(q,"demonstrateMultipleInstances",{enumerable:!0,get:function(){return La.demonstrateMultipleInstances}});Object.defineProperty(q,"demonstrateInstanceIdInContexts",{enumerable:!0,get:function(){return La.demonstrateInstanceIdInContexts}});Object.defineProperty(q,"demonstrateManualGeneration",{enumerable:!0,get:function(){return La.demonstrateManualGeneration}});var WT=sv();Object.defineProperty(q,"runStructuredLoggingDemo",{enumerable:!0,get:function(){return WT.runStructuredLoggingDemo}});var UT=rv();Object.defineProperty(q,"runBrandedAPIExamples",{enumerable:!0,get:function(){return UT.runBrandedAPIExamples}});var GT=In();Object.defineProperty(q,"shouldLog",{enumerable:!0,get:function(){return GT.shouldLog}});var zT=af();Object.defineProperty(q,"printLoggerConfig",{enumerable:!0,get:function(){return zT.printLoggerConfig}})});var Fv=F((I$,Ev)=>{var Av=require("stream").Stream,N8=require("util");Ev.exports=sn;function sn(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}N8.inherits(sn,Av);sn.create=function(t,e){var s=new this;e=e||{};for(var n in e)s[n]=e[n];s.source=t;var r=t.emit;return t.emit=function(){return s._handleEmit(arguments),r.apply(t,arguments)},t.on("error",function(){}),s.pauseStream&&t.pause(),s};Object.defineProperty(sn.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});sn.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};sn.prototype.resume=function(){this._released||this.release(),this.source.resume()};sn.prototype.pause=function(){this.source.pause()};sn.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};sn.prototype.pipe=function(){var t=Av.prototype.pipe.apply(this,arguments);return this.resume(),t};sn.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};sn.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var Rv=F((R$,Iv)=>{var M8=require("util"),kv=require("stream").Stream,_v=Fv();Iv.exports=dt;function dt(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}M8.inherits(dt,kv);dt.create=function(t){var e=new this;t=t||{};for(var s in t)e[s]=t[s];return e};dt.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};dt.prototype.append=function(t){var e=dt.isStreamLike(t);if(e){if(!(t instanceof _v)){var s=_v.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=s}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};dt.prototype.pipe=function(t,e){return kv.prototype.pipe.call(this,t,e),this.resume(),t};dt.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};dt.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(s){var n=dt.isStreamLike(s);n&&(s.on("data",this._checkDataSize.bind(this)),this._handleErrors(s)),this._pipeNext(s)}.bind(this))};dt.prototype._pipeNext=function(t){this._currentStream=t;var e=dt.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var s=t;this.write(s),this._getNext()};dt.prototype._handleErrors=function(t){var e=this;t.on("error",function(s){e._emitError(s)})};dt.prototype.write=function(t){this.emit("data",t)};dt.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};dt.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};dt.prototype.end=function(){this._reset(),this.emit("end")};dt.prototype.destroy=function(){this._reset(),this.emit("close")};dt.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};dt.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};dt.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};dt.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var Tv=F((T$,j8)=>{j8.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var Ov=F((P$,Pv)=>{Pv.exports=Tv()});var Nv=F(ts=>{"use strict";var Yu=Ov(),$8=require("path").extname,Lv=/^\s*([^;\s]*)(?:;|\s|$)/,W8=/^text\//i;ts.charset=Bv;ts.charsets={lookup:Bv};ts.contentType=U8;ts.extension=G8;ts.extensions=Object.create(null);ts.lookup=z8;ts.types=Object.create(null);q8(ts.extensions,ts.types);function Bv(t){if(!t||typeof t!="string")return!1;var e=Lv.exec(t),s=e&&Yu[e[1].toLowerCase()];return s&&s.charset?s.charset:e&&W8.test(e[1])?"UTF-8":!1}function U8(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?ts.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var s=ts.charset(e);s&&(e+="; charset="+s.toLowerCase())}return e}function G8(t){if(!t||typeof t!="string")return!1;var e=Lv.exec(t),s=e&&ts.extensions[e[1].toLowerCase()];return!s||!s.length?!1:s[0]}function z8(t){if(!t||typeof t!="string")return!1;var e=$8("x."+t).toLowerCase().substr(1);return e&&ts.types[e]||!1}function q8(t,e){var s=["nginx","apache",void 0,"iana"];Object.keys(Yu).forEach(function(r){var i=Yu[r],o=i.extensions;if(!(!o||!o.length)){t[r]=o;for(var a=0;a<o.length;a++){var c=o[a];if(e[c]){var u=s.indexOf(Yu[e[c]].source),l=s.indexOf(i.source);if(e[c]!=="application/octet-stream"&&(u>l||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=r}}})}});var jv=F((L$,Mv)=>{Mv.exports=H8;function H8(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var Cf=F((B$,Wv)=>{var $v=jv();Wv.exports=V8;function V8(t){var e=!1;return $v(function(){e=!0}),function(n,r){e?t(n,r):$v(function(){t(n,r)})}}});var wf=F((N$,Uv)=>{Uv.exports=K8;function K8(t){Object.keys(t.jobs).forEach(Z8.bind(t)),t.jobs={}}function Z8(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var Af=F((M$,zv)=>{var Gv=Cf(),Y8=wf();zv.exports=J8;function J8(t,e,s,n){var r=s.keyedList?s.keyedList[s.index]:s.index;s.jobs[r]=Q8(e,r,t[r],function(i,o){r in s.jobs&&(delete s.jobs[r],i?Y8(s):s.results[r]=o,n(i,s.results))})}function Q8(t,e,s,n){var r;return t.length==2?r=t(s,Gv(n)):r=t(s,e,Gv(n)),r}});var Ef=F((j$,qv)=>{qv.exports=X8;function X8(t,e){var s=!Array.isArray(t),n={index:0,keyedList:s||e?Object.keys(t):null,jobs:{},results:s?{}:[],size:s?Object.keys(t).length:t.length};return e&&n.keyedList.sort(s?e:function(r,i){return e(t[r],t[i])}),n}});var Ff=F(($$,Hv)=>{var e3=wf(),t3=Cf();Hv.exports=s3;function s3(t){Object.keys(this.jobs).length&&(this.index=this.size,e3(this),t3(t)(null,this.results))}});var Kv=F((W$,Vv)=>{var n3=Af(),r3=Ef(),i3=Ff();Vv.exports=o3;function o3(t,e,s){for(var n=r3(t);n.index<(n.keyedList||t).length;)n3(t,e,n,function(r,i){if(r){s(r,i);return}if(Object.keys(n.jobs).length===0){s(null,n.results);return}}),n.index++;return i3.bind(n,s)}});var _f=F((U$,Ju)=>{var Zv=Af(),a3=Ef(),c3=Ff();Ju.exports=u3;Ju.exports.ascending=Yv;Ju.exports.descending=l3;function u3(t,e,s,n){var r=a3(t,s);return Zv(t,e,r,function i(o,a){if(o){n(o,a);return}if(r.index++,r.index<(r.keyedList||t).length){Zv(t,e,r,i);return}n(null,r.results)}),c3.bind(r,n)}function Yv(t,e){return t<e?-1:t>e?1:0}function l3(t,e){return-1*Yv(t,e)}});var Qv=F((G$,Jv)=>{var d3=_f();Jv.exports=p3;function p3(t,e,s){return d3(t,e,null,s)}});var e2=F((z$,Xv)=>{Xv.exports={parallel:Kv(),serial:Qv(),serialOrdered:_f()}});var kf=F((q$,t2)=>{"use strict";t2.exports=Object});var n2=F((H$,s2)=>{"use strict";s2.exports=Error});var i2=F((V$,r2)=>{"use strict";r2.exports=EvalError});var a2=F((K$,o2)=>{"use strict";o2.exports=RangeError});var u2=F((Z$,c2)=>{"use strict";c2.exports=ReferenceError});var d2=F((Y$,l2)=>{"use strict";l2.exports=SyntaxError});var Qu=F((J$,p2)=>{"use strict";p2.exports=TypeError});var m2=F((Q$,f2)=>{"use strict";f2.exports=URIError});var g2=F((X$,h2)=>{"use strict";h2.exports=Math.abs});var y2=F((eW,x2)=>{"use strict";x2.exports=Math.floor});var v2=F((tW,b2)=>{"use strict";b2.exports=Math.max});var S2=F((sW,D2)=>{"use strict";D2.exports=Math.min});var w2=F((nW,C2)=>{"use strict";C2.exports=Math.pow});var E2=F((rW,A2)=>{"use strict";A2.exports=Math.round});var _2=F((iW,F2)=>{"use strict";F2.exports=Number.isNaN||function(e){return e!==e}});var I2=F((oW,k2)=>{"use strict";var f3=_2();k2.exports=function(e){return f3(e)||e===0?e:e<0?-1:1}});var T2=F((aW,R2)=>{"use strict";R2.exports=Object.getOwnPropertyDescriptor});var If=F((cW,P2)=>{"use strict";var Xu=T2();if(Xu)try{Xu([],"length")}catch{Xu=null}P2.exports=Xu});var L2=F((uW,O2)=>{"use strict";var el=Object.defineProperty||!1;if(el)try{el({},"a",{value:1})}catch{el=!1}O2.exports=el});var Rf=F((lW,B2)=>{"use strict";B2.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},s=Symbol("test"),n=Object(s);if(typeof s=="string"||Object.prototype.toString.call(s)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var r=42;e[s]=r;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var o=Object.getOwnPropertySymbols(e);if(o.length!==1||o[0]!==s||!Object.prototype.propertyIsEnumerable.call(e,s))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var a=Object.getOwnPropertyDescriptor(e,s);if(a.value!==r||a.enumerable!==!0)return!1}return!0}});var j2=F((dW,M2)=>{"use strict";var N2=typeof Symbol<"u"&&Symbol,m3=Rf();M2.exports=function(){return typeof N2!="function"||typeof Symbol!="function"||typeof N2("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:m3()}});var Tf=F((pW,$2)=>{"use strict";$2.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Pf=F((fW,W2)=>{"use strict";var h3=kf();W2.exports=h3.getPrototypeOf||null});var z2=F((mW,G2)=>{"use strict";var g3="Function.prototype.bind called on incompatible ",x3=Object.prototype.toString,y3=Math.max,b3="[object Function]",U2=function(e,s){for(var n=[],r=0;r<e.length;r+=1)n[r]=e[r];for(var i=0;i<s.length;i+=1)n[i+e.length]=s[i];return n},v3=function(e,s){for(var n=[],r=s||0,i=0;r<e.length;r+=1,i+=1)n[i]=e[r];return n},D3=function(t,e){for(var s="",n=0;n<t.length;n+=1)s+=t[n],n+1<t.length&&(s+=e);return s};G2.exports=function(e){var s=this;if(typeof s!="function"||x3.apply(s)!==b3)throw new TypeError(g3+s);for(var n=v3(arguments,1),r,i=function(){if(this instanceof r){var l=s.apply(this,U2(n,arguments));return Object(l)===l?l:this}return s.apply(e,U2(n,arguments))},o=y3(0,s.length-n.length),a=[],c=0;c<o;c++)a[c]="$"+c;if(r=Function("binder","return function ("+D3(a,",")+"){ return binder.apply(this,arguments); }")(i),s.prototype){var u=function(){};u.prototype=s.prototype,r.prototype=new u,u.prototype=null}return r}});var Wa=F((hW,q2)=>{"use strict";var S3=z2();q2.exports=Function.prototype.bind||S3});var tl=F((gW,H2)=>{"use strict";H2.exports=Function.prototype.call});var Of=F((xW,V2)=>{"use strict";V2.exports=Function.prototype.apply});var Z2=F((yW,K2)=>{"use strict";K2.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var J2=F((bW,Y2)=>{"use strict";var C3=Wa(),w3=Of(),A3=tl(),E3=Z2();Y2.exports=E3||C3.call(A3,w3)});var X2=F((vW,Q2)=>{"use strict";var F3=Wa(),_3=Qu(),k3=tl(),I3=J2();Q2.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new _3("a function is required");return I3(F3,k3,e)}});var iD=F((DW,rD)=>{"use strict";var R3=X2(),eD=If(),sD;try{sD=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var Lf=!!sD&&eD&&eD(Object.prototype,"__proto__"),nD=Object,tD=nD.getPrototypeOf;rD.exports=Lf&&typeof Lf.get=="function"?R3([Lf.get]):typeof tD=="function"?function(e){return tD(e==null?e:nD(e))}:!1});var lD=F((SW,uD)=>{"use strict";var oD=Tf(),aD=Pf(),cD=iD();uD.exports=oD?function(e){return oD(e)}:aD?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return aD(e)}:cD?function(e){return cD(e)}:null});var sl=F((CW,dD)=>{"use strict";var T3=Function.prototype.call,P3=Object.prototype.hasOwnProperty,O3=Wa();dD.exports=O3.call(T3,P3)});var yD=F((wW,xD)=>{"use strict";var je,L3=kf(),B3=n2(),N3=i2(),M3=a2(),j3=u2(),To=d2(),Ro=Qu(),$3=m2(),W3=g2(),U3=y2(),G3=v2(),z3=S2(),q3=w2(),H3=E2(),V3=I2(),hD=Function,Bf=function(t){try{return hD('"use strict"; return ('+t+").constructor;")()}catch{}},Ua=If(),K3=L2(),Nf=function(){throw new Ro},Z3=Ua?function(){try{return arguments.callee,Nf}catch{try{return Ua(arguments,"callee").get}catch{return Nf}}}():Nf,ko=j2()(),kt=lD(),Y3=Pf(),J3=Tf(),gD=Of(),Ga=tl(),Io={},Q3=typeof Uint8Array>"u"||!kt?je:kt(Uint8Array),pi={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?je:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?je:ArrayBuffer,"%ArrayIteratorPrototype%":ko&&kt?kt([][Symbol.iterator]()):je,"%AsyncFromSyncIteratorPrototype%":je,"%AsyncFunction%":Io,"%AsyncGenerator%":Io,"%AsyncGeneratorFunction%":Io,"%AsyncIteratorPrototype%":Io,"%Atomics%":typeof Atomics>"u"?je:Atomics,"%BigInt%":typeof BigInt>"u"?je:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?je:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?je:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?je:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":B3,"%eval%":eval,"%EvalError%":N3,"%Float16Array%":typeof Float16Array>"u"?je:Float16Array,"%Float32Array%":typeof Float32Array>"u"?je:Float32Array,"%Float64Array%":typeof Float64Array>"u"?je:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?je:FinalizationRegistry,"%Function%":hD,"%GeneratorFunction%":Io,"%Int8Array%":typeof Int8Array>"u"?je:Int8Array,"%Int16Array%":typeof Int16Array>"u"?je:Int16Array,"%Int32Array%":typeof Int32Array>"u"?je:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ko&&kt?kt(kt([][Symbol.iterator]())):je,"%JSON%":typeof JSON=="object"?JSON:je,"%Map%":typeof Map>"u"?je:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ko||!kt?je:kt(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":L3,"%Object.getOwnPropertyDescriptor%":Ua,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?je:Promise,"%Proxy%":typeof Proxy>"u"?je:Proxy,"%RangeError%":M3,"%ReferenceError%":j3,"%Reflect%":typeof Reflect>"u"?je:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?je:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ko||!kt?je:kt(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?je:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ko&&kt?kt(""[Symbol.iterator]()):je,"%Symbol%":ko?Symbol:je,"%SyntaxError%":To,"%ThrowTypeError%":Z3,"%TypedArray%":Q3,"%TypeError%":Ro,"%Uint8Array%":typeof Uint8Array>"u"?je:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?je:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?je:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?je:Uint32Array,"%URIError%":$3,"%WeakMap%":typeof WeakMap>"u"?je:WeakMap,"%WeakRef%":typeof WeakRef>"u"?je:WeakRef,"%WeakSet%":typeof WeakSet>"u"?je:WeakSet,"%Function.prototype.call%":Ga,"%Function.prototype.apply%":gD,"%Object.defineProperty%":K3,"%Object.getPrototypeOf%":Y3,"%Math.abs%":W3,"%Math.floor%":U3,"%Math.max%":G3,"%Math.min%":z3,"%Math.pow%":q3,"%Math.round%":H3,"%Math.sign%":V3,"%Reflect.getPrototypeOf%":J3};if(kt)try{null.error}catch(t){pD=kt(kt(t)),pi["%Error.prototype%"]=pD}var pD,X3=function t(e){var s;if(e==="%AsyncFunction%")s=Bf("async function () {}");else if(e==="%GeneratorFunction%")s=Bf("function* () {}");else if(e==="%AsyncGeneratorFunction%")s=Bf("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(s=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var r=t("%AsyncGenerator%");r&&kt&&(s=kt(r.prototype))}return pi[e]=s,s},fD={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},za=Wa(),nl=sl(),e4=za.call(Ga,Array.prototype.concat),t4=za.call(gD,Array.prototype.splice),mD=za.call(Ga,String.prototype.replace),rl=za.call(Ga,String.prototype.slice),s4=za.call(Ga,RegExp.prototype.exec),n4=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,r4=/\\(\\)?/g,i4=function(e){var s=rl(e,0,1),n=rl(e,-1);if(s==="%"&&n!=="%")throw new To("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&s!=="%")throw new To("invalid intrinsic syntax, expected opening `%`");var r=[];return mD(e,n4,function(i,o,a,c){r[r.length]=a?mD(c,r4,"$1"):o||i}),r},o4=function(e,s){var n=e,r;if(nl(fD,n)&&(r=fD[n],n="%"+r[0]+"%"),nl(pi,n)){var i=pi[n];if(i===Io&&(i=X3(n)),typeof i>"u"&&!s)throw new Ro("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:r,name:n,value:i}}throw new To("intrinsic "+e+" does not exist!")};xD.exports=function(e,s){if(typeof e!="string"||e.length===0)throw new Ro("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof s!="boolean")throw new Ro('"allowMissing" argument must be a boolean');if(s4(/^%?[^%]*%?$/,e)===null)throw new To("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=i4(e),r=n.length>0?n[0]:"",i=o4("%"+r+"%",s),o=i.name,a=i.value,c=!1,u=i.alias;u&&(r=u[0],t4(n,e4([0,1],u)));for(var l=1,d=!0;l<n.length;l+=1){var f=n[l],p=rl(f,0,1),m=rl(f,-1);if((p==='"'||p==="'"||p==="`"||m==='"'||m==="'"||m==="`")&&p!==m)throw new To("property names with quotes must have matching quotes");if((f==="constructor"||!d)&&(c=!0),r+="."+f,o="%"+r+"%",nl(pi,o))a=pi[o];else if(a!=null){if(!(f in a)){if(!s)throw new Ro("base intrinsic for "+e+" exists, but the property is not available.");return}if(Ua&&l+1>=n.length){var g=Ua(a,f);d=!!g,d&&"get"in g&&!("originalValue"in g.get)?a=g.get:a=a[f]}else d=nl(a,f),a=a[f];d&&!c&&(pi[o]=a)}}return a}});var vD=F((AW,bD)=>{"use strict";var a4=Rf();bD.exports=function(){return a4()&&!!Symbol.toStringTag}});var CD=F((EW,SD)=>{"use strict";var c4=yD(),DD=c4("%Object.defineProperty%",!0),u4=vD()(),l4=sl(),d4=Qu(),il=u4?Symbol.toStringTag:null;SD.exports=function(e,s){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,r=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof r<"u"&&typeof r!="boolean")throw new d4("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");il&&(n||!l4(e,il))&&(DD?DD(e,il,{configurable:!r,enumerable:!1,value:s,writable:!1}):e[il]=s)}});var AD=F((FW,wD)=>{"use strict";wD.exports=function(t,e){return Object.keys(e).forEach(function(s){t[s]=t[s]||e[s]}),t}});var FD=F((_W,ED)=>{"use strict";var Wf=Rv(),p4=require("util"),Mf=require("path"),f4=require("http"),m4=require("https"),h4=require("url").parse,g4=require("fs"),x4=require("stream").Stream,y4=require("crypto"),jf=Nv(),b4=e2(),v4=CD(),mr=sl(),$f=AD();function Ue(t){if(!(this instanceof Ue))return new Ue(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],Wf.call(this),t=t||{};for(var e in t)this[e]=t[e]}p4.inherits(Ue,Wf);Ue.LINE_BREAK=`\r
78
- `;Ue.DEFAULT_CONTENT_TYPE="application/octet-stream";Ue.prototype.append=function(t,e,s){s=s||{},typeof s=="string"&&(s={filename:s});var n=Wf.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var r=this._multiPartHeader(t,e,s),i=this._multiPartFooter();n(r),n(e),n(i),this._trackLength(r,e,s)};Ue.prototype._trackLength=function(t,e,s){var n=0;s.knownLength!=null?n+=Number(s.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Ue.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&mr(e,"httpVersion"))&&!(e instanceof x4))&&(s.knownLength||this._valuesToMeasure.push(e))};Ue.prototype._lengthRetriever=function(t,e){mr(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):g4.stat(t.path,function(s,n){if(s){e(s);return}var r=n.size-(t.start?t.start:0);e(null,r)}):mr(t,"httpVersion")?e(null,Number(t.headers["content-length"])):mr(t,"httpModule")?(t.on("response",function(s){t.pause(),e(null,Number(s.headers["content-length"]))}),t.resume()):e("Unknown stream")};Ue.prototype._multiPartHeader=function(t,e,s){if(typeof s.header=="string")return s.header;var n=this._getContentDisposition(e,s),r=this._getContentType(e,s),i="",o={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(r||[])};typeof s.header=="object"&&$f(o,s.header);var a;for(var c in o)if(mr(o,c)){if(a=o[c],a==null)continue;Array.isArray(a)||(a=[a]),a.length&&(i+=c+": "+a.join("; ")+Ue.LINE_BREAK)}return"--"+this.getBoundary()+Ue.LINE_BREAK+i+Ue.LINE_BREAK};Ue.prototype._getContentDisposition=function(t,e){var s;if(typeof e.filepath=="string"?s=Mf.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?s=Mf.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&mr(t,"httpVersion")&&(s=Mf.basename(t.client._httpMessage.path||"")),s)return'filename="'+s+'"'};Ue.prototype._getContentType=function(t,e){var s=e.contentType;return!s&&t&&t.name&&(s=jf.lookup(t.name)),!s&&t&&t.path&&(s=jf.lookup(t.path)),!s&&t&&t.readable&&mr(t,"httpVersion")&&(s=t.headers["content-type"]),!s&&(e.filepath||e.filename)&&(s=jf.lookup(e.filepath||e.filename)),!s&&t&&typeof t=="object"&&(s=Ue.DEFAULT_CONTENT_TYPE),s};Ue.prototype._multiPartFooter=function(){return function(t){var e=Ue.LINE_BREAK,s=this._streams.length===0;s&&(e+=this._lastBoundary()),t(e)}.bind(this)};Ue.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Ue.LINE_BREAK};Ue.prototype.getHeaders=function(t){var e,s={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)mr(t,e)&&(s[e.toLowerCase()]=t[e]);return s};Ue.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Ue.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Ue.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),s=0,n=this._streams.length;s<n;s++)typeof this._streams[s]!="function"&&(Buffer.isBuffer(this._streams[s])?t=Buffer.concat([t,this._streams[s]]):t=Buffer.concat([t,Buffer.from(this._streams[s])]),(typeof this._streams[s]!="string"||this._streams[s].substring(2,e.length+2)!==e)&&(t=Buffer.concat([t,Buffer.from(Ue.LINE_BREAK)])));return Buffer.concat([t,Buffer.from(this._lastBoundary())])};Ue.prototype._generateBoundary=function(){this._boundary="--------------------------"+y4.randomBytes(12).toString("hex")};Ue.prototype.getLengthSync=function(){var t=this._overheadLength+this._valueLength;return this._streams.length&&(t+=this._lastBoundary().length),this.hasKnownLength()||this._error(new Error("Cannot calculate proper length in synchronous way.")),t};Ue.prototype.hasKnownLength=function(){var t=!0;return this._valuesToMeasure.length&&(t=!1),t};Ue.prototype.getLength=function(t){var e=this._overheadLength+this._valueLength;if(this._streams.length&&(e+=this._lastBoundary().length),!this._valuesToMeasure.length){process.nextTick(t.bind(this,null,e));return}b4.parallel(this._valuesToMeasure,this._lengthRetriever,function(s,n){if(s){t(s);return}n.forEach(function(r){e+=r}),t(null,e)})};Ue.prototype.submit=function(t,e){var s,n,r={method:"post"};return typeof t=="string"?(t=h4(t),n=$f({port:t.port,path:t.pathname,host:t.hostname,protocol:t.protocol},r)):(n=$f(t,r),n.port||(n.port=n.protocol==="https:"?443:80)),n.headers=this.getHeaders(t.headers),n.protocol==="https:"?s=m4.request(n):s=f4.request(n),this.getLength(function(i,o){if(i&&i!=="Unknown stream"){this._error(i);return}if(o&&s.setHeader("Content-Length",o),this.pipe(s),e){var a,c=function(u,l){return s.removeListener("error",c),s.removeListener("response",a),e.call(this,u,l)};a=c.bind(this,null),s.on("error",c),s.on("response",a)}}.bind(this)),s};Ue.prototype._error=function(t){this.error||(this.error=t,this.pause(),this.emit("error",t))};Ue.prototype.toString=function(){return"[object FormData]"};v4(Ue.prototype,"FormData");ED.exports=Ue});var qD=F(zD=>{"use strict";var M4=require("url").parse,j4={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},$4=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function W4(t){var e=typeof t=="string"?M4(t):t||{},s=e.protocol,n=e.host,r=e.port;if(typeof n!="string"||!n||typeof s!="string"||(s=s.split(":",1)[0],n=n.replace(/:\d*$/,""),r=parseInt(r)||j4[s]||0,!U4(n,r)))return"";var i=Bo("npm_config_"+s+"_proxy")||Bo(s+"_proxy")||Bo("npm_config_proxy")||Bo("all_proxy");return i&&i.indexOf("://")===-1&&(i=s+"://"+i),i}function U4(t,e){var s=(Bo("npm_config_no_proxy")||Bo("no_proxy")).toLowerCase();return s?s==="*"?!1:s.split(/[,\s]/).every(function(n){if(!n)return!0;var r=n.match(/^(.+):(\d+)$/),i=r?r[1]:n,o=r?parseInt(r[2]):0;return o&&o!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!$4.call(t,i)):t!==i}):!0}function Bo(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}zD.getProxyForUrl=W4});var VD=F((kU,HD)=>{var No=1e3,Mo=No*60,jo=Mo*60,hi=jo*24,G4=hi*7,z4=hi*365.25;HD.exports=function(t,e){e=e||{};var s=typeof t;if(s==="string"&&t.length>0)return q4(t);if(s==="number"&&isFinite(t))return e.long?V4(t):H4(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function q4(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var s=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return s*z4;case"weeks":case"week":case"w":return s*G4;case"days":case"day":case"d":return s*hi;case"hours":case"hour":case"hrs":case"hr":case"h":return s*jo;case"minutes":case"minute":case"mins":case"min":case"m":return s*Mo;case"seconds":case"second":case"secs":case"sec":case"s":return s*No;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function H4(t){var e=Math.abs(t);return e>=hi?Math.round(t/hi)+"d":e>=jo?Math.round(t/jo)+"h":e>=Mo?Math.round(t/Mo)+"m":e>=No?Math.round(t/No)+"s":t+"ms"}function V4(t){var e=Math.abs(t);return e>=hi?ul(t,e,hi,"day"):e>=jo?ul(t,e,jo,"hour"):e>=Mo?ul(t,e,Mo,"minute"):e>=No?ul(t,e,No,"second"):t+" ms"}function ul(t,e,s,n){var r=e>=s*1.5;return Math.round(t/s)+" "+n+(r?"s":"")}});var em=F((IU,KD)=>{function K4(t){s.debug=s,s.default=s,s.coerce=c,s.disable=o,s.enable=r,s.enabled=a,s.humanize=VD(),s.destroy=u,Object.keys(t).forEach(l=>{s[l]=t[l]}),s.names=[],s.skips=[],s.formatters={};function e(l){let d=0;for(let f=0;f<l.length;f++)d=(d<<5)-d+l.charCodeAt(f),d|=0;return s.colors[Math.abs(d)%s.colors.length]}s.selectColor=e;function s(l){let d,f=null,p,m;function g(...h){if(!g.enabled)return;let y=g,x=Number(new Date),D=x-(d||x);y.diff=D,y.prev=d,y.curr=x,d=x,h[0]=s.coerce(h[0]),typeof h[0]!="string"&&h.unshift("%O");let S=0;h[0]=h[0].replace(/%([a-zA-Z%])/g,(E,T)=>{if(E==="%%")return"%";S++;let _=s.formatters[T];if(typeof _=="function"){let W=h[S];E=_.call(y,W),h.splice(S,1),S--}return E}),s.formatArgs.call(y,h),(y.log||s.log).apply(y,h)}return g.namespace=l,g.useColors=s.useColors(),g.color=s.selectColor(l),g.extend=n,g.destroy=s.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==s.namespaces&&(p=s.namespaces,m=s.enabled(l)),m),set:h=>{f=h}}),typeof s.init=="function"&&s.init(g),g}function n(l,d){let f=s(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function r(l){s.save(l),s.namespaces=l,s.names=[],s.skips=[];let d=(typeof l=="string"?l:"").trim().replace(" ",",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?s.skips.push(f.slice(1)):s.names.push(f)}function i(l,d){let f=0,p=0,m=-1,g=0;for(;f<l.length;)if(p<d.length&&(d[p]===l[f]||d[p]==="*"))d[p]==="*"?(m=p,g=f,p++):(f++,p++);else if(m!==-1)p=m+1,g++,f=g;else return!1;for(;p<d.length&&d[p]==="*";)p++;return p===d.length}function o(){let l=[...s.names,...s.skips.map(d=>"-"+d)].join(",");return s.enable(""),l}function a(l){for(let d of s.skips)if(i(l,d))return!1;for(let d of s.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return s.enable(s.load()),s}KD.exports=K4});var ZD=F((xs,ll)=>{xs.formatArgs=Y4;xs.save=J4;xs.load=Q4;xs.useColors=Z4;xs.storage=X4();xs.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();xs.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Z4(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Y4(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ll.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let s=0,n=0;t[0].replace(/%[a-zA-Z%]/g,r=>{r!=="%%"&&(s++,r==="%c"&&(n=s))}),t.splice(n,0,e)}xs.log=console.debug||console.log||(()=>{});function J4(t){try{t?xs.storage.setItem("debug",t):xs.storage.removeItem("debug")}catch{}}function Q4(){let t;try{t=xs.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function X4(){try{return localStorage}catch{}}ll.exports=em()(xs);var{formatters:e5}=ll.exports;e5.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var JD=F((RU,YD)=>{"use strict";YD.exports=(t,e=process.argv)=>{let s=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(s+t),r=e.indexOf("--");return n!==-1&&(r===-1||n<r)}});var eS=F((TU,XD)=>{"use strict";var t5=require("os"),QD=require("tty"),Is=JD(),{env:It}=process,gr;Is("no-color")||Is("no-colors")||Is("color=false")||Is("color=never")?gr=0:(Is("color")||Is("colors")||Is("color=true")||Is("color=always"))&&(gr=1);"FORCE_COLOR"in It&&(It.FORCE_COLOR==="true"?gr=1:It.FORCE_COLOR==="false"?gr=0:gr=It.FORCE_COLOR.length===0?1:Math.min(parseInt(It.FORCE_COLOR,10),3));function tm(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function sm(t,e){if(gr===0)return 0;if(Is("color=16m")||Is("color=full")||Is("color=truecolor"))return 3;if(Is("color=256"))return 2;if(t&&!e&&gr===void 0)return 0;let s=gr||0;if(It.TERM==="dumb")return s;if(process.platform==="win32"){let n=t5.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in It)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in It)||It.CI_NAME==="codeship"?1:s;if("TEAMCITY_VERSION"in It)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(It.TEAMCITY_VERSION)?1:0;if(It.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in It){let n=parseInt((It.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(It.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(It.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(It.TERM)||"COLORTERM"in It?1:s}function s5(t){let e=sm(t,t&&t.isTTY);return tm(e)}XD.exports={supportsColor:s5,stdout:tm(sm(!0,QD.isatty(1))),stderr:tm(sm(!0,QD.isatty(2)))}});var sS=F((Rt,pl)=>{var n5=require("tty"),dl=require("util");Rt.init=l5;Rt.log=a5;Rt.formatArgs=i5;Rt.save=c5;Rt.load=u5;Rt.useColors=r5;Rt.destroy=dl.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Rt.colors=[6,2,3,4,5,1];try{let t=eS();t&&(t.stderr||t).level>=2&&(Rt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Rt.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let s=e.substring(6).toLowerCase().replace(/_([a-z])/g,(r,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[s]=n,t},{});function r5(){return"colors"in Rt.inspectOpts?!!Rt.inspectOpts.colors:n5.isatty(process.stderr.fd)}function i5(t){let{namespace:e,useColors:s}=this;if(s){let n=this.color,r="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${r};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
78
+ `;Ue.DEFAULT_CONTENT_TYPE="application/octet-stream";Ue.prototype.append=function(t,e,s){s=s||{},typeof s=="string"&&(s={filename:s});var n=Wf.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var r=this._multiPartHeader(t,e,s),i=this._multiPartFooter();n(r),n(e),n(i),this._trackLength(r,e,s)};Ue.prototype._trackLength=function(t,e,s){var n=0;s.knownLength!=null?n+=Number(s.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Ue.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&mr(e,"httpVersion"))&&!(e instanceof x4))&&(s.knownLength||this._valuesToMeasure.push(e))};Ue.prototype._lengthRetriever=function(t,e){mr(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):g4.stat(t.path,function(s,n){if(s){e(s);return}var r=n.size-(t.start?t.start:0);e(null,r)}):mr(t,"httpVersion")?e(null,Number(t.headers["content-length"])):mr(t,"httpModule")?(t.on("response",function(s){t.pause(),e(null,Number(s.headers["content-length"]))}),t.resume()):e("Unknown stream")};Ue.prototype._multiPartHeader=function(t,e,s){if(typeof s.header=="string")return s.header;var n=this._getContentDisposition(e,s),r=this._getContentType(e,s),i="",o={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(r||[])};typeof s.header=="object"&&$f(o,s.header);var a;for(var c in o)if(mr(o,c)){if(a=o[c],a==null)continue;Array.isArray(a)||(a=[a]),a.length&&(i+=c+": "+a.join("; ")+Ue.LINE_BREAK)}return"--"+this.getBoundary()+Ue.LINE_BREAK+i+Ue.LINE_BREAK};Ue.prototype._getContentDisposition=function(t,e){var s;if(typeof e.filepath=="string"?s=Mf.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?s=Mf.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&mr(t,"httpVersion")&&(s=Mf.basename(t.client._httpMessage.path||"")),s)return'filename="'+s+'"'};Ue.prototype._getContentType=function(t,e){var s=e.contentType;return!s&&t&&t.name&&(s=jf.lookup(t.name)),!s&&t&&t.path&&(s=jf.lookup(t.path)),!s&&t&&t.readable&&mr(t,"httpVersion")&&(s=t.headers["content-type"]),!s&&(e.filepath||e.filename)&&(s=jf.lookup(e.filepath||e.filename)),!s&&t&&typeof t=="object"&&(s=Ue.DEFAULT_CONTENT_TYPE),s};Ue.prototype._multiPartFooter=function(){return function(t){var e=Ue.LINE_BREAK,s=this._streams.length===0;s&&(e+=this._lastBoundary()),t(e)}.bind(this)};Ue.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Ue.LINE_BREAK};Ue.prototype.getHeaders=function(t){var e,s={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)mr(t,e)&&(s[e.toLowerCase()]=t[e]);return s};Ue.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Ue.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Ue.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),s=0,n=this._streams.length;s<n;s++)typeof this._streams[s]!="function"&&(Buffer.isBuffer(this._streams[s])?t=Buffer.concat([t,this._streams[s]]):t=Buffer.concat([t,Buffer.from(this._streams[s])]),(typeof this._streams[s]!="string"||this._streams[s].substring(2,e.length+2)!==e)&&(t=Buffer.concat([t,Buffer.from(Ue.LINE_BREAK)])));return Buffer.concat([t,Buffer.from(this._lastBoundary())])};Ue.prototype._generateBoundary=function(){this._boundary="--------------------------"+y4.randomBytes(12).toString("hex")};Ue.prototype.getLengthSync=function(){var t=this._overheadLength+this._valueLength;return this._streams.length&&(t+=this._lastBoundary().length),this.hasKnownLength()||this._error(new Error("Cannot calculate proper length in synchronous way.")),t};Ue.prototype.hasKnownLength=function(){var t=!0;return this._valuesToMeasure.length&&(t=!1),t};Ue.prototype.getLength=function(t){var e=this._overheadLength+this._valueLength;if(this._streams.length&&(e+=this._lastBoundary().length),!this._valuesToMeasure.length){process.nextTick(t.bind(this,null,e));return}b4.parallel(this._valuesToMeasure,this._lengthRetriever,function(s,n){if(s){t(s);return}n.forEach(function(r){e+=r}),t(null,e)})};Ue.prototype.submit=function(t,e){var s,n,r={method:"post"};return typeof t=="string"?(t=h4(t),n=$f({port:t.port,path:t.pathname,host:t.hostname,protocol:t.protocol},r)):(n=$f(t,r),n.port||(n.port=n.protocol==="https:"?443:80)),n.headers=this.getHeaders(t.headers),n.protocol==="https:"?s=m4.request(n):s=f4.request(n),this.getLength(function(i,o){if(i&&i!=="Unknown stream"){this._error(i);return}if(o&&s.setHeader("Content-Length",o),this.pipe(s),e){var a,c=function(u,l){return s.removeListener("error",c),s.removeListener("response",a),e.call(this,u,l)};a=c.bind(this,null),s.on("error",c),s.on("response",a)}}.bind(this)),s};Ue.prototype._error=function(t){this.error||(this.error=t,this.pause(),this.emit("error",t))};Ue.prototype.toString=function(){return"[object FormData]"};v4(Ue.prototype,"FormData");ED.exports=Ue});var qD=F(zD=>{"use strict";var M4=require("url").parse,j4={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},$4=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function W4(t){var e=typeof t=="string"?M4(t):t||{},s=e.protocol,n=e.host,r=e.port;if(typeof n!="string"||!n||typeof s!="string"||(s=s.split(":",1)[0],n=n.replace(/:\d*$/,""),r=parseInt(r)||j4[s]||0,!U4(n,r)))return"";var i=Bo("npm_config_"+s+"_proxy")||Bo(s+"_proxy")||Bo("npm_config_proxy")||Bo("all_proxy");return i&&i.indexOf("://")===-1&&(i=s+"://"+i),i}function U4(t,e){var s=(Bo("npm_config_no_proxy")||Bo("no_proxy")).toLowerCase();return s?s==="*"?!1:s.split(/[,\s]/).every(function(n){if(!n)return!0;var r=n.match(/^(.+):(\d+)$/),i=r?r[1]:n,o=r?parseInt(r[2]):0;return o&&o!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!$4.call(t,i)):t!==i}):!0}function Bo(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}zD.getProxyForUrl=W4});var VD=F((kU,HD)=>{var No=1e3,Mo=No*60,jo=Mo*60,hi=jo*24,G4=hi*7,z4=hi*365.25;HD.exports=function(t,e){e=e||{};var s=typeof t;if(s==="string"&&t.length>0)return q4(t);if(s==="number"&&isFinite(t))return e.long?V4(t):H4(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function q4(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var s=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return s*z4;case"weeks":case"week":case"w":return s*G4;case"days":case"day":case"d":return s*hi;case"hours":case"hour":case"hrs":case"hr":case"h":return s*jo;case"minutes":case"minute":case"mins":case"min":case"m":return s*Mo;case"seconds":case"second":case"secs":case"sec":case"s":return s*No;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function H4(t){var e=Math.abs(t);return e>=hi?Math.round(t/hi)+"d":e>=jo?Math.round(t/jo)+"h":e>=Mo?Math.round(t/Mo)+"m":e>=No?Math.round(t/No)+"s":t+"ms"}function V4(t){var e=Math.abs(t);return e>=hi?ul(t,e,hi,"day"):e>=jo?ul(t,e,jo,"hour"):e>=Mo?ul(t,e,Mo,"minute"):e>=No?ul(t,e,No,"second"):t+" ms"}function ul(t,e,s,n){var r=e>=s*1.5;return Math.round(t/s)+" "+n+(r?"s":"")}});var em=F((IU,KD)=>{function K4(t){s.debug=s,s.default=s,s.coerce=c,s.disable=o,s.enable=r,s.enabled=a,s.humanize=VD(),s.destroy=u,Object.keys(t).forEach(l=>{s[l]=t[l]}),s.names=[],s.skips=[],s.formatters={};function e(l){let d=0;for(let f=0;f<l.length;f++)d=(d<<5)-d+l.charCodeAt(f),d|=0;return s.colors[Math.abs(d)%s.colors.length]}s.selectColor=e;function s(l){let d,f=null,p,m;function g(...h){if(!g.enabled)return;let y=g,x=Number(new Date),D=x-(d||x);y.diff=D,y.prev=d,y.curr=x,d=x,h[0]=s.coerce(h[0]),typeof h[0]!="string"&&h.unshift("%O");let S=0;h[0]=h[0].replace(/%([a-zA-Z%])/g,(E,R)=>{if(E==="%%")return"%";S++;let _=s.formatters[R];if(typeof _=="function"){let W=h[S];E=_.call(y,W),h.splice(S,1),S--}return E}),s.formatArgs.call(y,h),(y.log||s.log).apply(y,h)}return g.namespace=l,g.useColors=s.useColors(),g.color=s.selectColor(l),g.extend=n,g.destroy=s.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==s.namespaces&&(p=s.namespaces,m=s.enabled(l)),m),set:h=>{f=h}}),typeof s.init=="function"&&s.init(g),g}function n(l,d){let f=s(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function r(l){s.save(l),s.namespaces=l,s.names=[],s.skips=[];let d=(typeof l=="string"?l:"").trim().replace(" ",",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?s.skips.push(f.slice(1)):s.names.push(f)}function i(l,d){let f=0,p=0,m=-1,g=0;for(;f<l.length;)if(p<d.length&&(d[p]===l[f]||d[p]==="*"))d[p]==="*"?(m=p,g=f,p++):(f++,p++);else if(m!==-1)p=m+1,g++,f=g;else return!1;for(;p<d.length&&d[p]==="*";)p++;return p===d.length}function o(){let l=[...s.names,...s.skips.map(d=>"-"+d)].join(",");return s.enable(""),l}function a(l){for(let d of s.skips)if(i(l,d))return!1;for(let d of s.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return s.enable(s.load()),s}KD.exports=K4});var ZD=F((xs,ll)=>{xs.formatArgs=Y4;xs.save=J4;xs.load=Q4;xs.useColors=Z4;xs.storage=X4();xs.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();xs.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Z4(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Y4(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+ll.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let s=0,n=0;t[0].replace(/%[a-zA-Z%]/g,r=>{r!=="%%"&&(s++,r==="%c"&&(n=s))}),t.splice(n,0,e)}xs.log=console.debug||console.log||(()=>{});function J4(t){try{t?xs.storage.setItem("debug",t):xs.storage.removeItem("debug")}catch{}}function Q4(){let t;try{t=xs.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function X4(){try{return localStorage}catch{}}ll.exports=em()(xs);var{formatters:e5}=ll.exports;e5.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var JD=F((RU,YD)=>{"use strict";YD.exports=(t,e=process.argv)=>{let s=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(s+t),r=e.indexOf("--");return n!==-1&&(r===-1||n<r)}});var eS=F((TU,XD)=>{"use strict";var t5=require("os"),QD=require("tty"),Is=JD(),{env:It}=process,gr;Is("no-color")||Is("no-colors")||Is("color=false")||Is("color=never")?gr=0:(Is("color")||Is("colors")||Is("color=true")||Is("color=always"))&&(gr=1);"FORCE_COLOR"in It&&(It.FORCE_COLOR==="true"?gr=1:It.FORCE_COLOR==="false"?gr=0:gr=It.FORCE_COLOR.length===0?1:Math.min(parseInt(It.FORCE_COLOR,10),3));function tm(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function sm(t,e){if(gr===0)return 0;if(Is("color=16m")||Is("color=full")||Is("color=truecolor"))return 3;if(Is("color=256"))return 2;if(t&&!e&&gr===void 0)return 0;let s=gr||0;if(It.TERM==="dumb")return s;if(process.platform==="win32"){let n=t5.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in It)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in It)||It.CI_NAME==="codeship"?1:s;if("TEAMCITY_VERSION"in It)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(It.TEAMCITY_VERSION)?1:0;if(It.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in It){let n=parseInt((It.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(It.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(It.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(It.TERM)||"COLORTERM"in It?1:s}function s5(t){let e=sm(t,t&&t.isTTY);return tm(e)}XD.exports={supportsColor:s5,stdout:tm(sm(!0,QD.isatty(1))),stderr:tm(sm(!0,QD.isatty(2)))}});var sS=F((Rt,pl)=>{var n5=require("tty"),dl=require("util");Rt.init=l5;Rt.log=a5;Rt.formatArgs=i5;Rt.save=c5;Rt.load=u5;Rt.useColors=r5;Rt.destroy=dl.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Rt.colors=[6,2,3,4,5,1];try{let t=eS();t&&(t.stderr||t).level>=2&&(Rt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Rt.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let s=e.substring(6).toLowerCase().replace(/_([a-z])/g,(r,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[s]=n,t},{});function r5(){return"colors"in Rt.inspectOpts?!!Rt.inspectOpts.colors:n5.isatty(process.stderr.fd)}function i5(t){let{namespace:e,useColors:s}=this;if(s){let n=this.color,r="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${r};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
79
79
  `).join(`
80
80
  `+i),t.push(r+"m+"+pl.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=o5()+e+" "+t[0]}function o5(){return Rt.inspectOpts.hideDate?"":new Date().toISOString()+" "}function a5(...t){return process.stderr.write(dl.formatWithOptions(Rt.inspectOpts,...t)+`
81
81
  `)}function c5(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function u5(){return process.env.DEBUG}function l5(t){t.inspectOpts={};let e=Object.keys(Rt.inspectOpts);for(let s=0;s<e.length;s++)t.inspectOpts[e[s]]=Rt.inspectOpts[e[s]]}pl.exports=em()(Rt);var{formatters:tS}=pl.exports;tS.o=function(t){return this.inspectOpts.colors=this.useColors,dl.inspect(t,this.inspectOpts).split(`
@@ -91,16 +91,16 @@ ${JSON.stringify(j)}`}).join(`
91
91
  \v\f\r\u1EF6\u1EF8\x1B\u1EF4 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE`},iso646cn:{type:"_sbcs",chars:`\0\x07\b
92
92
  \v\f\r\x1B !"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},iso646jp:{type:"_sbcs",chars:`\0\x07\b
93
93
  \v\f\r\x1B !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_\`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD`},hproman8:{type:"_sbcs",chars:"\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"},macintosh:{type:"_sbcs",chars:"\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"},ascii:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"},tis620:{type:"_sbcs",chars:"\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"}}});var B1=F(L1=>{"use strict";var vh=Hn().Buffer;L1._dbcs=Kn;var jt=-1,O1=-2,Ws=-10,Kt=-1e3,ia=new Array(256),bc=-1;for(Ql=0;Ql<256;Ql++)ia[Ql]=jt;var Ql;function Kn(t,e){if(this.encodingName=t.encodingName,!t)throw new Error("DBCS codec is called without the data.");if(!t.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var s=t.table();this.decodeTables=[],this.decodeTables[0]=ia.slice(0),this.decodeTableSeq=[];for(var n=0;n<s.length;n++)this._addDecodeChunk(s[n]);if(typeof t.gb18030=="function"){this.gb18030=t.gb18030();var r=this.decodeTables.length;this.decodeTables.push(ia.slice(0));var i=this.decodeTables.length;this.decodeTables.push(ia.slice(0));for(var o=this.decodeTables[0],n=129;n<=254;n++)for(var a=this.decodeTables[Kt-o[n]],c=48;c<=57;c++){if(a[c]===jt)a[c]=Kt-r;else if(a[c]>Kt)throw new Error("gb18030 decode tables conflict at byte 2");for(var u=this.decodeTables[Kt-a[c]],l=129;l<=254;l++){if(u[l]===jt)u[l]=Kt-i;else{if(u[l]===Kt-i)continue;if(u[l]>Kt)throw new Error("gb18030 decode tables conflict at byte 3")}for(var d=this.decodeTables[Kt-u[l]],f=48;f<=57;f++)d[f]===jt&&(d[f]=O1)}}}this.defaultCharUnicode=e.defaultCharUnicode,this.encodeTable=[],this.encodeTableSeq=[];var p={};if(t.encodeSkipVals)for(var n=0;n<t.encodeSkipVals.length;n++){var m=t.encodeSkipVals[n];if(typeof m=="number")p[m]=!0;else for(var c=m.from;c<=m.to;c++)p[c]=!0}if(this._fillEncodeTable(0,0,p),t.encodeAdd)for(var g in t.encodeAdd)Object.prototype.hasOwnProperty.call(t.encodeAdd,g)&&this._setEncodeChar(g.charCodeAt(0),t.encodeAdd[g]);this.defCharSB=this.encodeTable[0][e.defaultCharSingleByte.charCodeAt(0)],this.defCharSB===jt&&(this.defCharSB=this.encodeTable[0]["?"]),this.defCharSB===jt&&(this.defCharSB=63)}Kn.prototype.encoder=Xl;Kn.prototype.decoder=Dh;Kn.prototype._getDecodeTrieNode=function(t){for(var e=[];t>0;t>>>=8)e.push(t&255);e.length==0&&e.push(0);for(var s=this.decodeTables[0],n=e.length-1;n>0;n--){var r=s[e[n]];if(r==jt)s[e[n]]=Kt-this.decodeTables.length,this.decodeTables.push(s=ia.slice(0));else if(r<=Kt)s=this.decodeTables[Kt-r];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+t.toString(16))}return s};Kn.prototype._addDecodeChunk=function(t){var e=parseInt(t[0],16),s=this._getDecodeTrieNode(e);e=e&255;for(var n=1;n<t.length;n++){var r=t[n];if(typeof r=="string")for(var i=0;i<r.length;){var o=r.charCodeAt(i++);if(o>=55296&&o<56320){var a=r.charCodeAt(i++);if(a>=56320&&a<57344)s[e++]=65536+(o-55296)*1024+(a-56320);else throw new Error("Incorrect surrogate pair in "+this.encodingName+" at chunk "+t[0])}else if(o>4080&&o<=4095){for(var c=4095-o+2,u=[],l=0;l<c;l++)u.push(r.charCodeAt(i++));s[e++]=Ws-this.decodeTableSeq.length,this.decodeTableSeq.push(u)}else s[e++]=o}else if(typeof r=="number")for(var d=s[e-1]+1,i=0;i<r;i++)s[e++]=d++;else throw new Error("Incorrect type '"+typeof r+"' given in "+this.encodingName+" at chunk "+t[0])}if(e>255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+t[0]+": too long"+e)};Kn.prototype._getEncodeBucket=function(t){var e=t>>8;return this.encodeTable[e]===void 0&&(this.encodeTable[e]=ia.slice(0)),this.encodeTable[e]};Kn.prototype._setEncodeChar=function(t,e){var s=this._getEncodeBucket(t),n=t&255;s[n]<=Ws?this.encodeTableSeq[Ws-s[n]][bc]=e:s[n]==jt&&(s[n]=e)};Kn.prototype._setEncodeSequence=function(t,e){var s=t[0],n=this._getEncodeBucket(s),r=s&255,i;n[r]<=Ws?i=this.encodeTableSeq[Ws-n[r]]:(i={},n[r]!==jt&&(i[bc]=n[r]),n[r]=Ws-this.encodeTableSeq.length,this.encodeTableSeq.push(i));for(var o=1;o<t.length-1;o++){var a=i[s];typeof a=="object"?i=a:(i=i[s]={},a!==void 0&&(i[bc]=a))}s=t[t.length-1],i[s]=e};Kn.prototype._fillEncodeTable=function(t,e,s){for(var n=this.decodeTables[t],r=!1,i={},o=0;o<256;o++){var a=n[o],c=e+o;if(!s[c])if(a>=0)this._setEncodeChar(a,c),r=!0;else if(a<=Kt){var u=Kt-a;if(!i[u]){var l=c<<8>>>0;this._fillEncodeTable(u,l,s)?r=!0:i[u]=!0}}else a<=Ws&&(this._setEncodeSequence(this.decodeTableSeq[Ws-a],c),r=!0)}return r};function Xl(t,e){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=e.encodeTable,this.encodeTableSeq=e.encodeTableSeq,this.defaultCharSingleByte=e.defCharSB,this.gb18030=e.gb18030}Xl.prototype.write=function(t){for(var e=vh.alloc(t.length*(this.gb18030?4:3)),s=this.leadSurrogate,n=this.seqObj,r=-1,i=0,o=0;;){if(r===-1){if(i==t.length)break;var a=t.charCodeAt(i++)}else{var a=r;r=-1}if(a>=55296&&a<57344)if(a<56320)if(s===-1){s=a;continue}else s=a,a=jt;else s!==-1?(a=65536+(s-55296)*1024+(a-56320),s=-1):a=jt;else s!==-1&&(r=a,a=jt,s=-1);var c=jt;if(n!==void 0&&a!=jt){var u=n[a];if(typeof u=="object"){n=u;continue}else typeof u=="number"?c=u:u==null&&(u=n[bc],u!==void 0&&(c=u,r=a));n=void 0}else if(a>=0){var l=this.encodeTable[a>>8];if(l!==void 0&&(c=l[a&255]),c<=Ws){n=this.encodeTableSeq[Ws-c];continue}if(c==jt&&this.gb18030){var d=Sh(this.gb18030.uChars,a);if(d!=-1){var c=this.gb18030.gbChars[d]+(a-this.gb18030.uChars[d]);e[o++]=129+Math.floor(c/12600),c=c%12600,e[o++]=48+Math.floor(c/1260),c=c%1260,e[o++]=129+Math.floor(c/10),c=c%10,e[o++]=48+c;continue}}}c===jt&&(c=this.defaultCharSingleByte),c<256?e[o++]=c:c<65536?(e[o++]=c>>8,e[o++]=c&255):c<16777216?(e[o++]=c>>16,e[o++]=c>>8&255,e[o++]=c&255):(e[o++]=c>>>24,e[o++]=c>>>16&255,e[o++]=c>>>8&255,e[o++]=c&255)}return this.seqObj=n,this.leadSurrogate=s,e.slice(0,o)};Xl.prototype.end=function(){if(!(this.leadSurrogate===-1&&this.seqObj===void 0)){var t=vh.alloc(10),e=0;if(this.seqObj){var s=this.seqObj[bc];s!==void 0&&(s<256?t[e++]=s:(t[e++]=s>>8,t[e++]=s&255)),this.seqObj=void 0}return this.leadSurrogate!==-1&&(t[e++]=this.defaultCharSingleByte,this.leadSurrogate=-1),t.slice(0,e)}};Xl.prototype.findIdx=Sh;function Dh(t,e){this.nodeIdx=0,this.prevBytes=[],this.decodeTables=e.decodeTables,this.decodeTableSeq=e.decodeTableSeq,this.defaultCharUnicode=e.defaultCharUnicode,this.gb18030=e.gb18030}Dh.prototype.write=function(t){for(var e=vh.alloc(t.length*2),s=this.nodeIdx,n=this.prevBytes,r=this.prevBytes.length,i=-this.prevBytes.length,o,a=0,c=0;a<t.length;a++){var u=a>=0?t[a]:n[a+r],o=this.decodeTables[s][u];if(!(o>=0))if(o===jt)o=this.defaultCharUnicode.charCodeAt(0),a=i;else if(o===O1){if(a>=3)var l=(t[a-3]-129)*12600+(t[a-2]-48)*1260+(t[a-1]-129)*10+(u-48);else var l=(n[a-3+r]-129)*12600+((a-2>=0?t[a-2]:n[a-2+r])-48)*1260+((a-1>=0?t[a-1]:n[a-1+r])-129)*10+(u-48);var d=Sh(this.gb18030.gbChars,l);o=this.gb18030.uChars[d]+l-this.gb18030.gbChars[d]}else if(o<=Kt){s=Kt-o;continue}else if(o<=Ws){for(var f=this.decodeTableSeq[Ws-o],p=0;p<f.length-1;p++)o=f[p],e[c++]=o&255,e[c++]=o>>8;o=f[f.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+o+" at "+s+"/"+u);if(o>=65536){o-=65536;var m=55296|o>>10;e[c++]=m&255,e[c++]=m>>8,o=56320|o&1023}e[c++]=o&255,e[c++]=o>>8,s=0,i=a+1}return this.nodeIdx=s,this.prevBytes=i>=0?Array.prototype.slice.call(t,i):n.slice(i+r).concat(Array.prototype.slice.call(t)),e.slice(0,c).toString("ucs2")};Dh.prototype.end=function(){for(var t="";this.prevBytes.length>0;){t+=this.defaultCharUnicode;var e=this.prevBytes.slice(1);this.prevBytes=[],this.nodeIdx=0,e.length>0&&(t+=this.write(e))}return this.prevBytes=[],this.nodeIdx=0,t};function Sh(t,e){if(t[0]>e)return-1;for(var s=0,n=t.length;s<n-1;){var r=s+(n-s+1>>1);t[r]<=e?s=r:n=r}return s}});var N1=F((XV,wL)=>{wL.exports=[["0","\0",128],["a1","\uFF61",62],["8140","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7"],["8180","\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["81b8","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["81c8","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["81da","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["81f0","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["81fc","\u25EF"],["824f","\uFF10",9],["8260","\uFF21",25],["8281","\uFF41",25],["829f","\u3041",82],["8340","\u30A1",62],["8380","\u30E0",22],["839f","\u0391",16,"\u03A3",6],["83bf","\u03B1",16,"\u03C3",6],["8440","\u0410",5,"\u0401\u0416",25],["8470","\u0430",5,"\u0451\u0436",7],["8480","\u043E",17],["849f","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["8740","\u2460",19,"\u2160",9],["875f","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["877e","\u337B"],["8780","\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["889f","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["8940","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],["8980","\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["8a40","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],["8a80","\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["8b40","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],["8b80","\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["8c40","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],["8c80","\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["8d40","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],["8d80","\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["8e40","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],["8e80","\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["8f40","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],["8f80","\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["9040","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],["9080","\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["9140","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],["9180","\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["9240","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],["9280","\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["9340","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],["9380","\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["9440","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],["9480","\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["9540","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],["9580","\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["9640","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],["9680","\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["9740","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],["9780","\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["9840","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["989f","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["9940","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],["9980","\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["9a40","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],["9a80","\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["9b40","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],["9b80","\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["9c40","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],["9c80","\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["9d40","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],["9d80","\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["9e40","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],["9e80","\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["9f40","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],["9f80","\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["e040","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],["e080","\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e140","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],["e180","\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e240","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],["e280","\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e340","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],["e380","\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e440","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],["e480","\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e540","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],["e580","\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["e640","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],["e680","\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["e740","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],["e780","\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["e840","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],["e880","\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["e940","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],["e980","\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["ea40","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],["ea80","\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],["ed40","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],["ed80","\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["ee40","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],["ee80","\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["eeef","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["f040","\uE000",62],["f080","\uE03F",124],["f140","\uE0BC",62],["f180","\uE0FB",124],["f240","\uE178",62],["f280","\uE1B7",124],["f340","\uE234",62],["f380","\uE273",124],["f440","\uE2F0",62],["f480","\uE32F",124],["f540","\uE3AC",62],["f580","\uE3EB",124],["f640","\uE468",62],["f680","\uE4A7",124],["f740","\uE524",62],["f780","\uE563",124],["f840","\uE5E0",62],["f880","\uE61F",124],["f940","\uE69C"],["fa40","\u2170",9,"\u2160",9,"\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],["fa80","\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],["fb40","\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],["fb80","\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],["fc40","\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]]});var M1=F((eK,AL)=>{AL.exports=[["0","\0",127],["8ea1","\uFF61",62],["a1a1","\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008",9,"\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],["a2a1","\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],["a2ba","\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],["a2ca","\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],["a2dc","\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],["a2f2","\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],["a2fe","\u25EF"],["a3b0","\uFF10",9],["a3c1","\uFF21",25],["a3e1","\uFF41",25],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a8a1","\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],["ada1","\u2460",19,"\u2160",9],["adc0","\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],["addf","\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4",4,"\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],["b0a1","\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],["b1a1","\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],["b2a1","\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],["b3a1","\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],["b4a1","\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],["b5a1","\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],["b6a1","\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],["b7a1","\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],["b8a1","\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],["b9a1","\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],["baa1","\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],["bba1","\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],["bca1","\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],["bda1","\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],["bea1","\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],["bfa1","\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],["c0a1","\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],["c1a1","\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],["c2a1","\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],["c3a1","\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],["c4a1","\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],["c5a1","\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],["c6a1","\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],["c7a1","\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],["c8a1","\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],["c9a1","\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],["caa1","\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],["cba1","\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],["cca1","\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],["cda1","\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],["cea1","\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],["cfa1","\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],["d0a1","\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],["d1a1","\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],["d2a1","\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],["d3a1","\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],["d4a1","\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],["d5a1","\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],["d6a1","\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],["d7a1","\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],["d8a1","\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],["d9a1","\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],["daa1","\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],["dba1","\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],["dca1","\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],["dda1","\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],["dea1","\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],["dfa1","\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],["e0a1","\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],["e1a1","\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],["e2a1","\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],["e3a1","\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],["e4a1","\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],["e5a1","\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],["e6a1","\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],["e7a1","\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],["e8a1","\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],["e9a1","\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],["eaa1","\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],["eba1","\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],["eca1","\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],["eda1","\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],["eea1","\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],["efa1","\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],["f0a1","\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],["f1a1","\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],["f2a1","\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],["f3a1","\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],["f4a1","\u582F\u69C7\u9059\u7464\u51DC\u7199"],["f9a1","\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],["faa1","\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],["fba1","\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],["fca1","\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],["fcf1","\u2170",9,"\uFFE2\uFFE4\uFF07\uFF02"],["8fa2af","\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],["8fa2c2","\xA1\xA6\xBF"],["8fa2eb","\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],["8fa6e1","\u0386\u0388\u0389\u038A\u03AA"],["8fa6e7","\u038C"],["8fa6e9","\u038E\u03AB"],["8fa6ec","\u038F"],["8fa6f1","\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],["8fa7c2","\u0402",10,"\u040E\u040F"],["8fa7f2","\u0452",10,"\u045E\u045F"],["8fa9a1","\xC6\u0110"],["8fa9a4","\u0126"],["8fa9a6","\u0132"],["8fa9a8","\u0141\u013F"],["8fa9ab","\u014A\xD8\u0152"],["8fa9af","\u0166\xDE"],["8fa9c1","\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],["8faaa1","\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],["8faaba","\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],["8faba1","\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],["8fabbd","\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],["8fabc5","\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],["8fb0a1","\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],["8fb1a1","\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],["8fb2a1","\u5092\u5093\u5094\u5096\u509B\u509C\u509E",4,"\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],["8fb3a1","\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],["8fb4a1","\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],["8fb5a1","\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],["8fb6a1","\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D",5,"\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4",4,"\u56F1\u56EB\u56ED"],["8fb7a1","\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D",4,"\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],["8fb8a1","\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],["8fb9a1","\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],["8fbaa1","\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6",4,"\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],["8fbba1","\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],["8fbca1","\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A",4,"\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],["8fbda1","\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0",4,"\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],["8fbea1","\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110",4,"\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],["8fbfa1","\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],["8fc0a1","\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],["8fc1a1","\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],["8fc2a1","\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],["8fc3a1","\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E",4,"\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],["8fc4a1","\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],["8fc5a1","\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],["8fc6a1","\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],["8fc7a1","\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],["8fc8a1","\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],["8fc9a1","\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094",4,"\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103",4,"\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],["8fcaa1","\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],["8fcba1","\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],["8fcca1","\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428",9,"\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],["8fcda1","\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579",5,"\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],["8fcea1","\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2",6,"\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],["8fcfa1","\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],["8fd0a1","\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],["8fd1a1","\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],["8fd2a1","\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59",5],["8fd3a1","\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],["8fd4a1","\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2",4,"\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],["8fd5a1","\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],["8fd6a1","\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],["8fd7a1","\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],["8fd8a1","\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],["8fd9a1","\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F",4,"\u8556\u8559\u855C",6,"\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],["8fdaa1","\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660",4,"\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],["8fdba1","\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783",6,"\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],["8fdca1","\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA",4,"\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],["8fdda1","\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4",4,"\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],["8fdea1","\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42",4,"\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],["8fdfa1","\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],["8fe0a1","\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],["8fe1a1","\u8F43\u8F47\u8F4F\u8F51",4,"\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],["8fe2a1","\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],["8fe3a1","\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC",5,"\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275",4,"\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],["8fe4a1","\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF",4,"\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],["8fe5a1","\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9",4,"\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],["8fe6a1","\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],["8fe7a1","\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],["8fe8a1","\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931",4,"\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],["8fe9a1","\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF",4],["8feaa1","\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A",4,"\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],["8feba1","\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26",4,"\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],["8feca1","\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],["8feda1","\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43",4,"\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D",4,"\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]]});var ed=F((tK,EL)=>{EL.exports=[["0","\0",127,"\u20AC"],["8140","\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A",5,"\u4E72\u4E74",9,"\u4E7F",6,"\u4E87\u4E8A"],["8180","\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02",6,"\u4F0B\u4F0C\u4F12",4,"\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E",4,"\u4F44\u4F45\u4F47",5,"\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],["8240","\u4FA4\u4FAB\u4FAD\u4FB0",4,"\u4FB6",8,"\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2",4,"\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF",11],["8280","\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F",10,"\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050",4,"\u5056\u5057\u5058\u5059\u505B\u505D",7,"\u5066",5,"\u506D",8,"\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E",20,"\u50A4\u50A6\u50AA\u50AB\u50AD",4,"\u50B3",6,"\u50BC"],["8340","\u50BD",17,"\u50D0",5,"\u50D7\u50D8\u50D9\u50DB",10,"\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6",4,"\u50FC",9,"\u5108"],["8380","\u5109\u510A\u510C",5,"\u5113",13,"\u5122",28,"\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D",4,"\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6",4,"\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2",5],["8440","\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5",5,"\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244",5,"\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],["8480","\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273",9,"\u527E\u5280\u5283",4,"\u5289",6,"\u5291\u5292\u5294",6,"\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4",9,"\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9",5,"\u52E0\u52E1\u52E2\u52E3\u52E5",10,"\u52F1",7,"\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],["8540","\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F",9,"\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],["8580","\u5390",4,"\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF",6,"\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3",4,"\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D",4,"\u5463\u5465\u5467\u5469",7,"\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],["8640","\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0",4,"\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4",5,"\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A",4,"\u5512\u5513\u5515",5,"\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],["8680","\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B",4,"\u5551\u5552\u5553\u5554\u5557",4,"\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F",5,"\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0",6,"\u55A8",8,"\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF",4,"\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7",4,"\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8",4,"\u55FF\u5602\u5603\u5604\u5605"],["8740","\u5606\u5607\u560A\u560B\u560D\u5610",7,"\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640",11,"\u564F",4,"\u5655\u5656\u565A\u565B\u565D",4],["8780","\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D",7,"\u5687",6,"\u5690\u5691\u5692\u5694",14,"\u56A4",10,"\u56B0",6,"\u56B8\u56B9\u56BA\u56BB\u56BD",12,"\u56CB",8,"\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5",5,"\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B",6],["8840","\u5712",9,"\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734",4,"\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752",4,"\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],["8880","\u5781\u5787\u5788\u5789\u578A\u578D",4,"\u5794",6,"\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9",8,"\u57C4",6,"\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5",7,"\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825",4,"\u582B",4,"\u5831\u5832\u5833\u5834\u5836",7],["8940","\u583E",5,"\u5845",6,"\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859",4,"\u585F",5,"\u5866",4,"\u586D",16,"\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],["8980","\u588D",4,"\u5894",4,"\u589B\u589C\u589D\u58A0",7,"\u58AA",17,"\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6",10,"\u58D2\u58D3\u58D4\u58D6",13,"\u58E5",5,"\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA",7,"\u5903\u5905\u5906\u5908",4,"\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],["8a40","\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B",4,"\u5961\u5963\u5964\u5966",12,"\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],["8a80","\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3",5,"\u59BA\u59BC\u59BD\u59BF",6,"\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE",4,"\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED",11,"\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A",6,"\u5A33\u5A35\u5A37",4,"\u5A3D\u5A3E\u5A3F\u5A41",4,"\u5A47\u5A48\u5A4B",9,"\u5A56\u5A57\u5A58\u5A59\u5A5B",5],["8b40","\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B",8,"\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80",17,"\u5A93",6,"\u5A9C",13,"\u5AAB\u5AAC"],["8b80","\u5AAD",4,"\u5AB4\u5AB6\u5AB7\u5AB9",4,"\u5ABF\u5AC0\u5AC3",5,"\u5ACA\u5ACB\u5ACD",4,"\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC",4,"\u5AF2",22,"\u5B0A",11,"\u5B18",25,"\u5B33\u5B35\u5B36\u5B38",7,"\u5B41",6],["8c40","\u5B48",7,"\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],["8c80","\u5BD1\u5BD4",8,"\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9",4,"\u5BEF\u5BF1",6,"\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67",6,"\u5C70\u5C72",6,"\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83",4,"\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D",4,"\u5CA4",4],["8d40","\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5",5,"\u5CCC",5,"\u5CD3",5,"\u5CDA",6,"\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1",9,"\u5CFC",4],["8d80","\u5D01\u5D04\u5D05\u5D08",5,"\u5D0F",4,"\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F",4,"\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F",4,"\u5D35",7,"\u5D3F",7,"\u5D48\u5D49\u5D4D",10,"\u5D59\u5D5A\u5D5C\u5D5E",10,"\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75",12,"\u5D83",21,"\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],["8e40","\u5DA1",21,"\u5DB8",12,"\u5DC6",6,"\u5DCE",12,"\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],["8e80","\u5DF0\u5DF5\u5DF6\u5DF8",4,"\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E",7,"\u5E28",4,"\u5E2F\u5E30\u5E32",4,"\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46",5,"\u5E4D",6,"\u5E56",4,"\u5E5C\u5E5D\u5E5F\u5E60\u5E63",14,"\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8",4,"\u5EAE",4,"\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF",6],["8f40","\u5EC6\u5EC7\u5EC8\u5ECB",5,"\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC",11,"\u5EE9\u5EEB",8,"\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],["8f80","\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32",6,"\u5F3B\u5F3D\u5F3E\u5F3F\u5F41",14,"\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2",5,"\u5FA9\u5FAB\u5FAC\u5FAF",5,"\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE",4,"\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],["9040","\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030",4,"\u6036",4,"\u603D\u603E\u6040\u6044",6,"\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],["9080","\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD",7,"\u60C7\u60C8\u60C9\u60CC",4,"\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1",4,"\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB",4,"\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110",4,"\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C",18,"\u6140",6],["9140","\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156",6,"\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169",6,"\u6171\u6172\u6173\u6174\u6176\u6178",18,"\u618C\u618D\u618F",4,"\u6195"],["9180","\u6196",6,"\u619E",8,"\u61AA\u61AB\u61AD",9,"\u61B8",5,"\u61BF\u61C0\u61C1\u61C3",4,"\u61C9\u61CC",4,"\u61D3\u61D5",16,"\u61E7",13,"\u61F6",8,"\u6200",5,"\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238",4,"\u6242\u6244\u6245\u6246\u624A"],["9240","\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C",6,"\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B",5,"\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],["9280","\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333",5,"\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356",7,"\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399",6,"\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],["9340","\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7",6,"\u63DF\u63E2\u63E4",4,"\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406",4,"\u640D\u640E\u6411\u6412\u6415",5,"\u641D\u641F\u6422\u6423\u6424"],["9380","\u6425\u6427\u6428\u6429\u642B\u642E",5,"\u6435",4,"\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B",6,"\u6453\u6455\u6456\u6457\u6459",4,"\u645F",7,"\u6468\u646A\u646B\u646C\u646E",9,"\u647B",6,"\u6483\u6486\u6488",8,"\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F",4,"\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6",6,"\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],["9440","\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7",24,"\u6501",7,"\u650A",7,"\u6513",4,"\u6519",8],["9480","\u6522\u6523\u6524\u6526",4,"\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540",4,"\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578",14,"\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1",7,"\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8",7,"\u65E1\u65E3\u65E4\u65EA\u65EB"],["9540","\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB",4,"\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637",4,"\u663D\u663F\u6640\u6642\u6644",6,"\u664D\u664E\u6650\u6651\u6658"],["9580","\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669",4,"\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698",4,"\u669E",8,"\u66A9",4,"\u66AF",4,"\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF",25,"\u66DA\u66DE",7,"\u66E7\u66E8\u66EA",5,"\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],["9640","\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720",5,"\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757",4,"\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],["9680","\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9",7,"\u67C2\u67C5",9,"\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5",7,"\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818",4,"\u681E\u681F\u6820\u6822",6,"\u682B",6,"\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856",5],["9740","\u685C\u685D\u685E\u685F\u686A\u686C",7,"\u6875\u6878",8,"\u6882\u6884\u6887",7,"\u6890\u6891\u6892\u6894\u6895\u6896\u6898",9,"\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],["9780","\u68B9",6,"\u68C1\u68C3",5,"\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB",4,"\u68E1\u68E2\u68E4",9,"\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906",4,"\u690C\u690F\u6911\u6913",11,"\u6921\u6922\u6923\u6925",7,"\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943",16,"\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],["9840","\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972",4,"\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E",5,"\u6996\u6997\u6999\u699A\u699D",9,"\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],["9880","\u69BE\u69BF\u69C0\u69C2",7,"\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5",5,"\u69DC\u69DD\u69DE\u69E1",11,"\u69EE\u69EF\u69F0\u69F1\u69F3",9,"\u69FE\u6A00",9,"\u6A0B",11,"\u6A19",5,"\u6A20\u6A22",5,"\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36",6,"\u6A3F",4,"\u6A45\u6A46\u6A48",7,"\u6A51",6,"\u6A5A"],["9940","\u6A5C",4,"\u6A62\u6A63\u6A64\u6A66",10,"\u6A72",6,"\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85",8,"\u6A8F\u6A92",4,"\u6A98",7,"\u6AA1",5],["9980","\u6AA7\u6AA8\u6AAA\u6AAD",114,"\u6B25\u6B26\u6B28",6],["9a40","\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D",11,"\u6B5A",7,"\u6B68\u6B69\u6B6B",13,"\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],["9a80","\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C",4,"\u6BA2",7,"\u6BAB",7,"\u6BB6\u6BB8",6,"\u6BC0\u6BC3\u6BC4\u6BC6",4,"\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC",4,"\u6BE2",7,"\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE",6,"\u6C08",4,"\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B",4,"\u6C51\u6C52\u6C53\u6C56\u6C58"],["9b40","\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B",4,"\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],["9b80","\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F",5,"\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D",4,"\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96",4,"\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9",5,"\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],["9c40","\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD",7,"\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],["9c80","\u6E36\u6E37\u6E39\u6E3B",7,"\u6E45",7,"\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60",10,"\u6E6C\u6E6D\u6E6F",14,"\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A",4,"\u6E91",6,"\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA",5],["9d40","\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA",7,"\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A",4,"\u6F10\u6F11\u6F12\u6F16",9,"\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37",6,"\u6F3F\u6F40\u6F41\u6F42"],["9d80","\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E",9,"\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67",5,"\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D",6,"\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F",12,"\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2",4,"\u6FA8",10,"\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA",5,"\u6FC1\u6FC3",5,"\u6FCA",6,"\u6FD3",10,"\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],["9e40","\u6FE6",7,"\u6FF0",32,"\u7012",7,"\u701C",6,"\u7024",6],["9e80","\u702B",9,"\u7036\u7037\u7038\u703A",17,"\u704D\u704E\u7050",13,"\u705F",11,"\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E",12,"\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB",12,"\u70DA"],["9f40","\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0",6,"\u70F8\u70FA\u70FB\u70FC\u70FE",10,"\u710B",4,"\u7111\u7112\u7114\u7117\u711B",10,"\u7127",7,"\u7132\u7133\u7134"],["9f80","\u7135\u7137",13,"\u7146\u7147\u7148\u7149\u714B\u714D\u714F",12,"\u715D\u715F",4,"\u7165\u7169",4,"\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E",5,"\u7185",4,"\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A",4,"\u71A1",6,"\u71A9\u71AA\u71AB\u71AD",5,"\u71B4\u71B6\u71B7\u71B8\u71BA",8,"\u71C4",9,"\u71CF",4],["a040","\u71D6",9,"\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8",5,"\u71EF",9,"\u71FA",11,"\u7207",19],["a080","\u721B\u721C\u721E",9,"\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240",6,"\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285",4,"\u728C\u728E\u7290\u7291\u7293",11,"\u72A0",11,"\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA",6,"\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],["a1a1","\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008",7,"\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],["a2a1","\u2170",9],["a2b1","\u2488",19,"\u2474",19,"\u2460",9],["a2e5","\u3220",9],["a2f1","\u2160",11],["a3a1","\uFF01\uFF02\uFF03\uFFE5\uFF05",88,"\uFFE3"],["a4a1","\u3041",82],["a5a1","\u30A1",85],["a6a1","\u0391",16,"\u03A3",6],["a6c1","\u03B1",16,"\u03C3",6],["a6e0","\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],["a6ee","\uFE3B\uFE3C\uFE37\uFE38\uFE31"],["a6f4","\uFE33\uFE34"],["a7a1","\u0410",5,"\u0401\u0416",25],["a7d1","\u0430",5,"\u0451\u0436",25],["a840","\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550",35,"\u2581",6],["a880","\u2588",7,"\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],["a8a1","\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],["a8bd","\u0144\u0148"],["a8c0","\u0261"],["a8c5","\u3105",36],["a940","\u3021",8,"\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],["a959","\u2121\u3231"],["a95c","\u2010"],["a960","\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49",9,"\uFE54\uFE55\uFE56\uFE57\uFE59",8],["a980","\uFE62",4,"\uFE68\uFE69\uFE6A\uFE6B"],["a996","\u3007"],["a9a4","\u2500",75],["aa40","\u72DC\u72DD\u72DF\u72E2",5,"\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304",5,"\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340",8],["aa80","\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358",7,"\u7361",10,"\u736E\u7370\u7371"],["ab40","\u7372",11,"\u737F",4,"\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3",5,"\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3",4],["ab80","\u73CB\u73CC\u73CE\u73D2",6,"\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3",4],["ac40","\u73F8",10,"\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411",8,"\u741C",5,"\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437",4,"\u743D\u743E\u743F\u7440\u7442",11],["ac80","\u744E",6,"\u7456\u7458\u745D\u7460",12,"\u746E\u746F\u7471",4,"\u7478\u7479\u747A"],["ad40","\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491",10,"\u749D\u749F",7,"\u74AA",15,"\u74BB",12],["ad80","\u74C8",9,"\u74D3",8,"\u74DD\u74DF\u74E1\u74E5\u74E7",6,"\u74F0\u74F1\u74F2"],["ae40","\u74F3\u74F5\u74F8",6,"\u7500\u7501\u7502\u7503\u7505",7,"\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520",4,"\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],["ae80","\u755D",7,"\u7567\u7568\u7569\u756B",6,"\u7573\u7575\u7576\u7577\u757A",4,"\u7580\u7581\u7582\u7584\u7585\u7587"],["af40","\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6",4,"\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],["af80","\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],["b040","\u7645",6,"\u764E",5,"\u7655\u7657",4,"\u765D\u765F\u7660\u7661\u7662\u7664",6,"\u766C\u766D\u766E\u7670",7,"\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],["b080","\u769C",7,"\u76A5",8,"\u76AF\u76B0\u76B3\u76B5",9,"\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],["b140","\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0",4,"\u76E6",7,"\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E",10,"\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],["b180","\u772C\u772E\u7730",4,"\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748",7,"\u7752",7,"\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],["b240","\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D",11,"\u777A\u777B\u777C\u7781\u7782\u7783\u7786",5,"\u778F\u7790\u7793",11,"\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6",4],["b280","\u77BC\u77BE\u77C0",12,"\u77CE",8,"\u77D8\u77D9\u77DA\u77DD",4,"\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],["b340","\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803",5,"\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],["b380","\u785B\u785C\u785E",11,"\u786F",7,"\u7878\u7879\u787A\u787B\u787D",6,"\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],["b440","\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8",7,"\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA",9],["b480","\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED",4,"\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB",5,"\u7902\u7903\u7904\u7906",6,"\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],["b540","\u790D",5,"\u7914",9,"\u791F",4,"\u7925",14,"\u7935",4,"\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A",8,"\u7954\u7955\u7958\u7959\u7961\u7963"],["b580","\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970",6,"\u7979\u797B",4,"\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],["b640","\u7993",6,"\u799B",11,"\u79A8",10,"\u79B4",4,"\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9",5,"\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],["b680","\u79EC\u79EE\u79F1",6,"\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F",4,"\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],["b740","\u7A1D\u7A1F\u7A21\u7A22\u7A24",14,"\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40",5,"\u7A47",9,"\u7A52",4,"\u7A58",16],["b780","\u7A69",6,"\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],["b840","\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE",4,"\u7AB4",10,"\u7AC0",10,"\u7ACC",9,"\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7",5,"\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],["b880","\u7AF4",4,"\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],["b940","\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F",5,"\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63",10,"\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86",6,"\u7B8E\u7B8F"],["b980","\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9",7,"\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],["ba40","\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4",4,"\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2",4,"\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF",7,"\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10",5,"\u7C17\u7C18\u7C19"],["ba80","\u7C1A",4,"\u7C20",5,"\u7C28\u7C29\u7C2B",12,"\u7C39",5,"\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],["bb40","\u7C43",9,"\u7C4E",36,"\u7C75",5,"\u7C7E",9],["bb80","\u7C88\u7C8A",6,"\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4",4,"\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],["bc40","\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE",6,"\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1",6,"\u7CE9",5,"\u7CF0",7,"\u7CF9\u7CFA\u7CFC",13,"\u7D0B",5],["bc80","\u7D11",14,"\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30",6,"\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],["bd40","\u7D37",54,"\u7D6F",7],["bd80","\u7D78",32,"\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],["be40","\u7D99",12,"\u7DA7",6,"\u7DAF",42],["be80","\u7DDA",32,"\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],["bf40","\u7DFB",62],["bf80","\u7E3A\u7E3C",4,"\u7E42",4,"\u7E48",21,"\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],["c040","\u7E5E",35,"\u7E83",23,"\u7E9C\u7E9D\u7E9E"],["c080","\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B",6,"\u7F43\u7F46",9,"\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],["c140","\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63",4,"\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82",7,"\u7F8B\u7F8D\u7F8F",4,"\u7F95",4,"\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8",6,"\u7FB1"],["c180","\u7FB3",4,"\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF",4,"\u7FD6\u7FD7\u7FD9",5,"\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],["c240","\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4",6,"\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B",5,"\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],["c280","\u8059\u805B",13,"\u806B",5,"\u8072",11,"\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],["c340","\u807E\u8081\u8082\u8085\u8088\u808A\u808D",5,"\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7",4,"\u80CF",6,"\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],["c380","\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F",12,"\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139",4,"\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],["c440","\u8140",5,"\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B",4,"\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183",4,"\u8189\u818B\u818C\u818D\u818E\u8190\u8192",5,"\u8199\u819A\u819E",4,"\u81A4\u81A5"],["c480","\u81A7\u81A9\u81AB",7,"\u81B4",5,"\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD",6,"\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],["c540","\u81D4",14,"\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE",4,"\u81F5",5,"\u81FD\u81FF\u8203\u8207",4,"\u820E\u820F\u8211\u8213\u8215",5,"\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],["c580","\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250",7,"\u8259\u825B\u825C\u825D\u825E\u8260",7,"\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],["c640","\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],["c680","\u82FA\u82FC",4,"\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D",9,"\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],["c740","\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A",4,"\u8353\u8355",4,"\u835D\u8362\u8370",6,"\u8379\u837A\u837E",6,"\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1",6,"\u83AC\u83AD\u83AE"],["c780","\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],["c840","\u83EE\u83EF\u83F3",4,"\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412",5,"\u8419\u841A\u841B\u841E",5,"\u8429",7,"\u8432",5,"\u8439\u843A\u843B\u843E",7,"\u8447\u8448\u8449"],["c880","\u844A",6,"\u8452",4,"\u8458\u845D\u845E\u845F\u8460\u8462\u8464",4,"\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],["c940","\u847D",4,"\u8483\u8484\u8485\u8486\u848A\u848D\u848F",7,"\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2",12,"\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],["c980","\u84D8",4,"\u84DE\u84E1\u84E2\u84E4\u84E7",4,"\u84ED\u84EE\u84EF\u84F1",10,"\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],["ca40","\u8503",8,"\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522",8,"\u852D",9,"\u853E",4,"\u8544\u8545\u8546\u8547\u854B",10],["ca80","\u8557\u8558\u855A\u855B\u855C\u855D\u855F",4,"\u8565\u8566\u8567\u8569",8,"\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],["cb40","\u8582\u8583\u8586\u8588",6,"\u8590",10,"\u859D",6,"\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1",5,"\u85B8\u85BA",6,"\u85C2",6,"\u85CA",4,"\u85D1\u85D2"],["cb80","\u85D4\u85D6",5,"\u85DD",6,"\u85E5\u85E6\u85E7\u85E8\u85EA",14,"\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],["cc40","\u85F9\u85FA\u85FC\u85FD\u85FE\u8600",4,"\u8606",10,"\u8612\u8613\u8614\u8615\u8617",15,"\u8628\u862A",13,"\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],["cc80","\u8641",11,"\u8652\u8653\u8655",4,"\u865B\u865C\u865D\u865F\u8660\u8661\u8663",7,"\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],["cd40","\u866D\u866F\u8670\u8672",6,"\u8683",6,"\u868E",4,"\u8694\u8696",5,"\u869E",4,"\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB",4,"\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],["cd80","\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],["ce40","\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740",6,"\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A",5,"\u8761\u8762\u8766",7,"\u876F\u8771\u8772\u8773\u8775"],["ce80","\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E",4,"\u8794\u8795\u8796\u8798",6,"\u87A0",4,"\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],["cf40","\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1",4,"\u87C7\u87C8\u87C9\u87CC",4,"\u87D4",6,"\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF",9],["cf80","\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804",5,"\u880B",7,"\u8814\u8817\u8818\u8819\u881A\u881C",4,"\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],["d040","\u8824",13,"\u8833",5,"\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846",5,"\u884E",5,"\u8855\u8856\u8858\u885A",6,"\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],["d080","\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897",4,"\u889D",4,"\u88A3\u88A5",5,"\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],["d140","\u88AC\u88AE\u88AF\u88B0\u88B2",4,"\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA",4,"\u88E0\u88E1\u88E6\u88E7\u88E9",6,"\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903",5],["d180","\u8909\u890B",4,"\u8911\u8914",4,"\u891C",4,"\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],["d240","\u8938",8,"\u8942\u8943\u8945",24,"\u8960",5,"\u8967",19,"\u897C"],["d280","\u897D\u897E\u8980\u8982\u8984\u8985\u8987",26,"\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],["d340","\u89A2",30,"\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4",6],["d380","\u89FB",4,"\u8A01",5,"\u8A08",21,"\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],["d440","\u8A1E",31,"\u8A3F",8,"\u8A49",21],["d480","\u8A5F",25,"\u8A7A",6,"\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],["d540","\u8A81",7,"\u8A8B",7,"\u8A94",46],["d580","\u8AC3",32,"\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],["d640","\u8AE4",34,"\u8B08",27],["d680","\u8B24\u8B25\u8B27",30,"\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],["d740","\u8B46",31,"\u8B67",4,"\u8B6D",25],["d780","\u8B87",24,"\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],["d840","\u8C38",8,"\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D",7,"\u8C56\u8C57\u8C58\u8C59\u8C5B",5,"\u8C63",6,"\u8C6C",6,"\u8C74\u8C75\u8C76\u8C77\u8C7B",6,"\u8C83\u8C84\u8C86\u8C87"],["d880","\u8C88\u8C8B\u8C8D",6,"\u8C95\u8C96\u8C97\u8C99",20,"\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],["d940","\u8CAE",62],["d980","\u8CED",32,"\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],["da40","\u8D0E",14,"\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78",8,"\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C",4,"\u8D92\u8D93\u8D95",9,"\u8DA0\u8DA1"],["da80","\u8DA2\u8DA4",12,"\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],["db40","\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE",6,"\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15",7,"\u8E20\u8E21\u8E24",4,"\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],["db80","\u8E3F\u8E43\u8E45\u8E46\u8E4C",4,"\u8E53",5,"\u8E5A",11,"\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],["dc40","\u8E73\u8E75\u8E77",4,"\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88",6,"\u8E91\u8E92\u8E93\u8E95",6,"\u8E9D\u8E9F",11,"\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3",6,"\u8EBB",7],["dc80","\u8EC3",10,"\u8ECF",21,"\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],["dd40","\u8EE5",62],["dd80","\u8F24",32,"\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],["de40","\u8F45",32,"\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],["de80","\u8FC9",4,"\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],["df40","\u9019\u901C\u9023\u9024\u9025\u9027",5,"\u9030",4,"\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048",4,"\u904E\u9054\u9055\u9056\u9059\u905A\u905C",5,"\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F",4,"\u9076",6,"\u907E\u9081"],["df80","\u9084\u9085\u9086\u9087\u9089\u908A\u908C",4,"\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],["e040","\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105",19,"\u911A\u911B\u911C"],["e080","\u911D\u911F\u9120\u9121\u9124",10,"\u9130\u9132",6,"\u913A",8,"\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],["e140","\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180",4,"\u9186\u9188\u918A\u918E\u918F\u9193",6,"\u919C",5,"\u91A4",5,"\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],["e180","\u91BC",10,"\u91C8\u91CB\u91D0\u91D2",9,"\u91DD",8,"\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],["e240","\u91E6",62],["e280","\u9225",32,"\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967",5,"\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],["e340","\u9246",45,"\u9275",16],["e380","\u9286",7,"\u928F",24,"\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],["e440","\u92A8",5,"\u92AF",24,"\u92C9",31],["e480","\u92E9",32,"\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],["e540","\u930A",51,"\u933F",10],["e580","\u934A",31,"\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],["e640","\u936C",34,"\u9390",27],["e680","\u93AC",29,"\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],["e740","\u93CE",7,"\u93D7",54],["e780","\u940E",32,"\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21",6,"\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F",4,"\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],["e840","\u942F",14,"\u943F",43,"\u946C\u946D\u946E\u946F"],["e880","\u9470",20,"\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],["e940","\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577",7,"\u9580",42],["e980","\u95AB",32,"\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],["ea40","\u95CC",27,"\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623",6,"\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],["ea80","\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D",4,"\u9673\u9678",12,"\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],["eb40","\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D",9,"\u96A8",7,"\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6",9,"\u96E1",6,"\u96EB"],["eb80","\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717",4,"\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],["ec40","\u9721",8,"\u972B\u972C\u972E\u972F\u9731\u9733",4,"\u973A\u973B\u973C\u973D\u973F",18,"\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A",7],["ec80","\u9772\u9775\u9777",4,"\u977D",7,"\u9786",4,"\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799",4,"\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],["ed40","\u979E\u979F\u97A1\u97A2\u97A4",6,"\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5",46],["ed80","\u97E4\u97E5\u97E8\u97EE",4,"\u97F4\u97F7",23,"\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],["ee40","\u980F",62],["ee80","\u984E",32,"\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6",4,"\u94BC\u94BD\u94BF\u94C4\u94C8",6,"\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],["ef40","\u986F",5,"\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8",37,"\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0",4],["ef80","\u98E5\u98E6\u98E9",30,"\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512",4,"\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564",8,"\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],["f040","\u9908",4,"\u990E\u990F\u9911",28,"\u992F",26],["f080","\u994A",9,"\u9956",12,"\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28",4,"\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66",6,"\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],["f140","\u998C\u998E\u999A",10,"\u99A6\u99A7\u99A9",47],["f180","\u99D9",32,"\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],["f240","\u99FA",62],["f280","\u9A39",32,"\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],["f340","\u9A5A",17,"\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9",6,"\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6",4,"\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],["f380","\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0",8,"\u9AFA\u9AFC",6,"\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],["f440","\u9B07\u9B09",5,"\u9B10\u9B11\u9B12\u9B14",10,"\u9B20\u9B21\u9B22\u9B24",10,"\u9B30\u9B31\u9B33",7,"\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55",5],["f480","\u9B5B",32,"\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],["f540","\u9B7C",62],["f580","\u9BBB",32,"\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],["f640","\u9BDC",62],["f680","\u9C1B",32,"\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85",5,"\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E",5,"\u9CA5",4,"\u9CAB\u9CAD\u9CAE\u9CB0",7,"\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],["f740","\u9C3C",62],["f780","\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE",4,"\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC",4,"\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],["f840","\u9CE3",62],["f880","\u9D22",32],["f940","\u9D43",62],["f980","\u9D82",32],["fa40","\u9DA3",62],["fa80","\u9DE2",32],["fb40","\u9E03",27,"\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74",9,"\u9E80"],["fb80","\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C",5,"\u9E94",8,"\u9E9E\u9EA0",5,"\u9EA7\u9EA8\u9EA9\u9EAA"],["fc40","\u9EAB",8,"\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF",4,"\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0",8,"\u9EFA\u9EFD\u9EFF",6],["fc80","\u9F06",4,"\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A",5,"\u9F21\u9F23",8,"\u9F2D\u9F2E\u9F30\u9F31"],["fd40","\u9F32",4,"\u9F38\u9F3A\u9F3C\u9F3F",4,"\u9F45",10,"\u9F52",38],["fd80","\u9F79",5,"\u9F81\u9F82\u9F8D",11,"\u9F9C\u9F9D\u9F9E\u9FA1",4,"\uF92C\uF979\uF995\uF9E7\uF9F1"],["fe40","\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]]});var Ch=F((sK,FL)=>{FL.exports=[["a140","\uE4C6",62],["a180","\uE505",32],["a240","\uE526",62],["a280","\uE565",32],["a2ab","\uE766",5],["a2e3","\u20AC\uE76D"],["a2ef","\uE76E\uE76F"],["a2fd","\uE770\uE771"],["a340","\uE586",62],["a380","\uE5C5",31,"\u3000"],["a440","\uE5E6",62],["a480","\uE625",32],["a4f4","\uE772",10],["a540","\uE646",62],["a580","\uE685",32],["a5f7","\uE77D",7],["a640","\uE6A6",62],["a680","\uE6E5",32],["a6b9","\uE785",7],["a6d9","\uE78D",6],["a6ec","\uE794\uE795"],["a6f3","\uE796"],["a6f6","\uE797",8],["a740","\uE706",62],["a780","\uE745",32],["a7c2","\uE7A0",14],["a7f2","\uE7AF",12],["a896","\uE7BC",10],["a8bc","\u1E3F"],["a8bf","\u01F9"],["a8c1","\uE7C9\uE7CA\uE7CB\uE7CC"],["a8ea","\uE7CD",20],["a958","\uE7E2"],["a95b","\uE7E3"],["a95d","\uE7E4\uE7E5\uE7E6"],["a989","\u303E\u2FF0",11],["a997","\uE7F4",12],["a9f0","\uE801",14],["aaa1","\uE000",93],["aba1","\uE05E",93],["aca1","\uE0BC",93],["ada1","\uE11A",93],["aea1","\uE178",93],["afa1","\uE1D6",93],["d7fa","\uE810",4],["f8a1","\uE234",93],["f9a1","\uE292",93],["faa1","\uE2F0",93],["fba1","\uE34E",93],["fca1","\uE3AC",93],["fda1","\uE40A",93],["fe50","\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],["fe80","\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13",6,"\u4DAE\uE864\uE468",93],["8135f437","\uE7C7"]]});var j1=F((nK,_L)=>{_L.exports={uChars:[128,165,169,178,184,216,226,235,238,244,248,251,253,258,276,284,300,325,329,334,364,463,465,467,469,471,473,475,477,506,594,610,712,716,730,930,938,962,970,1026,1104,1106,8209,8215,8218,8222,8231,8241,8244,8246,8252,8365,8452,8454,8458,8471,8482,8556,8570,8596,8602,8713,8720,8722,8726,8731,8737,8740,8742,8748,8751,8760,8766,8777,8781,8787,8802,8808,8816,8854,8858,8870,8896,8979,9322,9372,9548,9588,9616,9622,9634,9652,9662,9672,9676,9680,9702,9735,9738,9793,9795,11906,11909,11913,11917,11928,11944,11947,11951,11956,11960,11964,11979,12284,12292,12312,12319,12330,12351,12436,12447,12535,12543,12586,12842,12850,12964,13200,13215,13218,13253,13263,13267,13270,13384,13428,13727,13839,13851,14617,14703,14801,14816,14964,15183,15471,15585,16471,16736,17208,17325,17330,17374,17623,17997,18018,18212,18218,18301,18318,18760,18811,18814,18820,18823,18844,18848,18872,19576,19620,19738,19887,40870,59244,59336,59367,59413,59417,59423,59431,59437,59443,59452,59460,59478,59493,63789,63866,63894,63976,63986,64016,64018,64021,64025,64034,64037,64042,65074,65093,65107,65112,65127,65132,65375,65510,65536],gbChars:[0,36,38,45,50,81,89,95,96,100,103,104,105,109,126,133,148,172,175,179,208,306,307,308,309,310,311,312,313,341,428,443,544,545,558,741,742,749,750,805,819,820,7922,7924,7925,7927,7934,7943,7944,7945,7950,8062,8148,8149,8152,8164,8174,8236,8240,8262,8264,8374,8380,8381,8384,8388,8390,8392,8393,8394,8396,8401,8406,8416,8419,8424,8437,8439,8445,8482,8485,8496,8521,8603,8936,8946,9046,9050,9063,9066,9076,9092,9100,9108,9111,9113,9131,9162,9164,9218,9219,11329,11331,11334,11336,11346,11361,11363,11366,11370,11372,11375,11389,11682,11686,11687,11692,11694,11714,11716,11723,11725,11730,11736,11982,11989,12102,12336,12348,12350,12384,12393,12395,12397,12510,12553,12851,12962,12973,13738,13823,13919,13933,14080,14298,14585,14698,15583,15847,16318,16434,16438,16481,16729,17102,17122,17315,17320,17402,17418,17859,17909,17911,17915,17916,17936,17939,17961,18664,18703,18814,18962,19043,33469,33470,33471,33484,33485,33490,33497,33501,33505,33513,33520,33536,33550,37845,37921,37948,38029,38038,38064,38065,38066,38069,38075,38076,38078,39108,39109,39113,39114,39115,39116,39265,39394,189e3]}});var $1=F((rK,kL)=>{kL.exports=[["0","\0",127],["8141","\uAC02\uAC03\uAC05\uAC06\uAC0B",4,"\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25",6,"\uAC2E\uAC32\uAC33\uAC34"],["8161","\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41",9,"\uAC4C\uAC4E",5,"\uAC55"],["8181","\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D",18,"\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B",4,"\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95",6,"\uAC9E\uACA2",5,"\uACAB\uACAD\uACAE\uACB1",6,"\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD",7,"\uACD6\uACD8",7,"\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7",4,"\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07",4,"\uAD0E\uAD10\uAD12\uAD13"],["8241","\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21",7,"\uAD2A\uAD2B\uAD2E",5],["8261","\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D",6,"\uAD46\uAD48\uAD4A",5,"\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],["8281","\uAD59",7,"\uAD62\uAD64",7,"\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83",4,"\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91",10,"\uAD9E",5,"\uADA5",17,"\uADB8",7,"\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9",6,"\uADD2\uADD4",7,"\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5",18],["8341","\uADFA\uADFB\uADFD\uADFE\uAE02",5,"\uAE0A\uAE0C\uAE0E",5,"\uAE15",7],["8361","\uAE1D",18,"\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],["8381","\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57",4,"\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71",6,"\uAE7A\uAE7E",5,"\uAE86",5,"\uAE8D",46,"\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5",6,"\uAECE\uAED2",5,"\uAEDA\uAEDB\uAEDD",8],["8441","\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE",5,"\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD",8],["8461","\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11",18],["8481","\uAF24",7,"\uAF2E\uAF2F\uAF31\uAF33\uAF35",6,"\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A",5,"\uAF51",10,"\uAF5E",5,"\uAF66",18,"\uAF7A",5,"\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89",6,"\uAF92\uAF93\uAF94\uAF96",5,"\uAF9D",26,"\uAFBA\uAFBB\uAFBD\uAFBE"],["8541","\uAFBF\uAFC1",5,"\uAFCA\uAFCC\uAFCF",4,"\uAFD5",6,"\uAFDD",4],["8561","\uAFE2",5,"\uAFEA",5,"\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9",6,"\uB002\uB003"],["8581","\uB005",6,"\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015",6,"\uB01E",9,"\uB029",26,"\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E",29,"\uB07E\uB07F\uB081\uB082\uB083\uB085",6,"\uB08E\uB090\uB092",5,"\uB09B\uB09D\uB09E\uB0A3\uB0A4"],["8641","\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD",6,"\uB0C6\uB0CA",5,"\uB0D2"],["8661","\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9",6,"\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6",10],["8681","\uB0F1",22,"\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E",4,"\uB126\uB127\uB129\uB12A\uB12B\uB12D",6,"\uB136\uB13A",5,"\uB142\uB143\uB145\uB146\uB147\uB149",6,"\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161",22,"\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183",4,"\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],["8741","\uB19E",9,"\uB1A9",15],["8761","\uB1B9",18,"\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],["8781","\uB1D6",5,"\uB1DE\uB1E0",7,"\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1",7,"\uB1FA\uB1FC\uB1FE",5,"\uB206\uB207\uB209\uB20A\uB20D",6,"\uB216\uB218\uB21A",5,"\uB221",18,"\uB235",6,"\uB23D",26,"\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261",6,"\uB26A",4],["8841","\uB26F",4,"\uB276",5,"\uB27D",6,"\uB286\uB287\uB288\uB28A",4],["8861","\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B",4,"\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],["8881","\uB2B8",15,"\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3",4,"\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309",6,"\uB312\uB316",5,"\uB31D",54,"\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],["8941","\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379",6,"\uB382\uB386",5,"\uB38D"],["8961","\uB38E\uB38F\uB391\uB392\uB393\uB395",10,"\uB3A2",5,"\uB3A9\uB3AA\uB3AB\uB3AD"],["8981","\uB3AE",21,"\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9",18,"\uB3FD",18,"\uB411",6,"\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421",6,"\uB42A\uB42C",7,"\uB435",15],["8a41","\uB445",10,"\uB452\uB453\uB455\uB456\uB457\uB459",6,"\uB462\uB464\uB466"],["8a61","\uB467",4,"\uB46D",18,"\uB481\uB482"],["8a81","\uB483",4,"\uB489",19,"\uB49E",5,"\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD",7,"\uB4B6\uB4B8\uB4BA",5,"\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9",6,"\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6",5,"\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7",4,"\uB4EE\uB4F0\uB4F2",5,"\uB4F9",26,"\uB516\uB517\uB519\uB51A\uB51D"],["8b41","\uB51E",5,"\uB526\uB52B",4,"\uB532\uB533\uB535\uB536\uB537\uB539",6,"\uB542\uB546"],["8b61","\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555",6,"\uB55E\uB562",8],["8b81","\uB56B",52,"\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6",4,"\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5",6,"\uB5CE\uB5D2",5,"\uB5D9",18,"\uB5ED",18],["8c41","\uB600",15,"\uB612\uB613\uB615\uB616\uB617\uB619",4],["8c61","\uB61E",6,"\uB626",5,"\uB62D",6,"\uB635",5],["8c81","\uB63B",12,"\uB649",26,"\uB665\uB666\uB667\uB669",50,"\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5",5,"\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2",16],["8d41","\uB6C3",16,"\uB6D5",8],["8d61","\uB6DE",17,"\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],["8d81","\uB6FB",4,"\uB702\uB703\uB704\uB706",33,"\uB72A\uB72B\uB72D\uB72E\uB731",6,"\uB73A\uB73C",7,"\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D",6,"\uB756",9,"\uB761\uB762\uB763\uB765\uB766\uB767\uB769",6,"\uB772\uB774\uB776",5,"\uB77E\uB77F\uB781\uB782\uB783\uB785",6,"\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],["8e41","\uB79F\uB7A1",6,"\uB7AA\uB7AE",5,"\uB7B6\uB7B7\uB7B9",8],["8e61","\uB7C2",4,"\uB7C8\uB7CA",19],["8e81","\uB7DE",13,"\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5",6,"\uB7FE\uB802",4,"\uB80A\uB80B\uB80D\uB80E\uB80F\uB811",6,"\uB81A\uB81C\uB81E",5,"\uB826\uB827\uB829\uB82A\uB82B\uB82D",6,"\uB836\uB83A",5,"\uB841\uB842\uB843\uB845",11,"\uB852\uB854",7,"\uB85E\uB85F\uB861\uB862\uB863\uB865",6,"\uB86E\uB870\uB872",5,"\uB879\uB87A\uB87B\uB87D",7],["8f41","\uB885",7,"\uB88E",17],["8f61","\uB8A0",7,"\uB8A9",6,"\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9",4],["8f81","\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6",5,"\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5",7,"\uB8DE\uB8E0\uB8E2",5,"\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1",6,"\uB8FA\uB8FC\uB8FE",5,"\uB905",18,"\uB919",6,"\uB921",26,"\uB93E\uB93F\uB941\uB942\uB943\uB945",6,"\uB94D\uB94E\uB950\uB952",5],["9041","\uB95A\uB95B\uB95D\uB95E\uB95F\uB961",6,"\uB96A\uB96C\uB96E",5,"\uB976\uB977\uB979\uB97A\uB97B\uB97D"],["9061","\uB97E",5,"\uB986\uB988\uB98B\uB98C\uB98F",15],["9081","\uB99F",12,"\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5",6,"\uB9BE\uB9C0\uB9C2",5,"\uB9CA\uB9CB\uB9CD\uB9D3",4,"\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED",6,"\uB9F6\uB9FB",4,"\uBA02",5,"\uBA09",11,"\uBA16",33,"\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],["9141","\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D",6,"\uBA66\uBA6A",5],["9161","\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79",9,"\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D",5],["9181","\uBA93",20,"\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3",4,"\uBABA\uBABC\uBABE",5,"\uBAC5\uBAC6\uBAC7\uBAC9",14,"\uBADA",33,"\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05",7,"\uBB0E\uBB10\uBB12",5,"\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21",6],["9241","\uBB28\uBB2A\uBB2C",7,"\uBB37\uBB39\uBB3A\uBB3F",4,"\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],["9261","\uBB53\uBB55\uBB56\uBB57\uBB59",7,"\uBB62\uBB64",7,"\uBB6D",4],["9281","\uBB72",21,"\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91",18,"\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD",6,"\uBBB5\uBBB6\uBBB8",7,"\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9",6,"\uBBD1\uBBD2\uBBD4",35,"\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],["9341","\uBC03",4,"\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],["9361","\uBC36\uBC37\uBC39",6,"\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51",8],["9381","\uBC5A\uBC5B\uBC5C\uBC5E",37,"\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F",4,"\uBC96\uBC98\uBC9B",4,"\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9",6,"\uBCB2\uBCB6",5,"\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5",7,"\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD",22,"\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],["9441","\uBCFE",5,"\uBD06\uBD08\uBD0A",5,"\uBD11\uBD12\uBD13\uBD15",8],["9461","\uBD1E",5,"\uBD25",6,"\uBD2D",12],["9481","\uBD3A",5,"\uBD41",6,"\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51",6,"\uBD5A",9,"\uBD65\uBD66\uBD67\uBD69",22,"\uBD82\uBD83\uBD85\uBD86\uBD8B",4,"\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D",6,"\uBDA5",10,"\uBDB1",6,"\uBDB9",24],["9541","\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD",11,"\uBDEA",5,"\uBDF1"],["9561","\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9",6,"\uBE01\uBE02\uBE04\uBE06",5,"\uBE0E\uBE0F\uBE11\uBE12\uBE13"],["9581","\uBE15",6,"\uBE1E\uBE20",35,"\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F",4,"\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B",4,"\uBE72\uBE76",4,"\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85",6,"\uBE8E\uBE92",5,"\uBE9A",13,"\uBEA9",14],["9641","\uBEB8",23,"\uBED2\uBED3"],["9661","\uBED5\uBED6\uBED9",6,"\uBEE1\uBEE2\uBEE6",5,"\uBEED",8],["9681","\uBEF6",10,"\uBF02",5,"\uBF0A",13,"\uBF1A\uBF1E",33,"\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49",6,"\uBF52\uBF53\uBF54\uBF56",44],["9741","\uBF83",16,"\uBF95",8],["9761","\uBF9E",17,"\uBFB1",7],["9781","\uBFB9",11,"\uBFC6",5,"\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5",6,"\uBFDD\uBFDE\uBFE0\uBFE2",89,"\uC03D\uC03E\uC03F"],["9841","\uC040",16,"\uC052",5,"\uC059\uC05A\uC05B"],["9861","\uC05D\uC05E\uC05F\uC061",6,"\uC06A",15],["9881","\uC07A",21,"\uC092\uC093\uC095\uC096\uC097\uC099",6,"\uC0A2\uC0A4\uC0A6",5,"\uC0AE\uC0B1\uC0B2\uC0B7",4,"\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1",6,"\uC0DA\uC0DE",5,"\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED",6,"\uC0F6\uC0F8\uC0FA",5,"\uC101\uC102\uC103\uC105\uC106\uC107\uC109",6,"\uC111\uC112\uC113\uC114\uC116",5,"\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],["9941","\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141",6,"\uC14A\uC14E",5,"\uC156\uC157"],["9961","\uC159\uC15A\uC15B\uC15D",6,"\uC166\uC16A",5,"\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],["9981","\uC17C",8,"\uC186",5,"\uC18F\uC191\uC192\uC193\uC195\uC197",4,"\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1",11,"\uC1BE",5,"\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD",6,"\uC1D5\uC1D6\uC1D9",6,"\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9",6,"\uC1F2\uC1F4",7,"\uC1FE\uC1FF\uC201\uC202\uC203\uC205",6,"\uC20E\uC210\uC212",5,"\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],["9a41","\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235",16],["9a61","\uC246\uC247\uC249",6,"\uC252\uC253\uC255\uC256\uC257\uC259",6,"\uC261\uC262\uC263\uC264\uC266"],["9a81","\uC267",4,"\uC26E\uC26F\uC271\uC272\uC273\uC275",6,"\uC27E\uC280\uC282",5,"\uC28A",5,"\uC291",6,"\uC299\uC29A\uC29C\uC29E",5,"\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE",5,"\uC2B6\uC2B8\uC2BA",33,"\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5",5,"\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301",6,"\uC30A\uC30B\uC30E\uC30F"],["9b41","\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D",6,"\uC326\uC327\uC32A",8],["9b61","\uC333",17,"\uC346",7],["9b81","\uC34E",25,"\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373",4,"\uC37A\uC37B\uC37E",5,"\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D",50,"\uC3C1",22,"\uC3DA"],["9c41","\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3",4,"\uC3EA\uC3EB\uC3EC\uC3EE",5,"\uC3F6\uC3F7\uC3F9",5],["9c61","\uC3FF",8,"\uC409",6,"\uC411",9],["9c81","\uC41B",8,"\uC425",6,"\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435",6,"\uC43E",9,"\uC449",26,"\uC466\uC467\uC469\uC46A\uC46B\uC46D",6,"\uC476\uC477\uC478\uC47A",5,"\uC481",18,"\uC495",6,"\uC49D",12],["9d41","\uC4AA",13,"\uC4B9\uC4BA\uC4BB\uC4BD",8],["9d61","\uC4C6",25],["9d81","\uC4E0",8,"\uC4EA",5,"\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502",9,"\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515",6,"\uC51D",10,"\uC52A\uC52B\uC52D\uC52E\uC52F\uC531",6,"\uC53A\uC53C\uC53E",5,"\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569",6,"\uC572\uC576",5,"\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],["9e41","\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1",7,"\uC5AA",9,"\uC5B6"],["9e61","\uC5B7\uC5BA\uC5BF",4,"\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9",6,"\uC5E2\uC5E4\uC5E6\uC5E7"],["9e81","\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611",6,"\uC61A\uC61D",6,"\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649",6,"\uC652\uC656",5,"\uC65E\uC65F\uC661",10,"\uC66D\uC66E\uC670\uC672",5,"\uC67A\uC67B\uC67D\uC67E\uC67F\uC681",6,"\uC68A\uC68C\uC68E",5,"\uC696\uC697\uC699\uC69A\uC69B\uC69D",6,"\uC6A6"],["9f41","\uC6A8\uC6AA",5,"\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB",4,"\uC6C2\uC6C4\uC6C6",5,"\uC6CE"],["9f61","\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5",6,"\uC6DE\uC6DF\uC6E2",5,"\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],["9f81","\uC6F3",4,"\uC6FA\uC6FB\uC6FC\uC6FE",5,"\uC706\uC707\uC709\uC70A\uC70B\uC70D",6,"\uC716\uC718\uC71A",5,"\uC722\uC723\uC725\uC726\uC727\uC729",6,"\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745",4,"\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761",6,"\uC769\uC76A\uC76C",7,"\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B",4,"\uC7A2\uC7A7",4,"\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],["a041","\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2",5,"\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1",6,"\uC7D9\uC7DA\uC7DB\uC7DC"],["a061","\uC7DE",5,"\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED",13],["a081","\uC7FB",4,"\uC802\uC803\uC805\uC806\uC807\uC809\uC80B",4,"\uC812\uC814\uC817",4,"\uC81E\uC81F\uC821\uC822\uC823\uC825",6,"\uC82E\uC830\uC832",5,"\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841",6,"\uC84A\uC84B\uC84E",5,"\uC855",26,"\uC872\uC873\uC875\uC876\uC877\uC879\uC87B",4,"\uC882\uC884\uC888\uC889\uC88A\uC88E",5,"\uC895",7,"\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],["a141","\uC8A5\uC8A6\uC8A7\uC8A9",18,"\uC8BE\uC8BF\uC8C0\uC8C1"],["a161","\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD",6,"\uC8D6\uC8D8\uC8DA",5,"\uC8E2\uC8E3\uC8E5"],["a181","\uC8E6",14,"\uC8F6",5,"\uC8FE\uC8FF\uC901\uC902\uC903\uC907",4,"\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008",9,"\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],["a241","\uC910\uC912",5,"\uC919",18],["a261","\uC92D",6,"\uC935",18],["a281","\uC948",7,"\uC952\uC953\uC955\uC956\uC957\uC959",6,"\uC962\uC964",7,"\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],["a341","\uC971\uC972\uC973\uC975",6,"\uC97D",10,"\uC98A\uC98B\uC98D\uC98E\uC98F"],["a361","\uC991",6,"\uC99A\uC99C\uC99E",16],["a381","\uC9AF",16,"\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB",4,"\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01",58,"\uFFE6\uFF3D",32,"\uFFE3"],["a441","\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2",5,"\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],["a461","\uCA05\uCA06\uCA07\uCA0A\uCA0E",5,"\uCA15\uCA16\uCA17\uCA19",12],["a481","\uCA26\uCA27\uCA28\uCA2A",28,"\u3131",93],["a541","\uCA47",4,"\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55",6,"\uCA5E\uCA62",5,"\uCA69\uCA6A"],["a561","\uCA6B",17,"\uCA7E",5,"\uCA85\uCA86"],["a581","\uCA87",16,"\uCA99",14,"\u2170",9],["a5b0","\u2160",9],["a5c1","\u0391",16,"\u03A3",6],["a5e1","\u03B1",16,"\u03C3",6],["a641","\uCAA8",19,"\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],["a661","\uCAC6",5,"\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA",5,"\uCAE1",6],["a681","\uCAE8\uCAE9\uCAEA\uCAEB\uCAED",6,"\uCAF5",18,"\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543",7],["a741","\uCB0B",4,"\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19",6,"\uCB22",7],["a761","\uCB2A",22,"\uCB42\uCB43\uCB44"],["a781","\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51",6,"\uCB5A\uCB5B\uCB5C\uCB5E",5,"\uCB65",7,"\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399",9,"\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0",9,"\u3380",4,"\u33BA",5,"\u3390",4,"\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],["a841","\uCB6D",10,"\uCB7A",14],["a861","\uCB89",18,"\uCB9D",6],["a881","\uCBA4",19,"\uCBB9",11,"\xC6\xD0\xAA\u0126"],["a8a6","\u0132"],["a8a8","\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],["a8b1","\u3260",27,"\u24D0",25,"\u2460",14,"\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],["a941","\uCBC5",14,"\uCBD5",10],["a961","\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA",18],["a981","\uCBFD",14,"\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15",6,"\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200",27,"\u249C",25,"\u2474",14,"\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],["aa41","\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31",6,"\uCC3A\uCC3F",4,"\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],["aa61","\uCC4F",4,"\uCC56\uCC5A",5,"\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69",6,"\uCC71\uCC72"],["aa81","\uCC73\uCC74\uCC76",29,"\u3041",82],["ab41","\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1",6,"\uCCAA\uCCAE",5,"\uCCB6\uCCB7\uCCB9"],["ab61","\uCCBA\uCCBB\uCCBD",6,"\uCCC6\uCCC8\uCCCA",5,"\uCCD1\uCCD2\uCCD3\uCCD5",5],["ab81","\uCCDB",8,"\uCCE5",6,"\uCCED\uCCEE\uCCEF\uCCF1",12,"\u30A1",85],["ac41","\uCCFE\uCCFF\uCD00\uCD02",5,"\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11",6,"\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],["ac61","\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D",11,"\uCD3A",4],["ac81","\uCD3F",28,"\uCD5D\uCD5E\uCD5F\u0410",5,"\u0401\u0416",25],["acd1","\u0430",5,"\u0451\u0436",25],["ad41","\uCD61\uCD62\uCD63\uCD65",6,"\uCD6E\uCD70\uCD72",5,"\uCD79",7],["ad61","\uCD81",6,"\uCD89",10,"\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],["ad81","\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA",5,"\uCDB1",18,"\uCDC5"],["ae41","\uCDC6",5,"\uCDCD\uCDCE\uCDCF\uCDD1",16],["ae61","\uCDE2",5,"\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1",6,"\uCDFA\uCDFC\uCDFE",4],["ae81","\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D",6,"\uCE15\uCE16\uCE17\uCE18\uCE1A",5,"\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],["af41","\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36",19],["af61","\uCE4A",13,"\uCE5A\uCE5B\uCE5D\uCE5E\uCE62",5,"\uCE6A\uCE6C"],["af81","\uCE6E",5,"\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D",6,"\uCE86\uCE88\uCE8A",5,"\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],["b041","\uCE9A",5,"\uCEA2\uCEA6",5,"\uCEAE",12],["b061","\uCEBB",5,"\uCEC2",19],["b081","\uCED6",13,"\uCEE6\uCEE7\uCEE9\uCEEA\uCEED",6,"\uCEF6\uCEFA",5,"\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10",7,"\uAC19",4,"\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],["b141","\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09",6,"\uCF12\uCF14\uCF16",5,"\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],["b161","\uCF25",6,"\uCF2E\uCF32",5,"\uCF39",11],["b181","\uCF45",14,"\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D",6,"\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],["b241","\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79",6,"\uCF81\uCF82\uCF83\uCF84\uCF86",5,"\uCF8D"],["b261","\uCF8E",18,"\uCFA2",5,"\uCFA9"],["b281","\uCFAA",5,"\uCFB1",18,"\uCFC5",6,"\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],["b341","\uCFCC",19,"\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],["b361","\uCFEA",5,"\uCFF2\uCFF4\uCFF6",5,"\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005",5],["b381","\uD00B",5,"\uD012",5,"\uD019",19,"\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB",4,"\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],["b441","\uD02E",5,"\uD036\uD037\uD039\uD03A\uD03B\uD03D",6,"\uD046\uD048\uD04A",5],["b461","\uD051\uD052\uD053\uD055\uD056\uD057\uD059",6,"\uD061",10,"\uD06E\uD06F"],["b481","\uD071\uD072\uD073\uD075",6,"\uD07E\uD07F\uD080\uD082",18,"\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB",4,"\uB2F3\uB2F4\uB2F5\uB2F7",4,"\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],["b541","\uD095",14,"\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD",5],["b561","\uD0B3\uD0B6\uD0B8\uD0BA",5,"\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA",5,"\uD0D2\uD0D6",4],["b581","\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5",6,"\uD0EE\uD0F2",5,"\uD0F9",11,"\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],["b641","\uD105",7,"\uD10E",17],["b661","\uD120",15,"\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],["b681","\uD13F\uD142\uD146",5,"\uD14E\uD14F\uD151\uD152\uD153\uD155",6,"\uD15E\uD160\uD162",5,"\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],["b741","\uD16E",13,"\uD17D",6,"\uD185\uD186\uD187\uD189\uD18A"],["b761","\uD18B",20,"\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],["b781","\uD1A9",6,"\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1",14,"\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],["b841","\uD1D0",7,"\uD1D9",17],["b861","\uD1EB",8,"\uD1F5\uD1F6\uD1F7\uD1F9",13],["b881","\uD208\uD20A",5,"\uD211",24,"\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE",4,"\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],["b941","\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235",6,"\uD23E\uD240\uD242",5,"\uD249\uD24A\uD24B\uD24C"],["b961","\uD24D",14,"\uD25D",6,"\uD265\uD266\uD267\uD268"],["b981","\uD269",22,"\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14",4,"\uBC1B",4,"\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],["ba41","\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296",5,"\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5",6,"\uD2AD"],["ba61","\uD2AE\uD2AF\uD2B0\uD2B2",5,"\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3",4,"\uD2CA\uD2CC",5],["ba81","\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD",6,"\uD2E6",9,"\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],["bb41","\uD2FB",4,"\uD302\uD304\uD306",5,"\uD30F\uD311\uD312\uD313\uD315\uD317",4,"\uD31E\uD322\uD323"],["bb61","\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331",6,"\uD33A\uD33E",5,"\uD346\uD347\uD348\uD349"],["bb81","\uD34A",31,"\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],["bc41","\uD36A",17,"\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],["bc61","\uD388\uD389\uD38A\uD38B\uD38E\uD392",5,"\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1",6,"\uD3AA\uD3AC\uD3AE"],["bc81","\uD3AF",4,"\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD",6,"\uD3C6\uD3C7\uD3CA",5,"\uD3D1",5,"\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C",4,"\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],["bd41","\uD3D7\uD3D9",7,"\uD3E2\uD3E4",7,"\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],["bd61","\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402",5,"\uD409",13],["bd81","\uD417",5,"\uD41E",25,"\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],["be41","\uD438",7,"\uD441\uD442\uD443\uD445",14],["be61","\uD454",7,"\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465",7,"\uD46E\uD470\uD471\uD472"],["be81","\uD473",4,"\uD47A\uD47B\uD47D\uD47E\uD481\uD483",4,"\uD48A\uD48C\uD48E",5,"\uD495",8,"\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4",6,"\uC5CC\uC5CE"],["bf41","\uD49E",10,"\uD4AA",14],["bf61","\uD4B9",18,"\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],["bf81","\uD4D6",5,"\uD4DD\uD4DE\uD4E0",7,"\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1",6,"\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC",5,"\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],["c041","\uD4FE",5,"\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D",6,"\uD516\uD518",5],["c061","\uD51E",25],["c081","\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545",6,"\uD54E\uD550\uD552",5,"\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751",7,"\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],["c141","\uD564\uD566\uD567\uD56A\uD56C\uD56E",5,"\uD576\uD577\uD579\uD57A\uD57B\uD57D",6,"\uD586\uD58A\uD58B"],["c161","\uD58C\uD58D\uD58E\uD58F\uD591",19,"\uD5A6\uD5A7"],["c181","\uD5A8",31,"\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],["c241","\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3",4,"\uD5DA\uD5DC\uD5DE",5,"\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],["c261","\uD5EF",4,"\uD5F6\uD5F8\uD5FA",5,"\uD602\uD603\uD605\uD606\uD607\uD609",6,"\uD612"],["c281","\uD616",5,"\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625",7,"\uD62E",9,"\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],["c341","\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D",4],["c361","\uD662",4,"\uD668\uD66A",5,"\uD672\uD673\uD675",11],["c381","\uD681\uD682\uD684\uD686",5,"\uD68E\uD68F\uD691\uD692\uD693\uD695",7,"\uD69E\uD6A0\uD6A2",5,"\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],["c441","\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1",7,"\uD6BA\uD6BC",7,"\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],["c461","\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA",5,"\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9",4],["c481","\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6",5,"\uD6FE\uD6FF\uD701\uD702\uD703\uD705",11,"\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],["c541","\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721",6,"\uD72A\uD72C\uD72E",5,"\uD736\uD737\uD739"],["c561","\uD73A\uD73B\uD73D",6,"\uD745\uD746\uD748\uD74A",5,"\uD752\uD753\uD755\uD75A",4],["c581","\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775",6,"\uD77E\uD77F\uD780\uD782",5,"\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],["c641","\uD78D\uD78E\uD78F\uD791",6,"\uD79A\uD79C\uD79E",5],["c6a1","\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],["c7a1","\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],["c8a1","\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],["caa1","\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],["cba1","\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],["cca1","\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],["cda1","\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],["cea1","\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],["cfa1","\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],["d0a1","\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],["d1a1","\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E",5,"\u90A3\uF914",4,"\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],["d2a1","\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928",4,"\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933",5,"\u99D1\uF939",10,"\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A",7,"\u5AE9\u8A25\u677B\u7D10\uF952",5,"\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],["d3a1","\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],["d4a1","\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],["d5a1","\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],["d6a1","\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],["d7a1","\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],["d8a1","\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],["d9a1","\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],["daa1","\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],["dba1","\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],["dca1","\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],["dda1","\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],["dea1","\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],["dfa1","\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],["e0a1","\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],["e1a1","\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],["e2a1","\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],["e3a1","\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],["e4a1","\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],["e5a1","\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],["e6a1","\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],["e7a1","\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],["e8a1","\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],["e9a1","\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],["eaa1","\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],["eba1","\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],["eca1","\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],["eda1","\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],["eea1","\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],["efa1","\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],["f0a1","\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],["f1a1","\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],["f2a1","\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],["f3a1","\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],["f4a1","\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],["f5a1","\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],["f6a1","\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],["f7a1","\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],["f8a1","\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],["f9a1","\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],["faa1","\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],["fba1","\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],["fca1","\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],["fda1","\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]]});var wh=F((iK,IL)=>{IL.exports=[["0","\0",127],["a140","\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],["a1a1","\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62",4,"\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],["a240","\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581",7,"\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],["a2a1","\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10",9,"\u2160",9,"\u3021",8,"\u5341\u5344\u5345\uFF21",25,"\uFF41",21],["a340","\uFF57\uFF58\uFF59\uFF5A\u0391",16,"\u03A3",6,"\u03B1",16,"\u03C3",6,"\u3105",10],["a3a1","\u3110",25,"\u02D9\u02C9\u02CA\u02C7\u02CB"],["a3e1","\u20AC"],["a440","\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],["a4a1","\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],["a540","\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],["a5a1","\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],["a640","\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],["a6a1","\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],["a740","\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],["a7a1","\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],["a840","\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],["a8a1","\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],["a940","\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],["a9a1","\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],["aa40","\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],["aaa1","\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],["ab40","\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],["aba1","\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],["ac40","\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],["aca1","\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],["ad40","\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],["ada1","\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],["ae40","\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],["aea1","\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],["af40","\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],["afa1","\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],["b040","\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],["b0a1","\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],["b140","\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],["b1a1","\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],["b240","\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],["b2a1","\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],["b340","\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],["b3a1","\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],["b440","\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],["b4a1","\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],["b540","\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],["b5a1","\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],["b640","\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],["b6a1","\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],["b740","\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],["b7a1","\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],["b840","\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],["b8a1","\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],["b940","\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],["b9a1","\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],["ba40","\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],["baa1","\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],["bb40","\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],["bba1","\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],["bc40","\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],["bca1","\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],["bd40","\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],["bda1","\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],["be40","\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],["bea1","\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],["bf40","\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],["bfa1","\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],["c040","\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],["c0a1","\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],["c140","\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],["c1a1","\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],["c240","\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],["c2a1","\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],["c340","\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],["c3a1","\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],["c440","\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],["c4a1","\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],["c540","\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],["c5a1","\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],["c640","\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],["c940","\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],["c9a1","\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],["ca40","\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],["caa1","\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],["cb40","\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],["cba1","\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],["cc40","\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],["cca1","\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],["cd40","\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],["cda1","\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],["ce40","\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],["cea1","\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],["cf40","\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],["cfa1","\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],["d040","\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],["d0a1","\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],["d140","\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],["d1a1","\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],["d240","\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],["d2a1","\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],["d340","\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],["d3a1","\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],["d440","\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],["d4a1","\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],["d540","\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],["d5a1","\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],["d640","\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],["d6a1","\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],["d740","\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],["d7a1","\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],["d840","\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],["d8a1","\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],["d940","\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],["d9a1","\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],["da40","\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],["daa1","\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],["db40","\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],["dba1","\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],["dc40","\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],["dca1","\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],["dd40","\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],["dda1","\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],["de40","\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],["dea1","\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],["df40","\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],["dfa1","\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],["e040","\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],["e0a1","\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],["e140","\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],["e1a1","\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],["e240","\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],["e2a1","\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],["e340","\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],["e3a1","\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],["e440","\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],["e4a1","\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],["e540","\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],["e5a1","\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],["e640","\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],["e6a1","\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],["e740","\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],["e7a1","\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],["e840","\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],["e8a1","\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],["e940","\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],["e9a1","\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],["ea40","\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],["eaa1","\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],["eb40","\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],["eba1","\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],["ec40","\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],["eca1","\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],["ed40","\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],["eda1","\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],["ee40","\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],["eea1","\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],["ef40","\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],["efa1","\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],["f040","\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],["f0a1","\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],["f140","\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],["f1a1","\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],["f240","\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],["f2a1","\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],["f340","\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],["f3a1","\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],["f440","\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],["f4a1","\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],["f540","\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],["f5a1","\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],["f640","\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],["f6a1","\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],["f740","\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],["f7a1","\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],["f840","\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],["f8a1","\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],["f940","\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],["f9a1","\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]]});var W1=F((oK,RL)=>{RL.exports=[["8740","\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],["8767","\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],["87a1","\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],["8840","\u31C0",4,"\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],["88a1","\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],["8940","\u{2A3A9}\u{21145}"],["8943","\u650A"],["8946","\u4E3D\u6EDD\u9D4E\u91DF"],["894c","\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],["89a1","\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],["89ab","\u918C\u78B8\u915E\u80BC"],["89b0","\u8D0B\u80F6\u{209E7}"],["89b5","\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],["89c1","\u6E9A\u823E\u7519"],["89c5","\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],["8a40","\u{27D84}\u5525"],["8a43","\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],["8a64","\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],["8a76","\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],["8aa1","\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],["8aac","\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],["8ab2","\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],["8abb","\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],["8ac9","\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],["8ace","\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],["8adf","\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],["8af6","\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],["8b40","\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],["8b55","\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],["8ba1","\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],["8bde","\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],["8c40","\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],["8ca1","\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],["8ca7","\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],["8cc9","\u9868\u676B\u4276\u573D"],["8cce","\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],["8ce6","\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],["8d40","\u{20B9F}"],["8d42","\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],["8da1","\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],["8e40","\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],["8ea1","\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],["8f40","\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],["8fa1","\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],["9040","\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],["90a1","\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],["9140","\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],["91a1","\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],["9240","\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],["92a1","\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],["9340","\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],["93a1","\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],["9440","\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],["94a1","\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],["9540","\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],["95a1","\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],["9640","\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],["96a1","\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],["9740","\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],["97a1","\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],["9840","\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],["98a1","\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],["9940","\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],["99a1","\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],["9a40","\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],["9aa1","\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],["9b40","\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],["9b62","\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],["9ba1","\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],["9c40","\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],["9ca1","\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],["9d40","\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],["9da1","\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],["9e40","\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],["9ea1","\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],["9ead","\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],["9ec5","\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],["9ef5","\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],["9f40","\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],["9f4f","\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],["9fa1","\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],["9fae","\u9159\u9681\u915C"],["9fb2","\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],["9fc1","\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],["9fc9","\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],["9fdb","\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],["9fe7","\u6BFA\u8818\u7F78"],["9feb","\u5620\u{2A64A}\u8E77\u9F53"],["9ff0","\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],["a040","\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],["a055","\u{2183B}\u{26E05}"],["a058","\u8A7E\u{2251B}"],["a05b","\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],["a063","\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],["a073","\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],["a0a1","\u5D57\u{28BC2}\u8FDA\u{28E39}"],["a0a6","\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],["a0ae","\u77FE"],["a0b0","\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],["a0d4","\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],["a0e2","\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],["a3c0","\u2400",31,"\u2421"],["c6a1","\u2460",9,"\u2474",9,"\u2170",9,"\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041",23],["c740","\u3059",58,"\u30A1\u30A2\u30A3\u30A4"],["c7a1","\u30A5",81,"\u0410",5,"\u0401\u0416",4],["c840","\u041B",26,"\u0451\u0436",25,"\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],["c8a1","\u9FB0\u5188\u9FB1\u{27607}"],["c8cd","\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],["c8f5","\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],["f9fe","\uFFED"],["fa40","\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],["faa1","\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],["fb40","\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],["fba1","\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],["fc40","\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],["fca1","\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],["fd40","\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],["fda1","\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],["fe40","\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],["fea1","\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]]});var G1=F((aK,U1)=>{"use strict";U1.exports={shiftjis:{type:"_dbcs",table:function(){return N1()},encodeAdd:{"\xA5":92,"\u203E":126},encodeSkipVals:[{from:60736,to:63808}]},csshiftjis:"shiftjis",mskanji:"shiftjis",sjis:"shiftjis",windows31j:"shiftjis",ms31j:"shiftjis",xsjis:"shiftjis",windows932:"shiftjis",ms932:"shiftjis",932:"shiftjis",cp932:"shiftjis",eucjp:{type:"_dbcs",table:function(){return M1()},encodeAdd:{"\xA5":92,"\u203E":126}},gb2312:"cp936",gb231280:"cp936",gb23121980:"cp936",csgb2312:"cp936",csiso58gb231280:"cp936",euccn:"cp936",windows936:"cp936",ms936:"cp936",936:"cp936",cp936:{type:"_dbcs",table:function(){return ed()}},gbk:{type:"_dbcs",table:function(){return ed().concat(Ch())}},xgbk:"gbk",isoir58:"gbk",gb18030:{type:"_dbcs",table:function(){return ed().concat(Ch())},gb18030:function(){return j1()},encodeSkipVals:[128],encodeAdd:{"\u20AC":41699}},chinese:"gb18030",windows949:"cp949",ms949:"cp949",949:"cp949",cp949:{type:"_dbcs",table:function(){return $1()}},cseuckr:"cp949",csksc56011987:"cp949",euckr:"cp949",isoir149:"cp949",korean:"cp949",ksc56011987:"cp949",ksc56011989:"cp949",ksc5601:"cp949",windows950:"cp950",ms950:"cp950",950:"cp950",cp950:{type:"_dbcs",table:function(){return wh()}},big5:"big5hkscs",big5hkscs:{type:"_dbcs",table:function(){return wh().concat(W1())},encodeSkipVals:[36457,36463,36478,36523,36532,36557,36560,36695,36713,36718,36811,36862,36973,36986,37060,37084,37105,37311,37551,37552,37553,37554,37585,37959,38090,38361,38652,39285,39798,39800,39803,39878,39902,39916,39926,40002,40019,40034,40040,40043,40055,40124,40125,40144,40279,40282,40388,40431,40443,40617,40687,40701,40800,40907,41079,41180,41183,36812,37576,38468,38637,41636,41637,41639,41638,41676,41678]},cnbig5:"big5hkscs",csbig5:"big5hkscs",xxbig5:"big5hkscs"}});var H1=F((q1,sd)=>{"use strict";var TL=q0(),z1=[b1(),S1(),A1(),F1(),k1(),R1(),P1(),B1(),G1()];for(td=0;td<z1.length;td++)sd=z1[td],TL(q1,sd);var sd,td});var Z1=F((cK,K1)=>{"use strict";var V1=Hn().Buffer;K1.exports=function(t){var e=t.Transform;function s(r,i){this.conv=r,i=i||{},i.decodeStrings=!1,e.call(this,i)}s.prototype=Object.create(e.prototype,{constructor:{value:s}}),s.prototype._transform=function(r,i,o){if(typeof r!="string")return o(new Error("Iconv encoding stream needs strings as its input."));try{var a=this.conv.write(r);a&&a.length&&this.push(a),o()}catch(c){o(c)}},s.prototype._flush=function(r){try{var i=this.conv.end();i&&i.length&&this.push(i),r()}catch(o){r(o)}},s.prototype.collect=function(r){var i=[];return this.on("error",r),this.on("data",function(o){i.push(o)}),this.on("end",function(){r(null,V1.concat(i))}),this};function n(r,i){this.conv=r,i=i||{},i.encoding=this.encoding="utf8",e.call(this,i)}return n.prototype=Object.create(e.prototype,{constructor:{value:n}}),n.prototype._transform=function(r,i,o){if(!V1.isBuffer(r)&&!(r instanceof Uint8Array))return o(new Error("Iconv decoding stream needs buffers as its input."));try{var a=this.conv.write(r);a&&a.length&&this.push(a,this.encoding),o()}catch(c){o(c)}},n.prototype._flush=function(r){try{var i=this.conv.end();i&&i.length&&this.push(i,this.encoding),r()}catch(o){r(o)}},n.prototype.collect=function(r){var i="";return this.on("error",r),this.on("data",function(o){i+=o}),this.on("end",function(){r(null,i)}),this},{IconvLiteEncoderStream:s,IconvLiteDecoderStream:n}}});var Q1=F((uK,Ae)=>{"use strict";var Y1=Hn().Buffer,J1=g1(),PL=q0();Ae.exports.encodings=null;Ae.exports.defaultCharUnicode="\uFFFD";Ae.exports.defaultCharSingleByte="?";Ae.exports.encode=function(e,s,n){e=""+(e||"");var r=Ae.exports.getEncoder(s,n),i=r.write(e),o=r.end();return o&&o.length>0?Y1.concat([i,o]):i};Ae.exports.decode=function(e,s,n){typeof e=="string"&&(Ae.exports.skipDecodeWarning||(console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),Ae.exports.skipDecodeWarning=!0),e=Y1.from(""+(e||""),"binary"));var r=Ae.exports.getDecoder(s,n),i=r.write(e),o=r.end();return o?i+o:i};Ae.exports.encodingExists=function(e){try{return Ae.exports.getCodec(e),!0}catch{return!1}};Ae.exports.toEncoding=Ae.exports.encode;Ae.exports.fromEncoding=Ae.exports.decode;Ae.exports._codecDataCache={__proto__:null};Ae.exports.getCodec=function(e){if(!Ae.exports.encodings){var s=H1();Ae.exports.encodings={__proto__:null},PL(Ae.exports.encodings,s)}for(var n=Ae.exports._canonicalizeEncoding(e),r={};;){var i=Ae.exports._codecDataCache[n];if(i)return i;var o=Ae.exports.encodings[n];switch(typeof o){case"string":n=o;break;case"object":for(var a in o)r[a]=o[a];r.encodingName||(r.encodingName=n),n=o.type;break;case"function":return r.encodingName||(r.encodingName=n),i=new o(r,Ae.exports),Ae.exports._codecDataCache[r.encodingName]=i,i;default:throw new Error("Encoding not recognized: '"+e+"' (searched as: '"+n+"')")}}};Ae.exports._canonicalizeEncoding=function(t){return(""+t).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")};Ae.exports.getEncoder=function(e,s){var n=Ae.exports.getCodec(e),r=new n.encoder(s,n);return n.bomAware&&s&&s.addBOM&&(r=new J1.PrependBOM(r,s)),r};Ae.exports.getDecoder=function(e,s){var n=Ae.exports.getCodec(e),r=new n.decoder(s,n);return n.bomAware&&!(s&&s.stripBOM===!1)&&(r=new J1.StripBOM(r,s)),r};Ae.exports.enableStreamingAPI=function(e){if(!Ae.exports.supportsStreams){var s=Z1()(e);Ae.exports.IconvLiteEncoderStream=s.IconvLiteEncoderStream,Ae.exports.IconvLiteDecoderStream=s.IconvLiteDecoderStream,Ae.exports.encodeStream=function(r,i){return new Ae.exports.IconvLiteEncoderStream(Ae.exports.getEncoder(r,i),i)},Ae.exports.decodeStream=function(r,i){return new Ae.exports.IconvLiteDecoderStream(Ae.exports.getDecoder(r,i),i)},Ae.exports.supportsStreams=!0}};var nd;try{nd=require("stream")}catch{}nd&&nd.Transform?Ae.exports.enableStreamingAPI(nd):Ae.exports.encodeStream=Ae.exports.decodeStream=function(){throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.")}});var Hw=F((WZ,qw)=>{var Uh=class{constructor(e,s,n){this.etaBufferLength=e||100,this.valueBuffer=[n],this.timeBuffer=[s],this.eta="0"}update(e,s,n){this.valueBuffer.push(s),this.timeBuffer.push(e),this.calculate(n-s)}getTime(){return this.eta}calculate(e){let s=this.valueBuffer.length,n=Math.min(this.etaBufferLength,s),r=this.valueBuffer[s-1]-this.valueBuffer[s-n],i=this.timeBuffer[s-1]-this.timeBuffer[s-n],o=r/i;this.valueBuffer=this.valueBuffer.slice(-this.etaBufferLength),this.timeBuffer=this.timeBuffer.slice(-this.etaBufferLength);let a=Math.ceil(e/o/1e3);isNaN(a)?this.eta="NULL":isFinite(a)?a>1e7?this.eta="INF":a<0?this.eta=0:this.eta=a:this.eta="INF"}};qw.exports=Uh});var zh=F((UZ,Vw)=>{var Ki=require("readline"),Gh=class{constructor(e){this.stream=e,this.linewrap=!0,this.dy=0}cursorSave(){this.stream.isTTY&&this.stream.write("\x1B7")}cursorRestore(){this.stream.isTTY&&this.stream.write("\x1B8")}cursor(e){this.stream.isTTY&&(e?this.stream.write("\x1B[?25h"):this.stream.write("\x1B[?25l"))}cursorTo(e=null,s=null){this.stream.isTTY&&Ki.cursorTo(this.stream,e,s)}cursorRelative(e=null,s=null){this.stream.isTTY&&(this.dy=this.dy+s,Ki.moveCursor(this.stream,e,s))}cursorRelativeReset(){this.stream.isTTY&&(Ki.moveCursor(this.stream,0,-this.dy),Ki.cursorTo(this.stream,0,null),this.dy=0)}clearRight(){this.stream.isTTY&&Ki.clearLine(this.stream,1)}clearLine(){this.stream.isTTY&&Ki.clearLine(this.stream,0)}clearBottom(){this.stream.isTTY&&Ki.clearScreenDown(this.stream)}newline(){this.stream.write(`
94
- `),this.dy++}write(e,s=!1){this.linewrap===!0&&s===!1?this.stream.write(e.substr(0,this.getWidth())):this.stream.write(e)}lineWrapping(e){this.stream.isTTY&&(this.linewrap=e,e?this.stream.write("\x1B[?7h"):this.stream.write("\x1B[?7l"))}isTTY(){return this.stream.isTTY===!0}getWidth(){return this.stream.columns||(this.stream.isTTY?80:200)}};Vw.exports=Gh});var qh=F((GZ,Kw)=>{Kw.exports=function(e,s,n){if(s.autopadding!==!0)return e;function r(i,o){return(s.autopaddingChar+i).slice(-o)}switch(n){case"percentage":return r(e,3);default:return e}}});var Hh=F((zZ,Zw)=>{Zw.exports=function(e,s){let n=Math.round(e*s.barsize),r=s.barsize-n;return s.barCompleteString.substr(0,n)+s.barGlue+s.barIncompleteString.substr(0,r)}});var Vh=F((qZ,Yw)=>{Yw.exports=function(e,s,n){function r(o){return n?n*Math.round(o/n):o}function i(o){return(s.autopaddingChar+o).slice(-2)}return e>3600?i(Math.floor(e/3600))+"h"+i(r(e%3600/60))+"m":e>60?i(Math.floor(e/60))+"m"+i(r(e%60))+"s":e>10?i(r(e))+"s":i(e)+"s"}});var Kh=F((HZ,Jw)=>{var A7=Hc(),E7=qh(),F7=Hh(),_7=Vh();Jw.exports=function(e,s,n){let r=e.format,i=e.formatTime||_7,o=e.formatValue||E7,a=e.formatBar||F7,c=Math.floor(s.progress*100)+"",u=s.stopTime||Date.now(),l=Math.round((u-s.startTime)/1e3),d=Object.assign({},n,{bar:a(s.progress,e),percentage:o(c,e,"percentage"),total:o(s.total,e,"total"),value:o(s.value,e,"value"),eta:o(s.eta,e,"eta"),eta_formatted:i(s.eta,e,5),duration:o(l,e,"duration"),duration_formatted:i(l,e,1)});r=r.replace(/\{(\w+)\}/g,function(m,g){return typeof d[g]<"u"?d[g]:m});let f=Math.max(0,s.maxWidth-A7(r)-2),p=Math.floor(f/2);switch(e.align){case"right":r=f>0?" ".repeat(f)+r:r;break;case"center":r=p>0?" ".repeat(p)+r:r;break;case"left":default:break}return r}});var Fd=F((VZ,Qw)=>{function et(t,e){return typeof t>"u"||t===null?e:t}Qw.exports={parse:function(e,s){let n={},r=Object.assign({},s,e);return n.throttleTime=1e3/et(r.fps,10),n.stream=et(r.stream,process.stderr),n.terminal=et(r.terminal,null),n.clearOnComplete=et(r.clearOnComplete,!1),n.stopOnComplete=et(r.stopOnComplete,!1),n.barsize=et(r.barsize,40),n.align=et(r.align,"left"),n.hideCursor=et(r.hideCursor,!1),n.linewrap=et(r.linewrap,!1),n.barGlue=et(r.barGlue,""),n.barCompleteChar=et(r.barCompleteChar,"="),n.barIncompleteChar=et(r.barIncompleteChar,"-"),n.format=et(r.format,"progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total}"),n.formatTime=et(r.formatTime,null),n.formatValue=et(r.formatValue,null),n.formatBar=et(r.formatBar,null),n.etaBufferLength=et(r.etaBuffer,10),n.etaAsynchronousUpdate=et(r.etaAsynchronousUpdate,!1),n.progressCalculationRelative=et(r.progressCalculationRelative,!1),n.synchronousUpdate=et(r.synchronousUpdate,!0),n.noTTYOutput=et(r.noTTYOutput,!1),n.notTTYSchedule=et(r.notTTYSchedule,2e3),n.emptyOnZero=et(r.emptyOnZero,!1),n.forceRedraw=et(r.forceRedraw,!1),n.autopadding=et(r.autopadding,!1),n.gracefulExit=et(r.gracefulExit,!1),n},assignDerivedOptions:function(e){return e.barCompleteString=e.barCompleteChar.repeat(e.barsize+1),e.barIncompleteString=e.barIncompleteChar.repeat(e.barsize+1),e.autopaddingChar=e.autopadding?et(e.autopaddingChar," "):"",e}}});var Zh=F((ZZ,eA)=>{var Xw=Hw(),k7=zh(),I7=Kh(),R7=Fd(),T7=require("events");eA.exports=class extends T7{constructor(e){super(),this.options=R7.assignDerivedOptions(e),this.terminal=this.options.terminal?this.options.terminal:new k7(this.options.stream),this.value=0,this.startValue=0,this.total=100,this.lastDrawnString=null,this.startTime=null,this.stopTime=null,this.lastRedraw=Date.now(),this.eta=new Xw(this.options.etaBufferLength,0,0),this.payload={},this.isActive=!1,this.formatter=typeof this.options.format=="function"?this.options.format:I7}render(e=!1){let s={progress:this.getProgress(),eta:this.eta.getTime(),startTime:this.startTime,stopTime:this.stopTime,total:this.total,value:this.value,maxWidth:this.terminal.getWidth()};this.options.etaAsynchronousUpdate&&this.updateETA();let n=this.formatter(this.options,s,this.payload);(e||this.options.forceRedraw||this.options.noTTYOutput&&!this.terminal.isTTY()||this.lastDrawnString!=n)&&(this.emit("redraw-pre"),this.terminal.cursorTo(0,null),this.terminal.write(n),this.terminal.clearRight(),this.lastDrawnString=n,this.lastRedraw=Date.now(),this.emit("redraw-post"))}start(e,s,n){this.value=s||0,this.total=typeof e<"u"&&e>=0?e:100,this.startValue=s||0,this.payload=n||{},this.startTime=Date.now(),this.stopTime=null,this.lastDrawnString="",this.eta=new Xw(this.options.etaBufferLength,this.startTime,this.value),this.isActive=!0,this.emit("start",e,s)}stop(){this.isActive=!1,this.stopTime=Date.now(),this.emit("stop",this.total,this.value)}update(e,s={}){typeof e=="number"&&(this.value=e,this.eta.update(Date.now(),e,this.total));let n=(typeof e=="object"?e:s)||{};this.emit("update",this.total,this.value);for(let r in n)this.payload[r]=n[r];this.value>=this.getTotal()&&this.options.stopOnComplete&&this.stop()}getProgress(){let e=this.value/this.total;return this.options.progressCalculationRelative&&(e=(this.value-this.startValue)/(this.total-this.startValue)),isNaN(e)&&(e=this.options&&this.options.emptyOnZero?0:1),e=Math.min(Math.max(e,0),1),e}increment(e=1,s={}){typeof e=="object"?this.update(this.value+1,e):this.update(this.value+e,s)}getTotal(){return this.total}setTotal(e){typeof e<"u"&&e>=0&&(this.total=e)}updateETA(){this.eta.update(Date.now(),this.value,this.total)}}});var sA=F((JZ,tA)=>{var P7=Zh(),O7=Fd();tA.exports=class extends P7{constructor(e,s){super(O7.parse(e,s)),this.timer=null,this.options.noTTYOutput&&this.terminal.isTTY()===!1&&(this.options.synchronousUpdate=!1),this.schedulingRate=this.terminal.isTTY()?this.options.throttleTime:this.options.notTTYSchedule,this.sigintCallback=null}render(){this.timer&&(clearTimeout(this.timer),this.timer=null),super.render(),this.options.noTTYOutput&&this.terminal.isTTY()===!1&&this.terminal.newline(),this.timer=setTimeout(this.render.bind(this),this.schedulingRate)}update(e,s){this.timer&&(super.update(e,s),this.options.synchronousUpdate&&this.lastRedraw+this.options.throttleTime*2<Date.now()&&this.render())}start(e,s,n){this.options.noTTYOutput===!1&&this.terminal.isTTY()===!1||(this.sigintCallback===null&&this.options.gracefulExit&&(this.sigintCallback=this.stop.bind(this),process.once("SIGINT",this.sigintCallback),process.once("SIGTERM",this.sigintCallback)),this.terminal.cursorSave(),this.options.hideCursor===!0&&this.terminal.cursor(!1),this.options.linewrap===!1&&this.terminal.lineWrapping(!1),super.start(e,s,n),this.render())}stop(){this.timer&&(this.sigintCallback&&(process.removeListener("SIGINT",this.sigintCallback),process.removeListener("SIGTERM",this.sigintCallback),this.sigintCallback=null),this.render(),super.stop(),clearTimeout(this.timer),this.timer=null,this.options.hideCursor===!0&&this.terminal.cursor(!0),this.options.linewrap===!1&&this.terminal.lineWrapping(!0),this.terminal.cursorRestore(),this.options.clearOnComplete?(this.terminal.cursorTo(0,null),this.terminal.clearLine()):this.terminal.newline())}}});var rA=F((XZ,nA)=>{var L7=zh(),B7=Zh(),N7=Fd(),M7=require("events");nA.exports=class extends M7{constructor(e,s){super(),this.bars=[],this.options=N7.parse(e,s),this.options.synchronousUpdate=!1,this.terminal=this.options.terminal?this.options.terminal:new L7(this.options.stream),this.timer=null,this.isActive=!1,this.schedulingRate=this.terminal.isTTY()?this.options.throttleTime:this.options.notTTYSchedule,this.loggingBuffer=[],this.sigintCallback=null}create(e,s,n,r={}){let i=new B7(Object.assign({},this.options,{terminal:this.terminal},r));return this.bars.push(i),this.options.noTTYOutput===!1&&this.terminal.isTTY()===!1||(this.sigintCallback===null&&this.options.gracefulExit&&(this.sigintCallback=this.stop.bind(this),process.once("SIGINT",this.sigintCallback),process.once("SIGTERM",this.sigintCallback)),this.isActive||(this.options.hideCursor===!0&&this.terminal.cursor(!1),this.options.linewrap===!1&&this.terminal.lineWrapping(!1),this.timer=setTimeout(this.update.bind(this),this.schedulingRate)),this.isActive=!0,i.start(e,s,n),this.emit("start")),i}remove(e){let s=this.bars.indexOf(e);return s<0?!1:(this.bars.splice(s,1),this.update(),this.terminal.newline(),this.terminal.clearBottom(),!0)}update(){if(this.timer&&(clearTimeout(this.timer),this.timer=null),this.emit("update-pre"),this.terminal.cursorRelativeReset(),this.emit("redraw-pre"),this.loggingBuffer.length>0)for(this.terminal.clearLine();this.loggingBuffer.length>0;)this.terminal.write(this.loggingBuffer.shift(),!0);for(let e=0;e<this.bars.length;e++)e>0&&this.terminal.newline(),this.bars[e].render();this.emit("redraw-post"),this.options.noTTYOutput&&this.terminal.isTTY()===!1&&(this.terminal.newline(),this.terminal.newline()),this.timer=setTimeout(this.update.bind(this),this.schedulingRate),this.emit("update-post"),this.options.stopOnComplete&&!this.bars.find(e=>e.isActive)&&this.stop()}stop(){if(clearTimeout(this.timer),this.timer=null,this.sigintCallback&&(process.removeListener("SIGINT",this.sigintCallback),process.removeListener("SIGTERM",this.sigintCallback),this.sigintCallback=null),this.isActive=!1,this.options.hideCursor===!0&&this.terminal.cursor(!0),this.options.linewrap===!1&&this.terminal.lineWrapping(!0),this.terminal.cursorRelativeReset(),this.emit("stop-pre-clear"),this.options.clearOnComplete)this.terminal.clearBottom();else{for(let e=0;e<this.bars.length;e++)e>0&&this.terminal.newline(),this.bars[e].render(),this.bars[e].stop();this.terminal.newline()}this.emit("stop")}log(e){this.loggingBuffer.push(e)}}});var oA=F((eY,iA)=>{iA.exports={format:"progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"=",barIncompleteChar:"-"}});var cA=F((tY,aA)=>{aA.exports={format:" {bar} {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u2588",barIncompleteChar:"\u2591"}});var lA=F((sY,uA)=>{uA.exports={format:" \x1B[90m{bar}\x1B[0m {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u2588",barIncompleteChar:"\u2591"}});var pA=F((nY,dA)=>{dA.exports={format:" {bar}\u25A0 {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u25A0",barIncompleteChar:" "}});var mA=F((rY,fA)=>{var j7=oA(),$7=cA(),W7=lA(),U7=pA();fA.exports={legacy:j7,shades_classic:$7,shades_grey:W7,rect:U7}});var xA=F((iY,gA)=>{var hA=sA(),G7=rA(),z7=mA(),q7=Kh(),H7=qh(),V7=Hh(),K7=Vh();gA.exports={Bar:hA,SingleBar:hA,MultiBar:G7,Presets:z7,Format:{Formatter:q7,BarFormat:V7,ValueFormat:H7,TimeFormat:K7}}});var kF=F((Nte,Z9)=>{Z9.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var ag=F((Mte,RF)=>{"use strict";var Bd=Object.assign({},kF()),IF=Object.keys(Bd);Object.defineProperty(Bd,"random",{get(){let t=Math.floor(Math.random()*IF.length),e=IF[t];return Bd[e]}});RF.exports=Bd});var NF=F((Yte,BF)=>{BF.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});var wg=F((Qse,_B)=>{_B.exports={name:"cdk-insights",version:"0.15.7",description:"AWS CDK security and cost analysis tool with AI-powered insights",main:"dist/index.js",types:"dist/index.d.ts",bin:{"cdk-insights":"dist/entry.js"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.js"}},files:["dist/**/*","README.md","LICENSE"],scripts:{test:"vitest --run",lint:"biome lint src/",format:"biome format --write src/",check:"biome check src/",build:"ts-node scripts/build.ts",start:"node dist/index.js",dev:"ts-node src/index.ts",prepare:"husky install && npm run build","start:dev":"CDK_ENV=local ts-node src/index.ts","ai-run":"ts-node src/index.ts",unlink:"npm unlink -g cdk-insights",link:"npm link","prepare:test":"npm run unlink && npm run build && npm run link","deploy:dev":"STAGE=dev cdk deploy","destroy:dev":"STAGE=dev cdk destroy","release:patch":"bumper release patch","release:minor":"bumper release minor","release:major":"bumper release major","release:dry-run":"bumper release patch --dry-run","changelog:preview":"bumper preview","changelog:generate":"bumper generate","validate:commits":"bumper validate","release:check":"npm run validate:commits && npm run test && npm run build","release:full":"npm run release:check && npm run changelog:generate","setup:bumper":"bumper setup","publish:beta":"npm run build && npm publish --tag beta && npm dist-tag add cdk-insights@$npm_package_version latest","publish:alpha":"npm run build && npm publish --tag alpha","publish:canary":"npm run build && npm publish --tag canary","publish:latest":"npm run build && npm publish --tag latest","version:beta":"npm version prerelease --preid=beta","version:alpha":"npm version prerelease --preid=alpha","version:rc":"npm version prerelease --preid=rc","cdk-insights":"node scripts/cdk-insights-wrapper.js",scan:"node scripts/cdk-insights-wrapper.js scan","scan:all":"node scripts/cdk-insights-wrapper.js scan --all","scan:json":"node scripts/cdk-insights-wrapper.js scan --format json","scan:markdown":"node scripts/cdk-insights-wrapper.js scan --format markdown","scan:summary":"node scripts/cdk-insights-wrapper.js scan --format summary","scan:with-issues":"node scripts/cdk-insights-wrapper.js scan --withIssue","cache:clear":"node scripts/cdk-insights-wrapper.js cache clear","cache:status":"node scripts/cdk-insights-wrapper.js cache status","demo:progress":"ts-node src/examples/progress-demo.ts","demo:single-line":"ts-node src/examples/single-line-progress-demo.ts","test:line-clearing":"ts-node src/examples/line-clearing-test.ts"},publishConfig:{access:"public"},keywords:["aws","cdk","cloudformation","analysis","security","cost-optimization","static-analysis","devops","infrastructure","aws-cdk","cloud-security","compliance"],author:"Lee Priest <lee@cdkinsights.dev>",license:"MIT",homepage:"https://github.com/TheLeePriest/cdk-insights",bugs:"https://github.com/TheLeePriest/cdk-insights/issues",repository:{type:"git",url:"git+https://github.com/TheLeePriest/cdk-insights.git"},dependencies:{"@inquirer/prompts":"^7.4.1","@middy/core":"^6.1.6","@types/glob":"^8.1.0",axios:"^1.8.4",chalk:"^5.4.1","cli-progress":"^3.12.0","cli-table3":"^0.6.5",dotenv:"^16.5.0",envolution:"^1.4.1",glob:"^11.0.3",ora:"^8.2.0",strogger:"^2.0.3",yargs:"^17.7.2",zod:"^3.23.8"},devDependencies:{"@aws-sdk/client-dynamodb":"^3.788.0","@biomejs/biome":"^2.0.6","@commitlint/cli":"^19.8.1","@commitlint/config-conventional":"^19.8.1","@types/cli-progress":"^3.11.6","@types/jsonwebtoken":"^9.0.9","@types/node":"^22.14.1","@types/yargs":"^17.0.33","aws-cdk":"^2.1010.0","bumper-cli":"^1.6.0",esbuild:"^0.25.2",husky:"^8.0.3","ts-node":"^10.9.2",typescript:"^5.8.3",vitest:"^3.1.1"},peerDependencies:{"aws-cdk-lib":"^2.190.0","cdk-nag":"^2.35.73",constructs:"^10.4.2"},optionalDependencies:{"@aws-solutions-constructs/aws-apigateway-lambda":"^2.0.0","@aws-solutions-constructs/aws-lambda-stepfunctions":"^2.0.0","@aws-solutions-constructs/aws-s3-lambda":"^2.0.0"}}});var $6=V(ip()),tp=require("node:child_process"),W6=V(require("node:path")),U6=require("node:util"),G6=V(xp());var nu=require("assert");var K_={right:X_,center:ek},Z_=0,Yc=1,Y_=2,Jc=3,yp=class{constructor(e){var s;this.width=e.width,this.wrap=(s=e.wrap)!==null&&s!==void 0?s:!0,this.rows=[]}span(...e){let s=this.div(...e);s.span=!0}resetOutput(){this.rows=[]}div(...e){if(e.length===0&&this.div(""),this.wrap&&this.shouldApplyLayoutDSL(...e)&&typeof e[0]=="string")return this.applyLayoutDSL(e[0]);let s=e.map(n=>typeof n=="string"?this.colFromString(n):n);return this.rows.push(s),s}shouldApplyLayoutDSL(...e){return e.length===1&&typeof e[0]=="string"&&/[\t\n]/.test(e[0])}applyLayoutDSL(e){let s=e.split(`
94
+ `),this.dy++}write(e,s=!1){this.linewrap===!0&&s===!1?this.stream.write(e.substr(0,this.getWidth())):this.stream.write(e)}lineWrapping(e){this.stream.isTTY&&(this.linewrap=e,e?this.stream.write("\x1B[?7h"):this.stream.write("\x1B[?7l"))}isTTY(){return this.stream.isTTY===!0}getWidth(){return this.stream.columns||(this.stream.isTTY?80:200)}};Vw.exports=Gh});var qh=F((GZ,Kw)=>{Kw.exports=function(e,s,n){if(s.autopadding!==!0)return e;function r(i,o){return(s.autopaddingChar+i).slice(-o)}switch(n){case"percentage":return r(e,3);default:return e}}});var Hh=F((zZ,Zw)=>{Zw.exports=function(e,s){let n=Math.round(e*s.barsize),r=s.barsize-n;return s.barCompleteString.substr(0,n)+s.barGlue+s.barIncompleteString.substr(0,r)}});var Vh=F((qZ,Yw)=>{Yw.exports=function(e,s,n){function r(o){return n?n*Math.round(o/n):o}function i(o){return(s.autopaddingChar+o).slice(-2)}return e>3600?i(Math.floor(e/3600))+"h"+i(r(e%3600/60))+"m":e>60?i(Math.floor(e/60))+"m"+i(r(e%60))+"s":e>10?i(r(e))+"s":i(e)+"s"}});var Kh=F((HZ,Jw)=>{var A7=Hc(),E7=qh(),F7=Hh(),_7=Vh();Jw.exports=function(e,s,n){let r=e.format,i=e.formatTime||_7,o=e.formatValue||E7,a=e.formatBar||F7,c=Math.floor(s.progress*100)+"",u=s.stopTime||Date.now(),l=Math.round((u-s.startTime)/1e3),d=Object.assign({},n,{bar:a(s.progress,e),percentage:o(c,e,"percentage"),total:o(s.total,e,"total"),value:o(s.value,e,"value"),eta:o(s.eta,e,"eta"),eta_formatted:i(s.eta,e,5),duration:o(l,e,"duration"),duration_formatted:i(l,e,1)});r=r.replace(/\{(\w+)\}/g,function(m,g){return typeof d[g]<"u"?d[g]:m});let f=Math.max(0,s.maxWidth-A7(r)-2),p=Math.floor(f/2);switch(e.align){case"right":r=f>0?" ".repeat(f)+r:r;break;case"center":r=p>0?" ".repeat(p)+r:r;break;case"left":default:break}return r}});var Fd=F((VZ,Qw)=>{function et(t,e){return typeof t>"u"||t===null?e:t}Qw.exports={parse:function(e,s){let n={},r=Object.assign({},s,e);return n.throttleTime=1e3/et(r.fps,10),n.stream=et(r.stream,process.stderr),n.terminal=et(r.terminal,null),n.clearOnComplete=et(r.clearOnComplete,!1),n.stopOnComplete=et(r.stopOnComplete,!1),n.barsize=et(r.barsize,40),n.align=et(r.align,"left"),n.hideCursor=et(r.hideCursor,!1),n.linewrap=et(r.linewrap,!1),n.barGlue=et(r.barGlue,""),n.barCompleteChar=et(r.barCompleteChar,"="),n.barIncompleteChar=et(r.barIncompleteChar,"-"),n.format=et(r.format,"progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total}"),n.formatTime=et(r.formatTime,null),n.formatValue=et(r.formatValue,null),n.formatBar=et(r.formatBar,null),n.etaBufferLength=et(r.etaBuffer,10),n.etaAsynchronousUpdate=et(r.etaAsynchronousUpdate,!1),n.progressCalculationRelative=et(r.progressCalculationRelative,!1),n.synchronousUpdate=et(r.synchronousUpdate,!0),n.noTTYOutput=et(r.noTTYOutput,!1),n.notTTYSchedule=et(r.notTTYSchedule,2e3),n.emptyOnZero=et(r.emptyOnZero,!1),n.forceRedraw=et(r.forceRedraw,!1),n.autopadding=et(r.autopadding,!1),n.gracefulExit=et(r.gracefulExit,!1),n},assignDerivedOptions:function(e){return e.barCompleteString=e.barCompleteChar.repeat(e.barsize+1),e.barIncompleteString=e.barIncompleteChar.repeat(e.barsize+1),e.autopaddingChar=e.autopadding?et(e.autopaddingChar," "):"",e}}});var Zh=F((ZZ,eA)=>{var Xw=Hw(),k7=zh(),I7=Kh(),R7=Fd(),T7=require("events");eA.exports=class extends T7{constructor(e){super(),this.options=R7.assignDerivedOptions(e),this.terminal=this.options.terminal?this.options.terminal:new k7(this.options.stream),this.value=0,this.startValue=0,this.total=100,this.lastDrawnString=null,this.startTime=null,this.stopTime=null,this.lastRedraw=Date.now(),this.eta=new Xw(this.options.etaBufferLength,0,0),this.payload={},this.isActive=!1,this.formatter=typeof this.options.format=="function"?this.options.format:I7}render(e=!1){let s={progress:this.getProgress(),eta:this.eta.getTime(),startTime:this.startTime,stopTime:this.stopTime,total:this.total,value:this.value,maxWidth:this.terminal.getWidth()};this.options.etaAsynchronousUpdate&&this.updateETA();let n=this.formatter(this.options,s,this.payload);(e||this.options.forceRedraw||this.options.noTTYOutput&&!this.terminal.isTTY()||this.lastDrawnString!=n)&&(this.emit("redraw-pre"),this.terminal.cursorTo(0,null),this.terminal.write(n),this.terminal.clearRight(),this.lastDrawnString=n,this.lastRedraw=Date.now(),this.emit("redraw-post"))}start(e,s,n){this.value=s||0,this.total=typeof e<"u"&&e>=0?e:100,this.startValue=s||0,this.payload=n||{},this.startTime=Date.now(),this.stopTime=null,this.lastDrawnString="",this.eta=new Xw(this.options.etaBufferLength,this.startTime,this.value),this.isActive=!0,this.emit("start",e,s)}stop(){this.isActive=!1,this.stopTime=Date.now(),this.emit("stop",this.total,this.value)}update(e,s={}){typeof e=="number"&&(this.value=e,this.eta.update(Date.now(),e,this.total));let n=(typeof e=="object"?e:s)||{};this.emit("update",this.total,this.value);for(let r in n)this.payload[r]=n[r];this.value>=this.getTotal()&&this.options.stopOnComplete&&this.stop()}getProgress(){let e=this.value/this.total;return this.options.progressCalculationRelative&&(e=(this.value-this.startValue)/(this.total-this.startValue)),isNaN(e)&&(e=this.options&&this.options.emptyOnZero?0:1),e=Math.min(Math.max(e,0),1),e}increment(e=1,s={}){typeof e=="object"?this.update(this.value+1,e):this.update(this.value+e,s)}getTotal(){return this.total}setTotal(e){typeof e<"u"&&e>=0&&(this.total=e)}updateETA(){this.eta.update(Date.now(),this.value,this.total)}}});var sA=F((JZ,tA)=>{var P7=Zh(),O7=Fd();tA.exports=class extends P7{constructor(e,s){super(O7.parse(e,s)),this.timer=null,this.options.noTTYOutput&&this.terminal.isTTY()===!1&&(this.options.synchronousUpdate=!1),this.schedulingRate=this.terminal.isTTY()?this.options.throttleTime:this.options.notTTYSchedule,this.sigintCallback=null}render(){this.timer&&(clearTimeout(this.timer),this.timer=null),super.render(),this.options.noTTYOutput&&this.terminal.isTTY()===!1&&this.terminal.newline(),this.timer=setTimeout(this.render.bind(this),this.schedulingRate)}update(e,s){this.timer&&(super.update(e,s),this.options.synchronousUpdate&&this.lastRedraw+this.options.throttleTime*2<Date.now()&&this.render())}start(e,s,n){this.options.noTTYOutput===!1&&this.terminal.isTTY()===!1||(this.sigintCallback===null&&this.options.gracefulExit&&(this.sigintCallback=this.stop.bind(this),process.once("SIGINT",this.sigintCallback),process.once("SIGTERM",this.sigintCallback)),this.terminal.cursorSave(),this.options.hideCursor===!0&&this.terminal.cursor(!1),this.options.linewrap===!1&&this.terminal.lineWrapping(!1),super.start(e,s,n),this.render())}stop(){this.timer&&(this.sigintCallback&&(process.removeListener("SIGINT",this.sigintCallback),process.removeListener("SIGTERM",this.sigintCallback),this.sigintCallback=null),this.render(),super.stop(),clearTimeout(this.timer),this.timer=null,this.options.hideCursor===!0&&this.terminal.cursor(!0),this.options.linewrap===!1&&this.terminal.lineWrapping(!0),this.terminal.cursorRestore(),this.options.clearOnComplete?(this.terminal.cursorTo(0,null),this.terminal.clearLine()):this.terminal.newline())}}});var rA=F((XZ,nA)=>{var L7=zh(),B7=Zh(),N7=Fd(),M7=require("events");nA.exports=class extends M7{constructor(e,s){super(),this.bars=[],this.options=N7.parse(e,s),this.options.synchronousUpdate=!1,this.terminal=this.options.terminal?this.options.terminal:new L7(this.options.stream),this.timer=null,this.isActive=!1,this.schedulingRate=this.terminal.isTTY()?this.options.throttleTime:this.options.notTTYSchedule,this.loggingBuffer=[],this.sigintCallback=null}create(e,s,n,r={}){let i=new B7(Object.assign({},this.options,{terminal:this.terminal},r));return this.bars.push(i),this.options.noTTYOutput===!1&&this.terminal.isTTY()===!1||(this.sigintCallback===null&&this.options.gracefulExit&&(this.sigintCallback=this.stop.bind(this),process.once("SIGINT",this.sigintCallback),process.once("SIGTERM",this.sigintCallback)),this.isActive||(this.options.hideCursor===!0&&this.terminal.cursor(!1),this.options.linewrap===!1&&this.terminal.lineWrapping(!1),this.timer=setTimeout(this.update.bind(this),this.schedulingRate)),this.isActive=!0,i.start(e,s,n),this.emit("start")),i}remove(e){let s=this.bars.indexOf(e);return s<0?!1:(this.bars.splice(s,1),this.update(),this.terminal.newline(),this.terminal.clearBottom(),!0)}update(){if(this.timer&&(clearTimeout(this.timer),this.timer=null),this.emit("update-pre"),this.terminal.cursorRelativeReset(),this.emit("redraw-pre"),this.loggingBuffer.length>0)for(this.terminal.clearLine();this.loggingBuffer.length>0;)this.terminal.write(this.loggingBuffer.shift(),!0);for(let e=0;e<this.bars.length;e++)e>0&&this.terminal.newline(),this.bars[e].render();this.emit("redraw-post"),this.options.noTTYOutput&&this.terminal.isTTY()===!1&&(this.terminal.newline(),this.terminal.newline()),this.timer=setTimeout(this.update.bind(this),this.schedulingRate),this.emit("update-post"),this.options.stopOnComplete&&!this.bars.find(e=>e.isActive)&&this.stop()}stop(){if(clearTimeout(this.timer),this.timer=null,this.sigintCallback&&(process.removeListener("SIGINT",this.sigintCallback),process.removeListener("SIGTERM",this.sigintCallback),this.sigintCallback=null),this.isActive=!1,this.options.hideCursor===!0&&this.terminal.cursor(!0),this.options.linewrap===!1&&this.terminal.lineWrapping(!0),this.terminal.cursorRelativeReset(),this.emit("stop-pre-clear"),this.options.clearOnComplete)this.terminal.clearBottom();else{for(let e=0;e<this.bars.length;e++)e>0&&this.terminal.newline(),this.bars[e].render(),this.bars[e].stop();this.terminal.newline()}this.emit("stop")}log(e){this.loggingBuffer.push(e)}}});var oA=F((eY,iA)=>{iA.exports={format:"progress [{bar}] {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"=",barIncompleteChar:"-"}});var cA=F((tY,aA)=>{aA.exports={format:" {bar} {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u2588",barIncompleteChar:"\u2591"}});var lA=F((sY,uA)=>{uA.exports={format:" \x1B[90m{bar}\x1B[0m {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u2588",barIncompleteChar:"\u2591"}});var pA=F((nY,dA)=>{dA.exports={format:" {bar}\u25A0 {percentage}% | ETA: {eta}s | {value}/{total}",barCompleteChar:"\u25A0",barIncompleteChar:" "}});var mA=F((rY,fA)=>{var j7=oA(),$7=cA(),W7=lA(),U7=pA();fA.exports={legacy:j7,shades_classic:$7,shades_grey:W7,rect:U7}});var xA=F((iY,gA)=>{var hA=sA(),G7=rA(),z7=mA(),q7=Kh(),H7=qh(),V7=Hh(),K7=Vh();gA.exports={Bar:hA,SingleBar:hA,MultiBar:G7,Presets:z7,Format:{Formatter:q7,BarFormat:V7,ValueFormat:H7,TimeFormat:K7}}});var kF=F((Nte,Z9)=>{Z9.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var ag=F((Mte,RF)=>{"use strict";var Bd=Object.assign({},kF()),IF=Object.keys(Bd);Object.defineProperty(Bd,"random",{get(){let t=Math.floor(Math.random()*IF.length),e=IF[t];return Bd[e]}});RF.exports=Bd});var NF=F((Yte,BF)=>{BF.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});var wg=F((Qse,_B)=>{_B.exports={name:"cdk-insights",version:"0.15.8",description:"AWS CDK security and cost analysis tool with AI-powered insights",main:"dist/index.js",types:"dist/index.d.ts",bin:{"cdk-insights":"dist/entry.js"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.js"}},files:["dist/**/*","README.md","LICENSE"],scripts:{test:"vitest --run",lint:"biome lint src/",format:"biome format --write src/",check:"biome check src/",build:"ts-node scripts/build.ts",start:"node dist/index.js",dev:"ts-node src/index.ts",prepare:"husky install && npm run build","start:dev":"CDK_ENV=local ts-node src/index.ts","ai-run":"ts-node src/index.ts",unlink:"npm unlink -g cdk-insights",link:"npm link","prepare:test":"npm run unlink && npm run build && npm run link","deploy:dev":"STAGE=dev cdk deploy","destroy:dev":"STAGE=dev cdk destroy","release:patch":"bumper release patch","release:minor":"bumper release minor","release:major":"bumper release major","release:dry-run":"bumper release patch --dry-run","changelog:preview":"bumper preview","changelog:generate":"bumper generate","validate:commits":"bumper validate","release:check":"npm run validate:commits && npm run test && npm run build","release:full":"npm run release:check && npm run changelog:generate","setup:bumper":"bumper setup","publish:beta":"npm run build && npm publish --tag beta && npm dist-tag add cdk-insights@$npm_package_version latest","publish:alpha":"npm run build && npm publish --tag alpha","publish:canary":"npm run build && npm publish --tag canary","publish:latest":"npm run build && npm publish --tag latest","version:beta":"npm version prerelease --preid=beta","version:alpha":"npm version prerelease --preid=alpha","version:rc":"npm version prerelease --preid=rc","cdk-insights":"node scripts/cdk-insights-wrapper.js",scan:"node scripts/cdk-insights-wrapper.js scan","scan:all":"node scripts/cdk-insights-wrapper.js scan --all","scan:json":"node scripts/cdk-insights-wrapper.js scan --format json","scan:markdown":"node scripts/cdk-insights-wrapper.js scan --format markdown","scan:summary":"node scripts/cdk-insights-wrapper.js scan --format summary","scan:with-issues":"node scripts/cdk-insights-wrapper.js scan --withIssue","cache:clear":"node scripts/cdk-insights-wrapper.js cache clear","cache:status":"node scripts/cdk-insights-wrapper.js cache status","demo:progress":"ts-node src/examples/progress-demo.ts","demo:single-line":"ts-node src/examples/single-line-progress-demo.ts","test:line-clearing":"ts-node src/examples/line-clearing-test.ts"},publishConfig:{access:"public"},keywords:["aws","cdk","cloudformation","analysis","security","cost-optimization","static-analysis","devops","infrastructure","aws-cdk","cloud-security","compliance"],author:"Lee Priest <lee@cdkinsights.dev>",license:"MIT",homepage:"https://github.com/TheLeePriest/cdk-insights",bugs:"https://github.com/TheLeePriest/cdk-insights/issues",repository:{type:"git",url:"git+https://github.com/TheLeePriest/cdk-insights.git"},dependencies:{"@inquirer/prompts":"^7.4.1","@middy/core":"^6.1.6","@types/glob":"^8.1.0",axios:"^1.8.4",chalk:"^5.4.1","cli-progress":"^3.12.0","cli-table3":"^0.6.5",dotenv:"^16.5.0",envolution:"^1.4.1",glob:"^11.0.3",ora:"^8.2.0",strogger:"^2.0.3",yargs:"^17.7.2",zod:"^3.23.8"},devDependencies:{"@aws-sdk/client-dynamodb":"^3.788.0","@biomejs/biome":"^2.0.6","@commitlint/cli":"^19.8.1","@commitlint/config-conventional":"^19.8.1","@types/cli-progress":"^3.11.6","@types/jsonwebtoken":"^9.0.9","@types/node":"^22.14.1","@types/yargs":"^17.0.33","aws-cdk":"^2.1010.0","bumper-cli":"^1.6.0",esbuild:"^0.25.2",husky:"^8.0.3","ts-node":"^10.9.2",typescript:"^5.8.3",vitest:"^3.1.1"},peerDependencies:{"aws-cdk-lib":"^2.190.0","cdk-nag":"^2.35.73",constructs:"^10.4.2"},optionalDependencies:{"@aws-solutions-constructs/aws-apigateway-lambda":"^2.0.0","@aws-solutions-constructs/aws-lambda-stepfunctions":"^2.0.0","@aws-solutions-constructs/aws-s3-lambda":"^2.0.0"}}});var $6=V(ip()),tp=require("node:child_process"),W6=V(require("node:path")),U6=require("node:util"),G6=V(xp());var nu=require("assert");var K_={right:X_,center:ek},Z_=0,Yc=1,Y_=2,Jc=3,yp=class{constructor(e){var s;this.width=e.width,this.wrap=(s=e.wrap)!==null&&s!==void 0?s:!0,this.rows=[]}span(...e){let s=this.div(...e);s.span=!0}resetOutput(){this.rows=[]}div(...e){if(e.length===0&&this.div(""),this.wrap&&this.shouldApplyLayoutDSL(...e)&&typeof e[0]=="string")return this.applyLayoutDSL(e[0]);let s=e.map(n=>typeof n=="string"?this.colFromString(n):n);return this.rows.push(s),s}shouldApplyLayoutDSL(...e){return e.length===1&&typeof e[0]=="string"&&/[\t\n]/.test(e[0])}applyLayoutDSL(e){let s=e.split(`
95
95
  `).map(r=>r.split(" ")),n=0;return s.forEach(r=>{r.length>1&&us.stringWidth(r[0])>n&&(n=Math.min(Math.floor(this.width*.5),us.stringWidth(r[0])))}),s.forEach(r=>{this.div(...r.map((i,o)=>({text:i.trim(),padding:this.measurePadding(i),width:o===0&&r.length>1?n:void 0})))}),this.rows[this.rows.length-1]}colFromString(e){return{text:e,padding:this.measurePadding(e)}}measurePadding(e){let s=us.stripAnsi(e);return[0,s.match(/\s*$/)[0].length,0,s.match(/^\s*/)[0].length]}toString(){let e=[];return this.rows.forEach(s=>{this.rowToString(s,e)}),e.filter(s=>!s.hidden).map(s=>s.text).join(`
96
96
  `)}rowToString(e,s){return this.rasterize(e).forEach((n,r)=>{let i="";n.forEach((o,a)=>{let{width:c}=e[a],u=this.negatePadding(e[a]),l=o;if(u>us.stringWidth(o)&&(l+=" ".repeat(u-us.stringWidth(o))),e[a].align&&e[a].align!=="left"&&this.wrap){let f=K_[e[a].align];l=f(l,u),us.stringWidth(l)<u&&(l+=" ".repeat((c||0)-us.stringWidth(l)-1))}let d=e[a].padding||[0,0,0,0];d[Jc]&&(i+=" ".repeat(d[Jc])),i+=zx(e[a],l,"| "),i+=l,i+=zx(e[a],l," |"),d[Yc]&&(i+=" ".repeat(d[Yc])),r===0&&s.length>0&&(i=this.renderInline(i,s[s.length-1]))}),s.push({text:i.replace(/ +$/,""),span:e.span})}),s}renderInline(e,s){let n=e.match(/^ */),r=n?n[0].length:0,i=s.text,o=us.stringWidth(i.trimRight());return s.span?this.wrap?r<o?e:(s.hidden=!0,i.trimRight()+" ".repeat(r-o)+e.trimLeft()):(s.hidden=!0,i+e):e}rasterize(e){let s=[],n=this.columnWidths(e),r;return e.forEach((i,o)=>{i.width=n[o],this.wrap?r=us.wrap(i.text,this.negatePadding(i),{hard:!0}).split(`
97
97
  `):r=i.text.split(`
98
98
  `),i.border&&(r.unshift("."+"-".repeat(this.negatePadding(i)+2)+"."),r.push("'"+"-".repeat(this.negatePadding(i)+2)+"'")),i.padding&&(r.unshift(...new Array(i.padding[Z_]||0).fill("")),r.push(...new Array(i.padding[Y_]||0).fill(""))),r.forEach((a,c)=>{s[c]||s.push([]);let u=s[c];for(let l=0;l<o;l++)u[l]===void 0&&u.push("");u.push(a)})}),s}negatePadding(e){let s=e.width||0;return e.padding&&(s-=(e.padding[Jc]||0)+(e.padding[Yc]||0)),e.border&&(s-=4),s}columnWidths(e){if(!this.wrap)return e.map(o=>o.width||us.stringWidth(o.text));let s=e.length,n=this.width,r=e.map(o=>{if(o.width)return s--,n-=o.width,o.width}),i=s?Math.floor(n/s):0;return r.map((o,a)=>o===void 0?Math.max(i,J_(e[a])):o)}};function zx(t,e,s){return t.border?/[.']-+[.']/.test(e)?"":e.trim().length!==0?s:" ":""}function J_(t){let e=t.padding||[],s=1+(e[Jc]||0)+(e[Yc]||0);return t.border?s+4:s}function Q_(){return typeof process=="object"&&process.stdout&&process.stdout.columns?process.stdout.columns:80}function X_(t,e){t=t.trim();let s=us.stringWidth(t);return s<e?" ".repeat(e-s)+t:t}function ek(t,e){t=t.trim();let s=us.stringWidth(t);return s>=e?t:" ".repeat(e-s>>1)+t}var us;function qx(t,e){return us=e,new yp({width:t?.width||Q_(),wrap:t?.wrap})}var Hx=new RegExp("\x1B(?:\\[(?:\\d+[ABCDEFGJKSTm]|\\d+;\\d+[Hfm]|\\d+;\\d+;\\d+m|6n|s|u|\\?25[lh])|\\w)","g");function bp(t){return t.replace(Hx,"")}function Vx(t,e){let[s,n]=t.match(Hx)||["",""];t=bp(t);let r="";for(let i=0;i<t.length;i++)i!==0&&i%e===0&&(r+=`
99
- `),r+=t.charAt(i);return s&&n&&(r=`${s}${r}${n}`),r}function vp(t){return qx(t,{stringWidth:e=>[...e].length,stripAnsi:bp,wrap:Vx})}var eo=require("path"),Qc=require("fs");function Kx(t,e){let s=(0,eo.resolve)(".",t),n;for((0,Qc.statSync)(s).isDirectory()||(s=(0,eo.dirname)(s));;){if(n=e(s,(0,Qc.readdirSync)(s)),n)return(0,eo.resolve)(s,n);if(s=(0,eo.dirname)(n=s),n===s)break}}var ly=require("util"),dy=require("fs"),py=require("url");var Xx=require("util"),su=require("path");function Ir(t){if(t!==t.toLowerCase()&&t!==t.toUpperCase()||(t=t.toLowerCase()),t.indexOf("-")===-1&&t.indexOf("_")===-1)return t;{let s="",n=!1,r=t.match(/^-+/);for(let i=r?r[0].length:0;i<t.length;i++){let o=t.charAt(i);n&&(n=!1,o=o.toUpperCase()),i!==0&&(o==="-"||o==="_")?n=!0:o!=="-"&&o!=="_"&&(s+=o)}return s}}function Xc(t,e){let s=t.toLowerCase();e=e||"-";let n="";for(let r=0;r<t.length;r++){let i=s.charAt(r),o=t.charAt(r);i!==o&&r>0?n+=`${e}${s.charAt(r)}`:n+=o}return n}function eu(t){return t==null?!1:typeof t=="number"||/^0x[0-9a-f]+$/i.test(t)?!0:/^0[^.]/.test(t)?!1:/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(t)}function Zx(t){if(Array.isArray(t))return t.map(o=>typeof o!="string"?o+"":o);t=t.trim();let e=0,s=null,n=null,r=null,i=[];for(let o=0;o<t.length;o++){if(s=n,n=t.charAt(o),n===" "&&!r){s!==" "&&e++;continue}n===r?r=null:(n==="'"||n==='"')&&!r&&(r=n),i[e]||(i[e]=""),i[e]+=n}return i}var bs;(function(t){t.BOOLEAN="boolean",t.STRING="string",t.NUMBER="number",t.ARRAY="array"})(bs||(bs={}));var Fn,tu=class{constructor(e){Fn=e}parse(e,s){let n=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},s),r=Zx(e),i=typeof e=="string",o=tk(Object.assign(Object.create(null),n.alias)),a=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},n.configuration),c=Object.assign(Object.create(null),n.default),u=n.configObjects||[],l=n.envPrefix,d=a["populate--"],f=d?"--":"_",p=Object.create(null),m=Object.create(null),g=n.__||Fn.format,h={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},y=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,x=new RegExp("^--"+a["negation-prefix"]+"(.+)");[].concat(n.array||[]).filter(Boolean).forEach(function(A){let P=typeof A=="object"?A.key:A,te=Object.keys(A).map(function(G){return{boolean:"bools",string:"strings",number:"numbers"}[G]}).filter(Boolean).pop();te&&(h[te][P]=!0),h.arrays[P]=!0,h.keys.push(P)}),[].concat(n.boolean||[]).filter(Boolean).forEach(function(A){h.bools[A]=!0,h.keys.push(A)}),[].concat(n.string||[]).filter(Boolean).forEach(function(A){h.strings[A]=!0,h.keys.push(A)}),[].concat(n.number||[]).filter(Boolean).forEach(function(A){h.numbers[A]=!0,h.keys.push(A)}),[].concat(n.count||[]).filter(Boolean).forEach(function(A){h.counts[A]=!0,h.keys.push(A)}),[].concat(n.normalize||[]).filter(Boolean).forEach(function(A){h.normalize[A]=!0,h.keys.push(A)}),typeof n.narg=="object"&&Object.entries(n.narg).forEach(([A,P])=>{typeof P=="number"&&(h.nargs[A]=P,h.keys.push(A))}),typeof n.coerce=="object"&&Object.entries(n.coerce).forEach(([A,P])=>{typeof P=="function"&&(h.coercions[A]=P,h.keys.push(A))}),typeof n.config<"u"&&(Array.isArray(n.config)||typeof n.config=="string"?[].concat(n.config).filter(Boolean).forEach(function(A){h.configs[A]=!0}):typeof n.config=="object"&&Object.entries(n.config).forEach(([A,P])=>{(typeof P=="boolean"||typeof P=="function")&&(h.configs[A]=P)})),Ee(n.key,o,n.default,h.arrays),Object.keys(c).forEach(function(A){(h.aliases[A]||[]).forEach(function(P){c[P]=c[A]})});let D=null;_r();let S=[],v=Object.assign(Object.create(null),{_:[]}),E={};for(let A=0;A<r.length;A++){let P=r[A],te=P.replace(/^-{3,}/,"---"),G,O,de,ae,ye,Et;if(P!=="--"&&/^-/.test(P)&&Ze(P))T(P);else if(te.match(/^---+(=|$)/)){T(P);continue}else if(P.match(/^--.+=/)||!a["short-option-groups"]&&P.match(/^-.+=/))ae=P.match(/^--?([^=]+)=([\s\S]*)$/),ae!==null&&Array.isArray(ae)&&ae.length>=3&&(X(ae[1],h.arrays)?A=W(A,ae[1],r,ae[2]):X(ae[1],h.nargs)!==!1?A=_(A,ae[1],r,ae[2]):M(ae[1],ae[2],!0));else if(P.match(x)&&a["boolean-negation"])ae=P.match(x),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],M(O,X(O,h.arrays)?[!1]:!1));else if(P.match(/^--.+/)||!a["short-option-groups"]&&P.match(/^-[^-]+/))ae=P.match(/^--?(.+)/),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],X(O,h.arrays)?A=W(A,O,r):X(O,h.nargs)!==!1?A=_(A,O,r):(ye=r[A+1],ye!==void 0&&(!ye.match(/^-/)||ye.match(y))&&!X(O,h.bools)&&!X(O,h.counts)||/^(true|false)$/.test(ye)?(M(O,ye),A++):M(O,Le(O))));else if(P.match(/^-.\..+=/))ae=P.match(/^-([^=]+)=([\s\S]*)$/),ae!==null&&Array.isArray(ae)&&ae.length>=3&&M(ae[1],ae[2]);else if(P.match(/^-.\..+/)&&!P.match(y))ye=r[A+1],ae=P.match(/^-(.\..+)/),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],ye!==void 0&&!ye.match(/^-/)&&!X(O,h.bools)&&!X(O,h.counts)?(M(O,ye),A++):M(O,Le(O)));else if(P.match(/^-[^-]+/)&&!P.match(y)){de=P.slice(1,-1).split(""),G=!1;for(let qt=0;qt<de.length;qt++){if(ye=P.slice(qt+2),de[qt+1]&&de[qt+1]==="="){Et=P.slice(qt+3),O=de[qt],X(O,h.arrays)?A=W(A,O,r,Et):X(O,h.nargs)!==!1?A=_(A,O,r,Et):M(O,Et),G=!0;break}if(ye==="-"){M(de[qt],ye);continue}if(/[A-Za-z]/.test(de[qt])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(ye)&&X(ye,h.bools)===!1){M(de[qt],ye),G=!0;break}if(de[qt+1]&&de[qt+1].match(/\W/)){M(de[qt],ye),G=!0;break}else M(de[qt],Le(de[qt]))}O=P.slice(-1)[0],!G&&O!=="-"&&(X(O,h.arrays)?A=W(A,O,r):X(O,h.nargs)!==!1?A=_(A,O,r):(ye=r[A+1],ye!==void 0&&(!/^(-|--)[^-]/.test(ye)||ye.match(y))&&!X(O,h.bools)&&!X(O,h.counts)||/^(true|false)$/.test(ye)?(M(O,ye),A++):M(O,Le(O))))}else if(P.match(/^-[0-9]$/)&&P.match(y)&&X(P.slice(1),h.bools))O=P.slice(1),M(O,Le(O));else if(P==="--"){S=r.slice(A+1);break}else if(a["halt-at-non-option"]){S=r.slice(A);break}else T(P)}N(v,!0),N(v,!1),z(v),B(),Z(v,h.aliases,c,!0),K(v),a["set-placeholder-key"]&&me(v),Object.keys(h.counts).forEach(function(A){J(v,A.split("."))||M(A,0)}),d&&S.length&&(v[f]=[]),S.forEach(function(A){v[f].push(A)}),a["camel-case-expansion"]&&a["strip-dashed"]&&Object.keys(v).filter(A=>A!=="--"&&A.includes("-")).forEach(A=>{delete v[A]}),a["strip-aliased"]&&[].concat(...Object.keys(o).map(A=>o[A])).forEach(A=>{a["camel-case-expansion"]&&A.includes("-")&&delete v[A.split(".").map(P=>Ir(P)).join(".")],delete v[A]});function T(A){let P=L("_",A);(typeof P=="string"||typeof P=="number")&&v._.push(P)}function _(A,P,te,G){let O,de=X(P,h.nargs);if(de=typeof de!="number"||isNaN(de)?1:de,de===0)return as(G)||(D=Error(g("Argument unexpected for: %s",P))),M(P,Le(P)),A;let ae=as(G)?0:1;if(a["nargs-eats-options"])te.length-(A+1)+ae<de&&(D=Error(g("Not enough arguments following: %s",P))),ae=de;else{for(O=A+1;O<te.length&&(!te[O].match(/^-[^0-9]/)||te[O].match(y)||Ze(te[O]));O++)ae++;ae<de&&(D=Error(g("Not enough arguments following: %s",P)))}let ye=Math.min(ae,de);for(!as(G)&&ye>0&&(M(P,G),ye--),O=A+1;O<ye+A+1;O++)M(P,te[O]);return A+ye}function W(A,P,te,G){let O=[],de=G||te[A+1],ae=X(P,h.nargs);if(X(P,h.bools)&&!/^(true|false)$/.test(de))O.push(!0);else if(as(de)||as(G)&&/^-/.test(de)&&!y.test(de)&&!Ze(de)){if(c[P]!==void 0){let ye=c[P];O=Array.isArray(ye)?ye:[ye]}}else{as(G)||O.push($(P,G,!0));for(let ye=A+1;ye<te.length&&!(!a["greedy-arrays"]&&O.length>0||ae&&typeof ae=="number"&&O.length>=ae||(de=te[ye],/^-/.test(de)&&!y.test(de)&&!Ze(de)));ye++)A=ye,O.push($(P,de,i))}return typeof ae=="number"&&(ae&&O.length<ae||isNaN(ae)&&O.length===0)&&(D=Error(g("Not enough arguments following: %s",P))),M(P,O),A}function M(A,P,te=i){if(/-/.test(A)&&a["camel-case-expansion"]){let de=A.split(".").map(function(ae){return Ir(ae)}).join(".");j(A,de)}let G=$(A,P,te),O=A.split(".");Q(v,O,G),h.aliases[A]&&h.aliases[A].forEach(function(de){let ae=de.split(".");Q(v,ae,G)}),O.length>1&&a["dot-notation"]&&(h.aliases[O[0]]||[]).forEach(function(de){let ae=de.split("."),ye=[].concat(O);ye.shift(),ae=ae.concat(ye),(h.aliases[A]||[]).includes(ae.join("."))||Q(v,ae,G)}),X(A,h.normalize)&&!X(A,h.arrays)&&[A].concat(h.aliases[A]||[]).forEach(function(ae){Object.defineProperty(E,ae,{enumerable:!0,get(){return P},set(ye){P=typeof ye=="string"?Fn.normalize(ye):ye}})})}function j(A,P){h.aliases[A]&&h.aliases[A].length||(h.aliases[A]=[P],p[P]=!0),h.aliases[P]&&h.aliases[P].length||j(P,A)}function $(A,P,te){te&&(P=sk(P)),(X(A,h.bools)||X(A,h.counts))&&typeof P=="string"&&(P=P==="true");let G=Array.isArray(P)?P.map(function(O){return L(A,O)}):L(A,P);return X(A,h.counts)&&(as(G)||typeof G=="boolean")&&(G=Dp()),X(A,h.normalize)&&X(A,h.arrays)&&(Array.isArray(P)?G=P.map(O=>Fn.normalize(O)):G=Fn.normalize(P)),G}function L(A,P){return!a["parse-positional-numbers"]&&A==="_"||!X(A,h.strings)&&!X(A,h.bools)&&!Array.isArray(P)&&(eu(P)&&a["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${P}`)))||!as(P)&&X(A,h.numbers))&&(P=Number(P)),P}function z(A){let P=Object.create(null);Z(P,h.aliases,c),Object.keys(h.configs).forEach(function(te){let G=A[te]||P[te];if(G)try{let O=null,de=Fn.resolve(Fn.cwd(),G),ae=h.configs[te];if(typeof ae=="function"){try{O=ae(de)}catch(ye){O=ye}if(O instanceof Error){D=O;return}}else O=Fn.require(de);C(O)}catch(O){O.name==="PermissionDenied"?D=O:A[te]&&(D=Error(g("Invalid JSON config file: %s",G)))}})}function C(A,P){Object.keys(A).forEach(function(te){let G=A[te],O=P?P+"."+te:te;typeof G=="object"&&G!==null&&!Array.isArray(G)&&a["dot-notation"]?C(G,O):(!J(v,O.split("."))||X(O,h.arrays)&&a["combine-arrays"])&&M(O,G)})}function B(){typeof u<"u"&&u.forEach(function(A){C(A)})}function N(A,P){if(typeof l>"u")return;let te=typeof l=="string"?l:"",G=Fn.env();Object.keys(G).forEach(function(O){if(te===""||O.lastIndexOf(te,0)===0){let de=O.split("__").map(function(ae,ye){return ye===0&&(ae=ae.substring(te.length)),Ir(ae)});(P&&h.configs[de.join(".")]||!P)&&!J(A,de)&&M(de.join("."),G[O])}})}function K(A){let P,te=new Set;Object.keys(A).forEach(function(G){if(!te.has(G)&&(P=X(G,h.coercions),typeof P=="function"))try{let O=L(G,P(A[G]));[].concat(h.aliases[G]||[],G).forEach(de=>{te.add(de),A[de]=O})}catch(O){D=O}})}function me(A){return h.keys.forEach(P=>{~P.indexOf(".")||typeof A[P]>"u"&&(A[P]=void 0)}),A}function Z(A,P,te,G=!1){Object.keys(te).forEach(function(O){J(A,O.split("."))||(Q(A,O.split("."),te[O]),G&&(m[O]=!0),(P[O]||[]).forEach(function(de){J(A,de.split("."))||Q(A,de.split("."),te[O])}))})}function J(A,P){let te=A;a["dot-notation"]||(P=[P.join(".")]),P.slice(0,-1).forEach(function(O){te=te[O]||{}});let G=P[P.length-1];return typeof te!="object"?!1:G in te}function Q(A,P,te){let G=A;a["dot-notation"]||(P=[P.join(".")]),P.slice(0,-1).forEach(function(Et){Et=Yx(Et),typeof G=="object"&&G[Et]===void 0&&(G[Et]={}),typeof G[Et]!="object"||Array.isArray(G[Et])?(Array.isArray(G[Et])?G[Et].push({}):G[Et]=[G[Et],{}],G=G[Et][G[Et].length-1]):G=G[Et]});let O=Yx(P[P.length-1]),de=X(P.join("."),h.arrays),ae=Array.isArray(te),ye=a["duplicate-arguments-array"];!ye&&X(O,h.nargs)&&(ye=!0,(!as(G[O])&&h.nargs[O]===1||Array.isArray(G[O])&&G[O].length===h.nargs[O])&&(G[O]=void 0)),te===Dp()?G[O]=Dp(G[O]):Array.isArray(G[O])?ye&&de&&ae?G[O]=a["flatten-duplicate-arrays"]?G[O].concat(te):(Array.isArray(G[O][0])?G[O]:[G[O]]).concat([te]):!ye&&!!de==!!ae?G[O]=te:G[O]=G[O].concat([te]):G[O]===void 0&&de?G[O]=ae?te:[te]:ye&&!(G[O]===void 0||X(O,h.counts)||X(O,h.bools))?G[O]=[G[O],te]:G[O]=te}function Ee(...A){A.forEach(function(P){Object.keys(P||{}).forEach(function(te){h.aliases[te]||(h.aliases[te]=[].concat(o[te]||[]),h.aliases[te].concat(te).forEach(function(G){if(/-/.test(G)&&a["camel-case-expansion"]){let O=Ir(G);O!==te&&h.aliases[te].indexOf(O)===-1&&(h.aliases[te].push(O),p[O]=!0)}}),h.aliases[te].concat(te).forEach(function(G){if(G.length>1&&/[A-Z]/.test(G)&&a["camel-case-expansion"]){let O=Xc(G,"-");O!==te&&h.aliases[te].indexOf(O)===-1&&(h.aliases[te].push(O),p[O]=!0)}}),h.aliases[te].forEach(function(G){h.aliases[G]=[te].concat(h.aliases[te].filter(function(O){return G!==O}))}))})})}function X(A,P){let te=[].concat(h.aliases[A]||[],A),G=Object.keys(P),O=te.find(de=>G.includes(de));return O?P[O]:!1}function st(A){let P=Object.keys(h);return[].concat(P.map(G=>h[G])).some(function(G){return Array.isArray(G)?G.includes(A):G[A]})}function ce(A,...P){return[].concat(...P).some(function(G){let O=A.match(G);return O&&st(O[1])})}function Fe(A){if(A.match(y)||!A.match(/^-[^-]+/))return!1;let P=!0,te,G=A.slice(1).split("");for(let O=0;O<G.length;O++){if(te=A.slice(O+2),!st(G[O])){P=!1;break}if(G[O+1]&&G[O+1]==="="||te==="-"||/[A-Za-z]/.test(G[O])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(te)||G[O+1]&&G[O+1].match(/\W/))break}return P}function Ze(A){return a["unknown-options-as-args"]&&_e(A)}function _e(A){return A=A.replace(/^-{3,}/,"--"),A.match(y)||Fe(A)?!1:!ce(A,/^-+([^=]+?)=[\s\S]*$/,x,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function Le(A){return!X(A,h.bools)&&!X(A,h.counts)&&`${A}`in c?c[A]:it(Yt(A))}function it(A){return{[bs.BOOLEAN]:!0,[bs.STRING]:"",[bs.NUMBER]:void 0,[bs.ARRAY]:[]}[A]}function Yt(A){let P=bs.BOOLEAN;return X(A,h.strings)?P=bs.STRING:X(A,h.numbers)?P=bs.NUMBER:X(A,h.bools)?P=bs.BOOLEAN:X(A,h.arrays)&&(P=bs.ARRAY),P}function as(A){return A===void 0}function _r(){Object.keys(h.counts).find(A=>X(A,h.arrays)?(D=Error(g("Invalid configuration: %s, opts.count excludes opts.array.",A)),!0):X(A,h.nargs)?(D=Error(g("Invalid configuration: %s, opts.count excludes opts.narg.",A)),!0):!1)}return{aliases:Object.assign({},h.aliases),argv:Object.assign(E,v),configuration:a,defaulted:Object.assign({},m),error:D,newAliases:Object.assign({},p)}}};function tk(t){let e=[],s=Object.create(null),n=!0;for(Object.keys(t).forEach(function(r){e.push([].concat(t[r],r))});n;){n=!1;for(let r=0;r<e.length;r++)for(let i=r+1;i<e.length;i++)if(e[r].filter(function(a){return e[i].indexOf(a)!==-1}).length){e[r]=e[r].concat(e[i]),e.splice(i,1),n=!0;break}}return e.forEach(function(r){r=r.filter(function(o,a,c){return c.indexOf(o)===a});let i=r.pop();i!==void 0&&typeof i=="string"&&(s[i]=r)}),s}function Dp(t){return t!==void 0?t+1:1}function Yx(t){return t==="__proto__"?"___proto___":t}function sk(t){return typeof t=="string"&&(t[0]==="'"||t[0]==='"')&&t[t.length-1]===t[0]?t.substring(1,t.length-1):t}var ey=require("fs");var Sp,Cp,wp,Jx=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):12,Qx=(Cp=(Sp=process==null?void 0:process.versions)===null||Sp===void 0?void 0:Sp.node)!==null&&Cp!==void 0?Cp:(wp=process==null?void 0:process.version)===null||wp===void 0?void 0:wp.slice(1);if(Qx&&Number(Qx.match(/^([^.]+)/)[1])<Jx)throw Error(`yargs parser supports a minimum Node.js version of ${Jx}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`);var nk=process?process.env:{},ty=new tu({cwd:process.cwd,env:()=>nk,format:Xx.format,normalize:su.normalize,resolve:su.resolve,require:t=>{if(typeof require<"u")return require(t);if(t.match(/\.json$/))return JSON.parse((0,ey.readFileSync)(t,"utf8"));throw Error("only .json config files are supported in ESM")}}),Ca=function(e,s){return ty.parse(e.slice(),s).argv};Ca.detailed=function(t,e){return ty.parse(t.slice(),e)};Ca.camelCase=Ir;Ca.decamelize=Xc;Ca.looksLikeNumber=eu;var Ap=Ca;var Zs=require("path");function sy(){return rk()?0:1}function rk(){return ik()&&!process.defaultApp}function ik(){return!!process.versions.electron}function Ep(t){return t.slice(sy()+1)}function ny(){return process.argv[sy()]}var nt=class t extends Error{constructor(e){super(e||"yargs error"),this.name="YError",Error.captureStackTrace&&Error.captureStackTrace(this,t)}};var to=require("fs"),ry=require("util"),iy=require("path"),oy={fs:{readFileSync:to.readFileSync,writeFile:to.writeFile},format:ry.format,resolve:iy.resolve,exists:t=>{try{return(0,to.statSync)(t).isFile()}catch{return!1}}};var Ks,Fp=class{constructor(e){e=e||{},this.directory=e.directory||"./locales",this.updateFiles=typeof e.updateFiles=="boolean"?e.updateFiles:!0,this.locale=e.locale||"en",this.fallbackToLanguage=typeof e.fallbackToLanguage=="boolean"?e.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...e){if(typeof arguments[0]!="string")return this._taggedLiteral(arguments[0],...arguments);let s=e.shift(),n=function(){};return typeof e[e.length-1]=="function"&&(n=e.pop()),n=n||function(){},this.cache[this.locale]||this._readLocaleFile(),!this.cache[this.locale][s]&&this.updateFiles?(this.cache[this.locale][s]=s,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:n})):n(),Ks.format.apply(Ks.format,[this.cache[this.locale][s]||s].concat(e))}__n(){let e=Array.prototype.slice.call(arguments),s=e.shift(),n=e.shift(),r=e.shift(),i=function(){};typeof e[e.length-1]=="function"&&(i=e.pop()),this.cache[this.locale]||this._readLocaleFile();let o=r===1?s:n;this.cache[this.locale][s]&&(o=this.cache[this.locale][s][r===1?"one":"other"]),!this.cache[this.locale][s]&&this.updateFiles?(this.cache[this.locale][s]={one:s,other:n},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:i})):i();let a=[o];return~o.indexOf("%d")&&a.push(r),Ks.format.apply(Ks.format,a.concat(e))}setLocale(e){this.locale=e}getLocale(){return this.locale}updateLocale(e){this.cache[this.locale]||this._readLocaleFile();for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&(this.cache[this.locale][s]=e[s])}_taggedLiteral(e,...s){let n="";return e.forEach(function(r,i){let o=s[i+1];n+=r,typeof o<"u"&&(n+="%s")}),this.__.apply(this,[n].concat([].slice.call(s,1)))}_enqueueWrite(e){this.writeQueue.push(e),this.writeQueue.length===1&&this._processWriteQueue()}_processWriteQueue(){let e=this,s=this.writeQueue[0],n=s.directory,r=s.locale,i=s.cb,o=this._resolveLocaleFile(n,r),a=JSON.stringify(this.cache[r],null,2);Ks.fs.writeFile(o,a,"utf-8",function(c){e.writeQueue.shift(),e.writeQueue.length>0&&e._processWriteQueue(),i(c)})}_readLocaleFile(){let e={},s=this._resolveLocaleFile(this.directory,this.locale);try{Ks.fs.readFileSync&&(e=JSON.parse(Ks.fs.readFileSync(s,"utf-8")))}catch(n){if(n instanceof SyntaxError&&(n.message="syntax error in "+s),n.code==="ENOENT")e={};else throw n}this.cache[this.locale]=e}_resolveLocaleFile(e,s){let n=Ks.resolve(e,"./",s+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(n)&&~s.lastIndexOf("_")){let r=Ks.resolve(e,"./",s.split("_")[0]+".json");this._fileExistsSync(r)&&(n=r)}return n}_fileExistsSync(e){return Ks.exists(e)}};function ay(t,e){Ks=e;let s=new Fp(t);return{__:s.__.bind(s),__n:s.__n.bind(s),setLocale:s.setLocale.bind(s),getLocale:s.getLocale.bind(s),updateLocale:s.updateLocale.bind(s),locale:s.locale}}var ok=t=>ay(t,oy),cy=ok;var uk={},ak="require is not supported by ESM",uy="loading a directory of commands is not supported yet for ESM",wa;try{wa=(0,py.fileURLToPath)(uk.url)}catch{wa=process.cwd()}var ck=wa.substring(0,wa.lastIndexOf("node_modules")),_p={assert:{notStrictEqual:nu.notStrictEqual,strictEqual:nu.strictEqual},cliui:vp,findUp:Kx,getEnv:t=>process.env[t],inspect:ly.inspect,getCallerFile:()=>{throw new nt(uy)},getProcessArgvBin:ny,mainFilename:ck||process.cwd(),Parser:Ap,path:{basename:Zs.basename,dirname:Zs.dirname,extname:Zs.extname,relative:Zs.relative,resolve:Zs.resolve},process:{argv:()=>process.argv,cwd:process.cwd,emitWarning:(t,e)=>process.emitWarning(t,e),execPath:()=>process.execPath,exit:process.exit,nextTick:process.nextTick,stdColumns:typeof process.stdout.columns<"u"?process.stdout.columns:null},readFileSync:dy.readFileSync,require:()=>{throw new nt(ak)},requireDirectory:()=>{throw new nt(uy)},stringWidth:t=>[...t].length,y18n:cy({directory:(0,Zs.resolve)(wa,"../../../locales"),updateFiles:!1})};function Vt(t,e,s,n){s.assert.notStrictEqual(t,e,n)}function kp(t,e){e.assert.strictEqual(typeof t,"string")}function so(t){return Object.keys(t)}function rt(t){return!!t&&!!t.then&&typeof t.then=="function"}function Xn(t){let s=t.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),n=/\.*[\][<>]/g,r=s.shift();if(!r)throw new Error(`No command found in: ${t}`);let i={cmd:r.replace(n,""),demanded:[],optional:[]};return s.forEach((o,a)=>{let c=!1;o=o.replace(/\s/g,""),/\.+[\]>]/.test(o)&&a===s.length-1&&(c=!0),/^\[/.test(o)?i.optional.push({cmd:o.replace(n,"").split("|"),variadic:c}):i.demanded.push({cmd:o.replace(n,"").split("|"),variadic:c})}),i}var lk=["first","second","third","fourth","fifth","sixth"];function ue(t,e,s){function n(){return typeof t=="object"?[{demanded:[],optional:[]},t,e]:[Xn(`cmd ${t}`),e,s]}try{let r=0,[i,o,a]=n(),c=[].slice.call(o);for(;c.length&&c[c.length-1]===void 0;)c.pop();let u=a||c.length;if(u<i.demanded.length)throw new nt(`Not enough arguments provided. Expected ${i.demanded.length} but received ${c.length}.`);let l=i.demanded.length+i.optional.length;if(u>l)throw new nt(`Too many arguments provided. Expected max ${l} but received ${u}.`);i.demanded.forEach(d=>{let f=c.shift(),p=fy(f);d.cmd.filter(g=>g===p||g==="*").length===0&&my(p,d.cmd,r),r+=1}),i.optional.forEach(d=>{if(c.length===0)return;let f=c.shift(),p=fy(f);d.cmd.filter(g=>g===p||g==="*").length===0&&my(p,d.cmd,r),r+=1})}catch(r){console.warn(r.stack)}}function fy(t){return Array.isArray(t)?"array":t===null?"null":typeof t}function my(t,e,s){throw new nt(`Invalid ${lk[s]||"manyith"} argument. Expected ${e.join(" or ")} but received ${t}.`)}var ru=class{constructor(e){this.globalMiddleware=[],this.frozens=[],this.yargs=e}addMiddleware(e,s,n=!0,r=!1){if(ue("<array|function> [boolean] [boolean] [boolean]",[e,s,n],arguments.length),Array.isArray(e)){for(let i=0;i<e.length;i++){if(typeof e[i]!="function")throw Error("middleware must be a function");let o=e[i];o.applyBeforeValidation=s,o.global=n}Array.prototype.push.apply(this.globalMiddleware,e)}else if(typeof e=="function"){let i=e;i.applyBeforeValidation=s,i.global=n,i.mutates=r,this.globalMiddleware.push(e)}return this.yargs}addCoerceMiddleware(e,s){let n=this.yargs.getAliases();return this.globalMiddleware=this.globalMiddleware.filter(r=>{let i=[...n[s]||[],s];return r.option?!i.includes(r.option):!0}),e.option=s,this.addMiddleware(e,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){let e=this.frozens.pop();e!==void 0&&(this.globalMiddleware=e)}reset(){this.globalMiddleware=this.globalMiddleware.filter(e=>e.global)}};function hy(t){return t?t.map(e=>(e.applyBeforeValidation=!1,e)):[]}function Rr(t,e,s,n){return s.reduce((r,i)=>{if(i.applyBeforeValidation!==n)return r;if(i.mutates){if(i.applied)return r;i.applied=!0}if(rt(r))return r.then(o=>Promise.all([o,i(o,e)])).then(([o,a])=>Object.assign(o,a));{let o=i(r,e);return rt(o)?o.then(a=>Object.assign(r,a)):Object.assign(r,o)}},t)}function Tr(t,e,s=n=>{throw n}){try{let n=dk(t)?t():t;return rt(n)?n.then(r=>e(r)):e(n)}catch(n){return s(n)}}function dk(t){return typeof t=="function"}function Ip(t){if(typeof require>"u")return null;for(let e=0,s=Object.keys(require.cache),n;e<s.length;e++)if(n=require.cache[s[e]],n.exports===t)return n;return null}var no=/(^\*)|(^\$0)/,Rp=class{constructor(e,s,n,r){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=r,this.usage=e,this.globalMiddleware=n,this.validation=s}addDirectory(e,s,n,r){r=r||{},typeof r.recurse!="boolean"&&(r.recurse=!1),Array.isArray(r.extensions)||(r.extensions=["js"]);let i=typeof r.visit=="function"?r.visit:o=>o;r.visit=(o,a,c)=>{let u=i(o,a,c);if(u){if(this.requireCache.has(a))return u;this.requireCache.add(a),this.addHandler(u)}return u},this.shim.requireDirectory({require:s,filename:n},e,r)}addHandler(e,s,n,r,i,o){let a=[],c=hy(i);if(r=r||(()=>{}),Array.isArray(e))if(pk(e))[e,...a]=e;else for(let u of e)this.addHandler(u);else if(mk(e)){let u=Array.isArray(e.command)||typeof e.command=="string"?e.command:this.moduleName(e);e.aliases&&(u=[].concat(u).concat(e.aliases)),this.addHandler(u,this.extractDesc(e),e.builder,e.handler,e.middlewares,e.deprecated);return}else if(gy(n)){this.addHandler([e].concat(a),s,n.builder,n.handler,n.middlewares,n.deprecated);return}if(typeof e=="string"){let u=Xn(e);a=a.map(f=>Xn(f).cmd);let l=!1,d=[u.cmd].concat(a).filter(f=>no.test(f)?(l=!0,!1):!0);d.length===0&&l&&d.push("$0"),l&&(u.cmd=d[0],a=d.slice(1),e=e.replace(no,u.cmd)),a.forEach(f=>{this.aliasMap[f]=u.cmd}),s!==!1&&this.usage.command(e,s,l,a,o),this.handlers[u.cmd]={original:e,description:s,handler:r,builder:n||{},middlewares:c,deprecated:o,demanded:u.demanded,optional:u.optional},l&&(this.defaultCommand=this.handlers[u.cmd])}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(e,s,n,r,i,o){let a=this.handlers[e]||this.handlers[this.aliasMap[e]]||this.defaultCommand,c=s.getInternalMethods().getContext(),u=c.commands.slice(),l=!e;e&&(c.commands.push(e),c.fullCommands.push(a.original));let d=this.applyBuilderUpdateUsageAndParse(l,a,s,n.aliases,u,r,i,o);return rt(d)?d.then(f=>this.applyMiddlewareAndGetResult(l,a,f.innerArgv,c,i,f.aliases,s)):this.applyMiddlewareAndGetResult(l,a,d.innerArgv,c,i,d.aliases,s)}applyBuilderUpdateUsageAndParse(e,s,n,r,i,o,a,c){let u=s.builder,l=n;if(iu(u)){n.getInternalMethods().getUsageInstance().freeze();let d=u(n.getInternalMethods().reset(r),c);if(rt(d))return d.then(f=>(l=yy(f)?f:n,this.parseAndUpdateUsage(e,s,l,i,o,a)))}else fk(u)&&(n.getInternalMethods().getUsageInstance().freeze(),l=n.getInternalMethods().reset(r),Object.keys(s.builder).forEach(d=>{l.option(d,u[d])}));return this.parseAndUpdateUsage(e,s,l,i,o,a)}parseAndUpdateUsage(e,s,n,r,i,o){e&&n.getInternalMethods().getUsageInstance().unfreeze(!0),this.shouldUpdateUsage(n)&&n.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(r,s),s.description);let a=n.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,i,o);return rt(a)?a.then(c=>({aliases:n.parsed.aliases,innerArgv:c})):{aliases:n.parsed.aliases,innerArgv:a}}shouldUpdateUsage(e){return!e.getInternalMethods().getUsageInstance().getUsageDisabled()&&e.getInternalMethods().getUsageInstance().getUsage().length===0}usageFromParentCommandsCommandHandler(e,s){let n=no.test(s.original)?s.original.replace(no,"").trim():s.original,r=e.filter(i=>!no.test(i));return r.push(n),`$0 ${r.join(" ")}`}handleValidationAndGetResult(e,s,n,r,i,o,a,c){if(!o.getInternalMethods().getHasOutput()){let u=o.getInternalMethods().runValidation(i,c,o.parsed.error,e);n=Tr(n,l=>(u(l),l))}if(s.handler&&!o.getInternalMethods().getHasOutput()){o.getInternalMethods().setHasOutput();let u=!!o.getOptions().configuration["populate--"];o.getInternalMethods().postProcess(n,u,!1,!1),n=Rr(n,o,a,!1),n=Tr(n,l=>{let d=s.handler(l);return rt(d)?d.then(()=>l):l}),e||o.getInternalMethods().getUsageInstance().cacheHelpMessage(),rt(n)&&!o.getInternalMethods().hasParseCallback()&&n.catch(l=>{try{o.getInternalMethods().getUsageInstance().fail(null,l)}catch{}})}return e||(r.commands.pop(),r.fullCommands.pop()),n}applyMiddlewareAndGetResult(e,s,n,r,i,o,a){let c={};if(i)return n;a.getInternalMethods().getHasOutput()||(c=this.populatePositionals(s,n,r,a));let u=this.globalMiddleware.getMiddleware().slice(0).concat(s.middlewares),l=Rr(n,a,u,!0);return rt(l)?l.then(d=>this.handleValidationAndGetResult(e,s,d,r,o,a,u,c)):this.handleValidationAndGetResult(e,s,l,r,o,a,u,c)}populatePositionals(e,s,n,r){s._=s._.slice(n.commands.length);let i=e.demanded.slice(0),o=e.optional.slice(0),a={};for(this.validation.positionalCount(i.length,s._.length);i.length;){let c=i.shift();this.populatePositional(c,s,a)}for(;o.length;){let c=o.shift();this.populatePositional(c,s,a)}return s._=n.commands.concat(s._.map(c=>""+c)),this.postProcessPositionals(s,a,this.cmdToParseOptions(e.original),r),a}populatePositional(e,s,n){let r=e.cmd[0];e.variadic?n[r]=s._.splice(0).map(String):s._.length&&(n[r]=[String(s._.shift())])}cmdToParseOptions(e){let s={array:[],default:{},alias:{},demand:{}},n=Xn(e);return n.demanded.forEach(r=>{let[i,...o]=r.cmd;r.variadic&&(s.array.push(i),s.default[i]=[]),s.alias[i]=o,s.demand[i]=!0}),n.optional.forEach(r=>{let[i,...o]=r.cmd;r.variadic&&(s.array.push(i),s.default[i]=[]),s.alias[i]=o}),s}postProcessPositionals(e,s,n,r){let i=Object.assign({},r.getOptions());i.default=Object.assign(n.default,i.default);for(let u of Object.keys(n.alias))i.alias[u]=(i.alias[u]||[]).concat(n.alias[u]);i.array=i.array.concat(n.array),i.config={};let o=[];if(Object.keys(s).forEach(u=>{s[u].map(l=>{i.configuration["unknown-options-as-args"]&&(i.key[u]=!0),o.push(`--${u}`),o.push(l)})}),!o.length)return;let a=Object.assign({},i.configuration,{"populate--":!1}),c=this.shim.Parser.detailed(o,Object.assign({},i,{configuration:a}));if(c.error)r.getInternalMethods().getUsageInstance().fail(c.error.message,c.error);else{let u=Object.keys(s);Object.keys(s).forEach(l=>{u.push(...c.aliases[l])}),Object.keys(c.argv).forEach(l=>{u.includes(l)&&(s[l]||(s[l]=c.argv[l]),!this.isInConfigs(r,l)&&!this.isDefaulted(r,l)&&Object.prototype.hasOwnProperty.call(e,l)&&Object.prototype.hasOwnProperty.call(c.argv,l)&&(Array.isArray(e[l])||Array.isArray(c.argv[l]))?e[l]=[].concat(e[l],c.argv[l]):e[l]=c.argv[l])})}}isDefaulted(e,s){let{default:n}=e.getOptions();return Object.prototype.hasOwnProperty.call(n,s)||Object.prototype.hasOwnProperty.call(n,this.shim.Parser.camelCase(s))}isInConfigs(e,s){let{configObjects:n}=e.getOptions();return n.some(r=>Object.prototype.hasOwnProperty.call(r,s))||n.some(r=>Object.prototype.hasOwnProperty.call(r,this.shim.Parser.camelCase(s)))}runDefaultBuilderOn(e){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(e)){let n=no.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");e.getInternalMethods().getUsageInstance().usage(n,this.defaultCommand.description)}let s=this.defaultCommand.builder;if(iu(s))return s(e,!0);gy(s)||Object.keys(s).forEach(n=>{e.option(n,s[n])})}moduleName(e){let s=Ip(e);if(!s)throw new Error(`No command name given for module: ${this.shim.inspect(e)}`);return this.commandFromFilename(s.filename)}commandFromFilename(e){return this.shim.path.basename(e,this.shim.path.extname(e))}extractDesc({describe:e,description:s,desc:n}){for(let r of[e,s,n]){if(typeof r=="string"||r===!1)return r;Vt(r,!0,this.shim)}return!1}freeze(){this.frozens.push({handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand})}unfreeze(){let e=this.frozens.pop();Vt(e,void 0,this.shim),{handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand}=e}reset(){return this.handlers={},this.aliasMap={},this.defaultCommand=void 0,this.requireCache=new Set,this}};function xy(t,e,s,n){return new Rp(t,e,s,n)}function gy(t){return typeof t=="object"&&!!t.builder&&typeof t.handler=="function"}function pk(t){return t.every(e=>typeof e=="string")}function iu(t){return typeof t=="function"}function fk(t){return typeof t=="object"}function mk(t){return typeof t=="object"&&!Array.isArray(t)}function er(t={},e=()=>!0){let s={};return so(t).forEach(n=>{e(n,t[n])&&(s[n]=t[n])}),s}function tr(t){typeof process>"u"||[process.stdout,process.stderr].forEach(e=>{let s=e;s._handle&&s.isTTY&&typeof s._handle.setBlocking=="function"&&s._handle.setBlocking(t)})}function hk(t){return typeof t=="boolean"}function vy(t,e){let s=e.y18n.__,n={},r=[];n.failFn=function($){r.push($)};let i=null,o=null,a=!0;n.showHelpOnFail=function($=!0,L){let[z,C]=typeof $=="string"?[!0,$]:[$,L];return t.getInternalMethods().isGlobalContext()&&(o=C),i=C,a=z,n};let c=!1;n.fail=function($,L){let z=t.getInternalMethods().getLoggerInstance();if(r.length)for(let C=r.length-1;C>=0;--C){let B=r[C];if(hk(B)){if(L)throw L;if($)throw Error($)}else B($,L,n)}else{if(t.getExitProcess()&&tr(!0),!c){c=!0,a&&(t.showHelp("error"),z.error()),($||L)&&z.error($||L);let C=i||o;C&&(($||L)&&z.error(""),z.error(C))}if(L=L||new nt($),t.getExitProcess())return t.exit(1);if(t.getInternalMethods().hasParseCallback())return t.exit(1,L);throw L}};let u=[],l=!1;n.usage=(j,$)=>j===null?(l=!0,u=[],n):(l=!1,u.push([j,$||""]),n),n.getUsage=()=>u,n.getUsageDisabled=()=>l,n.getPositionalGroupName=()=>s("Positionals:");let d=[];n.example=(j,$)=>{d.push([j,$||""])};let f=[];n.command=function($,L,z,C,B=!1){z&&(f=f.map(N=>(N[2]=!1,N))),f.push([$,L||"",z,C,B])},n.getCommands=()=>f;let p={};n.describe=function($,L){Array.isArray($)?$.forEach(z=>{n.describe(z,L)}):typeof $=="object"?Object.keys($).forEach(z=>{n.describe(z,$[z])}):p[$]=L},n.getDescriptions=()=>p;let m=[];n.epilog=j=>{m.push(j)};let g=!1,h;n.wrap=j=>{g=!0,h=j},n.getWrap=()=>e.getEnv("YARGS_DISABLE_WRAP")?null:(g||(h=_(),g=!0),h);let y="__yargsString__:";n.deferY18nLookup=j=>y+j,n.help=function(){if(S)return S;D();let $=t.customScriptName?t.$0:e.path.basename(t.$0),L=t.getDemandedOptions(),z=t.getDemandedCommands(),C=t.getDeprecatedOptions(),B=t.getGroups(),N=t.getOptions(),K=[];K=K.concat(Object.keys(p)),K=K.concat(Object.keys(L)),K=K.concat(Object.keys(z)),K=K.concat(Object.keys(N.default)),K=K.filter(E),K=Object.keys(K.reduce((ce,Fe)=>(Fe!=="_"&&(ce[Fe]=!0),ce),{}));let me=n.getWrap(),Z=e.cliui({width:me,wrap:!!me});if(!l){if(u.length)u.forEach(ce=>{Z.div({text:`${ce[0].replace(/\$0/g,$)}`}),ce[1]&&Z.div({text:`${ce[1]}`,padding:[1,0,0,0]})}),Z.div();else if(f.length){let ce=null;z._?ce=`${$} <${s("command")}>
99
+ `),r+=t.charAt(i);return s&&n&&(r=`${s}${r}${n}`),r}function vp(t){return qx(t,{stringWidth:e=>[...e].length,stripAnsi:bp,wrap:Vx})}var eo=require("path"),Qc=require("fs");function Kx(t,e){let s=(0,eo.resolve)(".",t),n;for((0,Qc.statSync)(s).isDirectory()||(s=(0,eo.dirname)(s));;){if(n=e(s,(0,Qc.readdirSync)(s)),n)return(0,eo.resolve)(s,n);if(s=(0,eo.dirname)(n=s),n===s)break}}var ly=require("util"),dy=require("fs"),py=require("url");var Xx=require("util"),su=require("path");function Ir(t){if(t!==t.toLowerCase()&&t!==t.toUpperCase()||(t=t.toLowerCase()),t.indexOf("-")===-1&&t.indexOf("_")===-1)return t;{let s="",n=!1,r=t.match(/^-+/);for(let i=r?r[0].length:0;i<t.length;i++){let o=t.charAt(i);n&&(n=!1,o=o.toUpperCase()),i!==0&&(o==="-"||o==="_")?n=!0:o!=="-"&&o!=="_"&&(s+=o)}return s}}function Xc(t,e){let s=t.toLowerCase();e=e||"-";let n="";for(let r=0;r<t.length;r++){let i=s.charAt(r),o=t.charAt(r);i!==o&&r>0?n+=`${e}${s.charAt(r)}`:n+=o}return n}function eu(t){return t==null?!1:typeof t=="number"||/^0x[0-9a-f]+$/i.test(t)?!0:/^0[^.]/.test(t)?!1:/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(t)}function Zx(t){if(Array.isArray(t))return t.map(o=>typeof o!="string"?o+"":o);t=t.trim();let e=0,s=null,n=null,r=null,i=[];for(let o=0;o<t.length;o++){if(s=n,n=t.charAt(o),n===" "&&!r){s!==" "&&e++;continue}n===r?r=null:(n==="'"||n==='"')&&!r&&(r=n),i[e]||(i[e]=""),i[e]+=n}return i}var bs;(function(t){t.BOOLEAN="boolean",t.STRING="string",t.NUMBER="number",t.ARRAY="array"})(bs||(bs={}));var Fn,tu=class{constructor(e){Fn=e}parse(e,s){let n=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},s),r=Zx(e),i=typeof e=="string",o=tk(Object.assign(Object.create(null),n.alias)),a=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},n.configuration),c=Object.assign(Object.create(null),n.default),u=n.configObjects||[],l=n.envPrefix,d=a["populate--"],f=d?"--":"_",p=Object.create(null),m=Object.create(null),g=n.__||Fn.format,h={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},y=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,x=new RegExp("^--"+a["negation-prefix"]+"(.+)");[].concat(n.array||[]).filter(Boolean).forEach(function(A){let P=typeof A=="object"?A.key:A,te=Object.keys(A).map(function(G){return{boolean:"bools",string:"strings",number:"numbers"}[G]}).filter(Boolean).pop();te&&(h[te][P]=!0),h.arrays[P]=!0,h.keys.push(P)}),[].concat(n.boolean||[]).filter(Boolean).forEach(function(A){h.bools[A]=!0,h.keys.push(A)}),[].concat(n.string||[]).filter(Boolean).forEach(function(A){h.strings[A]=!0,h.keys.push(A)}),[].concat(n.number||[]).filter(Boolean).forEach(function(A){h.numbers[A]=!0,h.keys.push(A)}),[].concat(n.count||[]).filter(Boolean).forEach(function(A){h.counts[A]=!0,h.keys.push(A)}),[].concat(n.normalize||[]).filter(Boolean).forEach(function(A){h.normalize[A]=!0,h.keys.push(A)}),typeof n.narg=="object"&&Object.entries(n.narg).forEach(([A,P])=>{typeof P=="number"&&(h.nargs[A]=P,h.keys.push(A))}),typeof n.coerce=="object"&&Object.entries(n.coerce).forEach(([A,P])=>{typeof P=="function"&&(h.coercions[A]=P,h.keys.push(A))}),typeof n.config<"u"&&(Array.isArray(n.config)||typeof n.config=="string"?[].concat(n.config).filter(Boolean).forEach(function(A){h.configs[A]=!0}):typeof n.config=="object"&&Object.entries(n.config).forEach(([A,P])=>{(typeof P=="boolean"||typeof P=="function")&&(h.configs[A]=P)})),Ee(n.key,o,n.default,h.arrays),Object.keys(c).forEach(function(A){(h.aliases[A]||[]).forEach(function(P){c[P]=c[A]})});let D=null;_r();let S=[],v=Object.assign(Object.create(null),{_:[]}),E={};for(let A=0;A<r.length;A++){let P=r[A],te=P.replace(/^-{3,}/,"---"),G,O,de,ae,ye,Et;if(P!=="--"&&/^-/.test(P)&&Ze(P))R(P);else if(te.match(/^---+(=|$)/)){R(P);continue}else if(P.match(/^--.+=/)||!a["short-option-groups"]&&P.match(/^-.+=/))ae=P.match(/^--?([^=]+)=([\s\S]*)$/),ae!==null&&Array.isArray(ae)&&ae.length>=3&&(X(ae[1],h.arrays)?A=W(A,ae[1],r,ae[2]):X(ae[1],h.nargs)!==!1?A=_(A,ae[1],r,ae[2]):j(ae[1],ae[2],!0));else if(P.match(x)&&a["boolean-negation"])ae=P.match(x),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],j(O,X(O,h.arrays)?[!1]:!1));else if(P.match(/^--.+/)||!a["short-option-groups"]&&P.match(/^-[^-]+/))ae=P.match(/^--?(.+)/),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],X(O,h.arrays)?A=W(A,O,r):X(O,h.nargs)!==!1?A=_(A,O,r):(ye=r[A+1],ye!==void 0&&(!ye.match(/^-/)||ye.match(y))&&!X(O,h.bools)&&!X(O,h.counts)||/^(true|false)$/.test(ye)?(j(O,ye),A++):j(O,Le(O))));else if(P.match(/^-.\..+=/))ae=P.match(/^-([^=]+)=([\s\S]*)$/),ae!==null&&Array.isArray(ae)&&ae.length>=3&&j(ae[1],ae[2]);else if(P.match(/^-.\..+/)&&!P.match(y))ye=r[A+1],ae=P.match(/^-(.\..+)/),ae!==null&&Array.isArray(ae)&&ae.length>=2&&(O=ae[1],ye!==void 0&&!ye.match(/^-/)&&!X(O,h.bools)&&!X(O,h.counts)?(j(O,ye),A++):j(O,Le(O)));else if(P.match(/^-[^-]+/)&&!P.match(y)){de=P.slice(1,-1).split(""),G=!1;for(let qt=0;qt<de.length;qt++){if(ye=P.slice(qt+2),de[qt+1]&&de[qt+1]==="="){Et=P.slice(qt+3),O=de[qt],X(O,h.arrays)?A=W(A,O,r,Et):X(O,h.nargs)!==!1?A=_(A,O,r,Et):j(O,Et),G=!0;break}if(ye==="-"){j(de[qt],ye);continue}if(/[A-Za-z]/.test(de[qt])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(ye)&&X(ye,h.bools)===!1){j(de[qt],ye),G=!0;break}if(de[qt+1]&&de[qt+1].match(/\W/)){j(de[qt],ye),G=!0;break}else j(de[qt],Le(de[qt]))}O=P.slice(-1)[0],!G&&O!=="-"&&(X(O,h.arrays)?A=W(A,O,r):X(O,h.nargs)!==!1?A=_(A,O,r):(ye=r[A+1],ye!==void 0&&(!/^(-|--)[^-]/.test(ye)||ye.match(y))&&!X(O,h.bools)&&!X(O,h.counts)||/^(true|false)$/.test(ye)?(j(O,ye),A++):j(O,Le(O))))}else if(P.match(/^-[0-9]$/)&&P.match(y)&&X(P.slice(1),h.bools))O=P.slice(1),j(O,Le(O));else if(P==="--"){S=r.slice(A+1);break}else if(a["halt-at-non-option"]){S=r.slice(A);break}else R(P)}N(v,!0),N(v,!1),z(v),B(),Z(v,h.aliases,c,!0),K(v),a["set-placeholder-key"]&&me(v),Object.keys(h.counts).forEach(function(A){J(v,A.split("."))||j(A,0)}),d&&S.length&&(v[f]=[]),S.forEach(function(A){v[f].push(A)}),a["camel-case-expansion"]&&a["strip-dashed"]&&Object.keys(v).filter(A=>A!=="--"&&A.includes("-")).forEach(A=>{delete v[A]}),a["strip-aliased"]&&[].concat(...Object.keys(o).map(A=>o[A])).forEach(A=>{a["camel-case-expansion"]&&A.includes("-")&&delete v[A.split(".").map(P=>Ir(P)).join(".")],delete v[A]});function R(A){let P=L("_",A);(typeof P=="string"||typeof P=="number")&&v._.push(P)}function _(A,P,te,G){let O,de=X(P,h.nargs);if(de=typeof de!="number"||isNaN(de)?1:de,de===0)return as(G)||(D=Error(g("Argument unexpected for: %s",P))),j(P,Le(P)),A;let ae=as(G)?0:1;if(a["nargs-eats-options"])te.length-(A+1)+ae<de&&(D=Error(g("Not enough arguments following: %s",P))),ae=de;else{for(O=A+1;O<te.length&&(!te[O].match(/^-[^0-9]/)||te[O].match(y)||Ze(te[O]));O++)ae++;ae<de&&(D=Error(g("Not enough arguments following: %s",P)))}let ye=Math.min(ae,de);for(!as(G)&&ye>0&&(j(P,G),ye--),O=A+1;O<ye+A+1;O++)j(P,te[O]);return A+ye}function W(A,P,te,G){let O=[],de=G||te[A+1],ae=X(P,h.nargs);if(X(P,h.bools)&&!/^(true|false)$/.test(de))O.push(!0);else if(as(de)||as(G)&&/^-/.test(de)&&!y.test(de)&&!Ze(de)){if(c[P]!==void 0){let ye=c[P];O=Array.isArray(ye)?ye:[ye]}}else{as(G)||O.push($(P,G,!0));for(let ye=A+1;ye<te.length&&!(!a["greedy-arrays"]&&O.length>0||ae&&typeof ae=="number"&&O.length>=ae||(de=te[ye],/^-/.test(de)&&!y.test(de)&&!Ze(de)));ye++)A=ye,O.push($(P,de,i))}return typeof ae=="number"&&(ae&&O.length<ae||isNaN(ae)&&O.length===0)&&(D=Error(g("Not enough arguments following: %s",P))),j(P,O),A}function j(A,P,te=i){if(/-/.test(A)&&a["camel-case-expansion"]){let de=A.split(".").map(function(ae){return Ir(ae)}).join(".");M(A,de)}let G=$(A,P,te),O=A.split(".");Q(v,O,G),h.aliases[A]&&h.aliases[A].forEach(function(de){let ae=de.split(".");Q(v,ae,G)}),O.length>1&&a["dot-notation"]&&(h.aliases[O[0]]||[]).forEach(function(de){let ae=de.split("."),ye=[].concat(O);ye.shift(),ae=ae.concat(ye),(h.aliases[A]||[]).includes(ae.join("."))||Q(v,ae,G)}),X(A,h.normalize)&&!X(A,h.arrays)&&[A].concat(h.aliases[A]||[]).forEach(function(ae){Object.defineProperty(E,ae,{enumerable:!0,get(){return P},set(ye){P=typeof ye=="string"?Fn.normalize(ye):ye}})})}function M(A,P){h.aliases[A]&&h.aliases[A].length||(h.aliases[A]=[P],p[P]=!0),h.aliases[P]&&h.aliases[P].length||M(P,A)}function $(A,P,te){te&&(P=sk(P)),(X(A,h.bools)||X(A,h.counts))&&typeof P=="string"&&(P=P==="true");let G=Array.isArray(P)?P.map(function(O){return L(A,O)}):L(A,P);return X(A,h.counts)&&(as(G)||typeof G=="boolean")&&(G=Dp()),X(A,h.normalize)&&X(A,h.arrays)&&(Array.isArray(P)?G=P.map(O=>Fn.normalize(O)):G=Fn.normalize(P)),G}function L(A,P){return!a["parse-positional-numbers"]&&A==="_"||!X(A,h.strings)&&!X(A,h.bools)&&!Array.isArray(P)&&(eu(P)&&a["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${P}`)))||!as(P)&&X(A,h.numbers))&&(P=Number(P)),P}function z(A){let P=Object.create(null);Z(P,h.aliases,c),Object.keys(h.configs).forEach(function(te){let G=A[te]||P[te];if(G)try{let O=null,de=Fn.resolve(Fn.cwd(),G),ae=h.configs[te];if(typeof ae=="function"){try{O=ae(de)}catch(ye){O=ye}if(O instanceof Error){D=O;return}}else O=Fn.require(de);C(O)}catch(O){O.name==="PermissionDenied"?D=O:A[te]&&(D=Error(g("Invalid JSON config file: %s",G)))}})}function C(A,P){Object.keys(A).forEach(function(te){let G=A[te],O=P?P+"."+te:te;typeof G=="object"&&G!==null&&!Array.isArray(G)&&a["dot-notation"]?C(G,O):(!J(v,O.split("."))||X(O,h.arrays)&&a["combine-arrays"])&&j(O,G)})}function B(){typeof u<"u"&&u.forEach(function(A){C(A)})}function N(A,P){if(typeof l>"u")return;let te=typeof l=="string"?l:"",G=Fn.env();Object.keys(G).forEach(function(O){if(te===""||O.lastIndexOf(te,0)===0){let de=O.split("__").map(function(ae,ye){return ye===0&&(ae=ae.substring(te.length)),Ir(ae)});(P&&h.configs[de.join(".")]||!P)&&!J(A,de)&&j(de.join("."),G[O])}})}function K(A){let P,te=new Set;Object.keys(A).forEach(function(G){if(!te.has(G)&&(P=X(G,h.coercions),typeof P=="function"))try{let O=L(G,P(A[G]));[].concat(h.aliases[G]||[],G).forEach(de=>{te.add(de),A[de]=O})}catch(O){D=O}})}function me(A){return h.keys.forEach(P=>{~P.indexOf(".")||typeof A[P]>"u"&&(A[P]=void 0)}),A}function Z(A,P,te,G=!1){Object.keys(te).forEach(function(O){J(A,O.split("."))||(Q(A,O.split("."),te[O]),G&&(m[O]=!0),(P[O]||[]).forEach(function(de){J(A,de.split("."))||Q(A,de.split("."),te[O])}))})}function J(A,P){let te=A;a["dot-notation"]||(P=[P.join(".")]),P.slice(0,-1).forEach(function(O){te=te[O]||{}});let G=P[P.length-1];return typeof te!="object"?!1:G in te}function Q(A,P,te){let G=A;a["dot-notation"]||(P=[P.join(".")]),P.slice(0,-1).forEach(function(Et){Et=Yx(Et),typeof G=="object"&&G[Et]===void 0&&(G[Et]={}),typeof G[Et]!="object"||Array.isArray(G[Et])?(Array.isArray(G[Et])?G[Et].push({}):G[Et]=[G[Et],{}],G=G[Et][G[Et].length-1]):G=G[Et]});let O=Yx(P[P.length-1]),de=X(P.join("."),h.arrays),ae=Array.isArray(te),ye=a["duplicate-arguments-array"];!ye&&X(O,h.nargs)&&(ye=!0,(!as(G[O])&&h.nargs[O]===1||Array.isArray(G[O])&&G[O].length===h.nargs[O])&&(G[O]=void 0)),te===Dp()?G[O]=Dp(G[O]):Array.isArray(G[O])?ye&&de&&ae?G[O]=a["flatten-duplicate-arrays"]?G[O].concat(te):(Array.isArray(G[O][0])?G[O]:[G[O]]).concat([te]):!ye&&!!de==!!ae?G[O]=te:G[O]=G[O].concat([te]):G[O]===void 0&&de?G[O]=ae?te:[te]:ye&&!(G[O]===void 0||X(O,h.counts)||X(O,h.bools))?G[O]=[G[O],te]:G[O]=te}function Ee(...A){A.forEach(function(P){Object.keys(P||{}).forEach(function(te){h.aliases[te]||(h.aliases[te]=[].concat(o[te]||[]),h.aliases[te].concat(te).forEach(function(G){if(/-/.test(G)&&a["camel-case-expansion"]){let O=Ir(G);O!==te&&h.aliases[te].indexOf(O)===-1&&(h.aliases[te].push(O),p[O]=!0)}}),h.aliases[te].concat(te).forEach(function(G){if(G.length>1&&/[A-Z]/.test(G)&&a["camel-case-expansion"]){let O=Xc(G,"-");O!==te&&h.aliases[te].indexOf(O)===-1&&(h.aliases[te].push(O),p[O]=!0)}}),h.aliases[te].forEach(function(G){h.aliases[G]=[te].concat(h.aliases[te].filter(function(O){return G!==O}))}))})})}function X(A,P){let te=[].concat(h.aliases[A]||[],A),G=Object.keys(P),O=te.find(de=>G.includes(de));return O?P[O]:!1}function st(A){let P=Object.keys(h);return[].concat(P.map(G=>h[G])).some(function(G){return Array.isArray(G)?G.includes(A):G[A]})}function ce(A,...P){return[].concat(...P).some(function(G){let O=A.match(G);return O&&st(O[1])})}function Fe(A){if(A.match(y)||!A.match(/^-[^-]+/))return!1;let P=!0,te,G=A.slice(1).split("");for(let O=0;O<G.length;O++){if(te=A.slice(O+2),!st(G[O])){P=!1;break}if(G[O+1]&&G[O+1]==="="||te==="-"||/[A-Za-z]/.test(G[O])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(te)||G[O+1]&&G[O+1].match(/\W/))break}return P}function Ze(A){return a["unknown-options-as-args"]&&_e(A)}function _e(A){return A=A.replace(/^-{3,}/,"--"),A.match(y)||Fe(A)?!1:!ce(A,/^-+([^=]+?)=[\s\S]*$/,x,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function Le(A){return!X(A,h.bools)&&!X(A,h.counts)&&`${A}`in c?c[A]:it(Yt(A))}function it(A){return{[bs.BOOLEAN]:!0,[bs.STRING]:"",[bs.NUMBER]:void 0,[bs.ARRAY]:[]}[A]}function Yt(A){let P=bs.BOOLEAN;return X(A,h.strings)?P=bs.STRING:X(A,h.numbers)?P=bs.NUMBER:X(A,h.bools)?P=bs.BOOLEAN:X(A,h.arrays)&&(P=bs.ARRAY),P}function as(A){return A===void 0}function _r(){Object.keys(h.counts).find(A=>X(A,h.arrays)?(D=Error(g("Invalid configuration: %s, opts.count excludes opts.array.",A)),!0):X(A,h.nargs)?(D=Error(g("Invalid configuration: %s, opts.count excludes opts.narg.",A)),!0):!1)}return{aliases:Object.assign({},h.aliases),argv:Object.assign(E,v),configuration:a,defaulted:Object.assign({},m),error:D,newAliases:Object.assign({},p)}}};function tk(t){let e=[],s=Object.create(null),n=!0;for(Object.keys(t).forEach(function(r){e.push([].concat(t[r],r))});n;){n=!1;for(let r=0;r<e.length;r++)for(let i=r+1;i<e.length;i++)if(e[r].filter(function(a){return e[i].indexOf(a)!==-1}).length){e[r]=e[r].concat(e[i]),e.splice(i,1),n=!0;break}}return e.forEach(function(r){r=r.filter(function(o,a,c){return c.indexOf(o)===a});let i=r.pop();i!==void 0&&typeof i=="string"&&(s[i]=r)}),s}function Dp(t){return t!==void 0?t+1:1}function Yx(t){return t==="__proto__"?"___proto___":t}function sk(t){return typeof t=="string"&&(t[0]==="'"||t[0]==='"')&&t[t.length-1]===t[0]?t.substring(1,t.length-1):t}var ey=require("fs");var Sp,Cp,wp,Jx=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):12,Qx=(Cp=(Sp=process==null?void 0:process.versions)===null||Sp===void 0?void 0:Sp.node)!==null&&Cp!==void 0?Cp:(wp=process==null?void 0:process.version)===null||wp===void 0?void 0:wp.slice(1);if(Qx&&Number(Qx.match(/^([^.]+)/)[1])<Jx)throw Error(`yargs parser supports a minimum Node.js version of ${Jx}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`);var nk=process?process.env:{},ty=new tu({cwd:process.cwd,env:()=>nk,format:Xx.format,normalize:su.normalize,resolve:su.resolve,require:t=>{if(typeof require<"u")return require(t);if(t.match(/\.json$/))return JSON.parse((0,ey.readFileSync)(t,"utf8"));throw Error("only .json config files are supported in ESM")}}),Ca=function(e,s){return ty.parse(e.slice(),s).argv};Ca.detailed=function(t,e){return ty.parse(t.slice(),e)};Ca.camelCase=Ir;Ca.decamelize=Xc;Ca.looksLikeNumber=eu;var Ap=Ca;var Zs=require("path");function sy(){return rk()?0:1}function rk(){return ik()&&!process.defaultApp}function ik(){return!!process.versions.electron}function Ep(t){return t.slice(sy()+1)}function ny(){return process.argv[sy()]}var nt=class t extends Error{constructor(e){super(e||"yargs error"),this.name="YError",Error.captureStackTrace&&Error.captureStackTrace(this,t)}};var to=require("fs"),ry=require("util"),iy=require("path"),oy={fs:{readFileSync:to.readFileSync,writeFile:to.writeFile},format:ry.format,resolve:iy.resolve,exists:t=>{try{return(0,to.statSync)(t).isFile()}catch{return!1}}};var Ks,Fp=class{constructor(e){e=e||{},this.directory=e.directory||"./locales",this.updateFiles=typeof e.updateFiles=="boolean"?e.updateFiles:!0,this.locale=e.locale||"en",this.fallbackToLanguage=typeof e.fallbackToLanguage=="boolean"?e.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...e){if(typeof arguments[0]!="string")return this._taggedLiteral(arguments[0],...arguments);let s=e.shift(),n=function(){};return typeof e[e.length-1]=="function"&&(n=e.pop()),n=n||function(){},this.cache[this.locale]||this._readLocaleFile(),!this.cache[this.locale][s]&&this.updateFiles?(this.cache[this.locale][s]=s,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:n})):n(),Ks.format.apply(Ks.format,[this.cache[this.locale][s]||s].concat(e))}__n(){let e=Array.prototype.slice.call(arguments),s=e.shift(),n=e.shift(),r=e.shift(),i=function(){};typeof e[e.length-1]=="function"&&(i=e.pop()),this.cache[this.locale]||this._readLocaleFile();let o=r===1?s:n;this.cache[this.locale][s]&&(o=this.cache[this.locale][s][r===1?"one":"other"]),!this.cache[this.locale][s]&&this.updateFiles?(this.cache[this.locale][s]={one:s,other:n},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:i})):i();let a=[o];return~o.indexOf("%d")&&a.push(r),Ks.format.apply(Ks.format,a.concat(e))}setLocale(e){this.locale=e}getLocale(){return this.locale}updateLocale(e){this.cache[this.locale]||this._readLocaleFile();for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&(this.cache[this.locale][s]=e[s])}_taggedLiteral(e,...s){let n="";return e.forEach(function(r,i){let o=s[i+1];n+=r,typeof o<"u"&&(n+="%s")}),this.__.apply(this,[n].concat([].slice.call(s,1)))}_enqueueWrite(e){this.writeQueue.push(e),this.writeQueue.length===1&&this._processWriteQueue()}_processWriteQueue(){let e=this,s=this.writeQueue[0],n=s.directory,r=s.locale,i=s.cb,o=this._resolveLocaleFile(n,r),a=JSON.stringify(this.cache[r],null,2);Ks.fs.writeFile(o,a,"utf-8",function(c){e.writeQueue.shift(),e.writeQueue.length>0&&e._processWriteQueue(),i(c)})}_readLocaleFile(){let e={},s=this._resolveLocaleFile(this.directory,this.locale);try{Ks.fs.readFileSync&&(e=JSON.parse(Ks.fs.readFileSync(s,"utf-8")))}catch(n){if(n instanceof SyntaxError&&(n.message="syntax error in "+s),n.code==="ENOENT")e={};else throw n}this.cache[this.locale]=e}_resolveLocaleFile(e,s){let n=Ks.resolve(e,"./",s+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(n)&&~s.lastIndexOf("_")){let r=Ks.resolve(e,"./",s.split("_")[0]+".json");this._fileExistsSync(r)&&(n=r)}return n}_fileExistsSync(e){return Ks.exists(e)}};function ay(t,e){Ks=e;let s=new Fp(t);return{__:s.__.bind(s),__n:s.__n.bind(s),setLocale:s.setLocale.bind(s),getLocale:s.getLocale.bind(s),updateLocale:s.updateLocale.bind(s),locale:s.locale}}var ok=t=>ay(t,oy),cy=ok;var uk={},ak="require is not supported by ESM",uy="loading a directory of commands is not supported yet for ESM",wa;try{wa=(0,py.fileURLToPath)(uk.url)}catch{wa=process.cwd()}var ck=wa.substring(0,wa.lastIndexOf("node_modules")),_p={assert:{notStrictEqual:nu.notStrictEqual,strictEqual:nu.strictEqual},cliui:vp,findUp:Kx,getEnv:t=>process.env[t],inspect:ly.inspect,getCallerFile:()=>{throw new nt(uy)},getProcessArgvBin:ny,mainFilename:ck||process.cwd(),Parser:Ap,path:{basename:Zs.basename,dirname:Zs.dirname,extname:Zs.extname,relative:Zs.relative,resolve:Zs.resolve},process:{argv:()=>process.argv,cwd:process.cwd,emitWarning:(t,e)=>process.emitWarning(t,e),execPath:()=>process.execPath,exit:process.exit,nextTick:process.nextTick,stdColumns:typeof process.stdout.columns<"u"?process.stdout.columns:null},readFileSync:dy.readFileSync,require:()=>{throw new nt(ak)},requireDirectory:()=>{throw new nt(uy)},stringWidth:t=>[...t].length,y18n:cy({directory:(0,Zs.resolve)(wa,"../../../locales"),updateFiles:!1})};function Vt(t,e,s,n){s.assert.notStrictEqual(t,e,n)}function kp(t,e){e.assert.strictEqual(typeof t,"string")}function so(t){return Object.keys(t)}function rt(t){return!!t&&!!t.then&&typeof t.then=="function"}function Xn(t){let s=t.replace(/\s{2,}/g," ").split(/\s+(?![^[]*]|[^<]*>)/),n=/\.*[\][<>]/g,r=s.shift();if(!r)throw new Error(`No command found in: ${t}`);let i={cmd:r.replace(n,""),demanded:[],optional:[]};return s.forEach((o,a)=>{let c=!1;o=o.replace(/\s/g,""),/\.+[\]>]/.test(o)&&a===s.length-1&&(c=!0),/^\[/.test(o)?i.optional.push({cmd:o.replace(n,"").split("|"),variadic:c}):i.demanded.push({cmd:o.replace(n,"").split("|"),variadic:c})}),i}var lk=["first","second","third","fourth","fifth","sixth"];function ue(t,e,s){function n(){return typeof t=="object"?[{demanded:[],optional:[]},t,e]:[Xn(`cmd ${t}`),e,s]}try{let r=0,[i,o,a]=n(),c=[].slice.call(o);for(;c.length&&c[c.length-1]===void 0;)c.pop();let u=a||c.length;if(u<i.demanded.length)throw new nt(`Not enough arguments provided. Expected ${i.demanded.length} but received ${c.length}.`);let l=i.demanded.length+i.optional.length;if(u>l)throw new nt(`Too many arguments provided. Expected max ${l} but received ${u}.`);i.demanded.forEach(d=>{let f=c.shift(),p=fy(f);d.cmd.filter(g=>g===p||g==="*").length===0&&my(p,d.cmd,r),r+=1}),i.optional.forEach(d=>{if(c.length===0)return;let f=c.shift(),p=fy(f);d.cmd.filter(g=>g===p||g==="*").length===0&&my(p,d.cmd,r),r+=1})}catch(r){console.warn(r.stack)}}function fy(t){return Array.isArray(t)?"array":t===null?"null":typeof t}function my(t,e,s){throw new nt(`Invalid ${lk[s]||"manyith"} argument. Expected ${e.join(" or ")} but received ${t}.`)}var ru=class{constructor(e){this.globalMiddleware=[],this.frozens=[],this.yargs=e}addMiddleware(e,s,n=!0,r=!1){if(ue("<array|function> [boolean] [boolean] [boolean]",[e,s,n],arguments.length),Array.isArray(e)){for(let i=0;i<e.length;i++){if(typeof e[i]!="function")throw Error("middleware must be a function");let o=e[i];o.applyBeforeValidation=s,o.global=n}Array.prototype.push.apply(this.globalMiddleware,e)}else if(typeof e=="function"){let i=e;i.applyBeforeValidation=s,i.global=n,i.mutates=r,this.globalMiddleware.push(e)}return this.yargs}addCoerceMiddleware(e,s){let n=this.yargs.getAliases();return this.globalMiddleware=this.globalMiddleware.filter(r=>{let i=[...n[s]||[],s];return r.option?!i.includes(r.option):!0}),e.option=s,this.addMiddleware(e,!0,!0,!0)}getMiddleware(){return this.globalMiddleware}freeze(){this.frozens.push([...this.globalMiddleware])}unfreeze(){let e=this.frozens.pop();e!==void 0&&(this.globalMiddleware=e)}reset(){this.globalMiddleware=this.globalMiddleware.filter(e=>e.global)}};function hy(t){return t?t.map(e=>(e.applyBeforeValidation=!1,e)):[]}function Rr(t,e,s,n){return s.reduce((r,i)=>{if(i.applyBeforeValidation!==n)return r;if(i.mutates){if(i.applied)return r;i.applied=!0}if(rt(r))return r.then(o=>Promise.all([o,i(o,e)])).then(([o,a])=>Object.assign(o,a));{let o=i(r,e);return rt(o)?o.then(a=>Object.assign(r,a)):Object.assign(r,o)}},t)}function Tr(t,e,s=n=>{throw n}){try{let n=dk(t)?t():t;return rt(n)?n.then(r=>e(r)):e(n)}catch(n){return s(n)}}function dk(t){return typeof t=="function"}function Ip(t){if(typeof require>"u")return null;for(let e=0,s=Object.keys(require.cache),n;e<s.length;e++)if(n=require.cache[s[e]],n.exports===t)return n;return null}var no=/(^\*)|(^\$0)/,Rp=class{constructor(e,s,n,r){this.requireCache=new Set,this.handlers={},this.aliasMap={},this.frozens=[],this.shim=r,this.usage=e,this.globalMiddleware=n,this.validation=s}addDirectory(e,s,n,r){r=r||{},typeof r.recurse!="boolean"&&(r.recurse=!1),Array.isArray(r.extensions)||(r.extensions=["js"]);let i=typeof r.visit=="function"?r.visit:o=>o;r.visit=(o,a,c)=>{let u=i(o,a,c);if(u){if(this.requireCache.has(a))return u;this.requireCache.add(a),this.addHandler(u)}return u},this.shim.requireDirectory({require:s,filename:n},e,r)}addHandler(e,s,n,r,i,o){let a=[],c=hy(i);if(r=r||(()=>{}),Array.isArray(e))if(pk(e))[e,...a]=e;else for(let u of e)this.addHandler(u);else if(mk(e)){let u=Array.isArray(e.command)||typeof e.command=="string"?e.command:this.moduleName(e);e.aliases&&(u=[].concat(u).concat(e.aliases)),this.addHandler(u,this.extractDesc(e),e.builder,e.handler,e.middlewares,e.deprecated);return}else if(gy(n)){this.addHandler([e].concat(a),s,n.builder,n.handler,n.middlewares,n.deprecated);return}if(typeof e=="string"){let u=Xn(e);a=a.map(f=>Xn(f).cmd);let l=!1,d=[u.cmd].concat(a).filter(f=>no.test(f)?(l=!0,!1):!0);d.length===0&&l&&d.push("$0"),l&&(u.cmd=d[0],a=d.slice(1),e=e.replace(no,u.cmd)),a.forEach(f=>{this.aliasMap[f]=u.cmd}),s!==!1&&this.usage.command(e,s,l,a,o),this.handlers[u.cmd]={original:e,description:s,handler:r,builder:n||{},middlewares:c,deprecated:o,demanded:u.demanded,optional:u.optional},l&&(this.defaultCommand=this.handlers[u.cmd])}}getCommandHandlers(){return this.handlers}getCommands(){return Object.keys(this.handlers).concat(Object.keys(this.aliasMap))}hasDefaultCommand(){return!!this.defaultCommand}runCommand(e,s,n,r,i,o){let a=this.handlers[e]||this.handlers[this.aliasMap[e]]||this.defaultCommand,c=s.getInternalMethods().getContext(),u=c.commands.slice(),l=!e;e&&(c.commands.push(e),c.fullCommands.push(a.original));let d=this.applyBuilderUpdateUsageAndParse(l,a,s,n.aliases,u,r,i,o);return rt(d)?d.then(f=>this.applyMiddlewareAndGetResult(l,a,f.innerArgv,c,i,f.aliases,s)):this.applyMiddlewareAndGetResult(l,a,d.innerArgv,c,i,d.aliases,s)}applyBuilderUpdateUsageAndParse(e,s,n,r,i,o,a,c){let u=s.builder,l=n;if(iu(u)){n.getInternalMethods().getUsageInstance().freeze();let d=u(n.getInternalMethods().reset(r),c);if(rt(d))return d.then(f=>(l=yy(f)?f:n,this.parseAndUpdateUsage(e,s,l,i,o,a)))}else fk(u)&&(n.getInternalMethods().getUsageInstance().freeze(),l=n.getInternalMethods().reset(r),Object.keys(s.builder).forEach(d=>{l.option(d,u[d])}));return this.parseAndUpdateUsage(e,s,l,i,o,a)}parseAndUpdateUsage(e,s,n,r,i,o){e&&n.getInternalMethods().getUsageInstance().unfreeze(!0),this.shouldUpdateUsage(n)&&n.getInternalMethods().getUsageInstance().usage(this.usageFromParentCommandsCommandHandler(r,s),s.description);let a=n.getInternalMethods().runYargsParserAndExecuteCommands(null,void 0,!0,i,o);return rt(a)?a.then(c=>({aliases:n.parsed.aliases,innerArgv:c})):{aliases:n.parsed.aliases,innerArgv:a}}shouldUpdateUsage(e){return!e.getInternalMethods().getUsageInstance().getUsageDisabled()&&e.getInternalMethods().getUsageInstance().getUsage().length===0}usageFromParentCommandsCommandHandler(e,s){let n=no.test(s.original)?s.original.replace(no,"").trim():s.original,r=e.filter(i=>!no.test(i));return r.push(n),`$0 ${r.join(" ")}`}handleValidationAndGetResult(e,s,n,r,i,o,a,c){if(!o.getInternalMethods().getHasOutput()){let u=o.getInternalMethods().runValidation(i,c,o.parsed.error,e);n=Tr(n,l=>(u(l),l))}if(s.handler&&!o.getInternalMethods().getHasOutput()){o.getInternalMethods().setHasOutput();let u=!!o.getOptions().configuration["populate--"];o.getInternalMethods().postProcess(n,u,!1,!1),n=Rr(n,o,a,!1),n=Tr(n,l=>{let d=s.handler(l);return rt(d)?d.then(()=>l):l}),e||o.getInternalMethods().getUsageInstance().cacheHelpMessage(),rt(n)&&!o.getInternalMethods().hasParseCallback()&&n.catch(l=>{try{o.getInternalMethods().getUsageInstance().fail(null,l)}catch{}})}return e||(r.commands.pop(),r.fullCommands.pop()),n}applyMiddlewareAndGetResult(e,s,n,r,i,o,a){let c={};if(i)return n;a.getInternalMethods().getHasOutput()||(c=this.populatePositionals(s,n,r,a));let u=this.globalMiddleware.getMiddleware().slice(0).concat(s.middlewares),l=Rr(n,a,u,!0);return rt(l)?l.then(d=>this.handleValidationAndGetResult(e,s,d,r,o,a,u,c)):this.handleValidationAndGetResult(e,s,l,r,o,a,u,c)}populatePositionals(e,s,n,r){s._=s._.slice(n.commands.length);let i=e.demanded.slice(0),o=e.optional.slice(0),a={};for(this.validation.positionalCount(i.length,s._.length);i.length;){let c=i.shift();this.populatePositional(c,s,a)}for(;o.length;){let c=o.shift();this.populatePositional(c,s,a)}return s._=n.commands.concat(s._.map(c=>""+c)),this.postProcessPositionals(s,a,this.cmdToParseOptions(e.original),r),a}populatePositional(e,s,n){let r=e.cmd[0];e.variadic?n[r]=s._.splice(0).map(String):s._.length&&(n[r]=[String(s._.shift())])}cmdToParseOptions(e){let s={array:[],default:{},alias:{},demand:{}},n=Xn(e);return n.demanded.forEach(r=>{let[i,...o]=r.cmd;r.variadic&&(s.array.push(i),s.default[i]=[]),s.alias[i]=o,s.demand[i]=!0}),n.optional.forEach(r=>{let[i,...o]=r.cmd;r.variadic&&(s.array.push(i),s.default[i]=[]),s.alias[i]=o}),s}postProcessPositionals(e,s,n,r){let i=Object.assign({},r.getOptions());i.default=Object.assign(n.default,i.default);for(let u of Object.keys(n.alias))i.alias[u]=(i.alias[u]||[]).concat(n.alias[u]);i.array=i.array.concat(n.array),i.config={};let o=[];if(Object.keys(s).forEach(u=>{s[u].map(l=>{i.configuration["unknown-options-as-args"]&&(i.key[u]=!0),o.push(`--${u}`),o.push(l)})}),!o.length)return;let a=Object.assign({},i.configuration,{"populate--":!1}),c=this.shim.Parser.detailed(o,Object.assign({},i,{configuration:a}));if(c.error)r.getInternalMethods().getUsageInstance().fail(c.error.message,c.error);else{let u=Object.keys(s);Object.keys(s).forEach(l=>{u.push(...c.aliases[l])}),Object.keys(c.argv).forEach(l=>{u.includes(l)&&(s[l]||(s[l]=c.argv[l]),!this.isInConfigs(r,l)&&!this.isDefaulted(r,l)&&Object.prototype.hasOwnProperty.call(e,l)&&Object.prototype.hasOwnProperty.call(c.argv,l)&&(Array.isArray(e[l])||Array.isArray(c.argv[l]))?e[l]=[].concat(e[l],c.argv[l]):e[l]=c.argv[l])})}}isDefaulted(e,s){let{default:n}=e.getOptions();return Object.prototype.hasOwnProperty.call(n,s)||Object.prototype.hasOwnProperty.call(n,this.shim.Parser.camelCase(s))}isInConfigs(e,s){let{configObjects:n}=e.getOptions();return n.some(r=>Object.prototype.hasOwnProperty.call(r,s))||n.some(r=>Object.prototype.hasOwnProperty.call(r,this.shim.Parser.camelCase(s)))}runDefaultBuilderOn(e){if(!this.defaultCommand)return;if(this.shouldUpdateUsage(e)){let n=no.test(this.defaultCommand.original)?this.defaultCommand.original:this.defaultCommand.original.replace(/^[^[\]<>]*/,"$0 ");e.getInternalMethods().getUsageInstance().usage(n,this.defaultCommand.description)}let s=this.defaultCommand.builder;if(iu(s))return s(e,!0);gy(s)||Object.keys(s).forEach(n=>{e.option(n,s[n])})}moduleName(e){let s=Ip(e);if(!s)throw new Error(`No command name given for module: ${this.shim.inspect(e)}`);return this.commandFromFilename(s.filename)}commandFromFilename(e){return this.shim.path.basename(e,this.shim.path.extname(e))}extractDesc({describe:e,description:s,desc:n}){for(let r of[e,s,n]){if(typeof r=="string"||r===!1)return r;Vt(r,!0,this.shim)}return!1}freeze(){this.frozens.push({handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand})}unfreeze(){let e=this.frozens.pop();Vt(e,void 0,this.shim),{handlers:this.handlers,aliasMap:this.aliasMap,defaultCommand:this.defaultCommand}=e}reset(){return this.handlers={},this.aliasMap={},this.defaultCommand=void 0,this.requireCache=new Set,this}};function xy(t,e,s,n){return new Rp(t,e,s,n)}function gy(t){return typeof t=="object"&&!!t.builder&&typeof t.handler=="function"}function pk(t){return t.every(e=>typeof e=="string")}function iu(t){return typeof t=="function"}function fk(t){return typeof t=="object"}function mk(t){return typeof t=="object"&&!Array.isArray(t)}function er(t={},e=()=>!0){let s={};return so(t).forEach(n=>{e(n,t[n])&&(s[n]=t[n])}),s}function tr(t){typeof process>"u"||[process.stdout,process.stderr].forEach(e=>{let s=e;s._handle&&s.isTTY&&typeof s._handle.setBlocking=="function"&&s._handle.setBlocking(t)})}function hk(t){return typeof t=="boolean"}function vy(t,e){let s=e.y18n.__,n={},r=[];n.failFn=function($){r.push($)};let i=null,o=null,a=!0;n.showHelpOnFail=function($=!0,L){let[z,C]=typeof $=="string"?[!0,$]:[$,L];return t.getInternalMethods().isGlobalContext()&&(o=C),i=C,a=z,n};let c=!1;n.fail=function($,L){let z=t.getInternalMethods().getLoggerInstance();if(r.length)for(let C=r.length-1;C>=0;--C){let B=r[C];if(hk(B)){if(L)throw L;if($)throw Error($)}else B($,L,n)}else{if(t.getExitProcess()&&tr(!0),!c){c=!0,a&&(t.showHelp("error"),z.error()),($||L)&&z.error($||L);let C=i||o;C&&(($||L)&&z.error(""),z.error(C))}if(L=L||new nt($),t.getExitProcess())return t.exit(1);if(t.getInternalMethods().hasParseCallback())return t.exit(1,L);throw L}};let u=[],l=!1;n.usage=(M,$)=>M===null?(l=!0,u=[],n):(l=!1,u.push([M,$||""]),n),n.getUsage=()=>u,n.getUsageDisabled=()=>l,n.getPositionalGroupName=()=>s("Positionals:");let d=[];n.example=(M,$)=>{d.push([M,$||""])};let f=[];n.command=function($,L,z,C,B=!1){z&&(f=f.map(N=>(N[2]=!1,N))),f.push([$,L||"",z,C,B])},n.getCommands=()=>f;let p={};n.describe=function($,L){Array.isArray($)?$.forEach(z=>{n.describe(z,L)}):typeof $=="object"?Object.keys($).forEach(z=>{n.describe(z,$[z])}):p[$]=L},n.getDescriptions=()=>p;let m=[];n.epilog=M=>{m.push(M)};let g=!1,h;n.wrap=M=>{g=!0,h=M},n.getWrap=()=>e.getEnv("YARGS_DISABLE_WRAP")?null:(g||(h=_(),g=!0),h);let y="__yargsString__:";n.deferY18nLookup=M=>y+M,n.help=function(){if(S)return S;D();let $=t.customScriptName?t.$0:e.path.basename(t.$0),L=t.getDemandedOptions(),z=t.getDemandedCommands(),C=t.getDeprecatedOptions(),B=t.getGroups(),N=t.getOptions(),K=[];K=K.concat(Object.keys(p)),K=K.concat(Object.keys(L)),K=K.concat(Object.keys(z)),K=K.concat(Object.keys(N.default)),K=K.filter(E),K=Object.keys(K.reduce((ce,Fe)=>(Fe!=="_"&&(ce[Fe]=!0),ce),{}));let me=n.getWrap(),Z=e.cliui({width:me,wrap:!!me});if(!l){if(u.length)u.forEach(ce=>{Z.div({text:`${ce[0].replace(/\$0/g,$)}`}),ce[1]&&Z.div({text:`${ce[1]}`,padding:[1,0,0,0]})}),Z.div();else if(f.length){let ce=null;z._?ce=`${$} <${s("command")}>
100
100
  `:ce=`${$} [${s("command")}]
101
- `,Z.div(`${ce}`)}}if(f.length>1||f.length===1&&!f[0][2]){Z.div(s("Commands:"));let ce=t.getInternalMethods().getContext(),Fe=ce.commands.length?`${ce.commands.join(" ")} `:"";t.getInternalMethods().getParserConfiguration()["sort-commands"]===!0&&(f=f.sort((_e,Le)=>_e[0].localeCompare(Le[0])));let Ze=$?`${$} `:"";f.forEach(_e=>{let Le=`${Ze}${Fe}${_e[0].replace(/^\$0 ?/,"")}`;Z.span({text:Le,padding:[0,2,0,2],width:x(f,me,`${$}${Fe}`)+4},{text:_e[1]});let it=[];_e[2]&&it.push(`[${s("default")}]`),_e[3]&&_e[3].length&&it.push(`[${s("aliases:")} ${_e[3].join(", ")}]`),_e[4]&&(typeof _e[4]=="string"?it.push(`[${s("deprecated: %s",_e[4])}]`):it.push(`[${s("deprecated")}]`)),it.length?Z.div({text:it.join(" "),padding:[0,0,0,2],align:"right"}):Z.div()}),Z.div()}let J=(Object.keys(N.alias)||[]).concat(Object.keys(t.parsed.newAliases)||[]);K=K.filter(ce=>!t.parsed.newAliases[ce]&&J.every(Fe=>(N.alias[Fe]||[]).indexOf(ce)===-1));let Q=s("Options:");B[Q]||(B[Q]=[]),v(K,N.alias,B,Q);let Ee=ce=>/^--/.test(ou(ce)),X=Object.keys(B).filter(ce=>B[ce].length>0).map(ce=>{let Fe=B[ce].filter(E).map(Ze=>{if(J.includes(Ze))return Ze;for(let _e=0,Le;(Le=J[_e])!==void 0;_e++)if((N.alias[Le]||[]).includes(Ze))return Le;return Ze});return{groupName:ce,normalizedKeys:Fe}}).filter(({normalizedKeys:ce})=>ce.length>0).map(({groupName:ce,normalizedKeys:Fe})=>{let Ze=Fe.reduce((_e,Le)=>(_e[Le]=[Le].concat(N.alias[Le]||[]).map(it=>ce===n.getPositionalGroupName()?it:(/^[0-9]$/.test(it)?N.boolean.includes(Le)?"-":"--":it.length>1?"--":"-")+it).sort((it,Yt)=>Ee(it)===Ee(Yt)?0:Ee(it)?1:-1).join(", "),_e),{});return{groupName:ce,normalizedKeys:Fe,switches:Ze}});if(X.filter(({groupName:ce})=>ce!==n.getPositionalGroupName()).some(({normalizedKeys:ce,switches:Fe})=>!ce.every(Ze=>Ee(Fe[Ze])))&&X.filter(({groupName:ce})=>ce!==n.getPositionalGroupName()).forEach(({normalizedKeys:ce,switches:Fe})=>{ce.forEach(Ze=>{Ee(Fe[Ze])&&(Fe[Ze]=gk(Fe[Ze],4))})}),X.forEach(({groupName:ce,normalizedKeys:Fe,switches:Ze})=>{Z.div(ce),Fe.forEach(_e=>{let Le=Ze[_e],it=p[_e]||"",Yt=null;it.includes(y)&&(it=s(it.substring(y.length))),N.boolean.includes(_e)&&(Yt=`[${s("boolean")}]`),N.count.includes(_e)&&(Yt=`[${s("count")}]`),N.string.includes(_e)&&(Yt=`[${s("string")}]`),N.normalize.includes(_e)&&(Yt=`[${s("string")}]`),N.array.includes(_e)&&(Yt=`[${s("array")}]`),N.number.includes(_e)&&(Yt=`[${s("number")}]`);let as=P=>typeof P=="string"?`[${s("deprecated: %s",P)}]`:`[${s("deprecated")}]`,_r=[_e in C?as(C[_e]):null,Yt,_e in L?`[${s("required")}]`:null,N.choices&&N.choices[_e]?`[${s("choices:")} ${n.stringifiedValues(N.choices[_e])}]`:null,T(N.default[_e],N.defaultDescription[_e])].filter(Boolean).join(" ");Z.span({text:ou(Le),padding:[0,2,0,2+by(Le)],width:x(Ze,me)+4},it);let A=t.getInternalMethods().getUsageConfiguration()["hide-types"]===!0;_r&&!A?Z.div({text:_r,padding:[0,0,0,2],align:"right"}):Z.div()}),Z.div()}),d.length&&(Z.div(s("Examples:")),d.forEach(ce=>{ce[0]=ce[0].replace(/\$0/g,$)}),d.forEach(ce=>{ce[1]===""?Z.div({text:ce[0],padding:[0,2,0,2]}):Z.div({text:ce[0],padding:[0,2,0,2],width:x(d,me)+4},{text:ce[1]})}),Z.div()),m.length>0){let ce=m.map(Fe=>Fe.replace(/\$0/g,$)).join(`
101
+ `,Z.div(`${ce}`)}}if(f.length>1||f.length===1&&!f[0][2]){Z.div(s("Commands:"));let ce=t.getInternalMethods().getContext(),Fe=ce.commands.length?`${ce.commands.join(" ")} `:"";t.getInternalMethods().getParserConfiguration()["sort-commands"]===!0&&(f=f.sort((_e,Le)=>_e[0].localeCompare(Le[0])));let Ze=$?`${$} `:"";f.forEach(_e=>{let Le=`${Ze}${Fe}${_e[0].replace(/^\$0 ?/,"")}`;Z.span({text:Le,padding:[0,2,0,2],width:x(f,me,`${$}${Fe}`)+4},{text:_e[1]});let it=[];_e[2]&&it.push(`[${s("default")}]`),_e[3]&&_e[3].length&&it.push(`[${s("aliases:")} ${_e[3].join(", ")}]`),_e[4]&&(typeof _e[4]=="string"?it.push(`[${s("deprecated: %s",_e[4])}]`):it.push(`[${s("deprecated")}]`)),it.length?Z.div({text:it.join(" "),padding:[0,0,0,2],align:"right"}):Z.div()}),Z.div()}let J=(Object.keys(N.alias)||[]).concat(Object.keys(t.parsed.newAliases)||[]);K=K.filter(ce=>!t.parsed.newAliases[ce]&&J.every(Fe=>(N.alias[Fe]||[]).indexOf(ce)===-1));let Q=s("Options:");B[Q]||(B[Q]=[]),v(K,N.alias,B,Q);let Ee=ce=>/^--/.test(ou(ce)),X=Object.keys(B).filter(ce=>B[ce].length>0).map(ce=>{let Fe=B[ce].filter(E).map(Ze=>{if(J.includes(Ze))return Ze;for(let _e=0,Le;(Le=J[_e])!==void 0;_e++)if((N.alias[Le]||[]).includes(Ze))return Le;return Ze});return{groupName:ce,normalizedKeys:Fe}}).filter(({normalizedKeys:ce})=>ce.length>0).map(({groupName:ce,normalizedKeys:Fe})=>{let Ze=Fe.reduce((_e,Le)=>(_e[Le]=[Le].concat(N.alias[Le]||[]).map(it=>ce===n.getPositionalGroupName()?it:(/^[0-9]$/.test(it)?N.boolean.includes(Le)?"-":"--":it.length>1?"--":"-")+it).sort((it,Yt)=>Ee(it)===Ee(Yt)?0:Ee(it)?1:-1).join(", "),_e),{});return{groupName:ce,normalizedKeys:Fe,switches:Ze}});if(X.filter(({groupName:ce})=>ce!==n.getPositionalGroupName()).some(({normalizedKeys:ce,switches:Fe})=>!ce.every(Ze=>Ee(Fe[Ze])))&&X.filter(({groupName:ce})=>ce!==n.getPositionalGroupName()).forEach(({normalizedKeys:ce,switches:Fe})=>{ce.forEach(Ze=>{Ee(Fe[Ze])&&(Fe[Ze]=gk(Fe[Ze],4))})}),X.forEach(({groupName:ce,normalizedKeys:Fe,switches:Ze})=>{Z.div(ce),Fe.forEach(_e=>{let Le=Ze[_e],it=p[_e]||"",Yt=null;it.includes(y)&&(it=s(it.substring(y.length))),N.boolean.includes(_e)&&(Yt=`[${s("boolean")}]`),N.count.includes(_e)&&(Yt=`[${s("count")}]`),N.string.includes(_e)&&(Yt=`[${s("string")}]`),N.normalize.includes(_e)&&(Yt=`[${s("string")}]`),N.array.includes(_e)&&(Yt=`[${s("array")}]`),N.number.includes(_e)&&(Yt=`[${s("number")}]`);let as=P=>typeof P=="string"?`[${s("deprecated: %s",P)}]`:`[${s("deprecated")}]`,_r=[_e in C?as(C[_e]):null,Yt,_e in L?`[${s("required")}]`:null,N.choices&&N.choices[_e]?`[${s("choices:")} ${n.stringifiedValues(N.choices[_e])}]`:null,R(N.default[_e],N.defaultDescription[_e])].filter(Boolean).join(" ");Z.span({text:ou(Le),padding:[0,2,0,2+by(Le)],width:x(Ze,me)+4},it);let A=t.getInternalMethods().getUsageConfiguration()["hide-types"]===!0;_r&&!A?Z.div({text:_r,padding:[0,0,0,2],align:"right"}):Z.div()}),Z.div()}),d.length&&(Z.div(s("Examples:")),d.forEach(ce=>{ce[0]=ce[0].replace(/\$0/g,$)}),d.forEach(ce=>{ce[1]===""?Z.div({text:ce[0],padding:[0,2,0,2]}):Z.div({text:ce[0],padding:[0,2,0,2],width:x(d,me)+4},{text:ce[1]})}),Z.div()),m.length>0){let ce=m.map(Fe=>Fe.replace(/\$0/g,$)).join(`
102
102
  `);Z.div(`${ce}
103
- `)}return Z.toString().replace(/\s*$/,"")};function x(j,$,L){let z=0;return Array.isArray(j)||(j=Object.values(j).map(C=>[C])),j.forEach(C=>{z=Math.max(e.stringWidth(L?`${L} ${ou(C[0])}`:ou(C[0]))+by(C[0]),z)}),$&&(z=Math.min(z,parseInt(($*.5).toString(),10))),z}function D(){let j=t.getDemandedOptions(),$=t.getOptions();(Object.keys($.alias)||[]).forEach(L=>{$.alias[L].forEach(z=>{p[z]&&n.describe(L,p[z]),z in j&&t.demandOption(L,j[z]),$.boolean.includes(z)&&t.boolean(L),$.count.includes(z)&&t.count(L),$.string.includes(z)&&t.string(L),$.normalize.includes(z)&&t.normalize(L),$.array.includes(z)&&t.array(L),$.number.includes(z)&&t.number(L)})})}let S;n.cacheHelpMessage=function(){S=this.help()},n.clearCachedHelpMessage=function(){S=void 0},n.hasCachedHelpMessage=function(){return!!S};function v(j,$,L,z){let C=[],B=null;return Object.keys(L).forEach(N=>{C=C.concat(L[N])}),j.forEach(N=>{B=[N].concat($[N]),B.some(K=>C.indexOf(K)!==-1)||L[z].push(N)}),C}function E(j){return t.getOptions().hiddenOptions.indexOf(j)<0||t.parsed.argv[t.getOptions().showHiddenOpt]}n.showHelp=j=>{let $=t.getInternalMethods().getLoggerInstance();j||(j="error"),(typeof j=="function"?j:$[j])(n.help())},n.functionDescription=j=>["(",j.name?e.Parser.decamelize(j.name,"-"):s("generated-value"),")"].join(""),n.stringifiedValues=function($,L){let z="",C=L||", ",B=[].concat($);return!$||!B.length||B.forEach(N=>{z.length&&(z+=C),z+=JSON.stringify(N)}),z};function T(j,$){let L=`[${s("default:")} `;if(j===void 0&&!$)return null;if($)L+=$;else switch(typeof j){case"string":L+=`"${j}"`;break;case"object":L+=JSON.stringify(j);break;default:L+=j}return`${L}]`}function _(){return e.process.stdColumns?Math.min(80,e.process.stdColumns):80}let W=null;n.version=j=>{W=j},n.showVersion=j=>{let $=t.getInternalMethods().getLoggerInstance();j||(j="error"),(typeof j=="function"?j:$[j])(W)},n.reset=function($){return i=null,c=!1,u=[],l=!1,m=[],d=[],f=[],p=er(p,L=>!$[L]),n};let M=[];return n.freeze=function(){M.push({failMessage:i,failureOutput:c,usages:u,usageDisabled:l,epilogs:m,examples:d,commands:f,descriptions:p})},n.unfreeze=function($=!1){let L=M.pop();L&&($?(p={...L.descriptions,...p},f=[...L.commands,...f],u=[...L.usages,...u],d=[...L.examples,...d],m=[...L.epilogs,...m]):{failMessage:i,failureOutput:c,usages:u,usageDisabled:l,epilogs:m,examples:d,commands:f,descriptions:p}=L)},n}function Tp(t){return typeof t=="object"}function gk(t,e){return Tp(t)?{text:t.text,indentation:t.indentation+e}:{text:t,indentation:e}}function by(t){return Tp(t)?t.indentation:0}function ou(t){return Tp(t)?t.text:t}var Dy=`###-begin-{{app_name}}-completions-###
103
+ `)}return Z.toString().replace(/\s*$/,"")};function x(M,$,L){let z=0;return Array.isArray(M)||(M=Object.values(M).map(C=>[C])),M.forEach(C=>{z=Math.max(e.stringWidth(L?`${L} ${ou(C[0])}`:ou(C[0]))+by(C[0]),z)}),$&&(z=Math.min(z,parseInt(($*.5).toString(),10))),z}function D(){let M=t.getDemandedOptions(),$=t.getOptions();(Object.keys($.alias)||[]).forEach(L=>{$.alias[L].forEach(z=>{p[z]&&n.describe(L,p[z]),z in M&&t.demandOption(L,M[z]),$.boolean.includes(z)&&t.boolean(L),$.count.includes(z)&&t.count(L),$.string.includes(z)&&t.string(L),$.normalize.includes(z)&&t.normalize(L),$.array.includes(z)&&t.array(L),$.number.includes(z)&&t.number(L)})})}let S;n.cacheHelpMessage=function(){S=this.help()},n.clearCachedHelpMessage=function(){S=void 0},n.hasCachedHelpMessage=function(){return!!S};function v(M,$,L,z){let C=[],B=null;return Object.keys(L).forEach(N=>{C=C.concat(L[N])}),M.forEach(N=>{B=[N].concat($[N]),B.some(K=>C.indexOf(K)!==-1)||L[z].push(N)}),C}function E(M){return t.getOptions().hiddenOptions.indexOf(M)<0||t.parsed.argv[t.getOptions().showHiddenOpt]}n.showHelp=M=>{let $=t.getInternalMethods().getLoggerInstance();M||(M="error"),(typeof M=="function"?M:$[M])(n.help())},n.functionDescription=M=>["(",M.name?e.Parser.decamelize(M.name,"-"):s("generated-value"),")"].join(""),n.stringifiedValues=function($,L){let z="",C=L||", ",B=[].concat($);return!$||!B.length||B.forEach(N=>{z.length&&(z+=C),z+=JSON.stringify(N)}),z};function R(M,$){let L=`[${s("default:")} `;if(M===void 0&&!$)return null;if($)L+=$;else switch(typeof M){case"string":L+=`"${M}"`;break;case"object":L+=JSON.stringify(M);break;default:L+=M}return`${L}]`}function _(){return e.process.stdColumns?Math.min(80,e.process.stdColumns):80}let W=null;n.version=M=>{W=M},n.showVersion=M=>{let $=t.getInternalMethods().getLoggerInstance();M||(M="error"),(typeof M=="function"?M:$[M])(W)},n.reset=function($){return i=null,c=!1,u=[],l=!1,m=[],d=[],f=[],p=er(p,L=>!$[L]),n};let j=[];return n.freeze=function(){j.push({failMessage:i,failureOutput:c,usages:u,usageDisabled:l,epilogs:m,examples:d,commands:f,descriptions:p})},n.unfreeze=function($=!1){let L=j.pop();L&&($?(p={...L.descriptions,...p},f=[...L.commands,...f],u=[...L.usages,...u],d=[...L.examples,...d],m=[...L.epilogs,...m]):{failMessage:i,failureOutput:c,usages:u,usageDisabled:l,epilogs:m,examples:d,commands:f,descriptions:p}=L)},n}function Tp(t){return typeof t=="object"}function gk(t,e){return Tp(t)?{text:t.text,indentation:t.indentation+e}:{text:t,indentation:e}}function by(t){return Tp(t)?t.indentation:0}function ou(t){return Tp(t)?t.text:t}var Dy=`###-begin-{{app_name}}-completions-###
104
104
  #
105
105
  # yargs command completion script
106
106
  #
@@ -149,7 +149,7 @@ compdef _{{app_name}}_yargs_completions {{app_name}}
149
149
  ###-end-{{app_name}}-completions-###
150
150
  `;var Pp=class{constructor(e,s,n,r){var i,o,a;this.yargs=e,this.usage=s,this.command=n,this.shim=r,this.completionKey="get-yargs-completions",this.aliases=null,this.customCompletionFunction=null,this.indexAfterLastReset=0,this.zshShell=(a=((i=this.shim.getEnv("SHELL"))===null||i===void 0?void 0:i.includes("zsh"))||((o=this.shim.getEnv("ZSH_NAME"))===null||o===void 0?void 0:o.includes("zsh")))!==null&&a!==void 0?a:!1}defaultCompletion(e,s,n,r){let i=this.command.getCommandHandlers();for(let a=0,c=e.length;a<c;++a)if(i[e[a]]&&i[e[a]].builder){let u=i[e[a]].builder;if(iu(u)){this.indexAfterLastReset=a+1;let l=this.yargs.getInternalMethods().reset();return u(l,!0),l.argv}}let o=[];this.commandCompletions(o,e,n),this.optionCompletions(o,e,s,n),this.choicesFromOptionsCompletions(o,e,s,n),this.choicesFromPositionalsCompletions(o,e,s,n),r(null,o)}commandCompletions(e,s,n){let r=this.yargs.getInternalMethods().getContext().commands;!n.match(/^-/)&&r[r.length-1]!==n&&!this.previousArgHasChoices(s)&&this.usage.getCommands().forEach(i=>{let o=Xn(i[0]).cmd;if(s.indexOf(o)===-1)if(!this.zshShell)e.push(o);else{let a=i[1]||"";e.push(o.replace(/:/g,"\\:")+":"+a)}})}optionCompletions(e,s,n,r){if((r.match(/^-/)||r===""&&e.length===0)&&!this.previousArgHasChoices(s)){let i=this.yargs.getOptions(),o=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[];Object.keys(i.key).forEach(a=>{let c=!!i.configuration["boolean-negation"]&&i.boolean.includes(a);!o.includes(a)&&!i.hiddenOptions.includes(a)&&!this.argsContainKey(s,a,c)&&this.completeOptionKey(a,e,r,c&&!!i.default[a])})}}choicesFromOptionsCompletions(e,s,n,r){if(this.previousArgHasChoices(s)){let i=this.getPreviousArgChoices(s);i&&i.length>0&&e.push(...i.map(o=>o.replace(/:/g,"\\:")))}}choicesFromPositionalsCompletions(e,s,n,r){if(r===""&&e.length>0&&this.previousArgHasChoices(s))return;let i=this.yargs.getGroups()[this.usage.getPositionalGroupName()]||[],o=Math.max(this.indexAfterLastReset,this.yargs.getInternalMethods().getContext().commands.length+1),a=i[n._.length-o-1];if(!a)return;let c=this.yargs.getOptions().choices[a]||[];for(let u of c)u.startsWith(r)&&e.push(u.replace(/:/g,"\\:"))}getPreviousArgChoices(e){if(e.length<1)return;let s=e[e.length-1],n="";if(!s.startsWith("-")&&e.length>1&&(n=s,s=e[e.length-2]),!s.startsWith("-"))return;let r=s.replace(/^-+/,""),i=this.yargs.getOptions(),o=[r,...this.yargs.getAliases()[r]||[]],a;for(let c of o)if(Object.prototype.hasOwnProperty.call(i.key,c)&&Array.isArray(i.choices[c])){a=i.choices[c];break}if(a)return a.filter(c=>!n||c.startsWith(n))}previousArgHasChoices(e){let s=this.getPreviousArgChoices(e);return s!==void 0&&s.length>0}argsContainKey(e,s,n){let r=i=>e.indexOf((/^[^0-9]$/.test(i)?"-":"--")+i)!==-1;if(r(s)||n&&r(`no-${s}`))return!0;if(this.aliases){for(let i of this.aliases[s])if(r(i))return!0}return!1}completeOptionKey(e,s,n,r){var i,o,a,c;let u=e;if(this.zshShell){let p=this.usage.getDescriptions(),m=(o=(i=this===null||this===void 0?void 0:this.aliases)===null||i===void 0?void 0:i[e])===null||o===void 0?void 0:o.find(y=>{let x=p[y];return typeof x=="string"&&x.length>0}),g=m?p[m]:void 0,h=(c=(a=p[e])!==null&&a!==void 0?a:g)!==null&&c!==void 0?c:"";u=`${e.replace(/:/g,"\\:")}:${h.replace("__yargsString__:","").replace(/(\r\n|\n|\r)/gm," ")}`}let l=p=>/^--/.test(p),d=p=>/^[^0-9]$/.test(p),f=!l(n)&&d(e)?"-":"--";s.push(f+u),r&&s.push(f+"no-"+u)}customCompletion(e,s,n,r){if(Vt(this.customCompletionFunction,null,this.shim),yk(this.customCompletionFunction)){let i=this.customCompletionFunction(n,s);return rt(i)?i.then(o=>{this.shim.process.nextTick(()=>{r(null,o)})}).catch(o=>{this.shim.process.nextTick(()=>{r(o,void 0)})}):r(null,i)}else return bk(this.customCompletionFunction)?this.customCompletionFunction(n,s,(i=r)=>this.defaultCompletion(e,s,n,i),i=>{r(null,i)}):this.customCompletionFunction(n,s,i=>{r(null,i)})}getCompletion(e,s){let n=e.length?e[e.length-1]:"",r=this.yargs.parse(e,!0),i=this.customCompletionFunction?o=>this.customCompletion(e,o,n,s):o=>this.defaultCompletion(e,o,n,s);return rt(r)?r.then(i):i(r)}generateCompletionScript(e,s){let n=this.zshShell?Sy:Dy,r=this.shim.path.basename(e);return e.match(/\.js$/)&&(e=`./${e}`),n=n.replace(/{{app_name}}/g,r),n=n.replace(/{{completion_command}}/g,s),n.replace(/{{app_path}}/g,e)}registerFunction(e){this.customCompletionFunction=e}setParsed(e){this.aliases=e.aliases}};function Cy(t,e,s,n){return new Pp(t,e,s,n)}function yk(t){return t.length<3}function bk(t){return t.length>3}function wy(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let s=[],n;for(n=0;n<=e.length;n++)s[n]=[n];let r;for(r=0;r<=t.length;r++)s[0][r]=r;for(n=1;n<=e.length;n++)for(r=1;r<=t.length;r++)e.charAt(n-1)===t.charAt(r-1)?s[n][r]=s[n-1][r-1]:n>1&&r>1&&e.charAt(n-2)===t.charAt(r-1)&&e.charAt(n-1)===t.charAt(r-2)?s[n][r]=s[n-2][r-2]+1:s[n][r]=Math.min(s[n-1][r-1]+1,Math.min(s[n][r-1]+1,s[n-1][r]+1));return s[e.length][t.length]}var Ay=["$0","--","_"];function Ey(t,e,s){let n=s.y18n.__,r=s.y18n.__n,i={};i.nonOptionCount=function(d){let f=t.getDemandedCommands(),m=d._.length+(d["--"]?d["--"].length:0)-t.getInternalMethods().getContext().commands.length;f._&&(m<f._.min||m>f._.max)&&(m<f._.min?f._.minMsg!==void 0?e.fail(f._.minMsg?f._.minMsg.replace(/\$0/g,m.toString()).replace(/\$1/,f._.min.toString()):null):e.fail(r("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",m,m.toString(),f._.min.toString())):m>f._.max&&(f._.maxMsg!==void 0?e.fail(f._.maxMsg?f._.maxMsg.replace(/\$0/g,m.toString()).replace(/\$1/,f._.max.toString()):null):e.fail(r("Too many non-option arguments: got %s, maximum of %s","Too many non-option arguments: got %s, maximum of %s",m,m.toString(),f._.max.toString()))))},i.positionalCount=function(d,f){f<d&&e.fail(r("Not enough non-option arguments: got %s, need at least %s","Not enough non-option arguments: got %s, need at least %s",f,f+"",d+""))},i.requiredArguments=function(d,f){let p=null;for(let m of Object.keys(f))(!Object.prototype.hasOwnProperty.call(d,m)||typeof d[m]>"u")&&(p=p||{},p[m]=f[m]);if(p){let m=[];for(let h of Object.keys(p)){let y=p[h];y&&m.indexOf(y)<0&&m.push(y)}let g=m.length?`
151
151
  ${m.join(`
152
- `)}`:"";e.fail(r("Missing required argument: %s","Missing required arguments: %s",Object.keys(p).length,Object.keys(p).join(", ")+g))}},i.unknownArguments=function(d,f,p,m,g=!0){var h;let y=t.getInternalMethods().getCommandInstance().getCommands(),x=[],D=t.getInternalMethods().getContext();if(Object.keys(d).forEach(S=>{!Ay.includes(S)&&!Object.prototype.hasOwnProperty.call(p,S)&&!Object.prototype.hasOwnProperty.call(t.getInternalMethods().getParseContext(),S)&&!i.isValidAndSomeAliasIsNotNew(S,f)&&x.push(S)}),g&&(D.commands.length>0||y.length>0||m)&&d._.slice(D.commands.length).forEach(S=>{y.includes(""+S)||x.push(""+S)}),g){let v=((h=t.getDemandedCommands()._)===null||h===void 0?void 0:h.max)||0,E=D.commands.length+v;E<d._.length&&d._.slice(E).forEach(T=>{T=String(T),!D.commands.includes(T)&&!x.includes(T)&&x.push(T)})}x.length&&e.fail(r("Unknown argument: %s","Unknown arguments: %s",x.length,x.map(S=>S.trim()?S:`"${S}"`).join(", ")))},i.unknownCommands=function(d){let f=t.getInternalMethods().getCommandInstance().getCommands(),p=[],m=t.getInternalMethods().getContext();return(m.commands.length>0||f.length>0)&&d._.slice(m.commands.length).forEach(g=>{f.includes(""+g)||p.push(""+g)}),p.length>0?(e.fail(r("Unknown command: %s","Unknown commands: %s",p.length,p.join(", "))),!0):!1},i.isValidAndSomeAliasIsNotNew=function(d,f){if(!Object.prototype.hasOwnProperty.call(f,d))return!1;let p=t.parsed.newAliases;return[d,...f[d]].some(m=>!Object.prototype.hasOwnProperty.call(p,m)||!p[d])},i.limitedChoices=function(d){let f=t.getOptions(),p={};if(!Object.keys(f.choices).length)return;Object.keys(d).forEach(h=>{Ay.indexOf(h)===-1&&Object.prototype.hasOwnProperty.call(f.choices,h)&&[].concat(d[h]).forEach(y=>{f.choices[h].indexOf(y)===-1&&y!==void 0&&(p[h]=(p[h]||[]).concat(y))})});let m=Object.keys(p);if(!m.length)return;let g=n("Invalid values:");m.forEach(h=>{g+=`
152
+ `)}`:"";e.fail(r("Missing required argument: %s","Missing required arguments: %s",Object.keys(p).length,Object.keys(p).join(", ")+g))}},i.unknownArguments=function(d,f,p,m,g=!0){var h;let y=t.getInternalMethods().getCommandInstance().getCommands(),x=[],D=t.getInternalMethods().getContext();if(Object.keys(d).forEach(S=>{!Ay.includes(S)&&!Object.prototype.hasOwnProperty.call(p,S)&&!Object.prototype.hasOwnProperty.call(t.getInternalMethods().getParseContext(),S)&&!i.isValidAndSomeAliasIsNotNew(S,f)&&x.push(S)}),g&&(D.commands.length>0||y.length>0||m)&&d._.slice(D.commands.length).forEach(S=>{y.includes(""+S)||x.push(""+S)}),g){let v=((h=t.getDemandedCommands()._)===null||h===void 0?void 0:h.max)||0,E=D.commands.length+v;E<d._.length&&d._.slice(E).forEach(R=>{R=String(R),!D.commands.includes(R)&&!x.includes(R)&&x.push(R)})}x.length&&e.fail(r("Unknown argument: %s","Unknown arguments: %s",x.length,x.map(S=>S.trim()?S:`"${S}"`).join(", ")))},i.unknownCommands=function(d){let f=t.getInternalMethods().getCommandInstance().getCommands(),p=[],m=t.getInternalMethods().getContext();return(m.commands.length>0||f.length>0)&&d._.slice(m.commands.length).forEach(g=>{f.includes(""+g)||p.push(""+g)}),p.length>0?(e.fail(r("Unknown command: %s","Unknown commands: %s",p.length,p.join(", "))),!0):!1},i.isValidAndSomeAliasIsNotNew=function(d,f){if(!Object.prototype.hasOwnProperty.call(f,d))return!1;let p=t.parsed.newAliases;return[d,...f[d]].some(m=>!Object.prototype.hasOwnProperty.call(p,m)||!p[d])},i.limitedChoices=function(d){let f=t.getOptions(),p={};if(!Object.keys(f.choices).length)return;Object.keys(d).forEach(h=>{Ay.indexOf(h)===-1&&Object.prototype.hasOwnProperty.call(f.choices,h)&&[].concat(d[h]).forEach(y=>{f.choices[h].indexOf(y)===-1&&y!==void 0&&(p[h]=(p[h]||[]).concat(y))})});let m=Object.keys(p);if(!m.length)return;let g=n("Invalid values:");m.forEach(h=>{g+=`
153
153
  ${n("Argument: %s, Given: %s, Choices: %s",h,e.stringifiedValues(p[h]),e.stringifiedValues(f.choices[h]))}`}),e.fail(g)};let o={};i.implies=function(d,f){ue("<string|object> [array|number|string]",[d,f],arguments.length),typeof d=="object"?Object.keys(d).forEach(p=>{i.implies(p,d[p])}):(t.global(d),o[d]||(o[d]=[]),Array.isArray(f)?f.forEach(p=>i.implies(d,p)):(Vt(f,void 0,s),o[d].push(f)))},i.getImplied=function(){return o};function a(l,d){let f=Number(d);return d=isNaN(f)?d:f,typeof d=="number"?d=l._.length>=d:d.match(/^--no-.+/)?(d=d.match(/^--no-(.+)/)[1],d=!Object.prototype.hasOwnProperty.call(l,d)):d=Object.prototype.hasOwnProperty.call(l,d),d}i.implications=function(d){let f=[];if(Object.keys(o).forEach(p=>{let m=p;(o[p]||[]).forEach(g=>{let h=m,y=g;h=a(d,h),g=a(d,g),h&&!g&&f.push(` ${m} -> ${y}`)})}),f.length){let p=`${n("Implications failed:")}
154
154
  `;f.forEach(m=>{p+=m}),e.fail(p)}};let c={};i.conflicts=function(d,f){ue("<string|object> [array|string]",[d,f],arguments.length),typeof d=="object"?Object.keys(d).forEach(p=>{i.conflicts(p,d[p])}):(t.global(d),c[d]||(c[d]=[]),Array.isArray(f)?f.forEach(p=>i.conflicts(d,p)):c[d].push(f))},i.getConflicting=()=>c,i.conflicting=function(d){Object.keys(d).forEach(f=>{c[f]&&c[f].forEach(p=>{p&&d[f]!==void 0&&d[p]!==void 0&&e.fail(n("Arguments %s and %s are mutually exclusive",f,p))})}),t.getInternalMethods().getParserConfiguration()["strip-dashed"]&&Object.keys(c).forEach(f=>{c[f].forEach(p=>{p&&d[s.Parser.camelCase(f)]!==void 0&&d[s.Parser.camelCase(p)]!==void 0&&e.fail(n("Arguments %s and %s are mutually exclusive",f,p))})})},i.recommendCommands=function(d,f){f=f.sort((h,y)=>y.length-h.length);let m=null,g=1/0;for(let h=0,y;(y=f[h])!==void 0;h++){let x=wy(d,y);x<=3&&x<g&&(g=x,m=y)}m&&e.fail(n("Did you mean %s?",m))},i.reset=function(d){return o=er(o,f=>!d[f]),c=er(c,f=>!d[f]),i};let u=[];return i.freeze=function(){u.push({implied:o,conflicting:c})},i.unfreeze=function(){let d=u.pop();Vt(d,void 0,s),{implied:o,conflicting:c}=d},i}var Op=[],Aa;function Ea(t,e,s,n){Aa=n;let r={};if(Object.prototype.hasOwnProperty.call(t,"extends")){if(typeof t.extends!="string")return r;let i=/\.json|\..*rc$/.test(t.extends),o=null;if(i)o=Dk(e,t.extends);else try{o=require.resolve(t.extends)}catch{return t}vk(o),Op.push(o),r=i?JSON.parse(Aa.readFileSync(o,"utf8")):require(t.extends),delete t.extends,r=Ea(r,Aa.path.dirname(o),s,Aa)}return Op=[],s?Fy(r,t):Object.assign({},r,t)}function vk(t){if(Op.indexOf(t)>-1)throw new nt(`Circular extended configurations: '${t}'.`)}function Dk(t,e){return Aa.path.resolve(t,e)}function Fy(t,e){let s={};function n(r){return r&&typeof r=="object"&&!Array.isArray(r)}Object.assign(s,t);for(let r of Object.keys(e))n(e[r])&&n(s[r])?s[r]=Fy(t[r],e[r]):s[r]=e[r];return s}var le=function(t,e,s,n,r){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?r.call(t,s):r?r.value=s:e.set(t,s),s},b=function(t,e,s,n){if(s==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?n:s==="a"?n.call(t):n?n.value:e.get(t)},ft,Pr,Fa,vs,ls,au,sr,Or,cu,Ds,uu,Ss,dn,ds,Cs,lu,ro,Ft,he,du,pu,ps,Lr,io,Br,nr,fu,Se,Nr,Mr,jr,we,mu,pn,lt;function Vy(t){return(e=[],s=t.process.cwd(),n)=>{let r=new qp(e,s,n,t);return Object.defineProperty(r,"argv",{get:()=>r.parse(),enumerable:!0}),r.help(),r.version(),r}}var _y=Symbol("copyDoubleDash"),ky=Symbol("copyDoubleDash"),Lp=Symbol("deleteFromParserHintObject"),Iy=Symbol("emitWarning"),Ry=Symbol("freeze"),Ty=Symbol("getDollarZero"),$r=Symbol("getParserConfiguration"),Py=Symbol("getUsageConfiguration"),Bp=Symbol("guessLocale"),Oy=Symbol("guessVersion"),Ly=Symbol("parsePositionalNumbers"),Np=Symbol("pkgUp"),rr=Symbol("populateParserHintArray"),oo=Symbol("populateParserHintSingleValueDictionary"),Mp=Symbol("populateParserHintArrayDictionary"),jp=Symbol("populateParserHintDictionary"),$p=Symbol("sanitizeKey"),Wp=Symbol("setKey"),Up=Symbol("unfreeze"),By=Symbol("validateAsync"),Ny=Symbol("getCommandInstance"),My=Symbol("getContext"),jy=Symbol("getHasOutput"),$y=Symbol("getLoggerInstance"),Wy=Symbol("getParseContext"),Uy=Symbol("getUsageInstance"),Gy=Symbol("getValidationInstance"),hu=Symbol("hasParseCallback"),zy=Symbol("isGlobalContext"),Wr=Symbol("postProcess"),qy=Symbol("rebase"),Gp=Symbol("reset"),_a=Symbol("runYargsParserAndExecuteCommands"),zp=Symbol("runValidation"),Hy=Symbol("setHasOutput"),Ur=Symbol("kTrackManuallySetKeys"),qp=class{constructor(e=[],s,n,r){this.customScriptName=!1,this.parsed=!1,ft.set(this,void 0),Pr.set(this,void 0),Fa.set(this,{commands:[],fullCommands:[]}),vs.set(this,null),ls.set(this,null),au.set(this,"show-hidden"),sr.set(this,null),Or.set(this,!0),cu.set(this,{}),Ds.set(this,!0),uu.set(this,[]),Ss.set(this,void 0),dn.set(this,{}),ds.set(this,!1),Cs.set(this,null),lu.set(this,!0),ro.set(this,void 0),Ft.set(this,""),he.set(this,void 0),du.set(this,void 0),pu.set(this,{}),ps.set(this,null),Lr.set(this,null),io.set(this,{}),Br.set(this,{}),nr.set(this,void 0),fu.set(this,!1),Se.set(this,void 0),Nr.set(this,!1),Mr.set(this,!1),jr.set(this,!1),we.set(this,void 0),mu.set(this,{}),pn.set(this,null),lt.set(this,void 0),le(this,Se,r,"f"),le(this,nr,e,"f"),le(this,Pr,s,"f"),le(this,du,n,"f"),le(this,Ss,new ru(this),"f"),this.$0=this[Ty](),this[Gp](),le(this,ft,b(this,ft,"f"),"f"),le(this,we,b(this,we,"f"),"f"),le(this,lt,b(this,lt,"f"),"f"),le(this,he,b(this,he,"f"),"f"),b(this,he,"f").showHiddenOpt=b(this,au,"f"),le(this,ro,this[ky](),"f")}addHelpOpt(e,s){let n="help";return ue("[string|boolean] [string]",[e,s],arguments.length),b(this,Cs,"f")&&(this[Lp](b(this,Cs,"f")),le(this,Cs,null,"f")),e===!1&&s===void 0?this:(le(this,Cs,typeof e=="string"?e:n,"f"),this.boolean(b(this,Cs,"f")),this.describe(b(this,Cs,"f"),s||b(this,we,"f").deferY18nLookup("Show help")),this)}help(e,s){return this.addHelpOpt(e,s)}addShowHiddenOpt(e,s){if(ue("[string|boolean] [string]",[e,s],arguments.length),e===!1&&s===void 0)return this;let n=typeof e=="string"?e:b(this,au,"f");return this.boolean(n),this.describe(n,s||b(this,we,"f").deferY18nLookup("Show hidden options")),b(this,he,"f").showHiddenOpt=n,this}showHidden(e,s){return this.addShowHiddenOpt(e,s)}alias(e,s){return ue("<object|string|array> [string|array]",[e,s],arguments.length),this[Mp](this.alias.bind(this),"alias",e,s),this}array(e){return ue("<array|string>",[e],arguments.length),this[rr]("array",e),this[Ur](e),this}boolean(e){return ue("<array|string>",[e],arguments.length),this[rr]("boolean",e),this[Ur](e),this}check(e,s){return ue("<function> [boolean]",[e,s],arguments.length),this.middleware((n,r)=>Tr(()=>e(n,r.getOptions()),i=>(i?(typeof i=="string"||i instanceof Error)&&b(this,we,"f").fail(i.toString(),i):b(this,we,"f").fail(b(this,Se,"f").y18n.__("Argument check failed: %s",e.toString())),n),i=>(b(this,we,"f").fail(i.message?i.message:i.toString(),i),n)),!1,s),this}choices(e,s){return ue("<object|string|array> [string|array]",[e,s],arguments.length),this[Mp](this.choices.bind(this),"choices",e,s),this}coerce(e,s){if(ue("<object|string|array> [function]",[e,s],arguments.length),Array.isArray(e)){if(!s)throw new nt("coerce callback must be provided");for(let n of e)this.coerce(n,s);return this}else if(typeof e=="object"){for(let n of Object.keys(e))this.coerce(n,e[n]);return this}if(!s)throw new nt("coerce callback must be provided");return b(this,he,"f").key[e]=!0,b(this,Ss,"f").addCoerceMiddleware((n,r)=>{let i;return Object.prototype.hasOwnProperty.call(n,e)?Tr(()=>(i=r.getAliases(),s(n[e])),a=>{n[e]=a;let c=r.getInternalMethods().getParserConfiguration()["strip-aliased"];if(i[e]&&c!==!0)for(let u of i[e])n[u]=a;return n},a=>{throw new nt(a.message)}):n},e),this}conflicts(e,s){return ue("<string|object> [string|array]",[e,s],arguments.length),b(this,lt,"f").conflicts(e,s),this}config(e="config",s,n){return ue("[object|string] [string|function] [function]",[e,s,n],arguments.length),typeof e=="object"&&!Array.isArray(e)?(e=Ea(e,b(this,Pr,"f"),this[$r]()["deep-merge-config"]||!1,b(this,Se,"f")),b(this,he,"f").configObjects=(b(this,he,"f").configObjects||[]).concat(e),this):(typeof s=="function"&&(n=s,s=void 0),this.describe(e,s||b(this,we,"f").deferY18nLookup("Path to JSON config file")),(Array.isArray(e)?e:[e]).forEach(r=>{b(this,he,"f").config[r]=n||!0}),this)}completion(e,s,n){return ue("[string] [string|boolean|function] [function]",[e,s,n],arguments.length),typeof s=="function"&&(n=s,s=void 0),le(this,ls,e||b(this,ls,"f")||"completion","f"),!s&&s!==!1&&(s="generate completion script"),this.command(b(this,ls,"f"),s),n&&b(this,vs,"f").registerFunction(n),this}command(e,s,n,r,i,o){return ue("<string|array|object> [string|boolean] [function|object] [function] [array] [boolean|string]",[e,s,n,r,i,o],arguments.length),b(this,ft,"f").addHandler(e,s,n,r,i,o),this}commands(e,s,n,r,i,o){return this.command(e,s,n,r,i,o)}commandDir(e,s){ue("<string> [object]",[e,s],arguments.length);let n=b(this,du,"f")||b(this,Se,"f").require;return b(this,ft,"f").addDirectory(e,n,b(this,Se,"f").getCallerFile(),s),this}count(e){return ue("<array|string>",[e],arguments.length),this[rr]("count",e),this[Ur](e),this}default(e,s,n){return ue("<object|string|array> [*] [string]",[e,s,n],arguments.length),n&&(kp(e,b(this,Se,"f")),b(this,he,"f").defaultDescription[e]=n),typeof s=="function"&&(kp(e,b(this,Se,"f")),b(this,he,"f").defaultDescription[e]||(b(this,he,"f").defaultDescription[e]=b(this,we,"f").functionDescription(s)),s=s.call()),this[oo](this.default.bind(this),"default",e,s),this}defaults(e,s,n){return this.default(e,s,n)}demandCommand(e=1,s,n,r){return ue("[number] [number|string] [string|null|undefined] [string|null|undefined]",[e,s,n,r],arguments.length),typeof s!="number"&&(n=s,s=1/0),this.global("_",!1),b(this,he,"f").demandedCommands._={min:e,max:s,minMsg:n,maxMsg:r},this}demand(e,s,n){return Array.isArray(s)?(s.forEach(r=>{Vt(n,!0,b(this,Se,"f")),this.demandOption(r,n)}),s=1/0):typeof s!="number"&&(n=s,s=1/0),typeof e=="number"?(Vt(n,!0,b(this,Se,"f")),this.demandCommand(e,s,n,n)):Array.isArray(e)?e.forEach(r=>{Vt(n,!0,b(this,Se,"f")),this.demandOption(r,n)}):typeof n=="string"?this.demandOption(e,n):(n===!0||typeof n>"u")&&this.demandOption(e),this}demandOption(e,s){return ue("<object|string|array> [string]",[e,s],arguments.length),this[oo](this.demandOption.bind(this),"demandedOptions",e,s),this}deprecateOption(e,s){return ue("<string> [string|boolean]",[e,s],arguments.length),b(this,he,"f").deprecatedOptions[e]=s,this}describe(e,s){return ue("<object|string|array> [string]",[e,s],arguments.length),this[Wp](e,!0),b(this,we,"f").describe(e,s),this}detectLocale(e){return ue("<boolean>",[e],arguments.length),le(this,Or,e,"f"),this}env(e){return ue("[string|boolean]",[e],arguments.length),e===!1?delete b(this,he,"f").envPrefix:b(this,he,"f").envPrefix=e||"",this}epilogue(e){return ue("<string>",[e],arguments.length),b(this,we,"f").epilog(e),this}epilog(e){return this.epilogue(e)}example(e,s){return ue("<string|array> [string]",[e,s],arguments.length),Array.isArray(e)?e.forEach(n=>this.example(...n)):b(this,we,"f").example(e,s),this}exit(e,s){le(this,ds,!0,"f"),le(this,sr,s,"f"),b(this,Ds,"f")&&b(this,Se,"f").process.exit(e)}exitProcess(e=!0){return ue("[boolean]",[e],arguments.length),le(this,Ds,e,"f"),this}fail(e){if(ue("<function|boolean>",[e],arguments.length),typeof e=="boolean"&&e!==!1)throw new nt("Invalid first argument. Expected function or boolean 'false'");return b(this,we,"f").failFn(e),this}getAliases(){return this.parsed?this.parsed.aliases:{}}async getCompletion(e,s){return ue("<array> [function]",[e,s],arguments.length),s?b(this,vs,"f").getCompletion(e,s):new Promise((n,r)=>{b(this,vs,"f").getCompletion(e,(i,o)=>{i?r(i):n(o)})})}getDemandedOptions(){return ue([],0),b(this,he,"f").demandedOptions}getDemandedCommands(){return ue([],0),b(this,he,"f").demandedCommands}getDeprecatedOptions(){return ue([],0),b(this,he,"f").deprecatedOptions}getDetectLocale(){return b(this,Or,"f")}getExitProcess(){return b(this,Ds,"f")}getGroups(){return Object.assign({},b(this,dn,"f"),b(this,Br,"f"))}getHelp(){if(le(this,ds,!0,"f"),!b(this,we,"f").hasCachedHelpMessage()){if(!this.parsed){let s=this[_a](b(this,nr,"f"),void 0,void 0,0,!0);if(rt(s))return s.then(()=>b(this,we,"f").help())}let e=b(this,ft,"f").runDefaultBuilderOn(this);if(rt(e))return e.then(()=>b(this,we,"f").help())}return Promise.resolve(b(this,we,"f").help())}getOptions(){return b(this,he,"f")}getStrict(){return b(this,Nr,"f")}getStrictCommands(){return b(this,Mr,"f")}getStrictOptions(){return b(this,jr,"f")}global(e,s){return ue("<string|array> [boolean]",[e,s],arguments.length),e=[].concat(e),s!==!1?b(this,he,"f").local=b(this,he,"f").local.filter(n=>e.indexOf(n)===-1):e.forEach(n=>{b(this,he,"f").local.includes(n)||b(this,he,"f").local.push(n)}),this}group(e,s){ue("<string|array> <string>",[e,s],arguments.length);let n=b(this,Br,"f")[s]||b(this,dn,"f")[s];b(this,Br,"f")[s]&&delete b(this,Br,"f")[s];let r={};return b(this,dn,"f")[s]=(n||[]).concat(e).filter(i=>r[i]?!1:r[i]=!0),this}hide(e){return ue("<string>",[e],arguments.length),b(this,he,"f").hiddenOptions.push(e),this}implies(e,s){return ue("<string|object> [number|string|array]",[e,s],arguments.length),b(this,lt,"f").implies(e,s),this}locale(e){return ue("[string]",[e],arguments.length),e===void 0?(this[Bp](),b(this,Se,"f").y18n.getLocale()):(le(this,Or,!1,"f"),b(this,Se,"f").y18n.setLocale(e),this)}middleware(e,s,n){return b(this,Ss,"f").addMiddleware(e,!!s,n)}nargs(e,s){return ue("<string|object|array> [number]",[e,s],arguments.length),this[oo](this.nargs.bind(this),"narg",e,s),this}normalize(e){return ue("<array|string>",[e],arguments.length),this[rr]("normalize",e),this}number(e){return ue("<array|string>",[e],arguments.length),this[rr]("number",e),this[Ur](e),this}option(e,s){if(ue("<string|object> [object]",[e,s],arguments.length),typeof e=="object")Object.keys(e).forEach(n=>{this.options(n,e[n])});else{typeof s!="object"&&(s={}),this[Ur](e),b(this,pn,"f")&&(e==="version"||s?.alias==="version")&&this[Iy](['"version" is a reserved word.',"Please do one of the following:",'- Disable version with `yargs.version(false)` if using "version" as an option',"- Use the built-in `yargs.version` method instead (if applicable)","- Use a different option key","https://yargs.js.org/docs/#api-reference-version"].join(`
155
155
  `),void 0,"versionWarning"),b(this,he,"f").key[e]=!0,s.alias&&this.alias(e,s.alias);let n=s.deprecate||s.deprecated;n&&this.deprecateOption(e,n);let r=s.demand||s.required||s.require;r&&this.demand(e,r),s.demandOption&&this.demandOption(e,typeof s.demandOption=="string"?s.demandOption:void 0),s.conflicts&&this.conflicts(e,s.conflicts),"default"in s&&this.default(e,s.default),s.implies!==void 0&&this.implies(e,s.implies),s.nargs!==void 0&&this.nargs(e,s.nargs),s.config&&this.config(e,s.configParser),s.normalize&&this.normalize(e),s.choices&&this.choices(e,s.choices),s.coerce&&this.coerce(e,s.coerce),s.group&&this.group(e,s.group),(s.boolean||s.type==="boolean")&&(this.boolean(e),s.alias&&this.boolean(s.alias)),(s.array||s.type==="array")&&(this.array(e),s.alias&&this.array(s.alias)),(s.number||s.type==="number")&&(this.number(e),s.alias&&this.number(s.alias)),(s.string||s.type==="string")&&(this.string(e),s.alias&&this.string(s.alias)),(s.count||s.type==="count")&&this.count(e),typeof s.global=="boolean"&&this.global(e,s.global),s.defaultDescription&&(b(this,he,"f").defaultDescription[e]=s.defaultDescription),s.skipValidation&&this.skipValidation(e);let i=s.describe||s.description||s.desc,o=b(this,we,"f").getDescriptions();(!Object.prototype.hasOwnProperty.call(o,e)||typeof i=="string")&&this.describe(e,i),s.hidden&&this.hide(e),s.requiresArg&&this.requiresArg(e)}return this}options(e,s){return this.option(e,s)}parse(e,s,n){ue("[string|array] [function|boolean|object] [function]",[e,s,n],arguments.length),this[Ry](),typeof e>"u"&&(e=b(this,nr,"f")),typeof s=="object"&&(le(this,Lr,s,"f"),s=n),typeof s=="function"&&(le(this,ps,s,"f"),s=!1),s||le(this,nr,e,"f"),b(this,ps,"f")&&le(this,Ds,!1,"f");let r=this[_a](e,!!s),i=this.parsed;return b(this,vs,"f").setParsed(this.parsed),rt(r)?r.then(o=>(b(this,ps,"f")&&b(this,ps,"f").call(this,b(this,sr,"f"),o,b(this,Ft,"f")),o)).catch(o=>{throw b(this,ps,"f")&&b(this,ps,"f")(o,this.parsed.argv,b(this,Ft,"f")),o}).finally(()=>{this[Up](),this.parsed=i}):(b(this,ps,"f")&&b(this,ps,"f").call(this,b(this,sr,"f"),r,b(this,Ft,"f")),this[Up](),this.parsed=i,r)}parseAsync(e,s,n){let r=this.parse(e,s,n);return rt(r)?r:Promise.resolve(r)}parseSync(e,s,n){let r=this.parse(e,s,n);if(rt(r))throw new nt(".parseSync() must not be used with asynchronous builders, handlers, or middleware");return r}parserConfiguration(e){return ue("<object>",[e],arguments.length),le(this,pu,e,"f"),this}pkgConf(e,s){ue("<string> [string]",[e,s],arguments.length);let n=null,r=this[Np](s||b(this,Pr,"f"));return r[e]&&typeof r[e]=="object"&&(n=Ea(r[e],s||b(this,Pr,"f"),this[$r]()["deep-merge-config"]||!1,b(this,Se,"f")),b(this,he,"f").configObjects=(b(this,he,"f").configObjects||[]).concat(n)),this}positional(e,s){ue("<string> <object>",[e,s],arguments.length);let n=["default","defaultDescription","implies","normalize","choices","conflicts","coerce","type","describe","desc","description","alias"];s=er(s,(o,a)=>o==="type"&&!["string","number","boolean"].includes(a)?!1:n.includes(o));let r=b(this,Fa,"f").fullCommands[b(this,Fa,"f").fullCommands.length-1],i=r?b(this,ft,"f").cmdToParseOptions(r):{array:[],alias:{},default:{},demand:{}};return so(i).forEach(o=>{let a=i[o];Array.isArray(a)?a.indexOf(e)!==-1&&(s[o]=!0):a[e]&&!(o in s)&&(s[o]=a[e])}),this.group(e,b(this,we,"f").getPositionalGroupName()),this.option(e,s)}recommendCommands(e=!0){return ue("[boolean]",[e],arguments.length),le(this,fu,e,"f"),this}required(e,s,n){return this.demand(e,s,n)}require(e,s,n){return this.demand(e,s,n)}requiresArg(e){return ue("<array|string|object> [number]",[e],arguments.length),typeof e=="string"&&b(this,he,"f").narg[e]?this:(this[oo](this.requiresArg.bind(this),"narg",e,NaN),this)}showCompletionScript(e,s){return ue("[string] [string]",[e,s],arguments.length),e=e||this.$0,b(this,ro,"f").log(b(this,vs,"f").generateCompletionScript(e,s||b(this,ls,"f")||"completion")),this}showHelp(e){if(ue("[string|function]",[e],arguments.length),le(this,ds,!0,"f"),!b(this,we,"f").hasCachedHelpMessage()){if(!this.parsed){let n=this[_a](b(this,nr,"f"),void 0,void 0,0,!0);if(rt(n))return n.then(()=>{b(this,we,"f").showHelp(e)}),this}let s=b(this,ft,"f").runDefaultBuilderOn(this);if(rt(s))return s.then(()=>{b(this,we,"f").showHelp(e)}),this}return b(this,we,"f").showHelp(e),this}scriptName(e){return this.customScriptName=!0,this.$0=e,this}showHelpOnFail(e,s){return ue("[boolean|string] [string]",[e,s],arguments.length),b(this,we,"f").showHelpOnFail(e,s),this}showVersion(e){return ue("[string|function]",[e],arguments.length),b(this,we,"f").showVersion(e),this}skipValidation(e){return ue("<array|string>",[e],arguments.length),this[rr]("skipValidation",e),this}strict(e){return ue("[boolean]",[e],arguments.length),le(this,Nr,e!==!1,"f"),this}strictCommands(e){return ue("[boolean]",[e],arguments.length),le(this,Mr,e!==!1,"f"),this}strictOptions(e){return ue("[boolean]",[e],arguments.length),le(this,jr,e!==!1,"f"),this}string(e){return ue("<array|string>",[e],arguments.length),this[rr]("string",e),this[Ur](e),this}terminalWidth(){return ue([],0),b(this,Se,"f").process.stdColumns}updateLocale(e){return this.updateStrings(e)}updateStrings(e){return ue("<object>",[e],arguments.length),le(this,Or,!1,"f"),b(this,Se,"f").y18n.updateLocale(e),this}usage(e,s,n,r){if(ue("<string|null|undefined> [string|boolean] [function|object] [function]",[e,s,n,r],arguments.length),s!==void 0){if(Vt(e,null,b(this,Se,"f")),(e||"").match(/^\$0( |$)/))return this.command(e,s,n,r);throw new nt(".usage() description must start with $0 if being used as alias for .command()")}else return b(this,we,"f").usage(e),this}usageConfiguration(e){return ue("<object>",[e],arguments.length),le(this,mu,e,"f"),this}version(e,s,n){let r="version";if(ue("[boolean|string] [string] [string]",[e,s,n],arguments.length),b(this,pn,"f")&&(this[Lp](b(this,pn,"f")),b(this,we,"f").version(void 0),le(this,pn,null,"f")),arguments.length===0)n=this[Oy](),e=r;else if(arguments.length===1){if(e===!1)return this;n=e,e=r}else arguments.length===2&&(n=s,s=void 0);return le(this,pn,typeof e=="string"?e:r,"f"),s=s||b(this,we,"f").deferY18nLookup("Show version number"),b(this,we,"f").version(n||void 0),this.boolean(b(this,pn,"f")),this.describe(b(this,pn,"f"),s),this}wrap(e){return ue("<number|null|undefined>",[e],arguments.length),b(this,we,"f").wrap(e),this}[(ft=new WeakMap,Pr=new WeakMap,Fa=new WeakMap,vs=new WeakMap,ls=new WeakMap,au=new WeakMap,sr=new WeakMap,Or=new WeakMap,cu=new WeakMap,Ds=new WeakMap,uu=new WeakMap,Ss=new WeakMap,dn=new WeakMap,ds=new WeakMap,Cs=new WeakMap,lu=new WeakMap,ro=new WeakMap,Ft=new WeakMap,he=new WeakMap,du=new WeakMap,pu=new WeakMap,ps=new WeakMap,Lr=new WeakMap,io=new WeakMap,Br=new WeakMap,nr=new WeakMap,fu=new WeakMap,Se=new WeakMap,Nr=new WeakMap,Mr=new WeakMap,jr=new WeakMap,we=new WeakMap,mu=new WeakMap,pn=new WeakMap,lt=new WeakMap,_y)](e){if(!e._||!e["--"])return e;e._.push.apply(e._,e["--"]);try{delete e["--"]}catch{}return e}[ky](){return{log:(...e)=>{this[hu]()||console.log(...e),le(this,ds,!0,"f"),b(this,Ft,"f").length&&le(this,Ft,b(this,Ft,"f")+`
@@ -157,7 +157,7 @@ ${m.join(`
157
157
  `,"f"),le(this,Ft,b(this,Ft,"f")+e.join(" "),"f")}}}[Lp](e){so(b(this,he,"f")).forEach(s=>{if((r=>r==="configObjects")(s))return;let n=b(this,he,"f")[s];Array.isArray(n)?n.includes(e)&&n.splice(n.indexOf(e),1):typeof n=="object"&&delete n[e]}),delete b(this,we,"f").getDescriptions()[e]}[Iy](e,s,n){b(this,cu,"f")[n]||(b(this,Se,"f").process.emitWarning(e,s),b(this,cu,"f")[n]=!0)}[Ry](){b(this,uu,"f").push({options:b(this,he,"f"),configObjects:b(this,he,"f").configObjects.slice(0),exitProcess:b(this,Ds,"f"),groups:b(this,dn,"f"),strict:b(this,Nr,"f"),strictCommands:b(this,Mr,"f"),strictOptions:b(this,jr,"f"),completionCommand:b(this,ls,"f"),output:b(this,Ft,"f"),exitError:b(this,sr,"f"),hasOutput:b(this,ds,"f"),parsed:this.parsed,parseFn:b(this,ps,"f"),parseContext:b(this,Lr,"f")}),b(this,we,"f").freeze(),b(this,lt,"f").freeze(),b(this,ft,"f").freeze(),b(this,Ss,"f").freeze()}[Ty](){let e="",s;return/\b(node|iojs|electron)(\.exe)?$/.test(b(this,Se,"f").process.argv()[0])?s=b(this,Se,"f").process.argv().slice(1,2):s=b(this,Se,"f").process.argv().slice(0,1),e=s.map(n=>{let r=this[qy](b(this,Pr,"f"),n);return n.match(/^(\/|([a-zA-Z]:)?\\)/)&&r.length<n.length?r:n}).join(" ").trim(),b(this,Se,"f").getEnv("_")&&b(this,Se,"f").getProcessArgvBin()===b(this,Se,"f").getEnv("_")&&(e=b(this,Se,"f").getEnv("_").replace(`${b(this,Se,"f").path.dirname(b(this,Se,"f").process.execPath())}/`,"")),e}[$r](){return b(this,pu,"f")}[Py](){return b(this,mu,"f")}[Bp](){if(!b(this,Or,"f"))return;let e=b(this,Se,"f").getEnv("LC_ALL")||b(this,Se,"f").getEnv("LC_MESSAGES")||b(this,Se,"f").getEnv("LANG")||b(this,Se,"f").getEnv("LANGUAGE")||"en_US";this.locale(e.replace(/[.:].*/,""))}[Oy](){return this[Np]().version||"unknown"}[Ly](e){let s=e["--"]?e["--"]:e._;for(let n=0,r;(r=s[n])!==void 0;n++)b(this,Se,"f").Parser.looksLikeNumber(r)&&Number.isSafeInteger(Math.floor(parseFloat(`${r}`)))&&(s[n]=Number(r));return e}[Np](e){let s=e||"*";if(b(this,io,"f")[s])return b(this,io,"f")[s];let n={};try{let r=e||b(this,Se,"f").mainFilename;!e&&b(this,Se,"f").path.extname(r)&&(r=b(this,Se,"f").path.dirname(r));let i=b(this,Se,"f").findUp(r,(o,a)=>{if(a.includes("package.json"))return"package.json"});Vt(i,void 0,b(this,Se,"f")),n=JSON.parse(b(this,Se,"f").readFileSync(i,"utf8"))}catch{}return b(this,io,"f")[s]=n||{},b(this,io,"f")[s]}[rr](e,s){s=[].concat(s),s.forEach(n=>{n=this[$p](n),b(this,he,"f")[e].push(n)})}[oo](e,s,n,r){this[jp](e,s,n,r,(i,o,a)=>{b(this,he,"f")[i][o]=a})}[Mp](e,s,n,r){this[jp](e,s,n,r,(i,o,a)=>{b(this,he,"f")[i][o]=(b(this,he,"f")[i][o]||[]).concat(a)})}[jp](e,s,n,r,i){if(Array.isArray(n))n.forEach(o=>{e(o,r)});else if((o=>typeof o=="object")(n))for(let o of so(n))e(o,n[o]);else i(s,this[$p](n),r)}[$p](e){return e==="__proto__"?"___proto___":e}[Wp](e,s){return this[oo](this[Wp].bind(this),"key",e,s),this}[Up](){var e,s,n,r,i,o,a,c,u,l,d,f;let p=b(this,uu,"f").pop();Vt(p,void 0,b(this,Se,"f"));let m;e=this,s=this,n=this,r=this,i=this,o=this,a=this,c=this,u=this,l=this,d=this,f=this,{options:{set value(g){le(e,he,g,"f")}}.value,configObjects:m,exitProcess:{set value(g){le(s,Ds,g,"f")}}.value,groups:{set value(g){le(n,dn,g,"f")}}.value,output:{set value(g){le(r,Ft,g,"f")}}.value,exitError:{set value(g){le(i,sr,g,"f")}}.value,hasOutput:{set value(g){le(o,ds,g,"f")}}.value,parsed:this.parsed,strict:{set value(g){le(a,Nr,g,"f")}}.value,strictCommands:{set value(g){le(c,Mr,g,"f")}}.value,strictOptions:{set value(g){le(u,jr,g,"f")}}.value,completionCommand:{set value(g){le(l,ls,g,"f")}}.value,parseFn:{set value(g){le(d,ps,g,"f")}}.value,parseContext:{set value(g){le(f,Lr,g,"f")}}.value}=p,b(this,he,"f").configObjects=m,b(this,we,"f").unfreeze(),b(this,lt,"f").unfreeze(),b(this,ft,"f").unfreeze(),b(this,Ss,"f").unfreeze()}[By](e,s){return Tr(s,n=>(e(n),n))}getInternalMethods(){return{getCommandInstance:this[Ny].bind(this),getContext:this[My].bind(this),getHasOutput:this[jy].bind(this),getLoggerInstance:this[$y].bind(this),getParseContext:this[Wy].bind(this),getParserConfiguration:this[$r].bind(this),getUsageConfiguration:this[Py].bind(this),getUsageInstance:this[Uy].bind(this),getValidationInstance:this[Gy].bind(this),hasParseCallback:this[hu].bind(this),isGlobalContext:this[zy].bind(this),postProcess:this[Wr].bind(this),reset:this[Gp].bind(this),runValidation:this[zp].bind(this),runYargsParserAndExecuteCommands:this[_a].bind(this),setHasOutput:this[Hy].bind(this)}}[Ny](){return b(this,ft,"f")}[My](){return b(this,Fa,"f")}[jy](){return b(this,ds,"f")}[$y](){return b(this,ro,"f")}[Wy](){return b(this,Lr,"f")||{}}[Uy](){return b(this,we,"f")}[Gy](){return b(this,lt,"f")}[hu](){return!!b(this,ps,"f")}[zy](){return b(this,lu,"f")}[Wr](e,s,n,r){return n||rt(e)||(s||(e=this[_y](e)),(this[$r]()["parse-positional-numbers"]||this[$r]()["parse-positional-numbers"]===void 0)&&(e=this[Ly](e)),r&&(e=Rr(e,this,b(this,Ss,"f").getMiddleware(),!1))),e}[Gp](e={}){le(this,he,b(this,he,"f")||{},"f");let s={};s.local=b(this,he,"f").local||[],s.configObjects=b(this,he,"f").configObjects||[];let n={};s.local.forEach(o=>{n[o]=!0,(e[o]||[]).forEach(a=>{n[a]=!0})}),Object.assign(b(this,Br,"f"),Object.keys(b(this,dn,"f")).reduce((o,a)=>{let c=b(this,dn,"f")[a].filter(u=>!(u in n));return c.length>0&&(o[a]=c),o},{})),le(this,dn,{},"f");let r=["array","boolean","string","skipValidation","count","normalize","number","hiddenOptions"],i=["narg","key","alias","default","defaultDescription","config","choices","demandedOptions","demandedCommands","deprecatedOptions"];return r.forEach(o=>{s[o]=(b(this,he,"f")[o]||[]).filter(a=>!n[a])}),i.forEach(o=>{s[o]=er(b(this,he,"f")[o],a=>!n[a])}),s.envPrefix=b(this,he,"f").envPrefix,le(this,he,s,"f"),le(this,we,b(this,we,"f")?b(this,we,"f").reset(n):vy(this,b(this,Se,"f")),"f"),le(this,lt,b(this,lt,"f")?b(this,lt,"f").reset(n):Ey(this,b(this,we,"f"),b(this,Se,"f")),"f"),le(this,ft,b(this,ft,"f")?b(this,ft,"f").reset():xy(b(this,we,"f"),b(this,lt,"f"),b(this,Ss,"f"),b(this,Se,"f")),"f"),b(this,vs,"f")||le(this,vs,Cy(this,b(this,we,"f"),b(this,ft,"f"),b(this,Se,"f")),"f"),b(this,Ss,"f").reset(),le(this,ls,null,"f"),le(this,Ft,"","f"),le(this,sr,null,"f"),le(this,ds,!1,"f"),this.parsed=!1,this}[qy](e,s){return b(this,Se,"f").path.relative(e,s)}[_a](e,s,n,r=0,i=!1){let o=!!n||i;e=e||b(this,nr,"f"),b(this,he,"f").__=b(this,Se,"f").y18n.__,b(this,he,"f").configuration=this[$r]();let a=!!b(this,he,"f").configuration["populate--"],c=Object.assign({},b(this,he,"f").configuration,{"populate--":!0}),u=b(this,Se,"f").Parser.detailed(e,Object.assign({},b(this,he,"f"),{configuration:{"parse-positional-numbers":!1,...c}})),l=Object.assign(u.argv,b(this,Lr,"f")),d,f=u.aliases,p=!1,m=!1;Object.keys(l).forEach(g=>{g===b(this,Cs,"f")&&l[g]?p=!0:g===b(this,pn,"f")&&l[g]&&(m=!0)}),l.$0=this.$0,this.parsed=u,r===0&&b(this,we,"f").clearCachedHelpMessage();try{if(this[Bp](),s)return this[Wr](l,a,!!n,!1);b(this,Cs,"f")&&[b(this,Cs,"f")].concat(f[b(this,Cs,"f")]||[]).filter(D=>D.length>1).includes(""+l._[l._.length-1])&&(l._.pop(),p=!0),le(this,lu,!1,"f");let g=b(this,ft,"f").getCommands(),h=b(this,vs,"f").completionKey in l,y=p||h||i;if(l._.length){if(g.length){let x;for(let D=r||0,S;l._[D]!==void 0;D++)if(S=String(l._[D]),g.includes(S)&&S!==b(this,ls,"f")){let v=b(this,ft,"f").runCommand(S,this,u,D+1,i,p||m||i);return this[Wr](v,a,!!n,!1)}else if(!x&&S!==b(this,ls,"f")){x=S;break}!b(this,ft,"f").hasDefaultCommand()&&b(this,fu,"f")&&x&&!y&&b(this,lt,"f").recommendCommands(x,g)}b(this,ls,"f")&&l._.includes(b(this,ls,"f"))&&!h&&(b(this,Ds,"f")&&tr(!0),this.showCompletionScript(),this.exit(0))}if(b(this,ft,"f").hasDefaultCommand()&&!y){let x=b(this,ft,"f").runCommand(null,this,u,0,i,p||m||i);return this[Wr](x,a,!!n,!1)}if(h){b(this,Ds,"f")&&tr(!0),e=[].concat(e);let x=e.slice(e.indexOf(`--${b(this,vs,"f").completionKey}`)+1);return b(this,vs,"f").getCompletion(x,(D,S)=>{if(D)throw new nt(D.message);(S||[]).forEach(v=>{b(this,ro,"f").log(v)}),this.exit(0)}),this[Wr](l,!a,!!n,!1)}if(b(this,ds,"f")||(p?(b(this,Ds,"f")&&tr(!0),o=!0,this.showHelp("log"),this.exit(0)):m&&(b(this,Ds,"f")&&tr(!0),o=!0,b(this,we,"f").showVersion("log"),this.exit(0))),!o&&b(this,he,"f").skipValidation.length>0&&(o=Object.keys(l).some(x=>b(this,he,"f").skipValidation.indexOf(x)>=0&&l[x]===!0)),!o){if(u.error)throw new nt(u.error.message);if(!h){let x=this[zp](f,{},u.error);n||(d=Rr(l,this,b(this,Ss,"f").getMiddleware(),!0)),d=this[By](x,d??l),rt(d)&&!n&&(d=d.then(()=>Rr(l,this,b(this,Ss,"f").getMiddleware(),!1)))}}}catch(g){if(g instanceof nt)b(this,we,"f").fail(g.message,g);else throw g}return this[Wr](d??l,a,!!n,!0)}[zp](e,s,n,r){let i={...this.getDemandedOptions()};return o=>{if(n)throw new nt(n.message);b(this,lt,"f").nonOptionCount(o),b(this,lt,"f").requiredArguments(o,i);let a=!1;b(this,Mr,"f")&&(a=b(this,lt,"f").unknownCommands(o)),b(this,Nr,"f")&&!a?b(this,lt,"f").unknownArguments(o,e,s,!!r):b(this,jr,"f")&&b(this,lt,"f").unknownArguments(o,e,{},!1,!1),b(this,lt,"f").limitedChoices(o),b(this,lt,"f").implications(o),b(this,lt,"f").conflicting(o)}}[Hy](){le(this,ds,!0,"f")}[Ur](e){if(typeof e=="string")b(this,he,"f").key[e]=!0;else for(let s of e)b(this,he,"f").key[s]=!0}};function yy(t){return!!t&&typeof t.getInternalMethods=="function"}var Sk=Vy(_p),Ky=Sk;var ht=V(require("node:fs")),av=V(require("node:os")),Uu=V(require("node:path"));var Ck={features:{staticAnalysis:{free:!0,pro:!0,trial:!0,enterprise:!0},multiStackAnalysis:{free:!0,pro:!0,trial:!0,enterprise:!0},localAnalysis:{free:!0,pro:!0,trial:!0,enterprise:!0},basicServiceChecks:{free:!0,pro:!0,trial:!0,enterprise:!0},aiAnalysis:{free:!1,pro:!0,trial:!0,enterprise:!0},contextualFixes:{free:!1,pro:!0,trial:!0,enterprise:!0},smartPrioritization:{free:!1,pro:!0,trial:!0,enterprise:!0},naturalLanguageExplanations:{free:!1,pro:!0,trial:!0,enterprise:!0},customAITraining:{free:!1,pro:!1,trial:!1,enterprise:!0},githubIntegration:{free:!1,pro:!0,trial:!0,enterprise:!0},teamDashboards:{free:!1,pro:!0,trial:!0,enterprise:!0},collaborativeCommenting:{free:!1,pro:!1,trial:!1,enterprise:!0},sharedConfigurations:{free:!1,pro:!0,trial:!0,enterprise:!0},jsonOutput:{free:!0,pro:!0,trial:!0,enterprise:!0},tableOutput:{free:!0,pro:!0,trial:!0,enterprise:!0},markdownOutput:{free:!0,pro:!0,trial:!0,enterprise:!0},pdfReports:{free:!1,pro:!0,trial:!0,enterprise:!0},executiveSummaries:{free:!1,pro:!1,trial:!1,enterprise:!0},customBrandedReports:{free:!1,pro:!1,trial:!1,enterprise:!0},customRuleSets:{free:!1,pro:!0,trial:!0,enterprise:!0},advancedCompliance:{free:!1,pro:!0,trial:!0,enterprise:!0},cloudAnalysis:{free:!1,pro:!0,trial:!0,enterprise:!0},parallelAnalysis:{free:!1,pro:!0,trial:!0,enterprise:!0},caching:{free:!1,pro:!0,trial:!0,enterprise:!0},largeProjectSupport:{free:!1,pro:!0,trial:!0,enterprise:!0},advancedFiltering:{free:!1,pro:!1,trial:!1,enterprise:!0},apiAccess:{free:!1,pro:!1,trial:!1,enterprise:!0},webhookNotifications:{free:!1,pro:!1,trial:!1,enterprise:!0},cicdIntegration:{free:!1,pro:!1,trial:!1,enterprise:!0},customIntegrations:{free:!1,pro:!1,trial:!1,enterprise:!0},roleBasedAccess:{free:!1,pro:!1,trial:!1,enterprise:!0},teamAnalytics:{free:!1,pro:!1,trial:!1,enterprise:!0},auditTrails:{free:!1,pro:!1,trial:!1,enterprise:!0},ssoIntegration:{free:!1,pro:!1,trial:!1,enterprise:!0},multiTenantSupport:{free:!1,pro:!1,trial:!1,enterprise:!0},whiteLabeling:{free:!1,pro:!1,trial:!1,enterprise:!0},customBranding:{free:!1,pro:!1,trial:!1,enterprise:!0},communitySupport:{free:!0,pro:!0,trial:!0,enterprise:!0},emailSupport:{free:!1,pro:!0,trial:!0,enterprise:!0},prioritySupport:{free:!1,pro:!1,trial:!1,enterprise:!0},dedicatedAccountManager:{free:!1,pro:!1,trial:!1,enterprise:!0},customTraining:{free:!1,pro:!1,trial:!1,enterprise:!0},soc2Compliance:{free:!1,pro:!0,trial:!0,enterprise:!0},hipaaCompliance:{free:!1,pro:!0,trial:!0,enterprise:!0},fedrampCompliance:{free:!1,pro:!1,trial:!1,enterprise:!0},customCompliance:{free:!1,pro:!1,trial:!1,enterprise:!0}}},wk=(t=Ck)=>({isFeatureEnabled:(o,a)=>t.features[o]?.[a]??!1,getEnabledFeatures:o=>Object.entries(t.features).filter(([,a])=>a[o]).map(([a])=>a),getAllFeatures:()=>Object.keys(t.features),getFeatureTiers:o=>t.features[o],getUpgradePath:(o,a)=>{let c=["free","pro","trial","enterprise"],u=c.indexOf(a);for(let l=u+1;l<c.length;l++){let d=c[l];if(t.features[o]?.[d])return{required:!0,tier:d,path:`https://cdkinsights.dev/pricing?tier=${d}&feature=${o}`}}return null}}),_n=wk();var gu=(t,e,s)=>{let n=_n.getUpgradePath(t,e),r=s?` for ${s}`:"";return n?`\u{1F4A1} Upgrade to ${n.tier} to access ${t}${r}. Visit: ${n.path}`:`\u26A0\uFE0F ${t}${r} is not available for your current tier.`};var Ak=["CI","BUILD_ID","BUILD_NUMBER","CIRCLECI","TRAVIS","GITHUB_ACTIONS","GITLAB_CI","JENKINS_URL","BITBUCKET_BUILD_NUMBER","TEAMCITY_VERSION","BAMBOO_BUILDKEY","GO_PIPELINE_NAME","BUILDKITE","DRONE","SEMAPHORE","APPVEYOR","WERCKER","CODEBUILD_BUILD_ID","AWS_CODEBUILD_BUILD_ID","TF_BUILD","CIRRUS_CI","NETLIFY","VERCEL","RENDER","HEROKU_TEST_RUN_ID"],kn=()=>Ak.some(t=>!!process.env[t]),Zy=()=>{if(process.env.GITHUB_ACTIONS)return"GitHub Actions";if(process.env.GITLAB_CI)return"GitLab CI";if(process.env.CIRCLECI)return"CircleCI";if(process.env.TRAVIS)return"Travis CI";if(process.env.JENKINS_URL)return"Jenkins";if(process.env.BITBUCKET_BUILD_NUMBER)return"Bitbucket Pipelines";if(process.env.TEAMCITY_VERSION)return"TeamCity";if(process.env.BUILDKITE)return"Buildkite";if(process.env.DRONE)return"Drone";if(process.env.SEMAPHORE)return"Semaphore";if(process.env.APPVEYOR)return"AppVeyor";if(process.env.CODEBUILD_BUILD_ID||process.env.AWS_CODEBUILD_BUILD_ID)return"AWS CodeBuild";if(process.env.TF_BUILD)return"Azure Pipelines";if(process.env.CIRRUS_CI)return"Cirrus CI";if(process.env.NETLIFY)return"Netlify";if(process.env.VERCEL)return"Vercel";if(process.env.RENDER)return"Render";if(process.env.HEROKU_TEST_RUN_ID)return"Heroku CI";if(process.env.CI)return"Generic CI"},Yy=()=>kn()||process.env.CDK_INSIGHTS_NON_INTERACTIVE?!1:process.stdin.isTTY===!0&&process.stdout.isTTY===!0;var Xs=V(Ln()),So=process.env.NODE_ENV==="development",gf=process.env.CDK_INSIGHTS_VERBOSE==="true",qT=So||gf||process.env.CDK_INSIGHTS_ENABLE_LOGGING==="true",ov=gf?Xs.LogLevel.DEBUG:So?Xs.LogLevel.INFO:Xs.LogLevel.ERROR,HT=qT?[(0,Xs.createConsoleTransport)({formatter:(0,Xs.createJsonFormatter)(),level:ov,useColors:!So})]:[],xe=(0,Xs.createLogger)({config:{level:ov,serviceName:"cdk-insights",stage:So?"dev":"prod"},formatter:(0,Xs.createJsonFormatter)(),transports:HT,env:{STAGE:So?"dev":"prod",LOG_LEVEL:gf?"DEBUG":So?"INFO":"ERROR"}}),Co=t=>({debug:(e,s,n)=>xe.debug(e,{component:t,...s},n),info:(e,s,n)=>xe.info(e,{component:t,...s},n),warn:(e,s,n,r)=>xe.warn(e,{component:t,...s},n,r),error:(e,s,n,r)=>xe.error(e,{component:t,...s},n,r)}),H=Co("cli"),Gt=Co("analysis"),Mu=Co("license"),ks=Co("cache"),ju=Co("github"),VT=Co("aspect");var Nn=Uu.join(av.homedir(),".cdk-insights","cache"),$u=Uu.join(Nn,"analysis-cache.json"),xf=Uu.join(Nn,"cache-stats.json"),en={totalHits:0,totalMisses:0,totalSets:0,totalClears:0,cacheSize:0,maxCacheSize:1e3},wo=null,Wu=!1,KT=()=>{try{if(ht.existsSync(xf)){let t=ht.readFileSync(xf,"utf-8");try{en={...en,...JSON.parse(t)}}catch(e){ks.warn("Could not parse cache statistics file",{error:e instanceof Error?e.message:String(e)})}}}catch(t){ks.warn("Could not load cache statistics",{error:t instanceof Error?t.message:String(t)})}},Gu=()=>{Wu=!0,!wo&&(wo=setTimeout(()=>{Wu&&cv(),wo=null},5e3))},cv=()=>{try{ZT(),ht.writeFileSync(xf,JSON.stringify(en,null,2),"utf-8"),Wu=!1}catch(t){ks.warn("Could not save cache statistics",{error:t instanceof Error?t.message:String(t)})}},yf=()=>{wo&&(clearTimeout(wo),wo=null),Wu&&cv()};process.on("exit",yf);process.on("SIGINT",()=>{yf(),process.exit(0)});process.on("SIGTERM",()=>{yf(),process.exit(0)});KT();var uv=()=>{try{if(kn()){ks.info("\u2139\uFE0F Cache clear skipped in CI environment");return}ht.existsSync($u)&&ht.unlinkSync($u),ht.existsSync(Nn)&&ht.readdirSync(Nn).length===0&&ht.rmdirSync(Nn),en.totalClears++,en.lastClearTime=Date.now(),en.cacheSize=0,Gu(),ks.info("\u2705 Analysis cache cleared successfully")}catch(t){ks.warn("\u26A0\uFE0F Could not clear cache files",{error:t instanceof Error?t.message:String(t)}),ks.info("\u2139\uFE0F Cache will be cleared on next process restart")}},bf=()=>{let t=ht.existsSync($u),e=ht.existsSync(Nn),s;if(t)try{s=ht.statSync($u).size}catch{}return{cacheDir:Nn,cacheFileExists:t,cacheDirExists:e,cacheSize:s,stats:en}},ZT=()=>{ht.existsSync(Nn)||ht.mkdirSync(Nn,{recursive:!0})};var lv=t=>t?_n.isFeatureEnabled("caching",t):_n.isFeatureEnabled("caching","free"),dv=()=>{en.totalHits++,Gu()},zu=()=>{en.totalMisses++,Gu()},pv=()=>{en.totalSets++,en.cacheSize++,Gu()};var YT=["IAM","S3","Lambda","DynamoDB","RDS","EC2","SNS","SQS","StepFunctions","CloudTrail","ApiGateway","SecretsManager","KMS","EventBridge","CloudFront","ELB","ECS","Cognito","WAF","CloudWatch","Route53","ElastiCache","ECR","OpenSearch","ACM","Backup","VPC","Kinesis","AppSync","EKS","Redshift","MSK","Glue"],fv={IAM:["iamPolicies","iamPermissionBoundary","iamCrossAccountTrust"],S3:["s3Buckets","s3IntelligentTiering","s3LifecyclePolicy","s3Replication"],Lambda:["lambdaEnvironmentVariables","lambdaMemory","lambdaReservedConcurrency","lambdaDeadLetterQueue","lambdaVpcNatWarning"],DynamoDB:["dynamoDBAutoScaling","dynamoDBStreams"],RDS:["rdsEncryption","rdsMultiAZ","rdsPublicAccess","rdsBackupRetention","rdsDeletionProtection"],EC2:["ec2InstanceType","natGatewayUsage","securityGroups","ebsVolumes"],SNS:["sns"],SQS:["sqs"],StepFunctions:["stepFunctions"],CloudTrail:["cloudTrailLogging"],ApiGateway:["apiGateway"],SecretsManager:["secretsManager"],KMS:["kmsKeys"],EventBridge:["eventBridgeRules"],CloudFront:["cloudFrontHttpsOnly","cloudFrontWafAssociation","cloudFrontLogging","cloudFrontTls"],ELB:["elbDeletionProtection","elbLogging","elbHttpsListeners","elbSecurityPolicy"],ECS:["ecsSecrets","ecsLogging","ecsResources"],Cognito:["cognitoPasswordPolicy","cognitoMfa","cognitoAdvancedSecurity"],WAF:["wafWebAcl","wafLogging"],CloudWatch:["cloudWatchLogRetention","cloudWatchEncryption","cloudWatchAlarms"],Route53:["route53Dnssec","route53HealthChecks","route53QueryLogging"],ElastiCache:["elastiCacheEncryption","elastiCacheAuth","elastiCacheFailover"],ECR:["ecrScanning","ecrLifecycle","ecrImmutableTags"],OpenSearch:["openSearchEncryption","openSearchAccessControl","openSearchLogging"],ACM:["acmValidation"],Backup:["backupPlans","backupVault"],VPC:["vpcFlowLogs","vpcDefaultSecurityGroup"],Kinesis:["kinesisEncryption","kinesisRetention"],AppSync:["appSyncAuth","appSyncLogging","appSyncWaf"],EKS:["eksPublicEndpoint","eksEncryption","eksLogging"],Redshift:["redshiftEncryption","redshiftPublicAccess","redshiftLogging"],MSK:["mskEncryption","mskAuth","mskLogging"],Glue:["glueEncryption","glueConnections"]},JT=Object.entries(fv).reduce((t,[e,s])=>{for(let n of s)t[n]=e;return t},{}),vf=t=>{let e=new Set,s=[];for(let n of t)e.has(n)||(e.add(n),s.push(n));return s},qu=t=>{if(!t||t.length===0)return{services:["All services"],removedAllServices:!1,defaultedToAll:!0};let e=vf(t),s=e.includes("All services"),n=e.filter(r=>r!=="All services");return s&&n.length>0?{services:n,removedAllServices:!0,defaultedToAll:!1}:{services:s?["All services"]:e,removedAllServices:!1,defaultedToAll:!1}},mv=(t,e)=>{if(t.length===0||t.includes("All services"))return vf(e);let s=t.flatMap(n=>n==="All services"?e:fv[n]??[]);return vf(s)},Ba=t=>JT[t],Ao=t=>t==="All services"?!0:YT.includes(t);var KS=V(require("node:crypto")),Nt=V(require("node:fs")),Bm=V(require("node:path"));function Na(t,e){return function(){return t.apply(e,arguments)}}var{toString:QT}=Object.prototype,{getPrototypeOf:Sf}=Object,{iterator:Vu,toStringTag:gv}=Symbol,Ku=(t=>e=>{let s=QT.call(e);return t[s]||(t[s]=s.slice(8,-1).toLowerCase())})(Object.create(null)),tn=t=>(t=t.toLowerCase(),e=>Ku(e)===t),Zu=t=>e=>typeof e===t,{isArray:Fo}=Array,Eo=Zu("undefined");function Ma(t){return t!==null&&!Eo(t)&&t.constructor!==null&&!Eo(t.constructor)&&es(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var xv=tn("ArrayBuffer");function XT(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&xv(t.buffer),e}var e8=Zu("string"),es=Zu("function"),yv=Zu("number"),ja=t=>t!==null&&typeof t=="object",t8=t=>t===!0||t===!1,Hu=t=>{if(Ku(t)!=="object")return!1;let e=Sf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(gv in t)&&!(Vu in t)},s8=t=>{if(!ja(t)||Ma(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},n8=tn("Date"),r8=tn("File"),i8=tn("Blob"),o8=tn("FileList"),a8=t=>ja(t)&&es(t.pipe),c8=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||es(t.append)&&((e=Ku(t))==="formdata"||e==="object"&&es(t.toString)&&t.toString()==="[object FormData]"))},u8=tn("URLSearchParams"),[l8,d8,p8,f8]=["ReadableStream","Request","Response","Headers"].map(tn),m8=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function $a(t,e,{allOwnKeys:s=!1}={}){if(t===null||typeof t>"u")return;let n,r;if(typeof t!="object"&&(t=[t]),Fo(t))for(n=0,r=t.length;n<r;n++)e.call(null,t[n],n,t);else{if(Ma(t))return;let i=s?Object.getOwnPropertyNames(t):Object.keys(t),o=i.length,a;for(n=0;n<o;n++)a=i[n],e.call(null,t[a],a,t)}}function bv(t,e){if(Ma(t))return null;e=e.toLowerCase();let s=Object.keys(t),n=s.length,r;for(;n-- >0;)if(r=s[n],e===r.toLowerCase())return r;return null}var di=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,vv=t=>!Eo(t)&&t!==di;function Df(){let{caseless:t,skipUndefined:e}=vv(this)&&this||{},s={},n=(r,i)=>{let o=t&&bv(s,i)||i;Hu(s[o])&&Hu(r)?s[o]=Df(s[o],r):Hu(r)?s[o]=Df({},r):Fo(r)?s[o]=r.slice():(!e||!Eo(r))&&(s[o]=r)};for(let r=0,i=arguments.length;r<i;r++)arguments[r]&&$a(arguments[r],n);return s}var h8=(t,e,s,{allOwnKeys:n}={})=>($a(e,(r,i)=>{s&&es(r)?t[i]=Na(r,s):t[i]=r},{allOwnKeys:n}),t),g8=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),x8=(t,e,s,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),s&&Object.assign(t.prototype,s)},y8=(t,e,s,n)=>{let r,i,o,a={};if(e=e||{},t==null)return e;do{for(r=Object.getOwnPropertyNames(t),i=r.length;i-- >0;)o=r[i],(!n||n(o,t,e))&&!a[o]&&(e[o]=t[o],a[o]=!0);t=s!==!1&&Sf(t)}while(t&&(!s||s(t,e))&&t!==Object.prototype);return e},b8=(t,e,s)=>{t=String(t),(s===void 0||s>t.length)&&(s=t.length),s-=e.length;let n=t.indexOf(e,s);return n!==-1&&n===s},v8=t=>{if(!t)return null;if(Fo(t))return t;let e=t.length;if(!yv(e))return null;let s=new Array(e);for(;e-- >0;)s[e]=t[e];return s},D8=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Sf(Uint8Array)),S8=(t,e)=>{let n=(t&&t[Vu]).call(t),r;for(;(r=n.next())&&!r.done;){let i=r.value;e.call(t,i[0],i[1])}},C8=(t,e)=>{let s,n=[];for(;(s=t.exec(e))!==null;)n.push(s);return n},w8=tn("HTMLFormElement"),A8=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(s,n,r){return n.toUpperCase()+r}),hv=(({hasOwnProperty:t})=>(e,s)=>t.call(e,s))(Object.prototype),E8=tn("RegExp"),Dv=(t,e)=>{let s=Object.getOwnPropertyDescriptors(t),n={};$a(s,(r,i)=>{let o;(o=e(r,i,t))!==!1&&(n[i]=o||r)}),Object.defineProperties(t,n)},F8=t=>{Dv(t,(e,s)=>{if(es(t)&&["arguments","caller","callee"].indexOf(s)!==-1)return!1;let n=t[s];if(es(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+s+"'")})}})},_8=(t,e)=>{let s={},n=r=>{r.forEach(i=>{s[i]=!0})};return Fo(t)?n(t):n(String(t).split(e)),s},k8=()=>{},I8=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function R8(t){return!!(t&&es(t.append)&&t[gv]==="FormData"&&t[Vu])}var T8=t=>{let e=new Array(10),s=(n,r)=>{if(ja(n)){if(e.indexOf(n)>=0)return;if(Ma(n))return n;if(!("toJSON"in n)){e[r]=n;let i=Fo(n)?[]:{};return $a(n,(o,a)=>{let c=s(o,r+1);!Eo(c)&&(i[a]=c)}),e[r]=void 0,i}}return n};return s(t,0)},P8=tn("AsyncFunction"),O8=t=>t&&(ja(t)||es(t))&&es(t.then)&&es(t.catch),Sv=((t,e)=>t?setImmediate:e?((s,n)=>(di.addEventListener("message",({source:r,data:i})=>{r===di&&i===s&&n.length&&n.shift()()},!1),r=>{n.push(r),di.postMessage(s,"*")}))(`axios@${Math.random()}`,[]):s=>setTimeout(s))(typeof setImmediate=="function",es(di.postMessage)),L8=typeof queueMicrotask<"u"?queueMicrotask.bind(di):typeof process<"u"&&process.nextTick||Sv,B8=t=>t!=null&&es(t[Vu]),w={isArray:Fo,isArrayBuffer:xv,isBuffer:Ma,isFormData:c8,isArrayBufferView:XT,isString:e8,isNumber:yv,isBoolean:t8,isObject:ja,isPlainObject:Hu,isEmptyObject:s8,isReadableStream:l8,isRequest:d8,isResponse:p8,isHeaders:f8,isUndefined:Eo,isDate:n8,isFile:r8,isBlob:i8,isRegExp:E8,isFunction:es,isStream:a8,isURLSearchParams:u8,isTypedArray:D8,isFileList:o8,forEach:$a,merge:Df,extend:h8,trim:m8,stripBOM:g8,inherits:x8,toFlatObject:y8,kindOf:Ku,kindOfTest:tn,endsWith:b8,toArray:v8,forEachEntry:S8,matchAll:C8,isHTMLForm:w8,hasOwnProperty:hv,hasOwnProp:hv,reduceDescriptors:Dv,freezeMethods:F8,toObjectSet:_8,toCamelCase:A8,noop:k8,toFiniteNumber:I8,findKey:bv,global:di,isContextDefined:vv,isSpecCompliantForm:R8,toJSONObject:T8,isAsyncFn:P8,isThenable:O8,setImmediate:Sv,asap:L8,isIterable:B8};function _o(t,e,s,n,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),s&&(this.config=s),n&&(this.request=n),r&&(this.response=r,this.status=r.status?r.status:null)}w.inherits(_o,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:w.toJSONObject(this.config),code:this.code,status:this.status}}});var Cv=_o.prototype,wv={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{wv[t]={value:t}});Object.defineProperties(_o,wv);Object.defineProperty(Cv,"isAxiosError",{value:!0});_o.from=(t,e,s,n,r,i)=>{let o=Object.create(Cv);w.toFlatObject(t,o,function(l){return l!==Error.prototype},u=>u!=="isAxiosError");let a=t&&t.message?t.message:"Error",c=e==null&&t?t.code:e;return _o.call(o,a,c,s,n,r),t&&o.cause==null&&Object.defineProperty(o,"cause",{value:t,configurable:!0}),o.name=t&&t.name||"Error",i&&Object.assign(o,i),o};var ne=_o;var _D=V(FD(),1),ol=_D.default;function Uf(t){return w.isPlainObject(t)||w.isArray(t)}function ID(t){return w.endsWith(t,"[]")?t.slice(0,-2):t}function kD(t,e,s){return t?t.concat(e).map(function(r,i){return r=ID(r),!s&&i?"["+r+"]":r}).join(s?".":""):e}function D4(t){return w.isArray(t)&&!t.some(Uf)}var S4=w.toFlatObject(w,{},null,function(e){return/^is[A-Z]/.test(e)});function C4(t,e,s){if(!w.isObject(t))throw new TypeError("target must be an object");e=e||new(ol||FormData),s=w.toFlatObject(s,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,h){return!w.isUndefined(h[g])});let n=s.metaTokens,r=s.visitor||l,i=s.dots,o=s.indexes,c=(s.Blob||typeof Blob<"u"&&Blob)&&w.isSpecCompliantForm(e);if(!w.isFunction(r))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(w.isDate(m))return m.toISOString();if(w.isBoolean(m))return m.toString();if(!c&&w.isBlob(m))throw new ne("Blob is not supported. Use a Buffer instead.");return w.isArrayBuffer(m)||w.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,g,h){let y=m;if(m&&!h&&typeof m=="object"){if(w.endsWith(g,"{}"))g=n?g:g.slice(0,-2),m=JSON.stringify(m);else if(w.isArray(m)&&D4(m)||(w.isFileList(m)||w.endsWith(g,"[]"))&&(y=w.toArray(m)))return g=ID(g),y.forEach(function(D,S){!(w.isUndefined(D)||D===null)&&e.append(o===!0?kD([g],S,i):o===null?g:g+"[]",u(D))}),!1}return Uf(m)?!0:(e.append(kD(h,g,i),u(m)),!1)}let d=[],f=Object.assign(S4,{defaultVisitor:l,convertValue:u,isVisitable:Uf});function p(m,g){if(!w.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+g.join("."));d.push(m),w.forEach(m,function(y,x){(!(w.isUndefined(y)||y===null)&&r.call(e,y,w.isString(x)?x.trim():x,g,f))===!0&&p(y,g?g.concat(x):[x])}),d.pop()}}if(!w.isObject(t))throw new TypeError("data must be an object");return p(t),e}var hr=C4;function RD(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function TD(t,e){this._pairs=[],t&&hr(t,this,e)}var PD=TD.prototype;PD.append=function(e,s){this._pairs.push([e,s])};PD.toString=function(e){let s=e?function(n){return e.call(this,n,RD)}:RD;return this._pairs.map(function(r){return s(r[0])+"="+s(r[1])},"").join("&")};var OD=TD;function w4(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function fi(t,e,s){if(!e)return t;let n=s&&s.encode||w4;w.isFunction(s)&&(s={serialize:s});let r=s&&s.serialize,i;if(r?i=r(e,s):i=w.isURLSearchParams(e)?e.toString():new OD(e,s).toString(n),i){let o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var Gf=class{constructor(){this.handlers=[]}use(e,s,n){return this.handlers.push({fulfilled:e,rejected:s,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){w.forEach(this.handlers,function(n){n!==null&&e(n)})}},zf=Gf;var Po={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var MD=V(require("crypto"),1);var LD=V(require("url"),1),BD=LD.default.URLSearchParams;var qf="abcdefghijklmnopqrstuvwxyz",ND="0123456789",jD={DIGIT:ND,ALPHA:qf,ALPHA_DIGIT:qf+qf.toUpperCase()+ND},A4=(t=16,e=jD.ALPHA_DIGIT)=>{let s="",{length:n}=e,r=new Uint32Array(t);MD.default.randomFillSync(r);for(let i=0;i<t;i++)s+=e[r[i]%n];return s},$D={isNode:!0,classes:{URLSearchParams:BD,FormData:ol,Blob:typeof Blob<"u"&&Blob||null},ALPHABET:jD,generateString:A4,protocols:["http","https","file","data"]};var Kf={};$g(Kf,{hasBrowserEnv:()=>Vf,hasStandardBrowserEnv:()=>E4,hasStandardBrowserWebWorkerEnv:()=>F4,navigator:()=>Hf,origin:()=>_4});var Vf=typeof window<"u"&&typeof document<"u",Hf=typeof navigator=="object"&&navigator||void 0,E4=Vf&&(!Hf||["ReactNative","NativeScript","NS"].indexOf(Hf.product)<0),F4=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",_4=Vf&&window.location.href||"http://localhost";var He={...Kf,...$D};function Zf(t,e){return hr(t,new He.classes.URLSearchParams,{visitor:function(s,n,r,i){return He.isNode&&w.isBuffer(s)?(this.append(n,s.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...e})}function k4(t){return w.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function I4(t){let e={},s=Object.keys(t),n,r=s.length,i;for(n=0;n<r;n++)i=s[n],e[i]=t[i];return e}function R4(t){function e(s,n,r,i){let o=s[i++];if(o==="__proto__")return!0;let a=Number.isFinite(+o),c=i>=s.length;return o=!o&&w.isArray(r)?r.length:o,c?(w.hasOwnProp(r,o)?r[o]=[r[o],n]:r[o]=n,!a):((!r[o]||!w.isObject(r[o]))&&(r[o]=[]),e(s,n,r[o],i)&&w.isArray(r[o])&&(r[o]=I4(r[o])),!a)}if(w.isFormData(t)&&w.isFunction(t.entries)){let s={};return w.forEachEntry(t,(n,r)=>{e(k4(n),r,s,0)}),s}return null}var al=R4;function T4(t,e,s){if(w.isString(t))try{return(e||JSON.parse)(t),w.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(s||JSON.stringify)(t)}var Yf={transitional:Po,adapter:["xhr","http","fetch"],transformRequest:[function(e,s){let n=s.getContentType()||"",r=n.indexOf("application/json")>-1,i=w.isObject(e);if(i&&w.isHTMLForm(e)&&(e=new FormData(e)),w.isFormData(e))return r?JSON.stringify(al(e)):e;if(w.isArrayBuffer(e)||w.isBuffer(e)||w.isStream(e)||w.isFile(e)||w.isBlob(e)||w.isReadableStream(e))return e;if(w.isArrayBufferView(e))return e.buffer;if(w.isURLSearchParams(e))return s.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Zf(e,this.formSerializer).toString();if((a=w.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return hr(a?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||r?(s.setContentType("application/json",!1),T4(e)):e}],transformResponse:[function(e){let s=this.transitional||Yf.transitional,n=s&&s.forcedJSONParsing,r=this.responseType==="json";if(w.isResponse(e)||w.isReadableStream(e))return e;if(e&&w.isString(e)&&(n&&!this.responseType||r)){let o=!(s&&s.silentJSONParsing)&&r;try{return JSON.parse(e,this.parseReviver)}catch(a){if(o)throw a.name==="SyntaxError"?ne.from(a,ne.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:He.classes.FormData,Blob:He.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};w.forEach(["delete","get","head","post","put","patch"],t=>{Yf.headers[t]={}});var Oo=Yf;var P4=w.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),WD=t=>{let e={},s,n,r;return t&&t.split(`
158
158
  `).forEach(function(o){r=o.indexOf(":"),s=o.substring(0,r).trim().toLowerCase(),n=o.substring(r+1).trim(),!(!s||e[s]&&P4[s])&&(s==="set-cookie"?e[s]?e[s].push(n):e[s]=[n]:e[s]=e[s]?e[s]+", "+n:n)}),e};var UD=Symbol("internals");function qa(t){return t&&String(t).trim().toLowerCase()}function cl(t){return t===!1||t==null?t:w.isArray(t)?t.map(cl):String(t)}function O4(t){let e=Object.create(null),s=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=s.exec(t);)e[n[1]]=n[2];return e}var L4=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Jf(t,e,s,n,r){if(w.isFunction(n))return n.call(this,e,s);if(r&&(e=s),!!w.isString(e)){if(w.isString(n))return e.indexOf(n)!==-1;if(w.isRegExp(n))return n.test(e)}}function B4(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,s,n)=>s.toUpperCase()+n)}function N4(t,e){let s=w.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+s,{value:function(r,i,o){return this[n].call(this,e,r,i,o)},configurable:!0})})}var Lo=class{constructor(e){e&&this.set(e)}set(e,s,n){let r=this;function i(a,c,u){let l=qa(c);if(!l)throw new Error("header name must be a non-empty string");let d=w.findKey(r,l);(!d||r[d]===void 0||u===!0||u===void 0&&r[d]!==!1)&&(r[d||c]=cl(a))}let o=(a,c)=>w.forEach(a,(u,l)=>i(u,l,c));if(w.isPlainObject(e)||e instanceof this.constructor)o(e,s);else if(w.isString(e)&&(e=e.trim())&&!L4(e))o(WD(e),s);else if(w.isObject(e)&&w.isIterable(e)){let a={},c,u;for(let l of e){if(!w.isArray(l))throw TypeError("Object iterator must return a key-value pair");a[u=l[0]]=(c=a[u])?w.isArray(c)?[...c,l[1]]:[c,l[1]]:l[1]}o(a,s)}else e!=null&&i(s,e,n);return this}get(e,s){if(e=qa(e),e){let n=w.findKey(this,e);if(n){let r=this[n];if(!s)return r;if(s===!0)return O4(r);if(w.isFunction(s))return s.call(this,r,n);if(w.isRegExp(s))return s.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,s){if(e=qa(e),e){let n=w.findKey(this,e);return!!(n&&this[n]!==void 0&&(!s||Jf(this,this[n],n,s)))}return!1}delete(e,s){let n=this,r=!1;function i(o){if(o=qa(o),o){let a=w.findKey(n,o);a&&(!s||Jf(n,n[a],a,s))&&(delete n[a],r=!0)}}return w.isArray(e)?e.forEach(i):i(e),r}clear(e){let s=Object.keys(this),n=s.length,r=!1;for(;n--;){let i=s[n];(!e||Jf(this,this[i],i,e,!0))&&(delete this[i],r=!0)}return r}normalize(e){let s=this,n={};return w.forEach(this,(r,i)=>{let o=w.findKey(n,i);if(o){s[o]=cl(r),delete s[i];return}let a=e?B4(i):String(i).trim();a!==i&&delete s[i],s[a]=cl(r),n[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let s=Object.create(null);return w.forEach(this,(n,r)=>{n!=null&&n!==!1&&(s[r]=e&&w.isArray(n)?n.join(", "):n)}),s}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,s])=>e+": "+s).join(`
159
159
  `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...s){let n=new this(e);return s.forEach(r=>n.set(r)),n}static accessor(e){let n=(this[UD]=this[UD]={accessors:{}}).accessors,r=this.prototype;function i(o){let a=qa(o);n[a]||(N4(r,o),n[a]=!0)}return w.isArray(e)?e.forEach(i):i(e),this}};Lo.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);w.reduceDescriptors(Lo.prototype,({value:t},e)=>{let s=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[s]=n}}});w.freezeMethods(Lo);var ct=Lo;function Ha(t,e){let s=this||Oo,n=e||s,r=ct.from(n.headers),i=n.data;return w.forEach(t,function(a){i=a.call(s,i,r.normalize(),e?e.status:void 0)}),r.normalize(),i}function Va(t){return!!(t&&t.__CANCEL__)}function GD(t,e,s){ne.call(this,t??"canceled",ne.ERR_CANCELED,e,s),this.name="CanceledError"}w.inherits(GD,ne,{__CANCEL__:!0});var gs=GD;function xn(t,e,s){let n=s.config.validateStatus;!s.status||!n||n(s.status)?t(s):e(new ne("Request failed with status code "+s.status,[ne.ERR_BAD_REQUEST,ne.ERR_BAD_RESPONSE][Math.floor(s.status/100)-4],s.config,s.request,s))}function Qf(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Xf(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function mi(t,e,s){let n=!Qf(e);return t&&(n||s==!1)?Xf(t,e):e}var ES=V(qD(),1),FS=V(require("http"),1),_S=V(require("https"),1),wm=V(require("http2"),1),Am=V(require("util"),1),kS=V(lS(),1),$n=V(require("zlib"),1);var yi="1.13.2";function Qa(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var S5=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function gm(t,e,s){let n=s&&s.Blob||He.classes.Blob,r=Qa(t);if(e===void 0&&n&&(e=!0),r==="data"){t=r.length?t.slice(r.length+1):t;let i=S5.exec(t);if(!i)throw new ne("Invalid URL",ne.ERR_INVALID_URL);let o=i[1],a=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),a?"base64":"utf8");if(e){if(!n)throw new ne("Blob is not supported",ne.ERR_NOT_SUPPORT);return new n([u],{type:o})}return u}throw new ne("Unsupported protocol "+r,ne.ERR_NOT_SUPPORT)}var jn=V(require("stream"),1);var dS=V(require("stream"),1);var xm=Symbol("internals"),ym=class extends dS.default.Transform{constructor(e){e=w.toFlatObject(e,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(n,r)=>!w.isUndefined(r[n])),super({readableHighWaterMark:e.chunkSize});let s=this[xm]={timeWindow:e.timeWindow,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null};this.on("newListener",n=>{n==="progress"&&(s.isCaptured||(s.isCaptured=!0))})}_read(e){let s=this[xm];return s.onReadCallback&&s.onReadCallback(),super._read(e)}_transform(e,s,n){let r=this[xm],i=r.maxRate,o=this.readableHighWaterMark,a=r.timeWindow,c=1e3/a,u=i/c,l=r.minChunkSize!==!1?Math.max(r.minChunkSize,u*.01):0,d=(p,m)=>{let g=Buffer.byteLength(p);r.bytesSeen+=g,r.bytes+=g,r.isCaptured&&this.emit("progress",r.bytesSeen),this.push(p)?process.nextTick(m):r.onReadCallback=()=>{r.onReadCallback=null,process.nextTick(m)}},f=(p,m)=>{let g=Buffer.byteLength(p),h=null,y=o,x,D=0;if(i){let S=Date.now();(!r.ts||(D=S-r.ts)>=a)&&(r.ts=S,x=u-r.bytes,r.bytes=x<0?-x:0,D=0),x=u-r.bytes}if(i){if(x<=0)return setTimeout(()=>{m(null,p)},a-D);x<y&&(y=x)}y&&g>y&&g-y>l&&(h=p.subarray(y),p=p.subarray(0,y)),d(p,h?()=>{process.nextTick(m,null,h)}:m)};f(e,function p(m,g){if(m)return n(m);g?f(g,p):n(null)})}},bm=ym;var IS=require("events");var fS=V(require("util"),1),mS=require("stream");var{asyncIterator:pS}=Symbol,C5=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[pS]?yield*t[pS]():yield t},fl=C5;var w5=He.ALPHABET.ALPHA_DIGIT+"-_",Xa=typeof TextEncoder=="function"?new TextEncoder:new fS.default.TextEncoder,bi=`\r
160
- `,A5=Xa.encode(bi),E5=2,vm=class{constructor(e,s){let{escapeName:n}=this.constructor,r=w.isString(s),i=`Content-Disposition: form-data; name="${n(e)}"${!r&&s.name?`; filename="${n(s.name)}"`:""}${bi}`;r?s=Xa.encode(String(s).replace(/\r?\n|\r\n?/g,bi)):i+=`Content-Type: ${s.type||"application/octet-stream"}${bi}`,this.headers=Xa.encode(i+bi),this.contentLength=r?s.byteLength:s.size,this.size=this.headers.byteLength+this.contentLength+E5,this.name=e,this.value=s}async*encode(){yield this.headers;let{value:e}=this;w.isTypedArray(e)?yield e:yield*fl(e),yield A5}static escapeName(e){return String(e).replace(/[\r\n"]/g,s=>({"\r":"%0D","\n":"%0A",'"':"%22"})[s])}},F5=(t,e,s)=>{let{tag:n="form-data-boundary",size:r=25,boundary:i=n+"-"+He.generateString(r,w5)}=s||{};if(!w.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let o=Xa.encode("--"+i+bi),a=Xa.encode("--"+i+"--"+bi),c=a.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new vm(d,f);return c+=p.size,p});c+=o.byteLength*u.length,c=w.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),mS.Readable.from(async function*(){for(let d of u)yield o,yield*d.encode();yield a}())},hS=F5;var gS=V(require("stream"),1),Dm=class extends gS.default.Transform{__transform(e,s,n){this.push(e),n()}_transform(e,s,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let r=Buffer.alloc(2);r[0]=120,r[1]=156,this.push(r,s)}this.__transform(e,s,n)}},xS=Dm;var _5=(t,e)=>w.isAsyncFn(t)?function(...s){let n=s.pop();t.apply(this,s).then(r=>{try{e?n(null,...e(r)):n(null,r)}catch(i){n(i)}},n)}:t,yS=_5;function k5(t,e){t=t||10;let s=new Array(t),n=new Array(t),r=0,i=0,o;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];o||(o=u),s[r]=c,n[r]=u;let d=i,f=0;for(;d!==r;)f+=s[d++],d=d%t;if(r=(r+1)%t,r===i&&(i=(i+1)%t),u-o<e)return;let p=l&&u-l;return p?Math.round(f*1e3/p):void 0}}var bS=k5;function I5(t,e){let s=0,n=1e3/e,r,i,o=(u,l=Date.now())=>{s=l,r=null,i&&(clearTimeout(i),i=null),t(...u)};return[(...u)=>{let l=Date.now(),d=l-s;d>=n?o(u,l):(r=u,i||(i=setTimeout(()=>{i=null,o(r)},n-d)))},()=>r&&o(r)]}var vS=I5;var Mn=(t,e,s=3)=>{let n=0,r=bS(50,250);return vS(i=>{let o=i.loaded,a=i.lengthComputable?i.total:void 0,c=o-n,u=r(c),l=o<=a;n=o;let d={loaded:o,total:a,progress:a?o/a:void 0,bytes:c,rate:u||void 0,estimated:u&&a&&l?(a-o)/u:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(d)},s)},$o=(t,e)=>{let s=t!=null;return[n=>e[0]({lengthComputable:s,total:t,loaded:n}),e[1]]},Wo=t=>(...e)=>w.asap(()=>t(...e));function Sm(t){if(!t||typeof t!="string"||!t.startsWith("data:"))return 0;let e=t.indexOf(",");if(e<0)return 0;let s=t.slice(5,e),n=t.slice(e+1);if(/;base64/i.test(s)){let i=n.length,o=n.length;for(let f=0;f<o;f++)if(n.charCodeAt(f)===37&&f+2<o){let p=n.charCodeAt(f+1),m=n.charCodeAt(f+2);(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)&&(m>=48&&m<=57||m>=65&&m<=70||m>=97&&m<=102)&&(i-=2,f+=2)}let a=0,c=o-1,u=f=>f>=2&&n.charCodeAt(f-2)===37&&n.charCodeAt(f-1)===51&&(n.charCodeAt(f)===68||n.charCodeAt(f)===100);c>=0&&(n.charCodeAt(c)===61?(a++,c--):u(c)&&(a++,c-=3)),a===1&&c>=0&&(n.charCodeAt(c)===61||u(c))&&a++;let d=Math.floor(i/4)*3-(a||0);return d>0?d:0}return Buffer.byteLength(n,"utf8")}var DS={flush:$n.default.constants.Z_SYNC_FLUSH,finishFlush:$n.default.constants.Z_SYNC_FLUSH},R5={flush:$n.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:$n.default.constants.BROTLI_OPERATION_FLUSH},SS=w.isFunction($n.default.createBrotliDecompress),{http:T5,https:P5}=kS.default,O5=/https:?/,CS=He.protocols.map(t=>t+":"),wS=(t,[e,s])=>(t.on("end",s).on("error",s),e),Cm=class{constructor(){this.sessions=Object.create(null)}getSession(e,s){s=Object.assign({sessionTimeout:1e3},s);let n=this.sessions[e];if(n){let l=n.length;for(let d=0;d<l;d++){let[f,p]=n[d];if(!f.destroyed&&!f.closed&&Am.default.isDeepStrictEqual(p,s))return f}}let r=wm.default.connect(e,s),i,o=()=>{if(i)return;i=!0;let l=n,d=l.length,f=d;for(;f--;)if(l[f][0]===r){d===1?delete this.sessions[e]:l.splice(f,1);return}},a=r.request,{sessionTimeout:c}=s;if(c!=null){let l,d=0;r.request=function(){let f=a.apply(this,arguments);return d++,l&&(clearTimeout(l),l=null),f.once("close",()=>{--d||(l=setTimeout(()=>{l=null,o()},c))}),f}}r.once("close",o);let u=[r,s];return n?n.push(u):n=this.sessions[e]=[u],r}},L5=new Cm;function B5(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function RS(t,e,s){let n=e;if(!n&&n!==!1){let r=ES.default.getProxyForUrl(s);r&&(n=new URL(r))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let r=n.hostname||n.host;t.hostname=r,t.host=r,t.port=n.port,t.path=s,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){RS(i,e,i.href)}}var N5=typeof process<"u"&&w.kindOf(process)==="process",M5=t=>new Promise((e,s)=>{let n,r,i=(c,u)=>{r||(r=!0,n&&n(c,u))},o=c=>{i(c),e(c)},a=c=>{i(c,!0),s(c)};t(o,a,c=>n=c).catch(a)}),j5=({address:t,family:e})=>{if(!w.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},AS=(t,e)=>j5(w.isObject(t)?t:{address:t,family:e}),$5={request(t,e){let s=t.protocol+"//"+t.hostname+":"+(t.port||80),{http2Options:n,headers:r}=t,i=L5.getSession(s,n),{HTTP2_HEADER_SCHEME:o,HTTP2_HEADER_METHOD:a,HTTP2_HEADER_PATH:c,HTTP2_HEADER_STATUS:u}=wm.default.constants,l={[o]:t.protocol.replace(":",""),[a]:t.method,[c]:t.path};w.forEach(r,(f,p)=>{p.charAt(0)!==":"&&(l[p]=f)});let d=i.request(l);return d.once("response",f=>{let p=d;f=Object.assign({},f);let m=f[u];delete f[u],p.headers=f,p.statusCode=+m,e(p)}),d}},TS=N5&&function(e){return M5(async function(n,r,i){let{data:o,lookup:a,family:c,httpVersion:u=1,http2Options:l}=e,{responseType:d,responseEncoding:f}=e,p=e.method.toUpperCase(),m,g=!1,h;if(u=+u,Number.isNaN(u))throw TypeError(`Invalid protocol version: '${e.httpVersion}' is not a number`);if(u!==1&&u!==2)throw TypeError(`Unsupported protocol version '${u}'`);let y=u===2;if(a){let Z=yS(a,J=>w.isArray(J)?J:[J]);a=(J,Q,Ee)=>{Z(J,Q,(X,st,ce)=>{if(X)return Ee(X);let Fe=w.isArray(st)?st.map(Ze=>AS(Ze)):[AS(st,ce)];Q.all?Ee(X,Fe):Ee(X,Fe[0].address,Fe[0].family)})}}let x=new IS.EventEmitter;function D(Z){try{x.emit("abort",!Z||Z.type?new gs(null,e,h):Z)}catch(J){console.warn("emit error",J)}}x.once("abort",r);let S=()=>{e.cancelToken&&e.cancelToken.unsubscribe(D),e.signal&&e.signal.removeEventListener("abort",D),x.removeAllListeners()};(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(D),e.signal&&(e.signal.aborted?D():e.signal.addEventListener("abort",D))),i((Z,J)=>{if(m=!0,J){g=!0,S();return}let{data:Q}=Z;if(Q instanceof jn.default.Readable||Q instanceof jn.default.Duplex){let Ee=jn.default.finished(Q,()=>{Ee(),S()})}else S()});let v=mi(e.baseURL,e.url,e.allowAbsoluteUrls),E=new URL(v,He.hasBrowserEnv?He.origin:void 0),T=E.protocol||CS[0];if(T==="data:"){if(e.maxContentLength>-1){let J=String(e.url||v||"");if(Sm(J)>e.maxContentLength)return r(new ne("maxContentLength size of "+e.maxContentLength+" exceeded",ne.ERR_BAD_RESPONSE,e))}let Z;if(p!=="GET")return xn(n,r,{status:405,statusText:"method not allowed",headers:{},config:e});try{Z=gm(e.url,d==="blob",{Blob:e.env&&e.env.Blob})}catch(J){throw ne.from(J,ne.ERR_BAD_REQUEST,e)}return d==="text"?(Z=Z.toString(f),(!f||f==="utf8")&&(Z=w.stripBOM(Z))):d==="stream"&&(Z=jn.default.Readable.from(Z)),xn(n,r,{data:Z,status:200,statusText:"OK",headers:new ct,config:e})}if(CS.indexOf(T)===-1)return r(new ne("Unsupported protocol "+T,ne.ERR_BAD_REQUEST,e));let _=ct.from(e.headers).normalize();_.set("User-Agent","axios/"+yi,!1);let{onUploadProgress:W,onDownloadProgress:M}=e,j=e.maxRate,$,L;if(w.isSpecCompliantForm(o)){let Z=_.getContentType(/boundary=([-_\w\d]{10,70})/i);o=hS(o,J=>{_.set(J)},{tag:`axios-${yi}-boundary`,boundary:Z&&Z[1]||void 0})}else if(w.isFormData(o)&&w.isFunction(o.getHeaders)){if(_.set(o.getHeaders()),!_.hasContentLength())try{let Z=await Am.default.promisify(o.getLength).call(o);Number.isFinite(Z)&&Z>=0&&_.setContentLength(Z)}catch{}}else if(w.isBlob(o)||w.isFile(o))o.size&&_.setContentType(o.type||"application/octet-stream"),_.setContentLength(o.size||0),o=jn.default.Readable.from(fl(o));else if(o&&!w.isStream(o)){if(!Buffer.isBuffer(o))if(w.isArrayBuffer(o))o=Buffer.from(new Uint8Array(o));else if(w.isString(o))o=Buffer.from(o,"utf-8");else return r(new ne("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",ne.ERR_BAD_REQUEST,e));if(_.setContentLength(o.length,!1),e.maxBodyLength>-1&&o.length>e.maxBodyLength)return r(new ne("Request body larger than maxBodyLength limit",ne.ERR_BAD_REQUEST,e))}let z=w.toFiniteNumber(_.getContentLength());w.isArray(j)?($=j[0],L=j[1]):$=L=j,o&&(W||$)&&(w.isStream(o)||(o=jn.default.Readable.from(o,{objectMode:!1})),o=jn.default.pipeline([o,new bm({maxRate:w.toFiniteNumber($)})],w.noop),W&&o.on("progress",wS(o,$o(z,Mn(Wo(W),!1,3)))));let C;if(e.auth){let Z=e.auth.username||"",J=e.auth.password||"";C=Z+":"+J}if(!C&&E.username){let Z=E.username,J=E.password;C=Z+":"+J}C&&_.delete("authorization");let B;try{B=fi(E.pathname+E.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(Z){let J=new Error(Z.message);return J.config=e,J.url=e.url,J.exists=!0,r(J)}_.set("Accept-Encoding","gzip, compress, deflate"+(SS?", br":""),!1);let N={path:B,method:p,headers:_.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:C,protocol:T,family:c,beforeRedirect:B5,beforeRedirects:{},http2Options:l};!w.isUndefined(a)&&(N.lookup=a),e.socketPath?N.socketPath=e.socketPath:(N.hostname=E.hostname.startsWith("[")?E.hostname.slice(1,-1):E.hostname,N.port=E.port,RS(N,e.proxy,T+"//"+E.hostname+(E.port?":"+E.port:"")+N.path));let K,me=O5.test(N.protocol);if(N.agent=me?e.httpsAgent:e.httpAgent,y?K=$5:e.transport?K=e.transport:e.maxRedirects===0?K=me?_S.default:FS.default:(e.maxRedirects&&(N.maxRedirects=e.maxRedirects),e.beforeRedirect&&(N.beforeRedirects.config=e.beforeRedirect),K=me?P5:T5),e.maxBodyLength>-1?N.maxBodyLength=e.maxBodyLength:N.maxBodyLength=1/0,e.insecureHTTPParser&&(N.insecureHTTPParser=e.insecureHTTPParser),h=K.request(N,function(J){if(h.destroyed)return;let Q=[J],Ee=w.toFiniteNumber(J.headers["content-length"]);if(M||L){let Fe=new bm({maxRate:w.toFiniteNumber(L)});M&&Fe.on("progress",wS(Fe,$o(Ee,Mn(Wo(M),!0,3)))),Q.push(Fe)}let X=J,st=J.req||h;if(e.decompress!==!1&&J.headers["content-encoding"])switch((p==="HEAD"||J.statusCode===204)&&delete J.headers["content-encoding"],(J.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":Q.push($n.default.createUnzip(DS)),delete J.headers["content-encoding"];break;case"deflate":Q.push(new xS),Q.push($n.default.createUnzip(DS)),delete J.headers["content-encoding"];break;case"br":SS&&(Q.push($n.default.createBrotliDecompress(R5)),delete J.headers["content-encoding"])}X=Q.length>1?jn.default.pipeline(Q,w.noop):Q[0];let ce={status:J.statusCode,statusText:J.statusMessage,headers:new ct(J.headers),config:e,request:st};if(d==="stream")ce.data=X,xn(n,r,ce);else{let Fe=[],Ze=0;X.on("data",function(Le){Fe.push(Le),Ze+=Le.length,e.maxContentLength>-1&&Ze>e.maxContentLength&&(g=!0,X.destroy(),D(new ne("maxContentLength size of "+e.maxContentLength+" exceeded",ne.ERR_BAD_RESPONSE,e,st)))}),X.on("aborted",function(){if(g)return;let Le=new ne("stream has been aborted",ne.ERR_BAD_RESPONSE,e,st);X.destroy(Le),r(Le)}),X.on("error",function(Le){h.destroyed||r(ne.from(Le,null,e,st))}),X.on("end",function(){try{let Le=Fe.length===1?Fe[0]:Buffer.concat(Fe);d!=="arraybuffer"&&(Le=Le.toString(f),(!f||f==="utf8")&&(Le=w.stripBOM(Le))),ce.data=Le}catch(Le){return r(ne.from(Le,null,e,ce.request,ce))}xn(n,r,ce)})}x.once("abort",Fe=>{X.destroyed||(X.emit("error",Fe),X.destroy())})}),x.once("abort",Z=>{h.close?h.close():h.destroy(Z)}),h.on("error",function(J){r(ne.from(J,null,e,h))}),h.on("socket",function(J){J.setKeepAlive(!0,1e3*60)}),e.timeout){let Z=parseInt(e.timeout,10);if(Number.isNaN(Z)){D(new ne("error trying to parse `config.timeout` to int",ne.ERR_BAD_OPTION_VALUE,e,h));return}h.setTimeout(Z,function(){if(m)return;let Q=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",Ee=e.transitional||Po;e.timeoutErrorMessage&&(Q=e.timeoutErrorMessage),D(new ne(Q,Ee.clarifyTimeoutError?ne.ETIMEDOUT:ne.ECONNABORTED,e,h))})}else h.setTimeout(0);if(w.isStream(o)){let Z=!1,J=!1;o.on("end",()=>{Z=!0}),o.once("error",Q=>{J=!0,h.destroy(Q)}),o.on("close",()=>{!Z&&!J&&D(new gs("Request stream has been aborted",e,h))}),o.pipe(h)}else o&&h.write(o),h.end()})};var PS=He.hasStandardBrowserEnv?((t,e)=>s=>(s=new URL(s,He.origin),t.protocol===s.protocol&&t.host===s.host&&(e||t.port===s.port)))(new URL(He.origin),He.navigator&&/(msie|trident)/i.test(He.navigator.userAgent)):()=>!0;var OS=He.hasStandardBrowserEnv?{write(t,e,s,n,r,i,o){if(typeof document>"u")return;let a=[`${t}=${encodeURIComponent(e)}`];w.isNumber(s)&&a.push(`expires=${new Date(s).toUTCString()}`),w.isString(n)&&a.push(`path=${n}`),w.isString(r)&&a.push(`domain=${r}`),i===!0&&a.push("secure"),w.isString(o)&&a.push(`SameSite=${o}`),document.cookie=a.join("; ")},read(t){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};var LS=t=>t instanceof ct?{...t}:t;function nn(t,e){e=e||{};let s={};function n(u,l,d,f){return w.isPlainObject(u)&&w.isPlainObject(l)?w.merge.call({caseless:f},u,l):w.isPlainObject(l)?w.merge({},l):w.isArray(l)?l.slice():l}function r(u,l,d,f){if(w.isUndefined(l)){if(!w.isUndefined(u))return n(void 0,u,d,f)}else return n(u,l,d,f)}function i(u,l){if(!w.isUndefined(l))return n(void 0,l)}function o(u,l){if(w.isUndefined(l)){if(!w.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function a(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(u,l,d)=>r(LS(u),LS(l),d,!0)};return w.forEach(Object.keys({...t,...e}),function(l){let d=c[l]||r,f=d(t[l],e[l],l);w.isUndefined(f)&&d!==a||(s[l]=f)}),s}var ml=t=>{let e=nn({},t),{data:s,withXSRFToken:n,xsrfHeaderName:r,xsrfCookieName:i,headers:o,auth:a}=e;if(e.headers=o=ct.from(o),e.url=fi(mi(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),w.isFormData(s)){if(He.hasStandardBrowserEnv||He.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(w.isFunction(s.getHeaders)){let c=s.getHeaders(),u=["content-type","content-length"];Object.entries(c).forEach(([l,d])=>{u.includes(l.toLowerCase())&&o.set(l,d)})}}if(He.hasStandardBrowserEnv&&(n&&w.isFunction(n)&&(n=n(e)),n||n!==!1&&PS(e.url))){let c=r&&i&&OS.read(i);c&&o.set(r,c)}return e};var W5=typeof XMLHttpRequest<"u",BS=W5&&function(t){return new Promise(function(s,n){let r=ml(t),i=r.data,o=ct.from(r.headers).normalize(),{responseType:a,onUploadProgress:c,onDownloadProgress:u}=r,l,d,f,p,m;function g(){p&&p(),m&&m(),r.cancelToken&&r.cancelToken.unsubscribe(l),r.signal&&r.signal.removeEventListener("abort",l)}let h=new XMLHttpRequest;h.open(r.method.toUpperCase(),r.url,!0),h.timeout=r.timeout;function y(){if(!h)return;let D=ct.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),v={data:!a||a==="text"||a==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:D,config:t,request:h};xn(function(T){s(T),g()},function(T){n(T),g()},v),h=null}"onloadend"in h?h.onloadend=y:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(y)},h.onabort=function(){h&&(n(new ne("Request aborted",ne.ECONNABORTED,t,h)),h=null)},h.onerror=function(S){let v=S&&S.message?S.message:"Network Error",E=new ne(v,ne.ERR_NETWORK,t,h);E.event=S||null,n(E),h=null},h.ontimeout=function(){let S=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded",v=r.transitional||Po;r.timeoutErrorMessage&&(S=r.timeoutErrorMessage),n(new ne(S,v.clarifyTimeoutError?ne.ETIMEDOUT:ne.ECONNABORTED,t,h)),h=null},i===void 0&&o.setContentType(null),"setRequestHeader"in h&&w.forEach(o.toJSON(),function(S,v){h.setRequestHeader(v,S)}),w.isUndefined(r.withCredentials)||(h.withCredentials=!!r.withCredentials),a&&a!=="json"&&(h.responseType=r.responseType),u&&([f,m]=Mn(u,!0),h.addEventListener("progress",f)),c&&h.upload&&([d,p]=Mn(c),h.upload.addEventListener("progress",d),h.upload.addEventListener("loadend",p)),(r.cancelToken||r.signal)&&(l=D=>{h&&(n(!D||D.type?new gs(null,t,h):D),h.abort(),h=null)},r.cancelToken&&r.cancelToken.subscribe(l),r.signal&&(r.signal.aborted?l():r.signal.addEventListener("abort",l)));let x=Qa(r.url);if(x&&He.protocols.indexOf(x)===-1){n(new ne("Unsupported protocol "+x+":",ne.ERR_BAD_REQUEST,t));return}h.send(i||null)})};var U5=(t,e)=>{let{length:s}=t=t?t.filter(Boolean):[];if(e||s){let n=new AbortController,r,i=function(u){if(!r){r=!0,a();let l=u instanceof Error?u:this.reason;n.abort(l instanceof ne?l:new gs(l instanceof Error?l.message:l))}},o=e&&setTimeout(()=>{o=null,i(new ne(`timeout ${e} of ms exceeded`,ne.ETIMEDOUT))},e),a=()=>{t&&(o&&clearTimeout(o),o=null,t.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),t=null)};t.forEach(u=>u.addEventListener("abort",i));let{signal:c}=n;return c.unsubscribe=()=>w.asap(a),c}},NS=U5;var G5=function*(t,e){let s=t.byteLength;if(!e||s<e){yield t;return}let n=0,r;for(;n<s;)r=n+e,yield t.slice(n,r),n=r},z5=async function*(t,e){for await(let s of q5(t))yield*G5(s,e)},q5=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}let e=t.getReader();try{for(;;){let{done:s,value:n}=await e.read();if(s)break;yield n}}finally{await e.cancel()}},Em=(t,e,s,n)=>{let r=z5(t,e),i=0,o,a=c=>{o||(o=!0,n&&n(c))};return new ReadableStream({async pull(c){try{let{done:u,value:l}=await r.next();if(u){a(),c.close();return}let d=l.byteLength;if(s){let f=i+=d;s(f)}c.enqueue(new Uint8Array(l))}catch(u){throw a(u),u}},cancel(c){return a(c),r.return()}},{highWaterMark:2})};var MS=64*1024,{isFunction:hl}=w,H5=(({Request:t,Response:e})=>({Request:t,Response:e}))(w.global),{ReadableStream:jS,TextEncoder:$S}=w.global,WS=(t,...e)=>{try{return!!t(...e)}catch{return!1}},V5=t=>{t=w.merge.call({skipUndefined:!0},H5,t);let{fetch:e,Request:s,Response:n}=t,r=e?hl(e):typeof fetch=="function",i=hl(s),o=hl(n);if(!r)return!1;let a=r&&hl(jS),c=r&&(typeof $S=="function"?(m=>g=>m.encode(g))(new $S):async m=>new Uint8Array(await new s(m).arrayBuffer())),u=i&&a&&WS(()=>{let m=!1,g=new s(He.origin,{body:new jS,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!g}),l=o&&a&&WS(()=>w.isReadableStream(new n("").body)),d={stream:l&&(m=>m.body)};r&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!d[m]&&(d[m]=(g,h)=>{let y=g&&g[m];if(y)return y.call(g);throw new ne(`Response type '${m}' is not supported`,ne.ERR_NOT_SUPPORT,h)})});let f=async m=>{if(m==null)return 0;if(w.isBlob(m))return m.size;if(w.isSpecCompliantForm(m))return(await new s(He.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(w.isArrayBufferView(m)||w.isArrayBuffer(m))return m.byteLength;if(w.isURLSearchParams(m)&&(m=m+""),w.isString(m))return(await c(m)).byteLength},p=async(m,g)=>{let h=w.toFiniteNumber(m.getContentLength());return h??f(g)};return async m=>{let{url:g,method:h,data:y,signal:x,cancelToken:D,timeout:S,onDownloadProgress:v,onUploadProgress:E,responseType:T,headers:_,withCredentials:W="same-origin",fetchOptions:M}=ml(m),j=e||fetch;T=T?(T+"").toLowerCase():"text";let $=NS([x,D&&D.toAbortSignal()],S),L=null,z=$&&$.unsubscribe&&(()=>{$.unsubscribe()}),C;try{if(E&&u&&h!=="get"&&h!=="head"&&(C=await p(_,y))!==0){let J=new s(g,{method:"POST",body:y,duplex:"half"}),Q;if(w.isFormData(y)&&(Q=J.headers.get("content-type"))&&_.setContentType(Q),J.body){let[Ee,X]=$o(C,Mn(Wo(E)));y=Em(J.body,MS,Ee,X)}}w.isString(W)||(W=W?"include":"omit");let B=i&&"credentials"in s.prototype,N={...M,signal:$,method:h.toUpperCase(),headers:_.normalize().toJSON(),body:y,duplex:"half",credentials:B?W:void 0};L=i&&new s(g,N);let K=await(i?j(L,M):j(g,N)),me=l&&(T==="stream"||T==="response");if(l&&(v||me&&z)){let J={};["status","statusText","headers"].forEach(st=>{J[st]=K[st]});let Q=w.toFiniteNumber(K.headers.get("content-length")),[Ee,X]=v&&$o(Q,Mn(Wo(v),!0))||[];K=new n(Em(K.body,MS,Ee,()=>{X&&X(),z&&z()}),J)}T=T||"text";let Z=await d[w.findKey(d,T)||"text"](K,m);return!me&&z&&z(),await new Promise((J,Q)=>{xn(J,Q,{data:Z,headers:ct.from(K.headers),status:K.status,statusText:K.statusText,config:m,request:L})})}catch(B){throw z&&z(),B&&B.name==="TypeError"&&/Load failed|fetch/i.test(B.message)?Object.assign(new ne("Network Error",ne.ERR_NETWORK,m,L),{cause:B.cause||B}):ne.from(B,B&&B.code,m,L)}}},K5=new Map,Fm=t=>{let e=t&&t.env||{},{fetch:s,Request:n,Response:r}=e,i=[n,r,s],o=i.length,a=o,c,u,l=K5;for(;a--;)c=i[a],u=l.get(c),u===void 0&&l.set(c,u=a?new Map:V5(e)),l=u;return u},pz=Fm();var _m={http:TS,xhr:BS,fetch:{get:Fm}};w.forEach(_m,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var US=t=>`- ${t}`,Y5=t=>w.isFunction(t)||t===null||t===!1;function J5(t,e){t=w.isArray(t)?t:[t];let{length:s}=t,n,r,i={};for(let o=0;o<s;o++){n=t[o];let a;if(r=n,!Y5(n)&&(r=_m[(a=String(n)).toLowerCase()],r===void 0))throw new ne(`Unknown adapter '${a}'`);if(r&&(w.isFunction(r)||(r=r.get(e))))break;i[a||"#"+o]=r}if(!r){let o=Object.entries(i).map(([c,u])=>`adapter ${c} `+(u===!1?"is not supported by the environment":"is not available in the build")),a=s?o.length>1?`since :
160
+ `,A5=Xa.encode(bi),E5=2,vm=class{constructor(e,s){let{escapeName:n}=this.constructor,r=w.isString(s),i=`Content-Disposition: form-data; name="${n(e)}"${!r&&s.name?`; filename="${n(s.name)}"`:""}${bi}`;r?s=Xa.encode(String(s).replace(/\r?\n|\r\n?/g,bi)):i+=`Content-Type: ${s.type||"application/octet-stream"}${bi}`,this.headers=Xa.encode(i+bi),this.contentLength=r?s.byteLength:s.size,this.size=this.headers.byteLength+this.contentLength+E5,this.name=e,this.value=s}async*encode(){yield this.headers;let{value:e}=this;w.isTypedArray(e)?yield e:yield*fl(e),yield A5}static escapeName(e){return String(e).replace(/[\r\n"]/g,s=>({"\r":"%0D","\n":"%0A",'"':"%22"})[s])}},F5=(t,e,s)=>{let{tag:n="form-data-boundary",size:r=25,boundary:i=n+"-"+He.generateString(r,w5)}=s||{};if(!w.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let o=Xa.encode("--"+i+bi),a=Xa.encode("--"+i+"--"+bi),c=a.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new vm(d,f);return c+=p.size,p});c+=o.byteLength*u.length,c=w.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),mS.Readable.from(async function*(){for(let d of u)yield o,yield*d.encode();yield a}())},hS=F5;var gS=V(require("stream"),1),Dm=class extends gS.default.Transform{__transform(e,s,n){this.push(e),n()}_transform(e,s,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let r=Buffer.alloc(2);r[0]=120,r[1]=156,this.push(r,s)}this.__transform(e,s,n)}},xS=Dm;var _5=(t,e)=>w.isAsyncFn(t)?function(...s){let n=s.pop();t.apply(this,s).then(r=>{try{e?n(null,...e(r)):n(null,r)}catch(i){n(i)}},n)}:t,yS=_5;function k5(t,e){t=t||10;let s=new Array(t),n=new Array(t),r=0,i=0,o;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];o||(o=u),s[r]=c,n[r]=u;let d=i,f=0;for(;d!==r;)f+=s[d++],d=d%t;if(r=(r+1)%t,r===i&&(i=(i+1)%t),u-o<e)return;let p=l&&u-l;return p?Math.round(f*1e3/p):void 0}}var bS=k5;function I5(t,e){let s=0,n=1e3/e,r,i,o=(u,l=Date.now())=>{s=l,r=null,i&&(clearTimeout(i),i=null),t(...u)};return[(...u)=>{let l=Date.now(),d=l-s;d>=n?o(u,l):(r=u,i||(i=setTimeout(()=>{i=null,o(r)},n-d)))},()=>r&&o(r)]}var vS=I5;var Mn=(t,e,s=3)=>{let n=0,r=bS(50,250);return vS(i=>{let o=i.loaded,a=i.lengthComputable?i.total:void 0,c=o-n,u=r(c),l=o<=a;n=o;let d={loaded:o,total:a,progress:a?o/a:void 0,bytes:c,rate:u||void 0,estimated:u&&a&&l?(a-o)/u:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(d)},s)},$o=(t,e)=>{let s=t!=null;return[n=>e[0]({lengthComputable:s,total:t,loaded:n}),e[1]]},Wo=t=>(...e)=>w.asap(()=>t(...e));function Sm(t){if(!t||typeof t!="string"||!t.startsWith("data:"))return 0;let e=t.indexOf(",");if(e<0)return 0;let s=t.slice(5,e),n=t.slice(e+1);if(/;base64/i.test(s)){let i=n.length,o=n.length;for(let f=0;f<o;f++)if(n.charCodeAt(f)===37&&f+2<o){let p=n.charCodeAt(f+1),m=n.charCodeAt(f+2);(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)&&(m>=48&&m<=57||m>=65&&m<=70||m>=97&&m<=102)&&(i-=2,f+=2)}let a=0,c=o-1,u=f=>f>=2&&n.charCodeAt(f-2)===37&&n.charCodeAt(f-1)===51&&(n.charCodeAt(f)===68||n.charCodeAt(f)===100);c>=0&&(n.charCodeAt(c)===61?(a++,c--):u(c)&&(a++,c-=3)),a===1&&c>=0&&(n.charCodeAt(c)===61||u(c))&&a++;let d=Math.floor(i/4)*3-(a||0);return d>0?d:0}return Buffer.byteLength(n,"utf8")}var DS={flush:$n.default.constants.Z_SYNC_FLUSH,finishFlush:$n.default.constants.Z_SYNC_FLUSH},R5={flush:$n.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:$n.default.constants.BROTLI_OPERATION_FLUSH},SS=w.isFunction($n.default.createBrotliDecompress),{http:T5,https:P5}=kS.default,O5=/https:?/,CS=He.protocols.map(t=>t+":"),wS=(t,[e,s])=>(t.on("end",s).on("error",s),e),Cm=class{constructor(){this.sessions=Object.create(null)}getSession(e,s){s=Object.assign({sessionTimeout:1e3},s);let n=this.sessions[e];if(n){let l=n.length;for(let d=0;d<l;d++){let[f,p]=n[d];if(!f.destroyed&&!f.closed&&Am.default.isDeepStrictEqual(p,s))return f}}let r=wm.default.connect(e,s),i,o=()=>{if(i)return;i=!0;let l=n,d=l.length,f=d;for(;f--;)if(l[f][0]===r){d===1?delete this.sessions[e]:l.splice(f,1);return}},a=r.request,{sessionTimeout:c}=s;if(c!=null){let l,d=0;r.request=function(){let f=a.apply(this,arguments);return d++,l&&(clearTimeout(l),l=null),f.once("close",()=>{--d||(l=setTimeout(()=>{l=null,o()},c))}),f}}r.once("close",o);let u=[r,s];return n?n.push(u):n=this.sessions[e]=[u],r}},L5=new Cm;function B5(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function RS(t,e,s){let n=e;if(!n&&n!==!1){let r=ES.default.getProxyForUrl(s);r&&(n=new URL(r))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let r=n.hostname||n.host;t.hostname=r,t.host=r,t.port=n.port,t.path=s,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){RS(i,e,i.href)}}var N5=typeof process<"u"&&w.kindOf(process)==="process",M5=t=>new Promise((e,s)=>{let n,r,i=(c,u)=>{r||(r=!0,n&&n(c,u))},o=c=>{i(c),e(c)},a=c=>{i(c,!0),s(c)};t(o,a,c=>n=c).catch(a)}),j5=({address:t,family:e})=>{if(!w.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},AS=(t,e)=>j5(w.isObject(t)?t:{address:t,family:e}),$5={request(t,e){let s=t.protocol+"//"+t.hostname+":"+(t.port||80),{http2Options:n,headers:r}=t,i=L5.getSession(s,n),{HTTP2_HEADER_SCHEME:o,HTTP2_HEADER_METHOD:a,HTTP2_HEADER_PATH:c,HTTP2_HEADER_STATUS:u}=wm.default.constants,l={[o]:t.protocol.replace(":",""),[a]:t.method,[c]:t.path};w.forEach(r,(f,p)=>{p.charAt(0)!==":"&&(l[p]=f)});let d=i.request(l);return d.once("response",f=>{let p=d;f=Object.assign({},f);let m=f[u];delete f[u],p.headers=f,p.statusCode=+m,e(p)}),d}},TS=N5&&function(e){return M5(async function(n,r,i){let{data:o,lookup:a,family:c,httpVersion:u=1,http2Options:l}=e,{responseType:d,responseEncoding:f}=e,p=e.method.toUpperCase(),m,g=!1,h;if(u=+u,Number.isNaN(u))throw TypeError(`Invalid protocol version: '${e.httpVersion}' is not a number`);if(u!==1&&u!==2)throw TypeError(`Unsupported protocol version '${u}'`);let y=u===2;if(a){let Z=yS(a,J=>w.isArray(J)?J:[J]);a=(J,Q,Ee)=>{Z(J,Q,(X,st,ce)=>{if(X)return Ee(X);let Fe=w.isArray(st)?st.map(Ze=>AS(Ze)):[AS(st,ce)];Q.all?Ee(X,Fe):Ee(X,Fe[0].address,Fe[0].family)})}}let x=new IS.EventEmitter;function D(Z){try{x.emit("abort",!Z||Z.type?new gs(null,e,h):Z)}catch(J){console.warn("emit error",J)}}x.once("abort",r);let S=()=>{e.cancelToken&&e.cancelToken.unsubscribe(D),e.signal&&e.signal.removeEventListener("abort",D),x.removeAllListeners()};(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(D),e.signal&&(e.signal.aborted?D():e.signal.addEventListener("abort",D))),i((Z,J)=>{if(m=!0,J){g=!0,S();return}let{data:Q}=Z;if(Q instanceof jn.default.Readable||Q instanceof jn.default.Duplex){let Ee=jn.default.finished(Q,()=>{Ee(),S()})}else S()});let v=mi(e.baseURL,e.url,e.allowAbsoluteUrls),E=new URL(v,He.hasBrowserEnv?He.origin:void 0),R=E.protocol||CS[0];if(R==="data:"){if(e.maxContentLength>-1){let J=String(e.url||v||"");if(Sm(J)>e.maxContentLength)return r(new ne("maxContentLength size of "+e.maxContentLength+" exceeded",ne.ERR_BAD_RESPONSE,e))}let Z;if(p!=="GET")return xn(n,r,{status:405,statusText:"method not allowed",headers:{},config:e});try{Z=gm(e.url,d==="blob",{Blob:e.env&&e.env.Blob})}catch(J){throw ne.from(J,ne.ERR_BAD_REQUEST,e)}return d==="text"?(Z=Z.toString(f),(!f||f==="utf8")&&(Z=w.stripBOM(Z))):d==="stream"&&(Z=jn.default.Readable.from(Z)),xn(n,r,{data:Z,status:200,statusText:"OK",headers:new ct,config:e})}if(CS.indexOf(R)===-1)return r(new ne("Unsupported protocol "+R,ne.ERR_BAD_REQUEST,e));let _=ct.from(e.headers).normalize();_.set("User-Agent","axios/"+yi,!1);let{onUploadProgress:W,onDownloadProgress:j}=e,M=e.maxRate,$,L;if(w.isSpecCompliantForm(o)){let Z=_.getContentType(/boundary=([-_\w\d]{10,70})/i);o=hS(o,J=>{_.set(J)},{tag:`axios-${yi}-boundary`,boundary:Z&&Z[1]||void 0})}else if(w.isFormData(o)&&w.isFunction(o.getHeaders)){if(_.set(o.getHeaders()),!_.hasContentLength())try{let Z=await Am.default.promisify(o.getLength).call(o);Number.isFinite(Z)&&Z>=0&&_.setContentLength(Z)}catch{}}else if(w.isBlob(o)||w.isFile(o))o.size&&_.setContentType(o.type||"application/octet-stream"),_.setContentLength(o.size||0),o=jn.default.Readable.from(fl(o));else if(o&&!w.isStream(o)){if(!Buffer.isBuffer(o))if(w.isArrayBuffer(o))o=Buffer.from(new Uint8Array(o));else if(w.isString(o))o=Buffer.from(o,"utf-8");else return r(new ne("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",ne.ERR_BAD_REQUEST,e));if(_.setContentLength(o.length,!1),e.maxBodyLength>-1&&o.length>e.maxBodyLength)return r(new ne("Request body larger than maxBodyLength limit",ne.ERR_BAD_REQUEST,e))}let z=w.toFiniteNumber(_.getContentLength());w.isArray(M)?($=M[0],L=M[1]):$=L=M,o&&(W||$)&&(w.isStream(o)||(o=jn.default.Readable.from(o,{objectMode:!1})),o=jn.default.pipeline([o,new bm({maxRate:w.toFiniteNumber($)})],w.noop),W&&o.on("progress",wS(o,$o(z,Mn(Wo(W),!1,3)))));let C;if(e.auth){let Z=e.auth.username||"",J=e.auth.password||"";C=Z+":"+J}if(!C&&E.username){let Z=E.username,J=E.password;C=Z+":"+J}C&&_.delete("authorization");let B;try{B=fi(E.pathname+E.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(Z){let J=new Error(Z.message);return J.config=e,J.url=e.url,J.exists=!0,r(J)}_.set("Accept-Encoding","gzip, compress, deflate"+(SS?", br":""),!1);let N={path:B,method:p,headers:_.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:C,protocol:R,family:c,beforeRedirect:B5,beforeRedirects:{},http2Options:l};!w.isUndefined(a)&&(N.lookup=a),e.socketPath?N.socketPath=e.socketPath:(N.hostname=E.hostname.startsWith("[")?E.hostname.slice(1,-1):E.hostname,N.port=E.port,RS(N,e.proxy,R+"//"+E.hostname+(E.port?":"+E.port:"")+N.path));let K,me=O5.test(N.protocol);if(N.agent=me?e.httpsAgent:e.httpAgent,y?K=$5:e.transport?K=e.transport:e.maxRedirects===0?K=me?_S.default:FS.default:(e.maxRedirects&&(N.maxRedirects=e.maxRedirects),e.beforeRedirect&&(N.beforeRedirects.config=e.beforeRedirect),K=me?P5:T5),e.maxBodyLength>-1?N.maxBodyLength=e.maxBodyLength:N.maxBodyLength=1/0,e.insecureHTTPParser&&(N.insecureHTTPParser=e.insecureHTTPParser),h=K.request(N,function(J){if(h.destroyed)return;let Q=[J],Ee=w.toFiniteNumber(J.headers["content-length"]);if(j||L){let Fe=new bm({maxRate:w.toFiniteNumber(L)});j&&Fe.on("progress",wS(Fe,$o(Ee,Mn(Wo(j),!0,3)))),Q.push(Fe)}let X=J,st=J.req||h;if(e.decompress!==!1&&J.headers["content-encoding"])switch((p==="HEAD"||J.statusCode===204)&&delete J.headers["content-encoding"],(J.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":Q.push($n.default.createUnzip(DS)),delete J.headers["content-encoding"];break;case"deflate":Q.push(new xS),Q.push($n.default.createUnzip(DS)),delete J.headers["content-encoding"];break;case"br":SS&&(Q.push($n.default.createBrotliDecompress(R5)),delete J.headers["content-encoding"])}X=Q.length>1?jn.default.pipeline(Q,w.noop):Q[0];let ce={status:J.statusCode,statusText:J.statusMessage,headers:new ct(J.headers),config:e,request:st};if(d==="stream")ce.data=X,xn(n,r,ce);else{let Fe=[],Ze=0;X.on("data",function(Le){Fe.push(Le),Ze+=Le.length,e.maxContentLength>-1&&Ze>e.maxContentLength&&(g=!0,X.destroy(),D(new ne("maxContentLength size of "+e.maxContentLength+" exceeded",ne.ERR_BAD_RESPONSE,e,st)))}),X.on("aborted",function(){if(g)return;let Le=new ne("stream has been aborted",ne.ERR_BAD_RESPONSE,e,st);X.destroy(Le),r(Le)}),X.on("error",function(Le){h.destroyed||r(ne.from(Le,null,e,st))}),X.on("end",function(){try{let Le=Fe.length===1?Fe[0]:Buffer.concat(Fe);d!=="arraybuffer"&&(Le=Le.toString(f),(!f||f==="utf8")&&(Le=w.stripBOM(Le))),ce.data=Le}catch(Le){return r(ne.from(Le,null,e,ce.request,ce))}xn(n,r,ce)})}x.once("abort",Fe=>{X.destroyed||(X.emit("error",Fe),X.destroy())})}),x.once("abort",Z=>{h.close?h.close():h.destroy(Z)}),h.on("error",function(J){r(ne.from(J,null,e,h))}),h.on("socket",function(J){J.setKeepAlive(!0,1e3*60)}),e.timeout){let Z=parseInt(e.timeout,10);if(Number.isNaN(Z)){D(new ne("error trying to parse `config.timeout` to int",ne.ERR_BAD_OPTION_VALUE,e,h));return}h.setTimeout(Z,function(){if(m)return;let Q=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",Ee=e.transitional||Po;e.timeoutErrorMessage&&(Q=e.timeoutErrorMessage),D(new ne(Q,Ee.clarifyTimeoutError?ne.ETIMEDOUT:ne.ECONNABORTED,e,h))})}else h.setTimeout(0);if(w.isStream(o)){let Z=!1,J=!1;o.on("end",()=>{Z=!0}),o.once("error",Q=>{J=!0,h.destroy(Q)}),o.on("close",()=>{!Z&&!J&&D(new gs("Request stream has been aborted",e,h))}),o.pipe(h)}else o&&h.write(o),h.end()})};var PS=He.hasStandardBrowserEnv?((t,e)=>s=>(s=new URL(s,He.origin),t.protocol===s.protocol&&t.host===s.host&&(e||t.port===s.port)))(new URL(He.origin),He.navigator&&/(msie|trident)/i.test(He.navigator.userAgent)):()=>!0;var OS=He.hasStandardBrowserEnv?{write(t,e,s,n,r,i,o){if(typeof document>"u")return;let a=[`${t}=${encodeURIComponent(e)}`];w.isNumber(s)&&a.push(`expires=${new Date(s).toUTCString()}`),w.isString(n)&&a.push(`path=${n}`),w.isString(r)&&a.push(`domain=${r}`),i===!0&&a.push("secure"),w.isString(o)&&a.push(`SameSite=${o}`),document.cookie=a.join("; ")},read(t){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};var LS=t=>t instanceof ct?{...t}:t;function nn(t,e){e=e||{};let s={};function n(u,l,d,f){return w.isPlainObject(u)&&w.isPlainObject(l)?w.merge.call({caseless:f},u,l):w.isPlainObject(l)?w.merge({},l):w.isArray(l)?l.slice():l}function r(u,l,d,f){if(w.isUndefined(l)){if(!w.isUndefined(u))return n(void 0,u,d,f)}else return n(u,l,d,f)}function i(u,l){if(!w.isUndefined(l))return n(void 0,l)}function o(u,l){if(w.isUndefined(l)){if(!w.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function a(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(u,l,d)=>r(LS(u),LS(l),d,!0)};return w.forEach(Object.keys({...t,...e}),function(l){let d=c[l]||r,f=d(t[l],e[l],l);w.isUndefined(f)&&d!==a||(s[l]=f)}),s}var ml=t=>{let e=nn({},t),{data:s,withXSRFToken:n,xsrfHeaderName:r,xsrfCookieName:i,headers:o,auth:a}=e;if(e.headers=o=ct.from(o),e.url=fi(mi(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),w.isFormData(s)){if(He.hasStandardBrowserEnv||He.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(w.isFunction(s.getHeaders)){let c=s.getHeaders(),u=["content-type","content-length"];Object.entries(c).forEach(([l,d])=>{u.includes(l.toLowerCase())&&o.set(l,d)})}}if(He.hasStandardBrowserEnv&&(n&&w.isFunction(n)&&(n=n(e)),n||n!==!1&&PS(e.url))){let c=r&&i&&OS.read(i);c&&o.set(r,c)}return e};var W5=typeof XMLHttpRequest<"u",BS=W5&&function(t){return new Promise(function(s,n){let r=ml(t),i=r.data,o=ct.from(r.headers).normalize(),{responseType:a,onUploadProgress:c,onDownloadProgress:u}=r,l,d,f,p,m;function g(){p&&p(),m&&m(),r.cancelToken&&r.cancelToken.unsubscribe(l),r.signal&&r.signal.removeEventListener("abort",l)}let h=new XMLHttpRequest;h.open(r.method.toUpperCase(),r.url,!0),h.timeout=r.timeout;function y(){if(!h)return;let D=ct.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),v={data:!a||a==="text"||a==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:D,config:t,request:h};xn(function(R){s(R),g()},function(R){n(R),g()},v),h=null}"onloadend"in h?h.onloadend=y:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(y)},h.onabort=function(){h&&(n(new ne("Request aborted",ne.ECONNABORTED,t,h)),h=null)},h.onerror=function(S){let v=S&&S.message?S.message:"Network Error",E=new ne(v,ne.ERR_NETWORK,t,h);E.event=S||null,n(E),h=null},h.ontimeout=function(){let S=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded",v=r.transitional||Po;r.timeoutErrorMessage&&(S=r.timeoutErrorMessage),n(new ne(S,v.clarifyTimeoutError?ne.ETIMEDOUT:ne.ECONNABORTED,t,h)),h=null},i===void 0&&o.setContentType(null),"setRequestHeader"in h&&w.forEach(o.toJSON(),function(S,v){h.setRequestHeader(v,S)}),w.isUndefined(r.withCredentials)||(h.withCredentials=!!r.withCredentials),a&&a!=="json"&&(h.responseType=r.responseType),u&&([f,m]=Mn(u,!0),h.addEventListener("progress",f)),c&&h.upload&&([d,p]=Mn(c),h.upload.addEventListener("progress",d),h.upload.addEventListener("loadend",p)),(r.cancelToken||r.signal)&&(l=D=>{h&&(n(!D||D.type?new gs(null,t,h):D),h.abort(),h=null)},r.cancelToken&&r.cancelToken.subscribe(l),r.signal&&(r.signal.aborted?l():r.signal.addEventListener("abort",l)));let x=Qa(r.url);if(x&&He.protocols.indexOf(x)===-1){n(new ne("Unsupported protocol "+x+":",ne.ERR_BAD_REQUEST,t));return}h.send(i||null)})};var U5=(t,e)=>{let{length:s}=t=t?t.filter(Boolean):[];if(e||s){let n=new AbortController,r,i=function(u){if(!r){r=!0,a();let l=u instanceof Error?u:this.reason;n.abort(l instanceof ne?l:new gs(l instanceof Error?l.message:l))}},o=e&&setTimeout(()=>{o=null,i(new ne(`timeout ${e} of ms exceeded`,ne.ETIMEDOUT))},e),a=()=>{t&&(o&&clearTimeout(o),o=null,t.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),t=null)};t.forEach(u=>u.addEventListener("abort",i));let{signal:c}=n;return c.unsubscribe=()=>w.asap(a),c}},NS=U5;var G5=function*(t,e){let s=t.byteLength;if(!e||s<e){yield t;return}let n=0,r;for(;n<s;)r=n+e,yield t.slice(n,r),n=r},z5=async function*(t,e){for await(let s of q5(t))yield*G5(s,e)},q5=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}let e=t.getReader();try{for(;;){let{done:s,value:n}=await e.read();if(s)break;yield n}}finally{await e.cancel()}},Em=(t,e,s,n)=>{let r=z5(t,e),i=0,o,a=c=>{o||(o=!0,n&&n(c))};return new ReadableStream({async pull(c){try{let{done:u,value:l}=await r.next();if(u){a(),c.close();return}let d=l.byteLength;if(s){let f=i+=d;s(f)}c.enqueue(new Uint8Array(l))}catch(u){throw a(u),u}},cancel(c){return a(c),r.return()}},{highWaterMark:2})};var MS=64*1024,{isFunction:hl}=w,H5=(({Request:t,Response:e})=>({Request:t,Response:e}))(w.global),{ReadableStream:jS,TextEncoder:$S}=w.global,WS=(t,...e)=>{try{return!!t(...e)}catch{return!1}},V5=t=>{t=w.merge.call({skipUndefined:!0},H5,t);let{fetch:e,Request:s,Response:n}=t,r=e?hl(e):typeof fetch=="function",i=hl(s),o=hl(n);if(!r)return!1;let a=r&&hl(jS),c=r&&(typeof $S=="function"?(m=>g=>m.encode(g))(new $S):async m=>new Uint8Array(await new s(m).arrayBuffer())),u=i&&a&&WS(()=>{let m=!1,g=new s(He.origin,{body:new jS,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!g}),l=o&&a&&WS(()=>w.isReadableStream(new n("").body)),d={stream:l&&(m=>m.body)};r&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!d[m]&&(d[m]=(g,h)=>{let y=g&&g[m];if(y)return y.call(g);throw new ne(`Response type '${m}' is not supported`,ne.ERR_NOT_SUPPORT,h)})});let f=async m=>{if(m==null)return 0;if(w.isBlob(m))return m.size;if(w.isSpecCompliantForm(m))return(await new s(He.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(w.isArrayBufferView(m)||w.isArrayBuffer(m))return m.byteLength;if(w.isURLSearchParams(m)&&(m=m+""),w.isString(m))return(await c(m)).byteLength},p=async(m,g)=>{let h=w.toFiniteNumber(m.getContentLength());return h??f(g)};return async m=>{let{url:g,method:h,data:y,signal:x,cancelToken:D,timeout:S,onDownloadProgress:v,onUploadProgress:E,responseType:R,headers:_,withCredentials:W="same-origin",fetchOptions:j}=ml(m),M=e||fetch;R=R?(R+"").toLowerCase():"text";let $=NS([x,D&&D.toAbortSignal()],S),L=null,z=$&&$.unsubscribe&&(()=>{$.unsubscribe()}),C;try{if(E&&u&&h!=="get"&&h!=="head"&&(C=await p(_,y))!==0){let J=new s(g,{method:"POST",body:y,duplex:"half"}),Q;if(w.isFormData(y)&&(Q=J.headers.get("content-type"))&&_.setContentType(Q),J.body){let[Ee,X]=$o(C,Mn(Wo(E)));y=Em(J.body,MS,Ee,X)}}w.isString(W)||(W=W?"include":"omit");let B=i&&"credentials"in s.prototype,N={...j,signal:$,method:h.toUpperCase(),headers:_.normalize().toJSON(),body:y,duplex:"half",credentials:B?W:void 0};L=i&&new s(g,N);let K=await(i?M(L,j):M(g,N)),me=l&&(R==="stream"||R==="response");if(l&&(v||me&&z)){let J={};["status","statusText","headers"].forEach(st=>{J[st]=K[st]});let Q=w.toFiniteNumber(K.headers.get("content-length")),[Ee,X]=v&&$o(Q,Mn(Wo(v),!0))||[];K=new n(Em(K.body,MS,Ee,()=>{X&&X(),z&&z()}),J)}R=R||"text";let Z=await d[w.findKey(d,R)||"text"](K,m);return!me&&z&&z(),await new Promise((J,Q)=>{xn(J,Q,{data:Z,headers:ct.from(K.headers),status:K.status,statusText:K.statusText,config:m,request:L})})}catch(B){throw z&&z(),B&&B.name==="TypeError"&&/Load failed|fetch/i.test(B.message)?Object.assign(new ne("Network Error",ne.ERR_NETWORK,m,L),{cause:B.cause||B}):ne.from(B,B&&B.code,m,L)}}},K5=new Map,Fm=t=>{let e=t&&t.env||{},{fetch:s,Request:n,Response:r}=e,i=[n,r,s],o=i.length,a=o,c,u,l=K5;for(;a--;)c=i[a],u=l.get(c),u===void 0&&l.set(c,u=a?new Map:V5(e)),l=u;return u},pz=Fm();var _m={http:TS,xhr:BS,fetch:{get:Fm}};w.forEach(_m,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var US=t=>`- ${t}`,Y5=t=>w.isFunction(t)||t===null||t===!1;function J5(t,e){t=w.isArray(t)?t:[t];let{length:s}=t,n,r,i={};for(let o=0;o<s;o++){n=t[o];let a;if(r=n,!Y5(n)&&(r=_m[(a=String(n)).toLowerCase()],r===void 0))throw new ne(`Unknown adapter '${a}'`);if(r&&(w.isFunction(r)||(r=r.get(e))))break;i[a||"#"+o]=r}if(!r){let o=Object.entries(i).map(([c,u])=>`adapter ${c} `+(u===!1?"is not supported by the environment":"is not available in the build")),a=s?o.length>1?`since :
161
161
  `+o.map(US).join(`
162
162
  `):" "+US(o[0]):"as no adapter specified";throw new ne("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return r}var gl={getAdapter:J5,adapters:_m};function km(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new gs(null,t)}function xl(t){return km(t),t.headers=ct.from(t.headers),t.data=Ha.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),gl.getAdapter(t.adapter||Oo.adapter,t)(t).then(function(n){return km(t),n.data=Ha.call(t,t.transformResponse,n),n.headers=ct.from(n.headers),n},function(n){return Va(n)||(km(t),n&&n.response&&(n.response.data=Ha.call(t,t.transformResponse,n.response),n.response.headers=ct.from(n.response.headers))),Promise.reject(n)})}var yl={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{yl[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var GS={};yl.transitional=function(e,s,n){function r(i,o){return"[Axios v"+yi+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,a)=>{if(e===!1)throw new ne(r(o," has been removed"+(s?" in "+s:"")),ne.ERR_DEPRECATED);return s&&!GS[o]&&(GS[o]=!0,console.warn(r(o," has been deprecated since v"+s+" and will be removed in the near future"))),e?e(i,o,a):!0}};yl.spelling=function(e){return(s,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};function Q5(t,e,s){if(typeof t!="object")throw new ne("options must be an object",ne.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),r=n.length;for(;r-- >0;){let i=n[r],o=e[i];if(o){let a=t[i],c=a===void 0||o(a,i,t);if(c!==!0)throw new ne("option "+i+" must be "+c,ne.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new ne("Unknown option "+i,ne.ERR_BAD_OPTION)}}var ec={assertOptions:Q5,validators:yl};var yn=ec.validators,Uo=class{constructor(e){this.defaults=e||{},this.interceptors={request:new zf,response:new zf}}async request(e,s){try{return await this._request(e,s)}catch(n){if(n instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;let i=r.stack?r.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
163
163
  `+i):n.stack=i}catch{}}throw n}}_request(e,s){typeof e=="string"?(s=s||{},s.url=e):s=e||{},s=nn(this.defaults,s);let{transitional:n,paramsSerializer:r,headers:i}=s;n!==void 0&&ec.assertOptions(n,{silentJSONParsing:yn.transitional(yn.boolean),forcedJSONParsing:yn.transitional(yn.boolean),clarifyTimeoutError:yn.transitional(yn.boolean)},!1),r!=null&&(w.isFunction(r)?s.paramsSerializer={serialize:r}:ec.assertOptions(r,{encode:yn.function,serialize:yn.function},!0)),s.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?s.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:s.allowAbsoluteUrls=!0),ec.assertOptions(s,{baseUrl:yn.spelling("baseURL"),withXsrfToken:yn.spelling("withXSRFToken")},!0),s.method=(s.method||this.defaults.method||"get").toLowerCase();let o=i&&w.merge(i.common,i[s.method]);i&&w.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),s.headers=ct.concat(o,i);let a=[],c=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(s)===!1||(c=c&&g.synchronous,a.unshift(g.fulfilled,g.rejected))});let u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.rejected)});let l,d=0,f;if(!c){let m=[xl.bind(this),void 0];for(m.unshift(...a),m.push(...u),f=m.length,l=Promise.resolve(s);d<f;)l=l.then(m[d++],m[d++]);return l}f=a.length;let p=s;for(;d<f;){let m=a[d++],g=a[d++];try{p=m(p)}catch(h){g.call(this,h);break}}try{l=xl.call(this,p)}catch(m){return Promise.reject(m)}for(d=0,f=u.length;d<f;)l=l.then(u[d++],u[d++]);return l}getUri(e){e=nn(this.defaults,e);let s=mi(e.baseURL,e.url,e.allowAbsoluteUrls);return fi(s,e.params,e.paramsSerializer)}};w.forEach(["delete","get","head","options"],function(e){Uo.prototype[e]=function(s,n){return this.request(nn(n||{},{method:e,url:s,data:(n||{}).data}))}});w.forEach(["post","put","patch"],function(e){function s(n){return function(i,o,a){return this.request(nn(a||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}Uo.prototype[e]=s(),Uo.prototype[e+"Form"]=s(!0)});var tc=Uo;var Im=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let s;this.promise=new Promise(function(i){s=i});let n=this;this.promise.then(r=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](r);n._listeners=null}),this.promise.then=r=>{let i,o=new Promise(a=>{n.subscribe(a),i=a}).then(r);return o.cancel=function(){n.unsubscribe(i)},o},e(function(i,o,a){n.reason||(n.reason=new gs(i,o,a),s(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let s=this._listeners.indexOf(e);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){let e=new AbortController,s=n=>{e.abort(n)};return this.subscribe(s),e.signal.unsubscribe=()=>this.unsubscribe(s),e.signal}static source(){let e;return{token:new t(function(r){e=r}),cancel:e}}},zS=Im;function Rm(t){return function(s){return t.apply(null,s)}}function Tm(t){return w.isObject(t)&&t.isAxiosError===!0}var Pm={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Pm).forEach(([t,e])=>{Pm[e]=t});var qS=Pm;function HS(t){let e=new tc(t),s=Na(tc.prototype.request,e);return w.extend(s,tc.prototype,e,{allOwnKeys:!0}),w.extend(s,e,null,{allOwnKeys:!0}),s.create=function(r){return HS(nn(t,r))},s}var St=HS(Oo);St.Axios=tc;St.CanceledError=gs;St.CancelToken=zS;St.isCancel=Va;St.VERSION=yi;St.toFormData=hr;St.AxiosError=ne;St.Cancel=St.CanceledError;St.all=function(e){return Promise.all(e)};St.spread=Rm;St.isAxiosError=Tm;St.mergeConfig=nn;St.AxiosHeaders=ct;St.formToJSON=t=>al(w.isHTMLForm(t)?new FormData(t):t);St.getAdapter=gl.getAdapter;St.HttpStatusCode=qS;St.default=St;var ns=St;var{Axios:cq,AxiosError:uq,CanceledError:lq,isCancel:dq,CancelToken:pq,VERSION:fq,all:mq,Cancel:hq,isAxiosError:gq,spread:xq,toFormData:yq,AxiosHeaders:bq,HttpStatusCode:vq,formToJSON:Dq,getAdapter:Sq,mergeConfig:Cq}=ns;var Om=t=>{if(!t)return;let e=t.trim();if(e)return e.replace(/\/+$/,"")},vi=t=>{let e=Om(t);return e||(Om("https://api.cdkinsights.dev/analysis/v1")??"")},VS=t=>Om(t);var Lm=Bm.join(process.env.HOME||process.env.USERPROFILE||"",".cdk-insights"),Go=Bm.join(Lm,"auth-token.json"),ZS=t=>{try{let e=t.split(".");return e.length!==3?null:JSON.parse(Buffer.from(e[1],"base64").toString())}catch{return null}},YS=t=>KS.createHash("sha256").update(t).digest("hex").slice(0,16),X5=t=>{try{if(!Nt.existsSync(Go))return null;let e=JSON.parse(Nt.readFileSync(Go,"utf-8")),s=YS(t);if(e.licenseKeyHash!==s)return null;let n=ZS(e.token),r=Math.floor(Date.now()/1e3),i=n?.exp||e.cachedAt+e.expiresIn;return r>=i?(Nt.unlinkSync(Go),null):(H.debug("Using cached auth token",{cachedAt:new Date(e.cachedAt*1e3).toISOString(),expiresAt:new Date(i*1e3).toISOString()}),e)}catch(e){return H.debug("Failed to load cached auth token",{error:e instanceof Error?e.message:String(e)}),null}},eP=(t,e,s)=>{try{Nt.existsSync(Lm)||Nt.mkdirSync(Lm,{recursive:!0});let n={token:t,licenseKeyHash:YS(e),cachedAt:Math.floor(Date.now()/1e3),expiresIn:s},r=Nt.openSync(Go,"w",process.platform!=="win32"?384:void 0);Nt.writeSync(r,JSON.stringify(n),void 0,"utf-8"),Nt.closeSync(r),H.debug("Saved auth token to cache",{cachedAt:new Date(n.cachedAt*1e3).toISOString(),expiresIn:s})}catch(n){H.debug("Failed to save auth token to cache",{error:n instanceof Error?n.message:String(n)})}};async function Nm(t,e,s){let n=X5(t);if(n){let o=vi(),c=ZS(n.token)?.fingerprint;return H.info("\u2705 Using cached auth token",{hasToken:!0,hasJwtFingerprint:!!c,apiUrl:o}),{token:n.token,usageData:void 0,licenseInfo:void 0,fingerprint:c,apiUrl:o}}let r=vi();if(!r){H.error("\u274C No API endpoint configured for authentication");return}H.info("\u{1F510} Starting authentication process",{apiUrl:r,hasLicenseKey:!!t,hasFingerprint:!!e,hasProject:!!s});let i=`${r}/login`;H.info("\u{1F4E1} Making authentication request",{url:i,method:"POST",headers:{"x-cdk-insights-fingerprint":e?"[REDACTED]":"undefined","x-cdk-insights-client":"cli"},body:{licenseKey:t?"[REDACTED]":"undefined",project:s||"undefined"}});try{let{data:o}=await ns.post(i,{licenseKey:t,project:s},{headers:{"x-cdk-insights-fingerprint":e,"x-cdk-insights-client":"cli"},timeout:1e4});return H.info("\u2705 Authentication successful",{hasToken:!!o.token,expiresIn:o.expiresIn,fingerprintStatus:o.fingerprintStatus,hasUsageData:!!o.usageData,hasLicenseInfo:!!o.licenseInfo,apiUrl:r}),eP(o.token,t,o.expiresIn||3600),{token:o.token,usageData:o.usageData,licenseInfo:o.licenseInfo,fingerprint:o.fingerprint,apiUrl:r}}catch(o){let a=ns.isAxiosError(o)?o:void 0,c=VS(a?.config?.url?a.config.url.replace(/\/?login$/,""):r);if(H.error("Authentication failed",{error:o instanceof Error?o.message:String(o),apiUrl:c}),a)if(a.code==="ECONNREFUSED")H.error("Network error: Connection refused",{error:a.message,suggestion:"Check if the API server is running and accessible",apiUrl:c});else if(a.code==="ENOTFOUND")H.error("Network error: Host not found",{error:a.message,apiUrl:c,suggestion:"Check if the API URL is correct"});else if(a.code==="ETIMEDOUT")H.error("Network error: Request timed out",{error:a.message,suggestion:"The API server took too long to respond",apiUrl:c});else if(a.response){let u=a.response.status,l=a.response.data,d=typeof l?.error=="string"?l.error:l?.error?.message||l?.message||a.message;H.error(`HTTP ${u} error`,{status:u,apiUrl:c,error:d,response:l}),u===401?H.error("License key is invalid or expired",{status:u,apiUrl:c}):u===403?H.error("License is already used in 3 environments",{status:u,apiUrl:c}):u===404?H.error("API endpoint not found",{status:u,apiUrl:c,suggestion:"Check if the API URL is correct"}):u>=500&&H.error("Server error",{status:u,apiUrl:c,suggestion:"The API server may be experiencing issues"})}else H.error("Network error",{error:a.message,apiUrl:c});else H.error("Unexpected error",{error:o.message||String(o),apiUrl:c});return}}var bl=()=>{try{Nt.existsSync(Go)?(Nt.unlinkSync(Go),H.info("\u{1F5D1}\uFE0F Cleared auth token cache")):H.info("\u2139\uFE0F No auth token cache to clear")}catch(t){H.warn("Failed to clear auth token cache",{error:t instanceof Error?t.message:String(t)})}};var cC=require("node:events"),uC=require("node:fs"),Wm=require("node:path"),lC=V(ip());var gt={};$g(gt,{BRAND:()=>EP,DIRTY:()=>Di,EMPTY_PATH:()=>rP,INVALID:()=>be,NEVER:()=>lO,OK:()=>zt,ParseStatus:()=>Mt,Schema:()=>Be,ZodAny:()=>br,ZodArray:()=>zn,ZodBigInt:()=>Ci,ZodBoolean:()=>wi,ZodBranded:()=>nc,ZodCatch:()=>Li,ZodDate:()=>Ai,ZodDefault:()=>Oi,ZodDiscriminatedUnion:()=>Sl,ZodEffects:()=>Ps,ZodEnum:()=>Ti,ZodError:()=>rs,ZodFirstPartyTypeKind:()=>De,ZodFunction:()=>wl,ZodIntersection:()=>ki,ZodIssueCode:()=>Y,ZodLazy:()=>Ii,ZodLiteral:()=>Ri,ZodMap:()=>Zo,ZodNaN:()=>Jo,ZodNativeEnum:()=>Pi,ZodNever:()=>rn,ZodNull:()=>Fi,ZodNullable:()=>Dn,ZodNumber:()=>Si,ZodObject:()=>is,ZodOptional:()=>Rs,ZodParsedType:()=>ie,ZodPipeline:()=>rc,ZodPromise:()=>vr,ZodReadonly:()=>Bi,ZodRecord:()=>Cl,ZodSchema:()=>Be,ZodSet:()=>Yo,ZodString:()=>yr,ZodSymbol:()=>Vo,ZodTransformer:()=>Ps,ZodTuple:()=>vn,ZodType:()=>Be,ZodUndefined:()=>Ei,ZodUnion:()=>_i,ZodUnknown:()=>Gn,ZodVoid:()=>Ko,addIssueToContext:()=>re,any:()=>LP,array:()=>jP,bigint:()=>IP,boolean:()=>aC,coerce:()=>uO,custom:()=>rC,date:()=>RP,datetimeRegex:()=>sC,defaultErrorMap:()=>Wn,discriminatedUnion:()=>GP,effect:()=>tO,enum:()=>QP,function:()=>ZP,getErrorMap:()=>zo,getParsedType:()=>bn,instanceof:()=>_P,intersection:()=>zP,isAborted:()=>vl,isAsync:()=>qo,isDirty:()=>Dl,isValid:()=>xr,late:()=>FP,lazy:()=>YP,literal:()=>JP,makeIssue:()=>sc,map:()=>VP,nan:()=>kP,nativeEnum:()=>XP,never:()=>NP,null:()=>OP,nullable:()=>nO,number:()=>oC,object:()=>$P,objectUtil:()=>Mm,oboolean:()=>cO,onumber:()=>aO,optional:()=>sO,ostring:()=>oO,pipeline:()=>iO,preprocess:()=>rO,promise:()=>eO,quotelessJson:()=>tP,record:()=>HP,set:()=>KP,setErrorMap:()=>nP,strictObject:()=>WP,string:()=>iC,symbol:()=>TP,transformer:()=>tO,tuple:()=>qP,undefined:()=>PP,union:()=>UP,unknown:()=>BP,util:()=>$e,void:()=>MP});var $e;(function(t){t.assertEqual=r=>{};function e(r){}t.assertIs=e;function s(r){throw new Error}t.assertNever=s,t.arrayToEnum=r=>{let i={};for(let o of r)i[o]=o;return i},t.getValidEnumValues=r=>{let i=t.objectKeys(r).filter(a=>typeof r[r[a]]!="number"),o={};for(let a of i)o[a]=r[a];return t.objectValues(o)},t.objectValues=r=>t.objectKeys(r).map(function(i){return r[i]}),t.objectKeys=typeof Object.keys=="function"?r=>Object.keys(r):r=>{let i=[];for(let o in r)Object.prototype.hasOwnProperty.call(r,o)&&i.push(o);return i},t.find=(r,i)=>{for(let o of r)if(i(o))return o},t.isInteger=typeof Number.isInteger=="function"?r=>Number.isInteger(r):r=>typeof r=="number"&&Number.isFinite(r)&&Math.floor(r)===r;function n(r,i=" | "){return r.map(o=>typeof o=="string"?`'${o}'`:o).join(i)}t.joinValues=n,t.jsonStringifyReplacer=(r,i)=>typeof i=="bigint"?i.toString():i})($e||($e={}));var Mm;(function(t){t.mergeShapes=(e,s)=>({...e,...s})})(Mm||(Mm={}));var ie=$e.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),bn=t=>{switch(typeof t){case"undefined":return ie.undefined;case"string":return ie.string;case"number":return Number.isNaN(t)?ie.nan:ie.number;case"boolean":return ie.boolean;case"function":return ie.function;case"bigint":return ie.bigint;case"symbol":return ie.symbol;case"object":return Array.isArray(t)?ie.array:t===null?ie.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?ie.promise:typeof Map<"u"&&t instanceof Map?ie.map:typeof Set<"u"&&t instanceof Set?ie.set:typeof Date<"u"&&t instanceof Date?ie.date:ie.object;default:return ie.unknown}};var Y=$e.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),tP=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),rs=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let s=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,s):this.__proto__=s,this.name="ZodError",this.issues=e}format(e){let s=e||function(i){return i.message},n={_errors:[]},r=i=>{for(let o of i.issues)if(o.code==="invalid_union")o.unionErrors.map(r);else if(o.code==="invalid_return_type")r(o.returnTypeError);else if(o.code==="invalid_arguments")r(o.argumentsError);else if(o.path.length===0)n._errors.push(s(o));else{let a=n,c=0;for(;c<o.path.length;){let u=o.path[c];c===o.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(s(o))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return r(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,$e.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=s=>s.message){let s={},n=[];for(let r of this.issues)if(r.path.length>0){let i=r.path[0];s[i]=s[i]||[],s[i].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:s}}get formErrors(){return this.flatten()}};rs.create=t=>new rs(t);var sP=(t,e)=>{let s;switch(t.code){case Y.invalid_type:t.received===ie.undefined?s="Required":s=`Expected ${t.expected}, received ${t.received}`;break;case Y.invalid_literal:s=`Invalid literal value, expected ${JSON.stringify(t.expected,$e.jsonStringifyReplacer)}`;break;case Y.unrecognized_keys:s=`Unrecognized key(s) in object: ${$e.joinValues(t.keys,", ")}`;break;case Y.invalid_union:s="Invalid input";break;case Y.invalid_union_discriminator:s=`Invalid discriminator value. Expected ${$e.joinValues(t.options)}`;break;case Y.invalid_enum_value:s=`Invalid enum value. Expected ${$e.joinValues(t.options)}, received '${t.received}'`;break;case Y.invalid_arguments:s="Invalid function arguments";break;case Y.invalid_return_type:s="Invalid function return type";break;case Y.invalid_date:s="Invalid date";break;case Y.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(s=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(s=`${s} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?s=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?s=`Invalid input: must end with "${t.validation.endsWith}"`:$e.assertNever(t.validation):t.validation!=="regex"?s=`Invalid ${t.validation}`:s="Invalid";break;case Y.too_small:t.type==="array"?s=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?s=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?s=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?s=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?s=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:s="Invalid input";break;case Y.too_big:t.type==="array"?s=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?s=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?s=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?s=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?s=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:s="Invalid input";break;case Y.custom:s="Invalid input";break;case Y.invalid_intersection_types:s="Intersection results could not be merged";break;case Y.not_multiple_of:s=`Number must be a multiple of ${t.multipleOf}`;break;case Y.not_finite:s="Number must be finite";break;default:s=e.defaultError,$e.assertNever(t)}return{message:s}},Wn=sP;var JS=Wn;function nP(t){JS=t}function zo(){return JS}var sc=t=>{let{data:e,path:s,errorMaps:n,issueData:r}=t,i=[...s,...r.path||[]],o={...r,path:i};if(r.message!==void 0)return{...r,path:i,message:r.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(o,{data:e,defaultError:a}).message;return{...r,path:i,message:a}},rP=[];function re(t,e){let s=zo(),n=sc({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,s,s===Wn?void 0:Wn].filter(r=>!!r)});t.common.issues.push(n)}var Mt=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,s){let n=[];for(let r of s){if(r.status==="aborted")return be;r.status==="dirty"&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,s){let n=[];for(let r of s){let i=await r.key,o=await r.value;n.push({key:i,value:o})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,s){let n={};for(let r of s){let{key:i,value:o}=r;if(i.status==="aborted"||o.status==="aborted")return be;i.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof o.value<"u"||r.alwaysSet)&&(n[i.value]=o.value)}return{status:e.value,value:n}}},be=Object.freeze({status:"aborted"}),Di=t=>({status:"dirty",value:t}),zt=t=>({status:"valid",value:t}),vl=t=>t.status==="aborted",Dl=t=>t.status==="dirty",xr=t=>t.status==="valid",qo=t=>typeof Promise<"u"&&t instanceof Promise;var pe;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(pe||(pe={}));var Ts=class{constructor(e,s,n,r){this._cachedPath=[],this.parent=e,this.data=s,this._path=n,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},QS=(t,e)=>{if(xr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let s=new rs(t.common.issues);return this._error=s,this._error}}};function Re(t){if(!t)return{};let{errorMap:e,invalid_type_error:s,required_error:n,description:r}=t;if(e&&(s||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:r}:{errorMap:(o,a)=>{let{message:c}=t;return o.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:c??s??a.defaultError}},description:r}}var Be=class{get description(){return this._def.description}_getType(e){return bn(e.data)}_getOrReturnCtx(e,s){return s||{common:e.parent.common,data:e.data,parsedType:bn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Mt,ctx:{common:e.parent.common,data:e.data,parsedType:bn(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let s=this._parse(e);if(qo(s))throw new Error("Synchronous parse encountered promise.");return s}_parseAsync(e){let s=this._parse(e);return Promise.resolve(s)}parse(e,s){let n=this.safeParse(e,s);if(n.success)return n.data;throw n.error}safeParse(e,s){let n={common:{issues:[],async:s?.async??!1,contextualErrorMap:s?.errorMap},path:s?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:bn(e)},r=this._parseSync({data:e,path:n.path,parent:n});return QS(n,r)}"~validate"(e){let s={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:bn(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:s});return xr(n)?{value:n.value}:{issues:s.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),s.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:s}).then(n=>xr(n)?{value:n.value}:{issues:s.common.issues})}async parseAsync(e,s){let n=await this.safeParseAsync(e,s);if(n.success)return n.data;throw n.error}async safeParseAsync(e,s){let n={common:{issues:[],contextualErrorMap:s?.errorMap,async:!0},path:s?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:bn(e)},r=this._parse({data:e,path:n.path,parent:n}),i=await(qo(r)?r:Promise.resolve(r));return QS(n,i)}refine(e,s){let n=r=>typeof s=="string"||typeof s>"u"?{message:s}:typeof s=="function"?s(r):s;return this._refinement((r,i)=>{let o=e(r),a=()=>i.addIssue({code:Y.custom,...n(r)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,s){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof s=="function"?s(n,r):s),!1))}_refinement(e){return new Ps({schema:this,typeName:De.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:s=>this["~validate"](s)}}optional(){return Rs.create(this,this._def)}nullable(){return Dn.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return zn.create(this)}promise(){return vr.create(this,this._def)}or(e){return _i.create([this,e],this._def)}and(e){return ki.create(this,e,this._def)}transform(e){return new Ps({...Re(this._def),schema:this,typeName:De.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let s=typeof e=="function"?e:()=>e;return new Oi({...Re(this._def),innerType:this,defaultValue:s,typeName:De.ZodDefault})}brand(){return new nc({typeName:De.ZodBranded,type:this,...Re(this._def)})}catch(e){let s=typeof e=="function"?e:()=>e;return new Li({...Re(this._def),innerType:this,catchValue:s,typeName:De.ZodCatch})}describe(e){let s=this.constructor;return new s({...this._def,description:e})}pipe(e){return rc.create(this,e)}readonly(){return Bi.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},iP=/^c[^\s-]{8,}$/i,oP=/^[0-9a-z]+$/,aP=/^[0-9A-HJKMNP-TV-Z]{26}$/i,cP=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,uP=/^[a-z0-9_-]{21}$/i,lP=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,dP=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,pP=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fP="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",jm,mP=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,hP=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,gP=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,xP=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,yP=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,bP=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,eC="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",vP=new RegExp(`^${eC}$`);function tC(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let s=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${s}`}function DP(t){return new RegExp(`^${tC(t)}$`)}function sC(t){let e=`${eC}T${tC(t)}`,s=[];return s.push(t.local?"Z?":"Z"),t.offset&&s.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${s.join("|")})`,new RegExp(`^${e}$`)}function SP(t,e){return!!((e==="v4"||!e)&&mP.test(t)||(e==="v6"||!e)&&gP.test(t))}function CP(t,e){if(!lP.test(t))return!1;try{let[s]=t.split(".");if(!s)return!1;let n=s.replace(/-/g,"+").replace(/_/g,"/").padEnd(s.length+(4-s.length%4)%4,"="),r=JSON.parse(atob(n));return!(typeof r!="object"||r===null||"typ"in r&&r?.typ!=="JWT"||!r.alg||e&&r.alg!==e)}catch{return!1}}function wP(t,e){return!!((e==="v4"||!e)&&hP.test(t)||(e==="v6"||!e)&&xP.test(t))}var yr=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==ie.string){let i=this._getOrReturnCtx(e);return re(i,{code:Y.invalid_type,expected:ie.string,received:i.parsedType}),be}let n=new Mt,r;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(r=this._getOrReturnCtx(e,r),re(r,{code:Y.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="max")e.data.length>i.value&&(r=this._getOrReturnCtx(e,r),re(r,{code:Y.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),n.dirty());else if(i.kind==="length"){let o=e.data.length>i.value,a=e.data.length<i.value;(o||a)&&(r=this._getOrReturnCtx(e,r),o?re(r,{code:Y.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):a&&re(r,{code:Y.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),n.dirty())}else if(i.kind==="email")pP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"email",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="emoji")jm||(jm=new RegExp(fP,"u")),jm.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"emoji",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="uuid")cP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"uuid",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="nanoid")uP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"nanoid",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid")iP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"cuid",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="cuid2")oP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"cuid2",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="ulid")aP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"ulid",code:Y.invalid_string,message:i.message}),n.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),re(r,{validation:"url",code:Y.invalid_string,message:i.message}),n.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"regex",code:Y.invalid_string,message:i.message}),n.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),n.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:{startsWith:i.value},message:i.message}),n.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:{endsWith:i.value},message:i.message}),n.dirty()):i.kind==="datetime"?sC(i).test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:"datetime",message:i.message}),n.dirty()):i.kind==="date"?vP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:"date",message:i.message}),n.dirty()):i.kind==="time"?DP(i).test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{code:Y.invalid_string,validation:"time",message:i.message}),n.dirty()):i.kind==="duration"?dP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"duration",code:Y.invalid_string,message:i.message}),n.dirty()):i.kind==="ip"?SP(e.data,i.version)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"ip",code:Y.invalid_string,message:i.message}),n.dirty()):i.kind==="jwt"?CP(e.data,i.alg)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"jwt",code:Y.invalid_string,message:i.message}),n.dirty()):i.kind==="cidr"?wP(e.data,i.version)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"cidr",code:Y.invalid_string,message:i.message}),n.dirty()):i.kind==="base64"?yP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"base64",code:Y.invalid_string,message:i.message}),n.dirty()):i.kind==="base64url"?bP.test(e.data)||(r=this._getOrReturnCtx(e,r),re(r,{validation:"base64url",code:Y.invalid_string,message:i.message}),n.dirty()):$e.assertNever(i);return{status:n.value,value:e.data}}_regex(e,s,n){return this.refinement(r=>e.test(r),{validation:s,code:Y.invalid_string,...pe.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...pe.errToObj(e)})}url(e){return this._addCheck({kind:"url",...pe.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...pe.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...pe.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...pe.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...pe.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...pe.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...pe.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...pe.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...pe.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...pe.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...pe.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...pe.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...pe.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...pe.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...pe.errToObj(e)})}regex(e,s){return this._addCheck({kind:"regex",regex:e,...pe.errToObj(s)})}includes(e,s){return this._addCheck({kind:"includes",value:e,position:s?.position,...pe.errToObj(s?.message)})}startsWith(e,s){return this._addCheck({kind:"startsWith",value:e,...pe.errToObj(s)})}endsWith(e,s){return this._addCheck({kind:"endsWith",value:e,...pe.errToObj(s)})}min(e,s){return this._addCheck({kind:"min",value:e,...pe.errToObj(s)})}max(e,s){return this._addCheck({kind:"max",value:e,...pe.errToObj(s)})}length(e,s){return this._addCheck({kind:"length",value:e,...pe.errToObj(s)})}nonempty(e){return this.min(1,pe.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxLength(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};yr.create=t=>new yr({checks:[],typeName:De.ZodString,coerce:t?.coerce??!1,...Re(t)});function AP(t,e){let s=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,r=s>n?s:n,i=Number.parseInt(t.toFixed(r).replace(".","")),o=Number.parseInt(e.toFixed(r).replace(".",""));return i%o/10**r}var Si=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==ie.number){let i=this._getOrReturnCtx(e);return re(i,{code:Y.invalid_type,expected:ie.number,received:i.parsedType}),be}let n,r=new Mt;for(let i of this._def.checks)i.kind==="int"?$e.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),re(n,{code:Y.invalid_type,expected:"integer",received:"float",message:i.message}),r.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),r.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),r.dirty()):i.kind==="multipleOf"?AP(e.data,i.value)!==0&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.not_multiple_of,multipleOf:i.value,message:i.message}),r.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),re(n,{code:Y.not_finite,message:i.message}),r.dirty()):$e.assertNever(i);return{status:r.value,value:e.data}}gte(e,s){return this.setLimit("min",e,!0,pe.toString(s))}gt(e,s){return this.setLimit("min",e,!1,pe.toString(s))}lte(e,s){return this.setLimit("max",e,!0,pe.toString(s))}lt(e,s){return this.setLimit("max",e,!1,pe.toString(s))}setLimit(e,s,n,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:pe.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:pe.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:pe.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(s)})}finite(e){return this._addCheck({kind:"finite",message:pe.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:pe.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:pe.toString(e)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&$e.isInteger(e.value))}get isFinite(){let e=null,s=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(s===null||n.value>s)&&(s=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(s)&&Number.isFinite(e)}};Si.create=t=>new Si({checks:[],typeName:De.ZodNumber,coerce:t?.coerce||!1,...Re(t)});var Ci=class t extends Be{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==ie.bigint)return this._getInvalidInput(e);let n,r=new Mt;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),r.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),r.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),re(n,{code:Y.not_multiple_of,multipleOf:i.value,message:i.message}),r.dirty()):$e.assertNever(i);return{status:r.value,value:e.data}}_getInvalidInput(e){let s=this._getOrReturnCtx(e);return re(s,{code:Y.invalid_type,expected:ie.bigint,received:s.parsedType}),be}gte(e,s){return this.setLimit("min",e,!0,pe.toString(s))}gt(e,s){return this.setLimit("min",e,!1,pe.toString(s))}lte(e,s){return this.setLimit("max",e,!0,pe.toString(s))}lt(e,s){return this.setLimit("max",e,!1,pe.toString(s))}setLimit(e,s,n,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:pe.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:pe.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:pe.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:pe.toString(s)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};Ci.create=t=>new Ci({checks:[],typeName:De.ZodBigInt,coerce:t?.coerce??!1,...Re(t)});var wi=class extends Be{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==ie.boolean){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.boolean,received:n.parsedType}),be}return zt(e.data)}};wi.create=t=>new wi({typeName:De.ZodBoolean,coerce:t?.coerce||!1,...Re(t)});var Ai=class t extends Be{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==ie.date){let i=this._getOrReturnCtx(e);return re(i,{code:Y.invalid_type,expected:ie.date,received:i.parsedType}),be}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return re(i,{code:Y.invalid_date}),be}let n=new Mt,r;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(r=this._getOrReturnCtx(e,r),re(r,{code:Y.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),n.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(r=this._getOrReturnCtx(e,r),re(r,{code:Y.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),n.dirty()):$e.assertNever(i);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,s){return this._addCheck({kind:"min",value:e.getTime(),message:pe.toString(s)})}max(e,s){return this._addCheck({kind:"max",value:e.getTime(),message:pe.toString(s)})}get minDate(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e!=null?new Date(e):null}};Ai.create=t=>new Ai({checks:[],coerce:t?.coerce||!1,typeName:De.ZodDate,...Re(t)});var Vo=class extends Be{_parse(e){if(this._getType(e)!==ie.symbol){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.symbol,received:n.parsedType}),be}return zt(e.data)}};Vo.create=t=>new Vo({typeName:De.ZodSymbol,...Re(t)});var Ei=class extends Be{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.undefined,received:n.parsedType}),be}return zt(e.data)}};Ei.create=t=>new Ei({typeName:De.ZodUndefined,...Re(t)});var Fi=class extends Be{_parse(e){if(this._getType(e)!==ie.null){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.null,received:n.parsedType}),be}return zt(e.data)}};Fi.create=t=>new Fi({typeName:De.ZodNull,...Re(t)});var br=class extends Be{constructor(){super(...arguments),this._any=!0}_parse(e){return zt(e.data)}};br.create=t=>new br({typeName:De.ZodAny,...Re(t)});var Gn=class extends Be{constructor(){super(...arguments),this._unknown=!0}_parse(e){return zt(e.data)}};Gn.create=t=>new Gn({typeName:De.ZodUnknown,...Re(t)});var rn=class extends Be{_parse(e){let s=this._getOrReturnCtx(e);return re(s,{code:Y.invalid_type,expected:ie.never,received:s.parsedType}),be}};rn.create=t=>new rn({typeName:De.ZodNever,...Re(t)});var Ko=class extends Be{_parse(e){if(this._getType(e)!==ie.undefined){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.void,received:n.parsedType}),be}return zt(e.data)}};Ko.create=t=>new Ko({typeName:De.ZodVoid,...Re(t)});var zn=class t extends Be{_parse(e){let{ctx:s,status:n}=this._processInputParams(e),r=this._def;if(s.parsedType!==ie.array)return re(s,{code:Y.invalid_type,expected:ie.array,received:s.parsedType}),be;if(r.exactLength!==null){let o=s.data.length>r.exactLength.value,a=s.data.length<r.exactLength.value;(o||a)&&(re(s,{code:o?Y.too_big:Y.too_small,minimum:a?r.exactLength.value:void 0,maximum:o?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&s.data.length<r.minLength.value&&(re(s,{code:Y.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&s.data.length>r.maxLength.value&&(re(s,{code:Y.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),s.common.async)return Promise.all([...s.data].map((o,a)=>r.type._parseAsync(new Ts(s,o,s.path,a)))).then(o=>Mt.mergeArray(n,o));let i=[...s.data].map((o,a)=>r.type._parseSync(new Ts(s,o,s.path,a)));return Mt.mergeArray(n,i)}get element(){return this._def.type}min(e,s){return new t({...this._def,minLength:{value:e,message:pe.toString(s)}})}max(e,s){return new t({...this._def,maxLength:{value:e,message:pe.toString(s)}})}length(e,s){return new t({...this._def,exactLength:{value:e,message:pe.toString(s)}})}nonempty(e){return this.min(1,e)}};zn.create=(t,e)=>new zn({type:t,minLength:null,maxLength:null,exactLength:null,typeName:De.ZodArray,...Re(e)});function Ho(t){if(t instanceof is){let e={};for(let s in t.shape){let n=t.shape[s];e[s]=Rs.create(Ho(n))}return new is({...t._def,shape:()=>e})}else return t instanceof zn?new zn({...t._def,type:Ho(t.element)}):t instanceof Rs?Rs.create(Ho(t.unwrap())):t instanceof Dn?Dn.create(Ho(t.unwrap())):t instanceof vn?vn.create(t.items.map(e=>Ho(e))):t}var is=class t extends Be{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),s=$e.objectKeys(e);return this._cached={shape:e,keys:s},this._cached}_parse(e){if(this._getType(e)!==ie.object){let u=this._getOrReturnCtx(e);return re(u,{code:Y.invalid_type,expected:ie.object,received:u.parsedType}),be}let{status:n,ctx:r}=this._processInputParams(e),{shape:i,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof rn&&this._def.unknownKeys==="strip"))for(let u in r.data)o.includes(u)||a.push(u);let c=[];for(let u of o){let l=i[u],d=r.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new Ts(r,d,r.path,u)),alwaysSet:u in r.data})}if(this._def.catchall instanceof rn){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:r.data[l]}});else if(u==="strict")a.length>0&&(re(r,{code:Y.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=r.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Ts(r,d,r.path,l)),alwaysSet:l in r.data})}}return r.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Mt.mergeObjectSync(n,u)):Mt.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return pe.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(s,n)=>{let r=this._def.errorMap?.(s,n).message??n.defaultError;return s.code==="unrecognized_keys"?{message:pe.errToObj(e).message??r}:{message:r}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:De.ZodObject})}setKey(e,s){return this.augment({[e]:s})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let s={};for(let n of $e.objectKeys(e))e[n]&&this.shape[n]&&(s[n]=this.shape[n]);return new t({...this._def,shape:()=>s})}omit(e){let s={};for(let n of $e.objectKeys(this.shape))e[n]||(s[n]=this.shape[n]);return new t({...this._def,shape:()=>s})}deepPartial(){return Ho(this)}partial(e){let s={};for(let n of $e.objectKeys(this.shape)){let r=this.shape[n];e&&!e[n]?s[n]=r:s[n]=r.optional()}return new t({...this._def,shape:()=>s})}required(e){let s={};for(let n of $e.objectKeys(this.shape))if(e&&!e[n])s[n]=this.shape[n];else{let i=this.shape[n];for(;i instanceof Rs;)i=i._def.innerType;s[n]=i}return new t({...this._def,shape:()=>s})}keyof(){return nC($e.objectKeys(this.shape))}};is.create=(t,e)=>new is({shape:()=>t,unknownKeys:"strip",catchall:rn.create(),typeName:De.ZodObject,...Re(e)});is.strictCreate=(t,e)=>new is({shape:()=>t,unknownKeys:"strict",catchall:rn.create(),typeName:De.ZodObject,...Re(e)});is.lazycreate=(t,e)=>new is({shape:t,unknownKeys:"strip",catchall:rn.create(),typeName:De.ZodObject,...Re(e)});var _i=class extends Be{_parse(e){let{ctx:s}=this._processInputParams(e),n=this._def.options;function r(i){for(let a of i)if(a.result.status==="valid")return a.result;for(let a of i)if(a.result.status==="dirty")return s.common.issues.push(...a.ctx.common.issues),a.result;let o=i.map(a=>new rs(a.ctx.common.issues));return re(s,{code:Y.invalid_union,unionErrors:o}),be}if(s.common.async)return Promise.all(n.map(async i=>{let o={...s,common:{...s.common,issues:[]},parent:null};return{result:await i._parseAsync({data:s.data,path:s.path,parent:o}),ctx:o}})).then(r);{let i,o=[];for(let c of n){let u={...s,common:{...s.common,issues:[]},parent:null},l=c._parseSync({data:s.data,path:s.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!i&&(i={result:l,ctx:u}),u.common.issues.length&&o.push(u.common.issues)}if(i)return s.common.issues.push(...i.ctx.common.issues),i.result;let a=o.map(c=>new rs(c));return re(s,{code:Y.invalid_union,unionErrors:a}),be}}get options(){return this._def.options}};_i.create=(t,e)=>new _i({options:t,typeName:De.ZodUnion,...Re(e)});var Un=t=>t instanceof Ii?Un(t.schema):t instanceof Ps?Un(t.innerType()):t instanceof Ri?[t.value]:t instanceof Ti?t.options:t instanceof Pi?$e.objectValues(t.enum):t instanceof Oi?Un(t._def.innerType):t instanceof Ei?[void 0]:t instanceof Fi?[null]:t instanceof Rs?[void 0,...Un(t.unwrap())]:t instanceof Dn?[null,...Un(t.unwrap())]:t instanceof nc||t instanceof Bi?Un(t.unwrap()):t instanceof Li?Un(t._def.innerType):[],Sl=class t extends Be{_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==ie.object)return re(s,{code:Y.invalid_type,expected:ie.object,received:s.parsedType}),be;let n=this.discriminator,r=s.data[n],i=this.optionsMap.get(r);return i?s.common.async?i._parseAsync({data:s.data,path:s.path,parent:s}):i._parseSync({data:s.data,path:s.path,parent:s}):(re(s,{code:Y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),be)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,s,n){let r=new Map;for(let i of s){let o=Un(i.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(r.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);r.set(a,i)}}return new t({typeName:De.ZodDiscriminatedUnion,discriminator:e,options:s,optionsMap:r,...Re(n)})}};function $m(t,e){let s=bn(t),n=bn(e);if(t===e)return{valid:!0,data:t};if(s===ie.object&&n===ie.object){let r=$e.objectKeys(e),i=$e.objectKeys(t).filter(a=>r.indexOf(a)!==-1),o={...t,...e};for(let a of i){let c=$m(t[a],e[a]);if(!c.valid)return{valid:!1};o[a]=c.data}return{valid:!0,data:o}}else if(s===ie.array&&n===ie.array){if(t.length!==e.length)return{valid:!1};let r=[];for(let i=0;i<t.length;i++){let o=t[i],a=e[i],c=$m(o,a);if(!c.valid)return{valid:!1};r.push(c.data)}return{valid:!0,data:r}}else return s===ie.date&&n===ie.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var ki=class extends Be{_parse(e){let{status:s,ctx:n}=this._processInputParams(e),r=(i,o)=>{if(vl(i)||vl(o))return be;let a=$m(i.value,o.value);return a.valid?((Dl(i)||Dl(o))&&s.dirty(),{status:s.value,value:a.data}):(re(n,{code:Y.invalid_intersection_types}),be)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([i,o])=>r(i,o)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};ki.create=(t,e,s)=>new ki({left:t,right:e,typeName:De.ZodIntersection,...Re(s)});var vn=class t extends Be{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.array)return re(n,{code:Y.invalid_type,expected:ie.array,received:n.parsedType}),be;if(n.data.length<this._def.items.length)return re(n,{code:Y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),be;!this._def.rest&&n.data.length>this._def.items.length&&(re(n,{code:Y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),s.dirty());let i=[...n.data].map((o,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Ts(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(i).then(o=>Mt.mergeArray(s,o)):Mt.mergeArray(s,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};vn.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new vn({items:t,typeName:De.ZodTuple,rest:null,...Re(e)})};var Cl=class t extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.object)return re(n,{code:Y.invalid_type,expected:ie.object,received:n.parsedType}),be;let r=[],i=this._def.keyType,o=this._def.valueType;for(let a in n.data)r.push({key:i._parse(new Ts(n,a,n.path,a)),value:o._parse(new Ts(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Mt.mergeObjectAsync(s,r):Mt.mergeObjectSync(s,r)}get element(){return this._def.valueType}static create(e,s,n){return s instanceof Be?new t({keyType:e,valueType:s,typeName:De.ZodRecord,...Re(n)}):new t({keyType:yr.create(),valueType:e,typeName:De.ZodRecord,...Re(s)})}},Zo=class extends Be{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.map)return re(n,{code:Y.invalid_type,expected:ie.map,received:n.parsedType}),be;let r=this._def.keyType,i=this._def.valueType,o=[...n.data.entries()].map(([a,c],u)=>({key:r._parse(new Ts(n,a,n.path,[u,"key"])),value:i._parse(new Ts(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of o){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return be;(u.status==="dirty"||l.status==="dirty")&&s.dirty(),a.set(u.value,l.value)}return{status:s.value,value:a}})}else{let a=new Map;for(let c of o){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return be;(u.status==="dirty"||l.status==="dirty")&&s.dirty(),a.set(u.value,l.value)}return{status:s.value,value:a}}}};Zo.create=(t,e,s)=>new Zo({valueType:e,keyType:t,typeName:De.ZodMap,...Re(s)});var Yo=class t extends Be{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==ie.set)return re(n,{code:Y.invalid_type,expected:ie.set,received:n.parsedType}),be;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(re(n,{code:Y.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),s.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&(re(n,{code:Y.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),s.dirty());let i=this._def.valueType;function o(c){let u=new Set;for(let l of c){if(l.status==="aborted")return be;l.status==="dirty"&&s.dirty(),u.add(l.value)}return{status:s.value,value:u}}let a=[...n.data.values()].map((c,u)=>i._parse(new Ts(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>o(c)):o(a)}min(e,s){return new t({...this._def,minSize:{value:e,message:pe.toString(s)}})}max(e,s){return new t({...this._def,maxSize:{value:e,message:pe.toString(s)}})}size(e,s){return this.min(e,s).max(e,s)}nonempty(e){return this.min(1,e)}};Yo.create=(t,e)=>new Yo({valueType:t,minSize:null,maxSize:null,typeName:De.ZodSet,...Re(e)});var wl=class t extends Be{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==ie.function)return re(s,{code:Y.invalid_type,expected:ie.function,received:s.parsedType}),be;function n(a,c){return sc({data:a,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,zo(),Wn].filter(u=>!!u),issueData:{code:Y.invalid_arguments,argumentsError:c}})}function r(a,c){return sc({data:a,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,zo(),Wn].filter(u=>!!u),issueData:{code:Y.invalid_return_type,returnTypeError:c}})}let i={errorMap:s.common.contextualErrorMap},o=s.data;if(this._def.returns instanceof vr){let a=this;return zt(async function(...c){let u=new rs([]),l=await a._def.args.parseAsync(c,i).catch(p=>{throw u.addIssue(n(c,p)),u}),d=await Reflect.apply(o,this,l);return await a._def.returns._def.type.parseAsync(d,i).catch(p=>{throw u.addIssue(r(d,p)),u})})}else{let a=this;return zt(function(...c){let u=a._def.args.safeParse(c,i);if(!u.success)throw new rs([n(c,u.error)]);let l=Reflect.apply(o,this,u.data),d=a._def.returns.safeParse(l,i);if(!d.success)throw new rs([r(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:vn.create(e).rest(Gn.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,s,n){return new t({args:e||vn.create([]).rest(Gn.create()),returns:s||Gn.create(),typeName:De.ZodFunction,...Re(n)})}},Ii=class extends Be{get schema(){return this._def.getter()}_parse(e){let{ctx:s}=this._processInputParams(e);return this._def.getter()._parse({data:s.data,path:s.path,parent:s})}};Ii.create=(t,e)=>new Ii({getter:t,typeName:De.ZodLazy,...Re(e)});var Ri=class extends Be{_parse(e){if(e.data!==this._def.value){let s=this._getOrReturnCtx(e);return re(s,{received:s.data,code:Y.invalid_literal,expected:this._def.value}),be}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ri.create=(t,e)=>new Ri({value:t,typeName:De.ZodLiteral,...Re(e)});function nC(t,e){return new Ti({values:t,typeName:De.ZodEnum,...Re(e)})}var Ti=class t extends Be{_parse(e){if(typeof e.data!="string"){let s=this._getOrReturnCtx(e),n=this._def.values;return re(s,{expected:$e.joinValues(n),received:s.parsedType,code:Y.invalid_type}),be}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let s=this._getOrReturnCtx(e),n=this._def.values;return re(s,{received:s.data,code:Y.invalid_enum_value,options:n}),be}return zt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let s of this._def.values)e[s]=s;return e}get Values(){let e={};for(let s of this._def.values)e[s]=s;return e}get Enum(){let e={};for(let s of this._def.values)e[s]=s;return e}extract(e,s=this._def){return t.create(e,{...this._def,...s})}exclude(e,s=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...s})}};Ti.create=nC;var Pi=class extends Be{_parse(e){let s=$e.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==ie.string&&n.parsedType!==ie.number){let r=$e.objectValues(s);return re(n,{expected:$e.joinValues(r),received:n.parsedType,code:Y.invalid_type}),be}if(this._cache||(this._cache=new Set($e.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let r=$e.objectValues(s);return re(n,{received:n.data,code:Y.invalid_enum_value,options:r}),be}return zt(e.data)}get enum(){return this._def.values}};Pi.create=(t,e)=>new Pi({values:t,typeName:De.ZodNativeEnum,...Re(e)});var vr=class extends Be{unwrap(){return this._def.type}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==ie.promise&&s.common.async===!1)return re(s,{code:Y.invalid_type,expected:ie.promise,received:s.parsedType}),be;let n=s.parsedType===ie.promise?s.data:Promise.resolve(s.data);return zt(n.then(r=>this._def.type.parseAsync(r,{path:s.path,errorMap:s.common.contextualErrorMap})))}};vr.create=(t,e)=>new vr({type:t,typeName:De.ZodPromise,...Re(e)});var Ps=class extends Be{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===De.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:s,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:o=>{re(n,o),o.fatal?s.abort():s.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type==="preprocess"){let o=r.transform(n.data,i);if(n.common.async)return Promise.resolve(o).then(async a=>{if(s.value==="aborted")return be;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?be:c.status==="dirty"?Di(c.value):s.value==="dirty"?Di(c.value):c});{if(s.value==="aborted")return be;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?be:a.status==="dirty"?Di(a.value):s.value==="dirty"?Di(a.value):a}}if(r.type==="refinement"){let o=a=>{let c=r.refinement(a,i);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?be:(a.status==="dirty"&&s.dirty(),o(a.value),{status:s.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?be:(a.status==="dirty"&&s.dirty(),o(a.value).then(()=>({status:s.value,value:a.value}))))}if(r.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!xr(o))return be;let a=r.transform(o.value,i);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:s.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>xr(o)?Promise.resolve(r.transform(o.value,i)).then(a=>({status:s.value,value:a})):be);$e.assertNever(r)}};Ps.create=(t,e,s)=>new Ps({schema:t,typeName:De.ZodEffects,effect:e,...Re(s)});Ps.createWithPreprocess=(t,e,s)=>new Ps({schema:e,effect:{type:"preprocess",transform:t},typeName:De.ZodEffects,...Re(s)});var Rs=class extends Be{_parse(e){return this._getType(e)===ie.undefined?zt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Rs.create=(t,e)=>new Rs({innerType:t,typeName:De.ZodOptional,...Re(e)});var Dn=class extends Be{_parse(e){return this._getType(e)===ie.null?zt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Dn.create=(t,e)=>new Dn({innerType:t,typeName:De.ZodNullable,...Re(e)});var Oi=class extends Be{_parse(e){let{ctx:s}=this._processInputParams(e),n=s.data;return s.parsedType===ie.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:s.path,parent:s})}removeDefault(){return this._def.innerType}};Oi.create=(t,e)=>new Oi({innerType:t,typeName:De.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Re(e)});var Li=class extends Be{_parse(e){let{ctx:s}=this._processInputParams(e),n={...s,common:{...s.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return qo(r)?r.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new rs(n.common.issues)},input:n.data})})):{status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new rs(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Li.create=(t,e)=>new Li({innerType:t,typeName:De.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Re(e)});var Jo=class extends Be{_parse(e){if(this._getType(e)!==ie.nan){let n=this._getOrReturnCtx(e);return re(n,{code:Y.invalid_type,expected:ie.nan,received:n.parsedType}),be}return{status:"valid",value:e.data}}};Jo.create=t=>new Jo({typeName:De.ZodNaN,...Re(t)});var EP=Symbol("zod_brand"),nc=class extends Be{_parse(e){let{ctx:s}=this._processInputParams(e),n=s.data;return this._def.type._parse({data:n,path:s.path,parent:s})}unwrap(){return this._def.type}},rc=class t extends Be{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?be:i.status==="dirty"?(s.dirty(),Di(i.value)):this._def.out._parseAsync({data:i.value,path:n.path,parent:n})})();{let r=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return r.status==="aborted"?be:r.status==="dirty"?(s.dirty(),{status:"dirty",value:r.value}):this._def.out._parseSync({data:r.value,path:n.path,parent:n})}}static create(e,s){return new t({in:e,out:s,typeName:De.ZodPipeline})}},Bi=class extends Be{_parse(e){let s=this._def.innerType._parse(e),n=r=>(xr(r)&&(r.value=Object.freeze(r.value)),r);return qo(s)?s.then(r=>n(r)):n(s)}unwrap(){return this._def.innerType}};Bi.create=(t,e)=>new Bi({innerType:t,typeName:De.ZodReadonly,...Re(e)});function XS(t,e){let s=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof s=="string"?{message:s}:s}function rC(t,e={},s){return t?br.create().superRefine((n,r)=>{let i=t(n);if(i instanceof Promise)return i.then(o=>{if(!o){let a=XS(e,n),c=a.fatal??s??!0;r.addIssue({code:"custom",...a,fatal:c})}});if(!i){let o=XS(e,n),a=o.fatal??s??!0;r.addIssue({code:"custom",...o,fatal:a})}}):br.create()}var FP={object:is.lazycreate},De;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(De||(De={}));var _P=(t,e={message:`Input not instance of ${t.name}`})=>rC(s=>s instanceof t,e),iC=yr.create,oC=Si.create,kP=Jo.create,IP=Ci.create,aC=wi.create,RP=Ai.create,TP=Vo.create,PP=Ei.create,OP=Fi.create,LP=br.create,BP=Gn.create,NP=rn.create,MP=Ko.create,jP=zn.create,$P=is.create,WP=is.strictCreate,UP=_i.create,GP=Sl.create,zP=ki.create,qP=vn.create,HP=Cl.create,VP=Zo.create,KP=Yo.create,ZP=wl.create,YP=Ii.create,JP=Ri.create,QP=Ti.create,XP=Pi.create,eO=vr.create,tO=Ps.create,sO=Rs.create,nO=Dn.create,rO=Ps.createWithPreprocess,iO=rc.create,oO=()=>iC().optional(),aO=()=>oC().optional(),cO=()=>aC().optional(),uO={string:t=>yr.create({...t,coerce:!0}),number:t=>Si.create({...t,coerce:!0}),boolean:t=>wi.create({...t,coerce:!0}),bigint:t=>Ci.create({...t,coerce:!0}),date:t=>Ai.create({...t,coerce:!0})};var lO=be;var ic=class extends Error{constructor(e,s=[],n=[],r=void 0){super(e),this.name="EnvironmentValidationError",this.missingVars=s,this.invalidVars=n,this.context=r}},oc=class t extends cC.EventEmitter{constructor(e,s={}){super(),this.watchers=[],this.lastConfigHash="",this.schema=e,this.options={loadEnvFiles:!0,validateStartup:!1,envFiles:[".env",".env.local"],watchFiles:!1,watchInterval:5e3,hotReload:!1,suppressWarnings:!1,...s},this.loadEnvironmentFiles(),this.config=this.validateEnvironment(e),this.lastConfigHash=this.getConfigHash(),this.options.validateStartup&&this.validateStartup(),(this.options.hotReload||this.options.watchFiles)&&this.startWatching()}static getInstance(e,s){return t.instance||(t.instance=new t(e,s)),t.instance}startWatching(){if(this.options.envFiles){for(let e of this.options.envFiles){let s=(0,Wm.resolve)(process.cwd(),e);try{let n=(0,uC.watch)(s,r=>{r==="change"&&this.handleFileChange(e)});this.watchers.push({path:s,watcher:n})}catch(n){this.options.suppressWarnings||console.warn(`Warning: Could not watch ${e}: ${n}`)}}this.options.watchInterval&&this.options.watchInterval>0&&(this.reloadTimer=setInterval(()=>{this.checkForChanges()},this.options.watchInterval))}}handleFileChange(e){console.log(`\u{1F504} Configuration file changed: ${e}`),this.reloadConfiguration()}checkForChanges(){this.getConfigHash()!==this.lastConfigHash&&(console.log("\u{1F504} Configuration change detected"),this.reloadConfiguration())}getConfigHash(){return JSON.stringify(this.config)}reloadConfiguration(){let e={...this.config};try{this.loadEnvironmentFiles(),this.config=this.validateEnvironment(this.schema),this.lastConfigHash=this.getConfigHash(),this.emitConfigChanges(e,this.config),console.log("\u2705 Configuration reloaded successfully")}catch(s){console.error("\u274C Failed to reload configuration:",s),this.emit("configReloadError",s)}}emitConfigChanges(e,s){let n=new Set([...Object.keys(e),...Object.keys(s)]);for(let r of n){let i=e[r],o=s[r];if(i!==o){let a={type:i===void 0?"added":o===void 0?"removed":"modified",variable:r,oldValue:i,newValue:o,timestamp:new Date};this.emit("configChanged",a),this.emit(`configChanged:${r}`,a)}}this.emit("configReloaded",{oldConfig:e,newConfig:s,timestamp:new Date})}stopWatching(){for(let{watcher:e}of this.watchers)e.close();this.watchers=[],this.reloadTimer&&(clearInterval(this.reloadTimer),this.reloadTimer=void 0)}reload(){this.reloadConfiguration()}loadEnvironmentFiles(){if(!(!this.options.loadEnvFiles||!this.options.envFiles))for(let e of this.options.envFiles)try{let s=(0,lC.config)({path:(0,Wm.resolve)(process.cwd(),e)});s.error&&!this.options.suppressWarnings&&console.warn(`Warning: Could not load ${e}: ${s.error.message}`)}catch(s){if(s instanceof Error&&s.message.includes("ENOENT"))continue;this.options.suppressWarnings||console.warn(`Warning: Error loading ${e}: ${s}`)}}get(e){return this.config[e]}getRequired(e,s){let n=this.config[e];if(n==null){let r=s?` for ${s}`:"";throw new ic(`${String(e)} environment variable is required${r}`,[String(e)],[],s)}return n}getAll(){return{...this.config}}validateStartup(){if(this.schema)try{this.schema.parse(process.env)}catch(e){if(e instanceof gt.ZodError){let s=[],n=[];for(let o of e.errors){let a=o.path.join("."),c=process.env[a]||"undefined";o.code==="invalid_type"&&o.received==="undefined"?s.push(a):n.push({name:a,value:c,expected:"valid value",received:o.message||"invalid value"})}let r=s.length>0?`
@@ -175,25 +175,25 @@ Invalid variables: ${r.map(a=>`${a.name} (expected ${a.expected}, got '${a.value
175
175
  `);let a=e+(s?`
176
176
  `+s:""),u=Math.floor(r.length/o)-this.cursorPos.rows+(s?VC(s):0);u>0&&(a+=n0(u)),a+=i0(this.cursorPos.cols),this.write(r0(this.extraLinesUnderPrompt)+o0(this.height)+a),this.extraLinesUnderPrompt=u,this.height=VC(a)}checkCursorPos(){let e=this.rl.getCursorPos();e.cols!==this.cursorPos.cols&&(this.write(i0(e.cols)),this.cursorPos=e)}done({clearContent:e}){this.rl.setPrompt("");let s=r0(this.extraLinesUnderPrompt);s+=e?o0(this.height):`
177
177
  `,s+=HC,this.write(s),this.rl.close()}};var Ll=class extends Promise{static withResolver(){let e,s;return{promise:new Promise((r,i)=>{e=r,s=i}),resolve:e,reject:s}}};function qO(){let t=Error.prepareStackTrace,e=[];try{Error.prepareStackTrace=(s,n)=>{let r=n.slice(1);return e=r,r},new Error().stack}catch{return e}return Error.prepareStackTrace=t,e}function vt(t){let e=qO();return(n,r={})=>{let{input:i=process.stdin,signal:o}=r,a=new Set,c=new JC.default;c.pipe(r.output??process.stdout);let u=ZC.createInterface({terminal:!0,input:i,output:c}),l=new pc(u),{promise:d,resolve:f,reject:p}=Ll.withResolver(),m=()=>p(new El);if(o){let y=()=>p(new Al({cause:o.reason}));if(o.aborted)return y(),Object.assign(d,{cancel:m});o.addEventListener("abort",y),a.add(()=>o.removeEventListener("abort",y))}a.add(Ol((y,x)=>{p(new cc(`User force closed the prompt with ${y} ${x}`))}));let g=()=>p(new cc("User force closed the prompt with SIGINT"));u.on("SIGINT",g),a.add(()=>u.removeListener("SIGINT",g));let h=()=>l.checkCursorPos();return u.input.on("keypress",h),a.add(()=>u.input.removeListener("keypress",h)),fC(u,y=>{let x=YC.AsyncResource.bind(()=>Wi.clearAll());return u.on("close",x),a.add(()=>u.removeListener("close",x)),y(()=>{try{let D=t(n,E=>{setImmediate(()=>f(E))});if(D===void 0){let E=e[1]?.getFileName();throw new Error(`Prompt functions must return a string.
178
- at ${E}`)}let[S,v]=typeof D=="string"?[D]:D;l.render(S,v),Wi.run()}catch(D){p(D)}}),Object.assign(d.then(D=>(Wi.clearAll(),D),D=>{throw Wi.clearAll(),D}).finally(()=>{a.forEach(D=>D()),l.done({clearContent:!!r.clearPromptOnDone}),c.end()}).then(()=>d),{cancel:m})})}}var QC=V(Sr(),1);var ze=class{separator=QC.default.dim(Array.from({length:15}).join(Os.line));type="separator";constructor(e){e&&(this.separator=e)}static isSeparator(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="separator")}};var Ml=V(Sr(),1);var e1=V(Nl(),1),HO={icon:{checked:Ml.default.green(Os.circleFilled),unchecked:Os.circle,cursor:Os.pointer},style:{disabledChoice:t=>Ml.default.dim(`- ${t}`),renderSelectedChoices:t=>t.map(e=>e.short).join(", "),description:t=>Ml.default.cyan(t)},helpMode:"auto"};function wr(t){return!ze.isSeparator(t)&&!t.disabled}function c0(t){return wr(t)&&!!t.checked}function u0(t){return wr(t)?{...t,checked:!t.checked}:t}function VO(t){return function(e){return wr(e)?{...e,checked:t}:e}}function KO(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1,checked:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1,checked:e.checked??!1};return e.description&&(n.description=e.description),n})}var l0=vt((t,e)=>{let{instructions:s,pageSize:n=7,loop:r=!0,required:i,validate:o=()=>!0}=t,a={all:"a",invert:"i",...t.shortcuts},c=ut(HO,t.theme),u=Bs(!0),[l,d]=ve("idle"),f=yt({status:l,theme:c}),[p,m]=ve(KO(t.choices)),g=ys(()=>{let L=p.findIndex(wr),z=p.findLastIndex(wr);if(L===-1)throw new Dr("[checkbox prompt] No selectable choices. All choices are disabled.");return{first:L,last:z}},[p]),[h,y]=ve(g.first),[x,D]=ve(!0),[S,v]=ve();bt(async L=>{if(xt(L)){let z=p.filter(c0),C=await o([...z]);i&&!p.some(c0)?v("At least one choice must be selected"):C===!0?(d("done"),e(z.map(B=>B.value))):v(C||"You must select a valid value")}else if(qn(L)||Mi(L)){if(r||qn(L)&&h!==g.first||Mi(L)&&h!==g.last){let z=qn(L)?-1:1,C=h;do C=(C+z+p.length)%p.length;while(!wr(p[C]));y(C)}}else if(Um(L))v(void 0),D(!1),m(p.map((z,C)=>C===h?u0(z):z));else if(L.name===a.all){let z=p.some(C=>wr(C)&&!C.checked);m(p.map(VO(z)))}else if(L.name===a.invert)m(p.map(u0));else if(ac(L)){let z=Number(L.name)-1,C=p[z];C!=null&&wr(C)&&(y(z),m(p.map((B,N)=>N===z?u0(B):B)))}});let E=c.style.message(t.message,l),T,_=Ui({items:p,active:h,renderItem({item:L,isActive:z}){if(ze.isSeparator(L))return` ${L.separator}`;if(L.disabled){let K=typeof L.disabled=="string"?L.disabled:"(disabled)";return c.style.disabledChoice(`${L.name} ${K}`)}z&&(T=L.description);let C=L.checked?c.icon.checked:c.icon.unchecked,B=z?c.style.highlight:K=>K,N=z?c.icon.cursor:" ";return B(`${N}${C} ${L.name}`)},pageSize:n,loop:r});if(l==="done"){let L=p.filter(c0),z=c.style.answer(c.style.renderSelectedChoices(L,p));return`${f} ${E} ${z}`}let W="",M="";(c.helpMode==="always"||c.helpMode==="auto"&&x&&(s===void 0||s))&&(typeof s=="string"?W=s:W=` (Press ${[`${c.style.key("space")} to select`,a.all?`${c.style.key(a.all)} to toggle all`:"",a.invert?`${c.style.key(a.invert)} to invert selection`:"",`and ${c.style.key("enter")} to proceed`].filter(z=>z!=="").join(", ")})`,p.length>n&&(c.helpMode==="always"||c.helpMode==="auto"&&u.current)&&(M=`
179
- ${c.style.help("(Use arrow keys to reveal more choices)")}`,u.current=!1));let j=T?`
180
- ${c.style.description(T)}`:"",$="";return S&&($=`
178
+ at ${E}`)}let[S,v]=typeof D=="string"?[D]:D;l.render(S,v),Wi.run()}catch(D){p(D)}}),Object.assign(d.then(D=>(Wi.clearAll(),D),D=>{throw Wi.clearAll(),D}).finally(()=>{a.forEach(D=>D()),l.done({clearContent:!!r.clearPromptOnDone}),c.end()}).then(()=>d),{cancel:m})})}}var QC=V(Sr(),1);var ze=class{separator=QC.default.dim(Array.from({length:15}).join(Os.line));type="separator";constructor(e){e&&(this.separator=e)}static isSeparator(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="separator")}};var Ml=V(Sr(),1);var e1=V(Nl(),1),HO={icon:{checked:Ml.default.green(Os.circleFilled),unchecked:Os.circle,cursor:Os.pointer},style:{disabledChoice:t=>Ml.default.dim(`- ${t}`),renderSelectedChoices:t=>t.map(e=>e.short).join(", "),description:t=>Ml.default.cyan(t)},helpMode:"auto"};function wr(t){return!ze.isSeparator(t)&&!t.disabled}function c0(t){return wr(t)&&!!t.checked}function u0(t){return wr(t)?{...t,checked:!t.checked}:t}function VO(t){return function(e){return wr(e)?{...e,checked:t}:e}}function KO(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1,checked:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1,checked:e.checked??!1};return e.description&&(n.description=e.description),n})}var l0=vt((t,e)=>{let{instructions:s,pageSize:n=7,loop:r=!0,required:i,validate:o=()=>!0}=t,a={all:"a",invert:"i",...t.shortcuts},c=ut(HO,t.theme),u=Bs(!0),[l,d]=ve("idle"),f=yt({status:l,theme:c}),[p,m]=ve(KO(t.choices)),g=ys(()=>{let L=p.findIndex(wr),z=p.findLastIndex(wr);if(L===-1)throw new Dr("[checkbox prompt] No selectable choices. All choices are disabled.");return{first:L,last:z}},[p]),[h,y]=ve(g.first),[x,D]=ve(!0),[S,v]=ve();bt(async L=>{if(xt(L)){let z=p.filter(c0),C=await o([...z]);i&&!p.some(c0)?v("At least one choice must be selected"):C===!0?(d("done"),e(z.map(B=>B.value))):v(C||"You must select a valid value")}else if(qn(L)||Mi(L)){if(r||qn(L)&&h!==g.first||Mi(L)&&h!==g.last){let z=qn(L)?-1:1,C=h;do C=(C+z+p.length)%p.length;while(!wr(p[C]));y(C)}}else if(Um(L))v(void 0),D(!1),m(p.map((z,C)=>C===h?u0(z):z));else if(L.name===a.all){let z=p.some(C=>wr(C)&&!C.checked);m(p.map(VO(z)))}else if(L.name===a.invert)m(p.map(u0));else if(ac(L)){let z=Number(L.name)-1,C=p[z];C!=null&&wr(C)&&(y(z),m(p.map((B,N)=>N===z?u0(B):B)))}});let E=c.style.message(t.message,l),R,_=Ui({items:p,active:h,renderItem({item:L,isActive:z}){if(ze.isSeparator(L))return` ${L.separator}`;if(L.disabled){let K=typeof L.disabled=="string"?L.disabled:"(disabled)";return c.style.disabledChoice(`${L.name} ${K}`)}z&&(R=L.description);let C=L.checked?c.icon.checked:c.icon.unchecked,B=z?c.style.highlight:K=>K,N=z?c.icon.cursor:" ";return B(`${N}${C} ${L.name}`)},pageSize:n,loop:r});if(l==="done"){let L=p.filter(c0),z=c.style.answer(c.style.renderSelectedChoices(L,p));return`${f} ${E} ${z}`}let W="",j="";(c.helpMode==="always"||c.helpMode==="auto"&&x&&(s===void 0||s))&&(typeof s=="string"?W=s:W=` (Press ${[`${c.style.key("space")} to select`,a.all?`${c.style.key(a.all)} to toggle all`:"",a.invert?`${c.style.key(a.invert)} to invert selection`:"",`and ${c.style.key("enter")} to proceed`].filter(z=>z!=="").join(", ")})`,p.length>n&&(c.helpMode==="always"||c.helpMode==="auto"&&u.current)&&(j=`
179
+ ${c.style.help("(Use arrow keys to reveal more choices)")}`,u.current=!1));let M=R?`
180
+ ${c.style.description(R)}`:"",$="";return S&&($=`
181
181
  ${c.style.error(S)}`),`${f} ${E}${W}
182
- ${_}${M}${j}${$}${e1.default.cursorHide}`});var ew=V(f1(),1),cd=require("child_process"),oa=require("fs"),ad=V(require("node:path"),1),tw=V(require("node:os"),1),sw=require("node:crypto"),Ah=V(Q1(),1);var rd=class extends Error{originalError;constructor(e){super(`Failed to create temporary file. ${e.message}`),this.originalError=e}};var vc=class extends Error{originalError;constructor(e){super(`Failed to launch editor. ${e.message}`),this.originalError=e}};var id=class extends Error{originalError;constructor(e){super(`Failed to read temporary file. ${e.message}`),this.originalError=e}};var od=class extends Error{originalError;constructor(e){super(`Failed to remove temporary file. ${e.message}`),this.originalError=e}};function nw(t="",e,s){let n=new Eh(t,s);n.runAsync((r,i)=>{if(r)setImmediate(e,r,void 0);else try{n.cleanup(),setImmediate(e,void 0,i)}catch(o){setImmediate(e,o,void 0)}})}function X1(t){return t?t.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function OL(t){let e=[],s="";for(let n=0;n<t.length;n++){let r=t.charAt(n);n>0&&r===" "&&t[n-1]!=="\\"&&s.length>0?(e.push(s),s=""):s=`${s}${r}`}return s.length>0&&e.push(s),e}var Eh=class{text="";tempFile;editor;lastExitStatus=0;fileOptions={};get temp_file(){return console.log("DEPRECATED: temp_file. Use tempFile moving forward."),this.tempFile}get last_exit_status(){return console.log("DEPRECATED: last_exit_status. Use lastExitStatus moving forward."),this.lastExitStatus}constructor(e="",s){this.text=e,s&&(this.fileOptions=s),this.determineEditor(),this.createTemporaryFile()}run(){return this.launchEditor(),this.readTemporaryFile(),this.text}runAsync(e){try{this.launchEditorAsync(()=>{try{this.readTemporaryFile(),setImmediate(e,void 0,this.text)}catch(s){setImmediate(e,s,void 0)}})}catch(s){setImmediate(e,s,void 0)}}cleanup(){this.removeTemporaryFile()}determineEditor(){let e=process.env.VISUAL?process.env.VISUAL:process.env.EDITOR?process.env.EDITOR:process.platform.startsWith("win")?"notepad":"vim",s=OL(e).map(r=>r.replace("\\ "," ")),n=s.shift();this.editor={args:s,bin:n}}createTemporaryFile(){try{let e=this.fileOptions.dir??tw.default.tmpdir(),s=(0,sw.randomUUID)(),n=X1(this.fileOptions.prefix),r=X1(this.fileOptions.postfix),i=`${n}${s}${r}`,o=ad.default.resolve(e,i),a=ad.default.resolve(e)+ad.default.sep;if(!o.startsWith(a))throw new Error("Resolved temporary file escaped the base directory");this.tempFile=o;let c={encoding:"utf8",flag:"wx"};Object.prototype.hasOwnProperty.call(this.fileOptions,"mode")&&(c.mode=this.fileOptions.mode),(0,oa.writeFileSync)(this.tempFile,this.text,c)}catch(e){throw new rd(e)}}readTemporaryFile(){try{let e=(0,oa.readFileSync)(this.tempFile);if(e.length===0)this.text="";else{let s=(0,ew.detect)(e)??"utf8";Ah.default.encodingExists(s)||(s="utf8"),this.text=Ah.default.decode(e,s)}}catch(e){throw new id(e)}}removeTemporaryFile(){try{(0,oa.unlinkSync)(this.tempFile)}catch(e){throw new od(e)}}launchEditor(){try{let e=(0,cd.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=e.status??0}catch(e){throw new vc(e)}}launchEditorAsync(e){try{(0,cd.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",n=>{this.lastExitStatus=n,setImmediate(e)})}catch(s){throw new vc(s)}}};var LL={validationFailureMode:"keep"},BL=vt((t,e)=>{let{waitForUserInput:s=!0,file:{postfix:n=t.postfix??".txt",...r}={},validate:i=()=>!0}=t,o=ut(LL,t.theme),[a,c]=ve("idle"),[u="",l]=ve(t.default),[d,f]=ve(),p=yt({status:a,theme:o});function m(x){x.pause();let D=async(S,v)=>{if(x.resume(),S)f(S.toString());else{c("loading");let E=v??"",T=await i(E);T===!0?(f(void 0),c("done"),e(E)):(o.validationFailureMode==="clear"?l(t.default):l(E),f(T||"You must provide a valid value"),c("idle"))}};nw(u,(S,v)=>void D(S,v),{postfix:n,...r})}on(x=>{s||m(x)},[]),bt((x,D)=>{a==="idle"&&xt(x)&&m(D)});let g=o.style.message(t.message,a),h="";if(a==="loading")h=o.style.help("Received");else if(a==="idle"){let x=o.style.key("enter");h=o.style.help(`Press ${x} to launch your preferred editor.`)}let y="";return d&&(y=o.style.error(d)),[[p,g,h].filter(Boolean).join(" "),y]});function rw(t,e){let s=e!==!1;return/^(y|yes)/i.test(t)?s=!0:/^(n|no)/i.test(t)&&(s=!1),s}function iw(t){return t?"Yes":"No"}var Vi=vt((t,e)=>{let{transformer:s=iw}=t,[n,r]=ve("idle"),[i,o]=ve(""),a=ut(t.theme),c=yt({status:n,theme:a});bt((f,p)=>{if(xt(f)){let m=rw(i,t.default);o(s(m)),r("done"),e(m)}else if(f.name==="tab"){let m=iw(!rw(i,t.default));p.clearLine(0),p.write(m),o(m)}else o(p.line)});let u=i,l="";n==="done"?u=a.style.answer(i):l=` ${a.style.defaultAnswer(t.default===!1?"y/N":"Y/n")}`;let d=a.style.message(t.message,n);return`${c} ${d}${l} ${u}`});var NL={validationFailureMode:"keep"},Fh=vt((t,e)=>{let{required:s,validate:n=()=>!0}=t,r=ut(NL,t.theme),[i,o]=ve("idle"),[a="",c]=ve(t.default),[u,l]=ve(),[d,f]=ve(""),p=yt({status:i,theme:r});bt(async(x,D)=>{if(i==="idle")if(xt(x)){let S=d||a;o("loading");let v=s&&!S?"You must provide a value":await n(S);v===!0?(f(S),o("done"),e(S)):(r.validationFailureMode==="clear"?f(""):D.write(d),l(v||"You must provide a valid value"),o("idle"))}else ji(x)&&!d?c(void 0):x.name==="tab"&&!d?(c(void 0),D.clearLine(0),D.write(a),f(a)):(f(D.line),l(void 0))});let m=r.style.message(t.message,i),g=d;typeof t.transformer=="function"?g=t.transformer(d,{isFinal:i==="done"}):i==="done"&&(g=r.style.answer(d));let h;a&&i!=="done"&&!d&&(h=r.style.defaultAnswer(a));let y="";return u&&(y=r.style.error(u)),[[p,m,h,g].filter(x=>x!==void 0).join(" "),y]});function ML(t,e,s){let n=t*Math.pow(10,6),r=e*Math.pow(10,6),i=s*Math.pow(10,6);return(n-(Number.isFinite(s)?i:0))%r===0}function ow(t,{min:e,max:s,step:n}){return t==null||Number.isNaN(t)?!1:t<e||t>s?`Value must be between ${e} and ${s}`:n!=="any"&&!ML(t,n,e)?`Value must be a multiple of ${n}${Number.isFinite(e)?` starting from ${e}`:""}`:!0}var jL=vt((t,e)=>{let{validate:s=()=>!0,min:n=-1/0,max:r=1/0,step:i=1,required:o=!1}=t,a=ut(t.theme),[c,u]=ve("idle"),[l,d]=ve(""),f=ow(t.default,{min:n,max:r,step:i})===!0?t.default?.toString():void 0,[p="",m]=ve(f),[g,h]=ve(),y=yt({status:c,theme:a});bt(async(E,T)=>{if(c==="idle")if(xt(E)){let _=l||p,W=_===""?void 0:Number(_);u("loading");let M=!0;(o||W!=null)&&(M=ow(W,{min:n,max:r,step:i})),M===!0&&(M=await s(W)),M===!0?(d(String(W??"")),u("done"),e(W)):(T.write(l),h(M||"You must provide a valid numeric value"),u("idle"))}else ji(E)&&!l?m(void 0):E.name==="tab"&&!l?(m(void 0),T.clearLine(0),T.write(p),d(p)):(d(T.line),h(void 0))});let x=a.style.message(t.message,c),D=l;c==="done"&&(D=a.style.answer(l));let S;p&&c!=="done"&&!l&&(S=a.style.defaultAnswer(p));let v="";return g&&(v=a.style.error(g)),[[y,x,S,D].filter(E=>E!==void 0).join(" "),v]});var _h=V(Sr(),1);function $L(t){return t.map(e=>{if(ze.isSeparator(e))return e;let s="name"in e?e.name:String(e.value);return{value:"value"in e?e.value:s,name:s,key:e.key.toLowerCase()}})}var WL={key:"h",name:"Help, list all options",value:void 0},UL=vt((t,e)=>{let{default:s="h"}=t,n=ys(()=>$L(t.choices),[t.choices]),[r,i]=ve("idle"),[o,a]=ve(""),[c,u]=ve(t.expanded??!1),[l,d]=ve(),f=ut(t.theme),p=yt({theme:f,status:r});bt((v,E)=>{if(xt(v)){let T=(o||s).toLowerCase();if(T==="h"&&!c)u(!0);else{let _=n.find(W=>!ze.isSeparator(W)&&W.key===T);_?(i("done"),a(T),e(_.value)):d(o===""?"Please input a value":`"${_h.default.red(o)}" isn't an available option`)}}else a(E.line),d(void 0)});let m=f.style.message(t.message,r);if(r==="done"){let v=n.find(E=>!ze.isSeparator(E)&&E.key===o.toLowerCase());return`${p} ${m} ${f.style.answer(v.name)}`}let g=c?n:[...n,WL],h="",y=g.map(v=>ze.isSeparator(v)?"":v.key===s?v.key.toUpperCase():v.key).join("");y=` ${f.style.defaultAnswer(y)}`,c&&(y="",h=g.map(v=>{if(ze.isSeparator(v))return` ${v.separator}`;let E=` ${v.key}) ${v.name}`;return v.key===o.toLowerCase()?f.style.highlight(E):E}).join(`
182
+ ${_}${j}${M}${$}${e1.default.cursorHide}`});var ew=V(f1(),1),cd=require("child_process"),oa=require("fs"),ad=V(require("node:path"),1),tw=V(require("node:os"),1),sw=require("node:crypto"),Ah=V(Q1(),1);var rd=class extends Error{originalError;constructor(e){super(`Failed to create temporary file. ${e.message}`),this.originalError=e}};var vc=class extends Error{originalError;constructor(e){super(`Failed to launch editor. ${e.message}`),this.originalError=e}};var id=class extends Error{originalError;constructor(e){super(`Failed to read temporary file. ${e.message}`),this.originalError=e}};var od=class extends Error{originalError;constructor(e){super(`Failed to remove temporary file. ${e.message}`),this.originalError=e}};function nw(t="",e,s){let n=new Eh(t,s);n.runAsync((r,i)=>{if(r)setImmediate(e,r,void 0);else try{n.cleanup(),setImmediate(e,void 0,i)}catch(o){setImmediate(e,o,void 0)}})}function X1(t){return t?t.replace(/[^a-zA-Z0-9_.-]/g,"_"):""}function OL(t){let e=[],s="";for(let n=0;n<t.length;n++){let r=t.charAt(n);n>0&&r===" "&&t[n-1]!=="\\"&&s.length>0?(e.push(s),s=""):s=`${s}${r}`}return s.length>0&&e.push(s),e}var Eh=class{text="";tempFile;editor;lastExitStatus=0;fileOptions={};get temp_file(){return console.log("DEPRECATED: temp_file. Use tempFile moving forward."),this.tempFile}get last_exit_status(){return console.log("DEPRECATED: last_exit_status. Use lastExitStatus moving forward."),this.lastExitStatus}constructor(e="",s){this.text=e,s&&(this.fileOptions=s),this.determineEditor(),this.createTemporaryFile()}run(){return this.launchEditor(),this.readTemporaryFile(),this.text}runAsync(e){try{this.launchEditorAsync(()=>{try{this.readTemporaryFile(),setImmediate(e,void 0,this.text)}catch(s){setImmediate(e,s,void 0)}})}catch(s){setImmediate(e,s,void 0)}}cleanup(){this.removeTemporaryFile()}determineEditor(){let e=process.env.VISUAL?process.env.VISUAL:process.env.EDITOR?process.env.EDITOR:process.platform.startsWith("win")?"notepad":"vim",s=OL(e).map(r=>r.replace("\\ "," ")),n=s.shift();this.editor={args:s,bin:n}}createTemporaryFile(){try{let e=this.fileOptions.dir??tw.default.tmpdir(),s=(0,sw.randomUUID)(),n=X1(this.fileOptions.prefix),r=X1(this.fileOptions.postfix),i=`${n}${s}${r}`,o=ad.default.resolve(e,i),a=ad.default.resolve(e)+ad.default.sep;if(!o.startsWith(a))throw new Error("Resolved temporary file escaped the base directory");this.tempFile=o;let c={encoding:"utf8",flag:"wx"};Object.prototype.hasOwnProperty.call(this.fileOptions,"mode")&&(c.mode=this.fileOptions.mode),(0,oa.writeFileSync)(this.tempFile,this.text,c)}catch(e){throw new rd(e)}}readTemporaryFile(){try{let e=(0,oa.readFileSync)(this.tempFile);if(e.length===0)this.text="";else{let s=(0,ew.detect)(e)??"utf8";Ah.default.encodingExists(s)||(s="utf8"),this.text=Ah.default.decode(e,s)}}catch(e){throw new id(e)}}removeTemporaryFile(){try{(0,oa.unlinkSync)(this.tempFile)}catch(e){throw new od(e)}}launchEditor(){try{let e=(0,cd.spawnSync)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"});this.lastExitStatus=e.status??0}catch(e){throw new vc(e)}}launchEditorAsync(e){try{(0,cd.spawn)(this.editor.bin,this.editor.args.concat([this.tempFile]),{stdio:"inherit"}).on("exit",n=>{this.lastExitStatus=n,setImmediate(e)})}catch(s){throw new vc(s)}}};var LL={validationFailureMode:"keep"},BL=vt((t,e)=>{let{waitForUserInput:s=!0,file:{postfix:n=t.postfix??".txt",...r}={},validate:i=()=>!0}=t,o=ut(LL,t.theme),[a,c]=ve("idle"),[u="",l]=ve(t.default),[d,f]=ve(),p=yt({status:a,theme:o});function m(x){x.pause();let D=async(S,v)=>{if(x.resume(),S)f(S.toString());else{c("loading");let E=v??"",R=await i(E);R===!0?(f(void 0),c("done"),e(E)):(o.validationFailureMode==="clear"?l(t.default):l(E),f(R||"You must provide a valid value"),c("idle"))}};nw(u,(S,v)=>void D(S,v),{postfix:n,...r})}on(x=>{s||m(x)},[]),bt((x,D)=>{a==="idle"&&xt(x)&&m(D)});let g=o.style.message(t.message,a),h="";if(a==="loading")h=o.style.help("Received");else if(a==="idle"){let x=o.style.key("enter");h=o.style.help(`Press ${x} to launch your preferred editor.`)}let y="";return d&&(y=o.style.error(d)),[[p,g,h].filter(Boolean).join(" "),y]});function rw(t,e){let s=e!==!1;return/^(y|yes)/i.test(t)?s=!0:/^(n|no)/i.test(t)&&(s=!1),s}function iw(t){return t?"Yes":"No"}var Vi=vt((t,e)=>{let{transformer:s=iw}=t,[n,r]=ve("idle"),[i,o]=ve(""),a=ut(t.theme),c=yt({status:n,theme:a});bt((f,p)=>{if(xt(f)){let m=rw(i,t.default);o(s(m)),r("done"),e(m)}else if(f.name==="tab"){let m=iw(!rw(i,t.default));p.clearLine(0),p.write(m),o(m)}else o(p.line)});let u=i,l="";n==="done"?u=a.style.answer(i):l=` ${a.style.defaultAnswer(t.default===!1?"y/N":"Y/n")}`;let d=a.style.message(t.message,n);return`${c} ${d}${l} ${u}`});var NL={validationFailureMode:"keep"},Fh=vt((t,e)=>{let{required:s,validate:n=()=>!0}=t,r=ut(NL,t.theme),[i,o]=ve("idle"),[a="",c]=ve(t.default),[u,l]=ve(),[d,f]=ve(""),p=yt({status:i,theme:r});bt(async(x,D)=>{if(i==="idle")if(xt(x)){let S=d||a;o("loading");let v=s&&!S?"You must provide a value":await n(S);v===!0?(f(S),o("done"),e(S)):(r.validationFailureMode==="clear"?f(""):D.write(d),l(v||"You must provide a valid value"),o("idle"))}else ji(x)&&!d?c(void 0):x.name==="tab"&&!d?(c(void 0),D.clearLine(0),D.write(a),f(a)):(f(D.line),l(void 0))});let m=r.style.message(t.message,i),g=d;typeof t.transformer=="function"?g=t.transformer(d,{isFinal:i==="done"}):i==="done"&&(g=r.style.answer(d));let h;a&&i!=="done"&&!d&&(h=r.style.defaultAnswer(a));let y="";return u&&(y=r.style.error(u)),[[p,m,h,g].filter(x=>x!==void 0).join(" "),y]});function ML(t,e,s){let n=t*Math.pow(10,6),r=e*Math.pow(10,6),i=s*Math.pow(10,6);return(n-(Number.isFinite(s)?i:0))%r===0}function ow(t,{min:e,max:s,step:n}){return t==null||Number.isNaN(t)?!1:t<e||t>s?`Value must be between ${e} and ${s}`:n!=="any"&&!ML(t,n,e)?`Value must be a multiple of ${n}${Number.isFinite(e)?` starting from ${e}`:""}`:!0}var jL=vt((t,e)=>{let{validate:s=()=>!0,min:n=-1/0,max:r=1/0,step:i=1,required:o=!1}=t,a=ut(t.theme),[c,u]=ve("idle"),[l,d]=ve(""),f=ow(t.default,{min:n,max:r,step:i})===!0?t.default?.toString():void 0,[p="",m]=ve(f),[g,h]=ve(),y=yt({status:c,theme:a});bt(async(E,R)=>{if(c==="idle")if(xt(E)){let _=l||p,W=_===""?void 0:Number(_);u("loading");let j=!0;(o||W!=null)&&(j=ow(W,{min:n,max:r,step:i})),j===!0&&(j=await s(W)),j===!0?(d(String(W??"")),u("done"),e(W)):(R.write(l),h(j||"You must provide a valid numeric value"),u("idle"))}else ji(E)&&!l?m(void 0):E.name==="tab"&&!l?(m(void 0),R.clearLine(0),R.write(p),d(p)):(d(R.line),h(void 0))});let x=a.style.message(t.message,c),D=l;c==="done"&&(D=a.style.answer(l));let S;p&&c!=="done"&&!l&&(S=a.style.defaultAnswer(p));let v="";return g&&(v=a.style.error(g)),[[y,x,S,D].filter(E=>E!==void 0).join(" "),v]});var _h=V(Sr(),1);function $L(t){return t.map(e=>{if(ze.isSeparator(e))return e;let s="name"in e?e.name:String(e.value);return{value:"value"in e?e.value:s,name:s,key:e.key.toLowerCase()}})}var WL={key:"h",name:"Help, list all options",value:void 0},UL=vt((t,e)=>{let{default:s="h"}=t,n=ys(()=>$L(t.choices),[t.choices]),[r,i]=ve("idle"),[o,a]=ve(""),[c,u]=ve(t.expanded??!1),[l,d]=ve(),f=ut(t.theme),p=yt({theme:f,status:r});bt((v,E)=>{if(xt(v)){let R=(o||s).toLowerCase();if(R==="h"&&!c)u(!0);else{let _=n.find(W=>!ze.isSeparator(W)&&W.key===R);_?(i("done"),a(R),e(_.value)):d(o===""?"Please input a value":`"${_h.default.red(o)}" isn't an available option`)}}else a(E.line),d(void 0)});let m=f.style.message(t.message,r);if(r==="done"){let v=n.find(E=>!ze.isSeparator(E)&&E.key===o.toLowerCase());return`${p} ${m} ${f.style.answer(v.name)}`}let g=c?n:[...n,WL],h="",y=g.map(v=>ze.isSeparator(v)?"":v.key===s?v.key.toUpperCase():v.key).join("");y=` ${f.style.defaultAnswer(y)}`,c&&(y="",h=g.map(v=>{if(ze.isSeparator(v))return` ${v.separator}`;let E=` ${v.key}) ${v.name}`;return v.key===o.toLowerCase()?f.style.highlight(E):E}).join(`
183
183
  `));let x="",D=n.find(v=>!ze.isSeparator(v)&&v.key===o.toLowerCase());D&&(x=`${_h.default.cyan(">>")} ${D.name}`);let S="";return l&&(S=f.style.error(l)),[`${p} ${m}${y} ${o}`,[h,x,S].filter(Boolean).join(`
184
184
  `)]});var aw=V(Sr(),1),GL=/\d+/;function kh(t){return t!=null&&!ze.isSeparator(t)}function zL(t){let e=0;return t.map(s=>{if(ze.isSeparator(s))return s;if(e+=1,typeof s=="string")return{value:s,name:s,short:s,key:String(e)};let n=s.name??String(s.value);return{value:s.value,name:n,short:s.short??n,key:s.key??String(e)}})}var qL=vt((t,e)=>{let s=ys(()=>zL(t.choices),[t.choices]),[n,r]=ve("idle"),[i,o]=ve(""),[a,c]=ve(),u=ut(t.theme),l=yt({status:n,theme:u});bt((m,g)=>{if(xt(m)){let h;if(GL.test(i)){let y=Number.parseInt(i,10)-1;h=s.filter(kh)[y]}else h=s.find(y=>kh(y)&&y.key===i);kh(h)?(o(h.short),r("done"),e(h.value)):c(i===""?"Please input a value":`"${aw.default.red(i)}" isn't an available option`)}else o(g.line),c(void 0)});let d=u.style.message(t.message,n);if(n==="done")return`${l} ${d} ${u.style.answer(i)}`;let f=s.map(m=>{if(ze.isSeparator(m))return` ${m.separator}`;let g=` ${m.key}) ${m.name}`;return m.key===i.toLowerCase()?u.style.highlight(g):g}).join(`
185
185
  `),p="";return a&&(p=u.style.error(a)),[`${l} ${d} ${i}`,[f,p].filter(Boolean).join(`
186
- `)]});var cw=V(Nl(),1),HL=vt((t,e)=>{let{validate:s=()=>!0}=t,n=ut(t.theme),[r,i]=ve("idle"),[o,a]=ve(),[c,u]=ve(""),l=yt({status:r,theme:n});bt(async(g,h)=>{if(r==="idle")if(xt(g)){let y=c;i("loading");let x=await s(y);x===!0?(u(y),i("done"),e(y)):(h.write(c),a(x||"You must provide a valid value"),i("idle"))}else u(h.line),a(void 0)});let d=n.style.message(t.message,r),f="",p;t.mask?f=(typeof t.mask=="string"?t.mask:"*").repeat(c.length):r!=="done"&&(p=`${n.style.help("[input is masked]")}${cw.default.cursorHide}`),r==="done"&&(f=n.style.answer(f));let m="";return o&&(m=n.style.error(o)),[[l,d,t.mask?f:p].join(" "),m]});var ud=V(Sr(),1);var VL={icon:{cursor:Os.pointer},style:{disabled:t=>ud.default.dim(`- ${t}`),searchTerm:t=>ud.default.cyan(t),description:t=>ud.default.cyan(t)},helpMode:"auto"};function Ih(t){return!ze.isSeparator(t)&&!t.disabled}function KL(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1};return e.description&&(n.description=e.description),n})}var ZL=vt((t,e)=>{let{pageSize:s=7,validate:n=()=>!0}=t,r=ut(VL,t.theme),i=Bs(!0),[o,a]=ve("loading"),[c,u]=ve(""),[l,d]=ve([]),[f,p]=ve(),m=yt({status:o,theme:r}),g=ys(()=>{let W=l.findIndex(Ih),M=l.findLastIndex(Ih);return{first:W,last:M}},[l]),[h=g.first,y]=ve();on(()=>{let W=new AbortController;return a("loading"),p(void 0),(async()=>{try{let j=await t.source(c||void 0,{signal:W.signal});W.signal.aborted||(y(void 0),p(void 0),d(KL(j)),a("idle"))}catch(j){!W.signal.aborted&&j instanceof Error&&p(j.message)}})(),()=>{W.abort()}},[c]);let x=l[h];bt(async(W,M)=>{if(xt(W))if(x){a("loading");let j=await n(x.value);a("idle"),j===!0?(a("done"),e(x.value)):x.name===c?p(j||"You must provide a valid value"):(M.write(x.name),u(x.name))}else M.write(c);else if(W.name==="tab"&&x)M.clearLine(0),M.write(x.name),u(x.name);else if(o!=="loading"&&(W.name==="up"||W.name==="down")){if(M.clearLine(0),W.name==="up"&&h!==g.first||W.name==="down"&&h!==g.last){let j=W.name==="up"?-1:1,$=h;do $=($+j+l.length)%l.length;while(!Ih(l[$]));y($)}}else u(M.line)});let D=r.style.message(t.message,o);h>0&&(i.current=!1);let S="";l.length>1&&(r.helpMode==="always"||r.helpMode==="auto"&&i.current)&&(S=l.length>s?`
186
+ `)]});var cw=V(Nl(),1),HL=vt((t,e)=>{let{validate:s=()=>!0}=t,n=ut(t.theme),[r,i]=ve("idle"),[o,a]=ve(),[c,u]=ve(""),l=yt({status:r,theme:n});bt(async(g,h)=>{if(r==="idle")if(xt(g)){let y=c;i("loading");let x=await s(y);x===!0?(u(y),i("done"),e(y)):(h.write(c),a(x||"You must provide a valid value"),i("idle"))}else u(h.line),a(void 0)});let d=n.style.message(t.message,r),f="",p;t.mask?f=(typeof t.mask=="string"?t.mask:"*").repeat(c.length):r!=="done"&&(p=`${n.style.help("[input is masked]")}${cw.default.cursorHide}`),r==="done"&&(f=n.style.answer(f));let m="";return o&&(m=n.style.error(o)),[[l,d,t.mask?f:p].join(" "),m]});var ud=V(Sr(),1);var VL={icon:{cursor:Os.pointer},style:{disabled:t=>ud.default.dim(`- ${t}`),searchTerm:t=>ud.default.cyan(t),description:t=>ud.default.cyan(t)},helpMode:"auto"};function Ih(t){return!ze.isSeparator(t)&&!t.disabled}function KL(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1};return e.description&&(n.description=e.description),n})}var ZL=vt((t,e)=>{let{pageSize:s=7,validate:n=()=>!0}=t,r=ut(VL,t.theme),i=Bs(!0),[o,a]=ve("loading"),[c,u]=ve(""),[l,d]=ve([]),[f,p]=ve(),m=yt({status:o,theme:r}),g=ys(()=>{let W=l.findIndex(Ih),j=l.findLastIndex(Ih);return{first:W,last:j}},[l]),[h=g.first,y]=ve();on(()=>{let W=new AbortController;return a("loading"),p(void 0),(async()=>{try{let M=await t.source(c||void 0,{signal:W.signal});W.signal.aborted||(y(void 0),p(void 0),d(KL(M)),a("idle"))}catch(M){!W.signal.aborted&&M instanceof Error&&p(M.message)}})(),()=>{W.abort()}},[c]);let x=l[h];bt(async(W,j)=>{if(xt(W))if(x){a("loading");let M=await n(x.value);a("idle"),M===!0?(a("done"),e(x.value)):x.name===c?p(M||"You must provide a valid value"):(j.write(x.name),u(x.name))}else j.write(c);else if(W.name==="tab"&&x)j.clearLine(0),j.write(x.name),u(x.name);else if(o!=="loading"&&(W.name==="up"||W.name==="down")){if(j.clearLine(0),W.name==="up"&&h!==g.first||W.name==="down"&&h!==g.last){let M=W.name==="up"?-1:1,$=h;do $=($+M+l.length)%l.length;while(!Ih(l[$]));y($)}}else u(j.line)});let D=r.style.message(t.message,o);h>0&&(i.current=!1);let S="";l.length>1&&(r.helpMode==="always"||r.helpMode==="auto"&&i.current)&&(S=l.length>s?`
187
187
  ${r.style.help("(Use arrow keys to reveal more choices)")}`:`
188
- ${r.style.help("(Use arrow keys)")}`);let v=Ui({items:l,active:h,renderItem({item:W,isActive:M}){if(ze.isSeparator(W))return` ${W.separator}`;if(W.disabled){let L=typeof W.disabled=="string"?W.disabled:"(disabled)";return r.style.disabled(`${W.name} ${L}`)}let j=M?r.style.highlight:L=>L,$=M?r.icon.cursor:" ";return j(`${$} ${W.name}`)},pageSize:s,loop:!1}),E;f?E=r.style.error(f):l.length===0&&c!==""&&o==="idle"&&(E=r.style.error("No results found"));let T;if(o==="done"&&x){let W=x.short;return`${m} ${D} ${r.style.answer(W)}`}else T=r.style.searchTerm(c);let _=x?.description?`
189
- ${r.style.description(x.description)}`:"";return[[m,D,T].filter(Boolean).join(" "),`${E??v}${S}${_}`]});var Rh=V(Sr(),1);var uw=V(Nl(),1),YL={icon:{cursor:Os.pointer},style:{disabled:t=>Rh.default.dim(`- ${t}`),description:t=>Rh.default.cyan(t)},helpMode:"auto",indexMode:"hidden"};function aa(t){return!ze.isSeparator(t)&&!t.disabled}function JL(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1};return e.description&&(n.description=e.description),n})}var Er=vt((t,e)=>{let{loop:s=!0,pageSize:n=7}=t,r=Bs(!0),i=ut(YL,t.theme),[o,a]=ve("idle"),c=yt({status:o,theme:i}),u=Bs(),l=ys(()=>JL(t.choices),[t.choices]),d=ys(()=>{let v=l.findIndex(aa),E=l.findLastIndex(aa);if(v===-1)throw new Dr("[select prompt] No selectable choices. All choices are disabled.");return{first:v,last:E}},[l]),f=ys(()=>"default"in t?l.findIndex(v=>aa(v)&&v.value===t.default):-1,[t.default,l]),[p,m]=ve(f===-1?d.first:f),g=l[p];bt((v,E)=>{if(clearTimeout(u.current),xt(v))a("done"),e(g.value);else if(qn(v)||Mi(v)){if(E.clearLine(0),s||qn(v)&&p!==d.first||Mi(v)&&p!==d.last){let T=qn(v)?-1:1,_=p;do _=(_+T+l.length)%l.length;while(!aa(l[_]));m(_)}}else if(ac(v)&&!Number.isNaN(Number(E.line))){let T=Number(E.line)-1,_=l[T];_!=null&&aa(_)&&m(T),u.current=setTimeout(()=>{E.clearLine(0)},700)}else if(ji(v))E.clearLine(0);else{let T=E.line.toLowerCase(),_=l.findIndex(W=>ze.isSeparator(W)||!aa(W)?!1:W.name.toLowerCase().startsWith(T));_!==-1&&m(_),u.current=setTimeout(()=>{E.clearLine(0)},700)}}),on(()=>()=>{clearTimeout(u.current)},[]);let h=i.style.message(t.message,o),y="",x="";(i.helpMode==="always"||i.helpMode==="auto"&&r.current)&&(r.current=!1,l.length>n?x=`
190
- ${i.style.help("(Use arrow keys to reveal more choices)")}`:y=i.style.help("(Use arrow keys)"));let D=Ui({items:l,active:p,renderItem({item:v,isActive:E,index:T}){if(ze.isSeparator(v))return` ${v.separator}`;let _=i.indexMode==="number"?`${T+1}. `:"";if(v.disabled){let j=typeof v.disabled=="string"?v.disabled:"(disabled)";return i.style.disabled(`${_}${v.name} ${j}`)}let W=E?i.style.highlight:j=>j,M=E?i.icon.cursor:" ";return W(`${M} ${_}${v.name}`)},pageSize:n,loop:s});if(o==="done")return`${c} ${h} ${i.style.answer(g.short)}`;let S=g.description?`
188
+ ${r.style.help("(Use arrow keys)")}`);let v=Ui({items:l,active:h,renderItem({item:W,isActive:j}){if(ze.isSeparator(W))return` ${W.separator}`;if(W.disabled){let L=typeof W.disabled=="string"?W.disabled:"(disabled)";return r.style.disabled(`${W.name} ${L}`)}let M=j?r.style.highlight:L=>L,$=j?r.icon.cursor:" ";return M(`${$} ${W.name}`)},pageSize:s,loop:!1}),E;f?E=r.style.error(f):l.length===0&&c!==""&&o==="idle"&&(E=r.style.error("No results found"));let R;if(o==="done"&&x){let W=x.short;return`${m} ${D} ${r.style.answer(W)}`}else R=r.style.searchTerm(c);let _=x?.description?`
189
+ ${r.style.description(x.description)}`:"";return[[m,D,R].filter(Boolean).join(" "),`${E??v}${S}${_}`]});var Rh=V(Sr(),1);var uw=V(Nl(),1),YL={icon:{cursor:Os.pointer},style:{disabled:t=>Rh.default.dim(`- ${t}`),description:t=>Rh.default.cyan(t)},helpMode:"auto",indexMode:"hidden"};function aa(t){return!ze.isSeparator(t)&&!t.disabled}function JL(t){return t.map(e=>{if(ze.isSeparator(e))return e;if(typeof e=="string")return{value:e,name:e,short:e,disabled:!1};let s=e.name??String(e.value),n={value:e.value,name:s,short:e.short??s,disabled:e.disabled??!1};return e.description&&(n.description=e.description),n})}var Er=vt((t,e)=>{let{loop:s=!0,pageSize:n=7}=t,r=Bs(!0),i=ut(YL,t.theme),[o,a]=ve("idle"),c=yt({status:o,theme:i}),u=Bs(),l=ys(()=>JL(t.choices),[t.choices]),d=ys(()=>{let v=l.findIndex(aa),E=l.findLastIndex(aa);if(v===-1)throw new Dr("[select prompt] No selectable choices. All choices are disabled.");return{first:v,last:E}},[l]),f=ys(()=>"default"in t?l.findIndex(v=>aa(v)&&v.value===t.default):-1,[t.default,l]),[p,m]=ve(f===-1?d.first:f),g=l[p];bt((v,E)=>{if(clearTimeout(u.current),xt(v))a("done"),e(g.value);else if(qn(v)||Mi(v)){if(E.clearLine(0),s||qn(v)&&p!==d.first||Mi(v)&&p!==d.last){let R=qn(v)?-1:1,_=p;do _=(_+R+l.length)%l.length;while(!aa(l[_]));m(_)}}else if(ac(v)&&!Number.isNaN(Number(E.line))){let R=Number(E.line)-1,_=l[R];_!=null&&aa(_)&&m(R),u.current=setTimeout(()=>{E.clearLine(0)},700)}else if(ji(v))E.clearLine(0);else{let R=E.line.toLowerCase(),_=l.findIndex(W=>ze.isSeparator(W)||!aa(W)?!1:W.name.toLowerCase().startsWith(R));_!==-1&&m(_),u.current=setTimeout(()=>{E.clearLine(0)},700)}}),on(()=>()=>{clearTimeout(u.current)},[]);let h=i.style.message(t.message,o),y="",x="";(i.helpMode==="always"||i.helpMode==="auto"&&r.current)&&(r.current=!1,l.length>n?x=`
190
+ ${i.style.help("(Use arrow keys to reveal more choices)")}`:y=i.style.help("(Use arrow keys)"));let D=Ui({items:l,active:p,renderItem({item:v,isActive:E,index:R}){if(ze.isSeparator(v))return` ${v.separator}`;let _=i.indexMode==="number"?`${R+1}. `:"";if(v.disabled){let M=typeof v.disabled=="string"?v.disabled:"(disabled)";return i.style.disabled(`${_}${v.name} ${M}`)}let W=E?i.style.highlight:M=>M,j=E?i.icon.cursor:" ";return W(`${j} ${_}${v.name}`)},pageSize:n,loop:s});if(o==="done")return`${c} ${h} ${i.style.answer(g.short)}`;let S=g.description?`
191
191
  ${i.style.description(g.description)}`:"";return`${[c,h,y].filter(Boolean).join(" ")}
192
192
  ${D}${x}${S}${uw.default.cursorHide}`});var Th=V(require("node:crypto")),ld=V(require("node:fs")),Fr=V(require("node:os")),Zn=V(require("node:path")),QL=()=>{let t=process.cwd();for(;t!==Zn.parse(t).root;){let e=Zn.join(t,".git");if(ld.existsSync(e)&&ld.lstatSync(e).isDirectory())return Zn.basename(t);t=Zn.dirname(t)}return Zn.basename(process.cwd())},lw=QL(),XL=t=>t?Th.createHash("sha256").update(t).digest("hex").slice(0,16):"anonymous",dd=t=>{let e=XL(t),s=JSON.stringify({hostname:Fr.hostname(),username:Fr.userInfo().username,platform:Fr.platform(),homedir:Fr.homedir(),project:lw,userHash:e});return{project:lw,fingerprint:Th.createHash("sha256").update(s).digest("hex")}};var ca=V(require("node:fs")),pd=V(require("node:path"));var dw=()=>{let t=pd.resolve(process.cwd(),"cdk.out");if(!ca.existsSync(t))return xe.warn(`cdk.out directory not found at ${t}`),[];let e=ca.readdirSync(t),s=[];for(let n of e){if(!n.endsWith(".template.json")||n.includes(".nested"))continue;let r=pd.join(t,n);try{let i=JSON.parse(ca.readFileSync(r,"utf-8")),o;i.Metadata?.["aws:cdk:stack-name"]&&(o=i.Metadata["aws:cdk:stack-name"]),o||(o=n.replace(".template.json","")),s.push(o)}catch(i){xe.warn(`Could not parse ${r}`,{error:i instanceof Error?i.message:String(i)})}}return Array.from(new Set(s)).sort()};var ua={CRITICAL:"\u{1F534}",HIGH:"\u{1F7E0}",MEDIUM:"\u{1F7E1}",LOW:"\u{1F7E2}"},e7=t=>t.reduce((e,s)=>(e[s.severity]=(e[s.severity]||0)+1,e),{CRITICAL:0,HIGH:0,MEDIUM:0,LOW:0}),Ph=t=>{let{stackNames:e,resourceCount:s,issues:n,reportUrl:r,aiEnabled:i,tier:o}=t,a=e7(n),c=n.length,u=e.length===1?e[0]:`${e.length} stacks`,l=[];l.push("<!-- cdk-insights-pr-comment -->"),l.push(""),l.push("## \u{1F50D} CDK Insights Analysis"),l.push("");let d=i?"AI-powered":"Static";l.push(`**Stack:** ${u} | **Resources:** ${s} | **Issues:** ${c} | **Analysis:** ${d}`),l.push(""),l.push("### Summary by Severity"),l.push(""),l.push("| Severity | Count |"),l.push("|----------|-------|"),l.push(`| ${ua.CRITICAL} Critical | ${a.CRITICAL} |`),l.push(`| ${ua.HIGH} High | ${a.HIGH} |`),l.push(`| ${ua.MEDIUM} Medium | ${a.MEDIUM} |`),l.push(`| ${ua.LOW} Low | ${a.LOW} |`),l.push("");let f=n.filter(m=>m.severity==="CRITICAL"||m.severity==="HIGH").slice(0,5);f.length>0&&(l.push("### Top Issues"),l.push(""),f.forEach((m,g)=>{let h=ua[m.severity],y=m.issue.length>80?`${m.issue.substring(0,77)}...`:m.issue,x=m.constructPath||m.resourceId,D=m.recommendation?m.recommendation.split(".")[0]:"";l.push(`${g+1}. **${y}** ${h}`),l.push(` \`${x}\`${D?` - ${D}`:""}`),l.push("")})),c>5&&(l.push("<details>"),l.push(`<summary>View all ${c} issues</summary>`),l.push(""),l.push("| Severity | Resource | Issue |"),l.push("|----------|----------|-------|"),n.forEach(m=>{let g=ua[m.severity],h=m.constructPath||m.resourceId,y=h.length>40?`...${h.slice(-37)}`:h,x=m.issue.length>60?`${m.issue.substring(0,57)}...`:m.issue;l.push(`| ${g} ${m.severity} | \`${y}\` | ${x} |`)}),l.push(""),l.push("</details>"),l.push("")),c===0&&(l.push("\u2705 **No issues found!** Your CDK stack follows best practices."),l.push("")),l.push("---");let p=["*Analysis by [CDK Insights](https://cdkinsights.dev)*"];return r&&p.push(`*[View full report](${r})*`),o==="free"&&p.push("*[Upgrade to Pro](https://cdkinsights.dev/pricing) for AI-powered recommendations*"),l.push(p.join(" \u2022 ")),l.join(`
193
193
  `)};var fw=require("node:child_process"),xd=V(require("node:fs")),mw=V(require("node:os")),hw=V(require("node:path")),gw=require("node:util");var fd=V(require("node:fs")),md=()=>{let t=process.env.GITHUB_ACTIONS==="true";if(!t)return{isGitHubActions:!1,isPullRequest:!1};let e=process.env.GITHUB_EVENT_NAME,s=e==="pull_request"||e==="pull_request_target",n=process.env.GITHUB_REPOSITORY,[r,i]=n?.split("/")||[],o,a,c,u=process.env.GITHUB_EVENT_PATH;if(u&&fd.existsSync(u))try{let l=JSON.parse(fd.readFileSync(u,"utf8"));o=l.pull_request?.number||l.number,a=l.pull_request?.base?.ref,c=l.pull_request?.head?.ref}catch{}if(!o&&process.env.GITHUB_REF){let l=process.env.GITHUB_REF.match(/refs\/pull\/(\d+)\//);l&&(o=Number.parseInt(l[1],10))}return{isGitHubActions:t,isPullRequest:s,prNumber:o,repoOwner:r,repoName:i,repository:n,commitSha:process.env.GITHUB_SHA,baseRef:a,headRef:c,eventName:e}},hd=()=>{let t=md();return t.isGitHubActions&&t.isPullRequest&&t.prNumber!==void 0&&t.repository!==void 0};var gd=(0,gw.promisify)(fw.exec),t7="<!-- cdk-insights-pr-comment -->",s7=async t=>{if(!t.repository||!t.prNumber)return null;try{let{stdout:e}=await gd(`gh api repos/${t.repository}/issues/${t.prNumber}/comments --jq '.[] | select(.body | contains("${t7}")) | {id: .id, body: .body}'`);if(e.trim()){let s=e.trim().split(`
194
194
  `).filter(Boolean);if(s.length>0)return JSON.parse(s[0])}}catch(e){H.debug("No existing CDK Insights comment found",{error:e})}return null},Oh=async t=>{let{data:e,updateExisting:s=!0}=t;if(!hd()){let i=md();return i.isGitHubActions?i.isPullRequest?{success:!1,error:"Missing required PR context (repository or PR number)"}:{success:!1,error:`PR comments require a pull_request event (current: ${i.eventName})`}:{success:!1,error:"PR comments are only supported in GitHub Actions environment"}}let n=md(),r=Ph(e);try{try{await gd("gh --version")}catch{return{success:!1,error:"GitHub CLI (gh) is not installed or not in PATH"}}if(s){let o=await s7(n);if(o)return H.debug("Updating existing PR comment",{commentId:o.id}),{success:!0,commentUrl:await pw(r,async c=>{let{stdout:u}=await gd(`gh api repos/${n.repository}/issues/comments/${o.id} -X PATCH -F body=@${c} --jq '.html_url'`);return u.trim()})}}return H.debug("Creating new PR comment",{prNumber:n.prNumber}),await pw(r,async o=>{await gd(`gh pr comment ${n.prNumber} --body-file ${o} --repo ${n.repository}`)}),{success:!0,commentUrl:`https://github.com/${n.repository}/pull/${n.prNumber}`}}catch(i){let o=i instanceof Error?i.message:String(i);return H.error("Failed to post PR comment",{error:o}),{success:!1,error:`Failed to post PR comment: ${o}`}}},pw=async(t,e)=>{let s=hw.join(mw.tmpdir(),`cdk-insights-pr-comment-${Date.now()}.md`);try{return xd.writeFileSync(s,t,"utf-8"),await e(s)}finally{try{xd.unlinkSync(s)}catch{}}};var zs=V(require("node:fs")),Gs=V(require("node:path"));var Us=new Map,Lh=3e4,xw=500,n7=()=>{if(Us.size<=xw)return;let e=Array.from(Us.entries()).sort((s,n)=>s[1].timestamp-n[1].timestamp).slice(0,Us.size-xw);for(let[s]of e)Us.delete(s)},Bh=t=>{let e=Us.get(t);if(e&&Date.now()-e.timestamp<Lh)return e.content;try{let s=zs.readFileSync(t,"utf-8");return n7(),Us.set(t,{content:s,timestamp:Date.now()}),s}catch{return null}},yw=(t,e=process.cwd())=>{try{let s=t.split("/").pop()||"",n=[s.replace(/Resource$/,""),s.replace(/Construct$/,""),s.replace(/Stack$/,""),s.replace(/[A-F0-9]{8,10}$/,""),s.replace(/[A-F0-9]{8}$/,""),s.replace(/[A-F0-9]{10}$/,""),s].filter(i=>i.length>2),r=[Gs.join(e,"src"),Gs.join(e,"lib"),Gs.join(e,"cdk"),e];for(let i of r){if(!zs.existsSync(i))continue;let o=Nh(i);for(let a of o){let c=Bh(a);if(c){for(let u of n)if(u&&u.length>2){let l=[new RegExp(`new\\s+(\\w+)\\s*\\(\\s*this\\s*,\\s*['"]${u}['"]`,"g"),new RegExp(`new\\s+(\\w+)\\s*\\(\\s*this\\s*,\\s*["']${u}["']`,"g"),new RegExp(`new\\s+(\\w+)\\s*\\(\\s*this\\s*,\\s*\`${u}\``,"g"),new RegExp(`new\\s+(\\w+)\\s*\\(\\s*this\\s*,\\s*${u}\\b`,"g"),new RegExp(`(\\w+)\\s*\\(\\s*this\\s*,\\s*['"]${u}['"]`,"g")];for(let d of l){let f=c.match(d);if(f){let p=c.split(`
195
195
  `);for(let m=0;m<p.length;m++){let g=p[m];if(g.includes("this")&&d.test(g)){let h=f[1]||"Unknown";return{filePath:Gs.relative(e,a),line:m+1,column:g.indexOf("new")+1,constructType:h}}}}}}}}}}catch{}return null},Nh=t=>{let e=[],s=`ts_files_${t}`,n=Us.get(s);if(n&&Date.now()-n.timestamp<Lh)try{return JSON.parse(n.content)}catch{Us.delete(s)}try{let r=zs.readdirSync(t);for(let i of r){let o=Gs.join(t,i),a=zs.statSync(o);a.isDirectory()&&!i.startsWith(".")&&i!=="node_modules"&&i!=="dist"&&i!=="build"&&i!==".git"?e.push(...Nh(o)):a.isFile()&&i.endsWith(".ts")&&!i.endsWith(".d.ts")&&e.push(o)}Us.set(s,{content:JSON.stringify(e),timestamp:Date.now()})}catch{}return e},r7=t=>{let e=[],s=`stack_files_${t}`,n=Us.get(s);if(n&&Date.now()-n.timestamp<Lh)try{return JSON.parse(n.content)}catch{Us.delete(s)}try{let r=zs.readdirSync(t);for(let i of r){let o=Gs.join(t,i),a=zs.statSync(o);if(a.isDirectory()&&!i.startsWith(".")&&i!=="node_modules"&&i!=="dist")(i==="cdk"||i==="lib"||i==="src")&&e.push(...Nh(o));else if(a.isFile()&&i.endsWith(".ts")&&!i.endsWith(".d.ts")){let c=Bh(o);c?.includes("Stack")&&c.includes("extends")&&e.push(o)}}Us.set(s,{content:JSON.stringify(e),timestamp:Date.now()})}catch{}return e};var bw=(t,e)=>{let s=Array.isArray(t)?t.map(String):typeof t=="string"?[t]:[],n=null;for(let r of s){if(r.includes("/dist/")||r.includes("\\dist\\"))continue;let i=[/(\/.*?\.ts):(\d+):(\d+)/,/at (.*?\.ts):(\d+):(\d+)/,/\((.*?\.ts):(\d+):(\d+)\)/,/(\/.*?\.tsx):(\d+):(\d+)/,/at (.*?\.tsx):(\d+):(\d+)/,/\((.*?\.tsx):(\d+):(\d+)\)/,/(\/.*?\.js):(\d+):(\d+)/,/at (.*?\.js):(\d+):(\d+)/,/\((.*?\.js):(\d+):(\d+)\)/];for(let o of i){let a=r.match(o);if(a){let[,c,u,l]=a,d=c.split(".").pop()?.toLowerCase()??"";if(d==="ts"||d==="tsx")return{filePath:c.startsWith("/")?c:`./${c}`,line:Number(u),column:Number(l)};d==="js"&&!n&&(n={filePath:c.startsWith("/")?c:`./${c}`,line:Number(u),column:Number(l)})}}}return n},yd=(t,e,s=process.cwd())=>{try{if(t&&typeof t=="object"&&"artifacts"in t){let c=t,u=e,l={};for(let p of Object.values(c.artifacts??{}))if(p.metadata)for(let[m,g]of Object.entries(p.metadata))l[m]=g;let d=Object.entries(l).filter(([,p])=>p.some(m=>m.type==="aws:cdk:logicalId"&&m.data===u));for(let[p,m]of d){let g=m.find(y=>y.type==="aws:cdk:info"&&typeof y.data=="string"&&y.data.startsWith("cdk-insights::"));if(g)try{let y=JSON.parse(g.data.replace("cdk-insights::",""));if(y.sourceLocation)return{filePath:y.sourceLocation.filePath,line:y.sourceLocation.line||1,column:y.sourceLocation.column||1,constructPath:p,stackName:p.split("/")[0]||"",logicalId:u,confidence:"high"}}catch{}let h=m.find(y=>y.type==="aws:cdk:cloudformation:stack-trace");if(h){let y=bw(h.data,p);if(y?.filePath){let x=Gs.resolve(s,y.filePath);if(zs.existsSync(x))return{...y,line:y.line??1,column:y.column??1,constructPath:p,stackName:p.split("/")[0]||"",logicalId:u,confidence:"high"}}}}for(let[p]of d){let m=yw(p,s);if(m)return{...m,line:m.line??1,column:m.column??1,constructPath:p,stackName:p.split("/")[0]||"",logicalId:u,confidence:"medium"}}let f=d[0]?.[0]||u;return vw(f,u,s)}let r=t,i=e,o=bw(r,i);if(o?.filePath){let c=Gs.resolve(s,o.filePath);if(zs.existsSync(c))return{...o,line:o.line??1,column:o.column??1,constructPath:i,confidence:"high"}}let a=yw(i,s);return a?{...a,line:a.line??1,column:a.column??1,constructPath:i,confidence:"medium"}:vw(i,i,s)}catch{return{filePath:e,line:1,column:1,constructPath:e,confidence:"low"}}},vw=(t,e,s)=>{let n=t.split("/").pop()||"",r=t.split("/")[0]||"",i=r7(s);for(let o of i)try{let a=Bh(o);if(!a)continue;let c=a.split(`
196
- `);for(let u=0;u<c.length;u++){let l=c[u];if(l.includes("new")&&l.includes("this")&&(l.includes(n)||l.includes(r)))return{filePath:Gs.relative(s,o),line:u+1,column:l.indexOf("new")+1,constructPath:t,stackName:r,logicalId:e,confidence:"low"}}}catch{}return{filePath:t,line:1,column:1,constructPath:t,stackName:r,logicalId:e,confidence:"low"}};var bd=V(require("node:fs")),Dw=V(require("node:path")),la=t=>{let e=Dw.join(t,"manifest.json");if(!bd.existsSync(e))return{};try{return JSON.parse(bd.readFileSync(e,"utf-8"))}catch{return{}}};var i7=(t,e)=>t?!!(e?.startsWith("AWS::CDK::")||e?.startsWith("Cfn")||t.endsWith("/Resource")||t==="Resource"||t.includes("Asset")||t.includes("CustomResource")):!1,Sw=(t,e,s,n,r)=>{let i=la("cdk.out");return Object.entries(t).reduce((o,[a,c])=>{let u=Object.keys(e).find(Q=>e[Q]===a)??c.cdkPath,l=s[a]?.__constructType??n.Resources?.[a]?.Type??"",d=r[a]?.githubUrl,f=r[a]?.docUrl,p=r[a]?.constructName,m=i7(u,l),g=s[a]?.displayName,h=g??s[a]?.__friendlyName??u.split("/").pop()??a,y=g??u??c.locationHint,x=yd(i,a),D=[...c.sources?.cdkInsights?.issues??[],...c.sources?.cdkNag?.issues??[]].map(Q=>({...Q,locationHint:y,githubUrl:d,docUrl:f,constructName:p,...x?.filePath&&{sourceLocation:{filePath:x.filePath,line:x.line||1,column:x.column||1,confidence:x.confidence||"low"}},stackName:x?.stackName,stackId:x?.stackName,timestamp:new Date().toISOString()})),S=D.filter(Q=>Q.foundBy!=="cdkNag"),v=D.filter(Q=>Q.foundBy==="cdkNag"),E=s[a],T=c.parentPath||E?.__parentPath,_=c.childCount??E?.__childCount,W=c.tags||E?.__tags,M=c.sourceLocation||E?.__sourceLocation,j=c.constructHierarchy||E?.__constructHierarchy,$=c.serviceCategory||E?.__serviceCategory,L=c.dependencies||E?.__dependencies,z=c.sensitiveProperties||E?.__sensitiveProperties,C=c.usesDefaults??E?.__usesDefaults,B=c.l2ConstructType||E?.__l2ConstructType,N=c.l2ConstructId||E?.__l2ConstructId,K=c.createdBy||E?.__createdBy,me=c.rootSourceLocation||E?.__rootSourceLocation,Z=c.searchHint||E?.__searchHint,J=M?{filePath:M.filePath,line:M.line,column:M.column,endLine:M.endLine,endColumn:M.endColumn,confidence:M.confidence||"high",method:M.method,enclosingScope:M.enclosingScope,codeSnippet:M.codeSnippet}:x?.filePath?{filePath:x.filePath,line:x.line||1,column:x.column||1,confidence:x.confidence||"low"}:void 0;return o[a]={...c,resourceId:a,displayName:g,cdkPath:u,friendlyName:h,locationHint:y,constructName:p,githubUrl:d,docUrl:f,isGenerated:m,type:l,constructType:l,parentPath:T,childCount:_,tags:W,sourceLocation:J,constructHierarchy:j,logicalId:a,serviceCategory:$,dependencies:L,sensitiveProperties:z,usesDefaults:C,l2ConstructType:B,l2ConstructId:N,createdBy:K,rootSourceLocation:me,searchHint:Z,sources:{cdkInsights:{issues:S},cdkNag:{issues:v}}},o},{})};var o7=new Set(["AwsSolutions-IAM4","AwsSolutions-IAM5","AwsSolutions-S1","AwsSolutions-S2","AwsSolutions-S3","AwsSolutions-S10","AwsSolutions-RDS2","AwsSolutions-RDS6","AwsSolutions-RDS10","AwsSolutions-EC23","AwsSolutions-EC26","AwsSolutions-ECS4","AwsSolutions-COG2","AwsSolutions-COG3","AwsSolutions-ELB2","AwsSolutions-KMS5","AwsSolutions-L1","AwsSolutions-SMG4","AwsSolutions-DDB3","AwsSolutions-CB4"]),Dc={AwsSolutions:"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#awssolutions-rules","HIPAA.Security":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#hipaasecurity-rules","NIST.800.53.R4":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#nist-80053-rules","NIST.800.53.R5":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#nist-80053-rules","PCI.DSS.321":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#pcidss-rules"},Cw={IAM:"Security",S:"Security",EC:"Security",VPC:"Security",KMS:"Security",SMG:"Security",COG:"Security",CFR:"Security",ELB:"Security",RDS:"Security",DDB:"Security",SQS:"Security",SNS:"Security",L:"Security",ECS:"Security",EKS:"Security",CB:"Security",ATH:"Security",OS:"Security",RS:"Security",TS:"Security",QL:"Security",APS:"Security",DOC:"Security",EFS:"Security",GL:"Security",KDF:"Security",KDS:"Security",LEX:"Security",MSK:"Security",N:"Security",QS:"Security",EMR:"Security",AS:"Reliability",AEC:"Reliability",KDA:"Reliability",CW:"Operational Excellence",CT:"Operational Excellence",SF:"Operational Excellence",EB:"Operational Excellence",ASC:"Operational Excellence",MS:"Operational Excellence",EVB:"Operational Excellence",C91:"Security"},ww=t=>t.match(/^((?:AwsSolutions|HIPAA\.Security|NIST\.800\.53\.R[45]|PCI\.DSS\.321)-[A-Z0-9]+)/i)?.[1],a7=t=>t.match(/-([A-Z]+)\d*$/i)?.[1]?.toUpperCase(),vd=(t,e)=>{if(e&&o7.has(e))return"CRITICAL";switch(t){case"aws:cdk:error":return"HIGH";case"aws:cdk:warning":return"MEDIUM";case"aws:cdk:info":return"LOW";default:return"HIGH"}},Dd=t=>{if(!t)return"Security";let e=a7(t);return e&&Cw[e]?Cw[e]:"Security"},Aw=t=>{if(t){if(t.startsWith("AwsSolutions-"))return Dc.AwsSolutions;if(t.startsWith("HIPAA.Security-"))return Dc["HIPAA.Security"];if(t.startsWith("NIST.800.53.R4-"))return Dc["NIST.800.53.R4"];if(t.startsWith("NIST.800.53.R5-"))return Dc["NIST.800.53.R5"];if(t.startsWith("PCI.DSS.321-"))return Dc["PCI.DSS.321"]}},Ew=t=>t.startsWith("AwsSolutions-")||t.startsWith("HIPAA.Security-")||t.startsWith("NIST.800.53.R")||t.startsWith("PCI.DSS.321-");var Fw=(t,e)=>{let s=/\[([^\]]*)\]\s*\[([^\]]*)\]\s*\[([^\]]*)\]/g,n=[],r=s.exec(t);for(;r!==null;){let i=r[1]??"",o=r[2],a=r[3];if(o&&a){let c=e[i]??i;n.push({resourceId:c,issue:a,severity:vd("inline",o),wafPillar:Dd(o),foundBy:"cdkNag",constructPath:i,ruleId:o})}r=s.exec(t)}return n};var _w=(t,e)=>e?Object.entries(t).reduce((s,[n,r])=>(s[n]={...r,__description:r.__description||e[n]},s),{}):{...t};var kw="2.2.0",c7=(t,e)=>{let s=t.split(".").map(Number),n=e.split(".").map(Number);for(let r=0;r<Math.max(s.length,n.length);r++){let i=s[r]||0,o=n[r]||0;if(i!==o)return i-o}return 0},u7=(t,e)=>{if(!t){xe.debug("Legacy cdk-insights metadata found (no version field)",{constructPath:e});return}c7(t,kw)<0&&xe.debug(`Metadata version ${t} is older than expected ${kw}`,{constructPath:e,hint:"Consider re-running cdk synth with the latest cdk-insights aspect"})},Iw=(t,e,s,n,r)=>{try{let i=t.artifacts??{},a=(i[n]||i[`${n}.template.json`])?.metadata??{},c={...e},u={...s};for(let[d,{githubUrl:f,docUrl:p}]of Object.entries(r))if(f||p){let m=u[d]||{};u[d]={...m,...f&&{__github:f},...p&&{__docs:p}}}for(let[d,f]of Object.entries(a)){let p=f.find(y=>y.type==="aws:cdk:logicalId"&&typeof y.data=="string");if(!p)continue;let m=p.data,g=d.startsWith("/")?d.slice(1):d;c[g]=m;let h=f.find(y=>y.type==="aws:cdk:info"&&typeof y.data=="string"&&y.data.startsWith("cdk-insights::"));if(h)try{let y=JSON.parse(h.data.replace("cdk-insights::","")),{friendlyName:x,constructType:D,description:S,stackId:v,sourceLocation:E,parentPath:T,childCount:_,tags:W,version:M,logicalId:j,constructHierarchy:$,serviceCategory:L,dependencies:z,sensitiveProperties:C,usesDefaults:B,l2ConstructType:N,l2ConstructId:K,createdBy:me,rootSourceLocation:Z,searchHint:J}=y;u7(M,d);let Q={...u[m]};x&&(Q.__friendlyName=x),D&&(Q.__constructType=D),S&&(Q.__description=S),v&&(Q.__stackId=n),E&&(Q.__sourceLocation=E),T&&(Q.__parentPath=T),_!==void 0&&(Q.__childCount=_),W&&Object.keys(W).length>0&&(Q.__tags=W),M&&(Q.__metadataVersion=M),j&&(Q.__logicalId=j),$?.length>0&&(Q.__constructHierarchy=$),L&&(Q.__serviceCategory=L),z?.length>0&&(Q.__dependencies=z),C?.length>0&&(Q.__sensitiveProperties=C),B!==void 0&&(Q.__usesDefaults=B),N&&(Q.__l2ConstructType=N),K&&(Q.__l2ConstructId=K),me&&(Q.__createdBy=me),Z&&(Q.__rootSourceLocation=Z),J&&(Q.__searchHint=J),u[m]=Q}catch(y){xe.warn(`Failed to parse cdk-insights metadata for ${d}:`,{error:y})}}let l={};for(let[d,f]of Object.entries(a)){let p=f.find(D=>D.type==="aws:cdk:logicalId"&&typeof D.data=="string");if(!p)continue;let m=p.data,g=[],h=f.find(D=>D.type==="aws:cdk:info"&&typeof D.data=="string"&&D.data.startsWith("cdk-insights::"));if(h)try{let D=JSON.parse(h.data.replace("cdk-insights::",""));Array.isArray(D.issues)&&(g=D.issues.map(S=>({resourceId:S.resourceId,issue:S.issue,recommendation:S.recommendation,severity:S.severity,wafPillar:S.wafPillar,foundBy:"cdkInsights",constructPath:d,stackId:u[m]?.__stackId,constructType:u[m]?.__constructType,githubUrl:s[m]?.__github,docUrl:s[m]?.__docs})))}catch(D){xe.warn(`Failed to parse cdk-insights metadata for ${d}:`,{error:D})}let y=f.filter(D=>(D.type==="aws:cdk:error"||D.type==="aws:cdk:warning")&&typeof D.data=="string"&&Ew(D.data)).map(D=>{let S=D.data,v=ww(S),E=vd(D.type,v);return{resourceId:m,issue:S,recommendation:void 0,severity:E,wafPillar:Dd(v),foundBy:"cdkNag",constructPath:d,ruleId:v,stackId:u[m]?.__stackId,constructType:u[m]?.__constructType,githubUrl:s[m]?.__github,docUrl:Aw(v)||s[m]?.__docs}}),x=u[m];l[m]={resourceId:m,friendlyName:x?.__friendlyName||m,cdkPath:d,locationHint:d,type:s[m]?.Type,isGenerated:!1,constructType:x?.__constructType,parentPath:x?.__parentPath,childCount:x?.__childCount,tags:x?.__tags,sourceLocation:x?.__sourceLocation,logicalId:m,constructHierarchy:x?.__constructHierarchy,serviceCategory:x?.__serviceCategory,dependencies:x?.__dependencies,sensitiveProperties:x?.__sensitiveProperties,usesDefaults:x?.__usesDefaults,l2ConstructType:x?.__l2ConstructType,l2ConstructId:x?.__l2ConstructId,createdBy:x?.__createdBy,rootSourceLocation:x?.__rootSourceLocation,searchHint:x?.__searchHint,sources:{cdkInsights:{issues:g},cdkNag:{issues:y}}}}if(Object.keys(l).length===0)for(let d of Object.keys(u))l[d]={resourceId:d,friendlyName:d,cdkPath:d,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}};return{pathToLogicalId:c,unifiedResourceMap:u,resourceIdMetadata:r,recommendationMap:l}}catch(i){return xe.error("\u26A0\uFE0F Failed to parse manifest.json for logical ID mappings:",{error:i}),xe.warn("Unknown error in parseManifestMetadata",{error:i}),{pathToLogicalId:e,unifiedResourceMap:s,resourceIdMetadata:r,recommendationMap:{}}}};var Yn=V(require("node:fs")),Sd=V(require("node:path"));function l7(t){let e=Sd.join(t,"manifest.json");if(!Yn.existsSync(e))return{};let s=JSON.parse(Yn.readFileSync(e,"utf8")),n={};for(let r of Object.values(s.artifacts)){if(r.type!=="cdk:asset-manifest")continue;let i=r.properties.file,o=Sd.join(t,i);if(!Yn.existsSync(o))continue;let a=JSON.parse(Yn.readFileSync(o,"utf8"));for(let[c,u]of Object.entries(a.files||{}))n[c]=u.displayName}return n}function Rw(t){let e={},s={},n={},r={},i=l7(t),o=Yn.readdirSync(t).filter(a=>a.endsWith(".template.json"));for(let a of o){let c=a.replace(/\.template\.json$/,""),u=JSON.parse(Yn.readFileSync(Sd.join(t,a),"utf8"));e[c]=u;for(let[l,d]of Object.entries(u.Resources||{})){if(new Set(["CDKMetadata","BootstrapVersion","CheckBootstrapVersion"]).has(l)||d.Type?.startsWith("AWS::CDK::")||d.Type==="AWS::SSM::Parameter")continue;let p={...d,displayName:l},m=p.Metadata??{};typeof m["aws:cdk:path"]=="string"&&(s[m["aws:cdk:path"]]=l);let g=m["aws:asset:path"],h=typeof g=="string"?g.replace(/^asset\./,""):void 0;if(h&&i[h])p.displayName=i[h];else if(typeof m["aws:cdk:path"]=="string"){let y=m["aws:cdk:path"].split("/"),x=y[y.length-1],D=x==="Resource"&&y.length>1?y[y.length-2]:x;p.displayName=D}n[l]=p,r[l]=p.displayName??l}}return{stacks:e,pathToLogicalId:s,unifiedResourceMap:n,displayNameMap:r,assetSourcePaths:Object.fromEntries(Object.entries(n).filter(([,a])=>a.Metadata?.["aws:asset:path"]).map(([a,c])=>[a,c.Metadata["aws:asset:path"]]))}}var Cd=V(require("node:fs"));var Tw=t=>{let e="https://github.com/aws/aws-cdk/blob/main/packages",s="https://docs.aws.amazon.com/cdk/api/v2/docs",n=t.split(".");if(n.length<3)return{githubUrl:null,docUrl:null,constructName:null};let[,r,...i]=n,o=`${e}/aws-cdk-lib/${r}/lib/${i.join("/")}.ts`,a=`${s}/${t}.html`;return{githubUrl:o,docUrl:a,constructName:i[0]}};var Pw=(t,e)=>{let s=`${t}/tree.json`;if(!Cd.existsSync(s))return{pathToLogicalId:e,resourceIdMetadata:{}};let n=JSON.parse(Cd.readFileSync(s,"utf-8")),i=(n.tree?.children?Object.values(n.tree.children):[n]).map(l=>({node:l,parentPath:""})),o=[];for(;i.length;){let l=i.pop();if(!l)continue;let{node:d,parentPath:f}=l,p=f?`${f}/${d.id}`:d.id,m=p.replace(/^\/+/,""),g=e[m],h=d.constructInfo?.fqn,y=d.attributes?.["aws:cdk:cloudformation:props"],x=y&&typeof y.description=="string"?y.description:void 0;if(o.push({logicalId:g,path:p,fqn:h,description:x}),d.children)for(let D of Object.values(d.children))i.push({node:D,parentPath:p})}let a={},c={},u={};for(let{logicalId:l,path:d,fqn:f,description:p}of o)if(l){if(a[d]=l,f){let{githubUrl:m,docUrl:g,constructName:h}=Tw(f);m&&(c[l]||(c[l]={githubUrl:"",docUrl:"",constructName:""}),c[l].githubUrl=m),g&&(c[l]||(c[l]={githubUrl:"",docUrl:"",constructName:""}),c[l].docUrl=g,h&&(c[l].constructName=h))}p&&(u[l]=p)}return{pathToLogicalId:{...e,...a},resourceIdMetadata:c,autoGeneratedDescriptions:u}};var Jh=require("node:child_process"),Qh=V(require("node:fs")),Xh=V(require("node:path"));var Ow=(t=0)=>e=>`\x1B[${e+t}m`,Lw=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Bw=(t=0)=>(e,s,n)=>`\x1B[${38+t};2;${e};${s};${n}m`,at={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},RZ=Object.keys(at.modifier),d7=Object.keys(at.color),p7=Object.keys(at.bgColor),TZ=[...d7,...p7];function f7(){let t=new Map;for(let[e,s]of Object.entries(at)){for(let[n,r]of Object.entries(s))at[n]={open:`\x1B[${r[0]}m`,close:`\x1B[${r[1]}m`},s[n]=at[n],t.set(r[0],r[1]);Object.defineProperty(at,e,{value:s,enumerable:!1})}return Object.defineProperty(at,"codes",{value:t,enumerable:!1}),at.color.close="\x1B[39m",at.bgColor.close="\x1B[49m",at.color.ansi=Ow(),at.color.ansi256=Lw(),at.color.ansi16m=Bw(),at.bgColor.ansi=Ow(10),at.bgColor.ansi256=Lw(10),at.bgColor.ansi16m=Bw(10),Object.defineProperties(at,{rgbToAnsi256:{value(e,s,n){return e===s&&s===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(s/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let s=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!s)return[0,0,0];let[n]=s;n.length===3&&(n=[...n].map(i=>i+i).join(""));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>at.rgbToAnsi256(...at.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let s,n,r;if(e>=232)s=((e-232)*10+8)/255,n=s,r=s;else{e-=16;let a=e%36;s=Math.floor(e/36)/5,n=Math.floor(a/6)/5,r=a%6/5}let i=Math.max(s,n,r)*2;if(i===0)return 30;let o=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(s));return i===2&&(o+=60),o},enumerable:!1},rgbToAnsi:{value:(e,s,n)=>at.ansi256ToAnsi(at.rgbToAnsi256(e,s,n)),enumerable:!1},hexToAnsi:{value:e=>at.ansi256ToAnsi(at.hexToAnsi256(e)),enumerable:!1}}),at}var m7=f7(),cn=m7;var Ad=V(require("node:process"),1),Mw=V(require("node:os"),1),Mh=V(require("node:tty"),1);function qs(t,e=globalThis.Deno?globalThis.Deno.args:Ad.default.argv){let s=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(s+t),r=e.indexOf("--");return n!==-1&&(r===-1||n<r)}var{env:pt}=Ad.default,wd;qs("no-color")||qs("no-colors")||qs("color=false")||qs("color=never")?wd=0:(qs("color")||qs("colors")||qs("color=true")||qs("color=always"))&&(wd=1);function h7(){if("FORCE_COLOR"in pt)return pt.FORCE_COLOR==="true"?1:pt.FORCE_COLOR==="false"?0:pt.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(pt.FORCE_COLOR,10),3)}function g7(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function x7(t,{streamIsTTY:e,sniffFlags:s=!0}={}){let n=h7();n!==void 0&&(wd=n);let r=s?wd:n;if(r===0)return 0;if(s){if(qs("color=16m")||qs("color=full")||qs("color=truecolor"))return 3;if(qs("color=256"))return 2}if("TF_BUILD"in pt&&"AGENT_NAME"in pt)return 1;if(t&&!e&&r===void 0)return 0;let i=r||0;if(pt.TERM==="dumb")return i;if(Ad.default.platform==="win32"){let o=Mw.default.release().split(".");return Number(o[0])>=10&&Number(o[2])>=10586?Number(o[2])>=14931?3:2:1}if("CI"in pt)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(o=>o in pt)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(o=>o in pt)||pt.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in pt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(pt.TEAMCITY_VERSION)?1:0;if(pt.COLORTERM==="truecolor"||pt.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in pt){let o=Number.parseInt((pt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(pt.TERM_PROGRAM){case"iTerm.app":return o>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(pt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(pt.TERM)||"COLORTERM"in pt?1:i}function Nw(t,e={}){let s=x7(t,{streamIsTTY:t&&t.isTTY,...e});return g7(s)}var y7={stdout:Nw({isTTY:Mh.default.isatty(1)}),stderr:Nw({isTTY:Mh.default.isatty(2)})},jw=y7;function $w(t,e,s){let n=t.indexOf(e);if(n===-1)return t;let r=e.length,i=0,o="";do o+=t.slice(i,n)+e+s,i=n+r,n=t.indexOf(e,i);while(n!==-1);return o+=t.slice(i),o}function Ww(t,e,s,n){let r=0,i="";do{let o=t[n-1]==="\r";i+=t.slice(r,o?n-1:n)+e+(o?`\r
196
+ `);for(let u=0;u<c.length;u++){let l=c[u];if(l.includes("new")&&l.includes("this")&&(l.includes(n)||l.includes(r)))return{filePath:Gs.relative(s,o),line:u+1,column:l.indexOf("new")+1,constructPath:t,stackName:r,logicalId:e,confidence:"low"}}}catch{}return{filePath:t,line:1,column:1,constructPath:t,stackName:r,logicalId:e,confidence:"low"}};var bd=V(require("node:fs")),Dw=V(require("node:path")),la=t=>{let e=Dw.join(t,"manifest.json");if(!bd.existsSync(e))return{};try{return JSON.parse(bd.readFileSync(e,"utf-8"))}catch{return{}}};var i7=(t,e)=>t?!!(e?.startsWith("AWS::CDK::")||e?.startsWith("Cfn")||t.endsWith("/Resource")||t==="Resource"||t.includes("Asset")||t.includes("CustomResource")):!1,Sw=(t,e,s,n,r)=>{let i=la("cdk.out");return Object.entries(t).reduce((o,[a,c])=>{let u=Object.keys(e).find(Q=>e[Q]===a)??c.cdkPath,l=s[a]?.__constructType??n.Resources?.[a]?.Type??"",d=r[a]?.githubUrl,f=r[a]?.docUrl,p=r[a]?.constructName,m=i7(u,l),g=s[a]?.displayName,h=g??s[a]?.__friendlyName??u.split("/").pop()??a,y=g??u??c.locationHint,x=yd(i,a),D=[...c.sources?.cdkInsights?.issues??[],...c.sources?.cdkNag?.issues??[]].map(Q=>({...Q,locationHint:y,githubUrl:d,docUrl:f,constructName:p,...x?.filePath&&{sourceLocation:{filePath:x.filePath,line:x.line||1,column:x.column||1,confidence:x.confidence||"low"}},stackName:x?.stackName,stackId:x?.stackName,timestamp:new Date().toISOString()})),S=D.filter(Q=>Q.foundBy!=="cdkNag"),v=D.filter(Q=>Q.foundBy==="cdkNag"),E=s[a],R=c.parentPath||E?.__parentPath,_=c.childCount??E?.__childCount,W=c.tags||E?.__tags,j=c.sourceLocation||E?.__sourceLocation,M=c.constructHierarchy||E?.__constructHierarchy,$=c.serviceCategory||E?.__serviceCategory,L=c.dependencies||E?.__dependencies,z=c.sensitiveProperties||E?.__sensitiveProperties,C=c.usesDefaults??E?.__usesDefaults,B=c.l2ConstructType||E?.__l2ConstructType,N=c.l2ConstructId||E?.__l2ConstructId,K=c.createdBy||E?.__createdBy,me=c.rootSourceLocation||E?.__rootSourceLocation,Z=c.searchHint||E?.__searchHint,J=j?{filePath:j.filePath,line:j.line,column:j.column,endLine:j.endLine,endColumn:j.endColumn,confidence:j.confidence||"high",method:j.method,enclosingScope:j.enclosingScope,codeSnippet:j.codeSnippet}:x?.filePath?{filePath:x.filePath,line:x.line||1,column:x.column||1,confidence:x.confidence||"low"}:void 0;return o[a]={...c,resourceId:a,displayName:g,cdkPath:u,friendlyName:h,locationHint:y,constructName:p,githubUrl:d,docUrl:f,isGenerated:m,type:l,constructType:l,parentPath:R,childCount:_,tags:W,sourceLocation:J,constructHierarchy:M,logicalId:a,serviceCategory:$,dependencies:L,sensitiveProperties:z,usesDefaults:C,l2ConstructType:B,l2ConstructId:N,createdBy:K,rootSourceLocation:me,searchHint:Z,sources:{cdkInsights:{issues:S},cdkNag:{issues:v}}},o},{})};var o7=new Set(["AwsSolutions-IAM4","AwsSolutions-IAM5","AwsSolutions-S1","AwsSolutions-S2","AwsSolutions-S3","AwsSolutions-S10","AwsSolutions-RDS2","AwsSolutions-RDS6","AwsSolutions-RDS10","AwsSolutions-EC23","AwsSolutions-EC26","AwsSolutions-ECS4","AwsSolutions-COG2","AwsSolutions-COG3","AwsSolutions-ELB2","AwsSolutions-KMS5","AwsSolutions-L1","AwsSolutions-SMG4","AwsSolutions-DDB3","AwsSolutions-CB4"]),Dc={AwsSolutions:"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#awssolutions-rules","HIPAA.Security":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#hipaasecurity-rules","NIST.800.53.R4":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#nist-80053-rules","NIST.800.53.R5":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#nist-80053-rules","PCI.DSS.321":"https://github.com/cdklabs/cdk-nag/blob/main/RULES.md#pcidss-rules"},Cw={IAM:"Security",S:"Security",EC:"Security",VPC:"Security",KMS:"Security",SMG:"Security",COG:"Security",CFR:"Security",ELB:"Security",RDS:"Security",DDB:"Security",SQS:"Security",SNS:"Security",L:"Security",ECS:"Security",EKS:"Security",CB:"Security",ATH:"Security",OS:"Security",RS:"Security",TS:"Security",QL:"Security",APS:"Security",DOC:"Security",EFS:"Security",GL:"Security",KDF:"Security",KDS:"Security",LEX:"Security",MSK:"Security",N:"Security",QS:"Security",EMR:"Security",AS:"Reliability",AEC:"Reliability",KDA:"Reliability",CW:"Operational Excellence",CT:"Operational Excellence",SF:"Operational Excellence",EB:"Operational Excellence",ASC:"Operational Excellence",MS:"Operational Excellence",EVB:"Operational Excellence",C91:"Security"},ww=t=>t.match(/^((?:AwsSolutions|HIPAA\.Security|NIST\.800\.53\.R[45]|PCI\.DSS\.321)-[A-Z0-9]+)/i)?.[1],a7=t=>t.match(/-([A-Z]+)\d*$/i)?.[1]?.toUpperCase(),vd=(t,e)=>{if(e&&o7.has(e))return"CRITICAL";switch(t){case"aws:cdk:error":return"HIGH";case"aws:cdk:warning":return"MEDIUM";case"aws:cdk:info":return"LOW";default:return"HIGH"}},Dd=t=>{if(!t)return"Security";let e=a7(t);return e&&Cw[e]?Cw[e]:"Security"},Aw=t=>{if(t){if(t.startsWith("AwsSolutions-"))return Dc.AwsSolutions;if(t.startsWith("HIPAA.Security-"))return Dc["HIPAA.Security"];if(t.startsWith("NIST.800.53.R4-"))return Dc["NIST.800.53.R4"];if(t.startsWith("NIST.800.53.R5-"))return Dc["NIST.800.53.R5"];if(t.startsWith("PCI.DSS.321-"))return Dc["PCI.DSS.321"]}},Ew=t=>t.startsWith("AwsSolutions-")||t.startsWith("HIPAA.Security-")||t.startsWith("NIST.800.53.R")||t.startsWith("PCI.DSS.321-");var Fw=(t,e)=>{let s=/\[([^\]]*)\]\s*\[([^\]]*)\]\s*\[([^\]]*)\]/g,n=[],r=s.exec(t);for(;r!==null;){let i=r[1]??"",o=r[2],a=r[3];if(o&&a){let c=e[i]??i;n.push({resourceId:c,issue:a,severity:vd("inline",o),wafPillar:Dd(o),foundBy:"cdkNag",constructPath:i,ruleId:o})}r=s.exec(t)}return n};var _w=(t,e)=>e?Object.entries(t).reduce((s,[n,r])=>(s[n]={...r,__description:r.__description||e[n]},s),{}):{...t};var kw="2.2.0",c7=(t,e)=>{let s=t.split(".").map(Number),n=e.split(".").map(Number);for(let r=0;r<Math.max(s.length,n.length);r++){let i=s[r]||0,o=n[r]||0;if(i!==o)return i-o}return 0},u7=(t,e)=>{if(!t){xe.debug("Legacy cdk-insights metadata found (no version field)",{constructPath:e});return}c7(t,kw)<0&&xe.debug(`Metadata version ${t} is older than expected ${kw}`,{constructPath:e,hint:"Consider re-running cdk synth with the latest cdk-insights aspect"})},Iw=(t,e,s,n,r)=>{try{let i=t.artifacts??{},a=(i[n]||i[`${n}.template.json`])?.metadata??{},c={...e},u={...s};for(let[d,{githubUrl:f,docUrl:p}]of Object.entries(r))if(f||p){let m=u[d]||{};u[d]={...m,...f&&{__github:f},...p&&{__docs:p}}}for(let[d,f]of Object.entries(a)){let p=f.find(y=>y.type==="aws:cdk:logicalId"&&typeof y.data=="string");if(!p)continue;let m=p.data,g=d.startsWith("/")?d.slice(1):d;c[g]=m;let h=f.find(y=>y.type==="aws:cdk:info"&&typeof y.data=="string"&&y.data.startsWith("cdk-insights::"));if(h)try{let y=JSON.parse(h.data.replace("cdk-insights::","")),{friendlyName:x,constructType:D,description:S,stackId:v,sourceLocation:E,parentPath:R,childCount:_,tags:W,version:j,logicalId:M,constructHierarchy:$,serviceCategory:L,dependencies:z,sensitiveProperties:C,usesDefaults:B,l2ConstructType:N,l2ConstructId:K,createdBy:me,rootSourceLocation:Z,searchHint:J}=y;u7(j,d);let Q={...u[m]};x&&(Q.__friendlyName=x),D&&(Q.__constructType=D),S&&(Q.__description=S),v&&(Q.__stackId=n),E&&(Q.__sourceLocation=E),R&&(Q.__parentPath=R),_!==void 0&&(Q.__childCount=_),W&&Object.keys(W).length>0&&(Q.__tags=W),j&&(Q.__metadataVersion=j),M&&(Q.__logicalId=M),$?.length>0&&(Q.__constructHierarchy=$),L&&(Q.__serviceCategory=L),z?.length>0&&(Q.__dependencies=z),C?.length>0&&(Q.__sensitiveProperties=C),B!==void 0&&(Q.__usesDefaults=B),N&&(Q.__l2ConstructType=N),K&&(Q.__l2ConstructId=K),me&&(Q.__createdBy=me),Z&&(Q.__rootSourceLocation=Z),J&&(Q.__searchHint=J),u[m]=Q}catch(y){xe.warn(`Failed to parse cdk-insights metadata for ${d}:`,{error:y})}}let l={};for(let[d,f]of Object.entries(a)){let p=f.find(D=>D.type==="aws:cdk:logicalId"&&typeof D.data=="string");if(!p)continue;let m=p.data,g=[],h=f.find(D=>D.type==="aws:cdk:info"&&typeof D.data=="string"&&D.data.startsWith("cdk-insights::"));if(h)try{let D=JSON.parse(h.data.replace("cdk-insights::",""));Array.isArray(D.issues)&&(g=D.issues.map(S=>({resourceId:S.resourceId,issue:S.issue,recommendation:S.recommendation,severity:S.severity,wafPillar:S.wafPillar,foundBy:"cdkInsights",constructPath:d,stackId:u[m]?.__stackId,constructType:u[m]?.__constructType,githubUrl:s[m]?.__github,docUrl:s[m]?.__docs})))}catch(D){xe.warn(`Failed to parse cdk-insights metadata for ${d}:`,{error:D})}let y=f.filter(D=>(D.type==="aws:cdk:error"||D.type==="aws:cdk:warning")&&typeof D.data=="string"&&Ew(D.data)).map(D=>{let S=D.data,v=ww(S),E=vd(D.type,v);return{resourceId:m,issue:S,recommendation:void 0,severity:E,wafPillar:Dd(v),foundBy:"cdkNag",constructPath:d,ruleId:v,stackId:u[m]?.__stackId,constructType:u[m]?.__constructType,githubUrl:s[m]?.__github,docUrl:Aw(v)||s[m]?.__docs}}),x=u[m];l[m]={resourceId:m,friendlyName:x?.__friendlyName||m,cdkPath:d,locationHint:d,type:s[m]?.Type,isGenerated:!1,constructType:x?.__constructType,parentPath:x?.__parentPath,childCount:x?.__childCount,tags:x?.__tags,sourceLocation:x?.__sourceLocation,logicalId:m,constructHierarchy:x?.__constructHierarchy,serviceCategory:x?.__serviceCategory,dependencies:x?.__dependencies,sensitiveProperties:x?.__sensitiveProperties,usesDefaults:x?.__usesDefaults,l2ConstructType:x?.__l2ConstructType,l2ConstructId:x?.__l2ConstructId,createdBy:x?.__createdBy,rootSourceLocation:x?.__rootSourceLocation,searchHint:x?.__searchHint,sources:{cdkInsights:{issues:g},cdkNag:{issues:y}}}}if(Object.keys(l).length===0)for(let d of Object.keys(u))l[d]={resourceId:d,friendlyName:d,cdkPath:d,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}};return{pathToLogicalId:c,unifiedResourceMap:u,resourceIdMetadata:r,recommendationMap:l}}catch(i){return xe.error("\u26A0\uFE0F Failed to parse manifest.json for logical ID mappings:",{error:i}),xe.warn("Unknown error in parseManifestMetadata",{error:i}),{pathToLogicalId:e,unifiedResourceMap:s,resourceIdMetadata:r,recommendationMap:{}}}};var Yn=V(require("node:fs")),Sd=V(require("node:path"));function l7(t){let e=Sd.join(t,"manifest.json");if(!Yn.existsSync(e))return{};let s=JSON.parse(Yn.readFileSync(e,"utf8")),n={};for(let r of Object.values(s.artifacts)){if(r.type!=="cdk:asset-manifest")continue;let i=r.properties.file,o=Sd.join(t,i);if(!Yn.existsSync(o))continue;let a=JSON.parse(Yn.readFileSync(o,"utf8"));for(let[c,u]of Object.entries(a.files||{}))n[c]=u.displayName}return n}function Rw(t){let e={},s={},n={},r={},i=l7(t),o=Yn.readdirSync(t).filter(a=>a.endsWith(".template.json"));for(let a of o){let c=a.replace(/\.template\.json$/,""),u=JSON.parse(Yn.readFileSync(Sd.join(t,a),"utf8"));e[c]=u;for(let[l,d]of Object.entries(u.Resources||{})){if(new Set(["CDKMetadata","BootstrapVersion","CheckBootstrapVersion"]).has(l)||d.Type?.startsWith("AWS::CDK::")||d.Type==="AWS::SSM::Parameter")continue;let p={...d,displayName:l},m=p.Metadata??{};typeof m["aws:cdk:path"]=="string"&&(s[m["aws:cdk:path"]]=l);let g=m["aws:asset:path"],h=typeof g=="string"?g.replace(/^asset\./,""):void 0;if(h&&i[h])p.displayName=i[h];else if(typeof m["aws:cdk:path"]=="string"){let y=m["aws:cdk:path"].split("/"),x=y[y.length-1],D=x==="Resource"&&y.length>1?y[y.length-2]:x;p.displayName=D}n[l]=p,r[l]=p.displayName??l}}return{stacks:e,pathToLogicalId:s,unifiedResourceMap:n,displayNameMap:r,assetSourcePaths:Object.fromEntries(Object.entries(n).filter(([,a])=>a.Metadata?.["aws:asset:path"]).map(([a,c])=>[a,c.Metadata["aws:asset:path"]]))}}var Cd=V(require("node:fs"));var Tw=t=>{let e="https://github.com/aws/aws-cdk/blob/main/packages",s="https://docs.aws.amazon.com/cdk/api/v2/docs",n=t.split(".");if(n.length<3)return{githubUrl:null,docUrl:null,constructName:null};let[,r,...i]=n,o=`${e}/aws-cdk-lib/${r}/lib/${i.join("/")}.ts`,a=`${s}/${t}.html`;return{githubUrl:o,docUrl:a,constructName:i[0]}};var Pw=(t,e)=>{let s=`${t}/tree.json`;if(!Cd.existsSync(s))return{pathToLogicalId:e,resourceIdMetadata:{}};let n=JSON.parse(Cd.readFileSync(s,"utf-8")),i=(n.tree?.children?Object.values(n.tree.children):[n]).map(l=>({node:l,parentPath:""})),o=[];for(;i.length;){let l=i.pop();if(!l)continue;let{node:d,parentPath:f}=l,p=f?`${f}/${d.id}`:d.id,m=p.replace(/^\/+/,""),g=e[m],h=d.constructInfo?.fqn,y=d.attributes?.["aws:cdk:cloudformation:props"],x=y&&typeof y.description=="string"?y.description:void 0;if(o.push({logicalId:g,path:p,fqn:h,description:x}),d.children)for(let D of Object.values(d.children))i.push({node:D,parentPath:p})}let a={},c={},u={};for(let{logicalId:l,path:d,fqn:f,description:p}of o)if(l){if(a[d]=l,f){let{githubUrl:m,docUrl:g,constructName:h}=Tw(f);m&&(c[l]||(c[l]={githubUrl:"",docUrl:"",constructName:""}),c[l].githubUrl=m),g&&(c[l]||(c[l]={githubUrl:"",docUrl:"",constructName:""}),c[l].docUrl=g,h&&(c[l].constructName=h))}p&&(u[l]=p)}return{pathToLogicalId:{...e,...a},resourceIdMetadata:c,autoGeneratedDescriptions:u}};var Jh=require("node:child_process"),Qh=V(require("node:fs")),Xh=V(require("node:path"));var Ow=(t=0)=>e=>`\x1B[${e+t}m`,Lw=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Bw=(t=0)=>(e,s,n)=>`\x1B[${38+t};2;${e};${s};${n}m`,at={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},RZ=Object.keys(at.modifier),d7=Object.keys(at.color),p7=Object.keys(at.bgColor),TZ=[...d7,...p7];function f7(){let t=new Map;for(let[e,s]of Object.entries(at)){for(let[n,r]of Object.entries(s))at[n]={open:`\x1B[${r[0]}m`,close:`\x1B[${r[1]}m`},s[n]=at[n],t.set(r[0],r[1]);Object.defineProperty(at,e,{value:s,enumerable:!1})}return Object.defineProperty(at,"codes",{value:t,enumerable:!1}),at.color.close="\x1B[39m",at.bgColor.close="\x1B[49m",at.color.ansi=Ow(),at.color.ansi256=Lw(),at.color.ansi16m=Bw(),at.bgColor.ansi=Ow(10),at.bgColor.ansi256=Lw(10),at.bgColor.ansi16m=Bw(10),Object.defineProperties(at,{rgbToAnsi256:{value(e,s,n){return e===s&&s===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(s/255*5)+Math.round(n/255*5)},enumerable:!1},hexToRgb:{value(e){let s=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!s)return[0,0,0];let[n]=s;n.length===3&&(n=[...n].map(i=>i+i).join(""));let r=Number.parseInt(n,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>at.rgbToAnsi256(...at.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let s,n,r;if(e>=232)s=((e-232)*10+8)/255,n=s,r=s;else{e-=16;let a=e%36;s=Math.floor(e/36)/5,n=Math.floor(a/6)/5,r=a%6/5}let i=Math.max(s,n,r)*2;if(i===0)return 30;let o=30+(Math.round(r)<<2|Math.round(n)<<1|Math.round(s));return i===2&&(o+=60),o},enumerable:!1},rgbToAnsi:{value:(e,s,n)=>at.ansi256ToAnsi(at.rgbToAnsi256(e,s,n)),enumerable:!1},hexToAnsi:{value:e=>at.ansi256ToAnsi(at.hexToAnsi256(e)),enumerable:!1}}),at}var m7=f7(),cn=m7;var Ad=V(require("node:process"),1),Mw=V(require("node:os"),1),Mh=V(require("node:tty"),1);function qs(t,e=globalThis.Deno?globalThis.Deno.args:Ad.default.argv){let s=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(s+t),r=e.indexOf("--");return n!==-1&&(r===-1||n<r)}var{env:pt}=Ad.default,wd;qs("no-color")||qs("no-colors")||qs("color=false")||qs("color=never")?wd=0:(qs("color")||qs("colors")||qs("color=true")||qs("color=always"))&&(wd=1);function h7(){if("FORCE_COLOR"in pt)return pt.FORCE_COLOR==="true"?1:pt.FORCE_COLOR==="false"?0:pt.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(pt.FORCE_COLOR,10),3)}function g7(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function x7(t,{streamIsTTY:e,sniffFlags:s=!0}={}){let n=h7();n!==void 0&&(wd=n);let r=s?wd:n;if(r===0)return 0;if(s){if(qs("color=16m")||qs("color=full")||qs("color=truecolor"))return 3;if(qs("color=256"))return 2}if("TF_BUILD"in pt&&"AGENT_NAME"in pt)return 1;if(t&&!e&&r===void 0)return 0;let i=r||0;if(pt.TERM==="dumb")return i;if(Ad.default.platform==="win32"){let o=Mw.default.release().split(".");return Number(o[0])>=10&&Number(o[2])>=10586?Number(o[2])>=14931?3:2:1}if("CI"in pt)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(o=>o in pt)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(o=>o in pt)||pt.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in pt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(pt.TEAMCITY_VERSION)?1:0;if(pt.COLORTERM==="truecolor"||pt.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in pt){let o=Number.parseInt((pt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(pt.TERM_PROGRAM){case"iTerm.app":return o>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(pt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(pt.TERM)||"COLORTERM"in pt?1:i}function Nw(t,e={}){let s=x7(t,{streamIsTTY:t&&t.isTTY,...e});return g7(s)}var y7={stdout:Nw({isTTY:Mh.default.isatty(1)}),stderr:Nw({isTTY:Mh.default.isatty(2)})},jw=y7;function $w(t,e,s){let n=t.indexOf(e);if(n===-1)return t;let r=e.length,i=0,o="";do o+=t.slice(i,n)+e+s,i=n+r,n=t.indexOf(e,i);while(n!==-1);return o+=t.slice(i),o}function Ww(t,e,s,n){let r=0,i="";do{let o=t[n-1]==="\r";i+=t.slice(r,o?n-1:n)+e+(o?`\r
197
197
  `:`
198
198
  `)+s,r=n+1,n=t.indexOf(`
199
199
  `,r)}while(n!==-1);return i+=t.slice(r),i}var{stdout:Uw,stderr:Gw}=jw,jh=Symbol("GENERATOR"),da=Symbol("STYLER"),Sc=Symbol("IS_EMPTY"),zw=["ansi","ansi","ansi256","ansi16m"],pa=Object.create(null),b7=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let s=Uw?Uw.level:0;t.level=e.level===void 0?s:e.level};var v7=t=>{let e=(...s)=>s.join(" ");return b7(e,t),Object.setPrototypeOf(e,Cc.prototype),e};function Cc(t){return v7(t)}Object.setPrototypeOf(Cc.prototype,Function.prototype);for(let[t,e]of Object.entries(cn))pa[t]={get(){let s=Ed(this,Wh(e.open,e.close,this[da]),this[Sc]);return Object.defineProperty(this,t,{value:s}),s}};pa.visible={get(){let t=Ed(this,this[da],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var $h=(t,e,s,...n)=>t==="rgb"?e==="ansi16m"?cn[s].ansi16m(...n):e==="ansi256"?cn[s].ansi256(cn.rgbToAnsi256(...n)):cn[s].ansi(cn.rgbToAnsi(...n)):t==="hex"?$h("rgb",e,s,...cn.hexToRgb(...n)):cn[s][t](...n),D7=["rgb","hex","ansi256"];for(let t of D7){pa[t]={get(){let{level:s}=this;return function(...n){let r=Wh($h(t,zw[s],"color",...n),cn.color.close,this[da]);return Ed(this,r,this[Sc])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);pa[e]={get(){let{level:s}=this;return function(...n){let r=Wh($h(t,zw[s],"bgColor",...n),cn.bgColor.close,this[da]);return Ed(this,r,this[Sc])}}}}var S7=Object.defineProperties(()=>{},{...pa,level:{enumerable:!0,get(){return this[jh].level},set(t){this[jh].level=t}}}),Wh=(t,e,s)=>{let n,r;return s===void 0?(n=t,r=e):(n=s.openAll+t,r=e+s.closeAll),{open:t,close:e,openAll:n,closeAll:r,parent:s}},Ed=(t,e,s)=>{let n=(...r)=>C7(n,r.length===1?""+r[0]:r.join(" "));return Object.setPrototypeOf(n,S7),n[jh]=t,n[da]=e,n[Sc]=s,n},C7=(t,e)=>{if(t.level<=0||!e)return t[Sc]?"":e;let s=t[da];if(s===void 0)return e;let{openAll:n,closeAll:r}=s;if(e.includes("\x1B"))for(;s!==void 0;)e=$w(e,s.close,s.open),s=s.parent;let i=e.indexOf(`
@@ -214,7 +214,7 @@ ${oe.comment("\u{1F4A1} Next Steps:")}`),me?(t.log(oe.error(" \u274C Trial exp
214
214
  ${oe.warning.bold("\u26A0\uFE0F Trial Limit Exceeded")}`),t.log(oe.comment("\u2500".repeat(40))),t.log(oe.warning(` You've analyzed ${B}/${N} resources`)),t.log(oe.warning(` This analysis would add ${K} more resources`)),t.log(oe.warning(` Total would be ${B+K}/${N}`)),t.log(`
215
215
  ${oe.info("\u{1F4CB} Falling back to static analysis only")}`),t.log(oe.comment("\u{1F4A1} Upgrade to Pro for unlimited AI analysis: https://cdkinsights.dev/pricing")),t.log(`${oe.comment("\u2500".repeat(40))}
216
216
  `))}}},U=Y7();var bA=()=>{let t=Xh.resolve(process.cwd(),"node_modules",".bin","cdk");return Qh.existsSync(t)?t:"cdk"},J7=t=>t instanceof Error&&typeof t.stdout<"u",vA=(t,e,s)=>{let n=`${t}
217
- ${e}`;return s(n,{})},Q7=t=>e=>{if(J7(e)){let n=e.stdout?.toString()||"",r=e.stderr?.toString()||e.message||"";return vA(n,r,t)}let s=e instanceof Error?e.message:String(e);return t(s,{})},X7=(t,e)=>{let s=bA(),n=t?`${s} synth ${t}`:`${s} synth --all`,r={stdio:"pipe",encoding:"utf-8"};return()=>{try{let i=String((0,Jh.execSync)(n,r));return{success:!0,findings:vA(i||"","",e)}}catch(i){return{success:!1,findings:[],error:i}}}},DA=t=>({start:()=>{t?U.info(`\u26A1 Synthesizing CDK stack: ${t}`):U.info("\u26A1 Synthesizing all CDK stacks...")},success:()=>{U.success(`Successfully synthesized ${t||"all stacks"}`)}}),SA=({extractInlineNagFindings:t,stackName:e})=>{let s=X7(e,t),n=DA(e),r=Q7(t);n.start();let i=s();if(i.success)return n.success(),i.findings;let o=r(i.error);return n.success(),o},CA=t=>{let e=bA(),s=t?`${e} synth ${t}`:`${e} synth --all`,n={stdio:"pipe",encoding:"utf-8"},r=DA(t);r.start();try{return(0,Jh.execSync)(s,n),r.success(),!0}catch{return Qh.existsSync(Xh.resolve(process.cwd(),"cdk.out"))?(r.success(),!0):!1}};var eg="cdk.out",wA=t=>{let e=SA({stackName:t,extractInlineNagFindings:Fw}),s=la(eg),{stacks:n,pathToLogicalId:r,unifiedResourceMap:i,assetSourcePaths:o}=Rw(eg),{pathToLogicalId:a,resourceIdMetadata:c,autoGeneratedDescriptions:u}=Pw(eg,r),l={...r,...a},d=_w(i,u),f=t?n[t]?{[t]:n[t]}:{}:n,p=Object.fromEntries(Object.entries(f).map(([m,g])=>{let{recommendationMap:h,unifiedResourceMap:y}=Iw(s,l,d,m,c),x={...d,...y},D=Object.fromEntries(Object.keys(g.Resources??{}).map(v=>[v,h[v]??{resourceId:v,friendlyName:l[v]??v,cdkPath:v,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}}])),S=Sw(D,l,x,g,c);return[m,S]}));return{stacks:f,inlineFindings:e,pathToLogicalId:l,recommendationMapPerStack:p,assetSourcePaths:o}};var y6=V(require("node:fs"));var _d=require("node:fs"),wc=require("node:path");function AA(){let t=require.resolve("@aws-solutions-constructs/core/package.json"),e=(0,wc.dirname)((0,wc.dirname)(t));return(0,_d.readdirSync)(e).filter(s=>s!=="core"&&s.startsWith("aws-")&&(0,_d.statSync)((0,wc.join)(e,s)).isDirectory())}var EA={"aws-apigateway-dynamodb":{className:"ApiGatewayToDynamoDB",packageName:"aws-apigateway-dynamodb",friendlyName:"Api Gateway To Dynamo DB",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-dynamodb/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-dynamodb",requiredResourceTypes:["AWS::DynamoDB::Table","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy"]},"aws-apigateway-kinesisstreams":{className:"ApiGatewayToKinesisStreams",packageName:"aws-apigateway-kinesisstreams",friendlyName:"Api Gateway To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-kinesisstreams",requiredResourceTypes:["AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::RequestValidator","AWS::ApiGateway::Model","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy","AWS::CloudWatch::Alarm","AWS::Kinesis::Stream"]},"aws-apigateway-lambda":{className:"ApiGatewayToLambda",packageName:"aws-apigateway-lambda",friendlyName:"Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account"]},"aws-apigateway-sqs":{className:"ApiGatewayToSqs",packageName:"aws-apigateway-sqs",friendlyName:"Api Gateway To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-sqs",requiredResourceTypes:["AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy"]},"aws-apigatewayv2websocket-sqs":{className:"ApiGatewayV2WebSocketToSqs",packageName:"aws-apigatewayv2websocket-sqs",friendlyName:"Api Gateway V2 Web Socket To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigatewayv2websocket-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigatewayv2websocket-sqs",requiredResourceTypes:["AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::IAM::Role","AWS::IAM::Policy","AWS::ApiGatewayV2::Api","AWS::ApiGatewayV2::Integration","AWS::ApiGatewayV2::Route","AWS::ApiGatewayV2::Stage","AWS::Logs::LogGroup"]},"aws-cloudfront-apigateway-lambda":{className:"CloudFrontToApiGatewayToLambda",packageName:"aws-cloudfront-apigateway-lambda",friendlyName:"Cloud Front To Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account","AWS::CloudFront::Function","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Distribution"]},"aws-cloudfront-mediastore":{className:"CloudFrontToMediaStore",packageName:"aws-cloudfront-mediastore",friendlyName:"Cloud Front To Media Store",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-mediastore/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-mediastore",requiredResourceTypes:["AWS::CloudFront::CloudFrontOriginAccessIdentity","AWS::MediaStore::Container","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::OriginRequestPolicy","AWS::CloudFront::Function","AWS::CloudFront::Distribution"]},"aws-cloudfront-oai-s3":{className:"CloudFrontToOaiToS3",packageName:"aws-cloudfront-oai-s3",friendlyName:"Cloud Front To Oai To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-oai-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-oai-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Function","AWS::CloudFront::CloudFrontOriginAccessIdentity","AWS::CloudFront::Distribution"]},"aws-cloudfront-s3":{className:"CloudFrontToS3",packageName:"aws-cloudfront-s3",friendlyName:"Cloud Front To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Function","AWS::CloudFront::OriginAccessControl","AWS::CloudFront::Distribution"]},"aws-cognito-apigateway-lambda":{className:"CognitoToApiGatewayToLambda",packageName:"aws-cognito-apigateway-lambda",friendlyName:"Cognito To Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cognito-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cognito-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account","AWS::Cognito::UserPool","AWS::Cognito::UserPoolClient","AWS::ApiGateway::Authorizer"]},"aws-dynamodbstreams-lambda":{className:"DynamoDBStreamsToLambda",packageName:"aws-dynamodbstreams-lambda",friendlyName:"Dynamo DBStreams To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Lambda::EventSourceMapping","AWS::DynamoDB::Table","AWS::SQS::Queue","AWS::SQS::QueuePolicy"]},"aws-kinesisfirehose-s3":{className:"KinesisFirehoseToS3",packageName:"aws-kinesisfirehose-s3",friendlyName:"Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-kinesisfirehose-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::Logs::LogGroup","AWS::Logs::LogStream","AWS::IAM::Role","AWS::IAM::Policy","AWS::KinesisFirehose::DeliveryStream"]},"aws-kinesisstreams-kinesisfirehose-s3":{className:"KinesisStreamsToKinesisFirehoseToS3",packageName:"aws-kinesisstreams-kinesisfirehose-s3",friendlyName:"Kinesis Streams To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-kinesisstreams-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-kinesisstreams-kinesisfirehose-s3",requiredResourceTypes:["AWS::Kinesis::Stream","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::Logs::LogGroup","AWS::Logs::LogStream","AWS::IAM::Role","AWS::IAM::Policy","AWS::KinesisFirehose::DeliveryStream","AWS::CloudWatch::Alarm"]},"aws-s3-lambda":{className:"S3ToLambda",packageName:"aws-s3-lambda",friendlyName:"S3 To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::Lambda::Permission"]},"aws-s3-sns":{className:"S3ToSns",packageName:"aws-s3-sns",friendlyName:"S3 To Sns",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-sns",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::KMS::Key","AWS::SNS::Topic","AWS::SNS::TopicPolicy","AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function"]},"aws-s3-sqs":{className:"S3ToSqs",packageName:"aws-s3-sqs",friendlyName:"S3 To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-sqs",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::KMS::Key","AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function"]},"aws-sns-lambda":{className:"SnsToLambda",packageName:"aws-sns-lambda",friendlyName:"Sns To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-sns-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-sns-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Lambda::Permission","AWS::SNS::Subscription","AWS::SNS::Topic","AWS::SNS::TopicPolicy"]},"aws-sns-sqs":{className:"SnsToSqs",packageName:"aws-sns-sqs",friendlyName:"Sns To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-sns-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-sns-sqs",requiredResourceTypes:["AWS::SNS::Topic","AWS::SNS::TopicPolicy","AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::SNS::Subscription","AWS::KMS::Key"]},"aws-eventbridge-kinesisstreams":{className:"EventbridgeToKinesisStreams",packageName:"aws-eventbridge-kinesisstreams",friendlyName:"EventBridge To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-kinesisstreams",requiredResourceTypes:["AWS::Events::Rule","AWS::Kinesis::Stream"]},"aws-eventbridge-sns":{className:"EventbridgeToSns",packageName:"aws-eventbridge-sns",friendlyName:"EventBridge To SNS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-sns",requiredResourceTypes:["AWS::Events::Rule","AWS::SNS::Topic"]},"aws-eventbridge-sqs":{className:"EventbridgeToSqs",packageName:"aws-eventbridge-sqs",friendlyName:"EventBridge To SQS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-sqs",requiredResourceTypes:["AWS::Events::Rule","AWS::SQS::Queue"]},"aws-eventbridge-stepfunctions":{className:"EventbridgeToStepfunctions",packageName:"aws-eventbridge-stepfunctions",friendlyName:"EventBridge To StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-stepfunctions",requiredResourceTypes:["AWS::Events::Rule","AWS::StepFunctions::StateMachine"]},"aws-alb-fargate":{className:"AlbToFargate",packageName:"aws-alb-fargate",friendlyName:"ALB To Fargate",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-alb-fargate/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-alb-fargate",requiredResourceTypes:["AWS::ElasticLoadBalancingV2::LoadBalancer","AWS::ElasticLoadBalancingV2::Listener","AWS::ECS::Cluster","AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-alb-lambda":{className:"AlbToLambda",packageName:"aws-alb-lambda",friendlyName:"ALB To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-alb-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-alb-lambda",requiredResourceTypes:["AWS::ElasticLoadBalancingV2::LoadBalancer","AWS::ElasticLoadBalancingV2::Listener","AWS::Lambda::Function","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-apigateway-iot":{className:"ApiGatewayToIot",packageName:"aws-apigateway-iot",friendlyName:"API Gateway To IoT",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-iot/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-iot",requiredResourceTypes:["AWS::ApiGateway::RestApi","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::IoT::TopicRule"]},"aws-apigateway-sagemakerendpoint":{className:"ApiGatewayToSagemakerendpoint",packageName:"aws-apigateway-sagemakerendpoint",friendlyName:"API Gateway To SageMaker Endpoint",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-sagemakerendpoint/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-sagemakerendpoint",requiredResourceTypes:["AWS::ApiGateway::RestApi","AWS::ApiGateway::Integration","AWS::SageMaker::Endpoint"]},"aws-cloudfront-apigateway":{className:"CloudFrontToApiGateway",packageName:"aws-cloudfront-apigateway",friendlyName:"CloudFront To API Gateway",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-apigateway/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-apigateway",requiredResourceTypes:["AWS::CloudFront::Distribution","AWS::ApiGateway::RestApi","AWS::ApiGateway::Method"]},"aws-dynamodbstreams-lambda-elasticsearch-kibana":{className:"DynamoDBStreamsToLambdaElasticsearchKibana",packageName:"aws-dynamodbstreams-lambda-elasticsearch-kibana",friendlyName:"DynamoDB Streams To Lambda Elasticsearch Kibana",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-lambda-elasticsearch-kibana/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-lambda-elasticsearch-kibana",requiredResourceTypes:["AWS::DynamoDB::Stream","AWS::Lambda::Function","AWS::Elasticsearch::Domain","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-dynamodbstreams-pipes-stepfunctions":{className:"DynamoDBStreamsToPipesStepfunctions",packageName:"aws-dynamodbstreams-pipes-stepfunctions",friendlyName:"DynamoDB Streams To Pipes StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-pipes-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-pipes-stepfunctions",requiredResourceTypes:["AWS::DynamoDB::Stream","AWS::StepFunctions::StateMachine"]},"aws-eventbridge-kinesisfirehose-s3":{className:"EventbridgeToKinesisfirehoseToS3",packageName:"aws-eventbridge-kinesisfirehose-s3",friendlyName:"EventBridge To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-kinesisfirehose-s3",requiredResourceTypes:["AWS::Events::Rule","AWS::KinesisFirehose::DeliveryStream","AWS::S3::Bucket"]},"aws-eventbridge-lambda":{className:"EventbridgeToLambda",packageName:"aws-eventbridge-lambda",friendlyName:"EventBridge To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-lambda",requiredResourceTypes:["AWS::Events::Rule","AWS::Lambda::Function","AWS::IAM::Role"]},"aws-fargate-dynamodb":{className:"FargateToDynamodb",packageName:"aws-fargate-dynamodb",friendlyName:"Fargate To DynamoDB",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-dynamodb/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-dynamodb",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::DynamoDB::Table"]},"aws-fargate-eventbridge":{className:"FargateToEventbridge",packageName:"aws-fargate-eventbridge",friendlyName:"Fargate To EventBridge",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-eventbridge/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-eventbridge",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::Events::Rule"]},"aws-fargate-kinesisfirehose":{className:"FargateToKinesisfirehose",packageName:"aws-fargate-kinesisfirehose",friendlyName:"Fargate To Kinesis Firehose",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-kinesisfirehose/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-kinesisfirehose",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::KinesisFirehose::DeliveryStream"]},"aws-fargate-kinesisstreams":{className:"FargateToKinesisstreams",packageName:"aws-fargate-kinesisstreams",friendlyName:"Fargate To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-kinesisstreams",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::Kinesis::Stream"]},"aws-fargate-opensearch":{className:"FargateToOpensearch",packageName:"aws-fargate-opensearch",friendlyName:"Fargate To OpenSearch",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-opensearch/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-opensearch",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::OpenSearch::Domain"]},"aws-fargate-s3":{className:"FargateToS3",packageName:"aws-fargate-s3",friendlyName:"Fargate To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-s3",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::S3::Bucket"]},"aws-fargate-secretsmanager":{className:"FargateToSecretsmanager",packageName:"aws-fargate-secretsmanager",friendlyName:"Fargate To SecretsManager",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-secretsmanager/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-secretsmanager",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SecretsManager::Secret"]},"aws-fargate-sns":{className:"FargateToSns",packageName:"aws-fargate-sns",friendlyName:"Fargate To SNS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-sns",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SNS::Topic"]},"aws-fargate-sqs":{className:"FargateToSqs",packageName:"aws-fargate-sqs",friendlyName:"Fargate To SQS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-sqs",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SQS::Queue"]},"aws-fargate-ssmstringparameter":{className:"FargateToSsmstringparameter",packageName:"aws-fargate-ssmstringparameter",friendlyName:"Fargate To SSM String Parameter",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-ssmstringparameter/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-ssmstringparameter",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SSM::StringParameter"]},"aws-fargate-stepfunctions":{className:"FargateToStepfunctions",packageName:"aws-fargate-stepfunctions",friendlyName:"Fargate To StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-stepfunctions",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::StepFunctions::StateMachine"]},"aws-iot-kinesisfirehose-s3":{className:"IotToKinesisfirehoseToS3",packageName:"aws-iot-kinesisfirehose-s3",friendlyName:"IoT To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-kinesisfirehose-s3",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::KinesisFirehose::DeliveryStream","AWS::S3::Bucket"]},"aws-iot-kinesisstreams":{className:"IotToKinesisstreams",packageName:"aws-iot-kinesisstreams",friendlyName:"IoT To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-kinesisstreams",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::Kinesis::Stream"]},"aws-iot-lambda":{className:"IotToLambda",packageName:"aws-iot-lambda",friendlyName:"IoT To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-lambda",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::Lambda::Function","AWS::IAM::Role"]}};var FA=async t=>{let e={};for(let s of t)try{let n=await import(`@aws-solutions-constructs/${s}`),r=Object.keys(n).find(u=>/^[A-Z][a-zA-Z0-9]*To[A-Z][a-zA-Z0-9]*$/.test(u));if(!r)continue;let i=`https://docs.aws.amazon.com/solutions/latest/${s}/`,o=`https://github.com/awslabs/aws-solutions-constructs/tree/main/${s}`,c=EA[s]?.requiredResourceTypes||[];e[s]={className:r,packageName:s,friendlyName:r.replace(/([a-z0-9])([A-Z])/g,"$1 $2").trim(),documentationUrl:i,githubUrl:o,requiredResourceTypes:c}}catch{}return e};var R=(t,e)=>t.Metadata?.["aws:cdk:path"]??e;var _A=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::ApiGateway::RestApi"&&!r.Properties?.EndpointConfiguration?.Types?.includes("PRIVATE")&&(s[n]={issues:[e(n,"API Gateway is publicly accessible.","Use PRIVATE endpoints to restrict access.","HIGH","Security",R(r,n),"cdkInsights")]}),s),{});var kA=(t,e)=>Object.entries(t.Resources||{}).some(([,n])=>n.Type==="AWS::CloudTrail::Trail")?{}:{Global:{issues:[e("Global","CloudTrail is not enabled for logging.","Enable AWS CloudTrail to capture API activity and improve security monitoring.","HIGH","Security","Global","cdkInsights")]}};var fa=(t,e)=>{let s=[];if(t==null)return s;if(typeof t=="string"){let n=t.matchAll(/\$\{([^.}]+)(?:\.[^}]+)?\}/g);for(let r of n){let i=r[1];e.has(i)&&s.push(i)}return s}if(Array.isArray(t)){for(let n of t)s.push(...fa(n,e));return s}if(typeof t=="object"){let n=t;if("Ref"in n&&typeof n.Ref=="string"&&e.has(n.Ref)&&s.push(n.Ref),"Fn::GetAtt"in n){let r=n["Fn::GetAtt"];if(Array.isArray(r)&&typeof r[0]=="string")e.has(r[0])&&s.push(r[0]);else if(typeof r=="string"){let i=r.split(".")[0];e.has(i)&&s.push(i)}}if("Fn::Sub"in n){let r=n["Fn::Sub"];Array.isArray(r)?(s.push(...fa(r[0],e)),r[1]&&typeof r[1]=="object"&&s.push(...fa(r[1],e))):s.push(...fa(r,e))}for(let[r,i]of Object.entries(n))["Ref","Fn::GetAtt","Fn::Sub"].includes(r)||s.push(...fa(i,e))}return s},e9=t=>t.DependsOn?Array.isArray(t.DependsOn)?t.DependsOn:[t.DependsOn]:[],t9=(t,e)=>{if(e.length===0)return;let s=new Set(e.map(i=>i.type.split("::")[2]||i.type)),n=Array.from(s).slice(0,3),r=t.split("::")[2]||t;if(t.includes("SecurityGroup"))return`Security group attached to: ${n.join(", ")}`;if(t.includes("IAM::Role"))return`IAM role assumed by: ${n.join(", ")}`;if(t.includes("VPC")||t.includes("Subnet"))return`Network hosting: ${n.join(", ")}`;if(t.includes("KMS::Key"))return`Encryption key used by: ${n.join(", ")}`;if(t.includes("S3::Bucket")){if(n.some(i=>i.includes("Lambda")))return"S3 bucket accessed by Lambda functions";if(n.some(i=>i.includes("CloudFront")))return"S3 bucket serving as CloudFront origin"}if(t.includes("DynamoDB::Table")&&n.some(i=>i.includes("Lambda")))return"DynamoDB table accessed by Lambda functions";if(e.length>0)return`Referenced by ${e.length} resource${e.length>1?"s":""}: ${n.join(", ")}`},Zi=t=>{let e=new Set(Object.keys(t)),s={};for(let n of e)s[n]={dependencies:[],dependents:[]};for(let[n,r]of Object.entries(t)){let i=e9(r),o=fa(r.Properties,e),a=[...new Set([...i,...o])];s[n].dependencies=a;for(let c of a)s[c]&&s[c].dependents.push(n)}for(let[n,r]of Object.entries(t)){let i=s[n],o=i.dependents.map(a=>({id:a,type:t[a]?.Type||"Unknown"}));i.usageDescription=t9(r.Type,o)}return s},tg=(t,e,s)=>{let n=e[t];if(!n)return{dependencies:[],dependents:[]};let r=n.dependencies.map(o=>{let a=s[o]?.Type?.split("::")[2]||o;return`${o} (${a})`}),i=n.dependents.map(o=>{let a=s[o]?.Type?.split("::")[2]||o;return`${o} (${a})`});return{dependencies:r,dependents:i,usageDescription:n.usageDescription}};var s9=(t,e,s)=>{let n={};for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::Lambda::Function")continue;let o=i.Properties||{};if(!!(o.DeadLetterConfig?.TargetArn||o.DeadLetterConfig?.TargetArn))continue;let c=e[r];if(!c)continue;c.dependencies.some(l=>{let d=t[l];return d?.Type==="AWS::DynamoDB::Table"||d?.Type==="AWS::DynamoDB::GlobalTable"})&&(n[r]||(n[r]={issues:[]}),n[r].issues.push(s(r,"Lambda function interacting with DynamoDB has no Dead Letter Queue configured","Configure a Dead Letter Queue (DLQ) using SQS or SNS to capture failed invocations. This ensures no data is lost when the function fails to process DynamoDB events or write operations.","MEDIUM","Reliability",i.Metadata?.["aws:cdk:path"]||r,"cdkInsights")))}return n},n9=(t,e,s)=>{let n={},r=new Set(["AWS::RDS::DBInstance","AWS::RDS::DBCluster","AWS::ElastiCache::CacheCluster","AWS::ElastiCache::ReplicationGroup","AWS::Redshift::Cluster","AWS::OpenSearchService::Domain","AWS::Elasticsearch::Domain","AWS::ECS::Service"]),i=new Set(Object.entries(t).filter(([,o])=>r.has(o.Type)).map(([o])=>o));for(let[o,a]of Object.entries(t)){if(a.Type!=="AWS::Lambda::Function")continue;let c=a.Properties||{},u=!!(c.VpcConfig&&(c.VpcConfig.SubnetIds||c.VpcConfig.SecurityGroupIds)),l=e[o];if(!l)continue;if(l.dependencies.some(f=>i.has(f))&&!u){n[o]||(n[o]={issues:[]});let f=l.dependencies.filter(p=>i.has(p));n[o].issues.push(s(o,`Lambda function references VPC resources (${f.join(", ")}) but is not VPC-enabled`,"Configure VpcConfig with appropriate SubnetIds and SecurityGroupIds to allow the Lambda function to connect to VPC resources. Without VPC configuration, the function cannot reach private resources like RDS databases.","HIGH","Reliability",a.Metadata?.["aws:cdk:path"]||o,"cdkInsights"))}}return n},r9=(t,e)=>{let s={},n=new Map;for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::S3::Bucket")continue;let o=i.Properties||{},a=!!(o.BucketEncryption||o.ServerSideEncryptionConfiguration);n.set(r,a)}for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::S3::Bucket")continue;let a=(i.Properties||{}).ReplicationConfiguration;if(!a)continue;let c=n.get(r),u=a.Rules;if(!(!u||!Array.isArray(u)))for(let l of u){if(l.Status!=="Enabled")continue;let d=l.Destination;if(!d||!d.Bucket)continue;let p=d.EncryptionConfiguration;c&&!p&&(s[r]||(s[r]={issues:[]}),s[r].issues.push(e(r,"S3 replication configured without encryption configuration for replicated objects","Specify EncryptionConfiguration in the replication rule to ensure replicated objects maintain encryption. Use ReplicaKmsKeyID to specify the KMS key for encrypting replicated objects in the destination bucket.","MEDIUM","Security",i.Metadata?.["aws:cdk:path"]||r,"cdkInsights")))}}return s},i9=(t,e,s)=>{let n={},r=new Set([80,443,8080,8443]);for(let[i,o]of Object.entries(t)){if(o.Type!=="AWS::EC2::SecurityGroup")continue;let c=(o.Properties||{}).SecurityGroupIngress||[],u=e[i];if(!(u&&u.dependents.length>0))continue;let d=[];for(let f of c){let p=f.CidrIp,m=f.CidrIpv6,g=f.FromPort,h=f.ToPort;if(!(p==="0.0.0.0/0"||m==="::/0")||g===void 0)continue;let x=h!==void 0&&h!==g,D=!r.has(g);(x||D)&&d.push(g)}if(d.length>0){n[i]||(n[i]={issues:[]});let f=u.dependents.map(p=>t[p]?.Type?.split("::")[2]||"Unknown").join(", ");n[i].issues.push(s(i,`Security group used by ${f} has public access on non-standard ports: ${d.join(", ")}`,"Restrict ingress rules to specific CIDR blocks or reference other security groups instead of allowing 0.0.0.0/0 on non-standard ports. Consider using a bastion host or VPN for administrative access.","HIGH","Security",o.Metadata?.["aws:cdk:path"]||i,"cdkInsights"))}}return n},IA=(t,e)=>{let s=t.Resources||{},n=Zi(s),r={},i=[s9(s,n,e),n9(s,n,e),r9(s,e),i9(s,n,e)];for(let o of i)for(let[a,c]of Object.entries(o))r[a]||(r[a]={issues:[]}),r[a].issues.push(...c.issues);return r};var o9=t=>{let e=[],s=Object.values(t).map(_=>_.Type),n={};for(let _ of s)n[_]=(n[_]||0)+1;let r=s.some(_=>_==="AWS::Lambda::Function"),i=s.some(_=>_==="AWS::ApiGateway::RestApi"||_==="AWS::ApiGatewayV2::Api"),o=s.some(_=>_==="AWS::DynamoDB::Table"),a=s.some(_=>_==="AWS::S3::Bucket");r&&(o||a)&&!s.some(_=>_.includes("ECS")||_.includes("EC2::Instance"))&&e.push("serverless");let c=s.some(_=>_==="AWS::ECS::Service"||_==="AWS::ECS::TaskDefinition"||_==="AWS::ECS::Cluster"),u=s.some(_=>_.startsWith("AWS::EKS::"));(c||u)&&e.push("container-based");let l=s.some(_=>_.startsWith("AWS::Events::")),d=s.some(_=>_==="AWS::SNS::Topic"),f=s.some(_=>_==="AWS::SQS::Queue"),p=s.some(_=>_.startsWith("AWS::Kinesis::")),m=s.some(_=>_.startsWith("AWS::StepFunctions::"));(l||d||f||p||m)&&r&&e.push("event-driven"),i&&e.push("api-gateway");let g=s.some(_=>_.startsWith("AWS::Glue::")),h=s.some(_=>_.startsWith("AWS::Athena::")),y=s.some(_=>_.startsWith("AWS::EMR::"));(p||g||h||y)&&e.push("data-processing");let x=s.some(_=>_==="AWS::CloudFront::Distribution");a&&x&&!r&&!c&&e.push("static-website");let D=n["AWS::Lambda::Function"]||0,S=n["AWS::ECS::Service"]||0;(D>=3||S>=2)&&e.push("microservices");let v=s.some(_=>_==="AWS::EC2::Instance"),E=s.some(_=>_==="AWS::RDS::DBInstance"||_==="AWS::RDS::DBCluster"),T=s.some(_=>_==="AWS::ElasticLoadBalancingV2::LoadBalancer");return v&&(E||T)&&e.push("traditional"),e},a9=(t,e)=>{let s={},n=Object.values(t).map(l=>l.Type),r=n.some(l=>l==="AWS::CloudWatch::Alarm"),i=n.some(l=>l==="AWS::Lambda::Function"),o=n.some(l=>l==="AWS::ECS::Service"),a=n.some(l=>l==="AWS::RDS::DBInstance"||l==="AWS::RDS::DBCluster");(i||o||a)&&!r&&(s.__STACK_ARCHITECTURE__={issues:[e("__STACK_ARCHITECTURE__","No CloudWatch Alarms defined for critical resources","Add CloudWatch Alarms to monitor key metrics like Lambda errors, ECS task failures, or RDS connections. Consider using CDK's built-in alarm methods or aws-cdk-lib/aws-cloudwatch.","MEDIUM","Operational Excellence","Stack Architecture","cdkInsights")]});let c=n.some(l=>l==="AWS::XRay::Group"||l==="AWS::XRay::SamplingRule");return n.filter(l=>l==="AWS::Lambda::Function").length>=3&&!c&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","Multiple Lambda functions without X-Ray tracing configuration","Enable X-Ray tracing for your Lambda functions to gain visibility into distributed request flows and identify performance bottlenecks. Set tracing: lambda.Tracing.ACTIVE on your functions.","LOW","Operational Excellence","Stack Architecture","cdkInsights"))),s},c9=(t,e)=>{let s={},n=Object.values(t).map(f=>f.Type),r=n.some(f=>f==="AWS::ApiGateway::RestApi"||f==="AWS::ApiGatewayV2::Api"),i=n.some(f=>f==="AWS::ElasticLoadBalancingV2::LoadBalancer"),o=n.some(f=>f==="AWS::CloudFront::Distribution"),a=n.some(f=>f==="AWS::WAFv2::WebACL"||f==="AWS::WAF::WebACL");(r||i||o)&&!a&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","Public-facing resources without WAF protection","Consider adding AWS WAF to protect your API Gateway, ALB, or CloudFront distribution from common web exploits. WAF can help prevent SQL injection, XSS, and rate-limit malicious traffic.","MEDIUM","Security","Stack Architecture","cdkInsights")));let c=n.some(f=>f==="AWS::SecretsManager::Secret"),u=n.some(f=>f==="AWS::SSM::Parameter"),l=n.some(f=>f==="AWS::RDS::DBInstance"||f==="AWS::RDS::DBCluster"),d=!1;for(let[f,p]of Object.entries(t))if(p.Type==="AWS::Lambda::Function"){let m=p.Properties?.Environment?.Variables;if(m){let g=["PASSWORD","SECRET","API_KEY","TOKEN","CREDENTIAL"];for(let h of Object.keys(m))if(g.some(y=>h.toUpperCase().includes(y))){let y=m[h];if(typeof y=="string"&&!y.startsWith("{{")){d=!0;break}}}}return l&&!c&&!u&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","RDS database without Secrets Manager for credential rotation","Use AWS Secrets Manager to store and automatically rotate database credentials. This improves security by eliminating hardcoded passwords and enabling automatic credential rotation.","HIGH","Security","Stack Architecture","cdkInsights"))),s},u9=(t,e)=>{let s={},n=Object.values(t).filter(u=>u.Type==="AWS::EC2::NatGateway").length;n>=3&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__",`${n} NAT Gateways detected - potential cost optimization`,"Multiple NAT Gateways can be expensive ($32/month each + data processing). Consider if all are necessary, or explore alternatives like NAT instances for dev environments, or VPC endpoints for AWS services.","MEDIUM","Cost Optimization","Stack Architecture","cdkInsights")));let r=n>0,i=Object.values(t).some(u=>u.Type==="AWS::EC2::VPCEndpoint"),o=Object.values(t).some(u=>{if(u.Type!=="AWS::Lambda::Function")return!1;let l=u.Properties?.VpcConfig;return l?.SubnetIds||l?.SecurityGroupIds}),a=Object.values(t).some(u=>u.Type==="AWS::S3::Bucket"),c=Object.values(t).some(u=>u.Type==="AWS::DynamoDB::Table");return o&&r&&!i&&(a||c)&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","VPC Lambda functions accessing AWS services through NAT Gateway","Consider using VPC Endpoints (Gateway endpoints for S3/DynamoDB are free) instead of routing AWS service traffic through NAT Gateway. This reduces costs and improves latency.","LOW","Cost Optimization","Stack Architecture","cdkInsights"))),s},l9=(t,e,s)=>{let n={};for(let[r,i]of Object.entries(e)){let o=t[r];if(!o)continue;let a=i.dependents.length;if(a>=5){let c=o.Type.split("::")[2]||o.Type;n.__STACK_ARCHITECTURE__||(n.__STACK_ARCHITECTURE__={issues:[]}),n.__STACK_ARCHITECTURE__.issues.push(s("__STACK_ARCHITECTURE__",`${c} (${r}) is a potential single point of failure with ${a} dependent resources`,"Consider adding redundancy or failover mechanisms for this critical resource. For databases, consider Multi-AZ. For queues, consider dead-letter queues. For Lambda, ensure proper error handling.","MEDIUM","Reliability","Stack Architecture","cdkInsights"))}}for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::DynamoDB::Table")continue;if(i.Properties?.PointInTimeRecoverySpecification?.PointInTimeRecoveryEnabled!==!0){let a=e[r];a&&a.dependents.length>=3&&(n.__STACK_ARCHITECTURE__||(n.__STACK_ARCHITECTURE__={issues:[]}),n.__STACK_ARCHITECTURE__.issues.push(s("__STACK_ARCHITECTURE__",`Critical DynamoDB table ${r} has ${a.dependents.length} dependents but no point-in-time recovery`,"Enable Point-in-Time Recovery (PITR) for critical DynamoDB tables used by multiple resources. This provides continuous backups with 35-day retention.","HIGH","Reliability","Stack Architecture","cdkInsights")))}}return n},RA=(t,e)=>{let s=t.Resources||{};if(Object.keys(s).length<3)return{};let r=Zi(s),i=o9(s),o={},a=[a9(s,e),c9(s,e),u9(s,e),l9(s,r,e)];for(let c of a)for(let[u,l]of Object.entries(c))o[u]||(o[u]={issues:[]}),o[u].issues.push(...l.issues);return o};var TA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=R(r,n);return r.Properties?.DistributionConfig?.DefaultCacheBehavior?.ViewerProtocolPolicy==="allow-all"&&(s[n]={issues:[e(n,"CloudFront distribution allows HTTP traffic (ViewerProtocolPolicy is allow-all).",'Set ViewerProtocolPolicy to "https-only" or "redirect-to-https" to enforce HTTPS and protect data in transit.',"HIGH","Security",i,"cdkInsights")]}),s},{});var PA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=R(r,n);return r.Properties?.DistributionConfig?.WebACLId||(s[n]={issues:[e(n,"CloudFront distribution has no WAF WebACL associated.","Associate a WAF WebACL to protect against common web exploits, SQL injection, XSS, and DDoS attacks.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var OA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=R(r,n);return r.Properties?.DistributionConfig?.Logging?.Bucket||(s[n]={issues:[e(n,"CloudFront distribution does not have access logging enabled.","Enable access logging to an S3 bucket to track viewer requests for security analysis, auditing, and troubleshooting.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var d9=["SSLv3","TLSv1","TLSv1_2016","TLSv1.1_2016"],LA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=R(r,n),a=r.Properties?.DistributionConfig?.ViewerCertificate,c=a?.MinimumProtocolVersion;return a?.CloudFrontDefaultCertificate||c&&d9.includes(c)&&(s[n]={issues:[e(n,`CloudFront distribution uses outdated TLS version (${c}).`,"Use TLSv1.2_2021 or later for improved security. Older TLS versions have known vulnerabilities.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var BA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=[],o=R(r,n),a=r.Properties?.PasswordPolicy;if(!a)i.push(e(n,"Cognito User Pool has no password policy configured.","Configure a strong password policy with minimum length, uppercase, lowercase, numbers, and symbols requirements.","HIGH","Security",o,"cdkInsights"));else{let c=a.MinimumLength||8;c<12&&i.push(e(n,`Cognito password policy has minimum length of ${c} characters.`,"Set MinimumLength to at least 12 characters for stronger security against brute-force attacks.","MEDIUM","Security",o,"cdkInsights")),a.RequireSymbols===!1&&i.push(e(n,"Cognito password policy does not require symbols.","Enable RequireSymbols for stronger password complexity requirements.","LOW","Security",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var NA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=R(r,n),o=r.Properties?.MfaConfiguration;return(!o||o==="OFF")&&(s[n]={issues:[e(n,"Cognito User Pool has MFA disabled.","Enable MFA (OPTIONAL or ON) to add an extra layer of security for user authentication.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var MA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=R(r,n),o=r.Properties?.UserPoolAddOns?.AdvancedSecurityMode;return(!o||o==="OFF")&&(s[n]={issues:[e(n,"Cognito User Pool does not have advanced security features enabled.","Enable UserPoolAddOns with AdvancedSecurityMode set to AUDIT or ENFORCED to detect compromised credentials and block suspicious sign-ins.","LOW","Security",i,"cdkInsights")]}),s},{});var jA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::DynamoDB::Table")return s;let i=r.Properties?.BillingMode,o=R(r,n);return(!i||i==="PROVISIONED")&&(s[n]={issues:[e(n,"DynamoDB table uses provisioned capacity without on-demand billing.","Consider using BillingMode: PAY_PER_REQUEST for automatic scaling and cost optimization, especially for unpredictable workloads. For predictable workloads, configure Application Auto Scaling.","MEDIUM","Cost Optimization",o,"cdkInsights")]}),s},{});var $A=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::DynamoDB::Table"&&!r.Properties?.StreamSpecification&&(s[n]={issues:[e(n,"DynamoDB table does not have streams enabled.","Consider enabling DynamoDB Streams to capture item-level changes for analytics, auditing, event-driven architectures, and cross-region replication.","LOW","Operational Excellence",R(r,n),"cdkInsights")]}),s),{});var WA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::Volume")return s;let i=[],o=R(r,n),a=r.Properties??{};return a.Encrypted!==!0&&i.push(e(n,"EBS Volume is not encrypted.","Enable encryption on EBS volumes to protect data at rest. Use the Encrypted property and optionally specify a KmsKeyId.","HIGH","Security",o,"cdkInsights")),a.VolumeType==="gp2"&&i.push(e(n,"EBS Volume uses gp2 storage type.","Consider migrating to gp3 for up to 20% cost savings with better baseline performance (3,000 IOPS and 125 MB/s throughput).","MEDIUM","Cost Optimization",o,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var UA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::EC2::Instance"&&r.Properties?.InstanceType?.toString().startsWith("t2")&&(s[n]={issues:[e(n,"EC2 instance is using an older t2 instance. Consider upgrading to t3 for better performance and cost savings.","Upgrade to a t3 instance for improved performance, lower latency, and better cost efficiency.","MEDIUM","Cost Optimization",R(r,n),"cdkInsights")]}),s),{});var GA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::EC2::NatGateway"&&(s[n]={issues:[e(n,"NAT Gateway detected. NAT Gateways incur hourly charges (~$0.045/hr) plus data processing fees (~$0.045/GB).","Consider alternatives like NAT instances for lower traffic, VPC endpoints for AWS services, or IPv6 egress-only internet gateways to reduce costs.","LOW","Cost Optimization",R(r,n),"cdkInsights")]}),s),{});var p9=[22,3389,3306,5432,1433,27017,6379],f9=t=>t.CidrIp==="0.0.0.0/0"||t.CidrIpv6==="::/0",m9=(t,e,s)=>e===void 0||s===void 0?!1:t>=e&&t<=s,zA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::SecurityGroup")return s;let i=[],o=R(r,n),a=r.Properties?.SecurityGroupIngress||[],c=r.Properties?.SecurityGroupEgress||[],u=a.some(f=>f.CidrIp==="0.0.0.0/0"),l=a.some(f=>f.CidrIpv6==="::/0");u&&i.push(e(n,"Security Group allows unrestricted IPv4 ingress (0.0.0.0/0).","Restrict security group rules to specific IPs and ports.","HIGH","Security",o,"cdkInsights")),l&&i.push(e(n,"Security Group allows unrestricted IPv6 ingress (::/0).","Restrict security group rules to specific IPs and ports.","HIGH","Security",o,"cdkInsights"));for(let f of a)if(f9(f)){for(let p of p9)if(m9(p,f.FromPort,f.ToPort)){i.push(e(n,`Security Group exposes port ${p} to the internet.`,"Restrict access to management and database ports. Use bastion hosts, VPN, or AWS Systems Manager Session Manager instead.","CRITICAL","Security",o,"cdkInsights"));break}}return c.some(f=>f.CidrIp==="0.0.0.0/0")&&i.push(e(n,"Security Group allows unrestricted egress to 0.0.0.0/0.","Consider restricting egress rules to specific destinations for defense in depth.","LOW","Security",o,"cdkInsights")),a.length===0&&c.length===0&&i.push(e(n,"Security Group has no ingress or egress rules defined.","Review if this security group is in use. Empty security groups may indicate orphaned resources or misconfiguration.","LOW","Operational Excellence",o,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var h9=/(^|_)(secret|password|passwd|pwd|credential|private_key|api_key|api_secret|auth_token|access_key|access_secret|bearer_token|jwt_secret|encryption_key|signing_key)(_|$)/i,qA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=R(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a){let u=c.Environment||[];for(let l of u)h9.test(l.Name||"")&&i.push(e(n,`ECS task definition has sensitive environment variable "${l.Name}" in plaintext.`,'Use AWS Secrets Manager or SSM Parameter Store with the "secrets" property instead of plaintext environment variables.',"HIGH","Security",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var HA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=R(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a)c.LogConfiguration?.LogDriver||i.push(e(n,`ECS container "${c.Name||"unnamed"}" has no logging configuration.`,"Configure LogConfiguration with awslogs driver to send container logs to CloudWatch for monitoring and debugging.","MEDIUM","Operational Excellence",o,"cdkInsights"));return i.length>0&&(s[n]={issues:i}),s},{});var VA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=R(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a){let u=c.Memory||c.MemoryReservation,l=c.Cpu;!u&&!l&&i.push(e(n,`ECS container "${c.Name||"unnamed"}" has no CPU or memory limits defined.`,"Define CPU and Memory limits to prevent runaway containers and ensure predictable resource allocation.","LOW","Reliability",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var KA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::LoadBalancer")return s;let i=R(r,n);return(r.Properties?.LoadBalancerAttributes||[]).some(c=>c.Key==="deletion_protection.enabled"&&c.Value==="true")||(s[n]={issues:[e(n,"Load Balancer does not have deletion protection enabled.","Enable deletion protection to prevent accidental deletion of the load balancer in production environments.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var ZA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::LoadBalancer")return s;let i=R(r,n);return(r.Properties?.LoadBalancerAttributes||[]).some(c=>c.Key==="access_logs.s3.enabled"&&c.Value==="true")||(s[n]={issues:[e(n,"Load Balancer does not have access logging enabled.","Enable access logging to S3 for security analysis, auditing, and troubleshooting of traffic patterns.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var YA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::Listener")return s;let i=R(r,n),o=r.Properties?.Protocol,a=r.Properties?.Port;return o==="HTTP"&&a!==80?s[n]={issues:[e(n,`Load Balancer listener uses HTTP protocol on port ${a}.`,"Use HTTPS protocol with a valid SSL certificate to encrypt traffic in transit.","HIGH","Security",i,"cdkInsights")]}:o==="HTTP"&&a===80&&((r.Properties?.DefaultActions||[]).some(l=>l.Type==="redirect"&&l.RedirectConfig?.Protocol==="HTTPS")||(s[n]={issues:[e(n,"Load Balancer HTTP listener on port 80 does not redirect to HTTPS.","Configure the HTTP listener to redirect to HTTPS to ensure encrypted traffic.","MEDIUM","Security",i,"cdkInsights")]})),s},{});var g9=["ELBSecurityPolicy-2016-08","ELBSecurityPolicy-TLS-1-0-2015-04","ELBSecurityPolicy-TLS-1-1-2017-01","ELBSecurityPolicy-2015-05"],JA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::Listener")return s;let i=R(r,n),o=r.Properties?.Protocol,a=r.Properties?.SslPolicy;return o!=="HTTPS"&&o!=="TLS"||a&&g9.includes(a)&&(s[n]={issues:[e(n,`Load Balancer listener uses outdated security policy (${a}).`,"Use ELBSecurityPolicy-TLS13-1-2-2021-06 or later for TLS 1.3 support, or at minimum ELBSecurityPolicy-TLS-1-2-2017-01 for TLS 1.2.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var QA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::Events::Rule"&&r.Properties?.State!=="ENABLED"&&(s[n]={issues:[e(n,"EventBridge rule is disabled or not explicitly enabled.","Ensure the EventBridge rule State is set to ENABLED to trigger events as expected.","MEDIUM","Operational Excellence",R(r,n),"cdkInsights")]}),s),{});var XA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Policy"&&r.Type!=="AWS::IAM::Role")return s;let i=r.Properties?.Policies,o=[];if(Array.isArray(i))for(let u of i)u?.PolicyDocument&&o.push(u.PolicyDocument);let a=r.Properties?.PolicyDocument;a&&o.push(a);let c=[];for(let u of o){if(!u?.Statement)continue;let l=u.Statement;for(let d of l)if(d.Effect==="Allow"){let f=d.Action,p=d.Resource,m=f==="*"||Array.isArray(f)&&f.includes("*"),g=p==="*"||Array.isArray(p)&&p.includes("*");m&&g?c.push(e(n,"IAM policy allows all actions (*) on all resources (*). This grants administrative access.","Restrict both actions and resources to follow the principle of least privilege.","CRITICAL","Security",n,"cdkInsights")):m?c.push(e(n,"IAM policy allows all actions (*). This is overly permissive.","Specify only the required actions instead of using wildcards.","CRITICAL","Security",n,"cdkInsights")):g&&c.push(e(n,"IAM policy allows actions on all resources (*). This is overly permissive.","Restrict resources to specific ARNs instead of using wildcards.","HIGH","Security",n,"cdkInsights"))}}return c.length>0&&(s[n]={issues:c}),s},{});var eE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Role")return s;let i=R(r,n);return r.Properties?.PermissionsBoundary||(s[n]={issues:[e(n,"IAM Role has no permission boundary configured.","Consider using permission boundaries to limit the maximum permissions for delegated access and prevent privilege escalation.","LOW","Security",i,"cdkInsights")]}),s},{});var tE=/^\d{12}$/,sE=/arn:aws:iam::(\d{12}):root/,x9=t=>{if(!t)return[];if(typeof t=="string"){if(tE.test(t))return[t];let e=t.match(sE);return e?[e[1]]:[]}return typeof t=="object"&&t.AWS?(Array.isArray(t.AWS)?t.AWS:[t.AWS]).flatMap(s=>{if(tE.test(s))return[s];let n=s.match(sE);return n?[n[1]]:[]}):[]},nE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Role")return s;let i=[],o=R(r,n),a=r.Properties?.AssumeRolePolicyDocument;if(a?.Statement){for(let c of a.Statement)if(c.Effect==="Allow"){let u=x9(c.Principal);for(let l of u)i.push(e(n,`IAM Role allows cross-account trust from account ${l}.`,"Verify this cross-account trust relationship is intentional and the external account is trusted. Consider adding conditions to restrict access.","MEDIUM","Security",o,"cdkInsights"))}}return i.length>0&&(s[n]={issues:i}),s},{});var y9=t=>typeof t=="string"?t==="*":typeof t=="object"?Object.values(t).some(e=>Array.isArray(e)?e.includes("*"):e==="*"):!1,rE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>((r.Type==="AWS::KMS::Key"&&Array.isArray(r.Properties?.KeyPolicy?.Statement)?r.Properties.KeyPolicy.Statement:[]).some(a=>y9(a.Principal))&&(s[n]={issues:[e(n,"KMS key has a public policy.","Restrict the KMS key policy to specific IAM roles or users to prevent unauthorized access.","CRITICAL","Security",R(r,n),"cdkInsights")]}),s),{});var b9=/\b(secret|password|passwd|pwd|credential|private_key|api_key|api_secret|auth_token|access_key|access_secret|bearer_token|jwt_secret|encryption_key|signing_key)\b/i,iE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type==="AWS::Lambda::Function"){let i=Object.entries(r.Properties?.Environment?.Variables||{}).filter(([o])=>b9.test(o)).map(([o])=>e(n,`Lambda function contains sensitive environment variable: ${o}.`,"Store sensitive environment variables in AWS Secrets Manager or SSM Parameter Store instead of plaintext environment variables.","HIGH","Security",R(r,n),"cdkInsights"));i.length>0&&(s[n]={issues:i})}return s},{});var oE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type==="AWS::Lambda::Function"){let i=r.Properties?.MemorySize;typeof i=="number"&&i>1024&&(s[n]={issues:[e(n,"Lambda function has high memory allocation.","Consider reducing memory for cost savings.","MEDIUM","Cost Optimization",R(r,n),"cdkInsights")]})}return s},{});var aE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Lambda::Function")return s;let i=R(r,n);return r.Properties?.ReservedConcurrentExecutions===void 0&&(s[n]={issues:[e(n,"Lambda function has no reserved concurrency configured.","Consider setting ReservedConcurrentExecutions to prevent the function from consuming all available account concurrency and to control scaling behavior.","LOW","Reliability",i,"cdkInsights")]}),s},{});var cE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Lambda::Function")return s;let i=R(r,n);return r.Properties?.DeadLetterConfig?.TargetArn||(s[n]={issues:[e(n,"Lambda function has no Dead Letter Queue configured.","Configure a Dead Letter Queue (SQS or SNS) to capture failed async invocations for debugging, monitoring, and retry processing.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var uE=(t,e)=>Object.values(t.Resources||{}).some(n=>n.Type==="AWS::EC2::NatGateway")?Object.entries(t.Resources||{}).reduce((n,[r,i])=>{if(i.Type!=="AWS::Lambda::Function")return n;let o=R(i,r),a=i.Properties?.VpcConfig;return a?.SubnetIds&&a.SubnetIds.length>0&&(n[r]={issues:[e(r,"Lambda function in VPC with NAT Gateway detected. NAT Gateway costs can accumulate quickly.","Evaluate if VPC attachment is necessary. Consider using VPC endpoints for AWS services to reduce NAT costs. NAT Gateway charges ~$0.045/hr plus $0.045/GB processed.","MEDIUM","Cost Optimization",o,"cdkInsights")]}),n},{}):{};var lE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::RDS::DBInstance"&&r.Properties?.StorageEncrypted!==!0&&(s[n]={issues:[e(n,"RDS instance is not encrypted.","Enable encryption to protect data at rest and meet compliance standards.","CRITICAL","Security",R(r,n),"cdkInsights")]}),s),{});var dE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=r.Properties??{},o=i.MultiAZ===!0,a=i.StorageType==="gp2",c=typeof i.StorageType>"u";return o&&(a||c)&&(s[n]={issues:[e(n,a?"RDS instance is using Multi-AZ with gp2 storage. Consider gp3 for lower costs.":"RDS instance is using Multi-AZ without explicitly setting a storage type. gp3 may offer better performance and cost savings.","Switch to gp3 storage for RDS to reduce costs and improve performance.","MEDIUM","Cost Optimization",R(r,n),"cdkInsights")]}),s},{});var pE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=R(r,n);return r.Properties?.PubliclyAccessible===!0&&(s[n]={issues:[e(n,"RDS instance is publicly accessible from the internet.","Set PubliclyAccessible to false and access the database through private subnets, bastion hosts, or VPN.","CRITICAL","Security",i,"cdkInsights")]}),s},{});var fE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=R(r,n),o=r.Properties?.BackupRetentionPeriod;return o===0?s[n]={issues:[e(n,"RDS instance has automated backups disabled (BackupRetentionPeriod is 0).","Enable automated backups with at least 7 days retention for production databases to enable point-in-time recovery.","HIGH","Reliability",i,"cdkInsights")]}:o!==void 0&&o<7&&(s[n]={issues:[e(n,`RDS backup retention period is only ${o} day(s).`,"Consider increasing backup retention to at least 7 days for production databases.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var mE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=R(r,n);return r.Properties?.DeletionProtection!==!0&&(s[n]={issues:[e(n,"RDS instance does not have deletion protection enabled.","Enable DeletionProtection to prevent accidental database deletion.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var hE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=[],o=r.Properties??{},a=R(r,n);o.BucketEncryption||i.push(e(n,"S3 Bucket lacks encryption.","Enable encryption at rest for better security.","HIGH","Security",a,"cdkInsights"));let c=o?.PublicAccessBlockConfiguration;return c?(c.BlockPublicAcls===!1&&i.push(e(n,"S3 Bucket allows public ACLs (BlockPublicAcls is false).","Set BlockPublicAcls to true to prevent public ACLs from being applied.","CRITICAL","Security",a,"cdkInsights")),c.BlockPublicPolicy===!1&&i.push(e(n,"S3 Bucket allows public bucket policies (BlockPublicPolicy is false).","Set BlockPublicPolicy to true to prevent public bucket policies.","CRITICAL","Security",a,"cdkInsights")),c.IgnorePublicAcls===!1&&i.push(e(n,"S3 Bucket does not ignore public ACLs (IgnorePublicAcls is false).","Set IgnorePublicAcls to true to ignore any public ACLs on the bucket.","HIGH","Security",a,"cdkInsights")),c.RestrictPublicBuckets===!1&&i.push(e(n,"S3 Bucket does not restrict public bucket access (RestrictPublicBuckets is false).","Set RestrictPublicBuckets to true to restrict access to the bucket to only authorized users.","HIGH","Security",a,"cdkInsights"))):i.push(e(n,"S3 Bucket has no PublicAccessBlockConfiguration defined.","Configure PublicAccessBlockConfiguration with BlockPublicAcls, BlockPublicPolicy, IgnorePublicAcls, and RestrictPublicBuckets all set to true.","HIGH","Security",a,"cdkInsights")),o.VersioningConfiguration||i.push(e(n,"S3 Bucket has no versioning enabled.","Enable versioning to protect against accidental deletions.","MEDIUM","Operational Excellence",a,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var gE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::S3::Bucket"&&!r.Properties?.IntelligentTieringConfigurations&&(s[n]={issues:[e(n,"S3 Bucket does not use Intelligent-Tiering. Consider enabling it for cost optimization.","Enable Intelligent-Tiering for automatic cost optimization of infrequently accessed objects.","LOW","Cost Optimization",R(r,n),"cdkInsights")]}),s),{});var xE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=R(r,n);return(r.Properties?.LifecycleConfiguration?.Rules||[]).length===0&&(s[n]={issues:[e(n,"S3 bucket has no lifecycle policy configured.","Configure lifecycle rules to automatically transition objects to cheaper storage classes (e.g., Glacier) or delete old versions to optimize storage costs.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var v9=/\b(prod|production|critical|backup|dr|disaster|recovery|primary)\b/i,yE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=R(r,n),o=r.Properties?.BucketName||n,a=r.Properties?.ReplicationConfiguration;return v9.test(o)&&!a?.Rules?.length&&(s[n]={issues:[e(n,"Critical S3 bucket does not have cross-region replication configured.","Consider enabling cross-region replication for disaster recovery and data durability on production/critical buckets.","LOW","Reliability",i,"cdkInsights")]}),s},{});var bE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{let i=r.Properties??{};return r.Type==="AWS::SecretsManager::Secret"&&i.PublicPolicy&&(s[n]={issues:[e(n,"Secret is publicly accessible.","Restrict secret access using IAM policies to ensure only authorized entities can retrieve it.","CRITICAL","Security",R(r,n),"cdkInsights")]}),s},{});var vE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::SNS::Topic"&&!r.Properties?.KmsMasterKeyId&&(s[n]={issues:[e(n,"SNS topic is not encrypted.","Enable AWS KMS encryption for SNS to protect sensitive messages in transit and at rest.","HIGH","Security",R(r,n),"cdkInsights")]}),s),{});var DE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::SQS::Queue"&&!r.Properties?.KmsMasterKeyId&&(s[n]={issues:[e(n,"SQS queue is not encrypted.","Enable AWS KMS encryption for SQS to protect message data in transit and at rest.","HIGH","Security",R(r,n),"cdkInsights")]}),s),{});var SE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::StepFunctions::StateMachine"&&r.Properties?.LoggingConfiguration===void 0&&(s[n]={issues:[e(n,"Step Function lacks logging configuration.","Enable logging for the Step Function using AWS CloudWatch to improve monitoring and debugging.","HIGH","Security",R(r,n),"cdkInsights")]}),s),{});var D9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="Custom::S3BucketNotifications"),CE=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Lambda::EventSourceMapping"),wE=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Events::Rule"),AE=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type!=="AWS::ElasticLoadBalancingV2::Listener"?!1:(s.Properties?.DefaultActions||s.Properties?.Actions)?.some(r=>r.TargetGroupArn?.startsWith(e))),S9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Lambda::Permission"&&e.Properties?.Principal==="apigateway.amazonaws.com"),kd=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::ApiGateway::Integration"&&typeof s.Properties?.Uri=="string"&&s.Properties.Uri.includes(e)),Ac=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::IoT::TopicRule"&&s.Properties?.TopicRulePayload?.actions?.some(n=>Object.hasOwn(n,e))),C9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::ECS::Service"),EE=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::SNS::Subscription"&&s.Properties?.Protocol===e),FE=(t,e)=>{let s=[],n={},r={};for(let[o,a]of Object.entries(e)){let c=a.requiredResourceTypes||[];if(c.length!==0){r[o]=c.length;for(let u of c)n[u]||(n[u]=[]),n[u].push(o)}}let i={};for(let o of Object.values(t.Resources||{})){let a=o.Type,c=n[a];if(c){for(let u of c)if(i[u]=(i[u]||0)+1,i[u]===r[u]){let l=e[u],d=!0;switch(u){case"aws-s3-lambda":d=D9(t)||CE(t);break;case"aws-dynamodbstreams-lambda":d=CE(t);break;case"aws-eventbridge-lambda":d=wE(t);break;case"aws-alb-fargate":d=AE(t,"arn:aws:ecs:");break;case"aws-alb-lambda":d=AE(t,"arn:aws:lambda:");break;case"aws-apigateway-lambda":d=S9(t);break;case"aws-apigateway-sqs":d=kd(t,"sqs");break;case"aws-apigateway-dynamodb":d=kd(t,"dynamodb");break;case"aws-apigateway-kinesisstreams":d=kd(t,"kinesis");break;case"aws-apigateway-sagemakerendpoint":d=kd(t,"sagemaker");break;case"aws-iot-lambda":d=Ac(t,"lambda");break;case"aws-iot-kinesisstreams":d=Ac(t,"kinesis");break;case"aws-iot-kinesisfirehose-s3":d=Ac(t,"firehose");break;case"aws-iot-sqs":d=Ac(t,"sqs");break;case"aws-iot-s3":d=Ac(t,"s3");break;case"aws-sns-lambda":d=EE(t,"lambda");break;case"aws-sns-sqs":d=EE(t,"sqs");break;case"aws-fargate-dynamodb":case"aws-fargate-eventbridge":case"aws-fargate-kinesisfirehose":case"aws-fargate-kinesisstreams":case"aws-fargate-opensearch":case"aws-fargate-s3":case"aws-fargate-secretsmanager":case"aws-fargate-sns":case"aws-fargate-sqs":case"aws-fargate-ssmstringparameter":case"aws-fargate-stepfunctions":d=C9(t);break;case"aws-eventbridge-kinesisfirehose-s3":case"aws-eventbridge-kinesisstreams":case"aws-eventbridge-sns":case"aws-eventbridge-sqs":case"aws-eventbridge-stepfunctions":d=wE(t);break}if(!d)continue;s.push({resourceId:l.className,issue:`Possible Pattern detected: ${l.friendlyName}`,recommendation:`Consider using the AWS Solutions Construct \`${l.className}\` from \`@aws-solutions-constructs/${u}\`.`,severity:"LOW",wafPillar:"Operational Excellence",docUrl:l.documentationUrl,githubUrl:l.githubUrl,constructPath:l.className,foundBy:"cdkInsights"}),delete r[u]}}}return s};var _E=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::WAFv2::WebACL")return s;let i=R(r,n),o=[],a=r.Properties?.DefaultAction;a?.Allow&&!a?.Block&&o.push(e(n,"WAF WebACL has default action set to Allow, which permits all traffic not matching rules.","Consider setting the default action to Block and explicitly allowing known-good traffic patterns for defense-in-depth.","MEDIUM","Security",i,"cdkInsights")),r.Properties?.VisibilityConfig?.CloudWatchMetricsEnabled||o.push(e(n,"WAF WebACL does not have CloudWatch metrics enabled.","Enable CloudWatchMetricsEnabled in VisibilityConfig to monitor WAF activity and detect potential attacks.","MEDIUM","Security",i,"cdkInsights"));let u=r.Properties?.Rules;return(!u||u.length===0)&&o.push(e(n,"WAF WebACL has no rules defined.","Add WAF rules to protect against common web exploits like SQL injection, XSS, and bot traffic.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var kE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::WebACL"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::LoggingConfiguration"),r=new Set(n.map(([,i])=>{let o=i.Properties?.ResourceArn;return typeof o=="string"?o:o?.Ref?o.Ref:o?.["Fn::GetAtt"]?.[0]?o["Fn::GetAtt"][0]:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=R(a,o);return r.has(o)||n.some(([,l])=>{let d=l.Properties?.ResourceArn;return typeof d=="object"&&(d?.Ref===o||d?.["Fn::GetAtt"]?.[0]===o)})||(i[o]={issues:[e(o,"WAF WebACL does not have logging configured.","Enable WAF logging to capture detailed information about web requests for security analysis and compliance.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var IE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Logs::LogGroup")return s;let i=R(r,n);return r.Properties?.RetentionInDays===void 0&&(s[n]={issues:[e(n,"CloudWatch Log Group has no retention period set (logs retained indefinitely).","Set RetentionInDays to control storage costs. Consider 30-90 days for operational logs, longer for compliance requirements.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var RE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Logs::LogGroup")return s;let i=R(r,n);return r.Properties?.KmsKeyId||(s[n]={issues:[e(n,"CloudWatch Log Group is not encrypted with a customer-managed KMS key.","Enable KMS encryption using KmsKeyId to protect sensitive log data at rest with customer-managed keys.","LOW","Security",i,"cdkInsights")]}),s},{});var TE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudWatch::Alarm")return s;let i=R(r,n),o=[],a=r.Properties?.AlarmActions,c=r.Properties?.OKActions,u=r.Properties?.InsufficientDataActions;return(!a||a.length===0)&&o.push(e(n,"CloudWatch Alarm has no alarm actions configured.","Add AlarmActions (SNS topic, Lambda, etc.) to receive notifications when the alarm state changes to ALARM.","MEDIUM","Operational Excellence",i,"cdkInsights")),r.Properties?.TreatMissingData||o.push(e(n,"CloudWatch Alarm does not specify how to treat missing data.","Set TreatMissingData to define alarm behavior when data points are missing (missing, ignore, breaching, or notBreaching).","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var PE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::HostedZone"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::DNSSEC"),r=new Set(n.map(([,i])=>{let o=i.Properties?.HostedZoneId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{if(a.Properties?.HostedZoneConfig?.Comment?.includes("private"))return i;let c=R(a,o);return r.has(o)||(i[o]={issues:[e(o,"Route53 Hosted Zone does not have DNSSEC signing enabled.","Enable DNSSEC to protect against DNS spoofing and cache poisoning attacks by cryptographically signing DNS records.","LOW","Security",c,"cdkInsights")]}),i},{})};var OE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Route53::HealthCheck")return s;let i=R(r,n),o=[],a=r.Properties?.HealthCheckConfig;return a?.Type==="HTTP"&&o.push(e(n,"Route53 Health Check uses HTTP instead of HTTPS.","Use HTTPS for health checks to ensure the endpoint supports secure connections and to validate SSL certificates.","LOW","Security",i,"cdkInsights")),a?.RequestInterval===30&&o.push(e(n,"Route53 Health Check uses standard (30 second) request interval.","Consider using fast interval (10 seconds) for critical endpoints to detect failures more quickly.","LOW","Reliability",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var LE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::HostedZone"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::QueryLoggingConfig"),r=new Set(n.map(([,i])=>{let o=i.Properties?.HostedZoneId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=R(a,o);return r.has(o)||(i[o]={issues:[e(o,"Route53 Hosted Zone does not have query logging enabled.","Enable query logging to CloudWatch Logs for DNS query analysis, troubleshooting, and security monitoring.","LOW","Security",c,"cdkInsights")]}),i},{})};var BE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup"&&r.Type!=="AWS::ElastiCache::CacheCluster")return s;let i=R(r,n),o=[];return r.Properties?.AtRestEncryptionEnabled!==!0&&o.push(e(n,"ElastiCache cluster does not have encryption at rest enabled.","Enable AtRestEncryptionEnabled to protect cached data at rest using AWS-managed or customer-managed keys.","HIGH","Security",i,"cdkInsights")),r.Properties?.TransitEncryptionEnabled!==!0&&o.push(e(n,"ElastiCache cluster does not have encryption in transit enabled.","Enable TransitEncryptionEnabled to protect data during transfer between clients and the cache.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var NE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup")return s;let i=R(r,n),o=[],a=r.Properties?.AuthToken,c=r.Properties?.TransitEncryptionEnabled;return!a&&c===!0&&o.push(e(n,"ElastiCache Redis cluster has transit encryption but no AUTH token configured.","Set AuthToken to require authentication for Redis connections, providing an additional security layer.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var ME=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup")return s;let i=R(r,n),o=[],a=r.Properties?.AutomaticFailoverEnabled,c=r.Properties?.NumNodeGroups||1,u=r.Properties?.ReplicasPerNodeGroup||0;return a!==!0&&(c>1||u>0)&&o.push(e(n,"ElastiCache replication group has replicas but automatic failover is not enabled.","Enable AutomaticFailoverEnabled to automatically promote a replica to primary if the primary node fails.","MEDIUM","Reliability",i,"cdkInsights")),r.Properties?.MultiAZEnabled!==!0&&a===!0&&o.push(e(n,"ElastiCache replication group has automatic failover but Multi-AZ is not enabled.","Enable MultiAZEnabled to distribute nodes across availability zones for higher availability.","MEDIUM","Reliability",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var jE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=R(r,n),o=[];return r.Properties?.ImageScanningConfiguration?.ScanOnPush!==!0&&o.push(e(n,"ECR repository does not have image scanning on push enabled.","Enable ScanOnPush in ImageScanningConfiguration to automatically scan images for vulnerabilities when pushed.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var $E=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=R(r,n);return r.Properties?.LifecyclePolicy?.LifecyclePolicyText||(s[n]={issues:[e(n,"ECR repository does not have a lifecycle policy configured.","Add a lifecycle policy to automatically clean up old or untagged images and reduce storage costs.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var WE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=R(r,n);return r.Properties?.ImageTagMutability!=="IMMUTABLE"&&(s[n]={issues:[e(n,"ECR repository allows mutable image tags.","Set ImageTagMutability to IMMUTABLE to prevent image tags from being overwritten, ensuring deployment consistency.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var UE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=R(r,n),o=[];return r.Properties?.EncryptionAtRestOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have encryption at rest enabled.","Enable EncryptionAtRestOptions to protect indexed data at rest using AWS KMS.","HIGH","Security",i,"cdkInsights")),r.Properties?.NodeToNodeEncryptionOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have node-to-node encryption enabled.","Enable NodeToNodeEncryptionOptions to encrypt data in transit between nodes within the cluster.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var GE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=R(r,n),o=[];r.Properties?.AdvancedSecurityOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have fine-grained access control enabled.","Enable AdvancedSecurityOptions to use IAM or internal user database for document-level and field-level security.","MEDIUM","Security",i,"cdkInsights"));let c=r.Properties?.VPCOptions;return(!c?.SubnetIds||c.SubnetIds.length===0)&&o.push(e(n,"OpenSearch domain is not deployed within a VPC.","Configure VPCOptions with subnet IDs to deploy the domain within a VPC for network isolation.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var zE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=R(r,n),o=[],a=r.Properties?.LogPublishingOptions;return a?.AUDIT_LOGS?.Enabled||o.push(e(n,"OpenSearch domain does not have audit logging enabled.","Enable AUDIT_LOGS in LogPublishingOptions to track user activity for security and compliance monitoring.","LOW","Security",i,"cdkInsights")),a?.ES_APPLICATION_LOGS?.Enabled||o.push(e(n,"OpenSearch domain does not have application logging enabled.","Enable ES_APPLICATION_LOGS in LogPublishingOptions to capture error logs for troubleshooting.","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var qE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CertificateManager::Certificate")return s;let i=R(r,n),o=[];return r.Properties?.ValidationMethod==="EMAIL"&&o.push(e(n,"ACM certificate uses email validation instead of DNS validation.","Use DNS validation for automated certificate renewal. Email validation requires manual intervention for renewals.","LOW","Operational Excellence",i,"cdkInsights")),r.Properties?.CertificateTransparencyLoggingPreference==="DISABLED"&&o.push(e(n,"ACM certificate has certificate transparency logging disabled.","Enable certificate transparency logging for security monitoring and to detect misissued certificates.","LOW","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var HE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Backup::BackupPlan")return s;let i=R(r,n),o=[],c=r.Properties?.BackupPlan?.BackupPlanRule||[];for(let u of c){(u.CopyActions||[]).length===0&&o.push(e(n,`Backup rule "${u.RuleName||"unnamed"}" does not have cross-region copy configured.`,"Add CopyActions to replicate backups to another region for disaster recovery.","LOW","Reliability",i,"cdkInsights"));let d=u.Lifecycle;!d?.DeleteAfterDays&&!d?.MoveToColdStorageAfterDays&&o.push(e(n,`Backup rule "${u.RuleName||"unnamed"}" has no lifecycle configuration.`,"Set DeleteAfterDays or MoveToColdStorageAfterDays to manage backup retention and costs.","LOW","Cost Optimization",i,"cdkInsights"))}return o.length>0&&(s[n]={issues:o}),s},{});var VE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Backup::BackupVault"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Backup::BackupVaultLock"),r=new Set(n.map(([,i])=>{let o=i.Properties?.BackupVaultName;return typeof o=="string"?o:typeof o=="object"&&o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=R(a,o),u=[];a.Properties?.EncryptionKeyArn||u.push(e(o,"Backup vault uses default AWS-managed encryption key.","Specify a customer-managed KMS key using EncryptionKeyArn for additional control over encryption.","LOW","Security",c,"cdkInsights"));let d=a.Properties?.BackupVaultName,f=typeof d=="string"?d:typeof d=="object"?d?.Ref:void 0;return r.has(o)||f&&r.has(f)||u.push(e(o,"Backup vault does not have a vault lock configured.","Add a BackupVaultLock to enforce retention policies and prevent backup deletion for compliance requirements.","LOW","Security",c,"cdkInsights")),u.length>0&&(i[o]={issues:u}),i},{})};var KE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::EC2::VPC"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::EC2::FlowLog"),r=new Set(n.filter(([,i])=>i.Properties?.ResourceType==="VPC").map(([,i])=>{let o=i.Properties?.ResourceId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=R(a,o);return r.has(o)||(i[o]={issues:[e(o,"VPC does not have flow logs enabled.","Enable VPC Flow Logs to capture network traffic information for security analysis and troubleshooting.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var ZE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::SecurityGroup")return s;let i=R(r,n);if(r.Properties?.GroupName==="default"){let a=r.Properties?.SecurityGroupIngress||[],c=r.Properties?.SecurityGroupEgress||[];(a.length>0||c.length>0)&&(s[n]={issues:[e(n,"VPC default security group has rules configured.","Remove all rules from the default security group and use custom security groups instead. Default groups cannot be deleted but should have no rules.","MEDIUM","Security",i,"cdkInsights")]})}return s},{});var YE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Kinesis::Stream")return s;let i=R(r,n),o=[],a=r.Properties?.StreamEncryption;return(!a?.EncryptionType||a.EncryptionType==="NONE")&&o.push(e(n,"Kinesis Data Stream does not have server-side encryption enabled.","Enable StreamEncryption with EncryptionType KMS to protect data at rest.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var JE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Kinesis::Stream")return s;let i=R(r,n),o=[];r.Properties?.RetentionPeriodHours===24&&o.push(e(n,"Kinesis Data Stream uses minimum retention period (24 hours).","Consider increasing RetentionPeriodHours for applications that need to replay or reprocess data during failures.","LOW","Reliability",i,"cdkInsights"));let c=r.Properties?.StreamModeDetails?.StreamMode;return o.length>0&&(s[n]={issues:o}),s},{});var QE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::AppSync::GraphQLApi")return s;let i=R(r,n),o=[],a=r.Properties?.AuthenticationType;a==="API_KEY"&&o.push(e(n,"AppSync API uses API key authentication.","Consider using AWS_IAM, AMAZON_COGNITO_USER_POOLS, or OPENID_CONNECT for production workloads. API keys are best for development or public read-only access.","MEDIUM","Security",i,"cdkInsights"));let c=r.Properties?.AdditionalAuthenticationProviders;return a!=="AWS_IAM"&&(!c||c.length===0)&&o.push(e(n,"AppSync API does not have multiple authentication providers configured.","Consider adding AdditionalAuthenticationProviders for flexibility in authenticating different client types.","LOW","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var XE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::AppSync::GraphQLApi")return s;let i=R(r,n),o=[],a=r.Properties?.LogConfig;return a?a.FieldLogLevel==="NONE"&&o.push(e(n,"AppSync API has field-level logging disabled.","Set FieldLogLevel to ERROR or ALL to capture GraphQL resolver execution details.","LOW","Operational Excellence",i,"cdkInsights")):o.push(e(n,"AppSync API does not have logging configured.","Enable LogConfig to capture request/response logs in CloudWatch for debugging and monitoring.","MEDIUM","Operational Excellence",i,"cdkInsights")),r.Properties?.XrayEnabled!==!0&&o.push(e(n,"AppSync API does not have X-Ray tracing enabled.","Enable XrayEnabled for distributed tracing and performance analysis.","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var eF=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::AppSync::GraphQLApi"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::WebACLAssociation"),r=new Set(n.map(([,i])=>{let o=i.Properties?.ResourceArn;return typeof o=="string"?o:o?.["Fn::GetAtt"]?.[0]?o["Fn::GetAtt"][0]:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=R(a,o);return r.has(o)||(i[o]={issues:[e(o,"AppSync API does not have AWS WAF protection.","Associate a WAF WebACL to protect against common web exploits and control access to the API.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var tF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=R(r,n),o=[],a=r.Properties?.ResourcesVpcConfig,c=a?.EndpointPublicAccess,u=a?.EndpointPrivateAccess,l=a?.PublicAccessCidrs;return c===!0&&u!==!0&&o.push(e(n,"EKS cluster has only public endpoint access enabled.","Enable EndpointPrivateAccess to allow communication between nodes and the API server within the VPC.","MEDIUM","Security",i,"cdkInsights")),c===!0&&(!l||l.length===0||l.includes("0.0.0.0/0"))&&o.push(e(n,"EKS cluster public endpoint is accessible from the internet (0.0.0.0/0).","Restrict PublicAccessCidrs to specific IP ranges that need to access the Kubernetes API.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var sF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=R(r,n),o=[];return r.Properties?.EncryptionConfig?.some(u=>u.Resources?.includes("secrets"))||o.push(e(n,"EKS cluster does not have Kubernetes secrets encryption enabled.","Configure EncryptionConfig with a KMS key to encrypt secrets stored in etcd.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var nF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=R(r,n),o=[],c=r.Properties?.Logging?.ClusterLogging?.EnabledTypes||[],u=c.map(f=>f.Type).filter(f=>!!f),d=["api","audit","authenticator","controllerManager","scheduler"].filter(f=>!u.includes(f));return d.length>0&&o.push(e(n,`EKS cluster is missing control plane logging for: ${d.join(", ")}.`,"Enable all control plane log types (api, audit, authenticator, controllerManager, scheduler) for comprehensive cluster monitoring.","MEDIUM","Operational Excellence",i,"cdkInsights")),c.length===0?(s[n]={issues:[e(n,"EKS cluster does not have any control plane logging enabled.","Enable control plane logging to CloudWatch for audit trails and troubleshooting Kubernetes API issues.","MEDIUM","Security",i,"cdkInsights")]},s):(o.length>0&&(s[n]={issues:o}),s)},{});var rF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=R(r,n),o=[];return r.Properties?.Encrypted!==!0&&o.push(e(n,"Redshift cluster does not have encryption at rest enabled.","Set Encrypted to true and specify a KmsKeyId to protect data at rest.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var iF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=R(r,n);return r.Properties?.PubliclyAccessible===!0&&(s[n]={issues:[e(n,"Redshift cluster is publicly accessible.","Set PubliclyAccessible to false and use VPC endpoints or bastion hosts for secure access.","CRITICAL","Security",i,"cdkInsights")]}),s},{});var oF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=R(r,n);return r.Properties?.LoggingProperties?.BucketName||(s[n]={issues:[e(n,"Redshift cluster does not have audit logging enabled.","Configure LoggingProperties with an S3 bucket to capture connection logs, user activity, and query activity.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var aF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=R(r,n),o=[],a=r.Properties?.EncryptionInfo;a?.EncryptionAtRest?.DataVolumeKMSKeyId||o.push(e(n,"MSK cluster does not use a customer-managed KMS key for encryption at rest.","Specify DataVolumeKMSKeyId in EncryptionAtRest for additional control over data encryption.","LOW","Security",i,"cdkInsights"));let u=a?.EncryptionInTransit;return u?.ClientBroker!=="TLS"&&o.push(e(n,"MSK cluster does not enforce TLS encryption for client-broker communication.","Set ClientBroker to TLS in EncryptionInTransit to encrypt data between clients and brokers.","HIGH","Security",i,"cdkInsights")),u?.InCluster!==!0&&o.push(e(n,"MSK cluster does not have encryption enabled for inter-broker communication.","Set InCluster to true in EncryptionInTransit to encrypt data between brokers.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var cF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=R(r,n),o=[],a=r.Properties?.ClientAuthentication,c=(a?.Tls?.CertificateAuthorityArnList?.length??0)>0,u=a?.Sasl?.Scram?.Enabled===!0||a?.Sasl?.Iam?.Enabled===!0,l=a?.Unauthenticated?.Enabled===!0;return!c&&!u&&o.push(e(n,"MSK cluster does not have client authentication configured.","Enable SASL/SCRAM, IAM authentication, or mutual TLS for client authentication.","HIGH","Security",i,"cdkInsights")),l&&o.push(e(n,"MSK cluster allows unauthenticated access.","Disable unauthenticated access and require client authentication for all connections.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var uF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=R(r,n),o=[],c=r.Properties?.LoggingInfo?.BrokerLogs,u=c?.CloudWatchLogs?.Enabled===!0,l=c?.Firehose?.Enabled===!0,d=c?.S3?.Enabled===!0;return!u&&!l&&!d&&o.push(e(n,"MSK cluster does not have broker logging configured.","Enable broker logs to CloudWatch, Firehose, or S3 for monitoring and troubleshooting Kafka operations.","MEDIUM","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var lF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Glue::Job")return s;let i=R(r,n),o=[];return r.Properties?.SecurityConfiguration||o.push(e(n,"Glue job does not have a security configuration specified.","Create and attach a SecurityConfiguration to enable encryption for job bookmarks, S3 data, and CloudWatch logs.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var dF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Glue::Connection")return s;let i=R(r,n),o=[],a=r.Properties?.ConnectionInput,c=a?.ConnectionType,u=a?.PhysicalConnectionRequirements;if(c==="JDBC"){u?.SubnetId||o.push(e(n,"Glue JDBC connection does not specify a VPC subnet.","Configure PhysicalConnectionRequirements with SubnetId and SecurityGroupIdList for network isolation.","MEDIUM","Security",i,"cdkInsights"));let d=a?.ConnectionProperties?.JDBC_CONNECTION_URL||"";typeof d=="string"&&!d.includes("ssl=true")&&!d.includes("useSSL=true")&&o.push(e(n,"Glue JDBC connection URL may not enforce SSL.","Ensure the JDBC connection URL includes SSL parameters to encrypt data in transit.","LOW","Security",i,"cdkInsights"))}return o.length>0&&(s[n]={issues:o}),s},{});var pF=()=>({iamPolicies:XA,iamPermissionBoundary:eE,iamCrossAccountTrust:nE,s3Buckets:hE,s3IntelligentTiering:gE,s3LifecyclePolicy:xE,s3Replication:yE,securityGroups:zA,ec2InstanceType:UA,natGatewayUsage:GA,ebsVolumes:WA,lambdaEnvironmentVariables:iE,lambdaMemory:oE,lambdaReservedConcurrency:aE,lambdaDeadLetterQueue:cE,lambdaVpcNatWarning:uE,rdsEncryption:lE,rdsMultiAZ:dE,rdsPublicAccess:pE,rdsBackupRetention:fE,rdsDeletionProtection:mE,dynamoDBAutoScaling:jA,dynamoDBStreams:$A,cloudFrontHttpsOnly:TA,cloudFrontWafAssociation:PA,cloudFrontLogging:OA,cloudFrontTls:LA,elbDeletionProtection:KA,elbLogging:ZA,elbHttpsListeners:YA,elbSecurityPolicy:JA,ecsSecrets:qA,ecsLogging:HA,ecsResources:VA,cognitoPasswordPolicy:BA,cognitoMfa:NA,cognitoAdvancedSecurity:MA,wafWebAcl:_E,wafLogging:kE,cloudWatchLogRetention:IE,cloudWatchEncryption:RE,cloudWatchAlarms:TE,route53Dnssec:PE,route53HealthChecks:OE,route53QueryLogging:LE,elastiCacheEncryption:BE,elastiCacheAuth:NE,elastiCacheFailover:ME,ecrScanning:jE,ecrLifecycle:$E,ecrImmutableTags:WE,openSearchEncryption:UE,openSearchAccessControl:GE,openSearchLogging:zE,acmValidation:qE,backupPlans:HE,backupVault:VE,vpcFlowLogs:KE,vpcDefaultSecurityGroup:ZE,kinesisEncryption:YE,kinesisRetention:JE,appSyncAuth:QE,appSyncLogging:XE,appSyncWaf:eF,eksPublicEndpoint:tF,eksEncryption:sF,eksLogging:nF,redshiftEncryption:rF,redshiftPublicAccess:iF,redshiftLogging:oF,mskEncryption:aF,mskAuth:cF,mskLogging:uF,glueEncryption:lF,glueConnections:dF,apiGateway:_A,secretsManager:bE,cloudTrailLogging:kA,eventBridgeRules:QA,kmsKeys:rE,sns:vE,sqs:DE,stepFunctions:SE,crossResourceRelationships:IA,stackArchitecture:RA,solutionsPatterns:FE});var Ec=(t={})=>{let{ttl:e=3e5,maxSize:s=1e3}=t,n=new Map,r=new Set,i=[],o=Date.now(),a=6e4,c=p=>Date.now()-p.timestamp>p.ttl,u=p=>{r.delete(p)},l=()=>{let p=0;for(let m=0;m<i.length;m++)r.has(i[m])&&(i[p++]=i[m]);i.length=p},d=()=>{let p=Date.now();if(p-o<a)return;o=p;let m=[];for(let[g,h]of n.entries())c(h)&&m.push(g);for(let g of m)n.delete(g),u(g);m.length>0&&l()},f=()=>{for(;n.size>=s&&i.length>0;){let p=i.shift();p&&r.has(p)&&(n.delete(p),r.delete(p))}};return{get(p){let m=n.get(p);if(m){if(c(m)){n.delete(p),u(p);return}return m.value}},set(p,m,g){n.size>=s*.9&&d(),f(),r.has(p)&&u(p),n.set(p,{value:m,timestamp:Date.now(),ttl:g??e}),r.add(p),i.push(p)},clear(){n.clear(),r.clear(),i.length=0},size(){return n.size},has(p){let m=n.get(p);return m?c(m)?(n.delete(p),u(p),!1):!0:!1}}},fF=(t,e={})=>{let s=Ec(e);return(...n)=>{let r;try{r=JSON.stringify(n)}catch{return t(...n)}let i=s.get(r);if(i!==void 0)return i;let o=t(...n);return s.set(r,o),o}};var w9={IAM:["AWS::IAM::"],S3:["AWS::S3::"],Lambda:["AWS::Lambda::"],DynamoDB:["AWS::DynamoDB::"],RDS:["AWS::RDS::"],EC2:["AWS::EC2::"],SNS:["AWS::SNS::"],SQS:["AWS::SQS::"],StepFunctions:["AWS::StepFunctions::"],CloudTrail:["AWS::CloudTrail::"],ApiGateway:["AWS::ApiGateway::","AWS::ApiGatewayV2::"],SecretsManager:["AWS::SecretsManager::"],KMS:["AWS::KMS::"],EventBridge:["AWS::Events::"],CloudFront:["AWS::CloudFront::"],ELB:["AWS::ElasticLoadBalancing::","AWS::ElasticLoadBalancingV2::"],ECS:["AWS::ECS::"],Cognito:["AWS::Cognito::"],WAF:["AWS::WAFv2::","AWS::WAF::"],CloudWatch:["AWS::CloudWatch::","AWS::Logs::"],Route53:["AWS::Route53::"],ElastiCache:["AWS::ElastiCache::"],ECR:["AWS::ECR::"],OpenSearch:["AWS::OpenSearchService::","AWS::Elasticsearch::"],ACM:["AWS::CertificateManager::"],Backup:["AWS::Backup::"],VPC:["AWS::EC2::VPC","AWS::EC2::FlowLog","AWS::EC2::SecurityGroup"],Kinesis:["AWS::Kinesis::"],AppSync:["AWS::AppSync::"],EKS:["AWS::EKS::"],Redshift:["AWS::Redshift::"],MSK:["AWS::MSK::"],Glue:["AWS::Glue::"]},yte=Ec({ttl:3e5,maxSize:100});var A9=fF(pF,{ttl:6e5,maxSize:10}),E9=t=>{if(t.includes("All services")||t.length===0)return s=>!s.Type.startsWith("AWS::CDK::");let e=[];for(let s of t){if(s==="All services")continue;let n=w9[s];n&&e.push(...n)}return e.length===0?s=>!s.Type.startsWith("AWS::CDK::"):s=>!s.Type.startsWith("AWS::CDK::")&&e.some(n=>s.Type.startsWith(n))},F9=t=>{let e=new Map,s={CRITICAL:4,HIGH:3,MEDIUM:2,LOW:1};for(let n of t){let r=n.issue,i=e.get(r);i?s[n.severity]>s[i.severity]&&e.set(r,n):e.set(r,n)}return Array.from(e.values())},_9=(t,e,s,n)=>{let r={CRITICAL:0,HIGH:0,MEDIUM:0,LOW:0},i={},o=0;for(let a of Object.values(t))for(let c of a.issues){o++,r[c.severity]++;let u=c.ruleId?Ba(c.ruleId)??"Other":"Other";i[u]=(i[u]||0)+1}return{totalResources:e,analyzedResources:Object.keys(t).length,totalFindings:o,findingsBySeverity:r,findingsByService:i,analysisTimeMs:Date.now()-n,servicesAnalyzed:s}},mF=(t,e,s=[],n={})=>k9(t,e,{selectedServices:s,solutionsRegistry:n,deduplicateFindings:!0,includeStatistics:!1}).findings,k9=(t,e,s={})=>{let n=Date.now(),{selectedServices:r=[],solutionsRegistry:i={},deduplicateFindings:o=!0}=s,a=A9(),c=Object.keys(a).filter(x=>x!=="solutionsPatterns"),{services:u}=qu(r),l=mv(u,c),d={},f=E9(u),p=Object.keys(t.Resources||{}).length,m=Object.entries(t.Resources||{}).filter(([,x])=>f(x)).reduce((x,[D,S])=>(x[D]=S,x),{}),g=[];for(let x of l)try{let D=a[x];if(typeof D!="function"){let v=Ba(x)??x;Gt.warn(`\u26A0\uFE0F Service check function for ${v} (${x}) is not available`);continue}let S=D({Resources:m},e);g.push(x);for(let[v,E]of Object.entries(S))d[v]||(d[v]={issues:[]}),d[v].issues.push(...E.issues)}catch(D){let S=Ba(x)??x;Gt.warn(`\u26A0\uFE0F Error in ${S} analysis (${x})`,{error:D instanceof Error?D.message:String(D)})}if(Object.keys(i).length>0)try{let x=a.solutionsPatterns({Resources:m},i);for(let D of x){let S=D.resourceId;d[S]||(d[S]={issues:[]}),d[S].issues.push(D)}}catch(x){Gt.warn("\u26A0\uFE0F Error in solutions pattern analysis",{error:x instanceof Error?x.message:String(x)})}if(o)for(let x of Object.keys(d))d[x].issues=F9(d[x].issues);Object.keys(d).length===0&&Gt.info(`\x1B[32m\u2705 No security or cost issues detected!\x1B[0m
217
+ ${e}`;return s(n,{})},Q7=t=>e=>{if(J7(e)){let n=e.stdout?.toString()||"",r=e.stderr?.toString()||e.message||"";return vA(n,r,t)}let s=e instanceof Error?e.message:String(e);return t(s,{})},X7=(t,e)=>{let s=bA(),n=t?`${s} synth ${t}`:`${s} synth --all`,r={stdio:"pipe",encoding:"utf-8"};return()=>{try{let i=String((0,Jh.execSync)(n,r));return{success:!0,findings:vA(i||"","",e)}}catch(i){return{success:!1,findings:[],error:i}}}},DA=t=>({start:()=>{t?U.info(`\u26A1 Synthesizing CDK stack: ${t}`):U.info("\u26A1 Synthesizing all CDK stacks...")},success:()=>{U.success(`Successfully synthesized ${t||"all stacks"}`)}}),SA=({extractInlineNagFindings:t,stackName:e})=>{let s=X7(e,t),n=DA(e),r=Q7(t);n.start();let i=s();if(i.success)return n.success(),i.findings;let o=r(i.error);return n.success(),o},CA=t=>{let e=bA(),s=t?`${e} synth ${t}`:`${e} synth --all`,n={stdio:"pipe",encoding:"utf-8"},r=DA(t);r.start();try{return(0,Jh.execSync)(s,n),r.success(),!0}catch{return Qh.existsSync(Xh.resolve(process.cwd(),"cdk.out"))?(r.success(),!0):!1}};var eg="cdk.out",wA=t=>{let e=SA({stackName:t,extractInlineNagFindings:Fw}),s=la(eg),{stacks:n,pathToLogicalId:r,unifiedResourceMap:i,assetSourcePaths:o}=Rw(eg),{pathToLogicalId:a,resourceIdMetadata:c,autoGeneratedDescriptions:u}=Pw(eg,r),l={...r,...a},d=_w(i,u),f=t?n[t]?{[t]:n[t]}:{}:n,p=Object.fromEntries(Object.entries(f).map(([m,g])=>{let{recommendationMap:h,unifiedResourceMap:y}=Iw(s,l,d,m,c),x={...d,...y},D=Object.fromEntries(Object.keys(g.Resources??{}).map(v=>[v,h[v]??{resourceId:v,friendlyName:l[v]??v,cdkPath:v,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}}])),S=Sw(D,l,x,g,c);return[m,S]}));return{stacks:f,inlineFindings:e,pathToLogicalId:l,recommendationMapPerStack:p,assetSourcePaths:o}};var y6=V(require("node:fs"));var _d=require("node:fs"),wc=require("node:path");function AA(){let t=require.resolve("@aws-solutions-constructs/core/package.json"),e=(0,wc.dirname)((0,wc.dirname)(t));return(0,_d.readdirSync)(e).filter(s=>s!=="core"&&s.startsWith("aws-")&&(0,_d.statSync)((0,wc.join)(e,s)).isDirectory())}var EA={"aws-apigateway-dynamodb":{className:"ApiGatewayToDynamoDB",packageName:"aws-apigateway-dynamodb",friendlyName:"Api Gateway To Dynamo DB",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-dynamodb/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-dynamodb",requiredResourceTypes:["AWS::DynamoDB::Table","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy"]},"aws-apigateway-kinesisstreams":{className:"ApiGatewayToKinesisStreams",packageName:"aws-apigateway-kinesisstreams",friendlyName:"Api Gateway To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-kinesisstreams",requiredResourceTypes:["AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::RequestValidator","AWS::ApiGateway::Model","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy","AWS::CloudWatch::Alarm","AWS::Kinesis::Stream"]},"aws-apigateway-lambda":{className:"ApiGatewayToLambda",packageName:"aws-apigateway-lambda",friendlyName:"Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account"]},"aws-apigateway-sqs":{className:"ApiGatewayToSqs",packageName:"aws-apigateway-sqs",friendlyName:"Api Gateway To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-sqs",requiredResourceTypes:["AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::IAM::Role","AWS::ApiGateway::Account","AWS::IAM::Policy"]},"aws-apigatewayv2websocket-sqs":{className:"ApiGatewayV2WebSocketToSqs",packageName:"aws-apigatewayv2websocket-sqs",friendlyName:"Api Gateway V2 Web Socket To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigatewayv2websocket-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigatewayv2websocket-sqs",requiredResourceTypes:["AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::IAM::Role","AWS::IAM::Policy","AWS::ApiGatewayV2::Api","AWS::ApiGatewayV2::Integration","AWS::ApiGatewayV2::Route","AWS::ApiGatewayV2::Stage","AWS::Logs::LogGroup"]},"aws-cloudfront-apigateway-lambda":{className:"CloudFrontToApiGatewayToLambda",packageName:"aws-cloudfront-apigateway-lambda",friendlyName:"Cloud Front To Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account","AWS::CloudFront::Function","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Distribution"]},"aws-cloudfront-mediastore":{className:"CloudFrontToMediaStore",packageName:"aws-cloudfront-mediastore",friendlyName:"Cloud Front To Media Store",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-mediastore/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-mediastore",requiredResourceTypes:["AWS::CloudFront::CloudFrontOriginAccessIdentity","AWS::MediaStore::Container","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::OriginRequestPolicy","AWS::CloudFront::Function","AWS::CloudFront::Distribution"]},"aws-cloudfront-oai-s3":{className:"CloudFrontToOaiToS3",packageName:"aws-cloudfront-oai-s3",friendlyName:"Cloud Front To Oai To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-oai-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-oai-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Function","AWS::CloudFront::CloudFrontOriginAccessIdentity","AWS::CloudFront::Distribution"]},"aws-cloudfront-s3":{className:"CloudFrontToS3",packageName:"aws-cloudfront-s3",friendlyName:"Cloud Front To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::CloudFront::Function","AWS::CloudFront::OriginAccessControl","AWS::CloudFront::Distribution"]},"aws-cognito-apigateway-lambda":{className:"CognitoToApiGatewayToLambda",packageName:"aws-cognito-apigateway-lambda",friendlyName:"Cognito To Api Gateway To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cognito-apigateway-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cognito-apigateway-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Logs::LogGroup","AWS::ApiGateway::RestApi","AWS::ApiGateway::Deployment","AWS::ApiGateway::Stage","AWS::ApiGateway::Resource","AWS::Lambda::Permission","AWS::ApiGateway::Method","AWS::ApiGateway::UsagePlan","AWS::ApiGateway::Account","AWS::Cognito::UserPool","AWS::Cognito::UserPoolClient","AWS::ApiGateway::Authorizer"]},"aws-dynamodbstreams-lambda":{className:"DynamoDBStreamsToLambda",packageName:"aws-dynamodbstreams-lambda",friendlyName:"Dynamo DBStreams To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Lambda::EventSourceMapping","AWS::DynamoDB::Table","AWS::SQS::Queue","AWS::SQS::QueuePolicy"]},"aws-kinesisfirehose-s3":{className:"KinesisFirehoseToS3",packageName:"aws-kinesisfirehose-s3",friendlyName:"Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-kinesisfirehose-s3",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::Logs::LogGroup","AWS::Logs::LogStream","AWS::IAM::Role","AWS::IAM::Policy","AWS::KinesisFirehose::DeliveryStream"]},"aws-kinesisstreams-kinesisfirehose-s3":{className:"KinesisStreamsToKinesisFirehoseToS3",packageName:"aws-kinesisstreams-kinesisfirehose-s3",friendlyName:"Kinesis Streams To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-kinesisstreams-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-kinesisstreams-kinesisfirehose-s3",requiredResourceTypes:["AWS::Kinesis::Stream","AWS::S3::Bucket","AWS::S3::BucketPolicy","AWS::Logs::LogGroup","AWS::Logs::LogStream","AWS::IAM::Role","AWS::IAM::Policy","AWS::KinesisFirehose::DeliveryStream","AWS::CloudWatch::Alarm"]},"aws-s3-lambda":{className:"S3ToLambda",packageName:"aws-s3-lambda",friendlyName:"S3 To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::Lambda::Permission"]},"aws-s3-sns":{className:"S3ToSns",packageName:"aws-s3-sns",friendlyName:"S3 To Sns",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-sns",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::KMS::Key","AWS::SNS::Topic","AWS::SNS::TopicPolicy","AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function"]},"aws-s3-sqs":{className:"S3ToSqs",packageName:"aws-s3-sqs",friendlyName:"S3 To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-s3-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-s3-sqs",requiredResourceTypes:["AWS::S3::Bucket","AWS::S3::BucketPolicy","Custom::S3BucketNotifications","AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::KMS::Key","AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function"]},"aws-sns-lambda":{className:"SnsToLambda",packageName:"aws-sns-lambda",friendlyName:"Sns To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-sns-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-sns-lambda",requiredResourceTypes:["AWS::IAM::Role","AWS::IAM::Policy","AWS::Lambda::Function","AWS::Lambda::Permission","AWS::SNS::Subscription","AWS::SNS::Topic","AWS::SNS::TopicPolicy"]},"aws-sns-sqs":{className:"SnsToSqs",packageName:"aws-sns-sqs",friendlyName:"Sns To Sqs",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-sns-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-sns-sqs",requiredResourceTypes:["AWS::SNS::Topic","AWS::SNS::TopicPolicy","AWS::SQS::Queue","AWS::SQS::QueuePolicy","AWS::SNS::Subscription","AWS::KMS::Key"]},"aws-eventbridge-kinesisstreams":{className:"EventbridgeToKinesisStreams",packageName:"aws-eventbridge-kinesisstreams",friendlyName:"EventBridge To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-kinesisstreams",requiredResourceTypes:["AWS::Events::Rule","AWS::Kinesis::Stream"]},"aws-eventbridge-sns":{className:"EventbridgeToSns",packageName:"aws-eventbridge-sns",friendlyName:"EventBridge To SNS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-sns",requiredResourceTypes:["AWS::Events::Rule","AWS::SNS::Topic"]},"aws-eventbridge-sqs":{className:"EventbridgeToSqs",packageName:"aws-eventbridge-sqs",friendlyName:"EventBridge To SQS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-sqs",requiredResourceTypes:["AWS::Events::Rule","AWS::SQS::Queue"]},"aws-eventbridge-stepfunctions":{className:"EventbridgeToStepfunctions",packageName:"aws-eventbridge-stepfunctions",friendlyName:"EventBridge To StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-stepfunctions",requiredResourceTypes:["AWS::Events::Rule","AWS::StepFunctions::StateMachine"]},"aws-alb-fargate":{className:"AlbToFargate",packageName:"aws-alb-fargate",friendlyName:"ALB To Fargate",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-alb-fargate/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-alb-fargate",requiredResourceTypes:["AWS::ElasticLoadBalancingV2::LoadBalancer","AWS::ElasticLoadBalancingV2::Listener","AWS::ECS::Cluster","AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-alb-lambda":{className:"AlbToLambda",packageName:"aws-alb-lambda",friendlyName:"ALB To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-alb-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-alb-lambda",requiredResourceTypes:["AWS::ElasticLoadBalancingV2::LoadBalancer","AWS::ElasticLoadBalancingV2::Listener","AWS::Lambda::Function","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-apigateway-iot":{className:"ApiGatewayToIot",packageName:"aws-apigateway-iot",friendlyName:"API Gateway To IoT",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-iot/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-iot",requiredResourceTypes:["AWS::ApiGateway::RestApi","AWS::ApiGateway::Resource","AWS::ApiGateway::Method","AWS::IoT::TopicRule"]},"aws-apigateway-sagemakerendpoint":{className:"ApiGatewayToSagemakerendpoint",packageName:"aws-apigateway-sagemakerendpoint",friendlyName:"API Gateway To SageMaker Endpoint",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-apigateway-sagemakerendpoint/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-apigateway-sagemakerendpoint",requiredResourceTypes:["AWS::ApiGateway::RestApi","AWS::ApiGateway::Integration","AWS::SageMaker::Endpoint"]},"aws-cloudfront-apigateway":{className:"CloudFrontToApiGateway",packageName:"aws-cloudfront-apigateway",friendlyName:"CloudFront To API Gateway",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-cloudfront-apigateway/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-cloudfront-apigateway",requiredResourceTypes:["AWS::CloudFront::Distribution","AWS::ApiGateway::RestApi","AWS::ApiGateway::Method"]},"aws-dynamodbstreams-lambda-elasticsearch-kibana":{className:"DynamoDBStreamsToLambdaElasticsearchKibana",packageName:"aws-dynamodbstreams-lambda-elasticsearch-kibana",friendlyName:"DynamoDB Streams To Lambda Elasticsearch Kibana",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-lambda-elasticsearch-kibana/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-lambda-elasticsearch-kibana",requiredResourceTypes:["AWS::DynamoDB::Stream","AWS::Lambda::Function","AWS::Elasticsearch::Domain","AWS::IAM::Role","AWS::Logs::LogGroup"]},"aws-dynamodbstreams-pipes-stepfunctions":{className:"DynamoDBStreamsToPipesStepfunctions",packageName:"aws-dynamodbstreams-pipes-stepfunctions",friendlyName:"DynamoDB Streams To Pipes StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-dynamodbstreams-pipes-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-dynamodbstreams-pipes-stepfunctions",requiredResourceTypes:["AWS::DynamoDB::Stream","AWS::StepFunctions::StateMachine"]},"aws-eventbridge-kinesisfirehose-s3":{className:"EventbridgeToKinesisfirehoseToS3",packageName:"aws-eventbridge-kinesisfirehose-s3",friendlyName:"EventBridge To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-kinesisfirehose-s3",requiredResourceTypes:["AWS::Events::Rule","AWS::KinesisFirehose::DeliveryStream","AWS::S3::Bucket"]},"aws-eventbridge-lambda":{className:"EventbridgeToLambda",packageName:"aws-eventbridge-lambda",friendlyName:"EventBridge To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-eventbridge-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-eventbridge-lambda",requiredResourceTypes:["AWS::Events::Rule","AWS::Lambda::Function","AWS::IAM::Role"]},"aws-fargate-dynamodb":{className:"FargateToDynamodb",packageName:"aws-fargate-dynamodb",friendlyName:"Fargate To DynamoDB",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-dynamodb/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-dynamodb",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::DynamoDB::Table"]},"aws-fargate-eventbridge":{className:"FargateToEventbridge",packageName:"aws-fargate-eventbridge",friendlyName:"Fargate To EventBridge",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-eventbridge/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-eventbridge",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::Events::Rule"]},"aws-fargate-kinesisfirehose":{className:"FargateToKinesisfirehose",packageName:"aws-fargate-kinesisfirehose",friendlyName:"Fargate To Kinesis Firehose",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-kinesisfirehose/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-kinesisfirehose",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::KinesisFirehose::DeliveryStream"]},"aws-fargate-kinesisstreams":{className:"FargateToKinesisstreams",packageName:"aws-fargate-kinesisstreams",friendlyName:"Fargate To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-kinesisstreams",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::Kinesis::Stream"]},"aws-fargate-opensearch":{className:"FargateToOpensearch",packageName:"aws-fargate-opensearch",friendlyName:"Fargate To OpenSearch",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-opensearch/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-opensearch",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::OpenSearch::Domain"]},"aws-fargate-s3":{className:"FargateToS3",packageName:"aws-fargate-s3",friendlyName:"Fargate To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-s3",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::S3::Bucket"]},"aws-fargate-secretsmanager":{className:"FargateToSecretsmanager",packageName:"aws-fargate-secretsmanager",friendlyName:"Fargate To SecretsManager",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-secretsmanager/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-secretsmanager",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SecretsManager::Secret"]},"aws-fargate-sns":{className:"FargateToSns",packageName:"aws-fargate-sns",friendlyName:"Fargate To SNS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-sns/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-sns",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SNS::Topic"]},"aws-fargate-sqs":{className:"FargateToSqs",packageName:"aws-fargate-sqs",friendlyName:"Fargate To SQS",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-sqs/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-sqs",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SQS::Queue"]},"aws-fargate-ssmstringparameter":{className:"FargateToSsmstringparameter",packageName:"aws-fargate-ssmstringparameter",friendlyName:"Fargate To SSM String Parameter",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-ssmstringparameter/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-ssmstringparameter",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::SSM::StringParameter"]},"aws-fargate-stepfunctions":{className:"FargateToStepfunctions",packageName:"aws-fargate-stepfunctions",friendlyName:"Fargate To StepFunctions",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-fargate-stepfunctions/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-fargate-stepfunctions",requiredResourceTypes:["AWS::ECS::TaskDefinition","AWS::ECS::Service","AWS::StepFunctions::StateMachine"]},"aws-iot-kinesisfirehose-s3":{className:"IotToKinesisfirehoseToS3",packageName:"aws-iot-kinesisfirehose-s3",friendlyName:"IoT To Kinesis Firehose To S3",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-kinesisfirehose-s3/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-kinesisfirehose-s3",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::KinesisFirehose::DeliveryStream","AWS::S3::Bucket"]},"aws-iot-kinesisstreams":{className:"IotToKinesisstreams",packageName:"aws-iot-kinesisstreams",friendlyName:"IoT To Kinesis Streams",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-kinesisstreams/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-kinesisstreams",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::Kinesis::Stream"]},"aws-iot-lambda":{className:"IotToLambda",packageName:"aws-iot-lambda",friendlyName:"IoT To Lambda",documentationUrl:"https://docs.aws.amazon.com/solutions/latest/aws-iot-lambda/",githubUrl:"https://github.com/awslabs/aws-solutions-constructs/tree/main/aws-iot-lambda",requiredResourceTypes:["AWS::IoT::TopicRule","AWS::Lambda::Function","AWS::IAM::Role"]}};var FA=async t=>{let e={};for(let s of t)try{let n=await import(`@aws-solutions-constructs/${s}`),r=Object.keys(n).find(u=>/^[A-Z][a-zA-Z0-9]*To[A-Z][a-zA-Z0-9]*$/.test(u));if(!r)continue;let i=`https://docs.aws.amazon.com/solutions/latest/${s}/`,o=`https://github.com/awslabs/aws-solutions-constructs/tree/main/${s}`,c=EA[s]?.requiredResourceTypes||[];e[s]={className:r,packageName:s,friendlyName:r.replace(/([a-z0-9])([A-Z])/g,"$1 $2").trim(),documentationUrl:i,githubUrl:o,requiredResourceTypes:c}}catch{}return e};var T=(t,e)=>t.Metadata?.["aws:cdk:path"]??e;var _A=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::ApiGateway::RestApi"&&!r.Properties?.EndpointConfiguration?.Types?.includes("PRIVATE")&&(s[n]={issues:[e(n,"API Gateway is publicly accessible.","Use PRIVATE endpoints to restrict access.","HIGH","Security",T(r,n),"cdkInsights")]}),s),{});var kA=(t,e)=>Object.entries(t.Resources||{}).some(([,n])=>n.Type==="AWS::CloudTrail::Trail")?{}:{Global:{issues:[e("Global","CloudTrail is not enabled for logging.","Enable AWS CloudTrail to capture API activity and improve security monitoring.","HIGH","Security","Global","cdkInsights")]}};var fa=(t,e)=>{let s=[];if(t==null)return s;if(typeof t=="string"){let n=t.matchAll(/\$\{([^.}]+)(?:\.[^}]+)?\}/g);for(let r of n){let i=r[1];e.has(i)&&s.push(i)}return s}if(Array.isArray(t)){for(let n of t)s.push(...fa(n,e));return s}if(typeof t=="object"){let n=t;if("Ref"in n&&typeof n.Ref=="string"&&e.has(n.Ref)&&s.push(n.Ref),"Fn::GetAtt"in n){let r=n["Fn::GetAtt"];if(Array.isArray(r)&&typeof r[0]=="string")e.has(r[0])&&s.push(r[0]);else if(typeof r=="string"){let i=r.split(".")[0];e.has(i)&&s.push(i)}}if("Fn::Sub"in n){let r=n["Fn::Sub"];Array.isArray(r)?(s.push(...fa(r[0],e)),r[1]&&typeof r[1]=="object"&&s.push(...fa(r[1],e))):s.push(...fa(r,e))}for(let[r,i]of Object.entries(n))["Ref","Fn::GetAtt","Fn::Sub"].includes(r)||s.push(...fa(i,e))}return s},e9=t=>t.DependsOn?Array.isArray(t.DependsOn)?t.DependsOn:[t.DependsOn]:[],t9=(t,e)=>{if(e.length===0)return;let s=new Set(e.map(i=>i.type.split("::")[2]||i.type)),n=Array.from(s).slice(0,3),r=t.split("::")[2]||t;if(t.includes("SecurityGroup"))return`Security group attached to: ${n.join(", ")}`;if(t.includes("IAM::Role"))return`IAM role assumed by: ${n.join(", ")}`;if(t.includes("VPC")||t.includes("Subnet"))return`Network hosting: ${n.join(", ")}`;if(t.includes("KMS::Key"))return`Encryption key used by: ${n.join(", ")}`;if(t.includes("S3::Bucket")){if(n.some(i=>i.includes("Lambda")))return"S3 bucket accessed by Lambda functions";if(n.some(i=>i.includes("CloudFront")))return"S3 bucket serving as CloudFront origin"}if(t.includes("DynamoDB::Table")&&n.some(i=>i.includes("Lambda")))return"DynamoDB table accessed by Lambda functions";if(e.length>0)return`Referenced by ${e.length} resource${e.length>1?"s":""}: ${n.join(", ")}`},Zi=t=>{let e=new Set(Object.keys(t)),s={};for(let n of e)s[n]={dependencies:[],dependents:[]};for(let[n,r]of Object.entries(t)){let i=e9(r),o=fa(r.Properties,e),a=[...new Set([...i,...o])];s[n].dependencies=a;for(let c of a)s[c]&&s[c].dependents.push(n)}for(let[n,r]of Object.entries(t)){let i=s[n],o=i.dependents.map(a=>({id:a,type:t[a]?.Type||"Unknown"}));i.usageDescription=t9(r.Type,o)}return s},tg=(t,e,s)=>{let n=e[t];if(!n)return{dependencies:[],dependents:[]};let r=n.dependencies.map(o=>{let a=s[o]?.Type?.split("::")[2]||o;return`${o} (${a})`}),i=n.dependents.map(o=>{let a=s[o]?.Type?.split("::")[2]||o;return`${o} (${a})`});return{dependencies:r,dependents:i,usageDescription:n.usageDescription}};var s9=(t,e,s)=>{let n={};for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::Lambda::Function")continue;let o=i.Properties||{};if(!!(o.DeadLetterConfig?.TargetArn||o.DeadLetterConfig?.TargetArn))continue;let c=e[r];if(!c)continue;c.dependencies.some(l=>{let d=t[l];return d?.Type==="AWS::DynamoDB::Table"||d?.Type==="AWS::DynamoDB::GlobalTable"})&&(n[r]||(n[r]={issues:[]}),n[r].issues.push(s(r,"Lambda function interacting with DynamoDB has no Dead Letter Queue configured","Configure a Dead Letter Queue (DLQ) using SQS or SNS to capture failed invocations. This ensures no data is lost when the function fails to process DynamoDB events or write operations.","MEDIUM","Reliability",i.Metadata?.["aws:cdk:path"]||r,"cdkInsights")))}return n},n9=(t,e,s)=>{let n={},r=new Set(["AWS::RDS::DBInstance","AWS::RDS::DBCluster","AWS::ElastiCache::CacheCluster","AWS::ElastiCache::ReplicationGroup","AWS::Redshift::Cluster","AWS::OpenSearchService::Domain","AWS::Elasticsearch::Domain","AWS::ECS::Service"]),i=new Set(Object.entries(t).filter(([,o])=>r.has(o.Type)).map(([o])=>o));for(let[o,a]of Object.entries(t)){if(a.Type!=="AWS::Lambda::Function")continue;let c=a.Properties||{},u=!!(c.VpcConfig&&(c.VpcConfig.SubnetIds||c.VpcConfig.SecurityGroupIds)),l=e[o];if(!l)continue;if(l.dependencies.some(f=>i.has(f))&&!u){n[o]||(n[o]={issues:[]});let f=l.dependencies.filter(p=>i.has(p));n[o].issues.push(s(o,`Lambda function references VPC resources (${f.join(", ")}) but is not VPC-enabled`,"Configure VpcConfig with appropriate SubnetIds and SecurityGroupIds to allow the Lambda function to connect to VPC resources. Without VPC configuration, the function cannot reach private resources like RDS databases.","HIGH","Reliability",a.Metadata?.["aws:cdk:path"]||o,"cdkInsights"))}}return n},r9=(t,e)=>{let s={},n=new Map;for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::S3::Bucket")continue;let o=i.Properties||{},a=!!(o.BucketEncryption||o.ServerSideEncryptionConfiguration);n.set(r,a)}for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::S3::Bucket")continue;let a=(i.Properties||{}).ReplicationConfiguration;if(!a)continue;let c=n.get(r),u=a.Rules;if(!(!u||!Array.isArray(u)))for(let l of u){if(l.Status!=="Enabled")continue;let d=l.Destination;if(!d||!d.Bucket)continue;let p=d.EncryptionConfiguration;c&&!p&&(s[r]||(s[r]={issues:[]}),s[r].issues.push(e(r,"S3 replication configured without encryption configuration for replicated objects","Specify EncryptionConfiguration in the replication rule to ensure replicated objects maintain encryption. Use ReplicaKmsKeyID to specify the KMS key for encrypting replicated objects in the destination bucket.","MEDIUM","Security",i.Metadata?.["aws:cdk:path"]||r,"cdkInsights")))}}return s},i9=(t,e,s)=>{let n={},r=new Set([80,443,8080,8443]);for(let[i,o]of Object.entries(t)){if(o.Type!=="AWS::EC2::SecurityGroup")continue;let c=(o.Properties||{}).SecurityGroupIngress||[],u=e[i];if(!(u&&u.dependents.length>0))continue;let d=[];for(let f of c){let p=f.CidrIp,m=f.CidrIpv6,g=f.FromPort,h=f.ToPort;if(!(p==="0.0.0.0/0"||m==="::/0")||g===void 0)continue;let x=h!==void 0&&h!==g,D=!r.has(g);(x||D)&&d.push(g)}if(d.length>0){n[i]||(n[i]={issues:[]});let f=u.dependents.map(p=>t[p]?.Type?.split("::")[2]||"Unknown").join(", ");n[i].issues.push(s(i,`Security group used by ${f} has public access on non-standard ports: ${d.join(", ")}`,"Restrict ingress rules to specific CIDR blocks or reference other security groups instead of allowing 0.0.0.0/0 on non-standard ports. Consider using a bastion host or VPN for administrative access.","HIGH","Security",o.Metadata?.["aws:cdk:path"]||i,"cdkInsights"))}}return n},IA=(t,e)=>{let s=t.Resources||{},n=Zi(s),r={},i=[s9(s,n,e),n9(s,n,e),r9(s,e),i9(s,n,e)];for(let o of i)for(let[a,c]of Object.entries(o))r[a]||(r[a]={issues:[]}),r[a].issues.push(...c.issues);return r};var o9=t=>{let e=[],s=Object.values(t).map(_=>_.Type),n={};for(let _ of s)n[_]=(n[_]||0)+1;let r=s.some(_=>_==="AWS::Lambda::Function"),i=s.some(_=>_==="AWS::ApiGateway::RestApi"||_==="AWS::ApiGatewayV2::Api"),o=s.some(_=>_==="AWS::DynamoDB::Table"),a=s.some(_=>_==="AWS::S3::Bucket");r&&(o||a)&&!s.some(_=>_.includes("ECS")||_.includes("EC2::Instance"))&&e.push("serverless");let c=s.some(_=>_==="AWS::ECS::Service"||_==="AWS::ECS::TaskDefinition"||_==="AWS::ECS::Cluster"),u=s.some(_=>_.startsWith("AWS::EKS::"));(c||u)&&e.push("container-based");let l=s.some(_=>_.startsWith("AWS::Events::")),d=s.some(_=>_==="AWS::SNS::Topic"),f=s.some(_=>_==="AWS::SQS::Queue"),p=s.some(_=>_.startsWith("AWS::Kinesis::")),m=s.some(_=>_.startsWith("AWS::StepFunctions::"));(l||d||f||p||m)&&r&&e.push("event-driven"),i&&e.push("api-gateway");let g=s.some(_=>_.startsWith("AWS::Glue::")),h=s.some(_=>_.startsWith("AWS::Athena::")),y=s.some(_=>_.startsWith("AWS::EMR::"));(p||g||h||y)&&e.push("data-processing");let x=s.some(_=>_==="AWS::CloudFront::Distribution");a&&x&&!r&&!c&&e.push("static-website");let D=n["AWS::Lambda::Function"]||0,S=n["AWS::ECS::Service"]||0;(D>=3||S>=2)&&e.push("microservices");let v=s.some(_=>_==="AWS::EC2::Instance"),E=s.some(_=>_==="AWS::RDS::DBInstance"||_==="AWS::RDS::DBCluster"),R=s.some(_=>_==="AWS::ElasticLoadBalancingV2::LoadBalancer");return v&&(E||R)&&e.push("traditional"),e},a9=(t,e)=>{let s={},n=Object.values(t).map(l=>l.Type),r=n.some(l=>l==="AWS::CloudWatch::Alarm"),i=n.some(l=>l==="AWS::Lambda::Function"),o=n.some(l=>l==="AWS::ECS::Service"),a=n.some(l=>l==="AWS::RDS::DBInstance"||l==="AWS::RDS::DBCluster");(i||o||a)&&!r&&(s.__STACK_ARCHITECTURE__={issues:[e("__STACK_ARCHITECTURE__","No CloudWatch Alarms defined for critical resources","Add CloudWatch Alarms to monitor key metrics like Lambda errors, ECS task failures, or RDS connections. Consider using CDK's built-in alarm methods or aws-cdk-lib/aws-cloudwatch.","MEDIUM","Operational Excellence","Stack Architecture","cdkInsights")]});let c=n.some(l=>l==="AWS::XRay::Group"||l==="AWS::XRay::SamplingRule");return n.filter(l=>l==="AWS::Lambda::Function").length>=3&&!c&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","Multiple Lambda functions without X-Ray tracing configuration","Enable X-Ray tracing for your Lambda functions to gain visibility into distributed request flows and identify performance bottlenecks. Set tracing: lambda.Tracing.ACTIVE on your functions.","LOW","Operational Excellence","Stack Architecture","cdkInsights"))),s},c9=(t,e)=>{let s={},n=Object.values(t).map(f=>f.Type),r=n.some(f=>f==="AWS::ApiGateway::RestApi"||f==="AWS::ApiGatewayV2::Api"),i=n.some(f=>f==="AWS::ElasticLoadBalancingV2::LoadBalancer"),o=n.some(f=>f==="AWS::CloudFront::Distribution"),a=n.some(f=>f==="AWS::WAFv2::WebACL"||f==="AWS::WAF::WebACL");(r||i||o)&&!a&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","Public-facing resources without WAF protection","Consider adding AWS WAF to protect your API Gateway, ALB, or CloudFront distribution from common web exploits. WAF can help prevent SQL injection, XSS, and rate-limit malicious traffic.","MEDIUM","Security","Stack Architecture","cdkInsights")));let c=n.some(f=>f==="AWS::SecretsManager::Secret"),u=n.some(f=>f==="AWS::SSM::Parameter"),l=n.some(f=>f==="AWS::RDS::DBInstance"||f==="AWS::RDS::DBCluster"),d=!1;for(let[f,p]of Object.entries(t))if(p.Type==="AWS::Lambda::Function"){let m=p.Properties?.Environment?.Variables;if(m){let g=["PASSWORD","SECRET","API_KEY","TOKEN","CREDENTIAL"];for(let h of Object.keys(m))if(g.some(y=>h.toUpperCase().includes(y))){let y=m[h];if(typeof y=="string"&&!y.startsWith("{{")){d=!0;break}}}}return l&&!c&&!u&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","RDS database without Secrets Manager for credential rotation","Use AWS Secrets Manager to store and automatically rotate database credentials. This improves security by eliminating hardcoded passwords and enabling automatic credential rotation.","HIGH","Security","Stack Architecture","cdkInsights"))),s},u9=(t,e)=>{let s={},n=Object.values(t).filter(u=>u.Type==="AWS::EC2::NatGateway").length;n>=3&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__",`${n} NAT Gateways detected - potential cost optimization`,"Multiple NAT Gateways can be expensive ($32/month each + data processing). Consider if all are necessary, or explore alternatives like NAT instances for dev environments, or VPC endpoints for AWS services.","MEDIUM","Cost Optimization","Stack Architecture","cdkInsights")));let r=n>0,i=Object.values(t).some(u=>u.Type==="AWS::EC2::VPCEndpoint"),o=Object.values(t).some(u=>{if(u.Type!=="AWS::Lambda::Function")return!1;let l=u.Properties?.VpcConfig;return l?.SubnetIds||l?.SecurityGroupIds}),a=Object.values(t).some(u=>u.Type==="AWS::S3::Bucket"),c=Object.values(t).some(u=>u.Type==="AWS::DynamoDB::Table");return o&&r&&!i&&(a||c)&&(s.__STACK_ARCHITECTURE__||(s.__STACK_ARCHITECTURE__={issues:[]}),s.__STACK_ARCHITECTURE__.issues.push(e("__STACK_ARCHITECTURE__","VPC Lambda functions accessing AWS services through NAT Gateway","Consider using VPC Endpoints (Gateway endpoints for S3/DynamoDB are free) instead of routing AWS service traffic through NAT Gateway. This reduces costs and improves latency.","LOW","Cost Optimization","Stack Architecture","cdkInsights"))),s},l9=(t,e,s)=>{let n={};for(let[r,i]of Object.entries(e)){let o=t[r];if(!o)continue;let a=i.dependents.length;if(a>=5){let c=o.Type.split("::")[2]||o.Type;n.__STACK_ARCHITECTURE__||(n.__STACK_ARCHITECTURE__={issues:[]}),n.__STACK_ARCHITECTURE__.issues.push(s("__STACK_ARCHITECTURE__",`${c} (${r}) is a potential single point of failure with ${a} dependent resources`,"Consider adding redundancy or failover mechanisms for this critical resource. For databases, consider Multi-AZ. For queues, consider dead-letter queues. For Lambda, ensure proper error handling.","MEDIUM","Reliability","Stack Architecture","cdkInsights"))}}for(let[r,i]of Object.entries(t)){if(i.Type!=="AWS::DynamoDB::Table")continue;if(i.Properties?.PointInTimeRecoverySpecification?.PointInTimeRecoveryEnabled!==!0){let a=e[r];a&&a.dependents.length>=3&&(n.__STACK_ARCHITECTURE__||(n.__STACK_ARCHITECTURE__={issues:[]}),n.__STACK_ARCHITECTURE__.issues.push(s("__STACK_ARCHITECTURE__",`Critical DynamoDB table ${r} has ${a.dependents.length} dependents but no point-in-time recovery`,"Enable Point-in-Time Recovery (PITR) for critical DynamoDB tables used by multiple resources. This provides continuous backups with 35-day retention.","HIGH","Reliability","Stack Architecture","cdkInsights")))}}return n},RA=(t,e)=>{let s=t.Resources||{};if(Object.keys(s).length<3)return{};let r=Zi(s),i=o9(s),o={},a=[a9(s,e),c9(s,e),u9(s,e),l9(s,r,e)];for(let c of a)for(let[u,l]of Object.entries(c))o[u]||(o[u]={issues:[]}),o[u].issues.push(...l.issues);return o};var TA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=T(r,n);return r.Properties?.DistributionConfig?.DefaultCacheBehavior?.ViewerProtocolPolicy==="allow-all"&&(s[n]={issues:[e(n,"CloudFront distribution allows HTTP traffic (ViewerProtocolPolicy is allow-all).",'Set ViewerProtocolPolicy to "https-only" or "redirect-to-https" to enforce HTTPS and protect data in transit.',"HIGH","Security",i,"cdkInsights")]}),s},{});var PA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=T(r,n);return r.Properties?.DistributionConfig?.WebACLId||(s[n]={issues:[e(n,"CloudFront distribution has no WAF WebACL associated.","Associate a WAF WebACL to protect against common web exploits, SQL injection, XSS, and DDoS attacks.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var OA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=T(r,n);return r.Properties?.DistributionConfig?.Logging?.Bucket||(s[n]={issues:[e(n,"CloudFront distribution does not have access logging enabled.","Enable access logging to an S3 bucket to track viewer requests for security analysis, auditing, and troubleshooting.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var d9=["SSLv3","TLSv1","TLSv1_2016","TLSv1.1_2016"],LA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudFront::Distribution")return s;let i=T(r,n),a=r.Properties?.DistributionConfig?.ViewerCertificate,c=a?.MinimumProtocolVersion;return a?.CloudFrontDefaultCertificate||c&&d9.includes(c)&&(s[n]={issues:[e(n,`CloudFront distribution uses outdated TLS version (${c}).`,"Use TLSv1.2_2021 or later for improved security. Older TLS versions have known vulnerabilities.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var BA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=[],o=T(r,n),a=r.Properties?.PasswordPolicy;if(!a)i.push(e(n,"Cognito User Pool has no password policy configured.","Configure a strong password policy with minimum length, uppercase, lowercase, numbers, and symbols requirements.","HIGH","Security",o,"cdkInsights"));else{let c=a.MinimumLength||8;c<12&&i.push(e(n,`Cognito password policy has minimum length of ${c} characters.`,"Set MinimumLength to at least 12 characters for stronger security against brute-force attacks.","MEDIUM","Security",o,"cdkInsights")),a.RequireSymbols===!1&&i.push(e(n,"Cognito password policy does not require symbols.","Enable RequireSymbols for stronger password complexity requirements.","LOW","Security",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var NA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=T(r,n),o=r.Properties?.MfaConfiguration;return(!o||o==="OFF")&&(s[n]={issues:[e(n,"Cognito User Pool has MFA disabled.","Enable MFA (OPTIONAL or ON) to add an extra layer of security for user authentication.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var MA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Cognito::UserPool")return s;let i=T(r,n),o=r.Properties?.UserPoolAddOns?.AdvancedSecurityMode;return(!o||o==="OFF")&&(s[n]={issues:[e(n,"Cognito User Pool does not have advanced security features enabled.","Enable UserPoolAddOns with AdvancedSecurityMode set to AUDIT or ENFORCED to detect compromised credentials and block suspicious sign-ins.","LOW","Security",i,"cdkInsights")]}),s},{});var jA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::DynamoDB::Table")return s;let i=r.Properties?.BillingMode,o=T(r,n);return(!i||i==="PROVISIONED")&&(s[n]={issues:[e(n,"DynamoDB table uses provisioned capacity without on-demand billing.","Consider using BillingMode: PAY_PER_REQUEST for automatic scaling and cost optimization, especially for unpredictable workloads. For predictable workloads, configure Application Auto Scaling.","MEDIUM","Cost Optimization",o,"cdkInsights")]}),s},{});var $A=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::DynamoDB::Table"&&!r.Properties?.StreamSpecification&&(s[n]={issues:[e(n,"DynamoDB table does not have streams enabled.","Consider enabling DynamoDB Streams to capture item-level changes for analytics, auditing, event-driven architectures, and cross-region replication.","LOW","Operational Excellence",T(r,n),"cdkInsights")]}),s),{});var WA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::Volume")return s;let i=[],o=T(r,n),a=r.Properties??{};return a.Encrypted!==!0&&i.push(e(n,"EBS Volume is not encrypted.","Enable encryption on EBS volumes to protect data at rest. Use the Encrypted property and optionally specify a KmsKeyId.","HIGH","Security",o,"cdkInsights")),a.VolumeType==="gp2"&&i.push(e(n,"EBS Volume uses gp2 storage type.","Consider migrating to gp3 for up to 20% cost savings with better baseline performance (3,000 IOPS and 125 MB/s throughput).","MEDIUM","Cost Optimization",o,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var UA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::EC2::Instance"&&r.Properties?.InstanceType?.toString().startsWith("t2")&&(s[n]={issues:[e(n,"EC2 instance is using an older t2 instance. Consider upgrading to t3 for better performance and cost savings.","Upgrade to a t3 instance for improved performance, lower latency, and better cost efficiency.","MEDIUM","Cost Optimization",T(r,n),"cdkInsights")]}),s),{});var GA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::EC2::NatGateway"&&(s[n]={issues:[e(n,"NAT Gateway detected. NAT Gateways incur hourly charges (~$0.045/hr) plus data processing fees (~$0.045/GB).","Consider alternatives like NAT instances for lower traffic, VPC endpoints for AWS services, or IPv6 egress-only internet gateways to reduce costs.","LOW","Cost Optimization",T(r,n),"cdkInsights")]}),s),{});var p9=[22,3389,3306,5432,1433,27017,6379],f9=t=>t.CidrIp==="0.0.0.0/0"||t.CidrIpv6==="::/0",m9=(t,e,s)=>e===void 0||s===void 0?!1:t>=e&&t<=s,zA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::SecurityGroup")return s;let i=[],o=T(r,n),a=r.Properties?.SecurityGroupIngress||[],c=r.Properties?.SecurityGroupEgress||[],u=a.some(f=>f.CidrIp==="0.0.0.0/0"),l=a.some(f=>f.CidrIpv6==="::/0");u&&i.push(e(n,"Security Group allows unrestricted IPv4 ingress (0.0.0.0/0).","Restrict security group rules to specific IPs and ports.","HIGH","Security",o,"cdkInsights")),l&&i.push(e(n,"Security Group allows unrestricted IPv6 ingress (::/0).","Restrict security group rules to specific IPs and ports.","HIGH","Security",o,"cdkInsights"));for(let f of a)if(f9(f)){for(let p of p9)if(m9(p,f.FromPort,f.ToPort)){i.push(e(n,`Security Group exposes port ${p} to the internet.`,"Restrict access to management and database ports. Use bastion hosts, VPN, or AWS Systems Manager Session Manager instead.","CRITICAL","Security",o,"cdkInsights"));break}}return c.some(f=>f.CidrIp==="0.0.0.0/0")&&i.push(e(n,"Security Group allows unrestricted egress to 0.0.0.0/0.","Consider restricting egress rules to specific destinations for defense in depth.","LOW","Security",o,"cdkInsights")),a.length===0&&c.length===0&&i.push(e(n,"Security Group has no ingress or egress rules defined.","Review if this security group is in use. Empty security groups may indicate orphaned resources or misconfiguration.","LOW","Operational Excellence",o,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var h9=/(^|_)(secret|password|passwd|pwd|credential|private_key|api_key|api_secret|auth_token|access_key|access_secret|bearer_token|jwt_secret|encryption_key|signing_key)(_|$)/i,qA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=T(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a){let u=c.Environment||[];for(let l of u)h9.test(l.Name||"")&&i.push(e(n,`ECS task definition has sensitive environment variable "${l.Name}" in plaintext.`,'Use AWS Secrets Manager or SSM Parameter Store with the "secrets" property instead of plaintext environment variables.',"HIGH","Security",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var HA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=T(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a)c.LogConfiguration?.LogDriver||i.push(e(n,`ECS container "${c.Name||"unnamed"}" has no logging configuration.`,"Configure LogConfiguration with awslogs driver to send container logs to CloudWatch for monitoring and debugging.","MEDIUM","Operational Excellence",o,"cdkInsights"));return i.length>0&&(s[n]={issues:i}),s},{});var VA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECS::TaskDefinition")return s;let i=[],o=T(r,n),a=r.Properties?.ContainerDefinitions||[];for(let c of a){let u=c.Memory||c.MemoryReservation,l=c.Cpu;!u&&!l&&i.push(e(n,`ECS container "${c.Name||"unnamed"}" has no CPU or memory limits defined.`,"Define CPU and Memory limits to prevent runaway containers and ensure predictable resource allocation.","LOW","Reliability",o,"cdkInsights"))}return i.length>0&&(s[n]={issues:i}),s},{});var KA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::LoadBalancer")return s;let i=T(r,n);return(r.Properties?.LoadBalancerAttributes||[]).some(c=>c.Key==="deletion_protection.enabled"&&c.Value==="true")||(s[n]={issues:[e(n,"Load Balancer does not have deletion protection enabled.","Enable deletion protection to prevent accidental deletion of the load balancer in production environments.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var ZA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::LoadBalancer")return s;let i=T(r,n);return(r.Properties?.LoadBalancerAttributes||[]).some(c=>c.Key==="access_logs.s3.enabled"&&c.Value==="true")||(s[n]={issues:[e(n,"Load Balancer does not have access logging enabled.","Enable access logging to S3 for security analysis, auditing, and troubleshooting of traffic patterns.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var YA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::Listener")return s;let i=T(r,n),o=r.Properties?.Protocol,a=r.Properties?.Port;return o==="HTTP"&&a!==80?s[n]={issues:[e(n,`Load Balancer listener uses HTTP protocol on port ${a}.`,"Use HTTPS protocol with a valid SSL certificate to encrypt traffic in transit.","HIGH","Security",i,"cdkInsights")]}:o==="HTTP"&&a===80&&((r.Properties?.DefaultActions||[]).some(l=>l.Type==="redirect"&&l.RedirectConfig?.Protocol==="HTTPS")||(s[n]={issues:[e(n,"Load Balancer HTTP listener on port 80 does not redirect to HTTPS.","Configure the HTTP listener to redirect to HTTPS to ensure encrypted traffic.","MEDIUM","Security",i,"cdkInsights")]})),s},{});var g9=["ELBSecurityPolicy-2016-08","ELBSecurityPolicy-TLS-1-0-2015-04","ELBSecurityPolicy-TLS-1-1-2017-01","ELBSecurityPolicy-2015-05"],JA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElasticLoadBalancingV2::Listener")return s;let i=T(r,n),o=r.Properties?.Protocol,a=r.Properties?.SslPolicy;return o!=="HTTPS"&&o!=="TLS"||a&&g9.includes(a)&&(s[n]={issues:[e(n,`Load Balancer listener uses outdated security policy (${a}).`,"Use ELBSecurityPolicy-TLS13-1-2-2021-06 or later for TLS 1.3 support, or at minimum ELBSecurityPolicy-TLS-1-2-2017-01 for TLS 1.2.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var QA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::Events::Rule"&&r.Properties?.State!=="ENABLED"&&(s[n]={issues:[e(n,"EventBridge rule is disabled or not explicitly enabled.","Ensure the EventBridge rule State is set to ENABLED to trigger events as expected.","MEDIUM","Operational Excellence",T(r,n),"cdkInsights")]}),s),{});var XA=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Policy"&&r.Type!=="AWS::IAM::Role")return s;let i=r.Properties?.Policies,o=[];if(Array.isArray(i))for(let u of i)u?.PolicyDocument&&o.push(u.PolicyDocument);let a=r.Properties?.PolicyDocument;a&&o.push(a);let c=[];for(let u of o){if(!u?.Statement)continue;let l=u.Statement;for(let d of l)if(d.Effect==="Allow"){let f=d.Action,p=d.Resource,m=f==="*"||Array.isArray(f)&&f.includes("*"),g=p==="*"||Array.isArray(p)&&p.includes("*");m&&g?c.push(e(n,"IAM policy allows all actions (*) on all resources (*). This grants administrative access.","Restrict both actions and resources to follow the principle of least privilege.","CRITICAL","Security",n,"cdkInsights")):m?c.push(e(n,"IAM policy allows all actions (*). This is overly permissive.","Specify only the required actions instead of using wildcards.","CRITICAL","Security",n,"cdkInsights")):g&&c.push(e(n,"IAM policy allows actions on all resources (*). This is overly permissive.","Restrict resources to specific ARNs instead of using wildcards.","HIGH","Security",n,"cdkInsights"))}}return c.length>0&&(s[n]={issues:c}),s},{});var eE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Role")return s;let i=T(r,n);return r.Properties?.PermissionsBoundary||(s[n]={issues:[e(n,"IAM Role has no permission boundary configured.","Consider using permission boundaries to limit the maximum permissions for delegated access and prevent privilege escalation.","LOW","Security",i,"cdkInsights")]}),s},{});var tE=/^\d{12}$/,sE=/arn:aws:iam::(\d{12}):root/,x9=t=>{if(!t)return[];if(typeof t=="string"){if(tE.test(t))return[t];let e=t.match(sE);return e?[e[1]]:[]}return typeof t=="object"&&t.AWS?(Array.isArray(t.AWS)?t.AWS:[t.AWS]).flatMap(s=>{if(tE.test(s))return[s];let n=s.match(sE);return n?[n[1]]:[]}):[]},nE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::IAM::Role")return s;let i=[],o=T(r,n),a=r.Properties?.AssumeRolePolicyDocument;if(a?.Statement){for(let c of a.Statement)if(c.Effect==="Allow"){let u=x9(c.Principal);for(let l of u)i.push(e(n,`IAM Role allows cross-account trust from account ${l}.`,"Verify this cross-account trust relationship is intentional and the external account is trusted. Consider adding conditions to restrict access.","MEDIUM","Security",o,"cdkInsights"))}}return i.length>0&&(s[n]={issues:i}),s},{});var y9=t=>typeof t=="string"?t==="*":typeof t=="object"?Object.values(t).some(e=>Array.isArray(e)?e.includes("*"):e==="*"):!1,rE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>((r.Type==="AWS::KMS::Key"&&Array.isArray(r.Properties?.KeyPolicy?.Statement)?r.Properties.KeyPolicy.Statement:[]).some(a=>y9(a.Principal))&&(s[n]={issues:[e(n,"KMS key has a public policy.","Restrict the KMS key policy to specific IAM roles or users to prevent unauthorized access.","CRITICAL","Security",T(r,n),"cdkInsights")]}),s),{});var b9=/\b(secret|password|passwd|pwd|credential|private_key|api_key|api_secret|auth_token|access_key|access_secret|bearer_token|jwt_secret|encryption_key|signing_key)\b/i,iE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type==="AWS::Lambda::Function"){let i=Object.entries(r.Properties?.Environment?.Variables||{}).filter(([o])=>b9.test(o)).map(([o])=>e(n,`Lambda function contains sensitive environment variable: ${o}.`,"Store sensitive environment variables in AWS Secrets Manager or SSM Parameter Store instead of plaintext environment variables.","HIGH","Security",T(r,n),"cdkInsights"));i.length>0&&(s[n]={issues:i})}return s},{});var oE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type==="AWS::Lambda::Function"){let i=r.Properties?.MemorySize;typeof i=="number"&&i>1024&&(s[n]={issues:[e(n,"Lambda function has high memory allocation.","Consider reducing memory for cost savings.","MEDIUM","Cost Optimization",T(r,n),"cdkInsights")]})}return s},{});var aE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Lambda::Function")return s;let i=T(r,n);return r.Properties?.ReservedConcurrentExecutions===void 0&&(s[n]={issues:[e(n,"Lambda function has no reserved concurrency configured.","Consider setting ReservedConcurrentExecutions to prevent the function from consuming all available account concurrency and to control scaling behavior.","LOW","Reliability",i,"cdkInsights")]}),s},{});var cE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Lambda::Function")return s;let i=T(r,n);return r.Properties?.DeadLetterConfig?.TargetArn||(s[n]={issues:[e(n,"Lambda function has no Dead Letter Queue configured.","Configure a Dead Letter Queue (SQS or SNS) to capture failed async invocations for debugging, monitoring, and retry processing.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var uE=(t,e)=>Object.values(t.Resources||{}).some(n=>n.Type==="AWS::EC2::NatGateway")?Object.entries(t.Resources||{}).reduce((n,[r,i])=>{if(i.Type!=="AWS::Lambda::Function")return n;let o=T(i,r),a=i.Properties?.VpcConfig;return a?.SubnetIds&&a.SubnetIds.length>0&&(n[r]={issues:[e(r,"Lambda function in VPC with NAT Gateway detected. NAT Gateway costs can accumulate quickly.","Evaluate if VPC attachment is necessary. Consider using VPC endpoints for AWS services to reduce NAT costs. NAT Gateway charges ~$0.045/hr plus $0.045/GB processed.","MEDIUM","Cost Optimization",o,"cdkInsights")]}),n},{}):{};var lE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::RDS::DBInstance"&&r.Properties?.StorageEncrypted!==!0&&(s[n]={issues:[e(n,"RDS instance is not encrypted.","Enable encryption to protect data at rest and meet compliance standards.","CRITICAL","Security",T(r,n),"cdkInsights")]}),s),{});var dE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=r.Properties??{},o=i.MultiAZ===!0,a=i.StorageType==="gp2",c=typeof i.StorageType>"u";return o&&(a||c)&&(s[n]={issues:[e(n,a?"RDS instance is using Multi-AZ with gp2 storage. Consider gp3 for lower costs.":"RDS instance is using Multi-AZ without explicitly setting a storage type. gp3 may offer better performance and cost savings.","Switch to gp3 storage for RDS to reduce costs and improve performance.","MEDIUM","Cost Optimization",T(r,n),"cdkInsights")]}),s},{});var pE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=T(r,n);return r.Properties?.PubliclyAccessible===!0&&(s[n]={issues:[e(n,"RDS instance is publicly accessible from the internet.","Set PubliclyAccessible to false and access the database through private subnets, bastion hosts, or VPN.","CRITICAL","Security",i,"cdkInsights")]}),s},{});var fE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=T(r,n),o=r.Properties?.BackupRetentionPeriod;return o===0?s[n]={issues:[e(n,"RDS instance has automated backups disabled (BackupRetentionPeriod is 0).","Enable automated backups with at least 7 days retention for production databases to enable point-in-time recovery.","HIGH","Reliability",i,"cdkInsights")]}:o!==void 0&&o<7&&(s[n]={issues:[e(n,`RDS backup retention period is only ${o} day(s).`,"Consider increasing backup retention to at least 7 days for production databases.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var mE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::RDS::DBInstance")return s;let i=T(r,n);return r.Properties?.DeletionProtection!==!0&&(s[n]={issues:[e(n,"RDS instance does not have deletion protection enabled.","Enable DeletionProtection to prevent accidental database deletion.","MEDIUM","Reliability",i,"cdkInsights")]}),s},{});var hE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=[],o=r.Properties??{},a=T(r,n);o.BucketEncryption||i.push(e(n,"S3 Bucket lacks encryption.","Enable encryption at rest for better security.","HIGH","Security",a,"cdkInsights"));let c=o?.PublicAccessBlockConfiguration;return c?(c.BlockPublicAcls===!1&&i.push(e(n,"S3 Bucket allows public ACLs (BlockPublicAcls is false).","Set BlockPublicAcls to true to prevent public ACLs from being applied.","CRITICAL","Security",a,"cdkInsights")),c.BlockPublicPolicy===!1&&i.push(e(n,"S3 Bucket allows public bucket policies (BlockPublicPolicy is false).","Set BlockPublicPolicy to true to prevent public bucket policies.","CRITICAL","Security",a,"cdkInsights")),c.IgnorePublicAcls===!1&&i.push(e(n,"S3 Bucket does not ignore public ACLs (IgnorePublicAcls is false).","Set IgnorePublicAcls to true to ignore any public ACLs on the bucket.","HIGH","Security",a,"cdkInsights")),c.RestrictPublicBuckets===!1&&i.push(e(n,"S3 Bucket does not restrict public bucket access (RestrictPublicBuckets is false).","Set RestrictPublicBuckets to true to restrict access to the bucket to only authorized users.","HIGH","Security",a,"cdkInsights"))):i.push(e(n,"S3 Bucket has no PublicAccessBlockConfiguration defined.","Configure PublicAccessBlockConfiguration with BlockPublicAcls, BlockPublicPolicy, IgnorePublicAcls, and RestrictPublicBuckets all set to true.","HIGH","Security",a,"cdkInsights")),o.VersioningConfiguration||i.push(e(n,"S3 Bucket has no versioning enabled.","Enable versioning to protect against accidental deletions.","MEDIUM","Operational Excellence",a,"cdkInsights")),i.length>0&&(s[n]={issues:i}),s},{});var gE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::S3::Bucket"&&!r.Properties?.IntelligentTieringConfigurations&&(s[n]={issues:[e(n,"S3 Bucket does not use Intelligent-Tiering. Consider enabling it for cost optimization.","Enable Intelligent-Tiering for automatic cost optimization of infrequently accessed objects.","LOW","Cost Optimization",T(r,n),"cdkInsights")]}),s),{});var xE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=T(r,n);return(r.Properties?.LifecycleConfiguration?.Rules||[]).length===0&&(s[n]={issues:[e(n,"S3 bucket has no lifecycle policy configured.","Configure lifecycle rules to automatically transition objects to cheaper storage classes (e.g., Glacier) or delete old versions to optimize storage costs.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var v9=/\b(prod|production|critical|backup|dr|disaster|recovery|primary)\b/i,yE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::S3::Bucket")return s;let i=T(r,n),o=r.Properties?.BucketName||n,a=r.Properties?.ReplicationConfiguration;return v9.test(o)&&!a?.Rules?.length&&(s[n]={issues:[e(n,"Critical S3 bucket does not have cross-region replication configured.","Consider enabling cross-region replication for disaster recovery and data durability on production/critical buckets.","LOW","Reliability",i,"cdkInsights")]}),s},{});var bE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{let i=r.Properties??{};return r.Type==="AWS::SecretsManager::Secret"&&i.PublicPolicy&&(s[n]={issues:[e(n,"Secret is publicly accessible.","Restrict secret access using IAM policies to ensure only authorized entities can retrieve it.","CRITICAL","Security",T(r,n),"cdkInsights")]}),s},{});var vE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::SNS::Topic"&&!r.Properties?.KmsMasterKeyId&&(s[n]={issues:[e(n,"SNS topic is not encrypted.","Enable AWS KMS encryption for SNS to protect sensitive messages in transit and at rest.","HIGH","Security",T(r,n),"cdkInsights")]}),s),{});var DE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::SQS::Queue"&&!r.Properties?.KmsMasterKeyId&&(s[n]={issues:[e(n,"SQS queue is not encrypted.","Enable AWS KMS encryption for SQS to protect message data in transit and at rest.","HIGH","Security",T(r,n),"cdkInsights")]}),s),{});var SE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>(r.Type==="AWS::StepFunctions::StateMachine"&&r.Properties?.LoggingConfiguration===void 0&&(s[n]={issues:[e(n,"Step Function lacks logging configuration.","Enable logging for the Step Function using AWS CloudWatch to improve monitoring and debugging.","HIGH","Security",T(r,n),"cdkInsights")]}),s),{});var D9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="Custom::S3BucketNotifications"),CE=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Lambda::EventSourceMapping"),wE=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Events::Rule"),AE=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type!=="AWS::ElasticLoadBalancingV2::Listener"?!1:(s.Properties?.DefaultActions||s.Properties?.Actions)?.some(r=>r.TargetGroupArn?.startsWith(e))),S9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::Lambda::Permission"&&e.Properties?.Principal==="apigateway.amazonaws.com"),kd=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::ApiGateway::Integration"&&typeof s.Properties?.Uri=="string"&&s.Properties.Uri.includes(e)),Ac=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::IoT::TopicRule"&&s.Properties?.TopicRulePayload?.actions?.some(n=>Object.hasOwn(n,e))),C9=t=>Object.values(t.Resources||{}).some(e=>e.Type==="AWS::ECS::Service"),EE=(t,e)=>Object.values(t.Resources||{}).some(s=>s.Type==="AWS::SNS::Subscription"&&s.Properties?.Protocol===e),FE=(t,e)=>{let s=[],n={},r={};for(let[o,a]of Object.entries(e)){let c=a.requiredResourceTypes||[];if(c.length!==0){r[o]=c.length;for(let u of c)n[u]||(n[u]=[]),n[u].push(o)}}let i={};for(let o of Object.values(t.Resources||{})){let a=o.Type,c=n[a];if(c){for(let u of c)if(i[u]=(i[u]||0)+1,i[u]===r[u]){let l=e[u],d=!0;switch(u){case"aws-s3-lambda":d=D9(t)||CE(t);break;case"aws-dynamodbstreams-lambda":d=CE(t);break;case"aws-eventbridge-lambda":d=wE(t);break;case"aws-alb-fargate":d=AE(t,"arn:aws:ecs:");break;case"aws-alb-lambda":d=AE(t,"arn:aws:lambda:");break;case"aws-apigateway-lambda":d=S9(t);break;case"aws-apigateway-sqs":d=kd(t,"sqs");break;case"aws-apigateway-dynamodb":d=kd(t,"dynamodb");break;case"aws-apigateway-kinesisstreams":d=kd(t,"kinesis");break;case"aws-apigateway-sagemakerendpoint":d=kd(t,"sagemaker");break;case"aws-iot-lambda":d=Ac(t,"lambda");break;case"aws-iot-kinesisstreams":d=Ac(t,"kinesis");break;case"aws-iot-kinesisfirehose-s3":d=Ac(t,"firehose");break;case"aws-iot-sqs":d=Ac(t,"sqs");break;case"aws-iot-s3":d=Ac(t,"s3");break;case"aws-sns-lambda":d=EE(t,"lambda");break;case"aws-sns-sqs":d=EE(t,"sqs");break;case"aws-fargate-dynamodb":case"aws-fargate-eventbridge":case"aws-fargate-kinesisfirehose":case"aws-fargate-kinesisstreams":case"aws-fargate-opensearch":case"aws-fargate-s3":case"aws-fargate-secretsmanager":case"aws-fargate-sns":case"aws-fargate-sqs":case"aws-fargate-ssmstringparameter":case"aws-fargate-stepfunctions":d=C9(t);break;case"aws-eventbridge-kinesisfirehose-s3":case"aws-eventbridge-kinesisstreams":case"aws-eventbridge-sns":case"aws-eventbridge-sqs":case"aws-eventbridge-stepfunctions":d=wE(t);break}if(!d)continue;s.push({resourceId:l.className,issue:`Possible Pattern detected: ${l.friendlyName}`,recommendation:`Consider using the AWS Solutions Construct \`${l.className}\` from \`@aws-solutions-constructs/${u}\`.`,severity:"LOW",wafPillar:"Operational Excellence",docUrl:l.documentationUrl,githubUrl:l.githubUrl,constructPath:l.className,foundBy:"cdkInsights"}),delete r[u]}}}return s};var _E=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::WAFv2::WebACL")return s;let i=T(r,n),o=[],a=r.Properties?.DefaultAction;a?.Allow&&!a?.Block&&o.push(e(n,"WAF WebACL has default action set to Allow, which permits all traffic not matching rules.","Consider setting the default action to Block and explicitly allowing known-good traffic patterns for defense-in-depth.","MEDIUM","Security",i,"cdkInsights")),r.Properties?.VisibilityConfig?.CloudWatchMetricsEnabled||o.push(e(n,"WAF WebACL does not have CloudWatch metrics enabled.","Enable CloudWatchMetricsEnabled in VisibilityConfig to monitor WAF activity and detect potential attacks.","MEDIUM","Security",i,"cdkInsights"));let u=r.Properties?.Rules;return(!u||u.length===0)&&o.push(e(n,"WAF WebACL has no rules defined.","Add WAF rules to protect against common web exploits like SQL injection, XSS, and bot traffic.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var kE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::WebACL"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::LoggingConfiguration"),r=new Set(n.map(([,i])=>{let o=i.Properties?.ResourceArn;return typeof o=="string"?o:o?.Ref?o.Ref:o?.["Fn::GetAtt"]?.[0]?o["Fn::GetAtt"][0]:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=T(a,o);return r.has(o)||n.some(([,l])=>{let d=l.Properties?.ResourceArn;return typeof d=="object"&&(d?.Ref===o||d?.["Fn::GetAtt"]?.[0]===o)})||(i[o]={issues:[e(o,"WAF WebACL does not have logging configured.","Enable WAF logging to capture detailed information about web requests for security analysis and compliance.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var IE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Logs::LogGroup")return s;let i=T(r,n);return r.Properties?.RetentionInDays===void 0&&(s[n]={issues:[e(n,"CloudWatch Log Group has no retention period set (logs retained indefinitely).","Set RetentionInDays to control storage costs. Consider 30-90 days for operational logs, longer for compliance requirements.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var RE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Logs::LogGroup")return s;let i=T(r,n);return r.Properties?.KmsKeyId||(s[n]={issues:[e(n,"CloudWatch Log Group is not encrypted with a customer-managed KMS key.","Enable KMS encryption using KmsKeyId to protect sensitive log data at rest with customer-managed keys.","LOW","Security",i,"cdkInsights")]}),s},{});var TE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CloudWatch::Alarm")return s;let i=T(r,n),o=[],a=r.Properties?.AlarmActions,c=r.Properties?.OKActions,u=r.Properties?.InsufficientDataActions;return(!a||a.length===0)&&o.push(e(n,"CloudWatch Alarm has no alarm actions configured.","Add AlarmActions (SNS topic, Lambda, etc.) to receive notifications when the alarm state changes to ALARM.","MEDIUM","Operational Excellence",i,"cdkInsights")),r.Properties?.TreatMissingData||o.push(e(n,"CloudWatch Alarm does not specify how to treat missing data.","Set TreatMissingData to define alarm behavior when data points are missing (missing, ignore, breaching, or notBreaching).","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var PE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::HostedZone"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::DNSSEC"),r=new Set(n.map(([,i])=>{let o=i.Properties?.HostedZoneId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{if(a.Properties?.HostedZoneConfig?.Comment?.includes("private"))return i;let c=T(a,o);return r.has(o)||(i[o]={issues:[e(o,"Route53 Hosted Zone does not have DNSSEC signing enabled.","Enable DNSSEC to protect against DNS spoofing and cache poisoning attacks by cryptographically signing DNS records.","LOW","Security",c,"cdkInsights")]}),i},{})};var OE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Route53::HealthCheck")return s;let i=T(r,n),o=[],a=r.Properties?.HealthCheckConfig;return a?.Type==="HTTP"&&o.push(e(n,"Route53 Health Check uses HTTP instead of HTTPS.","Use HTTPS for health checks to ensure the endpoint supports secure connections and to validate SSL certificates.","LOW","Security",i,"cdkInsights")),a?.RequestInterval===30&&o.push(e(n,"Route53 Health Check uses standard (30 second) request interval.","Consider using fast interval (10 seconds) for critical endpoints to detect failures more quickly.","LOW","Reliability",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var LE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::HostedZone"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Route53::QueryLoggingConfig"),r=new Set(n.map(([,i])=>{let o=i.Properties?.HostedZoneId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=T(a,o);return r.has(o)||(i[o]={issues:[e(o,"Route53 Hosted Zone does not have query logging enabled.","Enable query logging to CloudWatch Logs for DNS query analysis, troubleshooting, and security monitoring.","LOW","Security",c,"cdkInsights")]}),i},{})};var BE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup"&&r.Type!=="AWS::ElastiCache::CacheCluster")return s;let i=T(r,n),o=[];return r.Properties?.AtRestEncryptionEnabled!==!0&&o.push(e(n,"ElastiCache cluster does not have encryption at rest enabled.","Enable AtRestEncryptionEnabled to protect cached data at rest using AWS-managed or customer-managed keys.","HIGH","Security",i,"cdkInsights")),r.Properties?.TransitEncryptionEnabled!==!0&&o.push(e(n,"ElastiCache cluster does not have encryption in transit enabled.","Enable TransitEncryptionEnabled to protect data during transfer between clients and the cache.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var NE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup")return s;let i=T(r,n),o=[],a=r.Properties?.AuthToken,c=r.Properties?.TransitEncryptionEnabled;return!a&&c===!0&&o.push(e(n,"ElastiCache Redis cluster has transit encryption but no AUTH token configured.","Set AuthToken to require authentication for Redis connections, providing an additional security layer.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var ME=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ElastiCache::ReplicationGroup")return s;let i=T(r,n),o=[],a=r.Properties?.AutomaticFailoverEnabled,c=r.Properties?.NumNodeGroups||1,u=r.Properties?.ReplicasPerNodeGroup||0;return a!==!0&&(c>1||u>0)&&o.push(e(n,"ElastiCache replication group has replicas but automatic failover is not enabled.","Enable AutomaticFailoverEnabled to automatically promote a replica to primary if the primary node fails.","MEDIUM","Reliability",i,"cdkInsights")),r.Properties?.MultiAZEnabled!==!0&&a===!0&&o.push(e(n,"ElastiCache replication group has automatic failover but Multi-AZ is not enabled.","Enable MultiAZEnabled to distribute nodes across availability zones for higher availability.","MEDIUM","Reliability",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var jE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=T(r,n),o=[];return r.Properties?.ImageScanningConfiguration?.ScanOnPush!==!0&&o.push(e(n,"ECR repository does not have image scanning on push enabled.","Enable ScanOnPush in ImageScanningConfiguration to automatically scan images for vulnerabilities when pushed.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var $E=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=T(r,n);return r.Properties?.LifecyclePolicy?.LifecyclePolicyText||(s[n]={issues:[e(n,"ECR repository does not have a lifecycle policy configured.","Add a lifecycle policy to automatically clean up old or untagged images and reduce storage costs.","MEDIUM","Cost Optimization",i,"cdkInsights")]}),s},{});var WE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::ECR::Repository")return s;let i=T(r,n);return r.Properties?.ImageTagMutability!=="IMMUTABLE"&&(s[n]={issues:[e(n,"ECR repository allows mutable image tags.","Set ImageTagMutability to IMMUTABLE to prevent image tags from being overwritten, ensuring deployment consistency.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var UE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=T(r,n),o=[];return r.Properties?.EncryptionAtRestOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have encryption at rest enabled.","Enable EncryptionAtRestOptions to protect indexed data at rest using AWS KMS.","HIGH","Security",i,"cdkInsights")),r.Properties?.NodeToNodeEncryptionOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have node-to-node encryption enabled.","Enable NodeToNodeEncryptionOptions to encrypt data in transit between nodes within the cluster.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var GE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=T(r,n),o=[];r.Properties?.AdvancedSecurityOptions?.Enabled!==!0&&o.push(e(n,"OpenSearch domain does not have fine-grained access control enabled.","Enable AdvancedSecurityOptions to use IAM or internal user database for document-level and field-level security.","MEDIUM","Security",i,"cdkInsights"));let c=r.Properties?.VPCOptions;return(!c?.SubnetIds||c.SubnetIds.length===0)&&o.push(e(n,"OpenSearch domain is not deployed within a VPC.","Configure VPCOptions with subnet IDs to deploy the domain within a VPC for network isolation.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var zE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::OpenSearchService::Domain"&&r.Type!=="AWS::Elasticsearch::Domain")return s;let i=T(r,n),o=[],a=r.Properties?.LogPublishingOptions;return a?.AUDIT_LOGS?.Enabled||o.push(e(n,"OpenSearch domain does not have audit logging enabled.","Enable AUDIT_LOGS in LogPublishingOptions to track user activity for security and compliance monitoring.","LOW","Security",i,"cdkInsights")),a?.ES_APPLICATION_LOGS?.Enabled||o.push(e(n,"OpenSearch domain does not have application logging enabled.","Enable ES_APPLICATION_LOGS in LogPublishingOptions to capture error logs for troubleshooting.","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var qE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::CertificateManager::Certificate")return s;let i=T(r,n),o=[];return r.Properties?.ValidationMethod==="EMAIL"&&o.push(e(n,"ACM certificate uses email validation instead of DNS validation.","Use DNS validation for automated certificate renewal. Email validation requires manual intervention for renewals.","LOW","Operational Excellence",i,"cdkInsights")),r.Properties?.CertificateTransparencyLoggingPreference==="DISABLED"&&o.push(e(n,"ACM certificate has certificate transparency logging disabled.","Enable certificate transparency logging for security monitoring and to detect misissued certificates.","LOW","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var HE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Backup::BackupPlan")return s;let i=T(r,n),o=[],c=r.Properties?.BackupPlan?.BackupPlanRule||[];for(let u of c){(u.CopyActions||[]).length===0&&o.push(e(n,`Backup rule "${u.RuleName||"unnamed"}" does not have cross-region copy configured.`,"Add CopyActions to replicate backups to another region for disaster recovery.","LOW","Reliability",i,"cdkInsights"));let d=u.Lifecycle;!d?.DeleteAfterDays&&!d?.MoveToColdStorageAfterDays&&o.push(e(n,`Backup rule "${u.RuleName||"unnamed"}" has no lifecycle configuration.`,"Set DeleteAfterDays or MoveToColdStorageAfterDays to manage backup retention and costs.","LOW","Cost Optimization",i,"cdkInsights"))}return o.length>0&&(s[n]={issues:o}),s},{});var VE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Backup::BackupVault"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::Backup::BackupVaultLock"),r=new Set(n.map(([,i])=>{let o=i.Properties?.BackupVaultName;return typeof o=="string"?o:typeof o=="object"&&o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=T(a,o),u=[];a.Properties?.EncryptionKeyArn||u.push(e(o,"Backup vault uses default AWS-managed encryption key.","Specify a customer-managed KMS key using EncryptionKeyArn for additional control over encryption.","LOW","Security",c,"cdkInsights"));let d=a.Properties?.BackupVaultName,f=typeof d=="string"?d:typeof d=="object"?d?.Ref:void 0;return r.has(o)||f&&r.has(f)||u.push(e(o,"Backup vault does not have a vault lock configured.","Add a BackupVaultLock to enforce retention policies and prevent backup deletion for compliance requirements.","LOW","Security",c,"cdkInsights")),u.length>0&&(i[o]={issues:u}),i},{})};var KE=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::EC2::VPC"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::EC2::FlowLog"),r=new Set(n.filter(([,i])=>i.Properties?.ResourceType==="VPC").map(([,i])=>{let o=i.Properties?.ResourceId;return typeof o=="string"?o:o?.Ref?o.Ref:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=T(a,o);return r.has(o)||(i[o]={issues:[e(o,"VPC does not have flow logs enabled.","Enable VPC Flow Logs to capture network traffic information for security analysis and troubleshooting.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var ZE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EC2::SecurityGroup")return s;let i=T(r,n);if(r.Properties?.GroupName==="default"){let a=r.Properties?.SecurityGroupIngress||[],c=r.Properties?.SecurityGroupEgress||[];(a.length>0||c.length>0)&&(s[n]={issues:[e(n,"VPC default security group has rules configured.","Remove all rules from the default security group and use custom security groups instead. Default groups cannot be deleted but should have no rules.","MEDIUM","Security",i,"cdkInsights")]})}return s},{});var YE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Kinesis::Stream")return s;let i=T(r,n),o=[],a=r.Properties?.StreamEncryption;return(!a?.EncryptionType||a.EncryptionType==="NONE")&&o.push(e(n,"Kinesis Data Stream does not have server-side encryption enabled.","Enable StreamEncryption with EncryptionType KMS to protect data at rest.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var JE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Kinesis::Stream")return s;let i=T(r,n),o=[];r.Properties?.RetentionPeriodHours===24&&o.push(e(n,"Kinesis Data Stream uses minimum retention period (24 hours).","Consider increasing RetentionPeriodHours for applications that need to replay or reprocess data during failures.","LOW","Reliability",i,"cdkInsights"));let c=r.Properties?.StreamModeDetails?.StreamMode;return o.length>0&&(s[n]={issues:o}),s},{});var QE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::AppSync::GraphQLApi")return s;let i=T(r,n),o=[],a=r.Properties?.AuthenticationType;a==="API_KEY"&&o.push(e(n,"AppSync API uses API key authentication.","Consider using AWS_IAM, AMAZON_COGNITO_USER_POOLS, or OPENID_CONNECT for production workloads. API keys are best for development or public read-only access.","MEDIUM","Security",i,"cdkInsights"));let c=r.Properties?.AdditionalAuthenticationProviders;return a!=="AWS_IAM"&&(!c||c.length===0)&&o.push(e(n,"AppSync API does not have multiple authentication providers configured.","Consider adding AdditionalAuthenticationProviders for flexibility in authenticating different client types.","LOW","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var XE=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::AppSync::GraphQLApi")return s;let i=T(r,n),o=[],a=r.Properties?.LogConfig;return a?a.FieldLogLevel==="NONE"&&o.push(e(n,"AppSync API has field-level logging disabled.","Set FieldLogLevel to ERROR or ALL to capture GraphQL resolver execution details.","LOW","Operational Excellence",i,"cdkInsights")):o.push(e(n,"AppSync API does not have logging configured.","Enable LogConfig to capture request/response logs in CloudWatch for debugging and monitoring.","MEDIUM","Operational Excellence",i,"cdkInsights")),r.Properties?.XrayEnabled!==!0&&o.push(e(n,"AppSync API does not have X-Ray tracing enabled.","Enable XrayEnabled for distributed tracing and performance analysis.","LOW","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var eF=(t,e)=>{let s=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::AppSync::GraphQLApi"),n=Object.entries(t.Resources||{}).filter(([,i])=>i.Type==="AWS::WAFv2::WebACLAssociation"),r=new Set(n.map(([,i])=>{let o=i.Properties?.ResourceArn;return typeof o=="string"?o:o?.["Fn::GetAtt"]?.[0]?o["Fn::GetAtt"][0]:null}).filter(Boolean));return s.reduce((i,[o,a])=>{let c=T(a,o);return r.has(o)||(i[o]={issues:[e(o,"AppSync API does not have AWS WAF protection.","Associate a WAF WebACL to protect against common web exploits and control access to the API.","MEDIUM","Security",c,"cdkInsights")]}),i},{})};var tF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=T(r,n),o=[],a=r.Properties?.ResourcesVpcConfig,c=a?.EndpointPublicAccess,u=a?.EndpointPrivateAccess,l=a?.PublicAccessCidrs;return c===!0&&u!==!0&&o.push(e(n,"EKS cluster has only public endpoint access enabled.","Enable EndpointPrivateAccess to allow communication between nodes and the API server within the VPC.","MEDIUM","Security",i,"cdkInsights")),c===!0&&(!l||l.length===0||l.includes("0.0.0.0/0"))&&o.push(e(n,"EKS cluster public endpoint is accessible from the internet (0.0.0.0/0).","Restrict PublicAccessCidrs to specific IP ranges that need to access the Kubernetes API.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var sF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=T(r,n),o=[];return r.Properties?.EncryptionConfig?.some(u=>u.Resources?.includes("secrets"))||o.push(e(n,"EKS cluster does not have Kubernetes secrets encryption enabled.","Configure EncryptionConfig with a KMS key to encrypt secrets stored in etcd.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var nF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::EKS::Cluster")return s;let i=T(r,n),o=[],c=r.Properties?.Logging?.ClusterLogging?.EnabledTypes||[],u=c.map(f=>f.Type).filter(f=>!!f),d=["api","audit","authenticator","controllerManager","scheduler"].filter(f=>!u.includes(f));return d.length>0&&o.push(e(n,`EKS cluster is missing control plane logging for: ${d.join(", ")}.`,"Enable all control plane log types (api, audit, authenticator, controllerManager, scheduler) for comprehensive cluster monitoring.","MEDIUM","Operational Excellence",i,"cdkInsights")),c.length===0?(s[n]={issues:[e(n,"EKS cluster does not have any control plane logging enabled.","Enable control plane logging to CloudWatch for audit trails and troubleshooting Kubernetes API issues.","MEDIUM","Security",i,"cdkInsights")]},s):(o.length>0&&(s[n]={issues:o}),s)},{});var rF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=T(r,n),o=[];return r.Properties?.Encrypted!==!0&&o.push(e(n,"Redshift cluster does not have encryption at rest enabled.","Set Encrypted to true and specify a KmsKeyId to protect data at rest.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var iF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=T(r,n);return r.Properties?.PubliclyAccessible===!0&&(s[n]={issues:[e(n,"Redshift cluster is publicly accessible.","Set PubliclyAccessible to false and use VPC endpoints or bastion hosts for secure access.","CRITICAL","Security",i,"cdkInsights")]}),s},{});var oF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Redshift::Cluster")return s;let i=T(r,n);return r.Properties?.LoggingProperties?.BucketName||(s[n]={issues:[e(n,"Redshift cluster does not have audit logging enabled.","Configure LoggingProperties with an S3 bucket to capture connection logs, user activity, and query activity.","MEDIUM","Security",i,"cdkInsights")]}),s},{});var aF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=T(r,n),o=[],a=r.Properties?.EncryptionInfo;a?.EncryptionAtRest?.DataVolumeKMSKeyId||o.push(e(n,"MSK cluster does not use a customer-managed KMS key for encryption at rest.","Specify DataVolumeKMSKeyId in EncryptionAtRest for additional control over data encryption.","LOW","Security",i,"cdkInsights"));let u=a?.EncryptionInTransit;return u?.ClientBroker!=="TLS"&&o.push(e(n,"MSK cluster does not enforce TLS encryption for client-broker communication.","Set ClientBroker to TLS in EncryptionInTransit to encrypt data between clients and brokers.","HIGH","Security",i,"cdkInsights")),u?.InCluster!==!0&&o.push(e(n,"MSK cluster does not have encryption enabled for inter-broker communication.","Set InCluster to true in EncryptionInTransit to encrypt data between brokers.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var cF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=T(r,n),o=[],a=r.Properties?.ClientAuthentication,c=(a?.Tls?.CertificateAuthorityArnList?.length??0)>0,u=a?.Sasl?.Scram?.Enabled===!0||a?.Sasl?.Iam?.Enabled===!0,l=a?.Unauthenticated?.Enabled===!0;return!c&&!u&&o.push(e(n,"MSK cluster does not have client authentication configured.","Enable SASL/SCRAM, IAM authentication, or mutual TLS for client authentication.","HIGH","Security",i,"cdkInsights")),l&&o.push(e(n,"MSK cluster allows unauthenticated access.","Disable unauthenticated access and require client authentication for all connections.","HIGH","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var uF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::MSK::Cluster")return s;let i=T(r,n),o=[],c=r.Properties?.LoggingInfo?.BrokerLogs,u=c?.CloudWatchLogs?.Enabled===!0,l=c?.Firehose?.Enabled===!0,d=c?.S3?.Enabled===!0;return!u&&!l&&!d&&o.push(e(n,"MSK cluster does not have broker logging configured.","Enable broker logs to CloudWatch, Firehose, or S3 for monitoring and troubleshooting Kafka operations.","MEDIUM","Operational Excellence",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var lF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Glue::Job")return s;let i=T(r,n),o=[];return r.Properties?.SecurityConfiguration||o.push(e(n,"Glue job does not have a security configuration specified.","Create and attach a SecurityConfiguration to enable encryption for job bookmarks, S3 data, and CloudWatch logs.","MEDIUM","Security",i,"cdkInsights")),o.length>0&&(s[n]={issues:o}),s},{});var dF=(t,e)=>Object.entries(t.Resources||{}).reduce((s,[n,r])=>{if(r.Type!=="AWS::Glue::Connection")return s;let i=T(r,n),o=[],a=r.Properties?.ConnectionInput,c=a?.ConnectionType,u=a?.PhysicalConnectionRequirements;if(c==="JDBC"){u?.SubnetId||o.push(e(n,"Glue JDBC connection does not specify a VPC subnet.","Configure PhysicalConnectionRequirements with SubnetId and SecurityGroupIdList for network isolation.","MEDIUM","Security",i,"cdkInsights"));let d=a?.ConnectionProperties?.JDBC_CONNECTION_URL||"";typeof d=="string"&&!d.includes("ssl=true")&&!d.includes("useSSL=true")&&o.push(e(n,"Glue JDBC connection URL may not enforce SSL.","Ensure the JDBC connection URL includes SSL parameters to encrypt data in transit.","LOW","Security",i,"cdkInsights"))}return o.length>0&&(s[n]={issues:o}),s},{});var pF=()=>({iamPolicies:XA,iamPermissionBoundary:eE,iamCrossAccountTrust:nE,s3Buckets:hE,s3IntelligentTiering:gE,s3LifecyclePolicy:xE,s3Replication:yE,securityGroups:zA,ec2InstanceType:UA,natGatewayUsage:GA,ebsVolumes:WA,lambdaEnvironmentVariables:iE,lambdaMemory:oE,lambdaReservedConcurrency:aE,lambdaDeadLetterQueue:cE,lambdaVpcNatWarning:uE,rdsEncryption:lE,rdsMultiAZ:dE,rdsPublicAccess:pE,rdsBackupRetention:fE,rdsDeletionProtection:mE,dynamoDBAutoScaling:jA,dynamoDBStreams:$A,cloudFrontHttpsOnly:TA,cloudFrontWafAssociation:PA,cloudFrontLogging:OA,cloudFrontTls:LA,elbDeletionProtection:KA,elbLogging:ZA,elbHttpsListeners:YA,elbSecurityPolicy:JA,ecsSecrets:qA,ecsLogging:HA,ecsResources:VA,cognitoPasswordPolicy:BA,cognitoMfa:NA,cognitoAdvancedSecurity:MA,wafWebAcl:_E,wafLogging:kE,cloudWatchLogRetention:IE,cloudWatchEncryption:RE,cloudWatchAlarms:TE,route53Dnssec:PE,route53HealthChecks:OE,route53QueryLogging:LE,elastiCacheEncryption:BE,elastiCacheAuth:NE,elastiCacheFailover:ME,ecrScanning:jE,ecrLifecycle:$E,ecrImmutableTags:WE,openSearchEncryption:UE,openSearchAccessControl:GE,openSearchLogging:zE,acmValidation:qE,backupPlans:HE,backupVault:VE,vpcFlowLogs:KE,vpcDefaultSecurityGroup:ZE,kinesisEncryption:YE,kinesisRetention:JE,appSyncAuth:QE,appSyncLogging:XE,appSyncWaf:eF,eksPublicEndpoint:tF,eksEncryption:sF,eksLogging:nF,redshiftEncryption:rF,redshiftPublicAccess:iF,redshiftLogging:oF,mskEncryption:aF,mskAuth:cF,mskLogging:uF,glueEncryption:lF,glueConnections:dF,apiGateway:_A,secretsManager:bE,cloudTrailLogging:kA,eventBridgeRules:QA,kmsKeys:rE,sns:vE,sqs:DE,stepFunctions:SE,crossResourceRelationships:IA,stackArchitecture:RA,solutionsPatterns:FE});var Ec=(t={})=>{let{ttl:e=3e5,maxSize:s=1e3}=t,n=new Map,r=new Set,i=[],o=Date.now(),a=6e4,c=p=>Date.now()-p.timestamp>p.ttl,u=p=>{r.delete(p)},l=()=>{let p=0;for(let m=0;m<i.length;m++)r.has(i[m])&&(i[p++]=i[m]);i.length=p},d=()=>{let p=Date.now();if(p-o<a)return;o=p;let m=[];for(let[g,h]of n.entries())c(h)&&m.push(g);for(let g of m)n.delete(g),u(g);m.length>0&&l()},f=()=>{for(;n.size>=s&&i.length>0;){let p=i.shift();p&&r.has(p)&&(n.delete(p),r.delete(p))}};return{get(p){let m=n.get(p);if(m){if(c(m)){n.delete(p),u(p);return}return m.value}},set(p,m,g){n.size>=s*.9&&d(),f(),r.has(p)&&u(p),n.set(p,{value:m,timestamp:Date.now(),ttl:g??e}),r.add(p),i.push(p)},clear(){n.clear(),r.clear(),i.length=0},size(){return n.size},has(p){let m=n.get(p);return m?c(m)?(n.delete(p),u(p),!1):!0:!1}}},fF=(t,e={})=>{let s=Ec(e);return(...n)=>{let r;try{r=JSON.stringify(n)}catch{return t(...n)}let i=s.get(r);if(i!==void 0)return i;let o=t(...n);return s.set(r,o),o}};var w9={IAM:["AWS::IAM::"],S3:["AWS::S3::"],Lambda:["AWS::Lambda::"],DynamoDB:["AWS::DynamoDB::"],RDS:["AWS::RDS::"],EC2:["AWS::EC2::"],SNS:["AWS::SNS::"],SQS:["AWS::SQS::"],StepFunctions:["AWS::StepFunctions::"],CloudTrail:["AWS::CloudTrail::"],ApiGateway:["AWS::ApiGateway::","AWS::ApiGatewayV2::"],SecretsManager:["AWS::SecretsManager::"],KMS:["AWS::KMS::"],EventBridge:["AWS::Events::"],CloudFront:["AWS::CloudFront::"],ELB:["AWS::ElasticLoadBalancing::","AWS::ElasticLoadBalancingV2::"],ECS:["AWS::ECS::"],Cognito:["AWS::Cognito::"],WAF:["AWS::WAFv2::","AWS::WAF::"],CloudWatch:["AWS::CloudWatch::","AWS::Logs::"],Route53:["AWS::Route53::"],ElastiCache:["AWS::ElastiCache::"],ECR:["AWS::ECR::"],OpenSearch:["AWS::OpenSearchService::","AWS::Elasticsearch::"],ACM:["AWS::CertificateManager::"],Backup:["AWS::Backup::"],VPC:["AWS::EC2::VPC","AWS::EC2::FlowLog","AWS::EC2::SecurityGroup"],Kinesis:["AWS::Kinesis::"],AppSync:["AWS::AppSync::"],EKS:["AWS::EKS::"],Redshift:["AWS::Redshift::"],MSK:["AWS::MSK::"],Glue:["AWS::Glue::"]},yte=Ec({ttl:3e5,maxSize:100});var A9=fF(pF,{ttl:6e5,maxSize:10}),E9=t=>{if(t.includes("All services")||t.length===0)return s=>!s.Type.startsWith("AWS::CDK::");let e=[];for(let s of t){if(s==="All services")continue;let n=w9[s];n&&e.push(...n)}return e.length===0?s=>!s.Type.startsWith("AWS::CDK::"):s=>!s.Type.startsWith("AWS::CDK::")&&e.some(n=>s.Type.startsWith(n))},F9=t=>{let e=new Map,s={CRITICAL:4,HIGH:3,MEDIUM:2,LOW:1};for(let n of t){let r=n.issue,i=e.get(r);i?s[n.severity]>s[i.severity]&&e.set(r,n):e.set(r,n)}return Array.from(e.values())},_9=(t,e,s,n)=>{let r={CRITICAL:0,HIGH:0,MEDIUM:0,LOW:0},i={},o=0;for(let a of Object.values(t))for(let c of a.issues){o++,r[c.severity]++;let u=c.ruleId?Ba(c.ruleId)??"Other":"Other";i[u]=(i[u]||0)+1}return{totalResources:e,analyzedResources:Object.keys(t).length,totalFindings:o,findingsBySeverity:r,findingsByService:i,analysisTimeMs:Date.now()-n,servicesAnalyzed:s}},mF=(t,e,s=[],n={})=>k9(t,e,{selectedServices:s,solutionsRegistry:n,deduplicateFindings:!0,includeStatistics:!1}).findings,k9=(t,e,s={})=>{let n=Date.now(),{selectedServices:r=[],solutionsRegistry:i={},deduplicateFindings:o=!0}=s,a=A9(),c=Object.keys(a).filter(x=>x!=="solutionsPatterns"),{services:u}=qu(r),l=mv(u,c),d={},f=E9(u),p=Object.keys(t.Resources||{}).length,m=Object.entries(t.Resources||{}).filter(([,x])=>f(x)).reduce((x,[D,S])=>(x[D]=S,x),{}),g=[];for(let x of l)try{let D=a[x];if(typeof D!="function"){let v=Ba(x)??x;Gt.warn(`\u26A0\uFE0F Service check function for ${v} (${x}) is not available`);continue}let S=D({Resources:m},e);g.push(x);for(let[v,E]of Object.entries(S))d[v]||(d[v]={issues:[]}),d[v].issues.push(...E.issues)}catch(D){let S=Ba(x)??x;Gt.warn(`\u26A0\uFE0F Error in ${S} analysis (${x})`,{error:D instanceof Error?D.message:String(D)})}if(Object.keys(i).length>0)try{let x=a.solutionsPatterns({Resources:m},i);for(let D of x){let S=D.resourceId;d[S]||(d[S]={issues:[]}),d[S].issues.push(D)}}catch(x){Gt.warn("\u26A0\uFE0F Error in solutions pattern analysis",{error:x instanceof Error?x.message:String(x)})}if(o)for(let x of Object.keys(d))d[x].issues=F9(d[x].issues);Object.keys(d).length===0&&Gt.info(`\x1B[32m\u2705 No security or cost issues detected!\x1B[0m
218
218
  `);let h=[...new Set(g.map(x=>Ba(x)).filter(x=>x!==void 0))],y=_9(d,p,h,n);return{findings:d,statistics:y}};var Fc={DEFAULT_MAX_CONCURRENT:5,DEFAULT_RETRY_ATTEMPTS:3,DEFAULT_RETRY_DELAY_MS:1e3,DEFAULT_TIMEOUT_MS:60*1e3};var Rd=V(require("node:crypto")),Zt=V(require("node:fs")),Td=V(require("node:path"));var ma=Td.join(process.env.HOME||process.env.USERPROFILE||"",".cdk-insights","cache","analysis-cache.json"),I9=()=>{let t=Td.dirname(ma);Zt.existsSync(t)||Zt.mkdirSync(t,{recursive:!0})},R9=()=>{if(kn())return new Map;try{if(Zt.existsSync(ma)){let t=JSON.parse(Zt.readFileSync(ma,"utf-8")),e=new Map,s=Date.now();for(let[n,r]of t.entries||[])s-r.timestamp<=r.ttl&&e.set(n,r);return e}}catch(t){ks.warn("Could not load cache from disk",{error:t instanceof Error?t.message:String(t)})}return new Map},hF=t=>{if(!kn())try{I9();let e={entries:Array.from(t.entries()),timestamp:Date.now(),version:"1.0"};Zt.writeFileSync(ma,JSON.stringify(e,null,2),"utf-8")}catch(e){ks.warn("Could not save cache to disk",{error:e instanceof Error?e.message:String(e)})}},T9=t=>{try{let e=Zt.statSync(t),s=Zt.readFileSync(t,"utf-8"),n=Rd.createHash("sha256").update(s).digest("hex");return{filePath:t,lastModified:e.mtime.getTime(),hash:n}}catch{return null}},P9=t=>{let e={};for(let s of t){let n=T9(s);n&&(e[s]=n)}return e},O9=(t,e)=>t?Rd.createHash("sha256").update(`${t}:${e||""}`).digest("hex").slice(0,16):"no-auth",L9=t=>Rd.createHash("sha256").update(JSON.stringify(t)).digest("hex"),gF=(t,e,s,n,r=[])=>{let i=O9(s,n),o=L9(e),a=P9(r);return{resourceId:t,authContext:i,resourceHash:o,fileHashes:a}},xF=t=>{let e=Object.entries(t.fileHashes).sort(([s],[n])=>s.localeCompare(n)).map(([s,n])=>`${s}:${n.hash}`).join("|");return`${t.resourceId}:${t.authContext}:${t.resourceHash}:${e}`};var Id=class{cache;ttl;maxSize;disabled=!1;constructor(e={}){this.ttl=e.ttl||60*60*1e3,this.maxSize=e.maxSize||1e3,this.disabled=e.disabled||!1,this.disabled?this.cache=new Map:this.cache=R9()}setDisabled(e){this.disabled=e,e&&this.cache.clear()}get(e){if(this.disabled){zu();return}let s=this.cache.get(e);if(!s){zu();return}if(Date.now()-s.timestamp>s.ttl){this.cache.delete(e),zu();return}return dv(),s.value}set(e,s,n,r){this.disabled||(this.cache.size>=this.maxSize&&this.evictOldest(),this.cache.set(e,{value:s,timestamp:Date.now(),ttl:r??this.ttl,fileHashes:n.fileHashes,authContext:n.authContext,resourceHash:n.resourceHash}),pv(),this.cache.size%10===0&&hF(this.cache))}has(e){return this.cache.has(e)}clear(){if(this.cache.clear(),!kn())try{Zt.existsSync(ma)&&Zt.unlinkSync(ma)}catch(e){ks.warn("Could not clear disk cache",{error:e instanceof Error?e.message:String(e)})}}saveToDisk(){hF(this.cache)}size(){return this.cache.size}evictOldest(){let e,s=Date.now();for(let[n,r]of Array.from(this.cache.entries()))r.timestamp<s&&(s=r.timestamp,e=n);e&&this.cache.delete(e)}getStats(){return{size:this.cache.size,maxSize:this.maxSize,hitRate:0,totalHits:0,totalMisses:0}}getAllCachedResults(){return new Map(this.cache)}getCachedResultsForResources(e){let s=new Map;for(let[n,r]of Array.from(this.cache.entries())){let i=n.split(":")[0];e.includes(i)&&Date.now()-r.timestamp<=r.ttl&&s.set(i,r.value)}return s}hasCachedResult(e){for(let s of Array.from(this.cache.keys()))if(s.split(":")[0]===e)return!0;return!1}};var B9=new Set(["the","a","an","is","are","was","were","be","been","has","have","had","do","does","did","will","would","could","should","may","might","must","shall","can","this","that","these","those","it","its","to","for","of","in","on","at","by","with","from","or","and","not","no","but","if","then","else","when","where","resource","configuration","setting","configured","property","properties","which"]),N9=[["lacks","missing","without","absent","none"],["encryption","encrypted","encrypt"],["configured","configuration","config","settings","setting"],["enabled","enable","active","activated"],["disabled","disable","inactive"],["public","publicly","open"],["access","accessible","accessibility"]],vF=new Map;for(let t of N9){let e=t[0];for(let s of t)vF.set(s,e)}var M9=t=>vF.get(t)||t,yF=t=>{if(!t)return new Set;let e=t.toLowerCase().replace(/[^\w\s]/g," ").replace(/\s+/g," ").trim().split(" ").filter(s=>s.length>2&&!B9.has(s)).map(M9);return new Set(e)},j9=(t,e)=>{if(t.size===0&&e.size===0)return 1;if(t.size===0||e.size===0)return 0;let s=[...t].filter(r=>e.has(r)).length,n=new Set([...t,...e]).size;return n>0?s/n:0},$9=.5,bF=3,sg=(t,e)=>{if(t.severity!==e.severity||t.wafPillar!==e.wafPillar)return!1;let s=yF(t.issue),n=yF(e.issue);return s.size<bF||n.size<bF?!1:j9(s,n)>=$9},ng=t=>`${t.issue}::${t.severity}::${t.wafPillar}`,_c=t=>{let{existing:e,incoming:s}=t,n=new Set(e.map(ng)),r=[];for(let i of s){let o=ng(i);n.has(o)||e.some(u=>sg(i,u))||r.some(u=>sg(i,u))||(n.add(o),r.push(i))}return r},Pd=(t,e)=>{let s=new Set,n=[];for(let r of t){let i=ng(r);s.has(i)||n.some(a=>sg(r,a))||(s.add(i),n.push(r))}return n};var DF=V(require("node:crypto")),SF=(t,e)=>{let s=`${t}:${e}`;return DF.createHash("sha256").update(s).digest("hex").slice(0,32)};var CF=t=>e=>{let s={},n={};return Object.entries(e).forEach(([r,i])=>{let o=t(i);s[o]=r,n[o]=i}),{redactedResources:n,mapping:s}};var wF=(t,e,s={})=>{let n=[];return t.forEach(r=>{let i=r.resourceId,o=s[i];if(!o&&i.includes("/")){let c=i.split("/"),u=c[c.length-2],l=Object.entries(e).find(([d,f])=>f.startsWith(u));l&&(o=l[1])}if(!o)return;let a=Object.entries(e).find(([,c])=>c===o)?.[0];if(!a){xe.warn(`\u26A0\uFE0F Unable to find redacted ID for logical resource: ${o}`);return}n.push({...r,resourceId:a})}),n};var Tc=V(require("node:process"),1);var ig=V(require("node:process"),1);var kc=V(require("node:process"),1);var W9=(t,e,s,n)=>{if(s==="length"||s==="prototype"||s==="arguments"||s==="caller")return;let r=Object.getOwnPropertyDescriptor(t,s),i=Object.getOwnPropertyDescriptor(e,s);!U9(r,i)&&n||Object.defineProperty(t,s,i)},U9=function(t,e){return t===void 0||t.configurable||t.writable===e.writable&&t.enumerable===e.enumerable&&t.configurable===e.configurable&&(t.writable||t.value===e.value)},G9=(t,e)=>{let s=Object.getPrototypeOf(e);s!==Object.getPrototypeOf(t)&&Object.setPrototypeOf(t,s)},z9=(t,e)=>`/* Wrapped ${t}*/
219
219
  ${e}`,q9=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),H9=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),V9=(t,e,s)=>{let n=s===""?"":`with ${s.trim()}() `,r=z9.bind(null,n,e.toString());Object.defineProperty(r,"name",H9);let{writable:i,enumerable:o,configurable:a}=q9;Object.defineProperty(t,"toString",{value:r,writable:i,enumerable:o,configurable:a})};function rg(t,e,{ignoreNonConfigurable:s=!1}={}){let{name:n}=t;for(let r of Reflect.ownKeys(e))W9(t,e,r,s);return G9(t,e),V9(t,e,n),t}var Od=new WeakMap,AF=(t,e={})=>{if(typeof t!="function")throw new TypeError("Expected a function");let s,n=0,r=t.displayName||t.name||"<anonymous>",i=function(...o){if(Od.set(i,++n),n===1)s=t.apply(this,o),t=void 0;else if(e.throw===!0)throw new Error(`Function \`${r}\` can only be called once`);return s};return rg(i,t),Od.set(i,n),i};AF.callCount=t=>{if(!Od.has(t))throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);return Od.get(t)};var EF=AF;var FF=kc.default.stderr.isTTY?kc.default.stderr:kc.default.stdout.isTTY?kc.default.stdout:void 0,K9=FF?EF(()=>{Ol(()=>{FF.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},_F=K9;var Ld=!1,ha={};ha.show=(t=ig.default.stderr)=>{t.isTTY&&(Ld=!1,t.write("\x1B[?25h"))};ha.hide=(t=ig.default.stderr)=>{t.isTTY&&(_F(),Ld=!0,t.write("\x1B[?25l"))};ha.toggle=(t,e)=>{t!==void 0&&(Ld=t),Ld?ha.show(e):ha.hide(e)};var og=ha;var Pc=V(ag(),1);var Hs=V(require("node:process"),1);function cg(){return Hs.default.platform!=="win32"?Hs.default.env.TERM!=="linux":!!Hs.default.env.CI||!!Hs.default.env.WT_SESSION||!!Hs.default.env.TERMINUS_SUBLIME||Hs.default.env.ConEmuTask==="{cmd::Cmder}"||Hs.default.env.TERM_PROGRAM==="Terminus-Sublime"||Hs.default.env.TERM_PROGRAM==="vscode"||Hs.default.env.TERM==="xterm-256color"||Hs.default.env.TERM==="alacritty"||Hs.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Y9={info:Oe.blue("\u2139"),success:Oe.green("\u2714"),warning:Oe.yellow("\u26A0"),error:Oe.red("\u2716")},J9={info:Oe.blue("i"),success:Oe.green("\u221A"),warning:Oe.yellow("\u203C"),error:Oe.red("\xD7")},Q9=cg()?Y9:J9,Ic=Q9;function ug({onlyFirst:t=!1}={}){let s=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(s,t?void 0:"g")}var X9=ug();function Rc(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(X9,"")}function TF(t){return t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109}function PF(t){return t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510}function OF(t){return t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9776&&t<=9783||t>=9800&&t<=9811||t===9855||t>=9866&&t<=9871||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12773||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t===94192||t===94193||t>=94208&&t<=100343||t>=100352&&t<=101589||t>=101631&&t<=101640||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t>=119552&&t<=119638||t>=119648&&t<=119670||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128727||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129673||t>=129679&&t<=129734||t>=129742&&t<=129756||t>=129759&&t<=129769||t>=129776&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141}function eB(t){if(!Number.isSafeInteger(t))throw new TypeError(`Expected a code point, got \`${typeof t}\`.`)}function LF(t,{ambiguousAsWide:e=!1}={}){return eB(t),PF(t)||OF(t)||e&&TF(t)?2:1}var MF=V(NF(),1),tB=new Intl.Segmenter,sB=new RegExp("^\\p{Default_Ignorable_Code_Point}$","u");function lg(t,e={}){if(typeof t!="string"||t.length===0)return 0;let{ambiguousIsNarrow:s=!0,countAnsiEscapeCodes:n=!1}=e;if(n||(t=Rc(t)),t.length===0)return 0;let r=0,i={ambiguousAsWide:!s};for(let{segment:o}of tB.segment(t)){let a=o.codePointAt(0);if(!(a<=31||a>=127&&a<=159)&&!(a>=8203&&a<=8207||a===65279)&&!(a>=768&&a<=879||a>=6832&&a<=6911||a>=7616&&a<=7679||a>=8400&&a<=8447||a>=65056&&a<=65071)&&!(a>=55296&&a<=57343)&&!(a>=65024&&a<=65039)&&!sB.test(o)){if((0,MF.default)().test(o)){r+=2;continue}r+=LF(a,i)}}return r}function dg({stream:t=process.stdout}={}){return!!(t&&t.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}var pg=V(require("node:process"),1);function fg(){let{env:t}=pg.default,{TERM:e,TERM_PROGRAM:s}=t;return pg.default.platform!=="win32"?e!=="linux":!!t.WT_SESSION||!!t.TERMINUS_SUBLIME||t.ConEmuTask==="{cmd::Cmder}"||s==="Terminus-Sublime"||s==="vscode"||e==="xterm-256color"||e==="alacritty"||e==="rxvt-unicode"||e==="rxvt-unicode-256color"||t.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var un=V(require("node:process"),1),nB=3,mg=class{#n=0;start(){this.#n++,this.#n===1&&this.#s()}stop(){if(this.#n<=0)throw new Error("`stop` called more times than `start`");this.#n--,this.#n===0&&this.#e()}#s(){un.default.platform==="win32"||!un.default.stdin.isTTY||(un.default.stdin.setRawMode(!0),un.default.stdin.on("data",this.#i),un.default.stdin.resume())}#e(){un.default.stdin.isTTY&&(un.default.stdin.off("data",this.#i),un.default.stdin.pause(),un.default.stdin.setRawMode(!1))}#i(e){e[0]===nB&&un.default.emit("SIGINT")}},rB=new mg,hg=rB;var iB=V(ag(),1),gg=class{#n=0;#s=!1;#e=0;#i=-1;#p=0;#t;#o;#r;#f;#h;#u;#l;#d;#g;#a;#c;color;constructor(e){typeof e=="string"&&(e={text:e}),this.#t={color:"cyan",stream:Tc.default.stderr,discardStdin:!0,hideCursor:!0,...e},this.color=this.#t.color,this.spinner=this.#t.spinner,this.#h=this.#t.interval,this.#r=this.#t.stream,this.#u=typeof this.#t.isEnabled=="boolean"?this.#t.isEnabled:dg({stream:this.#r}),this.#l=typeof this.#t.isSilent=="boolean"?this.#t.isSilent:!1,this.text=this.#t.text,this.prefixText=this.#t.prefixText,this.suffixText=this.#t.suffixText,this.indent=this.#t.indent,Tc.default.env.NODE_ENV==="test"&&(this._stream=this.#r,this._isEnabled=this.#u,Object.defineProperty(this,"_linesToClear",{get(){return this.#n},set(s){this.#n=s}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#i}}),Object.defineProperty(this,"_lineCount",{get(){return this.#e}}))}get indent(){return this.#d}set indent(e=0){if(!(e>=0&&Number.isInteger(e)))throw new Error("The `indent` option must be an integer from 0 and up");this.#d=e,this.#m()}get interval(){return this.#h??this.#o.interval??100}get spinner(){return this.#o}set spinner(e){if(this.#i=-1,this.#h=void 0,typeof e=="object"){if(e.frames===void 0)throw new Error("The given spinner must have a `frames` property");this.#o=e}else if(!fg())this.#o=Pc.default.line;else if(e===void 0)this.#o=Pc.default.dots;else if(e!=="default"&&Pc.default[e])this.#o=Pc.default[e];else throw new Error(`There is no built-in spinner named '${e}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#g}set text(e=""){this.#g=e,this.#m()}get prefixText(){return this.#a}set prefixText(e=""){this.#a=e,this.#m()}get suffixText(){return this.#c}set suffixText(e=""){this.#c=e,this.#m()}get isSpinning(){return this.#f!==void 0}#x(e=this.#a,s=" "){return typeof e=="string"&&e!==""?e+s:typeof e=="function"?e()+s:""}#y(e=this.#c,s=" "){return typeof e=="string"&&e!==""?s+e:typeof e=="function"?s+e():""}#m(){let e=this.#r.columns??80,s=this.#x(this.#a,"-"),n=this.#y(this.#c,"-"),r=" ".repeat(this.#d)+s+"--"+this.#g+"--"+n;this.#e=0;for(let i of Rc(r).split(`
220
220
  `))this.#e+=Math.max(1,Math.ceil(lg(i,{countAnsiEscapeCodes:!0})/e))}get isEnabled(){return this.#u&&!this.#l}set isEnabled(e){if(typeof e!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this.#u=e}get isSilent(){return this.#l}set isSilent(e){if(typeof e!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this.#l=e}frame(){let e=Date.now();(this.#i===-1||e-this.#p>=this.interval)&&(this.#i=++this.#i%this.#o.frames.length,this.#p=e);let{frames:s}=this.#o,n=s[this.#i];this.color&&(n=Oe[this.color](n));let r=typeof this.#a=="string"&&this.#a!==""?this.#a+" ":"",i=typeof this.text=="string"?" "+this.text:"",o=typeof this.#c=="string"&&this.#c!==""?" "+this.#c:"";return r+n+i+o}clear(){if(!this.#u||!this.#r.isTTY)return this;this.#r.cursorTo(0);for(let e=0;e<this.#n;e++)e>0&&this.#r.moveCursor(0,-1),this.#r.clearLine(1);return(this.#d||this.lastIndent!==this.#d)&&this.#r.cursorTo(this.#d),this.lastIndent=this.#d,this.#n=0,this}render(){return this.#l?this:(this.clear(),this.#r.write(this.frame()),this.#n=this.#e,this)}start(e){return e&&(this.text=e),this.#l?this:this.#u?this.isSpinning?this:(this.#t.hideCursor&&og.hide(this.#r),this.#t.discardStdin&&Tc.default.stdin.isTTY&&(this.#s=!0,hg.start()),this.render(),this.#f=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.#r.write(`- ${this.text}
@@ -229,7 +229,7 @@ ${Ke.primary.bold(`${Pt.rocket} ${s}`)}`),console.log(`${Ke.comment("\u2500".rep
229
229
  ${Ke.primary.bold(`${Pt.chart} Analysis Complete!`)}`),console.log(Ke.comment("\u2500".repeat(50))),console.log(Ke.success(`\u2705 Completed: ${n}`)),i>0&&console.log(Ke.error(`\u274C Failed: ${i}`)),o>0&&console.log(Ke.warning(`\u23F0 Timed out: ${o}`)),console.log(Ke.comment(`\u23F1\uFE0F Total time: ${g}s`))}}}createSpinner(e){let s=Nd({text:e,color:"blue",spinner:"dots"}).start();return{stop:n=>{n?s.succeed(n):s.stop()},fail:n=>{s.fail(n||"Failed")},warn:n=>{s.warn(n||"Warning")},info:n=>{s.info(n||"Info")}}}showSummary(e){console.log(`
230
230
  ${Ke.primary.bold(`${Pt.chart} Analysis Summary`)}`),console.log(Ke.comment("\u2500".repeat(40))),console.log(Ke.text(`Completed ${e.length} step${e.length===1?"":"s"} successfully!`))}header(e){console.log(`
231
231
  ${Ke.primary.bold(`${Pt.rocket} ${e}`)}`),console.log(`${Ke.comment("\u2500".repeat(60))}
232
- `)}section(e,s=Pt.info){console.log(Ke.primary.bold(`${s} ${e}`))}success(e,s=Pt.success){console.log(Ke.success(`${s} ${e}`))}info(e,s=Pt.info){console.log(Ke.info(`${s} ${e}`))}warning(e,s=Pt.warning){console.log(Ke.warning(`${s} ${e}`))}error(e,s=Pt.error){console.log(Ke.error(`${s} ${e}`))}comment(e,s=""){console.log(Ke.comment(`${s} ${e}`))}phase1(e){console.log(Ke.info(`${Pt.phase1} Phase 1: ${e}`))}phase2(e){console.log(Ke.primary(`${Pt.phase2} Phase 2: ${e}`))}phase3(e){console.log(Ke.secondary(`${Pt.phase3} Phase 3: ${e}`))}severityBadge(e){switch(e.toUpperCase()){case"CRITICAL":return Ke.severity.critical.bold(`${Pt.critical} CRITICAL`);case"HIGH":return Ke.severity.high.bold(`${Pt.high} HIGH`);case"MEDIUM":return Ke.severity.medium.bold(`${Pt.medium} MEDIUM`);case"LOW":return Ke.severity.low.bold(`${Pt.low} LOW`);default:return Ke.comment(e)}}divider(){console.log(Ke.comment("\u2500".repeat(60)))}newline(){console.log("")}clearLine(){process.stdout.write(`\r${" ".repeat(process.stdout.columns)}\r`)}},Md=xg.getInstance();var jF=t=>t&&(t.Name||t.ResourceName||t.FunctionName)||"Unnamed";var yg=null,$F=t=>{yg=t};var bg=()=>{if(yg&&!process.env.CI)try{yg.saveToDisk(),H.info("\u{1F4BE} Cache saved to disk on exit")}catch(t){H.warn("\u26A0\uFE0F Could not save cache on exit",{error:t instanceof Error?t.message:String(t)})}};process.on("exit",bg);process.on("SIGINT",()=>{bg(),process.exit(0)});process.on("SIGTERM",()=>{bg(),process.exit(0)});var oB={maxConcurrent:Fc.DEFAULT_MAX_CONCURRENT,retryAttempts:Fc.DEFAULT_RETRY_ATTEMPTS,retryDelay:Fc.DEFAULT_RETRY_DELAY_MS,timeoutMs:Fc.DEFAULT_TIMEOUT_MS},aB=t=>{if(!(t instanceof Error))return!1;let e=t.message??"";return e.startsWith("Polling timed out")||e==="Analysis timeout"||e.toLowerCase().includes("timeout")},cB=t=>{let e=Ec({ttl:6e4,maxSize:1e3});return({analysisError:s,redactedId:n})=>{let r=s instanceof Error?s.message:"unknown",i=`${n}:${r}`,o=e.get(i)||0;return aB(s)?{status:"timeout",redactedId:n}:(e.set(i,o+1),o>t.retryAttempts?{status:"skipped",redactedId:n}:{status:"fail",redactedId:n,error:s})}},uB=({analyzeResource:t,redactionMapping:e,aggregatedResult:s,errorHandler:n,config:r,authToken:i,fingerprint:o,stackName:a,analysisCache:c,originalResources:u,relationships:l,onAuthRefresh:d})=>async({redactedId:f,redactedResources:p,findingsByResource:m,progressTracker:g})=>{let h=m.get(f)||[],y=p[f];if(!y)return{status:"skipped",redactedId:f};let D=gF(f,y,i,o,[]),S=xF(D),v=e[f];if(!v)return{status:"skipped",redactedId:f};let E=v,T=()=>(s[E]||(s[E]={issues:[]}),s[E]),_=c.get(S);if(_){let $=(_.issues||[]).map(z=>({...z,resource:E,resourceId:E})),L=T();return L.issues.push(..._c({existing:L.issues,incoming:$})),L.resourceName=_.resourceName,{status:"success",redactedId:f,resourceKey:E,remappedIssues:$,resourceName:_.resourceName}}let W=SF(a,v),M=tg(v,l,u),j={dependencies:M.dependencies,dependents:M.dependents,usageDescription:M.usageDescription};for(let $=1;$<=r.retryAttempts;$++)try{let L=await Promise.race([t(a,W,y,y.Type,i,o,h,g,d,j),new Promise((B,N)=>setTimeout(()=>N(new Error("Analysis timeout")),r.timeoutMs))]);L.resourceId=E;let z=(L.issues||[]).map(B=>({...B,resource:E,resourceId:E})),C=T();return C.issues.push(..._c({existing:C.issues,incoming:z})),C.resourceName=L.resourceName,c.set(S,L,D),{status:"success",redactedId:f,resourceKey:E,remappedIssues:z,resourceName:L.resourceName}}catch(L){if($===r.retryAttempts)return n({analysisError:L,redactedId:f});await new Promise(z=>setTimeout(z,r.retryDelay*2**($-1)))}return{status:"fail",redactedId:f,error:new Error("Max retries exceeded")}},lB=async(t,e,s)=>{let n=Math.max(1,Math.floor(e)),r=0,i=Array.from({length:Math.min(n,t.length)}).map(async()=>{for(;r<t.length;){let o=r;r+=1;let a=t[o];await s(a)}});await Promise.allSettled(i)},WF=({analyzeResource:t,redactResources:e,config:s=oB,onAuthRefresh:n})=>async({stackName:r,resources:i,authToken:o,existingFindingsMap:a,pathToLogicalId:c,fingerprint:u,noCache:l=!1,cacheConfig:d})=>{let f={},p=[],m={startTime:Date.now(),processedCount:0,successCount:0,failureCount:0,timeoutCount:0},{redactedResources:g,mapping:h}=e(i),y=wF(a,h,c),x=new Map;for(let C of y){let B=x.get(C.resourceId);B?B.push(C):x.set(C.resourceId,[C])}let D=Object.keys(g),S=D.length,v=Zi(i),E=new Id({ttl:d?.ttl||3e5,maxSize:d?.maxSize||5e3,disabled:l||!d?.enabled});$F(E);let T=cB(s),_=uB({analyzeResource:t,redactionMapping:h,aggregatedResult:f,errorHandler:T,config:s,authToken:o,fingerprint:u,stackName:r,analysisCache:E,originalResources:i,relationships:v,onAuthRefresh:n}),W=Md.createSingleLineProgressTracker(S,"Analyzing resources with AI");await lB(D,s.maxConcurrent,async C=>{H.debug(`Starting analysis for resource ${C}`,{redactedId:C,maxConcurrent:s.maxConcurrent});let B=await _({redactedId:C,redactedResources:g,findingsByResource:x,progressTracker:W});switch(m.processedCount++,H.debug(`Resource ${C} analysis result: ${B.status}`,{redactedId:C,status:B.status,hasProgressTracker:!!W}),B.status){case"success":m.successCount++,H.debug(`Resource ${C} completed successfully`,{redactedId:C,resourceKey:B.resourceKey});break;case"timeout":m.timeoutCount++,H.warn(`Resource ${C} timed out`,{redactedId:C}),p.push({redactedId:C,resourceData:g[C],resourceType:g[C].Type,existingFindings:x.get(C)||[]});break;case"fail":case"skipped":m.failureCount++,H.warn(`Resource ${C} failed or was skipped`,{redactedId:C,status:B.status});break}}),W.showSummary();let M=Date.now()-m.startTime,j=W.getStats();if(H.debug("Analysis completed with progress tracker stats",{progressTrackerStats:j,performanceMetrics:m,totalTime:M,totalResources:S,maxConcurrent:s.maxConcurrent}),U.analysisComplete(M,m.successCount,m.failureCount,m.timeoutCount),m.failureCount>0||m.timeoutCount>0){U.newline(),U.info("\u{1F4CA} Performance Analysis:");let C=m.successCount>0?Math.round(M/1e3/m.successCount):0;U.comment(` \u23F1\uFE0F Average completion time: ${C}s`),U.comment(` \u{1F4CA} Success rate: ${(m.successCount/S*100).toFixed(1)}%`)}if(p.length>0){U.newline(),U.warning("\u23F0 Timed Out Resources:"),U.comment(` \u{1F4CB} Total timed out: ${p.length}`);for(let C of p){if(U.comment(` \u274C ${C.resourceType}: ${C.redactedId}`),C.resourceData?.Properties){let N=C.resourceData.Properties,K=jF(N);U.comment(` \u{1F4DD} Name: ${K}`)}C.existingFindings.length>0&&U.comment(` \u{1F50D} Existing findings: ${C.existingFindings.length}`),C.resourceData?.Metadata&&U.comment(" \u{1F4CD} Has metadata: Yes"),["AWS::CloudFormation::Stack","AWS::Serverless::Application","AWS::ECS::Service"].includes(C.resourceType)&&U.comment(" \u26A0\uFE0F Complex resource type - may require extended analysis time")}U.newline(),U.info("\u{1F4A1} Tip: Some resources are taking longer to analyze than expected."),U.comment(" This is normal for complex resources. The analysis will continue with the remaining resources."),U.warning(`Retrying ${p.length} resource${p.length===1?"":"s"} that need a little more time...`)}let $=new Set(Object.keys(f)),L=new Set(Object.values(h)),z=Array.from(L).filter(C=>!$.has(C)||!f[C]?.issues?.length);if(z.length>0){let C=E.getCachedResultsForResources(z),B=0;for(let[N,K]of Array.from(C.entries())){if(f[N]?.issues?.length>0)continue;let me=(K.issues||[]).map(Z=>({...Z,resource:N,resourceId:N}));me.length>0&&(f[N]||(f[N]={issues:[]}),f[N].issues.push(...me),f[N].resourceName=K.resourceName,B+=me.length)}B>0}return f};var vg=require("node:child_process"),Ot=V(require("node:fs")),Dg=V(require("node:os")),Oc=V(require("node:path"));var zF="1.0.0",dB={Security:"https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/",Reliability:"https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/","Performance Efficiency":"https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/","Cost Optimization":"https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/","Operational Excellence":"https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/",Sustainability:"https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/"},UF=t=>t.toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),pB=(t,e)=>{let s=0;if(s+=2e3,e){let n=Object.values(t).filter(r=>{let i=r.sources.cdkInsights?.issues??[],o=r.sources.cdkNag?.issues??[];return i.length>0||o.length>0});s+=n.length*100}for(let[,n]of Object.entries(t)){let r=n.sources.cdkInsights?.issues??[],i=n.sources.cdkNag?.issues??[];for(let o of[...r,...i])s+=o.issue.length,s+=o.recommendation?.length||0,s+=o.codeSnippet?.length||0,s+=500}return s},fB=t=>t?t.split(`
232
+ `)}section(e,s=Pt.info){console.log(Ke.primary.bold(`${s} ${e}`))}success(e,s=Pt.success){console.log(Ke.success(`${s} ${e}`))}info(e,s=Pt.info){console.log(Ke.info(`${s} ${e}`))}warning(e,s=Pt.warning){console.log(Ke.warning(`${s} ${e}`))}error(e,s=Pt.error){console.log(Ke.error(`${s} ${e}`))}comment(e,s=""){console.log(Ke.comment(`${s} ${e}`))}phase1(e){console.log(Ke.info(`${Pt.phase1} Phase 1: ${e}`))}phase2(e){console.log(Ke.primary(`${Pt.phase2} Phase 2: ${e}`))}phase3(e){console.log(Ke.secondary(`${Pt.phase3} Phase 3: ${e}`))}severityBadge(e){switch(e.toUpperCase()){case"CRITICAL":return Ke.severity.critical.bold(`${Pt.critical} CRITICAL`);case"HIGH":return Ke.severity.high.bold(`${Pt.high} HIGH`);case"MEDIUM":return Ke.severity.medium.bold(`${Pt.medium} MEDIUM`);case"LOW":return Ke.severity.low.bold(`${Pt.low} LOW`);default:return Ke.comment(e)}}divider(){console.log(Ke.comment("\u2500".repeat(60)))}newline(){console.log("")}clearLine(){process.stdout.write(`\r${" ".repeat(process.stdout.columns)}\r`)}},Md=xg.getInstance();var jF=t=>t&&(t.Name||t.ResourceName||t.FunctionName)||"Unnamed";var yg=null,$F=t=>{yg=t};var bg=()=>{if(yg&&!process.env.CI)try{yg.saveToDisk(),H.info("\u{1F4BE} Cache saved to disk on exit")}catch(t){H.warn("\u26A0\uFE0F Could not save cache on exit",{error:t instanceof Error?t.message:String(t)})}};process.on("exit",bg);process.on("SIGINT",()=>{bg(),process.exit(0)});process.on("SIGTERM",()=>{bg(),process.exit(0)});var oB={maxConcurrent:Fc.DEFAULT_MAX_CONCURRENT,retryAttempts:Fc.DEFAULT_RETRY_ATTEMPTS,retryDelay:Fc.DEFAULT_RETRY_DELAY_MS,timeoutMs:Fc.DEFAULT_TIMEOUT_MS},aB=t=>{if(!(t instanceof Error))return!1;let e=t.message??"";return e.startsWith("Polling timed out")||e==="Analysis timeout"||e.toLowerCase().includes("timeout")},cB=t=>{let e=Ec({ttl:6e4,maxSize:1e3});return({analysisError:s,redactedId:n})=>{let r=s instanceof Error?s.message:"unknown",i=`${n}:${r}`,o=e.get(i)||0;return aB(s)?{status:"timeout",redactedId:n}:(e.set(i,o+1),o>t.retryAttempts?{status:"skipped",redactedId:n}:{status:"fail",redactedId:n,error:s})}},uB=({analyzeResource:t,redactionMapping:e,aggregatedResult:s,errorHandler:n,config:r,authToken:i,fingerprint:o,stackName:a,analysisCache:c,originalResources:u,relationships:l,onAuthRefresh:d})=>async({redactedId:f,redactedResources:p,findingsByResource:m,progressTracker:g})=>{let h=m.get(f)||[],y=p[f];if(!y)return{status:"skipped",redactedId:f};let D=gF(f,y,i,o,[]),S=xF(D),v=e[f];if(!v)return{status:"skipped",redactedId:f};let E=v,R=()=>(s[E]||(s[E]={issues:[]}),s[E]),_=c.get(S);if(_){let $=(_.issues||[]).map(z=>({...z,resource:E,resourceId:E})),L=R();return L.issues.push(..._c({existing:L.issues,incoming:$})),L.resourceName=_.resourceName,{status:"success",redactedId:f,resourceKey:E,remappedIssues:$,resourceName:_.resourceName}}let W=SF(a,v),j=tg(v,l,u),M={dependencies:j.dependencies,dependents:j.dependents,usageDescription:j.usageDescription};for(let $=1;$<=r.retryAttempts;$++)try{let L=await Promise.race([t(a,W,y,y.Type,i,o,h,g,d,M),new Promise((B,N)=>setTimeout(()=>N(new Error("Analysis timeout")),r.timeoutMs))]);L.resourceId=E;let z=(L.issues||[]).map(B=>({...B,resource:E,resourceId:E})),C=R();return C.issues.push(..._c({existing:C.issues,incoming:z})),C.resourceName=L.resourceName,c.set(S,L,D),{status:"success",redactedId:f,resourceKey:E,remappedIssues:z,resourceName:L.resourceName}}catch(L){if($===r.retryAttempts)return n({analysisError:L,redactedId:f});await new Promise(z=>setTimeout(z,r.retryDelay*2**($-1)))}return{status:"fail",redactedId:f,error:new Error("Max retries exceeded")}},lB=async(t,e,s)=>{let n=Math.max(1,Math.floor(e)),r=0,i=Array.from({length:Math.min(n,t.length)}).map(async()=>{for(;r<t.length;){let o=r;r+=1;let a=t[o];await s(a)}});await Promise.allSettled(i)},WF=({analyzeResource:t,redactResources:e,config:s=oB,onAuthRefresh:n})=>async({stackName:r,resources:i,authToken:o,existingFindingsMap:a,pathToLogicalId:c,fingerprint:u,noCache:l=!1,cacheConfig:d})=>{let f={},p=[],m={startTime:Date.now(),processedCount:0,successCount:0,failureCount:0,timeoutCount:0},{redactedResources:g,mapping:h}=e(i),y=wF(a,h,c),x=new Map;for(let C of y){let B=x.get(C.resourceId);B?B.push(C):x.set(C.resourceId,[C])}let D=Object.keys(g),S=D.length,v=Zi(i),E=new Id({ttl:d?.ttl||3e5,maxSize:d?.maxSize||5e3,disabled:l||!d?.enabled});$F(E);let R=cB(s),_=uB({analyzeResource:t,redactionMapping:h,aggregatedResult:f,errorHandler:R,config:s,authToken:o,fingerprint:u,stackName:r,analysisCache:E,originalResources:i,relationships:v,onAuthRefresh:n}),W=Md.createSingleLineProgressTracker(S,"Analyzing resources with AI");await lB(D,s.maxConcurrent,async C=>{H.debug(`Starting analysis for resource ${C}`,{redactedId:C,maxConcurrent:s.maxConcurrent});let B=await _({redactedId:C,redactedResources:g,findingsByResource:x,progressTracker:W});switch(m.processedCount++,H.debug(`Resource ${C} analysis result: ${B.status}`,{redactedId:C,status:B.status,hasProgressTracker:!!W}),B.status){case"success":m.successCount++,H.debug(`Resource ${C} completed successfully`,{redactedId:C,resourceKey:B.resourceKey});break;case"timeout":m.timeoutCount++,H.warn(`Resource ${C} timed out`,{redactedId:C}),p.push({redactedId:C,resourceData:g[C],resourceType:g[C].Type,existingFindings:x.get(C)||[]});break;case"fail":case"skipped":m.failureCount++,H.warn(`Resource ${C} failed or was skipped`,{redactedId:C,status:B.status});break}}),W.showSummary();let j=Date.now()-m.startTime,M=W.getStats();if(H.debug("Analysis completed with progress tracker stats",{progressTrackerStats:M,performanceMetrics:m,totalTime:j,totalResources:S,maxConcurrent:s.maxConcurrent}),U.analysisComplete(j,m.successCount,m.failureCount,m.timeoutCount),m.failureCount>0||m.timeoutCount>0){U.newline(),U.info("\u{1F4CA} Performance Analysis:");let C=m.successCount>0?Math.round(j/1e3/m.successCount):0;U.comment(` \u23F1\uFE0F Average completion time: ${C}s`),U.comment(` \u{1F4CA} Success rate: ${(m.successCount/S*100).toFixed(1)}%`)}if(p.length>0){U.newline(),U.warning("\u23F0 Timed Out Resources:"),U.comment(` \u{1F4CB} Total timed out: ${p.length}`);for(let C of p){if(U.comment(` \u274C ${C.resourceType}: ${C.redactedId}`),C.resourceData?.Properties){let N=C.resourceData.Properties,K=jF(N);U.comment(` \u{1F4DD} Name: ${K}`)}C.existingFindings.length>0&&U.comment(` \u{1F50D} Existing findings: ${C.existingFindings.length}`),C.resourceData?.Metadata&&U.comment(" \u{1F4CD} Has metadata: Yes"),["AWS::CloudFormation::Stack","AWS::Serverless::Application","AWS::ECS::Service"].includes(C.resourceType)&&U.comment(" \u26A0\uFE0F Complex resource type - may require extended analysis time")}U.newline(),U.info("\u{1F4A1} Tip: Some resources are taking longer to analyze than expected."),U.comment(" This is normal for complex resources. The analysis will continue with the remaining resources."),U.warning(`Retrying ${p.length} resource${p.length===1?"":"s"} that need a little more time...`)}let $=new Set(Object.keys(f)),L=new Set(Object.values(h)),z=Array.from(L).filter(C=>!$.has(C)||!f[C]?.issues?.length);if(z.length>0){let C=E.getCachedResultsForResources(z),B=0;for(let[N,K]of Array.from(C.entries())){if(f[N]?.issues?.length>0)continue;let me=(K.issues||[]).map(Z=>({...Z,resource:N,resourceId:N}));me.length>0&&(f[N]||(f[N]={issues:[]}),f[N].issues.push(...me),f[N].resourceName=K.resourceName,B+=me.length)}B>0}return f};var vg=require("node:child_process"),Ot=V(require("node:fs")),Dg=V(require("node:os")),Oc=V(require("node:path"));var zF="1.0.0",dB={Security:"https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/",Reliability:"https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/","Performance Efficiency":"https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/","Cost Optimization":"https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/","Operational Excellence":"https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/",Sustainability:"https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/"},UF=t=>t.toLowerCase().replace(/[^\w\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),pB=(t,e)=>{let s=0;if(s+=2e3,e){let n=Object.values(t).filter(r=>{let i=r.sources.cdkInsights?.issues??[],o=r.sources.cdkNag?.issues??[];return i.length>0||o.length>0});s+=n.length*100}for(let[,n]of Object.entries(t)){let r=n.sources.cdkInsights?.issues??[],i=n.sources.cdkNag?.issues??[];for(let o of[...r,...i])s+=o.issue.length,s+=o.recommendation?.length||0,s+=o.codeSnippet?.length||0,s+=500}return s},fB=t=>t?t.split(`
233
233
  `).map(e=>e.trim()).filter(Boolean).join(`
234
234
  `):"",GF=t=>{let e=`- **Issue:** ${t.issue}`;if(t.recommendation&&(e+=`
235
235
  - **Recommendation:** ${fB(t.recommendation)}`),t.sourceLocation){let{filePath:s,line:n,column:r,confidence:i}=t.sourceLocation;e+=`
@@ -264,7 +264,7 @@ CDK Insights has found **${s.totalIssues} issues** in **${s.totalResources} reso
264
264
  `);for(let[f,p]of Object.entries(e)){let m=p.sources.cdkInsights?.issues??[],g=p.sources.cdkNag?.issues??[];if(m.length===0&&g.length===0)continue;o.push(`---
265
265
  `),o.push(`<h2 id="${UF(p.cdkPath)}">Resource: ${p.resourceName??p.friendlyName}</h2>
266
266
 
267
- `);let h=[];if(p.constructType&&h.push(`**Type:** \`${p.constructType}\``),p.serviceCategory&&h.push(`**Category:** ${p.serviceCategory}`),p.sourceLocation){let{filePath:v,line:E,column:T,confidence:_,enclosingScope:W}=p.sourceLocation,j=`**${_==="high"?"\u{1F3AF}":_==="medium"?"\u{1F4CD}":"\u2753"} Source:** \`${v}:${E}:${T}\``;W&&(j+=` (in \`${W}\`)`),h.push(j)}else if(p.rootSourceLocation||p.createdBy||p.searchHint){if(p.createdBy&&h.push(`**\u{1F517} ${p.createdBy}**`),p.rootSourceLocation){let{filePath:v,line:E,column:T,enclosingScope:_}=p.rootSourceLocation,W=`**\u{1F4C2} Parent Source:** \`${v}:${E}:${T}\``;_&&(W+=` (in \`${_}\`)`),h.push(W)}p.searchHint&&h.push(`**\u{1F50D} ${p.searchHint}**`)}if(p.l2ConstructType&&p.l2ConstructId&&h.push(`**L2 Construct:** \`${p.l2ConstructId}\` (${p.l2ConstructType})`),p.parentPath&&h.push(`**Parent:** \`${p.parentPath}\``),p.childCount!==void 0&&p.childCount>0&&h.push(`**Children:** ${p.childCount}`),p.dependencies&&p.dependencies.length>0&&h.push(`**Depends On:** ${p.dependencies.map(v=>`\`${v}\``).join(", ")}`),p.tags&&Object.keys(p.tags).length>0){let v=Object.entries(p.tags).map(([E,T])=>`\`${E}=${T}\``).join(", ");h.push(`**Tags:** ${v}`)}if(h.length>0&&o.push(`${h.join(" | ")}
267
+ `);let h=[];if(p.constructType&&h.push(`**Type:** \`${p.constructType}\``),p.serviceCategory&&h.push(`**Category:** ${p.serviceCategory}`),p.sourceLocation){let{filePath:v,line:E,column:R,confidence:_,enclosingScope:W}=p.sourceLocation,M=`**${_==="high"?"\u{1F3AF}":_==="medium"?"\u{1F4CD}":"\u2753"} Source:** \`${v}:${E}:${R}\``;W&&(M+=` (in \`${W}\`)`),h.push(M)}else if(p.rootSourceLocation||p.createdBy||p.searchHint){if(p.createdBy&&h.push(`**\u{1F517} ${p.createdBy}**`),p.rootSourceLocation){let{filePath:v,line:E,column:R,enclosingScope:_}=p.rootSourceLocation,W=`**\u{1F4C2} Parent Source:** \`${v}:${E}:${R}\``;_&&(W+=` (in \`${_}\`)`),h.push(W)}p.searchHint&&h.push(`**\u{1F50D} ${p.searchHint}**`)}if(p.l2ConstructType&&p.l2ConstructId&&h.push(`**L2 Construct:** \`${p.l2ConstructId}\` (${p.l2ConstructType})`),p.parentPath&&h.push(`**Parent:** \`${p.parentPath}\``),p.childCount!==void 0&&p.childCount>0&&h.push(`**Children:** ${p.childCount}`),p.dependencies&&p.dependencies.length>0&&h.push(`**Depends On:** ${p.dependencies.map(v=>`\`${v}\``).join(", ")}`),p.tags&&Object.keys(p.tags).length>0){let v=Object.entries(p.tags).map(([E,R])=>`\`${E}=${R}\``).join(", ");h.push(`**Tags:** ${v}`)}if(h.length>0&&o.push(`${h.join(" | ")}
268
268
 
269
269
  `),p.sourceLocation?.codeSnippet?(o.push(`<details>
270
270
  <summary>Source Code Context</summary>
@@ -295,11 +295,11 @@ CDK Insights has found **${s.totalIssues} issues** in **${s.totalResources} reso
295
295
 
296
296
  \`\`\`ts
297
297
  ${_}
298
- \`\`\``)}let E=p.cdkPath??r[p.resourceId];o.push(`- **Source Path:** \`${E}\``),n&&p.docUrl&&o.push(`- **Documentation:** [View ${p.resourceName??p.friendlyName} Construct Docs](${p.docUrl})`);let T=dB[v.wafPillar];o.push(`- **WAF Pillar:** [${v.wafPillar}](${T})`),o.push("")}else o.push(`- _(no CDK Insights issues)_
298
+ \`\`\``)}let E=p.cdkPath??r[p.resourceId];o.push(`- **Source Path:** \`${E}\``),n&&p.docUrl&&o.push(`- **Documentation:** [View ${p.resourceName??p.friendlyName} Construct Docs](${p.docUrl})`);let R=dB[v.wafPillar];o.push(`- **WAF Pillar:** [${v.wafPillar}](${R})`),o.push("")}else o.push(`- _(no CDK Insights issues)_
299
299
  `);o.push(`**CDK Nag Issues:**
300
300
  `);let S=(p.sources.cdkNag?.issues??[]).slice().sort((v,E)=>$d[v.severity]-$d[E.severity]);if(S.length)for(let v of S){if(o.push(`### ${jd(v.severity)} ${v.severity} Severity CDK Nag Issue ${jd(v.severity)}
301
301
  `),o.push(GF(v)),v.codeSnippet){let E=v.codeSnippet.replace(/^```[a-z]*\n?/,"").replace(/```$/,"").split(`
302
- `).map(T=>` ${T}`).join(`
302
+ `).map(R=>` ${R}`).join(`
303
303
  `);o.push(`- **Potential Fix Example:**
304
304
 
305
305
  \`\`\`ts
@@ -313,7 +313,7 @@ ${E}
313
313
  \u26A0\uFE0F Full report available at ${u}`)}if(a){let u={title:e,body:o};await ns.post(`https://api.github.com/repos/${c.owner}/${c.repo}/issues`,u,{headers:{Authorization:`Bearer ${a}`,Accept:"application/vnd.github+json"}}),U.githubIssueCreated(`https://github.com/${c.owner}/${c.repo}/issues`)}else if(n){let u,l;try{u=Ot.mkdtempSync(Oc.join(Dg.tmpdir(),"cdk-insights-")),l=Oc.join(u,"issue-body.md"),Ot.writeFileSync(l,o);let f=(0,vg.execFileSync)("gh",["issue","create","--title",e,"--body-file",l],{encoding:"utf-8"}).trim().match(/https:\/\/github\.com\/[^\s]+/),p=f?f[0]:`https://github.com/${c.owner}/${c.repo}/issues`;U.githubIssueCreated(p)}catch(d){U.warning("GitHub CLI failed. You may need to authenticate with `gh auth login`"),U.warning(`Error: ${d instanceof Error?d.message:"Unknown error"}`),U.warning("Falling back to web interface..."),KF(c,e,o)}finally{if(l&&Ot.existsSync(l))try{Ot.unlinkSync(l)}catch{}if(u&&Ot.existsSync(u))try{Ot.rmdirSync(u)}catch{}}}else KF(c,e,o)},KF=(t,e,s)=>{let n=`https://github.com/${t.owner}/${t.repo}/issues/new`,r=encodeURIComponent(e),i=encodeURIComponent(s),o=`${n}?title=${r}&body=${i}`;if(o.length>yB){U.warning(`Issue body is too long for URL (${o.length} chars). The content may be truncated in the browser.`),U.comment("Consider setting GITHUB_TOKEN environment variable or installing GitHub CLI (gh) for full support.");let a=`${n}?title=${r}`;U.info(`Please open this URL and paste the issue body manually:
314
314
  ${a}`),U.info(`
315
315
  Issue body has been saved to: cdk-insights-issue-body.md`);try{Ot.writeFileSync("cdk-insights-issue-body.md",s)}catch(c){U.warning(`Failed to save issue body to file: ${c instanceof Error?c.message:String(c)}`)}}else U.info(`Please open this URL to create the issue:
316
- ${o}`)};var YF=require("node:child_process"),JF=()=>{try{return(0,YF.execFileSync)("gh",["--version"],{stdio:"ignore"}),!0}catch{return!1}};var XF=V(require("node:crypto"));var bB=[/^AWS::/,/^arn:aws[a-z-]*:/,/^\[REDACTED\]$/,/^(true|false|enabled|disabled)$/i,/^(us|eu|ap|sa|ca|me|af)-(north|south|east|west|central)-\d$/,/^https:\/\/[a-z0-9-]+\.(amazonaws\.com|aws\.amazon\.com)/],vB=new Set(["Ref","Fn::GetAtt","Fn::Sub","Fn::Join","Fn::Select","Fn::Split","Fn::If","Fn::Equals","Fn::And","Fn::Or","Fn::Not","Fn::Condition","Fn::Base64","Fn::Cidr","Fn::FindInMap","Fn::GetAZs","Fn::ImportValue","Fn::Transform","Condition"]),DB=new Set(["SSEAlgorithm","Algorithm","KeySpec","CustomerMasterKeySpec","Protocol","Scheme","HttpMethod","AuthorizationType","Type","SslPolicy","SecurityPolicy","MinimumProtocolVersion","Runtime","Engine","EngineVersion","Handler","PackageType","Effect","Action","Principal","Resource","Condition","LogLevel","MetricsLevel","Status","State","Enabled","IpProtocol","CidrIp","CidrIpv6","FromPort","ToPort","Version","SchemaVersion"]),SB=t=>bB.some(e=>e.test(t)),CB=t=>{if(typeof t!="object"||t===null||Array.isArray(t))return!1;let e=Object.keys(t);return e.length===1&&vB.has(e[0])},Wd=(t,e,s=0)=>{if(s>50)return"[DEEP_NESTED]";if(t==null||typeof t=="boolean"||typeof t=="number")return t;if(typeof t=="string")return t===""?"":e&&DB.has(e)||SB(t)?t:t.length>100?"[REDACTED_LONG_STRING]":"[REDACTED]";if(Array.isArray(t))return t.map(n=>Wd(n,void 0,s+1));if(typeof t=="object"){if(CB(t))return t;let n={};for(let[r,i]of Object.entries(t))n[r]=Wd(i,r,s+1);return n}return"[REDACTED]"},Sg=t=>{let e={Type:t.Type};return t.Properties&&(e.Properties=Wd(t.Properties,void 0,0)),t.Metadata&&(e.Metadata=Wd(t.Metadata,void 0,0)),t.DependsOn&&(e.DependsOn=t.DependsOn),t.Condition&&(e.Condition=t.Condition),t.DeletionPolicy&&(e.DeletionPolicy=t.DeletionPolicy),t.UpdateReplacePolicy&&(e.UpdateReplacePolicy=t.UpdateReplacePolicy),e};var wB=t=>{let e=JSON.stringify(t,Object.keys(t).sort());return XF.createHash("sha256").update(e).digest("hex").slice(0,32)},QF=(t,e)=>({Authorization:`Bearer ${t}`,"Content-Type":"application/json","x-cdk-insights-fingerprint":e,"x-cdk-insights-client":"cli"}),e6=(t,e)=>async(s,n,r,i,o,a,c,u,l,d)=>{let g=W=>new Promise(M=>setTimeout(M,W)),h=o,y=a,x,D=Date.now(),S=async()=>{let W=Sg(r),M=wB(W),j={stackName:s,resourceId:n,resource:W,resourceType:i,resourceContentHash:M};d&&(j.context=d);let{data:$}=await t.post(`${e}/analyze`,j,{headers:QF(h,y)});if(!$?.jobId)throw new Error(`No jobId returned from analysis API for resource ${n}`);return $.jobId};try{x=await S(),u&&u.startJob(x,n),Gt.info(`Started analysis job ${x} for resource ${n} (${i})`)}catch(W){let{message:M}=W,j=ns.isAxiosError(W)&&W.response?.status===403;if(j&&l)try{Gt.info(`Authentication failed (403) for resource ${n}, attempting to refresh auth...`);let $=await l();h=$.authToken,y=$.fingerprint;try{x=await S(),u&&u.startJob(x,n),Gt.info(`Successfully started analysis job ${x} for resource ${n} after auth refresh`)}catch(L){throw xe.error(`Failed to start analysis for resource ${n} even after auth refresh:`,{error:L}),new Error(`Authentication failed (403) for resource ${n} even after refreshing auth. Your license may have hit its environment limit or the fingerprint may not be registered. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`)}}catch($){throw xe.error(`Failed to refresh auth for resource ${n}:`,{error:$}),new Error(`Authentication failed (403) for resource ${n} and could not refresh auth. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`)}else throw xe.error(`Failed to start analysis for resource ${n}:`,{error:W}),j?new Error(`Authentication failed (403) for resource ${n}. Your auth token may be invalid or expired. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`):new Error(`Failed to start analysis for resource ${n}: ${M||W}`)}let v=1e3,E=0,T=Date.now();for(let W=1;W<=30;W++){try{let M=Date.now()-D;Gt.info(`Polling job ${x} for resource ${n} on attempt ${W}/30 (interval: ${v}ms, total elapsed: ${M}ms)`),u&&u.updateJobStatus(x,n,"polling",W);let j=await t.get(`${e}/analyze/${x}`,{headers:QF(h,y)});Gt.info(`API Response for job ${x}: status=${j.data.status}, hasResult=${!!j.data.result}, resultType=${typeof j.data.result}`);let{status:$,result:L,error:z}=j.data;if($==="completed"){if(!L)throw Gt.error(`Job ${x} completed without result payload. Raw response: ${JSON.stringify(j.data)}`),new Error(`Job ${x} completed without result payload`);u&&u.completeJob(x,n);let B=Date.now()-T,N=Date.now()-D;return Gt.info(`Job ${x} completed successfully in ${B}ms (attempt ${W}, total time: ${N}ms)`),L}if($==="failed"){u&&u.failJob(x,n,"Job failed");let B=Date.now()-D,N=z||"Unknown error";throw Gt.error(`Job ${x} failed after ${B}ms (attempt ${W}): ${N}`),new Error(`Analysis job ${x} failed for resource ${n}: ${N}`)}let C=Date.now()-T;if(C>5e3){let B=Math.min(v*1.5,3e3),N=Math.random()*500;v=Math.min(B+N,3e3),E=0,Gt.info(`Job ${x} running for ${C}ms, using exponential backoff: ${Math.round(v)}ms`)}else E===0&&(v=1e3);T=Date.now()}catch(M){if(E++,M instanceof Error){if(M.message.startsWith(`Analysis job ${x}`))throw M;xe.error(`Error polling job ${x} for resource ${n} on attempt ${W}:`,{error:M.message})}else if(typeof M=="object"&&M!==null&&"response"in M){let j=M;j.response?.status===404?v=Math.min(v*1.2,3e3):(xe.error(`Error polling job ${x} for resource ${n} on attempt ${W}:`,{error:j}),v=Math.min(v*1.5,3e3))}else xe.error(`Unknown error polling job ${x} for resource ${n} on attempt ${W}:`,{error:M}),v=Math.min(v*1.5,3e3)}await g(v)}u&&u.timeoutJob(x,n);let _=Date.now()-D;throw Gt.error(`Job ${x} timed out after ${_}ms (30 attempts, max interval: 3000ms)`),new Error(`Polling timed out after 30 attempts for job ${x} (resource ${n}) - total time: ${_}ms`)};var Cg=(t,e)=>t.filter(s=>e.some(n=>s.issue.toLowerCase().includes(n.toLowerCase())||s.wafPillar&&s.wafPillar.toLowerCase()===n.toLowerCase()));var Eg=V(require("node:fs"));var Ud=t=>{switch(t.toUpperCase()){case"CRITICAL":return"\u{1F534}";case"HIGH":return"\u{1F7E0}";case"MEDIUM":return"\u{1F7E1}";case"LOW":return"\u{1F7E2}";default:return"\u26AA"}},Lc=(t,e)=>{xe.info(`
316
+ ${o}`)};var YF=require("node:child_process"),JF=()=>{try{return(0,YF.execFileSync)("gh",["--version"],{stdio:"ignore"}),!0}catch{return!1}};var XF=V(require("node:crypto"));var bB=[/^AWS::/,/^arn:aws[a-z-]*:/,/^\[REDACTED\]$/,/^(true|false|enabled|disabled)$/i,/^(us|eu|ap|sa|ca|me|af)-(north|south|east|west|central)-\d$/,/^https:\/\/[a-z0-9-]+\.(amazonaws\.com|aws\.amazon\.com)/],vB=new Set(["Ref","Fn::GetAtt","Fn::Sub","Fn::Join","Fn::Select","Fn::Split","Fn::If","Fn::Equals","Fn::And","Fn::Or","Fn::Not","Fn::Condition","Fn::Base64","Fn::Cidr","Fn::FindInMap","Fn::GetAZs","Fn::ImportValue","Fn::Transform","Condition"]),DB=new Set(["SSEAlgorithm","Algorithm","KeySpec","CustomerMasterKeySpec","Protocol","Scheme","HttpMethod","AuthorizationType","Type","SslPolicy","SecurityPolicy","MinimumProtocolVersion","Runtime","Engine","EngineVersion","Handler","PackageType","Effect","Action","Principal","Resource","Condition","LogLevel","MetricsLevel","Status","State","Enabled","IpProtocol","CidrIp","CidrIpv6","FromPort","ToPort","Version","SchemaVersion"]),SB=t=>bB.some(e=>e.test(t)),CB=t=>{if(typeof t!="object"||t===null||Array.isArray(t))return!1;let e=Object.keys(t);return e.length===1&&vB.has(e[0])},Wd=(t,e,s=0)=>{if(s>50)return"[DEEP_NESTED]";if(t==null||typeof t=="boolean"||typeof t=="number")return t;if(typeof t=="string")return t===""?"":e&&DB.has(e)||SB(t)?t:t.length>100?"[REDACTED_LONG_STRING]":"[REDACTED]";if(Array.isArray(t))return t.map(n=>Wd(n,void 0,s+1));if(typeof t=="object"){if(CB(t))return t;let n={};for(let[r,i]of Object.entries(t))n[r]=Wd(i,r,s+1);return n}return"[REDACTED]"},Sg=t=>{let e={Type:t.Type};return t.Properties&&(e.Properties=Wd(t.Properties,void 0,0)),t.Metadata&&(e.Metadata=Wd(t.Metadata,void 0,0)),t.DependsOn&&(e.DependsOn=t.DependsOn),t.Condition&&(e.Condition=t.Condition),t.DeletionPolicy&&(e.DeletionPolicy=t.DeletionPolicy),t.UpdateReplacePolicy&&(e.UpdateReplacePolicy=t.UpdateReplacePolicy),e};var wB=t=>{let e=JSON.stringify(t,Object.keys(t).sort());return XF.createHash("sha256").update(e).digest("hex").slice(0,32)},QF=(t,e)=>({Authorization:`Bearer ${t}`,"Content-Type":"application/json","x-cdk-insights-fingerprint":e,"x-cdk-insights-client":"cli"}),e6=(t,e)=>async(s,n,r,i,o,a,c,u,l,d)=>{let g=W=>new Promise(j=>setTimeout(j,W)),h=o,y=a,x,D=Date.now(),S=async()=>{let W=Sg(r),j=wB(W),M={stackName:s,resourceId:n,resource:W,resourceType:i,resourceContentHash:j};d&&(M.context=d);let{data:$}=await t.post(`${e}/analyze`,M,{headers:QF(h,y)});if(!$?.jobId)throw new Error(`No jobId returned from analysis API for resource ${n}`);return $.jobId};try{x=await S(),u&&u.startJob(x,n),Gt.info(`Started analysis job ${x} for resource ${n} (${i})`)}catch(W){let{message:j}=W,M=ns.isAxiosError(W)&&W.response?.status===403;if(M&&l)try{Gt.info(`Authentication failed (403) for resource ${n}, attempting to refresh auth...`);let $=await l();h=$.authToken,y=$.fingerprint;try{x=await S(),u&&u.startJob(x,n),Gt.info(`Successfully started analysis job ${x} for resource ${n} after auth refresh`)}catch(L){throw xe.error(`Failed to start analysis for resource ${n} even after auth refresh:`,{error:L}),new Error(`Authentication failed (403) for resource ${n} even after refreshing auth. Your license may have hit its environment limit or the fingerprint may not be registered. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`)}}catch($){throw xe.error(`Failed to refresh auth for resource ${n}:`,{error:$}),new Error(`Authentication failed (403) for resource ${n} and could not refresh auth. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`)}else throw xe.error(`Failed to start analysis for resource ${n}:`,{error:W}),M?new Error(`Authentication failed (403) for resource ${n}. Your auth token may be invalid or expired. Try running 'npx cdk-insights clear-cache' to refresh your authentication.`):new Error(`Failed to start analysis for resource ${n}: ${j||W}`)}let v=1e3,E=0,R=Date.now();for(let W=1;W<=30;W++){try{let j=Date.now()-D;Gt.info(`Polling job ${x} for resource ${n} on attempt ${W}/30 (interval: ${v}ms, total elapsed: ${j}ms)`),u&&u.updateJobStatus(x,n,"polling",W);let M=await t.get(`${e}/analyze/${x}`,{headers:QF(h,y)});Gt.info(`API Response for job ${x}: status=${M.data.status}, hasResult=${!!M.data.result}, resultType=${typeof M.data.result}`);let{status:$,result:L,error:z}=M.data;if($==="completed"){if(!L)throw Gt.error(`Job ${x} completed without result payload. Raw response: ${JSON.stringify(M.data)}`),new Error(`Job ${x} completed without result payload`);u&&u.completeJob(x,n);let B=Date.now()-R,N=Date.now()-D;return Gt.info(`Job ${x} completed successfully in ${B}ms (attempt ${W}, total time: ${N}ms)`),L}if($==="failed"){u&&u.failJob(x,n,"Job failed");let B=Date.now()-D,N=z||"Unknown error";throw Gt.error(`Job ${x} failed after ${B}ms (attempt ${W}): ${N}`),new Error(`Analysis job ${x} failed for resource ${n}: ${N}`)}let C=Date.now()-R;if(C>5e3){let B=Math.min(v*1.5,3e3),N=Math.random()*500;v=Math.min(B+N,3e3),E=0,Gt.info(`Job ${x} running for ${C}ms, using exponential backoff: ${Math.round(v)}ms`)}else E===0&&(v=1e3);R=Date.now()}catch(j){if(E++,j instanceof Error){if(j.message.startsWith(`Analysis job ${x}`))throw j;xe.error(`Error polling job ${x} for resource ${n} on attempt ${W}:`,{error:j.message})}else if(typeof j=="object"&&j!==null&&"response"in j){let M=j;M.response?.status===404?v=Math.min(v*1.2,3e3):(xe.error(`Error polling job ${x} for resource ${n} on attempt ${W}:`,{error:M}),v=Math.min(v*1.5,3e3))}else xe.error(`Unknown error polling job ${x} for resource ${n} on attempt ${W}:`,{error:j}),v=Math.min(v*1.5,3e3)}await g(v)}u&&u.timeoutJob(x,n);let _=Date.now()-D;throw Gt.error(`Job ${x} timed out after ${_}ms (30 attempts, max interval: 3000ms)`),new Error(`Polling timed out after 30 attempts for job ${x} (resource ${n}) - total time: ${_}ms`)};var Cg=(t,e)=>t.filter(s=>e.some(n=>s.issue.toLowerCase().includes(n.toLowerCase())||s.wafPillar&&s.wafPillar.toLowerCase()===n.toLowerCase()));var Eg=V(require("node:fs"));var Ud=t=>{switch(t.toUpperCase()){case"CRITICAL":return"\u{1F534}";case"HIGH":return"\u{1F7E0}";case"MEDIUM":return"\u{1F7E1}";case"LOW":return"\u{1F7E2}";default:return"\u26AA"}},Lc=(t,e)=>{xe.info(`
317
317
  \u{1F4DD} Analysis Summary for stack: ${t}`),xe.info(`Total Resources Scanned: ${e.totalResources}`),xe.info(`Resources with Issues: ${e.resourcesWithIssues} (${e.percentWithIssues}%)`),xe.info(`Total Issues Found: ${e.totalIssues}
318
318
  `),xe.info("Severity Breakdown:"),xe.info(` ${Ud("CRITICAL")} Critical: ${e.severityCounts.CRITICAL}`),xe.info(` ${Ud("HIGH")} High: ${e.severityCounts.HIGH}`),xe.info(` ${Ud("MEDIUM")} Medium: ${e.severityCounts.MEDIUM}`),xe.info(` ${Ud("LOW")} Low: ${e.severityCounts.LOW}
319
319
  `),xe.info("WAF Pillar Impact:");for(let[s,n]of Object.entries(e.wafIssues))xe.info(` ${s}: ${n}`);xe.info(""),xe.info("Top Priorities:"),e.severityCounts.CRITICAL>0&&xe.info(" \u{1F534} Address Critical issues immediately (highest risk)"),e.severityCounts.HIGH>0&&xe.info(" \u{1F7E0} Then handle High-severity issues"),e.severityCounts.MEDIUM>0&&xe.info(" \u{1F7E1} Schedule Medium-severity tasks soon"),e.severityCounts.LOW>0&&xe.info(" \u{1F7E2} Plan Low-severity enhancements at your convenience"),xe.info("")};var AB=xp(),EB=t=>{switch(t){case"CRITICAL":return"\u{1F534}";case"HIGH":return"\u{1F536}";case"MEDIUM":return"\u{1F7E1}";case"LOW":return"\u{1F7E2}";default:return"\u26AA"}},FB=(t,e)=>{let s=t.sourceLocation||e?.sourceLocation;if(s){let{filePath:n,line:r,column:i,confidence:o}=s,a=o==="high"?"\u{1F3AF}":o==="medium"?"\u{1F4CD}":"\u2753",c=n.length>40?`...${n.slice(-37)}`:n;return`${a} ${c}:${r}:${i}`}if(e?.rootSourceLocation){let{filePath:n,line:r,column:i}=e.rootSourceLocation;return`\u{1F517} ${n.length>40?`...${n.slice(-37)}`:n}:${r}:${i}`}return e?.createdBy?`\u{1F517} ${e.createdBy.length>28?`${e.createdBy.slice(0,25)}...`:e.createdBy}`:""};var t6={CRITICAL:4,HIGH:3,MEDIUM:2,LOW:1},Bc=t=>{let e=new AB({head:["Resource","Stack","Severity","Service","Issue","Location"],colWidths:[20,15,10,15,40,30],wordWrap:!0}),s=[];for(let[,n]of Object.entries(t)){let r=[...n.sources?.cdkInsights?.issues??[],...n.sources?.cdkNag?.issues??[]];for(let i of r){let o=i.constructType||n.constructType||n.type||"Unknown",a=FB(i,n);s.push({issue:i,group:n,service:o,sourceLocation:a})}}s.sort((n,r)=>{let i=t6[n.issue.severity]||0;return(t6[r.issue.severity]||0)-i});for(let{issue:n,group:r,service:i,sourceLocation:o}of s)e.push([r.friendlyName||r.resourceId,n.stackName||"Unknown",`${EB(n.severity)} ${n.severity}`,i,n.issue,o||n.locationHint||""]);console.log(e.toString())};var n6=V(require("node:fs"));var{version:kB}=wg(),s6={CRITICAL:0,HIGH:1,MEDIUM:2,LOW:3},r6=(t,e,s)=>{let n=Object.entries(s).map(([o,a])=>{let c=[...a.sources?.cdkInsights?.issues??[],...a.sources?.cdkNag?.issues??[]].slice().sort((l,d)=>s6[l.severity]-s6[d.severity]),u=Pd(c,a.cdkPath);return{resourceId:a.resourceId,logicalId:a.logicalId,cdkName:a.friendlyName,resourceName:a.resourceName,cdkPath:a.cdkPath,githubUrl:a.githubUrl,docUrl:a.docUrl,constructType:a.constructType,parentPath:a.parentPath,childCount:a.childCount,tags:a.tags,sourceLocation:a.sourceLocation,constructHierarchy:a.constructHierarchy,serviceCategory:a.serviceCategory,dependencies:a.dependencies,sensitiveProperties:a.sensitiveProperties,usesDefaults:a.usesDefaults,l2ConstructType:a.l2ConstructType,l2ConstructId:a.l2ConstructId,createdBy:a.createdBy,rootSourceLocation:a.rootSourceLocation,searchHint:a.searchHint,issues:u.map(l=>({issue:l.issue,recommendation:l.recommendation,severity:l.severity,wafPillar:l.wafPillar,codeSnippet:l.codeSnippet,locationHint:l.locationHint,foundBy:l.foundBy,sourceLocation:l.sourceLocation,stackName:l.stackName}))}}),r={stackName:t,generatedAt:new Date().toISOString(),version:kB,summary:e,recommendations:n},i=`${t}_analysis_report.json`;try{n6.writeFileSync(i,JSON.stringify(r,null,2),"utf-8"),xe.info(`\u{1F4C4} JSON report written to ${i}`)}catch(o){let a=o instanceof Error?o.message:String(o);throw xe.error(`\u274C Failed to write JSON report to ${i}: ${a}`),new Error(`Failed to write analysis report: ${a}`)}};var{version:IB}=wg(),RB=t=>{switch(t){case"CRITICAL":case"HIGH":return"error";case"MEDIUM":return"warning";default:return"note"}},i6=t=>{switch(t){case"CRITICAL":return 9;case"HIGH":return 7;case"MEDIUM":return 4;case"LOW":return 2;default:return 1}},Gd=(t,e)=>{let s=[],n=[],r=new Set;for(let[i,o]of Object.entries(e)){let a=[...o.sources?.cdkInsights?.issues||[],...o.sources?.cdkNag?.issues||[]];for(let c of a){let u=TB(c);r.has(u)||(r.add(u),s.push({id:u,name:c.issue.slice(0,100),shortDescription:{text:c.issue},fullDescription:c.recommendation?{text:c.recommendation}:void 0,helpUri:c.docUrl||c.githubUrl,properties:{"security-severity":i6(c.severity).toString(),tags:[c.wafPillar,c.severity,c.foundBy].filter(Boolean)}})),n.push({ruleId:u,level:RB(c.severity),message:{text:c.recommendation||c.issue},locations:[{physicalLocation:{artifactLocation:{uri:c.sourceLocation?.filePath||`cdk.out/${t}.template.json`,uriBaseId:"%SRCROOT%"},region:c.sourceLocation?{startLine:c.sourceLocation.line,startColumn:c.sourceLocation.column}:void 0}}],properties:{"security-severity":i6(c.severity).toString(),wafPillar:c.wafPillar,recommendation:c.recommendation}})}}return{$schema:"https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",version:"2.1.0",runs:[{tool:{driver:{name:"cdk-insights",version:IB,informationUri:"https://cdkinsights.dev",rules:s}},results:n}]}},TB=t=>{let e=t.issue.toLowerCase().replace(/[^a-z0-9]+/g,"-").slice(0,50);return`CDK-${t.severity}-${e}`};var Ag=V(require("node:fs")),PB=t=>{switch(t){case"CRITICAL":case"HIGH":return"error";case"MEDIUM":return"warning";default:return"notice"}},OB=t=>t.replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A"),o6=t=>t.replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C"),LB=(t,e)=>{let s=[];for(let[n,r]of Object.entries(e)){let i=[...r.sources?.cdkInsights?.issues||[],...r.sources?.cdkNag?.issues||[]];for(let o of i){let a=PB(o.severity),c=`[${o.severity}] ${o.issue.slice(0,100)}`,u=o.recommendation||o.issue,l=[`title=${o6(c)}`];o.sourceLocation?.filePath&&(l.push(`file=${o6(o.sourceLocation.filePath)}`),l.push(`line=${o.sourceLocation.line}`),o.sourceLocation.column&&l.push(`col=${o.sourceLocation.column}`)),s.push(`::${a} ${l.join(",")}::${OB(u)}`)}}return s},BB=(t,e,s,n)=>{let r=Object.values(s).reduce((a,c)=>a+c,0),i=`# \u{1F50D} CDK Insights Analysis: ${t}
@@ -503,7 +503,7 @@ ${o}`)};var YF=require("node:child_process"),JF=()=>{try{return(0,YF.execFileSyn
503
503
  );
504
504
 
505
505
  See: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html`};return e[t]||e.secret||`Use AWS Secrets Manager or SSM Parameter Store to securely manage this value.
506
- See: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html`};var Mc=(t,e)=>{switch(t){case"property_name":return e?`Property name "${e}" suggests this contains sensitive data`:"Property name suggests sensitive data";case"value_pattern":return"Value matches a known secret pattern (API key, token, or credential format)";case"high_entropy":return"Value has high entropy (appears random), which is characteristic of secrets";default:return"Value appears to contain sensitive data"}};var xa={SEVERITY:"CRITICAL",WAF_PILLAR:"Security",RULE_ID_PREFIX:"CDK-INSIGHTS-SENSITIVE",FOUND_BY:"cdkInsights"};var f6=(t,e,s={})=>{let n=[];return s.disabled?{hasSensitiveData:!1,resourceId:e,resourceType:t.Type,findings:[]}:(t.Properties&&Vd(t.Properties,"",n,s),{hasSensitiveData:n.length>0,resourceId:e,resourceType:t.Type,findings:n})},Vd=(t,e,s,n)=>{if(t!=null){if(typeof t=="string"){ZB(t,e,s,n);return}if(Array.isArray(t)){t.forEach((r,i)=>{Vd(r,`${e}[${i}]`,s,n)});return}if(typeof t=="object"){if(Hd(t))return;for(let[r,i]of Object.entries(t)){let o=e?`${e}.${r}`:r;if(!n.ignoreProperties?.includes(o)){if(_g(r)){if(typeof i=="string"){if(!m6(i,n)){let a=Tg(r)||"secret";s.push({propertyPath:o,propertyName:r,detectionReason:"property_name",detectionReasonMessage:Mc("property_name",r),recommendation:Nc(a)})}}else Hd(i)||Vd(i,o,s,n);continue}Vd(i,o,s,n)}}}}},ZB=(t,e,s,n)=>{if(!m6(t,n)){if(kg(t)){let r=e.split(".").pop()??e;s.push({propertyPath:e,propertyName:r,detectionReason:"value_pattern",detectionReasonMessage:Mc("value_pattern"),recommendation:Nc("secret")});return}if(Fg(t,n.strictMode)){let r=e.split(".").pop()??e;s.push({propertyPath:e,propertyName:r,detectionReason:"high_entropy",detectionReasonMessage:Mc("high_entropy"),recommendation:Nc("secret")})}}},m6=(t,e)=>!!(!t||t.trim()===""||Ig(t)||Rg(t)||e.allowPatterns?.some(s=>t.includes(s)));var Pg=(t,e)=>{let s=t.findings.map(r=>`"${r.propertyName}" at ${r.propertyPath}`).join(", "),n=t.findings.length;return{resourceId:t.resourceId,issue:n===1?`Sensitive data detected: ${s}. This resource was NOT sent to CDK Insights servers.`:`Sensitive data detected in ${n} properties: ${s}. This resource was NOT sent to CDK Insights servers.`,recommendation:"Use AWS Secrets Manager or SSM Parameter Store to securely manage sensitive values. See: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html",severity:xa.SEVERITY,wafPillar:xa.WAF_PILLAR,foundBy:xa.FOUND_BY,constructPath:t.resourceId,constructType:t.resourceType,stackName:e,ruleId:xa.RULE_ID_PREFIX,context:{property:t.findings.map(r=>r.propertyPath).join(", "),value:"[REDACTED]",expected:"AWS Secrets Manager or SSM Parameter Store reference"}}},Og=(t,e={})=>{let s=[],n=[],r=0;for(let[i,o]of Object.entries(t)){let a=f6(o,i,e);s.push(a),a.hasSensitiveData&&(n.push(i),r+=a.findings.length)}return{totalResourcesScanned:Object.keys(t).length,resourcesWithSensitiveData:n.length,totalFindings:r,hasSkippedResources:n.length>0,skippedResourceIds:n,detectionResults:s}};var Lg=require("aws-cdk-lib"),h6=require("cdk-nag");var Zd=async(t,e)=>{try{return await t()}catch(s){return H.warn(`\u26A0\uFE0F Error in ${e.operationName}:`,{error:s}),e.fallbackValue}},YB=t=>!t||t.length===0||t.includes("All services"),JB=(t,e)=>{if(YB(e))return t;let s=new Set((e??[]).map(n=>`AWS::${n}::`));return Object.fromEntries(Object.entries(t).filter(([,n])=>{for(let r of s)if(n.Type.startsWith(r))return!0;return!1}))},QB=t=>Object.fromEntries(Object.entries(t).filter(([,e])=>!e.Type.startsWith("AWS::CDK::"))),XB=t=>{let{stackName:e,pathToLogicalId:s}=t;return n=>({resourceId:n,friendlyName:s[n]??n,cdkPath:`${e}/${n}`,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}})},Kd=(t,e,s)=>{let n=t[e];if(n)return n;let r=s(e);return t[e]=r,r},eN=t=>[...t.sources?.cdkInsights?.issues??[],...t.sources?.cdkNag?.issues??[]],g6=t=>{for(let e of Object.values(t)){for(let s of e.sources?.cdkInsights?.issues??[])if(s.severity==="CRITICAL")return!0;for(let s of e.sources?.cdkNag?.issues??[])if(s.severity==="CRITICAL")return!0}return!1},tN=t=>{for(let[e,s]of Object.entries(t))(s.sources?.cdkInsights?.issues?.length??0)>0||(s.sources?.cdkNag?.issues?.length??0)>0||delete t[e];return t},sN=(t,e,s,n,r,i,o)=>({resourceId:t,issue:e,recommendation:s,severity:n,wafPillar:r,foundBy:o,constructPath:i}),nN=t=>{let{recommendationMap:e,stackName:s,stackResources:n,manifest:r}=t;try{let i=new Map,o=a=>{let c=i.get(a);if(c)return c;let u=yd(r,a);return i.set(a,u),u};return Object.entries(e).reduce((a,[c,u])=>{let l=u.cdkPath||c,d=o(l),f=n[c]?.Type||"Unknown",p=m=>({...m,...d?.filePath&&{sourceLocation:{filePath:d.filePath,line:d.line||1,column:d.column||1,confidence:d.confidence||"low"}},stackName:s,constructType:f});return a[c]={...u,sources:{cdkInsights:{issues:(u.sources?.cdkInsights?.issues??[]).map(p)},cdkNag:{issues:(u.sources?.cdkNag?.issues??[]).map(p)}}},a},{})}catch(i){return H.warn("\u26A0\uFE0F Could not enrich issues with source location:",{error:i}),e}},rN=t=>{let{authToken:e,fingerprint:s,tier:n,quotaValidation:r}=t,i=!!(e&&s&&n),o=!r||r.canRunStaticAnalysis,a=!r||r.canRunAIAnalysis,c=!!(n&&_n.isFeatureEnabled("aiAnalysis",n));return{hasAuth:i,canRunStatic:o,canRunAI:i&&c&&a,isAiEnabledByTier:c,canRunAIByQuota:a}},iN=async t=>{let{userResources:e,selectedServices:s,constructRegistry:n,canRunStatic:r}=t,i=Object.keys(e).length;return i===0?{}:r?(U.phase1(`Static analysis on ${i} resource${i===1?"":"s"}`),await Zd(()=>Promise.resolve(mF({Resources:e},sN,s||[],n)),{operationName:"static analysis",fallbackValue:{}})??{}):(U.warning("\u26A0\uFE0F Static analysis skipped due to license restrictions"),{})},oN=async t=>{let{stackName:e,userResources:s,inlineFindings:n,pathToLogicalId:r,authToken:i,fingerprint:o,tier:a,noCache:c=!1,cache:u,capabilities:l,onAuthRefresh:d}=t,f=Object.keys(s).length;if(f===0)return{};if(!l.hasAuth)return{};if(a&&!l.isAiEnabledByTier)return U.comment("\u{1F4A1} AI analysis is available with Pro tier - upgrade for deeper insights"),{};if(!l.canRunAIByQuota&&l.canRunStatic)return U.comment("\u{1F4A1} AI analysis skipped due to trial quota limits - upgrade to Pro for unlimited AI analysis"),{};if(!l.canRunAI)return{};if(!i||!o)return H.warn("AI analysis skipped: missing authToken or fingerprint"),{};U.phase2(`AI analysis on ${f} resource${f===1?"":"s"}`);let p=vi(),m=e6(ns,p),g=CF(u6),h=WF({analyzeResource:m,redactResources:g,onAuthRefresh:d});return await Zd(()=>h({stackName:e,resources:s,authToken:i,existingFindingsMap:n,pathToLogicalId:r,fingerprint:o,noCache:c,cacheConfig:u}),{operationName:"AI analysis",fallbackValue:{}})??{}},aN=t=>{let{recommendationMap:e,ruleFilter:s}=t;if(s.length===0)return e;for(let[n,r]of Object.entries(e)){let i=eN(r),o=Cg(i,s);if(o.length===0){delete e[n];continue}r.sources||(r.sources={cdkInsights:{issues:[]},cdkNag:{issues:[]}}),r.sources.cdkInsights||(r.sources.cdkInsights={issues:[]}),r.sources.cdkNag||(r.sources.cdkNag={issues:[]}),r.sources.cdkInsights.issues=o.filter(a=>a.foundBy==="cdkInsights"),r.sources.cdkNag.issues=o.filter(a=>a.foundBy==="cdkNag")}return e},cN=async t=>{let{stackName:e,recommendationMap:s,summary:n,tier:r}=t;if(!r||!_n.isFeatureEnabled("githubIntegration",r)){U.warning("GitHub integration is not available for your current tier"),U.comment(gu("githubIntegration",r??"free","GitHub integration"));return}let i=JF(),o=!!process.env.GITHUB_TOKEN;if(!i&&!o){U.warning("GitHub CLI not found and GITHUB_TOKEN not set. Skipping issue creation."),U.comment("Install GitHub CLI (gh) or set GITHUB_TOKEN environment variable to enable issue creation.");return}U.section("Creating GitHub Issue","\u{1F419}");let a=ga(e,s,n);await Zd(()=>ZF({stackName:e,issueTitle:`CDK Insights Analysis for ${e}`,issueBody:a,ghCli:i,recommendations:s,summary:n}),{operationName:"creating GitHub issue"})},x6=async({stackName:t,stack:e,selectedServices:s,inlineFindings:n,recommendationMapPerStack:r,pathToLogicalId:i,constructRegistry:o,ruleFilter:a,authToken:c,fingerprint:u,output:l,withIssue:d,tier:f,noCache:p=!1,warnSensitive:m=!1,sensitiveDataDetection:g={},cache:h,quotaValidation:y,manifest:x,onAuthRefresh:D})=>{let S=e.Resources??{},v=JB(S,s),E=QB(v),T=new Set(Object.keys(E)),_=T.size,W=rN({authToken:c,fingerprint:u,tier:f,quotaValidation:y}),M=XB({stackName:t,pathToLogicalId:i}),j=r[t]||{},$=Q=>{let Ee=M(Q),X=j[Q];return X?{...Ee,...X,sources:Ee.sources}:Ee},L=W.canRunAI?Object.fromEntries(Object.keys(E).map(Q=>[Q,$(Q)])):{};for(let Q of n)Kd(L,Q.resourceId,$).sources.cdkNag.issues.push(Q);let z=await iN({userResources:E,selectedServices:s,constructRegistry:o,canRunStatic:W.canRunStatic});for(let[Q,Ee]of Object.entries(z)){let X=Kd(L,Q,$),st=Ee.issues??[];X.sources.cdkInsights.issues.push(...st)}let C=Og(E,{disabled:g.disabled,ignoreProperties:g.ignoreProperties,allowPatterns:g.allowPatterns,strictMode:g.strictMode}),B=E;if(C.hasSkippedResources){let Q=C.resourcesWithSensitiveData;U.warning(`\u{1F512} Sensitive data detected in ${Q} resource${Q===1?"":"s"} - NOT sent to CDK Insights servers`),B=Object.fromEntries(Object.entries(E).filter(([Ee])=>!C.skippedResourceIds.includes(Ee)));for(let Ee of C.detectionResults)if(Ee.hasSensitiveData){let X=Kd(L,Ee.resourceId,$),st=Pg(Ee,t);X.sources.cdkInsights.issues.push(st)}}let N=await oN({stackName:t,userResources:B,inlineFindings:n,pathToLogicalId:i,authToken:c,fingerprint:u,tier:f,noCache:p,cache:h,capabilities:W,onAuthRefresh:D});c&&u&&Object.keys(N).length>0&&U.phase3("Processing results...");let K=d6({staticRecommendations:{},aiRecommendations:N,recommendationMap:L,ruleFilter:a,filterIssuesByRule:Cg});for(let[Q,Ee]of Object.entries(K.updatedMap)){let X=Kd(L,Q,$);X.sources.cdkInsights.issues.push(..._c({existing:X.sources.cdkInsights.issues,incoming:Ee.sources.cdkInsights.issues}))}aN({recommendationMap:L,ruleFilter:a}),tN(L);let me=nN({recommendationMap:L,stackName:t,stackResources:E,manifest:x}),Z=qd(me,_,T),J=Object.keys(me).length>0;return r[t]=me,l&&l!=="table"&&a6(l,t,me,!0,Z),d&&J&&await cN({stackName:t,recommendationMap:me,summary:Z,tier:f}),{recommendationMap:me,summary:Z,hasIssues:J,scannedResourceCount:_,scannedResourceIds:T,stackName:t,sensitiveDataSummary:C,hasSensitiveData:C.hasSkippedResources}},b6=async({stacks:t,inlineFindings:e,pathToLogicalId:s,output:n,recommendationMapPerStack:r,withIssue:i,services:o,ruleFilter:a=[],authToken:c,fingerprint:u,failOnCritical:l,tier:d,noCache:f=!1,allowOveruse:p=!1,warnSensitive:m=!1,sensitiveDataDetection:g={},cache:h,quotaValidation:y,onAuthRefresh:x})=>{if(H.info("\u{1F680} Starting CDK Insights analysis",{stackCount:Object.keys(t).length,stackNames:Object.keys(t),hasAuthToken:!!c,hasFingerprint:!!u,tier:d||"unknown",quotaValidation:y?{canRunStaticAnalysis:y.canRunStaticAnalysis,canRunAIAnalysis:y.canRunAIAnalysis,isTrial:y.quota?.isTrial}:null,services:o||["All services"],output:n||"table"}),y&&!y.quota.isTrial&&y.canRunAIAnalysis&&p){let z=y.quota.currentResourcesAnalyzed>=y.quota.maxResources,C=y.quota.wouldExceed;z?(U.warning(`\u26A0\uFE0F You have exceeded your paid allowance (${y.quota.currentResourcesAnalyzed}/${y.quota.maxResources} resources analyzed).`),U.warning(" Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged.")):C&&(U.warning(`\u26A0\uFE0F This analysis will exceed your paid allowance (${y.quota.currentResourcesAnalyzed}/${y.quota.maxResources} resources analyzed).`),U.warning(" Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged."))}let D=la("cdk.out"),S=await Zd(()=>FA(AA()),{operationName:"loading construct metadata",fallbackValue:{}})??{},v={},E=!1,T=!1,_=0,W=new Set,M=Object.keys(t),j=M.length,$=z=>{let{stackName:C,map:B}=z;for(let[N,K]of Object.entries(B))v[`${C}:${N}`]=K};if(j>1)await Md.runAnalysis({title:`Deep Analysis of ${j} CDK Stacks`,steps:M.map((z,C)=>({title:`Analyzing stack ${C+1}/${j}: ${z}`,task:async()=>{let B=t[z],N=await x6({stackName:z,stack:B,selectedServices:o,inlineFindings:e,recommendationMapPerStack:r,pathToLogicalId:s,constructRegistry:S,ruleFilter:a,authToken:c,fingerprint:u,output:n,withIssue:i,tier:d,noCache:f,warnSensitive:m,sensitiveDataDetection:g,cache:h,quotaValidation:y,manifest:D,onAuthRefresh:x});$({stackName:N.stackName,map:N.recommendationMap}),_+=N.scannedResourceCount;for(let K of N.scannedResourceIds)W.add(`${N.stackName}:${K}`);return!E&&N.hasIssues&&(E=g6(N.recommendationMap)),N.hasSensitiveData&&(T=!0),(n==="summary"||n==="table")&&U.summary(N.summary),N}})),showSummary:!0});else{let[z,C]=Object.entries(t)[0]??[];if(!z||!C)return{recommendationMaps:{},hasCriticalIssues:!1};let B=Object.entries(C.Resources||{}).filter(([,K])=>!K.Type.startsWith("AWS::CDK::")).length;U.analysisStart(z,B);let N=await x6({stackName:z,stack:C,selectedServices:o,inlineFindings:e,recommendationMapPerStack:r,pathToLogicalId:s,constructRegistry:S,ruleFilter:a,authToken:c,fingerprint:u,output:n,withIssue:i,tier:d,noCache:f,warnSensitive:m,sensitiveDataDetection:g,cache:h,quotaValidation:y,manifest:D,onAuthRefresh:x});$({stackName:N.stackName,map:N.recommendationMap}),_+=N.scannedResourceCount;for(let K of N.scannedResourceIds)W.add(`${N.stackName}:${K}`);N.hasIssues&&(E=g6(N.recommendationMap)),N.hasSensitiveData&&(T=!0),(n==="summary"||n==="table")&&U.summary(N.summary)}if(Object.keys(v).length>0&&j>1){let z=qd(v,_,W);if(n==="table"||n==="summary")U.section("Overall Analysis Summary","\u{1F4CA}"),Lc("Overall",z),Bc(v);else if(n==="sarif"){let C=Gd("consolidated",v),B="consolidated_analysis_report.sarif";y6.writeFileSync(B,JSON.stringify(C,null,2)),U.info(`\u{1F4C4} Consolidated SARIF report written to: ${B}`)}else n==="github-actions"&&zd("consolidated",v,z.severityCounts,_)}else if(n==="table"||n==="summary")if(Object.keys(v).length>0){let z=qd(v,_,W);U.section("Overall Analysis Summary","\u{1F4CA}"),Lc("Overall",z),Bc(v)}else U.success("No issues found across all stacks!");return{recommendationMaps:v,hasCriticalIssues:!!l&&E||T&&!m,hasSensitiveData:T}};var Bg={staticAnalysis:!0,basicServiceChecks:!0,localAnalysis:!0,jsonOutput:!0,tableOutput:!0,aiRecommendations:!1,githubIntegration:!1,teamCollaboration:!1,advancedOutputFormats:!1,customRules:!1,prioritySupport:!1,ciCdIntegration:!1},Ng={staticAnalysis:!0,basicServiceChecks:!0,localAnalysis:!0,jsonOutput:!0,tableOutput:!0,aiRecommendations:!0,githubIntegration:!0,teamCollaboration:!0,advancedOutputFormats:!0,customRules:!0,prioritySupport:!0,ciCdIntegration:!0};var jc=new Map,Yd=async(t,e)=>{if(!t)return{isValid:!0,tier:"free",features:Bg};if(jc.has(t)){let s=jc.get(t);if(s.expiresAt&&s.expiresAt>new Date)return s;jc.delete(t)}if(e){Mu.info("\u2705 License validated via JWT token from login");let s={isValid:!0,tier:"pro",expiresAt:new Date(Date.now()+3600*1e3),features:Ng};return jc.set(t,s),s}if(process.env.NODE_ENV==="development"&&process.env.CDK_INSIGHTS_DEV_MODE==="true"){Mu.warn("\u26A0\uFE0F Development mode enabled - Pro features available for testing only");let s={isValid:!0,tier:"pro",expiresAt:new Date(Date.now()+24*60*60*1e3),features:Ng};return jc.set(t,s),s}return Mu.warn("\u26A0\uFE0F License key provided but no valid authentication token"),{isValid:!1,tier:"free",features:Bg}};var v6=async t=>{let s={requestId:`enhanced-quota-${Date.now()}`,functionName:"validateEnhancedLicenseQuota"};H.info("\u{1F50D} Starting enhanced license quota validation",s,{requestedResources:t.requestedResources,hasLicenseKey:!!t.licenseKey,hasUsageData:!!t.usageData});try{if(t.licenseInfo||t.usageData){let l=0;t.licenseInfo&&t.licenseInfo.totalResourcesAnalyzed>0?(l=Number(t.licenseInfo.totalResourcesAnalyzed),H.info("\u{1F4CA} Using totalResourcesAnalyzed from license (source of truth)",s,{totalResourcesAnalyzed:l,licenseInfoSource:!0})):t.usageData&&t.usageData.totalResourcesAnalyzed>0?(l=t.usageData.totalResourcesAnalyzed,H.info("\u{1F4CA} Using usage data from login (fallback)",s,{totalResourcesAnalyzed:t.usageData.totalResourcesAnalyzed,totalTokens:t.usageData.totalTokens,usageCount:t.usageData.usageCount})):t.licenseInfo&&t.licenseInfo.currentPeriodUsage>0&&(l=Number(t.licenseInfo.currentPeriodUsage),H.info("\u{1F4CA} Using currentPeriodUsage from license (last resort fallback)",s,{currentPeriodUsage:l}));let d=200,f=!0,p=!1;if(t.licenseInfo){let T=t.licenseInfo.licenseType||t.licenseInfo.tier;if(t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial"){f=!0,d=t.licenseInfo.trialUsageLimit||t.licenseInfo.maxUsage||200;let _=t.licenseInfo.trialEnd||t.licenseInfo.expiresAt;_&&(p=Math.floor(Date.now()/1e3)>_)}else f=!1,T==="ENTERPRISE"?d=1e5:d=1e4}let m=Math.max(0,d-l),g=l+t.requestedResources>d,h=Math.floor(d*.8),y=Math.floor(d*.9),x=!0,D=!0,S=!0,v,E;if(p)x=!1,D=!1,S=!1,v="Trial license has expired",E="https://cdkinsights.dev/pricing";else if(g&&f){x=!1,D=!0,S=!1;let T=t.allowOveruse?" Note: --allow-overuse does not apply to trial licenses which have a hard usage limit.":"";v=`AI-powered analysis would exceed trial limit. You have analyzed ${l}/${d} resources and are requesting ${t.requestedResources} more.${T}`,E="https://cdkinsights.dev/pricing"}else g&&!f?t.allowOveruse?(x=!0,D=!0,S=!0,v=`You have exceeded your paid allowance (${l}/${d} resources). Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged.`):(x=!0,D=!0,S=!1,v=`AI analysis would exceed your paid allowance (${l}/${d} resources). Extra usage will be charged. Use --allow-overuse to proceed with AI analysis.`):f&&l>=y&&t.requestedResources>10&&(x=!1,D=!0,S=!1,v=`Large AI analysis requests are blocked when approaching trial limit. You have analyzed ${l}/${d} resources.`,E="https://cdkinsights.dev/pricing");return f&&l>=h&&l<d&&H.info("Trial usage approaching limit - will be displayed in enhanced UI",s,{currentResources:l,maxResources:d,warningThreshold:h}),H.info("\u2705 Enhanced license quota validation completed successfully",s,{canProceed:x,canRunStaticAnalysis:D,canRunAIAnalysis:S,currentResources:l,maxResources:d,remainingResources:m,isTrial:f,trialExpired:p}),{canProceed:x,canRunStaticAnalysis:D,canRunAIAnalysis:S,quota:{currentResourcesAnalyzed:l,maxResources:d,remainingResources:m,isTrial:f,trialExpired:p,wouldExceed:g,warningThreshold:h,hardStopThreshold:y,currentTokens:t.usageData?t.usageData.totalTokens:t.licenseInfo?Number(t.licenseInfo.totalResourcesAnalyzed||0):0,maxTokens:1e6,remainingTokens:t.usageData?Math.max(0,1e6-t.usageData.totalTokens):1e6},reason:v,upgradePath:E,usageData:t.usageData}}H.warn("\u274C No usage data available, using fallback validation",s);let n;if(t.licenseInfo){let l=Number(t.licenseInfo.currentPeriodUsage||0),d=Number(t.licenseInfo.totalResourcesAnalyzed||0),f=d>0?d:l;f>0&&(n={totalTokens:f,totalResourcesAnalyzed:f,totalCost:0,usageCount:1,successfulUsageCount:1,failedUsageCount:0,firstUsageAt:Number(t.licenseInfo.createdAt),lastUsageAt:Number(t.licenseInfo.lastUsageAt||t.licenseInfo.updatedAt)},H.info("\u{1F4CA} Using usage data from license info",s,{totalResourcesAnalyzed:n.totalResourcesAnalyzed,totalTokens:n.totalTokens}))}let r=200,i=!0,o=!1;if(t.licenseInfo){let l=t.licenseInfo.licenseType||t.licenseInfo.tier;if(t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial"){i=!0,r=t.licenseInfo.maxUsage?Number(t.licenseInfo.maxUsage):200;let d=t.licenseInfo.trialEnd||t.licenseInfo.expiresAt;d&&(o=Math.floor(Date.now()/1e3)>d)}else i=!1,l==="ENTERPRISE"?r=1e5:r=1e4}let a=n?n.totalResourcesAnalyzed:0,c=Math.max(0,r-a),u=a+t.requestedResources>r;return{canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!0,quota:{currentResourcesAnalyzed:a,maxResources:r,remainingResources:c,isTrial:i,trialExpired:o,wouldExceed:u,warningThreshold:Math.floor(r*.8),hardStopThreshold:Math.floor(r*.9),currentTokens:n?n.totalTokens:0,maxTokens:1e6,remainingTokens:1e6},reason:n?"Using usage data from license info":"No usage data available - proceeding with analysis",usageData:n||void 0}}catch(n){return H.error("Enhanced license quota validation failed",s,n instanceof Error?n:new Error(String(n))),{canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,quota:{currentResourcesAnalyzed:0,maxResources:t.licenseInfo&&t.licenseInfo.maxUsage||200,remainingResources:t.licenseInfo&&t.licenseInfo.maxUsage||200,isTrial:t.licenseInfo?t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial":!0,trialExpired:!1,wouldExceed:!1,warningThreshold:Math.floor((t.licenseInfo&&t.licenseInfo.maxUsage||200)*.8),hardStopThreshold:Math.floor((t.licenseInfo&&t.licenseInfo.maxUsage||200)*.9),currentTokens:0,maxTokens:1e6,remainingTokens:1e6},reason:"Enhanced quota validation failed - proceeding with analysis"}}};var D6=t=>{let e=`${t.resourceId}:${t.issue}:${t.wafPillar}`,s=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);s=(s<<5)-s+r,s=s&s}return`finding-${Math.abs(s).toString(16)}`},S6=t=>{let{apiClient:e}=t;return{async submitFeedback(s,n,r){let i={findingId:D6(s),resourceId:s.resourceId,resourceType:r?.resourceType||"Unknown",issueSnippet:s.issue.substring(0,200),rating:n,comment:r?.comment?.substring(0,500),wafPillar:s.wafPillar,severity:s.severity,modelId:r?.modelId,timestamp:Date.now()};try{return await e.post("/feedback",i)}catch{return{success:!1,message:"Failed to submit feedback"}}},async submitBatchFeedback(s,n){let r=s.map(i=>({findingId:D6(i.issue),resourceId:i.issue.resourceId,resourceType:i.resourceType||"Unknown",issueSnippet:i.issue.issue.substring(0,200),rating:i.rating,comment:i.comment?.substring(0,500),wafPillar:i.issue.wafPillar,severity:i.issue.severity,modelId:n?.modelId,timestamp:Date.now()}));try{let i=await e.post("/feedback/batch",{feedbackItems:r});return{successful:i.successful??s.length,failed:i.failed??0}}catch{return{successful:0,failed:s.length}}},async markReportAsHelpful(s,n){let r=s.map(i=>({issue:i,rating:"helpful",resourceType:n?.[i.resourceId]}));return this.submitBatchFeedback(r)}}};var Dt={stackName:"",services:[],redact:!1,summaryOnly:!1,synth:!1,ruleFilter:[],failOnCritical:!0,ci:!1,all:!1,yes:!1,reset:!1,github:!1,noCache:!1,allowOveruse:!1,cache:{enabled:!0,ttl:5*60*1e3,maxSize:1e3}},uN=t=>["json","table","markdown","summary","sarif","github-actions"].includes(t)?t:(console.warn(`\u26A0\uFE0F Invalid output format "${t}", defaulting to "table"`),"table"),C6=t=>Array.isArray(t)?t.filter(e=>typeof e=="string"):typeof t=="string"?t.split(",").map(e=>e.trim()).filter(Boolean):[],lN=t=>C6(t).map(s=>s.trim()).filter(Boolean).map(s=>s.toLowerCase()==="all"?"All services":s).filter(s=>Ao(s)),dN=t=>{if(!t||typeof t!="object"||Array.isArray(t))return Dt.cache;let e=t,s={enabled:Dt.cache.enabled,ttl:Dt.cache.ttl,maxSize:Dt.cache.maxSize};return typeof e.enabled=="boolean"&&(s.enabled=e.enabled),typeof e.ttl=="number"&&e.ttl>0?s.ttl=e.ttl:e.ttl&&console.warn(`\u26A0\uFE0F Invalid cache TTL "${e.ttl}", using default ${Dt.cache.ttl}ms`),typeof e.maxSize=="number"&&e.maxSize>0?s.maxSize=e.maxSize:e.maxSize&&console.warn(`\u26A0\uFE0F Invalid cache maxSize "${e.maxSize}", using default ${Dt.cache.maxSize}`),s},$c=(t,e)=>{if(typeof t=="boolean")return t;if(typeof t=="string"){let s=t.toLowerCase();if(s==="true"||s==="1"||s==="yes")return!0;if(s==="false"||s==="0"||s==="no")return!1}return e},w6=(t,e)=>{let s=e.output||e.format||t.output,n=s?uN(s):void 0,r=e.withIssue??t.withIssue;return n!=="markdown"&&r&&(console.warn("\u26A0\uFE0F GitHub issues are only supported with markdown output. Disabling withIssue."),r=!1),{stackName:e.stackName??t.stackName??Dt.stackName,output:n,format:n,services:lN(e.services??t.services??Dt.services),withIssue:r,redact:$c(e.redact??t.redact,Dt.redact),summaryOnly:$c(e.summaryOnly??t.summaryOnly,Dt.summaryOnly),synth:$c(e.synth??t.synth,Dt.synth),ruleFilter:C6(e.ruleFilter??t.ruleFilter??Dt.ruleFilter),failOnCritical:$c(e.failOnCritical??t.failOnCritical,Dt.failOnCritical),ci:e.ci??Dt.ci,all:e.all??Dt.all,yes:e.yes??Dt.yes,reset:e.reset??Dt.reset,github:e.github??Dt.github,noCache:e.noCache??Dt.noCache,allowOveruse:$c(e.allowOveruse??t.allowOveruse,Dt.allowOveruse),cache:dN(e.cache??t.cache??Dt.cache),local:e.local??!1,prComment:e.prComment??!1,warnSensitive:e.warnSensitive??!1}};var Jn=V(require("node:fs")),A6=V(require("node:path"));var Wc=A6.join(process.cwd(),".cdk-insights.json"),E6={enabled:!0,warnOnly:!1,allowPatterns:[],ignoreProperties:[],strictMode:!1},Yi={services:[],redact:!1,summaryOnly:!1,synth:!1,ruleFilter:[],failOnCritical:!0,noCache:!1,allowOveruse:!1,sensitiveDataDetection:E6,cache:{enabled:!0,ttl:5*60*1e3,maxSize:1e3}},F6=t=>{if(!t||typeof t!="object"||Array.isArray(t))return H.warn("\u274C Invalid configuration format, using defaults"),Yi;let e={...Yi},s=t;if(typeof s.stackName=="string"&&(e.stackName=s.stackName),typeof s.output=="string"&&["json","table","markdown","summary","sarif","github-actions"].includes(s.output)?e.output=s.output:s.output&&H.warn(`\u26A0\uFE0F Invalid output format "${s.output}", skipping output setting`),Array.isArray(s.services)&&(e.services=s.services.filter(n=>typeof n=="string").map(n=>n.toLowerCase()==="all"?"All services":n).filter(n=>Ao(n))),typeof s.withIssue=="boolean"&&(e.withIssue=s.withIssue),typeof s.redact=="boolean"&&(e.redact=s.redact),typeof s.summaryOnly=="boolean"&&(e.summaryOnly=s.summaryOnly),typeof s.synth=="boolean"&&(e.synth=s.synth),Array.isArray(s.ruleFilter)&&(e.ruleFilter=s.ruleFilter.filter(n=>typeof n=="string")),typeof s.failOnCritical=="boolean"&&(e.failOnCritical=s.failOnCritical),typeof s.noCache=="boolean"&&(e.noCache=s.noCache),typeof s.allowOveruse=="boolean"&&(e.allowOveruse=s.allowOveruse),s.cache&&typeof s.cache=="object"&&!Array.isArray(s.cache)){let n=s.cache;e.cache={...Yi.cache},typeof n.enabled=="boolean"&&(e.cache.enabled=n.enabled),typeof n.ttl=="number"&&n.ttl>0?e.cache.ttl=n.ttl:n.ttl&&H.warn(`\u26A0\uFE0F Invalid cache TTL "${n.ttl}", using default ${Yi.cache?.ttl}ms`),typeof n.maxSize=="number"&&n.maxSize>0?e.cache.maxSize=n.maxSize:n.maxSize&&H.warn(`\u26A0\uFE0F Invalid cache maxSize "${n.maxSize}", using default ${Yi.cache?.maxSize}`)}if(s.sensitiveDataDetection&&typeof s.sensitiveDataDetection=="object"&&!Array.isArray(s.sensitiveDataDetection)){let n=s.sensitiveDataDetection;e.sensitiveDataDetection={...E6},typeof n.enabled=="boolean"&&(e.sensitiveDataDetection.enabled=n.enabled),typeof n.warnOnly=="boolean"&&(e.sensitiveDataDetection.warnOnly=n.warnOnly),typeof n.strictMode=="boolean"&&(e.sensitiveDataDetection.strictMode=n.strictMode),Array.isArray(n.allowPatterns)&&(e.sensitiveDataDetection.allowPatterns=n.allowPatterns.filter(r=>typeof r=="string")),Array.isArray(n.ignoreProperties)&&(e.sensitiveDataDetection.ignoreProperties=n.ignoreProperties.filter(r=>typeof r=="string"))}return e},Ji=()=>{if(!Jn.existsSync(Wc))return Yi;try{let t=Jn.readFileSync(Wc,"utf-8"),e=JSON.parse(t);return F6(e)}catch(t){let e=t;return H.error(`\u274C Error loading configuration: ${e.message}`),H.info("\u{1F4DD} Using default configuration"),Yi}},Jd=t=>{try{let e=F6(t);Jn.writeFileSync(Wc,JSON.stringify(e,null,2),"utf-8"),H.info("\u{1F4BE} Configuration saved successfully")}catch(e){let s=e;H.error(`\u274C Error saving configuration: ${s.message}`)}},Qd=()=>{try{Jn.existsSync(Wc)&&(Jn.unlinkSync(Wc),H.info("\u{1F5D1}\uFE0F Configuration file removed"))}catch(t){let e=t;H.error(`\u274C Error removing configuration: ${e.message}`)}};var pN=()=>{let t=k6.resolve(process.cwd(),"cdk.out");return _6.existsSync(t)},I6=t=>t.format==="json"||t.output==="json"?"json":t.format==="markdown"||t.output==="markdown"?"markdown":t.format==="summary"||t.output==="summary"?"summary":t.format==="sarif"||t.output==="sarif"?"sarif":t.format==="github-actions"||t.output==="github-actions"?"github-actions":"table";async function fN(t,e){let s=t.all?"All stacks":t.stackName||"All stacks",n=await Er({message:"Which stack would you like to analyze?",default:s,choices:e.map(c=>({name:c,value:c}))}),r=t.output||t.format||"table",i=await Er({message:"Choose output format:",choices:[{name:"\u{1F4CA} Table (default) - Human-readable table with colors",value:"table"},{name:"\u{1F4C4} Markdown - GitHub-compatible markdown report",value:"markdown"},{name:"\u{1F527} JSON - Structured data for CI/CD integration",value:"json"},{name:"\u{1F4CB} Summary - Brief overview with counts",value:"summary"}],default:r}),o=t.services&&t.services.length>0?t.services:["All services"],a=await l0({message:"Which AWS services would you like to analyze? (Use <space> to toggle, <enter> to confirm)",choices:[{name:"\u{1F50D} All services (recommended)",value:"All services",checked:o.includes("All services")},{name:"\u{1F510} IAM - Identity and Access Management",value:"IAM",checked:o.includes("IAM")},{name:"\u{1F4E6} S3 - Simple Storage Service",value:"S3",checked:o.includes("S3")},{name:"\u26A1 Lambda - Serverless Functions",value:"Lambda",checked:o.includes("Lambda")},{name:"\u{1F5C4}\uFE0F DynamoDB - NoSQL Database",value:"DynamoDB",checked:o.includes("DynamoDB")},{name:"\u{1F5C4}\uFE0F RDS - Relational Database",value:"RDS",checked:o.includes("RDS")},{name:"\u{1F5A5}\uFE0F EC2 - Virtual Machines",value:"EC2",checked:o.includes("EC2")},{name:"\u{1F4E2} SNS - Simple Notification Service",value:"SNS",checked:o.includes("SNS")},{name:"\u{1F4E8} SQS - Simple Queue Service",value:"SQS",checked:o.includes("SQS")},{name:"\u{1F504} Step Functions - Workflow Orchestration",value:"StepFunctions",checked:o.includes("StepFunctions")},{name:"\u{1F4DD} CloudTrail - API Logging",value:"CloudTrail",checked:o.includes("CloudTrail")},{name:"\u{1F310} API Gateway - REST APIs",value:"ApiGateway",checked:o.includes("ApiGateway")},{name:"\u{1F511} Secrets Manager - Secret Management",value:"SecretsManager",checked:o.includes("SecretsManager")},{name:"\u{1F510} KMS - Key Management",value:"KMS",checked:o.includes("KMS")},{name:"\u{1F4E1} EventBridge - Event Routing",value:"EventBridge",checked:o.includes("EventBridge")},{name:"\u{1F310} CloudFront - Content Delivery Network",value:"CloudFront",checked:o.includes("CloudFront")},{name:"\u2696\uFE0F ELB - Elastic Load Balancing",value:"ELB",checked:o.includes("ELB")},{name:"\u{1F433} ECS - Elastic Container Service",value:"ECS",checked:o.includes("ECS")},{name:"\u{1F464} Cognito - User Authentication",value:"Cognito",checked:o.includes("Cognito")},{name:"\u{1F6E1}\uFE0F WAF - Web Application Firewall",value:"WAF",checked:o.includes("WAF")},{name:"\u{1F4CA} CloudWatch - Monitoring & Logging",value:"CloudWatch",checked:o.includes("CloudWatch")},{name:"\u{1F30D} Route53 - DNS Management",value:"Route53",checked:o.includes("Route53")},{name:"\u26A1 ElastiCache - In-Memory Caching",value:"ElastiCache",checked:o.includes("ElastiCache")},{name:"\u{1F4E6} ECR - Container Registry",value:"ECR",checked:o.includes("ECR")},{name:"\u{1F50E} OpenSearch - Search & Analytics",value:"OpenSearch",checked:o.includes("OpenSearch")},{name:"\u{1F50F} ACM - Certificate Manager",value:"ACM",checked:o.includes("ACM")},{name:"\u{1F4BE} Backup - Backup Management",value:"Backup",checked:o.includes("Backup")},{name:"\u{1F517} VPC - Virtual Private Cloud",value:"VPC",checked:o.includes("VPC")},{name:"\u{1F30A} Kinesis - Real-time Streaming",value:"Kinesis",checked:o.includes("Kinesis")},{name:"\u{1F4F1} AppSync - GraphQL APIs",value:"AppSync",checked:o.includes("AppSync")},{name:"\u2638\uFE0F EKS - Kubernetes Service",value:"EKS",checked:o.includes("EKS")},{name:"\u{1F4C8} Redshift - Data Warehouse",value:"Redshift",checked:o.includes("Redshift")},{name:"\u{1F4EC} MSK - Managed Kafka",value:"MSK",checked:o.includes("MSK")},{name:"\u{1F9EA} Glue - ETL & Data Catalog",value:"Glue",checked:o.includes("Glue")}]});return{stackName:n,output:i,services:a}}async function mN(t,e,s,n,r,i,o,a,c){let{stackName:u,output:l,services:d,withIssue:f,ruleFilter:p,failOnCritical:m}=t,g=u==="All stacks"?void 0:u,{stacks:h,inlineFindings:y,pathToLogicalId:x,recommendationMapPerStack:D,assetSourcePaths:S}=wA(g),v=Object.keys(h).length;U.success(`Synthesis complete. Found ${v} stack${v===1?"":"s"} to analyze.`);let E=Object.values(h).reduce((C,B)=>{let N=Object.entries(B.Resources||{}).filter(([,K])=>!K.Type.startsWith("AWS::CDK::"));return C+N.length},0);E>0?U.info(`\u{1F50D} Preparing to analyze ${E} total resources across ${v} stacks...`):U.warning("No user resources found in stacks. Make sure your CDK app is properly configured.");let T=null,_=!!s;if(a&&(_=!1,U.info("\u{1F3E0} Running in local mode - static analysis only")),o&&!a){U.info("\u{1F50D} Checking license quota...");let C=n.licenseType==="TRIAL"||n.status==="TRIAL",B=n.totalResourcesAnalyzed||0,N=n.trialUsageLimit||n.maxUsage||200,K=Number.isNaN(B)?0:B,me=Number.isNaN(N)?200:N;if(C&&K>=me)_=!1,T={canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,quota:{currentResourcesAnalyzed:K,maxResources:me,remainingResources:Math.max(0,me-K),isTrial:!0,trialExpired:!1},reason:`Trial limit exceeded (${K}/${me} resources analyzed)`,upgradePath:"https://cdkinsights.dev/pricing"},U.warning("\u26A0\uFE0F Trial quota exceeded - falling back to static analysis only"),U.comment(" Upgrade to Pro for unlimited AI-powered recommendations");else if(T=await v6({licenseKey:o,requestedResources:E,allowOveruse:t.allowOveruse,usageData:r,licenseInfo:n}),_=!!s&&(T?.canRunAIAnalysis??!0),T?.quota?.isTrial){let Z=T.quota.currentResourcesAnalyzed,J=T.quota.maxResources;Z>=J&&(T={...T,canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,reason:`Trial limit exceeded (${Z}/${J} resources analyzed) - falling back to static analysis only`},_=!1)}T?.quota?.isTrial&&U.displayTrialStatus({currentResourcesAnalyzed:T.quota.currentResourcesAnalyzed,maxResources:T.quota.maxResources,remainingResources:T.quota.remainingResources,isTrial:T.quota.isTrial,trialExpired:T.quota.trialExpired,trialStart:n.trialStart,trialEnd:n.trialEnd,tier:n.tier}),!_&&T?.quota?U.displayQuotaWarning({currentResourcesAnalyzed:T.quota.currentResourcesAnalyzed,maxResources:T.quota.maxResources,requestedResources:E,remainingResources:T.quota.remainingResources,isTrial:T.quota.isTrial}):_&&o&&U.success("\u2705 AI analysis enabled - you'll receive comprehensive recommendations")}let W=o&&i?async()=>{H.info("\u{1F504} Refreshing authentication due to 403 error...");try{bl();let B=dd().fingerprint,N=await Nm(o,B,i);if(!N)throw new Error("Failed to refresh authentication");let K=N.fingerprint||B;return H.info("\u2705 Successfully refreshed authentication",{hasNewToken:!!N.token,hasFingerprint:!!K}),{authToken:N.token,fingerprint:K}}catch(C){throw H.error("Failed to refresh authentication",{error:C}),C}}:void 0,M=qu(t.services),j=M.services;M.removedAllServices?H.debug(`Services normalization: removed "All services", using: ${j.join(", ")}`):M.defaultedToAll&&H.debug('Services normalization: defaulting to "All services"');let $=c||{},L=t.warnSensitive||$.warnOnly||!1,z={stacks:h,inlineFindings:y,pathToLogicalId:x,recommendationMapPerStack:D,assetSourcePaths:S,output:I6(t),services:j,withIssue:t.withIssue,ruleFilter:t.ruleFilter||[],failOnCritical:t.failOnCritical,authToken:s,fingerprint:e,tier:n?.tier,quotaValidation:T||null,noCache:t.noCache||!1,allowOveruse:t.allowOveruse||!1,warnSensitive:L,sensitiveDataDetection:{disabled:$.enabled===!1,ignoreProperties:$.ignoreProperties||[],allowPatterns:$.allowPatterns||[],strictMode:$.strictMode||!1},onAuthRefresh:W};return await b6(z)}var R6={command:"scan [stackName]",describe:"Scan CDK stacks for best practices and security issues",builder:t=>t.positional("stackName",{type:"string",describe:"Name of the stack to analyze"}).option("ci",{type:"boolean",default:!1}).option("withIssue",{type:"boolean",description:"Create GitHub issues from findings?"}).option("output",{alias:"o",type:"string",choices:["json","table","markdown","summary","sarif","github-actions"]}).option("all",{type:"boolean",description:"Analyze all CDK stacks,",default:!1}).option("services",{type:"array",string:!0,description:"Only run checks for these services (e.g. IAM, S3, Lambda)"}).option("format",{type:"string",choices:["json","table","markdown","summary","sarif","github-actions"],describe:"Alias for --output (preferred)"}).option("yes",{type:"boolean",description:"Skip prompts and use saved/default values,",default:!1,alias:"y"}).option("reset",{type:"boolean",description:"Clear saved config and start fresh"}).option("redact",{type:"boolean",description:"Redact sensitive resource names in output",default:!1}).option("summaryOnly",{type:"boolean",description:"Only show summary in console output",default:!1}).option("synth",{type:"boolean",description:"Run cdk synth before analysis",default:!1}).option("failOnCritical",{type:"boolean",description:"Exit with code 1 if critical issues are found (defaults to true)",default:!0}).option("ruleFilter",{type:"array",string:!0,describe:"Filter findings to only include matching rule IDs or categories (e.g. AwsSolutions-IAM4, Security)"}).option("github",{describe:"Create GitHub issues for findings,",type:"boolean",default:!1}).option("noCache",{describe:"Disable cache and force fresh analysis",type:"boolean",default:!1}).option("allowOveruse",{describe:"Allow AI analysis even when exceeding paid allowance (extra usage will be charged)",type:"boolean",default:!1}).option("local",{describe:"Run static analysis only (skip AI analysis even with a valid license)",type:"boolean",default:!1}).option("warnSensitive",{describe:"Treat sensitive data as warning instead of critical (will not fail CI)",type:"boolean",default:!1}).option("prComment",{describe:"Post analysis summary as a PR comment (GitHub Actions only)",type:"boolean",default:!1}),handler:async t=>{try{if(t.reset){Qd(),H.info("\u{1F5D1}\uFE0F Cleared saved CLI preferences.");return}let e=dd(),s=e.fingerprint,n=e.project;(!s||s.length===0)&&(U.error("Failed to generate system fingerprint for authentication."),U.comment(" This may indicate a permissions issue with reading system information."),process.exit(1));let r=process.env.CDK_INSIGHTS_LICENSE_KEY,i,o,a;if(r){let v=await Nm(r,s,n);v?(i=v.token,o=v.usageData,a=v.licenseInfo||await Yd(r,i),v.fingerprint?s=v.fingerprint:s=dd(i).fingerprint):(U.warning("\u26A0\uFE0F License validation failed. Running in free tier mode."),U.comment(" Check your license key and internet connection."),a=await Yd(r,void 0))}else a=await Yd(void 0,void 0);let c=`${a?.tier??"free"} tier`;U.info(`\u{1F50D} CDK Insights (${c})`),a.tier==="free"&&!r&&(U.comment("\u{1F4A1} Upgrade to Pro for AI-powered recommendations and GitHub integration"),U.comment(" Visit: https://cdkinsights.dev"));let u=Ji(),l=w6(u,t),d=l.ci||kn();if(d&&!l.ci){let v=Zy();U.info(`Detected CI environment${v?`: ${v}`:""}`)}let f=!d&&Yy();d&&!l.stackName&&!l.all&&(l.all=!0),d&&!l.output&&(l.output="json"),pN()||(U.info("\u26A1 No cdk.out directory found. Running cdk synth..."),CA()||(U.error("Failed to synthesize CDK stacks."),U.comment(" Make sure your CDK app compiles correctly."),process.exit(1)));let p=dw();p.length===0&&(U.error("No CDK stacks found in cdk.out directory."),U.comment(' Make sure you have run "cdk synth" and that your CDK app defines at least one stack.'),U.comment(" If cdk.out exists, check that it contains valid CloudFormation templates."),process.exit(1));let m=["All stacks",...p],g=l;if((t.github||g.withIssue)&&(_n.isFeatureEnabled("githubIntegration",a.tier)?U.success("\u{1F517} GitHub integration enabled"):(U.error("GitHub integration is not available for your current tier"),U.comment(gu("githubIntegration",a.tier,"GitHub integration")),process.exit(1))),f&&!l.yes){let v=await fN(l,m);g={...l,...v}}g.all&&(g.stackName="All stacks"),g.stackName||(g.stackName="All stacks"),f&&g.output||(g.output=I6(g)),g.format=g.output,f&&g.output==="markdown"&&g.withIssue===void 0?g.withIssue=await Vi({message:"Create GitHub issues from findings? (only available with markdown output)",default:!1}):g.withIssue===void 0&&(g.withIssue=!1),g.output==="table"&&(g.withIssue=!1);let h=await mN(g,s,i,a,o,n,r,g.local,u.sensitiveDataDetection),y=[],x=h.recommendationMaps||{},D=Object.keys(x),S=0;for(let[v,E]of Object.entries(x)){let T=E;S++;let _=v.includes(":")?v.substring(v.indexOf(":")+1):v,W=[...T.sources.cdkInsights?.issues??[],...T.sources.cdkNag?.issues??[]];for(let M of W)y.push({resourceId:_,issue:M.issue,recommendation:M.recommendation,severity:M.severity,wafPillar:M.wafPillar||"Security",foundBy:M.foundBy||"cdkInsights",constructPath:M.constructPath})}if(g.prComment)if(hd()){U.info("Posting analysis summary to PR...");let v={stackNames:D.length>0?D:[g.stackName||"Unknown"],resourceCount:S,issues:y,reportUrl:void 0,aiEnabled:!g.local&&!!r,tier:a?.tier||"free"},E=await Oh({data:v,updateExisting:!0});E.success?U.success("PR comment posted successfully"):U.warning(`Failed to post PR comment: ${E.error}`)}else U.warning("PR comment requested but not in GitHub Actions PR context. Skipping."),U.comment(" PR comments require: GitHub Actions + pull_request event + GITHUB_TOKEN permissions");if(U.success(`Analysis complete! ${g.withIssue?"GitHub issues have been created for the findings.":"Review the findings above."}`),f&&i&&y.length>0)try{let v=await Er({message:"Was this analysis helpful?",choices:[{name:"Yes, helpful!",value:"helpful"},{name:"Actionable - I'll fix these",value:"actionable"},{name:"Not helpful",value:"not_helpful"},{name:"Inaccurate findings",value:"inaccurate"},{name:"Skip",value:"skip"}],default:"skip"});if(v!=="skip"){let E=vi(),_=S6({apiClient:{post:async(M,j)=>{let{data:$}=await ns.post(`${E}${M}`,j,{headers:{Authorization:`Bearer ${i}`,"Content-Type":"application/json","x-cdk-insights-fingerprint":s,"x-cdk-insights-client":"cli"},timeout:1e4});return $}}}),W={};for(let[M,j]of Object.entries(h.recommendationMaps||{})){let $=j,L=M.includes(":")?M.substring(M.indexOf(":")+1):M;$.type&&(W[L]=$.type)}if(v==="helpful")_.markReportAsHelpful(y,W).catch(()=>{}),U.comment(" Thanks for your feedback!");else{let M=y.map(j=>({issue:j,rating:v,resourceType:W[j.resourceId]}));_.submitBatchFeedback(M).catch(()=>{}),U.comment(" Thanks for your feedback!")}}}catch{}else f||U.comment(" Have feedback? Let us know: https://cdkinsights.dev/feedback?source=cli");h.hasCriticalIssues&&(h.hasSensitiveData&&!g.warnSensitive?(U.error("Sensitive data detected. Exiting with code 1."),U.comment(" Use --warn-sensitive to continue without failing, or fix the issues.")):U.error("Critical issues found. Exiting with code 1."),process.exit(1))}catch(e){let{message:s}=e;U.error(`An error occurred during analysis: ${s||e}`),process.exit(1)}}};var Xd=V(require("node:fs")),ep=V(require("node:path"));var T6=()=>{let t=ep.resolve(".git/hooks"),e=ep.join(t,"pre-commit"),s=`#!/bin/sh
506
+ See: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html`};var Mc=(t,e)=>{switch(t){case"property_name":return e?`Property name "${e}" suggests this contains sensitive data`:"Property name suggests sensitive data";case"value_pattern":return"Value matches a known secret pattern (API key, token, or credential format)";case"high_entropy":return"Value has high entropy (appears random), which is characteristic of secrets";default:return"Value appears to contain sensitive data"}};var xa={SEVERITY:"CRITICAL",WAF_PILLAR:"Security",RULE_ID_PREFIX:"CDK-INSIGHTS-SENSITIVE",FOUND_BY:"cdkInsights"};var f6=(t,e,s={})=>{let n=[];return s.disabled?{hasSensitiveData:!1,resourceId:e,resourceType:t.Type,findings:[]}:(t.Properties&&Vd(t.Properties,"",n,s),{hasSensitiveData:n.length>0,resourceId:e,resourceType:t.Type,findings:n})},Vd=(t,e,s,n)=>{if(t!=null){if(typeof t=="string"){ZB(t,e,s,n);return}if(Array.isArray(t)){t.forEach((r,i)=>{Vd(r,`${e}[${i}]`,s,n)});return}if(typeof t=="object"){if(Hd(t))return;for(let[r,i]of Object.entries(t)){let o=e?`${e}.${r}`:r;if(!n.ignoreProperties?.includes(o)){if(_g(r)){if(typeof i=="string"){if(!m6(i,n)){let a=Tg(r)||"secret";s.push({propertyPath:o,propertyName:r,detectionReason:"property_name",detectionReasonMessage:Mc("property_name",r),recommendation:Nc(a)})}}else Hd(i)||Vd(i,o,s,n);continue}Vd(i,o,s,n)}}}}},ZB=(t,e,s,n)=>{if(!m6(t,n)){if(kg(t)){let r=e.split(".").pop()??e;s.push({propertyPath:e,propertyName:r,detectionReason:"value_pattern",detectionReasonMessage:Mc("value_pattern"),recommendation:Nc("secret")});return}if(Fg(t,n.strictMode)){let r=e.split(".").pop()??e;s.push({propertyPath:e,propertyName:r,detectionReason:"high_entropy",detectionReasonMessage:Mc("high_entropy"),recommendation:Nc("secret")})}}},m6=(t,e)=>!!(!t||t.trim()===""||Ig(t)||Rg(t)||e.allowPatterns?.some(s=>t.includes(s)));var Pg=(t,e)=>{let s=t.findings.map(r=>`"${r.propertyName}" at ${r.propertyPath}`).join(", "),n=t.findings.length;return{resourceId:t.resourceId,issue:n===1?`Sensitive data detected: ${s}. This resource was NOT sent to CDK Insights servers.`:`Sensitive data detected in ${n} properties: ${s}. This resource was NOT sent to CDK Insights servers.`,recommendation:"Use AWS Secrets Manager or SSM Parameter Store to securely manage sensitive values. See: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html",severity:xa.SEVERITY,wafPillar:xa.WAF_PILLAR,foundBy:xa.FOUND_BY,constructPath:t.resourceId,constructType:t.resourceType,stackName:e,ruleId:xa.RULE_ID_PREFIX,context:{property:t.findings.map(r=>r.propertyPath).join(", "),value:"[REDACTED]",expected:"AWS Secrets Manager or SSM Parameter Store reference"}}},Og=(t,e={})=>{let s=[],n=[],r=0;for(let[i,o]of Object.entries(t)){let a=f6(o,i,e);s.push(a),a.hasSensitiveData&&(n.push(i),r+=a.findings.length)}return{totalResourcesScanned:Object.keys(t).length,resourcesWithSensitiveData:n.length,totalFindings:r,hasSkippedResources:n.length>0,skippedResourceIds:n,detectionResults:s}};var Lg=require("aws-cdk-lib"),h6=require("cdk-nag");var Zd=async(t,e)=>{try{return await t()}catch(s){return H.warn(`\u26A0\uFE0F Error in ${e.operationName}:`,{error:s}),e.fallbackValue}},YB=t=>!t||t.length===0||t.includes("All services"),JB=(t,e)=>{if(YB(e))return t;let s=new Set((e??[]).map(n=>`AWS::${n}::`));return Object.fromEntries(Object.entries(t).filter(([,n])=>{for(let r of s)if(n.Type.startsWith(r))return!0;return!1}))},QB=t=>Object.fromEntries(Object.entries(t).filter(([,e])=>!e.Type.startsWith("AWS::CDK::"))),XB=t=>{let{stackName:e,pathToLogicalId:s}=t;return n=>({resourceId:n,friendlyName:s[n]??n,cdkPath:`${e}/${n}`,isGenerated:!1,sources:{cdkInsights:{issues:[]},cdkNag:{issues:[]}}})},Kd=(t,e,s)=>{let n=t[e];if(n)return n;let r=s(e);return t[e]=r,r},eN=t=>[...t.sources?.cdkInsights?.issues??[],...t.sources?.cdkNag?.issues??[]],g6=t=>{for(let e of Object.values(t)){for(let s of e.sources?.cdkInsights?.issues??[])if(s.severity==="CRITICAL")return!0;for(let s of e.sources?.cdkNag?.issues??[])if(s.severity==="CRITICAL")return!0}return!1},tN=t=>{for(let[e,s]of Object.entries(t))(s.sources?.cdkInsights?.issues?.length??0)>0||(s.sources?.cdkNag?.issues?.length??0)>0||delete t[e];return t},sN=(t,e,s,n,r,i,o)=>({resourceId:t,issue:e,recommendation:s,severity:n,wafPillar:r,foundBy:o,constructPath:i}),nN=t=>{let{recommendationMap:e,stackName:s,stackResources:n,manifest:r}=t;try{let i=new Map,o=a=>{let c=i.get(a);if(c)return c;let u=yd(r,a);return i.set(a,u),u};return Object.entries(e).reduce((a,[c,u])=>{let l=u.cdkPath||c,d=o(l),f=n[c]?.Type||"Unknown",p=m=>({...m,...d?.filePath&&{sourceLocation:{filePath:d.filePath,line:d.line||1,column:d.column||1,confidence:d.confidence||"low"}},stackName:s,constructType:f});return a[c]={...u,sources:{cdkInsights:{issues:(u.sources?.cdkInsights?.issues??[]).map(p)},cdkNag:{issues:(u.sources?.cdkNag?.issues??[]).map(p)}}},a},{})}catch(i){return H.warn("\u26A0\uFE0F Could not enrich issues with source location:",{error:i}),e}},rN=t=>{let{authToken:e,fingerprint:s,tier:n,quotaValidation:r}=t,i=!!(e&&s&&n),o=!r||r.canRunStaticAnalysis,a=!r||r.canRunAIAnalysis,c=!!(n&&_n.isFeatureEnabled("aiAnalysis",n));return{hasAuth:i,canRunStatic:o,canRunAI:i&&c&&a,isAiEnabledByTier:c,canRunAIByQuota:a}},iN=async t=>{let{userResources:e,selectedServices:s,constructRegistry:n,canRunStatic:r}=t,i=Object.keys(e).length;return i===0?{}:r?(U.phase1(`Static analysis on ${i} resource${i===1?"":"s"}`),await Zd(()=>Promise.resolve(mF({Resources:e},sN,s||[],n)),{operationName:"static analysis",fallbackValue:{}})??{}):(U.warning("\u26A0\uFE0F Static analysis skipped due to license restrictions"),{})},oN=async t=>{let{stackName:e,userResources:s,inlineFindings:n,pathToLogicalId:r,authToken:i,fingerprint:o,tier:a,noCache:c=!1,cache:u,capabilities:l,onAuthRefresh:d}=t,f=Object.keys(s).length;if(f===0)return{};if(!l.hasAuth)return{};if(a&&!l.isAiEnabledByTier)return U.comment("\u{1F4A1} AI analysis is available with Pro tier - upgrade for deeper insights"),{};if(!l.canRunAIByQuota&&l.canRunStatic)return U.comment("\u{1F4A1} AI analysis skipped due to trial quota limits - upgrade to Pro for unlimited AI analysis"),{};if(!l.canRunAI)return{};if(!i||!o)return H.warn("AI analysis skipped: missing authToken or fingerprint"),{};U.phase2(`AI analysis on ${f} resource${f===1?"":"s"}`);let p=vi(),m=e6(ns,p),g=CF(u6),h=WF({analyzeResource:m,redactResources:g,onAuthRefresh:d});return await Zd(()=>h({stackName:e,resources:s,authToken:i,existingFindingsMap:n,pathToLogicalId:r,fingerprint:o,noCache:c,cacheConfig:u}),{operationName:"AI analysis",fallbackValue:{}})??{}},aN=t=>{let{recommendationMap:e,ruleFilter:s}=t;if(s.length===0)return e;for(let[n,r]of Object.entries(e)){let i=eN(r),o=Cg(i,s);if(o.length===0){delete e[n];continue}r.sources||(r.sources={cdkInsights:{issues:[]},cdkNag:{issues:[]}}),r.sources.cdkInsights||(r.sources.cdkInsights={issues:[]}),r.sources.cdkNag||(r.sources.cdkNag={issues:[]}),r.sources.cdkInsights.issues=o.filter(a=>a.foundBy==="cdkInsights"),r.sources.cdkNag.issues=o.filter(a=>a.foundBy==="cdkNag")}return e},cN=async t=>{let{stackName:e,recommendationMap:s,summary:n,tier:r}=t;if(!r||!_n.isFeatureEnabled("githubIntegration",r)){U.warning("GitHub integration is not available for your current tier"),U.comment(gu("githubIntegration",r??"free","GitHub integration"));return}let i=JF(),o=!!process.env.GITHUB_TOKEN;if(!i&&!o){U.warning("GitHub CLI not found and GITHUB_TOKEN not set. Skipping issue creation."),U.comment("Install GitHub CLI (gh) or set GITHUB_TOKEN environment variable to enable issue creation.");return}U.section("Creating GitHub Issue","\u{1F419}");let a=ga(e,s,n);await Zd(()=>ZF({stackName:e,issueTitle:`CDK Insights Analysis for ${e}`,issueBody:a,ghCli:i,recommendations:s,summary:n}),{operationName:"creating GitHub issue"})},x6=async({stackName:t,stack:e,selectedServices:s,inlineFindings:n,recommendationMapPerStack:r,pathToLogicalId:i,constructRegistry:o,ruleFilter:a,authToken:c,fingerprint:u,output:l,withIssue:d,tier:f,noCache:p=!1,warnSensitive:m=!1,sensitiveDataDetection:g={},cache:h,quotaValidation:y,manifest:x,onAuthRefresh:D})=>{let S=e.Resources??{},v=JB(S,s),E=QB(v),R=new Set(Object.keys(E)),_=R.size,W=rN({authToken:c,fingerprint:u,tier:f,quotaValidation:y}),j=XB({stackName:t,pathToLogicalId:i}),M=r[t]||{},$=Q=>{let Ee=j(Q),X=M[Q];return X?{...Ee,...X,sources:Ee.sources}:Ee},L=W.canRunAI?Object.fromEntries(Object.keys(E).map(Q=>[Q,$(Q)])):{};for(let Q of n)Kd(L,Q.resourceId,$).sources.cdkNag.issues.push(Q);let z=await iN({userResources:E,selectedServices:s,constructRegistry:o,canRunStatic:W.canRunStatic});for(let[Q,Ee]of Object.entries(z)){let X=Kd(L,Q,$),st=Ee.issues??[];X.sources.cdkInsights.issues.push(...st)}let C=Og(E,{disabled:g.disabled,ignoreProperties:g.ignoreProperties,allowPatterns:g.allowPatterns,strictMode:g.strictMode}),B=E;if(C.hasSkippedResources){let Q=C.resourcesWithSensitiveData;U.warning(`\u{1F512} Sensitive data detected in ${Q} resource${Q===1?"":"s"} - NOT sent to CDK Insights servers`),B=Object.fromEntries(Object.entries(E).filter(([Ee])=>!C.skippedResourceIds.includes(Ee)));for(let Ee of C.detectionResults)if(Ee.hasSensitiveData){let X=Kd(L,Ee.resourceId,$),st=Pg(Ee,t);X.sources.cdkInsights.issues.push(st)}}let N=await oN({stackName:t,userResources:B,inlineFindings:n,pathToLogicalId:i,authToken:c,fingerprint:u,tier:f,noCache:p,cache:h,capabilities:W,onAuthRefresh:D});c&&u&&Object.keys(N).length>0&&U.phase3("Processing results...");let K=d6({staticRecommendations:{},aiRecommendations:N,recommendationMap:L,ruleFilter:a,filterIssuesByRule:Cg});for(let[Q,Ee]of Object.entries(K.updatedMap)){let X=Kd(L,Q,$);X.sources.cdkInsights.issues.push(..._c({existing:X.sources.cdkInsights.issues,incoming:Ee.sources.cdkInsights.issues}))}aN({recommendationMap:L,ruleFilter:a}),tN(L);let me=nN({recommendationMap:L,stackName:t,stackResources:E,manifest:x}),Z=qd(me,_,R),J=Object.keys(me).length>0;return r[t]=me,l&&l!=="table"&&a6(l,t,me,!0,Z),d&&J&&await cN({stackName:t,recommendationMap:me,summary:Z,tier:f}),{recommendationMap:me,summary:Z,hasIssues:J,scannedResourceCount:_,scannedResourceIds:R,stackName:t,sensitiveDataSummary:C,hasSensitiveData:C.hasSkippedResources}},b6=async({stacks:t,inlineFindings:e,pathToLogicalId:s,output:n,recommendationMapPerStack:r,withIssue:i,services:o,ruleFilter:a=[],authToken:c,fingerprint:u,failOnCritical:l,tier:d,noCache:f=!1,allowOveruse:p=!1,warnSensitive:m=!1,sensitiveDataDetection:g={},cache:h,quotaValidation:y,onAuthRefresh:x})=>{if(H.info("\u{1F680} Starting CDK Insights analysis",{stackCount:Object.keys(t).length,stackNames:Object.keys(t),hasAuthToken:!!c,hasFingerprint:!!u,tier:d||"unknown",quotaValidation:y?{canRunStaticAnalysis:y.canRunStaticAnalysis,canRunAIAnalysis:y.canRunAIAnalysis,isTrial:y.quota?.isTrial}:null,services:o||["All services"],output:n||"table"}),y&&!y.quota.isTrial&&y.canRunAIAnalysis&&p){let z=y.quota.currentResourcesAnalyzed>=y.quota.maxResources,C=y.quota.wouldExceed;z?(U.warning(`\u26A0\uFE0F You have exceeded your paid allowance (${y.quota.currentResourcesAnalyzed}/${y.quota.maxResources} resources analyzed).`),U.warning(" Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged.")):C&&(U.warning(`\u26A0\uFE0F This analysis will exceed your paid allowance (${y.quota.currentResourcesAnalyzed}/${y.quota.maxResources} resources analyzed).`),U.warning(" Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged."))}let D=la("cdk.out"),S=await Zd(()=>FA(AA()),{operationName:"loading construct metadata",fallbackValue:{}})??{},v={},E=!1,R=!1,_=0,W=new Set,j=Object.keys(t),M=j.length,$=z=>{let{stackName:C,map:B}=z;for(let[N,K]of Object.entries(B))v[`${C}:${N}`]=K};if(M>1)await Md.runAnalysis({title:`Deep Analysis of ${M} CDK Stacks`,steps:j.map((z,C)=>({title:`Analyzing stack ${C+1}/${M}: ${z}`,task:async()=>{let B=t[z],N=await x6({stackName:z,stack:B,selectedServices:o,inlineFindings:e,recommendationMapPerStack:r,pathToLogicalId:s,constructRegistry:S,ruleFilter:a,authToken:c,fingerprint:u,output:n,withIssue:i,tier:d,noCache:f,warnSensitive:m,sensitiveDataDetection:g,cache:h,quotaValidation:y,manifest:D,onAuthRefresh:x});$({stackName:N.stackName,map:N.recommendationMap}),_+=N.scannedResourceCount;for(let K of N.scannedResourceIds)W.add(`${N.stackName}:${K}`);return!E&&N.hasIssues&&(E=g6(N.recommendationMap)),N.hasSensitiveData&&(R=!0),(n==="summary"||n==="table")&&U.summary(N.summary),N}})),showSummary:!0});else{let[z,C]=Object.entries(t)[0]??[];if(!z||!C)return{recommendationMaps:{},hasCriticalIssues:!1};let B=Object.entries(C.Resources||{}).filter(([,K])=>!K.Type.startsWith("AWS::CDK::")).length;U.analysisStart(z,B);let N=await x6({stackName:z,stack:C,selectedServices:o,inlineFindings:e,recommendationMapPerStack:r,pathToLogicalId:s,constructRegistry:S,ruleFilter:a,authToken:c,fingerprint:u,output:n,withIssue:i,tier:d,noCache:f,warnSensitive:m,sensitiveDataDetection:g,cache:h,quotaValidation:y,manifest:D,onAuthRefresh:x});$({stackName:N.stackName,map:N.recommendationMap}),_+=N.scannedResourceCount;for(let K of N.scannedResourceIds)W.add(`${N.stackName}:${K}`);N.hasIssues&&(E=g6(N.recommendationMap)),N.hasSensitiveData&&(R=!0),(n==="summary"||n==="table")&&U.summary(N.summary)}if(Object.keys(v).length>0&&M>1){let z=qd(v,_,W);if(n==="table"||n==="summary")U.section("Overall Analysis Summary","\u{1F4CA}"),Lc("Overall",z),Bc(v);else if(n==="sarif"){let C=Gd("consolidated",v),B="consolidated_analysis_report.sarif";y6.writeFileSync(B,JSON.stringify(C,null,2)),U.info(`\u{1F4C4} Consolidated SARIF report written to: ${B}`)}else n==="github-actions"&&zd("consolidated",v,z.severityCounts,_)}else if(n==="table"||n==="summary")if(Object.keys(v).length>0){let z=qd(v,_,W);U.section("Overall Analysis Summary","\u{1F4CA}"),Lc("Overall",z),Bc(v)}else U.success("No issues found across all stacks!");return{recommendationMaps:v,hasCriticalIssues:!!l&&E||R&&!m,hasSensitiveData:R}};var Bg={staticAnalysis:!0,basicServiceChecks:!0,localAnalysis:!0,jsonOutput:!0,tableOutput:!0,aiRecommendations:!1,githubIntegration:!1,teamCollaboration:!1,advancedOutputFormats:!1,customRules:!1,prioritySupport:!1,ciCdIntegration:!1},Ng={staticAnalysis:!0,basicServiceChecks:!0,localAnalysis:!0,jsonOutput:!0,tableOutput:!0,aiRecommendations:!0,githubIntegration:!0,teamCollaboration:!0,advancedOutputFormats:!0,customRules:!0,prioritySupport:!0,ciCdIntegration:!0};var jc=new Map,Yd=async(t,e)=>{if(!t)return{isValid:!0,tier:"free",features:Bg};if(jc.has(t)){let s=jc.get(t);if(s.expiresAt&&s.expiresAt>new Date)return s;jc.delete(t)}if(e){Mu.info("\u2705 License validated via JWT token from login");let s={isValid:!0,tier:"pro",expiresAt:new Date(Date.now()+3600*1e3),features:Ng};return jc.set(t,s),s}if(process.env.NODE_ENV==="development"&&process.env.CDK_INSIGHTS_DEV_MODE==="true"){Mu.warn("\u26A0\uFE0F Development mode enabled - Pro features available for testing only");let s={isValid:!0,tier:"pro",expiresAt:new Date(Date.now()+24*60*60*1e3),features:Ng};return jc.set(t,s),s}return Mu.warn("\u26A0\uFE0F License key provided but no valid authentication token"),{isValid:!1,tier:"free",features:Bg}};var v6=async t=>{let s={requestId:`enhanced-quota-${Date.now()}`,functionName:"validateEnhancedLicenseQuota"};H.info("\u{1F50D} Starting enhanced license quota validation",s,{requestedResources:t.requestedResources,hasLicenseKey:!!t.licenseKey,hasUsageData:!!t.usageData});try{if(t.licenseInfo||t.usageData){let l=0;t.licenseInfo&&t.licenseInfo.totalResourcesAnalyzed>0?(l=Number(t.licenseInfo.totalResourcesAnalyzed),H.info("\u{1F4CA} Using totalResourcesAnalyzed from license (source of truth)",s,{totalResourcesAnalyzed:l,licenseInfoSource:!0})):t.usageData&&t.usageData.totalResourcesAnalyzed>0?(l=t.usageData.totalResourcesAnalyzed,H.info("\u{1F4CA} Using usage data from login (fallback)",s,{totalResourcesAnalyzed:t.usageData.totalResourcesAnalyzed,totalTokens:t.usageData.totalTokens,usageCount:t.usageData.usageCount})):t.licenseInfo&&t.licenseInfo.currentPeriodUsage>0&&(l=Number(t.licenseInfo.currentPeriodUsage),H.info("\u{1F4CA} Using currentPeriodUsage from license (last resort fallback)",s,{currentPeriodUsage:l}));let d=200,f=!0,p=!1;if(t.licenseInfo){let R=t.licenseInfo.licenseType||t.licenseInfo.tier;if(t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial"){f=!0,d=t.licenseInfo.trialUsageLimit||t.licenseInfo.maxUsage||200;let _=t.licenseInfo.trialEnd||t.licenseInfo.expiresAt;_&&(p=Math.floor(Date.now()/1e3)>_)}else f=!1,R==="ENTERPRISE"?d=1e5:d=1e4}let m=Math.max(0,d-l),g=l+t.requestedResources>d,h=Math.floor(d*.8),y=Math.floor(d*.9),x=!0,D=!0,S=!0,v,E;if(p)x=!1,D=!1,S=!1,v="Trial license has expired",E="https://cdkinsights.dev/pricing";else if(g&&f){x=!1,D=!0,S=!1;let R=t.allowOveruse?" Note: --allow-overuse does not apply to trial licenses which have a hard usage limit.":"";v=`AI-powered analysis would exceed trial limit. You have analyzed ${l}/${d} resources and are requesting ${t.requestedResources} more.${R}`,E="https://cdkinsights.dev/pricing"}else g&&!f?t.allowOveruse?(x=!0,D=!0,S=!0,v=`You have exceeded your paid allowance (${l}/${d} resources). Proceeding with AI analysis as --allow-overuse is enabled. Extra usage will be charged.`):(x=!0,D=!0,S=!1,v=`AI analysis would exceed your paid allowance (${l}/${d} resources). Extra usage will be charged. Use --allow-overuse to proceed with AI analysis.`):f&&l>=y&&t.requestedResources>10&&(x=!1,D=!0,S=!1,v=`Large AI analysis requests are blocked when approaching trial limit. You have analyzed ${l}/${d} resources.`,E="https://cdkinsights.dev/pricing");return f&&l>=h&&l<d&&H.info("Trial usage approaching limit - will be displayed in enhanced UI",s,{currentResources:l,maxResources:d,warningThreshold:h}),H.info("\u2705 Enhanced license quota validation completed successfully",s,{canProceed:x,canRunStaticAnalysis:D,canRunAIAnalysis:S,currentResources:l,maxResources:d,remainingResources:m,isTrial:f,trialExpired:p}),{canProceed:x,canRunStaticAnalysis:D,canRunAIAnalysis:S,quota:{currentResourcesAnalyzed:l,maxResources:d,remainingResources:m,isTrial:f,trialExpired:p,wouldExceed:g,warningThreshold:h,hardStopThreshold:y,currentTokens:t.usageData?t.usageData.totalTokens:t.licenseInfo?Number(t.licenseInfo.totalResourcesAnalyzed||0):0,maxTokens:1e6,remainingTokens:t.usageData?Math.max(0,1e6-t.usageData.totalTokens):1e6},reason:v,upgradePath:E,usageData:t.usageData}}H.warn("\u274C No usage data available, using fallback validation",s);let n;if(t.licenseInfo){let l=Number(t.licenseInfo.currentPeriodUsage||0),d=Number(t.licenseInfo.totalResourcesAnalyzed||0),f=d>0?d:l;f>0&&(n={totalTokens:f,totalResourcesAnalyzed:f,totalCost:0,usageCount:1,successfulUsageCount:1,failedUsageCount:0,firstUsageAt:Number(t.licenseInfo.createdAt),lastUsageAt:Number(t.licenseInfo.lastUsageAt||t.licenseInfo.updatedAt)},H.info("\u{1F4CA} Using usage data from license info",s,{totalResourcesAnalyzed:n.totalResourcesAnalyzed,totalTokens:n.totalTokens}))}let r=200,i=!0,o=!1;if(t.licenseInfo){let l=t.licenseInfo.licenseType||t.licenseInfo.tier;if(t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial"){i=!0,r=t.licenseInfo.maxUsage?Number(t.licenseInfo.maxUsage):200;let d=t.licenseInfo.trialEnd||t.licenseInfo.expiresAt;d&&(o=Math.floor(Date.now()/1e3)>d)}else i=!1,l==="ENTERPRISE"?r=1e5:r=1e4}let a=n?n.totalResourcesAnalyzed:0,c=Math.max(0,r-a),u=a+t.requestedResources>r;return{canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!0,quota:{currentResourcesAnalyzed:a,maxResources:r,remainingResources:c,isTrial:i,trialExpired:o,wouldExceed:u,warningThreshold:Math.floor(r*.8),hardStopThreshold:Math.floor(r*.9),currentTokens:n?n.totalTokens:0,maxTokens:1e6,remainingTokens:1e6},reason:n?"Using usage data from license info":"No usage data available - proceeding with analysis",usageData:n||void 0}}catch(n){return H.error("Enhanced license quota validation failed",s,n instanceof Error?n:new Error(String(n))),{canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,quota:{currentResourcesAnalyzed:0,maxResources:t.licenseInfo&&t.licenseInfo.maxUsage||200,remainingResources:t.licenseInfo&&t.licenseInfo.maxUsage||200,isTrial:t.licenseInfo?t.licenseInfo.status==="TRIAL"||t.licenseInfo.tier==="trial":!0,trialExpired:!1,wouldExceed:!1,warningThreshold:Math.floor((t.licenseInfo&&t.licenseInfo.maxUsage||200)*.8),hardStopThreshold:Math.floor((t.licenseInfo&&t.licenseInfo.maxUsage||200)*.9),currentTokens:0,maxTokens:1e6,remainingTokens:1e6},reason:"Enhanced quota validation failed - proceeding with analysis"}}};var D6=t=>{let e=`${t.resourceId}:${t.issue}:${t.wafPillar}`,s=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);s=(s<<5)-s+r,s=s&s}return`finding-${Math.abs(s).toString(16)}`},S6=t=>{let{apiClient:e}=t;return{async submitFeedback(s,n,r){let i={findingId:D6(s),resourceId:s.resourceId,resourceType:r?.resourceType||"Unknown",issueSnippet:s.issue.substring(0,200),rating:n,comment:r?.comment?.substring(0,500),wafPillar:s.wafPillar,severity:s.severity,modelId:r?.modelId,timestamp:Date.now()};try{return await e.post("/feedback",i)}catch{return{success:!1,message:"Failed to submit feedback"}}},async submitBatchFeedback(s,n){let r=s.map(i=>({findingId:D6(i.issue),resourceId:i.issue.resourceId,resourceType:i.resourceType||"Unknown",issueSnippet:i.issue.issue.substring(0,200),rating:i.rating,comment:i.comment?.substring(0,500),wafPillar:i.issue.wafPillar,severity:i.issue.severity,modelId:n?.modelId,timestamp:Date.now()}));try{let i=await e.post("/feedback/batch",{feedbackItems:r});return{successful:i.successful??s.length,failed:i.failed??0}}catch{return{successful:0,failed:s.length}}},async markReportAsHelpful(s,n){let r=s.map(i=>({issue:i,rating:"helpful",resourceType:n?.[i.resourceId]}));return this.submitBatchFeedback(r)}}};var Dt={stackName:"",services:[],redact:!1,summaryOnly:!1,synth:!1,ruleFilter:[],failOnCritical:!0,ci:!1,all:!1,yes:!1,reset:!1,github:!1,noCache:!1,allowOveruse:!1,cache:{enabled:!0,ttl:5*60*1e3,maxSize:1e3}},uN=t=>["json","table","markdown","summary","sarif","github-actions"].includes(t)?t:(console.warn(`\u26A0\uFE0F Invalid output format "${t}", defaulting to "table"`),"table"),C6=t=>Array.isArray(t)?t.filter(e=>typeof e=="string"):typeof t=="string"?t.split(",").map(e=>e.trim()).filter(Boolean):[],lN=t=>C6(t).map(s=>s.trim()).filter(Boolean).map(s=>s.toLowerCase()==="all"?"All services":s).filter(s=>Ao(s)),dN=t=>{if(!t||typeof t!="object"||Array.isArray(t))return Dt.cache;let e=t,s={enabled:Dt.cache.enabled,ttl:Dt.cache.ttl,maxSize:Dt.cache.maxSize};return typeof e.enabled=="boolean"&&(s.enabled=e.enabled),typeof e.ttl=="number"&&e.ttl>0?s.ttl=e.ttl:e.ttl&&console.warn(`\u26A0\uFE0F Invalid cache TTL "${e.ttl}", using default ${Dt.cache.ttl}ms`),typeof e.maxSize=="number"&&e.maxSize>0?s.maxSize=e.maxSize:e.maxSize&&console.warn(`\u26A0\uFE0F Invalid cache maxSize "${e.maxSize}", using default ${Dt.cache.maxSize}`),s},$c=(t,e)=>{if(typeof t=="boolean")return t;if(typeof t=="string"){let s=t.toLowerCase();if(s==="true"||s==="1"||s==="yes")return!0;if(s==="false"||s==="0"||s==="no")return!1}return e},w6=(t,e)=>{let s=e.output||e.format||t.output,n=s?uN(s):void 0,r=e.withIssue??t.withIssue;return n!=="markdown"&&r&&(console.warn("\u26A0\uFE0F GitHub issues are only supported with markdown output. Disabling withIssue."),r=!1),{stackName:e.stackName??t.stackName??Dt.stackName,output:n,format:n,services:lN(e.services??t.services??Dt.services),withIssue:r,redact:$c(e.redact??t.redact,Dt.redact),summaryOnly:$c(e.summaryOnly??t.summaryOnly,Dt.summaryOnly),synth:$c(e.synth??t.synth,Dt.synth),ruleFilter:C6(e.ruleFilter??t.ruleFilter??Dt.ruleFilter),failOnCritical:$c(e.failOnCritical??t.failOnCritical,Dt.failOnCritical),ci:e.ci??Dt.ci,all:e.all??Dt.all,yes:e.yes??Dt.yes,reset:e.reset??Dt.reset,github:e.github??Dt.github,noCache:e.noCache??Dt.noCache,allowOveruse:$c(e.allowOveruse??t.allowOveruse,Dt.allowOveruse),cache:dN(e.cache??t.cache??Dt.cache),local:e.local??!1,prComment:e.prComment??!1,warnSensitive:e.warnSensitive??!1}};var Jn=V(require("node:fs")),A6=V(require("node:path"));var Wc=A6.join(process.cwd(),".cdk-insights.json"),E6={enabled:!0,warnOnly:!1,allowPatterns:[],ignoreProperties:[],strictMode:!1},Yi={services:[],redact:!1,summaryOnly:!1,synth:!1,ruleFilter:[],failOnCritical:!0,noCache:!1,allowOveruse:!1,sensitiveDataDetection:E6,cache:{enabled:!0,ttl:5*60*1e3,maxSize:1e3}},F6=t=>{if(!t||typeof t!="object"||Array.isArray(t))return H.warn("\u274C Invalid configuration format, using defaults"),Yi;let e={...Yi},s=t;if(typeof s.stackName=="string"&&(e.stackName=s.stackName),typeof s.output=="string"&&["json","table","markdown","summary","sarif","github-actions"].includes(s.output)?e.output=s.output:s.output&&H.warn(`\u26A0\uFE0F Invalid output format "${s.output}", skipping output setting`),Array.isArray(s.services)&&(e.services=s.services.filter(n=>typeof n=="string").map(n=>n.toLowerCase()==="all"?"All services":n).filter(n=>Ao(n))),typeof s.withIssue=="boolean"&&(e.withIssue=s.withIssue),typeof s.redact=="boolean"&&(e.redact=s.redact),typeof s.summaryOnly=="boolean"&&(e.summaryOnly=s.summaryOnly),typeof s.synth=="boolean"&&(e.synth=s.synth),Array.isArray(s.ruleFilter)&&(e.ruleFilter=s.ruleFilter.filter(n=>typeof n=="string")),typeof s.failOnCritical=="boolean"&&(e.failOnCritical=s.failOnCritical),typeof s.noCache=="boolean"&&(e.noCache=s.noCache),typeof s.allowOveruse=="boolean"&&(e.allowOveruse=s.allowOveruse),s.cache&&typeof s.cache=="object"&&!Array.isArray(s.cache)){let n=s.cache;e.cache={...Yi.cache},typeof n.enabled=="boolean"&&(e.cache.enabled=n.enabled),typeof n.ttl=="number"&&n.ttl>0?e.cache.ttl=n.ttl:n.ttl&&H.warn(`\u26A0\uFE0F Invalid cache TTL "${n.ttl}", using default ${Yi.cache?.ttl}ms`),typeof n.maxSize=="number"&&n.maxSize>0?e.cache.maxSize=n.maxSize:n.maxSize&&H.warn(`\u26A0\uFE0F Invalid cache maxSize "${n.maxSize}", using default ${Yi.cache?.maxSize}`)}if(s.sensitiveDataDetection&&typeof s.sensitiveDataDetection=="object"&&!Array.isArray(s.sensitiveDataDetection)){let n=s.sensitiveDataDetection;e.sensitiveDataDetection={...E6},typeof n.enabled=="boolean"&&(e.sensitiveDataDetection.enabled=n.enabled),typeof n.warnOnly=="boolean"&&(e.sensitiveDataDetection.warnOnly=n.warnOnly),typeof n.strictMode=="boolean"&&(e.sensitiveDataDetection.strictMode=n.strictMode),Array.isArray(n.allowPatterns)&&(e.sensitiveDataDetection.allowPatterns=n.allowPatterns.filter(r=>typeof r=="string")),Array.isArray(n.ignoreProperties)&&(e.sensitiveDataDetection.ignoreProperties=n.ignoreProperties.filter(r=>typeof r=="string"))}return e},Ji=()=>{if(!Jn.existsSync(Wc))return Yi;try{let t=Jn.readFileSync(Wc,"utf-8"),e=JSON.parse(t);return F6(e)}catch(t){let e=t;return H.error(`\u274C Error loading configuration: ${e.message}`),H.info("\u{1F4DD} Using default configuration"),Yi}},Jd=t=>{try{let e=F6(t);Jn.writeFileSync(Wc,JSON.stringify(e,null,2),"utf-8"),H.info("\u{1F4BE} Configuration saved successfully")}catch(e){let s=e;H.error(`\u274C Error saving configuration: ${s.message}`)}},Qd=()=>{try{Jn.existsSync(Wc)&&(Jn.unlinkSync(Wc),H.info("\u{1F5D1}\uFE0F Configuration file removed"))}catch(t){let e=t;H.error(`\u274C Error removing configuration: ${e.message}`)}};var pN=()=>{let t=k6.resolve(process.cwd(),"cdk.out");return _6.existsSync(t)},I6=t=>t.format==="json"||t.output==="json"?"json":t.format==="markdown"||t.output==="markdown"?"markdown":t.format==="summary"||t.output==="summary"?"summary":t.format==="sarif"||t.output==="sarif"?"sarif":t.format==="github-actions"||t.output==="github-actions"?"github-actions":"table";async function fN(t,e){let s=t.all?"All stacks":t.stackName||"All stacks",n=await Er({message:"Which stack would you like to analyze?",default:s,choices:e.map(c=>({name:c,value:c}))}),r=t.output||t.format||"table",i=await Er({message:"Choose output format:",choices:[{name:"\u{1F4CA} Table (default) - Human-readable table with colors",value:"table"},{name:"\u{1F4C4} Markdown - GitHub-compatible markdown report",value:"markdown"},{name:"\u{1F527} JSON - Structured data for CI/CD integration",value:"json"},{name:"\u{1F4CB} Summary - Brief overview with counts",value:"summary"}],default:r}),o=t.services&&t.services.length>0?t.services:["All services"],a=await l0({message:"Which AWS services would you like to analyze? (Use <space> to toggle, <enter> to confirm)",choices:[{name:"\u{1F50D} All services (recommended)",value:"All services",checked:o.includes("All services")},{name:"\u{1F510} IAM - Identity and Access Management",value:"IAM",checked:o.includes("IAM")},{name:"\u{1F4E6} S3 - Simple Storage Service",value:"S3",checked:o.includes("S3")},{name:"\u26A1 Lambda - Serverless Functions",value:"Lambda",checked:o.includes("Lambda")},{name:"\u{1F5C4}\uFE0F DynamoDB - NoSQL Database",value:"DynamoDB",checked:o.includes("DynamoDB")},{name:"\u{1F5C4}\uFE0F RDS - Relational Database",value:"RDS",checked:o.includes("RDS")},{name:"\u{1F5A5}\uFE0F EC2 - Virtual Machines",value:"EC2",checked:o.includes("EC2")},{name:"\u{1F4E2} SNS - Simple Notification Service",value:"SNS",checked:o.includes("SNS")},{name:"\u{1F4E8} SQS - Simple Queue Service",value:"SQS",checked:o.includes("SQS")},{name:"\u{1F504} Step Functions - Workflow Orchestration",value:"StepFunctions",checked:o.includes("StepFunctions")},{name:"\u{1F4DD} CloudTrail - API Logging",value:"CloudTrail",checked:o.includes("CloudTrail")},{name:"\u{1F310} API Gateway - REST APIs",value:"ApiGateway",checked:o.includes("ApiGateway")},{name:"\u{1F511} Secrets Manager - Secret Management",value:"SecretsManager",checked:o.includes("SecretsManager")},{name:"\u{1F510} KMS - Key Management",value:"KMS",checked:o.includes("KMS")},{name:"\u{1F4E1} EventBridge - Event Routing",value:"EventBridge",checked:o.includes("EventBridge")},{name:"\u{1F310} CloudFront - Content Delivery Network",value:"CloudFront",checked:o.includes("CloudFront")},{name:"\u2696\uFE0F ELB - Elastic Load Balancing",value:"ELB",checked:o.includes("ELB")},{name:"\u{1F433} ECS - Elastic Container Service",value:"ECS",checked:o.includes("ECS")},{name:"\u{1F464} Cognito - User Authentication",value:"Cognito",checked:o.includes("Cognito")},{name:"\u{1F6E1}\uFE0F WAF - Web Application Firewall",value:"WAF",checked:o.includes("WAF")},{name:"\u{1F4CA} CloudWatch - Monitoring & Logging",value:"CloudWatch",checked:o.includes("CloudWatch")},{name:"\u{1F30D} Route53 - DNS Management",value:"Route53",checked:o.includes("Route53")},{name:"\u26A1 ElastiCache - In-Memory Caching",value:"ElastiCache",checked:o.includes("ElastiCache")},{name:"\u{1F4E6} ECR - Container Registry",value:"ECR",checked:o.includes("ECR")},{name:"\u{1F50E} OpenSearch - Search & Analytics",value:"OpenSearch",checked:o.includes("OpenSearch")},{name:"\u{1F50F} ACM - Certificate Manager",value:"ACM",checked:o.includes("ACM")},{name:"\u{1F4BE} Backup - Backup Management",value:"Backup",checked:o.includes("Backup")},{name:"\u{1F517} VPC - Virtual Private Cloud",value:"VPC",checked:o.includes("VPC")},{name:"\u{1F30A} Kinesis - Real-time Streaming",value:"Kinesis",checked:o.includes("Kinesis")},{name:"\u{1F4F1} AppSync - GraphQL APIs",value:"AppSync",checked:o.includes("AppSync")},{name:"\u2638\uFE0F EKS - Kubernetes Service",value:"EKS",checked:o.includes("EKS")},{name:"\u{1F4C8} Redshift - Data Warehouse",value:"Redshift",checked:o.includes("Redshift")},{name:"\u{1F4EC} MSK - Managed Kafka",value:"MSK",checked:o.includes("MSK")},{name:"\u{1F9EA} Glue - ETL & Data Catalog",value:"Glue",checked:o.includes("Glue")}]});return{stackName:n,output:i,services:a}}async function mN(t,e,s,n,r,i,o,a,c){let{stackName:u,output:l,services:d,withIssue:f,ruleFilter:p,failOnCritical:m}=t,g=u==="All stacks"?void 0:u,{stacks:h,inlineFindings:y,pathToLogicalId:x,recommendationMapPerStack:D,assetSourcePaths:S}=wA(g),v=Object.keys(h).length;U.success(`Synthesis complete. Found ${v} stack${v===1?"":"s"} to analyze.`);let E=Object.values(h).reduce((C,B)=>{let N=Object.entries(B.Resources||{}).filter(([,K])=>!K.Type.startsWith("AWS::CDK::"));return C+N.length},0);E>0?U.info(`\u{1F50D} Preparing to analyze ${E} total resources across ${v} stacks...`):U.warning("No user resources found in stacks. Make sure your CDK app is properly configured.");let R=null,_=!!s;if(a&&(_=!1,U.info("\u{1F3E0} Running in local mode - static analysis only")),o&&!a){U.info("\u{1F50D} Checking license quota...");let C=n.licenseType==="TRIAL"||n.status==="TRIAL",B=n.totalResourcesAnalyzed||0,N=n.trialUsageLimit||n.maxUsage||200,K=Number.isNaN(B)?0:B,me=Number.isNaN(N)?200:N;if(C&&K>=me)_=!1,R={canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,quota:{currentResourcesAnalyzed:K,maxResources:me,remainingResources:Math.max(0,me-K),isTrial:!0,trialExpired:!1},reason:`Trial limit exceeded (${K}/${me} resources analyzed)`,upgradePath:"https://cdkinsights.dev/pricing"},U.warning("\u26A0\uFE0F Trial quota exceeded - falling back to static analysis only"),U.comment(" Upgrade to Pro for unlimited AI-powered recommendations");else if(R=await v6({licenseKey:o,requestedResources:E,allowOveruse:t.allowOveruse,usageData:r,licenseInfo:n}),_=!!s&&(R?.canRunAIAnalysis??!0),R?.quota?.isTrial){let Z=R.quota.currentResourcesAnalyzed,J=R.quota.maxResources;Z>=J&&(R={...R,canProceed:!0,canRunStaticAnalysis:!0,canRunAIAnalysis:!1,reason:`Trial limit exceeded (${Z}/${J} resources analyzed) - falling back to static analysis only`},_=!1)}R?.quota?.isTrial&&U.displayTrialStatus({currentResourcesAnalyzed:R.quota.currentResourcesAnalyzed,maxResources:R.quota.maxResources,remainingResources:R.quota.remainingResources,isTrial:R.quota.isTrial,trialExpired:R.quota.trialExpired,trialStart:n.trialStart,trialEnd:n.trialEnd,tier:n.tier}),!_&&R?.quota?U.displayQuotaWarning({currentResourcesAnalyzed:R.quota.currentResourcesAnalyzed,maxResources:R.quota.maxResources,requestedResources:E,remainingResources:R.quota.remainingResources,isTrial:R.quota.isTrial}):_&&o&&U.success("\u2705 AI analysis enabled - you'll receive comprehensive recommendations")}let W=o&&i?async()=>{H.info("\u{1F504} Refreshing authentication due to 403 error...");try{bl();let B=dd().fingerprint,N=await Nm(o,B,i);if(!N)throw new Error("Failed to refresh authentication");let K=N.fingerprint||B;return H.info("\u2705 Successfully refreshed authentication",{hasNewToken:!!N.token,hasFingerprint:!!K}),{authToken:N.token,fingerprint:K}}catch(C){throw H.error("Failed to refresh authentication",{error:C}),C}}:void 0,j=qu(t.services),M=j.services;j.removedAllServices?H.debug(`Services normalization: removed "All services", using: ${M.join(", ")}`):j.defaultedToAll&&H.debug('Services normalization: defaulting to "All services"');let $=c||{},L=t.warnSensitive||$.warnOnly||!1,z={stacks:h,inlineFindings:y,pathToLogicalId:x,recommendationMapPerStack:D,assetSourcePaths:S,output:I6(t),services:M,withIssue:t.withIssue,ruleFilter:t.ruleFilter||[],failOnCritical:t.failOnCritical,authToken:s,fingerprint:e,tier:n?.tier,quotaValidation:R||null,noCache:t.noCache||!1,allowOveruse:t.allowOveruse||!1,warnSensitive:L,sensitiveDataDetection:{disabled:$.enabled===!1,ignoreProperties:$.ignoreProperties||[],allowPatterns:$.allowPatterns||[],strictMode:$.strictMode||!1},onAuthRefresh:W};return await b6(z)}var R6={command:"scan [stackName]",describe:"Scan CDK stacks for best practices and security issues",builder:t=>t.positional("stackName",{type:"string",describe:"Name of the stack to analyze"}).option("ci",{type:"boolean",default:!1}).option("withIssue",{type:"boolean",description:"Create GitHub issues from findings?"}).option("output",{alias:"o",type:"string",choices:["json","table","markdown","summary","sarif","github-actions"]}).option("all",{type:"boolean",description:"Analyze all CDK stacks,",default:!1}).option("services",{type:"array",string:!0,description:"Only run checks for these services (e.g. IAM, S3, Lambda)"}).option("format",{type:"string",choices:["json","table","markdown","summary","sarif","github-actions"],describe:"Alias for --output (preferred)"}).option("yes",{type:"boolean",description:"Skip prompts and use saved/default values,",default:!1,alias:"y"}).option("reset",{type:"boolean",description:"Clear saved config and start fresh"}).option("redact",{type:"boolean",description:"Redact sensitive resource names in output",default:!1}).option("summaryOnly",{type:"boolean",description:"Only show summary in console output",default:!1}).option("synth",{type:"boolean",description:"Run cdk synth before analysis",default:!1}).option("failOnCritical",{type:"boolean",description:"Exit with code 1 if critical issues are found (defaults to true)",default:!0}).option("ruleFilter",{type:"array",string:!0,describe:"Filter findings to only include matching rule IDs or categories (e.g. AwsSolutions-IAM4, Security)"}).option("github",{describe:"Create GitHub issues for findings,",type:"boolean",default:!1}).option("noCache",{describe:"Disable cache and force fresh analysis",type:"boolean",default:!1}).option("allowOveruse",{describe:"Allow AI analysis even when exceeding paid allowance (extra usage will be charged)",type:"boolean",default:!1}).option("local",{describe:"Run static analysis only (skip AI analysis even with a valid license)",type:"boolean",default:!1}).option("warnSensitive",{describe:"Treat sensitive data as warning instead of critical (will not fail CI)",type:"boolean",default:!1}).option("prComment",{describe:"Post analysis summary as a PR comment (GitHub Actions only)",type:"boolean",default:!1}),handler:async t=>{try{if(t.reset){Qd(),H.info("\u{1F5D1}\uFE0F Cleared saved CLI preferences.");return}let e=dd(),s=e.fingerprint,n=e.project;(!s||s.length===0)&&(U.error("Failed to generate system fingerprint for authentication."),U.comment(" This may indicate a permissions issue with reading system information."),process.exit(1));let r=process.env.CDK_INSIGHTS_LICENSE_KEY,i,o,a;if(r){let v=await Nm(r,s,n);v?(i=v.token,o=v.usageData,a=v.licenseInfo||await Yd(r,i),v.fingerprint?s=v.fingerprint:s=dd(i).fingerprint):(U.warning("\u26A0\uFE0F License validation failed. Running in free tier mode."),U.comment(" Check your license key and internet connection."),a=await Yd(r,void 0))}else a=await Yd(void 0,void 0);let c=`${a?.tier??"free"} tier`;U.info(`\u{1F50D} CDK Insights (${c})`),a.tier==="free"&&!r&&(U.comment("\u{1F4A1} Upgrade to Pro for AI-powered recommendations and GitHub integration"),U.comment(" Visit: https://cdkinsights.dev"));let u=Ji(),l=w6(u,t),d=l.ci||kn();if(d&&!l.ci){let v=Zy();U.info(`Detected CI environment${v?`: ${v}`:""}`)}let f=!d&&Yy();d&&!l.stackName&&!l.all&&(l.all=!0),d&&!l.output&&(l.output="json"),pN()||(U.info("\u26A1 No cdk.out directory found. Running cdk synth..."),CA()||(U.error("Failed to synthesize CDK stacks."),U.comment(" Make sure your CDK app compiles correctly."),process.exit(1)));let p=dw();p.length===0&&(U.error("No CDK stacks found in cdk.out directory."),U.comment(' Make sure you have run "cdk synth" and that your CDK app defines at least one stack.'),U.comment(" If cdk.out exists, check that it contains valid CloudFormation templates."),process.exit(1));let m=["All stacks",...p],g=l;if((t.github||g.withIssue)&&(_n.isFeatureEnabled("githubIntegration",a.tier)?U.success("\u{1F517} GitHub integration enabled"):(U.error("GitHub integration is not available for your current tier"),U.comment(gu("githubIntegration",a.tier,"GitHub integration")),process.exit(1))),f&&!l.yes){let v=await fN(l,m);g={...l,...v}}g.all&&(g.stackName="All stacks"),g.stackName||(g.stackName="All stacks"),f&&g.output||(g.output=I6(g)),g.format=g.output,f&&g.output==="markdown"&&g.withIssue===void 0?g.withIssue=await Vi({message:"Create GitHub issues from findings? (only available with markdown output)",default:!1}):g.withIssue===void 0&&(g.withIssue=!1),g.output==="table"&&(g.withIssue=!1);let h=await mN(g,s,i,a,o,n,r,g.local,u.sensitiveDataDetection),y=[],x=h.recommendationMaps||{},D=new Set,S=0;for(let[v,E]of Object.entries(x)){let R=E;S++;let _=v.includes(":")?v.substring(v.indexOf(":")+1):v,W=v.includes(":")?v.substring(0,v.indexOf(":")):"";W&&D.add(W);let j=[...R.sources.cdkInsights?.issues??[],...R.sources.cdkNag?.issues??[]];for(let M of j)y.push({resourceId:_,issue:M.issue,recommendation:M.recommendation,severity:M.severity,wafPillar:M.wafPillar||"Security",foundBy:M.foundBy||"cdkInsights",constructPath:M.constructPath})}if(g.prComment)if(hd()){U.info("Posting analysis summary to PR...");let v=[...D],E={stackNames:v.length>0?v:[g.stackName||"Unknown"],resourceCount:S,issues:y,reportUrl:void 0,aiEnabled:!g.local&&!!r,tier:a?.tier||"free"},R=await Oh({data:E,updateExisting:!0});R.success?U.success("PR comment posted successfully"):U.warning(`Failed to post PR comment: ${R.error}`)}else U.warning("PR comment requested but not in GitHub Actions PR context. Skipping."),U.comment(" PR comments require: GitHub Actions + pull_request event + GITHUB_TOKEN permissions");if(U.success(`Analysis complete! ${g.withIssue?"GitHub issues have been created for the findings.":"Review the findings above."}`),f&&i&&y.length>0)try{let v=await Er({message:"Was this analysis helpful?",choices:[{name:"Yes, helpful!",value:"helpful"},{name:"Actionable - I'll fix these",value:"actionable"},{name:"Not helpful",value:"not_helpful"},{name:"Inaccurate findings",value:"inaccurate"},{name:"Skip",value:"skip"}],default:"skip"});if(v!=="skip"){let E=vi(),_=S6({apiClient:{post:async(j,M)=>{let{data:$}=await ns.post(`${E}${j}`,M,{headers:{Authorization:`Bearer ${i}`,"Content-Type":"application/json","x-cdk-insights-fingerprint":s,"x-cdk-insights-client":"cli"},timeout:1e4});return $}}}),W={};for(let[j,M]of Object.entries(h.recommendationMaps||{})){let $=M,L=j.includes(":")?j.substring(j.indexOf(":")+1):j;$.type&&(W[L]=$.type)}if(v==="helpful")_.markReportAsHelpful(y,W).catch(()=>{}),U.comment(" Thanks for your feedback!");else{let j=y.map(M=>({issue:M,rating:v,resourceType:W[M.resourceId]}));_.submitBatchFeedback(j).catch(()=>{}),U.comment(" Thanks for your feedback!")}}}catch{}else f||U.comment(" Have feedback? Let us know: https://cdkinsights.dev/feedback?source=cli");h.hasCriticalIssues&&(h.hasSensitiveData&&!g.warnSensitive?(U.error("Sensitive data detected. Exiting with code 1."),U.comment(" Use --warn-sensitive to continue without failing, or fix the issues.")):U.error("Critical issues found. Exiting with code 1."),process.exit(1))}catch(e){let{message:s}=e;U.error(`An error occurred during analysis: ${s||e}`),process.exit(1)}}};var Xd=V(require("node:fs")),ep=V(require("node:path"));var T6=()=>{let t=ep.resolve(".git/hooks"),e=ep.join(t,"pre-commit"),s=`#!/bin/sh
507
507
  echo "\u{1F50D} Running CDK Insights pre-commit check..."
508
508
  npx cdk-insights scan --summary-only --output json > /dev/null
509
509
  if [ $? -ne 0 ]; then
@@ -577,7 +577,7 @@ ${d()}`)),p!==u?(Qn.writeFileSync(c,p,"utf-8"),H.info(`\u2705 ${o==="cdk-insight
577
577
  \u{1F4BE} Cache configuration:`);let c=await n(`Enable cache? (y/n) [${t.cache?.enabled!==!1?"y":"n"}]: `);if(c.trim().toLowerCase()==="n"?t.cache={...t.cache,enabled:!1}:c.trim().toLowerCase()==="y"&&(t.cache={...t.cache,enabled:!0}),t.cache?.enabled!==!1){let u=await n(`Cache TTL in minutes [${Math.round((t.cache?.ttl||3e5)/6e4)}]: `);if(u.trim()){let d=Number.parseInt(u.trim(),10);!Number.isNaN(d)&&d>0&&(t.cache={...t.cache,ttl:d*6e4})}let l=await n(`Max cache size [${t.cache?.maxSize||1e3}]: `);if(l.trim()){let d=Number.parseInt(l.trim(),10);!Number.isNaN(d)&&d>0&&(t.cache={...t.cache,maxSize:d})}}Jd(t),console.log(`
578
578
  \u2705 Configuration saved successfully!`),console.log(`
579
579
  \u{1F4CB} Your current configuration:`),console.log(JSON.stringify(t,null,2))}finally{s.close()}},bN=()=>{let t=Ji();console.log("\u{1F4CB} Current Configuration:"),console.log(JSON.stringify(t,null,2))},vN=t=>{let{key:e,value:s}=t;if(t.help){zc(e);return}s||(console.log(`
580
- \u274C No value provided for ${e}`),zc(e),process.exit(1));let n=Ji(),r;try{e==="services"||e==="ruleFilter"?r=s.split(",").map(o=>o.trim()):e==="cache"?r=JSON.parse(s):s.toLowerCase()==="true"||s.toLowerCase()==="false"?r=s.toLowerCase()==="true":Number.isNaN(Number(s))?r=s:r=Number(s)}catch{H.error(`\u274C Invalid value for ${e}: ${s}`),zc(e),process.exit(1)}let i=jg[e];i&&(i.type==="boolean"&&typeof r!="boolean"&&(H.error(`\u274C ${e} must be a boolean (true/false)`),zc(e),process.exit(1)),i.type==="array"&&!Array.isArray(r)&&(H.error(`\u274C ${e} must be a comma-separated list`),zc(e),process.exit(1))),n[e]=r,Jd(n),H.info(`\u2714\uFE0F ${e} = ${JSON.stringify(r)}`)},DN=t=>{let{key:e}=t,s=Ji();if(s[e]===void 0){H.warn(`\u26A0\uFE0F ${e} not set`);return}delete s[e],Jd(s),H.info(`\u2714\uFE0F Removed ${e}`)},z6=new Set(["vi","vim","nvim","nano","emacs","code","subl","atom","gedit","kate","notepad","notepad++","micro","helix","pico"]),SN=t=>{let e=t.split("/").pop()||t;return z6.has(e.toLowerCase())},CN=()=>{let t=dC.get("EDITOR")||"vi";SN(t)||(H.error(`\u274C Unsupported editor: ${t}. Allowed editors: ${Array.from(z6).join(", ")}`),process.exit(1));let e=(0,tp.spawnSync)(t,[xN],{stdio:"inherit"});e.error&&(H.error("\u274C Editor error",{error:e.error.message}),process.exit(1)),H.info("\u2714\uFE0F Config saved")},wN=async t=>{let{path:e}=t,s=(0,U6.promisify)(tp.exec),n=e||process.cwd();H.info(`\u{1F6E0}\uFE0F Running 'cdk synth' in ${n}...`);try{let{stderr:r}=await s("cdk synth",{cwd:n});r&&H.error(r)}catch(r){H.error("\u274C Failed to synthesize stacks",{error:r instanceof Error?r.message:String(r)}),process.exit(1)}},AN=()=>{H.info("\u{1F5D1}\uFE0F Clearing caches..."),uv(),bl();let t=bf();H.info(`\u{1F4C1} Cache directory: ${t.cacheDir}`),H.info(`\u{1F4CA} Cache status: ${t.cacheFileExists?"Files found":"No persistent cache files"}`)},EN=()=>{H.info("\u{1F4CA} Cache Status:");let t=bf();if(H.info(`\u{1F4C1} Cache directory: ${t.cacheDir}`),H.info(`\u{1F4C2} Directory exists: ${t.cacheDirExists?"Yes":"No"}`),H.info(`\u{1F4C4} Cache file exists: ${t.cacheFileExists?"Yes":"No"}`),t.cacheSize!==void 0){let e=(t.cacheSize/1024).toFixed(2);H.info(`\u{1F4CF} Cache file size: ${e} KB`)}H.info(`\u2699\uFE0F Cache enabled: ${lv()?"Yes":"No"}`),H.info("\u2139\uFE0F Note: Current cache is in-memory and clears on process restart")},FN=()=>{let t=new G6.default({head:["Command/Option","Description"],colWidths:[30,80]});return t.push(["COMMANDS",""],["scan [stackName]","Scan CDK stacks for best practices and security issues"],["init","Add cdk-insights npm scripts to your package.json"],["config <action>","Manage project-level configuration"],["synth","Run `cdk synth` automatically before analysis"],["hook","Install Git pre-commit hook for CDK Insights"],["reset","Clear saved prompt answers and CLI preferences"],["clear-cache","Clear the analysis cache"],["cache-status","Show cache status and statistics"],["setup-cdk-nag","Interactive setup to add cdk-nag to your CDK project"],["",""]),t.push(["SCAN OPTIONS",""],["--output, -o","Output format: json, table, markdown, summary, sarif, github-actions"],["--format","Alias for --output"],["--all, -a","Analyze all available stacks"],["--services","Comma-separated list of AWS services to analyze"],["--with-issue","Create GitHub issues for findings (markdown output only)"],["--github","Alias for --with-issue"],["--redact","Redact sensitive resource names in output"],["--summary-only","Only show summary in console"],["--synth","Run `cdk synth` before analysis"],["--ci","Run in CI mode (no prompts)"],["--yes, -y","Skip prompts and use saved/default values"],["--reset","Clear saved config and start fresh"],["--fail-on-critical","Exit with code 1 if critical issues found"],["--rule-filter","Filter findings by rule IDs or categories"],["--no-cache","Disable cache and force fresh analysis"],["--allow-overuse","Allow AI analysis even when exceeding paid allowance (extra usage charged)"],["--local","Run static analysis only (skip AI even with valid license)"],["--warn-sensitive","Treat sensitive data as warning (does not fail CI)"],["",""]),t.push(["CONFIG SUBCOMMANDS",""],["config list","Show current configuration"],["config set <key> <value>","Set a configuration key"],["config unset <key>","Remove a configuration key"],["config edit","Open config file in your editor"],["config setup","Interactive setup to configure CDK Insights"],["",""]),t.push(["GLOBAL OPTIONS",""],["--help, -h","Show help information"],["--version, -v","Show version information"]),t.toString()},_N={command:"config <action> [key] [value]",describe:"Manage project-level configuration",builder:t=>t.command({command:"list",describe:"Show current configuration",handler:bN}).command({command:"set <key> <value>",describe:"Set a configuration key",builder:e=>e.positional("key",{type:"string",choices:["stackName","output","services","redact","withIssue","summaryOnly","synth","ruleFilter","failOnCritical","noCache","allowOveruse","local","cache","sensitiveDataDetection"],describe:"Configuration field to set"}).positional("value",{type:"string",describe:"Value to set (use --help for field-specific help)"}).option("help",{type:"boolean",describe:"Show detailed help for the specified field"}),handler:vN}).command({command:"unset <key>",describe:"Remove a configuration key",builder:e=>e.positional("key",{type:"string",choices:["stackName","output","services","redact","withIssue","summaryOnly","synth","ruleFilter","failOnCritical","noCache","allowOveruse","local","cache","sensitiveDataDetection"],describe:"Configuration field to remove"}),handler:DN}).command({command:"edit",describe:"Open config file in your editor",handler:CN}).command({command:"setup",describe:"Interactive setup to configure CDK Insights",handler:yN}).demandCommand(1).help(),handler:()=>{}},kN=()=>{Ky(Ep(process.argv)).scriptName("cdk-insights").version("0.15.7").usage("Usage: $0 <command> [options]").command(R6).command(N6).command(M6).command(j6).command(_N).command("hook","Install Git pre-commit hook for CDK Insights",()=>{},()=>T6()).command("synth","Run `cdk synth` automatically before analysis",t=>t.option("path",{type:"string",describe:"Path to the CDK project (defaults to current directory)"}),wN).command("clear-cache","Clear the analysis cache",()=>{},AN).command("cache-status","Show the current cache status",()=>{},EN).demandCommand(1,"Please specify a command.").strict().help().wrap(null).epilog(FN()).parse()};kN();
580
+ \u274C No value provided for ${e}`),zc(e),process.exit(1));let n=Ji(),r;try{e==="services"||e==="ruleFilter"?r=s.split(",").map(o=>o.trim()):e==="cache"?r=JSON.parse(s):s.toLowerCase()==="true"||s.toLowerCase()==="false"?r=s.toLowerCase()==="true":Number.isNaN(Number(s))?r=s:r=Number(s)}catch{H.error(`\u274C Invalid value for ${e}: ${s}`),zc(e),process.exit(1)}let i=jg[e];i&&(i.type==="boolean"&&typeof r!="boolean"&&(H.error(`\u274C ${e} must be a boolean (true/false)`),zc(e),process.exit(1)),i.type==="array"&&!Array.isArray(r)&&(H.error(`\u274C ${e} must be a comma-separated list`),zc(e),process.exit(1))),n[e]=r,Jd(n),H.info(`\u2714\uFE0F ${e} = ${JSON.stringify(r)}`)},DN=t=>{let{key:e}=t,s=Ji();if(s[e]===void 0){H.warn(`\u26A0\uFE0F ${e} not set`);return}delete s[e],Jd(s),H.info(`\u2714\uFE0F Removed ${e}`)},z6=new Set(["vi","vim","nvim","nano","emacs","code","subl","atom","gedit","kate","notepad","notepad++","micro","helix","pico"]),SN=t=>{let e=t.split("/").pop()||t;return z6.has(e.toLowerCase())},CN=()=>{let t=dC.get("EDITOR")||"vi";SN(t)||(H.error(`\u274C Unsupported editor: ${t}. Allowed editors: ${Array.from(z6).join(", ")}`),process.exit(1));let e=(0,tp.spawnSync)(t,[xN],{stdio:"inherit"});e.error&&(H.error("\u274C Editor error",{error:e.error.message}),process.exit(1)),H.info("\u2714\uFE0F Config saved")},wN=async t=>{let{path:e}=t,s=(0,U6.promisify)(tp.exec),n=e||process.cwd();H.info(`\u{1F6E0}\uFE0F Running 'cdk synth' in ${n}...`);try{let{stderr:r}=await s("cdk synth",{cwd:n});r&&H.error(r)}catch(r){H.error("\u274C Failed to synthesize stacks",{error:r instanceof Error?r.message:String(r)}),process.exit(1)}},AN=()=>{H.info("\u{1F5D1}\uFE0F Clearing caches..."),uv(),bl();let t=bf();H.info(`\u{1F4C1} Cache directory: ${t.cacheDir}`),H.info(`\u{1F4CA} Cache status: ${t.cacheFileExists?"Files found":"No persistent cache files"}`)},EN=()=>{H.info("\u{1F4CA} Cache Status:");let t=bf();if(H.info(`\u{1F4C1} Cache directory: ${t.cacheDir}`),H.info(`\u{1F4C2} Directory exists: ${t.cacheDirExists?"Yes":"No"}`),H.info(`\u{1F4C4} Cache file exists: ${t.cacheFileExists?"Yes":"No"}`),t.cacheSize!==void 0){let e=(t.cacheSize/1024).toFixed(2);H.info(`\u{1F4CF} Cache file size: ${e} KB`)}H.info(`\u2699\uFE0F Cache enabled: ${lv()?"Yes":"No"}`),H.info("\u2139\uFE0F Note: Current cache is in-memory and clears on process restart")},FN=()=>{let t=new G6.default({head:["Command/Option","Description"],colWidths:[30,80]});return t.push(["COMMANDS",""],["scan [stackName]","Scan CDK stacks for best practices and security issues"],["init","Add cdk-insights npm scripts to your package.json"],["config <action>","Manage project-level configuration"],["synth","Run `cdk synth` automatically before analysis"],["hook","Install Git pre-commit hook for CDK Insights"],["reset","Clear saved prompt answers and CLI preferences"],["clear-cache","Clear the analysis cache"],["cache-status","Show cache status and statistics"],["setup-cdk-nag","Interactive setup to add cdk-nag to your CDK project"],["",""]),t.push(["SCAN OPTIONS",""],["--output, -o","Output format: json, table, markdown, summary, sarif, github-actions"],["--format","Alias for --output"],["--all, -a","Analyze all available stacks"],["--services","Comma-separated list of AWS services to analyze"],["--with-issue","Create GitHub issues for findings (markdown output only)"],["--github","Alias for --with-issue"],["--redact","Redact sensitive resource names in output"],["--summary-only","Only show summary in console"],["--synth","Run `cdk synth` before analysis"],["--ci","Run in CI mode (no prompts)"],["--yes, -y","Skip prompts and use saved/default values"],["--reset","Clear saved config and start fresh"],["--fail-on-critical","Exit with code 1 if critical issues found"],["--rule-filter","Filter findings by rule IDs or categories"],["--no-cache","Disable cache and force fresh analysis"],["--allow-overuse","Allow AI analysis even when exceeding paid allowance (extra usage charged)"],["--local","Run static analysis only (skip AI even with valid license)"],["--warn-sensitive","Treat sensitive data as warning (does not fail CI)"],["",""]),t.push(["CONFIG SUBCOMMANDS",""],["config list","Show current configuration"],["config set <key> <value>","Set a configuration key"],["config unset <key>","Remove a configuration key"],["config edit","Open config file in your editor"],["config setup","Interactive setup to configure CDK Insights"],["",""]),t.push(["GLOBAL OPTIONS",""],["--help, -h","Show help information"],["--version, -v","Show version information"]),t.toString()},_N={command:"config <action> [key] [value]",describe:"Manage project-level configuration",builder:t=>t.command({command:"list",describe:"Show current configuration",handler:bN}).command({command:"set <key> <value>",describe:"Set a configuration key",builder:e=>e.positional("key",{type:"string",choices:["stackName","output","services","redact","withIssue","summaryOnly","synth","ruleFilter","failOnCritical","noCache","allowOveruse","local","cache","sensitiveDataDetection"],describe:"Configuration field to set"}).positional("value",{type:"string",describe:"Value to set (use --help for field-specific help)"}).option("help",{type:"boolean",describe:"Show detailed help for the specified field"}),handler:vN}).command({command:"unset <key>",describe:"Remove a configuration key",builder:e=>e.positional("key",{type:"string",choices:["stackName","output","services","redact","withIssue","summaryOnly","synth","ruleFilter","failOnCritical","noCache","allowOveruse","local","cache","sensitiveDataDetection"],describe:"Configuration field to remove"}),handler:DN}).command({command:"edit",describe:"Open config file in your editor",handler:CN}).command({command:"setup",describe:"Interactive setup to configure CDK Insights",handler:yN}).demandCommand(1).help(),handler:()=>{}},kN=()=>{Ky(Ep(process.argv)).scriptName("cdk-insights").version("0.15.8").usage("Usage: $0 <command> [options]").command(R6).command(N6).command(M6).command(j6).command(_N).command("hook","Install Git pre-commit hook for CDK Insights",()=>{},()=>T6()).command("synth","Run `cdk synth` automatically before analysis",t=>t.option("path",{type:"string",describe:"Path to the CDK project (defaults to current directory)"}),wN).command("clear-cache","Clear the analysis cache",()=>{},AN).command("cache-status","Show the current cache status",()=>{},EN).demandCommand(1,"Please specify a command.").strict().help().wrap(null).epilog(FN()).parse()};kN();
581
581
  /*! Bundled license information:
582
582
 
583
583
  mime-db/index.js: