@leviyuan/lodestar 0.19.6 → 0.19.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,7 +17,7 @@ import{createRequire as y1}from"node:module";var R1=Object.create;var{getPrototy
17
17
  `),j=F.shift();if(!j)return $.destroy(),Q(Error("No header received from proxy CONNECT response"));let M=j.split(" "),N=+M[1],E=M.slice(2).join(" "),I={};for(let d of F){if(!d)continue;let y=d.indexOf(":");if(y===-1)return $.destroy(),Q(Error(`Invalid header from proxy CONNECT response: "${d}"`));let U$=d.slice(0,y).toLowerCase(),b=d.slice(y+1).trimStart(),a=I[U$];if(typeof a==="string")I[U$]=[a,b];else if(Array.isArray(a))a.push(b);else I[U$]=b}D$("got proxy server response: %o %o",j,I),K(),J({connect:{statusCode:N,statusText:E,headers:I},buffered:V})}$.on("error",q),$.on("end",W),X()})}W$.parseProxyResponse=P9});var X8=U((k)=>{var R9=k&&k.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),E9=k&&k.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),Y8=k&&k.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))R9(J,$,Q)}return E9(J,$),J},Z8=k&&k.__importDefault||function($){return $&&$.__esModule?$:{default:$}};Object.defineProperty(k,"__esModule",{value:!0});k.HttpsProxyAgent=void 0;var f$=Y8(L("net")),$8=Y8(L("tls")),S9=Z8(L("assert")),I9=Z8(o$()),D9=s0(),f9=L("url"),_9=e0(),w$=(0,I9.default)("https-proxy-agent"),J8=($)=>{if($.servername===void 0&&$.host&&!f$.isIP($.host))return{...$,servername:$.host};return $};class t$ extends D9.Agent{constructor($,J){super(J);this.options={path:void 0},this.proxy=typeof $==="string"?new f9.URL($):$,this.proxyHeaders=J?.headers??{},w$("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let Q=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Y=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...J?Q8(J,"headers"):null,host:Q,port:Y}}async connect($,J){let{proxy:Q}=this;if(!J.host)throw TypeError('No "host" provided');let Y;if(Q.protocol==="https:")w$("Creating `tls.Socket`: %o",this.connectOpts),Y=$8.connect(J8(this.connectOpts));else w$("Creating `net.Socket`: %o",this.connectOpts),Y=f$.connect(this.connectOpts);let Z=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},X=f$.isIPv6(J.host)?`[${J.host}]`:J.host,K=`CONNECT ${X}:${J.port} HTTP/1.1\r
18
18
  `;if(Q.username||Q.password){let V=`${decodeURIComponent(Q.username)}:${decodeURIComponent(Q.password)}`;Z["Proxy-Authorization"]=`Basic ${Buffer.from(V).toString("base64")}`}if(Z.Host=`${X}:${J.port}`,!Z["Proxy-Connection"])Z["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let V of Object.keys(Z))K+=`${V}: ${Z[V]}\r
19
19
  `;let W=(0,_9.parseProxyResponse)(Y);Y.write(`${K}\r
20
- `);let{connect:q,buffered:w}=await W;if($.emit("proxyConnect",q),this.emit("proxyConnect",q,$),q.statusCode===200){if($.once("socket",y9),J.secureEndpoint)return w$("Upgrading socket connection to TLS"),$8.connect({...Q8(J8(J),"host","path","port"),socket:Y});return Y}Y.destroy();let z=new f$.Socket({writable:!1});return z.readable=!0,$.once("socket",(V)=>{w$("Replaying proxy buffer for failed request"),(0,S9.default)(V.listenerCount("data")>0),V.push(w),V.push(null)}),z}}t$.protocols=["http","https"];k.HttpsProxyAgent=t$;function y9($){$.resume()}function Q8($,...J){let Q={},Y;for(Y in $)if(!J.includes(Y))Q[Y]=$[Y];return Q}});var L$=U((z8)=>{Object.defineProperty(z8,"__esModule",{value:!0});z8.AddressError=void 0;class K8 extends Error{constructor($,J){super($);this.name="AddressError",this.parseMessage=J}}z8.AddressError=K8});var _$=U((H8)=>{Object.defineProperty(H8,"__esModule",{value:!0});H8.isInSubnet=A9;H8.isHostInSubnet=r$;H8.isGloballyReachable=v9;H8.offsetBigInt=x9;H8.isCorrect=h9;H8.prefixLengthFromMask=k9;H8.assertByteArray=b9;H8.numberToPaddedHex=W8;H8.stringToPaddedHex=g9;H8.testBit=u9;var e=L$();function A9($){if(this.subnetMask<$.subnetMask)return!1;return r$.call(this,$)}function r$($){if(this.binaryZeroPad().length!==$.binaryZeroPad().length)return!1;return this.mask($.subnetMask)===$.mask()}function v9($){let J=null;for(let Q=0;Q<$.length;Q++){let Y=$[Q];if(Y.reachable!==null&&r$.call(this,Y.subnet)&&(J===null||Y.subnet.subnetMask>J.subnet.subnetMask))J=Y}return J===null?!0:J.reachable}function x9($,J,Q,Y){if(typeof J==="number"&&!Number.isSafeInteger(J))throw new e.AddressError(`${Y} offset must be an integer`);if(typeof J!=="number"&&typeof J!=="bigint")throw new e.AddressError(`${Y} offset must be an integer`);let Z=$+BigInt(J);if(Z<BigInt(0)||Z>(BigInt(1)<<BigInt(Q))-BigInt(1))throw new e.AddressError(`${Y} offset leaves the address space`);return Z}function h9($){return function(){if(this.addressMinusSuffix!==this.correctForm())return!1;if(this.subnetMask===$&&!this.parsedSubnet)return!0;return this.parsedSubnet===String(this.subnetMask)}}function k9($,J){let Q=$.toString(2).padStart(J,"0");if(Q.length>J)throw new e.AddressError("Invalid subnet mask.");let Y=Q.indexOf("0");if(Y===-1)return J;if(Q.slice(Y).includes("1"))throw new e.AddressError("Invalid subnet mask.");return Y}function b9($,J,Q,Y){if($.length!==J)throw new e.AddressError(`${Q} addresses require exactly ${J} bytes`);for(let Z=0;Z<$.length;Z++)if(!Number.isInteger($[Z])||$[Z]<Y||$[Z]>255)throw new e.AddressError(`All bytes must be integers between ${Y} and 255`)}function W8($){return $.toString(16).padStart(2,"0")}function g9($){return W8(parseInt($,10))}function u9($,J){let{length:Q}=$;if(J>Q)return!1;let Y=Q-J;return $.substring(Y,Y+1)==="1"}});var s$=U((G8)=>{Object.defineProperty(G8,"__esModule",{value:!0});G8.SPECIAL_PURPOSE=G8.RE_SUBNET_STRING=G8.RE_ADDRESS=G8.GROUPS=G8.BITS=void 0;G8.BITS=32;G8.GROUPS=4;G8.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$/g;G8.RE_SUBNET_STRING=/\/\d{1,2}$/;G8.SPECIAL_PURPOSE=[["0.0.0.0/8","This network",!1],["0.0.0.0/32","This host on this network",!1],["10.0.0.0/8","Private-Use",!1],["100.64.0.0/10","Shared Address Space",!1],["127.0.0.0/8","Loopback",!1],["169.254.0.0/16","Link Local",!1],["172.16.0.0/12","Private-Use",!1],["192.0.0.0/24","IETF Protocol Assignments",!1],["192.0.0.0/29","IPv4 Service Continuity Prefix",!1],["192.0.0.8/32","IPv4 dummy address",!1],["192.0.0.9/32","Port Control Protocol Anycast",!0],["192.0.0.10/32","Traversal Using Relays around NAT Anycast",!0],["192.0.0.170/32","NAT64/DNS64 Discovery",!1],["192.0.0.171/32","NAT64/DNS64 Discovery",!1],["192.0.2.0/24","Documentation (TEST-NET-1)",!1],["192.31.196.0/24","AS112-v4",!0],["192.52.193.0/24","AMT",!0],["192.88.99.0/24","Deprecated (6to4 Relay Anycast)",null],["192.88.99.2/32","6a44-relay anycast address",!1],["192.168.0.0/16","Private-Use",!1],["192.175.48.0/24","Direct Delegation AS112 Service",!0],["198.18.0.0/15","Benchmarking",!1],["198.51.100.0/24","Documentation (TEST-NET-2)",!1],["203.0.113.0/24","Documentation (TEST-NET-3)",!1],["240.0.0.0/4","Reserved",!1],["255.255.255.255/32","Limited Broadcast",!1]]});var e$=U((l)=>{var JQ=l&&l.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),QQ=l&&l.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),U8=l&&l.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))JQ(J,$,Q)}return QQ(J,$),J};Object.defineProperty(l,"__esModule",{value:!0});l.Address4=void 0;var x=U8(_$()),P=U8(s$()),c=L$(),YQ=x.isCorrect(P.BITS);class B{constructor($){this.addressMinusSuffix="",this.groups=P.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=YQ,this.isInSubnet=x.isInSubnet,this.isHostInSubnet=x.isHostInSubnet,this.address=$;let J=P.RE_SUBNET_STRING.exec($);if(J){if(this.parsedSubnet=J[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>P.BITS)throw new c.AddressError("Invalid subnet mask.");$=$.replace(P.RE_SUBNET_STRING,"")}let Q=P.GROUPS*4-1;if($.length>Q)throw new c.AddressError(`IPv4 addresses are at most ${Q} characters.`);this.addressMinusSuffix=$,this.parsedAddress=this.parse($)}static isValid($){try{return new B($),!0}catch{return!1}}parse($){let J=$.split(".");if(J.some((Q)=>/^0\d/.test(Q)))throw new c.AddressError("IPv4 addresses can't have leading zeroes.");if(!$.match(P.RE_ADDRESS))throw new c.AddressError("Invalid IPv4 address.");return J}correctForm(){return this.parsedAddress.map(($)=>parseInt($,10)).join(".")}static fromAddressAndMask($,J){let Q=x.prefixLengthFromMask(new B(J).bigInt(),P.BITS);return new B(`${$}/${Q}`)}static fromAddressAndWildcardMask($,J){let Q=new B(J).bigInt(),Y=(BigInt(1)<<BigInt(P.BITS))-BigInt(1),Z=Q^Y,X=x.prefixLengthFromMask(Z,P.BITS);return new B(`${$}/${X}`)}static fromWildcard($){let J=$.split(".");if(J.length!==P.GROUPS)throw new c.AddressError("Wildcard pattern must have 4 octets");let Q=-1;for(let K=0;K<J.length;K++)if(J[K]==="*"){if(Q===-1)Q=K}else if(Q!==-1)throw new c.AddressError("Wildcard `*` must only appear in trailing octets (e.g. `192.168.0.*`)");let Y=Q===-1?0:J.length-Q,Z=J.map((K)=>K==="*"?"0":K),X=P.BITS-Y*8;return new B(`${Z.join(".")}/${X}`)}static fromHex($){let J=$.replace(/:/g,"");if(!/^[0-9a-fA-F]{8}$/.test(J))throw new c.AddressError("IPv4 hex must be exactly 8 hex digits");let Q=[];for(let Y=0;Y<8;Y+=2)Q.push(parseInt(J.slice(Y,Y+2),16));return new B(Q.join("."))}static fromInteger($){if(!Number.isInteger($)||$<0||$>4294967295)throw new c.AddressError("IPv4 integer must be in the range 0 to 2**32 - 1");return B.fromHex($.toString(16).padStart(8,"0"))}static fromArpa($){let Q=$.replace(/(\.in-addr\.arpa)?\.?$/i,"").split(".").reverse().join(".");return new B(Q)}toHex(){return this.parsedAddress.map(($)=>x.stringToPaddedHex($)).join(":")}toArray(){return this.parsedAddress.map(($)=>parseInt($,10))}toGroup6(){let $=[],J;for(J=0;J<P.GROUPS;J+=2)$.push(`${x.stringToPaddedHex(this.parsedAddress[J])}${x.stringToPaddedHex(this.parsedAddress[J+1])}`);return $.join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(($)=>x.stringToPaddedHex($)).join("")}`)}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(P.BITS-this.subnetMask)}`)}startAddress(){return B.fromBigInt(this._startAddress())}startAddressExclusive(){let $=BigInt("1");return B.fromBigInt(this._startAddress()+$)}offset($){return B.fromBigInt(x.offsetBigInt(this.bigInt(),$,P.BITS,"IPv4")).withSubnetMask(this.subnetMask)}nextNetwork(){return B.fromBigInt(x.offsetBigInt(this._endAddress(),1,P.BITS,"IPv4")).withSubnetMask(this.subnetMask)}withSubnetMask($){return new B(`${this.correctForm()}/${$}`)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(P.BITS-this.subnetMask)}`)}endAddress(){return B.fromBigInt(this._endAddress())}endAddressExclusive(){let $=BigInt("1");return B.fromBigInt(this._endAddress()-$)}subnetMaskAddress(){return B.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(P.BITS-this.subnetMask)}`))}wildcardMask(){return B.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(P.BITS-this.subnetMask)}`))}networkForm(){return`${this.startAddress().correctForm()}/${this.subnetMask}`}static fromBigInt($){if($<BigInt(0)||$>BigInt(4294967295))throw new c.AddressError("IPv4 BigInt must be in the range 0 to 2**32 - 1");return B.fromHex($.toString(16).padStart(8,"0"))}static fromByteArray($){return x.assertByteArray($,4,"IPv4",0),this.fromUnsignedByteArray($)}static fromUnsignedByteArray($){if($.length!==4)throw new c.AddressError("IPv4 addresses require exactly 4 bytes");let J=$.join(".");return new B(J)}mask($){if($===void 0)$=this.subnetMask;return this.getBitsBase2(0,$)}getBitsBase2($,J){return this.binaryZeroPad().slice($,J)}reverseForm($){if(!$)$={};let J=this.correctForm().split(".").reverse().join(".");if($.omitSuffix)return J;return`${J}.in-addr.arpa.`}isMulticast(){return this.isHostInSubnet(ZQ)}isPrivate(){return XQ.some(($)=>this.isHostInSubnet($))}isLoopback(){return this.isHostInSubnet(KQ)}isLinkLocal(){return this.isHostInSubnet(zQ)}isUnspecified(){return this.isHostInSubnet(VQ)}isBroadcast(){return this.isHostInSubnet(WQ)}isCGNAT(){return this.isHostInSubnet(HQ)}isDocumentation(){return GQ.some(($)=>this.isHostInSubnet($))}isBenchmarking(){return this.isHostInSubnet(FQ)}isReserved(){return this.isHostInSubnet(UQ)}isGlobal(){return!this.isMulticast()&&x.isGloballyReachable.call(this,OQ)}binaryZeroPad(){if(this._binaryZeroPad===void 0)this._binaryZeroPad=this.bigInt().toString(2).padStart(P.BITS,"0");return this._binaryZeroPad}groupForV6(){let $=this.parsedAddress;return this.correctForm().replace(P.RE_ADDRESS,`<span class="hover-group group-v4 group-6">${$.slice(0,2).join(".")}</span>.<span class="hover-group group-v4 group-7">${$.slice(2,4).join(".")}</span>`)}}l.Address4=B;var ZQ=new B("224.0.0.0/4"),XQ=[new B("10.0.0.0/8"),new B("172.16.0.0/12"),new B("192.168.0.0/16")],KQ=new B("127.0.0.0/8"),zQ=new B("169.254.0.0/16"),VQ=new B("0.0.0.0/32"),WQ=new B("255.255.255.255/32"),HQ=new B("100.64.0.0/10"),GQ=[new B("192.0.2.0/24"),new B("198.51.100.0/24"),new B("203.0.113.0/24")],FQ=new B("198.18.0.0/15"),UQ=new B("240.0.0.0/4"),OQ=P.SPECIAL_PURPOSE.map(([$,,J])=>({subnet:new B($),reachable:J}))});var $0=U((O8)=>{Object.defineProperty(O8,"__esModule",{value:!0});O8.SPECIAL_PURPOSE=O8.RE_URL_WITH_PORT=O8.RE_URL=O8.RE_ZONE_STRING=O8.RE_SUBNET_STRING=O8.RE_BAD_ADDRESS=O8.RE_BAD_CHARACTERS=O8.TYPES=O8.SCOPES=O8.GROUPS=O8.BITS=void 0;O8.BITS=128;O8.GROUPS=8;O8.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};O8.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","::ffff:0:0/96":"IPv4-mapped","ff00::/8":"Multicast","fe80::/10":"Link-local unicast","fc00::/7":"Unique local","2001::/32":"Teredo","2001:2::/48":"Benchmarking","2002::/16":"6to4","2001:db8::/32":"Documentation","3fff::/20":"Documentation","100::/64":"Discard-only","fec0::/10":"Site-local unicast (deprecated)","::/96":"IPv4-compatible (deprecated)","64:ff9b::/96":"NAT64 (well-known)","64:ff9b:1::/48":"NAT64 (local-use)"};O8.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;O8.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;O8.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;O8.RE_ZONE_STRING=/%.*$/;O8.RE_URL=/^(?:\[([0-9a-f:.]+)\]|([0-9a-f:.]+))(?:[/?#].*)?$/i;O8.RE_URL_WITH_PORT=/^\[([0-9a-f:.]+)\]:([0-9]{1,5})(?:[/?#].*)?$/i;O8.SPECIAL_PURPOSE=[["::1/128","Loopback Address",!1],["::/128","Unspecified Address",!1],["::ffff:0:0/96","IPv4-mapped Address",!1],["64:ff9b::/96","IPv4-IPv6 Translat.",!0],["64:ff9b:1::/48","IPv4-IPv6 Translat.",!1],["100::/64","Discard-Only Address Block",!1],["100:0:0:1::/64","Dummy IPv6 Prefix",!1],["2001::/23","IETF Protocol Assignments",!1],["2001::/32","TEREDO",!1],["2001:1::1/128","Port Control Protocol Anycast",!0],["2001:1::2/128","Traversal Using Relays around NAT Anycast",!0],["2001:1::3/128","DNS-SD Service Registration Protocol Anycast",!0],["2001:2::/48","Benchmarking",!1],["2001:3::/32","AMT",!0],["2001:4:112::/48","AS112-v6",!0],["2001:10::/28","Deprecated (previously ORCHID)",null],["2001:20::/28","ORCHIDv2",!0],["2001:30::/28","Drone Remote ID Protocol Entity Tags (DETs) Prefix",!0],["2001:db8::/32","Documentation",!1],["2002::/16","6to4",!1],["2620:4f:8000::/48","Direct Delegation AS112 Service",!0],["3fff::/20","Documentation",!1],["5f00::/16","Segment Routing (SRv6) SIDs",!1],["fc00::/7","Unique-Local",!1],["fe80::/10","Link-Local Unicast",!1]]});var J0=U((w8)=>{Object.defineProperty(w8,"__esModule",{value:!0});w8.escapeHtml=y$;w8.spanAllZeroes=M8;w8.spanAll=RQ;w8.spanLeadingZeroes=EQ;w8.simpleGroup=SQ;function y$($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function M8($){return y$($).replace(/(0+)/g,'<span class="zero">$1</span>')}function RQ($,J=0){return $.split("").map((Y,Z)=>`<span class="digit value-${y$(Y)} position-${Z+J}">${M8(Y)}</span>`).join("")}function q8($){return y$($).replace(/^(0+)/,'<span class="zero">$1</span>')}function EQ($){return $.split(":").map((Q)=>q8(Q)).join(":")}function SQ($,J=0){return $.split(":").map((Y,Z)=>{if(/group-v4/.test(Y))return Y;return`<span class="hover-group group-${Z+J}">${q8(Y)}</span>`})}});var L8=U((_)=>{var AQ=_&&_.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),vQ=_&&_.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),xQ=_&&_.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))AQ(J,$,Q)}return vQ(J,$),J};Object.defineProperty(_,"__esModule",{value:!0});_.ADDRESS_BOUNDARY=void 0;_.groupPossibilities=v$;_.padGroup=A$;_.simpleRegularExpression=kQ;_.possibleElisions=bQ;var hQ=xQ($0());function v$($){return`(${$.join("|")})`}function A$($){if($.length<4)return`0{0,${4-$.length}}${$}`;return $}_.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function kQ($){let J=[];$.forEach((Y,Z)=>{if(parseInt(Y,16)===0)J.push(Z)});let Q=J.map((Y)=>$.map((Z,X)=>{if(X===Y){let K=X===0||X===hQ.GROUPS-1?":":"";return v$([A$(Z),K])}return A$(Z)}).join(":"));return Q.push($.map(A$).join(":")),v$(Q)}function bQ($,J,Q){let Y=J?"":":",Z=Q?"":":",X=[];if(!J&&!Q)X.push("::");if(J&&Q)X.push("");if(Q&&!J||!Q&&J)X.push(":");X.push(`${Y}(:0{1,4}){1,${$-1}}`),X.push(`(0{1,4}:){1,${$-1}}${Z}`),X.push(`(0{1,4}:){${$-1}}0{1,4}`);for(let K=1;K<$-1;K++)for(let W=1;W<$-K;W++)X.push(`(0{1,4}:){${W}}:(0{1,4}:){${$-W-K-1}}0{1,4}`);return v$(X)}});var T8=U((p)=>{var gQ=p&&p.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),uQ=p&&p.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),k$=p&&p.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))gQ(J,$,Q)}return uQ(J,$),J};Object.defineProperty(p,"__esModule",{value:!0});p.Address6=void 0;var i=k$(_$()),Q0=k$(s$()),O=k$($0()),$$=k$(J0()),m=e$(),J$=L8(),R=L$(),x$=_$(),cQ=i.isCorrect(O.BITS);function h$($){if(!$)throw Error("Assertion failed.")}function lQ($){let J=/(\d+)(\d{3})/;while(J.test($))$=$.replace(J,"$1,$2");return $}function mQ($){return $=$.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),$=$.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),$}function iQ($,J){let Q=[],Y=[],Z;for(Z=0;Z<$.length;Z++)if(Z<J[0])Q.push($[Z]);else if(Z>J[1])Y.push($[Z]);return Q.concat(["compact"]).concat(Y)}function N8($){return parseInt($,16).toString(16).padStart(4,"0")}function C8($){return $&255}class G{constructor($,J){if(this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=i.isInSubnet,this.isHostInSubnet=i.isHostInSubnet,this.isCorrect=cQ,J===void 0)this.groups=O.GROUPS;else this.groups=J;this.address=$;let Q=O.RE_SUBNET_STRING.exec($);if(Q){if(this.parsedSubnet=Q[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>O.BITS)throw new R.AddressError("Invalid subnet mask.");$=$.replace(O.RE_SUBNET_STRING,"")}if(/\//.test($))throw new R.AddressError("Invalid subnet mask.");let Y=O.RE_ZONE_STRING.exec($);if(Y)this.zone=Y[0],$=$.replace(O.RE_ZONE_STRING,"");let Z=this.groups*5+5;if($.length>Z)throw new R.AddressError(`IPv6 addresses are at most ${Z} characters.`);this.addressMinusSuffix=$,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid($){try{return new G($),!0}catch{return!1}}static fromBigInt($){if($<BigInt(0)||$>(BigInt(1)<<BigInt(O.BITS))-BigInt(1))throw new R.AddressError("IPv6 BigInt must be in the range 0 to 2**128 - 1");let J=$.toString(16).padStart(32,"0"),Q=[];for(let Y=0;Y<O.GROUPS;Y++)Q.push(J.slice(Y*4,(Y+1)*4));return new G(Q.join(":"))}static fromURL($){var J;let Q,Y=null,Z,X,K=$.replace(/^[a-z][a-z0-9+.-]*:\/\//i,"");if(K.indexOf("[")!==-1&&K.indexOf("]:")!==-1){if(X="failed to parse address with port",Z=O.RE_URL_WITH_PORT.exec(K),Z===null)return{error:X,address:null,port:null};Q=Z[1],Y=Z[2]}else{if(X="failed to parse address from URL",Z=O.RE_URL.exec(K),Z===null)return{error:X,address:null,port:null};Q=(J=Z[1])!==null&&J!==void 0?J:Z[2]}if(Y){if(Y=parseInt(Y,10),Y<0||Y>65535)Y=null}else Y=null;let W;try{W=new G(Q)}catch{return{error:X,address:null,port:null}}return{address:W,port:Y}}static fromAddressAndMask($,J){let Q=i.prefixLengthFromMask(new G(J).bigInt(),O.BITS);return new G(`${$}/${Q}`)}static fromAddressAndWildcardMask($,J){let Q=new G(J).bigInt(),Y=(BigInt(1)<<BigInt(O.BITS))-BigInt(1),Z=Q^Y,X=i.prefixLengthFromMask(Z,O.BITS);return new G(`${$}/${X}`)}static fromWildcard($){if($.includes("%")||$.includes("/"))throw new R.AddressError("Wildcard pattern must not include a zone or CIDR suffix");let J=$.split("::");if(J.length>2)throw new R.AddressError("Wildcard pattern cannot contain more than one '::'");let Q;if(J.length===2){let W=J[0]===""?[]:J[0].split(":"),q=J[1]===""?[]:J[1].split(":"),w=O.GROUPS-W.length-q.length;if(w<1)throw new R.AddressError("Wildcard pattern with '::' has too many groups");Q=[...W,...Array(w).fill("0"),...q]}else Q=$.split(":");if(Q.length!==O.GROUPS)throw new R.AddressError("Wildcard pattern must have 8 groups");let Y=-1;for(let W=0;W<Q.length;W++)if(Q[W]==="*"){if(Y===-1)Y=W}else if(Y!==-1)throw new R.AddressError("Wildcard `*` must only appear in trailing groups (e.g. `2001:db8:*:*:*:*:*:*`)");let Z=Y===-1?0:Q.length-Y,X=Q.map((W)=>W==="*"?"0":W),K=O.BITS-Z*16;return new G(`${X.join(":")}/${K}`)}static fromAddress4($){let J=new m.Address4($),Q=O.BITS-(Q0.BITS-J.subnetMask);return new G(`::ffff:${J.correctForm()}/${Q}`)}static fromArpa($){let J=$.replace(/(\.ip6\.arpa)?\.?$/i,"");if(!/^[0-9a-f](\.[0-9a-f]){0,31}$/i.test(J))throw new R.AddressError("Invalid 'ip6.arpa' form.");let Q=J.split(".").reverse(),Y=Q.length*4,Z=Q.join("").padEnd(32,"0"),X=[];for(let K=0;K<O.GROUPS;K++)X.push(Z.slice(K*4,(K+1)*4));return new G(`${X.join(":")}/${Y}`)}microsoftTranscription(){return`${this.correctForm().replace(/:/g,"-")}.ipv6-literal.net`}mask($=this.subnetMask){return this.getBitsBase2(0,$)}possibleSubnets($=128){let J=O.BITS-this.subnetMask,Q=Math.abs($-O.BITS),Y=J-Q;if(Y<0)return"0";return lQ((BigInt("2")**BigInt(Y)).toString(10))}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(O.BITS-this.subnetMask)}`)}startAddress(){return G.fromBigInt(this._startAddress())}startAddressExclusive(){let $=BigInt("1");return G.fromBigInt(this._startAddress()+$)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(O.BITS-this.subnetMask)}`)}endAddress(){return G.fromBigInt(this._endAddress())}endAddressExclusive(){let $=BigInt("1");return G.fromBigInt(this._endAddress()-$)}offset($){return G.fromBigInt(i.offsetBigInt(this.bigInt(),$,O.BITS,"IPv6")).withSubnetMask(this.subnetMask)}nextNetwork(){return G.fromBigInt(i.offsetBigInt(this._endAddress(),1,O.BITS,"IPv6")).withSubnetMask(this.subnetMask)}withSubnetMask($){return new G(`${this.correctForm()}/${$}`)}subnetMaskAddress(){return G.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(O.BITS-this.subnetMask)}`))}wildcardMask(){return G.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(O.BITS-this.subnetMask)}`))}networkForm(){return`${this.startAddress().correctForm()}/${this.subnetMask}`}getScope(){let $=this.getType();if($==="Multicast"||$.startsWith("Multicast "))return O.SCOPES[parseInt(this.getBits(12,16).toString(10),10)]||"Unknown";if($==="Link-local unicast"||$==="Loopback")return"Link local";if($==="Unspecified")return"Unknown";return"Global"}getType(){for(let $=0;$<j8.length;$++){let J=j8[$];if(this.isHostInSubnet(J[0]))return J[1]}return"Global unicast"}getBits($,J){return BigInt(`0b${this.getBitsBase2($,J)}`)}getBitsBase2($,J){return this.binaryZeroPad().slice($,J)}getBitsBase16($,J){let Q=J-$;if(Q%4!==0)throw Error("Length of bits to retrieve must be divisible by four");return this.getBits($,J).toString(16).padStart(Q/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,O.BITS)}reverseForm($){if(!$)$={};let J=Math.floor(this.subnetMask/4),Q=this.canonicalForm().replace(/:/g,"").split("").slice(0,J).reverse().join(".");if(J>0){if($.omitSuffix)return Q;return`${Q}.ip6.arpa.`}if($.omitSuffix)return"";return"ip6.arpa."}correctForm(){let $,J=[],Q=0,Y=[];for($=0;$<this.parsedAddress.length;$++){let K=parseInt(this.parsedAddress[$],16);if(K===0)Q++;if(K!==0&&Q>0){if(Q>1)Y.push([$-Q,$-1]);Q=0}}if(Q>1)Y.push([this.parsedAddress.length-Q,this.parsedAddress.length-1]);let Z=Y.map((K)=>K[1]-K[0]+1);if(Y.length>0){let K=Z.indexOf(Math.max(...Z));J=iQ(this.parsedAddress,Y[K])}else J=this.parsedAddress;for($=0;$<J.length;$++)if(J[$]!=="compact")J[$]=parseInt(J[$],16).toString(16);let X=J.join(":");return X=X.replace(/^compact$/,"::"),X=X.replace(/(^compact)|(compact$)/,":"),X=X.replace(/compact/,""),X}binaryZeroPad(){if(this._binaryZeroPad===void 0)this._binaryZeroPad=this.bigInt().toString(2).padStart(O.BITS,"0");return this._binaryZeroPad}parse4in6($){if($.indexOf(".")===-1)return $;let J=$.split(":"),Q=J.slice(-1)[0],Y=Q.split(".");if(Y.length===Q0.GROUPS&&Y.every((X)=>/^\d{1,3}$/.test(X))){if(Y.some((X)=>/^0\d/.test(X))){let X=Y.map(mQ).join("."),K=J.slice(0,-1).map($$.escapeHtml).join(":"),W=J.length>1?":":"";throw new R.AddressError("IPv4 addresses can't have leading zeroes.",`${K}${W}${X}`)}}let Z=Q.match(Q0.RE_ADDRESS);if(Z){this.parsedAddress4=Z[0];let X=this.subnetMask>=96?`/${this.subnetMask-96}`:"";this.address4=new m.Address4(`${this.parsedAddress4}${X}`),this.v4=!0,J[J.length-1]=this.address4.toGroup6(),$=J.join(":")}return $}parse($){$=this.parse4in6($);let J=$.match(O.RE_BAD_CHARACTERS);if(J)throw new R.AddressError(`Bad character${J.length>1?"s":""} detected in address: ${J.join("")}`,$.replace(O.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));let Q=$.match(O.RE_BAD_ADDRESS);if(Q)throw new R.AddressError(`Address failed regex: ${Q.join("")}`,$.replace(O.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let Y=[],Z=$.split("::");if(Z.length===2){let X=Z[0].split(":"),K=Z[1].split(":");if(X.length===1&&X[0]==="")X=[];if(K.length===1&&K[0]==="")K=[];let W=this.groups-(X.length+K.length);if(!W)throw new R.AddressError("Error parsing groups");this.elidedGroups=W,this.elisionBegin=X.length,this.elisionEnd=X.length+this.elidedGroups,Y=Y.concat(X);for(let q=0;q<W;q++)Y.push("0");Y=Y.concat(K)}else if(Z.length===1)Y=$.split(":"),this.elidedGroups=0;else throw new R.AddressError("Too many :: groups found");if(Y=Y.map((X)=>parseInt(X,16).toString(16)),Y.length!==this.groups)throw new R.AddressError("Incorrect number of groups found");return Y}canonicalForm(){return this.parsedAddress.map(N8).join(":")}decimal(){return this.parsedAddress.map(($)=>parseInt($,16).toString(10).padStart(5,"0")).join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(N8).join("")}`)}to4(){let $=this.binaryZeroPad().split(""),J=BigInt(`0b${$.slice(96,128).join("")}`).toString(16).padStart(8,"0");if(this.subnetMask>=96){let Q=this.subnetMask-96,Y=[];for(let Z=0;Z<8;Z+=2)Y.push(parseInt(J.slice(Z,Z+2),16));return new m.Address4(`${Y.join(".")}/${Q}`)}return m.Address4.fromHex(J)}to4in6(){let $=this.to4(),Q=new G(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),Y="";if(!/:$/.test(Q))Y=":";return Q+Y+$.correctForm()}inspectTeredo(){let $=this.getBitsBase16(0,32),Q=(this.getBits(80,96)^BigInt("0xffff")).toString(),Y=m.Address4.fromHex(this.getBitsBase16(32,64)),Z=this.getBits(96,128),X=m.Address4.fromHex((Z^BigInt("0xffffffff")).toString(16).padStart(8,"0")),K=this.getBitsBase2(64,80),W=(0,x$.testBit)(K,15),q=(0,x$.testBit)(K,14),w=(0,x$.testBit)(K,8),z=(0,x$.testBit)(K,9),V=BigInt(`0b${K.slice(2,6)+K.slice(8,16)}`).toString(10);return{prefix:`${$.slice(0,4)}:${$.slice(4,8)}`,server4:Y.address,client4:X.address,flags:K,coneNat:W,microsoft:{reserved:q,universalLocal:z,groupIndividual:w,nonce:V},udpPort:Q}}inspect6to4(){let $=this.getBitsBase16(0,16),J=m.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:$.slice(0,4),gateway:J.address}}to6to4(){if(!this.is4())return null;let $=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new G($)}static fromAddress4Nat64($,J="64:ff9b::/96"){let Q=new m.Address4($),Y=new G(J),Z=Y.subnetMask;if(Z!==32&&Z!==40&&Z!==48&&Z!==56&&Z!==64&&Z!==96)throw new R.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");let X=Y.binaryZeroPad(),K=Q.binaryZeroPad(),W;if(Z===96)W=X.slice(0,96)+K;else{let z=64-Z;W=[X.slice(0,Z),K.slice(0,z),"00000000",K.slice(z),"0".repeat(56-(32-z))].join("")}let q=BigInt(`0b${W}`).toString(16).padStart(32,"0"),w=[];for(let z=0;z<8;z++)w.push(q.slice(z*4,(z+1)*4));return new G(w.join(":"))}toAddress4Nat64($="64:ff9b::/96"){let J=new G($),Q=J.subnetMask;if(Q!==32&&Q!==40&&Q!==48&&Q!==56&&Q!==64&&Q!==96)throw new R.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");if(!this.isHostInSubnet(J))return null;let Y=this.binaryZeroPad(),Z;if(Q===96)Z=Y.slice(96,128);else{let K=64-Q;Z=Y.slice(Q,Q+K)+Y.slice(72,72+(32-K))}let X=[];for(let K=0;K<4;K++)X.push(parseInt(Z.slice(K*8,(K+1)*8),2).toString());return new m.Address4(X.join("."))}toByteArray(){let $=this.bigInt().toString(16).padStart(O.BITS/4,"0"),J=[];for(let Q=0,Y=$.length;Q<Y;Q+=2)J.push(parseInt($.substring(Q,Q+2),16));return J}toUnsignedByteArray(){return this.toByteArray().map(C8)}static fromByteArray($){return i.assertByteArray($,16,"IPv6",-128),this.fromUnsignedByteArray($.map(C8))}static fromUnsignedByteArray($){i.assertByteArray($,16,"IPv6",0);let J=BigInt("256"),Q=BigInt("0"),Y=BigInt("1");for(let Z=$.length-1;Z>=0;Z--)Q+=Y*BigInt($[Z].toString(10)),Y*=J;return G.fromBigInt(Q)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){let $=this.embeddedIPv4();if($)return $.isLinkLocal();return this.isHostInSubnet(aQ)}isMulticast(){let $=this.embeddedIPv4();if($)return $.isMulticast();let J=this.getType();return J==="Multicast"||J.startsWith("Multicast ")}is4(){return this.v4}isMapped4(){return this.isHostInSubnet(eQ)}embeddedIPv4(){if(this.isMapped4()||this.isHostInSubnet($4))return this.to4();return null}isTeredo(){return this.isHostInSubnet(pQ)}is6to4(){return this.isHostInSubnet(nQ)}isLoopback(){let $=this.embeddedIPv4();if($)return $.isLoopback();return this.getType()==="Loopback"}isULA(){return this.isHostInSubnet(dQ)}isPrivate(){let $=this.embeddedIPv4();if($)return $.isPrivate();return this.isULA()||this.isHostInSubnet(J4)}isCGNAT(){let $=this.embeddedIPv4();if($)return $.isCGNAT();return!1}isBroadcast(){let $=this.embeddedIPv4();if($)return $.isBroadcast();return!1}isUnspecified(){let $=this.embeddedIPv4();if($)return $.isUnspecified();return this.getType()==="Unspecified"}isDocumentation(){return oQ.some(($)=>this.isHostInSubnet($))}isBenchmarking(){let $=this.embeddedIPv4();if($)return $.isBenchmarking();return this.isHostInSubnet(tQ)}isGlobal(){let $=this.embeddedIPv4();if($)return $.isGlobal();return this.isHostInSubnet(rQ)&&i.isGloballyReachable.call(this,sQ)}href($){if($===void 0)$="";else $=`:${$}`;return`http://[${this.correctForm()}]${$}/`}link($){if(!$)$={};if($.className===void 0)$.className="";if($.prefix===void 0)$.prefix="/#address=";if($.v4===void 0)$.v4=!1;let J=this.correctForm;if($.v4)J=this.to4in6;let Q=J.call(this),Y=$$.escapeHtml(`${$.prefix}${Q}`),Z=$$.escapeHtml(Q);if($.className){let X=$$.escapeHtml($.className);return`<a href="${Y}" class="${X}">${Z}</a>`}return`<a href="${Y}">${Z}</a>`}group(){if(this.elidedGroups===0)return $$.simpleGroup(this.addressMinusSuffix).join(":");h$(typeof this.elidedGroups==="number"),h$(typeof this.elisionBegin==="number");let $=[],[J,Q]=this.addressMinusSuffix.split("::");if(J.length)$.push(...$$.simpleGroup(J));else $.push("");let Y=["hover-group"];for(let Z=this.elisionBegin;Z<this.elisionBegin+this.elidedGroups;Z++)Y.push(`group-${Z}`);if($.push(`<span class="${Y.join(" ")}"></span>`),Q.length)$.push(...$$.simpleGroup(Q,this.elisionEnd));else $.push("");if(this.is4())h$(this.address4 instanceof m.Address4),$.pop(),$.push(this.address4.groupForV6());return $.join(":")}regularExpressionString($=!1){let J=[],Q=new G(this.correctForm());if(Q.elidedGroups===0)J.push((0,J$.simpleRegularExpression)(Q.parsedAddress));else if(Q.elidedGroups===O.GROUPS)J.push((0,J$.possibleElisions)(O.GROUPS));else{let Y=Q.address.split("::");if(Y[0].length)J.push((0,J$.simpleRegularExpression)(Y[0].split(":")));if(h$(typeof Q.elidedGroups==="number"),J.push((0,J$.possibleElisions)(Q.elidedGroups,Y[0].length!==0,Y[1].length!==0)),Y[1].length)J.push((0,J$.simpleRegularExpression)(Y[1].split(":")));J=[J.join(":")]}if(!$)J=["(?=^|",J$.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...J,")(?=[^\\w\\:]|",J$.ADDRESS_BOUNDARY,"|$)"];return J.join("")}regularExpression($=!1){return new RegExp(this.regularExpressionString($),"i")}}p.Address6=G;var j8=Object.keys(O.TYPES).map(($)=>[new G($),O.TYPES[$]]),pQ=new G("2001::/32"),nQ=new G("2002::/16"),dQ=new G("fc00::/7"),aQ=new G("fe80::/10"),oQ=[new G("2001:db8::/32"),new G("3fff::/20")],tQ=new G("2001:2::/48"),rQ=new G("2000::/3"),sQ=O.SPECIAL_PURPOSE.map(([$,,J])=>({subnet:new G($),reachable:J})),eQ=new G("::ffff:0:0/96"),$4=new G("64:ff9b::/96"),J4=new G("64:ff9b:1::/48")});var P8=U((S)=>{var Q4=S&&S.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),Y4=S&&S.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),Z4=S&&S.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))Q4(J,$,Q)}return Y4(J,$),J};Object.defineProperty(S,"__esModule",{value:!0});S.v6=S.AddressError=S.Address6=S.Address4=void 0;var X4=e$();Object.defineProperty(S,"Address4",{enumerable:!0,get:function(){return X4.Address4}});var K4=T8();Object.defineProperty(S,"Address6",{enumerable:!0,get:function(){return K4.Address6}});var z4=L$();Object.defineProperty(S,"AddressError",{enumerable:!0,get:function(){return z4.AddressError}});var V4=Z4(J0());S.v6={helpers:V4}});var _8=U((ZY,f8)=>{var{homedir:I8}=L("node:os"),{join:N$}=L("node:path");function D8(){if(process.env.LODESTAR_DATA_DIR)return process.env.LODESTAR_DATA_DIR;if(process.env.XDG_DATA_HOME)return N$(process.env.XDG_DATA_HOME,"lodestar");if(process.platform==="win32")return N$(process.env.LOCALAPPDATA??N$(I8(),"AppData","Local"),"Lodestar");return N$(I8(),".local","share","lodestar")}function E4(){return N$(D8(),"managed-claude-plugin")}f8.exports={lodestarDataDir:D8,managedClaudePluginDir:E4}});var b8=U((yY,k8)=>{k8.exports=h8;h8.sync=A4;var v8=L("fs");function y4($,J){var Q=J.pathExt!==void 0?J.pathExt:process.env.PATHEXT;if(!Q)return!0;if(Q=Q.split(";"),Q.indexOf("")!==-1)return!0;for(var Y=0;Y<Q.length;Y++){var Z=Q[Y].toLowerCase();if(Z&&$.substr(-Z.length).toLowerCase()===Z)return!0}return!1}function x8($,J,Q){if(!$.isSymbolicLink()&&!$.isFile())return!1;return y4(J,Q)}function h8($,J,Q){v8.stat($,function(Y,Z){Q(Y,Y?!1:x8(Z,$,J))})}function A4($,J){return x8(v8.statSync($),$,J)}});var m8=U((AY,l8)=>{l8.exports=u8;u8.sync=v4;var g8=L("fs");function u8($,J,Q){g8.stat($,function(Y,Z){Q(Y,Y?!1:c8(Z,J))})}function v4($,J){return c8(g8.statSync($),J)}function c8($,J){return $.isFile()&&x4($,J)}function x4($,J){var{mode:Q,uid:Y,gid:Z}=$,X=J.uid!==void 0?J.uid:process.getuid&&process.getuid(),K=J.gid!==void 0?J.gid:process.getgid&&process.getgid(),W=parseInt("100",8),q=parseInt("010",8),w=parseInt("001",8),z=W|q,V=Q&w||Q&q&&Z===K||Q&W&&Y===X||Q&z&&X===0;return V}});var p8=U((xY,i8)=>{var vY=L("fs"),l$;if(process.platform==="win32"||global.TESTING_WINDOWS)l$=b8();else l$=m8();i8.exports=X0;X0.sync=h4;function X0($,J,Q){if(typeof J==="function")Q=J,J={};if(!Q){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,Z){X0($,J||{},function(X,K){if(X)Z(X);else Y(K)})})}l$($,J||{},function(Y,Z){if(Y){if(Y.code==="EACCES"||J&&J.ignoreErrors)Y=null,Z=!1}Q(Y,Z)})}function h4($,J){try{return l$.sync($,J||{})}catch(Q){if(J&&J.ignoreErrors||Q.code==="EACCES")return!1;else throw Q}}});var s8=U((hY,r8)=>{var G$=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",n8=L("path"),k4=G$?";":":",d8=p8(),a8=($)=>Object.assign(Error(`not found: ${$}`),{code:"ENOENT"}),o8=($,J)=>{let Q=J.colon||k4,Y=$.match(/\//)||G$&&$.match(/\\/)?[""]:[...G$?[process.cwd()]:[],...(J.path||process.env.PATH||"").split(Q)],Z=G$?J.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",X=G$?Z.split(Q):[""];if(G$){if($.indexOf(".")!==-1&&X[0]!=="")X.unshift("")}return{pathEnv:Y,pathExt:X,pathExtExe:Z}},t8=($,J,Q)=>{if(typeof J==="function")Q=J,J={};if(!J)J={};let{pathEnv:Y,pathExt:Z,pathExtExe:X}=o8($,J),K=[],W=(w)=>new Promise((z,V)=>{if(w===Y.length)return J.all&&K.length?z(K):V(a8($));let H=Y[w],F=/^".*"$/.test(H)?H.slice(1,-1):H,j=n8.join(F,$),M=!F&&/^\.[\\\/]/.test($)?$.slice(0,2)+j:j;z(q(M,w,0))}),q=(w,z,V)=>new Promise((H,F)=>{if(V===Z.length)return H(W(z+1));let j=Z[V];d8(w+j,{pathExt:X},(M,N)=>{if(!M&&N)if(J.all)K.push(w+j);else return H(w+j);return H(q(w,z,V+1))})});return Q?W(0).then((w)=>Q(null,w),Q):W(0)},b4=($,J)=>{J=J||{};let{pathEnv:Q,pathExt:Y,pathExtExe:Z}=o8($,J),X=[];for(let K=0;K<Q.length;K++){let W=Q[K],q=/^".*"$/.test(W)?W.slice(1,-1):W,w=n8.join(q,$),z=!q&&/^\.[\\\/]/.test($)?$.slice(0,2)+w:w;for(let V=0;V<Y.length;V++){let H=z+Y[V];try{if(d8.sync(H,{pathExt:Z}))if(J.all)X.push(H);else return H}catch(F){}}}if(J.all&&X.length)return X;if(J.nothrow)return null;throw a8($)};r8.exports=t8;t8.sync=b4});var $1=U((kY,K0)=>{var e8=($={})=>{let J=$.env||process.env;if(($.platform||process.platform)!=="win32")return"PATH";return Object.keys(J).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};K0.exports=e8;K0.exports.default=e8});var Z1=U((bY,Y1)=>{var J1=L("path"),g4=s8(),u4=$1();function Q1($,J){let Q=$.options.env||process.env,Y=process.cwd(),Z=$.options.cwd!=null,X=Z&&process.chdir!==void 0&&!process.chdir.disabled;if(X)try{process.chdir($.options.cwd)}catch(W){}let K;try{K=g4.sync($.command,{path:Q[u4({env:Q})],pathExt:J?J1.delimiter:void 0})}catch(W){}finally{if(X)process.chdir(Y)}if(K)K=J1.resolve(Z?$.options.cwd:"",K);return K}function c4($){return Q1($)||Q1($,!0)}Y1.exports=c4});var X1=U((i4,V0)=>{var z0=/([()\][%!^"`<>&|;, *?])/g;function l4($){return $=$.replace(z0,"^$1"),$}function m4($,J){if($=`${$}`,$=$.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),$=$.replace(/(?=(\\+?)?)\1$/,"$1$1"),$=`"${$}"`,$=$.replace(z0,"^$1"),J)$=$.replace(z0,"^$1");return $}i4.command=l4;i4.argument=m4});var z1=U((gY,K1)=>{K1.exports=/^#!(.*)/});var W1=U((uY,V1)=>{var d4=z1();V1.exports=($="")=>{let J=$.match(d4);if(!J)return null;let[Q,Y]=J[0].replace(/#! ?/,"").split(" "),Z=Q.split("/").pop();if(Z==="env")return Y;return Y?`${Z} ${Y}`:Z}});var G1=U((cY,H1)=>{var W0=L("fs"),a4=W1();function o4($){let Q=Buffer.alloc(150),Y;try{Y=W0.openSync($,"r"),W0.readSync(Y,Q,0,150,0),W0.closeSync(Y)}catch(Z){}return a4(Q.toString())}H1.exports=o4});var B1=U((lY,O1)=>{var t4=L("path"),F1=Z1(),U1=X1(),r4=G1(),s4=process.platform==="win32",e4=/\.(?:com|exe)$/i,$6=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function J6($){$.file=F1($);let J=$.file&&r4($.file);if(J)return $.args.unshift($.file),$.command=J,F1($);return $.file}function Q6($){if(!s4)return $;let J=J6($),Q=!e4.test(J);if($.options.forceShell||Q){let Y=$6.test(J);$.command=t4.normalize($.command),$.command=U1.command($.command),$.args=$.args.map((X)=>U1.argument(X,Y));let Z=[$.command].concat($.args).join(" ");$.args=["/d","/s","/c",`"${Z}"`],$.command=process.env.comspec||"cmd.exe",$.options.windowsVerbatimArguments=!0}return $}function Y6($,J,Q){if(J&&!Array.isArray(J))Q=J,J=null;J=J?J.slice(0):[],Q=Object.assign({},Q);let Y={command:$,args:J,options:Q,file:void 0,original:{command:$,args:J}};return Q.shell?Y:Q6(Y)}O1.exports=Y6});var w1=U((mY,q1)=>{var H0=process.platform==="win32";function G0($,J){return Object.assign(Error(`${J} ${$.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${J} ${$.command}`,path:$.command,spawnargs:$.args})}function Z6($,J){if(!H0)return;let Q=$.emit;$.emit=function(Y,Z){if(Y==="exit"){let X=M1(Z,J);if(X)return Q.call($,"error",X)}return Q.apply($,arguments)}}function M1($,J){if(H0&&$===1&&!J.file)return G0(J.original,"spawn");return null}function X6($,J){if(H0&&$===1&&!J.file)return G0(J.original,"spawnSync");return null}q1.exports={hookChildProcess:Z6,verifyENOENT:M1,verifyENOENTSync:X6,notFoundError:G0}});var C1=U((iY,F$)=>{var L1=L("child_process"),F0=B1(),U0=w1();function N1($,J,Q){let Y=F0($,J,Q),Z=L1.spawn(Y.command,Y.args,Y.options);return U0.hookChildProcess(Z,Y),Z}function K6($,J,Q){let Y=F0($,J,Q),Z=L1.spawnSync(Y.command,Y.args,Y.options);return Z.error=Z.error||U0.verifyENOENTSync(Z.status,Y),Z}F$.exports=N1;F$.exports.spawn=N1;F$.exports.sync=K6;F$.exports._parse=F0;F$.exports._enoent=U0});import{existsSync as O6,readFileSync as P1}from"node:fs";import{join as B6}from"node:path";import{fileURLToPath as M6}from"node:url";import{Agent as j4}from"node:http";import{Agent as T4}from"node:https";var P4=B$(x0(),1),R4=B$(X8(),1);var n=B$(P8(),1);import{execFile as W4}from"node:child_process";import{readFile as H4}from"node:fs/promises";import{homedir as G4}from"node:os";import{join as R8}from"node:path";import{promisify as F4}from"node:util";var U4=F4(W4);function H$($,J){return $[J.toLowerCase()]?.trim()||$[J]?.trim()||void 0}function Z0($){let J=$.hostname.replace(/^\[|\]$/g,"").toLowerCase();return J==="localhost"||J.endsWith(".localhost")||J==="::1"||/^127\.(?:\d{1,3}\.){2}\d{1,3}$/.test(J)||/^::ffff:(?:127\.|7f[0-9a-f]{2}:)/.test(J)}function Y0($,J=""){let Q=$.hostname.replace(/^\[|\]$/g,"").toLowerCase(),Y=$.port||($.protocol==="https:"?"443":"80");return J.split(/[,;\s]+/).filter(Boolean).some((Z)=>{let X=Z.toLowerCase();if(X==="*")return!0;if(X==="<local>")return!Q.includes(".")&&!Q.includes(":");if(X.includes("/")){if(n.Address4.isValid(X))return n.Address4.isValid(Q)&&new n.Address4(Q).isInSubnet(new n.Address4(X));if(n.Address6.isValid(X))return n.Address6.isValid(Q)&&new n.Address6(Q).isInSubnet(new n.Address6(X));throw Error("network proxy: invalid IP range in bypass list")}let K=X.match(/^(\[[^\]]+\]|[^:]+):(\d+)$/);if(K&&K[2]!==Y)return!1;let W=(K?K[1]:X).replace(/^\[|\]$/g,"").replace(/^\*?\./,"");return Q===W||Q.endsWith(`.${W}`)})}function E8($,J){let Q;try{Q=new URL($)}catch{throw Error(`network proxy: ${J} contains an invalid proxy URL`)}if(!["http:","https:"].includes(Q.protocol))throw Error(`network proxy: ${J} must use an HTTP(S) proxy; SOCKS and PAC are not supported`);if(!Q.hostname||Q.search||Q.hash||Q.pathname&&Q.pathname!=="/")throw Error(`network proxy: ${J} must contain a proxy host and port without a path or query`);return Q.href}function S8($,J,Q={}){if(!["http:","https:"].includes($.protocol))throw Error(`network: unsupported URL protocol ${$.protocol}`);if(Z0($)||Y0($,H$(J,"NO_PROXY")))return;let Y=$.protocol==="https:"?"HTTPS_PROXY":"HTTP_PROXY",Z=H$(J,Y)||H$(J,"ALL_PROXY");if(Z)return E8(Z,"environment");if(Q.unsupported)throw Error(`network proxy: ${Q.unsupported}`);if(Y0($,Q.bypass))return;let X=($.protocol==="https:"?Q.https:Q.http)||Q.all;return X?E8(X,"system settings"):void 0}function u$($,J,Q="http"){if(typeof $!=="string"||!$.trim()||!Number.isInteger(Number(J))||Number(J)<1||Number(J)>65535)throw Error("network proxy: system proxy has an invalid host or port");let Y=$.includes(":")&&!$.startsWith("[")?`[${$}]`:$;return`${Q}://${Y}:${J}`}function O4($){if($.AutoConfigURL)return{unsupported:"Windows PAC proxy is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};if(!$.ProxyEnable)return $.AutoDetect?{unsupported:"Windows automatic proxy discovery is not supported; configure a manual HTTP(S) proxy or proxy environment variables"}:{};if(typeof $.ProxyServer!=="string"||!$.ProxyServer.trim())throw Error("network proxy: Windows proxy is enabled without a server");let J={bypass:String($.ProxyOverride??"")};for(let Q of $.ProxyServer.split(";").map((Y)=>Y.trim()).filter(Boolean)){let Y=Q.match(/^(http|https|socks)=(.+)$/i),Z=Y?Y[2]:Q,X=/^[a-z][\w+.-]*:\/\//i.test(Z)?Z:`http://${Z}`;if(!Y)J.all=X;else if(Y[1].toLowerCase()==="socks")J.all=`socks://${Z.replace(/^socks\w*:\/\//,"")}`;else J[Y[1].toLowerCase()]=X}return J}function B4($){let J=(Z)=>$.match(new RegExp(`^\\s*${Z}\\s*:\\s*(.*?)\\s*$`,"m"))?.[1];if(J("ProxyAutoConfigEnable")==="1"||J("ProxyAutoDiscoveryEnable")==="1")return{unsupported:"macOS PAC/automatic proxy discovery is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};let Q={};if(J("HTTPEnable")==="1")Q.http=u$(J("HTTPProxy"),J("HTTPPort"));if(J("HTTPSEnable")==="1")Q.https=u$(J("HTTPSProxy"),J("HTTPSPort"));if(J("SOCKSEnable")==="1")Q.all=u$(J("SOCKSProxy"),J("SOCKSPort"),"socks");let Y=$.match(/ExceptionsList\s*:\s*<array>\s*\{([^}]*)\}/)?.[1]??"";if(Q.bypass=[...Y.matchAll(/^\s*\d+\s*:\s*(.*?)\s*$/gm)].map((Z)=>Z[1]).join(","),J("ExcludeSimpleHostnames")==="1")Q.bypass+=",<local>";return Q}function b$($){if($===void 0)return"";if(!/^(['"]).*\1$/.test($))throw Error("network proxy: invalid GNOME proxy string");return $.slice(1,-1).replace(/\\([\\'"])/g,"$1")}function M4($){let J=new Map($.split(`
20
+ `);let{connect:q,buffered:w}=await W;if($.emit("proxyConnect",q),this.emit("proxyConnect",q,$),q.statusCode===200){if($.once("socket",y9),J.secureEndpoint)return w$("Upgrading socket connection to TLS"),$8.connect({...Q8(J8(J),"host","path","port"),socket:Y});return Y}Y.destroy();let z=new f$.Socket({writable:!1});return z.readable=!0,$.once("socket",(V)=>{w$("Replaying proxy buffer for failed request"),(0,S9.default)(V.listenerCount("data")>0),V.push(w),V.push(null)}),z}}t$.protocols=["http","https"];k.HttpsProxyAgent=t$;function y9($){$.resume()}function Q8($,...J){let Q={},Y;for(Y in $)if(!J.includes(Y))Q[Y]=$[Y];return Q}});var L$=U((z8)=>{Object.defineProperty(z8,"__esModule",{value:!0});z8.AddressError=void 0;class K8 extends Error{constructor($,J){super($);this.name="AddressError",this.parseMessage=J}}z8.AddressError=K8});var _$=U((H8)=>{Object.defineProperty(H8,"__esModule",{value:!0});H8.isInSubnet=A9;H8.isHostInSubnet=r$;H8.isGloballyReachable=v9;H8.offsetBigInt=x9;H8.isCorrect=h9;H8.prefixLengthFromMask=k9;H8.assertByteArray=b9;H8.numberToPaddedHex=W8;H8.stringToPaddedHex=g9;H8.testBit=u9;var e=L$();function A9($){if(this.subnetMask<$.subnetMask)return!1;return r$.call(this,$)}function r$($){if(this.binaryZeroPad().length!==$.binaryZeroPad().length)return!1;return this.mask($.subnetMask)===$.mask()}function v9($){let J=null;for(let Q=0;Q<$.length;Q++){let Y=$[Q];if(Y.reachable!==null&&r$.call(this,Y.subnet)&&(J===null||Y.subnet.subnetMask>J.subnet.subnetMask))J=Y}return J===null?!0:J.reachable}function x9($,J,Q,Y){if(typeof J==="number"&&!Number.isSafeInteger(J))throw new e.AddressError(`${Y} offset must be an integer`);if(typeof J!=="number"&&typeof J!=="bigint")throw new e.AddressError(`${Y} offset must be an integer`);let Z=$+BigInt(J);if(Z<BigInt(0)||Z>(BigInt(1)<<BigInt(Q))-BigInt(1))throw new e.AddressError(`${Y} offset leaves the address space`);return Z}function h9($){return function(){if(this.addressMinusSuffix!==this.correctForm())return!1;if(this.subnetMask===$&&!this.parsedSubnet)return!0;return this.parsedSubnet===String(this.subnetMask)}}function k9($,J){let Q=$.toString(2).padStart(J,"0");if(Q.length>J)throw new e.AddressError("Invalid subnet mask.");let Y=Q.indexOf("0");if(Y===-1)return J;if(Q.slice(Y).includes("1"))throw new e.AddressError("Invalid subnet mask.");return Y}function b9($,J,Q,Y){if($.length!==J)throw new e.AddressError(`${Q} addresses require exactly ${J} bytes`);for(let Z=0;Z<$.length;Z++)if(!Number.isInteger($[Z])||$[Z]<Y||$[Z]>255)throw new e.AddressError(`All bytes must be integers between ${Y} and 255`)}function W8($){return $.toString(16).padStart(2,"0")}function g9($){return W8(parseInt($,10))}function u9($,J){let{length:Q}=$;if(J>Q)return!1;let Y=Q-J;return $.substring(Y,Y+1)==="1"}});var s$=U((G8)=>{Object.defineProperty(G8,"__esModule",{value:!0});G8.SPECIAL_PURPOSE=G8.RE_SUBNET_STRING=G8.RE_ADDRESS=G8.GROUPS=G8.BITS=void 0;G8.BITS=32;G8.GROUPS=4;G8.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$/g;G8.RE_SUBNET_STRING=/\/\d{1,2}$/;G8.SPECIAL_PURPOSE=[["0.0.0.0/8","This network",!1],["0.0.0.0/32","This host on this network",!1],["10.0.0.0/8","Private-Use",!1],["100.64.0.0/10","Shared Address Space",!1],["127.0.0.0/8","Loopback",!1],["169.254.0.0/16","Link Local",!1],["172.16.0.0/12","Private-Use",!1],["192.0.0.0/24","IETF Protocol Assignments",!1],["192.0.0.0/29","IPv4 Service Continuity Prefix",!1],["192.0.0.8/32","IPv4 dummy address",!1],["192.0.0.9/32","Port Control Protocol Anycast",!0],["192.0.0.10/32","Traversal Using Relays around NAT Anycast",!0],["192.0.0.170/32","NAT64/DNS64 Discovery",!1],["192.0.0.171/32","NAT64/DNS64 Discovery",!1],["192.0.2.0/24","Documentation (TEST-NET-1)",!1],["192.31.196.0/24","AS112-v4",!0],["192.52.193.0/24","AMT",!0],["192.88.99.0/24","Deprecated (6to4 Relay Anycast)",null],["192.88.99.2/32","6a44-relay anycast address",!1],["192.168.0.0/16","Private-Use",!1],["192.175.48.0/24","Direct Delegation AS112 Service",!0],["198.18.0.0/15","Benchmarking",!1],["198.51.100.0/24","Documentation (TEST-NET-2)",!1],["203.0.113.0/24","Documentation (TEST-NET-3)",!1],["240.0.0.0/4","Reserved",!1],["255.255.255.255/32","Limited Broadcast",!1]]});var e$=U((l)=>{var JQ=l&&l.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),QQ=l&&l.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),U8=l&&l.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))JQ(J,$,Q)}return QQ(J,$),J};Object.defineProperty(l,"__esModule",{value:!0});l.Address4=void 0;var x=U8(_$()),P=U8(s$()),c=L$(),YQ=x.isCorrect(P.BITS);class B{constructor($){this.addressMinusSuffix="",this.groups=P.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=YQ,this.isInSubnet=x.isInSubnet,this.isHostInSubnet=x.isHostInSubnet,this.address=$;let J=P.RE_SUBNET_STRING.exec($);if(J){if(this.parsedSubnet=J[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>P.BITS)throw new c.AddressError("Invalid subnet mask.");$=$.replace(P.RE_SUBNET_STRING,"")}let Q=P.GROUPS*4-1;if($.length>Q)throw new c.AddressError(`IPv4 addresses are at most ${Q} characters.`);this.addressMinusSuffix=$,this.parsedAddress=this.parse($)}static isValid($){try{return new B($),!0}catch{return!1}}parse($){let J=$.split(".");if(J.some((Q)=>/^0\d/.test(Q)))throw new c.AddressError("IPv4 addresses can't have leading zeroes.");if(!$.match(P.RE_ADDRESS))throw new c.AddressError("Invalid IPv4 address.");return J}correctForm(){return this.parsedAddress.map(($)=>parseInt($,10)).join(".")}static fromAddressAndMask($,J){let Q=x.prefixLengthFromMask(new B(J).bigInt(),P.BITS);return new B(`${$}/${Q}`)}static fromAddressAndWildcardMask($,J){let Q=new B(J).bigInt(),Y=(BigInt(1)<<BigInt(P.BITS))-BigInt(1),Z=Q^Y,X=x.prefixLengthFromMask(Z,P.BITS);return new B(`${$}/${X}`)}static fromWildcard($){let J=$.split(".");if(J.length!==P.GROUPS)throw new c.AddressError("Wildcard pattern must have 4 octets");let Q=-1;for(let K=0;K<J.length;K++)if(J[K]==="*"){if(Q===-1)Q=K}else if(Q!==-1)throw new c.AddressError("Wildcard `*` must only appear in trailing octets (e.g. `192.168.0.*`)");let Y=Q===-1?0:J.length-Q,Z=J.map((K)=>K==="*"?"0":K),X=P.BITS-Y*8;return new B(`${Z.join(".")}/${X}`)}static fromHex($){let J=$.replace(/:/g,"");if(!/^[0-9a-fA-F]{8}$/.test(J))throw new c.AddressError("IPv4 hex must be exactly 8 hex digits");let Q=[];for(let Y=0;Y<8;Y+=2)Q.push(parseInt(J.slice(Y,Y+2),16));return new B(Q.join("."))}static fromInteger($){if(!Number.isInteger($)||$<0||$>4294967295)throw new c.AddressError("IPv4 integer must be in the range 0 to 2**32 - 1");return B.fromHex($.toString(16).padStart(8,"0"))}static fromArpa($){let Q=$.replace(/(\.in-addr\.arpa)?\.?$/i,"").split(".").reverse().join(".");return new B(Q)}toHex(){return this.parsedAddress.map(($)=>x.stringToPaddedHex($)).join(":")}toArray(){return this.parsedAddress.map(($)=>parseInt($,10))}toGroup6(){let $=[],J;for(J=0;J<P.GROUPS;J+=2)$.push(`${x.stringToPaddedHex(this.parsedAddress[J])}${x.stringToPaddedHex(this.parsedAddress[J+1])}`);return $.join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(($)=>x.stringToPaddedHex($)).join("")}`)}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(P.BITS-this.subnetMask)}`)}startAddress(){return B.fromBigInt(this._startAddress())}startAddressExclusive(){let $=BigInt("1");return B.fromBigInt(this._startAddress()+$)}offset($){return B.fromBigInt(x.offsetBigInt(this.bigInt(),$,P.BITS,"IPv4")).withSubnetMask(this.subnetMask)}nextNetwork(){return B.fromBigInt(x.offsetBigInt(this._endAddress(),1,P.BITS,"IPv4")).withSubnetMask(this.subnetMask)}withSubnetMask($){return new B(`${this.correctForm()}/${$}`)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(P.BITS-this.subnetMask)}`)}endAddress(){return B.fromBigInt(this._endAddress())}endAddressExclusive(){let $=BigInt("1");return B.fromBigInt(this._endAddress()-$)}subnetMaskAddress(){return B.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(P.BITS-this.subnetMask)}`))}wildcardMask(){return B.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(P.BITS-this.subnetMask)}`))}networkForm(){return`${this.startAddress().correctForm()}/${this.subnetMask}`}static fromBigInt($){if($<BigInt(0)||$>BigInt(4294967295))throw new c.AddressError("IPv4 BigInt must be in the range 0 to 2**32 - 1");return B.fromHex($.toString(16).padStart(8,"0"))}static fromByteArray($){return x.assertByteArray($,4,"IPv4",0),this.fromUnsignedByteArray($)}static fromUnsignedByteArray($){if($.length!==4)throw new c.AddressError("IPv4 addresses require exactly 4 bytes");let J=$.join(".");return new B(J)}mask($){if($===void 0)$=this.subnetMask;return this.getBitsBase2(0,$)}getBitsBase2($,J){return this.binaryZeroPad().slice($,J)}reverseForm($){if(!$)$={};let J=this.correctForm().split(".").reverse().join(".");if($.omitSuffix)return J;return`${J}.in-addr.arpa.`}isMulticast(){return this.isHostInSubnet(ZQ)}isPrivate(){return XQ.some(($)=>this.isHostInSubnet($))}isLoopback(){return this.isHostInSubnet(KQ)}isLinkLocal(){return this.isHostInSubnet(zQ)}isUnspecified(){return this.isHostInSubnet(VQ)}isBroadcast(){return this.isHostInSubnet(WQ)}isCGNAT(){return this.isHostInSubnet(HQ)}isDocumentation(){return GQ.some(($)=>this.isHostInSubnet($))}isBenchmarking(){return this.isHostInSubnet(FQ)}isReserved(){return this.isHostInSubnet(UQ)}isGlobal(){return!this.isMulticast()&&x.isGloballyReachable.call(this,OQ)}binaryZeroPad(){if(this._binaryZeroPad===void 0)this._binaryZeroPad=this.bigInt().toString(2).padStart(P.BITS,"0");return this._binaryZeroPad}groupForV6(){let $=this.parsedAddress;return this.correctForm().replace(P.RE_ADDRESS,`<span class="hover-group group-v4 group-6">${$.slice(0,2).join(".")}</span>.<span class="hover-group group-v4 group-7">${$.slice(2,4).join(".")}</span>`)}}l.Address4=B;var ZQ=new B("224.0.0.0/4"),XQ=[new B("10.0.0.0/8"),new B("172.16.0.0/12"),new B("192.168.0.0/16")],KQ=new B("127.0.0.0/8"),zQ=new B("169.254.0.0/16"),VQ=new B("0.0.0.0/32"),WQ=new B("255.255.255.255/32"),HQ=new B("100.64.0.0/10"),GQ=[new B("192.0.2.0/24"),new B("198.51.100.0/24"),new B("203.0.113.0/24")],FQ=new B("198.18.0.0/15"),UQ=new B("240.0.0.0/4"),OQ=P.SPECIAL_PURPOSE.map(([$,,J])=>({subnet:new B($),reachable:J}))});var $0=U((O8)=>{Object.defineProperty(O8,"__esModule",{value:!0});O8.SPECIAL_PURPOSE=O8.RE_URL_WITH_PORT=O8.RE_URL=O8.RE_ZONE_STRING=O8.RE_SUBNET_STRING=O8.RE_BAD_ADDRESS=O8.RE_BAD_CHARACTERS=O8.TYPES=O8.SCOPES=O8.GROUPS=O8.BITS=void 0;O8.BITS=128;O8.GROUPS=8;O8.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"};O8.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","::ffff:0:0/96":"IPv4-mapped","ff00::/8":"Multicast","fe80::/10":"Link-local unicast","fc00::/7":"Unique local","2001::/32":"Teredo","2001:2::/48":"Benchmarking","2002::/16":"6to4","2001:db8::/32":"Documentation","3fff::/20":"Documentation","100::/64":"Discard-only","fec0::/10":"Site-local unicast (deprecated)","::/96":"IPv4-compatible (deprecated)","64:ff9b::/96":"NAT64 (well-known)","64:ff9b:1::/48":"NAT64 (local-use)"};O8.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi;O8.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;O8.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/;O8.RE_ZONE_STRING=/%.*$/;O8.RE_URL=/^(?:\[([0-9a-f:.]+)\]|([0-9a-f:.]+))(?:[/?#].*)?$/i;O8.RE_URL_WITH_PORT=/^\[([0-9a-f:.]+)\]:([0-9]{1,5})(?:[/?#].*)?$/i;O8.SPECIAL_PURPOSE=[["::1/128","Loopback Address",!1],["::/128","Unspecified Address",!1],["::ffff:0:0/96","IPv4-mapped Address",!1],["64:ff9b::/96","IPv4-IPv6 Translat.",!0],["64:ff9b:1::/48","IPv4-IPv6 Translat.",!1],["100::/64","Discard-Only Address Block",!1],["100:0:0:1::/64","Dummy IPv6 Prefix",!1],["2001::/23","IETF Protocol Assignments",!1],["2001::/32","TEREDO",!1],["2001:1::1/128","Port Control Protocol Anycast",!0],["2001:1::2/128","Traversal Using Relays around NAT Anycast",!0],["2001:1::3/128","DNS-SD Service Registration Protocol Anycast",!0],["2001:2::/48","Benchmarking",!1],["2001:3::/32","AMT",!0],["2001:4:112::/48","AS112-v6",!0],["2001:10::/28","Deprecated (previously ORCHID)",null],["2001:20::/28","ORCHIDv2",!0],["2001:30::/28","Drone Remote ID Protocol Entity Tags (DETs) Prefix",!0],["2001:db8::/32","Documentation",!1],["2002::/16","6to4",!1],["2620:4f:8000::/48","Direct Delegation AS112 Service",!0],["3fff::/20","Documentation",!1],["5f00::/16","Segment Routing (SRv6) SIDs",!1],["fc00::/7","Unique-Local",!1],["fe80::/10","Link-Local Unicast",!1]]});var J0=U((w8)=>{Object.defineProperty(w8,"__esModule",{value:!0});w8.escapeHtml=y$;w8.spanAllZeroes=M8;w8.spanAll=RQ;w8.spanLeadingZeroes=EQ;w8.simpleGroup=SQ;function y$($){return $.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function M8($){return y$($).replace(/(0+)/g,'<span class="zero">$1</span>')}function RQ($,J=0){return $.split("").map((Y,Z)=>`<span class="digit value-${y$(Y)} position-${Z+J}">${M8(Y)}</span>`).join("")}function q8($){return y$($).replace(/^(0+)/,'<span class="zero">$1</span>')}function EQ($){return $.split(":").map((Q)=>q8(Q)).join(":")}function SQ($,J=0){return $.split(":").map((Y,Z)=>{if(/group-v4/.test(Y))return Y;return`<span class="hover-group group-${Z+J}">${q8(Y)}</span>`})}});var L8=U((_)=>{var AQ=_&&_.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),vQ=_&&_.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),xQ=_&&_.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))AQ(J,$,Q)}return vQ(J,$),J};Object.defineProperty(_,"__esModule",{value:!0});_.ADDRESS_BOUNDARY=void 0;_.groupPossibilities=v$;_.padGroup=A$;_.simpleRegularExpression=kQ;_.possibleElisions=bQ;var hQ=xQ($0());function v$($){return`(${$.join("|")})`}function A$($){if($.length<4)return`0{0,${4-$.length}}${$}`;return $}_.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]";function kQ($){let J=[];$.forEach((Y,Z)=>{if(parseInt(Y,16)===0)J.push(Z)});let Q=J.map((Y)=>$.map((Z,X)=>{if(X===Y){let K=X===0||X===hQ.GROUPS-1?":":"";return v$([A$(Z),K])}return A$(Z)}).join(":"));return Q.push($.map(A$).join(":")),v$(Q)}function bQ($,J,Q){let Y=J?"":":",Z=Q?"":":",X=[];if(!J&&!Q)X.push("::");if(J&&Q)X.push("");if(Q&&!J||!Q&&J)X.push(":");X.push(`${Y}(:0{1,4}){1,${$-1}}`),X.push(`(0{1,4}:){1,${$-1}}${Z}`),X.push(`(0{1,4}:){${$-1}}0{1,4}`);for(let K=1;K<$-1;K++)for(let W=1;W<$-K;W++)X.push(`(0{1,4}:){${W}}:(0{1,4}:){${$-W-K-1}}0{1,4}`);return v$(X)}});var T8=U((p)=>{var gQ=p&&p.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),uQ=p&&p.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),k$=p&&p.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))gQ(J,$,Q)}return uQ(J,$),J};Object.defineProperty(p,"__esModule",{value:!0});p.Address6=void 0;var i=k$(_$()),Q0=k$(s$()),O=k$($0()),$$=k$(J0()),m=e$(),J$=L8(),R=L$(),x$=_$(),cQ=i.isCorrect(O.BITS);function h$($){if(!$)throw Error("Assertion failed.")}function lQ($){let J=/(\d+)(\d{3})/;while(J.test($))$=$.replace(J,"$1,$2");return $}function mQ($){return $=$.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2'),$=$.replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2'),$}function iQ($,J){let Q=[],Y=[],Z;for(Z=0;Z<$.length;Z++)if(Z<J[0])Q.push($[Z]);else if(Z>J[1])Y.push($[Z]);return Q.concat(["compact"]).concat(Y)}function N8($){return parseInt($,16).toString(16).padStart(4,"0")}function C8($){return $&255}class G{constructor($,J){if(this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=i.isInSubnet,this.isHostInSubnet=i.isHostInSubnet,this.isCorrect=cQ,J===void 0)this.groups=O.GROUPS;else this.groups=J;this.address=$;let Q=O.RE_SUBNET_STRING.exec($);if(Q){if(this.parsedSubnet=Q[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>O.BITS)throw new R.AddressError("Invalid subnet mask.");$=$.replace(O.RE_SUBNET_STRING,"")}if(/\//.test($))throw new R.AddressError("Invalid subnet mask.");let Y=O.RE_ZONE_STRING.exec($);if(Y)this.zone=Y[0],$=$.replace(O.RE_ZONE_STRING,"");let Z=this.groups*5+5;if($.length>Z)throw new R.AddressError(`IPv6 addresses are at most ${Z} characters.`);this.addressMinusSuffix=$,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid($){try{return new G($),!0}catch{return!1}}static fromBigInt($){if($<BigInt(0)||$>(BigInt(1)<<BigInt(O.BITS))-BigInt(1))throw new R.AddressError("IPv6 BigInt must be in the range 0 to 2**128 - 1");let J=$.toString(16).padStart(32,"0"),Q=[];for(let Y=0;Y<O.GROUPS;Y++)Q.push(J.slice(Y*4,(Y+1)*4));return new G(Q.join(":"))}static fromURL($){var J;let Q,Y=null,Z,X,K=$.replace(/^[a-z][a-z0-9+.-]*:\/\//i,"");if(K.indexOf("[")!==-1&&K.indexOf("]:")!==-1){if(X="failed to parse address with port",Z=O.RE_URL_WITH_PORT.exec(K),Z===null)return{error:X,address:null,port:null};Q=Z[1],Y=Z[2]}else{if(X="failed to parse address from URL",Z=O.RE_URL.exec(K),Z===null)return{error:X,address:null,port:null};Q=(J=Z[1])!==null&&J!==void 0?J:Z[2]}if(Y){if(Y=parseInt(Y,10),Y<0||Y>65535)Y=null}else Y=null;let W;try{W=new G(Q)}catch{return{error:X,address:null,port:null}}return{address:W,port:Y}}static fromAddressAndMask($,J){let Q=i.prefixLengthFromMask(new G(J).bigInt(),O.BITS);return new G(`${$}/${Q}`)}static fromAddressAndWildcardMask($,J){let Q=new G(J).bigInt(),Y=(BigInt(1)<<BigInt(O.BITS))-BigInt(1),Z=Q^Y,X=i.prefixLengthFromMask(Z,O.BITS);return new G(`${$}/${X}`)}static fromWildcard($){if($.includes("%")||$.includes("/"))throw new R.AddressError("Wildcard pattern must not include a zone or CIDR suffix");let J=$.split("::");if(J.length>2)throw new R.AddressError("Wildcard pattern cannot contain more than one '::'");let Q;if(J.length===2){let W=J[0]===""?[]:J[0].split(":"),q=J[1]===""?[]:J[1].split(":"),w=O.GROUPS-W.length-q.length;if(w<1)throw new R.AddressError("Wildcard pattern with '::' has too many groups");Q=[...W,...Array(w).fill("0"),...q]}else Q=$.split(":");if(Q.length!==O.GROUPS)throw new R.AddressError("Wildcard pattern must have 8 groups");let Y=-1;for(let W=0;W<Q.length;W++)if(Q[W]==="*"){if(Y===-1)Y=W}else if(Y!==-1)throw new R.AddressError("Wildcard `*` must only appear in trailing groups (e.g. `2001:db8:*:*:*:*:*:*`)");let Z=Y===-1?0:Q.length-Y,X=Q.map((W)=>W==="*"?"0":W),K=O.BITS-Z*16;return new G(`${X.join(":")}/${K}`)}static fromAddress4($){let J=new m.Address4($),Q=O.BITS-(Q0.BITS-J.subnetMask);return new G(`::ffff:${J.correctForm()}/${Q}`)}static fromArpa($){let J=$.replace(/(\.ip6\.arpa)?\.?$/i,"");if(!/^[0-9a-f](\.[0-9a-f]){0,31}$/i.test(J))throw new R.AddressError("Invalid 'ip6.arpa' form.");let Q=J.split(".").reverse(),Y=Q.length*4,Z=Q.join("").padEnd(32,"0"),X=[];for(let K=0;K<O.GROUPS;K++)X.push(Z.slice(K*4,(K+1)*4));return new G(`${X.join(":")}/${Y}`)}microsoftTranscription(){return`${this.correctForm().replace(/:/g,"-")}.ipv6-literal.net`}mask($=this.subnetMask){return this.getBitsBase2(0,$)}possibleSubnets($=128){let J=O.BITS-this.subnetMask,Q=Math.abs($-O.BITS),Y=J-Q;if(Y<0)return"0";return lQ((BigInt("2")**BigInt(Y)).toString(10))}_startAddress(){return BigInt(`0b${this.mask()+"0".repeat(O.BITS-this.subnetMask)}`)}startAddress(){return G.fromBigInt(this._startAddress())}startAddressExclusive(){let $=BigInt("1");return G.fromBigInt(this._startAddress()+$)}_endAddress(){return BigInt(`0b${this.mask()+"1".repeat(O.BITS-this.subnetMask)}`)}endAddress(){return G.fromBigInt(this._endAddress())}endAddressExclusive(){let $=BigInt("1");return G.fromBigInt(this._endAddress()-$)}offset($){return G.fromBigInt(i.offsetBigInt(this.bigInt(),$,O.BITS,"IPv6")).withSubnetMask(this.subnetMask)}nextNetwork(){return G.fromBigInt(i.offsetBigInt(this._endAddress(),1,O.BITS,"IPv6")).withSubnetMask(this.subnetMask)}withSubnetMask($){return new G(`${this.correctForm()}/${$}`)}subnetMaskAddress(){return G.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(O.BITS-this.subnetMask)}`))}wildcardMask(){return G.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(O.BITS-this.subnetMask)}`))}networkForm(){return`${this.startAddress().correctForm()}/${this.subnetMask}`}getScope(){let $=this.getType();if($==="Multicast"||$.startsWith("Multicast "))return O.SCOPES[parseInt(this.getBits(12,16).toString(10),10)]||"Unknown";if($==="Link-local unicast"||$==="Loopback")return"Link local";if($==="Unspecified")return"Unknown";return"Global"}getType(){for(let $=0;$<j8.length;$++){let J=j8[$];if(this.isHostInSubnet(J[0]))return J[1]}return"Global unicast"}getBits($,J){return BigInt(`0b${this.getBitsBase2($,J)}`)}getBitsBase2($,J){return this.binaryZeroPad().slice($,J)}getBitsBase16($,J){let Q=J-$;if(Q%4!==0)throw Error("Length of bits to retrieve must be divisible by four");return this.getBits($,J).toString(16).padStart(Q/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,O.BITS)}reverseForm($){if(!$)$={};let J=Math.floor(this.subnetMask/4),Q=this.canonicalForm().replace(/:/g,"").split("").slice(0,J).reverse().join(".");if(J>0){if($.omitSuffix)return Q;return`${Q}.ip6.arpa.`}if($.omitSuffix)return"";return"ip6.arpa."}correctForm(){let $,J=[],Q=0,Y=[];for($=0;$<this.parsedAddress.length;$++){let K=parseInt(this.parsedAddress[$],16);if(K===0)Q++;if(K!==0&&Q>0){if(Q>1)Y.push([$-Q,$-1]);Q=0}}if(Q>1)Y.push([this.parsedAddress.length-Q,this.parsedAddress.length-1]);let Z=Y.map((K)=>K[1]-K[0]+1);if(Y.length>0){let K=Z.indexOf(Math.max(...Z));J=iQ(this.parsedAddress,Y[K])}else J=this.parsedAddress;for($=0;$<J.length;$++)if(J[$]!=="compact")J[$]=parseInt(J[$],16).toString(16);let X=J.join(":");return X=X.replace(/^compact$/,"::"),X=X.replace(/(^compact)|(compact$)/,":"),X=X.replace(/compact/,""),X}binaryZeroPad(){if(this._binaryZeroPad===void 0)this._binaryZeroPad=this.bigInt().toString(2).padStart(O.BITS,"0");return this._binaryZeroPad}parse4in6($){if($.indexOf(".")===-1)return $;let J=$.split(":"),Q=J.slice(-1)[0],Y=Q.split(".");if(Y.length===Q0.GROUPS&&Y.every((X)=>/^\d{1,3}$/.test(X))){if(Y.some((X)=>/^0\d/.test(X))){let X=Y.map(mQ).join("."),K=J.slice(0,-1).map($$.escapeHtml).join(":"),W=J.length>1?":":"";throw new R.AddressError("IPv4 addresses can't have leading zeroes.",`${K}${W}${X}`)}}let Z=Q.match(Q0.RE_ADDRESS);if(Z){this.parsedAddress4=Z[0];let X=this.subnetMask>=96?`/${this.subnetMask-96}`:"";this.address4=new m.Address4(`${this.parsedAddress4}${X}`),this.v4=!0,J[J.length-1]=this.address4.toGroup6(),$=J.join(":")}return $}parse($){$=this.parse4in6($);let J=$.match(O.RE_BAD_CHARACTERS);if(J)throw new R.AddressError(`Bad character${J.length>1?"s":""} detected in address: ${J.join("")}`,$.replace(O.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));let Q=$.match(O.RE_BAD_ADDRESS);if(Q)throw new R.AddressError(`Address failed regex: ${Q.join("")}`,$.replace(O.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let Y=[],Z=$.split("::");if(Z.length===2){let X=Z[0].split(":"),K=Z[1].split(":");if(X.length===1&&X[0]==="")X=[];if(K.length===1&&K[0]==="")K=[];let W=this.groups-(X.length+K.length);if(!W)throw new R.AddressError("Error parsing groups");this.elidedGroups=W,this.elisionBegin=X.length,this.elisionEnd=X.length+this.elidedGroups,Y=Y.concat(X);for(let q=0;q<W;q++)Y.push("0");Y=Y.concat(K)}else if(Z.length===1)Y=$.split(":"),this.elidedGroups=0;else throw new R.AddressError("Too many :: groups found");if(Y=Y.map((X)=>parseInt(X,16).toString(16)),Y.length!==this.groups)throw new R.AddressError("Incorrect number of groups found");return Y}canonicalForm(){return this.parsedAddress.map(N8).join(":")}decimal(){return this.parsedAddress.map(($)=>parseInt($,16).toString(10).padStart(5,"0")).join(":")}bigInt(){return BigInt(`0x${this.parsedAddress.map(N8).join("")}`)}to4(){let $=this.binaryZeroPad().split(""),J=BigInt(`0b${$.slice(96,128).join("")}`).toString(16).padStart(8,"0");if(this.subnetMask>=96){let Q=this.subnetMask-96,Y=[];for(let Z=0;Z<8;Z+=2)Y.push(parseInt(J.slice(Z,Z+2),16));return new m.Address4(`${Y.join(".")}/${Q}`)}return m.Address4.fromHex(J)}to4in6(){let $=this.to4(),Q=new G(this.parsedAddress.slice(0,6).join(":"),6).correctForm(),Y="";if(!/:$/.test(Q))Y=":";return Q+Y+$.correctForm()}inspectTeredo(){let $=this.getBitsBase16(0,32),Q=(this.getBits(80,96)^BigInt("0xffff")).toString(),Y=m.Address4.fromHex(this.getBitsBase16(32,64)),Z=this.getBits(96,128),X=m.Address4.fromHex((Z^BigInt("0xffffffff")).toString(16).padStart(8,"0")),K=this.getBitsBase2(64,80),W=(0,x$.testBit)(K,15),q=(0,x$.testBit)(K,14),w=(0,x$.testBit)(K,8),z=(0,x$.testBit)(K,9),V=BigInt(`0b${K.slice(2,6)+K.slice(8,16)}`).toString(10);return{prefix:`${$.slice(0,4)}:${$.slice(4,8)}`,server4:Y.address,client4:X.address,flags:K,coneNat:W,microsoft:{reserved:q,universalLocal:z,groupIndividual:w,nonce:V},udpPort:Q}}inspect6to4(){let $=this.getBitsBase16(0,16),J=m.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:$.slice(0,4),gateway:J.address}}to6to4(){if(!this.is4())return null;let $=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new G($)}static fromAddress4Nat64($,J="64:ff9b::/96"){let Q=new m.Address4($),Y=new G(J),Z=Y.subnetMask;if(Z!==32&&Z!==40&&Z!==48&&Z!==56&&Z!==64&&Z!==96)throw new R.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");let X=Y.binaryZeroPad(),K=Q.binaryZeroPad(),W;if(Z===96)W=X.slice(0,96)+K;else{let z=64-Z;W=[X.slice(0,Z),K.slice(0,z),"00000000",K.slice(z),"0".repeat(56-(32-z))].join("")}let q=BigInt(`0b${W}`).toString(16).padStart(32,"0"),w=[];for(let z=0;z<8;z++)w.push(q.slice(z*4,(z+1)*4));return new G(w.join(":"))}toAddress4Nat64($="64:ff9b::/96"){let J=new G($),Q=J.subnetMask;if(Q!==32&&Q!==40&&Q!==48&&Q!==56&&Q!==64&&Q!==96)throw new R.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");if(!this.isHostInSubnet(J))return null;let Y=this.binaryZeroPad(),Z;if(Q===96)Z=Y.slice(96,128);else{let K=64-Q;Z=Y.slice(Q,Q+K)+Y.slice(72,72+(32-K))}let X=[];for(let K=0;K<4;K++)X.push(parseInt(Z.slice(K*8,(K+1)*8),2).toString());return new m.Address4(X.join("."))}toByteArray(){let $=this.bigInt().toString(16).padStart(O.BITS/4,"0"),J=[];for(let Q=0,Y=$.length;Q<Y;Q+=2)J.push(parseInt($.substring(Q,Q+2),16));return J}toUnsignedByteArray(){return this.toByteArray().map(C8)}static fromByteArray($){return i.assertByteArray($,16,"IPv6",-128),this.fromUnsignedByteArray($.map(C8))}static fromUnsignedByteArray($){i.assertByteArray($,16,"IPv6",0);let J=BigInt("256"),Q=BigInt("0"),Y=BigInt("1");for(let Z=$.length-1;Z>=0;Z--)Q+=Y*BigInt($[Z].toString(10)),Y*=J;return G.fromBigInt(Q)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){let $=this.embeddedIPv4();if($)return $.isLinkLocal();return this.isHostInSubnet(aQ)}isMulticast(){let $=this.embeddedIPv4();if($)return $.isMulticast();let J=this.getType();return J==="Multicast"||J.startsWith("Multicast ")}is4(){return this.v4}isMapped4(){return this.isHostInSubnet(eQ)}embeddedIPv4(){if(this.isMapped4()||this.isHostInSubnet($4))return this.to4();return null}isTeredo(){return this.isHostInSubnet(pQ)}is6to4(){return this.isHostInSubnet(nQ)}isLoopback(){let $=this.embeddedIPv4();if($)return $.isLoopback();return this.getType()==="Loopback"}isULA(){return this.isHostInSubnet(dQ)}isPrivate(){let $=this.embeddedIPv4();if($)return $.isPrivate();return this.isULA()||this.isHostInSubnet(J4)}isCGNAT(){let $=this.embeddedIPv4();if($)return $.isCGNAT();return!1}isBroadcast(){let $=this.embeddedIPv4();if($)return $.isBroadcast();return!1}isUnspecified(){let $=this.embeddedIPv4();if($)return $.isUnspecified();return this.getType()==="Unspecified"}isDocumentation(){return oQ.some(($)=>this.isHostInSubnet($))}isBenchmarking(){let $=this.embeddedIPv4();if($)return $.isBenchmarking();return this.isHostInSubnet(tQ)}isGlobal(){let $=this.embeddedIPv4();if($)return $.isGlobal();return this.isHostInSubnet(rQ)&&i.isGloballyReachable.call(this,sQ)}href($){if($===void 0)$="";else $=`:${$}`;return`http://[${this.correctForm()}]${$}/`}link($){if(!$)$={};if($.className===void 0)$.className="";if($.prefix===void 0)$.prefix="/#address=";if($.v4===void 0)$.v4=!1;let J=this.correctForm;if($.v4)J=this.to4in6;let Q=J.call(this),Y=$$.escapeHtml(`${$.prefix}${Q}`),Z=$$.escapeHtml(Q);if($.className){let X=$$.escapeHtml($.className);return`<a href="${Y}" class="${X}">${Z}</a>`}return`<a href="${Y}">${Z}</a>`}group(){if(this.elidedGroups===0)return $$.simpleGroup(this.addressMinusSuffix).join(":");h$(typeof this.elidedGroups==="number"),h$(typeof this.elisionBegin==="number");let $=[],[J,Q]=this.addressMinusSuffix.split("::");if(J.length)$.push(...$$.simpleGroup(J));else $.push("");let Y=["hover-group"];for(let Z=this.elisionBegin;Z<this.elisionBegin+this.elidedGroups;Z++)Y.push(`group-${Z}`);if($.push(`<span class="${Y.join(" ")}"></span>`),Q.length)$.push(...$$.simpleGroup(Q,this.elisionEnd));else $.push("");if(this.is4())h$(this.address4 instanceof m.Address4),$.pop(),$.push(this.address4.groupForV6());return $.join(":")}regularExpressionString($=!1){let J=[],Q=new G(this.correctForm());if(Q.elidedGroups===0)J.push((0,J$.simpleRegularExpression)(Q.parsedAddress));else if(Q.elidedGroups===O.GROUPS)J.push((0,J$.possibleElisions)(O.GROUPS));else{let Y=Q.address.split("::");if(Y[0].length)J.push((0,J$.simpleRegularExpression)(Y[0].split(":")));if(h$(typeof Q.elidedGroups==="number"),J.push((0,J$.possibleElisions)(Q.elidedGroups,Y[0].length!==0,Y[1].length!==0)),Y[1].length)J.push((0,J$.simpleRegularExpression)(Y[1].split(":")));J=[J.join(":")]}if(!$)J=["(?=^|",J$.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...J,")(?=[^\\w\\:]|",J$.ADDRESS_BOUNDARY,"|$)"];return J.join("")}regularExpression($=!1){return new RegExp(this.regularExpressionString($),"i")}}p.Address6=G;var j8=Object.keys(O.TYPES).map(($)=>[new G($),O.TYPES[$]]),pQ=new G("2001::/32"),nQ=new G("2002::/16"),dQ=new G("fc00::/7"),aQ=new G("fe80::/10"),oQ=[new G("2001:db8::/32"),new G("3fff::/20")],tQ=new G("2001:2::/48"),rQ=new G("2000::/3"),sQ=O.SPECIAL_PURPOSE.map(([$,,J])=>({subnet:new G($),reachable:J})),eQ=new G("::ffff:0:0/96"),$4=new G("64:ff9b::/96"),J4=new G("64:ff9b:1::/48")});var P8=U((S)=>{var Q4=S&&S.__createBinding||(Object.create?function($,J,Q,Y){if(Y===void 0)Y=Q;var Z=Object.getOwnPropertyDescriptor(J,Q);if(!Z||("get"in Z?!J.__esModule:Z.writable||Z.configurable))Z={enumerable:!0,get:function(){return J[Q]}};Object.defineProperty($,Y,Z)}:function($,J,Q,Y){if(Y===void 0)Y=Q;$[Y]=J[Q]}),Y4=S&&S.__setModuleDefault||(Object.create?function($,J){Object.defineProperty($,"default",{enumerable:!0,value:J})}:function($,J){$.default=J}),Z4=S&&S.__importStar||function($){if($&&$.__esModule)return $;var J={};if($!=null){for(var Q in $)if(Q!=="default"&&Object.prototype.hasOwnProperty.call($,Q))Q4(J,$,Q)}return Y4(J,$),J};Object.defineProperty(S,"__esModule",{value:!0});S.v6=S.AddressError=S.Address6=S.Address4=void 0;var X4=e$();Object.defineProperty(S,"Address4",{enumerable:!0,get:function(){return X4.Address4}});var K4=T8();Object.defineProperty(S,"Address6",{enumerable:!0,get:function(){return K4.Address6}});var z4=L$();Object.defineProperty(S,"AddressError",{enumerable:!0,get:function(){return z4.AddressError}});var V4=Z4(J0());S.v6={helpers:V4}});var _8=U((ZY,f8)=>{var{homedir:I8}=L("node:os"),{join:N$}=L("node:path");function D8(){if(process.env.LODESTAR_DATA_DIR)return process.env.LODESTAR_DATA_DIR;if(process.env.XDG_DATA_HOME)return N$(process.env.XDG_DATA_HOME,"lodestar");if(process.platform==="win32")return N$(process.env.LOCALAPPDATA??N$(I8(),"AppData","Local"),"Lodestar");return N$(I8(),".local","share","lodestar")}function E4(){return N$(D8(),"managed-claude-plugin")}f8.exports={lodestarDataDir:D8,managedClaudePluginDir:E4}});var b8=U((AY,k8)=>{k8.exports=h8;h8.sync=A4;var v8=L("fs");function y4($,J){var Q=J.pathExt!==void 0?J.pathExt:process.env.PATHEXT;if(!Q)return!0;if(Q=Q.split(";"),Q.indexOf("")!==-1)return!0;for(var Y=0;Y<Q.length;Y++){var Z=Q[Y].toLowerCase();if(Z&&$.substr(-Z.length).toLowerCase()===Z)return!0}return!1}function x8($,J,Q){if(!$.isSymbolicLink()&&!$.isFile())return!1;return y4(J,Q)}function h8($,J,Q){v8.stat($,function(Y,Z){Q(Y,Y?!1:x8(Z,$,J))})}function A4($,J){return x8(v8.statSync($),$,J)}});var m8=U((vY,l8)=>{l8.exports=u8;u8.sync=v4;var g8=L("fs");function u8($,J,Q){g8.stat($,function(Y,Z){Q(Y,Y?!1:c8(Z,J))})}function v4($,J){return c8(g8.statSync($),J)}function c8($,J){return $.isFile()&&x4($,J)}function x4($,J){var{mode:Q,uid:Y,gid:Z}=$,X=J.uid!==void 0?J.uid:process.getuid&&process.getuid(),K=J.gid!==void 0?J.gid:process.getgid&&process.getgid(),W=parseInt("100",8),q=parseInt("010",8),w=parseInt("001",8),z=W|q,V=Q&w||Q&q&&Z===K||Q&W&&Y===X||Q&z&&X===0;return V}});var p8=U((hY,i8)=>{var xY=L("fs"),l$;if(process.platform==="win32"||global.TESTING_WINDOWS)l$=b8();else l$=m8();i8.exports=X0;X0.sync=h4;function X0($,J,Q){if(typeof J==="function")Q=J,J={};if(!Q){if(typeof Promise!=="function")throw TypeError("callback not provided");return new Promise(function(Y,Z){X0($,J||{},function(X,K){if(X)Z(X);else Y(K)})})}l$($,J||{},function(Y,Z){if(Y){if(Y.code==="EACCES"||J&&J.ignoreErrors)Y=null,Z=!1}Q(Y,Z)})}function h4($,J){try{return l$.sync($,J||{})}catch(Q){if(J&&J.ignoreErrors||Q.code==="EACCES")return!1;else throw Q}}});var s8=U((kY,r8)=>{var G$=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",n8=L("path"),k4=G$?";":":",d8=p8(),a8=($)=>Object.assign(Error(`not found: ${$}`),{code:"ENOENT"}),o8=($,J)=>{let Q=J.colon||k4,Y=$.match(/\//)||G$&&$.match(/\\/)?[""]:[...G$?[process.cwd()]:[],...(J.path||process.env.PATH||"").split(Q)],Z=G$?J.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",X=G$?Z.split(Q):[""];if(G$){if($.indexOf(".")!==-1&&X[0]!=="")X.unshift("")}return{pathEnv:Y,pathExt:X,pathExtExe:Z}},t8=($,J,Q)=>{if(typeof J==="function")Q=J,J={};if(!J)J={};let{pathEnv:Y,pathExt:Z,pathExtExe:X}=o8($,J),K=[],W=(w)=>new Promise((z,V)=>{if(w===Y.length)return J.all&&K.length?z(K):V(a8($));let H=Y[w],F=/^".*"$/.test(H)?H.slice(1,-1):H,j=n8.join(F,$),M=!F&&/^\.[\\\/]/.test($)?$.slice(0,2)+j:j;z(q(M,w,0))}),q=(w,z,V)=>new Promise((H,F)=>{if(V===Z.length)return H(W(z+1));let j=Z[V];d8(w+j,{pathExt:X},(M,N)=>{if(!M&&N)if(J.all)K.push(w+j);else return H(w+j);return H(q(w,z,V+1))})});return Q?W(0).then((w)=>Q(null,w),Q):W(0)},b4=($,J)=>{J=J||{};let{pathEnv:Q,pathExt:Y,pathExtExe:Z}=o8($,J),X=[];for(let K=0;K<Q.length;K++){let W=Q[K],q=/^".*"$/.test(W)?W.slice(1,-1):W,w=n8.join(q,$),z=!q&&/^\.[\\\/]/.test($)?$.slice(0,2)+w:w;for(let V=0;V<Y.length;V++){let H=z+Y[V];try{if(d8.sync(H,{pathExt:Z}))if(J.all)X.push(H);else return H}catch(F){}}}if(J.all&&X.length)return X;if(J.nothrow)return null;throw a8($)};r8.exports=t8;t8.sync=b4});var $1=U((bY,K0)=>{var e8=($={})=>{let J=$.env||process.env;if(($.platform||process.platform)!=="win32")return"PATH";return Object.keys(J).reverse().find((Y)=>Y.toUpperCase()==="PATH")||"Path"};K0.exports=e8;K0.exports.default=e8});var Z1=U((gY,Y1)=>{var J1=L("path"),g4=s8(),u4=$1();function Q1($,J){let Q=$.options.env||process.env,Y=process.cwd(),Z=$.options.cwd!=null,X=Z&&process.chdir!==void 0&&!process.chdir.disabled;if(X)try{process.chdir($.options.cwd)}catch(W){}let K;try{K=g4.sync($.command,{path:Q[u4({env:Q})],pathExt:J?J1.delimiter:void 0})}catch(W){}finally{if(X)process.chdir(Y)}if(K)K=J1.resolve(Z?$.options.cwd:"",K);return K}function c4($){return Q1($)||Q1($,!0)}Y1.exports=c4});var X1=U((i4,V0)=>{var z0=/([()\][%!^"`<>&|;, *?])/g;function l4($){return $=$.replace(z0,"^$1"),$}function m4($,J){if($=`${$}`,$=$.replace(/(?=(\\+?)?)\1"/g,"$1$1\\\""),$=$.replace(/(?=(\\+?)?)\1$/,"$1$1"),$=`"${$}"`,$=$.replace(z0,"^$1"),J)$=$.replace(z0,"^$1");return $}i4.command=l4;i4.argument=m4});var z1=U((uY,K1)=>{K1.exports=/^#!(.*)/});var W1=U((cY,V1)=>{var d4=z1();V1.exports=($="")=>{let J=$.match(d4);if(!J)return null;let[Q,Y]=J[0].replace(/#! ?/,"").split(" "),Z=Q.split("/").pop();if(Z==="env")return Y;return Y?`${Z} ${Y}`:Z}});var G1=U((lY,H1)=>{var W0=L("fs"),a4=W1();function o4($){let Q=Buffer.alloc(150),Y;try{Y=W0.openSync($,"r"),W0.readSync(Y,Q,0,150,0),W0.closeSync(Y)}catch(Z){}return a4(Q.toString())}H1.exports=o4});var B1=U((mY,O1)=>{var t4=L("path"),F1=Z1(),U1=X1(),r4=G1(),s4=process.platform==="win32",e4=/\.(?:com|exe)$/i,$6=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function J6($){$.file=F1($);let J=$.file&&r4($.file);if(J)return $.args.unshift($.file),$.command=J,F1($);return $.file}function Q6($){if(!s4)return $;let J=J6($),Q=!e4.test(J);if($.options.forceShell||Q){let Y=$6.test(J);$.command=t4.normalize($.command),$.command=U1.command($.command),$.args=$.args.map((X)=>U1.argument(X,Y));let Z=[$.command].concat($.args).join(" ");$.args=["/d","/s","/c",`"${Z}"`],$.command=process.env.comspec||"cmd.exe",$.options.windowsVerbatimArguments=!0}return $}function Y6($,J,Q){if(J&&!Array.isArray(J))Q=J,J=null;J=J?J.slice(0):[],Q=Object.assign({},Q);let Y={command:$,args:J,options:Q,file:void 0,original:{command:$,args:J}};return Q.shell?Y:Q6(Y)}O1.exports=Y6});var w1=U((iY,q1)=>{var H0=process.platform==="win32";function G0($,J){return Object.assign(Error(`${J} ${$.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${J} ${$.command}`,path:$.command,spawnargs:$.args})}function Z6($,J){if(!H0)return;let Q=$.emit;$.emit=function(Y,Z){if(Y==="exit"){let X=M1(Z,J);if(X)return Q.call($,"error",X)}return Q.apply($,arguments)}}function M1($,J){if(H0&&$===1&&!J.file)return G0(J.original,"spawn");return null}function X6($,J){if(H0&&$===1&&!J.file)return G0(J.original,"spawnSync");return null}q1.exports={hookChildProcess:Z6,verifyENOENT:M1,verifyENOENTSync:X6,notFoundError:G0}});var C1=U((pY,F$)=>{var L1=L("child_process"),F0=B1(),U0=w1();function N1($,J,Q){let Y=F0($,J,Q),Z=L1.spawn(Y.command,Y.args,Y.options);return U0.hookChildProcess(Z,Y),Z}function K6($,J,Q){let Y=F0($,J,Q),Z=L1.spawnSync(Y.command,Y.args,Y.options);return Z.error=Z.error||U0.verifyENOENTSync(Z.status,Y),Z}F$.exports=N1;F$.exports.spawn=N1;F$.exports.sync=K6;F$.exports._parse=F0;F$.exports._enoent=U0});import{existsSync as O6,readFileSync as P1}from"node:fs";import{join as B6}from"node:path";import{fileURLToPath as M6}from"node:url";import{Agent as j4}from"node:http";import{Agent as T4}from"node:https";var P4=B$(x0(),1),R4=B$(X8(),1);var n=B$(P8(),1);import{execFile as W4}from"node:child_process";import{readFile as H4}from"node:fs/promises";import{homedir as G4}from"node:os";import{join as R8}from"node:path";import{promisify as F4}from"node:util";var U4=F4(W4);function H$($,J){return $[J.toLowerCase()]?.trim()||$[J]?.trim()||void 0}function Z0($){let J=$.hostname.replace(/^\[|\]$/g,"").toLowerCase();return J==="localhost"||J.endsWith(".localhost")||J==="::1"||/^127\.(?:\d{1,3}\.){2}\d{1,3}$/.test(J)||/^::ffff:(?:127\.|7f[0-9a-f]{2}:)/.test(J)}function Y0($,J=""){let Q=$.hostname.replace(/^\[|\]$/g,"").toLowerCase(),Y=$.port||($.protocol==="https:"?"443":"80");return J.split(/[,;\s]+/).filter(Boolean).some((Z)=>{let X=Z.toLowerCase();if(X==="*")return!0;if(X==="<local>")return!Q.includes(".")&&!Q.includes(":");if(X.includes("/")){if(n.Address4.isValid(X))return n.Address4.isValid(Q)&&new n.Address4(Q).isInSubnet(new n.Address4(X));if(n.Address6.isValid(X))return n.Address6.isValid(Q)&&new n.Address6(Q).isInSubnet(new n.Address6(X));throw Error("network proxy: invalid IP range in bypass list")}let K=X.match(/^(\[[^\]]+\]|[^:]+):(\d+)$/);if(K&&K[2]!==Y)return!1;let W=(K?K[1]:X).replace(/^\[|\]$/g,"").replace(/^\*?\./,"");return Q===W||Q.endsWith(`.${W}`)})}function E8($,J){let Q;try{Q=new URL($)}catch{throw Error(`network proxy: ${J} contains an invalid proxy URL`)}if(!["http:","https:"].includes(Q.protocol))throw Error(`network proxy: ${J} must use an HTTP(S) proxy; SOCKS and PAC are not supported`);if(!Q.hostname||Q.search||Q.hash||Q.pathname&&Q.pathname!=="/")throw Error(`network proxy: ${J} must contain a proxy host and port without a path or query`);return Q.href}function S8($,J,Q={}){if(!["http:","https:"].includes($.protocol))throw Error(`network: unsupported URL protocol ${$.protocol}`);if(Z0($)||Y0($,H$(J,"NO_PROXY")))return;let Y=$.protocol==="https:"?"HTTPS_PROXY":"HTTP_PROXY",Z=H$(J,Y)||H$(J,"ALL_PROXY");if(Z)return E8(Z,"environment");if(Q.unsupported)throw Error(`network proxy: ${Q.unsupported}`);if(Y0($,Q.bypass))return;let X=($.protocol==="https:"?Q.https:Q.http)||Q.all;return X?E8(X,"system settings"):void 0}function u$($,J,Q="http"){if(typeof $!=="string"||!$.trim()||!Number.isInteger(Number(J))||Number(J)<1||Number(J)>65535)throw Error("network proxy: system proxy has an invalid host or port");let Y=$.includes(":")&&!$.startsWith("[")?`[${$}]`:$;return`${Q}://${Y}:${J}`}function O4($){if($.AutoConfigURL)return{unsupported:"Windows PAC proxy is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};if(!$.ProxyEnable)return $.AutoDetect?{unsupported:"Windows automatic proxy discovery is not supported; configure a manual HTTP(S) proxy or proxy environment variables"}:{};if(typeof $.ProxyServer!=="string"||!$.ProxyServer.trim())throw Error("network proxy: Windows proxy is enabled without a server");let J={bypass:String($.ProxyOverride??"")};for(let Q of $.ProxyServer.split(";").map((Y)=>Y.trim()).filter(Boolean)){let Y=Q.match(/^(http|https|socks)=(.+)$/i),Z=Y?Y[2]:Q,X=/^[a-z][\w+.-]*:\/\//i.test(Z)?Z:`http://${Z}`;if(!Y)J.all=X;else if(Y[1].toLowerCase()==="socks")J.all=`socks://${Z.replace(/^socks\w*:\/\//,"")}`;else J[Y[1].toLowerCase()]=X}return J}function B4($){let J=(Z)=>$.match(new RegExp(`^\\s*${Z}\\s*:\\s*(.*?)\\s*$`,"m"))?.[1];if(J("ProxyAutoConfigEnable")==="1"||J("ProxyAutoDiscoveryEnable")==="1")return{unsupported:"macOS PAC/automatic proxy discovery is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};let Q={};if(J("HTTPEnable")==="1")Q.http=u$(J("HTTPProxy"),J("HTTPPort"));if(J("HTTPSEnable")==="1")Q.https=u$(J("HTTPSProxy"),J("HTTPSPort"));if(J("SOCKSEnable")==="1")Q.all=u$(J("SOCKSProxy"),J("SOCKSPort"),"socks");let Y=$.match(/ExceptionsList\s*:\s*<array>\s*\{([^}]*)\}/)?.[1]??"";if(Q.bypass=[...Y.matchAll(/^\s*\d+\s*:\s*(.*?)\s*$/gm)].map((Z)=>Z[1]).join(","),J("ExcludeSimpleHostnames")==="1")Q.bypass+=",<local>";return Q}function b$($){if($===void 0)return"";if(!/^(['"]).*\1$/.test($))throw Error("network proxy: invalid GNOME proxy string");return $.slice(1,-1).replace(/\\([\\'"])/g,"$1")}function M4($){let J=new Map($.split(`
21
21
  `).filter(Boolean).map((Z)=>{let X=Z.match(/^org\.gnome\.system\.proxy(\.\w+)?\s+([\w-]+)\s+(.*)$/);if(!X)throw Error("network proxy: invalid GNOME proxy settings");return[`${X[1]??""}/${X[2]}`,X[3]]})),Q=b$(J.get("/mode"));if(Q==="none")return{};if(Q==="auto")return{unsupported:"GNOME PAC proxy is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};if(Q!=="manual")throw Error("network proxy: unknown GNOME proxy mode");let Y={};for(let Z of["http","https","socks"]){let X=b$(J.get(`.${Z}/host`));if(!X)continue;let K=new URL(u$(X,J.get(`.${Z}/port`),Z==="socks"?"socks":"http"));if(Z==="http"&&J.get(".http/use-authentication")==="true")K.username=b$(J.get(".http/authentication-user")),K.password=b$(J.get(".http/authentication-password"));Y[Z==="socks"?"all":Z]=K.href}if(J.get("/use-same-proxy")==="true"&&Y.http)Y.https=Y.http;return Y.bypass=[...(J.get("/ignore-hosts")??"").matchAll(/'((?:\\.|[^'])*)'/g)].map((Z)=>Z[1]).join(","),Y}function q4($){let J=$.match(/^\[Proxy Settings\]\s*\n([\s\S]*?)(?=^\[|$(?![\s\S]))/m)?.[1];if(J===void 0)return;let Q=new Map(J.split(`
