start-nhqydlsh 0.0.15 → 0.0.16
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/index.js +36 -35
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,46 +1,47 @@
|
|
|
1
|
-
var i1=Object.create;var{getPrototypeOf:o1,defineProperty:_1,getOwnPropertyNames:D1}=Object;var l1=Object.prototype.hasOwnProperty;var l=(m,$,S)=>{S=m!=null?i1(o1(m)):{};let B=$||!m||!m.__esModule?_1(S,"default",{value:m,enumerable:!0}):S;for(let J of D1(m))if(!l1.call(B,J))_1(B,J,{get:()=>m[J],enumerable:!0});return B};var G1=(m,$)=>()=>($||m(($={exports:{}}).exports,$),$.exports);var $1=G1((S9,j1)=>{var m1={to(m,$){if(!$)return`\x1B[${m+1}G`;return`\x1B[${$+1};${m+1}H`},move(m,$){let S="";if(m<0)S+=`\x1B[${-m}D`;else if(m>0)S+=`\x1B[${m}C`;if($<0)S+=`\x1B[${-$}A`;else if($>0)S+=`\x1B[${$}B`;return S},up:(m=1)=>`\x1B[${m}A`,down:(m=1)=>`\x1B[${m}B`,forward:(m=1)=>`\x1B[${m}C`,backward:(m=1)=>`\x1B[${m}D`,nextLine:(m=1)=>"\x1B[E".repeat(m),prevLine:(m=1)=>"\x1B[F".repeat(m),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},n1={up:(m=1)=>"\x1B[S".repeat(m),down:(m=1)=>"\x1B[T".repeat(m)},u1={screen:"\x1B[2J",up:(m=1)=>"\x1B[1J".repeat(m),down:(m=1)=>"\x1B[J".repeat(m),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(m){let $="";for(let S=0;S<m;S++)$+=this.line+(S<m-1?m1.up():"");if(m)$+=m1.left;return $}};j1.exports={cursor:m1,scroll:n1,erase:u1,beep:"\x07"}});var B1=G1((B9,S1)=>{var u=process||{},L1=u.argv||[],n=u.env||{},s1=!(!!n.NO_COLOR||L1.includes("--no-color"))&&(!!n.FORCE_COLOR||L1.includes("--color")||u.platform==="win32"||(u.stdout||{}).isTTY&&n.TERM!=="dumb"||!!n.CI),r1=(m,$,S=m)=>(B)=>{let J=""+B,K=J.indexOf($,m.length);return~K?m+t1(J,$,S,K)+$:m+J+$},t1=(m,$,S,B)=>{let J="",K=0;do J+=m.substring(K,B)+S,K=B+$.length,B=m.indexOf($,K);while(~B);return J+m.substring(K)},V1=(m=s1)=>{let $=m?r1:()=>String;return{isColorSupported:m,reset:$("\x1B[0m","\x1B[0m"),bold:$("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:$("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:$("\x1B[3m","\x1B[23m"),underline:$("\x1B[4m","\x1B[24m"),inverse:$("\x1B[7m","\x1B[27m"),hidden:$("\x1B[8m","\x1B[28m"),strikethrough:$("\x1B[9m","\x1B[29m"),black:$("\x1B[30m","\x1B[39m"),red:$("\x1B[31m","\x1B[39m"),green:$("\x1B[32m","\x1B[39m"),yellow:$("\x1B[33m","\x1B[39m"),blue:$("\x1B[34m","\x1B[39m"),magenta:$("\x1B[35m","\x1B[39m"),cyan:$("\x1B[36m","\x1B[39m"),white:$("\x1B[37m","\x1B[39m"),gray:$("\x1B[90m","\x1B[39m"),bgBlack:$("\x1B[40m","\x1B[49m"),bgRed:$("\x1B[41m","\x1B[49m"),bgGreen:$("\x1B[42m","\x1B[49m"),bgYellow:$("\x1B[43m","\x1B[49m"),bgBlue:$("\x1B[44m","\x1B[49m"),bgMagenta:$("\x1B[45m","\x1B[49m"),bgCyan:$("\x1B[46m","\x1B[49m"),bgWhite:$("\x1B[47m","\x1B[49m"),blackBright:$("\x1B[90m","\x1B[39m"),redBright:$("\x1B[91m","\x1B[39m"),greenBright:$("\x1B[92m","\x1B[39m"),yellowBright:$("\x1B[93m","\x1B[39m"),blueBright:$("\x1B[94m","\x1B[39m"),magentaBright:$("\x1B[95m","\x1B[39m"),cyanBright:$("\x1B[96m","\x1B[39m"),whiteBright:$("\x1B[97m","\x1B[39m"),bgBlackBright:$("\x1B[100m","\x1B[49m"),bgRedBright:$("\x1B[101m","\x1B[49m"),bgGreenBright:$("\x1B[102m","\x1B[49m"),bgYellowBright:$("\x1B[103m","\x1B[49m"),bgBlueBright:$("\x1B[104m","\x1B[49m"),bgMagentaBright:$("\x1B[105m","\x1B[49m"),bgCyanBright:$("\x1B[106m","\x1B[49m"),bgWhiteBright:$("\x1B[107m","\x1B[49m")}};S1.exports=V1();S1.exports.createColors=V1});import{spawn as Rb}from"node:child_process";import Mb from"node:path";var V=l($1(),1),f1=l(B1(),1);import{stdin as M1,stdout as h1}from"node:process";import*as F from"node:readline";import P1 from"node:readline";import{Writable as e1}from"node:stream";function bb({onlyFirst:m=!1}={}){let $=["[\\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($,m?void 0:"g")}var mb=bb();function I1(m){if(typeof m!="string")throw TypeError(`Expected a \`string\`, got \`${typeof m}\``);return m.replace(mb,"")}function g1(m){return m&&m.__esModule&&Object.prototype.hasOwnProperty.call(m,"default")?m.default:m}var y1={exports:{}};(function(m){var $={};m.exports=$,$.eastAsianWidth=function(B){var J=B.charCodeAt(0),K=B.length==2?B.charCodeAt(1):0,b=J;return 55296<=J&&J<=56319&&56320<=K&&K<=57343&&(J&=1023,K&=1023,b=J<<10|K,b+=65536),b==12288||65281<=b&&b<=65376||65504<=b&&b<=65510?"F":b==8361||65377<=b&&b<=65470||65474<=b&&b<=65479||65482<=b&&b<=65487||65490<=b&&b<=65495||65498<=b&&b<=65500||65512<=b&&b<=65518?"H":4352<=b&&b<=4447||4515<=b&&b<=4519||4602<=b&&b<=4607||9001<=b&&b<=9002||11904<=b&&b<=11929||11931<=b&&b<=12019||12032<=b&&b<=12245||12272<=b&&b<=12283||12289<=b&&b<=12350||12353<=b&&b<=12438||12441<=b&&b<=12543||12549<=b&&b<=12589||12593<=b&&b<=12686||12688<=b&&b<=12730||12736<=b&&b<=12771||12784<=b&&b<=12830||12832<=b&&b<=12871||12880<=b&&b<=13054||13056<=b&&b<=19903||19968<=b&&b<=42124||42128<=b&&b<=42182||43360<=b&&b<=43388||44032<=b&&b<=55203||55216<=b&&b<=55238||55243<=b&&b<=55291||63744<=b&&b<=64255||65040<=b&&b<=65049||65072<=b&&b<=65106||65108<=b&&b<=65126||65128<=b&&b<=65131||110592<=b&&b<=110593||127488<=b&&b<=127490||127504<=b&&b<=127546||127552<=b&&b<=127560||127568<=b&&b<=127569||131072<=b&&b<=194367||177984<=b&&b<=196605||196608<=b&&b<=262141?"W":32<=b&&b<=126||162<=b&&b<=163||165<=b&&b<=166||b==172||b==175||10214<=b&&b<=10221||10629<=b&&b<=10630?"Na":b==161||b==164||167<=b&&b<=168||b==170||173<=b&&b<=174||176<=b&&b<=180||182<=b&&b<=186||188<=b&&b<=191||b==198||b==208||215<=b&&b<=216||222<=b&&b<=225||b==230||232<=b&&b<=234||236<=b&&b<=237||b==240||242<=b&&b<=243||247<=b&&b<=250||b==252||b==254||b==257||b==273||b==275||b==283||294<=b&&b<=295||b==299||305<=b&&b<=307||b==312||319<=b&&b<=322||b==324||328<=b&&b<=331||b==333||338<=b&&b<=339||358<=b&&b<=359||b==363||b==462||b==464||b==466||b==468||b==470||b==472||b==474||b==476||b==593||b==609||b==708||b==711||713<=b&&b<=715||b==717||b==720||728<=b&&b<=731||b==733||b==735||768<=b&&b<=879||913<=b&&b<=929||931<=b&&b<=937||945<=b&&b<=961||963<=b&&b<=969||b==1025||1040<=b&&b<=1103||b==1105||b==8208||8211<=b&&b<=8214||8216<=b&&b<=8217||8220<=b&&b<=8221||8224<=b&&b<=8226||8228<=b&&b<=8231||b==8240||8242<=b&&b<=8243||b==8245||b==8251||b==8254||b==8308||b==8319||8321<=b&&b<=8324||b==8364||b==8451||b==8453||b==8457||b==8467||b==8470||8481<=b&&b<=8482||b==8486||b==8491||8531<=b&&b<=8532||8539<=b&&b<=8542||8544<=b&&b<=8555||8560<=b&&b<=8569||b==8585||8592<=b&&b<=8601||8632<=b&&b<=8633||b==8658||b==8660||b==8679||b==8704||8706<=b&&b<=8707||8711<=b&&b<=8712||b==8715||b==8719||b==8721||b==8725||b==8730||8733<=b&&b<=8736||b==8739||b==8741||8743<=b&&b<=8748||b==8750||8756<=b&&b<=8759||8764<=b&&b<=8765||b==8776||b==8780||b==8786||8800<=b&&b<=8801||8804<=b&&b<=8807||8810<=b&&b<=8811||8814<=b&&b<=8815||8834<=b&&b<=8835||8838<=b&&b<=8839||b==8853||b==8857||b==8869||b==8895||b==8978||9312<=b&&b<=9449||9451<=b&&b<=9547||9552<=b&&b<=9587||9600<=b&&b<=9615||9618<=b&&b<=9621||9632<=b&&b<=9633||9635<=b&&b<=9641||9650<=b&&b<=9651||9654<=b&&b<=9655||9660<=b&&b<=9661||9664<=b&&b<=9665||9670<=b&&b<=9672||b==9675||9678<=b&&b<=9681||9698<=b&&b<=9701||b==9711||9733<=b&&b<=9734||b==9737||9742<=b&&b<=9743||9748<=b&&b<=9749||b==9756||b==9758||b==9792||b==9794||9824<=b&&b<=9825||9827<=b&&b<=9829||9831<=b&&b<=9834||9836<=b&&b<=9837||b==9839||9886<=b&&b<=9887||9918<=b&&b<=9919||9924<=b&&b<=9933||9935<=b&&b<=9953||b==9955||9960<=b&&b<=9983||b==10045||b==10071||10102<=b&&b<=10111||11093<=b&&b<=11097||12872<=b&&b<=12879||57344<=b&&b<=63743||65024<=b&&b<=65039||b==65533||127232<=b&&b<=127242||127248<=b&&b<=127277||127280<=b&&b<=127337||127344<=b&&b<=127386||917760<=b&&b<=917999||983040<=b&&b<=1048573||1048576<=b&&b<=1114109?"A":"N"},$.characterLength=function(B){var J=this.eastAsianWidth(B);return J=="F"||J=="W"||J=="A"?2:1};function S(B){return B.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}$.length=function(B){for(var J=S(B),K=0,b=0;b<J.length;b++)K=K+this.characterLength(J[b]);return K},$.slice=function(B,J,K){textLen=$.length(B),J=J||0,K=K||1,J<0&&(J=textLen+J),K<0&&(K=textLen+K);for(var b="",Y=0,O=S(B),Q=0;Q<O.length;Q++){var W=O[Q],Z=$.length(W);if(Y>=J-(Z==2?1:0))if(Y+Z<=K)b+=W;else break;Y+=Z}return b}})(y1);var $b=y1.exports,Sb=g1($b),Bb=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},Jb=g1(Bb);function o(m,$={}){if(typeof m!="string"||m.length===0||($={ambiguousIsNarrow:!0,...$},m=I1(m),m.length===0))return 0;m=m.replace(Jb()," ");let S=$.ambiguousIsNarrow?1:2,B=0;for(let J of m){let K=J.codePointAt(0);if(K<=31||K>=127&&K<=159||K>=768&&K<=879)continue;switch(Sb.eastAsianWidth(J)){case"F":case"W":B+=2;break;case"A":B+=S;break;default:B+=1}}return B}var J1=10,T1=(m=0)=>($)=>`\x1B[${$+m}m`,A1=(m=0)=>($)=>`\x1B[${38+m};5;${$}m`,k1=(m=0)=>($,S,B)=>`\x1B[${38+m};2;${$};${S};${B}m`,N={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]}};Object.keys(N.modifier);var Kb=Object.keys(N.color),Yb=Object.keys(N.bgColor);[...Kb,...Yb];function xb(){let m=new Map;for(let[$,S]of Object.entries(N)){for(let[B,J]of Object.entries(S))N[B]={open:`\x1B[${J[0]}m`,close:`\x1B[${J[1]}m`},S[B]=N[B],m.set(J[0],J[1]);Object.defineProperty(N,$,{value:S,enumerable:!1})}return Object.defineProperty(N,"codes",{value:m,enumerable:!1}),N.color.close="\x1B[39m",N.bgColor.close="\x1B[49m",N.color.ansi=T1(),N.color.ansi256=A1(),N.color.ansi16m=k1(),N.bgColor.ansi=T1(J1),N.bgColor.ansi256=A1(J1),N.bgColor.ansi16m=k1(J1),Object.defineProperties(N,{rgbToAnsi256:{value:($,S,B)=>$===S&&S===B?$<8?16:$>248?231:Math.round(($-8)/247*24)+232:16+36*Math.round($/255*5)+6*Math.round(S/255*5)+Math.round(B/255*5),enumerable:!1},hexToRgb:{value:($)=>{let S=/[a-f\d]{6}|[a-f\d]{3}/i.exec($.toString(16));if(!S)return[0,0,0];let[B]=S;B.length===3&&(B=[...B].map((K)=>K+K).join(""));let J=Number.parseInt(B,16);return[J>>16&255,J>>8&255,J&255]},enumerable:!1},hexToAnsi256:{value:($)=>N.rgbToAnsi256(...N.hexToRgb($)),enumerable:!1},ansi256ToAnsi:{value:($)=>{if($<8)return 30+$;if($<16)return 90+($-8);let S,B,J;if($>=232)S=(($-232)*10+8)/255,B=S,J=S;else{$-=16;let Y=$%36;S=Math.floor($/36)/5,B=Math.floor(Y/6)/5,J=Y%6/5}let K=Math.max(S,B,J)*2;if(K===0)return 30;let b=30+(Math.round(J)<<2|Math.round(B)<<1|Math.round(S));return K===2&&(b+=60),b},enumerable:!1},rgbToAnsi:{value:($,S,B)=>N.ansi256ToAnsi(N.rgbToAnsi256($,S,B)),enumerable:!1},hexToAnsi:{value:($)=>N.ansi256ToAnsi(N.hexToAnsi256($)),enumerable:!1}}),N}var Hb=xb(),t=new Set(["\x1B",""]),Xb=39,x1="\x07",d1="[",wb="]",C1="m",H1=`${wb}8;;`,v1=(m)=>`${t.values().next().value}${d1}${m}${C1}`,E1=(m)=>`${t.values().next().value}${H1}${m}${x1}`,zb=(m)=>m.split(" ").map(($)=>o($)),K1=(m,$,S)=>{let B=[...$],J=!1,K=!1,b=o(I1(m[m.length-1]));for(let[Y,O]of B.entries()){let Q=o(O);if(b+Q<=S?m[m.length-1]+=O:(m.push(O),b=0),t.has(O)&&(J=!0,K=B.slice(Y+1).join("").startsWith(H1)),J){K?O===x1&&(J=!1,K=!1):O===C1&&(J=!1);continue}b+=Q,b===S&&Y<B.length-1&&(m.push(""),b=0)}!b&&m[m.length-1].length>0&&m.length>1&&(m[m.length-2]+=m.pop())},Ob=(m)=>{let $=m.split(" "),S=$.length;for(;S>0&&!(o($[S-1])>0);)S--;return S===$.length?m:$.slice(0,S).join(" ")+$.slice(S).join("")},Qb=(m,$,S={})=>{if(S.trim!==!1&&m.trim()==="")return"";let B="",J,K,b=zb(m),Y=[""];for(let[Q,W]of m.split(" ").entries()){S.trim!==!1&&(Y[Y.length-1]=Y[Y.length-1].trimStart());let Z=o(Y[Y.length-1]);if(Q!==0&&(Z>=$&&(S.wordWrap===!1||S.trim===!1)&&(Y.push(""),Z=0),(Z>0||S.trim===!1)&&(Y[Y.length-1]+=" ",Z++)),S.hard&&b[Q]>$){let q=$-Z,A=1+Math.floor((b[Q]-q-1)/$);Math.floor((b[Q]-1)/$)<A&&Y.push(""),K1(Y,W,$);continue}if(Z+b[Q]>$&&Z>0&&b[Q]>0){if(S.wordWrap===!1&&Z<$){K1(Y,W,$);continue}Y.push("")}if(Z+b[Q]>$&&S.wordWrap===!1){K1(Y,W,$);continue}Y[Y.length-1]+=W}S.trim!==!1&&(Y=Y.map((Q)=>Ob(Q)));let O=[...Y.join(`
|
|
2
|
-
`)];for(let[Q,W]of O.entries()){if(B+=W,t.has(W)){let{groups:q}=new RegExp(`(?:\\${d1}(?<code>\\d+)m|\\${
|
|
3
|
-
`?(
|
|
4
|
-
`&&(
|
|
1
|
+
var o1=Object.create;var{getPrototypeOf:l1,defineProperty:_1,getOwnPropertyNames:u1}=Object;var n1=Object.prototype.hasOwnProperty;var l=(m,$,S)=>{S=m!=null?o1(l1(m)):{};let B=$||!m||!m.__esModule?_1(S,"default",{value:m,enumerable:!0}):S;for(let K of u1(m))if(!n1.call(B,K))_1(B,K,{get:()=>m[K],enumerable:!0});return B};var G1=(m,$)=>()=>($||m(($={exports:{}}).exports,$),$.exports);var $1=G1((x9,j1)=>{var m1={to(m,$){if(!$)return`\x1B[${m+1}G`;return`\x1B[${$+1};${m+1}H`},move(m,$){let S="";if(m<0)S+=`\x1B[${-m}D`;else if(m>0)S+=`\x1B[${m}C`;if($<0)S+=`\x1B[${-$}A`;else if($>0)S+=`\x1B[${$}B`;return S},up:(m=1)=>`\x1B[${m}A`,down:(m=1)=>`\x1B[${m}B`,forward:(m=1)=>`\x1B[${m}C`,backward:(m=1)=>`\x1B[${m}D`,nextLine:(m=1)=>"\x1B[E".repeat(m),prevLine:(m=1)=>"\x1B[F".repeat(m),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},s1={up:(m=1)=>"\x1B[S".repeat(m),down:(m=1)=>"\x1B[T".repeat(m)},r1={screen:"\x1B[2J",up:(m=1)=>"\x1B[1J".repeat(m),down:(m=1)=>"\x1B[J".repeat(m),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(m){let $="";for(let S=0;S<m;S++)$+=this.line+(S<m-1?m1.up():"");if(m)$+=m1.left;return $}};j1.exports={cursor:m1,scroll:s1,erase:r1,beep:"\x07"}});var B1=G1((H9,S1)=>{var n=process||{},L1=n.argv||[],u=n.env||{},t1=!(!!u.NO_COLOR||L1.includes("--no-color"))&&(!!u.FORCE_COLOR||L1.includes("--color")||n.platform==="win32"||(n.stdout||{}).isTTY&&u.TERM!=="dumb"||!!u.CI),e1=(m,$,S=m)=>(B)=>{let K=""+B,Y=K.indexOf($,m.length);return~Y?m+bb(K,$,S,Y)+$:m+K+$},bb=(m,$,S,B)=>{let K="",Y=0;do K+=m.substring(Y,B)+S,Y=B+$.length,B=m.indexOf($,Y);while(~B);return K+m.substring(Y)},T1=(m=t1)=>{let $=m?e1:()=>String;return{isColorSupported:m,reset:$("\x1B[0m","\x1B[0m"),bold:$("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:$("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:$("\x1B[3m","\x1B[23m"),underline:$("\x1B[4m","\x1B[24m"),inverse:$("\x1B[7m","\x1B[27m"),hidden:$("\x1B[8m","\x1B[28m"),strikethrough:$("\x1B[9m","\x1B[29m"),black:$("\x1B[30m","\x1B[39m"),red:$("\x1B[31m","\x1B[39m"),green:$("\x1B[32m","\x1B[39m"),yellow:$("\x1B[33m","\x1B[39m"),blue:$("\x1B[34m","\x1B[39m"),magenta:$("\x1B[35m","\x1B[39m"),cyan:$("\x1B[36m","\x1B[39m"),white:$("\x1B[37m","\x1B[39m"),gray:$("\x1B[90m","\x1B[39m"),bgBlack:$("\x1B[40m","\x1B[49m"),bgRed:$("\x1B[41m","\x1B[49m"),bgGreen:$("\x1B[42m","\x1B[49m"),bgYellow:$("\x1B[43m","\x1B[49m"),bgBlue:$("\x1B[44m","\x1B[49m"),bgMagenta:$("\x1B[45m","\x1B[49m"),bgCyan:$("\x1B[46m","\x1B[49m"),bgWhite:$("\x1B[47m","\x1B[49m"),blackBright:$("\x1B[90m","\x1B[39m"),redBright:$("\x1B[91m","\x1B[39m"),greenBright:$("\x1B[92m","\x1B[39m"),yellowBright:$("\x1B[93m","\x1B[39m"),blueBright:$("\x1B[94m","\x1B[39m"),magentaBright:$("\x1B[95m","\x1B[39m"),cyanBright:$("\x1B[96m","\x1B[39m"),whiteBright:$("\x1B[97m","\x1B[39m"),bgBlackBright:$("\x1B[100m","\x1B[49m"),bgRedBright:$("\x1B[101m","\x1B[49m"),bgGreenBright:$("\x1B[102m","\x1B[49m"),bgYellowBright:$("\x1B[103m","\x1B[49m"),bgBlueBright:$("\x1B[104m","\x1B[49m"),bgMagentaBright:$("\x1B[105m","\x1B[49m"),bgCyanBright:$("\x1B[106m","\x1B[49m"),bgWhiteBright:$("\x1B[107m","\x1B[49m")}};S1.exports=T1();S1.exports.createColors=T1});import{spawn as fb}from"node:child_process";import Ib from"node:fs";import D1 from"node:path";var T=l($1(),1),f1=l(B1(),1);import{stdin as M1,stdout as h1}from"node:process";import*as F from"node:readline";import V1 from"node:readline";import{Writable as mb}from"node:stream";function $b({onlyFirst:m=!1}={}){let $=["[\\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($,m?void 0:"g")}var Sb=$b();function I1(m){if(typeof m!="string")throw TypeError(`Expected a \`string\`, got \`${typeof m}\``);return m.replace(Sb,"")}function g1(m){return m&&m.__esModule&&Object.prototype.hasOwnProperty.call(m,"default")?m.default:m}var y1={exports:{}};(function(m){var $={};m.exports=$,$.eastAsianWidth=function(B){var K=B.charCodeAt(0),Y=B.length==2?B.charCodeAt(1):0,b=K;return 55296<=K&&K<=56319&&56320<=Y&&Y<=57343&&(K&=1023,Y&=1023,b=K<<10|Y,b+=65536),b==12288||65281<=b&&b<=65376||65504<=b&&b<=65510?"F":b==8361||65377<=b&&b<=65470||65474<=b&&b<=65479||65482<=b&&b<=65487||65490<=b&&b<=65495||65498<=b&&b<=65500||65512<=b&&b<=65518?"H":4352<=b&&b<=4447||4515<=b&&b<=4519||4602<=b&&b<=4607||9001<=b&&b<=9002||11904<=b&&b<=11929||11931<=b&&b<=12019||12032<=b&&b<=12245||12272<=b&&b<=12283||12289<=b&&b<=12350||12353<=b&&b<=12438||12441<=b&&b<=12543||12549<=b&&b<=12589||12593<=b&&b<=12686||12688<=b&&b<=12730||12736<=b&&b<=12771||12784<=b&&b<=12830||12832<=b&&b<=12871||12880<=b&&b<=13054||13056<=b&&b<=19903||19968<=b&&b<=42124||42128<=b&&b<=42182||43360<=b&&b<=43388||44032<=b&&b<=55203||55216<=b&&b<=55238||55243<=b&&b<=55291||63744<=b&&b<=64255||65040<=b&&b<=65049||65072<=b&&b<=65106||65108<=b&&b<=65126||65128<=b&&b<=65131||110592<=b&&b<=110593||127488<=b&&b<=127490||127504<=b&&b<=127546||127552<=b&&b<=127560||127568<=b&&b<=127569||131072<=b&&b<=194367||177984<=b&&b<=196605||196608<=b&&b<=262141?"W":32<=b&&b<=126||162<=b&&b<=163||165<=b&&b<=166||b==172||b==175||10214<=b&&b<=10221||10629<=b&&b<=10630?"Na":b==161||b==164||167<=b&&b<=168||b==170||173<=b&&b<=174||176<=b&&b<=180||182<=b&&b<=186||188<=b&&b<=191||b==198||b==208||215<=b&&b<=216||222<=b&&b<=225||b==230||232<=b&&b<=234||236<=b&&b<=237||b==240||242<=b&&b<=243||247<=b&&b<=250||b==252||b==254||b==257||b==273||b==275||b==283||294<=b&&b<=295||b==299||305<=b&&b<=307||b==312||319<=b&&b<=322||b==324||328<=b&&b<=331||b==333||338<=b&&b<=339||358<=b&&b<=359||b==363||b==462||b==464||b==466||b==468||b==470||b==472||b==474||b==476||b==593||b==609||b==708||b==711||713<=b&&b<=715||b==717||b==720||728<=b&&b<=731||b==733||b==735||768<=b&&b<=879||913<=b&&b<=929||931<=b&&b<=937||945<=b&&b<=961||963<=b&&b<=969||b==1025||1040<=b&&b<=1103||b==1105||b==8208||8211<=b&&b<=8214||8216<=b&&b<=8217||8220<=b&&b<=8221||8224<=b&&b<=8226||8228<=b&&b<=8231||b==8240||8242<=b&&b<=8243||b==8245||b==8251||b==8254||b==8308||b==8319||8321<=b&&b<=8324||b==8364||b==8451||b==8453||b==8457||b==8467||b==8470||8481<=b&&b<=8482||b==8486||b==8491||8531<=b&&b<=8532||8539<=b&&b<=8542||8544<=b&&b<=8555||8560<=b&&b<=8569||b==8585||8592<=b&&b<=8601||8632<=b&&b<=8633||b==8658||b==8660||b==8679||b==8704||8706<=b&&b<=8707||8711<=b&&b<=8712||b==8715||b==8719||b==8721||b==8725||b==8730||8733<=b&&b<=8736||b==8739||b==8741||8743<=b&&b<=8748||b==8750||8756<=b&&b<=8759||8764<=b&&b<=8765||b==8776||b==8780||b==8786||8800<=b&&b<=8801||8804<=b&&b<=8807||8810<=b&&b<=8811||8814<=b&&b<=8815||8834<=b&&b<=8835||8838<=b&&b<=8839||b==8853||b==8857||b==8869||b==8895||b==8978||9312<=b&&b<=9449||9451<=b&&b<=9547||9552<=b&&b<=9587||9600<=b&&b<=9615||9618<=b&&b<=9621||9632<=b&&b<=9633||9635<=b&&b<=9641||9650<=b&&b<=9651||9654<=b&&b<=9655||9660<=b&&b<=9661||9664<=b&&b<=9665||9670<=b&&b<=9672||b==9675||9678<=b&&b<=9681||9698<=b&&b<=9701||b==9711||9733<=b&&b<=9734||b==9737||9742<=b&&b<=9743||9748<=b&&b<=9749||b==9756||b==9758||b==9792||b==9794||9824<=b&&b<=9825||9827<=b&&b<=9829||9831<=b&&b<=9834||9836<=b&&b<=9837||b==9839||9886<=b&&b<=9887||9918<=b&&b<=9919||9924<=b&&b<=9933||9935<=b&&b<=9953||b==9955||9960<=b&&b<=9983||b==10045||b==10071||10102<=b&&b<=10111||11093<=b&&b<=11097||12872<=b&&b<=12879||57344<=b&&b<=63743||65024<=b&&b<=65039||b==65533||127232<=b&&b<=127242||127248<=b&&b<=127277||127280<=b&&b<=127337||127344<=b&&b<=127386||917760<=b&&b<=917999||983040<=b&&b<=1048573||1048576<=b&&b<=1114109?"A":"N"},$.characterLength=function(B){var K=this.eastAsianWidth(B);return K=="F"||K=="W"||K=="A"?2:1};function S(B){return B.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}$.length=function(B){for(var K=S(B),Y=0,b=0;b<K.length;b++)Y=Y+this.characterLength(K[b]);return Y},$.slice=function(B,K,Y){textLen=$.length(B),K=K||0,Y=Y||1,K<0&&(K=textLen+K),Y<0&&(Y=textLen+Y);for(var b="",x=0,O=S(B),Q=0;Q<O.length;Q++){var W=O[Q],Z=$.length(W);if(x>=K-(Z==2?1:0))if(x+Z<=Y)b+=W;else break;x+=Z}return b}})(y1);var Bb=y1.exports,Kb=g1(Bb),Yb=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\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|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\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]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\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-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},xb=g1(Yb);function D(m,$={}){if(typeof m!="string"||m.length===0||($={ambiguousIsNarrow:!0,...$},m=I1(m),m.length===0))return 0;m=m.replace(xb()," ");let S=$.ambiguousIsNarrow?1:2,B=0;for(let K of m){let Y=K.codePointAt(0);if(Y<=31||Y>=127&&Y<=159||Y>=768&&Y<=879)continue;switch(Kb.eastAsianWidth(K)){case"F":case"W":B+=2;break;case"A":B+=S;break;default:B+=1}}return B}var K1=10,A1=(m=0)=>($)=>`\x1B[${$+m}m`,P1=(m=0)=>($)=>`\x1B[${38+m};5;${$}m`,k1=(m=0)=>($,S,B)=>`\x1B[${38+m};2;${$};${S};${B}m`,N={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]}};Object.keys(N.modifier);var Hb=Object.keys(N.color),Jb=Object.keys(N.bgColor);[...Hb,...Jb];function Xb(){let m=new Map;for(let[$,S]of Object.entries(N)){for(let[B,K]of Object.entries(S))N[B]={open:`\x1B[${K[0]}m`,close:`\x1B[${K[1]}m`},S[B]=N[B],m.set(K[0],K[1]);Object.defineProperty(N,$,{value:S,enumerable:!1})}return Object.defineProperty(N,"codes",{value:m,enumerable:!1}),N.color.close="\x1B[39m",N.bgColor.close="\x1B[49m",N.color.ansi=A1(),N.color.ansi256=P1(),N.color.ansi16m=k1(),N.bgColor.ansi=A1(K1),N.bgColor.ansi256=P1(K1),N.bgColor.ansi16m=k1(K1),Object.defineProperties(N,{rgbToAnsi256:{value:($,S,B)=>$===S&&S===B?$<8?16:$>248?231:Math.round(($-8)/247*24)+232:16+36*Math.round($/255*5)+6*Math.round(S/255*5)+Math.round(B/255*5),enumerable:!1},hexToRgb:{value:($)=>{let S=/[a-f\d]{6}|[a-f\d]{3}/i.exec($.toString(16));if(!S)return[0,0,0];let[B]=S;B.length===3&&(B=[...B].map((Y)=>Y+Y).join(""));let K=Number.parseInt(B,16);return[K>>16&255,K>>8&255,K&255]},enumerable:!1},hexToAnsi256:{value:($)=>N.rgbToAnsi256(...N.hexToRgb($)),enumerable:!1},ansi256ToAnsi:{value:($)=>{if($<8)return 30+$;if($<16)return 90+($-8);let S,B,K;if($>=232)S=(($-232)*10+8)/255,B=S,K=S;else{$-=16;let x=$%36;S=Math.floor($/36)/5,B=Math.floor(x/6)/5,K=x%6/5}let Y=Math.max(S,B,K)*2;if(Y===0)return 30;let b=30+(Math.round(K)<<2|Math.round(B)<<1|Math.round(S));return Y===2&&(b+=60),b},enumerable:!1},rgbToAnsi:{value:($,S,B)=>N.ansi256ToAnsi(N.rgbToAnsi256($,S,B)),enumerable:!1},hexToAnsi:{value:($)=>N.ansi256ToAnsi(N.hexToAnsi256($)),enumerable:!1}}),N}var wb=Xb(),t=new Set(["\x1B",""]),zb=39,H1="\x07",d1="[",Ob="]",C1="m",J1=`${Ob}8;;`,v1=(m)=>`${t.values().next().value}${d1}${m}${C1}`,E1=(m)=>`${t.values().next().value}${J1}${m}${H1}`,Qb=(m)=>m.split(" ").map(($)=>D($)),Y1=(m,$,S)=>{let B=[...$],K=!1,Y=!1,b=D(I1(m[m.length-1]));for(let[x,O]of B.entries()){let Q=D(O);if(b+Q<=S?m[m.length-1]+=O:(m.push(O),b=0),t.has(O)&&(K=!0,Y=B.slice(x+1).join("").startsWith(J1)),K){Y?O===H1&&(K=!1,Y=!1):O===C1&&(K=!1);continue}b+=Q,b===S&&x<B.length-1&&(m.push(""),b=0)}!b&&m[m.length-1].length>0&&m.length>1&&(m[m.length-2]+=m.pop())},Wb=(m)=>{let $=m.split(" "),S=$.length;for(;S>0&&!(D($[S-1])>0);)S--;return S===$.length?m:$.slice(0,S).join(" ")+$.slice(S).join("")},Zb=(m,$,S={})=>{if(S.trim!==!1&&m.trim()==="")return"";let B="",K,Y,b=Qb(m),x=[""];for(let[Q,W]of m.split(" ").entries()){S.trim!==!1&&(x[x.length-1]=x[x.length-1].trimStart());let Z=D(x[x.length-1]);if(Q!==0&&(Z>=$&&(S.wordWrap===!1||S.trim===!1)&&(x.push(""),Z=0),(Z>0||S.trim===!1)&&(x[x.length-1]+=" ",Z++)),S.hard&&b[Q]>$){let q=$-Z,P=1+Math.floor((b[Q]-q-1)/$);Math.floor((b[Q]-1)/$)<P&&x.push(""),Y1(x,W,$);continue}if(Z+b[Q]>$&&Z>0&&b[Q]>0){if(S.wordWrap===!1&&Z<$){Y1(x,W,$);continue}x.push("")}if(Z+b[Q]>$&&S.wordWrap===!1){Y1(x,W,$);continue}x[x.length-1]+=W}S.trim!==!1&&(x=x.map((Q)=>Wb(Q)));let O=[...x.join(`
|
|
2
|
+
`)];for(let[Q,W]of O.entries()){if(B+=W,t.has(W)){let{groups:q}=new RegExp(`(?:\\${d1}(?<code>\\d+)m|\\${J1}(?<uri>.*)${H1})`).exec(O.slice(Q).join(""))||{groups:{}};if(q.code!==void 0){let P=Number.parseFloat(q.code);K=P===zb?void 0:P}else q.uri!==void 0&&(Y=q.uri.length===0?void 0:q.uri)}let Z=wb.codes.get(Number(K));O[Q+1]===`
|
|
3
|
+
`?(Y&&(B+=E1("")),K&&Z&&(B+=v1(Z))):W===`
|
|
4
|
+
`&&(K&&Z&&(B+=v1(K)),Y&&(B+=E1(Y)))}return B};function U1(m,$,S){return String(m).normalize().replace(/\r\n/g,`
|
|
5
5
|
`).split(`
|
|
6
|
-
`).map((B)=>
|
|
7
|
-
`)}var
|
|
6
|
+
`).map((B)=>Zb(B,$,S)).join(`
|
|
7
|
+
`)}var qb=["up","down","left","right","space","enter","cancel"],r={actions:new Set(qb),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]])};function X1(m,$){if(typeof m=="string")return r.aliases.get(m)===$;for(let S of m)if(S!==void 0&&X1(S,$))return!0;return!1}function Nb(m,$){if(m===$)return;let S=m.split(`
|
|
8
8
|
`),B=$.split(`
|
|
9
|
-
`),
|
|
9
|
+
`),K=[];for(let Y=0;Y<Math.max(S.length,B.length);Y++)S[Y]!==B[Y]&&K.push(Y);return K}var _b=globalThis.process.platform.startsWith("win"),x1=Symbol("clack:cancel");function J(m){return m===x1}function s(m,$){let S=m;S.isTTY&&S.setRawMode($)}function F1({input:m=M1,output:$=h1,overwrite:S=!0,hideCursor:B=!0}={}){let K=F.createInterface({input:m,output:$,prompt:"",tabSize:1});F.emitKeypressEvents(m,K),m.isTTY&&m.setRawMode(!0);let Y=(b,{name:x,sequence:O})=>{let Q=String(b);if(X1([Q,x,O],"cancel")){B&&$.write(T.cursor.show),process.exit(0);return}if(!S)return;F.moveCursor($,x==="return"?0:-1,x==="return"?-1:0,()=>{F.clearLine($,1,()=>{m.once("keypress",Y)})})};return B&&$.write(T.cursor.hide),m.once("keypress",Y),()=>{m.off("keypress",Y),B&&$.write(T.cursor.show),m.isTTY&&!_b&&m.setRawMode(!1),K.terminal=!1,K.close()}}var Gb=Object.defineProperty,jb=(m,$,S)=>($ in m)?Gb(m,$,{enumerable:!0,configurable:!0,writable:!0,value:S}):m[$]=S,E=(m,$,S)=>(jb(m,typeof $!="symbol"?$+"":$,S),S);class e{constructor(m,$=!0){E(this,"input"),E(this,"output"),E(this,"_abortSignal"),E(this,"rl"),E(this,"opts"),E(this,"_render"),E(this,"_track",!1),E(this,"_prevFrame",""),E(this,"_subscribers",new Map),E(this,"_cursor",0),E(this,"state","initial"),E(this,"error",""),E(this,"value");let{input:S=M1,output:B=h1,render:K,signal:Y,...b}=m;this.opts=b,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=K.bind(this),this._track=$,this._abortSignal=Y,this.input=S,this.output=B}unsubscribe(){this._subscribers.clear()}setSubscriber(m,$){let S=this._subscribers.get(m)??[];S.push($),this._subscribers.set(m,S)}on(m,$){this.setSubscriber(m,{cb:$})}once(m,$){this.setSubscriber(m,{cb:$,once:!0})}emit(m,...$){let S=this._subscribers.get(m)??[],B=[];for(let K of S)K.cb(...$),K.once&&B.push(()=>S.splice(S.indexOf(K),1));for(let K of B)K()}prompt(){return new Promise((m,$)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),m(x1);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}let S=new mb;S._write=(B,K,Y)=>{this._track&&(this.value=this.rl?.line.replace(/\t/g,""),this._cursor=this.rl?.cursor??0,this.emit("value",this.value)),Y()},this.input.pipe(S),this.rl=V1.createInterface({input:this.input,output:S,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),V1.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),this.opts.initialValue!==void 0&&this._track&&this.rl.write(this.opts.initialValue),this.input.on("keypress",this.onKeypress),s(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(T.cursor.show),this.output.off("resize",this.render),s(this.input,!1),m(this.value)}),this.once("cancel",()=>{this.output.write(T.cursor.show),this.output.off("resize",this.render),s(this.input,!1),m(x1)})})}onKeypress(m,$){if(this.state==="error"&&(this.state="active"),$?.name&&(!this._track&&r.aliases.has($.name)&&this.emit("cursor",r.aliases.get($.name)),r.actions.has($.name)&&this.emit("cursor",$.name)),m&&(m.toLowerCase()==="y"||m.toLowerCase()==="n")&&this.emit("confirm",m.toLowerCase()==="y"),m==="\t"&&this.opts.placeholder&&(this.value||(this.rl?.write(this.opts.placeholder),this.emit("value",this.opts.placeholder))),m&&this.emit("key",m.toLowerCase()),$?.name==="return"){if(this.opts.validate){let S=this.opts.validate(this.value);S&&(this.error=S instanceof Error?S.message:S,this.state="error",this.rl?.write(this.value))}this.state!=="error"&&(this.state="submit")}X1([m,$?.name,$?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
|
|
10
10
|
`),s(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let m=U1(this._prevFrame,process.stdout.columns,{hard:!0}).split(`
|
|
11
|
-
`).length-1;this.output.write(
|
|
12
|
-
`);this.output.write(B[S]),this._prevFrame=m,this.output.write(
|
|
11
|
+
`).length-1;this.output.write(T.cursor.move(-999,m*-1))}render(){let m=U1(this._render(this)??"",process.stdout.columns,{hard:!0});if(m!==this._prevFrame){if(this.state==="initial")this.output.write(T.cursor.hide);else{let $=Nb(this._prevFrame,m);if(this.restoreCursor(),$&&$?.length===1){let S=$[0];this.output.write(T.cursor.move(0,S)),this.output.write(T.erase.lines(1));let B=m.split(`
|
|
12
|
+
`);this.output.write(B[S]),this._prevFrame=m,this.output.write(T.cursor.move(0,B.length-S-1));return}if($&&$?.length>1){let S=$[0];this.output.write(T.cursor.move(0,S)),this.output.write(T.erase.down());let B=m.split(`
|
|
13
13
|
`).slice(S);this.output.write(B.join(`
|
|
14
|
-
`)),this._prevFrame=m;return}this.output.write(
|
|
14
|
+
`)),this._prevFrame=m;return}this.output.write(T.erase.down())}this.output.write(m),this.state==="initial"&&(this.state="active"),this._prevFrame=m}}}class w1 extends e{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(m){super(m,!1),this.value=!!m.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",($)=>{this.output.write(T.cursor.move(0,-1)),this.value=$,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}}var Lb;Lb=new WeakMap;var Tb=Object.defineProperty,Vb=(m,$,S)=>($ in m)?Tb(m,$,{enumerable:!0,configurable:!0,writable:!0,value:S}):m[$]=S,R1=(m,$,S)=>(Vb(m,typeof $!="symbol"?$+"":$,S),S);class z1 extends e{constructor(m){super(m,!1),R1(this,"options"),R1(this,"cursor",0),this.options=m.options,this.cursor=this.options.findIndex(({value:$})=>$===m.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on("cursor",($)=>{switch($){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue()})}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value}}class O1 extends e{get valueWithCursor(){if(this.state==="submit")return this.value;if(this.cursor>=this.value.length)return`${this.value}█`;let m=this.value.slice(0,this.cursor),[$,...S]=this.value.slice(this.cursor);return`${m}${f1.default.inverse($)}${S.join("")}`}get cursor(){return this._cursor}constructor(m){super(m),this.on("finalize",()=>{this.value||(this.value=m.defaultValue)})}}var H=l(B1(),1),b1=l($1(),1);import R from"node:process";function Ab(){return R.platform!=="win32"?R.env.TERM!=="linux":!!R.env.CI||!!R.env.WT_SESSION||!!R.env.TERMINUS_SUBLIME||R.env.ConEmuTask==="{cmd::Cmder}"||R.env.TERM_PROGRAM==="Terminus-Sublime"||R.env.TERM_PROGRAM==="vscode"||R.env.TERM==="xterm-256color"||R.env.TERM==="alacritty"||R.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Q1=Ab(),L=(m,$)=>Q1?m:$,Pb=L("◆","*"),p1=L("■","x"),c1=L("▲","x"),q1=L("◇","o"),kb=L("┌","T"),_=L("│","|"),c=L("└","—"),W1=L("●",">"),Z1=L("○"," "),G9=L("◻","[•]"),j9=L("◼","[+]"),L9=L("◻","[ ]"),T9=L("▪","•"),V9=L("─","-"),A9=L("╮","+"),P9=L("├","+"),k9=L("╯","+"),vb=L("●","•"),Eb=L("◆","*"),Ub=L("▲","!"),Rb=L("■","x"),N1=(m)=>{switch(m){case"initial":case"active":return H.default.cyan(Pb);case"cancel":return H.default.red(p1);case"error":return H.default.yellow(c1);case"submit":return H.default.green(q1)}},Mb=(m)=>{let{cursor:$,options:S,style:B}=m,K=m.maxItems??Number.POSITIVE_INFINITY,Y=Math.max(process.stdout.rows-4,0),b=Math.min(Y,Math.max(K,5)),x=0;$>=x+b-3?x=Math.max(Math.min($-b+3,S.length-b),0):$<x+2&&(x=Math.max($-2,0));let O=b<S.length&&x>0,Q=b<S.length&&x+b<S.length;return S.slice(x,x+b).map((W,Z,q)=>{let P=Z===0&&O,f=Z===q.length-1&&Q;return P||f?H.default.dim("..."):B(W,Z+x===$)})},z=(m)=>new O1({validate:m.validate,placeholder:m.placeholder,defaultValue:m.defaultValue,initialValue:m.initialValue,render(){let $=`${H.default.gray(_)}
|
|
15
15
|
${N1(this.state)} ${m.message}
|
|
16
|
-
`,S=m.placeholder?
|
|
17
|
-
${
|
|
18
|
-
${
|
|
19
|
-
`;case"submit":return`${$}${
|
|
20
|
-
${
|
|
21
|
-
${
|
|
22
|
-
`}}}).prompt();var p=(m)=>{let $=m.active??"Yes",S=m.inactive??"No";return new w1({active:$,inactive:S,initialValue:m.initialValue??!0,render(){let B=`${
|
|
16
|
+
`,S=m.placeholder?H.default.inverse(m.placeholder[0])+H.default.dim(m.placeholder.slice(1)):H.default.inverse(H.default.hidden("_")),B=this.value?this.valueWithCursor:S;switch(this.state){case"error":return`${$.trim()}
|
|
17
|
+
${H.default.yellow(_)} ${B}
|
|
18
|
+
${H.default.yellow(c)} ${H.default.yellow(this.error)}
|
|
19
|
+
`;case"submit":return`${$}${H.default.gray(_)} ${H.default.dim(this.value||m.placeholder)}`;case"cancel":return`${$}${H.default.gray(_)} ${H.default.strikethrough(H.default.dim(this.value??""))}${this.value?.trim()?`
|
|
20
|
+
${H.default.gray(_)}`:""}`;default:return`${$}${H.default.cyan(_)} ${B}
|
|
21
|
+
${H.default.cyan(c)}
|
|
22
|
+
`}}}).prompt();var p=(m)=>{let $=m.active??"Yes",S=m.inactive??"No";return new w1({active:$,inactive:S,initialValue:m.initialValue??!0,render(){let B=`${H.default.gray(_)}
|
|
23
23
|
${N1(this.state)} ${m.message}
|
|
24
|
-
`,
|
|
25
|
-
${
|
|
26
|
-
${
|
|
27
|
-
`}}}).prompt()},a=(m)=>{let $=(S,B)=>{let
|
|
24
|
+
`,K=this.value?$:S;switch(this.state){case"submit":return`${B}${H.default.gray(_)} ${H.default.dim(K)}`;case"cancel":return`${B}${H.default.gray(_)} ${H.default.strikethrough(H.default.dim(K))}
|
|
25
|
+
${H.default.gray(_)}`;default:return`${B}${H.default.cyan(_)} ${this.value?`${H.default.green(W1)} ${$}`:`${H.default.dim(Z1)} ${H.default.dim($)}`} ${H.default.dim("/")} ${this.value?`${H.default.dim(Z1)} ${H.default.dim(S)}`:`${H.default.green(W1)} ${S}`}
|
|
26
|
+
${H.default.cyan(c)}
|
|
27
|
+
`}}}).prompt()},a=(m)=>{let $=(S,B)=>{let K=S.label??String(S.value);switch(B){case"selected":return`${H.default.dim(K)}`;case"active":return`${H.default.green(W1)} ${K} ${S.hint?H.default.dim(`(${S.hint})`):""}`;case"cancelled":return`${H.default.strikethrough(H.default.dim(K))}`;default:return`${H.default.dim(Z1)} ${H.default.dim(K)}`}};return new z1({options:m.options,initialValue:m.initialValue,render(){let S=`${H.default.gray(_)}
|
|
28
28
|
${N1(this.state)} ${m.message}
|
|
29
|
-
`;switch(this.state){case"submit":return`${S}${
|
|
30
|
-
${
|
|
31
|
-
${
|
|
32
|
-
${
|
|
33
|
-
`}}}).prompt()};var X=(m="")=>{process.stdout.write(`${
|
|
29
|
+
`;switch(this.state){case"submit":return`${S}${H.default.gray(_)} ${$(this.options[this.cursor],"selected")}`;case"cancel":return`${S}${H.default.gray(_)} ${$(this.options[this.cursor],"cancelled")}
|
|
30
|
+
${H.default.gray(_)}`;default:return`${S}${H.default.cyan(_)} ${Mb({cursor:this.cursor,options:this.options,maxItems:m.maxItems,style:(B,K)=>$(B,K?"active":"inactive")}).join(`
|
|
31
|
+
${H.default.cyan(_)} `)}
|
|
32
|
+
${H.default.cyan(c)}
|
|
33
|
+
`}}}).prompt()};var X=(m="")=>{process.stdout.write(`${H.default.gray(c)} ${H.default.red(m)}
|
|
34
34
|
|
|
35
|
-
`)}
|
|
36
|
-
|
|
35
|
+
`)},a1=(m="")=>{process.stdout.write(`${H.default.gray(kb)} ${m}
|
|
36
|
+
`)},i1=(m="")=>{process.stdout.write(`${H.default.gray(_)}
|
|
37
|
+
${H.default.gray(c)} ${m}
|
|
37
38
|
|
|
38
|
-
`)},w={message:(m="",{symbol:$=
|
|
39
|
-
`);S.push(`${$} ${B}`,...
|
|
39
|
+
`)},w={message:(m="",{symbol:$=H.default.gray(_)}={})=>{let S=[`${H.default.gray(_)}`];if(m){let[B,...K]=m.split(`
|
|
40
|
+
`);S.push(`${$} ${B}`,...K.map((Y)=>`${H.default.gray(_)} ${Y}`))}process.stdout.write(`${S.join(`
|
|
40
41
|
`)}
|
|
41
|
-
`)},info:(m)=>{w.message(m,{symbol:
|
|
42
|
+
`)},info:(m)=>{w.message(m,{symbol:H.default.blue(vb)})},success:(m)=>{w.message(m,{symbol:H.default.green(Eb)})},step:(m)=>{w.message(m,{symbol:H.default.green(q1)})},warn:(m)=>{w.message(m,{symbol:H.default.yellow(Ub)})},warning:(m)=>{w.warn(m)},error:(m)=>{w.message(m,{symbol:H.default.red(Rb)})}},v9=`${H.default.gray(_)} `;var A=({indicator:m="dots"}={})=>{let $=Q1?["◒","◐","◓","◑"]:["•","o","O","0"],S=Q1?80:120,B=process.env.CI==="true",K,Y,b=!1,x="",O,Q=performance.now(),W=(G)=>{let j=G>1?"Something went wrong":"Canceled";b&&g(j,G)},Z=()=>W(2),q=()=>W(1),P=()=>{process.on("uncaughtExceptionMonitor",Z),process.on("unhandledRejection",Z),process.on("SIGINT",q),process.on("SIGTERM",q),process.on("exit",W)},f=()=>{process.removeListener("uncaughtExceptionMonitor",Z),process.removeListener("unhandledRejection",Z),process.removeListener("SIGINT",q),process.removeListener("SIGTERM",q),process.removeListener("exit",W)},I=()=>{if(O===void 0)return;B&&process.stdout.write(`
|
|
42
43
|
`);let G=O.split(`
|
|
43
|
-
`);process.stdout.write(b1.cursor.move(-999,G.length-1)),process.stdout.write(b1.erase.down(G.length))},
|
|
44
|
-
`);let j=0,k=0;
|
|
45
|
-
`):process.stdout.write(`${k} ${
|
|
46
|
-
`),f(),J()};return{start:C,stop:g,message:(G="")=>{Y=P(G??Y)}}};import*as y from"node-autoit-koffi";function U(m,$,S){let B=new URL($,m);for(let[J,K]of Object.entries(S)){if(K===void 0)continue;let b;if(typeof K==="boolean")b=K?"True":"False";else b=String(K);B.searchParams.append(J,b)}return B.toString()}var Ub={config:{baseUrl:"http://localhost:9999"},setBaseUrl(m){this.config.baseUrl=m},async test(){let m=U(this.config.baseUrl,"/test",{});return(await fetch(m)).json()},async change(m){let $=U(this.config.baseUrl,"/change",{serial:m.serial,filter_brand:m.filterBrand,filter_model:m.filterModel,filter_os:m.filterOs,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,lat:m.lat,long:m.long,factory_reset:m.factoryReset});return(await fetch($)).json()},async changeSimOnly(m){let $=U(this.config.baseUrl,"/changesimonly",{serial:m.serial,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,wipe:m.wipe});return(await fetch($)).json()},async changeLocationOnly(m){let $=U(this.config.baseUrl,"/changelocationonly",{serial:m.serial,lat:m.lat,long:m.long,wipe:m.wipe});return(await fetch($)).json()},async backupOnly(m){let $=U(this.config.baseUrl,"/backuponly",{serial:m.serial,note:m.note,filename:m.filename});return(await fetch($)).json()},async backup(m){let $=U(this.config.baseUrl,"/backup",{serial:m.serial,note:m.note,filename:m.filename,filter_brand:m.filterBrand,filter_model:m.filterModel,filter_os:m.filterOs,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,lat:m.lat,long:m.long,factory_reset:m.factoryReset});return(await fetch($)).json()},async getList(m){let $=U(this.config.baseUrl,"/getlist",{type:m});return(await fetch($)).json()},async restore(m){let $=U(this.config.baseUrl,"/restore",{serial:m.serial,filename:m.filename,gmail:m.gmail,lat:m.lat,long:m.long});return(await fetch($)).json()},async setProxy(m,$){let S=U(this.config.baseUrl,"/setproxy",{serial:m,proxy:$});return(await fetch(S)).json()},async clearProxy(m){let $=U(this.config.baseUrl,"/clearproxy",{serial:m});return(await fetch($)).json()},async setSocks(m,$){let S=U(this.config.baseUrl,"/setsocks",{serial:m,socks:$});return(await fetch(S)).json()},async clearSocks(m){let $=U(this.config.baseUrl,"/clearsocks",{serial:m});return(await fetch($)).json()},async getCarrier(m){let $=U(this.config.baseUrl,"/getcarrier",{country:m});return(await fetch($)).json()}},v=Ub;async function hb(){let m=await z({message:"Nhập X:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập Y:"});if(H($))X("Đã hủy thao tác."),process.exit(0);let S=parseInt(m,10),B=parseInt($,10);if(Number.isNaN(S)||Number.isNaN(B)){console.log("Tọa độ không hợp lệ. Vui lòng nhập số hợp lệ.");return}await y.mouseMove(S,B),console.log(`Đã di chuyển chuột đến (${S}, ${B})`)}async function fb(){let m=await z({message:"Nhập tiêu đề cửa sổ (title):"});if(H(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập control selector:"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Title là bắt buộc.");return}if(!$){w.error("Control selector là bắt buộc.");return}if(await y.controlClick(m,"",$)===1)w.success("Control click thành công.");else w.error("Control click thất bại.")}async function Ib(){let m=await z({message:"Nhập tiêu đề cửa sổ (title):"});if(H(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập control selector:"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Title là bắt buộc.");return}if(!$){w.error("Control selector là bắt buộc.");return}let S=await y.controlGetText(m,"",$);w.info(`Control text: ${S}`)}function gb(){try{let m=Mb.join(import.meta.dirname,"dlls","Au3Info.exe");Rb(m,[],{detached:!0,stdio:"ignore"}).unref(),w.success("Đã khởi chạy Au3Info.exe")}catch(m){w.error(`Lỗi khi khởi chạy Au3Info.exe: ${m instanceof Error?m.message:String(m)}`)}}function M(m){if(m.Success)w.success(`${m.Message} (${m.ProcessTime})`);else w.error(`${m.Message} (${m.ProcessTime})`);w.info(JSON.stringify(m,null,2))}async function yb(){let m=T();m.start("Đang kiểm tra kết nối...");try{let $=await v.test();m.stop("Hoàn thành!"),M($)}catch($){m.stop("Lỗi!"),w.error(`Lỗi: ${$ instanceof Error?$.message:String($)}`)}}async function db(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await p({message:"Bạn có muốn thêm filter không?"});if(H($))X("Đã hủy thao tác."),process.exit(0);let S,B,J,K,b,Y,O,Q,W;if($){let q=await z({message:"Filter Brand (để trống để bỏ qua):"});if(H(q))X("Đã hủy thao tác."),process.exit(0);S=q||void 0;let A=await z({message:"Filter Model (để trống để bỏ qua):"});if(H(A))X("Đã hủy thao tác."),process.exit(0);B=A||void 0;let f=await z({message:"Filter OS (để trống để bỏ qua):"});if(H(f))X("Đã hủy thao tác."),process.exit(0);J=f||void 0;let I=await z({message:"Filter Country (để trống để bỏ qua):"});if(H(I))X("Đã hủy thao tác."),process.exit(0);K=I||void 0;let P=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(H(P))X("Đã hủy thao tác."),process.exit(0);b=P||void 0;let d=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(H(d))X("Đã hủy thao tác."),process.exit(0);Y=d||void 0;let C=await z({message:"Latitude (để trống để bỏ qua):"});if(H(C))X("Đã hủy thao tác."),process.exit(0);if(C){let j=parseFloat(C);if(!Number.isNaN(j))O=j}let g=await z({message:"Longitude (để trống để bỏ qua):"});if(H(g))X("Đã hủy thao tác."),process.exit(0);if(g){let j=parseFloat(g);if(!Number.isNaN(j))Q=j}let G=await p({message:"Factory Reset?"});if(H(G))X("Đã hủy thao tác."),process.exit(0);W=G}let Z=T();Z.start("Đang thay đổi thông tin thiết bị...");try{let q=await v.change({serial:m,filterBrand:S,filterModel:B,filterOs:J,filterCountry:K,filterCarrier:b,customCarrier:Y,lat:O,long:Q,factoryReset:W});Z.stop("Hoàn thành!"),M(q)}catch(q){Z.stop("Lỗi!"),w.error(`Lỗi: ${q instanceof Error?q.message:String(q)}`)}}async function Cb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Filter Country (bắt buộc):"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Filter Country là bắt buộc.");return}let S=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(H(S))X("Đã hủy thao tác."),process.exit(0);let B=S||void 0,J=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(H(J))X("Đã hủy thao tác."),process.exit(0);let K=J||void 0,b=await p({message:"Wipe?"});if(H(b))X("Đã hủy thao tác."),process.exit(0);let Y=T();Y.start("Đang thay đổi thông tin SIM...");try{let O=await v.changeSimOnly({serial:m,filterCountry:$,filterCarrier:B,customCarrier:K,wipe:b});Y.stop("Hoàn thành!"),M(O)}catch(O){Y.stop("Lỗi!"),w.error(`Lỗi: ${O instanceof Error?O.message:String(O)}`)}}async function Fb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Latitude (bắt buộc):"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Latitude là bắt buộc.");return}let S=parseFloat($);if(Number.isNaN(S)){w.error("Latitude phải là số.");return}let B=await z({message:"Longitude (bắt buộc):"});if(H(B))X("Đã hủy thao tác."),process.exit(0);if(!B){w.error("Longitude là bắt buộc.");return}let J=parseFloat(B);if(Number.isNaN(J)){w.error("Longitude phải là số.");return}let K=await p({message:"Wipe?"});if(H(K))X("Đã hủy thao tác."),process.exit(0);let b=T();b.start("Đang thay đổi vị trí...");try{let Y=await v.changeLocationOnly({serial:m,lat:S,long:J,wipe:K});b.stop("Hoàn thành!"),M(Y)}catch(Y){b.stop("Lỗi!"),w.error(`Lỗi: ${Y instanceof Error?Y.message:String(Y)}`)}}async function pb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Note (để trống để bỏ qua):"});if(H($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Filename (để trống để bỏ qua):"});if(H(B))X("Đã hủy thao tác."),process.exit(0);let J=B||void 0,K=T();K.start("Đang backup dữ liệu...");try{let b=await v.backupOnly({serial:m,note:S,filename:J});K.stop("Hoàn thành!"),M(b)}catch(b){K.stop("Lỗi!"),w.error(`Lỗi: ${b instanceof Error?b.message:String(b)}`)}}async function cb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Note (để trống để bỏ qua):"});if(H($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Filename (để trống để bỏ qua):"});if(H(B))X("Đã hủy thao tác."),process.exit(0);let J=B||void 0,K=await p({message:"Bạn có muốn thêm filter không?"});if(H(K))X("Đã hủy thao tác."),process.exit(0);let b,Y,O,Q,W,Z,q,A,f;if(K){let P=await z({message:"Filter Brand (để trống để bỏ qua):"});if(H(P))X("Đã hủy thao tác."),process.exit(0);b=P||void 0;let d=await z({message:"Filter Model (để trống để bỏ qua):"});if(H(d))X("Đã hủy thao tác."),process.exit(0);Y=d||void 0;let C=await z({message:"Filter OS (để trống để bỏ qua):"});if(H(C))X("Đã hủy thao tác."),process.exit(0);O=C||void 0;let g=await z({message:"Filter Country (để trống để bỏ qua):"});if(H(g))X("Đã hủy thao tác."),process.exit(0);Q=g||void 0;let G=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(H(G))X("Đã hủy thao tác."),process.exit(0);W=G||void 0;let j=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(H(j))X("Đã hủy thao tác."),process.exit(0);Z=j||void 0;let k=await z({message:"Latitude (để trống để bỏ qua):"});if(H(k))X("Đã hủy thao tác."),process.exit(0);if(k){let i=parseFloat(k);if(!Number.isNaN(i))q=i}let h=await z({message:"Longitude (để trống để bỏ qua):"});if(H(h))X("Đã hủy thao tác."),process.exit(0);if(h){let i=parseFloat(h);if(!Number.isNaN(i))A=i}let D=await p({message:"Factory Reset?"});if(H(D))X("Đã hủy thao tác."),process.exit(0);f=D}let I=T();I.start("Đang backup và thay đổi thông tin...");try{let P=await v.backup({serial:m,note:S,filename:J,filterBrand:b,filterModel:Y,filterOs:O,filterCountry:Q,filterCarrier:W,customCarrier:Z,lat:q,long:A,factoryReset:f});I.stop("Hoàn thành!"),M(P)}catch(P){I.stop("Lỗi!"),w.error(`Lỗi: ${P instanceof Error?P.message:String(P)}`)}}async function ab(){let m=await a({message:"Chọn loại thiết bị:",options:[{value:"all",label:"All"},{value:"XiaomiA1",label:"Xiaomi A1"},{value:"XiaomiA1New",label:"Xiaomi A1 New"},{value:"SamsungS9",label:"Samsung S9"},{value:"SamsungS9New",label:"Samsung S9 New"},{value:"Pixel3",label:"Pixel 3"},{value:"Pixel3XL",label:"Pixel 3 XL"},{value:"Pixel3a",label:"Pixel 3a"},{value:"Pixel3aXL",label:"Pixel 3a XL"},{value:"Pixel4",label:"Pixel 4"},{value:"Pixel4XL",label:"Pixel 4 XL"}]});if(H(m))X("Đã hủy thao tác."),process.exit(0);let $=T();$.start("Đang lấy danh sách backup...");try{let S=await v.getList(m);$.stop("Hoàn thành!"),w.success(`Tìm thấy ${S.length} file backup.`),w.info(JSON.stringify(S,null,2))}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function ib(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Filename (để trống để bỏ qua):"});if(H($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Gmail (để trống để bỏ qua):"});if(H(B))X("Đã hủy thao tác."),process.exit(0);let J=B||void 0,K=await z({message:"Latitude (để trống để bỏ qua):"});if(H(K))X("Đã hủy thao tác."),process.exit(0);let b;if(K){let W=parseFloat(K);if(!Number.isNaN(W))b=W}let Y=await z({message:"Longitude (để trống để bỏ qua):"});if(H(Y))X("Đã hủy thao tác."),process.exit(0);let O;if(Y){let W=parseFloat(Y);if(!Number.isNaN(W))O=W}let Q=T();Q.start("Đang restore dữ liệu...");try{let W=await v.restore({serial:m,filename:S,gmail:J,lat:b,long:O});Q.stop("Hoàn thành!"),M(W)}catch(W){Q.stop("Lỗi!"),w.error(`Lỗi: ${W instanceof Error?W.message:String(W)}`)}}async function ob(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Proxy (HOST:PORT):"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Proxy là bắt buộc.");return}let S=T();S.start("Đang cài đặt proxy...");try{let B=await v.setProxy(m,$);S.stop("Hoàn thành!"),M(B)}catch(B){S.stop("Lỗi!"),w.error(`Lỗi: ${B instanceof Error?B.message:String(B)}`)}}async function Db(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=T();$.start("Đang xóa proxy...");try{let S=await v.clearProxy(m);$.stop("Hoàn thành!"),M(S)}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function lb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"SOCKS5 (HOST:PORT hoặc HOST:PORT:USER:PASSWORD):"});if(H($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("SOCKS5 là bắt buộc.");return}let S=T();S.start("Đang cài đặt SOCKS5...");try{let B=await v.setSocks(m,$);S.stop("Hoàn thành!"),M(B)}catch(B){S.stop("Lỗi!"),w.error(`Lỗi: ${B instanceof Error?B.message:String(B)}`)}}async function nb(){let m=await z({message:"Nhập serial thiết bị:"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=T();$.start("Đang xóa SOCKS5...");try{let S=await v.clearSocks(m);$.stop("Hoàn thành!"),M(S)}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function ub(){let m=await z({message:"Country code (vd: us, vn, all):"});if(H(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Country code là bắt buộc.");return}let $=T();$.start("Đang lấy danh sách nhà mạng...");try{let S=await v.getCarrier(m);$.stop("Hoàn thành!"),w.success(`Tìm thấy ${S.length} nhà mạng.`);for(let B of S)w.info(`${B.CountryName} (${B.CountryIso}) - ${B.CarrierName} [MCC: ${B.Mcc}, MNC: ${B.Mnc}]`);if(S.length===0)w.info("Không tìm thấy carrier nào.");w.info(JSON.stringify(S,null,2))}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function sb(){let m=!0;while(m){let $=await a({message:"MiChanger Menu:",options:[{value:"test",label:"Test Connection"},{value:"change",label:"Change Device Info"},{value:"change-sim",label:"Change SIM Only"},{value:"change-location",label:"Change Location Only"},{value:"backup-only",label:"Backup Only"},{value:"backup",label:"Backup & Change"},{value:"get-list",label:"Get Backup List"},{value:"restore",label:"Restore"},{value:"set-proxy",label:"Set Proxy"},{value:"clear-proxy",label:"Clear Proxy"},{value:"set-socks",label:"Set SOCKS5"},{value:"clear-socks",label:"Clear SOCKS5"},{value:"get-carrier",label:"Get Carriers"},{value:"back",label:"← Quay lại"}]});if(H($))X("Đã hủy thao tác."),process.exit(0);switch($){case"test":await yb();break;case"change":await db();break;case"change-sim":await Cb();break;case"change-location":await Fb();break;case"backup-only":await pb();break;case"backup":await cb();break;case"get-list":await ab();break;case"restore":await ib();break;case"set-proxy":await ob();break;case"clear-proxy":await Db();break;case"set-socks":await lb();break;case"clear-socks":await nb();break;case"get-carrier":await ub();break;case"back":m=!1;break}}}async function rb(){let m=T();m.start("Đang kiểm tra AutoIt...");try{await y.mouseMove(0,0,0),m.stop("AutoIt đang hoạt động!"),w.success("AutoIt library đã được load và hoạt động bình thường.")}catch($){m.stop("Lỗi!"),w.error(`AutoIt không hoạt động: ${$ instanceof Error?$.message:String($)}`)}}async function tb(){let m=!0;while(m){let $=await a({message:"Check Menu:",options:[{value:"autoit",label:"AutoIT"},{value:"back",label:"← Quay lại"}]});if(H($))X("Đã hủy thao tác."),process.exit(0);switch($){case"autoit":await rb();break;case"back":m=!1;break}}}async function eb(){let m=await a({message:"Dev Menu:",options:[{value:"check",label:"Check"},{value:"michanger",label:"MiChanger"},{value:"move",label:"Di chuyển chuột"},{value:"control-click",label:"Control Click"},{value:"control-get-text",label:"Control Get Text"},{value:"au3info",label:"Run Au3Info"},{value:"back",label:"← Quay lại"}]});if(H(m))X("Đã hủy thao tác."),process.exit(0);switch(m){case"check":await tb();break;case"michanger":await sb();break;case"move":await hb();break;case"control-click":await fb();break;case"control-get-text":await Ib();break;case"au3info":gb();break;case"back":break}}async function b9(){let m=!0;while(m){let $=await a({message:"Chọn tùy chọn:",options:[{value:"dev",label:"Dev"},{value:"exit",label:"Thoát"}]});if(H($))X("Đã hủy thao tác."),process.exit(0);switch($){case"dev":await eb();break;case"exit":m=!1;break}}}async function m9(){await y.init(),await b9(),a1("Tạm biệt!")}m9().catch(console.error);
|
|
44
|
+
`);process.stdout.write(b1.cursor.move(-999,G.length-1)),process.stdout.write(b1.erase.down(G.length))},V=(G)=>G.replace(/\.+$/,""),d=(G)=>{let j=(performance.now()-G)/1000,k=Math.floor(j/60),h=Math.floor(j%60);return k>0?`[${k}m ${h}s]`:`[${h}s]`},C=(G="")=>{b=!0,K=F1(),x=V(G),Q=performance.now(),process.stdout.write(`${H.default.gray(_)}
|
|
45
|
+
`);let j=0,k=0;P(),Y=setInterval(()=>{if(B&&x===O)return;I(),O=x;let h=H.default.magenta($[j]);if(B)process.stdout.write(`${h} ${x}...`);else if(m==="timer")process.stdout.write(`${h} ${x} ${d(Q)}`);else{let o=".".repeat(Math.floor(k)).slice(0,3);process.stdout.write(`${h} ${x}${o}`)}j=j+1<$.length?j+1:0,k=k<$.length?k+0.125:0},S)},g=(G="",j=0)=>{b=!1,clearInterval(Y),I();let k=j===0?H.default.green(q1):j===1?H.default.red(p1):H.default.red(c1);x=V(G??x),m==="timer"?process.stdout.write(`${k} ${x} ${d(Q)}
|
|
46
|
+
`):process.stdout.write(`${k} ${x}
|
|
47
|
+
`),f(),K()};return{start:C,stop:g,message:(G="")=>{x=V(G??x)}}};import*as y from"node-autoit-koffi";function U(m,$,S){let B=new URL($,m);for(let[K,Y]of Object.entries(S)){if(Y===void 0)continue;let b;if(typeof Y==="boolean")b=Y?"True":"False";else b=String(Y);B.searchParams.append(K,b)}return B.toString()}var hb={config:{baseUrl:"http://localhost:9999"},setBaseUrl(m){this.config.baseUrl=m},async test(){let m=U(this.config.baseUrl,"/test",{});return(await fetch(m)).json()},async change(m){let $=U(this.config.baseUrl,"/change",{serial:m.serial,filter_brand:m.filterBrand,filter_model:m.filterModel,filter_os:m.filterOs,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,lat:m.lat,long:m.long,factory_reset:m.factoryReset});return(await fetch($)).json()},async changeSimOnly(m){let $=U(this.config.baseUrl,"/changesimonly",{serial:m.serial,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,wipe:m.wipe});return(await fetch($)).json()},async changeLocationOnly(m){let $=U(this.config.baseUrl,"/changelocationonly",{serial:m.serial,lat:m.lat,long:m.long,wipe:m.wipe});return(await fetch($)).json()},async backupOnly(m){let $=U(this.config.baseUrl,"/backuponly",{serial:m.serial,note:m.note,filename:m.filename});return(await fetch($)).json()},async backup(m){let $=U(this.config.baseUrl,"/backup",{serial:m.serial,note:m.note,filename:m.filename,filter_brand:m.filterBrand,filter_model:m.filterModel,filter_os:m.filterOs,filter_country:m.filterCountry,filter_carrier:m.filterCarrier,custom_carrier:m.customCarrier,lat:m.lat,long:m.long,factory_reset:m.factoryReset});return(await fetch($)).json()},async getList(m){let $=U(this.config.baseUrl,"/getlist",{type:m});return(await fetch($)).json()},async restore(m){let $=U(this.config.baseUrl,"/restore",{serial:m.serial,filename:m.filename,gmail:m.gmail,lat:m.lat,long:m.long});return(await fetch($)).json()},async setProxy(m,$){let S=U(this.config.baseUrl,"/setproxy",{serial:m,proxy:$});return(await fetch(S)).json()},async clearProxy(m){let $=U(this.config.baseUrl,"/clearproxy",{serial:m});return(await fetch($)).json()},async setSocks(m,$){let S=U(this.config.baseUrl,"/setsocks",{serial:m,socks:$});return(await fetch(S)).json()},async clearSocks(m){let $=U(this.config.baseUrl,"/clearsocks",{serial:m});return(await fetch($)).json()},async getCarrier(m){let $=U(this.config.baseUrl,"/getcarrier",{country:m});return(await fetch($)).json()}},v=hb;function gb(){try{let m=D1.join(import.meta.dirname,"..","package.json");return JSON.parse(Ib.readFileSync(m,"utf-8")).version}catch{return"unknown"}}async function yb(){let m=await z({message:"Nhập X:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập Y:"});if(J($))X("Đã hủy thao tác."),process.exit(0);let S=parseInt(m,10),B=parseInt($,10);if(Number.isNaN(S)||Number.isNaN(B)){console.log("Tọa độ không hợp lệ. Vui lòng nhập số hợp lệ.");return}await y.mouseMove(S,B),console.log(`Đã di chuyển chuột đến (${S}, ${B})`)}async function db(){let m=await z({message:"Nhập tiêu đề cửa sổ (title):"});if(J(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập control selector:"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Title là bắt buộc.");return}if(!$){w.error("Control selector là bắt buộc.");return}if(await y.controlClick(m,"",$)===1)w.success("Control click thành công.");else w.error("Control click thất bại.")}async function Cb(){let m=await z({message:"Nhập tiêu đề cửa sổ (title):"});if(J(m))X("Đã hủy thao tác."),process.exit(0);let $=await z({message:"Nhập control selector:"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Title là bắt buộc.");return}if(!$){w.error("Control selector là bắt buộc.");return}let S=await y.controlGetText(m,"",$);w.info(`Control text: ${S}`)}function Fb(){try{let m=D1.join(import.meta.dirname,"dlls","Au3Info.exe");fb(m,[],{detached:!0,stdio:"ignore"}).unref(),w.success("Đã khởi chạy Au3Info.exe")}catch(m){w.error(`Lỗi khi khởi chạy Au3Info.exe: ${m instanceof Error?m.message:String(m)}`)}}function M(m){if(m.Success)w.success(`${m.Message} (${m.ProcessTime})`);else w.error(`${m.Message} (${m.ProcessTime})`);w.info(JSON.stringify(m,null,2))}async function pb(){let m=A();m.start("Đang kiểm tra kết nối...");try{let $=await v.test();m.stop("Hoàn thành!"),M($)}catch($){m.stop("Lỗi!"),w.error(`Lỗi: ${$ instanceof Error?$.message:String($)}`)}}async function cb(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await p({message:"Bạn có muốn thêm filter không?"});if(J($))X("Đã hủy thao tác."),process.exit(0);let S,B,K,Y,b,x,O,Q,W;if($){let q=await z({message:"Filter Brand (để trống để bỏ qua):"});if(J(q))X("Đã hủy thao tác."),process.exit(0);S=q||void 0;let P=await z({message:"Filter Model (để trống để bỏ qua):"});if(J(P))X("Đã hủy thao tác."),process.exit(0);B=P||void 0;let f=await z({message:"Filter OS (để trống để bỏ qua):"});if(J(f))X("Đã hủy thao tác."),process.exit(0);K=f||void 0;let I=await z({message:"Filter Country (để trống để bỏ qua):"});if(J(I))X("Đã hủy thao tác."),process.exit(0);Y=I||void 0;let V=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(J(V))X("Đã hủy thao tác."),process.exit(0);b=V||void 0;let d=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(J(d))X("Đã hủy thao tác."),process.exit(0);x=d||void 0;let C=await z({message:"Latitude (để trống để bỏ qua):"});if(J(C))X("Đã hủy thao tác."),process.exit(0);if(C){let j=parseFloat(C);if(!Number.isNaN(j))O=j}let g=await z({message:"Longitude (để trống để bỏ qua):"});if(J(g))X("Đã hủy thao tác."),process.exit(0);if(g){let j=parseFloat(g);if(!Number.isNaN(j))Q=j}let G=await p({message:"Factory Reset?"});if(J(G))X("Đã hủy thao tác."),process.exit(0);W=G}let Z=A();Z.start("Đang thay đổi thông tin thiết bị...");try{let q=await v.change({serial:m,filterBrand:S,filterModel:B,filterOs:K,filterCountry:Y,filterCarrier:b,customCarrier:x,lat:O,long:Q,factoryReset:W});Z.stop("Hoàn thành!"),M(q)}catch(q){Z.stop("Lỗi!"),w.error(`Lỗi: ${q instanceof Error?q.message:String(q)}`)}}async function ab(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Filter Country (bắt buộc):"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Filter Country là bắt buộc.");return}let S=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(J(S))X("Đã hủy thao tác."),process.exit(0);let B=S||void 0,K=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(J(K))X("Đã hủy thao tác."),process.exit(0);let Y=K||void 0,b=await p({message:"Wipe?"});if(J(b))X("Đã hủy thao tác."),process.exit(0);let x=A();x.start("Đang thay đổi thông tin SIM...");try{let O=await v.changeSimOnly({serial:m,filterCountry:$,filterCarrier:B,customCarrier:Y,wipe:b});x.stop("Hoàn thành!"),M(O)}catch(O){x.stop("Lỗi!"),w.error(`Lỗi: ${O instanceof Error?O.message:String(O)}`)}}async function ib(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Latitude (bắt buộc):"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Latitude là bắt buộc.");return}let S=parseFloat($);if(Number.isNaN(S)){w.error("Latitude phải là số.");return}let B=await z({message:"Longitude (bắt buộc):"});if(J(B))X("Đã hủy thao tác."),process.exit(0);if(!B){w.error("Longitude là bắt buộc.");return}let K=parseFloat(B);if(Number.isNaN(K)){w.error("Longitude phải là số.");return}let Y=await p({message:"Wipe?"});if(J(Y))X("Đã hủy thao tác."),process.exit(0);let b=A();b.start("Đang thay đổi vị trí...");try{let x=await v.changeLocationOnly({serial:m,lat:S,long:K,wipe:Y});b.stop("Hoàn thành!"),M(x)}catch(x){b.stop("Lỗi!"),w.error(`Lỗi: ${x instanceof Error?x.message:String(x)}`)}}async function Db(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Note (để trống để bỏ qua):"});if(J($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Filename (để trống để bỏ qua):"});if(J(B))X("Đã hủy thao tác."),process.exit(0);let K=B||void 0,Y=A();Y.start("Đang backup dữ liệu...");try{let b=await v.backupOnly({serial:m,note:S,filename:K});Y.stop("Hoàn thành!"),M(b)}catch(b){Y.stop("Lỗi!"),w.error(`Lỗi: ${b instanceof Error?b.message:String(b)}`)}}async function ob(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Note (để trống để bỏ qua):"});if(J($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Filename (để trống để bỏ qua):"});if(J(B))X("Đã hủy thao tác."),process.exit(0);let K=B||void 0,Y=await p({message:"Bạn có muốn thêm filter không?"});if(J(Y))X("Đã hủy thao tác."),process.exit(0);let b,x,O,Q,W,Z,q,P,f;if(Y){let V=await z({message:"Filter Brand (để trống để bỏ qua):"});if(J(V))X("Đã hủy thao tác."),process.exit(0);b=V||void 0;let d=await z({message:"Filter Model (để trống để bỏ qua):"});if(J(d))X("Đã hủy thao tác."),process.exit(0);x=d||void 0;let C=await z({message:"Filter OS (để trống để bỏ qua):"});if(J(C))X("Đã hủy thao tác."),process.exit(0);O=C||void 0;let g=await z({message:"Filter Country (để trống để bỏ qua):"});if(J(g))X("Đã hủy thao tác."),process.exit(0);Q=g||void 0;let G=await z({message:"Filter Carrier (để trống để bỏ qua):"});if(J(G))X("Đã hủy thao tác."),process.exit(0);W=G||void 0;let j=await z({message:"Custom Carrier (để trống để bỏ qua):"});if(J(j))X("Đã hủy thao tác."),process.exit(0);Z=j||void 0;let k=await z({message:"Latitude (để trống để bỏ qua):"});if(J(k))X("Đã hủy thao tác."),process.exit(0);if(k){let i=parseFloat(k);if(!Number.isNaN(i))q=i}let h=await z({message:"Longitude (để trống để bỏ qua):"});if(J(h))X("Đã hủy thao tác."),process.exit(0);if(h){let i=parseFloat(h);if(!Number.isNaN(i))P=i}let o=await p({message:"Factory Reset?"});if(J(o))X("Đã hủy thao tác."),process.exit(0);f=o}let I=A();I.start("Đang backup và thay đổi thông tin...");try{let V=await v.backup({serial:m,note:S,filename:K,filterBrand:b,filterModel:x,filterOs:O,filterCountry:Q,filterCarrier:W,customCarrier:Z,lat:q,long:P,factoryReset:f});I.stop("Hoàn thành!"),M(V)}catch(V){I.stop("Lỗi!"),w.error(`Lỗi: ${V instanceof Error?V.message:String(V)}`)}}async function lb(){let m=await a({message:"Chọn loại thiết bị:",options:[{value:"all",label:"All"},{value:"XiaomiA1",label:"Xiaomi A1"},{value:"XiaomiA1New",label:"Xiaomi A1 New"},{value:"SamsungS9",label:"Samsung S9"},{value:"SamsungS9New",label:"Samsung S9 New"},{value:"Pixel3",label:"Pixel 3"},{value:"Pixel3XL",label:"Pixel 3 XL"},{value:"Pixel3a",label:"Pixel 3a"},{value:"Pixel3aXL",label:"Pixel 3a XL"},{value:"Pixel4",label:"Pixel 4"},{value:"Pixel4XL",label:"Pixel 4 XL"}]});if(J(m))X("Đã hủy thao tác."),process.exit(0);let $=A();$.start("Đang lấy danh sách backup...");try{let S=await v.getList(m);$.stop("Hoàn thành!"),w.success(`Tìm thấy ${S.length} file backup.`),w.info(JSON.stringify(S,null,2))}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function ub(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Filename (để trống để bỏ qua):"});if(J($))X("Đã hủy thao tác."),process.exit(0);let S=$||void 0,B=await z({message:"Gmail (để trống để bỏ qua):"});if(J(B))X("Đã hủy thao tác."),process.exit(0);let K=B||void 0,Y=await z({message:"Latitude (để trống để bỏ qua):"});if(J(Y))X("Đã hủy thao tác."),process.exit(0);let b;if(Y){let W=parseFloat(Y);if(!Number.isNaN(W))b=W}let x=await z({message:"Longitude (để trống để bỏ qua):"});if(J(x))X("Đã hủy thao tác."),process.exit(0);let O;if(x){let W=parseFloat(x);if(!Number.isNaN(W))O=W}let Q=A();Q.start("Đang restore dữ liệu...");try{let W=await v.restore({serial:m,filename:S,gmail:K,lat:b,long:O});Q.stop("Hoàn thành!"),M(W)}catch(W){Q.stop("Lỗi!"),w.error(`Lỗi: ${W instanceof Error?W.message:String(W)}`)}}async function nb(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"Proxy (HOST:PORT):"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("Proxy là bắt buộc.");return}let S=A();S.start("Đang cài đặt proxy...");try{let B=await v.setProxy(m,$);S.stop("Hoàn thành!"),M(B)}catch(B){S.stop("Lỗi!"),w.error(`Lỗi: ${B instanceof Error?B.message:String(B)}`)}}async function sb(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=A();$.start("Đang xóa proxy...");try{let S=await v.clearProxy(m);$.stop("Hoàn thành!"),M(S)}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function rb(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=await z({message:"SOCKS5 (HOST:PORT hoặc HOST:PORT:USER:PASSWORD):"});if(J($))X("Đã hủy thao tác."),process.exit(0);if(!$){w.error("SOCKS5 là bắt buộc.");return}let S=A();S.start("Đang cài đặt SOCKS5...");try{let B=await v.setSocks(m,$);S.stop("Hoàn thành!"),M(B)}catch(B){S.stop("Lỗi!"),w.error(`Lỗi: ${B instanceof Error?B.message:String(B)}`)}}async function tb(){let m=await z({message:"Nhập serial thiết bị:"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Serial là bắt buộc.");return}let $=A();$.start("Đang xóa SOCKS5...");try{let S=await v.clearSocks(m);$.stop("Hoàn thành!"),M(S)}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function eb(){let m=await z({message:"Country code (vd: us, vn, all):"});if(J(m))X("Đã hủy thao tác."),process.exit(0);if(!m){w.error("Country code là bắt buộc.");return}let $=A();$.start("Đang lấy danh sách nhà mạng...");try{let S=await v.getCarrier(m);$.stop("Hoàn thành!"),w.success(`Tìm thấy ${S.length} nhà mạng.`);for(let B of S)w.info(`${B.CountryName} (${B.CountryIso}) - ${B.CarrierName} [MCC: ${B.Mcc}, MNC: ${B.Mnc}]`);if(S.length===0)w.info("Không tìm thấy carrier nào.");w.info(JSON.stringify(S,null,2))}catch(S){$.stop("Lỗi!"),w.error(`Lỗi: ${S instanceof Error?S.message:String(S)}`)}}async function b9(){let m=!0;while(m){let $=await a({message:"MiChanger Menu:",options:[{value:"test",label:"Test Connection"},{value:"change",label:"Change Device Info"},{value:"change-sim",label:"Change SIM Only"},{value:"change-location",label:"Change Location Only"},{value:"backup-only",label:"Backup Only"},{value:"backup",label:"Backup & Change"},{value:"get-list",label:"Get Backup List"},{value:"restore",label:"Restore"},{value:"set-proxy",label:"Set Proxy"},{value:"clear-proxy",label:"Clear Proxy"},{value:"set-socks",label:"Set SOCKS5"},{value:"clear-socks",label:"Clear SOCKS5"},{value:"get-carrier",label:"Get Carriers"},{value:"back",label:"← Quay lại"}]});if(J($))X("Đã hủy thao tác."),process.exit(0);switch($){case"test":await pb();break;case"change":await cb();break;case"change-sim":await ab();break;case"change-location":await ib();break;case"backup-only":await Db();break;case"backup":await ob();break;case"get-list":await lb();break;case"restore":await ub();break;case"set-proxy":await nb();break;case"clear-proxy":await sb();break;case"set-socks":await rb();break;case"clear-socks":await tb();break;case"get-carrier":await eb();break;case"back":m=!1;break}}}async function m9(){let m=A();m.start("Đang kiểm tra AutoIt...");try{await y.mouseMove(0,0,0),m.stop("AutoIt đang hoạt động!"),w.success("AutoIt library đã được load và hoạt động bình thường.")}catch($){m.stop("Lỗi!"),w.error(`AutoIt không hoạt động: ${$ instanceof Error?$.message:String($)}`)}}async function $9(){let m=!0;while(m){let $=await a({message:"Check Menu:",options:[{value:"autoit",label:"AutoIT"},{value:"back",label:"← Quay lại"}]});if(J($))X("Đã hủy thao tác."),process.exit(0);switch($){case"autoit":await m9();break;case"back":m=!1;break}}}async function S9(){let m=await a({message:"Dev Menu:",options:[{value:"check",label:"Check"},{value:"michanger",label:"MiChanger"},{value:"move",label:"Di chuyển chuột"},{value:"control-click",label:"Control Click"},{value:"control-get-text",label:"Control Get Text"},{value:"au3info",label:"Run Au3Info"},{value:"back",label:"← Quay lại"}]});if(J(m))X("Đã hủy thao tác."),process.exit(0);switch(m){case"check":await $9();break;case"michanger":await b9();break;case"move":await yb();break;case"control-click":await db();break;case"control-get-text":await Cb();break;case"au3info":Fb();break;case"back":break}}async function B9(){let m=!0;while(m){let $=await a({message:"Chọn tùy chọn:",options:[{value:"dev",label:"Dev"},{value:"exit",label:"Thoát"}]});if(J($))X("Đã hủy thao tác."),process.exit(0);switch($){case"dev":await S9();break;case"exit":m=!1;break}}}async function K9(){a1(`MMO Android CC Checker Automation v${gb()}`),await y.init(),await B9(),i1("Tạm biệt!")}K9().catch(console.error);
|