sc-elections-mcp 0.5.1 → 0.7.0

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/README.md CHANGED
@@ -13,11 +13,25 @@ MCP server for South Carolina elections data. Combines two public data sources i
13
13
 
14
14
  ## Installation
15
15
 
16
+ ### Claude Desktop (easiest)
17
+
18
+ 1. Download **[sc-elections-mcp.mcpb](https://github.com/asreynolds1000/sc-elections-mcp/releases/latest/download/sc-elections-mcp.mcpb)**
19
+ 2. Double-click the file
20
+ 3. Click **Install**
21
+
22
+ That's it. Try asking: *"Who has filed to run for Governor in South Carolina?"*
23
+
24
+ ### Claude Code
25
+
16
26
  ```bash
17
- # Claude Code
18
27
  claude mcp add sc-elections -- npx -y sc-elections-mcp
28
+ ```
29
+
30
+ ### Manual config
31
+
32
+ Add to your `claude_desktop_config.json`:
19
33
 
20
- # Claude Desktop — add to claude_desktop_config.json
34
+ ```json
21
35
  {
22
36
  "mcpServers": {
23
37
  "sc-elections": {
@@ -1,10 +1,27 @@
1
1
  import type { EthicsFiler, FilerProfile, CampaignSummary, CampaignReport, CampaignReportDetails, CampaignContribution, CampaignExpenditure, CampaignContext, ContributionSummary, ExpenditureSummary, NormalizedOffice, GroupedFiler, CrossSearchExpenditure, CrossSearchContribution, SeiReport, SeiDetails, OfficeFilerResult } from '../types.js';
2
2
  export declare function searchFilers(name: string): Promise<EthicsFiler[]>;
3
+ /**
4
+ * Resolve a candidate by first + last name, with optional county/city hint for disambiguation.
5
+ * Returns the candidateFilerId for the best match, or an error message.
6
+ */
7
+ export declare function resolveByName(firstName: string, lastName: string, county?: string): Promise<{
8
+ candidateFilerId: number;
9
+ candidateName: string;
10
+ } | {
11
+ error: string;
12
+ }>;
3
13
  export declare function getFilerProfile(candidateFilerId: number, seiFilerId: number): Promise<FilerProfile>;
4
14
  export declare function dedupeKey(filer: EthicsFiler): string;
5
15
  /** @internal — exported for testing */
6
16
  export declare function isTestAccount(filer: EthicsFiler): boolean;
17
+ /**
18
+ * Token-based office name matching. All query tokens must appear as exact words
19
+ * in at least one comma-separated segment of the text. "Other Office" segments
20
+ * are ignored. Order-independent: "House District 13" matches "District 13 House".
21
+ */
22
+ export declare function tokenMatch(query: string, text: string): boolean;
7
23
  export declare function searchFilersByOffice(officeName: string, activeSince?: number): Promise<OfficeFilerResult>;
24
+ export declare function searchFilersByCounty(countyName: string, activeSince?: number): Promise<OfficeFilerResult>;
8
25
  export declare function groupFilersByPerson(filers: EthicsFiler[]): GroupedFiler[];
9
26
  export declare function listOfficeNames(keyword?: string): Promise<string[]>;
10
27
  /** Try to resolve a candidate's display name when summary.name is null */
@@ -16,9 +33,19 @@ export declare function getContributions(campaignId: number, candidateFilerId: n
16
33
  export declare function getExpenditures(campaignId: number, candidateFilerId: number): Promise<CampaignExpenditure[]>;
17
34
  export declare function cachedGetCampaignSummary(candidateFilerId: number): Promise<CampaignSummary>;
18
35
  export declare function normalizeOfficeName(raw: string): NormalizedOffice;
36
+ /**
37
+ * Enrich an array of GroupedFiler objects with campaign data (balance, status, campaignId).
38
+ * Mutates in-place — callers must pass the same reference they later read from.
39
+ * Batches 6 at a time, capped at 50 total enrichments.
40
+ * @param officeMatcher — if provided, tokenMatch-filters campaign offices before picking best match (list_filers_by_office behavior). When omitted, picks any open campaign or the first one.
41
+ * @returns true if enrichment was capped (grouped.length > 50)
42
+ * @internal — exported for testing
43
+ */
44
+ export declare function enrichGroupedFilersWithCampaignData(grouped: GroupedFiler[], officeMatcher?: string): Promise<boolean>;
19
45
  export declare function resolveCampaignContext(summary: CampaignSummary, candidateFilerId: number, campaignId?: number, officeHint?: string, candidateNameOverride?: string): {
20
46
  context: CampaignContext;
21
47
  resolvedCampaignId: number;
48
+ resolvedFilerId: number;
22
49
  } | {
23
50
  error: string;
24
51
  };
@@ -1,3 +1,4 @@
1
+ import { extractCountyFromAddress, extractCountyFromOfficeName } from '../data/sc-counties.js';
1
2
  const BASE = 'https://ethicsfiling.sc.gov/api';
2
3
  const HEADERS = {
3
4
  'Content-Type': 'application/json',
@@ -28,6 +29,57 @@ export async function searchFilers(name) {
28
29
  populateFilerIdCache(results);
29
30
  return results;
30
31
  }
32
+ /**
33
+ * Resolve a candidate by first + last name, with optional county/city hint for disambiguation.
34
+ * Returns the candidateFilerId for the best match, or an error message.
35
+ */
36
+ export async function resolveByName(firstName, lastName, county) {
37
+ const results = await searchFilers(lastName);
38
+ // Only exact last-name matches with a valid candidateFilerId
39
+ const candidates = results.filter(r => r.percentageAccuracy === 1 && r.candidateFilerId > 0);
40
+ // Match first name against "Last, First ..." format
41
+ const firstLower = firstName.toLowerCase();
42
+ const nameMatches = candidates.filter(r => {
43
+ const parts = r.candidate.split(',');
44
+ if (parts.length < 2)
45
+ return false;
46
+ const first = parts[1].trim().split(/\s+/)[0].toLowerCase();
47
+ return first === firstLower || first.startsWith(firstLower) || firstLower.startsWith(first);
48
+ });
49
+ if (nameMatches.length === 0) {
50
+ return { error: `No filer found matching "${firstName} ${lastName}". Try searching by last name only with search_filers.` };
51
+ }
52
+ // Deduplicate by universalUserId (consolidated accounts)
53
+ const seen = new Set();
54
+ const unique = nameMatches.filter(r => {
55
+ const key = r.universalUserId > 0 ? r.universalUserId : r.candidateFilerId;
56
+ if (seen.has(key))
57
+ return false;
58
+ seen.add(key);
59
+ return true;
60
+ });
61
+ if (unique.length === 1) {
62
+ return { candidateFilerId: unique[0].candidateFilerId, candidateName: unique[0].candidate };
63
+ }
64
+ // Multiple matches — try county/city disambiguation
65
+ if (county) {
66
+ const countyLower = county.toLowerCase();
67
+ const countyMatches = unique.filter(r => r.address.toLowerCase().includes(countyLower) ||
68
+ r.officeName.toLowerCase().includes(countyLower));
69
+ if (countyMatches.length === 1) {
70
+ return { candidateFilerId: countyMatches[0].candidateFilerId, candidateName: countyMatches[0].candidate };
71
+ }
72
+ if (countyMatches.length > 1) {
73
+ return pickMostRecent(countyMatches);
74
+ }
75
+ }
76
+ // No county or county didn't help — pick most recently active
77
+ return pickMostRecent(unique);
78
+ }
79
+ function pickMostRecent(filers) {
80
+ const sorted = [...filers].sort((a, b) => parseDate(b.lastSubmission) - parseDate(a.lastSubmission));
81
+ return { candidateFilerId: sorted[0].candidateFilerId, candidateName: sorted[0].candidate };
82
+ }
31
83
  export async function getFilerProfile(candidateFilerId, seiFilerId) {
32
84
  const response = await fetch(`${BASE}/Candidate/Campaign/Get/Personal/Profile`, {
33
85
  method: 'POST',
@@ -131,11 +183,33 @@ async function sweepAllFilers() {
131
183
  sweepCache = { allResults, failed, timestamp: Date.now() };
132
184
  return { allResults, failed };
133
185
  }
134
- export async function searchFilersByOffice(officeName, activeSince) {
135
- const { allResults, failed } = await sweepAllFilers();
136
- // Filter by office name (case-insensitive partial match)
137
- const needle = officeName.toLowerCase();
138
- const matching = allResults.filter(f => f.officeName?.toLowerCase().includes(needle));
186
+ /**
187
+ * Token-based office name matching. All query tokens must appear as exact words
188
+ * in at least one comma-separated segment of the text. "Other Office" segments
189
+ * are ignored. Order-independent: "House District 13" matches "District 13 House".
190
+ */
191
+ export function tokenMatch(query, text) {
192
+ if (!query || !text)
193
+ return false;
194
+ const queryTokens = query.toLowerCase().split(/\s+/).filter(Boolean);
195
+ if (queryTokens.length === 0)
196
+ return false;
197
+ // Split on commas into segments, filter out standalone "Other Office"
198
+ const segments = text.split(',')
199
+ .map(s => s.trim().toLowerCase())
200
+ .filter(s => s && s !== 'other office');
201
+ for (const segment of segments) {
202
+ const segmentWords = segment.split(/\s+/).filter(Boolean);
203
+ if (queryTokens.every(token => segmentWords.includes(token))) {
204
+ return true;
205
+ }
206
+ }
207
+ return false;
208
+ }
209
+ /**
210
+ * Shared helper: filter by activeSince year, deduplicate, and sort by most recent.
211
+ */
212
+ function filterAndDedupFilers(matching, activeSince) {
139
213
  // Filter by active_since year
140
214
  const activeSinceFiltered = activeSince
141
215
  ? matching.filter(f => {
@@ -155,7 +229,29 @@ export async function searchFilersByOffice(officeName, activeSince) {
155
229
  }
156
230
  }
157
231
  // Sort by most recent submission descending
158
- const filers = [...seen.values()].sort((a, b) => parseDate(b.lastSubmission) - parseDate(a.lastSubmission));
232
+ return [...seen.values()].sort((a, b) => parseDate(b.lastSubmission) - parseDate(a.lastSubmission));
233
+ }
234
+ export async function searchFilersByOffice(officeName, activeSince) {
235
+ const { allResults, failed } = await sweepAllFilers();
236
+ const matching = allResults.filter(f => tokenMatch(officeName, f.officeName || ''));
237
+ const filers = filterAndDedupFilers(matching, activeSince);
238
+ return { filers, totalSearched: 26, totalFailed: failed };
239
+ }
240
+ export async function searchFilersByCounty(countyName, activeSince) {
241
+ const { allResults, failed } = await sweepAllFilers();
242
+ const countyLower = countyName.toLowerCase();
243
+ const matching = allResults.filter(f => {
244
+ // Match 1: county name in office name (word-boundary)
245
+ const officeCounty = extractCountyFromOfficeName(f.officeName || '');
246
+ if (officeCounty?.toLowerCase() === countyLower)
247
+ return true;
248
+ // Match 2: city in address maps to this county
249
+ const addressCounty = extractCountyFromAddress(f.address || '');
250
+ if (addressCounty?.toLowerCase() === countyLower)
251
+ return true;
252
+ return false;
253
+ });
254
+ const filers = filterAndDedupFilers(matching, activeSince);
159
255
  return { filers, totalSearched: 26, totalFailed: failed };
160
256
  }
161
257
  export function groupFilersByPerson(filers) {
@@ -283,6 +379,13 @@ export async function cachedGetCampaignSummary(candidateFilerId) {
283
379
  campaignSummaryCache.set(candidateFilerId, { data, timestamp: Date.now() });
284
380
  return data;
285
381
  }
382
+ // Used by normalizeOfficeName (and enrichGroupedFilersWithCampaignData via normalizeOfficeName)
383
+ const STATE_BODIES = new Set(['Governor', 'Lt Governor', 'Attorney General', 'Secretary of State',
384
+ 'Comptroller General', 'State Treasurer', 'Superintendent of Education', 'State House',
385
+ 'State Senate', 'Solicitor']);
386
+ const COUNTY_BODIES = new Set(['County Council', 'Sheriff', 'Probate Judge', 'Auditor',
387
+ 'Coroner', 'Clerk of Court', 'School Board']);
388
+ const CITY_BODIES = new Set(['City Council', 'Mayor']);
286
389
  export function normalizeOfficeName(raw) {
287
390
  if (!raw)
288
391
  return { raw, normalized: raw };
@@ -323,6 +426,16 @@ export function normalizeOfficeName(raw) {
323
426
  break;
324
427
  }
325
428
  }
429
+ // Compute jurisdiction tier from body
430
+ let jurisdictionTier;
431
+ if (body) {
432
+ if (STATE_BODIES.has(body))
433
+ jurisdictionTier = 'state';
434
+ else if (COUNTY_BODIES.has(body))
435
+ jurisdictionTier = 'county';
436
+ else if (CITY_BODIES.has(body))
437
+ jurisdictionTier = 'city';
438
+ }
326
439
  // Build normalized name
327
440
  let normalized = raw
328
441
  .replace(/^Other\s+Office,?\s*/i, '')
@@ -341,7 +454,7 @@ export function normalizeOfficeName(raw) {
341
454
  else if (!body) {
342
455
  normalized = raw;
343
456
  }
344
- return { raw, normalized, district, body };
457
+ return { raw, normalized, district, body, jurisdictionTier };
345
458
  }
346
459
  function extractDistrictNumber(text) {
347
460
  const m = text.match(/District\s+(\d+)/i) ||
@@ -349,6 +462,45 @@ function extractDistrictNumber(text) {
349
462
  text.match(/Seat\s+(\d+)/i);
350
463
  return m?.[1];
351
464
  }
465
+ /**
466
+ * Enrich an array of GroupedFiler objects with campaign data (balance, status, campaignId).
467
+ * Mutates in-place — callers must pass the same reference they later read from.
468
+ * Batches 6 at a time, capped at 50 total enrichments.
469
+ * @param officeMatcher — if provided, tokenMatch-filters campaign offices before picking best match (list_filers_by_office behavior). When omitted, picks any open campaign or the first one.
470
+ * @returns true if enrichment was capped (grouped.length > 50)
471
+ * @internal — exported for testing
472
+ */
473
+ export async function enrichGroupedFilersWithCampaignData(grouped, officeMatcher) {
474
+ const ENRICH_CAP = 50;
475
+ const BATCH_SIZE = 6;
476
+ const toEnrich = grouped.slice(0, ENRICH_CAP);
477
+ for (let i = 0; i < toEnrich.length; i += BATCH_SIZE) {
478
+ const batch = toEnrich.slice(i, i + BATCH_SIZE);
479
+ await Promise.allSettled(batch.map(async (gf) => {
480
+ const summary = await cachedGetCampaignSummary(gf.candidateFilerId);
481
+ const allOffices = [
482
+ ...summary.openReports.map(r => ({ ...r, status: 'open' })),
483
+ ...summary.closedReports.map(r => ({ ...r, status: 'closed' })),
484
+ ];
485
+ gf.normalizedOffice = normalizeOfficeName(gf.offices[0]?.officeName || '');
486
+ let match;
487
+ if (officeMatcher) {
488
+ const matches = allOffices.filter(o => tokenMatch(officeMatcher, o.officeName));
489
+ match = matches.find(o => o.status === 'open') || matches[0];
490
+ }
491
+ else {
492
+ match = allOffices.find(o => o.status === 'open') || allOffices[0];
493
+ }
494
+ if (match) {
495
+ gf.primaryOfficeName = match.officeName;
496
+ gf.campaignStatus = match.status;
497
+ gf.balance = match.balance;
498
+ gf.campaignId = match.officeId;
499
+ }
500
+ }));
501
+ }
502
+ return grouped.length > ENRICH_CAP;
503
+ }
352
504
  export function resolveCampaignContext(summary, candidateFilerId, campaignId, officeHint, candidateNameOverride) {
353
505
  const allOffices = [
354
506
  ...summary.openReports.map(r => ({ ...r, status: 'open' })),
@@ -361,10 +513,11 @@ export function resolveCampaignContext(summary, candidateFilerId, campaignId, of
361
513
  candidateName,
362
514
  officeName: office.officeName,
363
515
  campaignId: office.officeId,
364
- candidateFilerId,
516
+ candidateFilerId: office.filerId,
365
517
  campaignStatus: office.status,
366
518
  },
367
519
  resolvedCampaignId: office.officeId,
520
+ resolvedFilerId: office.filerId,
368
521
  };
369
522
  }
370
523
  function officeListError(offices) {
@@ -1 +1 @@
1
- {"version":3,"file":"ethics-client.js","sourceRoot":"","sources":["../../src/api/ethics-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ethics-client.js","sourceRoot":"","sources":["../../src/api/ethics-client.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAA;AAE9F,MAAM,IAAI,GAAG,iCAAiC,CAAA;AAE9C,MAAM,OAAO,GAAG;IACd,cAAc,EAAE,kBAAkB;IAClC,QAAQ,EAAE,kBAAkB;CAC7B,CAAA;AAED,+DAA+D;AAC/D,kBAAkB;AAClB,+DAA+D;AAE/D,uEAAuE;AACvE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;AAE9C,SAAS,oBAAoB,CAAC,MAAqB;IACjD,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACvC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,0CAA0C,EAAE;QAC9E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;KAClC,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAA;IACjC,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC7B,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAiB,EACjB,QAAgB,EAChB,MAAe;IAEf,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAA;IAE5C,6DAA6D;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACpC,CAAC,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,CAAC,gBAAgB,GAAG,CAAC,CACrD,CAAA;IAED,oDAAoD;IACpD,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;IAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACxC,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAClC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;QAC3D,OAAO,KAAK,KAAK,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,4BAA4B,SAAS,IAAI,QAAQ,wDAAwD,EAAE,CAAA;IAC7H,CAAC;IAED,yDAAyD;IACzD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACpC,MAAM,GAAG,GAAG,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAA;QAC1E,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;IAC7F,CAAC;IAED,oDAAoD;IACpD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QACxC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACtC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC7C,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CACjD,CAAA;QACD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAC3G,CAAC;QACD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,cAAc,CAAC,aAAa,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,OAAO,cAAc,CAAC,MAAM,CAAC,CAAA;AAC/B,CAAC;AAED,SAAS,cAAc,CAAC,MAAqB;IAC3C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;IACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;AAC7F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,gBAAwB,EACxB,UAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,0CAA0C,EAAE;QAC9E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC;KACvD,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAC/E,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,OAAO;QAAE,OAAO,CAAC,CAAA;IACtB,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7C,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAA;AACpD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAkB;IAC1C,IAAI,KAAK,CAAC,eAAe,GAAG,CAAC;QAAE,OAAO,KAAK,KAAK,CAAC,eAAe,EAAE,CAAA;IAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,CAAA;IAC5D,8DAA8D;IAC9D,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC;QAAE,OAAO,MAAM,QAAQ,IAAI,KAAK,CAAC,UAAU,EAAE,CAAA;IACrE,qCAAqC;IACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAA;IACvE,OAAO,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAA;AACrC,CAAC;AAED,mEAAmE;AACnE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAA;AAQzC,IAAI,UAAU,GAAsB,IAAI,CAAA;AACxC,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,aAAa;AAEvD,uCAAuC;AACvC,MAAM,UAAU,aAAa,CAAC,KAAkB;IAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;IACjD,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1C,sDAAsD;IACtD,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7E,IAAI,WAAW,IAAI,EAAE;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO,KAAK,CAAA;AACd,CAAC;AAED,KAAK,UAAU,cAAc;IAC3B,+BAA+B;IAC/B,IAAI,UAAU,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,SAAS,GAAG,kBAAkB,EAAE,CAAC;QACzE,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAA;IACzE,CAAC;IAED,MAAM,OAAO,GAAG,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,UAAU,GAAG,CAAC,CAAA;IACpB,MAAM,UAAU,GAAG,MAAM,CAAA;IACzB,MAAM,UAAU,GAAkB,EAAE,CAAA;IACpC,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACzB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;YACxC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,UAAU,CAAC,CAAA;YAChE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,0CAA0C,EAAE;oBAC9E,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,OAAO;oBAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC5B,MAAM,EAAE,UAAU,CAAC,MAAM;iBAC1B,CAAC,CAAA;gBACF,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAAE,OAAO,EAAE,CAAA;gBAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAClC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAkB,CAAA;YAC7C,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,OAAO,CAAC,CAAA;YACvB,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAClC,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAA;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;IAEpE,sDAAsD;IACtD,eAAe,CAAC,KAAK,EAAE,CAAA;IACvB,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC3B,IAAI,OAAO;oBAAE,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,oBAAoB,CAAC,UAAU,CAAC,CAAA;IAEhC,iBAAiB;IACjB,UAAU,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;IAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa,EAAE,IAAY;IACpD,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IAEjC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACpE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAE1C,sEAAsE;IACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;SAChC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,cAAc,CAAC,CAAA;IAEzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,QAAuB,EAAE,WAAoB;IACzE,8BAA8B;IAC9B,MAAM,mBAAmB,GAAG,WAAW;QACrC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAClB,IAAI,CAAC,CAAC,CAAC,cAAc;gBAAE,OAAO,KAAK,CAAA;YACnC,MAAM,CAAC,EAAE,AAAD,EAAG,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,WAAW,CAAA;QAC1C,CAAC,CAAC;QACJ,CAAC,CAAC,QAAQ,CAAA;IAEZ,oEAAoE;IACpE,MAAM,IAAI,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC3C,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9B,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACtF,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACtB,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACtC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAC1D,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,WAAoB;IAEpB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,EAAE,CAAA;IAErD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACrC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAC3C,CAAA;IAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;IAC1D,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAA;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAkB,EAClB,WAAoB;IAEpB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,EAAE,CAAA;IAErD,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;IAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACrC,sDAAsD;QACtD,MAAM,YAAY,GAAG,2BAA2B,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;QACpE,IAAI,YAAY,EAAE,WAAW,EAAE,KAAK,WAAW;YAAE,OAAO,IAAI,CAAA;QAE5D,+CAA+C;QAC/C,MAAM,aAAa,GAAG,wBAAwB,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAA;QAC/D,IAAI,aAAa,EAAE,WAAW,EAAE,KAAK,WAAW;YAAE,OAAO,IAAI,CAAA;QAE7D,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;IAC1D,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAA;AAC3D,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAqB;IACvD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAA;IAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjC,MAAM,WAAW,GAAG;YAClB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAA;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC5E,IAAI,CAAC,UAAU;gBAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACnD,IAAI,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBACzE,QAAQ,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;gBAC9C,QAAQ,CAAC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAA;gBAClD,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;gBACf,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,OAAO,EAAE,CAAC,WAAW,CAAC;aACvB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAA;AACxG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAgB;IACpD,2DAA2D;IAC3D,MAAM,cAAc,EAAE,CAAA;IACtB,IAAI,KAAK,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,EAAE,CAAA;IACvC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;QACpC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,+DAA+D;AAC/D,mCAAmC;AACnC,+DAA+D;AAE/D,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,gBAAwB;IACjE,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IACrD,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAA;IACjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;QACnE,OAAO,OAAO,CAAC,IAAI,IAAI,SAAS,CAAA;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,gBAAwB;IAC/D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,+CAA+C,gBAAgB,EAAE,EACxE,EAAE,OAAO,EAAE,OAAO,EAAE,CACrB,CAAA;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IACxF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,UAAkB,EAClB,gBAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,sCAAsC,EAAE;QAC1E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;KACvD,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAClC,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAA;AACnC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,QAAgB;IAC7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,+CAA+C,QAAQ,EAAE,EAChE,EAAE,OAAO,EAAE,OAAO,EAAE,CACrB,CAAA;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IACtF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,gBAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,+CAA+C,EAAE;QACnF,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC;YAC1C,OAAO,EAAE,IAAI;SACd,CAAC;KACH,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,gBAAwB;IAExB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,8CAA8C,EAAE;QAClF,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;YAC9B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,CAAC;YAC1C,OAAO,EAAE,IAAI;SACd,CAAC;KACH,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,+DAA+D;AAC/D,qCAAqC;AACrC,+DAA+D;AAE/D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAwD,CAAA;AAC5F,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,YAAY;AAE/C,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,gBAAwB;IACrE,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IACzD,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,YAAY,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;IACvD,oBAAoB,CAAC,GAAG,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAC3E,OAAO,IAAI,CAAA;AACb,CAAC;AAED,gGAAgG;AAChG,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAAE,oBAAoB;IAC/F,qBAAqB,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,aAAa;IACtF,cAAc,EAAE,WAAW,CAAC,CAAC,CAAA;AAC/B,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,SAAS;IACpF,SAAS,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAA;AAC/C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAA;AAEtD,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAA;IAEzC,IAAI,QAA4B,CAAA;IAChC,IAAI,IAAwB,CAAA;IAE5B,0BAA0B;IAC1B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC;QAC9C,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC;QAC7B,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAC5B,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;IAED,eAAe;IACf,MAAM,YAAY,GAAuB;QACvC,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;QACvC,CAAC,gBAAgB,EAAE,aAAa,CAAC;QACjC,CAAC,iBAAiB,EAAE,cAAc,CAAC;QACnC,CAAC,WAAW,EAAE,UAAU,CAAC;QACzB,CAAC,UAAU,EAAE,SAAS,CAAC;QACvB,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;QAC3C,CAAC,mBAAmB,EAAE,aAAa,CAAC;QACpC,CAAC,yBAAyB,EAAE,oBAAoB,CAAC;QACjD,CAAC,cAAc,EAAE,qBAAqB,CAAC;QACvC,CAAC,YAAY,EAAE,iBAAiB,CAAC;QACjC,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;QAClD,CAAC,iBAAiB,EAAE,cAAc,CAAC;QACnC,CAAC,iBAAiB,EAAE,cAAc,CAAC;QACnC,CAAC,QAAQ,EAAE,OAAO,CAAC;QACnB,CAAC,kBAAkB,EAAE,eAAe,CAAC;QACrC,CAAC,UAAU,EAAE,SAAS,CAAC;QACvB,CAAC,UAAU,EAAE,SAAS,CAAC;QACvB,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;KAC1C,CAAA;IAED,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QAC3C,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,GAAG,IAAI,CAAA;YACX,MAAK;QACP,CAAC;IACH,CAAC;IAED,sCAAsC;IACtC,IAAI,gBAAyD,CAAA;IAC7D,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,gBAAgB,GAAG,OAAO,CAAA;aACjD,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,gBAAgB,GAAG,QAAQ,CAAA;aACxD,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,gBAAgB,GAAG,MAAM,CAAA;IAC3D,CAAC;IAED,wBAAwB;IACxB,IAAI,UAAU,GAAG,GAAG;SACjB,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC;SACvC,IAAI,EAAE,CAAA;IAET,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;QACrB,kCAAkC;QAClC,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAChD,IAAI,WAAW,EAAE,CAAC;YAChB,UAAU,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,aAAa,QAAQ,EAAE,CAAA;QAC/D,CAAC;aAAM,CAAC;YACN,UAAU,GAAG,GAAG,IAAI,aAAa,QAAQ,EAAE,CAAA;QAC7C,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,GAAG,GAAG,CAAA;IAClB,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAA;AAC9D,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAC7B,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,OAAuB,EACvB,aAAsB;IAEtB,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,MAAM,UAAU,GAAG,CAAC,CAAA;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAA;QAC/C,MAAM,OAAO,CAAC,UAAU,CACtB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACrB,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAA;YACnE,MAAM,UAAU,GAAG;gBACjB,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAe,EAAE,CAAC,CAAC;gBACpE,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,CAAC,CAAC;aACzE,CAAA;YACD,EAAE,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC,CAAA;YAC1E,IAAI,KAA8C,CAAA;YAClD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;gBAC/E,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;YAC9D,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;YACpE,CAAC;YACD,IAAI,KAAK,EAAE,CAAC;gBACV,EAAE,CAAC,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAA;gBACvC,EAAE,CAAC,cAAc,GAAG,KAAK,CAAC,MAAM,CAAA;gBAChC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;gBAC1B,EAAE,CAAC,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAA;YAChC,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,GAAG,UAAU,CAAA;AACpC,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAwB,EACxB,gBAAwB,EACxB,UAAmB,EACnB,UAAmB,EACnB,qBAA8B;IAE9B,MAAM,UAAU,GAA6D;QAC3E,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAe,EAAE,CAAC,CAAC;QACpE,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,QAAiB,EAAE,CAAC,CAAC;KACzE,CAAA;IAED,MAAM,aAAa,GAAG,qBAAqB,IAAI,OAAO,CAAC,IAAI,IAAI,SAAS,CAAA;IAExE,SAAS,WAAW,CAAC,MAA4D;QAK/E,OAAO;YACL,OAAO,EAAE;gBACP,aAAa;gBACb,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,QAAQ;gBAC3B,gBAAgB,EAAE,MAAM,CAAC,OAAO;gBAChC,cAAc,EAAE,MAAM,CAAC,MAAM;aAC9B;YACD,kBAAkB,EAAE,MAAM,CAAC,QAAQ;YACnC,eAAe,EAAE,MAAM,CAAC,OAAO;SAChC,CAAA;IACH,CAAC;IAED,SAAS,eAAe,CAAC,OAA0B;QACjD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC5B,OAAO,CAAC,CAAC,UAAU,iBAAiB,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,MAAM,eAAe,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAClG,CAAA;QACD,OAAO,qFAAqF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;IAChH,CAAC;IAED,gDAAgD;IAChD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAA;QAC7D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC/B,OAAO,CAAC,CAAC,UAAU,iBAAiB,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,MAAM,GAAG,CAC/D,CAAA;YACD,OAAO;gBACL,KAAK,EAAE,eAAe,UAAU,wDAAwD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3G,CAAA;QACH,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;IAED,2CAA2C;IAC3C,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;QACrC,IAAI,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAE/E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAExD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,0CAA0C;YAC1C,MAAM,YAAY,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAA;YACtD,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACzC,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,YAAY,CACrD,CAAA;gBACD,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1E,CAAC;YACD,0BAA0B;YAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;YAC5D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;YAChE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,WAAW,CAAC,EAAE,CAAA;YAC1E,+DAA+D;YAC/D,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC9B,IAAI,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,CAC5F,CAAA;YACD,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC;QACD,+CAA+C;IACjD,CAAC;IAED,kDAAkD;IAClD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IACxD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAA;IAE5D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAClD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,4CAA4C;QAC5C,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACvC,IAAI,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,OAAO,EAAE,CAC5F,CAAA;QACD,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAA;IAE5D,oBAAoB;IACpB,OAAO,EAAE,KAAK,EAAE,+CAA+C,EAAE,CAAA;AACnE,CAAC;AAED,MAAM,kBAAkB,GAAG,CAAC,uBAAuB,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAA;AAEvF,MAAM,UAAU,wBAAwB,CACtC,aAAqC,EACrC,OAAwB;IAExB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkD,CAAA;IACzE,MAAM,MAAM,GAAsD,EAAE,CAAA;IACpE,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,IAAI,gBAAgB,GAAG,CAAC,CAAA;IACxB,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,WAAW,IAAI,CAAC,CAAC,MAAM,CAAA;QACvB,IAAI,CAAC,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAE9B,qBAAqB;QACrB,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,WAAW,IAAI,CAAC,CAAC,MAAM,CAAA;YAChC,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5D,CAAC;QAED,oBAAoB;QACpB,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAA;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;QAC/D,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAA;QAElC,yBAAyB;QACzB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACtD,gBAAgB,IAAI,CAAC,CAAC,MAAM,CAAA;QAC9B,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SACrC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI;QAC5F,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;SAC7C,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEf,aAAa;IACb,IAAI,SAAS,GAAqC,IAAI,CAAA;IACtD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACrE,SAAS,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAA;IACxE,CAAC;IAED,OAAO;QACL,OAAO;QACP,UAAU,EAAE,aAAa,CAAC,MAAM;QAChC,WAAW;QACX,SAAS;QACT,MAAM;QACN,gBAAgB;QAChB,SAAS;KACV,CAAA;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,YAAmC,EACnC,OAAwB;IAExB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkD,CAAA;IAC1E,MAAM,MAAM,GAAsD,EAAE,CAAA;IACpE,IAAI,WAAW,GAAG,CAAC,CAAA;IACnB,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7B,WAAW,IAAI,CAAC,CAAC,KAAK,CAAA;QACtB,IAAI,CAAC,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAE9B,sBAAsB;QACtB,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QAC/C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,CAAA;YAC/B,QAAQ,CAAC,KAAK,EAAE,CAAA;QAClB,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,oBAAoB;QACpB,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,SAAS,CAAA;QACnC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;QAC/D,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAA;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAA;IACnC,CAAC;IAED,qCAAqC;IACrC,MAAM,UAAU,GAAG,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtB,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI;QAC3F,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;SAC7C,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEf,aAAa;IACb,IAAI,SAAS,GAAoC,IAAI,CAAA;IACrD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACrE,SAAS,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAA;IACxE,CAAC;IAED,OAAO;QACL,OAAO;QACP,UAAU,EAAE,YAAY,CAAC,MAAM;QAC/B,WAAW;QACX,SAAS;QACT,MAAM;QACN,UAAU;KACX,CAAA;AACH,CAAC;AAED,+DAA+D;AAC/D,4CAA4C;AAC5C,+DAA+D;AAE/D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAQxC;IACC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,6DAA6D,EACpE;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;YAC5B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,CAAC;YAC7C,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;YACrC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;SAC/B,CAAC;KACH,CACF,CAAA;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAOzC;IACC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,iCAAiC,EAAE;QACrE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;YAC5B,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE;YAC9C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,CAAC;YAC/C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK;YAC/C,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC;SAC5B,CAAC;KACH,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,+DAA+D;AAC/D,uCAAuC;AACvC,+DAA+D;AAE/D,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAkB;IAC3D,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,kCAAkC,UAAU,EAAE,EACrD,EAAE,OAAO,EAAE,OAAO,EAAE,CACrB,CAAA;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAClC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA;IAChC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;QAC7B,UAAU;QACV,WAAW,EAAE,GAAG,CAAC,QAAQ;QACzB,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC;QAClC,UAAU,EAAE,GAAG,CAAC,SAAS;QACzB,aAAa,EAAE,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,SAAS;QACnD,MAAM,EAAE,GAAG,CAAC,MAAM;KACnB,CAAC,CAAC,CAAA;AACL,CAAC;AAED,8DAA8D;AAC9D,KAAK,UAAU,OAAO,CAAC,IAAY,EAAE,IAAmB;IACtD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE;QAC7C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAA;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,CAAA;IAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAClC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAkB,EAClB,UAAmB;IAEnB,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,UAAU,CAAC,CAAA;IACtD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAErC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;IACtD,MAAM,MAAM,GAAG,UAAU;QACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC;QACzC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAEb,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAExB,MAAM,IAAI,GAAkB;QAC1B,UAAU;QACV,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,KAAK;KAClB,CAAA;IAED,MAAM,CACJ,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,mBAAmB,EACnB,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,6BAA6B,EAC7B,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACtB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpB,OAAO,CAAC,8CAA8C,EAAE,IAAI,CAAC;QAC7D,OAAO,CAAC,6CAA6C,EAAE,IAAI,CAAC;QAC5D,OAAO,CAAC,mEAAmE,EAAE,IAAI,CAAC;QAClF,OAAO,CAAC,sEAAsE,EAAE,IAAI,CAAC;QACrF,OAAO,CAAC,oEAAoE,EAAE,IAAI,CAAC;QACnF,OAAO,CAAC,uEAAuE,EAAE,IAAI,CAAC;QACtF,OAAO,CAAC,uBAAuB,EAAE,IAAI,CAAC;QACtC,OAAO,CAAC,oCAAoC,EAAE,IAAI,CAAC;QACnD,OAAO,CAAC,uCAAuC,EAAE,IAAI,CAAC;QACtD,OAAO,CAAC,wCAAwC,EAAE,IAAI,CAAC;QACvD,OAAO,CAAC,uCAAuC,EAAE,IAAI,CAAC;QACtD,OAAO,CAAC,yCAAyC,EAAE,IAAI,CAAC;QACxD,OAAO,CAAC,mDAAmD,EAAE,IAAI,CAAC;QAClE,OAAO,CAAC,mEAAmE,EAAE,IAAI,CAAC;QAClF,OAAO,CAAC,mEAAmE,EAAE,IAAI,CAAC;QAClF,OAAO,CAAC,gEAAgE,EAAE,IAAI,CAAC;QAC/E,OAAO,CAAC,qDAAqD,EAAE,IAAI,CAAC;KACrE,CAAC,CAAA;IAEF,OAAO;QACL,UAAU;QACV,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,IAAI;QACvB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,SAAS;QACT,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,mBAAmB;QACnB,sBAAsB;QACtB,KAAK;QACL,MAAM;QACN,mBAAmB;QACnB,SAAS;QACT,cAAc;QACd,iBAAiB;QACjB,6BAA6B;QAC7B,oBAAoB;QACpB,oBAAoB;QACpB,iBAAiB;QACjB,qBAAqB;KACtB,CAAA;AACH,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * SC county codes, city-to-county mappings, and resolution helpers.
3
+ *
4
+ * County codes from VREMS API (hars/vrems-api-analysis.md lines 414-432).
5
+ * City-to-county mappings from SC Secretary of State municipal list + US Census designated places.
6
+ */
7
+ export declare const SC_COUNTY_CODES: Record<string, string>;
8
+ export declare const SC_COUNTY_NAMES: Record<string, string>;
9
+ /**
10
+ * City/town → county mapping for SC.
11
+ * Covers all incorporated municipalities plus major unincorporated communities
12
+ * for Greenville, Spartanburg, Laurens, and Greenwood counties.
13
+ *
14
+ * Source: SC Secretary of State municipal list + US Census designated places (2020).
15
+ */
16
+ export declare const SC_CITY_TO_COUNTY: Record<string, string>;
17
+ /**
18
+ * Resolve a county name or code to a VREMS county code.
19
+ * Accepts "Greenville", "greenville", or "23". Returns undefined for unrecognized input.
20
+ */
21
+ export declare function resolveCountyCode(input: string): string | undefined;
22
+ /**
23
+ * Resolve a county name or code to a county name.
24
+ * Accepts "Greenville", "greenville", or "23". Returns undefined for unrecognized input.
25
+ */
26
+ export declare function resolveCountyName(input: string): string | undefined;
27
+ /**
28
+ * Extract county from an Ethics API filer address.
29
+ *
30
+ * Addresses follow the pattern: "{street} {city}, SC {zip}"
31
+ * Examples:
32
+ * "1629 Bypass 72 Ne Greenwood, SC 29649"
33
+ * "4303 Old Buncombe Rd, Greenville, SC 29617"
34
+ * "Po Box 22 Reidville, SC 29375"
35
+ * "709 Southern Street Spartanburg, SC 29303"
36
+ *
37
+ * Returns the county name or undefined if city not in mapping.
38
+ */
39
+ export declare function extractCountyFromAddress(address: string): string | undefined;
40
+ /**
41
+ * Extract county from an Ethics Commission office name string.
42
+ *
43
+ * Uses word-boundary matching to find any of the 46 SC county names.
44
+ * Returns the first match, or undefined.
45
+ */
46
+ export declare function extractCountyFromOfficeName(officeName: string): string | undefined;