22
22
  `).filter((X)=>X.includes("=")).map((X)=>{let K=X.indexOf("=");return[X.slice(0,K).trim(),X.slice(K+1).trim()]})),Y=Q.get("ProxyType")??"0";if(Y==="0"||Y==="4")return{};if(Y!=="1")return{unsupported:"KDE PAC/automatic proxy discovery is not supported; configure a manual HTTP(S) proxy or proxy environment variables"};if(Q.get("ReversedException")==="true")return{unsupported:"KDE reversed proxy exceptions are not supported"};let Z={bypass:Q.get("NoProxyFor")};for(let X of["http","https","socks"]){let K=Q.get(`${X}Proxy`);if(!K)continue;let W=K.replace(/\s+(\d+)$/,":$1");Z[X==="socks"?"all":X]=/^[a-z][\w+.-]*:\/\//i.test(W)?W:`${X==="socks"?"socks":"http"}://${W}`}return Z}async function g$($,J,Q=5000){let{stdout:Y}=await U4($,J,{encoding:"utf8",timeout:Q,maxBuffer:262144,windowsHide:!0});return Y}var w4=String.raw`
23
23
  $ErrorActionPreference = 'Stop'
@@ -57,4 +57,4 @@ try {
57
57
  if ($pointer -ne [IntPtr]::Zero) { [void][LodestarProxy]::GlobalFree($pointer) }
58
58
  }
