@prosopo/ipinfo 0.6.0 → 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.
@@ -9,6 +9,7 @@ ViteCommonJSConfig: .
9
9
  '/home/runner/work/captcha/captcha/packages/util-crypto/tsconfig.json'
10
10
  ]
11
11
  }
12
+ The plugin "vite-tsconfig-paths" is detected. Vite now supports tsconfig paths resolution natively via the resolve.tsconfigPaths option. You can remove the plugin and set resolve.tsconfigPaths: true in your Vite config instead.
12
13
  {
13
14
  externals: [
14
15
  '@prosopo/logger',
@@ -18,7 +19,6 @@ ViteCommonJSConfig: .
18
19
  '@prosopo/util-crypto'
19
20
  ]
20
21
  }
21
- The plugin "vite-tsconfig-paths" is detected. Vite now supports tsconfig paths resolution natively via the resolve.tsconfigPaths option. You can remove the plugin and set resolve.tsconfigPaths: true in your Vite config instead.
22
22
  vite v8.1.6 building ssr environment for production...
23
23
  Bundle build started
24
24
  
@@ -29,6 +29,6 @@ dist/cjs/index.cjs 0.66 kB │ gzip: 0.26 kB
29
29
  dist/cjs/lookupCache.cjs 1.64 kB │ gzip: 0.78 kB
30
30
  dist/cjs/IpInfoService.cjs 4.23 kB │ gzip: 1.53 kB
31
31
  dist/cjs/backends/maxmind.cjs 5.92 kB │ gzip: 1.89 kB
32
- dist/cjs/backends/ipapi.cjs 6.33 kB │ gzip: 2.47 kB
32
+ dist/cjs/backends/ipapi.cjs 6.99 kB │ gzip: 2.64 kB
33
33
 
34
- ✓ built in 72ms
34
+ ✓ built in 74ms
@@ -30,6 +30,6 @@ dist/esm/index.js 0.39 kB │ gzip: 0.19 kB
30
30
  dist/esm/lookupCache.js 1.60 kB │ gzip: 0.77 kB
31
31
  dist/esm/IpInfoService.js 4.13 kB │ gzip: 1.52 kB
32
32
  dist/esm/backends/maxmind.js 5.91 kB │ gzip: 1.89 kB
33
- dist/esm/backends/ipapi.js 6.21 kB │ gzip: 2.46 kB
33
+ dist/esm/backends/ipapi.js 6.83 kB │ gzip: 2.63 kB
34
34
 
35
- ✓ built in 63ms
35
+ ✓ built in 52ms
@@ -1,5 +1,5 @@
1
1
  $ tsc --build --verbose
2
- 4:56:02 PM - Projects in this build:
2
+ 11:50:38 AM - Projects in this build:
3
3
  * ../../dev/config/tsconfig.json
4
4
  * ../util/tsconfig.json
5
5
  * ../logger/tsconfig.json
@@ -8,19 +8,19 @@ $ tsc --build --verbose
8
8
  * ../types/tsconfig.json
9
9
  * tsconfig.json
10
10
 
11
- 4:56:03 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/dist/tsc/tsconfig.tsbuildinfo'
11
+ 11:50:38 AM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/dist/tsc/tsconfig.tsbuildinfo'
12
12
 
13
- 4:56:03 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/dist/tsc/tsconfig.tsbuildinfo'
13
+ 11:50:38 AM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/dist/tsc/tsconfig.tsbuildinfo'
14
14
 
15
- 4:56:03 PM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/logger.ts' is older than output '../logger/dist/tsc/tsconfig.tsbuildinfo'
15
+ 11:50:38 AM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/dist/tsc/tsconfig.tsbuildinfo'
16
16
 
17
- 4:56:03 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/dist/tsc/tsconfig.tsbuildinfo'
17
+ 11:50:38 AM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/process.ts' is older than output '../locale/dist/tsc/tsconfig.tsbuildinfo'
18
18
 
19
- 4:56:03 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/dist/tsc/tsconfig.tsbuildinfo'
19
+ 11:50:38 AM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/dist/tsc/tsconfig.tsbuildinfo'
20
20
 
