@vantageconnections/mcp 0.3.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -39,50 +39,272 @@ import { VantageClient, VantageApiError } from "@vantageconnections/sdk";
39
39
  * per-website repo and edit it directly.
40
40
  */
41
41
  const SERVER_INSTRUCTIONS = `
42
- You're operating the VantageConnections multi-tenant platform. Each
43
- "website" managed here is a *real, dedicated GitHub repo* that was
44
- forked from the Vantage Next.js template at provision time, plus a
45
- Vercel project deploying that repo, plus per-website integrations
46
- (OpenRouter key, Resend domain, Cal.com bookings, SEO automation).
47
-
48
- Mental model what these tools control vs. what they don't:
49
-
50
- CMS content (copy, headings, services, FAQ, business info):
51
- use vantage_content_save. The platform commits the new
52
- content/settings/site.json into the website's GitHub repo;
53
- Vercel redeploys; the live site updates in ~60s.
54
-
55
- Platform configuration (SEO tier, bookings, domains, env vars,
56
- feature flags, deployments):
57
- → the vantage_* tools handle every one of these. You should
58
- almost never need to bypass them.
59
-
60
- Visual design, layout, components, fonts, colors, page structure,
61
- new pages, custom code:
62
- → these live in the **website's own GitHub repo**, not the
63
- shared template. Call vantage_websites_repo to get the clone
64
- URL + recommended workflow, then use your shell/git tools
65
- to clone, edit, and push. Vercel auto-deploys on push to
66
- the default branch. You can edit anything in the repo the
67
- client owns it; nothing is shared with other sites.
68
-
69
- When in doubt about a website's health, start with:
70
- - vantage_websites_deployment (is the latest build READY/ERROR?)
71
- - vantage_websites_services (what's actually provisioned?)
72
- - vantage_websites_logs (what did each integration just do?)
73
- - vantage_websites_jobs (orchestrator step history)
74
-
75
- Diagnosing a stale or broken site: deployment first. If state is
76
- ERROR, the errorMessage tells you why fix in the repo, push, and
77
- the next deploy picks it up. If you can't tell why a config change
78
- isn't reflected on the live site, vantage_websites_redeploy forces
79
- a fresh build.
80
-
81
- Token scope: a client-scoped token can only touch its own website.
82
- An admin token can touch every website + create/delete sites.
83
- Check with vantage_whoami if behavior is surprising.
42
+ You're operating the VantageConnections multi-tenant platform — a
43
+ SaaS that hosts client websites for local businesses. Each "website"
44
+ managed here is a *real, dedicated GitHub repo* (forked from the
45
+ Vantage Next.js template at provision time), plus a Vercel project
46
+ deploying that repo, plus per-website integrations.
47
+
48
+ ═══ MENTAL MODEL ═══════════════════════════════════════════════════
49
+
50
+ A website on the platform is the sum of:
51
+ 1. A GitHub repo (the Next.js template, fully editable per-site)
52
+ 2. A Vercel project linked to that repo (auto-deploys on push)
53
+ 3. A CMS content document at content/settings/site.json (in the repo)
54
+ 4. Optional integrations toggled by feature flags:
55
+ openrouter (per-site AI key for the assistant widget)
56
+ resend (transactional email — requires a verified email domain)
57
+ bookings (Cal.com appointment widget)
58
+ seo (tiered SEO/GEO automation)
59
+ 5. Domains: 0+ site domains (Vercel) + 0+ email domains (Resend)
60
+ 6. Ownership: optional Client + Stripe subscription
61
+ 7. Provisioning jobs: orchestrator step history
62
+
63
+ Two surfaces matter to the agent:
64
+ - **The platform** (this MCP) controls everything *around* the site:
65
+ provisioning, integrations, deployments, billing, ownership.
66
+ - **The site's GitHub repo** is the editable surface for the
67
+ site's design, layout, components, custom code. Use git tools.
68
+
69
+ ═══ WHAT THE TOOLS DO VS. WHAT THE REPO DOES ══════════════════════
70
+
71
+ Content (copy, text):
72
+ vantage_content_save. Commits content/settings/site.json. Vercel
73
+ redeploys; live in ~60s.
74
+
75
+ Visual / design / layout / components / colors / fonts / new pages:
76
+ call vantage_websites_repo to get the clone URL, then clone,
77
+ edit, and push using your shell/git tools. Each repo is the
78
+ client's nothing is shared.
79
+
80
+ Images:
81
+ vantage_media_upload puts them in public/uploads/ in the repo
82
+ and returns a public URL. Reference from CMS fields or template
83
+ code.
84
+
85
+ Platform config (SEO tier, bookings, domains, features, deploys):
86
+ → the vantage_* tools cover all of it. You should rarely need
87
+ to edit the repo for these.
88
+
89
+ ═══ FEATURE-BY-FEATURE GUIDE ══════════════════════════════════════
90
+
91
+ ▸ CMS (content)
92
+ Two operations: vantage_content_get / vantage_content_save. The
93
+ document is JSON; the template renders from it (hero text, service
94
+ cards, FAQ, business info, etc.). Save passes the new object;
95
+ optional 'sha' enables optimistic-concurrency (pass the sha you
96
+ got from get). Saving commits to the repo and triggers a redeploy.
97
+
98
+ ▸ OpenRouter (AI assistant)
99
+ Per-website API key, minted at provision time if features.openrouter
100
+ was true (or later via vantage_websites_set_features). The secret
101
+ is stored in DynamoDB metadata + pushed to Vercel as
102
+ OPENROUTER_API_KEY (encrypted env var). The site's AI widget reads
103
+ that env. Logs (usage / limit / status) via vantage_websites_logs
104
+ service=openrouter.
105
+
106
+ ▸ Resend (transactional email)
107
+ More involved: it needs a *verified email domain*. The provisioning
108
+ step that creates the Resend resource itself is currently a stub;
109
+ the actual setup happens when you add an email-kind Domain. The
110
+ domain-add flow:
111
+ 1. vantage_domains_add with kind=email
112
+ 2. The API creates a Resend domain, auto-writes DKIM/SPF/DMARC
113
+ records into the parent Vercel-managed DNS zone if found
114
+ (otherwise returns DNS records the client must add manually).
115
+ 3. Mints a per-domain Resend API key.
116
+ 4. Pushes RESEND_API_KEY + RESEND_FROM_EMAIL (=noreply@domain) to
117
+ Vercel and triggers a redeploy so /api/contact picks them up.
118
+ Until verification completes, /api/contact returns 503. Verify
119
+ status with vantage_domains_verify; the Resend node on the
120
+ blueprint canvas reflects the live verification state.
121
+
122
+ ▸ Bookings (Cal.com)
123
+ Simple: vantage_bookings_enable with calUsername (+ optional
124
+ brandColor hex). Pushes NEXT_PUBLIC_CAL_USERNAME and
125
+ NEXT_PUBLIC_CAL_BRAND_COLOR to Vercel, redeploys. The booking
126
+ widget reads them client-side.
127
+
128
+ ▸ SEO / GEO (tiered automation)
129
+ Four tiers, strict supersets: essentials → growth → premium →
130
+ premium_plus. Enable / change with vantage_seo_set_tier. Each tier
131
+ unlocks more:
132
+ essentials monthly health scan, JSON-LD basics, env: NEXT_PUBLIC_SEO_TIER
133
+ growth weekly scans + AI alt-text + AI meta-description +
134
+ AI blog-draft + GEO probes (limited)
135
+ premium daily scans + AI local-page generator +
136
+ Google Search Console + more GEO probe quota
137
+ premium_plus competitor diff + maximum quotas
138
+
139
+ Read full state (capabilities, last scan, GEO probes, citations,
140
+ GSC, competitors) with vantage_seo_get. Force a scan with
141
+ vantage_seo_scan; trigger the full tier-cadence cron on-demand
142
+ with vantage_seo_run_cron (use force=true to bypass cadence
143
+ gating). The 6-hourly cron does this automatically.
144
+
145
+ AI tools are quota-gated by tier; calls return { used, limit }:
146
+ vantage_seo_ai_alt_text alt text for an image
147
+ vantage_seo_ai_meta_description page meta description
148
+ vantage_seo_ai_blog_draft ~700-word Markdown blog post
149
+ vantage_seo_ai_local_page city landing page (premium+)
150
+
151
+ GEO probe: vantage_seo_geo_probe sends a prompt to Perplexity (or
152
+ another search engine) and reports whether the site's primary
153
+ domain is cited.
154
+
155
+ Citations: a checklist of business directory listings. Get/set
156
+ with vantage_seo_citations_get / vantage_seo_set_citations.
157
+
158
+ Competitor tracking: vantage_seo_set_competitors with up to 10
159
+ https URLs (premium+).
160
+
161
+ Google Search Console: 3-step OAuth flow.
162
+ 1. vantage_seo_gsc_connect — returns an authUrl. Send the
163
+ client through it; Google redirects back to
164
+ /oauth/google/callback and we store the token.
165
+ 2. The cron now pulls GSC metrics at tier cadence.
166
+ 3. vantage_seo_gsc_refresh forces an immediate pull.
167
+ 4. vantage_seo_gsc_disconnect drops the token.
168
+
169
+ ▸ Domains
170
+ Two kinds: "site" (the public site — Vercel manages) and "email"
171
+ (Resend signing domain). Add with vantage_domains_add; remove
172
+ with vantage_domains_remove. Most flows:
173
+ Already-owned domain:
174
+ vantage_domains_add → get DNS records → client points them
175
+ → vantage_domains_verify (re-checks Vercel/Resend, returns
176
+ verified or pending with the records still missing)
177
+ Buy through Vercel:
178
+ vantage_domains_check_availability → confirm price
179
+ vantage_domains_buy with that price + contact info →
180
+ Vercel registers, delegates NS, attaches to project
181
+ (30–60s typical, sync call)
182
+ IMPORTANT: vantage_domains_buy.expectedPrice must match exactly
183
+ what check_availability returned, or Vercel rejects the order.
184
+
185
+ ▸ Client management + ownership
186
+ Clients self-register via Cognito signup (post-confirmation
187
+ Lambda creates the Client row). No "create client" endpoint —
188
+ use invitations.
189
+
190
+ Two ownership flows:
191
+ Existing client (already has a Vantage account):
192
+ 1. vantage_clients_list to find them
193
+ 2. vantage_websites_transfer with their clientId
194
+ → sets pendingClientId on the website
195
+ → their portal shows a "pending transfer" banner
196
+ → they pay via Stripe Checkout → ownership lands
197
+ vantage_websites_cancel_transfer revokes before payment.
198
+
199
+ Brand-new client (no Vantage account yet):
200
+ 1. vantage_websites_invite_client with their email
201
+ → magic-link email sent
202
+ → on signup, the invitation is auto-claimed, pendingClientId
203
+ is set, and Stripe Checkout flow begins
204
+ vantage_websites_cancel_invite revokes the invitation.
205
+ vantage_websites_invitations shows history (pending / accepted
206
+ / revoked / expired).
207
+
208
+ Release / churn:
209
+ vantage_websites_unassign cancels the Stripe sub + clears
210
+ clientId. Destructive on billing; confirm first.
211
+
212
+ GitHub access for clients:
213
+ vantage_websites_invite_collaborator invites the owning client
214
+ (requires client.githubUsername set) as a collaborator on the
215
+ site's repo — gives them push access for direct code edits.
216
+
217
+ ▸ Pricing & billing
218
+ vantage_websites_set_price sets monthlyPriceUsd. If a subscription
219
+ is active, the change applies on the next cycle with proration.
220
+ If not, it just updates the product price for future Checkout
221
+ sessions. billingStatus on the website tracks state
222
+ (pending_acceptance → active → past_due → canceled).
223
+
224
+ ▸ Blueprint canvas
225
+ vantage_blueprint_get returns the node/edge graph rendered in the
226
+ portal's website detail page. Node status is computed live: the
227
+ Vercel node reflects the most-recent deployment's state, the
228
+ Resend node reflects the email-domain's verification state, etc.
229
+ Useful for "what's actually wired up + what's broken?" at a glance.
230
+
231
+ ═══ DIAGNOSING A SITE ══════════════════════════════════════════════
232
+
233
+ Standard sweep when something is wrong:
234
+ 1. vantage_websites_deployment (READY / ERROR / BUILDING?
235
+ errorMessage on ERROR.)
236
+ 2. vantage_websites_services (what integrations exist?)
237
+ 3. vantage_websites_jobs (any failed orchestrator steps?)
238
+ 4. vantage_websites_logs service=… (per-integration recent activity)
239
+
240
+ Fixing a failed deploy:
241
+ - errorMessage tells you why. If it's a code issue, edit the repo
242
+ (vantage_websites_repo for the clone URL) and push.
243
+ - If a config / env-var change just isn't reflected, force
244
+ vantage_websites_redeploy.
245
+
246
+ Site says "verifying email" / contact form 503:
247
+ - vantage_domains_list → look at the email domain's status.
248
+ - vantage_domains_verify nudges Vercel/Resend; returns the still-
249
+ missing DNS records the client needs to add.
250
+
251
+ ═══ AUTH / SCOPE ═══════════════════════════════════════════════════
252
+
253
+ The MCP authenticates with a vc_pat_* personal access token. Tokens
254
+ are LONG-LIVED — they don't expire on a TTL; they only fail when
255
+ explicitly revoked. So if vantage_whoami starts 401-ing mid-session,
256
+ the token was revoked (likely accidentally — see below). The MCP
257
+ itself cannot recover from a 401; the user has to provide a fresh
258
+ token outside this session.
259
+
260
+ Token source, in priority order:
261
+ 1. VANTAGE_TOKEN env var passed to the MCP process.
262
+ This is the RECOMMENDED setup for Claude Code / Cursor /
263
+ Claude Desktop. Set it in the MCP server's "env" block so
264
+ there's no on-disk cache that can drift:
265
+
266
+ "vantage": {
267
+ "command": "npx",
268
+ "args": ["-y", "@vantageconnections/mcp@latest"],
269
+ "env": { "VANTAGE_TOKEN": "vc_pat_…" }
270
+ }
271
+
272
+ 2. ~/.vantage/credentials.json (written by the CLI's
273
+ 'vantage login' command). Convenient for interactive shells
274
+ but fragile in MCP contexts — easy to leave a stale token
275
+ behind that can't be refreshed without a process restart.
276
+
277
+ Tokens inherit the creator's role:
278
+ admin → every website, create/delete sites, manage clients,
279
+ transfer ownership, set prices, etc.
280
+ client → only their own website(s).
281
+
282
+ Manage your own tokens with vantage_me_list_api_keys /
283
+ _create_api_key / _revoke_api_key.
284
+
285
+ ⚠ Footgun: vantage_me_revoke_api_key will refuse, by default, to
286
+ revoke the token THIS MCP session is using — because that bricks
287
+ every subsequent call until the user manually swaps credentials.
288
+ Don't pass `, confirm;
289
+ ` to bypass unless you genuinely mean to
290
+ rotate the active token (e.g. after a leak), and warn the user
291
+ first.
292
+
293
+ ═══ CONVENTIONS ═══════════════════════════════════════════════════
294
+
295
+ - websiteId is a UUID; slug is the URL-safe name (e.g. "joes-plumbing").
296
+ - Most write operations are async on the server but the API call
297
+ is sync — it returns when the platform record is updated and
298
+ a job is queued. Watch with vantage_websites_jobs.
299
+ - Vercel auto-deploys on every push to the repo's default
300
+ branch. Most platform operations (feature flag changes, SEO
301
+ tier change, bookings enable, domain add) trigger a redeploy
302
+ for you. If you change something Vercel doesn't watch
303
+ (e.g. an env var via the dashboard), use vantage_websites_redeploy.
304
+ - All AI suggestion tools return { used, limit } so the agent
305
+ can check quota before retrying.
84
306
  `.trim();
