@ebowwa/mcp-npm-publish 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ebowwa/mcp-npm-publish",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "MCP server for NPM package publishing and version management",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -14,7 +14,7 @@
14
14
  "start": "node dist/index.js"
15
15
  },
16
16
  "dependencies": {
17
- "@ebowwa/large-output": "^1.1.0",
17
+ "@ebowwa/large-output": "^1.3.1",
18
18
  "@ebowwa/npm-publishing": "^1.0.4",
19
19
  "@modelcontextprotocol/sdk": "^1.0.0"
20
20
  },
package/bun.lock DELETED
@@ -1,243 +0,0 @@
1
- {
2
- "lockfileVersion": 1,
3
- "configVersion": 0,
4
- "workspaces": {
5
- "": {
6
- "name": "@ebowwa/npm-publish-mcp",
7
- "dependencies": {
8
- "@ebowwa/large-output": "^1.1.0",
9
- "@ebowwa/npm-publishing": "^1.0.4",
10
- "@modelcontextprotocol/sdk": "^1.0.0",
11
- },
12
- "devDependencies": {
13
- "@types/bun": "latest",
14
- "@types/node": "^20.0.0",
15
- "tsx": "^4.19.2",
16
- "typescript": "^5.0.0",
17
- },
18
- },
19
- },
20
- "packages": {
21
- "@ebowwa/large-output": ["@ebowwa/large-output@1.1.0", "", {}, "sha512-mXVJ13PtsFZ9XlrQP2hEM2NtbRAk+sp8nrPUC8Jkamwafr0wGuZpwGa+/aYnZnb25UfXZIKOulCL9eao/4ZpxA=="],
22
-
23
- "@ebowwa/npm-publishing": ["@ebowwa/npm-publishing@1.0.4", "", { "dependencies": { "semver": "^7.6.0", "tar": "^7.4.0" } }, "sha512-58Lz3ChA31B4kyTvxHrvRBGd1Ag0PXzUY/gCeR12ieaFcwjOkNoQeilOnHAXGjGuBkgGG9nNeZuFdIHeCFnkIA=="],
24
-
25
- "@esbuild/darwin-arm64": ["@esbuild/darwin-arm64@0.27.3", "", { "os": "darwin", "cpu": "arm64" }, ""],
26
-
27
- "@hono/node-server": ["@hono/node-server@1.19.9", "", { "peerDependencies": { "hono": "^4" } }, ""],
28
-
29
- "@isaacs/fs-minipass": ["@isaacs/fs-minipass@4.0.1", "", { "dependencies": { "minipass": "^7.0.4" } }, "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="],
30
-
31
- "@modelcontextprotocol/sdk": ["@modelcontextprotocol/sdk@1.26.0", "", { "dependencies": { "@hono/node-server": "^1.19.9", "ajv": "^8.17.1", "ajv-formats": "^3.0.1", "content-type": "^1.0.5", "cors": "^2.8.5", "cross-spawn": "^7.0.5", "eventsource": "^3.0.2", "eventsource-parser": "^3.0.0", "express": "^5.2.1", "express-rate-limit": "^8.2.1", "hono": "^4.11.4", "jose": "^6.1.3", "json-schema-typed": "^8.0.2", "pkce-challenge": "^5.0.0", "raw-body": "^3.0.0", "zod": "^3.25 || ^4.0", "zod-to-json-schema": "^3.25.1" }, "peerDependencies": { "@cfworker/json-schema": "^4.1.1", "zod": "^3.25 || ^4.0" }, "optionalPeers": ["@cfworker/json-schema"] }, ""],
32
-
33
- "@types/bun": ["@types/bun@1.3.9", "", { "dependencies": { "bun-types": "1.3.9" } }, "sha512-KQ571yULOdWJiMH+RIWIOZ7B2RXQGpL1YQrBtLIV3FqDcCu6FsbFUBwhdKUlCKUpS3PJDsHlJ1QKlpxoVR+xtw=="],
34
-
35
- "@types/node": ["@types/node@20.19.32", "", { "dependencies": { "undici-types": "~6.21.0" } }, ""],
36
-
37
- "accepts": ["accepts@2.0.0", "", { "dependencies": { "mime-types": "^3.0.0", "negotiator": "^1.0.0" } }, ""],
38
-
39
- "ajv": ["ajv@8.17.1", "", { "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2" } }, ""],
40
-
41
- "ajv-formats": ["ajv-formats@3.0.1", "", { "dependencies": { "ajv": "^8.0.0" }, "peerDependencies": { "ajv": "^8.0.0" } }, ""],
42
-
43
- "body-parser": ["body-parser@2.2.2", "", { "dependencies": { "bytes": "^3.1.2", "content-type": "^1.0.5", "debug": "^4.4.3", "http-errors": "^2.0.0", "iconv-lite": "^0.7.0", "on-finished": "^2.4.1", "qs": "^6.14.1", "raw-body": "^3.0.1", "type-is": "^2.0.1" } }, ""],
44
-
45
- "bun-types": ["bun-types@1.3.9", "", { "dependencies": { "@types/node": "*" } }, "sha512-+UBWWOakIP4Tswh0Bt0QD0alpTY8cb5hvgiYeWCMet9YukHbzuruIEeXC2D7nMJPB12kbh8C7XJykSexEqGKJg=="],
46
-
47
- "bytes": ["bytes@3.1.2", "", {}, ""],
48
-
49
- "call-bind-apply-helpers": ["call-bind-apply-helpers@1.0.2", "", { "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" } }, ""],
50
-
51
- "call-bound": ["call-bound@1.0.4", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "get-intrinsic": "^1.3.0" } }, ""],
52
-
53
- "chownr": ["chownr@3.0.0", "", {}, "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="],
54
-
55
- "content-disposition": ["content-disposition@1.0.1", "", {}, ""],
56
-
57
- "content-type": ["content-type@1.0.5", "", {}, ""],
58
-
59
- "cookie": ["cookie@0.7.2", "", {}, ""],
60
-
61
- "cookie-signature": ["cookie-signature@1.2.2", "", {}, ""],
62
-
63
- "cors": ["cors@2.8.6", "", { "dependencies": { "object-assign": "^4", "vary": "^1" } }, ""],
64
-
65
- "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, ""],
66
-
67
- "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, ""],
68
-
69
- "depd": ["depd@2.0.0", "", {}, ""],
70
-
71
- "dunder-proto": ["dunder-proto@1.0.1", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", "gopd": "^1.2.0" } }, ""],
72
-
73
- "ee-first": ["ee-first@1.1.1", "", {}, ""],
74
-
75
- "encodeurl": ["encodeurl@2.0.0", "", {}, ""],
76
-
77
- "es-define-property": ["es-define-property@1.0.1", "", {}, ""],
78
-
79
- "es-errors": ["es-errors@1.3.0", "", {}, ""],
80
-
81
- "es-object-atoms": ["es-object-atoms@1.1.1", "", { "dependencies": { "es-errors": "^1.3.0" } }, ""],
82
-
83
- "esbuild": ["esbuild@0.27.3", "", { "optionalDependencies": { "@esbuild/darwin-arm64": "0.27.3" }, "bin": "bin/esbuild" }, ""],
84
-
85
- "escape-html": ["escape-html@1.0.3", "", {}, ""],
86
-
87
- "etag": ["etag@1.8.1", "", {}, ""],
88
-
89
- "eventsource": ["eventsource@3.0.7", "", { "dependencies": { "eventsource-parser": "^3.0.1" } }, ""],
90
-
91
- "eventsource-parser": ["eventsource-parser@3.0.6", "", {}, ""],
92
-
93
- "express": ["express@5.2.1", "", { "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.2.1", "content-disposition": "^1.0.0", "content-type": "^1.0.5", "cookie": "^0.7.1", "cookie-signature": "^1.2.1", "debug": "^4.4.0", "depd": "^2.0.0", "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "etag": "^1.8.1", "finalhandler": "^2.1.0", "fresh": "^2.0.0", "http-errors": "^2.0.0", "merge-descriptors": "^2.0.0", "mime-types": "^3.0.0", "on-finished": "^2.4.1", "once": "^1.4.0", "parseurl": "^1.3.3", "proxy-addr": "^2.0.7", "qs": "^6.14.0", "range-parser": "^1.2.1", "router": "^2.2.0", "send": "^1.1.0", "serve-static": "^2.2.0", "statuses": "^2.0.1", "type-is": "^2.0.1", "vary": "^1.1.2" } }, ""],
94
-
95
- "express-rate-limit": ["express-rate-limit@8.2.1", "", { "dependencies": { "ip-address": "10.0.1" }, "peerDependencies": { "express": ">= 4.11" } }, ""],
96
-
97
- "fast-deep-equal": ["fast-deep-equal@3.1.3", "", {}, ""],
98
-
99
- "fast-uri": ["fast-uri@3.1.0", "", {}, ""],
100
-
101
- "finalhandler": ["finalhandler@2.1.1", "", { "dependencies": { "debug": "^4.4.0", "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "on-finished": "^2.4.1", "parseurl": "^1.3.3", "statuses": "^2.0.1" } }, ""],
102
-
103
- "forwarded": ["forwarded@0.2.0", "", {}, ""],
104
-
105
- "fresh": ["fresh@2.0.0", "", {}, ""],
106
-
107
- "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, ""],
108
-
109
- "function-bind": ["function-bind@1.1.2", "", {}, ""],
110
-
111
- "get-intrinsic": ["get-intrinsic@1.3.0", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-symbols": "^1.1.0", "hasown": "^2.0.2", "math-intrinsics": "^1.1.0" } }, ""],
112
-
113
- "get-proto": ["get-proto@1.0.1", "", { "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" } }, ""],
114
-
115
- "get-tsconfig": ["get-tsconfig@4.13.5", "", { "dependencies": { "resolve-pkg-maps": "^1.0.0" } }, ""],
116
-
117
- "gopd": ["gopd@1.2.0", "", {}, ""],
118
-
119
- "has-symbols": ["has-symbols@1.1.0", "", {}, ""],
120
-
121
- "hasown": ["hasown@2.0.2", "", { "dependencies": { "function-bind": "^1.1.2" } }, ""],
122
-
123
- "hono": ["hono@4.11.8", "", {}, ""],
124
-
125
- "http-errors": ["http-errors@2.0.1", "", { "dependencies": { "depd": "~2.0.0", "inherits": "~2.0.4", "setprototypeof": "~1.2.0", "statuses": "~2.0.2", "toidentifier": "~1.0.1" } }, ""],
126
-
127
- "iconv-lite": ["iconv-lite@0.7.2", "", { "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" } }, ""],
128
-
129
- "inherits": ["inherits@2.0.4", "", {}, ""],
130
-
131
- "ip-address": ["ip-address@10.0.1", "", {}, ""],
132
-
133
- "ipaddr.js": ["ipaddr.js@1.9.1", "", {}, ""],
134
-
135
- "is-promise": ["is-promise@4.0.0", "", {}, ""],
136
-
137
- "isexe": ["isexe@2.0.0", "", {}, ""],
138
-
139
- "jose": ["jose@6.1.3", "", {}, ""],
140
-
141
- "json-schema-traverse": ["json-schema-traverse@1.0.0", "", {}, ""],
142
-
143
- "json-schema-typed": ["json-schema-typed@8.0.2", "", {}, ""],
144
-
145
- "math-intrinsics": ["math-intrinsics@1.1.0", "", {}, ""],
146
-
147
- "media-typer": ["media-typer@1.1.0", "", {}, ""],
148
-
149
- "merge-descriptors": ["merge-descriptors@2.0.0", "", {}, ""],
150
-
151
- "mime-db": ["mime-db@1.54.0", "", {}, ""],
152
-
153
- "mime-types": ["mime-types@3.0.2", "", { "dependencies": { "mime-db": "^1.54.0" } }, ""],
154
-
155
- "minipass": ["minipass@7.1.3", "", {}, "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A=="],
156
-
157
- "minizlib": ["minizlib@3.1.0", "", { "dependencies": { "minipass": "^7.1.2" } }, "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw=="],
158
-
159
- "ms": ["ms@2.1.3", "", {}, ""],
160
-
161
- "negotiator": ["negotiator@1.0.0", "", {}, ""],
162
-
163
- "object-assign": ["object-assign@4.1.1", "", {}, ""],
164
-
165
- "object-inspect": ["object-inspect@1.13.4", "", {}, ""],
166
-
167
- "on-finished": ["on-finished@2.4.1", "", { "dependencies": { "ee-first": "1.1.1" } }, ""],
168
-
169
- "once": ["once@1.4.0", "", { "dependencies": { "wrappy": "1" } }, ""],
170
-
171
- "parseurl": ["parseurl@1.3.3", "", {}, ""],
172
-
173
- "path-key": ["path-key@3.1.1", "", {}, ""],
174
-
175
- "path-to-regexp": ["path-to-regexp@8.3.0", "", {}, ""],
176
-
177
- "pkce-challenge": ["pkce-challenge@5.0.1", "", {}, ""],
178
-
179
- "proxy-addr": ["proxy-addr@2.0.7", "", { "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" } }, ""],
180
-
181
- "qs": ["qs@6.14.1", "", { "dependencies": { "side-channel": "^1.1.0" } }, ""],
182
-
183
- "range-parser": ["range-parser@1.2.1", "", {}, ""],
184
-
185
- "raw-body": ["raw-body@3.0.2", "", { "dependencies": { "bytes": "~3.1.2", "http-errors": "~2.0.1", "iconv-lite": "~0.7.0", "unpipe": "~1.0.0" } }, ""],
186
-
187
- "require-from-string": ["require-from-string@2.0.2", "", {}, ""],
188
-
189
- "resolve-pkg-maps": ["resolve-pkg-maps@1.0.0", "", {}, ""],
190
-
191
- "router": ["router@2.2.0", "", { "dependencies": { "debug": "^4.4.0", "depd": "^2.0.0", "is-promise": "^4.0.0", "parseurl": "^1.3.3", "path-to-regexp": "^8.0.0" } }, ""],
192
-
193
- "safer-buffer": ["safer-buffer@2.1.2", "", {}, ""],
194
-
195
- "semver": ["semver@7.7.4", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA=="],
196
-
197
- "send": ["send@1.2.1", "", { "dependencies": { "debug": "^4.4.3", "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "etag": "^1.8.1", "fresh": "^2.0.0", "http-errors": "^2.0.1", "mime-types": "^3.0.2", "ms": "^2.1.3", "on-finished": "^2.4.1", "range-parser": "^1.2.1", "statuses": "^2.0.2" } }, ""],
198
-
199
- "serve-static": ["serve-static@2.2.1", "", { "dependencies": { "encodeurl": "^2.0.0", "escape-html": "^1.0.3", "parseurl": "^1.3.3", "send": "^1.2.0" } }, ""],
200
-
201
- "setprototypeof": ["setprototypeof@1.2.0", "", {}, ""],
202
-
203
- "shebang-command": ["shebang-command@2.0.0", "", { "dependencies": { "shebang-regex": "^3.0.0" } }, ""],
204
-
205
- "shebang-regex": ["shebang-regex@3.0.0", "", {}, ""],
206
-
207
- "side-channel": ["side-channel@1.1.0", "", { "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3", "side-channel-list": "^1.0.0", "side-channel-map": "^1.0.1", "side-channel-weakmap": "^1.0.2" } }, ""],
208
-
209
- "side-channel-list": ["side-channel-list@1.0.0", "", { "dependencies": { "es-errors": "^1.3.0", "object-inspect": "^1.13.3" } }, ""],
210
-
211
- "side-channel-map": ["side-channel-map@1.0.1", "", { "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", "get-intrinsic": "^1.2.5", "object-inspect": "^1.13.3" } }, ""],
212
-
213
- "side-channel-weakmap": ["side-channel-weakmap@1.0.2", "", { "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", "get-intrinsic": "^1.2.5", "object-inspect": "^1.13.3", "side-channel-map": "^1.0.1" } }, ""],
214
-
215
- "statuses": ["statuses@2.0.2", "", {}, ""],
216
-
217
- "tar": ["tar@7.5.9", "", { "dependencies": { "@isaacs/fs-minipass": "^4.0.0", "chownr": "^3.0.0", "minipass": "^7.1.2", "minizlib": "^3.1.0", "yallist": "^5.0.0" } }, "sha512-BTLcK0xsDh2+PUe9F6c2TlRp4zOOBMTkoQHQIWSIzI0R7KG46uEwq4OPk2W7bZcprBMsuaeFsqwYr7pjh6CuHg=="],
218
-
219
- "toidentifier": ["toidentifier@1.0.1", "", {}, ""],
220
-
221
- "tsx": ["tsx@4.21.0", "", { "dependencies": { "esbuild": "~0.27.0", "get-tsconfig": "^4.7.5" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "bin": "dist/cli.mjs" }, ""],
222
-
223
- "type-is": ["type-is@2.0.1", "", { "dependencies": { "content-type": "^1.0.5", "media-typer": "^1.1.0", "mime-types": "^3.0.0" } }, ""],
224
-
225
- "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, ""],
226
-
227
- "undici-types": ["undici-types@6.21.0", "", {}, ""],
228
-
229
- "unpipe": ["unpipe@1.0.0", "", {}, ""],
230
-
231
- "vary": ["vary@1.1.2", "", {}, ""],
232
-
233
- "which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "bin/node-which" } }, ""],
234
-
235
- "wrappy": ["wrappy@1.0.2", "", {}, ""],
236
-
237
- "yallist": ["yallist@5.0.0", "", {}, "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="],
238
-
239
- "zod": ["zod@4.3.6", "", {}, ""],
240
-
241
- "zod-to-json-schema": ["zod-to-json-schema@3.25.1", "", { "peerDependencies": { "zod": "^3.25 || ^4" } }, ""],
242
- }
243
- }
package/dist/index.d.ts DELETED
@@ -1,9 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * NPM Publish MCP Server
4
- *
5
- * Provides tools for NPM package publishing, version management,
6
- * validation, search, and dist-tag operations.
7
- */
8
- export {};
9
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAE5C,iCAAiC;AACjC,OAAO,EACL,OAAO,EACP,WAAW,EACX,eAAe,EACf,UAAU,EACV,WAAW,EACX,MAAM,EACN,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB;AACnB,uBAAuB;AACvB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,kBAAkB;AAClB,kBAAkB;AAClB,oBAAoB,GAIrB,MAAM,wBAAwB,CAAC;AAEhC,8BAA8B;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,oBAAoB;AACpB,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;IACE,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;CACjB,EACD;IACE,YAAY,EAAE;QACZ,KAAK,EAAE,EAAE;KACV;CACF,CACF,CAAC;AAEF,iBAAiB;AACjB,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE;QACL;YACE,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,uCAAuC;YACpD,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0BAA0B;qBACxC;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,+CAA+C;qBAC7D;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wDAAwD;qBACtE;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oCAAoC;qBAClD;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;wBAC9B,WAAW,EAAE,wCAAwC;qBACtD;iBACF;gBACD,QAAQ,EAAE,CAAC,WAAW,CAAC;aACxB;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,kCAAkC;YAC/C,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC;wBACnF,WAAW,EAAE,iCAAiC;qBAC/C;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;oBACD,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iEAAiE;qBAC/E;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC1B;SACF;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EAAE,uDAAuD;YACpE,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,+CAA+C;YAC5D,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0BAA0B;qBACxC;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oDAAoD;qBAClE;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mCAAmC;qBACjD;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wDAAwD;qBACtE;iBACF;gBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,CAAC;aACzD;SACF;QACD;YACE,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,iCAAiC;YAC9C,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,0BAA0B;qBACxC;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wDAAwD;qBACtE;iBACF;gBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;aACvC;SACF;QACD;YACE,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,yEAAyE;YACtF,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;iBACF;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,WAAW,EAAE,+CAA+C;YAC5D,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QACD;YACE,IAAI,EAAE,2BAA2B;YACjC,WAAW,EAAE,4DAA4D;YACzE,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,4FAA4F;YACzG,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;QACD;YACE,IAAI,EAAE,uBAAuB;YAC7B,WAAW,EAAE,wEAAwE;YACrF,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oCAAoC;qBAClD;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wDAAwD;qBACtE;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC1B;SACF;QACD,wEAAwE;QACxE;YACE,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,+JAA+J;YAC5K,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC1B;SACF;QACD;YACE,IAAI,EAAE,+BAA+B;YACrC,WAAW,EAAE,kIAAkI;YAC/I,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC1B;SACF;QACD;YACE,IAAI,EAAE,0BAA0B;YAChC,WAAW,EAAE,gJAAgJ;YAC7J,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,gDAAgD;qBAC9D;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,CAAC;aAC1B;SACF;QACD;YACE,IAAI,EAAE,2BAA2B;YACjC,WAAW,EAAE,gEAAgE;YAC7E,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qBAAqB;qBACnC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,kBAAkB;qBAChC;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,CAAC;aACrC;SACF;QACD;YACE,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,uGAAuG;YACpH,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;QACD;YACE,IAAI,EAAE,yBAAyB;YAC/B,WAAW,EAAE,0KAA0K;YACvL,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+DAA+D;qBAC7E;iBACF;gBACD,QAAQ,EAAE,CAAC,UAAU,CAAC;aACvB;SACF;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,oBAAoB;AACpB,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC;QACH,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAmB;oBAC9B,SAAS,EAAE,IAAI,EAAE,SAAmB;oBACpC,MAAM,EAAE,IAAI,EAAE,MAAiB;oBAC/B,WAAW,EAAE,IAAI,EAAE,WAAqB;oBACxC,QAAQ,EAAE,IAAI,EAAE,QAAkB;oBAClC,GAAG,EAAE,IAAI,EAAE,GAAa;oBACxB,MAAM,EAAE,IAAI,EAAE,MAAiC;iBAChD,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;gBAEtC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG;wBACZ,kCAAkC;wBAClC,EAAE;wBACF,SAAS,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE;wBACnC,YAAY,MAAM,CAAC,OAAO,IAAI,SAAS,EAAE;qBAC1C,CAAC;oBAEF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;wBACnB,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;oBACnD,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BACvB;yBACF;qBACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,gDAAgD;oBAChD,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,2BAA2B,CAAC;wBAC3E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,qBAAqB,CAAC;wBAC7C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC;oBAEjD,IAAI,iBAAiB,EAAE,CAAC;wBACtB,8CAA8C;wBAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;wBACzD,MAAM,KAAK,GAAG;4BACZ,0DAA0D;4BAC1D,EAAE;4BACF,8DAA8D;4BAC9D,EAAE;4BACF,UAAU;4BACV,mEAAmE;4BACnE,iDAAiD;4BACjD,EAAE;4BACF,iBAAiB,WAAW,EAAE;4BAC9B,EAAE;4BACF,KAAK;4BACL,MAAM,CAAC,KAAK;yBACb,CAAC;wBAEF,OAAO;4BACL,OAAO,EAAE;gCACP;oCACE,IAAI,EAAE,MAAM;oCACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;iCACvB;6BACF;4BACD,OAAO,EAAE,IAAI;yBACd,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,qBAAqB,MAAM,CAAC,KAAK,EAAE;6BAC1C;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,OAAO,GAAuB;oBAClC,WAAW,EAAE,IAAI,EAAE,WAAgD;oBACnE,WAAW,EAAE,IAAI,EAAE,WAAqB;oBACxC,KAAK,EAAE,IAAI,EAAE,KAAe;iBAC7B,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;gBAE1C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG;wBACZ,+BAA+B;wBAC/B,EAAE;wBACF,GAAG,MAAM,CAAC,UAAU,MAAM,MAAM,CAAC,UAAU,EAAE;qBAC9C,CAAC;oBAEF,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BACvB;yBACF;qBACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,0BAA0B,MAAM,CAAC,KAAK,EAAE;6BAC/C;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,sBAAsB,CAAC,CAAC,CAAC;gBAC5B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,WAAqB,CAAC,CAAC;gBAElE,MAAM,KAAK,GAAG;oBACZ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,iCAAiC;oBACvE,EAAE;iBACH,CAAC;gBAEF,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;gBACrE,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;oBAC9B,SAAS,EAAE,IAAI,EAAE,SAAmB;oBACpC,WAAW,EAAE,IAAI,EAAE,WAAqB;oBACxC,GAAG,EAAE,IAAI,EAAE,GAAa;oBACxB,OAAO,EAAE,IAAI,EAAE,OAAiB;oBAChC,QAAQ,EAAE,IAAI,EAAE,QAAkB;iBACnC,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,eAAe,IAAI,EAAE,GAAG,oBAAoB,IAAI,EAAE,OAAO,QAAQ,IAAI,EAAE,WAAW,EAAE;6BAC3F;yBACF;qBACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,6BAA6B,MAAM,CAAC,KAAK,EAAE;6BAClD;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,IAAI,EAAE,WAAqB,EAC3B,IAAI,EAAE,SAAmB,EACzB,IAAI,EAAE,QAAkB,CACzB,CAAC;gBAEF,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAG;wBACZ,oBAAoB,IAAI,EAAE,WAAW,EAAE;wBACvC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;wBACd,EAAE;qBACH,CAAC;oBAEF,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzD,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,OAAO,EAAE,CAAC,CAAC;oBACrC,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BACvB;yBACF;qBACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,8BAA8B,MAAM,CAAC,KAAK,EAAE;6BACnD;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,2DAA2D;gBAC3D,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,KAAe,EAAE;oBAClD,KAAK,EAAE,GAAG;iBACX,CAAC,CAAC;gBAEH,MAAM,KAAK,GAAG;oBACZ,0BAA0B,IAAI,EAAE,KAAK,GAAG;oBACxC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;wBAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBACrC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,gBAAgB,EAAE,CAAC,CAAC;wBAEhE,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACzC,KAAK,CAAC,IAAI,CACR,aAAa,KAAK,KAAK;4BACrB,cAAc,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ;4BAC5D,YAAY,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CACpC,CAAC;wBAEF,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC5D,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC5E,CAAC;wBAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjB,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,MAAM,mBAAmB,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,IAAc,CAAC,CAAC;gBAE9D,MAAM,KAAK,GAAG;oBACZ,MAAM,OAAO,CAAC,IAAI,EAAE;oBACpB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;gBAE1C,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC9C,CAAC;gBAED,IAAI,OAAO,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC;oBAC5B,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;gBACtD,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC7F,KAAK,CAAC,IAAI,CAAC,WAAW,UAAU,EAAE,CAAC,CAAC;gBACtC,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBAEhE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;gBACrD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9E,CAAC;gBAED,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpD,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACzD,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,IAAc,CAAC,CAAC;gBAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBAC3D,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC/C,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC3B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BAAE,OAAO,CAAC,CAAC,CAAC;wBACjE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BAAE,OAAO,CAAC,CAAC;oBAClE,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC,CAAC,CAAC;gBAEH,sCAAsC;gBACtC,MAAM,KAAK,GAAG;oBACZ,kBAAkB,IAAI,EAAE,IAAI,EAAE;oBAC9B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;oBACF,UAAU,QAAQ,CAAC,MAAM,aAAa;oBACtC,EAAE;iBACH,CAAC;gBAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAClC,CAAC;qBAAM,CAAC;oBACN,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;wBAC/B,MAAM,QAAQ,GAAG,OAAO,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;wBACzD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;6BAC9C,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC;6BACjC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;6BACf,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEd,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC9C,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,GAAG,MAAM,GAAG,SAAS,EAAE,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,WAAqB,CAAC,CAAC;gBAEnE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACrC,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,UAAU,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;6BAClD;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG;oBACZ,qBAAqB,IAAI,EAAE,WAAW,IAAI,mBAAmB,EAAE;oBAC/D,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;oBACF,eAAe,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;oBACpC,EAAE;iBACH,CAAC;gBAEF,2BAA2B;gBAC3B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;gBAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC/F,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACxC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;gBAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;oBACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACvG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;wBACnE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;wBACvD,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG;4BAAE,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,KAAK,CAAC,CAAC;oBAC5D,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,mCAAmC;gBACnC,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,uBAAuB,CAAC,CAAC,CAAC;gBAC7B,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBACxC,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAkB,CAAC;gBAE1C,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAEzE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACrC,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,UAAU,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;6BAClD;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG;oBACZ,eAAe,WAAW,EAAE;oBAC5B,YAAY,MAAM,CAAC,OAAO,IAAI,SAAS,EAAE;oBACzC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;oBACF,UAAU,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;oBAC/B,EAAE;iBACH,CAAC;gBAEF,2BAA2B;gBAC3B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;gBAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC/F,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACxC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;gBAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;oBACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACvG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;wBACnE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,SAAS,CAAC,CAAC;wBACvD,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG;4BAAE,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,KAAK,CAAC,CAAC;oBAC5D,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,uCAAuC;YAEvC,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBAEpD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAE7D,MAAM,KAAK,GAAG;oBACZ,oBAAoB,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;oBAChE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,0CAA0C;gBAC1C,IAAI,UAAU,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;oBAC/D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;oBACjF,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;oBACpF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;oBACtE,KAAK,CAAC,IAAI,CAAC,cAAc,WAAW,eAAe,CAAC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,UAAU,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;oBACvF,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBACrE,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBACvE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAEf,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;wBACxC,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;4BACvD,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC/C,CAAC;wBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjB,CAAC;oBAED,IAAI,UAAU,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;wBAC1C,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;4BACzD,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC/C,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,+BAA+B,CAAC,CAAC,CAAC;gBACrC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBAEpD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAEzD,MAAM,KAAK,GAAG;oBACZ,sBAAsB,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;oBAClE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;oBACF,UAAU,IAAI,CAAC,eAAe,eAAe;oBAC7C,eAAe,IAAI,CAAC,WAAW,EAAE;oBACjC,eAAe,IAAI,CAAC,aAAa,EAAE;oBACnC,EAAE;iBACH,CAAC;gBAEF,gCAAgC;gBAChC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBACnE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gBAEvE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,MAAM,2CAA2C,CAAC,CAAC;oBAC/E,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;wBACzC,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5E,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;gBAC7E,KAAK,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBAC5C,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC5E,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,0BAA0B,CAAC,CAAC,CAAC;gBAChC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,EAAE,OAA6B,CAAC;gBAEpD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAEhE,MAAM,KAAK,GAAG;oBACZ,wBAAwB,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE;oBAC3D,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAExD,aAAa;gBACb,IAAI,QAAQ,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;oBAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;oBAC1C,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBACrE,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,oBAAoB,EAAE,cAAc,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;oBACrF,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC;gBAC1F,CAAC;gBAED,eAAe;gBACf,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;oBAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;oBAC7C,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;oBACrD,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,qBAAqB,IAAI,KAAK,EAAE,CAAC,CAAC;oBACpE,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,CAAC,uBAAuB,IAAI,KAAK,EAAE,CAAC,CAAC;gBACzE,CAAC;gBAED,SAAS;gBACT,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtE,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK;wBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;oBAC7F,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK;wBAAE,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;oBAC7F,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM;wBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChF,CAAC;gBAED,YAAY;gBACZ,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,CAAC;oBAChE,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;wBACnE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC;oBAC3D,CAAC;oBACD,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzC,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,cAAc,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,2BAA2B,CAAC,CAAC,CAAC;gBACjC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAqB,CAAC;gBAChD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAiB,CAAC;gBAExC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAE9D,MAAM,KAAK,GAAG;oBACZ,2BAA2B,WAAW,IAAI,OAAO,EAAE;oBACnD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC9B,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,UAAU,CAAC,MAAM,yBAAyB,CAAC,CAAC;oBAC3E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACf,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;wBACzC,KAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;wBACzD,KAAK,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;wBACrC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBACnE,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,MAAM,WAAW,GAAI,IAAI,EAAE,WAAsB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACnE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEtC,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAa,EAAE,CAAC;gBAE1B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBACtD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC7B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,WAAW,EAAE,EAAE,CAAC;wBACpF,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;gBAE3D,wDAAwD;gBACxD,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC7C,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC1E,MAAM,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;oBAC9F,MAAM,CAAC,IAAI,CAAC,cAAc,WAAW,EAAE,CAAC,CAAC;oBACzC,MAAM,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAC/E,CAAC;gBAED,gDAAgD;gBAChD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;oBACf,QAAQ,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;oBAC/E,QAAQ,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;gBACtF,CAAC;qBAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACxE,QAAQ,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;gBAChG,CAAC;gBAED,mCAAmC;gBACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAC3C,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzB,IAAI,SAAS,GAAG,CAAC,CAAC;oBAClB,IAAI,SAAS,GAAG,CAAC,CAAC;oBAClB,MAAM,UAAU,GAAa,EAAE,CAAC;oBAEhC,SAAS,UAAU,CAAC,GAAW;wBAC7B,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC1D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;4BAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;4BACvC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gCACxB,UAAU,CAAC,QAAQ,CAAC,CAAC;4BACvB,CAAC;iCAAM,CAAC;gCACN,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;gCACrC,SAAS,IAAI,IAAI,CAAC;gCAClB,SAAS,EAAE,CAAC;gCACZ,4CAA4C;gCAC5C,IAAI,IAAI,GAAG,GAAG,GAAG,IAAI,EAAE,CAAC;oCACtB,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gCACnE,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC;wBACH,UAAU,CAAC,QAAQ,CAAC,CAAC;wBACrB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,SAAS,QAAQ,CAAC,CAAC;wBAEtF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC1B,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;4BACxE,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gCAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;4BAC1B,CAAC;4BACD,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;wBACjF,CAAC;oBACH,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBAC3D,CAAC;gBAED,sCAAsC;gBACtC,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC9E,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;wBAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,OAAiB,CAAC,CAAC;wBACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACzB,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;4BAChD,IAAI,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;gCAC7C,QAAQ,CAAC,IAAI,CAAC,aAAa,OAAO,qCAAqC,CAAC,CAAC;gCACzE,QAAQ,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;4BACpF,CAAC;4BACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC9B,MAAM,CAAC,IAAI,CAAC,aAAa,OAAO,wBAAwB,CAAC,CAAC;gCAC1D,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;4BACnE,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,eAAe;gBACf,MAAM,KAAK,GAAa;oBACtB,sBAAsB,GAAG,CAAC,IAAI,IAAI,SAAS,EAAE;oBAC7C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;iBACH,CAAC;gBAEF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC3C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;oBACjD,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACxB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjD,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBAC/C,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB;qBACF;oBACD,OAAO,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC;iBAC3B,CAAC;YACJ,CAAC;YAED,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAkB,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBAEpD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,8BAA8B,MAAM,CAAC,KAAK,EAAE;6BACnD;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG;oBACZ,mBAAmB,MAAM,CAAC,MAAM,EAAE;oBAClC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACd,EAAE;oBACF,UAAU,MAAM,CAAC,KAAK,aAAa;oBACnC,EAAE;iBACH,CAAC;gBAEF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACN,gDAAgD;oBAChD,MAAM,MAAM,GAA2B,EAAE,CAAC;oBAC1C,MAAM,QAAQ,GAA2B,EAAE,CAAC;oBAE5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;wBAClC,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACnB,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACrB,CAAC;oBACH,CAAC;oBAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACtB,KAAK,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;wBAClD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;4BACzB,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,WAAW,IAAI,gBAAgB,EAAE,CAAC,CAAC;4BAC1D,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,MAAM,GAAG,CAAC,OAAO,MAAM,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;4BACrG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACjB,CAAC;oBACH,CAAC;oBAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,KAAK,CAAC,IAAI,CAAC,sBAAsB,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;wBACtD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;4BAC3B,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC/B,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,WAAW,IAAI,gBAAgB,EAAE,CAAC,CAAC;4BAC1D,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,OAAO,MAAM,GAAG,CAAC,OAAO,MAAM,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;4BACrG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACjB,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED;gBACE,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,iBAAiB,IAAI,EAAE;yBAC9B;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;QACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU,MAAM,CAAC,KAAK,CAAC,EAAE;iBAChC;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,eAAe;AACf,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC3D,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/src/index.js DELETED
@@ -1,755 +0,0 @@
1
- #!/usr/bin/env node
2
- "use strict";
3
- /**
4
- * NPM Publish MCP Server
5
- *
6
- * Provides tools for NPM package publishing, version management,
7
- * validation, search, and dist-tag operations.
8
- */
9
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
- return new (P || (P = Promise))(function (resolve, reject) {
12
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
- step((generator = generator.apply(thisArg, _arguments || [])).next());
16
- });
17
- };
18
- var __generator = (this && this.__generator) || function (thisArg, body) {
19
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
20
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
21
- function verb(n) { return function (v) { return step([n, v]); }; }
22
- function step(op) {
23
- if (f) throw new TypeError("Generator is already executing.");
24
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
25
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
26
- if (y = 0, t) op = [op[0] & 2, t.value];
27
- switch (op[0]) {
28
- case 0: case 1: t = op; break;
29
- case 4: _.label++; return { value: op[1], done: false };
30
- case 5: _.label++; y = op[1]; op = [0]; continue;
31
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
32
- default:
33
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
34
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
35
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
36
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
37
- if (t[2]) _.ops.pop();
38
- _.trys.pop(); continue;
39
- }
40
- op = body.call(thisArg, _);
41
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
42
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
43
- }
44
- };
45
- Object.defineProperty(exports, "__esModule", { value: true });
46
- var index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
47
- var stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
48
- var types_js_1 = require("@modelcontextprotocol/sdk/types.js");
49
- // Import npm-publisher functions
50
- var index_js_2 = require("../../../src/npm-publishing/dist/index.js");
51
- // Import large-output utility
52
- var large_output_1 = require("@ebowwa/large-output");
53
- // Create MCP server
54
- var server = new index_js_1.Server({
55
- name: "npm-publish-mcp",
56
- version: "1.0.0",
57
- }, {
58
- capabilities: {
59
- tools: {},
60
- },
61
- });
62
- // Register tools
63
- server.setRequestHandler(types_js_1.ListToolsRequestSchema, function () { return __awaiter(void 0, void 0, void 0, function () {
64
- return __generator(this, function (_a) {
65
- return [2 /*return*/, ({
66
- tools: [
67
- {
68
- name: "publish-npm-package",
69
- description: "Publish a package to the npm registry",
70
- inputSchema: {
71
- type: "object",
72
- properties: {
73
- authToken: {
74
- type: "string",
75
- description: "npm authentication token",
76
- },
77
- dryRun: {
78
- type: "boolean",
79
- description: "Perform a dry run without actually publishing",
80
- },
81
- packagePath: {
82
- type: "string",
83
- description: "Path to the package directory (default: current working directory)",
84
- },
85
- registry: {
86
- type: "string",
87
- description: "npm registry URL (default: https://registry.npmjs.org)",
88
- },
89
- tag: {
90
- type: "string",
91
- description: "Distribution tag (default: latest)",
92
- },
93
- access: {
94
- type: "string",
95
- enum: ["public", "restricted"],
96
- description: "Package access level (default: public)",
97
- },
98
- },
99
- required: ["authToken"],
100
- },
101
- },
102
- {
103
- name: "bump-npm-version",
104
- description: "Bump the version in package.json",
105
- inputSchema: {
106
- type: "object",
107
- properties: {
108
- releaseType: {
109
- type: "string",
110
- enum: ["major", "minor", "patch", "premajor", "preminor", "prepatch", "prerelease"],
111
- description: "Type of version bump to perform",
112
- },
113
- packagePath: {
114
- type: "string",
115
- description: "Path to the package directory (default: current working directory)",
116
- },
117
- preId: {
118
- type: "string",
119
- description: "Prerelease identifier (e.g., 'beta', 'alpha') for pre* releases",
120
- },
121
- },
122
- required: ["releaseType"],
123
- },
124
- },
125
- {
126
- name: "validate-npm-package",
127
- description: "Validate package.json for npm publishing requirements",
128
- inputSchema: {
129
- type: "object",
130
- properties: {
131
- packagePath: {
132
- type: "string",
133
- description: "Path to the package directory (default: current working directory)",
134
- },
135
- },
136
- required: [],
137
- },
138
- },
139
- {
140
- name: "set-npm-dist-tag",
141
- description: "Set a dist-tag for a specific package version",
142
- inputSchema: {
143
- type: "object",
144
- properties: {
145
- authToken: {
146
- type: "string",
147
- description: "npm authentication token",
148
- },
149
- packageName: {
150
- type: "string",
151
- description: "Name of the package",
152
- },
153
- tag: {
154
- type: "string",
155
- description: "Tag name to set (e.g., 'latest', 'beta', 'canary')",
156
- },
157
- version: {
158
- type: "string",
159
- description: "Version to associate with the tag",
160
- },
161
- registry: {
162
- type: "string",
163
- description: "npm registry URL (default: https://registry.npmjs.org)",
164
- },
165
- },
166
- required: ["authToken", "packageName", "tag", "version"],
167
- },
168
- },
169
- {
170
- name: "get-npm-dist-tags",
171
- description: "Get all dist-tags for a package",
172
- inputSchema: {
173
- type: "object",
174
- properties: {
175
- authToken: {
176
- type: "string",
177
- description: "npm authentication token",
178
- },
179
- packageName: {
180
- type: "string",
181
- description: "Name of the package",
182
- },
183
- registry: {
184
- type: "string",
185
- description: "npm registry URL (default: https://registry.npmjs.org)",
186
- },
187
- },
188
- required: ["authToken", "packageName"],
189
- },
190
- },
191
- {
192
- name: "search-npm-packages",
193
- description: "Search for packages on the npm registry. Returns all available results.",
194
- inputSchema: {
195
- type: "object",
196
- properties: {
197
- query: {
198
- type: "string",
199
- description: "Search query string",
200
- },
201
- },
202
- required: ["query"],
203
- },
204
- },
205
- {
206
- name: "get-npm-package-details",
207
- description: "Get detailed information about an npm package",
208
- inputSchema: {
209
- type: "object",
210
- properties: {
211
- name: {
212
- type: "string",
213
- description: "Name of the package",
214
- },
215
- },
216
- required: ["name"],
217
- },
218
- },
219
- {
220
- name: "list-npm-package-versions",
221
- description: "List all versions of an npm package. Returns all versions.",
222
- inputSchema: {
223
- type: "object",
224
- properties: {
225
- name: {
226
- type: "string",
227
- description: "Name of the package",
228
- },
229
- },
230
- required: ["name"],
231
- },
232
- },
233
- {
234
- name: "read-package-files",
235
- description: "Read source files from a local package directory for code review or pre-publish inspection",
236
- inputSchema: {
237
- type: "object",
238
- properties: {
239
- packagePath: {
240
- type: "string",
241
- description: "Path to the package directory (default: current working directory)",
242
- },
243
- },
244
- required: [],
245
- },
246
- },
247
- {
248
- name: "fetch-package-tarball",
249
- description: "Download and extract source files from a published npm package tarball",
250
- inputSchema: {
251
- type: "object",
252
- properties: {
253
- packageName: {
254
- type: "string",
255
- description: "Name of the package",
256
- },
257
- version: {
258
- type: "string",
259
- description: "Version to fetch (default: latest)",
260
- },
261
- registry: {
262
- type: "string",
263
- description: "npm registry URL (default: https://registry.npmjs.org)",
264
- },
265
- },
266
- required: ["packageName"],
267
- },
268
- },
269
- ],
270
- })];
271
- });
272
- }); });
273
- // Handle tool calls
274
- server.setRequestHandler(types_js_1.CallToolRequestSchema, function (request) { return __awaiter(void 0, void 0, void 0, function () {
275
- var _a, name, args, _b, options, result, lines, options, result, lines, result, lines_1, result, result, lines, _i, _c, _d, tag, version, results, lines, _e, results_1, pkg, score, details, lines, authorName, allTags, details, versions, lines, _loop_1, _f, versions_1, version, result, lines, byDir, _g, _h, file, dir, _j, byDir_1, _k, dir, files, _l, files_1, file, name_1, preview, packageName, version, registry, result, lines, byDir, _m, _o, file, dir, _p, byDir_2, _q, dir, files, _r, files_2, file, name_2, preview, error_1;
276
- var _s;
277
- return __generator(this, function (_t) {
278
- switch (_t.label) {
279
- case 0:
280
- _a = request.params, name = _a.name, args = _a.arguments;
281
- _t.label = 1;
282
- case 1:
283
- _t.trys.push([1, 24, , 25]);
284
- _b = name;
285
- switch (_b) {
286
- case "publish-npm-package": return [3 /*break*/, 2];
287
- case "bump-npm-version": return [3 /*break*/, 4];
288
- case "validate-npm-package": return [3 /*break*/, 6];
289
- case "set-npm-dist-tag": return [3 /*break*/, 8];
290
- case "get-npm-dist-tags": return [3 /*break*/, 10];
291
- case "search-npm-packages": return [3 /*break*/, 12];
292
- case "get-npm-package-details": return [3 /*break*/, 14];
293
- case "list-npm-package-versions": return [3 /*break*/, 16];
294
- case "read-package-files": return [3 /*break*/, 18];
295
- case "fetch-package-tarball": return [3 /*break*/, 20];
296
- }
297
- return [3 /*break*/, 22];
298
- case 2:
299
- options = {
300
- authToken: args === null || args === void 0 ? void 0 : args.authToken,
301
- dryRun: args === null || args === void 0 ? void 0 : args.dryRun,
302
- packagePath: args === null || args === void 0 ? void 0 : args.packagePath,
303
- registry: args === null || args === void 0 ? void 0 : args.registry,
304
- tag: args === null || args === void 0 ? void 0 : args.tag,
305
- access: args === null || args === void 0 ? void 0 : args.access,
306
- };
307
- return [4 /*yield*/, (0, index_js_2.publish)(options)];
308
- case 3:
309
- result = _t.sent();
310
- if (result.success) {
311
- lines = [
312
- "✓ Package published successfully",
313
- "",
314
- "Name: ".concat(result.name || "unknown"),
315
- "Version: ".concat(result.version || "unknown"),
316
- ];
317
- if (options.dryRun) {
318
- lines.push("(dry run - not actually published)");
319
- }
320
- return [2 /*return*/, {
321
- content: [
322
- {
323
- type: "text",
324
- text: lines.join("\n"),
325
- },
326
- ],
327
- }];
328
- }
329
- else {
330
- return [2 /*return*/, {
331
- content: [
332
- {
333
- type: "text",
334
- text: "\u2717 Publish failed: ".concat(result.error),
335
- },
336
- ],
337
- isError: true,
338
- }];
339
- }
340
- _t.label = 4;
341
- case 4:
342
- options = {
343
- releaseType: args === null || args === void 0 ? void 0 : args.releaseType,
344
- packagePath: args === null || args === void 0 ? void 0 : args.packagePath,
345
- preId: args === null || args === void 0 ? void 0 : args.preId,
346
- };
347
- return [4 /*yield*/, (0, index_js_2.bumpVersion)(options)];
348
- case 5:
349
- result = _t.sent();
350
- if (result.success) {
351
- lines = [
352
- "✓ Version bumped successfully",
353
- "",
354
- "".concat(result.oldVersion, " \u2192 ").concat(result.newVersion),
355
- ];
356
- return [2 /*return*/, {
357
- content: [
358
- {
359
- type: "text",
360
- text: lines.join("\n"),
361
- },
362
- ],
363
- }];
364
- }
365
- else {
366
- return [2 /*return*/, {
367
- content: [
368
- {
369
- type: "text",
370
- text: "\u2717 Version bump failed: ".concat(result.error),
371
- },
372
- ],
373
- isError: true,
374
- }];
375
- }
376
- _t.label = 6;
377
- case 6: return [4 /*yield*/, (0, index_js_2.validatePackage)(args === null || args === void 0 ? void 0 : args.packagePath)];
378
- case 7:
379
- result = _t.sent();
380
- lines_1 = [
381
- result.valid ? "✓ Package is valid" : "✗ Package has validation errors",
382
- "",
383
- ];
384
- if (result.errors.length > 0) {
385
- lines_1.push("Errors:");
386
- result.errors.forEach(function (error) { return lines_1.push(" - ".concat(error)); });
387
- lines_1.push("");
388
- }
389
- if (result.warnings.length > 0) {
390
- lines_1.push("Warnings:");
391
- result.warnings.forEach(function (warning) { return lines_1.push(" - ".concat(warning)); });
392
- }
393
- return [2 /*return*/, {
394
- content: [
395
- {
396
- type: "text",
397
- text: lines_1.join("\n"),
398
- },
399
- ],
400
- }];
401
- case 8: return [4 /*yield*/, (0, index_js_2.setDistTag)({
402
- authToken: args === null || args === void 0 ? void 0 : args.authToken,
403
- packageName: args === null || args === void 0 ? void 0 : args.packageName,
404
- tag: args === null || args === void 0 ? void 0 : args.tag,
405
- version: args === null || args === void 0 ? void 0 : args.version,
406
- registry: args === null || args === void 0 ? void 0 : args.registry,
407
- })];
408
- case 9:
409
- result = _t.sent();
410
- if (result.success) {
411
- return [2 /*return*/, {
412
- content: [
413
- {
414
- type: "text",
415
- text: "\u2713 Dist-tag '".concat(args === null || args === void 0 ? void 0 : args.tag, "' set to version ").concat(args === null || args === void 0 ? void 0 : args.version, " for ").concat(args === null || args === void 0 ? void 0 : args.packageName),
416
- },
417
- ],
418
- }];
419
- }
420
- else {
421
- return [2 /*return*/, {
422
- content: [
423
- {
424
- type: "text",
425
- text: "\u2717 Failed to set dist-tag: ".concat(result.error),
426
- },
427
- ],
428
- isError: true,
429
- }];
430
- }
431
- _t.label = 10;
432
- case 10: return [4 /*yield*/, (0, index_js_2.getDistTags)(args === null || args === void 0 ? void 0 : args.packageName, args === null || args === void 0 ? void 0 : args.authToken, args === null || args === void 0 ? void 0 : args.registry)];
433
- case 11:
434
- result = _t.sent();
435
- if (result.success && result.tags) {
436
- lines = [
437
- "\uD83D\uDCCB Dist-tags for ".concat(args === null || args === void 0 ? void 0 : args.packageName),
438
- "=".repeat(40),
439
- "",
440
- ];
441
- for (_i = 0, _c = Object.entries(result.tags); _i < _c.length; _i++) {
442
- _d = _c[_i], tag = _d[0], version = _d[1];
443
- lines.push(" ".concat(tag, ": ").concat(version));
444
- }
445
- return [2 /*return*/, {
446
- content: [
447
- {
448
- type: "text",
449
- text: lines.join("\n"),
450
- },
451
- ],
452
- }];
453
- }
454
- else {
455
- return [2 /*return*/, {
456
- content: [
457
- {
458
- type: "text",
459
- text: "\u2717 Failed to get dist-tags: ".concat(result.error),
460
- },
461
- ],
462
- isError: true,
463
- }];
464
- }
465
- _t.label = 12;
466
- case 12: return [4 /*yield*/, (0, index_js_2.search)(args === null || args === void 0 ? void 0 : args.query, {
467
- limit: 250,
468
- })];
469
- case 13:
470
- results = _t.sent();
471
- lines = [
472
- "\uD83D\uDD0D Search results for \"".concat(args === null || args === void 0 ? void 0 : args.query, "\""),
473
- "=".repeat(40),
474
- "",
475
- ];
476
- if (results.length === 0) {
477
- lines.push("No packages found");
478
- }
479
- else {
480
- for (_e = 0, results_1 = results; _e < results_1.length; _e++) {
481
- pkg = results_1[_e];
482
- lines.push("\uD83D\uDCE6 ".concat(pkg.package.name));
483
- lines.push(" ".concat(pkg.package.description || "No description"));
484
- score = pkg.score.final.toFixed(2);
485
- lines.push(" Score: ".concat(score, " | ") +
486
- "Downloads: ".concat(pkg.downloads.monthly.toLocaleString(), "/mo | ") +
487
- "Version: ".concat(pkg.package.version));
488
- if (pkg.package.keywords && pkg.package.keywords.length > 0) {
489
- lines.push(" Keywords: ".concat(pkg.package.keywords.slice(0, 5).join(", ")));
490
- }
491
- lines.push("");
492
- }
493
- lines.push("Total: ".concat(results.length, " package(s) found"));
494
- }
495
- return [2 /*return*/, {
496
- content: [
497
- {
498
- type: "text",
499
- text: (0, large_output_1.handleMCPOutput)(lines.join("\n")),
500
- },
501
- ],
502
- }];
503
- case 14: return [4 /*yield*/, (0, index_js_2.getPackageDetails)(args === null || args === void 0 ? void 0 : args.name)];
504
- case 15:
505
- details = _t.sent();
506
- lines = [
507
- "\uD83D\uDCE6 ".concat(details.name),
508
- "=".repeat(40),
509
- "",
510
- ];
511
- if (details.description) {
512
- lines.push(details.description);
513
- lines.push("");
514
- }
515
- lines.push("Latest: ".concat(details["dist-tags"].latest));
516
- lines.push("License: ".concat(details.license));
517
- if (details.homepage) {
518
- lines.push("Homepage: ".concat(details.homepage));
519
- }
520
- if ((_s = details.repository) === null || _s === void 0 ? void 0 : _s.url) {
521
- lines.push("Repository: ".concat(details.repository.url));
522
- }
523
- if (details.author) {
524
- authorName = typeof details.author === "string" ? details.author : details.author.name;
525
- lines.push("Author: ".concat(authorName));
526
- }
527
- lines.push("");
528
- lines.push("Versions: ".concat(Object.keys(details.versions).length));
529
- allTags = Object.entries(details["dist-tags"]);
530
- if (allTags.length > 1) {
531
- lines.push("Dist-tags: ".concat(allTags.map(function (_a) {
532
- var t = _a[0], v = _a[1];
533
- return "".concat(t, "=").concat(v);
534
- }).join(", ")));
535
- }
536
- if (details.keywords && details.keywords.length > 0) {
537
- lines.push("Keywords: ".concat(details.keywords.join(", ")));
538
- }
539
- return [2 /*return*/, {
540
- content: [
541
- {
542
- type: "text",
543
- text: lines.join("\n"),
544
- },
545
- ],
546
- }];
547
- case 16: return [4 /*yield*/, (0, index_js_2.getPackageDetails)(args === null || args === void 0 ? void 0 : args.name)];
548
- case 17:
549
- details = _t.sent();
550
- versions = Object.keys(details.versions).sort(function (a, b) {
551
- var versionPartsA = a.split(".").map(Number);
552
- var versionPartsB = b.split(".").map(Number);
553
- for (var i = 0; i < 3; i++) {
554
- if ((versionPartsA[i] || 0) > (versionPartsB[i] || 0))
555
- return -1;
556
- if ((versionPartsA[i] || 0) < (versionPartsB[i] || 0))
557
- return 1;
558
- }
559
- return 0;
560
- });
561
- lines = [
562
- "\uD83D\uDCCB Versions of ".concat(args === null || args === void 0 ? void 0 : args.name),
563
- "=".repeat(40),
564
- "",
565
- "Total: ".concat(versions.length, " version(s)"),
566
- "",
567
- ];
568
- if (versions.length === 0) {
569
- lines.push("No versions found");
570
- }
571
- else {
572
- _loop_1 = function (version) {
573
- var isLatest = version === details["dist-tags"].latest;
574
- var tags = Object.entries(details["dist-tags"])
575
- .filter(function (_a) {
576
- var _ = _a[0], v = _a[1];
577
- return v === version;
578
- })
579
- .map(function (_a) {
580
- var t = _a[0];
581
- return t;
582
- })
583
- .join(", ");
584
- var tagStr = tags ? " [".concat(tags, "]") : "";
585
- var latestStr = isLatest ? " (latest)" : "";
586
- lines.push(" ".concat(version).concat(tagStr).concat(latestStr));
587
- };
588
- for (_f = 0, versions_1 = versions; _f < versions_1.length; _f++) {
589
- version = versions_1[_f];
590
- _loop_1(version);
591
- }
592
- }
593
- return [2 /*return*/, {
594
- content: [
595
- {
596
- type: "text",
597
- text: (0, large_output_1.handleMCPOutput)(lines.join("\n")),
598
- },
599
- ],
600
- }];
601
- case 18: return [4 /*yield*/, (0, index_js_2.readPackageFiles)(args === null || args === void 0 ? void 0 : args.packagePath)];
602
- case 19:
603
- result = _t.sent();
604
- if (!result.success || !result.files) {
605
- return [2 /*return*/, {
606
- content: [
607
- {
608
- type: "text",
609
- text: "Error: ".concat(result.error || "Unknown error"),
610
- },
611
- ],
612
- isError: true,
613
- }];
614
- }
615
- lines = [
616
- "\uD83D\uDCC1 Package Files: ".concat((args === null || args === void 0 ? void 0 : args.packagePath) || "current directory"),
617
- "=".repeat(40),
618
- "",
619
- "Files read: ".concat(result.files.length),
620
- "",
621
- ];
622
- byDir = new Map();
623
- for (_g = 0, _h = result.files; _g < _h.length; _g++) {
624
- file = _h[_g];
625
- dir = file.path.includes("/") ? file.path.substring(0, file.path.lastIndexOf("/")) : ".";
626
- if (!byDir.has(dir))
627
- byDir.set(dir, []);
628
- byDir.get(dir).push(file);
629
- }
630
- for (_j = 0, byDir_1 = byDir; _j < byDir_1.length; _j++) {
631
- _k = byDir_1[_j], dir = _k[0], files = _k[1];
632
- lines.push("".concat(dir, "/"));
633
- for (_l = 0, files_1 = files; _l < files_1.length; _l++) {
634
- file = files_1[_l];
635
- name_1 = file.path.includes("/") ? file.path.substring(file.path.lastIndexOf("/") + 1) : file.path;
636
- preview = file.content.substring(0, 100).replace(/\n/g, " ");
637
- lines.push(" ".concat(name_1, " (").concat(file.content.length, " chars)"));
638
- if (preview.length < 100)
639
- lines.push(" ".concat(preview, "..."));
640
- }
641
- lines.push("");
642
- }
643
- // Include error/warning if present
644
- if (result.error && result.files.length > 0) {
645
- lines.push("\u26A0\uFE0F Warning: ".concat(result.error));
646
- }
647
- return [2 /*return*/, {
648
- content: [
649
- {
650
- type: "text",
651
- text: (0, large_output_1.handleMCPOutput)(lines.join("\n")),
652
- },
653
- ],
654
- }];
655
- case 20:
656
- packageName = args === null || args === void 0 ? void 0 : args.packageName;
657
- version = args === null || args === void 0 ? void 0 : args.version;
658
- registry = args === null || args === void 0 ? void 0 : args.registry;
659
- return [4 /*yield*/, (0, index_js_2.fetchPackageTarball)(packageName, version, registry)];
660
- case 21:
661
- result = _t.sent();
662
- if (!result.success || !result.files) {
663
- return [2 /*return*/, {
664
- content: [
665
- {
666
- type: "text",
667
- text: "Error: ".concat(result.error || "Unknown error"),
668
- },
669
- ],
670
- isError: true,
671
- }];
672
- }
673
- lines = [
674
- "\uD83D\uDCE6 Package: ".concat(packageName),
675
- "Version: ".concat(result.version || "unknown"),
676
- "=".repeat(40),
677
- "",
678
- "Files: ".concat(result.files.length),
679
- "",
680
- ];
681
- byDir = new Map();
682
- for (_m = 0, _o = result.files; _m < _o.length; _m++) {
683
- file = _o[_m];
684
- dir = file.path.includes("/") ? file.path.substring(0, file.path.lastIndexOf("/")) : ".";
685
- if (!byDir.has(dir))
686
- byDir.set(dir, []);
687
- byDir.get(dir).push(file);
688
- }
689
- for (_p = 0, byDir_2 = byDir; _p < byDir_2.length; _p++) {
690
- _q = byDir_2[_p], dir = _q[0], files = _q[1];
691
- lines.push("".concat(dir, "/"));
692
- for (_r = 0, files_2 = files; _r < files_2.length; _r++) {
693
- file = files_2[_r];
694
- name_2 = file.path.includes("/") ? file.path.substring(file.path.lastIndexOf("/") + 1) : file.path;
695
- preview = file.content.substring(0, 100).replace(/\n/g, " ");
696
- lines.push(" ".concat(name_2, " (").concat(file.content.length, " chars)"));
697
- if (preview.length < 100)
698
- lines.push(" ".concat(preview, "..."));
699
- }
700
- lines.push("");
701
- }
702
- return [2 /*return*/, {
703
- content: [
704
- {
705
- type: "text",
706
- text: (0, large_output_1.handleMCPOutput)(lines.join("\n")),
707
- },
708
- ],
709
- }];
710
- case 22: return [2 /*return*/, {
711
- content: [
712
- {
713
- type: "text",
714
- text: "Unknown tool: ".concat(name),
715
- },
716
- ],
717
- isError: true,
718
- }];
719
- case 23: return [3 /*break*/, 25];
720
- case 24:
721
- error_1 = _t.sent();
722
- return [2 /*return*/, {
723
- content: [
724
- {
725
- type: "text",
726
- text: "Error: ".concat(String(error_1)),
727
- },
728
- ],
729
- isError: true,
730
- }];
731
- case 25: return [2 /*return*/];
732
- }
733
- });
734
- }); });
735
- // Start server
736
- function main() {
737
- return __awaiter(this, void 0, void 0, function () {
738
- var transport;
739
- return __generator(this, function (_a) {
740
- switch (_a.label) {
741
- case 0:
742
- transport = new stdio_js_1.StdioServerTransport();
743
- return [4 /*yield*/, server.connect(transport)];
744
- case 1:
745
- _a.sent();
746
- console.error("NPM Publish MCP server running on stdio");
747
- return [2 /*return*/];
748
- }
749
- });
750
- });
751
- }
752
- main().catch(function (error) {
753
- console.error("Fatal error:", error);
754
- process.exit(1);
755
- });