59
59
  }
60
- `;async function L4(){if(process.platform==="win32")return O4(JSON.parse(await g$("powershell.exe",["-NoProfile","-NonInteractive","-Command",w4],15000)));if(process.platform==="darwin")return B4(await g$("/usr/sbin/scutil",["--proxy"]));if(process.platform==="linux"){let $=R8(process.env.XDG_CONFIG_HOME||R8(G4(),".config"),"kioslaverc");try{let Q=q4(await H4($,"utf8"));if(Q&&(!process.env.XDG_CURRENT_DESKTOP||/kde/i.test(process.env.XDG_CURRENT_DESKTOP)))return Q}catch(Q){if(Q?.code!=="ENOENT")throw Q}let J;try{J=await g$("gsettings",["list-schemas"])}catch(Q){if(Q?.code==="ENOENT")return{};throw Q}if(!J.split(/\r?\n/).includes("org.gnome.system.proxy"))return{};return M4(await g$("gsettings",["list-recursively","org.gnome.system.proxy"]))}return{}}function N4($=L4,J=process.env,Q=Date.now){let Y;return async(Z)=>{if(Z0(Z)||Y0(Z,H$(J,"NO_PROXY"))||H$(J,Z.protocol==="https:"?"HTTPS_PROXY":"HTTP_PROXY")||H$(J,"ALL_PROXY"))return S8(Z,J);if(!Y||Y.until<=Q()){let X=$().catch((K)=>{if(Y?.value===X)Y=void 0;if(K instanceof Error&&K.message.startsWith("network proxy:"))throw K;let W=K instanceof Error?K.code??K.name:"unknown error";throw Error(`network proxy: failed to read ${process.platform} system proxy settings (${W})`,{cause:K})});Y={until:Q()+30000,value:X}}return S8(Z,J,await Y.value)}}var C4=N4();var JY=new j4({keepAlive:!0}),QY=new T4({keepAlive:!0});import{existsSync as W6,readFileSync as H6}from"node:fs";import{join as G6,isAbsolute as F6}from"node:path";var c$=B$(_8(),1);import{homedir as S4}from"node:os";import{join as C}from"node:path";var y8=S4(),I4=process.platform==="win32";function D4($,J,Q){if($)return $;if(J)return C(J,"lodestar");return Q}function f4(){if(I4)return C(process.env.APPDATA??C(y8,"AppData","Roaming"),"Lodestar");return C(y8,".config","lodestar")}var _4=D4(process.env.LODESTAR_CONFIG_DIR,process.env.XDG_CONFIG_HOME,f4()),T=c$.lodestarDataDir(),zY=process.env.LODESTAR_CONFIG??C(_4,"config.toml"),VY=C(T,"daemon.pid"),WY=C(T,"daemon.log"),HY=C(T,"session-chat-map.json"),GY=C(T,"session-resume-map.json"),FY=C(T,"session-turns-map.json"),UY=C(T,"session-model-map.json"),OY=C(T,"temp-session-leases.json"),BY=C(T,"tasklist-map.json"),MY=C(T,"agent-runs"),qY=C(T,"agent-session-ids.json"),wY=c$.managedClaudePluginDir(),LY=C(T,"dsh"),NY=C(T,"codex-accounts"),CY=C(T,"codex-accounts.json"),jY=C(T,"codex-quota-blocks.json"),A8=C(T,"agent-runtimes"),TY=C(T,"context-window-cache.json"),PY=C(T,"notify-callbacks.json"),RY=C(T,"alive-on-shutdown.json"),EY=C(T,"inbox"),SY=C(T,"file-deliveries"),IY=C(T,"file-delivery-groups.json"),DY=C(T,"debug.sock"),fY=C(T,"debug-context.json");var z6=B$(C1(),1);var j1=["codex","claude","dsh"];function U6($,J=A8){let Q=G6(J,$,"current.json");if(!W6(Q))return null;let Y=JSON.parse(H6(Q,"utf8"));if(!Number.isFinite(Y.checkedAt)||Y.directory!==void 0&&!F6(Y.directory))throw Error(`Invalid ${$} runtime state: ${Q}`);return Y}function T1($){return U6($)}var q6=JSON.parse(P1(M6(new URL("../package.json",import.meta.url)),"utf8"));console.log(`Lodestar v${q6.version}`);for(let $ of j1)try{let J=T1($);if(!J?.directory){console.log(`${$}: MISS(尚未安装)`);continue}if(!O6(J.directory))throw Error(`安装目录不存在: ${J.directory}`);let Q=$==="dsh"?["@deepseek-ai/dsh"]:Object.keys(J.versions??{});if(!Q.length)throw Error("安装记录缺少包版本");for(let Y of Q){let Z=JSON.parse(P1(B6(J.directory,"node_modules",Y,"package.json"),"utf8"));if(Z.name!==Y||typeof Z.version!=="string"||Z.version!==J.versions?.[Y])throw Error(`安装包与记录不一致: ${Y},记录 ${J.versions?.[Y]??"MISS"},实际 ${Z.name}@${Z.version}`)}console.log(`${$}: ${Q.map((Y)=>`${Y}@${J.versions?.[Y]??"MISS"}`).join(", ")}`),console.log(` ${J.directory}`)}catch(J){console.error(`${$}: MISS(${J})`),process.exitCode=1}console.log(`Runtime: ${process.version} (${process.platform}-${process.arch})`);
60
+ `;async function L4(){if(process.platform==="win32")return O4(JSON.parse(await g$("powershell.exe",["-NoProfile","-NonInteractive","-Command",w4],15000)));if(process.platform==="darwin")return B4(await g$("/usr/sbin/scutil",["--proxy"]));if(process.platform==="linux"){let $=R8(process.env.XDG_CONFIG_HOME||R8(G4(),".config"),"kioslaverc");try{let Q=q4(await H4($,"utf8"));if(Q&&(!process.env.XDG_CURRENT_DESKTOP||/kde/i.test(process.env.XDG_CURRENT_DESKTOP)))return Q}catch(Q){if(Q?.code!=="ENOENT")throw Q}let J;try{J=await g$("gsettings",["list-schemas"])}catch(Q){if(Q?.code==="ENOENT")return{};throw Q}if(!J.split(/\r?\n/).includes("org.gnome.system.proxy"))return{};return M4(await g$("gsettings",["list-recursively","org.gnome.system.proxy"]))}return{}}function N4($=L4,J=process.env,Q=Date.now){let Y;return async(Z)=>{if(Z0(Z)||Y0(Z,H$(J,"NO_PROXY"))||H$(J,Z.protocol==="https:"?"HTTPS_PROXY":"HTTP_PROXY")||H$(J,"ALL_PROXY"))return S8(Z,J);if(!Y||Y.until<=Q()){let X=$().catch((K)=>{if(Y?.value===X)Y=void 0;if(K instanceof Error&&K.message.startsWith("network proxy:"))throw K;let W=K instanceof Error?K.code??K.name:"unknown error";throw Error(`network proxy: failed to read ${process.platform} system proxy settings (${W})`,{cause:K})});Y={until:Q()+30000,value:X}}return S8(Z,J,await Y.value)}}var C4=N4();var JY=new j4({keepAlive:!0}),QY=new T4({keepAlive:!0});import{existsSync as W6,readFileSync as H6}from"node:fs";import{join as G6,isAbsolute as F6}from"node:path";var c$=B$(_8(),1);import{homedir as S4}from"node:os";import{join as C}from"node:path";var y8=S4(),I4=process.platform==="win32";function D4($,J,Q){if($)return $;if(J)return C(J,"lodestar");return Q}function f4(){if(I4)return C(process.env.APPDATA??C(y8,"AppData","Roaming"),"Lodestar");return C(y8,".config","lodestar")}var _4=D4(process.env.LODESTAR_CONFIG_DIR,process.env.XDG_CONFIG_HOME,f4()),T=c$.lodestarDataDir(),zY=process.env.LODESTAR_CONFIG??C(_4,"config.toml"),VY=C(T,"daemon.pid"),WY=C(T,"daemon.log"),HY=C(T,"session-chat-map.json"),GY=C(T,"session-resume-map.json"),FY=C(T,"session-turns-map.json"),UY=C(T,"session-model-map.json"),OY=C(T,"temp-session-leases.json"),BY=C(T,"tasklist-map.json"),MY=C(T,"agent-runs"),qY=C(T,"agent-project-client.json"),wY=C(T,"agent-session-ids.json"),LY=c$.managedClaudePluginDir(),NY=C(T,"dsh"),CY=C(T,"codex-accounts"),jY=C(T,"codex-accounts.json"),TY=C(T,"codex-quota-blocks.json"),A8=C(T,"agent-runtimes"),PY=C(T,"context-window-cache.json"),RY=C(T,"notify-callbacks.json"),EY=C(T,"alive-on-shutdown.json"),SY=C(T,"inbox"),IY=C(T,"file-deliveries"),DY=C(T,"file-delivery-groups.json"),fY=C(T,"debug.sock"),_Y=C(T,"debug-context.json");var z6=B$(C1(),1);var j1=["codex","claude","dsh"];function U6($,J=A8){let Q=G6(J,$,"current.json");if(!W6(Q))return null;let Y=JSON.parse(H6(Q,"utf8"));if(!Number.isFinite(Y.checkedAt)||Y.directory!==void 0&&!F6(Y.directory))throw Error(`Invalid ${$} runtime state: ${Q}`);return Y}function T1($){return U6($)}var q6=JSON.parse(P1(M6(new URL("../package.json",import.meta.url)),"utf8"));console.log(`Lodestar v${q6.version}`);for(let $ of j1)try{let J=T1($);if(!J?.directory){console.log(`${$}: MISS(尚未安装)`);continue}if(!O6(J.directory))throw Error(`安装目录不存在: ${J.directory}`);let Q=$==="dsh"?["@deepseek-ai/dsh"]:Object.keys(J.versions??{});if(!Q.length)throw Error("安装记录缺少包版本");for(let Y of Q){let Z=JSON.parse(P1(B6(J.directory,"node_modules",Y,"package.json"),"utf8"));if(Z.name!==Y||typeof Z.version!=="string"||Z.version!==J.versions?.[Y])throw Error(`安装包与记录不一致: ${Y},记录 ${J.versions?.[Y]??"MISS"},实际 ${Z.name}@${Z.version}`)}console.log(`${$}: ${Q.map((Y)=>`${Y}@${J.versions?.[Y]??"MISS"}`).join(", ")}`),console.log(` ${J.directory}`)}catch(J){console.error(`${$}: MISS(${J})`),process.exitCode=1}console.log(`Runtime: ${process.version} (${process.platform}-${process.arch})`);