85
- const server = new Server({ name: "vantage", version: "0.3.0" }, {
307
+ const server = new Server({ name: "vantage", version: "0.4.1" }, {
86
308
  capabilities: { tools: {} },
87
309
  instructions: SERVER_INSTRUCTIONS,
88
310
  });
@@ -455,6 +677,241 @@ const tools = [
455
677
  required: ["websiteId"],
456
678
  },
457
679
  },
680
+ /* ── Client / ownership / billing ─────────────────────────── */
681
+ {
682
+ name: "vantage_clients_list",
683
+ description: "List every client account on the platform. Returns id, name, email, contact phone, GitHub username, Stripe customer id. Admin-only.",
684
+ inputSchema: { type: "object", properties: {} },
685
+ },
686
+ {
687
+ name: "vantage_clients_get",
688
+ description: "Get one client by id.",
689
+ inputSchema: {
690
+ type: "object",
691
+ properties: { clientId: { type: "string" } },
692
+ required: ["clientId"],
693
+ },
694
+ },
695
+ {
696
+ name: "vantage_clients_websites",
697
+ description: "List every website owned by a given client.",
698
+ inputSchema: {
699
+ type: "object",
700
+ properties: { clientId: { type: "string" } },
701
+ required: ["clientId"],
702
+ },
703
+ },
704
+ {
705
+ name: "vantage_websites_transfer",
706
+ description: "Hand a website over to an *existing* client. Sets pendingClientId on the website; the client then pays via Stripe Checkout in their portal to finalize. For a brand-new client without a Vantage account yet, use vantage_websites_invite_client instead.",
707
+ inputSchema: {
708
+ type: "object",
709
+ properties: {
710
+ websiteId: { type: "string" },
711
+ clientId: { type: "string" },
712
+ },
713
+ required: ["websiteId", "clientId"],
714
+ },
715
+ },
716
+ {
717
+ name: "vantage_websites_cancel_transfer",
718
+ description: "Revoke a pending transfer before the client pays.",
719
+ inputSchema: {
720
+ type: "object",
721
+ properties: { websiteId: { type: "string" } },
722
+ required: ["websiteId"],
723
+ },
724
+ },
725
+ {
726
+ name: "vantage_websites_unassign",
727
+ description: "Release a website from its current owning client. Cancels the Stripe subscription + clears clientId. Use when a client churns or you want to re-park the site under house ownership. Destructive on the billing side — confirm first.",
728
+ inputSchema: {
729
+ type: "object",
730
+ properties: { websiteId: { type: "string" } },
731
+ required: ["websiteId"],
732
+ },
733
+ },
734
+ {
735
+ name: "vantage_websites_set_price",
736
+ description: "Set the monthly subscription price (whole USD). If a Stripe subscription is active, the change applies on the next cycle with proration. If not, just updates the product price for future Checkout sessions.",
737
+ inputSchema: {
738
+ type: "object",
739
+ properties: {
740
+ websiteId: { type: "string" },
741
+ monthlyPriceUsd: { type: "number", description: "Whole USD (e.g. 79)." },
742
+ },
743
+ required: ["websiteId", "monthlyPriceUsd"],
744
+ },
745
+ },
746
+ {
747
+ name: "vantage_websites_invite_client",
748
+ description: "Invite a brand-new client (no Vantage account yet) to claim a website. Sends a magic-link email. When the recipient signs up + claims the invitation, the platform sets pendingClientId on the website and the Stripe Checkout flow kicks off automatically. Refuses if the email already belongs to an existing client (use vantage_websites_transfer for those).",
749
+ inputSchema: {
750
+ type: "object",
751
+ properties: {
752
+ websiteId: { type: "string" },
753
+ email: { type: "string" },
754
+ },
755
+ required: ["websiteId", "email"],
756
+ },
757
+ },
758
+ {
759
+ name: "vantage_websites_cancel_invite",
760
+ description: "Revoke an open invitation (or an accepted-but-unpaid one) for a website.",
761
+ inputSchema: {
762
+ type: "object",
763
+ properties: { websiteId: { type: "string" } },
764
+ required: ["websiteId"],
765
+ },
766
+ },
767
+ {
768
+ name: "vantage_websites_invitations",
769
+ description: "Invitation history for a website, newest first. Includes pending / accepted / revoked / expired entries.",
770
+ inputSchema: {
771
+ type: "object",
772
+ properties: { websiteId: { type: "string" } },
773
+ required: ["websiteId"],
774
+ },
775
+ },
776
+ {
777
+ name: "vantage_websites_invite_collaborator",
778
+ description: "Invite the website's owning client as a GitHub repo collaborator (requires client.githubUsername set). Use this when a client asks to edit their site's code directly — gives them push access to the per-website repo.",
779
+ inputSchema: {
780
+ type: "object",
781
+ properties: { websiteId: { type: "string" } },
782
+ required: ["websiteId"],
783
+ },
784
+ },
785
+ /* ── Media (images in the website's repo) ─────────────────── */
786
+ {
787
+ name: "vantage_media_upload",
788
+ description: "Upload an image to the website's GitHub repo at public/uploads/{timestamp}-{filename}. Max 8 MB. Returns the public URL the live site serves it at + the in-repo path you can reference from CMS fields (e.g. as a hero image). Pass `contentBase64` as the raw base64 string (no data URI prefix).",
789
+ inputSchema: {
790
+ type: "object",
791
+ properties: {
792
+ websiteId: { type: "string" },
793
+ filename: { type: "string" },
794
+ contentBase64: { type: "string" },
795
+ contentType: { type: "string", description: "e.g. image/jpeg, image/png, image/webp" },
796
+ },
797
+ required: ["websiteId", "filename", "contentBase64"],
798
+ },
799
+ },
800
+ {
801
+ name: "vantage_media_delete",
802
+ description: "Delete a previously-uploaded image from the website's repo. `path` must be under `public/uploads/` (the API refuses anything else).",
803
+ inputSchema: {
804
+ type: "object",
805
+ properties: {
806
+ websiteId: { type: "string" },
807
+ path: { type: "string" },
808
+ },
809
+ required: ["websiteId", "path"],
810
+ },
811
+ },
812
+ /* ── Domains (purchase + verify + check) ──────────────────── */
813
+ {
814
+ name: "vantage_domains_check_availability",
815
+ description: "Check whether a domain can be registered through Vercel + what it costs. Returns price + period. Does NOT buy — use vantage_domains_buy for that.",
816
+ inputSchema: {
817
+ type: "object",
818
+ properties: { domain: { type: "string" } },
819
+ required: ["domain"],
820
+ },
821
+ },
822
+ {
823
+ name: "vantage_domains_buy",
824
+ description: "Buy a domain through Vercel and attach it to the website. The call polls until registration is final (30–60s typical) and automatically delegates nameservers to Vercel. The domain must currently be available; `expectedPrice` must match the price returned by vantage_domains_check_availability.",
825
+ inputSchema: {
826
+ type: "object",
827
+ properties: {
828
+ websiteId: { type: "string" },
829
+ domain: { type: "string" },
830
+ years: { type: "number" },
831
+ expectedPrice: { type: "number" },
832
+ autoRenew: { type: "boolean" },
833
+ contactInformation: {
834
+ type: "object",
835
+ properties: {
836
+ firstName: { type: "string" },
837
+ lastName: { type: "string" },
838
+ email: { type: "string" },
839
+ phone: { type: "string" },
840
+ country: { type: "string", description: "ISO 3166-1 alpha-2 (e.g. US)" },
841
+ address1: { type: "string" },
842
+ city: { type: "string" },
843
+ state: { type: "string" },
844
+ postalCode: { type: "string" },
845
+ orgName: { type: "string" },
846
+ },
847
+ required: [
848
+ "firstName",
849
+ "lastName",
850
+ "email",
851
+ "phone",
852
+ "country",
853
+ "address1",
854
+ "city",
855
+ "state",
856
+ "postalCode",
857
+ ],
858
+ },
859
+ },
860
+ required: [
861
+ "websiteId",
862
+ "domain",
863
+ "years",
864
+ "expectedPrice",
865
+ "contactInformation",
866
+ ],
867
+ },
868
+ },
869
+ {
870
+ name: "vantage_domains_verify",
871
+ description: "Re-check DNS propagation for a domain. Vercel and Resend verify lazily — call this to nudge them and refresh the stored status + remaining DNS records the client still needs to add.",
872
+ inputSchema: {
873
+ type: "object",
874
+ properties: {
875
+ websiteId: { type: "string" },
876
+ domain: { type: "string" },
877
+ },
878
+ required: ["websiteId", "domain"],
879
+ },
880
+ },
881
+ /* ── SEO additions: citations + cron trigger ──────────────── */
882
+ {
883
+ name: "vantage_seo_citations_get",
884
+ description: "Read the citations checklist — the directory-submission progress (Google Business Profile, Yelp, BBB, industry-specific listings, etc.). Each entry has a directoryId, status (pending|submitted|live|failed), optional listingUrl + note.",
885
+ inputSchema: {
886
+ type: "object",
887
+ properties: { websiteId: { type: "string" } },
888
+ required: ["websiteId"],
889
+ },
890
+ },
891
+ {
892
+ name: "vantage_seo_set_citations",
893
+ description: "Replace the citations checklist. Pass an array of entries with directoryId + status (+ optional listingUrl, note). Use vantage_seo_citations_get first to read the current state if you want to patch.",
894
+ inputSchema: {
895
+ type: "object",
896
+ properties: {
897
+ websiteId: { type: "string" },
898
+ citations: { type: "array", items: { type: "object" } },
899
+ },
900
+ required: ["websiteId", "citations"],
901
+ },
902
+ },
903
+ {
904
+ name: "vantage_seo_run_cron",
905
+ description: "Trigger the same tier-cadence work the 6-hourly SEO cron does, on demand for a single site. Pass `force: true` to bypass cadence gating (otherwise essentials = monthly, growth = weekly, premium+ = daily). Use after fixing a content issue and wanting an immediate re-scan.",
906
+ inputSchema: {
907
+ type: "object",
908
+ properties: {
909
+ websiteId: { type: "string" },
910
+ force: { type: "boolean" },
911
+ },
912
+ required: ["websiteId"],
913
+ },
914
+ },
458
915
  /* ── API key management (self-service) ──────────────────── */
459
916
  {
460
917
  name: "vantage_me_list_api_keys",
@@ -472,10 +929,16 @@ const tools = [
472
929
  },
473
930
  {
474
931
  name: "vantage_me_revoke_api_key",
475
- description: "Revoke an API key by keyId. Any session using it will start failing immediately.",
932
+ description: "Revoke an API key by keyId. Any session using it will start failing immediately. IMPORTANT: if you revoke the keyId that THIS MCP is currently authenticated with, every subsequent vantage_* call in this session will 401 until the user manually swaps credentials. The server refuses this by default — pass `confirm: true` only if you genuinely intend to rotate the active token (e.g. after a leak), and warn the user explicitly first.",
476
933
  inputSchema: {
477
934
  type: "object",
478
- properties: { keyId: { type: "string" } },
935
+ properties: {
936
+ keyId: { type: "string" },
937
+ confirm: {
938
+ type: "boolean",
939
+ description: "Set to true to bypass the self-revoke safety check. Only needed when revoking the active session's own token.",
940
+ },
941
+ },
479
942
  required: ["keyId"],
480
943
  },
481
944
  },
@@ -494,6 +957,60 @@ function asText(value) {
494
957
  ? value
495
958
  : JSON.stringify(value, null, 2);
496
959
  }
960
+ /**
961
+ * Format an error coming back from the SDK or our own validation.
962
+ * 401 / 403 in particular get expanded into a structured, actionable
963
+ * message — the previous "HTTP 401: Unauthorized" was a dead end:
964
+ * agents would retry, give up, or worse, recommend "try re-running
965
+ * vantage login" without a way for the user to discover the
966
+ * env-var pattern that avoids the cached-token failure mode entirely.
967
+ */
968
+ function formatError(err) {
969
+ if (err instanceof VantageApiError) {
970
+ if (err.status === 401) {
971
+ return [
972
+ "HTTP 401 — your VantageConnections API token is invalid (revoked, deleted, or never matched an active key).",
973
+ "",
974
+ "This MCP can't refresh its own credentials. The user has to do one of the following, then restart the MCP client:",
975
+ "",
976
+ " Option A (recommended for Claude Code / Cursor / Claude Desktop):",
977
+ " Add the token directly to the MCP server config so it's never",
978
+ " cached on disk. In .claude/settings.json (or your client's MCP",
979
+ " config), change the vantage block to:",
980
+ "",
981
+ ' "vantage": {',
982
+ ' "command": "npx",',
983
+ ' "args": ["-y", "@vantageconnections/mcp@latest"],',
984
+ ' "env": { "VANTAGE_TOKEN": "vc_pat_…" }',
985
+ " }",
986
+ "",
987
+ " Generate the vc_pat_ token at",
988
+ " https://vantageconnections.dev/admin/settings/api-keys",
989
+ " (or wherever the user's portal lives) and paste it above.",
990
+ "",
991
+ " Option B (shell-based):",
992
+ " Run `vantage login` in a terminal and paste a fresh PAT.",
993
+ " Then fully restart the MCP client (not just /mcp reconnect —",
994
+ " the cached credentials are reloaded by the same process).",
995
+ "",
996
+ "Do not call vantage_me_revoke_api_key — that's almost certainly what caused this in the first place (revoking the token currently in use).",
997
+ ].join("\n");
998
+ }
999
+ if (err.status === 403) {
1000
+ return [
1001
+ "HTTP 403 — the token is valid but doesn't have permission for this operation.",
1002
+ "",
1003
+ "Common causes:",
1004
+ " - A client-scoped token trying to touch another website or admin-only endpoints (creating sites, transferring ownership, deleting sites all require admin).",
1005
+ " - An admin-only feature gated by tier (some SEO AI tools are quota-gated by website tier).",
1006
+ "",
1007
+ "Run vantage_whoami to confirm the token's role + scope.",
1008
+ ].join("\n");
1009
+ }
1010
+ return `HTTP ${err.status}: ${err.message}`;
1011
+ }
1012
+ return err instanceof Error ? err.message : String(err);
1013
+ }
497
1014
  server.setRequestHandler(CallToolRequestSchema, async (req) => {
498
1015
  const name = req.params.name;
499
1016
  const args = (req.params.arguments ?? {});
@@ -505,11 +1022,7 @@ server.setRequestHandler(CallToolRequestSchema, async (req) => {
505
1022
  };
506
1023
  }
507
1024
  catch (err) {
508
- const message = err instanceof VantageApiError
509
- ? `HTTP ${err.status}: ${err.message}`
510
- : err instanceof Error
511
- ? err.message
512
- : String(err);
1025
+ const message = formatError(err);
513
1026
  return {
514
1027
  isError: true,
515
1028
  content: [{ type: "text", text: message }],
@@ -677,13 +1190,112 @@ async function dispatch(vc, name, args) {
677
1190
  return vc.seo.gscRefresh(str("websiteId"));
678
1191
  case "vantage_seo_gsc_disconnect":
679
1192
  return vc.seo.gscDisconnect(str("websiteId"));
1193
+ /* ── Client / ownership / billing ────────────────────────── */
1194
+ case "vantage_clients_list":
1195
+ return vc.clients.list();
1196
+ case "vantage_clients_get":
1197
+ return vc.clients.get(str("clientId"));
1198
+ case "vantage_clients_websites":
1199
+ return vc.clients.websites(str("clientId"));
1200
+ case "vantage_websites_transfer":
1201
+ return vc.websites.transfer(str("websiteId"), {
1202
+ clientId: str("clientId"),
1203
+ });
1204
+ case "vantage_websites_cancel_transfer":
1205
+ return vc.websites.cancelTransfer(str("websiteId"));
1206
+ case "vantage_websites_unassign":
1207
+ return vc.websites.unassign(str("websiteId"));
1208
+ case "vantage_websites_set_price": {
1209
+ const p = args.monthlyPriceUsd;
1210
+ if (typeof p !== "number" || !Number.isFinite(p)) {
1211
+ throw new Error("monthlyPriceUsd must be a number (whole USD).");
1212
+ }
1213
+ return vc.websites.setPrice(str("websiteId"), { monthlyPriceUsd: p });
1214
+ }
1215
+ case "vantage_websites_invite_client":
1216
+ return vc.websites.inviteClient(str("websiteId"), {
1217
+ email: str("email"),
1218
+ });
1219
+ case "vantage_websites_cancel_invite":
1220
+ return vc.websites.cancelInvite(str("websiteId"));
1221
+ case "vantage_websites_invitations":
1222
+ return vc.websites.invitations(str("websiteId"));
1223
+ case "vantage_websites_invite_collaborator":
1224
+ return vc.websites.inviteCollaborator(str("websiteId"));
1225
+ /* ── Media (images in the website's repo) ────────────────── */
1226
+ case "vantage_media_upload":
1227
+ return vc.media.upload(str("websiteId"), {
1228
+ filename: str("filename"),
1229
+ contentBase64: str("contentBase64"),
1230
+ contentType: strOpt("contentType"),
1231
+ });
1232
+ case "vantage_media_delete":
1233
+ return vc.media.delete(str("websiteId"), str("path"));
1234
+ /* ── Domains (purchase + verify + check) ─────────────────── */
1235
+ case "vantage_domains_check_availability":
1236
+ return vc.domains.checkAvailability(str("domain"));
1237
+ case "vantage_domains_buy": {
1238
+ const contact = args.contactInformation;
1239
+ if (!contact || typeof contact !== "object") {
1240
+ throw new Error("contactInformation object is required.");
1241
+ }
1242
+ const years = args.years;
1243
+ const expectedPrice = args.expectedPrice;
1244
+ if (typeof years !== "number" || typeof expectedPrice !== "number") {
1245
+ throw new Error("years and expectedPrice must be numbers.");
1246
+ }
1247
+ return vc.domains.buy(str("websiteId"), {
1248
+ domain: str("domain"),
1249
+ years,
1250
+ expectedPrice,
1251
+ autoRenew: typeof args.autoRenew === "boolean" ? args.autoRenew : undefined,
1252
+ contactInformation: contact,
1253
+ });
1254
+ }
1255
+ case "vantage_domains_verify":
1256
+ return vc.domains.verify(str("websiteId"), str("domain"));
1257
+ /* ── SEO additions: citations + cron trigger ─────────────── */
1258
+ case "vantage_seo_citations_get":
1259
+ return vc.seo.getCitations(str("websiteId"));
1260
+ case "vantage_seo_set_citations": {
1261
+ const cs = args.citations;
1262
+ if (!Array.isArray(cs)) {
1263
+ throw new Error("citations must be an array.");
1264
+ }
1265
+ return vc.seo.setCitations(str("websiteId"), cs);
1266
+ }
1267
+ case "vantage_seo_run_cron":
1268
+ return vc.seo.runCron(str("websiteId"), {
1269
+ force: typeof args.force === "boolean" ? args.force : undefined,
1270
+ });
680
1271
  /* ── API key management (self-service) ───────────────────── */
681
1272
  case "vantage_me_list_api_keys":
682
1273
  return vc.me.listApiKeys();
683
1274
  case "vantage_me_create_api_key":
684
1275
  return vc.me.createApiKey(str("name"));
685
- case "vantage_me_revoke_api_key":
686
- return vc.me.revokeApiKey(str("keyId"));
1276
+ case "vantage_me_revoke_api_key": {
1277
+ // Self-revoke guard. PAT format: `vc_pat_<keyId>_<secret>`.
1278
+ // Revoking the token we're currently authenticated with is
1279
+ // self-destructive — every subsequent call in this session
1280
+ // would 401, the user has to physically swap credentials to
1281
+ // recover, and (per the bug report that motivated this) it's
1282
+ // almost certainly the cause of "my MCP suddenly stopped
1283
+ // working" mysteries. Refuse unless the caller explicitly opts
1284
+ // in with `confirm: true`.
1285
+ const targetKeyId = str("keyId");
1286
+ const ourToken = (await loadCredentials())?.token ?? "";
1287
+ const ourKeyId = ourToken.startsWith("vc_pat_")
1288
+ ? ourToken.split("_")[2] ?? ""
1289
+ : "";
1290
+ if (ourKeyId && targetKeyId === ourKeyId && args.confirm !== true) {
1291
+ throw new Error([
1292
+ `Refusing to revoke keyId=${targetKeyId} — that's the token THIS MCP session is currently authenticated with.`,
1293
+ "Revoking it would break every subsequent vantage_* call until the user manually swaps credentials.",
1294
+ "If you really meant to do this (e.g. rotating after a leak), pass `confirm: true` as a second argument.",
1295
+ ].join(" "));
1296
+ }
1297
+ return vc.me.revokeApiKey(targetKeyId);
1298
+ }
687
1299
  default:
688
1300
  throw new Error(`Unknown tool: ${name}`);
689
1301
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,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;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEzE;;;;;;;;;;;GAWG;AACH,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAuPhB,EAAA,OAAa,CAAA;AAAA;;;;;;;;;;;;;;;;;CAiBxB,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EACrC;IACE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;IAC3B,YAAY,EAAE,mBAAmB;CAClC,CACF,CAAC;AAEF,sEAAsE;AAEtE;;;;;GAKG;AACH,MAAM,KAAK,GAAG;IACZ;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,4JAA4J;QAC9J,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,2HAA2H;QAC7H,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,8kBAA8kB;QAChlB,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,6eAA6e;QAC/e,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;gBAC9E,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,gGAAgG;iBACnG;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC7B;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;SAC3B;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,0NAA0N;QAC5N,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,gUAAgU;QAClU,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,seAAse;QACxe,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC3B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACxB;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;SACnC;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,iIAAiI;QACnI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,8GAA8G;QAChH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC/B,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;aACjE;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;SACvC;KACF;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EACT,kFAAkF;QACpF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,iGAAiG;QACnG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,CAAC;iBAC1D;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,wCAAwC;QACrD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,iIAAiI;QACnI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,+IAA+I;QACjJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC1B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;SAClC;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,0KAA0K;QAC5K,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,oDAAoD;QACjE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,uGAAuG;QACzG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;aAClD;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC;SAC1C;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,iIAAiI;QACnI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC3B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;SAClC;KACF;IAED,gEAAgE;IAChE;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EACT,0SAA0S;QAC5S,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,6NAA6N;QAC/N,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,+NAA+N;QACjO,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC5B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;SACnC;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,+NAA+N;QACjO,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,yMAAyM;QAC3M,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,+BAA+B;QACrC,WAAW,EACT,iOAAiO;QACnO,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;aAC5B;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IAED,gEAAgE;IAChE;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,mGAAmG;QACrG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,kFAAkF;iBACrF;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,uFAAuF;iBAC1F;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,kBAAkB,CAAC;SAC5C;KACF;IACD;QACE,IAAI,EAAE,iCAAiC;QACvC,WAAW,EACT,4GAA4G;QAC9G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACpC;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;SACrC;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,kKAAkK;QACpK,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAChC;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;SACjC;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,uLAAuL;QACzL,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACxB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAChC,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACpC;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;KACF;IACD;QACE,IAAI,EAAE,6BAA6B;QACnC,WAAW,EACT,2GAA2G;QAC7G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,2PAA2P;QAC7P,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,gIAAgI;QAClI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EACT,qFAAqF;QACvF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IAED,iEAAiE;IACjE;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,qIAAqI;QACvI,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC5C,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,6CAA6C;QAC1D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC5C,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,2PAA2P;QAC7P,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC7B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;SACpC;KACF;IACD;QACE,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,mDAAmD;QAChE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,uOAAuO;QACzO,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EACT,+MAA+M;QACjN,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;aACzE;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC;SAC3C;KACF;IACD;QACE,IAAI,EAAE,gCAAgC;QACtC,WAAW,EACT,oWAAoW;QACtW,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC1B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;SACjC;KACF;IACD;QACE,IAAI,EAAE,gCAAgC;QACtC,WAAW,EACT,0EAA0E;QAC5E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,8BAA8B;QACpC,WAAW,EACT,0GAA0G;QAC5G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,sCAAsC;QAC5C,WAAW,EACT,yNAAyN;QAC3N,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IAED,iEAAiE;IACjE;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,qSAAqS;QACvS,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC5B,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACjC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;aACvF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,eAAe,CAAC;SACrD;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,qIAAqI;QACvI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aACzB;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC;SAChC;KACF;IAED,iEAAiE;IACjE;QACE,IAAI,EAAE,oCAAoC;QAC1C,WAAW,EACT,mJAAmJ;QACrJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC1C,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,uSAAuS;QACzS,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACjC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;gBAC9B,kBAAkB,EAAE;oBAClB,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;wBACxE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC5B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;qBAC5B;oBACD,QAAQ,EAAE;wBACR,WAAW;wBACX,UAAU;wBACV,OAAO;wBACP,OAAO;wBACP,SAAS;wBACT,UAAU;wBACV,MAAM;wBACN,OAAO;wBACP,YAAY;qBACb;iBACF;aACF;YACD,QAAQ,EAAE;gBACR,WAAW;gBACX,QAAQ;gBACR,OAAO;gBACP,eAAe;gBACf,oBAAoB;aACrB;SACF;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACT,uLAAuL;QACzL,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;aAC3B;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;SAClC;KACF;IAED,iEAAiE;IACjE;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,4OAA4O;QAC9O,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YAC7C,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,wMAAwM;QAC1M,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;aACxD;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;SACrC;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,iRAAiR;QACnR,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;aAC3B;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IAED,+DAA+D;IAC/D;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EACT,iJAAiJ;QACnJ,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;KAChD;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,mIAAmI;QACrI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;YACxC,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;KACF;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACT,mbAAmb;QACrb,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,OAAO,EAAE;oBACP,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,+GAA+G;iBAClH;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAE1E,sEAAsE;AAEtE,KAAK,UAAU,WAAW;IACxB,MAAM,KAAK,GAAG,MAAM,eAAe,EAAE,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,sHAAsH,CACvH,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,GAAY;IAC/B,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO;gBACL,6GAA6G;gBAC7G,EAAE;gBACF,mHAAmH;gBACnH,EAAE;gBACF,qEAAqE;gBACrE,mEAAmE;gBACnE,oEAAoE;gBACpE,2CAA2C;gBAC3C,EAAE;gBACF,oBAAoB;gBACpB,2BAA2B;gBAC3B,2DAA2D;gBAC3D,gDAAgD;gBAChD,SAAS;gBACT,EAAE;gBACF,mCAAmC;gBACnC,4DAA4D;gBAC5D,+DAA+D;gBAC/D,EAAE;gBACF,2BAA2B;gBAC3B,8DAA8D;gBAC9D,kEAAkE;gBAClE,+DAA+D;gBAC/D,EAAE;gBACF,4IAA4I;aAC7I,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO;gBACL,+EAA+E;gBAC/E,EAAE;gBACF,gBAAgB;gBAChB,+JAA+J;gBAC/J,8FAA8F;gBAC9F,EAAE;gBACF,yDAAyD;aAC1D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QACD,OAAO,QAAQ,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;IAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC7B,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAA4B,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;SAClD,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,QAAQ,CACrB,EAAiB,EACjB,IAAY,EACZ,IAA6B;IAE7B,SAAS,GAAG,CAAC,GAAW;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,SAAS,MAAM,CAAC,GAAW;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IACD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,gBAAgB;YACnB,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,uBAAuB;YAC1B,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC5B,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3C,KAAK,uBAAuB,CAAC,CAAC,CAAC;YAC7B,6DAA6D;YAC7D,8DAA8D;YAC9D,4DAA4D;YAC5D,sDAAsD;YACtD,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;YACnC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChD,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC/B,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;aAC3B,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,WAAW,SAAS,2FAA2F,CAChH,CAAC;YACJ,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC;YACvC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,IAAI,sBAAsB,YAAY,EAAE,CAAC;YAC3E,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAGlC,CAAC;YACF,OAAO;gBACL,SAAS;gBACT,WAAW,EAAE,OAAO,CAAC,IAAI;gBACzB,YAAY;gBACZ,OAAO;gBACP,QAAQ,EAAE,GAAG,OAAO,MAAM;gBAC1B,WAAW,EAAE,kBAAkB,YAAY,MAAM;gBACjD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,MAAM;gBAC3C,gBAAgB,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI;gBAC7C,OAAO,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI;gBACpC,QAAQ,EAAE;oBACR,iBAAiB,YAAY,sBAAsB,OAAO,MAAM;oBAChE,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE;oBAClD,wEAAwE;oBACxE,gGAAgG;oBAChG,4DAA4D,IAAI,CAAC,aAAa,IAAI,MAAM,EAAE;oBAC1F,0EAA0E;iBAC3E,CAAC,IAAI,CAAC,IAAI,CAAC;gBACZ,KAAK,EACH,sSAAsS;aACzS,CAAC;QACJ,CAAC;QACD,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACxB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;gBACjB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;gBACjB,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;gBAC5B,QAAQ,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE;aAC5E,CAAC,CAAC;QACL,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9C,KAAK,qBAAqB;YACxB,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1C,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CACpB,GAAG,CAAC,WAAW,CAAC,EAChB,IAAI,CAAC,OAAkC,EACvC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CACtB,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC5C,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC1C,WAAW,EAAE,GAAG,CAAC,aAAa,CAAC;gBAC/B,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC;aACjC,CAAC,CAAC;QACL,KAAK,0BAA0B;YAC7B,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAU,CAAC,CAAC;QAChE,KAAK,qBAAqB;YACxB,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC1C,KAAK,kBAAkB;YACrB,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACvC,KAAK,uBAAuB;YAC1B,OAAO,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACvC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;gBACrB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;aACvB,CAAC,CAAC;QACL,KAAK,iBAAiB;YACpB,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACtC,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3C,KAAK,qBAAqB;YACxB,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACtC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;gBACrB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAqB;aACtC,CAAC,CAAC;QACL,KAAK,wBAAwB;YAC3B,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE5D,gEAAgE;QAChE,KAAK,6BAA6B;YAChC,OAAO,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAClD,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,KAAK,uBAAuB;YAC1B,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,KAAK,uBAAuB;YAC1B,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC5C,KAAK,+BAA+B,CAAC,CAAC,CAAC;YACrC,MAAM,KAAK,GAGN,EAAE,CAAC;YACR,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,SAAS;gBAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC7E,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACjE,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACb,qDAAqD,CACtD,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;QAED,gEAAgE;QAChE,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACtC,gBAAgB,EAAE,GAAG,CAAC,kBAAkB,CAAC;gBACzC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;aAC3B,CAAC,CAAC;QACL,KAAK,iCAAiC;YACpC,OAAO,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC9C,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;gBAC5B,SAAS,EAAE,GAAG,CAAC,WAAW,CAAC;gBAC3B,eAAe,EAAE,MAAM,CAAC,iBAAiB,CAAC;aAC3C,CAAC,CAAC;QACL,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACxC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;gBACnB,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC;gBAC5B,WAAW,EACT,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;aACtE,CAAC,CAAC;QACL,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACxC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC;gBACjB,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC;gBACpC,eAAe,EAAE,MAAM,CAAC,iBAAiB,CAAC;aAC3C,CAAC,CAAC;QACL,KAAK,6BAA6B,CAAC,CAAC,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,IAAgB,CAAC,CAAC;QACnE,CAAC;QACD,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC7C,KAAK,yBAAyB;YAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC7C,KAAK,4BAA4B;YAC/B,OAAO,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAEhD,gEAAgE;QAChE,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3B,KAAK,qBAAqB;YACxB,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QACzC,KAAK,0BAA0B;YAC7B,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9C,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC5C,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC;aAC1B,CAAC,CAAC;QACL,KAAK,kCAAkC;YACrC,OAAO,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,KAAK,4BAA4B,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;YAC/B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,KAAK,gCAAgC;YACnC,OAAO,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAChD,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC;aACpB,CAAC,CAAC;QACL,KAAK,gCAAgC;YACnC,OAAO,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACpD,KAAK,8BAA8B;YACjC,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QACnD,KAAK,sCAAsC;YACzC,OAAO,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAE1D,gEAAgE;QAChE,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACvC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC;gBACzB,aAAa,EAAE,GAAG,CAAC,eAAe,CAAC;gBACnC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC;aACnC,CAAC,CAAC;QACL,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAExD,gEAAgE;QAChE,KAAK,oCAAoC;YACvC,OAAO,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrD,KAAK,qBAAqB,CAAC,CAAC,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC;YACxC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACtC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;gBACrB,KAAK;gBACL,aAAa;gBACb,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;gBAC3E,kBAAkB,EAAE,OAEM;aAC3B,CAAC,CAAC;QACL,CAAC;QACD,KAAK,wBAAwB;YAC3B,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE5D,gEAAgE;QAChE,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,KAAK,2BAA2B,CAAC,CAAC,CAAC;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,CAAC,YAAY,CACxB,GAAG,CAAC,WAAW,CAAC,EAChB,EAA+C,CAChD,CAAC;QACJ,CAAC;QACD,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACtC,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAChE,CAAC,CAAC;QAEL,gEAAgE;QAChE,KAAK,0BAA0B;YAC7B,OAAO,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7B,KAAK,2BAA2B;YAC9B,OAAO,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACzC,KAAK,2BAA2B,CAAC,CAAC,CAAC;YACjC,4DAA4D;YAC5D,2DAA2D;YAC3D,2DAA2D;YAC3D,4DAA4D;YAC5D,6DAA6D;YAC7D,yDAAyD;YACzD,+DAA+D;YAC/D,2BAA2B;YAC3B,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,CAAC,MAAM,eAAe,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC7C,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC9B,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,QAAQ,IAAI,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CACb;oBACE,4BAA4B,WAAW,uEAAuE;oBAC9G,oGAAoG;oBACpG,yGAAyG;iBAC1G,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC;QAED;YACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vantageconnections/mcp",
3
- "version": "0.3.0",
3
+ "version": "0.4.1",
4
4
  "description": "Model Context Protocol server for VantageConnections — exposes platform actions as tools for Claude Code, Cursor, and other AI coding assistants.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,7 +15,7 @@
15
15
  },
16
16
  "dependencies": {
17
17
  "@modelcontextprotocol/sdk": "^1.0.0",
18
- "@vantageconnections/sdk": "0.2.0",
18
+ "@vantageconnections/sdk": "0.3.0",
19
19
  "@vantageconnections/shared": "0.2.0"
20
20
  },
21
21
  "devDependencies": {