@adtrackify/at-service-common 4.0.13 → 4.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/__tests__/identity-cache/helpers.spec.js +37 -38
- package/dist/cjs/__tests__/identity-cache/helpers.spec.js.map +1 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js +83 -344
- package/dist/cjs/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
- package/dist/cjs/__tests__/identity-cache/identity-client.spec.js +360 -0
- package/dist/cjs/__tests__/identity-cache/identity-client.spec.js.map +1 -0
- package/dist/cjs/__tests__/identity-cache/identity-gateway-service.spec.js +335 -1261
- package/dist/cjs/__tests__/identity-cache/identity-gateway-service.spec.js.map +1 -1
- package/dist/cjs/clients/internal-api/identity-client.d.ts +12 -2
- package/dist/cjs/clients/internal-api/identity-client.js +59 -13
- package/dist/cjs/clients/internal-api/identity-client.js.map +1 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.d.ts +1 -7
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +0 -305
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.d.ts +10 -9
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +116 -321
- package/dist/cjs/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/index.d.ts +0 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/index.js +0 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/index.js.map +1 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/types.d.ts +9 -157
- package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js +1 -15
- package/dist/cjs/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
- package/dist/esm/__tests__/identity-cache/helpers.spec.js +26 -27
- package/dist/esm/__tests__/identity-cache/helpers.spec.js.map +1 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js +83 -344
- package/dist/esm/__tests__/identity-cache/identity-cache-tier-routing.spec.js.map +1 -1
- package/dist/esm/__tests__/identity-cache/identity-client.spec.js +358 -0
- package/dist/esm/__tests__/identity-cache/identity-client.spec.js.map +1 -0
- package/dist/esm/__tests__/identity-cache/identity-gateway-service.spec.js +335 -1261
- package/dist/esm/__tests__/identity-cache/identity-gateway-service.spec.js.map +1 -1
- package/dist/esm/clients/internal-api/identity-client.d.ts +12 -2
- package/dist/esm/clients/internal-api/identity-client.js +60 -14
- package/dist/esm/clients/internal-api/identity-client.js.map +1 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.d.ts +1 -7
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js +1 -303
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-cache-dynamodb-db-service.js.map +1 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.d.ts +10 -9
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js +119 -321
- package/dist/esm/services/db/identity-cache-dynamodb-service/identity-gateway-service.js.map +1 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/index.d.ts +0 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/index.js +0 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/index.js.map +1 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/types.d.ts +9 -157
- package/dist/esm/services/db/identity-cache-dynamodb-service/types.js +0 -14
- package/dist/esm/services/db/identity-cache-dynamodb-service/types.js.map +1 -1
- package/package.json +2 -2
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js +0 -646
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js.map +0 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js +0 -325
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js.map +0 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.d.ts +0 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js +0 -1286
- package/dist/cjs/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js.map +0 -1
- package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.d.ts +0 -26
- package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.js +0 -252
- package/dist/cjs/services/db/identity-cache-dynamodb-service/helpers.js.map +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.d.ts +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js +0 -644
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-db-service-v2-comparison.spec.js.map +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.d.ts +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js +0 -323
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.js.map +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.d.ts +0 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js +0 -1284
- package/dist/esm/__tests__/identity-cache/identity-cache-dynamodb-service.spec.js.map +0 -1
- package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.d.ts +0 -26
- package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.js +0 -235
- package/dist/esm/services/db/identity-cache-dynamodb-service/helpers.js.map +0 -1
- /package/dist/cjs/__tests__/identity-cache/{identity-cache-dynamodb-db-service-v2-comparison.spec.d.ts → identity-client.spec.d.ts} +0 -0
- /package/dist/{cjs/__tests__/identity-cache/identity-cache-dynamodb-service-v2-comparison.spec.d.ts → esm/__tests__/identity-cache/identity-client.spec.d.ts} +0 -0
|
@@ -1,192 +1,44 @@
|
|
|
1
|
-
import { EventContext, EventIdentity,
|
|
2
|
-
import { IDENTITY_CACHE_STALENESS_TIER,
|
|
1
|
+
import { EventContext, EventIdentity, IdentityDynamoDbCache, IdentityMapDynamoDbCache, ForcePurgeDynamoDbCache, IdentityPointerRecord } from '@adtrackify/at-tracking-event-types';
|
|
2
|
+
import { IDENTITY_CACHE_STALENESS_TIER, IdentityCacheTraitChange, IdentityCacheTraitChanges, MergeAndComputeIdentityStalenessResult } from '@adtrackify/at-shared-utils';
|
|
3
3
|
export type { IdentityDynamoDbCache, IdentityMapDynamoDbCache, ForcePurgeDynamoDbCache, IdentityPointerRecord };
|
|
4
|
+
export type { IdentityCacheTraitChange, IdentityCacheTraitChanges };
|
|
4
5
|
export declare enum CACHE_WRITE_REASON {
|
|
5
6
|
CACHE_MISS = "cache_miss",
|
|
6
7
|
STALE_TRAITS = "stale_traits",
|
|
7
8
|
EMAIL_POINTER_DISCOVERY = "email_pointer_discovery",
|
|
8
9
|
ADDRESS_UPDATE = "address_update"
|
|
9
10
|
}
|
|
10
|
-
export interface IdentityCacheResult {
|
|
11
|
-
resolvedIdentity?: EventIdentity;
|
|
12
|
-
isCacheStale: boolean;
|
|
13
|
-
cachedIdentity?: EventIdentity;
|
|
14
|
-
staleTracker?: IdentityCacheStaleTracker;
|
|
15
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
16
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
17
|
-
skipNeptune?: boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare enum IDENTITY_CACHE_LOOKUP_OUTCOME {
|
|
20
|
-
INVALID_INPUT = "invalid_input",
|
|
21
|
-
PRIMARY_CACHE_MISS = "primary_cache_miss",
|
|
22
|
-
PRIMARY_CACHE_MISS_NO_RESPONSE = "primary_cache_miss_no_response",
|
|
23
|
-
PRIMARY_CACHE_HIT = "primary_cache_hit",
|
|
24
|
-
PRIMARY_CACHE_STALE = "primary_cache_stale",
|
|
25
|
-
EMAIL_POINTER_DISCOVERY = "email_pointer_discovery",
|
|
26
|
-
EMAIL_POINTER_MISS = "email_pointer_miss",
|
|
27
|
-
FAILED = "failed"
|
|
28
|
-
}
|
|
29
|
-
export interface IdentityCacheLookupSummary {
|
|
30
|
-
outcome: IDENTITY_CACHE_LOOKUP_OUTCOME;
|
|
31
|
-
pixelId: string;
|
|
32
|
-
identityId?: string;
|
|
33
|
-
didLookupByIdentityId: boolean;
|
|
34
|
-
didLookupByEmail: boolean;
|
|
35
|
-
isDeepEqual?: boolean;
|
|
36
|
-
isCacheStale: boolean;
|
|
37
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
38
|
-
staleTraits: string[];
|
|
39
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
40
|
-
skipNeptune?: boolean;
|
|
41
|
-
cachedIdentity?: EventIdentity;
|
|
42
|
-
incomingIdentity?: EventIdentity;
|
|
43
|
-
mergedIdentity?: EventIdentity;
|
|
44
|
-
resolvedIdentity?: EventIdentity;
|
|
45
|
-
discoveredIdentityId?: string;
|
|
46
|
-
incomingClick?: EventIdentityTraits['click'] | null;
|
|
47
|
-
cachedClick?: EventIdentityTraits['click'] | null;
|
|
48
|
-
mergedClick?: EventIdentityTraits['click'] | null;
|
|
49
|
-
errorMessage?: string;
|
|
50
|
-
}
|
|
51
|
-
export interface IdentityCacheLookupResult {
|
|
52
|
-
cacheResult: IdentityCacheResult;
|
|
53
|
-
summary: IdentityCacheLookupSummary;
|
|
54
|
-
}
|
|
55
|
-
export interface IdentityCacheLookupSummaryInput {
|
|
56
|
-
outcome: IDENTITY_CACHE_LOOKUP_OUTCOME;
|
|
57
|
-
pixelId: string;
|
|
58
|
-
identityId?: string;
|
|
59
|
-
didLookupByIdentityId?: boolean;
|
|
60
|
-
didLookupByEmail?: boolean;
|
|
61
|
-
isDeepEqual?: boolean;
|
|
62
|
-
isCacheStale?: boolean;
|
|
63
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
64
|
-
staleTraits?: string[];
|
|
65
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
66
|
-
skipNeptune?: boolean;
|
|
67
|
-
cachedIdentity?: EventIdentity;
|
|
68
|
-
incomingIdentity?: EventIdentity;
|
|
69
|
-
mergedIdentity?: EventIdentity;
|
|
70
|
-
resolvedIdentity?: EventIdentity;
|
|
71
|
-
discoveredIdentityId?: string;
|
|
72
|
-
errorMessage?: string;
|
|
73
|
-
}
|
|
74
|
-
export interface IdentityCacheLookupState {
|
|
75
|
-
pixelId: string;
|
|
76
|
-
incomingIdentity: EventIdentity;
|
|
77
|
-
cachedIdentityResponse?: IdentityDynamoDbCache;
|
|
78
|
-
cachedIdentity?: EventIdentity;
|
|
79
|
-
mergedIdentity?: EventIdentity;
|
|
80
|
-
resolvedIdentity?: EventIdentity;
|
|
81
|
-
identityStaleCacheTracker?: IdentityCacheStaleTracker;
|
|
82
|
-
discoveredIdentityId?: string;
|
|
83
|
-
didLookupByIdentityId: boolean;
|
|
84
|
-
didLookupByEmail: boolean;
|
|
85
|
-
isDeepEqual?: boolean;
|
|
86
|
-
isCacheStale: boolean;
|
|
87
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
88
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
89
|
-
skipNeptune?: boolean;
|
|
90
|
-
staleTraits: string[];
|
|
91
|
-
}
|
|
92
|
-
export interface IdentityCacheLookupStateSummaryInput extends Partial<IdentityCacheLookupSummaryInput> {
|
|
93
|
-
outcome: IDENTITY_CACHE_LOOKUP_OUTCOME;
|
|
94
|
-
}
|
|
95
11
|
export declare enum IDENTITY_CACHE_WITH_CACHING_OUTCOME {
|
|
96
12
|
INVALID_INPUT = "invalid_input",
|
|
97
13
|
FRESH_CACHE_HIT = "fresh_cache_hit",
|
|
98
14
|
VOLATILE_ONLY_CACHE_HIT = "volatile_only_cache_hit",
|
|
99
|
-
ADDRESS_UPDATE_WRITE = "address_update_write",
|
|
100
15
|
ADDRESS_UPDATE_ASYNC = "address_update_async",
|
|
101
16
|
NEPTUNE_FETCH = "neptune_fetch",
|
|
102
|
-
NEPTUNE_WRITE_BACK = "neptune_write_back",
|
|
103
|
-
NEPTUNE_SKIP_WRITE = "neptune_skip_write",
|
|
104
17
|
NEPTUNE_RESOLVED = "neptune_resolved",
|
|
105
18
|
NEPTUNE_RESOLUTION_FAILED = "neptune_resolution_failed",
|
|
106
19
|
FALLBACK_INCOMING = "fallback_incoming",
|
|
107
20
|
FAILED = "failed"
|
|
108
21
|
}
|
|
109
|
-
export interface
|
|
110
|
-
cached?: unknown;
|
|
111
|
-
resolved?: unknown;
|
|
112
|
-
}
|
|
113
|
-
export interface IdentityCacheTraitChanges {
|
|
114
|
-
[traitName: string]: IdentityCacheTraitChange;
|
|
115
|
-
}
|
|
116
|
-
export interface IdentityCacheWithCachingSummary {
|
|
22
|
+
export interface IdentityResolutionResult {
|
|
117
23
|
outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME;
|
|
118
24
|
pixelId: string;
|
|
119
|
-
identityId?: string;
|
|
120
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
121
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
122
|
-
staleTraits: string[];
|
|
123
|
-
didReadCache: boolean;
|
|
124
|
-
didCallNeptune: boolean;
|
|
125
|
-
didWriteCache: boolean;
|
|
126
|
-
didSkipNeptune: boolean;
|
|
127
|
-
didFallbackToIncoming: boolean;
|
|
128
|
-
didEnqueueAsync: boolean;
|
|
129
|
-
cachedIdentity?: EventIdentity;
|
|
130
|
-
incomingIdentity?: EventIdentity;
|
|
131
|
-
identityForNeptune?: EventIdentity;
|
|
132
|
-
resolvedIdentity?: EventIdentity;
|
|
133
|
-
neptuneIdentity?: EventIdentity;
|
|
134
|
-
incomingClick?: EventIdentityTraits['click'] | null;
|
|
135
|
-
cachedClick?: EventIdentityTraits['click'] | null;
|
|
136
|
-
resolvedClick?: EventIdentityTraits['click'] | null;
|
|
137
|
-
neptuneClick?: EventIdentityTraits['click'] | null;
|
|
138
|
-
traitChanges?: IdentityCacheTraitChanges;
|
|
139
|
-
hasDiscoveredIdentityId?: boolean;
|
|
140
|
-
lookupSummary?: IdentityCacheLookupSummary;
|
|
141
|
-
errorMessage?: string;
|
|
142
|
-
}
|
|
143
|
-
export interface IdentityCacheWithCachingResult {
|
|
144
25
|
identity?: EventIdentity;
|
|
145
|
-
summary: IdentityCacheWithCachingSummary;
|
|
146
|
-
}
|
|
147
|
-
export interface IdentityCacheWithCachingSummaryInput {
|
|
148
|
-
outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME;
|
|
149
|
-
pixelId: string;
|
|
150
26
|
identityId?: string;
|
|
151
|
-
writeReason?: CACHE_WRITE_REASON;
|
|
152
|
-
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
153
|
-
staleTraits?: string[];
|
|
154
|
-
didReadCache?: boolean;
|
|
155
|
-
didCallNeptune?: boolean;
|
|
156
|
-
didWriteCache?: boolean;
|
|
157
|
-
didSkipNeptune?: boolean;
|
|
158
|
-
didFallbackToIncoming?: boolean;
|
|
159
|
-
didEnqueueAsync?: boolean;
|
|
160
|
-
cachedIdentity?: EventIdentity;
|
|
161
27
|
incomingIdentity?: EventIdentity;
|
|
162
|
-
identityForNeptune?: EventIdentity;
|
|
163
|
-
resolvedIdentity?: EventIdentity;
|
|
164
|
-
neptuneIdentity?: EventIdentity;
|
|
165
|
-
traitChanges?: IdentityCacheTraitChanges;
|
|
166
|
-
hasDiscoveredIdentityId?: boolean;
|
|
167
|
-
lookupSummary?: IdentityCacheLookupSummary;
|
|
168
|
-
errorMessage?: string;
|
|
169
|
-
}
|
|
170
|
-
export interface IdentityCacheWithCachingState {
|
|
171
|
-
pixelId: string;
|
|
172
|
-
incomingIdentity?: EventIdentity;
|
|
173
|
-
identifyPrivateLambdaArn: string;
|
|
174
|
-
cacheResponse?: IdentityCacheResult;
|
|
175
|
-
lookupSummary?: IdentityCacheLookupSummary;
|
|
176
|
-
resolvedIdentity?: EventIdentity;
|
|
177
28
|
cachedIdentity?: EventIdentity;
|
|
178
29
|
identityForNeptune?: EventIdentity;
|
|
179
30
|
neptuneIdentity?: EventIdentity;
|
|
180
|
-
|
|
31
|
+
stalenessResult?: MergeAndComputeIdentityStalenessResult;
|
|
32
|
+
staleTier?: IDENTITY_CACHE_STALENESS_TIER;
|
|
33
|
+
writeReason?: CACHE_WRITE_REASON;
|
|
34
|
+
traitChanges?: IdentityCacheTraitChanges;
|
|
181
35
|
didReadCache: boolean;
|
|
182
36
|
didCallNeptune: boolean;
|
|
183
37
|
didWriteCache: boolean;
|
|
184
38
|
didSkipNeptune: boolean;
|
|
185
39
|
didFallbackToIncoming: boolean;
|
|
186
40
|
didEnqueueAsync: boolean;
|
|
187
|
-
|
|
188
|
-
export interface IdentityCacheWithCachingStateSummaryInput extends Partial<IdentityCacheWithCachingSummaryInput> {
|
|
189
|
-
outcome: IDENTITY_CACHE_WITH_CACHING_OUTCOME;
|
|
41
|
+
errorMessage?: string;
|
|
190
42
|
}
|
|
191
43
|
export interface IdentityWithCachingOptions {
|
|
192
44
|
skipCacheWrite?: boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PURE_CACHE_LOOKUP_PATH = exports.IDENTITY_CACHE_WITH_CACHING_OUTCOME = exports.
|
|
3
|
+
exports.PURE_CACHE_LOOKUP_PATH = exports.IDENTITY_CACHE_WITH_CACHING_OUTCOME = exports.CACHE_WRITE_REASON = void 0;
|
|
4
4
|
var CACHE_WRITE_REASON;
|
|
5
5
|
(function (CACHE_WRITE_REASON) {
|
|
6
6
|
CACHE_WRITE_REASON["CACHE_MISS"] = "cache_miss";
|
|
@@ -8,27 +8,13 @@ var CACHE_WRITE_REASON;
|
|
|
8
8
|
CACHE_WRITE_REASON["EMAIL_POINTER_DISCOVERY"] = "email_pointer_discovery";
|
|
9
9
|
CACHE_WRITE_REASON["ADDRESS_UPDATE"] = "address_update";
|
|
10
10
|
})(CACHE_WRITE_REASON = exports.CACHE_WRITE_REASON || (exports.CACHE_WRITE_REASON = {}));
|
|
11
|
-
var IDENTITY_CACHE_LOOKUP_OUTCOME;
|
|
12
|
-
(function (IDENTITY_CACHE_LOOKUP_OUTCOME) {
|
|
13
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["INVALID_INPUT"] = "invalid_input";
|
|
14
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["PRIMARY_CACHE_MISS"] = "primary_cache_miss";
|
|
15
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["PRIMARY_CACHE_MISS_NO_RESPONSE"] = "primary_cache_miss_no_response";
|
|
16
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["PRIMARY_CACHE_HIT"] = "primary_cache_hit";
|
|
17
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["PRIMARY_CACHE_STALE"] = "primary_cache_stale";
|
|
18
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["EMAIL_POINTER_DISCOVERY"] = "email_pointer_discovery";
|
|
19
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["EMAIL_POINTER_MISS"] = "email_pointer_miss";
|
|
20
|
-
IDENTITY_CACHE_LOOKUP_OUTCOME["FAILED"] = "failed";
|
|
21
|
-
})(IDENTITY_CACHE_LOOKUP_OUTCOME = exports.IDENTITY_CACHE_LOOKUP_OUTCOME || (exports.IDENTITY_CACHE_LOOKUP_OUTCOME = {}));
|
|
22
11
|
var IDENTITY_CACHE_WITH_CACHING_OUTCOME;
|
|
23
12
|
(function (IDENTITY_CACHE_WITH_CACHING_OUTCOME) {
|
|
24
13
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["INVALID_INPUT"] = "invalid_input";
|
|
25
14
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["FRESH_CACHE_HIT"] = "fresh_cache_hit";
|
|
26
15
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["VOLATILE_ONLY_CACHE_HIT"] = "volatile_only_cache_hit";
|
|
27
|
-
IDENTITY_CACHE_WITH_CACHING_OUTCOME["ADDRESS_UPDATE_WRITE"] = "address_update_write";
|
|
28
16
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["ADDRESS_UPDATE_ASYNC"] = "address_update_async";
|
|
29
17
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["NEPTUNE_FETCH"] = "neptune_fetch";
|
|
30
|
-
IDENTITY_CACHE_WITH_CACHING_OUTCOME["NEPTUNE_WRITE_BACK"] = "neptune_write_back";
|
|
31
|
-
IDENTITY_CACHE_WITH_CACHING_OUTCOME["NEPTUNE_SKIP_WRITE"] = "neptune_skip_write";
|
|
32
18
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["NEPTUNE_RESOLVED"] = "neptune_resolved";
|
|
33
19
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["NEPTUNE_RESOLUTION_FAILED"] = "neptune_resolution_failed";
|
|
34
20
|
IDENTITY_CACHE_WITH_CACHING_OUTCOME["FALLBACK_INCOMING"] = "fallback_incoming";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":";;;AAaA,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/services/db/identity-cache-dynamodb-service/types.ts"],"names":[],"mappings":";;;AAaA,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,mDAA6B,CAAA;IAC7B,yEAAmD,CAAA;IACnD,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,IAAY,mCAUX;AAVD,WAAY,mCAAmC;IAC7C,sEAA+B,CAAA;IAC/B,0EAAmC,CAAA;IACnC,0FAAmD,CAAA;IACnD,oFAA6C,CAAA;IAC7C,sEAA+B,CAAA;IAC/B,4EAAqC,CAAA;IACrC,8FAAuD,CAAA;IACvD,8EAAuC,CAAA;IACvC,wDAAiB,CAAA;AACnB,CAAC,EAVW,mCAAmC,GAAnC,2CAAmC,KAAnC,2CAAmC,QAU9C;AAiED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,qDAA2B,CAAA;IAC3B,yDAA+B,CAAA;IAC/B,uCAAa,CAAA;AACf,CAAC,EAJW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAIjC"}
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { IDENTITY_CACHE_STALENESS_TIER } from '@adtrackify/at-shared-utils';
|
|
2
|
-
import { processCacheHit, stripAddressTimestamps, computeTraitChanges, } from '../../services/db/identity-cache-dynamodb-service/helpers.js';
|
|
3
|
-
import { CACHE_WRITE_REASON } from '../../services/db/identity-cache-dynamodb-service/types.js';
|
|
1
|
+
import { IDENTITY_CACHE_STALENESS_TIER, mergeAndComputeIdentityStaleness, stripAddressTimestamps, computeTraitChanges } from '@adtrackify/at-shared-utils';
|
|
4
2
|
describe('processCacheHit helper', () => {
|
|
5
3
|
describe('deep equality check behavior', () => {
|
|
6
4
|
it('should return isDeepEqual=true when merged equals cached', () => {
|
|
@@ -18,7 +16,7 @@ describe('processCacheHit helper', () => {
|
|
|
18
16
|
phones: ['555-1234'],
|
|
19
17
|
},
|
|
20
18
|
};
|
|
21
|
-
const result =
|
|
19
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
22
20
|
expect(result.isDeepEqual).toBe(true);
|
|
23
21
|
expect(result.isCacheStale).toBe(false);
|
|
24
22
|
});
|
|
@@ -35,7 +33,7 @@ describe('processCacheHit helper', () => {
|
|
|
35
33
|
emails: ['old@email.com', 'new@email.com'],
|
|
36
34
|
},
|
|
37
35
|
};
|
|
38
|
-
const result =
|
|
36
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
39
37
|
expect(result.isDeepEqual).toBe(false);
|
|
40
38
|
expect(result.isCacheStale).toBe(true);
|
|
41
39
|
});
|
|
@@ -54,7 +52,7 @@ describe('processCacheHit helper', () => {
|
|
|
54
52
|
emails: ['test@email.com'],
|
|
55
53
|
},
|
|
56
54
|
};
|
|
57
|
-
const result =
|
|
55
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
58
56
|
expect(result.isCacheStale).toBe(false);
|
|
59
57
|
});
|
|
60
58
|
it('should detect difference in address content even with timestamp stripping', () => {
|
|
@@ -73,7 +71,7 @@ describe('processCacheHit helper', () => {
|
|
|
73
71
|
addresses: [{ city: 'Boston', cra: now }],
|
|
74
72
|
},
|
|
75
73
|
};
|
|
76
|
-
const result =
|
|
74
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
77
75
|
expect(result.isDeepEqual).toBe(false);
|
|
78
76
|
});
|
|
79
77
|
});
|
|
@@ -92,7 +90,7 @@ describe('processCacheHit helper', () => {
|
|
|
92
90
|
ipAddress: '10.0.0.1',
|
|
93
91
|
},
|
|
94
92
|
};
|
|
95
|
-
const result =
|
|
93
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
96
94
|
expect(result.isVolatileOnly).toBe(true);
|
|
97
95
|
expect(result.staleTier).toBe(IDENTITY_CACHE_STALENESS_TIER.VOLATILE_ONLY);
|
|
98
96
|
});
|
|
@@ -110,7 +108,7 @@ describe('processCacheHit helper', () => {
|
|
|
110
108
|
userAgent: 'Mozilla/5.0',
|
|
111
109
|
},
|
|
112
110
|
};
|
|
113
|
-
const result =
|
|
111
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
114
112
|
expect(result.isVolatileOnly).toBe(true);
|
|
115
113
|
});
|
|
116
114
|
it('should set isCacheStale=false for volatile-only tier (override)', () => {
|
|
@@ -128,7 +126,7 @@ describe('processCacheHit helper', () => {
|
|
|
128
126
|
userAgent: 'Chrome/100',
|
|
129
127
|
},
|
|
130
128
|
};
|
|
131
|
-
const result =
|
|
129
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
132
130
|
expect(result.isVolatileOnly).toBe(true);
|
|
133
131
|
expect(result.isCacheStale).toBe(false);
|
|
134
132
|
});
|
|
@@ -146,7 +144,7 @@ describe('processCacheHit helper', () => {
|
|
|
146
144
|
ipAddress: '10.0.0.1',
|
|
147
145
|
},
|
|
148
146
|
};
|
|
149
|
-
const result =
|
|
147
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
150
148
|
expect(result.skipNeptune).toBe(true);
|
|
151
149
|
});
|
|
152
150
|
it('should return merged identity with volatile traits', () => {
|
|
@@ -164,7 +162,7 @@ describe('processCacheHit helper', () => {
|
|
|
164
162
|
ipAddress: '10.0.0.1',
|
|
165
163
|
},
|
|
166
164
|
};
|
|
167
|
-
const result =
|
|
165
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
168
166
|
expect(result.mergedIdentity.traits?.phones).toContain('555-cached');
|
|
169
167
|
expect(result.mergedIdentity.traits?.ipAddress).toBe('10.0.0.1');
|
|
170
168
|
});
|
|
@@ -185,7 +183,7 @@ describe('processCacheHit helper', () => {
|
|
|
185
183
|
addresses: [{ firstName: 'John', lastName: 'Doe', city: 'NYC' }],
|
|
186
184
|
},
|
|
187
185
|
};
|
|
188
|
-
const result =
|
|
186
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
189
187
|
expect(result.isAddressUpdate).toBe(true);
|
|
190
188
|
expect(result.staleTier).toBe(IDENTITY_CACHE_STALENESS_TIER.ADDRESS_UPDATE);
|
|
191
189
|
});
|
|
@@ -204,8 +202,8 @@ describe('processCacheHit helper', () => {
|
|
|
204
202
|
addresses: [{ firstName: 'Jane', city: 'Boston' }],
|
|
205
203
|
},
|
|
206
204
|
};
|
|
207
|
-
const result =
|
|
208
|
-
expect(result.
|
|
205
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
206
|
+
expect(result.isAddressUpdate).toBe(true);
|
|
209
207
|
});
|
|
210
208
|
it('should set skipNeptune=true for address update tier', () => {
|
|
211
209
|
const cachedIdentity = {
|
|
@@ -222,7 +220,7 @@ describe('processCacheHit helper', () => {
|
|
|
222
220
|
addresses: [{ firstName: 'Test', city: 'TestCity', zip: '12345' }],
|
|
223
221
|
},
|
|
224
222
|
};
|
|
225
|
-
const result =
|
|
223
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
226
224
|
expect(result.skipNeptune).toBe(true);
|
|
227
225
|
});
|
|
228
226
|
it('should set isCacheStale=true for address update tier', () => {
|
|
@@ -240,7 +238,7 @@ describe('processCacheHit helper', () => {
|
|
|
240
238
|
addresses: [{ firstName: 'Test', city: 'TestCity' }],
|
|
241
239
|
},
|
|
242
240
|
};
|
|
243
|
-
const result =
|
|
241
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
244
242
|
expect(result.isCacheStale).toBe(true);
|
|
245
243
|
});
|
|
246
244
|
it('should NOT be address update for IP-sourced addresses', () => {
|
|
@@ -258,7 +256,7 @@ describe('processCacheHit helper', () => {
|
|
|
258
256
|
addresses: [{ city: 'IPCity', country: 'US' }],
|
|
259
257
|
},
|
|
260
258
|
};
|
|
261
|
-
const result =
|
|
259
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
262
260
|
expect(result.isAddressUpdate).toBe(false);
|
|
263
261
|
expect(result.isVolatileOnly).toBe(true);
|
|
264
262
|
});
|
|
@@ -277,7 +275,7 @@ describe('processCacheHit helper', () => {
|
|
|
277
275
|
emails: ['old@email.com', 'new@email.com'],
|
|
278
276
|
},
|
|
279
277
|
};
|
|
280
|
-
const result =
|
|
278
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
281
279
|
expect(result.staleTier).toBe(IDENTITY_CACHE_STALENESS_TIER.IDENTITY_STALE);
|
|
282
280
|
expect(result.isCacheStale).toBe(true);
|
|
283
281
|
});
|
|
@@ -296,8 +294,9 @@ describe('processCacheHit helper', () => {
|
|
|
296
294
|
phones: ['555-old', '555-new'],
|
|
297
295
|
},
|
|
298
296
|
};
|
|
299
|
-
const result =
|
|
300
|
-
expect(result.
|
|
297
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
298
|
+
expect(result.isAddressUpdate).toBe(false);
|
|
299
|
+
expect(result.isCacheStale).toBe(true);
|
|
301
300
|
});
|
|
302
301
|
it('should set skipNeptune=false for identity stale tier', () => {
|
|
303
302
|
const cachedIdentity = {
|
|
@@ -313,7 +312,7 @@ describe('processCacheHit helper', () => {
|
|
|
313
312
|
userIds: ['user-123'],
|
|
314
313
|
},
|
|
315
314
|
};
|
|
316
|
-
const result =
|
|
315
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
317
316
|
expect(result.skipNeptune).toBe(false);
|
|
318
317
|
});
|
|
319
318
|
it('should populate staleTraits with changed trait names', () => {
|
|
@@ -330,7 +329,7 @@ describe('processCacheHit helper', () => {
|
|
|
330
329
|
phones: ['555-new'],
|
|
331
330
|
},
|
|
332
331
|
};
|
|
333
|
-
const result =
|
|
332
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
334
333
|
expect(result.staleTraits).toContain('emails');
|
|
335
334
|
expect(result.staleTraits).toContain('phones');
|
|
336
335
|
});
|
|
@@ -349,7 +348,7 @@ describe('processCacheHit helper', () => {
|
|
|
349
348
|
emails: ['test@email.com'],
|
|
350
349
|
},
|
|
351
350
|
};
|
|
352
|
-
const result =
|
|
351
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
353
352
|
expect(result.isDeepEqual).toBe(true);
|
|
354
353
|
expect(result.isCacheStale).toBe(false);
|
|
355
354
|
});
|
|
@@ -368,7 +367,7 @@ describe('processCacheHit helper', () => {
|
|
|
368
367
|
emails: ['old@email.com', 'new@email.com'],
|
|
369
368
|
},
|
|
370
369
|
};
|
|
371
|
-
const result =
|
|
370
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
372
371
|
expect(result.staleTracker).toBeDefined();
|
|
373
372
|
expect(result.staleTracker.isEmailsStale).toBe(true);
|
|
374
373
|
});
|
|
@@ -388,7 +387,7 @@ describe('processCacheHit helper', () => {
|
|
|
388
387
|
emails: ['cached@email.com', 'new@email.com'],
|
|
389
388
|
},
|
|
390
389
|
};
|
|
391
|
-
const result =
|
|
390
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
392
391
|
expect(result.mergedIdentity.traits?.emails).toContain('cached@email.com');
|
|
393
392
|
expect(result.mergedIdentity.traits?.emails).toContain('new@email.com');
|
|
394
393
|
expect(result.mergedIdentity.traits?.phones).toContain('555-cached');
|
|
@@ -402,7 +401,7 @@ describe('processCacheHit helper', () => {
|
|
|
402
401
|
identityId: 'incoming-identity-id',
|
|
403
402
|
traits: { emails: ['test@email.com'] },
|
|
404
403
|
};
|
|
405
|
-
const result =
|
|
404
|
+
const result = mergeAndComputeIdentityStaleness(incomingIdentity, cachedIdentity);
|
|
406
405
|
expect(result.mergedIdentity.identityId).toBe('incoming-identity-id');
|
|
407
406
|
});
|
|
408
407
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/helpers.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.spec.js","sourceRoot":"","sources":["../../../../src/__tests__/identity-cache/helpers.spec.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,6BAA6B,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAE3J,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IAStC,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,CAAC,UAAU,CAAC;iBACrB;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,CAAC,UAAU,CAAC;iBACrB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,CAAC;iBAC1B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;iBAC3C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEvC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAIvB,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI,EAAE,CAAC;iBACnF;aACF,CAAC;YAIF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAG3B;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAIlF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEvB,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;iBACvC;aACF,CAAC;YAGF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;iBAC1C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACvE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAE3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,UAAU;iBACtB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACvE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAE3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,aAAa;iBACzB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAC3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,aAAa;oBACxB,SAAS,EAAE,YAAY;iBACxB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAGlF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAC3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,UAAU;iBACtB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,CAAC,YAAY,CAAC;iBACvB;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,UAAU;iBACtB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAGlF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACrE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAGF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;iBACjE;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACvE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;iBACnD;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;iBACnE;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;iBACrD;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAGlF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,EAAE;iBACd;aACF,CAAC;YAGF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iBAC/C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAGlF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,CAAC;iBAC1B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;iBAC3C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;YAC5E,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;YACrE,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,CAAC,SAAS,CAAC;iBACpB;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;iBAC/B;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAC3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;oBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC;iBACtB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,CAAC;iBAC1B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;oBAC1C,MAAM,EAAE,CAAC,SAAS,CAAC;iBACpB;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACvD,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;YAG3F,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAC3B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;iBAC3B;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;YACpF,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,CAAC;iBAC1B;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;iBAC3C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAElF,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;YAE1C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,kBAAkB,CAAC;oBAC5B,MAAM,EAAE,CAAC,YAAY,CAAC;iBACvB;aACF,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE;oBACN,MAAM,EAAE,CAAC,kBAAkB,EAAE,eAAe,CAAC;iBAC9C;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAGlF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAC3E,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YACxE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,MAAM,cAAc,GAAkB;gBACpC,UAAU,EAAE,oBAAoB;gBAChC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,gBAAgB,CAAC,EAAE;aACvC,CAAC;YAEF,MAAM,gBAAgB,GAAkB;gBACtC,UAAU,EAAE,sBAAsB;gBAClC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,gBAAgB,CAAC,EAAE;aACvC,CAAC;YAEF,MAAM,MAAM,GAAG,gCAAgC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;YAIlF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,SAAS,EAAE;oBACT,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE;oBACjD,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE;iBACjD;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEhD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAExD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;aAC3B;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,SAAS,EAAE,EAAE;aACd;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,SAAS,EAAE;oBACT;wBACE,SAAS,EAAE,MAAM;wBACjB,QAAQ,EAAE,KAAK;wBACf,IAAI,EAAE,KAAK;wBACX,GAAG,EAAE,OAAO;wBACZ,OAAO,EAAE,IAAI;wBACb,GAAG,EAAE,MAAM;wBACX,GAAG,EAAE,MAAM;qBACZ;iBACF;aACF;SACF,CAAC;QAEF,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEhD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE;SACtC,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC,EAAE;SACvD,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE;SAChC,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;SAC3C,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;SACzC,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE;SACzD,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,EAAE;SACX,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,QAAQ;YACpB,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SAClC,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE;SAClC,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE;SACzC,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE;SACzC,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;gBAC1B,MAAM,EAAE,CAAC,UAAU,CAAC;aACrB;SACF,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE;gBACN,MAAM,EAAE,CAAC,gBAAgB,CAAC;gBAC1B,MAAM,EAAE,CAAC,UAAU,CAAC;aACrB;SACF,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,MAAM,GAAkB;YAC5B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,SAAS;SAClB,CAAC;QACF,MAAM,QAAQ,GAAkB;YAC9B,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE;SACtC,CAAC;QAEF,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|