@scheduler-systems/gal-cli 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.cjs +18 -18
  2. package/package.json +7 -3
package/dist/index.cjs CHANGED
@@ -21,17 +21,17 @@ Expecting one of '${o.join("', '")}'`);return this._lifeCycleHooks[e]?this._life
21
21
  `),this.outputHelp({error:!0}));let o=n||{},r=o.exitCode||1,i=o.code||"commander.error";this._exit(r,i,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in E.env){let n=e.attributeName();(this.getOptionValue(n)===void 0||["default","config","env"].includes(this.getOptionValueSource(n)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,E.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new Qn(this.options),n=o=>this.getOptionValue(o)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(o));this.options.filter(o=>o.implied!==void 0&&n(o.attributeName())&&e.valueFromOption(this.getOptionValue(o.attributeName()),o)).forEach(o=>{Object.keys(o.implied).filter(r=>!n(r)).forEach(r=>{this.setOptionValueWithSource(r,o.implied[r],"implied")})})}missingArgument(e){let n=`error: missing required argument '${e}'`;this.error(n,{code:"commander.missingArgument"})}optionMissingArgument(e){let n=`error: option '${e.flags}' argument missing`;this.error(n,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let n=`error: required option '${e.flags}' not specified`;this.error(n,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,n){let o=s=>{let u=s.attributeName(),l=this.getOptionValue(u),D=this.options.find(h=>h.negate&&u===h.attributeName()),c=this.options.find(h=>!h.negate&&u===h.attributeName());return D&&(D.presetArg===void 0&&l===!1||D.presetArg!==void 0&&l===D.presetArg)?D:c||s},r=s=>{let u=o(s),l=u.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${u.envVar}'`:`option '${u.flags}'`},i=`error: ${r(e)} cannot be used with ${r(n)}`;this.error(i,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let n="";if(e.startsWith("--")&&this._showSuggestionAfterError){let r=[],i=this;do{let s=i.createHelp().visibleOptions(i).filter(u=>u.long).map(u=>u.long);r=r.concat(s),i=i.parent}while(i&&!i._enablePositionalOptions);n=vt(e,r)}let o=`error: unknown option '${e}'${n}`;this.error(o,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let n=this.registeredArguments.length,o=n===1?"":"s",i=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${n} argument${o} but got ${e.length}.`;this.error(i,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],n="";if(this._showSuggestionAfterError){let r=[];this.createHelp().visibleCommands(this).forEach(i=>{r.push(i.name()),i.alias()&&r.push(i.alias())}),n=vt(e,r)}let o=`error: unknown command '${e}'${n}`;this.error(o,{code:"commander.unknownCommand"})}version(e,n,o){if(e===void 0)return this._version;this._version=e,n=n||"-V, --version",o=o||"output the version number";let r=this.createOption(n,o);return this._versionOptionName=r.attributeName(),this._registerOption(r),this.on("option:"+r.name(),()=>{this._outputConfiguration.writeOut(`${e}
22
22
  `),this._exit(0,"commander.version",e)}),this}description(e,n){return e===void 0&&n===void 0?this._description:(this._description=e,n&&(this._argsDescription=n),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let n=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(n=this.commands[this.commands.length-1]),e===n._name)throw new Error("Command alias can't be the same as its name");let o=this.parent?._findCommand(e);if(o){let r=[o.name()].concat(o.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${r}'`)}return n._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(n=>this.alias(n)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let n=this.registeredArguments.map(o=>Jn(o));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?n:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=N.basename(e,N.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let n=this.createHelp();return n.helpWidth===void 0&&(n.helpWidth=e&&e.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth()),n.formatHelp(this,n)}_getHelpContext(e){e=e||{};let n={error:!!e.error},o;return n.error?o=r=>this._outputConfiguration.writeErr(r):o=r=>this._outputConfiguration.writeOut(r),n.write=e.write||o,n.command=this,n}outputHelp(e){let n;typeof e=="function"&&(n=e,e=void 0);let o=this._getHelpContext(e);this._getCommandAndAncestors().reverse().forEach(i=>i.emit("beforeAllHelp",o)),this.emit("beforeHelp",o);let r=this.helpInformation(o);if(n&&(r=n(r),typeof r!="string"&&!Buffer.isBuffer(r)))throw new Error("outputHelp callback must return a string or a Buffer");o.write(r),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",o),this._getCommandAndAncestors().forEach(i=>i.emit("afterAllHelp",o))}helpOption(e,n){return typeof e=="boolean"?(e?this._helpOption=this._helpOption??void 0:this._helpOption=null,this):(e=e??"-h, --help",n=n??"display help for command",this._helpOption=this.createOption(e,n),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this}help(e){this.outputHelp(e);let n=E.exitCode||0;n===0&&e&&typeof e!="function"&&e.error&&(n=1),this._exit(n,"commander.help","(outputHelp)")}addHelpText(e,n){let o=["beforeAll","before","after","afterAll"];if(!o.includes(e))throw new Error(`Unexpected value for position to addHelpText.
23
23
  Expecting one of '${o.join("', '")}'`);let r=`${e}Help`;return this.on(r,i=>{let s;typeof n=="function"?s=n({error:i.error,command:i.command}):s=n,s&&i.write(`${s}
24
- `)}),this}_outputHelpIfRequested(e){let n=this._getHelpOption();n&&e.find(r=>n.is(r))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function bt(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let n,o="127.0.0.1",r="9229",i;return(i=e.match(/^(--inspect(-brk)?)$/))!==null?n=i[1]:(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(n=i[1],/^\d+$/.test(i[3])?r=i[3]:o=i[3]):(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(n=i[1],o=i[3],r=i[4]),n&&r!=="0"?`${n}=${o}:${parseInt(r)+1}`:e})}Ot.Command=Ne});var kt=B(w=>{var{Argument:wt}=le(),{Command:Le}=Bt(),{CommanderError:Xn,InvalidArgumentError:xt}=J(),{Help:Zn}=xe(),{Option:St}=Pe();w.program=new Le;w.createCommand=t=>new Le(t);w.createOption=(t,e)=>new St(t,e);w.createArgument=(t,e)=>new wt(t,e);w.Command=Le;w.Option=St;w.Argument=wt;w.Help=Zn;w.CommanderError=Xn;w.InvalidArgumentError=xt;w.InvalidOptionArgumentError=xt});var Pt=B((Hr,eo)=>{eo.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Lt=B((Vr,L)=>{var Ue=require("fs"),ce=require("path"),to=require("os"),no=require("crypto"),oo=Pt(),je=oo.version,ro=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function io(t){let e={},n=t.toString();n=n.replace(/\r\n?/mg,`
24
+ `)}),this}_outputHelpIfRequested(e){let n=this._getHelpOption();n&&e.find(r=>n.is(r))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function bt(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let n,o="127.0.0.1",r="9229",i;return(i=e.match(/^(--inspect(-brk)?)$/))!==null?n=i[1]:(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(n=i[1],/^\d+$/.test(i[3])?r=i[3]:o=i[3]):(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(n=i[1],o=i[3],r=i[4]),n&&r!=="0"?`${n}=${o}:${parseInt(r)+1}`:e})}Ot.Command=Ne});var kt=B(w=>{var{Argument:wt}=le(),{Command:Le}=Bt(),{CommanderError:Xn,InvalidArgumentError:xt}=J(),{Help:Zn}=xe(),{Option:St}=Pe();w.program=new Le;w.createCommand=t=>new Le(t);w.createOption=(t,e)=>new St(t,e);w.createArgument=(t,e)=>new wt(t,e);w.Command=Le;w.Option=St;w.Argument=wt;w.Help=Zn;w.CommanderError=Xn;w.InvalidArgumentError=xt;w.InvalidOptionArgumentError=xt});var Pt=B((Gr,eo)=>{eo.exports={name:"dotenv",version:"16.6.1",description:"Loads environment variables from .env file",main:"lib/main.js",types:"lib/main.d.ts",exports:{".":{types:"./lib/main.d.ts",require:"./lib/main.js",default:"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},scripts:{"dts-check":"tsc --project tests/types/tsconfig.json",lint:"standard",pretest:"npm run lint && npm run dts-check",test:"tap run --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov",prerelease:"npm test",release:"standard-version"},repository:{type:"git",url:"git://github.com/motdotla/dotenv.git"},homepage:"https://github.com/motdotla/dotenv#readme",funding:"https://dotenvx.com",keywords:["dotenv","env",".env","environment","variables","config","settings"],readmeFilename:"README.md",license:"BSD-2-Clause",devDependencies:{"@types/node":"^18.11.3",decache:"^4.6.2",sinon:"^14.0.1",standard:"^17.0.0","standard-version":"^9.5.0",tap:"^19.2.0",typescript:"^4.8.4"},engines:{node:">=12"},browser:{fs:!1}}});var Lt=B((Hr,L)=>{var Ue=require("fs"),ce=require("path"),to=require("os"),no=require("crypto"),oo=Pt(),je=oo.version,ro=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function io(t){let e={},n=t.toString();n=n.replace(/\r\n?/mg,`
25
25
  `);let o;for(;(o=ro.exec(n))!=null;){let r=o[1],i=o[2]||"";i=i.trim();let s=i[0];i=i.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),s==='"'&&(i=i.replace(/\\n/g,`
26
- `),i=i.replace(/\\r/g,"\r")),e[r]=i}return e}function so(t){t=t||{};let e=Nt(t);t.path=e;let n=A.configDotenv(t);if(!n.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${e} for an unknown reason`);throw s.code="MISSING_DATA",s}let o=Rt(t).split(","),r=o.length,i;for(let s=0;s<r;s++)try{let u=o[s].trim(),l=ao(n,u);i=A.decrypt(l.ciphertext,l.key);break}catch(u){if(s+1>=r)throw u}return A.parse(i)}function uo(t){console.log(`[dotenv@${je}][WARN] ${t}`)}function K(t){console.log(`[dotenv@${je}][DEBUG] ${t}`)}function It(t){console.log(`[dotenv@${je}] ${t}`)}function Rt(t){return t&&t.DOTENV_KEY&&t.DOTENV_KEY.length>0?t.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function ao(t,e){let n;try{n=new URL(e)}catch(u){if(u.code==="ERR_INVALID_URL"){let l=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw l.code="INVALID_DOTENV_KEY",l}throw u}let o=n.password;if(!o){let u=new Error("INVALID_DOTENV_KEY: Missing key part");throw u.code="INVALID_DOTENV_KEY",u}let r=n.searchParams.get("environment");if(!r){let u=new Error("INVALID_DOTENV_KEY: Missing environment part");throw u.code="INVALID_DOTENV_KEY",u}let i=`DOTENV_VAULT_${r.toUpperCase()}`,s=t.parsed[i];if(!s){let u=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw u.code="NOT_FOUND_DOTENV_ENVIRONMENT",u}return{ciphertext:s,key:o}}function Nt(t){let e=null;if(t&&t.path&&t.path.length>0)if(Array.isArray(t.path))for(let n of t.path)Ue.existsSync(n)&&(e=n.endsWith(".vault")?n:`${n}.vault`);else e=t.path.endsWith(".vault")?t.path:`${t.path}.vault`;else e=ce.resolve(process.cwd(),".env.vault");return Ue.existsSync(e)?e:null}function $t(t){return t[0]==="~"?ce.join(to.homedir(),t.slice(1)):t}function lo(t){let e=!!(t&&t.debug),n=t&&"quiet"in t?t.quiet:!0;(e||!n)&&It("Loading env from encrypted .env.vault");let o=A._parseVault(t),r=process.env;return t&&t.processEnv!=null&&(r=t.processEnv),A.populate(r,o,t),{parsed:o}}function co(t){let e=ce.resolve(process.cwd(),".env"),n="utf8",o=!!(t&&t.debug),r=t&&"quiet"in t?t.quiet:!0;t&&t.encoding?n=t.encoding:o&&K("No encoding is specified. UTF-8 is used by default");let i=[e];if(t&&t.path)if(!Array.isArray(t.path))i=[$t(t.path)];else{i=[];for(let D of t.path)i.push($t(D))}let s,u={};for(let D of i)try{let c=A.parse(Ue.readFileSync(D,{encoding:n}));A.populate(u,c,t)}catch(c){o&&K(`Failed to load ${D} ${c.message}`),s=c}let l=process.env;if(t&&t.processEnv!=null&&(l=t.processEnv),A.populate(l,u,t),o||!r){let D=Object.keys(u).length,c=[];for(let h of i)try{let d=ce.relative(process.cwd(),h);c.push(d)}catch(d){o&&K(`Failed to load ${h} ${d.message}`),s=d}It(`injecting env (${D}) from ${c.join(",")}`)}return s?{parsed:u,error:s}:{parsed:u}}function Do(t){if(Rt(t).length===0)return A.configDotenv(t);let e=Nt(t);return e?A._configVault(t):(uo(`You set DOTENV_KEY but you are missing a .env.vault file at ${e}. Did you forget to build it?`),A.configDotenv(t))}function ho(t,e){let n=Buffer.from(e.slice(-64),"hex"),o=Buffer.from(t,"base64"),r=o.subarray(0,12),i=o.subarray(-16);o=o.subarray(12,-16);try{let s=no.createDecipheriv("aes-256-gcm",n,r);return s.setAuthTag(i),`${s.update(o)}${s.final()}`}catch(s){let u=s instanceof RangeError,l=s.message==="Invalid key length",D=s.message==="Unsupported state or unable to authenticate data";if(u||l){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(D){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw s}}function fo(t,e,n={}){let o=!!(n&&n.debug),r=!!(n&&n.override);if(typeof e!="object"){let i=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw i.code="OBJECT_REQUIRED",i}for(let i of Object.keys(e))Object.prototype.hasOwnProperty.call(t,i)?(r===!0&&(t[i]=e[i]),o&&K(r===!0?`"${i}" is already defined and WAS overwritten`:`"${i}" is already defined and was NOT overwritten`)):t[i]=e[i]}var A={configDotenv:co,_configVault:lo,_parseVault:so,config:Do,decrypt:ho,parse:io,populate:fo};L.exports.configDotenv=A.configDotenv;L.exports._configVault=A._configVault;L.exports._parseVault=A._parseVault;L.exports.config=A.config;L.exports.decrypt=A.decrypt;L.exports.parse=A.parse;L.exports.populate=A.populate;L.exports=A});var tn=B((fi,Uo)=>{Uo.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var et=B((di,on)=>{"use strict";var Fe=Object.assign({},tn()),nn=Object.keys(Fe);Object.defineProperty(Fe,"random",{get(){let t=Math.floor(Math.random()*nn.length),e=nn[t];return Fe[e]}});on.exports=Fe});var cn=B((Oi,ln)=>{ln.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});var yr={};Nn(yr,{DEFAULT_API_URL:()=>j});module.exports=Ln(yr);var Tt=O(kt(),1),{program:kr,createCommand:Tr,createArgument:Pr,createOption:$r,CommanderError:Ir,InvalidArgumentError:Rr,InvalidOptionArgumentError:Nr,Command:I,Argument:Lr,Option:Ur,Help:jr}=Tt.default;var Bn=O(Lt(),1),wn=O(require("https"),1),G=require("fs"),mt=require("path"),xn=require("os");var Ut=(t=0)=>e=>`\x1B[${e+t}m`,jt=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Gt=(t=0)=>(e,n,o)=>`\x1B[${38+t};2;${e};${n};${o}m`,F={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]}},Mr=Object.keys(F.modifier),mo=Object.keys(F.color),po=Object.keys(F.bgColor),qr=[...mo,...po];function go(){let t=new Map;for(let[e,n]of Object.entries(F)){for(let[o,r]of Object.entries(n))F[o]={open:`\x1B[${r[0]}m`,close:`\x1B[${r[1]}m`},n[o]=F[o],t.set(r[0],r[1]);Object.defineProperty(F,e,{value:n,enumerable:!1})}return Object.defineProperty(F,"codes",{value:t,enumerable:!1}),F.color.close="\x1B[39m",F.bgColor.close="\x1B[49m",F.color.ansi=Ut(),F.color.ansi256=jt(),F.color.ansi16m=Gt(),F.bgColor.ansi=Ut(10),F.bgColor.ansi256=jt(10),F.bgColor.ansi16m=Gt(10),Object.defineProperties(F,{rgbToAnsi256:{value(e,n,o){return e===n&&n===o?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(o/255*5)},enumerable:!1},hexToRgb:{value(e){let n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!n)return[0,0,0];let[o]=n;o.length===3&&(o=[...o].map(i=>i+i).join(""));let r=Number.parseInt(o,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>F.rgbToAnsi256(...F.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let n,o,r;if(e>=232)n=((e-232)*10+8)/255,o=n,r=n;else{e-=16;let u=e%36;n=Math.floor(e/36)/5,o=Math.floor(u/6)/5,r=u%6/5}let i=Math.max(n,o,r)*2;if(i===0)return 30;let s=30+(Math.round(r)<<2|Math.round(o)<<1|Math.round(n));return i===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(e,n,o)=>F.ansi256ToAnsi(F.rgbToAnsi256(e,n,o)),enumerable:!1},hexToAnsi:{value:e=>F.ansi256ToAnsi(F.hexToAnsi256(e)),enumerable:!1}}),F}var Fo=go(),T=Fo;var he=O(require("node:process"),1),Vt=O(require("node:os"),1),Ge=O(require("node:tty"),1);function x(t,e=globalThis.Deno?globalThis.Deno.args:he.default.argv){let n=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(n+t),r=e.indexOf("--");return o!==-1&&(r===-1||o<r)}var{env:C}=he.default,De;x("no-color")||x("no-colors")||x("color=false")||x("color=never")?De=0:(x("color")||x("colors")||x("color=true")||x("color=always"))&&(De=1);function Co(){if("FORCE_COLOR"in C)return C.FORCE_COLOR==="true"?1:C.FORCE_COLOR==="false"?0:C.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(C.FORCE_COLOR,10),3)}function Eo(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function _o(t,{streamIsTTY:e,sniffFlags:n=!0}={}){let o=Co();o!==void 0&&(De=o);let r=n?De:o;if(r===0)return 0;if(n){if(x("color=16m")||x("color=full")||x("color=truecolor"))return 3;if(x("color=256"))return 2}if("TF_BUILD"in C&&"AGENT_NAME"in C)return 1;if(t&&!e&&r===void 0)return 0;let i=r||0;if(C.TERM==="dumb")return i;if(he.default.platform==="win32"){let s=Vt.default.release().split(".");return Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in C)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(s=>s in C)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(s=>s in C)||C.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in C)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(C.TEAMCITY_VERSION)?1:0;if(C.COLORTERM==="truecolor"||C.TERM==="xterm-kitty"||C.TERM==="xterm-ghostty"||C.TERM==="wezterm")return 3;if("TERM_PROGRAM"in C){let s=Number.parseInt((C.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(C.TERM_PROGRAM){case"iTerm.app":return s>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(C.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(C.TERM)||"COLORTERM"in C?1:i}function Ht(t,e={}){let n=_o(t,{streamIsTTY:t&&t.isTTY,...e});return Eo(n)}var yo={stdout:Ht({isTTY:Ge.default.isatty(1)}),stderr:Ht({isTTY:Ge.default.isatty(2)})},Mt=yo;function qt(t,e,n){let o=t.indexOf(e);if(o===-1)return t;let r=e.length,i=0,s="";do s+=t.slice(i,o)+e+n,i=o+r,o=t.indexOf(e,i);while(o!==-1);return s+=t.slice(i),s}function Wt(t,e,n,o){let r=0,i="";do{let s=t[o-1]==="\r";i+=t.slice(r,s?o-1:o)+e+(s?`\r
26
+ `),i=i.replace(/\\r/g,"\r")),e[r]=i}return e}function so(t){t=t||{};let e=Nt(t);t.path=e;let n=A.configDotenv(t);if(!n.parsed){let s=new Error(`MISSING_DATA: Cannot parse ${e} for an unknown reason`);throw s.code="MISSING_DATA",s}let o=Rt(t).split(","),r=o.length,i;for(let s=0;s<r;s++)try{let u=o[s].trim(),l=ao(n,u);i=A.decrypt(l.ciphertext,l.key);break}catch(u){if(s+1>=r)throw u}return A.parse(i)}function uo(t){console.log(`[dotenv@${je}][WARN] ${t}`)}function K(t){console.log(`[dotenv@${je}][DEBUG] ${t}`)}function It(t){console.log(`[dotenv@${je}] ${t}`)}function Rt(t){return t&&t.DOTENV_KEY&&t.DOTENV_KEY.length>0?t.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function ao(t,e){let n;try{n=new URL(e)}catch(u){if(u.code==="ERR_INVALID_URL"){let l=new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw l.code="INVALID_DOTENV_KEY",l}throw u}let o=n.password;if(!o){let u=new Error("INVALID_DOTENV_KEY: Missing key part");throw u.code="INVALID_DOTENV_KEY",u}let r=n.searchParams.get("environment");if(!r){let u=new Error("INVALID_DOTENV_KEY: Missing environment part");throw u.code="INVALID_DOTENV_KEY",u}let i=`DOTENV_VAULT_${r.toUpperCase()}`,s=t.parsed[i];if(!s){let u=new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${i} in your .env.vault file.`);throw u.code="NOT_FOUND_DOTENV_ENVIRONMENT",u}return{ciphertext:s,key:o}}function Nt(t){let e=null;if(t&&t.path&&t.path.length>0)if(Array.isArray(t.path))for(let n of t.path)Ue.existsSync(n)&&(e=n.endsWith(".vault")?n:`${n}.vault`);else e=t.path.endsWith(".vault")?t.path:`${t.path}.vault`;else e=ce.resolve(process.cwd(),".env.vault");return Ue.existsSync(e)?e:null}function $t(t){return t[0]==="~"?ce.join(to.homedir(),t.slice(1)):t}function lo(t){let e=!!(t&&t.debug),n=t&&"quiet"in t?t.quiet:!0;(e||!n)&&It("Loading env from encrypted .env.vault");let o=A._parseVault(t),r=process.env;return t&&t.processEnv!=null&&(r=t.processEnv),A.populate(r,o,t),{parsed:o}}function co(t){let e=ce.resolve(process.cwd(),".env"),n="utf8",o=!!(t&&t.debug),r=t&&"quiet"in t?t.quiet:!0;t&&t.encoding?n=t.encoding:o&&K("No encoding is specified. UTF-8 is used by default");let i=[e];if(t&&t.path)if(!Array.isArray(t.path))i=[$t(t.path)];else{i=[];for(let D of t.path)i.push($t(D))}let s,u={};for(let D of i)try{let c=A.parse(Ue.readFileSync(D,{encoding:n}));A.populate(u,c,t)}catch(c){o&&K(`Failed to load ${D} ${c.message}`),s=c}let l=process.env;if(t&&t.processEnv!=null&&(l=t.processEnv),A.populate(l,u,t),o||!r){let D=Object.keys(u).length,c=[];for(let h of i)try{let d=ce.relative(process.cwd(),h);c.push(d)}catch(d){o&&K(`Failed to load ${h} ${d.message}`),s=d}It(`injecting env (${D}) from ${c.join(",")}`)}return s?{parsed:u,error:s}:{parsed:u}}function Do(t){if(Rt(t).length===0)return A.configDotenv(t);let e=Nt(t);return e?A._configVault(t):(uo(`You set DOTENV_KEY but you are missing a .env.vault file at ${e}. Did you forget to build it?`),A.configDotenv(t))}function ho(t,e){let n=Buffer.from(e.slice(-64),"hex"),o=Buffer.from(t,"base64"),r=o.subarray(0,12),i=o.subarray(-16);o=o.subarray(12,-16);try{let s=no.createDecipheriv("aes-256-gcm",n,r);return s.setAuthTag(i),`${s.update(o)}${s.final()}`}catch(s){let u=s instanceof RangeError,l=s.message==="Invalid key length",D=s.message==="Unsupported state or unable to authenticate data";if(u||l){let c=new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw c.code="INVALID_DOTENV_KEY",c}else if(D){let c=new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw c.code="DECRYPTION_FAILED",c}else throw s}}function fo(t,e,n={}){let o=!!(n&&n.debug),r=!!(n&&n.override);if(typeof e!="object"){let i=new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw i.code="OBJECT_REQUIRED",i}for(let i of Object.keys(e))Object.prototype.hasOwnProperty.call(t,i)?(r===!0&&(t[i]=e[i]),o&&K(r===!0?`"${i}" is already defined and WAS overwritten`:`"${i}" is already defined and was NOT overwritten`)):t[i]=e[i]}var A={configDotenv:co,_configVault:lo,_parseVault:so,config:Do,decrypt:ho,parse:io,populate:fo};L.exports.configDotenv=A.configDotenv;L.exports._configVault=A._configVault;L.exports._parseVault=A._parseVault;L.exports.config=A.config;L.exports.decrypt=A.decrypt;L.exports.parse=A.parse;L.exports.populate=A.populate;L.exports=A});var tn=B((hi,Uo)=>{Uo.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}}});var et=B((fi,on)=>{"use strict";var Fe=Object.assign({},tn()),nn=Object.keys(Fe);Object.defineProperty(Fe,"random",{get(){let t=Math.floor(Math.random()*nn.length),e=nn[t];return Fe[e]}});on.exports=Fe});var cn=B((bi,ln)=>{ln.exports=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g});var _r={};Nn(_r,{DEFAULT_API_URL:()=>j});module.exports=Ln(_r);var Tt=O(kt(),1),{program:Sr,createCommand:kr,createArgument:Tr,createOption:Pr,CommanderError:$r,InvalidArgumentError:Ir,InvalidOptionArgumentError:Rr,Command:I,Argument:Nr,Option:Lr,Help:Ur}=Tt.default;var Bn=O(Lt(),1),wn=O(require("https"),1),G=require("fs"),mt=require("path"),xn=require("os");var Ut=(t=0)=>e=>`\x1B[${e+t}m`,jt=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Gt=(t=0)=>(e,n,o)=>`\x1B[${38+t};2;${e};${n};${o}m`,F={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]}},Vr=Object.keys(F.modifier),mo=Object.keys(F.color),po=Object.keys(F.bgColor),Mr=[...mo,...po];function go(){let t=new Map;for(let[e,n]of Object.entries(F)){for(let[o,r]of Object.entries(n))F[o]={open:`\x1B[${r[0]}m`,close:`\x1B[${r[1]}m`},n[o]=F[o],t.set(r[0],r[1]);Object.defineProperty(F,e,{value:n,enumerable:!1})}return Object.defineProperty(F,"codes",{value:t,enumerable:!1}),F.color.close="\x1B[39m",F.bgColor.close="\x1B[49m",F.color.ansi=Ut(),F.color.ansi256=jt(),F.color.ansi16m=Gt(),F.bgColor.ansi=Ut(10),F.bgColor.ansi256=jt(10),F.bgColor.ansi16m=Gt(10),Object.defineProperties(F,{rgbToAnsi256:{value(e,n,o){return e===n&&n===o?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(o/255*5)},enumerable:!1},hexToRgb:{value(e){let n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!n)return[0,0,0];let[o]=n;o.length===3&&(o=[...o].map(i=>i+i).join(""));let r=Number.parseInt(o,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>F.rgbToAnsi256(...F.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let n,o,r;if(e>=232)n=((e-232)*10+8)/255,o=n,r=n;else{e-=16;let u=e%36;n=Math.floor(e/36)/5,o=Math.floor(u/6)/5,r=u%6/5}let i=Math.max(n,o,r)*2;if(i===0)return 30;let s=30+(Math.round(r)<<2|Math.round(o)<<1|Math.round(n));return i===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(e,n,o)=>F.ansi256ToAnsi(F.rgbToAnsi256(e,n,o)),enumerable:!1},hexToAnsi:{value:e=>F.ansi256ToAnsi(F.hexToAnsi256(e)),enumerable:!1}}),F}var Fo=go(),T=Fo;var he=O(require("node:process"),1),Vt=O(require("node:os"),1),Ge=O(require("node:tty"),1);function x(t,e=globalThis.Deno?globalThis.Deno.args:he.default.argv){let n=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(n+t),r=e.indexOf("--");return o!==-1&&(r===-1||o<r)}var{env:C}=he.default,De;x("no-color")||x("no-colors")||x("color=false")||x("color=never")?De=0:(x("color")||x("colors")||x("color=true")||x("color=always"))&&(De=1);function Co(){if("FORCE_COLOR"in C)return C.FORCE_COLOR==="true"?1:C.FORCE_COLOR==="false"?0:C.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(C.FORCE_COLOR,10),3)}function Eo(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function _o(t,{streamIsTTY:e,sniffFlags:n=!0}={}){let o=Co();o!==void 0&&(De=o);let r=n?De:o;if(r===0)return 0;if(n){if(x("color=16m")||x("color=full")||x("color=truecolor"))return 3;if(x("color=256"))return 2}if("TF_BUILD"in C&&"AGENT_NAME"in C)return 1;if(t&&!e&&r===void 0)return 0;let i=r||0;if(C.TERM==="dumb")return i;if(he.default.platform==="win32"){let s=Vt.default.release().split(".");return Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in C)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(s=>s in C)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(s=>s in C)||C.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in C)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(C.TEAMCITY_VERSION)?1:0;if(C.COLORTERM==="truecolor"||C.TERM==="xterm-kitty"||C.TERM==="xterm-ghostty"||C.TERM==="wezterm")return 3;if("TERM_PROGRAM"in C){let s=Number.parseInt((C.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(C.TERM_PROGRAM){case"iTerm.app":return s>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(C.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(C.TERM)||"COLORTERM"in C?1:i}function Ht(t,e={}){let n=_o(t,{streamIsTTY:t&&t.isTTY,...e});return Eo(n)}var yo={stdout:Ht({isTTY:Ge.default.isatty(1)}),stderr:Ht({isTTY:Ge.default.isatty(2)})},Mt=yo;function qt(t,e,n){let o=t.indexOf(e);if(o===-1)return t;let r=e.length,i=0,s="";do s+=t.slice(i,o)+e+n,i=o+r,o=t.indexOf(e,i);while(o!==-1);return s+=t.slice(i),s}function Wt(t,e,n,o){let r=0,i="";do{let s=t[o-1]==="\r";i+=t.slice(r,s?o-1:o)+e+(s?`\r
27
27
  `:`
28
28
  `)+n,r=o+1,o=t.indexOf(`
29
29
  `,r)}while(o!==-1);return i+=t.slice(r),i}var{stdout:zt,stderr:Yt}=Mt,He=Symbol("GENERATOR"),M=Symbol("STYLER"),Q=Symbol("IS_EMPTY"),Jt=["ansi","ansi","ansi256","ansi16m"],q=Object.create(null),Ao=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let n=zt?zt.level:0;t.level=e.level===void 0?n:e.level};var vo=t=>{let e=(...n)=>n.join(" ");return Ao(e,t),Object.setPrototypeOf(e,X.prototype),e};function X(t){return vo(t)}Object.setPrototypeOf(X.prototype,Function.prototype);for(let[t,e]of Object.entries(T))q[t]={get(){let n=fe(this,Me(e.open,e.close,this[M]),this[Q]);return Object.defineProperty(this,t,{value:n}),n}};q.visible={get(){let t=fe(this,this[M],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var Ve=(t,e,n,...o)=>t==="rgb"?e==="ansi16m"?T[n].ansi16m(...o):e==="ansi256"?T[n].ansi256(T.rgbToAnsi256(...o)):T[n].ansi(T.rgbToAnsi(...o)):t==="hex"?Ve("rgb",e,n,...T.hexToRgb(...o)):T[n][t](...o),bo=["rgb","hex","ansi256"];for(let t of bo){q[t]={get(){let{level:n}=this;return function(...o){let r=Me(Ve(t,Jt[n],"color",...o),T.color.close,this[M]);return fe(this,r,this[Q])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);q[e]={get(){let{level:n}=this;return function(...o){let r=Me(Ve(t,Jt[n],"bgColor",...o),T.bgColor.close,this[M]);return fe(this,r,this[Q])}}}}var Oo=Object.defineProperties(()=>{},{...q,level:{enumerable:!0,get(){return this[He].level},set(t){this[He].level=t}}}),Me=(t,e,n)=>{let o,r;return n===void 0?(o=t,r=e):(o=n.openAll+t,r=e+n.closeAll),{open:t,close:e,openAll:o,closeAll:r,parent:n}},fe=(t,e,n)=>{let o=(...r)=>Bo(o,r.length===1?""+r[0]:r.join(" "));return Object.setPrototypeOf(o,Oo),o[He]=t,o[M]=e,o[Q]=n,o},Bo=(t,e)=>{if(t.level<=0||!e)return t[Q]?"":e;let n=t[M];if(n===void 0)return e;let{openAll:o,closeAll:r}=n;if(e.includes("\x1B"))for(;n!==void 0;)e=qt(e,n.close,n.open),n=n.parent;let i=e.indexOf(`
30
- `);return i!==-1&&(e=Wt(e,r,o,i)),o+e+r};Object.defineProperties(X.prototype,q);var wo=X(),Xr=X({level:Yt?Yt.level:0});var a=wo;var ne=O(require("node:process"),1);var Xe=O(require("node:process"),1);var Z=O(require("node:process"),1);var xo=(t,e,n,o)=>{if(n==="length"||n==="prototype"||n==="arguments"||n==="caller")return;let r=Object.getOwnPropertyDescriptor(t,n),i=Object.getOwnPropertyDescriptor(e,n);!So(r,i)&&o||Object.defineProperty(t,n,i)},So=function(t,e){return t===void 0||t.configurable||t.writable===e.writable&&t.enumerable===e.enumerable&&t.configurable===e.configurable&&(t.writable||t.value===e.value)},ko=(t,e)=>{let n=Object.getPrototypeOf(e);n!==Object.getPrototypeOf(t)&&Object.setPrototypeOf(t,n)},To=(t,e)=>`/* Wrapped ${t}*/
31
- ${e}`,Po=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),$o=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),Io=(t,e,n)=>{let o=n===""?"":`with ${n.trim()}() `,r=To.bind(null,o,e.toString());Object.defineProperty(r,"name",$o);let{writable:i,enumerable:s,configurable:u}=Po;Object.defineProperty(t,"toString",{value:r,writable:i,enumerable:s,configurable:u})};function qe(t,e,{ignoreNonConfigurable:n=!1}={}){let{name:o}=t;for(let r of Reflect.ownKeys(e))xo(t,e,r,n);return ko(t,e),Io(t,e,o),t}var de=new WeakMap,Kt=(t,e={})=>{if(typeof t!="function")throw new TypeError("Expected a function");let n,o=0,r=t.displayName||t.name||"<anonymous>",i=function(...s){if(de.set(i,++o),o===1)n=t.apply(this,s),t=void 0;else if(e.throw===!0)throw new Error(`Function \`${r}\` can only be called once`);return n};return qe(i,t),de.set(i,o),i};Kt.callCount=t=>{if(!de.has(t))throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);return de.get(t)};var Qt=Kt;var H=[];H.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&H.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&H.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var me=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",We=Symbol.for("signal-exit emitter"),ze=globalThis,Ro=Object.defineProperty.bind(Object),Ye=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(ze[We])return ze[We];Ro(ze,We,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,n){this.listeners[e].push(n)}removeListener(e,n){let o=this.listeners[e],r=o.indexOf(n);r!==-1&&(r===0&&o.length===1?o.length=0:o.splice(r,1))}emit(e,n,o){if(this.emitted[e])return!1;this.emitted[e]=!0;let r=!1;for(let i of this.listeners[e])r=i(n,o)===!0||r;return e==="exit"&&(r=this.emit("afterExit",n,o)||r),r}},pe=class{},No=t=>({onExit(e,n){return t.onExit(e,n)},load(){return t.load()},unload(){return t.unload()}}),Je=class extends pe{onExit(){return()=>{}}load(){}unload(){}},Ke=class extends pe{#s=Qe.platform==="win32"?"SIGINT":"SIGHUP";#n=new Ye;#e;#r;#h;#t={};#i=!1;constructor(e){super(),this.#e=e,this.#t={};for(let n of H)this.#t[n]=()=>{let o=this.#e.listeners(n),{count:r}=this.#n,i=e;if(typeof i.__signal_exit_emitter__=="object"&&typeof i.__signal_exit_emitter__.count=="number"&&(r+=i.__signal_exit_emitter__.count),o.length===r){this.unload();let s=this.#n.emit("exit",null,n),u=n==="SIGHUP"?this.#s:n;s||e.kill(e.pid,u)}};this.#h=e.reallyExit,this.#r=e.emit}onExit(e,n){if(!me(this.#e))return()=>{};this.#i===!1&&this.load();let o=n?.alwaysLast?"afterExit":"exit";return this.#n.on(o,e),()=>{this.#n.removeListener(o,e),this.#n.listeners.exit.length===0&&this.#n.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#i){this.#i=!0,this.#n.count+=1;for(let e of H)try{let n=this.#t[e];n&&this.#e.on(e,n)}catch{}this.#e.emit=(e,...n)=>this.#f(e,...n),this.#e.reallyExit=e=>this.#o(e)}}unload(){this.#i&&(this.#i=!1,H.forEach(e=>{let n=this.#t[e];if(!n)throw new Error("Listener not defined for signal: "+e);try{this.#e.removeListener(e,n)}catch{}}),this.#e.emit=this.#r,this.#e.reallyExit=this.#h,this.#n.count-=1)}#o(e){return me(this.#e)?(this.#e.exitCode=e||0,this.#n.emit("exit",this.#e.exitCode,null),this.#h.call(this.#e,this.#e.exitCode)):0}#f(e,...n){let o=this.#r;if(e==="exit"&&me(this.#e)){typeof n[0]=="number"&&(this.#e.exitCode=n[0]);let r=o.call(this.#e,e,...n);return this.#n.emit("exit",this.#e.exitCode,null),r}else return o.call(this.#e,e,...n)}},Qe=globalThis.process,{onExit:Xt,load:ii,unload:si}=No(me(Qe)?new Ke(Qe):new Je);var Zt=Z.default.stderr.isTTY?Z.default.stderr:Z.default.stdout.isTTY?Z.default.stdout:void 0,Lo=Zt?Qt(()=>{Xt(()=>{Zt.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},en=Lo;var ge=!1,W={};W.show=(t=Xe.default.stderr)=>{t.isTTY&&(ge=!1,t.write("\x1B[?25h"))};W.hide=(t=Xe.default.stderr)=>{t.isTTY&&(en(),ge=!0,t.write("\x1B[?25l"))};W.toggle=(t,e)=>{t!==void 0&&(ge=t),ge?W.show(e):W.hide(e)};var Ze=W;var oe=O(et(),1);var S=O(require("node:process"),1);function tt(){return S.default.platform!=="win32"?S.default.env.TERM!=="linux":!!S.default.env.CI||!!S.default.env.WT_SESSION||!!S.default.env.TERMINUS_SUBLIME||S.default.env.ConEmuTask==="{cmd::Cmder}"||S.default.env.TERM_PROGRAM==="Terminus-Sublime"||S.default.env.TERM_PROGRAM==="vscode"||S.default.env.TERM==="xterm-256color"||S.default.env.TERM==="alacritty"||S.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var jo={info:a.blue("\u2139"),success:a.green("\u2714"),warning:a.yellow("\u26A0"),error:a.red("\u2716")},Go={info:a.blue("i"),success:a.green("\u221A"),warning:a.yellow("\u203C"),error:a.red("\xD7")},Ho=tt()?jo:Go,ee=Ho;function nt({onlyFirst:t=!1}={}){let r="(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";return new RegExp(r,t?void 0:"g")}var Vo=nt();function te(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(Vo,"")}function rn(t){return t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109}function sn(t){return t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510}function un(t){return t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9776&&t<=9783||t>=9800&&t<=9811||t===9855||t>=9866&&t<=9871||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12773||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t>=94192&&t<=94198||t>=94208&&t<=101589||t>=101631&&t<=101662||t>=101760&&t<=101874||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t>=119552&&t<=119638||t>=119648&&t<=119670||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128728||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129674||t>=129678&&t<=129734||t===129736||t>=129741&&t<=129756||t>=129759&&t<=129770||t>=129775&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141}function Mo(t){if(!Number.isSafeInteger(t))throw new TypeError(`Expected a code point, got \`${typeof t}\`.`)}function an(t,{ambiguousAsWide:e=!1}={}){return Mo(t),sn(t)||un(t)||e&&rn(t)?2:1}var Dn=O(cn(),1),qo=new Intl.Segmenter,Wo=new RegExp("^\\p{Default_Ignorable_Code_Point}$","u");function ot(t,e={}){if(typeof t!="string"||t.length===0)return 0;let{ambiguousIsNarrow:n=!0,countAnsiEscapeCodes:o=!1}=e;if(o||(t=te(t)),t.length===0)return 0;let r=0,i={ambiguousAsWide:!n};for(let{segment:s}of qo.segment(t)){let u=s.codePointAt(0);if(!(u<=31||u>=127&&u<=159)&&!(u>=8203&&u<=8207||u===65279)&&!(u>=768&&u<=879||u>=6832&&u<=6911||u>=7616&&u<=7679||u>=8400&&u<=8447||u>=65056&&u<=65071)&&!(u>=55296&&u<=57343)&&!(u>=65024&&u<=65039)&&!Wo.test(s)){if((0,Dn.default)().test(s)){r+=2;continue}r+=an(u,i)}}return r}function rt({stream:t=process.stdout}={}){return!!(t&&t.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}var it=O(require("node:process"),1);function st(){let{env:t}=it.default,{TERM:e,TERM_PROGRAM:n}=t;return it.default.platform!=="win32"?e!=="linux":!!t.WT_SESSION||!!t.TERMINUS_SUBLIME||t.ConEmuTask==="{cmd::Cmder}"||n==="Terminus-Sublime"||n==="vscode"||e==="xterm-256color"||e==="alacritty"||e==="rxvt-unicode"||e==="rxvt-unicode-256color"||t.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var P=O(require("node:process"),1),zo=3,ut=class{#s=0;start(){this.#s++,this.#s===1&&this.#n()}stop(){if(this.#s<=0)throw new Error("`stop` called more times than `start`");this.#s--,this.#s===0&&this.#e()}#n(){P.default.platform==="win32"||!P.default.stdin.isTTY||(P.default.stdin.setRawMode(!0),P.default.stdin.on("data",this.#r),P.default.stdin.resume())}#e(){P.default.stdin.isTTY&&(P.default.stdin.off("data",this.#r),P.default.stdin.pause(),P.default.stdin.setRawMode(!1))}#r(e){e[0]===zo&&P.default.emit("SIGINT")}},Yo=new ut,at=Yo;var Jo=O(et(),1),lt=class{#s=0;#n=!1;#e=0;#r=-1;#h=0;#t;#i;#o;#f;#m;#l;#c;#D;#p;#u;#a;color;constructor(e){typeof e=="string"&&(e={text:e}),this.#t={color:"cyan",stream:ne.default.stderr,discardStdin:!0,hideCursor:!0,...e},this.color=this.#t.color,this.spinner=this.#t.spinner,this.#m=this.#t.interval,this.#o=this.#t.stream,this.#l=typeof this.#t.isEnabled=="boolean"?this.#t.isEnabled:rt({stream:this.#o}),this.#c=typeof this.#t.isSilent=="boolean"?this.#t.isSilent:!1,this.text=this.#t.text,this.prefixText=this.#t.prefixText,this.suffixText=this.#t.suffixText,this.indent=this.#t.indent,ne.default.env.NODE_ENV==="test"&&(this._stream=this.#o,this._isEnabled=this.#l,Object.defineProperty(this,"_linesToClear",{get(){return this.#s},set(n){this.#s=n}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#r}}),Object.defineProperty(this,"_lineCount",{get(){return this.#e}}))}get indent(){return this.#D}set indent(e=0){if(!(e>=0&&Number.isInteger(e)))throw new Error("The `indent` option must be an integer from 0 and up");this.#D=e,this.#d()}get interval(){return this.#m??this.#i.interval??100}get spinner(){return this.#i}set spinner(e){if(this.#r=-1,this.#m=void 0,typeof e=="object"){if(e.frames===void 0)throw new Error("The given spinner must have a `frames` property");this.#i=e}else if(!st())this.#i=oe.default.line;else if(e===void 0)this.#i=oe.default.dots;else if(e!=="default"&&oe.default[e])this.#i=oe.default[e];else throw new Error(`There is no built-in spinner named '${e}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#p}set text(e=""){this.#p=e,this.#d()}get prefixText(){return this.#u}set prefixText(e=""){this.#u=e,this.#d()}get suffixText(){return this.#a}set suffixText(e=""){this.#a=e,this.#d()}get isSpinning(){return this.#f!==void 0}#g(e=this.#u,n=" "){return typeof e=="string"&&e!==""?e+n:typeof e=="function"?e()+n:""}#F(e=this.#a,n=" "){return typeof e=="string"&&e!==""?n+e:typeof e=="function"?n+e():""}#d(){let e=this.#o.columns??80,n=this.#g(this.#u,"-"),o=this.#F(this.#a,"-"),r=" ".repeat(this.#D)+n+"--"+this.#p+"--"+o;this.#e=0;for(let i of te(r).split(`
30
+ `);return i!==-1&&(e=Wt(e,r,o,i)),o+e+r};Object.defineProperties(X.prototype,q);var wo=X(),Qr=X({level:Yt?Yt.level:0});var a=wo;var ne=O(require("node:process"),1);var Xe=O(require("node:process"),1);var Z=O(require("node:process"),1);var xo=(t,e,n,o)=>{if(n==="length"||n==="prototype"||n==="arguments"||n==="caller")return;let r=Object.getOwnPropertyDescriptor(t,n),i=Object.getOwnPropertyDescriptor(e,n);!So(r,i)&&o||Object.defineProperty(t,n,i)},So=function(t,e){return t===void 0||t.configurable||t.writable===e.writable&&t.enumerable===e.enumerable&&t.configurable===e.configurable&&(t.writable||t.value===e.value)},ko=(t,e)=>{let n=Object.getPrototypeOf(e);n!==Object.getPrototypeOf(t)&&Object.setPrototypeOf(t,n)},To=(t,e)=>`/* Wrapped ${t}*/
31
+ ${e}`,Po=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),$o=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),Io=(t,e,n)=>{let o=n===""?"":`with ${n.trim()}() `,r=To.bind(null,o,e.toString());Object.defineProperty(r,"name",$o);let{writable:i,enumerable:s,configurable:u}=Po;Object.defineProperty(t,"toString",{value:r,writable:i,enumerable:s,configurable:u})};function qe(t,e,{ignoreNonConfigurable:n=!1}={}){let{name:o}=t;for(let r of Reflect.ownKeys(e))xo(t,e,r,n);return ko(t,e),Io(t,e,o),t}var de=new WeakMap,Kt=(t,e={})=>{if(typeof t!="function")throw new TypeError("Expected a function");let n,o=0,r=t.displayName||t.name||"<anonymous>",i=function(...s){if(de.set(i,++o),o===1)n=t.apply(this,s),t=void 0;else if(e.throw===!0)throw new Error(`Function \`${r}\` can only be called once`);return n};return qe(i,t),de.set(i,o),i};Kt.callCount=t=>{if(!de.has(t))throw new Error(`The given function \`${t.name}\` is not wrapped by the \`onetime\` package`);return de.get(t)};var Qt=Kt;var H=[];H.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&H.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&H.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var me=t=>!!t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function",We=Symbol.for("signal-exit emitter"),ze=globalThis,Ro=Object.defineProperty.bind(Object),Ye=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(ze[We])return ze[We];Ro(ze,We,{value:this,writable:!1,enumerable:!1,configurable:!1})}on(e,n){this.listeners[e].push(n)}removeListener(e,n){let o=this.listeners[e],r=o.indexOf(n);r!==-1&&(r===0&&o.length===1?o.length=0:o.splice(r,1))}emit(e,n,o){if(this.emitted[e])return!1;this.emitted[e]=!0;let r=!1;for(let i of this.listeners[e])r=i(n,o)===!0||r;return e==="exit"&&(r=this.emit("afterExit",n,o)||r),r}},pe=class{},No=t=>({onExit(e,n){return t.onExit(e,n)},load(){return t.load()},unload(){return t.unload()}}),Je=class extends pe{onExit(){return()=>{}}load(){}unload(){}},Ke=class extends pe{#s=Qe.platform==="win32"?"SIGINT":"SIGHUP";#n=new Ye;#e;#r;#h;#t={};#i=!1;constructor(e){super(),this.#e=e,this.#t={};for(let n of H)this.#t[n]=()=>{let o=this.#e.listeners(n),{count:r}=this.#n,i=e;if(typeof i.__signal_exit_emitter__=="object"&&typeof i.__signal_exit_emitter__.count=="number"&&(r+=i.__signal_exit_emitter__.count),o.length===r){this.unload();let s=this.#n.emit("exit",null,n),u=n==="SIGHUP"?this.#s:n;s||e.kill(e.pid,u)}};this.#h=e.reallyExit,this.#r=e.emit}onExit(e,n){if(!me(this.#e))return()=>{};this.#i===!1&&this.load();let o=n?.alwaysLast?"afterExit":"exit";return this.#n.on(o,e),()=>{this.#n.removeListener(o,e),this.#n.listeners.exit.length===0&&this.#n.listeners.afterExit.length===0&&this.unload()}}load(){if(!this.#i){this.#i=!0,this.#n.count+=1;for(let e of H)try{let n=this.#t[e];n&&this.#e.on(e,n)}catch{}this.#e.emit=(e,...n)=>this.#f(e,...n),this.#e.reallyExit=e=>this.#o(e)}}unload(){this.#i&&(this.#i=!1,H.forEach(e=>{let n=this.#t[e];if(!n)throw new Error("Listener not defined for signal: "+e);try{this.#e.removeListener(e,n)}catch{}}),this.#e.emit=this.#r,this.#e.reallyExit=this.#h,this.#n.count-=1)}#o(e){return me(this.#e)?(this.#e.exitCode=e||0,this.#n.emit("exit",this.#e.exitCode,null),this.#h.call(this.#e,this.#e.exitCode)):0}#f(e,...n){let o=this.#r;if(e==="exit"&&me(this.#e)){typeof n[0]=="number"&&(this.#e.exitCode=n[0]);let r=o.call(this.#e,e,...n);return this.#n.emit("exit",this.#e.exitCode,null),r}else return o.call(this.#e,e,...n)}},Qe=globalThis.process,{onExit:Xt,load:ri,unload:ii}=No(me(Qe)?new Ke(Qe):new Je);var Zt=Z.default.stderr.isTTY?Z.default.stderr:Z.default.stdout.isTTY?Z.default.stdout:void 0,Lo=Zt?Qt(()=>{Xt(()=>{Zt.write("\x1B[?25h")},{alwaysLast:!0})}):()=>{},en=Lo;var ge=!1,W={};W.show=(t=Xe.default.stderr)=>{t.isTTY&&(ge=!1,t.write("\x1B[?25h"))};W.hide=(t=Xe.default.stderr)=>{t.isTTY&&(en(),ge=!0,t.write("\x1B[?25l"))};W.toggle=(t,e)=>{t!==void 0&&(ge=t),ge?W.show(e):W.hide(e)};var Ze=W;var oe=O(et(),1);var S=O(require("node:process"),1);function tt(){return S.default.platform!=="win32"?S.default.env.TERM!=="linux":!!S.default.env.CI||!!S.default.env.WT_SESSION||!!S.default.env.TERMINUS_SUBLIME||S.default.env.ConEmuTask==="{cmd::Cmder}"||S.default.env.TERM_PROGRAM==="Terminus-Sublime"||S.default.env.TERM_PROGRAM==="vscode"||S.default.env.TERM==="xterm-256color"||S.default.env.TERM==="alacritty"||S.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var jo={info:a.blue("\u2139"),success:a.green("\u2714"),warning:a.yellow("\u26A0"),error:a.red("\u2716")},Go={info:a.blue("i"),success:a.green("\u221A"),warning:a.yellow("\u203C"),error:a.red("\xD7")},Ho=tt()?jo:Go,ee=Ho;function nt({onlyFirst:t=!1}={}){let r="(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";return new RegExp(r,t?void 0:"g")}var Vo=nt();function te(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(Vo,"")}function rn(t){return t===161||t===164||t===167||t===168||t===170||t===173||t===174||t>=176&&t<=180||t>=182&&t<=186||t>=188&&t<=191||t===198||t===208||t===215||t===216||t>=222&&t<=225||t===230||t>=232&&t<=234||t===236||t===237||t===240||t===242||t===243||t>=247&&t<=250||t===252||t===254||t===257||t===273||t===275||t===283||t===294||t===295||t===299||t>=305&&t<=307||t===312||t>=319&&t<=322||t===324||t>=328&&t<=331||t===333||t===338||t===339||t===358||t===359||t===363||t===462||t===464||t===466||t===468||t===470||t===472||t===474||t===476||t===593||t===609||t===708||t===711||t>=713&&t<=715||t===717||t===720||t>=728&&t<=731||t===733||t===735||t>=768&&t<=879||t>=913&&t<=929||t>=931&&t<=937||t>=945&&t<=961||t>=963&&t<=969||t===1025||t>=1040&&t<=1103||t===1105||t===8208||t>=8211&&t<=8214||t===8216||t===8217||t===8220||t===8221||t>=8224&&t<=8226||t>=8228&&t<=8231||t===8240||t===8242||t===8243||t===8245||t===8251||t===8254||t===8308||t===8319||t>=8321&&t<=8324||t===8364||t===8451||t===8453||t===8457||t===8467||t===8470||t===8481||t===8482||t===8486||t===8491||t===8531||t===8532||t>=8539&&t<=8542||t>=8544&&t<=8555||t>=8560&&t<=8569||t===8585||t>=8592&&t<=8601||t===8632||t===8633||t===8658||t===8660||t===8679||t===8704||t===8706||t===8707||t===8711||t===8712||t===8715||t===8719||t===8721||t===8725||t===8730||t>=8733&&t<=8736||t===8739||t===8741||t>=8743&&t<=8748||t===8750||t>=8756&&t<=8759||t===8764||t===8765||t===8776||t===8780||t===8786||t===8800||t===8801||t>=8804&&t<=8807||t===8810||t===8811||t===8814||t===8815||t===8834||t===8835||t===8838||t===8839||t===8853||t===8857||t===8869||t===8895||t===8978||t>=9312&&t<=9449||t>=9451&&t<=9547||t>=9552&&t<=9587||t>=9600&&t<=9615||t>=9618&&t<=9621||t===9632||t===9633||t>=9635&&t<=9641||t===9650||t===9651||t===9654||t===9655||t===9660||t===9661||t===9664||t===9665||t>=9670&&t<=9672||t===9675||t>=9678&&t<=9681||t>=9698&&t<=9701||t===9711||t===9733||t===9734||t===9737||t===9742||t===9743||t===9756||t===9758||t===9792||t===9794||t===9824||t===9825||t>=9827&&t<=9829||t>=9831&&t<=9834||t===9836||t===9837||t===9839||t===9886||t===9887||t===9919||t>=9926&&t<=9933||t>=9935&&t<=9939||t>=9941&&t<=9953||t===9955||t===9960||t===9961||t>=9963&&t<=9969||t===9972||t>=9974&&t<=9977||t===9979||t===9980||t===9982||t===9983||t===10045||t>=10102&&t<=10111||t>=11094&&t<=11097||t>=12872&&t<=12879||t>=57344&&t<=63743||t>=65024&&t<=65039||t===65533||t>=127232&&t<=127242||t>=127248&&t<=127277||t>=127280&&t<=127337||t>=127344&&t<=127373||t===127375||t===127376||t>=127387&&t<=127404||t>=917760&&t<=917999||t>=983040&&t<=1048573||t>=1048576&&t<=1114109}function sn(t){return t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510}function un(t){return t>=4352&&t<=4447||t===8986||t===8987||t===9001||t===9002||t>=9193&&t<=9196||t===9200||t===9203||t===9725||t===9726||t===9748||t===9749||t>=9776&&t<=9783||t>=9800&&t<=9811||t===9855||t>=9866&&t<=9871||t===9875||t===9889||t===9898||t===9899||t===9917||t===9918||t===9924||t===9925||t===9934||t===9940||t===9962||t===9970||t===9971||t===9973||t===9978||t===9981||t===9989||t===9994||t===9995||t===10024||t===10060||t===10062||t>=10067&&t<=10069||t===10071||t>=10133&&t<=10135||t===10160||t===10175||t===11035||t===11036||t===11088||t===11093||t>=11904&&t<=11929||t>=11931&&t<=12019||t>=12032&&t<=12245||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12353&&t<=12438||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12773||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=42124||t>=42128&&t<=42182||t>=43360&&t<=43388||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=94176&&t<=94180||t>=94192&&t<=94198||t>=94208&&t<=101589||t>=101631&&t<=101662||t>=101760&&t<=101874||t>=110576&&t<=110579||t>=110581&&t<=110587||t===110589||t===110590||t>=110592&&t<=110882||t===110898||t>=110928&&t<=110930||t===110933||t>=110948&&t<=110951||t>=110960&&t<=111355||t>=119552&&t<=119638||t>=119648&&t<=119670||t===126980||t===127183||t===127374||t>=127377&&t<=127386||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t===127568||t===127569||t>=127584&&t<=127589||t>=127744&&t<=127776||t>=127789&&t<=127797||t>=127799&&t<=127868||t>=127870&&t<=127891||t>=127904&&t<=127946||t>=127951&&t<=127955||t>=127968&&t<=127984||t===127988||t>=127992&&t<=128062||t===128064||t>=128066&&t<=128252||t>=128255&&t<=128317||t>=128331&&t<=128334||t>=128336&&t<=128359||t===128378||t===128405||t===128406||t===128420||t>=128507&&t<=128591||t>=128640&&t<=128709||t===128716||t>=128720&&t<=128722||t>=128725&&t<=128728||t>=128732&&t<=128735||t===128747||t===128748||t>=128756&&t<=128764||t>=128992&&t<=129003||t===129008||t>=129292&&t<=129338||t>=129340&&t<=129349||t>=129351&&t<=129535||t>=129648&&t<=129660||t>=129664&&t<=129674||t>=129678&&t<=129734||t===129736||t>=129741&&t<=129756||t>=129759&&t<=129770||t>=129775&&t<=129784||t>=131072&&t<=196605||t>=196608&&t<=262141}function Mo(t){if(!Number.isSafeInteger(t))throw new TypeError(`Expected a code point, got \`${typeof t}\`.`)}function an(t,{ambiguousAsWide:e=!1}={}){return Mo(t),sn(t)||un(t)||e&&rn(t)?2:1}var Dn=O(cn(),1),qo=new Intl.Segmenter,Wo=new RegExp("^\\p{Default_Ignorable_Code_Point}$","u");function ot(t,e={}){if(typeof t!="string"||t.length===0)return 0;let{ambiguousIsNarrow:n=!0,countAnsiEscapeCodes:o=!1}=e;if(o||(t=te(t)),t.length===0)return 0;let r=0,i={ambiguousAsWide:!n};for(let{segment:s}of qo.segment(t)){let u=s.codePointAt(0);if(!(u<=31||u>=127&&u<=159)&&!(u>=8203&&u<=8207||u===65279)&&!(u>=768&&u<=879||u>=6832&&u<=6911||u>=7616&&u<=7679||u>=8400&&u<=8447||u>=65056&&u<=65071)&&!(u>=55296&&u<=57343)&&!(u>=65024&&u<=65039)&&!Wo.test(s)){if((0,Dn.default)().test(s)){r+=2;continue}r+=an(u,i)}}return r}function rt({stream:t=process.stdout}={}){return!!(t&&t.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}var it=O(require("node:process"),1);function st(){let{env:t}=it.default,{TERM:e,TERM_PROGRAM:n}=t;return it.default.platform!=="win32"?e!=="linux":!!t.WT_SESSION||!!t.TERMINUS_SUBLIME||t.ConEmuTask==="{cmd::Cmder}"||n==="Terminus-Sublime"||n==="vscode"||e==="xterm-256color"||e==="alacritty"||e==="rxvt-unicode"||e==="rxvt-unicode-256color"||t.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var P=O(require("node:process"),1),zo=3,ut=class{#s=0;start(){this.#s++,this.#s===1&&this.#n()}stop(){if(this.#s<=0)throw new Error("`stop` called more times than `start`");this.#s--,this.#s===0&&this.#e()}#n(){P.default.platform==="win32"||!P.default.stdin.isTTY||(P.default.stdin.setRawMode(!0),P.default.stdin.on("data",this.#r),P.default.stdin.resume())}#e(){P.default.stdin.isTTY&&(P.default.stdin.off("data",this.#r),P.default.stdin.pause(),P.default.stdin.setRawMode(!1))}#r(e){e[0]===zo&&P.default.emit("SIGINT")}},Yo=new ut,at=Yo;var Jo=O(et(),1),lt=class{#s=0;#n=!1;#e=0;#r=-1;#h=0;#t;#i;#o;#f;#m;#l;#c;#D;#p;#u;#a;color;constructor(e){typeof e=="string"&&(e={text:e}),this.#t={color:"cyan",stream:ne.default.stderr,discardStdin:!0,hideCursor:!0,...e},this.color=this.#t.color,this.spinner=this.#t.spinner,this.#m=this.#t.interval,this.#o=this.#t.stream,this.#l=typeof this.#t.isEnabled=="boolean"?this.#t.isEnabled:rt({stream:this.#o}),this.#c=typeof this.#t.isSilent=="boolean"?this.#t.isSilent:!1,this.text=this.#t.text,this.prefixText=this.#t.prefixText,this.suffixText=this.#t.suffixText,this.indent=this.#t.indent,ne.default.env.NODE_ENV==="test"&&(this._stream=this.#o,this._isEnabled=this.#l,Object.defineProperty(this,"_linesToClear",{get(){return this.#s},set(n){this.#s=n}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#r}}),Object.defineProperty(this,"_lineCount",{get(){return this.#e}}))}get indent(){return this.#D}set indent(e=0){if(!(e>=0&&Number.isInteger(e)))throw new Error("The `indent` option must be an integer from 0 and up");this.#D=e,this.#d()}get interval(){return this.#m??this.#i.interval??100}get spinner(){return this.#i}set spinner(e){if(this.#r=-1,this.#m=void 0,typeof e=="object"){if(e.frames===void 0)throw new Error("The given spinner must have a `frames` property");this.#i=e}else if(!st())this.#i=oe.default.line;else if(e===void 0)this.#i=oe.default.dots;else if(e!=="default"&&oe.default[e])this.#i=oe.default[e];else throw new Error(`There is no built-in spinner named '${e}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#p}set text(e=""){this.#p=e,this.#d()}get prefixText(){return this.#u}set prefixText(e=""){this.#u=e,this.#d()}get suffixText(){return this.#a}set suffixText(e=""){this.#a=e,this.#d()}get isSpinning(){return this.#f!==void 0}#g(e=this.#u,n=" "){return typeof e=="string"&&e!==""?e+n:typeof e=="function"?e()+n:""}#F(e=this.#a,n=" "){return typeof e=="string"&&e!==""?n+e:typeof e=="function"?n+e():""}#d(){let e=this.#o.columns??80,n=this.#g(this.#u,"-"),o=this.#F(this.#a,"-"),r=" ".repeat(this.#D)+n+"--"+this.#p+"--"+o;this.#e=0;for(let i of te(r).split(`
32
32
  `))this.#e+=Math.max(1,Math.ceil(ot(i,{countAnsiEscapeCodes:!0})/e))}get isEnabled(){return this.#l&&!this.#c}set isEnabled(e){if(typeof e!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this.#l=e}get isSilent(){return this.#c}set isSilent(e){if(typeof e!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this.#c=e}frame(){let e=Date.now();(this.#r===-1||e-this.#h>=this.interval)&&(this.#r=++this.#r%this.#i.frames.length,this.#h=e);let{frames:n}=this.#i,o=n[this.#r];this.color&&(o=a[this.color](o));let r=typeof this.#u=="string"&&this.#u!==""?this.#u+" ":"",i=typeof this.text=="string"?" "+this.text:"",s=typeof this.#a=="string"&&this.#a!==""?" "+this.#a:"";return r+o+i+s}clear(){if(!this.#l||!this.#o.isTTY)return this;this.#o.cursorTo(0);for(let e=0;e<this.#s;e++)e>0&&this.#o.moveCursor(0,-1),this.#o.clearLine(1);return(this.#D||this.lastIndent!==this.#D)&&this.#o.cursorTo(this.#D),this.lastIndent=this.#D,this.#s=0,this}render(){return this.#c?this:(this.clear(),this.#o.write(this.frame()),this.#s=this.#e,this)}start(e){return e&&(this.text=e),this.#c?this:this.#l?this.isSpinning?this:(this.#t.hideCursor&&Ze.hide(this.#o),this.#t.discardStdin&&ne.default.stdin.isTTY&&(this.#n=!0,at.start()),this.render(),this.#f=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.#o.write(`- ${this.text}
33
33
  `),this)}stop(){return this.#l?(clearInterval(this.#f),this.#f=void 0,this.#r=0,this.clear(),this.#t.hideCursor&&Ze.show(this.#o),this.#t.discardStdin&&ne.default.stdin.isTTY&&this.#n&&(at.stop(),this.#n=!1),this):this}succeed(e){return this.stopAndPersist({symbol:ee.success,text:e})}fail(e){return this.stopAndPersist({symbol:ee.error,text:e})}warn(e){return this.stopAndPersist({symbol:ee.warning,text:e})}info(e){return this.stopAndPersist({symbol:ee.info,text:e})}stopAndPersist(e={}){if(this.#c)return this;let n=e.prefixText??this.#u,o=this.#g(n," "),r=e.symbol??" ",i=e.text??this.text,u=typeof i=="string"?(r?" ":"")+i:"",l=e.suffixText??this.#a,D=this.#F(l," "),c=o+r+u+D+`
34
- `;return this.stop(),this.#o.write(c),this}};function R(t){return new lt(t)}var mn=require("http"),_e=require("child_process");var $=require("fs"),hn=require("os"),z=require("path"),fn=require("url"),Xo={},ct=(0,z.join)((0,hn.homedir)(),".gal"),Ce=(0,z.join)(ct,"config.json"),Ko={development:"http://localhost:3000",staging:"https://gal-api-staging.schedulersystems.com",production:"https://gal-api.schedulersystems.com"};function dn(){let t=process.env.GAL_ENV?.toLowerCase();if(t==="development"||t==="dev"||t==="local")return"development";if(t==="staging"||t==="stg"||t==="beta")return"staging";if(t==="production"||t==="prod")return"production";if(process.argv[1]?.includes("tsx")||process.argv[1]?.includes("ts-node")||process.argv[1]?.endsWith(".ts")||process.env.npm_lifecycle_event==="dev"||process.env.NODE_ENV==="development")return"development";try{let n=(0,fn.fileURLToPath)(Xo.url),o=(0,z.dirname)(n),r=(0,z.join)(o,"..","package.json");if((0,$.existsSync)(r)){let s=JSON.parse((0,$.readFileSync)(r,"utf-8")).version||"";if(s.includes("-beta")||s.includes("-rc")||s.includes("-alpha"))return"staging"}}catch{}return"production"}function Qo(){let t=dn();return Ko[t]}var v=class{static getEnvironment(){return dn()}static load(){let e=Qo();if(!(0,$.existsSync)(Ce))return{apiUrl:e};try{let n=(0,$.readFileSync)(Ce,"utf-8"),o=JSON.parse(n);return o.apiUrl||(o.apiUrl=e),o}catch(n){return console.error("Error loading config:",n),{apiUrl:e}}}static save(e){(0,$.existsSync)(ct)||(0,$.mkdirSync)(ct,{recursive:!0}),(0,$.writeFileSync)(Ce,JSON.stringify(e,null,2),"utf-8")}static set(e,n){let o=this.load();o[e]=n,this.save(o)}static get(e){return this.load()[e]}static getConfigPath(){return Ce}};var U=class{config;constructor(e){this.config=e}async getCurrentUser(){return(await(await this.fetch("/auth/me")).json()).user}async listOrganizations(){return(await(await this.fetch("/organizations")).json()).organizations}async getOrganization(e){return(await(await this.fetch(`/organizations/${e}`)).json()).organization}async scanOrganization(e){return await(await this.fetch(`/scan/${e}`,{method:"POST"})).json()}async downloadConfigs(e,n){let o=new URLSearchParams;n&&o.set("platform",n);let r=`/organizations/${e}/configs${o.toString()?"?"+o.toString():""}`;return(await(await this.fetch(r)).json()).configs.map(u=>({fileName:u.fileName,content:u.content,platform:u.platform,type:u.category,repoName:u.repoName}))}async testConnection(){try{let n=await(await this.fetch("/health")).json();return n.status==="ok"&&n.service==="gal-api"}catch{return!1}}async getPolicy(e){try{return(await(await this.fetch(`/policies/${e}`)).json()).policy}catch{return null}}async getOrgPolicy(e){try{return(await(await this.fetch(`/organizations/${e}/policy`)).json()).policy}catch{return null}}async fleetRegister(e,n){return await(await this.fetch(`/organizations/${e}/fleet/register`,{method:"POST",body:JSON.stringify(n)})).json()}async fleetHeartbeat(e){return await(await this.fetch("/fleet/heartbeat",{method:"POST",body:JSON.stringify(e)})).json()}async fleetStatus(e){return await(await this.fetch(`/fleet/developers/${e}/status`)).json()}async fleetList(e,n="all"){let o=new URLSearchParams;n!=="all"&&o.set("status",n);let r=`/organizations/${e}/fleet${o.toString()?"?"+o.toString():""}`;return await(await this.fetch(r)).json()}async fleetReport(e){return await(await this.fetch(`/organizations/${e}/fleet/report`)).json()}async fleetUnenroll(e){await this.fetch(`/fleet/developers/${e}`,{method:"DELETE"})}async getApprovedConfig(e,n){try{return await(await this.fetch(`/organizations/${e}/approved-config?platform=${n}`)).json()}catch(o){if(o.message?.includes("404"))return{approved:!1};throw o}}async validateInvite(e){return await(await this.fetch(`/invites/${encodeURIComponent(e)}/validate`)).json()}async useInvite(e,n){return await(await this.fetch(`/invites/${encodeURIComponent(e)}/use`,{method:"POST",body:JSON.stringify(n)})).json()}async fetch(e,n={}){if(!this.config.apiUrl)throw new Error("API URL not configured. Run: gal config set apiUrl <url>");let o=`${this.config.apiUrl}${e}`,r={"Content-Type":"application/json",...n.headers};this.config.authToken?r.Authorization=`Bearer ${this.config.authToken}`:this.config.apiKey&&(r.Authorization=`Bearer ${this.config.apiKey}`);let i=await fetch(o,{...n,headers:r});if(!i.ok){let s=`API request failed: ${i.status} ${i.statusText}`;try{let u=await i.json();u&&u.error&&(s=u.error)}catch{}throw new Error(s)}return i}};var pn=require("os"),k=require("fs"),re=require("path");var Zo=process.env.GAL_API_URL||j;var qi=60*60*1e3;function Ee(t,e=Zo){return`#!/usr/bin/env node
34
+ `;return this.stop(),this.#o.write(c),this}};function R(t){return new lt(t)}var mn=require("http"),_e=require("child_process");var $=require("fs"),fn=require("os"),z=require("path"),dn=require("url"),Qo={},ct=(0,z.join)((0,fn.homedir)(),".gal"),Ce=(0,z.join)(ct,"config.json"),Ko={development:"http://localhost:3000",staging:"https://gal-api-staging-s3pvf4isfa-uc.a.run.app",production:"https://gal-api-s3pvf4isfa-uc.a.run.app"};function hn(){let t=process.env.GAL_ENV?.toLowerCase();if(t==="development"||t==="dev"||t==="local")return"development";if(t==="staging"||t==="stg"||t==="beta")return"staging";if(t==="production"||t==="prod")return"production";if(process.argv[1]?.includes("tsx")||process.argv[1]?.includes("ts-node")||process.argv[1]?.endsWith(".ts")||process.env.npm_lifecycle_event==="dev"||process.env.NODE_ENV==="development")return"development";try{let n=(0,dn.fileURLToPath)(Qo.url),o=(0,z.dirname)(n),r=(0,z.join)(o,"..","package.json");if((0,$.existsSync)(r)){let s=JSON.parse((0,$.readFileSync)(r,"utf-8")).version||"";if(s.includes("-beta")||s.includes("-rc")||s.includes("-alpha"))return"staging"}}catch{}return"production"}var v=class{static getEnvironment(){return hn()}static load(){let e=hn(),n=Ko[e];if(!(0,$.existsSync)(Ce))return{apiUrl:n};try{let o=(0,$.readFileSync)(Ce,"utf-8"),r=JSON.parse(o);return r.apiUrl||(r.apiUrl=n),e!=="development"&&r.apiUrl.includes("localhost")&&(r.apiUrl=n),r}catch(o){return console.error("Error loading config:",o),{apiUrl:n}}}static save(e){(0,$.existsSync)(ct)||(0,$.mkdirSync)(ct,{recursive:!0}),(0,$.writeFileSync)(Ce,JSON.stringify(e,null,2),"utf-8")}static set(e,n){let o=this.load();o[e]=n,this.save(o)}static get(e){return this.load()[e]}static getConfigPath(){return Ce}};var U=class{config;constructor(e){this.config=e}async getCurrentUser(){return(await(await this.fetch("/auth/me")).json()).user}async listOrganizations(){return(await(await this.fetch("/organizations")).json()).organizations}async getOrganization(e){return(await(await this.fetch(`/organizations/${e}`)).json()).organization}async scanOrganization(e){return await(await this.fetch(`/scan/${e}`,{method:"POST"})).json()}async downloadConfigs(e,n){let o=new URLSearchParams;n&&o.set("platform",n);let r=`/organizations/${e}/configs${o.toString()?"?"+o.toString():""}`;return(await(await this.fetch(r)).json()).configs.map(u=>({fileName:u.fileName,content:u.content,platform:u.platform,type:u.category,repoName:u.repoName}))}async testConnection(){try{let n=await(await this.fetch("/health")).json();return n.status==="ok"&&n.service==="gal-api"}catch{return!1}}async getPolicy(e){try{return(await(await this.fetch(`/policies/${e}`)).json()).policy}catch{return null}}async getOrgPolicy(e){try{return(await(await this.fetch(`/organizations/${e}/policy`)).json()).policy}catch{return null}}async fleetRegister(e,n){return await(await this.fetch(`/organizations/${e}/fleet/register`,{method:"POST",body:JSON.stringify(n)})).json()}async fleetHeartbeat(e){return await(await this.fetch("/fleet/heartbeat",{method:"POST",body:JSON.stringify(e)})).json()}async fleetStatus(e){return await(await this.fetch(`/fleet/developers/${e}/status`)).json()}async fleetList(e,n="all"){let o=new URLSearchParams;n!=="all"&&o.set("status",n);let r=`/organizations/${e}/fleet${o.toString()?"?"+o.toString():""}`;return await(await this.fetch(r)).json()}async fleetReport(e){return await(await this.fetch(`/organizations/${e}/fleet/report`)).json()}async fleetUnenroll(e){await this.fetch(`/fleet/developers/${e}`,{method:"DELETE"})}async getApprovedConfig(e,n){try{return await(await this.fetch(`/organizations/${e}/approved-config?platform=${n}`)).json()}catch(o){if(o.message?.includes("404"))return{approved:!1};throw o}}async validateInvite(e){return await(await this.fetch(`/invites/${encodeURIComponent(e)}/validate`)).json()}async useInvite(e,n){return await(await this.fetch(`/invites/${encodeURIComponent(e)}/use`,{method:"POST",body:JSON.stringify(n)})).json()}async fetch(e,n={}){if(!this.config.apiUrl)throw new Error("API URL not configured. Run: gal config set apiUrl <url>");let o=`${this.config.apiUrl}${e}`,r={"Content-Type":"application/json",...n.headers};this.config.authToken?r.Authorization=`Bearer ${this.config.authToken}`:this.config.apiKey&&(r.Authorization=`Bearer ${this.config.apiKey}`);let i=await fetch(o,{...n,headers:r});if(!i.ok){let s=`API request failed: ${i.status} ${i.statusText}`;try{let u=await i.json();u&&u.error&&(s=u.error)}catch{}throw new Error(s)}return i}};var pn=require("os"),k=require("fs"),re=require("path");var Xo=process.env.GAL_API_URL||j;var Mi=60*60*1e3;function Ee(t,e=Xo){return`#!/usr/bin/env node
35
35
  /**
36
36
  * GAL Config Sync Hook for Claude Code (UserPromptSubmit)
37
37
  * Reminds developers to authenticate and sync with org-approved configs.
@@ -187,10 +187,10 @@ if (state.syncedFiles && state.syncedFiles.length > 0) {
187
187
 
188
188
  // All good - config is up-to-date and complete
189
189
  process.exit(0);
190
- `}var ye=9876,gn="/callback";function er(t){let e=process.platform;try{e==="darwin"?(0,_e.execSync)(`open "${t}"`):e==="win32"?(0,_e.execSync)(`start "" "${t}"`):(0,_e.execSync)(`xdg-open "${t}"`)}catch{console.log(a.yellow(`
190
+ `}var ye=9876,gn="/callback";function Zo(t){let e=process.platform;try{e==="darwin"?(0,_e.execSync)(`open "${t}"`):e==="win32"?(0,_e.execSync)(`start "" "${t}"`):(0,_e.execSync)(`xdg-open "${t}"`)}catch{console.log(a.yellow(`
191
191
  Could not open browser. Please visit:
192
192
  ${t}
193
- `))}}function tr(t,e){let n=(0,re.join)((0,pn.homedir)(),".claude"),o=(0,re.join)(n,"hooks"),r=(0,re.join)(o,"gal-sync-reminder.js"),i=(0,re.join)(n,"settings.json");try{(0,k.existsSync)(o)||(0,k.mkdirSync)(o,{recursive:!0});let s=Ee(t,e);(0,k.writeFileSync)(r,s,"utf-8"),(0,k.chmodSync)(r,"755");let u={};if((0,k.existsSync)(i))try{u=JSON.parse((0,k.readFileSync)(i,"utf-8"))}catch{}u.hooks||(u.hooks={}),u.hooks.UserPromptSubmit||(u.hooks.UserPromptSubmit=[]);let l=`node ${r}`;return u.hooks.UserPromptSubmit.some(c=>c.hooks?.some(h=>h.command===l))||(u.hooks.UserPromptSubmit.push({hooks:[{type:"command",command:l}]}),(0,k.writeFileSync)(i,JSON.stringify(u,null,2),"utf-8")),!0}catch{return!1}}function nr(t=12e4){return new Promise((e,n)=>{let o=(0,mn.createServer)((i,s)=>{let u=new URL(i.url||"",`http://localhost:${ye}`);if(u.pathname===gn){let l=u.searchParams.get("token"),D=u.searchParams.get("error"),c=u.searchParams.get("user");if(D){s.writeHead(200,{"Content-Type":"text/html"}),s.end(`
193
+ `))}}function er(t,e){let n=(0,re.join)((0,pn.homedir)(),".claude"),o=(0,re.join)(n,"hooks"),r=(0,re.join)(o,"gal-sync-reminder.js"),i=(0,re.join)(n,"settings.json");try{(0,k.existsSync)(o)||(0,k.mkdirSync)(o,{recursive:!0});let s=Ee(t,e);(0,k.writeFileSync)(r,s,"utf-8"),(0,k.chmodSync)(r,"755");let u={};if((0,k.existsSync)(i))try{u=JSON.parse((0,k.readFileSync)(i,"utf-8"))}catch{}u.hooks||(u.hooks={}),u.hooks.UserPromptSubmit||(u.hooks.UserPromptSubmit=[]);let l=`node ${r}`;return u.hooks.UserPromptSubmit.some(c=>c.hooks?.some(h=>h.command===l))||(u.hooks.UserPromptSubmit.push({hooks:[{type:"command",command:l}]}),(0,k.writeFileSync)(i,JSON.stringify(u,null,2),"utf-8")),!0}catch{return!1}}function tr(t=12e4){return new Promise((e,n)=>{let o=(0,mn.createServer)((i,s)=>{let u=new URL(i.url||"",`http://localhost:${ye}`);if(u.pathname===gn){let l=u.searchParams.get("token"),D=u.searchParams.get("error"),c=u.searchParams.get("user");if(D){s.writeHead(200,{"Content-Type":"text/html"}),s.end(`
194
194
  <html>
195
195
  <body style="font-family: system-ui; padding: 40px; text-align: center;">
196
196
  <h1 style="color: #dc2626;">\u274C Authentication Failed</h1>
@@ -209,9 +209,9 @@ ${t}
209
209
  `),o.close();let h=null;if(c)try{h=JSON.parse(decodeURIComponent(c))}catch{}e({token:l,user:h});return}s.writeHead(400,{"Content-Type":"text/plain"}),s.end("Missing token");return}s.writeHead(404,{"Content-Type":"text/plain"}),s.end("Not found")});o.listen(ye,()=>{});let r=setTimeout(()=>{o.close(),n(new Error("Authentication timed out. Please try again."))},t);o.on("close",()=>{clearTimeout(r)}),o.on("error",i=>{i.code==="EADDRINUSE"?n(new Error(`Port ${ye} is in use. Close other GAL auth processes and try again.`)):n(i)})})}function Fn(){let t=new I("auth").description("Manage GitHub authentication");return t.command("login").description("Authenticate with GitHub OAuth").action(async()=>{console.log(a.blue(`
210
210
  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)),console.log(a.blue(" GAL CLI - GitHub Authentication")),console.log(a.blue(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
211
211
  `));let e=v.load(),n=e.apiUrl||process.env.GAL_API_URL||j;if(e.authToken){let r=new U(e);try{let i=await r.getCurrentUser();console.log(a.yellow(`Already logged in as ${a.bold(i.login)}`)),console.log(a.dim(`Use "gal auth logout" first to switch accounts.
212
- `));return}catch{}}let o=R("Starting authentication...").start();try{let r=`http://localhost:${ye}${gn}`,i=`${n}/auth/github?redirect=${encodeURIComponent(r)}&source=cli&force_select=true`;o.text="Opening browser for GitHub authentication...";let s=nr();er(i),o.text="Waiting for authentication (check your browser)...";let{token:u,user:l}=await s;o.succeed(a.green("Authentication successful!")),e.authToken=u,l?(e.defaultOrg=l.organizations?.[0]||void 0,console.log(a.blue(`
212
+ `));return}catch{}}let o=R("Starting authentication...").start();try{let r=`http://localhost:${ye}${gn}`,i=`${n}/auth/github?redirect=${encodeURIComponent(r)}&source=cli&force_select=true`;o.text="Opening browser for GitHub authentication...";let s=tr();Zo(i),o.text="Waiting for authentication (check your browser)...";let{token:u,user:l}=await s;o.succeed(a.green("Authentication successful!")),e.authToken=u,l?(e.defaultOrg=l.organizations?.[0]||void 0,console.log(a.blue(`
213
213
  Logged in as:`)),console.log(` User: ${a.bold(l.login)}`),console.log(` Name: ${l.name||a.dim("(not set)")}`),console.log(` Email: ${l.email||a.dim("(not set)")}`),l.organizations?.length&&(console.log(` Organizations: ${l.organizations.join(", ")}`),console.log(` Default org: ${a.bold(e.defaultOrg)}`))):console.log(a.dim(`
214
- User details not available.`));let D=e.defaultOrg||"your-organization";tr(D,n)&&console.log(a.dim(" \u2713 Sync reminder hook installed")),v.save(e),console.log(a.green(`
214
+ User details not available.`));let D=e.defaultOrg||"your-organization";er(D,n)&&console.log(a.dim(" \u2713 Sync reminder hook installed")),v.save(e),console.log(a.green(`
215
215
  \u2713 Credentials saved!
216
216
  `)),console.log("Next steps:"),console.log(` ${a.cyan("gal sync --pull")} - Pull org-approved config`),console.log(` ${a.cyan("gal auth status")} - Check auth status
217
217
  `)}catch(r){o.fail(a.red("Authentication failed")),r instanceof Error&&console.error(a.red(r.message)),process.exit(1)}}),t.command("status").description("Show current authentication status").action(async()=>{let e=v.load();if(!e.authToken){console.log(a.yellow(`
@@ -223,30 +223,30 @@ Not authenticated.`)),console.log(a.dim(`Run: gal auth login
223
223
  Not logged in.
224
224
  `));return}delete e.authToken,delete e.defaultOrg,v.save(e),console.log(a.green(`
225
225
  \u2713 Logged out successfully.
226
- `))}),t}var f=require("fs"),_=require("path"),Cn=require("os"),En=require("crypto");async function or(t,e){let n=(0,_.join)((0,Cn.homedir)(),".claude","hooks"),o=(0,_.join)(n,"gal-sync-reminder.js");if((0,f.existsSync)(o)&&(0,f.readFileSync)(o,"utf-8").includes("GAL Config Sync Hook"))return!0;try{(0,f.existsSync)(n)||(0,f.mkdirSync)(n,{recursive:!0});let r=Ee(t,e);return(0,f.writeFileSync)(o,r,"utf-8"),(0,f.chmodSync)(o,"755"),!0}catch(r){return console.error(a.yellow(`Warning: Could not install sync reminder hook: ${r}`)),!1}}function rr(t,e,n,o,r=[]){let i=(0,_.join)(process.cwd(),".gal"),s=(0,_.join)(i,"sync-state.json");(0,f.existsSync)(i)||(0,f.mkdirSync)(i,{recursive:!0});let u={lastSyncTimestamp:new Date().toISOString(),lastSyncHash:e,approvedConfigHash:n,lastCheckTimestamp:new Date().toISOString(),organization:t,version:o,syncedFiles:r.length>0?r:void 0};(0,f.writeFileSync)(s,JSON.stringify(u,null,2),"utf-8")}function ir(t){return(0,En.createHash)("sha256").update(t).digest("hex").substring(0,16)}function _n(){let t=new I("sync");return t.description("Sync local configs with CISO-approved organization standard").argument("[orgName]","Organization name (uses default if not specified)").option("-d, --directory <path>","Local config directory",process.cwd()).option("-p, --platform <platform>","Filter by platform (claude, cursor, etc.)").option("--pull","Download CISO-approved config to local directory").option("--check","Check if local files match approved config (for hooks)").option("--json","Output as JSON").action(async(e,n)=>{try{let o=v.load();!o.authToken&&!o.apiKey&&(console.error(a.red("Error: Not authenticated")),console.log(a.dim("Run: gal auth login")),process.exit(1));let r=e||o.defaultOrg;r||(console.error(a.red("Error: No organization specified and no default set")),console.log(a.dim("Usage: gal sync <orgName>")),console.log(a.dim(" or: gal config set defaultOrg <orgName>")),process.exit(1));let i=o.apiUrl||process.env.GAL_API_URL||j,s=new U({...o,apiUrl:i});if(n.pull){await lr(s,r,n.directory,n.platform,i);return}if(n.check){await cr(s,r,n.directory,n.platform);return}let u=R(`Comparing configs for ${r}...`).start(),l;try{l=await s.getOrganization(r)}catch(h){u.fail(a.red(`Failed to fetch organization ${r}`)),console.error(a.dim(h.message)),process.exit(1)}let D=sr(n.directory,n.platform);u.stop();let c=ur(D,l);if(n.json){console.log(JSON.stringify(c,null,2));return}ar(r,c)}catch(o){console.error(a.red("Error:"),o.message),process.exit(1)}}),t}function sr(t,e){let n=["claude","cursor","gemini","codex","windsurf"],o=[];for(let r of n){if(e&&r!==e)continue;let i=Dt(r),s=(0,_.join)(t,i);if(!(0,f.existsSync)(s))continue;let u=[],l=(0,_.join)(s,"settings.json");(0,f.existsSync)(l)&&u.push({path:l,type:"settings",content:(0,f.readFileSync)(l,"utf-8")});let D=(0,_.join)(s,"rules");if((0,f.existsSync)(D)){let c=(0,f.readdirSync)(D).filter(h=>h.endsWith(".md")||h.endsWith(".mdc"));for(let h of c){let d=(0,_.join)(D,h);u.push({path:d,type:"rule",content:(0,f.readFileSync)(d,"utf-8")})}}if(r==="claude"){let c=(0,_.join)(s,"commands");if((0,f.existsSync)(c)){let d=(0,f.readdirSync)(c).filter(p=>p.endsWith(".md"));for(let p of d){let m=(0,_.join)(c,p);u.push({path:m,type:"command",content:(0,f.readFileSync)(m,"utf-8")})}}let h=(0,_.join)(s,"hooks");if((0,f.existsSync)(h)){let d=(0,f.readdirSync)(h).filter(p=>p.endsWith(".py")||p.endsWith(".sh"));for(let p of d){let m=(0,_.join)(h,p);u.push({path:m,type:"hook",content:(0,f.readFileSync)(m,"utf-8")})}}}u.length>0&&o.push({platform:r,directory:s,files:u})}return o}function Dt(t){return{claude:".claude",cursor:".cursor",gemini:".gemini",codex:".codex",windsurf:".windsurf"}[t]}function ur(t,e){let n={platforms:{},summary:{localOnly:0,remoteOnly:0,inSync:0,total:0}},o=t.find(s=>s.platform==="claude"),r=e.totalCommands+e.totalHooks+(e.settings.versions>0?1:0),i={hasLocal:!!o,hasRemote:r>0,localCount:o?.files.length||0,remoteCount:r};return o&&r===0?(i.status="local-only",n.summary.localOnly+=o.files.length):!o&&r>0?(i.status="remote-only",n.summary.remoteOnly+=r):o&&r>0&&(i.status="exists-both",n.summary.inSync+=o.files.length),n.platforms.claude=i,n.summary.total=Math.max(i.localCount,i.remoteCount),n}function ar(t,e){console.log(a.blue(`
226
+ `))}),t}var f=require("fs"),_=require("path"),Cn=require("os"),En=require("crypto");async function nr(t,e){let n=(0,_.join)((0,Cn.homedir)(),".claude","hooks"),o=(0,_.join)(n,"gal-sync-reminder.js");if((0,f.existsSync)(o)&&(0,f.readFileSync)(o,"utf-8").includes("GAL Config Sync Hook"))return!0;try{(0,f.existsSync)(n)||(0,f.mkdirSync)(n,{recursive:!0});let r=Ee(t,e);return(0,f.writeFileSync)(o,r,"utf-8"),(0,f.chmodSync)(o,"755"),!0}catch(r){return console.error(a.yellow(`Warning: Could not install sync reminder hook: ${r}`)),!1}}function or(t,e,n,o,r=[]){let i=(0,_.join)(process.cwd(),".gal"),s=(0,_.join)(i,"sync-state.json");(0,f.existsSync)(i)||(0,f.mkdirSync)(i,{recursive:!0});let u={lastSyncTimestamp:new Date().toISOString(),lastSyncHash:e,approvedConfigHash:n,lastCheckTimestamp:new Date().toISOString(),organization:t,version:o,syncedFiles:r.length>0?r:void 0};(0,f.writeFileSync)(s,JSON.stringify(u,null,2),"utf-8")}function rr(t){return(0,En.createHash)("sha256").update(t).digest("hex").substring(0,16)}function _n(){let t=new I("sync");return t.description("Sync local configs with CISO-approved organization standard").argument("[orgName]","Organization name (uses default if not specified)").option("-d, --directory <path>","Local config directory",process.cwd()).option("-p, --platform <platform>","Filter by platform (claude, cursor, etc.)").option("--pull","Download CISO-approved config to local directory").option("--check","Check if local files match approved config (for hooks)").option("--json","Output as JSON").action(async(e,n)=>{try{let o=v.load();!o.authToken&&!o.apiKey&&(console.error(a.red("Error: Not authenticated")),console.log(a.dim("Run: gal auth login")),process.exit(1));let r=e||o.defaultOrg;r||(console.error(a.red("Error: No organization specified and no default set")),console.log(a.dim("Usage: gal sync <orgName>")),console.log(a.dim(" or: gal config set defaultOrg <orgName>")),process.exit(1));let i=o.apiUrl||process.env.GAL_API_URL||j,s=new U({...o,apiUrl:i});if(n.pull){await ar(s,r,n.directory,n.platform,i);return}if(n.check){await lr(s,r,n.directory,n.platform);return}let u=R(`Comparing configs for ${r}...`).start(),l;try{l=await s.getOrganization(r)}catch(h){u.fail(a.red(`Failed to fetch organization ${r}`)),console.error(a.dim(h.message)),process.exit(1)}let D=ir(n.directory,n.platform);u.stop();let c=sr(D,l);if(n.json){console.log(JSON.stringify(c,null,2));return}ur(r,c)}catch(o){console.error(a.red("Error:"),o.message),process.exit(1)}}),t}function ir(t,e){let n=["claude","cursor","gemini","codex","windsurf"],o=[];for(let r of n){if(e&&r!==e)continue;let i=Dt(r),s=(0,_.join)(t,i);if(!(0,f.existsSync)(s))continue;let u=[],l=(0,_.join)(s,"settings.json");(0,f.existsSync)(l)&&u.push({path:l,type:"settings",content:(0,f.readFileSync)(l,"utf-8")});let D=(0,_.join)(s,"rules");if((0,f.existsSync)(D)){let c=(0,f.readdirSync)(D).filter(h=>h.endsWith(".md")||h.endsWith(".mdc"));for(let h of c){let d=(0,_.join)(D,h);u.push({path:d,type:"rule",content:(0,f.readFileSync)(d,"utf-8")})}}if(r==="claude"){let c=(0,_.join)(s,"commands");if((0,f.existsSync)(c)){let d=(0,f.readdirSync)(c).filter(p=>p.endsWith(".md"));for(let p of d){let m=(0,_.join)(c,p);u.push({path:m,type:"command",content:(0,f.readFileSync)(m,"utf-8")})}}let h=(0,_.join)(s,"hooks");if((0,f.existsSync)(h)){let d=(0,f.readdirSync)(h).filter(p=>p.endsWith(".py")||p.endsWith(".sh"));for(let p of d){let m=(0,_.join)(h,p);u.push({path:m,type:"hook",content:(0,f.readFileSync)(m,"utf-8")})}}}u.length>0&&o.push({platform:r,directory:s,files:u})}return o}function Dt(t){return{claude:".claude",cursor:".cursor",gemini:".gemini",codex:".codex",windsurf:".windsurf"}[t]}function sr(t,e){let n={platforms:{},summary:{localOnly:0,remoteOnly:0,inSync:0,total:0}},o=t.find(s=>s.platform==="claude"),r=e.totalCommands+e.totalHooks+(e.settings.versions>0?1:0),i={hasLocal:!!o,hasRemote:r>0,localCount:o?.files.length||0,remoteCount:r};return o&&r===0?(i.status="local-only",n.summary.localOnly+=o.files.length):!o&&r>0?(i.status="remote-only",n.summary.remoteOnly+=r):o&&r>0&&(i.status="exists-both",n.summary.inSync+=o.files.length),n.platforms.claude=i,n.summary.total=Math.max(i.localCount,i.remoteCount),n}function ur(t,e){console.log(a.blue(`
227
227
  Sync Status for ${t}:
228
228
  `));for(let[n,o]of Object.entries(e.platforms)){let r=o;console.log(a.bold(n.toUpperCase())),r.status==="local-only"?(console.log(a.yellow(" \u26A0 Local only:"),`${r.localCount} configs`),console.log(a.dim(" These configs exist locally but not in GAL"))):r.status==="remote-only"?(console.log(a.cyan(" \u2193 Remote only:"),`${r.remoteCount} configs`),console.log(a.dim(" These configs exist in GAL but not locally"))):r.status==="exists-both"&&(console.log(a.green(" \u2713 Exists in both:"),`Local: ${r.localCount}, Remote: ${r.remoteCount}`),r.localCount!==r.remoteCount&&console.log(a.dim(" File counts differ - manual review needed"))),console.log()}console.log(a.bold("Summary:")),console.log(a.gray(" Total configs:"),e.summary.total),console.log(a.yellow(" Local only:"),e.summary.localOnly),console.log(a.cyan(" Remote only:"),e.summary.remoteOnly),e.summary.localOnly>0&&console.log(a.dim(`
229
229
  \u{1F4A1} Tip: Local-only configs are not tracked by GAL. Consider pushing them to your repo.`)),e.summary.remoteOnly>0&&console.log(a.dim(`
230
- \u{1F4A1} Tip: Use "gal sync --pull" to download CISO-approved configs.`))}async function lr(t,e,n,o,r){let i=o?[o]:["claude","cursor","gemini","codex","windsurf"];console.log(a.blue(`
230
+ \u{1F4A1} Tip: Use "gal sync --pull" to download CISO-approved configs.`))}async function ar(t,e,n,o,r){let i=o?[o]:["claude","cursor","gemini","codex","windsurf"];console.log(a.blue(`
231
231
  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)),console.log(a.blue(" GAL Config Sync - Convenience Package")),console.log(a.blue(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
232
- `));let s=R("Installing sync reminder hook...").start();await or(e,r||j)?s.succeed(a.dim("Sync reminder hook installed to ~/.claude/hooks/")):s.warn(a.dim("Could not install sync reminder hook"));let l=!1,D="",c="",h="",d=[];for(let p of i){let m=R(`Checking ${p} approved config...`).start();try{let g=await t.getApprovedConfig(e,p);if(!g.approved){m.info(a.dim(`${p}: No approved config set by CISO`));continue}if(l=!0,m.succeed(a.green(`${p}: Found approved config v${g.version}`)),g.configContent){let V=Dt(p),ie=(0,_.join)(n,V);(0,f.existsSync)(ie)||(0,f.mkdirSync)(ie,{recursive:!0});let pt=ir(g.configContent);D=pt,c=pt,h=g.version||"1";try{let se=JSON.parse(g.configContent);for(let[gt,Sn]of Object.entries(se)){let Ae=(0,_.join)(ie,gt),Ft=(0,_.dirname)(Ae);(0,f.existsSync)(Ft)||(0,f.mkdirSync)(Ft,{recursive:!0}),(0,f.writeFileSync)(Ae,Sn),console.log(a.dim(` \u2192 Written: ${Ae}`));let kn=(0,_.join)(V,gt);d.push(kn)}console.log(a.green(` \u2713 ${p} config synced to v${g.version}`))}catch{let se=(0,_.join)(ie,"approved-config.json");(0,f.writeFileSync)(se,g.configContent),console.log(a.dim(` \u2192 Written: ${se}`))}}else console.log(a.yellow(" \u26A0 Config approved but content not stored")),console.log(a.dim(` Hash: ${g.hash}`)),console.log(a.dim(` Approved by: ${g.approvedBy} on ${g.approvedAt}`)),c=g.hash||"",h=g.version||"1";console.log()}catch(g){m.fail(a.red(`${p}: Failed to fetch - ${g.message}`))}}l?(rr(e,D,c,h,d),console.log(a.dim(" Sync state saved to .gal/sync-state.json")),d.length>0&&console.log(a.dim(` Tracking ${d.length} synced file(s)`)),console.log(a.green(`
232
+ `));let s=R("Installing sync reminder hook...").start();await nr(e,r||j)?s.succeed(a.dim("Sync reminder hook installed to ~/.claude/hooks/")):s.warn(a.dim("Could not install sync reminder hook"));let l=!1,D="",c="",h="",d=[];for(let p of i){let m=R(`Checking ${p} approved config...`).start();try{let g=await t.getApprovedConfig(e,p);if(!g.approved){m.info(a.dim(`${p}: No approved config set by CISO`));continue}if(l=!0,m.succeed(a.green(`${p}: Found approved config v${g.version}`)),g.configContent){let V=Dt(p),ie=(0,_.join)(n,V);(0,f.existsSync)(ie)||(0,f.mkdirSync)(ie,{recursive:!0});let pt=rr(g.configContent);D=pt,c=pt,h=g.version||"1";try{let se=JSON.parse(g.configContent);for(let[gt,Sn]of Object.entries(se)){let Ae=(0,_.join)(ie,gt),Ft=(0,_.dirname)(Ae);(0,f.existsSync)(Ft)||(0,f.mkdirSync)(Ft,{recursive:!0}),(0,f.writeFileSync)(Ae,Sn),console.log(a.dim(` \u2192 Written: ${Ae}`));let kn=(0,_.join)(V,gt);d.push(kn)}console.log(a.green(` \u2713 ${p} config synced to v${g.version}`))}catch{let se=(0,_.join)(ie,"approved-config.json");(0,f.writeFileSync)(se,g.configContent),console.log(a.dim(` \u2192 Written: ${se}`))}}else console.log(a.yellow(" \u26A0 Config approved but content not stored")),console.log(a.dim(` Hash: ${g.hash}`)),console.log(a.dim(` Approved by: ${g.approvedBy} on ${g.approvedAt}`)),c=g.hash||"",h=g.version||"1";console.log()}catch(g){m.fail(a.red(`${p}: Failed to fetch - ${g.message}`))}}l?(or(e,D,c,h,d),console.log(a.dim(" Sync state saved to .gal/sync-state.json")),d.length>0&&console.log(a.dim(` Tracking ${d.length} synced file(s)`)),console.log(a.green(`
233
233
  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)),console.log(a.green(" \u2713 Sync complete! Your configs match org standard.")),console.log(a.green("\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550")),console.log(a.yellow(`
234
234
  \u26A0\uFE0F RESTART Claude Code for new slash commands to work.
235
235
  `))):(console.log(a.yellow(`
236
236
  \u26A0 No CISO-approved configs found for this organization.`)),console.log(a.dim(" Ask your admin to approve configs on the GAL dashboard.")),console.log(a.dim(` Dashboard: https://app.gal.run/approved-config
237
- `)))}async function cr(t,e,n,o){let r=o?[o]:["claude"],i={inSync:!0,missingFiles:[],expectedFiles:[]};for(let s of r)try{let u=await t.getApprovedConfig(e,s);if(!u.approved||!u.configContent)continue;i.approvedHash=u.hash;try{let l=JSON.parse(u.configContent),D=Dt(s);for(let c of Object.keys(l)){let h=(0,_.join)(D,c),d=(0,_.join)(n,h);i.expectedFiles.push(h),(0,f.existsSync)(d)||(i.missingFiles.push(h),i.inSync=!1)}}catch{}}catch{}console.log(JSON.stringify(i))}function yn(){let t=new I("config");return t.description("Manage GAL CLI configuration").action(()=>{let e=v.load(),n=v.getEnvironment(),r={development:a.yellow,staging:a.cyan,production:a.green}[n]||a.white;console.log(a.blue("Current Configuration:")),console.log(a.gray(" Environment:"),r(n)),console.log(a.gray(" Config file:"),v.getConfigPath()),console.log(a.gray(" API URL:"),e.apiUrl||a.dim("(not set)")),console.log(a.gray(" API Key:"),e.apiKey?a.green("(set)"):a.dim("(not set)")),console.log(a.gray(" Default Org:"),e.defaultOrg||a.dim("(not set)")),console.log(""),console.log(a.dim(" Tip: Set GAL_ENV=dev|staging|prod to override environment"))}),t.command("set").description("Set a configuration value").argument("<key>","Configuration key (apiUrl, apiKey, defaultOrg)").argument("<value>","Configuration value").action((e,n)=>{let o=["apiUrl","apiKey","defaultOrg"];o.includes(e)||(console.error(a.red(`Invalid key: ${e}. Valid keys: ${o.join(", ")}`)),process.exit(1)),v.set(e,n),console.log(a.green(`\u2713 Set ${e} = ${e==="apiKey"?"***":n}`))}),t.command("get").description("Get a configuration value").argument("<key>","Configuration key").action(e=>{let n=v.get(e);console.log(n===void 0?a.dim(`${e} is not set`):e==="apiKey"?"***":n)}),t.command("test").description("Test connection to GAL API").action(async()=>{let e=R("Testing API connection...").start();try{let n=v.load();n.apiUrl||(e.fail(a.red("API URL not configured")),console.log(a.dim("Run: gal config set apiUrl <url>")),process.exit(1)),await new U(n).testConnection()?e.succeed(a.green(`Connected to GAL API at ${n.apiUrl}`)):(e.fail(a.red(`Failed to connect to ${n.apiUrl}`)),process.exit(1))}catch(n){e.fail(a.red("Connection test failed")),console.error(a.dim(n.message)),process.exit(1)}}),t.command("path").description("Show config file path").action(()=>{console.log(v.getConfigPath())}),t}var y=require("fs"),b=require("path"),vn=require("os"),bn=require("readline");async function Dr(t){let e=(0,bn.createInterface)({input:process.stdin,output:process.stdout});return new Promise(n=>{e.question(`${t} (y/N): `,o=>{e.close(),n(o.toLowerCase()==="y"||o.toLowerCase()==="yes")})})}function An(t){if(!(0,y.existsSync)(t))return!1;try{let e=(0,y.readFileSync)(t,"utf-8");return["GAL Config","GAL CLI","GAL Governance","Generated by GAL","gal sync","gal check","Governance Agentic Layer","CISO-approved","gal-sync-reminder","gal-config-hook","gal-safety-hook"].some(o=>e.includes(o))}catch{return!1}}function hr(){let t=[],e=(0,b.join)((0,vn.homedir)(),".claude"),n=(0,b.join)(e,"hooks");if((0,y.existsSync)(n)){let r=(0,y.readdirSync)(n);for(let i of r)i.startsWith("gal-")&&t.push({path:(0,b.join)(n,i),type:"file",reason:"GAL hook file (filename starts with gal-)",isGalOwned:!0})}let o=(0,b.join)(e,"settings.json");if((0,y.existsSync)(o))try{let r=JSON.parse((0,y.readFileSync)(o,"utf-8"));r.hooks?.UserPromptSubmit&&r.hooks.UserPromptSubmit.some(s=>s.hooks?.some(u=>u.command?.includes("gal-")||u.command?.includes("/gal/")))&&t.push({path:o,type:"hook-entry",reason:"GAL hook entries in UserPromptSubmit",isGalOwned:!1})}catch{}return t}function fr(t){let e=[],n=(0,b.join)(t,".gal");(0,y.existsSync)(n)&&e.push({path:n,type:"directory",reason:"GAL state directory",isGalOwned:!0});let o=(0,b.join)(t,"gal.config.json");(0,y.existsSync)(o)&&e.push({path:o,type:"file",reason:"GAL configuration file",isGalOwned:!0});let r=[(0,b.join)(t,".git","hooks","pre-commit"),(0,b.join)(t,".husky","pre-commit")];for(let s of r)(0,y.existsSync)(s)&&An(s)&&e.push({path:s,type:"file",reason:"GAL-generated git hook",isGalOwned:!0});let i=[{path:(0,b.join)(t,"CLAUDE.md"),reason:"GAL-generated CLAUDE.md"},{path:(0,b.join)(t,".claude","settings.json"),reason:"GAL-generated settings"},{path:(0,b.join)(t,".claude","commands","review.md"),reason:"GAL-generated command"},{path:(0,b.join)(t,".claude","commands","check.md"),reason:"GAL-generated command"},{path:(0,b.join)(t,".github","workflows","ci.yml"),reason:"GAL-generated workflow"},{path:(0,b.join)(t,".github","workflows","pr-governance.yml"),reason:"GAL-generated workflow"},{path:(0,b.join)(t,".gitleaks.toml"),reason:"GAL-generated security config"},{path:(0,b.join)(t,"SECURITY.md"),reason:"GAL-generated security docs"},{path:(0,b.join)(t,".env.example"),reason:"GAL-generated env template"}];for(let{path:s,reason:u}of i)(0,y.existsSync)(s)&&An(s)&&e.push({path:s,type:"file",reason:u,isGalOwned:!0});return e}function dr(t){try{let e=JSON.parse((0,y.readFileSync)(t,"utf-8"));if(!e.hooks?.UserPromptSubmit)return!1;let n=e.hooks.UserPromptSubmit.length;return e.hooks.UserPromptSubmit=e.hooks.UserPromptSubmit.filter(o=>o.hooks?(o.hooks=o.hooks.filter(r=>!r.command?.includes("gal-")&&!r.command?.includes("/gal/")),o.hooks.length>0):!0),e.hooks.UserPromptSubmit.length===0&&delete e.hooks.UserPromptSubmit,Object.keys(e.hooks).length===0&&delete e.hooks,e.hooks?.UserPromptSubmit?.length!==n?((0,y.writeFileSync)(t,JSON.stringify(e,null,2)),!0):!1}catch{return!1}}function mr(t,e){let n={removed:[],skipped:[],errors:[]};for(let o of t){if(e){n.removed.push(o.path);continue}try{o.type==="hook-entry"?dr(o.path)?n.removed.push(`${o.path} (GAL hooks removed)`):n.skipped.push(`${o.path} (no GAL hooks found)`):o.type==="directory"?((0,y.rmSync)(o.path,{recursive:!0,force:!0}),n.removed.push(o.path)):((0,y.unlinkSync)(o.path),n.removed.push(o.path))}catch(r){n.errors.push(`${o.path}: ${r instanceof Error?r.message:String(r)}`)}}return n}function On(){let t=new I("uninstall");return t.description("Remove GAL-installed files and configurations").option("-d, --directory <path>","Project directory",process.cwd()).option("--user-only","Only remove user-level configs (~/.claude/)").option("--project-only","Only remove project-level configs").option("--dry-run","Show what would be removed without actually removing").option("-y, --yes","Skip confirmation prompt").action(async e=>{console.log(a.blue(`
237
+ `)))}async function lr(t,e,n,o){let r=o?[o]:["claude"],i={inSync:!0,missingFiles:[],expectedFiles:[]};for(let s of r)try{let u=await t.getApprovedConfig(e,s);if(!u.approved||!u.configContent)continue;i.approvedHash=u.hash;try{let l=JSON.parse(u.configContent),D=Dt(s);for(let c of Object.keys(l)){let h=(0,_.join)(D,c),d=(0,_.join)(n,h);i.expectedFiles.push(h),(0,f.existsSync)(d)||(i.missingFiles.push(h),i.inSync=!1)}}catch{}}catch{}console.log(JSON.stringify(i))}function yn(){let t=new I("config");return t.description("Manage GAL CLI configuration").action(()=>{let e=v.load(),n=v.getEnvironment(),r={development:a.yellow,staging:a.cyan,production:a.green}[n]||a.white;console.log(a.blue("Current Configuration:")),console.log(a.gray(" Environment:"),r(n)),console.log(a.gray(" Config file:"),v.getConfigPath()),console.log(a.gray(" API URL:"),e.apiUrl||a.dim("(not set)")),console.log(a.gray(" API Key:"),e.apiKey?a.green("(set)"):a.dim("(not set)")),console.log(a.gray(" Default Org:"),e.defaultOrg||a.dim("(not set)")),console.log(""),console.log(a.dim(" Tip: Set GAL_ENV=dev|staging|prod to override environment"))}),t.command("set").description("Set a configuration value").argument("<key>","Configuration key (apiUrl, apiKey, defaultOrg)").argument("<value>","Configuration value").action((e,n)=>{let o=["apiUrl","apiKey","defaultOrg"];o.includes(e)||(console.error(a.red(`Invalid key: ${e}. Valid keys: ${o.join(", ")}`)),process.exit(1)),v.set(e,n),console.log(a.green(`\u2713 Set ${e} = ${e==="apiKey"?"***":n}`))}),t.command("get").description("Get a configuration value").argument("<key>","Configuration key").action(e=>{let n=v.get(e);console.log(n===void 0?a.dim(`${e} is not set`):e==="apiKey"?"***":n)}),t.command("test").description("Test connection to GAL API").action(async()=>{let e=R("Testing API connection...").start();try{let n=v.load();n.apiUrl||(e.fail(a.red("API URL not configured")),console.log(a.dim("Run: gal config set apiUrl <url>")),process.exit(1)),await new U(n).testConnection()?e.succeed(a.green(`Connected to GAL API at ${n.apiUrl}`)):(e.fail(a.red(`Failed to connect to ${n.apiUrl}`)),process.exit(1))}catch(n){e.fail(a.red("Connection test failed")),console.error(a.dim(n.message)),process.exit(1)}}),t.command("path").description("Show config file path").action(()=>{console.log(v.getConfigPath())}),t}var y=require("fs"),b=require("path"),vn=require("os"),bn=require("readline");async function cr(t){let e=(0,bn.createInterface)({input:process.stdin,output:process.stdout});return new Promise(n=>{e.question(`${t} (y/N): `,o=>{e.close(),n(o.toLowerCase()==="y"||o.toLowerCase()==="yes")})})}function An(t){if(!(0,y.existsSync)(t))return!1;try{let e=(0,y.readFileSync)(t,"utf-8");return["GAL Config","GAL CLI","GAL Governance","Generated by GAL","gal sync","gal check","Governance Agentic Layer","CISO-approved","gal-sync-reminder","gal-config-hook","gal-safety-hook"].some(o=>e.includes(o))}catch{return!1}}function Dr(){let t=[],e=(0,b.join)((0,vn.homedir)(),".claude"),n=(0,b.join)(e,"hooks");if((0,y.existsSync)(n)){let r=(0,y.readdirSync)(n);for(let i of r)i.startsWith("gal-")&&t.push({path:(0,b.join)(n,i),type:"file",reason:"GAL hook file (filename starts with gal-)",isGalOwned:!0})}let o=(0,b.join)(e,"settings.json");if((0,y.existsSync)(o))try{let r=JSON.parse((0,y.readFileSync)(o,"utf-8"));r.hooks?.UserPromptSubmit&&r.hooks.UserPromptSubmit.some(s=>s.hooks?.some(u=>u.command?.includes("gal-")||u.command?.includes("/gal/")))&&t.push({path:o,type:"hook-entry",reason:"GAL hook entries in UserPromptSubmit",isGalOwned:!1})}catch{}return t}function hr(t){let e=[],n=(0,b.join)(t,".gal");(0,y.existsSync)(n)&&e.push({path:n,type:"directory",reason:"GAL state directory",isGalOwned:!0});let o=(0,b.join)(t,"gal.config.json");(0,y.existsSync)(o)&&e.push({path:o,type:"file",reason:"GAL configuration file",isGalOwned:!0});let r=[(0,b.join)(t,".git","hooks","pre-commit"),(0,b.join)(t,".husky","pre-commit")];for(let s of r)(0,y.existsSync)(s)&&An(s)&&e.push({path:s,type:"file",reason:"GAL-generated git hook",isGalOwned:!0});let i=[{path:(0,b.join)(t,"CLAUDE.md"),reason:"GAL-generated CLAUDE.md"},{path:(0,b.join)(t,".claude","settings.json"),reason:"GAL-generated settings"},{path:(0,b.join)(t,".claude","commands","review.md"),reason:"GAL-generated command"},{path:(0,b.join)(t,".claude","commands","check.md"),reason:"GAL-generated command"},{path:(0,b.join)(t,".github","workflows","ci.yml"),reason:"GAL-generated workflow"},{path:(0,b.join)(t,".github","workflows","pr-governance.yml"),reason:"GAL-generated workflow"},{path:(0,b.join)(t,".gitleaks.toml"),reason:"GAL-generated security config"},{path:(0,b.join)(t,"SECURITY.md"),reason:"GAL-generated security docs"},{path:(0,b.join)(t,".env.example"),reason:"GAL-generated env template"}];for(let{path:s,reason:u}of i)(0,y.existsSync)(s)&&An(s)&&e.push({path:s,type:"file",reason:u,isGalOwned:!0});return e}function fr(t){try{let e=JSON.parse((0,y.readFileSync)(t,"utf-8"));if(!e.hooks?.UserPromptSubmit)return!1;let n=e.hooks.UserPromptSubmit.length;return e.hooks.UserPromptSubmit=e.hooks.UserPromptSubmit.filter(o=>o.hooks?(o.hooks=o.hooks.filter(r=>!r.command?.includes("gal-")&&!r.command?.includes("/gal/")),o.hooks.length>0):!0),e.hooks.UserPromptSubmit.length===0&&delete e.hooks.UserPromptSubmit,Object.keys(e.hooks).length===0&&delete e.hooks,e.hooks?.UserPromptSubmit?.length!==n?((0,y.writeFileSync)(t,JSON.stringify(e,null,2)),!0):!1}catch{return!1}}function dr(t,e){let n={removed:[],skipped:[],errors:[]};for(let o of t){if(e){n.removed.push(o.path);continue}try{o.type==="hook-entry"?fr(o.path)?n.removed.push(`${o.path} (GAL hooks removed)`):n.skipped.push(`${o.path} (no GAL hooks found)`):o.type==="directory"?((0,y.rmSync)(o.path,{recursive:!0,force:!0}),n.removed.push(o.path)):((0,y.unlinkSync)(o.path),n.removed.push(o.path))}catch(r){n.errors.push(`${o.path}: ${r instanceof Error?r.message:String(r)}`)}}return n}function On(){let t=new I("uninstall");return t.description("Remove GAL-installed files and configurations").option("-d, --directory <path>","Project directory",process.cwd()).option("--user-only","Only remove user-level configs (~/.claude/)").option("--project-only","Only remove project-level configs").option("--dry-run","Show what would be removed without actually removing").option("-y, --yes","Skip confirmation prompt").action(async e=>{console.log(a.blue(`
238
238
  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)),console.log(a.blue(" GAL Uninstall")),console.log(a.blue(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
239
- `));let n=e.projectOnly?[]:hr(),o=e.userOnly?[]:fr(e.directory),r=[...n,...o];if(r.length===0){console.log(a.yellow("No GAL-installed files found.")),console.log(a.dim(`
239
+ `));let n=e.projectOnly?[]:Dr(),o=e.userOnly?[]:hr(e.directory),r=[...n,...o];if(r.length===0){console.log(a.yellow("No GAL-installed files found.")),console.log(a.dim(`
240
240
  Nothing to uninstall.`));return}if(console.log(a.bold(`The following GAL-installed items were detected:
241
- `)),n.length>0){console.log(a.cyan("User-level (~/.claude/):"));for(let s of n){let u=s.type==="directory"?"\u{1F4C1}":s.type==="hook-entry"?"\u{1F527}":"\u{1F4C4}";console.log(` ${u} ${a.dim(s.path)}`),console.log(` ${a.dim(s.reason)}`)}console.log()}if(o.length>0){console.log(a.cyan("Project-level:"));for(let s of o){let u=s.type==="directory"?"\u{1F4C1}":"\u{1F4C4}",l=s.path.replace(e.directory,".");console.log(` ${u} ${a.dim(l)}`),console.log(` ${a.dim(s.reason)}`)}console.log()}if(e.dryRun){console.log(a.yellow("DRY RUN - No files were removed."));return}if(!e.yes&&(console.log(a.yellow("\u26A0\uFE0F This action cannot be undone.")),!await Dr(`
241
+ `)),n.length>0){console.log(a.cyan("User-level (~/.claude/):"));for(let s of n){let u=s.type==="directory"?"\u{1F4C1}":s.type==="hook-entry"?"\u{1F527}":"\u{1F4C4}";console.log(` ${u} ${a.dim(s.path)}`),console.log(` ${a.dim(s.reason)}`)}console.log()}if(o.length>0){console.log(a.cyan("Project-level:"));for(let s of o){let u=s.type==="directory"?"\u{1F4C1}":"\u{1F4C4}",l=s.path.replace(e.directory,".");console.log(` ${u} ${a.dim(l)}`),console.log(` ${a.dim(s.reason)}`)}console.log()}if(e.dryRun){console.log(a.yellow("DRY RUN - No files were removed."));return}if(!e.yes&&(console.log(a.yellow("\u26A0\uFE0F This action cannot be undone.")),!await cr(`
242
242
  Proceed with uninstallation?`))){console.log(a.dim(`
243
243
  Uninstall cancelled.`));return}console.log(a.dim(`
244
- Removing files...`));let i=mr(r,!1);if(console.log(),i.removed.length>0){console.log(a.green(`\u2713 Removed ${i.removed.length} item(s):`));for(let s of i.removed)console.log(a.dim(` - ${s}`))}if(i.skipped.length>0){console.log(a.yellow(`
244
+ Removing files...`));let i=dr(r,!1);if(console.log(),i.removed.length>0){console.log(a.green(`\u2713 Removed ${i.removed.length} item(s):`));for(let s of i.removed)console.log(a.dim(` - ${s}`))}if(i.skipped.length>0){console.log(a.yellow(`
245
245
  \u26A0 Skipped ${i.skipped.length} item(s):`));for(let s of i.skipped)console.log(a.dim(` - ${s}`))}if(i.errors.length>0){console.log(a.red(`
246
246
  \u2717 Failed to remove ${i.errors.length} item(s):`));for(let s of i.errors)console.log(a.dim(` - ${s}`))}console.log(a.blue(`
247
247
  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)),console.log(a.blue(" GAL has been uninstalled.")),console.log(a.blue(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
248
248
  `)),console.log(a.dim("To reinstall, run: gal sync --pull")),console.log(a.dim(`To completely remove the CLI: npm uninstall -g @scheduler-systems-ai/gal-cli
249
- `))}),t}var ht="0.1.7",j="https://api.gal.run",ft=(0,mt.join)((0,xn.homedir)(),".gal"),dt=(0,mt.join)(ft,"update-cache.json"),pr=24*60*60*1e3;function gr(t,e){let n=t.replace(/^v/,"").split(".").map(Number),o=e.replace(/^v/,"").split(".").map(Number);for(let r=0;r<3;r++){if((n[r]||0)<(o[r]||0))return-1;if((n[r]||0)>(o[r]||0))return 1}return 0}function Fr(){try{if((0,G.existsSync)(dt))return JSON.parse((0,G.readFileSync)(dt,"utf-8"))}catch{}return null}function Cr(t){try{(0,G.existsSync)(ft)||(0,G.mkdirSync)(ft,{recursive:!0}),(0,G.writeFileSync)(dt,JSON.stringify(t))}catch{}}function Er(t,e){let n=["",a.bgYellow.black(" UPDATE AVAILABLE "),"",` ${a.dim(t)} \u2192 ${a.green(e)}`,"",` Run: ${a.cyan("npm update -g @scheduler-systems/gal-cli")}`,""].join(`
249
+ `))}),t}var ht="0.1.9",j="https://gal-api-s3pvf4isfa-uc.a.run.app",ft=(0,mt.join)((0,xn.homedir)(),".gal"),dt=(0,mt.join)(ft,"update-cache.json"),mr=24*60*60*1e3;function pr(t,e){let n=t.replace(/^v/,"").split(".").map(Number),o=e.replace(/^v/,"").split(".").map(Number);for(let r=0;r<3;r++){if((n[r]||0)<(o[r]||0))return-1;if((n[r]||0)>(o[r]||0))return 1}return 0}function gr(){try{if((0,G.existsSync)(dt))return JSON.parse((0,G.readFileSync)(dt,"utf-8"))}catch{}return null}function Fr(t){try{(0,G.existsSync)(ft)||(0,G.mkdirSync)(ft,{recursive:!0}),(0,G.writeFileSync)(dt,JSON.stringify(t))}catch{}}function Cr(t,e){let n=["",a.bgYellow.black(" UPDATE AVAILABLE "),"",` ${a.dim(t)} \u2192 ${a.green(e)}`,"",` Run: ${a.cyan("npm update -g @scheduler-systems/gal-cli")}`,""].join(`
250
250
  `),r=a.yellow("\u2500".repeat(50));console.log(`
251
251
  `+r),console.log(n),console.log(r+`
252
- `)}function _r(){let t=Fr(),e=!t||Date.now()-t.lastCheck>pr;if(t?.latestVersion&&gr(ht,t.latestVersion)<0&&process.on("exit",()=>{Er(ht,t.latestVersion)}),e){let n=wn.default.get("https://registry.npmjs.org/@scheduler-systems/gal-cli/latest",{timeout:3e3},o=>{let r="";o.on("data",i=>r+=i),o.on("end",()=>{try{let i=JSON.parse(r);Cr({lastCheck:Date.now(),latestVersion:i.version})}catch{}})});n.on("error",()=>{}),n.on("timeout",()=>n.destroy())}}_r();Bn.default.config();var Y=new I;Y.name("gal").description("GAL - Governance Agentic Layer CLI").version(ht);Y.addCommand(Fn());Y.addCommand(_n());Y.addCommand(yn());Y.addCommand(On());Y.parse();0&&(module.exports={DEFAULT_API_URL});
252
+ `)}function Er(){let t=gr(),e=!t||Date.now()-t.lastCheck>mr;if(t?.latestVersion&&pr(ht,t.latestVersion)<0&&process.on("exit",()=>{Cr(ht,t.latestVersion)}),e){let n=wn.default.get("https://registry.npmjs.org/@scheduler-systems/gal-cli/latest",{timeout:3e3},o=>{let r="";o.on("data",i=>r+=i),o.on("end",()=>{try{let i=JSON.parse(r);Fr({lastCheck:Date.now(),latestVersion:i.version})}catch{}})});n.on("error",()=>{}),n.on("timeout",()=>n.destroy())}}Er();Bn.default.config();var Y=new I;Y.name("gal").description("GAL - Governance Agentic Layer CLI").version(ht);Y.addCommand(Fn());Y.addCommand(_n());Y.addCommand(yn());Y.addCommand(On());Y.parse();0&&(module.exports={DEFAULT_API_URL});
package/package.json CHANGED
@@ -1,9 +1,13 @@
1
1
  {
2
2
  "name": "@scheduler-systems/gal-cli",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "description": "GAL CLI - Command-line tool for managing AI agent configurations across your organization",
5
5
  "license": "UNLICENSED",
6
6
  "private": false,
7
+ "publishConfig": {
8
+ "registry": "https://registry.npmjs.org",
9
+ "access": "public"
10
+ },
7
11
  "type": "module",
8
12
  "main": "./dist/index.cjs",
9
13
  "bin": {
@@ -19,7 +23,7 @@
19
23
  "postinstall": "node scripts/postinstall.cjs",
20
24
  "dev": "tsx watch src/index.ts",
21
25
  "build": "rm -rf dist && esbuild src/index.ts --bundle --platform=node --target=node18 --outfile=dist/index.cjs --format=cjs --define:__CLI_VERSION__=\\\"$(node -p \"require('./package.json').version\")\\\" --define:__DEFAULT_API_URL__=\\\"http://localhost:3000\\\" && chmod +x dist/index.cjs",
22
- "build:publish": "rm -rf dist && esbuild src/index.ts --bundle --platform=node --target=node18 --minify --outfile=dist/index.cjs --format=cjs --define:__CLI_VERSION__=\\\"$(node -p \"require('./package.json').version\")\\\" --define:__DEFAULT_API_URL__=\\\"https://api.gal.run\\\" && sed -i '' '1s/^#!.*$//' dist/index.cjs && printf '%s\\n' '#!/usr/bin/env node' | cat - dist/index.cjs > dist/temp.cjs && mv dist/temp.cjs dist/index.cjs && chmod +x dist/index.cjs",
26
+ "build:publish": "rm -rf dist && esbuild src/index.ts --bundle --platform=node --target=node18 --minify --outfile=dist/index.cjs --format=cjs --define:__CLI_VERSION__=\\\"$(node -p \"require('./package.json').version\")\\\" --define:__DEFAULT_API_URL__=\\\"https://gal-api-s3pvf4isfa-uc.a.run.app\\\" && sed -i '' '1s/^#!.*$//' dist/index.cjs && printf '%s\\n' '#!/usr/bin/env node' | cat - dist/index.cjs > dist/temp.cjs && mv dist/temp.cjs dist/index.cjs && chmod +x dist/index.cjs",
23
27
  "start": "node dist/index.js",
24
28
  "test": "vitest run",
25
29
  "test:watch": "vitest",
@@ -72,4 +76,4 @@
72
76
  "typescript": "^5.7.2",
73
77
  "vitest": "^1.0.0"
74
78
  }
75
- }
79
+ }