@segment/action-destinations 3.251.0-staging-1f4226ae9 → 3.252.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.
Files changed (173) hide show
  1. package/dist/destinations/engage/utils/track.d.ts +17 -17
  2. package/dist/destinations/index.js +1 -0
  3. package/dist/destinations/index.js.map +1 -1
  4. package/dist/destinations/insider/cartViewedEvent/generated-types.d.ts +3 -0
  5. package/dist/destinations/insider/cartViewedEvent/index.js +1 -0
  6. package/dist/destinations/insider/cartViewedEvent/index.js.map +1 -1
  7. package/dist/destinations/insider/checkoutEvent/generated-types.d.ts +3 -0
  8. package/dist/destinations/insider/checkoutEvent/index.js +1 -0
  9. package/dist/destinations/insider/checkoutEvent/index.js.map +1 -1
  10. package/dist/destinations/insider/insider-helpers.js +20 -1
  11. package/dist/destinations/insider/insider-helpers.js.map +1 -1
  12. package/dist/destinations/insider/insider-properties.d.ts +1 -0
  13. package/dist/destinations/insider/insider-properties.js +8 -1
  14. package/dist/destinations/insider/insider-properties.js.map +1 -1
  15. package/dist/destinations/insider/orderCompletedEvent/generated-types.d.ts +3 -0
  16. package/dist/destinations/insider/orderCompletedEvent/index.js +1 -0
  17. package/dist/destinations/insider/orderCompletedEvent/index.js.map +1 -1
  18. package/dist/destinations/insider/productAddedEvent/generated-types.d.ts +3 -0
  19. package/dist/destinations/insider/productAddedEvent/index.js +1 -0
  20. package/dist/destinations/insider/productAddedEvent/index.js.map +1 -1
  21. package/dist/destinations/insider/productListViewedEvent/generated-types.d.ts +3 -0
  22. package/dist/destinations/insider/productListViewedEvent/index.js +1 -0
  23. package/dist/destinations/insider/productListViewedEvent/index.js.map +1 -1
  24. package/dist/destinations/insider/productRemovedEvent/generated-types.d.ts +3 -0
  25. package/dist/destinations/insider/productRemovedEvent/index.js +1 -0
  26. package/dist/destinations/insider/productRemovedEvent/index.js.map +1 -1
  27. package/dist/destinations/insider/productViewedEvent/generated-types.d.ts +3 -0
  28. package/dist/destinations/insider/productViewedEvent/index.js +1 -0
  29. package/dist/destinations/insider/productViewedEvent/index.js.map +1 -1
  30. package/dist/destinations/insider/trackEvent/generated-types.d.ts +3 -0
  31. package/dist/destinations/insider/trackEvent/index.js +1 -0
  32. package/dist/destinations/insider/trackEvent/index.js.map +1 -1
  33. package/dist/destinations/insider/updateUserProfile/generated-types.d.ts +3 -0
  34. package/dist/destinations/insider/updateUserProfile/index.js +6 -0
  35. package/dist/destinations/insider/updateUserProfile/index.js.map +1 -1
  36. package/dist/destinations/insider/userRegisteredEvent/generated-types.d.ts +3 -0
  37. package/dist/destinations/insider/userRegisteredEvent/index.js +1 -0
  38. package/dist/destinations/insider/userRegisteredEvent/index.js.map +1 -1
  39. package/dist/destinations/klaviyo/index.js +7 -1
  40. package/dist/destinations/klaviyo/index.js.map +1 -1
  41. package/dist/destinations/linkedin-conversions/api/index.js +4 -4
  42. package/dist/destinations/linkedin-conversions/api/index.js.map +1 -1
  43. package/dist/destinations/linkedin-conversions/constants.d.ts +2 -0
  44. package/dist/destinations/linkedin-conversions/constants.js +3 -1
  45. package/dist/destinations/linkedin-conversions/constants.js.map +1 -1
  46. package/dist/destinations/linkedin-conversions/streamConversion/index.js +1 -1
  47. package/dist/destinations/linkedin-conversions/streamConversion/index.js.map +1 -1
  48. package/dist/destinations/moloco-rmp/addToCart/generated-types.d.ts +28 -0
  49. package/dist/destinations/moloco-rmp/addToCart/generated-types.js.map +1 -0
  50. package/dist/destinations/moloco-rmp/addToCart/index.js +44 -0
  51. package/dist/destinations/moloco-rmp/addToCart/index.js.map +1 -0
  52. package/dist/destinations/moloco-rmp/addToWishlist/generated-types.d.ts +32 -0
  53. package/dist/destinations/moloco-rmp/addToWishlist/generated-types.js.map +1 -0
  54. package/dist/destinations/{responsys/asyncMergePetRecords → moloco-rmp/addToWishlist}/index.d.ts +1 -1
  55. package/dist/destinations/moloco-rmp/addToWishlist/index.js +45 -0
  56. package/dist/destinations/moloco-rmp/addToWishlist/index.js.map +1 -0
  57. package/dist/destinations/moloco-rmp/common/convert.d.ts +9 -0
  58. package/dist/destinations/moloco-rmp/common/convert.js +71 -0
  59. package/dist/destinations/moloco-rmp/common/convert.js.map +1 -0
  60. package/dist/destinations/moloco-rmp/common/event.d.ts +10 -0
  61. package/dist/destinations/moloco-rmp/common/event.js +15 -0
  62. package/dist/destinations/moloco-rmp/common/event.js.map +1 -0
  63. package/dist/destinations/moloco-rmp/common/fields.d.ts +14 -0
  64. package/dist/destinations/moloco-rmp/common/fields.js +348 -0
  65. package/dist/destinations/moloco-rmp/common/fields.js.map +1 -0
  66. package/dist/destinations/moloco-rmp/common/payload/moloco.d.ts +35 -0
  67. package/dist/destinations/{engage/sendgrid/Profile.js → moloco-rmp/common/payload/moloco.js} +1 -1
  68. package/dist/destinations/moloco-rmp/common/payload/moloco.js.map +1 -0
  69. package/dist/destinations/moloco-rmp/common/payload/segment.d.ts +40 -0
  70. package/dist/destinations/moloco-rmp/common/payload/segment.js +3 -0
  71. package/dist/destinations/moloco-rmp/common/payload/segment.js.map +1 -0
  72. package/dist/destinations/moloco-rmp/common/request-client.d.ts +11 -0
  73. package/dist/destinations/moloco-rmp/common/request-client.js +28 -0
  74. package/dist/destinations/moloco-rmp/common/request-client.js.map +1 -0
  75. package/dist/destinations/moloco-rmp/common/settings.d.ts +4 -0
  76. package/dist/destinations/moloco-rmp/common/settings.js +3 -0
  77. package/dist/destinations/moloco-rmp/common/settings.js.map +1 -0
  78. package/dist/destinations/moloco-rmp/generated-types.d.ts +5 -0
  79. package/dist/destinations/moloco-rmp/generated-types.js.map +1 -0
  80. package/dist/destinations/moloco-rmp/home/generated-types.d.ts +28 -0
  81. package/dist/destinations/moloco-rmp/home/generated-types.js +3 -0
  82. package/dist/destinations/moloco-rmp/home/generated-types.js.map +1 -0
  83. package/dist/destinations/{responsys/asyncMergeProfileListMembers → moloco-rmp/home}/index.d.ts +1 -1
  84. package/dist/destinations/moloco-rmp/home/index.js +29 -0
  85. package/dist/destinations/moloco-rmp/home/index.js.map +1 -0
  86. package/dist/destinations/moloco-rmp/index.d.ts +4 -0
  87. package/dist/destinations/moloco-rmp/index.js +117 -0
  88. package/dist/destinations/moloco-rmp/index.js.map +1 -0
  89. package/dist/destinations/moloco-rmp/itemPageView/generated-types.d.ts +28 -0
  90. package/dist/destinations/moloco-rmp/itemPageView/generated-types.js +3 -0
  91. package/dist/destinations/moloco-rmp/itemPageView/generated-types.js.map +1 -0
  92. package/dist/destinations/moloco-rmp/itemPageView/index.d.ts +5 -0
  93. package/dist/destinations/moloco-rmp/itemPageView/index.js +44 -0
  94. package/dist/destinations/moloco-rmp/itemPageView/index.js.map +1 -0
  95. package/dist/destinations/moloco-rmp/land/generated-types.d.ts +29 -0
  96. package/dist/destinations/moloco-rmp/land/generated-types.js +3 -0
  97. package/dist/destinations/moloco-rmp/land/generated-types.js.map +1 -0
  98. package/dist/destinations/moloco-rmp/land/index.d.ts +5 -0
  99. package/dist/destinations/moloco-rmp/land/index.js +33 -0
  100. package/dist/destinations/moloco-rmp/land/index.js.map +1 -0
  101. package/dist/destinations/moloco-rmp/pageView/generated-types.d.ts +29 -0
  102. package/dist/destinations/moloco-rmp/pageView/generated-types.js +3 -0
  103. package/dist/destinations/moloco-rmp/pageView/generated-types.js.map +1 -0
  104. package/dist/destinations/moloco-rmp/pageView/index.d.ts +5 -0
  105. package/dist/destinations/moloco-rmp/pageView/index.js +36 -0
  106. package/dist/destinations/moloco-rmp/pageView/index.js.map +1 -0
  107. package/dist/destinations/moloco-rmp/purchase/generated-types.d.ts +36 -0
  108. package/dist/destinations/moloco-rmp/purchase/generated-types.js +3 -0
  109. package/dist/destinations/moloco-rmp/purchase/generated-types.js.map +1 -0
  110. package/dist/destinations/moloco-rmp/purchase/index.d.ts +5 -0
  111. package/dist/destinations/moloco-rmp/purchase/index.js +37 -0
  112. package/dist/destinations/moloco-rmp/purchase/index.js.map +1 -0
  113. package/dist/destinations/moloco-rmp/search/generated-types.d.ts +30 -0
  114. package/dist/destinations/moloco-rmp/search/generated-types.js +3 -0
  115. package/dist/destinations/moloco-rmp/search/generated-types.js.map +1 -0
  116. package/dist/destinations/moloco-rmp/search/index.d.ts +5 -0
  117. package/dist/destinations/moloco-rmp/search/index.js +34 -0
  118. package/dist/destinations/moloco-rmp/search/index.js.map +1 -0
  119. package/dist/destinations/responsys/index.d.ts +1 -1
  120. package/dist/destinations/responsys/index.js +12 -2
  121. package/dist/destinations/responsys/index.js.map +1 -1
  122. package/dist/destinations/responsys/sendAudience/generated-types.d.ts +1 -0
  123. package/dist/destinations/responsys/sendAudience/index.js +17 -5
  124. package/dist/destinations/responsys/sendAudience/index.js.map +1 -1
  125. package/dist/destinations/responsys/sendCustomTraits/generated-types.d.ts +1 -0
  126. package/dist/destinations/responsys/sendCustomTraits/index.js +17 -5
  127. package/dist/destinations/responsys/sendCustomTraits/index.js.map +1 -1
  128. package/dist/destinations/responsys/utils.d.ts +3 -1
  129. package/dist/destinations/responsys/utils.js +11 -3
  130. package/dist/destinations/responsys/utils.js.map +1 -1
  131. package/dist/destinations/segment-profiles/index.js +1 -3
  132. package/dist/destinations/segment-profiles/index.js.map +1 -1
  133. package/dist/destinations/segment-profiles/segment-properties.d.ts +0 -2
  134. package/dist/destinations/segment-profiles/segment-properties.js +1 -14
  135. package/dist/destinations/segment-profiles/segment-properties.js.map +1 -1
  136. package/dist/destinations/snap-conversions-api/_tests_/capiV3tests.js +81 -4
  137. package/dist/destinations/snap-conversions-api/_tests_/capiV3tests.js.map +1 -1
  138. package/dist/destinations/snap-conversions-api/reportConversionEvent/snap-capi-v3.js +12 -9
  139. package/dist/destinations/snap-conversions-api/reportConversionEvent/snap-capi-v3.js.map +1 -1
  140. package/dist/destinations/snap-conversions-api/reportConversionEvent/utils.d.ts +1 -0
  141. package/dist/destinations/snap-conversions-api/reportConversionEvent/utils.js +16 -2
  142. package/dist/destinations/snap-conversions-api/reportConversionEvent/utils.js.map +1 -1
  143. package/package.json +4 -4
  144. package/dist/destinations/engage/sendgrid/Profile.d.ts +0 -6
  145. package/dist/destinations/engage/sendgrid/Profile.js.map +0 -1
  146. package/dist/destinations/engage/sendgrid/previewApiLookup/api-lookups.d.ts +0 -21
  147. package/dist/destinations/engage/sendgrid/previewApiLookup/api-lookups.js +0 -174
  148. package/dist/destinations/engage/sendgrid/previewApiLookup/api-lookups.js.map +0 -1
  149. package/dist/destinations/responsys/asyncMergePetRecords/generated-types.d.ts +0 -14
  150. package/dist/destinations/responsys/asyncMergePetRecords/generated-types.js.map +0 -1
  151. package/dist/destinations/responsys/asyncMergePetRecords/index.js +0 -113
  152. package/dist/destinations/responsys/asyncMergePetRecords/index.js.map +0 -1
  153. package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.d.ts +0 -20
  154. package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.js.map +0 -1
  155. package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js +0 -174
  156. package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js.map +0 -1
  157. package/dist/destinations/responsys/rsp-operations.d.ts +0 -14
  158. package/dist/destinations/responsys/rsp-operations.js +0 -33
  159. package/dist/destinations/responsys/rsp-operations.js.map +0 -1
  160. package/dist/destinations/responsys/rsp-properties.d.ts +0 -4
  161. package/dist/destinations/responsys/rsp-properties.js +0 -27
  162. package/dist/destinations/responsys/rsp-properties.js.map +0 -1
  163. package/dist/destinations/segment-profiles/sendTrack/generated-types.d.ts +0 -11
  164. package/dist/destinations/segment-profiles/sendTrack/generated-types.js.map +0 -1
  165. package/dist/destinations/segment-profiles/sendTrack/index.js +0 -42
  166. package/dist/destinations/segment-profiles/sendTrack/index.js.map +0 -1
  167. package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.d.ts +0 -3
  168. package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js +0 -43
  169. package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js.map +0 -1
  170. /package/dist/destinations/{responsys/asyncMergePetRecords → moloco-rmp/addToCart}/generated-types.js +0 -0
  171. /package/dist/destinations/{segment-profiles/sendTrack → moloco-rmp/addToCart}/index.d.ts +0 -0
  172. /package/dist/destinations/{responsys/asyncMergeProfileListMembers → moloco-rmp/addToWishlist}/generated-types.js +0 -0
  173. /package/dist/destinations/{segment-profiles/sendTrack → moloco-rmp}/generated-types.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"rsp-properties.js","sourceRoot":"","sources":["../../../src/destinations/responsys/rsp-properties.ts"],"names":[],"mappings":";;;AAGa,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,eAAe;IAChC,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;CAC3B,CAAA;AAEY,QAAA,eAAe,GAAe;IACzC,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,4FAA4F;IACzG,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,IAAI;CACpB,CAAA;AAEY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,qFAAqF;IAClG,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,KAAK;IACf,aAAa,EAAE,IAAI;IACnB,OAAO,EAAE,GAAG;CACb,CAAA"}