21
- 4:56:03 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/dist/tsc/tsconfig.tsbuildinfo'
21
+ 11:50:38 AM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/types.test-d.ts' is older than output '../types/dist/tsc/tsconfig.tsbuildinfo'
22
22
 
23
- 4:56:03 PM - Project 'tsconfig.json' is out of date because output file 'dist/tsc/tsconfig.tsbuildinfo' does not exist
23
+ 11:50:38 AM - Project 'tsconfig.json' is out of date because output file 'dist/tsc/tsconfig.tsbuildinfo' does not exist
24
24
 
25
- 4:56:03 PM - Building project '/home/runner/work/captcha/captcha/packages/ipinfo/tsconfig.json'...
25
+ 11:50:38 AM - Building project '/home/runner/work/captcha/captcha/packages/ipinfo/tsconfig.json'...
26
26
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @prosopo/ipinfo
2
2
 
3
+ ## 0.7.0
4
+ ### Minor Changes
5
+
6
+ - d9520ea: The traffic filter's `abuser` category, its exceptions, the DNS-path signal and the IP validation rules now use the IP lookup's reputation score.
7
+
8
+ - The IP lookup carries `reputationScore` and `reputationBand`. An address without a score never meets a threshold.
9
+ - New settings: `trafficFilter.reputationScoreThreshold`, exception `minReputationScore`, and `ipValidationRules.reputationScoreThreshold`.
10
+ - `abuserScoreThreshold`, `minAbuserScore` and `ipValidationRules.abuseScoreThreshold` are deprecated. Stored records still parse, and an exception that has only `minAbuserScore` keeps its current behaviour until it is updated.
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [d9520ea]
15
+ - @prosopo/types@5.26.0
16
+ - @prosopo/logger@2.1.9
17
+
3
18
  ## 0.6.0
4
19
  ### Minor Changes
5
20
 
@@ -30,6 +30,20 @@ var parseDetectorRisk = (reputation) => {
30
30
  const risk = reputation?.detector_risk;
31
31
  return typeof risk === "number" && risk >= 0 && risk <= 1 ? risk : void 0;
32
32
  };
33
+ /**
34
+ * The address's reputation score, if the lookup returned one. Undefined
35
+ * otherwise, never 0.
36
+ */
37
+ var parseReputationScore = (reputation) => {
38
+ const assessment = reputation?.assessment;
39
+ const score = assessment?.score;
40
+ if (assessment?.state !== "scored" || typeof score !== "number" || !Number.isFinite(score) || score < 0 || score > 1) return;
41
+ const band = assessment.band;
42
+ return {
43
+ score,
44
+ ...typeof band === "string" && band && { band }
45
+ };
46
+ };
33
47
  /** The shared-egress reason, when it is one this client knows. */