@@ -1,11 +0,0 @@
1
- export interface Payload {
2
- engage_space: string;
3
- user_id?: string;
4
- anonymous_id?: string;
5
- timestamp?: string | number;
6
- event_name: string;
7
- group_id?: string;
8
- properties?: {
9
- [k: string]: unknown;
10
- };
11
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/segment-profiles/sendTrack/generated-types.ts"],"names":[],"mappings":""}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const segment_properties_1 = require("../segment-properties");
4
- const errors_1 = require("../errors");
5
- const action = {
6
- title: 'Send Track',
7
- description: 'Send a track call to Segment’s tracking API. This is used to record actions your users perform.',
8
- fields: {
9
- engage_space: segment_properties_1.engage_space,
10
- user_id: segment_properties_1.user_id,
11
- anonymous_id: segment_properties_1.anonymous_id,
12
- timestamp: segment_properties_1.timestamp,
13
- event_name: segment_properties_1.event_name,
14
- group_id: segment_properties_1.group_id,
15
- properties: segment_properties_1.properties
16
- },
17
- perform: (_, { payload, statsContext }) => {
18
- if (!payload.anonymous_id && !payload.user_id) {
19
- throw errors_1.MissingUserOrAnonymousIdThrowableError;
20
- }
21
- statsContext?.statsClient?.incr('tapi_internal', 1, [...statsContext.tags, `action:sendTrack`]);
22
- return {
23
- batch: [
24
- {
25
- userId: payload?.user_id,
26
- anonymousId: payload?.anonymous_id,
27
- timestamp: payload?.timestamp,
28
- event: payload?.event_name,
29
- integrations: {
30
- All: false
31
- },
32
- properties: {
33
- ...payload?.properties
34
- },
35
- type: 'track'
36
- }
37
- ]
38
- };
39
- }
40
- };
41
- exports.default = action;
42
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/segment-profiles/sendTrack/index.ts"],"names":[],"mappings":";;AAGA,8DAAwH;AACxH,sCAAkE;AAElE,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,iGAAiG;IAC9G,MAAM,EAAE;QACN,YAAY,EAAZ,iCAAY;QACZ,OAAO,EAAP,4BAAO;QACP,YAAY,EAAZ,iCAAY;QACZ,SAAS,EAAT,8BAAS;QACT,UAAU,EAAV,+BAAU;QACV,QAAQ,EAAR,6BAAQ;QACR,UAAU,EAAV,+BAAU;KACX;IACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE;QACxC,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC7C,MAAM,+CAAsC,CAAA;SAC7C;QACD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAA;QAE/F,OAAO;YACL,KAAK,EAAE;gBACL;oBACE,MAAM,EAAE,OAAO,EAAE,OAAO;oBACxB,WAAW,EAAE,OAAO,EAAE,YAAY;oBAClC,SAAS,EAAE,OAAO,EAAE,SAAS;oBAC7B,KAAK,EAAE,OAAO,EAAE,UAAU;oBAC1B,YAAY,EAAE;wBAGZ,GAAG,EAAE,KAAK;qBACX;oBACD,UAAU,EAAE;wBACV,GAAG,OAAO,EAAE,UAAU;qBACvB;oBACD,IAAI,EAAE,OAAO;iBACd;aACF;SACF,CAAA;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -1,3 +0,0 @@
1
- export declare const formatEmails: (email_addresses: string[] | undefined) => string[];
2
- export declare function formatUserIds(userIds: string[] | undefined): string[];
3
- export declare const formatPhones: (phone_numbers: string[] | undefined) => string[];
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatPhones = exports.formatUserIds = exports.formatEmails = void 0;
4
- const crypto_1 = require("crypto");
5
- const formatEmails = (email_addresses) => {
6
- const result = [];
7
- if (email_addresses) {
8
- email_addresses.forEach((email) => {
9
- result.push(hashAndEncode(email.toLowerCase()));
10
- });
11
- }
12
- return result;
13
- };
14
- exports.formatEmails = formatEmails;
15
- function formatUserIds(userIds) {
16
- const result = [];
17
- if (userIds) {
18
- userIds.forEach((userId) => {
19
- result.push(hashAndEncode(userId.toLowerCase()));
20
- });
21
- }
22
- return result;
23
- }
24
- exports.formatUserIds = formatUserIds;
25
- const formatPhones = (phone_numbers) => {
26
- const result = [];
27
- if (!phone_numbers)
28
- return result;
29
- phone_numbers.forEach((phone) => {
30
- const validatedPhone = phone.match(/[0-9]{0,14}/g);
31
- if (validatedPhone === null) {
32
- throw new Error(`${phone} is not a valid E.164 phone number.`);
33
- }
34
- const formattedPhone = `+${phone.replace(/[^0-9]/g, '')}`;
35
- result.push(hashAndEncode(formattedPhone.substring(0, 15)));
36
- });
37
- return result;
38
- };
39
- exports.formatPhones = formatPhones;
40
- function hashAndEncode(property) {
41
- return crypto_1.createHash('sha256').update(property).digest('hex');
42
- }
43
- //# sourceMappingURL=formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../../../src/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AAK5B,MAAM,YAAY,GAAG,CAAC,eAAqC,EAAY,EAAE;IAC9E,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,eAAe,EAAE;QACnB,eAAe,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YACxC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;KACH;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AARY,QAAA,YAAY,gBAQxB;AAOD,SAAgB,aAAa,CAAC,OAA6B;IACzD,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,OAAO,EAAE;QACX,OAAO,CAAC,OAAO,CAAC,CAAC,MAAc,EAAE,EAAE;YACjC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;KACH;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AARD,sCAQC;AAOM,MAAM,YAAY,GAAG,CAAC,aAAmC,EAAY,EAAE;IAC5E,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,CAAC,aAAa;QAAE,OAAO,MAAM,CAAA;IAEjC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;QACtC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAClD,IAAI,cAAc,KAAK,IAAI,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,qCAAqC,CAAC,CAAA;SAC/D;QAED,MAAM,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,EAAE,CAAA;QAEzD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAhBY,QAAA,YAAY,gBAgBxB;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,OAAO,mBAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC5D,CAAC"}