34
48
  var parseSharedReason = (reputation) => {
35
49
  const reason = reputation?.shared_reason;
@@ -90,6 +104,7 @@ var IpapiBackend = class {
90
104
  error: "IP address is bogon (non-routable)",
91
105
  ip
92
106
  };
107
+ const reputation = parseReputationScore(data.reputation);
93
108
  return {
94
109
  ip: data.ip,
95
110
  isValid: true,
@@ -118,6 +133,8 @@ var IpapiBackend = class {
118
133
  vpnType: data.vpn?.type,
119
134
  abuserScore: parseAbuserScore(data.asn?.abuser_score),
120
135
  companyAbuserScore: parseAbuserScore(data.company?.abuser_score),
136
+ reputationScore: reputation?.score,
137
+ reputationBand: reputation?.band,
121
138
  detectorRisk: parseDetectorRisk(data.reputation),
122
139
  sharedReason: parseSharedReason(data.reputation)
123
140
  };
@@ -173,4 +190,5 @@ exports.IpapiBackend = IpapiBackend;
173
190
  exports.parseAbuserScore = parseAbuserScore;
174
191
  exports.parseAccountSighting = parseAccountSighting;
175
192
  exports.parseDetectorRisk = parseDetectorRisk;
193
+ exports.parseReputationScore = parseReputationScore;
176
194
  exports.parseSharedReason = parseSharedReason;
@@ -30,6 +30,20 @@ var parseDetectorRisk = (reputation) => {
30
30
  const risk = reputation?.detector_risk;
31
31
  return typeof risk === "number" && risk >= 0 && risk <= 1 ? risk : void 0;
32
32
  };
33
+ /**
34
+ * The address's reputation score, if the lookup returned one. Undefined
35
+ * otherwise, never 0.
36
+ */
37
+ var parseReputationScore = (reputation) => {
38
+ const assessment = reputation?.assessment;
39
+ const score = assessment?.score;
40
+ if (assessment?.state !== "scored" || typeof score !== "number" || !Number.isFinite(score) || score < 0 || score > 1) return;
41
+ const band = assessment.band;
42
+ return {
43
+ score,
44
+ ...typeof band === "string" && band && { band }
45
+ };
46
+ };
33
47
  /** The shared-egress reason, when it is one this client knows. */
34
48
  var parseSharedReason = (reputation) => {
35
49
  const reason = reputation?.shared_reason;
@@ -90,6 +104,7 @@ var IpapiBackend = class {
90
104
  error: "IP address is bogon (non-routable)",
91
105
  ip
92
106
  };
107
+ const reputation = parseReputationScore(data.reputation);
93
108
  return {
94
109
  ip: data.ip,
95
110
  isValid: true,
@@ -118,6 +133,8 @@ var IpapiBackend = class {
118
133
  vpnType: data.vpn?.type,
119
134
  abuserScore: parseAbuserScore(data.asn?.abuser_score),
120
135
  companyAbuserScore: parseAbuserScore(data.company?.abuser_score),
136
+ reputationScore: reputation?.score,
137
+ reputationBand: reputation?.band,
121
138
  detectorRisk: parseDetectorRisk(data.reputation),
122
139
  sharedReason: parseSharedReason(data.reputation)
123
140
  };
@@ -169,4 +186,4 @@ var IpapiBackend = class {
169
186
  }
170
187
  };
171
188
  //#endregion
172
- export { IpapiBackend, parseAbuserScore, parseAccountSighting, parseDetectorRisk, parseSharedReason };
189
+ export { IpapiBackend, parseAbuserScore, parseAccountSighting, parseDetectorRisk, parseReputationScore, parseSharedReason };
@@ -11,6 +11,10 @@ export interface IpapiBackendConfig {
11
11
  }
12
12
  export declare const parseAbuserScore: (score: string | undefined) => number | undefined;
13
13
  export declare const parseDetectorRisk: (reputation: IPApiReputationInfo | undefined) => number | undefined;
14
+ export declare const parseReputationScore: (reputation: IPApiReputationInfo | undefined) => {
15
+ score: number;
16
+ band?: string;
17
+ } | undefined;
14
18
  export declare const parseSharedReason: (reputation: IPApiReputationInfo | undefined) => ReputationSharedReason | undefined;
15
19
  export declare const parseAccountSighting: (body: ReputationAccountResponse | undefined) => AccountSighting | undefined;
16
20
  export declare class IpapiBackend {
@@ -1 +1 @@
1
- {"version":3,"file":"ipapi.d.ts","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAExB,KAAK,cAAc,EAGnB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,MAAM,gBAAgB,CAAC;AAMxB,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAGtC,MAAM,MAAM,OAAO,GAAG,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,KACb,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAElC,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAuBD,eAAO,MAAM,gBAAgB,UACrB,MAAM,GAAG,SAAS,KACvB,MAAM,GAAG,SASX,CAAC;AAEF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,MAAM,GAAG,SAGX,CAAC;AAGF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,sBAAsB,GAAG,SAG3B,CAAC;AAMF,eAAO,MAAM,oBAAoB,SAC1B,yBAAyB,GAAG,SAAS,KACzC,eAAe,GAAG,SAkBpB,CAAC;AAEF,qBAAa,YAAY;IACxB,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,kBAAkB;IAItC,WAAW,IAAI,OAAO;IAItB,OAAO,KAAK,SAAS,GAEpB;IAEK,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkH3C,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;CAkCvC"}
1
+ {"version":3,"file":"ipapi.d.ts","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAExB,KAAK,cAAc,EAGnB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,MAAM,gBAAgB,CAAC;AAMxB,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAGtC,MAAM,MAAM,OAAO,GAAG,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,KACb,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAElC,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAuBD,eAAO,MAAM,gBAAgB,UACrB,MAAM,GAAG,SAAS,KACvB,MAAM,GAAG,SASX,CAAC;AAEF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,MAAM,GAAG,SAGX,CAAC;AAMF,eAAO,MAAM,oBAAoB,eACpB,mBAAmB,GAAG,SAAS,KACzC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAcrC,CAAC;AAGF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,sBAAsB,GAAG,SAG3B,CAAC;AAMF,eAAO,MAAM,oBAAoB,SAC1B,yBAAyB,GAAG,SAAS,KACzC,eAAe,GAAG,SAkBpB,CAAC;AAEF,qBAAa,YAAY;IACxB,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,kBAAkB;IAItC,WAAW,IAAI,OAAO;IAItB,OAAO,KAAK,SAAS,GAEpB;IAEK,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAqH3C,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;CAkCvC"}
@@ -12,6 +12,19 @@ export const parseDetectorRisk = (reputation) => {
12
12
  const risk = reputation?.detector_risk;
13
13
  return typeof risk === "number" && risk >= 0 && risk <= 1 ? risk : undefined;
14
14
  };
15
+ export const parseReputationScore = (reputation) => {
16
+ const assessment = reputation?.assessment;
17
+ const score = assessment?.score;
18
+ if (assessment?.state !== "scored" ||
19
+ typeof score !== "number" ||
20
+ !Number.isFinite(score) ||
21
+ score < 0 ||
22
+ score > 1) {
23
+ return undefined;
24
+ }
25
+ const band = assessment.band;
26
+ return { score, ...(typeof band === "string" && band && { band }) };
27
+ };
15
28
  export const parseSharedReason = (reputation) => {
16
29
  const reason = reputation?.shared_reason;
17
30
  return REPUTATION_SHARED_REASONS.find((known) => known === reason);
@@ -83,6 +96,7 @@ export class IpapiBackend {
83
96
  ip,
84
97
  };
85
98
  }
99
+ const reputation = parseReputationScore(data.reputation);
86
100
  const result = {
87
101
  ip: data.ip,
88
102
  isValid: true,
@@ -111,6 +125,8 @@ export class IpapiBackend {
111
125
  vpnType: data.vpn?.type,
112
126
  abuserScore: parseAbuserScore(data.asn?.abuser_score),
113
127
  companyAbuserScore: parseAbuserScore(data.company?.abuser_score),
128
+ reputationScore: reputation?.score,
129
+ reputationBand: reputation?.band,
114
130
  detectorRisk: parseDetectorRisk(data.reputation),
115
131
  sharedReason: parseSharedReason(data.reputation),
116
132
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ipapi.js","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ipapi.js","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { describe, expect, it, vi } from "vitest";
2
- import { DEFAULT_TIMEOUT_MS, IpapiBackend, parseAbuserScore, parseAccountSighting, parseDetectorRisk, parseSharedReason, } from "../backends/ipapi.js";
2
+ import { DEFAULT_TIMEOUT_MS, IpapiBackend, parseAbuserScore, parseAccountSighting, parseDetectorRisk, parseReputationScore, parseSharedReason, } from "../backends/ipapi.js";
3
3
  const BASE_URL = "https://api.ipapi.test/";
4
4
  const IP = "8.8.8.8";
5
5
  const baseResponse = (overrides = {}) => ({
@@ -337,6 +337,61 @@ describe("the detector risk", () => {
337
337
  expect(result.detectorRisk).toBeUndefined();
338
338
  });
339
339
  });
340
+ describe("reputation score", () => {
341
+ const lookupScore = async (reputation) => {
342
+ const result = expectValid(await backend(respondWith(baseResponse({ reputation }))).lookup(IP));
343
+ return {
344
+ reputationScore: result.reputationScore,
345
+ reputationBand: result.reputationBand,
346
+ };
347
+ };
348
+ it("carries a scored assessment's score and band onto the result", async () => {
349
+ expect(await lookupScore({
350
+ assessment: { state: "scored", score: 0.476, band: "elevated" },
351
+ })).toEqual({ reputationScore: 0.476, reputationBand: "elevated" });
352
+ });
353
+ it("keeps both ends of the range", () => {
354
+ expect(parseReputationScore({ assessment: { state: "scored", score: 0 } })).toEqual({ score: 0 });
355
+ expect(parseReputationScore({ assessment: { state: "scored", score: 1 } })).toEqual({ score: 1 });
356
+ });
357
+ it("reads an unscored assessment as no score, never as 0", async () => {
358
+ expect(await lookupScore({ assessment: { state: "no_evidence" } })).toEqual({ reputationScore: undefined, reputationBand: undefined });
359
+ expect(await lookupScore({})).toEqual({
360
+ reputationScore: undefined,
361
+ reputationBand: undefined,
362
+ });
363
+ expect(await lookupScore(undefined)).toEqual({
364
+ reputationScore: undefined,
365
+ reputationBand: undefined,
366
+ });
367
+ });
368
+ it("ignores a score that is not under a scored state", () => {
369
+ expect(parseReputationScore({
370
+ assessment: { state: "no_evidence", score: 0.9 },
371
+ })).toBeUndefined();
372
+ expect(parseReputationScore({ assessment: { score: 0.9 } })).toBeUndefined();
373
+ });
374
+ it("drops a score outside 0..1 or not a finite number", () => {
375
+ for (const score of [-0.1, 1.5, Number.NaN, Number.POSITIVE_INFINITY]) {
376
+ expect(parseReputationScore({ assessment: { state: "scored", score } })).toBeUndefined();
377
+ }
378
+ });
379
+ it("drops a score sent as a string", async () => {
380
+ const result = expectValid(await backend(respondWith({
381
+ ...baseResponse(),
382
+ reputation: { assessment: { state: "scored", score: "0.9" } },
383
+ })).lookup(IP));
384
+ expect(result.reputationScore).toBeUndefined();
385
+ });
386
+ it("does not read the abuser scores as a reputation score", async () => {
387
+ const result = expectValid(await backend(respondWith({
388
+ ...baseResponse({ is_abuser: true }),
389
+ asn: { asn: 1, abuser_score: "0.9 (Very High)" },
390
+ company: { name: "Example", abuser_score: "0.9 (Very High)" },
391
+ })).lookup(IP));
392
+ expect(result.reputationScore).toBeUndefined();
393
+ });
394
+ });
340
395
  describe("IpapiBackend.lookup timeout", () => {
341
396
  it("gives up on a hanging upstream and says so", async () => {
342
397
  const result = await backend(respondNever, { timeoutMs: 20 }).lookup(IP);
@@ -1 +1 @@
1
- {"version":3,"file":"ipapi.unit.test.js","sourceRoot":"","sources":["../../../src/tests/ipapi.unit.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ipapi.unit.test.js","sourceRoot":"","sources":["../../../src/tests/ipapi.unit.test.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EACN,kBAAkB,EAElB,YAAY,EACZ,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,QAAQ,GAAG,yBAAyB,CAAC;AAC3C,MAAM,EAAE,GAAG,SAAS,CAAC;AAGrB,MAAM,YAAY,GAAG,CACpB,YAAoC,EAAE,EACtB,EAAE,CAAC,CAAC;IACpB,EAAE,EAAE,EAAE;IACN,GAAG,EAAE,MAAM;IACX,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,MAAM,EAAE,KAAK;IACb,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,CAAC;IACb,GAAG,SAAS;CACZ,CAAC,CAAC;AAGH,MAAM,WAAW,GAAG,CACnB,IAAa,EACb,OAAiD,EAAE,EACzC,EAAE;IACZ,OAAO,KAAK,IAAkC,EAAE,CAC/C,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QAClC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,GAAG;QAC1B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI;QACnC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAC/C,CAAC,CAAC;AACL,CAAC,CAAC;AAGF,MAAM,YAAY,GAAY,CAAC,IAAY,EAAE,IAAiB,EAAE,EAAE,CACjE,IAAI,OAAO,CAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;IACrD,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;QAG3C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,GAAG,YAAY,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEJ,MAAM,OAAO,GAAG,CACf,OAAgB,EAChB,QAAiD,EAAE,EACpC,EAAE,CACjB,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;AAGnE,MAAM,WAAW,GAAG,CACnB,QAAqD,EACtC,EAAE;IACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,iCAAiC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAKlE,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAI5D,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACzD,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAI7D,MAAM,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QAGpD,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAExD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAG/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElC,MAAM,CACL,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CACpD,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC;YAC7B,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;SAC1B,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IACrD,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QAGxD,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,6BAA6B;YACpC,EAAE,EAAE,WAAW;SACf,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QAGlF,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAsC,CAAC,EAAW,EAAE,EAAE,CAClE,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAY,CAAC,CAAC;QAEvC,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CACZ,WAAW,CACV,YAAY,CAAC;YACZ,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE;gBACR,IAAI,EAAE,YAAY;gBAClB,YAAY,EAAE,YAAY;gBAC1B,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,YAAY;gBACrB,KAAK,EAAE,EAAE;aACT;YACD,GAAG,EAAE;gBACJ,GAAG,EAAE,KAAK;gBACV,YAAY,EAAE,kBAAkB;gBAChC,KAAK,EAAE,YAAY;gBACnB,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,IAAI;gBACZ,GAAG,EAAE,YAAY;gBACjB,MAAM,EAAE,YAAY;gBACpB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,EAAE;gBACX,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,EAAE;aACT;YACD,QAAQ,EAAE;gBACT,YAAY,EAAE,KAAK;gBACnB,YAAY,EAAE,GAAG;gBACjB,aAAa,EAAE,KAAK;gBACpB,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,eAAe;gBACxB,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,CAAC,KAAK;gBACjB,GAAG,EAAE,OAAO;gBACZ,QAAQ,EAAE,qBAAqB;gBAC/B,UAAU,EAAE,EAAE;gBACd,eAAe,EAAE,CAAC;gBAClB,MAAM,EAAE,KAAK;aACb;YACD,GAAG,EAAE;gBACJ,EAAE,EAAE,EAAE;gBACN,OAAO,EAAE,YAAY;gBACrB,GAAG,EAAE,EAAE;gBACP,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,CAAC;gBACZ,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,eAAe;gBAC1B,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,CAAC,KAAK;aACjB;SACD,CAAC,CACF,CACD,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,EAAE,EAAE,EAAE;YACN,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,IAAI;YACX,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,YAAY;YAC1B,YAAY,EAAE,SAAS;YACvB,SAAS,EAAE,KAAK;YAChB,eAAe,EAAE,YAAY;YAC7B,OAAO,EAAE,eAAe;YACxB,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,qBAAqB;YAC/B,UAAU,EAAE,YAAY;YACxB,OAAO,EAAE,WAAW;SACpB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAGnE,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CACrD,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,EAAE,CAAC;QACzC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,aAAa,EAAE,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,aAAa,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAI5E,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CACZ,WAAW,CACV,YAAY,CAAC;YACZ,GAAG,EAAE;gBACJ,GAAG,EAAE,KAAK;gBACV,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,IAAI;gBACZ,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,EAAE;gBACX,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,EAAE;aACe;SACzB,CAAC,CACF,CACD,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CACZ,WAAW,CACV,YAAY,CAAC;YACZ,UAAU,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE;SACxD,CAAC,CACF,CACD,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAGxC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,MAAM,OAAO,CAC3B,WAAW,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAC7C,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEb,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,oCAAoC;YAC3C,EAAE,EAAE,EAAE;SACN,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,MAAM,GAAG,MAAM,OAAO,CAC3B,WAAW,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC,CACjE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEb,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,OAAO,EAAE,KAAK;YACd,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,uDAAuD;SAC9D,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAG/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAC3B,WAAW,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAAC,CACrE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEb,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,SAAS,GAAY,KAAK,IAAkC,EAAE,CACnE,IAAI,QAAQ,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAE3C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEnD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;QAC5D,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,OAAO,GAAY,KAAK,IAAkC,EAAE;YACjE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACjC,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,wCAAwC;YAC/C,EAAE,EAAE,EAAE;SACN,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,OAAO,GAAY,KAAK,IAAkC,EAAE;YAEjE,MAAM,gBAAgB,CAAC;QACxB,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEjD,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,0CAA0C;SACjD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAIjC,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CACZ,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CACrE,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CACzE,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CACrE,EAAE,CACF,CACD,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,MAAM,UAAU,GAAG,KAAK,EACvB,UAAuC,EACT,EAAE,CAChC,WAAW,CACV,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CACnE,CAAC,YAAY,CAAC;IAEhB,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,CAAC,MAAM,UAAU,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,CAAC,MAAM,UAAU,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAC7C,MAAM,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC5D,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACnE,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAClE,MAAM,CACL,iBAAiB,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAC9D,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,MAAM,GAAiB,WAAW,CACvC,MAAM,OAAO,CACZ,WAAW,CAAC;YACX,GAAG,YAAY,EAAE;YACjB,UAAU,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE;SACpC,CAAC,CACF,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,MAAM,WAAW,GAAG,KAAK,EACxB,UAAuC,EAC6B,EAAE;QACtE,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CACnE,CAAC;QACF,OAAO;YACN,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,cAAc,EAAE,MAAM,CAAC,cAAc;SACrC,CAAC;IACH,CAAC,CAAC;IAEF,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,CACL,MAAM,WAAW,CAAC;YACjB,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;SAC/D,CAAC,CACF,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACvC,MAAM,CACL,oBAAoB,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QACxB,MAAM,CACL,oBAAoB,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,CAAC,MAAM,WAAW,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1E,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,CACzD,CAAC;QACF,MAAM,CAAC,MAAM,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACrC,eAAe,EAAE,SAAS;YAC1B,cAAc,EAAE,SAAS;SACzB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC5C,eAAe,EAAE,SAAS;YAC1B,cAAc,EAAE,SAAS;SACzB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC3D,MAAM,CACL,oBAAoB,CAAC;YACpB,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,EAAE;SAChD,CAAC,CACF,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,CACL,oBAAoB,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CACpD,CAAC,aAAa,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC5D,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACvE,MAAM,CACL,oBAAoB,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAChE,CAAC,aAAa,EAAE,CAAC;QACnB,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,MAAM,GAAiB,WAAW,CACvC,MAAM,OAAO,CACZ,WAAW,CAAC;YACX,GAAG,YAAY,EAAE;YACjB,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;SAC7D,CAAC,CACF,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,MAAM,GAAG,WAAW,CACzB,MAAM,OAAO,CACZ,WAAW,CAAC;YACX,GAAG,YAAY,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;YACpC,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,iBAAiB,EAAE;YAChD,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE;SAC7D,CAAC,CACF,CAAC,MAAM,CAAC,EAAE,CAAC,CACZ,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAG3D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEzE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,8BAA8B;YACrC,EAAE,EAAE,EAAE;SACN,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC;YACnC,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,YAAY;SACnB,CAAC,CAAC;QAGH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE;YAC1C,SAAS,EAAE,kBAAkB;SAC7B,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YAC5B,KAAK,EAAE,2BAA2B,kBAAkB,IAAI;SACxD,CAAC,CAAC;QACH,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,WAAW,GAAY,KAAK,IAAkC,EAAE;YACrE,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACnC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;YACH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACtE,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEzE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAC5D,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAI5D,MAAM,MAAM,GAAG,MAAM,IAAI,YAAY,CAAC;YACrC,OAAO,EAAE,qBAAqB;YAC9B,SAAS,EAAE,IAAI;SACf,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEd,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CACjE,eAAe,CACf,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,iBAAiB,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACnE,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAC9C,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAGrD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC7B,mCAAmC,CACQ,CAAC;QAC7C,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACxD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAClD,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;YAChC,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,WAAW,CACjB,YAAY,CAAC,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,CAAC,CACzD;SACD,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,CACL,oBAAoB,CAAC;YACpB,KAAK,EAAE,IAAI;YACX,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;SAC5B,CAAC,CACF,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAC/D,MAAM,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACxD,MAAM,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAC9D,MAAM,CACL,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CACzD,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,CACL,oBAAoB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAC1D,CAAC,aAAa,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC7B,iEAAiE,CACpC,CAAC;QAC/B,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC7C,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAClB,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CACjE,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAE/D,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YACjE,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,EAAE;SACf,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACpC,mDAAmD,CACnD,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;YAChC,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,WAAW,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;YAChC,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,KAAK,IAAkC,EAAE;gBAC/C,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACvC,CAAC;SACD,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;YAChC,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,CAAC;SACZ,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAU,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACnE,MAAM,CAAC,MAAM,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -11,6 +11,10 @@ export interface IpapiBackendConfig {
11
11
  }
12
12
  export declare const parseAbuserScore: (score: string | undefined) => number | undefined;
13
13
  export declare const parseDetectorRisk: (reputation: IPApiReputationInfo | undefined) => number | undefined;
14
+ export declare const parseReputationScore: (reputation: IPApiReputationInfo | undefined) => {
15
+ score: number;
16
+ band?: string;
17
+ } | undefined;
14
18
  export declare const parseSharedReason: (reputation: IPApiReputationInfo | undefined) => ReputationSharedReason | undefined;
15
19
  export declare const parseAccountSighting: (body: ReputationAccountResponse | undefined) => AccountSighting | undefined;
16
20
  export declare class IpapiBackend {
@@ -1 +1 @@
1
- {"version":3,"file":"ipapi.d.ts","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAExB,KAAK,cAAc,EAGnB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,MAAM,gBAAgB,CAAC;AAMxB,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAGtC,MAAM,MAAM,OAAO,GAAG,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,KACb,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAElC,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAuBD,eAAO,MAAM,gBAAgB,UACrB,MAAM,GAAG,SAAS,KACvB,MAAM,GAAG,SASX,CAAC;AAEF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,MAAM,GAAG,SAGX,CAAC;AAGF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,sBAAsB,GAAG,SAG3B,CAAC;AAMF,eAAO,MAAM,oBAAoB,SAC1B,yBAAyB,GAAG,SAAS,KACzC,eAAe,GAAG,SAkBpB,CAAC;AAEF,qBAAa,YAAY;IACxB,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,kBAAkB;IAItC,WAAW,IAAI,OAAO;IAItB,OAAO,KAAK,SAAS,GAEpB;IAEK,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkH3C,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;CAkCvC"}
1
+ {"version":3,"file":"ipapi.d.ts","sourceRoot":"","sources":["../../../src/backends/ipapi.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAExB,KAAK,cAAc,EAGnB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,MAAM,gBAAgB,CAAC;AAMxB,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAGtC,MAAM,MAAM,OAAO,GAAG,CACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,KACb,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAElC,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAuBD,eAAO,MAAM,gBAAgB,UACrB,MAAM,GAAG,SAAS,KACvB,MAAM,GAAG,SASX,CAAC;AAEF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,MAAM,GAAG,SAGX,CAAC;AAMF,eAAO,MAAM,oBAAoB,eACpB,mBAAmB,GAAG,SAAS,KACzC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAcrC,CAAC;AAGF,eAAO,MAAM,iBAAiB,eACjB,mBAAmB,GAAG,SAAS,KACzC,sBAAsB,GAAG,SAG3B,CAAC;AAMF,eAAO,MAAM,oBAAoB,SAC1B,yBAAyB,GAAG,SAAS,KACzC,eAAe,GAAG,SAkBpB,CAAC;AAEF,qBAAa,YAAY;IACxB,OAAO,CAAC,MAAM,CAAqB;gBAEvB,MAAM,EAAE,kBAAkB;IAItC,WAAW,IAAI,OAAO;IAItB,OAAO,KAAK,SAAS,GAEpB;IAEK,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAqH3C,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;CAkCvC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/ipinfo",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "IP information service with MaxMind and ipapi.is backends",
5
5
  "main": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -17,8 +17,8 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@maxmind/geoip2-node": "7.1.0",
20
- "@prosopo/logger": "2.1.8",
21
- "@prosopo/types": "5.25.0"
20
+ "@prosopo/logger": "2.1.9",
21
+ "@prosopo/types": "5.26.0"
22
22
  },
23
23
  "devDependencies": {
24
24
  "@prosopo/config": "3.5.3",