@aws-amplify/datastore 5.0.14 → 5.0.15-node-20-action.f356afc.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 (70) hide show
  1. package/dist/cjs/authModeStrategies/defaultAuthStrategy.js.map +1 -1
  2. package/dist/cjs/authModeStrategies/index.js.map +1 -1
  3. package/dist/cjs/authModeStrategies/multiAuthStrategy.js.map +1 -1
  4. package/dist/cjs/datastore/datastore.js.map +1 -1
  5. package/dist/cjs/datastore/utils.js.map +1 -1
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/predicates/index.js +1 -1
  8. package/dist/cjs/predicates/index.js.map +1 -1
  9. package/dist/cjs/predicates/next.js.map +1 -1
  10. package/dist/cjs/predicates/sort.js +1 -1
  11. package/dist/cjs/predicates/sort.js.map +1 -1
  12. package/dist/cjs/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  13. package/dist/cjs/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  14. package/dist/cjs/storage/adapter/InMemoryStore.js.map +1 -1
  15. package/dist/cjs/storage/adapter/InMemoryStore.native.js.map +1 -1
  16. package/dist/cjs/storage/adapter/IndexedDBAdapter.js.map +1 -1
  17. package/dist/cjs/storage/adapter/StorageAdapterBase.js.map +1 -1
  18. package/dist/cjs/storage/adapter/getDefaultAdapter/index.js.map +1 -1
  19. package/dist/cjs/storage/adapter/getDefaultAdapter/index.native.js.map +1 -1
  20. package/dist/cjs/storage/adapter/index.js.map +1 -1
  21. package/dist/cjs/storage/relationship.js.map +1 -1
  22. package/dist/cjs/storage/storage.js.map +1 -1
  23. package/dist/cjs/sync/datastoreConnectivity.js.map +1 -1
  24. package/dist/cjs/sync/datastoreReachability/index.js.map +1 -1
  25. package/dist/cjs/sync/datastoreReachability/index.native.js.map +1 -1
  26. package/dist/cjs/sync/index.js.map +1 -1
  27. package/dist/cjs/sync/merger.js.map +1 -1
  28. package/dist/cjs/sync/outbox.js +4 -2
  29. package/dist/cjs/sync/outbox.js.map +1 -1
  30. package/dist/cjs/sync/processors/errorMaps.js.map +1 -1
  31. package/dist/cjs/sync/processors/mutation.js.map +1 -1
  32. package/dist/cjs/sync/processors/subscription.js.map +1 -1
  33. package/dist/cjs/sync/processors/sync.js.map +1 -1
  34. package/dist/cjs/sync/utils.js.map +1 -1
  35. package/dist/cjs/types.js.map +1 -1
  36. package/dist/cjs/util.js.map +1 -1
  37. package/dist/esm/authModeStrategies/defaultAuthStrategy.mjs.map +1 -1
  38. package/dist/esm/authModeStrategies/multiAuthStrategy.mjs.map +1 -1
  39. package/dist/esm/datastore/datastore.mjs.map +1 -1
  40. package/dist/esm/datastore/utils.mjs.map +1 -1
  41. package/dist/esm/index.mjs.map +1 -1
  42. package/dist/esm/predicates/index.mjs.map +1 -1
  43. package/dist/esm/predicates/next.mjs.map +1 -1
  44. package/dist/esm/predicates/sort.mjs.map +1 -1
  45. package/dist/esm/storage/adapter/AsyncStorageAdapter.mjs.map +1 -1
  46. package/dist/esm/storage/adapter/AsyncStorageDatabase.mjs.map +1 -1
  47. package/dist/esm/storage/adapter/InMemoryStore.mjs.map +1 -1
  48. package/dist/esm/storage/adapter/InMemoryStore.native.mjs.map +1 -1
  49. package/dist/esm/storage/adapter/IndexedDBAdapter.mjs.map +1 -1
  50. package/dist/esm/storage/adapter/StorageAdapterBase.mjs.map +1 -1
  51. package/dist/esm/storage/adapter/getDefaultAdapter/index.mjs.map +1 -1
  52. package/dist/esm/storage/adapter/getDefaultAdapter/index.native.mjs.map +1 -1
  53. package/dist/esm/storage/relationship.mjs.map +1 -1
  54. package/dist/esm/storage/storage.mjs.map +1 -1
  55. package/dist/esm/sync/datastoreConnectivity.mjs.map +1 -1
  56. package/dist/esm/sync/datastoreReachability/index.mjs.map +1 -1
  57. package/dist/esm/sync/datastoreReachability/index.native.mjs.map +1 -1
  58. package/dist/esm/sync/index.mjs.map +1 -1
  59. package/dist/esm/sync/merger.mjs.map +1 -1
  60. package/dist/esm/sync/outbox.mjs +4 -2
  61. package/dist/esm/sync/outbox.mjs.map +1 -1
  62. package/dist/esm/sync/processors/errorMaps.mjs.map +1 -1
  63. package/dist/esm/sync/processors/mutation.mjs.map +1 -1
  64. package/dist/esm/sync/processors/subscription.mjs.map +1 -1
  65. package/dist/esm/sync/processors/sync.mjs.map +1 -1
  66. package/dist/esm/sync/utils.mjs.map +1 -1
  67. package/dist/esm/types.mjs.map +1 -1
  68. package/dist/esm/util.mjs.map +1 -1
  69. package/package.json +73 -72
  70. package/src/sync/outbox.ts +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"defaultAuthStrategy.js","sources":["../../../../src/authModeStrategies/defaultAuthStrategy.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIA;AACA;AACA;AACO,MAAM,mBAAmB,GAAqB,MAAM,EAAE,CAAC;AAAjD,OAAA,CAAA,mBAAmB,GAA8B,mBAAA;;"}
1
+ {"version":3,"file":"defaultAuthStrategy.js","sources":["../../../src/authModeStrategies/defaultAuthStrategy.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultAuthStrategy = void 0;\n// Default behavior is to use the primary auth mode for an API,\n// so we are returning an empty array so that DataStore will default\n// to using the primary auth mode.\nconst defaultAuthStrategy = () => [];\nexports.defaultAuthStrategy = defaultAuthStrategy;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;AACrC;AACA;AACA;AACA,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC;AACrC,OAAO,CAAC,mBAAmB,GAAG,mBAAmB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/authModeStrategies/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;AACA;AACA,IAA4D,qBAAA,GAAA,OAAA,CAAA,uBAAA,CAAA,CAAA;AAAnD,MAAA,CAAA,cAAA,CAAA,OAAA,EAAA,qBAAA,EAAA,EAAA,UAAA,EAAA,IAAA,EAAA,GAAA,EAAA,YAAA,EAAA,OAAA,qBAAA,CAAA,mBAAmB,CAAA,EAAA,EAAA,CAAA,CAAA;AAC5B,IAAwD,mBAAA,GAAA,OAAA,CAAA,qBAAA,CAAA,CAAA;AAA/C,MAAA,CAAA,cAAA,CAAA,OAAA,EAAA,mBAAA,EAAA,EAAA,UAAA,EAAA,IAAA,EAAA,GAAA,EAAA,YAAA,EAAA,OAAA,mBAAA,CAAA,iBAAiB,CAAA,EAAA,EAAA,CAAA;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/authModeStrategies/index.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.multiAuthStrategy = exports.defaultAuthStrategy = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar defaultAuthStrategy_1 = require(\"./defaultAuthStrategy\");\nObject.defineProperty(exports, \"defaultAuthStrategy\", { enumerable: true, get: function () { return defaultAuthStrategy_1.defaultAuthStrategy; } });\nvar multiAuthStrategy_1 = require(\"./multiAuthStrategy\");\nObject.defineProperty(exports, \"multiAuthStrategy\", { enumerable: true, get: function () { return multiAuthStrategy_1.multiAuthStrategy; } });\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;AACjE;AACA;AACA,IAAI,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAC7D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,qBAAqB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,qBAAqB,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC;AACpJ,IAAI,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AACzD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"multiAuthStrategy.js","sources":["../../../../src/authModeStrategies/multiAuthStrategy.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiAuthStrategy.js","sources":["../../../src/authModeStrategies/multiAuthStrategy.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.multiAuthStrategy = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst types_1 = require(\"../types\");\nfunction getProviderFromRule(rule) {\n // private with no provider means userPools\n if (rule.allow === 'private' && !rule.provider) {\n return types_1.ModelAttributeAuthProvider.USER_POOLS;\n }\n // public with no provider means apiKey\n if (rule.allow === 'public' && !rule.provider) {\n return types_1.ModelAttributeAuthProvider.API_KEY;\n }\n return rule.provider;\n}\nfunction sortAuthRulesWithPriority(rules) {\n const allowSortPriority = [\n types_1.ModelAttributeAuthAllow.CUSTOM,\n types_1.ModelAttributeAuthAllow.OWNER,\n types_1.ModelAttributeAuthAllow.GROUPS,\n types_1.ModelAttributeAuthAllow.PRIVATE,\n types_1.ModelAttributeAuthAllow.PUBLIC,\n ];\n const providerSortPriority = [\n types_1.ModelAttributeAuthProvider.FUNCTION,\n types_1.ModelAttributeAuthProvider.USER_POOLS,\n types_1.ModelAttributeAuthProvider.OIDC,\n types_1.ModelAttributeAuthProvider.IAM,\n types_1.ModelAttributeAuthProvider.API_KEY,\n ];\n return [...rules].sort((a, b) => {\n if (a.allow === b.allow) {\n return (providerSortPriority.indexOf(getProviderFromRule(a)) -\n providerSortPriority.indexOf(getProviderFromRule(b)));\n }\n return (allowSortPriority.indexOf(a.allow) - allowSortPriority.indexOf(b.allow));\n });\n}\nfunction getAuthRules({ rules, currentUser, }) {\n // Using Set to ensure uniqueness\n const authModes = new Set();\n rules.forEach(rule => {\n switch (rule.allow) {\n case types_1.ModelAttributeAuthAllow.CUSTOM:\n // custom with no provider -> function\n if (!rule.provider ||\n rule.provider === types_1.ModelAttributeAuthProvider.FUNCTION) {\n authModes.add('lambda');\n }\n break;\n case types_1.ModelAttributeAuthAllow.GROUPS:\n case types_1.ModelAttributeAuthAllow.OWNER: {\n // We shouldn't attempt User Pool or OIDC if there isn't an authenticated user\n if (currentUser) {\n if (rule.provider === types_1.ModelAttributeAuthProvider.USER_POOLS) {\n authModes.add('userPool');\n }\n else if (rule.provider === types_1.ModelAttributeAuthProvider.OIDC) {\n authModes.add('oidc');\n }\n }\n break;\n }\n case types_1.ModelAttributeAuthAllow.PRIVATE: {\n // We shouldn't attempt private if there isn't an authenticated user\n if (currentUser) {\n // private with no provider means userPools\n if (!rule.provider ||\n rule.provider === types_1.ModelAttributeAuthProvider.USER_POOLS) {\n authModes.add('userPool');\n }\n else if (rule.provider === types_1.ModelAttributeAuthProvider.IAM) {\n authModes.add('iam');\n }\n }\n break;\n }\n case types_1.ModelAttributeAuthAllow.PUBLIC: {\n if (rule.provider === types_1.ModelAttributeAuthProvider.IAM) {\n authModes.add('iam');\n }\n else if (!rule.provider ||\n rule.provider === types_1.ModelAttributeAuthProvider.API_KEY) {\n // public with no provider means apiKey\n authModes.add('apiKey');\n }\n break;\n }\n default:\n break;\n }\n });\n return Array.from(authModes);\n}\n/**\n * Returns an array of auth modes to try based on the schema, model, and\n * authenticated user (or lack thereof). Rules are sourced from `getAuthRules`\n * and returned in the order they ought to be attempted.\n *\n * @see sortAuthRulesWithPriority\n * @see getAuthRules\n *\n * @param param0 The `{schema, modelName}` to inspect.\n * @returns A sorted array of auth modes to attempt.\n */\nconst multiAuthStrategy = (amplifyContext) => async ({ schema, modelName }) => {\n let currentUser;\n try {\n const authSession = await (0, core_1.fetchAuthSession)();\n if (authSession.tokens.accessToken) {\n // the user is authenticated\n currentUser = authSession;\n }\n }\n catch (e) {\n // No current user\n }\n const { attributes } = schema.namespaces.user.models[modelName];\n if (attributes) {\n const authAttribute = attributes.find(attr => attr.type === 'auth');\n if (authAttribute?.properties?.rules) {\n const sortedRules = sortAuthRulesWithPriority(authAttribute.properties.rules);\n return getAuthRules({ currentUser, rules: sortedRules });\n }\n }\n return [];\n};\nexports.multiAuthStrategy = multiAuthStrategy;\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"datastore.js","sources":["../../../../src/datastore/datastore.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;AACA;AACA,MAAyD,WAAA,GAAA,OAAA,CAAA,4BAAA,CAAA,CAAA;AACzD,MAAuE,MAAA,GAAA,OAAA,CAAA,mBAAA,CAAA,CAAA;AAEvE,MAOe,OAAA,GAAA,OAAA,CAAA,OAAA,CAAA,CAAA;AACf,MAA2E,OAAA,GAAA,OAAA,CAAA,mCAAA,CAAA,CAAA;AAC3E,MAA4D,MAAA,GAAA,OAAA,CAAA,MAAA,CAAA,CAAA;AAC5D,MAA+E,oBAAA,GAAA,OAAA,CAAA,uBAAA,CAAA,CAAA;AAC/E,MAKuB,YAAA,GAAA,OAAA,CAAA,eAAA,CAAA,CAAA;AAEvB,MAAiE,SAAA,GAAA,OAAA,CAAA,oBAAA,CAAA,CAAA;AACjE,MAA4D,cAAA,GAAA,OAAA,CAAA,yBAAA,CAAA,CAAA;AAC5D,MAAqD,MAAA,GAAA,OAAA,CAAA,SAAA,CAAA,CAAA;AACrD,MA6CkB,OAAA,GAAA,OAAA,CAAA,UAAA,CAAA,CAAA;AAGlB,MAAiC,OAAA,GAAA,OAAA,CAAA,SAAA,CAAA,CAAA;AAEjC,MAqBiB,MAAA,GAAA,OAAA,CAAA,SAAA,CAAA,CAAA;AACjB,MAK4B,MAAA,GAAA,OAAA,CAAA,oBAAA,CAAA,CAAA;AAC5B,MAAmD,OAAA,GAAA,OAAA,CAAA,eAAA,CAAA,CAAA;AAEnD,MAA6E,OAAA,GAAA,OAAA,CAAA,mCAAA,CAAA,CAAA;AAE7E,IAAA,OAAa,CAAA,aAAA,EAAC,IAAI,CAAC,CAAC;AACpB,IAAA,OAAA,CAAA,aAAa,GAAE,CAAC;AAEhB,MAAM,MAAM,GAAG,IAAI,oBAAa,CAAC,WAAW,CAAC,CAAC;AAE9C,MAAM,IAAI,GAAG,IAAA,MAAoB,CAAA,oBAAA,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAkB9C,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAE/C,IAAI,MAAsB,CAAC;AAC3B,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAGlC,CAAC;AAEJ;;;;;AAKG;AACH,MAAM,eAAe,GAAG,IAAI,OAAO,EAGhC,CAAC;AAEJ,MAAM,kBAAkB,GAAG,CAC1B,gBAAiD,KAC9C;IACH,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,gBAAgB,CAAE,CAAC;IAC3D,MAAM,UAAU,GAAG,SAAS;AAC3B,UAAE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC;UAC1D,SAAS,CAAC;AAEb,IAAA,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAEF;;;;;AAKG;AACH,MAAM,uBAAuB,GAAG,CAC/B,GAAQ,KACiC;AACzC,IAAA,OAAO,IAAA,MAAA,CAAA,kBAAkB,EAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAsB,gBAAgB,IAAG;IAC/D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,EAAE;QACd,MAAM,IAAI,KAAK,CACd,CAAA,wBAAA,EAA2B,gBAAgB,CAAC,IAAI,CAAiE,+DAAA,CAAA,CACjH,CAAC;AACF,KAAA;AACD,IAAA,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;AAkBG;AACH,MAAM,kBAAkB,GAAG,CAC1B,gBAA+C,KAC5C;AACH,IAAA,IAAI,CAAC,gBAAgB;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAEnE,IAAA,MAAM,WAAW,GAAG,kBAAkB,CACrC,gBAAiD,CACjD,CAAC;AACF,IAAA,IAAI,CAAC,WAAW;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEzD,IAAA,MAAM,GAAG,GAAG,IAAA,kCAA2B,EAAC,WAAW,CAAC,CAAC;AACrD,IAAA,IAAI,CAAC,GAAG;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAEpD,OAAO,IAAA,4BAAqB,EAAI;AAC/B,QAAA,OAAO,EAAE,gBAAiD;AAC1D,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,OAAO,EAAE,GAAG;AACZ,KAAA,CAAC,CAAC;AACJ,CAAC,CAAC;AAIF,IAAI,WAA+B,CAAC;AACpC,IAAI,gBAAoC,CAAC;AACzC,IAAI,cAAkC,CAAC;AAEvC;;AAEG;AACH,MAAM,4BAA4B,GAAG,IAAI,OAAO,EAA2B,CAAC;AAE5E;;AAEG;AACH,IAAK,eAkBJ,CAAA;AAlBD,CAAA,UAAK,eAAe,EAAA;AACnB;;;;;AAKG;AACH,IAAA,eAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AAErB;;AAEG;AACH,IAAA,eAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AAEvB;;AAEG;AACH,IAAA,eAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACZ,CAAC,EAlBI,eAAe,KAAf,eAAe,GAkBnB,EAAA,CAAA,CAAA,CAAA;AAED;;;;;AAKG;AACH,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAAoC,CAAC;AAE/E;;;;;;;;;;AAUG;AACH,SAAgB,QAAQ,CACvB,MAAS,EACT,UAA2B,EAAA;AAE3B,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC1B,QAAA,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM,CAAC;AACxD,KAAA;AAAM,SAAA;QACN,MAAM,IAAI,sBAAsB,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACzD,KAAA;AACD,IAAA,OAAO,MAAM,CAAC;AACf,CAAC;AAVD,OAUC,CAAA,QAAA,GAAA,QAAA,CAAA;AAED;;;;;;AAMG;AACI,MAAM,aAAa,GAAG,CAAC,QAAyB,KAAI;AAC1D,IAAA,OAAO,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1C,UAAE,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC;AACtC,UAAE,eAAe,CAAC,QAAQ,CAAC;AAC7B,CAAC,CAAC;AAJW,OAAA,CAAA,aAAa,GAIxB,aAAA,CAAA;AAEF,MAAM,UAAU,GAAG,CAAC,UAAkB,KAAI;IACzC,IAAI,MAAM,KAAK,SAAS,EAAE;AACzB,QAAA,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;AAExD,QAAA,OAAO,WAAW,CAAC;AACnB,KAAA;IAED,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;AAExD,IAAA,yBAAyB,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AAErD,IAAA,MAAM,qBAAqB,GAAoB;AAC9C,QAAA,IAAI,EAAE,MAAI,CAAA,IAAA;AACV,QAAA,GAAG,UAAU;KACb,CAAC;AAEF,IAAA,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AACvC,IAAA,WAAW,GAAG,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AACvD,IAAA,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;AAE9C,IAAA,MAAM,kBAAkB,GAAG,YAAY,EAAE,CAAC;AAC1C,IAAA,MAAM,gBAAgB,GAAG,SAAA,CAAA,gBAAO,CAAC,YAAY,EAAE,CAAC;AAChD,IAAA,MAAM,aAAa,GAAG,MAAA,CAAA,UAAU,CAAC,YAAY,EAAE,CAAC;AAEhD,IAAA,gBAAgB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;AACzD,IAAA,cAAc,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;AACrD,IAAA,OAAA,CAAA,WAAW,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAE/C,IAAA,MAAM,GAAG;AACR,QAAA,UAAU,EAAE;AACX,YAAA,CAAC,kBAAkB,CAAC,IAAI,GAAG,kBAAkB;AAC7C,YAAA,CAAC,qBAAqB,CAAC,IAAI,GAAG,qBAAqB;AACnD,YAAA,CAAC,gBAAgB,CAAC,IAAI,GAAG,gBAAgB;AACzC,YAAA,CAAC,aAAa,CAAC,IAAI,GAAG,aAAa;AACnC,SAAA;QACD,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,cAAc,EAAE,UAAU,CAAC,cAAc;KACzC,CAAC;AAEF,IAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,SAAS,IAAG;AAClD,QAAA,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,IAAA,MAAA,CAAA,wBAAwB,EACjD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAC5B,CAAC;QAEF,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,GAAG,SAAS,CAAC;QACvD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;AAEzC,QAAA,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAoB,CAAC;AAEtD,QAAA,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;YAClE,MAAM,eAAe,GAAa,EAAE,CAAC;AAErC,YAAA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;AACzB,iBAAA,MAAM,CACN,KAAK,IACJ,KAAK,CAAC,WAAW;AACjB,gBAAA,KAAK,CAAC,WAAW,CAAC,cAAc,KAAK,YAAY;gBAChC,KAAK,CAAC,IAAK,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAClD;AACA,iBAAA,OAAO,CAAC,KAAK,IACb,eAAe,CAAC,IAAI,CAAkB,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,CACxD,CAAC;YAEH,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;;;;AAKnD,YAAA,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;gBAC3C,MAAM,YAAY,GAAG,WAAW,CAAkB,KAAK,CAAC,IAAK,CAAC,KAAK,CAAC,CAAC;AACrE,gBAAA,IAAI,IAAA,MAAA,CAAA,kBAAkB,EAAC,YAAY,CAAC,EAAE;oBACrC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,kBAAkB,EAAE;wBACrD,GAAG,EAAE,MAAK;AACT,4BAAA,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAChE,4BAAA,IAAI,CAAC,sBAAsB;gCAC1B,MAAM,IAAI,KAAK,CACd,CAAA,oCAAA,EAAuC,YAAY,CAAC,IAAI,CAAE,CAAA,CAC1D,CAAC;4BACH,OAAO;AACN,gCAAA,OAAO,EAAE,YAAY;AACrB,gCAAA,MAAM,EAAE,sBAAsB;AAC9B,gCAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,sBAAsB,CAAC;6BAC5D,CAAC;yBACF;AACD,qBAAA,CAAC,CAAC;AACH,iBAAA;AACF,aAAC,CAAC,CAAC;;;;AAMH,YAAA,MAAM,OAAO,GACZ,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,aAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;AAEjE,YAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AACtC,YAAA,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;AAC5B,gBAAA,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;AAClC,oBAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC5B,iBAAA;AACD,aAAA;YAED,KAAK,CAAC,SAAS,GAAG;AACjB,gBAAA,GAAG,MAAM,CAAC,WAAW,CACpB,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI;oBACrC,IAAI;AACJ,oBAAA;wBACC,IAAI;AACJ,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,OAAO,EAAE,KAAK;AACd,qBAAA;AACD,iBAAA,CAAC,CACF;gBACD,GAAG,KAAK,CAAC,MAAM;aACf,CAAC;AACH,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;QAE3C,IAAI,KAAK,GAAG,IAAI,CAAC;AACjB,QAAA,OAAe,KAAK,GAAG,CAAC,EAAE;AACzB,YAAA,IAAI,iBAAiB,CAAC,IAAI,KAAK,CAAC,EAAE;gBACjC,MAAM;AACN,aAAA;AACD,YAAA,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC,EAAE;AAChB,gBAAA,MAAM,IAAI,KAAK,CACd,mEAAmE,CACnE,CAAC;AACF,aAAA;AAED,YAAA,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,EAAE;gBAC7D,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAEjD,gBAAA,IAAI,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;AACvC,oBAAA,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC/B,iBAAA;AACD,aAAA;YAED,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,SAAA;QAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,wBAAwB,GAAG,MAAM,CAAC;AAChE,KAAC,CAAC,CAAC;AAEH,IAAA,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AA4wEoC,OAAU,CAAA,UAAA,GAAA,UAAA,CAAA;AA1wEhD;;;;;;;;AAQG;AACH,MAAM,sBAAsB,GAAG,MAAK;IACnC,IAAI,MAAM,KAAK,SAAS,EAAE;QACzB,MAAM,OAAO,GACZ,2PAA2P,CAAC;AAC7P,QAAA,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACtB,QAAA,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACzB,KAAA;AACF,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;AAiBG;AACH,MAAM,yBAAyB,GAAG,CAAC,cAAsB,KAAI;IAC5D,MAAM,YAAY,GAAG,CAAC,CAAC;IACvB,MAAM,YAAY,GAAG,CAAC,CAAC;IACvB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI;QACH,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,YAAY,CAAC;AAC1D,QAAA,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC;AAC1E,KAAA;AAAC,IAAA,OAAO,GAAG,EAAE;QACb,OAAO,CAAC,GAAG,CAAC,CAAA,+BAAA,EAAkC,cAAc,CAAK,EAAA,EAAA,GAAG,CAAE,CAAA,CAAC,CAAC;AACxE,KAAA;IAED,IAAI,CAAC,OAAO,EAAE;QACb,MAAM,OAAO,GACZ,CAAA,yFAAA,EACC,cAAc,IAAI,oBACnB,CAAc,WAAA,EAAA,YAAY,CAAI,CAAA,EAAA,YAAY,CAAkB,gBAAA,CAAA;AAC5D,YAAA,4DAA4D,CAAC;AAC9D,QAAA,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACtB,QAAA,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACzB,KAAA;AACF,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAEG,SAAS,IAAG;IACrC,MAAM,OAAO,GAAuB,EAAE,CAAC;AAEvC,IAAA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,eAAe,CAAC,KAAI;AACzE,QAAA,MAAM,KAAK,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;AAChD,QAAA,OAAO,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QAE3B,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAC9C,KAAC,CAAC,CAAC;AAEH,IAAA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,OAAO,CAChD,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAI;AAC9B,QAAA,MAAM,KAAK,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC;AAClD,QAAA,OAAO,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;AAC3B,KAAC,CACD,CAAC;AAEF,IAAA,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAaF;;;;AAIG;AACH,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAAuB,CAAC;AAE7D,SAAS,oBAAoB,CAC5B,gBAA+C,EAC/C,IAAgB,EAAA;AAEhB,IAAA,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAE5B,IAAA,OAAO,IAAI,gBAAgB,CAA2C,IAAI,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,mBAAmB,GACxB,CAAC,eAA6C,KAAK,CAAC,CAAS,EAAE,CAAM,KAAI;IACxE,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAElD,IAAI,eAAe,KAAK,SAAS,EAAE;AAClC,QAAA,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,GACzD,eAAe,CAAC;AAEjB,QAAA,MAAM,UAAU,GAAG,IAAA,OAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AAC9D,cAAE,IAAA,MAAkB,CAAA,kBAAA,EAAC,eAAe,CAAC;cACnC,EAAE,CAAC;QACN,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAE5C,QAAA,IACC,CAAC,CAAC,CAAC,OAAO,IAAI,UAAU,MAAM,OAAO,IAAI,CAAC,eAAe,CAAC;AAC1D,YAAA,CAAC,gBAAgB;aAChB,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,EAC9B;AACD,YAAA,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAA,YAAA,CAAc,CAAC,CAAC;AAC7C,SAAA;AAED,QAAA,IACC,IAAA,OAAA,CAAA,2BAA2B,EAAC,eAAe,CAAC;AAC5C,YAAA,CAAC,IAAA,MAAA,CAAA,WAAW,EAAC,eAAe,CAAC,EAC5B;AACD,YAAA,MAAM,IAAI,GAAG,IAAA,kCAA2B,EAAC,eAAe,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE;AACjC,gBAAA,MAAM,CAAC,KAAK,CAAC,MAAA,CAAA,aAAa,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;AAC3D,gBAAA,MAAM,IAAI,KAAK,CAAC,oBAAa,CAAC,aAAa,CAAC,CAAC;AAC7C,aAAA;AACD,SAAA;AAED,QAAA,IAAI,IAAA,OAAA,CAAA,mBAAmB,EAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,MAAM,GAAG,OAAiB,CAAA,iBAAA,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACjD,MAAM,cAAc,GAAG,OAAiB,CAAA,iBAAA,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAErE,IAAI,IAAI,KAAK,SAAS,EAAE;AACvB,gBAAA,IAAI,OAAO,CAAC,KAAK,MAAM,EAAE;oBACxB,OAAO;AACP,iBAAA;AACD,gBAAA,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;oBAC1B,IAAI;AACH,wBAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBACd,OAAO;AACP,qBAAA;AAAC,oBAAA,OAAO,KAAK,EAAE;wBACf,MAAM,IAAI,KAAK,CAAC,CAAA,MAAA,EAAS,IAAI,CAA+B,4BAAA,EAAA,CAAC,CAAE,CAAA,CAAC,CAAC;AACjE,qBAAA;AACD,iBAAA;AACD,aAAA;AAED,YAAA,IAAI,OAAO,EAAE;gBACZ,IAAI,aAAa,GAAW,MAAM,CAAC;gBACnC,IAAI,CAAC,UAAU,EAAE;AAChB,oBAAA,aAAa,GAAG,CAAA,EAAG,MAAM,CAAA,mBAAA,CAAqB,CAAC;AAC/C,iBAAA;gBAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE;AAC1C,oBAAA,MAAM,IAAI,KAAK,CACd,CAAA,MAAA,EAAS,IAAI,CAAuB,oBAAA,EAAA,aAAa,CAAM,GAAA,EAAA,OAAO,CAAC,CAAA,WAAA,EAAc,CAAC,CAAA,CAAE,CAChF,CAAC;AACF,iBAAA;AAED,gBAAA,IACC,CAAC,IAAA,MAAiB,CAAA,iBAAA,EAAC,CAAC,CAAC;oBAChB,CAAE,CAAC,IAAI,CAAC,CAAC,IACb,IAAA,MAAiB,CAAA,iBAAA,EAAC,CAAC,CAAC,GAAG,UAAU,GAAG,OAAO,CAAC,KAAK,MAAM,CACvD,EACA;oBACD,MAAM,SAAS,GAAQ,CAAE;AACvB,yBAAA,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;yBAC1C,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,oBAAA,MAAM,IAAI,KAAK,CACd,CAAA,oBAAA,EAAuB,IAAI,CAAA,yBAAA,EAA4B,aAAa,CAAA,GAAA,EAAM,SAAS,CAAA,YAAA,EAAe,CAAC,CAAA,CAAE,CACrG,CAAC;AACF,iBAAA;gBAED,IAAI,cAAc,IAAI,CAAC,IAAA,wBAAiB,EAAC,CAAC,CAAC,EAAE;oBAC5C,MAAM,gBAAgB,GAAQ,CAAE,CAAC,GAAG,CAAC,CAAC,IAAG;AACxC,wBAAA,IAAI,CAAC,IAAA,MAAA,CAAA,iBAAiB,EAAC,CAAC,CAAC,EAAE;AAC1B,4BAAA,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;AACzB,yBAAA;6BAAM,IAAI,IAAA,wBAAiB,EAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;AAC/C,4BAAA,OAAO,IAAI,CAAC;AACZ,yBAAA;AAAM,6BAAA;AACN,4BAAA,OAAO,KAAK,CAAC;AACb,yBAAA;AACF,qBAAC,CAAC,CAAC;oBAEH,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE;wBACpC,MAAM,IAAI,KAAK,CACd,CAAuB,oBAAA,EAAA,IAAI,CAA4B,yBAAA,EAAA,IAAI,CAAiD,8CAAA,EAAA,CAAC,CAAE,CAAA,CAC/G,CAAC;AACF,qBAAA;AACD,iBAAA;AACD,aAAA;AAAM,iBAAA,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK,SAAS,EAAE;gBAC1C,OAAO;AACP,aAAA;iBAAM,IAAI,OAAO,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,IAAI,EAAE;AAC7C,gBAAA,MAAM,IAAI,KAAK,CACd,CAAA,MAAA,EAAS,IAAI,CAAsB,mBAAA,EAAA,MAAM,CAAK,EAAA,EAAA,OAAO,CAAC,CAAA,WAAA,EAAc,CAAC,CAAA,CAAE,CACvE,CAAC;AACF,aAAA;AAAM,iBAAA,IACN,CAAC,IAAA,MAAiB,CAAA,iBAAA,EAAC,CAAC,CAAC;gBACrB,cAAc;AACd,gBAAA,CAAC,cAAc,CAAC,CAAU,CAAC;AAC1B,cAAA;gBACD,MAAM,IAAI,KAAK,CACd,CAAS,MAAA,EAAA,IAAI,CAAsB,mBAAA,EAAA,IAAI,CAAwB,qBAAA,EAAA,CAAC,CAAE,CAAA,CAClE,CAAC;AACF,aAAA;AACD,SAAA;AAAM,aAAA,IAAI,IAAA,OAAA,CAAA,mBAAmB,EAAC,IAAI,CAAC,EAAE;;AAErC,YAAA,IAAI,CAAC,IAAA,MAAA,CAAA,iBAAiB,EAAC,CAAC,CAAC,EAAE;AAC1B,gBAAA,MAAM,qBAAqB,GAC1B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClD,gBAAA,MAAM,cAAc,GAAG,mBAAmB,CAAC,qBAAqB,CAAC,CAAC;AAElE,gBAAA,IAAI,OAAO,EAAE;AACZ,oBAAA,IAAI,aAAa,GAAW,IAAI,CAAC,QAAQ,CAAC;oBAC1C,IAAI,CAAC,UAAU,EAAE;AAChB,wBAAA,aAAa,GAAG,CAAG,EAAA,IAAI,CAAC,QAAQ,qBAAqB,CAAC;AACtD,qBAAA;AACD,oBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;AACtB,wBAAA,MAAM,IAAI,KAAK,CACd,CAAA,MAAA,EAAS,IAAI,CAAuB,oBAAA,EAAA,aAAa,CAAM,GAAA,EAAA,OAAO,CAAC,CAAA,WAAA,EAAc,CAAC,CAAA,CAAE,CAChF,CAAC;AACF,qBAAA;AAED,oBAAA,CAAC,CAAC,OAAO,CAAC,IAAI,IAAG;wBAChB,IACC,CAAC,IAAA,MAAiB,CAAA,iBAAA,EAAC,IAAI,CAAC,IAAI,UAAU;6BACrC,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,WAAW,CAAC,EACxD;AACD,4BAAA,MAAM,IAAI,KAAK,CACd,CAAuB,oBAAA,EAAA,IAAI,4BAC1B,IAAI,CAAC,QACN,CAAA,GAAA,EAAM,OAAO,IAAI,CAAA,YAAA,EAAe,IAAI,CAAA,CAAE,CACtC,CAAC;AACF,yBAAA;AAED,wBAAA,IAAI,CAAC,IAAA,MAAA,CAAA,iBAAiB,EAAC,IAAI,CAAC,EAAE;AAC7B,4BAAA,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,IAAG;gCAC1D,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AACtC,6BAAC,CAAC,CAAC;AACH,yBAAA;AACF,qBAAC,CAAC,CAAC;AACH,iBAAA;AAAM,qBAAA;AACN,oBAAA,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;AAC1B,wBAAA,MAAM,IAAI,KAAK,CACd,CAAS,MAAA,EAAA,IAAI,sBACZ,IAAI,CAAC,QACN,CAAA,EAAA,EAAK,OAAO,CAAC,CAAA,WAAA,EAAc,CAAC,CAAA,CAAE,CAC9B,CAAC;AACF,qBAAA;AAED,oBAAA,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,IAAG;wBAC1D,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACnC,qBAAC,CAAC,CAAC;AACH,iBAAA;AACD,aAAA;AACD,SAAA;AACD,KAAA;AACF,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CACxB,eAA6C,EAC7C,CAAS,EACT,CAAM,KACH;AACH,IAAA,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;;IAE1D,IACC,OAAO,CAAC,KAAK,QAAQ;AACrB,SAAC,OAAO;AACP,YAAA,IAAI,KAAK,SAAS;YAClB,IAAA,OAAA,CAAA,mBAAmB,EAAC,IAAI,CAAC;AACzB,YAAA,IAAA,OAAgB,CAAA,gBAAA,EAAC,IAAI,CAAC,CAAC,EACvB;QACD,IAAI;AACH,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACrB,SAAA;QAAC,MAAM;;AAEP,SAAA;AACD,KAAA;;IAGD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE;AAChD,QAAA,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAClB,KAAA;AAED,IAAA,OAAO,CAAC,CAAC;AACV,CAAC,CAAC;AAEF;;;;AAIG;AACH,MAAM,WAAW,GAAG,IAAI,OAAO,EAA4B,CAAC;AAE5D;;;;;;;AAOG;AACH,MAAM,kBAAkB,GAAG,CAC1B,IAAkB,EAClB,eAA6C,EAC7C,KAAuC,KACpC;AACH,IAAA,MAAM,cAAc,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAC5D,IAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAI;QACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAE5D,QAAA,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AACzB,QAAA,KAAM,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;AAC/B,KAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;AAkBG;AACH,MAAM,SAAS,GAAG,CACjB,eAA6C,EAC7C,KAAe,KACZ;IACH,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;AACpD,QAAA,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS;AAAQ,YAAA,KAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AACnD,KAAA;AACF,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACxB,eAA4B,KACzB;IACH,MAAM,KAAK,GAA4C,MAAM,KAAK,CAAA;AACjE,QAAA,WAAA,CAAY,IAAkB,EAAA;;;;YAI7B,IAAI,OAAO,GAAY,EAAE,CAAC;YAC1B,MAAM,YAAY,GAAG,IAAA,OAAO,CAAA,OAAA,EAC3B,IAAI,EACJ,CAAC,KAAuC,KAAI;AAC3C,gBAAA,kBAAkB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;;gBAGjD,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAE5D,MAAM,qBAAqB,GAC1B,uBAAuB;AACtB,sBAAmC,IAAK;sBACf,EAAE,CAAC;AAI9B,gBAAA,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAChB,qBAAyD,CAAC;AAE3D,gBAAA,IAAI,IAAA,MAAA,CAAA,WAAW,EAAC,eAAe,CAAC,EAAE;oBACjC,MAAM,eAAe,GAAG,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC;oBAE1D,MAAM,EAAE,GAAG,eAAe;AACzB,0BAAE,GAAG;0BACH,eAAe,CAAC,QAAQ;8BACtB,IAAA,OAAA,CAAA,WAAW,GAAE;8BACb,IAAI,EAAE,CAAC;AAEsB,oBAAA,KAAO,CAAC,EAAE,GAAG,EAAE,CAAC;AAClD,iBAAA;AAAM,qBAAA,IAAI,IAAA,MAAA,CAAA,qBAAqB,EAAC,eAAe,CAAC,EAAE;;AAEhB,oBAAA,KAAO,CAAC,EAAE;AAC3C,wBAAA,KAAK,CAAC,EAAE,IAAI,IAAA,OAAA,CAAA,WAAW,GAAE,CAAC;AAC3B,iBAAA;gBAED,IAAI,CAAC,uBAAuB,EAAE;AAC7B,oBAAA,6BAA6B,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;AACtD,iBAAA;gBAED,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC;gBAErE,IAAI,eAAe,CAAC,QAAQ,EAAE;AAC7B,oBAAA,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,oBAAA,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;AACtC,oBAAA,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,iBAAA;aACD,EACD,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAClB,CAAC;;;;;;AAOF,YAAA,MAAM,UAAU,GAAG,IAAA,eAAO,EACzB,YAAY,EACZ,CAAC,KAAuC,KACvC,SAAS,CAAC,eAAe,EAAE,KAAK,CAAC,CAClC,CAAC;AAEF,YAAA,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAErC,YAAA,OAAO,UAAU,CAAC;SAClB;AAED,QAAA,OAAO,MAAM,CAAC,MAAS,EAAE,EAAiC,EAAA;AACzD,YAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC;AACzE,YAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;gBAC/C,MAAM,GAAG,GAAG,wCAAwC,CAAC;gBACrD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9B,gBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,aAAA;YAED,IAAI,OAAO,GAAY,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAA,OAAA,CAAA,OAAO,EACpB,MAAM,EACN,KAAK,IAAG;gBACP,EAAE,CAAkB,KAAK,CAAC,CAAC;AAE3B,gBAAA,MAAM,QAAQ,GAAG,IAAA,kCAA2B,EAAC,eAAe,CAAC,CAAC;;AAE9D,gBAAA,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAG;oBACtB,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE;wBAC/B,MAAM,CAAC,IAAI,CACV,CAA4C,yCAAA,EAAA,GAAG,CAA4B,0BAAA,CAAA,EAC3E,EAAE,MAAM,EAAE,CACV,CAAC;AACF,qBAAA;oBACA,KAAgB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;AACtC,iBAAC,CAAC,CAAC;AAEH,gBAAA,MAAM,cAAc,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAC5D,gBAAA,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAI;oBACxC,MAAM,WAAW,GAAG,gBAAgB,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAE5D,oBAAA,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AAChC,iBAAC,CAAC,CAAC;AAEH,gBAAA,SAAS,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;aAClC,EACD,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAClB,CAAC;YAEF,MAAM,kBAAkB,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAEvD,YAAA,IAAI,OAAO,CAAC,MAAM,IAAI,kBAAkB,EAAE;AACzC,gBAAA,IAAI,kBAAkB,EAAE;AACvB,oBAAA,MAAM,CAAC,eAAe,EAAE,cAAc,CAAC,GACtC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;oBAC9B,MAAM,aAAa,GAAG,IAAA,MAAY,CAAA,YAAA,EACjC,cAAc,EACd,eAAe,EACf,OAAO,CACP,CAAC;oBACF,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;AAC5D,oBAAA,6BAA6B,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;AAC9D,iBAAA;AAAM,qBAAA;oBACN,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC9C,oBAAA,6BAA6B,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AACxD,iBAAA;AACD,aAAA;AAAM,iBAAA;;;;;;;gBAON,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;AACzC,aAAA;YAED,OAAO,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;SAClD;;;QAID,OAAO,QAAQ,CAAC,IAAa,EAAA;AAC5B,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACxB,gBAAA,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,aAAA;YAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AAEnD,YAAA,MAAM,cAAc,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAE5D,YAAA,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAI;AAC3C,gBAAA,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtB,aAAC,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;SACrD;KACA,CAAC;AAEH,IAAA,KAAK,CAAC,OAAA,CAAA,SAAS,CAAC,GAAG,IAAI,CAAC;AAExB,IAAA,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;;;;AAKtE,IAAA,MAAM,qBAAqB,GAAG,cAAiB,CAAA,iBAAA,CAAC,OAAO,CAAC;AACvD,QAAA,OAAO,EAAE,KAAK;AACd,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AACrD,KAAA,CAAC,CAAC;AACH,IAAA,KAAK,MAAM,YAAY,IAAI,qBAAqB,EAAE;AACjD,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;AAEjC,QAAA,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;AAC1E,YAAA,GAAG,CAAC,KAA2B,EAAA;gBAC9B,IAAI,EAAE,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;oBAC/D,OAAO;;AAGR,gBAAA,IAAI,KAAK,EAAE;;;;AAIV,oBAAA,IAAI,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE;wBACrC,MAAM,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC;AACzD,6BAAA,WAA4C,CAAC;AAE/C,wBAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;4BAC/C,MAAM,GAAG,GAAG,CAAmB,gBAAA,EAAA,eAAe,CAAC,IAAI,CAAA,CAAA,EAAI,KAAK,CAAA,mCAAA,CAAqC,CAAC;4BAClG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7B,4BAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,yBAAA;AAED,wBAAA,IACC,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE;AACnC,4BAAA,YAAY,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,EAAE,EACrD;AACD,4BAAA,MAAM,GAAG,GAAG,CAAmB,gBAAA,EAAA,eAAe,CAAC,IAAI,CAAA,CAAA,EAAI,KAAK,CAAA,uBAAA,EAA0B,YAAY,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;4BACjI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7B,4BAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,yBAAA;AACD,qBAAA;AACD,iBAAA;;gBAGD,IAAI,YAAY,CAAC,UAAU,EAAE;AAC5B,oBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7D,wBAAA,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;4BACpC,KAAK,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,qBAAA;AACD,oBAAA,MAAM,aAAa,GAAG,4BAA4B,CAAC,GAAG,CAAC,IAAI,CAAC;AAC3D,0BAAE,4BAA4B,CAAC,GAAG,CAAC,IAAI,CAAE;AACzC,0BAAE,4BAA4B,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;AACzD,oBAAA,aAAa,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,SAAS,CAAC;AAC1C,iBAAA;aACD;YACD,GAAG,GAAA;AACF;;AAEG;AACH,gBAAA,MAAM,aAAa,GAAG,4BAA4B,CAAC,GAAG,CAAC,IAAI,CAAC;AAC3D,sBAAE,4BAA4B,CAAC,GAAG,CAAC,IAAI,CAAE;AACzC,sBAAE,4BAA4B,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;;;;AAKzD,gBAAA,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;;;oBAGzC,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,eAAe,CAAC,SAAS,EAAE;;;;;wBAKtD,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CACnC,YAAY,CAAC,sBAAuD,EACpE,IAAI,IACH,IAAI,CAAC,GAAG,CAAC,CAAC,IAAG;4BACZ,OAAO,YAAY,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,KAAI;;AAEzD,gCAAA,OAAQ,CAAC,CAAC,KAAK,CAAqB,CAAC,EAAE,CACtC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CACzC,CAAC;AACH,6BAAC,CAAC,CAAC;yBACH,CAAC,CACH,CAAC;;AAGF,wBAAA,IAAI,YAAY,CAAC,IAAI,KAAK,UAAU,EAAE;;;4BAGrC,aAAa,CAAC,KAAK,CAAC,GAAG,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;AAC1D,yBAAA;AAAM,6BAAA;;;;4BAIN,aAAa,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,IAAG;AAChD,gCAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;;AAEpB,oCAAA,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,CAAA;;kEAEmC,eAAe,CAAC,IAAI,CAAA,CAAA,EAAI,KAAK,CAAA;AACtF,QAAA,CAAA,CAAC,CAAC;AACF,oCAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnB,oCAAA,MAAM,GAAG,CAAC;AACV,iCAAA;AAAM,qCAAA;AACN,oCAAA,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;AACf,iCAAA;AACF,6BAAC,CAAC,CAAC;AACH,yBAAA;AACD,qBAAA;yBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,eAAe,CAAC,GAAG,EAAE;AACvD,wBAAA,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;AAC/D,qBAAA;AAAM,yBAAA;AACN,wBAAA,IAAI,YAAY,CAAC,IAAI,KAAK,UAAU,EAAE;AACrC,4BAAA,OAAO,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;AAC/B,yBAAA;AAAM,6BAAA;AACN,4BAAA,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,yBAAA;AACD,qBAAA;AACD,iBAAA;AAED,gBAAA,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;aAC5B;AACD,SAAA,CAAC,CAAC;AACH,KAAA;AAED,IAAA,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF;;AAEG;AACH,MAAa,SAAa,SAAQ,OAAU,CAAA;AAAG,CAAA;AAA/C,OAA+C,CAAA,SAAA,GAAA,SAAA,CAAA;AAE/C;;;;AAIG;AACH,MAAa,eAAe,CAAA;AAG3B,IAAA,WAAA,CAAY,MAAwC,EAAA;AACnD,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACrB;AAED;;;;;;;;;;AAUG;IACH,CAAC,MAAM,CAAC,aAAa,CAAC,GAAA;AACrB,QAAA,IAAI,MAAM,CAAC;QACX,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO;YACN,IAAI,EAAE,YAAW;AAChB,gBAAA,IAAI,CAAC,MAAM;AAAE,oBAAA,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;AACxC,gBAAA,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE;AAC1B,oBAAA,MAAM,MAAM,GAAG;AACd,wBAAA,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;AACpB,wBAAA,IAAI,EAAE,KAAK;qBACX,CAAC;AACF,oBAAA,KAAK,EAAE,CAAC;AACR,oBAAA,OAAO,MAAM,CAAC;AACd,iBAAA;gBACD,OAAO;AACN,oBAAA,KAAK,EAAE,IAAI;AACX,oBAAA,IAAI,EAAE,IAAI;iBACV,CAAC;aACF;SACD,CAAC;KACF;AAED;;;;;;;AAOG;IACH,MAAM,OAAO,CAAC,EACb,GAAG,GAAG,MAAM,CAAC,gBAAgB,GAAA,GACR,EAAE,EAAA;QACvB,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,CAAC;AACV,QAAA,WAAW,MAAM,OAAO,IAAI,IAAI,EAAE;YACjC,IAAI,CAAC,GAAG,GAAG,EAAE;AACZ,gBAAA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrB,gBAAA,CAAC,EAAE,CAAC;AACJ,aAAA;AAAM,iBAAA;gBACN,MAAM;AACN,aAAA;AACD,SAAA;AACD,QAAA,OAAO,MAAM,CAAC;KACd;AACD,CAAA;AA/DD,OA+DC,CAAA,eAAA,GAAA,eAAA,CAAA;AAED,MAAM,6BAA6B,GAAG,CACrC,KAAQ,EACR,eAA4B,KACzB;IACH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC;AAEnC,IAAA,SAAS,CAAC,OAAO,CAAC,GAAG,IAAG;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE;AAC1C,YAAA,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAA,cAAA,CAAgB,CAAC,CAAC;AACxC,SAAA;AACF,KAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,6BAA6B,GAAG,CACrC,OAAgB,EAChB,eAA4B,KACzB;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1D,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC;IAEnC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,KAAI;AACjC,QAAA,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,OAAO;AAEjC,QAAA,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE;AAC3B,YAAA,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,CAAA,cAAA,CAAgB,CAAC,CAAC;AACxC,SAAA;AACF,KAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAC3B,cAA8B,KAC3B;IACH,MAAM,KAAK,GAAyC,MAAM,KAAK,CAAA;AAC9D,QAAA,WAAA,CAAY,IAAkB,EAAA;YAC7B,MAAM,QAAQ,GAAG,IAAA,OAAO,CAAA,OAAA,EACvB,IAAI,EACJ,CAAC,KAAuC,KAAI;AAC3C,gBAAA,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;AACjD,aAAC,CACD,CAAC;AAEF,YAAA,OAAO,QAAQ,CAAC;SAChB;KACA,CAAC;AAEH,IAAA,KAAK,CAAC,OAAA,CAAA,SAAS,CAAC,GAAG,IAAI,CAAC;AAExB,IAAA,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;AAErE,IAAA,IAAA,MAAqB,CAAA,qBAAA,EAAC,KAAK,CAAC,CAAC;AAE7B,IAAA,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,SAAS,UAAU,CAAC,GAAQ,EAAA;AAC3B,IAAA,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC;AAChC,CAAC;AAED,SAAS,sBAAsB,CAAC,YAA0B,EAAA;IACzD,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC;AACnE,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;IACjC,OAAO,oBAAoB,CAAC,gBAAgB,EAAE,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAiC,EAAA;AAC7D,IAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,8BAA8B,CACtC,aAAyB,EACzB,SAAiB,EAAA;AAEjB,IAAA,IAAI,MAAsE,CAAC;AAE3E,IAAA,QAAQ,aAAa;AACpB,QAAA,KAAK,MAAS,CAAA,SAAA;AACb,YAAA,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YACrC,MAAM;AACP,QAAA,KAAK,MAAI,CAAA,IAAA;AACR,YAAA,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM;AACP,QAAA,KAAK,MAAI,CAAA,IAAA;AACR,YAAA,MAAM,GAAG,OAAA,CAAA,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM;AACP,QAAA,KAAK,MAAO,CAAA,OAAA;AACX,YAAA,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;YACnC,MAAM;AACP,QAAA;AACC,YAAA,MAAM,IAAI,KAAK,CAAC,sBAAsB,aAAa,CAAA,CAAE,CAAC,CAAC;AACxD,KAAA;AAED,IAAA,IAAI,uBAAuB,CAAC,MAAM,CAAC,EAAE;AACpC,QAAA,OAAO,MAAM,CAAC;AACd,KAAA;AAAM,SAAA;AACN,QAAA,MAAM,GAAG,GAAG,CAAA,kDAAA,EAAqD,SAAS,CAAgB,aAAA,EAAA,aAAa,EAAE,CAAC;AAC1G,QAAA,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAElB,QAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,KAAA;AACF,CAAC;AAED;;;;;;;;;;;AAWG;AACH,eAAe,kBAAkB,CAChC,OAAgB,EAChB,OAAe,EAAA;AAEf,IAAA,MAAM,OAAO,GACZ,gBAAgB,CAAC,OAA8C,CAAC;AAEjE,IAAA,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,MAAS,CAAA,SAAA,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IAEpE,MAAM,OAAO,CAAC,YAAY,CAAC,OAAM,CAAC,KAAG;AACpC,QAAA,MAAM,CAAC,oBAAoB,CAAC,GAAG,MAAM,CAAC,CAAC,KAAK,CAC3C,OAAO,EACP,YAAqB,CAAA,qBAAA,CAAC,aAAa,CAAC,eAAe,EAAE;YACpD,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,sBAAsB,EAAE,EAAE;SAC5C,CAAC,EACF,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CACrB,CAAC;QAEF,IACC,oBAAoB,KAAK,SAAS;AAClC,YAAA,oBAAoB,CAAC,KAAK,KAAK,SAAS,EACvC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAE3D,IAAI,WAAW,KAAK,OAAO,EAAE;AAC5B,gBAAA,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACrB,aAAA;AACD,SAAA;AAAM,aAAA;AACN,YAAA,MAAM,CAAC,CAAC,IAAI,CACX,oBAAoB,CAAC,OAAO,EAAE;AAC7B,gBAAA,GAAG,EAAE,sBAAsB;AAC3B,gBAAA,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;AAC9B,aAAA,CAAC,CACF,CAAC;AACF,SAAA;AACF,KAAC,CAAC,CAAC;AACJ,CAAC;AAED,IAAI,gBAAkC,CAAC;AAEvC,SAAS,YAAY,GAAA;AACpB,IAAA,MAAM,SAAS,GAAoB;AAClC,QAAA,IAAI,EAAE,MAAS,CAAA,SAAA;AACf,QAAA,aAAa,EAAE,EAAE;AACjB,QAAA,KAAK,EAAE,EAAE;AACT,QAAA,SAAS,EAAE,EAAE;AACb,QAAA,MAAM,EAAE;AACP,YAAA,OAAO,EAAE;AACR,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,UAAU,EAAE,UAAU;AACtB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,MAAM,EAAE;AACP,oBAAA,EAAE,EAAE;AACH,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,IAAI,EAAE,IAAI;AACV,wBAAA,UAAU,EAAE,IAAI;AAChB,wBAAA,OAAO,EAAE,KAAK;AACd,qBAAA;AACD,oBAAA,GAAG,EAAE;AACJ,wBAAA,IAAI,EAAE,KAAK;AACX,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,UAAU,EAAE,IAAI;AAChB,wBAAA,OAAO,EAAE,KAAK;AACd,qBAAA;AACD,oBAAA,KAAK,EAAE;AACN,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,UAAU,EAAE,IAAI;AAChB,wBAAA,OAAO,EAAE,KAAK;AACd,qBAAA;AACD,iBAAA;AACD,aAAA;AACD,SAAA;KACD,CAAC;AAEF,IAAA,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,IAAK,cAMJ,CAAA;AAND,CAAA,UAAK,cAAc,EAAA;AAClB,IAAA,cAAA,CAAA,YAAA,CAAA,GAAA,aAA0B,CAAA;AAC1B,IAAA,cAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,cAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACnB,IAAA,cAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,cAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACtB,CAAC,EANI,cAAc,KAAd,cAAc,GAMlB,EAAA,CAAA,CAAA,CAAA;AAED;AACA;AACA,MAAM,SAAS,CAAA;AAAf,IAAA,WAAA,GAAA;;QAES,IAAW,CAAA,WAAA,GAAG,uBAAW,CAAC;QAC1B,IAAK,CAAA,KAAA,GAAG,YAAK,CAAC;;;;;;;QAUd,IAAa,CAAA,aAAA,GAAwB,EAAE,CAAC;AAaxC,QAAA,IAAA,CAAA,cAAc,GACrB,IAAI,OAAO,EAAoC,CAAC;;AAIzC,QAAA,IAAA,CAAA,cAAc,GAAmB;YACxC,WAAW,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BG;AACK,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAwB,CAAA,wBAAA,EAAE,CAAC;AAE1D;;;;;AAKG;AACK,QAAA,IAAA,CAAA,KAAK,GAAmB,cAAc,CAAC,UAAU,CAAC;AAsC1D;;;;;;AAMG;QACH,IAAK,CAAA,KAAA,GAAG,YAA0B;YACjC,OAAO,IAAI,CAAC,gBAAgB;iBAC1B,GAAG,CAAC,YAAW;AACf,gBAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC;AACrC,gBAAA,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE;AACnC,oBAAA,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;oBACnC,IAAI,CAAC,WAAW,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;AAC3C,wBAAA,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;AACvB,wBAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;AACvB,qBAAC,CAAC,CAAC;AACH,iBAAA;AAAM,qBAAA;oBACN,MAAM,IAAI,CAAC,WAAW,CAAC;oBACvB,OAAO;AACP,iBAAA;gBAED,IAAI,CAAC,OAAO,GAAG,IAAI,0BAAO,CACzB,MAAM,EACN,iBAAiB,EACjB,8BAA8B,EAC9B,oBAAoB,EACpB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,CACd,CAAC;AAEF,gBAAA,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC1B,gBAAA,sBAAsB,EAAE,CAAC;gBACzB,MAAM,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;AAEvD,gBAAA,MAAM,EAAE,2BAA2B,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;AAE3D,gBAAA,IAAI,2BAA2B,EAAE;AAChC,oBAAA,MAAM,CAAC,KAAK,CACX,4BAA4B,EAC5B,2BAA2B,CAC3B,CAAC;oBAEF,IAAI,CAAC,cAAc,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,iBAAU,CACzB,MAAM,EACN,iBAAiB,EACjB,OAAA,CAAA,WAAW,EACX,WAAW,EACX,IAAI,CAAC,OAAO,EACZ,oBAAoB,EACpB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,mBAAmB,CACxB,CAAC;oBAEF,MAAM,8BAA8B,GACnC,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;oBACnC,gBAAgB,GAAG,IAAI,CAAC,IAAI;AAC1B,yBAAA,KAAK,CAAC,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,CAAC;AAC3D,yBAAA,SAAS,CAAC;wBACV,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAI;AACxB;;;;AAIG;AACH,4BAAA,MAAM,SAAS,GAAG,IAAA,OAAA,CAAA,MAAM,GAAE;kCACvB,MAAc,CAAA,cAAA,CAAC,8BAA8B;AAC/C,kCAAE,MAAA,CAAA,cAAc,CAAC,8BAA8B,CAAC;4BAEjD,IAAI,IAAI,KAAK,SAAS,EAAE;gCACvB,IAAI,CAAC,WAAW,EAAE,CAAC;AACnB,6BAAA;AAED,4BAAA,MAAA,CAAA,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE;AACzB,gCAAA,KAAK,EAAE,IAAI;gCACX,IAAI;AACJ,6BAAA,CAAC,CAAC;yBACH;wBACD,KAAK,EAAE,GAAG,IAAG;AACZ,4BAAA,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;4BAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;yBAClB;AACD,qBAAA,CAAC,CAAC;AACJ,iBAAA;AAAM,qBAAA;AACN,oBAAA,MAAM,CAAC,IAAI,CACV,4GAA4G,EAC5G;wBACC,MAAM,EAAE,IAAI,CAAC,aAAa;AAC1B,qBAAA,CACD,CAAC;oBAEF,IAAI,CAAC,WAAW,EAAE,CAAC;AACnB,iBAAA;gBAED,MAAM,IAAI,CAAC,WAAW,CAAC;AACvB,gBAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC;aACpC,EAAE,iBAAiB,CAAC;iBACpB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC;AACvD,SAAC,CAAC;QAEF,IAAK,CAAA,KAAA,GAgBD,OACH,gBAA+C,EAC/C,oBAIO,EACP,kBAA+C,KACd;YACjC,OAAO,IAAI,CAAC,gBAAgB;iBAC1B,GAAG,CAAC,YAAW;AACf,gBAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;AAEnB,gBAAA,IAAI,MAAW,CAAC;AAEhB,gBAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAClB,oBAAA,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AACvC,iBAAA;;AAID,gBAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;oBAC/C,MAAM,GAAG,GAAG,sCAAsC,CAAC;oBACnD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;AACxC,oBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,iBAAA;AAED,gBAAA,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE;oBAC7C,IAAI,kBAAkB,KAAK,SAAS,EAAE;AACrC,wBAAA,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;AACzD,qBAAA;AACD,iBAAA;AAED,gBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,IAAI,CAAC,eAAe,EAAE;AACrB,oBAAA,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;AACtD,iBAAA;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CACxC,eAAe,EACf,kBAAkB,CAClB,CAAC;AAEF,gBAAA,MAAM,SAAS,GAAG,IAAA,kCAA2B,EAAC,eAAe,CAAC,CAAC;AAE/D,gBAAA,IAAI,UAAU,CAAC,oBAAoB,CAAC,EAAE;AACrC,oBAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,wBAAA,MAAM,GAAG,GAAG,MAAa,CAAA,aAAA,CAAC,gCAAgC,CAAC;wBAC3D,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAEjC,wBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,qBAAA;AAED,oBAAA,MAAM,SAAS,GAAG,YAAA,CAAA,qBAAqB,CAAC,wBAAwB,CAC/D,eAAe,EACf,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,oBAAoB,EAAE,CACxC,CAAC;AAEF,oBAAA,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAChC,gBAAgB,EAChB,SAAS,EACT,UAAU,CACV,CAAC;AACF,iBAAA;AAAM,qBAAA;;AAEN,oBAAA,IAAI,IAAA,OAAkB,CAAA,kBAAA,EAAI,oBAAoB,EAAE,eAAe,CAAC,EAAE;wBACjE,MAAM,SAAS,GAAG,YAAA,CAAA,qBAAqB,CAAC,WAAW,CAClD,eAAe,EACZ,oBAAoB,CACvB,CAAC;AACF,wBAAA,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAChC,gBAAgB,EAChB,SAAS,EACT,UAAU,CACV,CAAC;AACF,qBAAA;AAAM,yBAAA,IACN,CAAC,oBAAoB;AACrB,wBAAA,IAAA,YAAe,CAAA,eAAA,EAAC,oBAAoB,CAAC,EACpC;AACD,wBAAA,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,KAAK,CACjC,gBAAgB,EAChB,SAAS,EACT,UAAU,CACV,CAAC;AACF,qBAAA;AAAM,yBAAA;AACN,wBAAA,MAAM,aAAa,GAAG,IAAA,MAAA,CAAA,qBAAqB,EAAI;AAC9C,4BAAA,OAAO,EAAE,gBAAgB;AACzB,4BAAA,MAAM,EAAE,eAAe;AACvB,4BAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AACrD,yBAAA,CAAC,CAAC;wBACH,MAAM,SAAS,GAAG,IAAA,MAAS,CAAA,SAAA,EACzB,oBAA2D,CAC3D,aAAa,CACb,CACD,CAAC;AACF,wBAAA,MAAM,IAAI,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAQ,CAAC;wBACtD,MAAM,GAAG,IAAA,MAAkB,CAAA,kBAAA,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAChD,qBAAA;AACD,iBAAA;;AAID,gBAAA,MAAM,SAAS,GACd,UAAU,CAAC,oBAAoB,CAAC;AAChC,oBAAA,IAAA,0BAAkB,EAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;AAE3D,gBAAA,OAAO,QAAQ,CACd,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,EAC9B,eAAe,CAAC,SAAS,CACzB,CAAC;aACF,EAAE,iBAAiB,CAAC;iBACpB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CAAC;AACvD,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,IAAI,GAAG,OACN,KAAQ,EACR,SAAqC,KACtB;YACf,OAAO,IAAI,CAAC,gBAAgB;iBAC1B,GAAG,CAAC,YAAW;AACf,gBAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;AACnB,gBAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAClB,oBAAA,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;AACzC,iBAAA;;;gBAID,MAAM,mBAAmB,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;;;;AAKvD,gBAAA,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;sBAC3C,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,EAAE,EAAE,CAG3B;sBACF,SAAS,CAAC;;;;AAKb,gBAAA,MAAM,YAAY,GAEH,mBAAmB,IAAI,gBAAgB,CAAC;AAEvD,gBAAA,MAAM,gBAAgB,GACrB,KAAK,GAAkC,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC;AAEtE,gBAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;oBAC/C,MAAM,GAAG,GAAG,4CAA4C,CAAC;oBACzD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7B,oBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,iBAAA;AAED,gBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,IAAI,CAAC,eAAe,EAAE;AACrB,oBAAA,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AACjE,iBAAA;AAED,gBAAA,MAAM,SAAS,GAAG;AACjB,oBAAA,OAAO,EAAE,gBAAiD;AAC1D,oBAAA,MAAM,EAAE,eAAe;AACvB,oBAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;iBACrD,CAAC;gBAEF,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAM,CAAC,KAAG;;;oBAGzC,MAAM,uBAAuB,GAAG,cAAiB,CAAA,iBAAA,CAAC,OAAO,CACxD,SAAS,CACT,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;AACvC,oBAAA,KAAK,MAAM,YAAY,IAAI,uBAAuB,EAAE;wBACnD,MAAM,WAAW,GAAG,YAAY,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBAChE,IAAI,WAAW,KAAK,IAAI,EAAE;4BACzB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,KAAK,CAC5B,YAAY,CAAC,sBAAsB,EACnC,kCAAqB,CAAC,wBAAwB,CAC7C,YAAY,CAAC,gBAAiB,EAC9B,WAAW,CACX,CACD,CAAC;AACF,4BAAA,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gCACzB,MAAM,IAAI,KAAK,CACd;oCACC,CACC,0CAAA,EAAA,eAAe,CAAC,IACjB,CAAK,EAAA,EAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAG,CAAA,CAAA;oCAC7B,CAAqC,kCAAA,EAAA,YAAY,CAAC,KAAK,CAAY,UAAA,CAAA;oCACnE,CAA8E,4EAAA,CAAA;AAC9E,oCAAA,CAAA,CAAA,EAAI,YAAY,CAAC,gBAAgB,EAAE,IAAI,CAA0C,wCAAA,CAAA;AACjF,iCAAA,CAAC,IAAI,CAAC,GAAG,CAAC,CACX,CAAC;AACF,6BAAA;AACD,yBAAA;AACD,qBAAA;AACF,iBAAC,CAAC,CAAC;gBAEH,MAAM,iBAAiB,GAAG,SAAS;AAClC,sBAAE,IAAA,MAAS,CAAA,SAAA,EACT,SAAS,CAAC,IAAA,MAAY,CAAA,YAAA,EAAC,SAAS,CAAC,CAAC,CACjC,CAAC,kBAAkB,EAAK;sBACzB,SAAS,CAAC;AAEb,gBAAA,MAAM,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAM,CAAC,KAAG;AAC9D,oBAAc,MAAM,CAAC,CAAC,IAAI,CACzB,KAAK,EACL,iBAAiB,EACjB,SAAS,EACT,YAAY,EACX;AACF,oBAAA,OAAO,CAAC,CAAC,KAAK,CACb,gBAAgB,EAChB,YAAA,CAAA,qBAAqB,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,CACzD,CAAC;AACH,iBAAC,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;aACvD,EAAE,gBAAgB,CAAC;iBACnB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC,CAAC;AACtD,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,kBAAkB,GAAG,CAAC,MAAuB,KAAqB;AACjE,YAAA,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;YAE9C,MAAM,wBAAwB,GAAkB,MAC/C,IAAI,CAAC,eAAe,KAAK,sBAAsB,CAAC;AAEjD,YAAA,IAAI,eAAe,IAAI,eAAe,CAAC,eAAe,EAAE;gBACvD,OAAO,eAAe,CAAC,eAAe,CAAC;AACvC,aAAA;AACD,YAAA,IAAI,wBAAwB,EAAE,IAAI,MAAM,CAAC,eAAe,EAAE;gBACzD,OAAO,MAAM,CAAC,eAAe,CAAC;AAC9B,aAAA;AAED,YAAA,OAAO,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC;AACvD,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,eAAe,GAAG,CAAC,MAAuB,KAAkB;AAC3D,YAAA,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC;YAE9C,MAAM,qBAAqB,GAAkB,MAC5C,IAAI,CAAC,YAAY,KAAK,mBAAmB,CAAC;AAE3C,YAAA,IAAI,eAAe,IAAI,eAAe,CAAC,YAAY,EAAE;gBACpD,OAAO,eAAe,CAAC,YAAY,CAAC;AACpC,aAAA;AACD,YAAA,IAAI,qBAAqB,EAAE,IAAI,MAAM,CAAC,YAAY,EAAE;gBACnD,OAAO,MAAM,CAAC,YAAY,CAAC;AAC3B,aAAA;AAED,YAAA,OAAO,IAAI,CAAC,YAAY,IAAI,mBAAmB,CAAC;AACjD,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,MAAM,GAgBF,OACH,kBAAqD,EACrD,oBAGsB,KACD;YACrB,OAAO,IAAI,CAAC,gBAAgB;iBAC1B,GAAG,CAAC,YAAW;AACf,gBAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;AAEnB,gBAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;AAClB,oBAAA,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC7C,iBAAA;AAED,gBAAA,IAAI,SAAwC,CAAC;gBAE7C,IAAI,CAAC,kBAAkB,EAAE;oBACxB,MAAM,GAAG,GAAG,qCAAqC,CAAC;oBAClD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAE1C,oBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,iBAAA;AAED,gBAAA,IAAI,uBAAuB,CAAI,kBAAkB,CAAC,EAAE;oBACnD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;oBAE5C,IAAI,CAAC,oBAAoB,EAAE;wBAC1B,MAAM,GAAG,GACR,mFAAmF,CAAC;wBACrF,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC;AAE5C,wBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,qBAAA;AAED,oBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;oBAE7D,IAAI,CAAC,eAAe,EAAE;AACrB,wBAAA,MAAM,IAAI,KAAK,CACd,uDAAuD,CACvD,CAAC;AACF,qBAAA;AAED,oBAAA,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE;AAC7C,wBAAA,MAAM,SAAS,GAAG,IAAA,kCAA2B,EAAC,eAAe,CAAC,CAAC;AAE/D,wBAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,4BAAA,MAAM,GAAG,GAAG,MAAa,CAAA,aAAA,CAAC,iCAAiC,CAAC;4BAC5D,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAEjC,4BAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,yBAAA;AAED,wBAAA,SAAS,GAAG,YAAqB,CAAA,qBAAA,CAAC,wBAAwB,CACzD,eAAe,EACf,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,oBAAoB,EAAE,CACxC,CAAC;AACF,qBAAA;AAAM,yBAAA;AACN,wBAAA,IAAI,IAAA,OAAkB,CAAA,kBAAA,EAAC,oBAAoB,EAAE,eAAe,CAAC,EAAE;4BAC9D,SAAS,GAAG,kCAAqB,CAAC,WAAW,CAC5C,eAAe,EACZ,oBAAoB,CACvB,CAAC;AACF,yBAAA;AAAM,6BAAA;4BACN,SAAS,GAAG,IAAA,MAAS,CAAA,SAAA,EACnB,oBAAkD,CAClD,IAAA,mBAAY,EAAC;AACZ,gCAAA,OAAO,EAAE,gBAAiD;AAC1D,gCAAA,MAAM,EAAE,eAAe;AACvB,gCAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AACrD,6BAAA,CAAC,CACF,CACD,CAAC,kBAAkB,EAAK,CAAC;AAC1B,yBAAA;AAED,wBAAA,IACC,CAAC,SAAS;AACV,4BAAA,CAAC,kCAAqB,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACjD;4BACD,MAAM,GAAG,GACR,mEAAmE,CAAC;4BACrE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;AAEjC,4BAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,yBAAA;AACD,qBAAA;AAED,oBAAA,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAC1C,gBAAgB,EAChB,SAAS,CACT,CAAC;oBAEF,OAAO,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;AACpD,iBAAA;AAAM,qBAAA;oBACN,MAAM,KAAK,GAAG,kBAAkB,CAAC;oBACjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,IAAI,EAAE,CAAC;AACzD,yBAAA,WAA4C,CAAC;AAE/C,oBAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;wBAC/C,MAAM,GAAG,GAAG,4CAA4C,CAAC;wBACzD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7B,wBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,qBAAA;AAED,oBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;oBAE7D,IAAI,CAAC,eAAe,EAAE;AACrB,wBAAA,MAAM,IAAI,KAAK,CACd,uDAAuD,CACvD,CAAC;AACF,qBAAA;oBAED,MAAM,WAAW,GAAG,YAAA,CAAA,qBAAqB,CAAC,WAAW,CACpD,eAAe,EACf,KAAK,CACL,CAAC;AAEF,oBAAA,IAAI,oBAAoB,EAAE;AACzB,wBAAA,IAAI,OAAO,oBAAoB,KAAK,UAAU,EAAE;4BAC/C,MAAM,GAAG,GAAG,kBAAkB,CAAC;4BAC/B,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC;AAE5C,4BAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,yBAAA;wBAED,SAAS,GAAG,IAAA,MAAS,CAAA,SAAA,EACnB,oBAAkD,CAClD,IAAA,mBAAY,EAAC;AACZ,4BAAA,OAAO,EAAE,gBAAiD;AAC1D,4BAAA,MAAM,EAAE,eAAe;AACvB,4BAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AACrD,yBAAA,CAAC,CACF,CACD,CAAC,kBAAkB,EAAK,CAAC;AAC1B,qBAAA;AAAM,yBAAA;wBACN,SAAS,GAAG,WAAW,CAAC;AACxB,qBAAA;AAED,oBAAA,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;oBAEhE,OAAO,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;AACpD,iBAAA;aACD,EAAE,kBAAkB,CAAC;iBACrB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACxD,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,OAAO,GAcH,CACH,kBAAsD,EACtD,oBAGsB,KACiB;AACvC,YAAA,IAAI,kBAAkC,CAAC;AAEvC,YAAA,MAAM,gBAAgB,GACrB,kBAAkB,IAAI,uBAAuB,CAAI,kBAAkB,CAAC;AACnE,kBAAE,kBAAkB;kBAClB,SAAS,CAAC;AAEd,YAAA,IAAI,kBAAkB,IAAI,gBAAgB,KAAK,SAAS,EAAE;gBACzD,MAAM,KAAK,GAAM,kBAAkB,CAAC;AACpC,gBAAA,MAAM,gBAAgB,GACrB,KAAK,IAAa,MAAM,CAAC,cAAc,CAAC,KAAK,CAAE,CAAC,WAAW,CAAC;AAE7D,gBAAA,IAAI,uBAAuB,CAAI,gBAAgB,CAAC,EAAE;AACjD,oBAAA,IAAI,oBAAoB,EAAE;AACzB,wBAAA,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE;4BAClE,KAAK;4BACL,oBAAoB;AACpB,yBAAA,CAAC,CAAC;AACH,qBAAA;oBAED,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAChD,iBAAA;AAAM,qBAAA;oBACN,MAAM,GAAG,GACR,8DAA8D,CAAC;oBAChE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7B,oBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,iBAAA;AACD,aAAA;;AAGD,YAAA,IACC,oBAAoB;gBACpB,gBAAgB;gBAChB,IAAA,OAAA,CAAA,kBAAkB,EACjB,oBAAoB,EACpB,kBAAkB,CAAC,gBAAiB,CAAE,CACtC,EACA;AACD,gBAAA,MAAM,GAAG,GAAG,MAAa,CAAA,aAAA,CAAC,wBAAwB,CAAC;gBACnD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,oBAAoB,EAAE,CAAC,CAAC;AAE3D,gBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,aAAA;AAED,YAAA,IAAI,oBAAoB,KAAK,SAAS,IAAI,gBAAgB,KAAK,SAAS,EAAE;gBACzE,MAAM,GAAG,GAAG,oDAAoD,CAAC;AACjE,gBAAA,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;AACxC,gBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,aAAA;AAED,YAAA,IAAI,gBAAgB,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;gBACnE,MAAM,GAAG,GAAG,sCAAsC,CAAC;gBACnD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAExC,gBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACrB,aAAA;AAED,YAAA,IAAI,gBAAgB,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE;AACjE,gBAAA,MAAM,gBAAgB,GAAG,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;AAClE,gBAAA,kBAAkB,GAAG,IAAA,MAAS,CAAA,SAAA,EAC7B,gBAAgB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CACtD,CAAC;AACF,aAAA;AAAM,iBAAA,IAAI,gBAAgB,IAAI,OAAO,oBAAoB,KAAK,UAAU,EAAE;AAC1E,gBAAA,kBAAkB,GAAG,IAAA,MAAS,CAAA,SAAA,EAC5B,oBAA2D,CAC3D,kBAAkB,CAAC,gBAAgB,CAAC,CACpC,CACD,CAAC;AACF,aAAA;AAED,YAAA,OAAO,IAAI,MAAA,CAAA,UAAU,CAAyB,QAAQ,IAAG;AACxD,gBAAA,IAAI,MAAwB,CAAC;AAE7B,gBAAA,IAAI,CAAC,gBAAgB;qBACnB,GAAG,CAAC,YAAW;AACf,oBAAA,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;;;oBAInB,MAAM,GAAG,IAAI,CAAC,OAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;AAC9C,yBAAA,IAAI,CAAC,IAAA,MAAA,CAAA,MAAM,EAAC,CAAC,EAAE,KAAK,EAAE,KAAK,iBAAiB,CAAC,KAAK,CAAC,KAAK,MAAA,CAAA,IAAI,CAAC,CAAC;AAC9D,yBAAA,SAAS,CAAC;wBACV,IAAI,EAAE,IAAI,IACT,IAAI,CAAC,gBAAgB,CAAC,MAAM;AAC5B,4BAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAW;;;;gCAKpC,IAAI,OAAO,GAAG,IAAI,CAAC;;;AAInB,gCAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;oCAC7B,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvD,oCAAA,MAAM,SAAS,GAAG,IAAA,kCAA2B,EAC5C,eAAgB,CAChB,CAAC;oCACF,MAAM,oBAAoB,GAAG,IAAA,MAA2B,CAAA,2BAAA,EACvD,IAAI,CAAC,OAAO,EACZ,SAAS,CACT,CAAC;AACF,oCAAA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CACpC,IAAI,CAAC,KAAK,EACV,oBAAoB,CACpB,CAAC;AACF,oCAAA,OAAO,GAAG;AACT,wCAAA,GAAG,OAAO;AACV,wCAAA,OAAO,EAAE,YAAiB;qCAC1B,CAAC;AACF,iCAAA;AAED,gCAAA,IACC,CAAC,kBAAkB;qCAClB,MAAM,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAClD;AACD,oCAAA,QAAQ,CAAC,IAAI,CAAC,OAAiC,CAAC,CAAC;AACjD,iCAAA;6BACD,EAAE,mCAAmC,CAAC;wBACxC,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;AACjC,wBAAA,QAAQ,EAAE,MAAM,QAAQ,CAAC,QAAQ,EAAE;AACnC,qBAAA,CAAC,CAAC;iBACJ,EAAE,6CAA6C,CAAC;AAChD,qBAAA,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;qBACrD,KAAK,CAAC,KAAK,IAAG;AACd,oBAAA,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,iBAAC,CAAC,CAAC;;;;gBAKJ,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAW;AAClD,oBAAA,IAAI,MAAM,EAAE;wBACX,MAAM,CAAC,WAAW,EAAE,CAAC;AACrB,qBAAA;iBACD,EAAE,6BAA6B,CAAC,CAAC;AACnC,aAAC,CAAC,CAAC;AACJ,SAAC,CAAC;QAEF,IAAY,CAAA,YAAA,GAMR,CACH,KAAoC,EACpC,QAAmE,EACnE,OAAgC,KACK;AACrC,YAAA,OAAO,IAAI,MAAA,CAAA,UAAU,CAAuB,QAAQ,IAAG;AACtD,gBAAA,MAAM,KAAK,GAAG,IAAI,GAAG,EAAa,CAAC;AACnC,gBAAA,MAAM,YAAY,GAAG,IAAI,GAAG,EAAa,CAAC;gBAC1C,IAAI,cAAc,GAAa,EAAE,CAAC;AAClC,gBAAA,IAAI,MAAwB,CAAC;;AAE7B,gBAAA,IAAI,kBAA8C,CAAC;AAEnD;;;;;;;;;AASG;gBACH,MAAM,uBAAuB,GAAG,MAAW;AAC1C,oBAAA,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;oBACpC,YAAY,CAAC,QAAQ,CAAC,CAAC;AACxB,iBAAC,CAAC;;;AAIF,gBAAA,MAAM,cAAc,GAAG,IAAI,MAAA,CAAA,wBAAwB,CAAC;AACnD,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,YAAY,EAAE,QAAQ,CAAC,KAAK;AAC5B,oBAAA,WAAW,EAAE,IAAI;AACjB,iBAAA,CAAC,CAAC;AAEH,gBAAA,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;AAC/B,gBAAA,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;AAEhD,gBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,CAAC,eAAe,EAAE;AACrB,oBAAA,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;AACpD,iBAAA;AAED,gBAAA,IAAI,KAAK,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;AAC5C,oBAAA,kBAAkB,GAAG,IAAA,MAAS,CAAA,SAAA,EAC5B,QAA+C,CAC/C,kBAAkB,CAAC,KAAK,CAAC,CACzB,CACD,CAAC;AACF,iBAAA;AAAM,qBAAA,IAAI,IAAA,YAAA,CAAA,eAAe,EAAC,QAAQ,CAAC,EAAE;oBACrC,kBAAkB,GAAG,SAAS,CAAC;AAC/B,iBAAA;AAED,gBAAA,IAAI,CAAC,gBAAgB;qBACnB,GAAG,CAAC,YAAW;oBACf,IAAI;;AAEH,wBAAA,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,IAAI,IAAG;AAC/D,4BAAA,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;4BACtD,MAAM,MAAM,GAAG,CAAA,CAAA,EAAA,OAAA,CAAA,kBAAkB,EAAC,mBAAoB,EAAE,IAAI,CAAC,CAAC;AAC9D,4BAAA,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACzB,yBAAC,CAAC,CAAC;;;;;wBAMH,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,CACrC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAC1B,IAAI,CAAC,gBAAgB,CAAC,MAAM;AAC5B,4BAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAW;AACpC,gCAAA,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAE,CAAC;gCACvD,MAAM,MAAM,GAAG,CAAA,CAAA,EAAA,OAAA,CAAA,kBAAkB,EAChC,mBAAmB,EACnB,OAAO,CACP,CAAC;AACF,gCAAA,IACC,kBAAkB;oCAClB,EAAE,MAAM,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAC3C;oCACD,IACC,MAAM,KAAK,QAAQ;AACnB,yCAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAC9C;;;;;AAKD,wCAAA,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,qCAAA;AAAM,yCAAA;;wCAEN,OAAO;AACP,qCAAA;AACD,iCAAA;;;;;gCAMD,IAAI,MAAM,KAAK,QAAQ,EAAE;AACxB,oCAAA,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,iCAAA;AAAM,qCAAA;AACN,oCAAA,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAClC,iCAAA;AAED,gCAAA,MAAM,QAAQ,GACb,IAAI,CAAC,IAAI,EAAE,oBAAoB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;gCAEjD,MAAM,KAAK,GACV,YAAY,CAAC,IAAI,GAAG,cAAc,CAAC,MAAM;oCACzC,IAAI,CAAC,YAAY,CAAC;gCAEnB,IAAI,KAAK,IAAI,QAAQ,EAAE;oCACtB,cAAc,CAAC,OAAO,EAAE,CAAC;AACzB,iCAAA;;gCAGD,cAAc,CAAC,KAAK,EAAE,CAAC;AACxB,6BAAC,EAAE,oCAAoC,CAAC,CACzC,CAAC;;AAGF,wBAAA,uBAAuB,EAAE,CAAC;AAC1B,qBAAA;AAAC,oBAAA,OAAO,GAAG,EAAE;AACb,wBAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACpB,qBAAA;iBACD,EAAE,gCAAgC,CAAC;AACnC,qBAAA,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;qBAC1D,KAAK,CAAC,KAAK,IAAG;AACd,oBAAA,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,iBAAC,CAAC,CAAC;AAEJ;;;;;AAKG;gBACH,MAAM,gBAAgB,GAAG,MAA2B;AACnD,oBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,oBAAoB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;AACjE,oBAAA,MAAM,UAAU,GAAG;wBAClB,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC7B,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;qBACpC,CAAC;oBAEF,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,oBAAA,UAAU,CAAC,OAAO,CAAC,IAAI,IAAG;AACzB,wBAAA,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;wBACtD,MAAM,MAAM,GAAG,IAAA,OAAA,CAAA,kBAAkB,EAAC,mBAAoB,EAAE,IAAI,CAAC,CAAC;AAC9D,wBAAA,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACzB,qBAAC,CAAC,CAAC;;AAGH,oBAAA,cAAc,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;oBAEvD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;;;oBAI5C,IAAI,OAAO,EAAE,IAAI,EAAE;wBAClB,SAAS,CAAC,QAAQ,CAAC,CAAC;AACpB,qBAAA;oBAED,OAAO;AACN,wBAAA,KAAK,EAAE,QAAQ;wBACf,QAAQ;qBACR,CAAC;AACH,iBAAC,CAAC;AAEF;;;;;;;AAOG;AACH,gBAAA,MAAM,YAAY,GAAG,CAAC,QAA8B,KAAU;;;AAI7D,oBAAA,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;oBAGxB,YAAY,CAAC,KAAK,EAAE,CAAC;oBACrB,cAAc,GAAG,EAAE,CAAC;AACrB,iBAAC,CAAC;AAEF;;;;;AAKG;AACH,gBAAA,MAAM,SAAS,GAAG,CAAC,WAAgB,KAAU;AAC5C,oBAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;oBAClD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAgB,EAAE,OAAO,CAAC,CAAC;oBAErE,MAAM,cAAc,GAAG,YAAA,CAAA,yBAAyB,CAAC,aAAa,CAC7D,UAAW,CAAC,IAAK,CACjB,CAAC;oBAEF,IAAI,cAAc,CAAC,MAAM,EAAE;AAC1B,wBAAA,MAAM,SAAS,GAAG,IAAA,0BAAmB,EAAC,cAAc,CAAC,CAAC;AACtD,wBAAA,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC5B,qBAAA;AACF,iBAAC,CAAC;AAEF;;;;;;;AAOG;AACH,gBAAA,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAE,KAAU;AACzC,oBAAA,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;AAChC,oBAAA,IACC,KAAK,KAAK,MAAc,CAAA,cAAA,CAAC,wBAAwB;wBACjD,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,KAAK,CAAC,IAAI,EAC/B;AACD,wBAAA,uBAAuB,EAAE,CAAC;AAC1B,wBAAA,SAAS,EAAE,CAAC;AACZ,qBAAA;AACF,iBAAC,CAAC;gBACF,MAAM,SAAS,GAAG,MAAA,CAAA,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBAEvD,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAW;AAClD,oBAAA,IAAI,MAAM,EAAE;wBACX,MAAM,CAAC,WAAW,EAAE,CAAC;AACrB,qBAAA;iBACD,EAAE,gCAAgC,CAAC,CAAC;AACtC,aAAC,CAAC,CAAC;AACJ,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,MAA0B,GAAA,EAAE,KAAI;YAC5C,IAAI,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAEnD,MAAM,EACL,SAAS,EAAE,eAAe,EAC1B,oBAAoB,EAAE,0BAA0B,EAChD,eAAe,EAAE,qBAAqB,EACtC,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,EAAE,sBAAsB,EACxC,YAAY,EAAE,kBAAkB,EAChC,gBAAgB,EAAE,sBAAsB,EACxC,eAAe,EAAE,qBAAqB,EACtC,aAAa,EAAE,mBAAmB,EAClC,cAAc,EAAE,oBAAoB,EACpC,GAAG,iBAAiB,EACpB,GAAG,MAAM,CAAC;YAEX,MAAM,oBAAoB,GAAG,MAAA,CAAA,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC;AAE9D,YAAA,MAAM,aAAa,GAAG;gBACrB,2BAA2B,EAAE,oBAAoB,EAAE,QAAQ;gBAC3D,8BAA8B,EAAE,oBAAoB,EAAE,eAAe;gBACrE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM;gBAChD,kBAAkB,EAAE,oBAAoB,EAAE,MAAM;aAChD,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG;gBACpB,GAAG,IAAI,CAAC,aAAa;AACrB,gBAAA,GAAG,iBAAiB;AACpB,gBAAA,IAAI,oBAAoB,IAAI,aAAa;aACzC,CAAC;YAEF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAEjD,MAAM,oBAAoB,GACzB,CAAC,eAAe,IAAI,eAAe,CAAC,oBAAoB;gBACxD,0BAA0B;gBAC1B,OAAoB,CAAA,oBAAA,CAAC,OAAO,CAAC;AAE9B,YAAA,QAAQ,oBAAoB;gBAC3B,KAAK,OAAA,CAAA,oBAAoB,CAAC,UAAU;oBACnC,IAAI,CAAC,gBAAgB,GAAG,IAAA,oBAAA,CAAA,iBAAiB,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBAC/D,MAAM;gBACP,KAAK,OAAA,CAAA,oBAAoB,CAAC,OAAO;AAChC,oBAAA,IAAI,CAAC,gBAAgB,GAAG,oBAAA,CAAA,mBAAmB,CAAC;oBAC5C,MAAM;AACP,gBAAA;AACC,oBAAA,IAAI,CAAC,gBAAgB,GAAG,oBAAA,CAAA,mBAAmB,CAAC;oBAC5C,MAAM;AACP,aAAA;;YAGD,IAAI,CAAC,aAAa,CAAC,aAAa;gBAC/B,CAAC,eAAe,IAAI,eAAe,CAAC,aAAa,KAAK,mBAAmB,CAAC;AAE3E,YAAA,IAAI,CAAC,eAAe;AACnB,gBAAA,CAAC,eAAe,IAAI,eAAe,CAAC,eAAe;oBACnD,qBAAqB;oBACrB,IAAI,CAAC,eAAe,CAAC;AAEtB,YAAA,IAAI,CAAC,gBAAgB;AACpB,gBAAA,CAAC,eAAe,IAAI,eAAe,CAAC,gBAAgB;oBACpD,sBAAsB;AACtB,oBAAA,IAAI,CAAC,gBAAgB;AACrB,oBAAA,KAAK,CAAC;;YAGP,IAAI,CAAC,aAAa,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;AAE5D,YAAA,IAAI,CAAC,YAAY;AAChB,gBAAA,CAAC,eAAe,IAAI,eAAe,CAAC,YAAY;oBAChD,kBAAkB;AAClB,oBAAA,IAAI,CAAC,YAAY;AACjB,oBAAA,IAAI,CAAC;;YAGN,IAAI,CAAC,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;AAEpD,YAAA,IAAI,CAAC,gBAAgB;AACpB,gBAAA,CAAC,eAAe,IAAI,eAAe,CAAC,gBAAgB;oBACpD,sBAAsB;AACtB,oBAAA,IAAI,CAAC,gBAAgB;AACrB,oBAAA,EAAE,GAAG,EAAE,CAAC;AAET,YAAA,IAAI,CAAC,cAAc;AAClB,gBAAA,CAAC,eAAe,IAAI,eAAe,CAAC,cAAc;oBAClD,oBAAoB;AACpB,oBAAA,IAAI,CAAC,cAAc;AACnB,oBAAA,SAAS,CAAC;AAEX,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,EAAG,CAAC;AAC5C,SAAC,CAAC;KAkOF;IAlxCA,aAAa,GAAA;AACZ,QAAA,OAAO,WAAW,CAAC;KACnB;AAED;;;;;;AAMG;AACH,IAAA,kBAAkB,CAAC,SAAiB,EAAA;AACnC;;;;;AAKG;AACH,QAAA,MAAM,OAAO,GAAG,CAAC,GAAU,KAAI;YAC9B,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE;gBAC5D,MAAM,IAAI,KAAK,CACd;AACC,oBAAA,CAAA,wCAAA,EAA2C,SAAS,CAAA,wBAAA,EAA2B,IAAI,CAAC,KAAK,CAAI,EAAA,CAAA;oBAC7F,CAA6E,2EAAA,CAAA;oBAC7E,kEAAkE;oBAClE,iEAAiE;AACjE,iBAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CACZ,CAAC;AACF,aAAA;AAAM,iBAAA;AACN,gBAAA,MAAM,GAAG,CAAC;AACV,aAAA;AACF,SAAC,CAAC;AAEF,QAAA,OAAO,OAAO,CAAC;KACf;AAghCD;;;;;;;AAOG;AACH,IAAA,MAAM,KAAK,GAAA;AACV,QAAA,sBAAsB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC;AACrC,QAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;AACpC,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE;;YAE/B,IAAI,CAAC,OAAO,GAAG,IAAI,0BAAO,CACzB,MAAM,EACN,iBAAiB,EACjB,8BAA8B,EAC9B,oBAAoB,EACpB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,CACd,CAAC;AACF,YAAA,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC1B,SAAA;AAED,QAAA,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YACjD,gBAAgB,CAAC,WAAW,EAAE,CAAC;AAC/B,SAAA;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;AACd,YAAA,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AACvB,SAAA;AAED,QAAA,MAAM,IAAI,CAAC,OAAQ,CAAC,KAAK,EAAE,CAAC;AAE5B,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AAC7B,QAAA,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;AACzB,QAAA,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;AACtB,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAoC,CAAC;AAEtE,QAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACnC,QAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC;KACvC;AAED;;;;;AAKG;AACH,IAAA,MAAM,IAAI,GAAA;AACT,QAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC;AAErC,QAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAEpC,QAAA,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YACjD,gBAAgB,CAAC,WAAW,EAAE,CAAC;AAC/B,SAAA;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;AACd,YAAA,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AACvB,SAAA;AAED,QAAA,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AAC7B,QAAA,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;AACtB,QAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACnC,QAAA,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC;KACvC;AAED;;;;;;AAMG;IACK,iBAAiB,CACxB,eAA4B,EAC5B,kBAA+C,EAAA;AAE/C,QAAA,IAAI,aAA2C,CAAC;QAChD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,kBAAkB,IAAI,EAAE,CAAC;QAEvD,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE;AACpE,YAAA,OAAO,SAAS,CAAC;AACjB,SAAA;AAED,QAAA,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;AAC9C,YAAA,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC5D,SAAA;QAED,IAAI,IAAI,KAAK,SAAS,EAAE;AACvB,YAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC7B,gBAAA,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAC3C,aAAA;YAED,IAAI,IAAI,GAAG,CAAC,EAAE;AACb,gBAAA,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAC1C,aAAA;AACD,SAAA;QAED,IAAI,KAAK,KAAK,SAAS,EAAE;AACxB,YAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC9B,gBAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAC5C,aAAA;YAED,IAAI,KAAK,GAAG,CAAC,EAAE;AACd,gBAAA,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;AAC3C,aAAA;AACD,SAAA;AAED,QAAA,IAAI,IAAI,EAAE;YACT,aAAa,GAAG,sCAAyB,CAAC,kBAAkB,CAC3D,eAAe,EACf,IAAI,CACJ,CAAC;AACF,SAAA;QAED,OAAO;YACN,KAAK;YACL,IAAI;AACJ,YAAA,IAAI,EAAE,aAAa;SACnB,CAAC;KACF;AAED;;;AAGG;AACK,IAAA,MAAM,sBAAsB,GAAA;QAGnC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;YAC1D,OAAO,IAAI,OAAO,EAAoC,CAAC;AACvD,SAAA;AAED,QAAA,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACvC,IAAI,CAAC,eAAe,CAAC,GAAG,CACvB,OACC,cAA8B,KACyB;YACvD,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GAAG,MAAM,cAAc,CAAC;AACrE,YAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,gBAAgB,CAAE,CAAC;;;YAI9D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAC9D,YAAA,IAAI,IAAA,YAAA,CAAA,eAAe,EAAC,SAAS,CAAC,EAAE;AAC/B,gBAAA,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;AAC/B,aAAA;YAED,MAAM,SAAS,GAAG,IAAA,MAAA,CAAA,SAAS,EAC1B,SAAS,CACR,IAAA,MAAA,CAAA,YAAY,EAAC;AACZ,gBAAA,OAAO,EAAE,gBAAgB;AACzB,gBAAA,MAAM,EAAE,eAAe;AACvB,gBAAA,OAAO,EAAE,IAAA,MAA2B,CAAA,2BAAA,EAAC,eAAe,CAAC;AACrD,aAAA,CAAC,CACF,CACD,CAAC,kBAAkB,EAAO,CAAC;AAE5B,YAAA,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;SACpC,CACD,CACD,CAAC;AAEF,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;KAC/C;IAEO,MAAM,aAAa,CAC1B,iBAAiB,EAAA;QAEjB,IAAI;AACH,YAAA,MAAM,SAAS,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC5C,OAAO,SAAS,IAAI,iBAAiB,CAAC;AACtC,SAAA;AAAC,QAAA,OAAO,KAAK,EAAE;YACf,IAAI,KAAK,YAAY,SAAS,EAAE;AAC/B,gBAAA,OAAO,iBAAiB,CAAC;AACzB,aAAA;AACD,YAAA,MAAM,KAAK,CAAC;AACZ,SAAA;KACD;AAEO,IAAA,kBAAkB,CACzB,OAAoD,EAAA;AAEpD,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,KAAI;AAC3D,YAAA,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;AAC7B,gBAAA,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC;gBACjC,MAAM,CAAC,IAAI,CACV,CAAA;gDAC2C,IAAI,CAAA,uBAAA,CAAyB,CACxE,CAAC;AACF,gBAAA,OAAO,GAAG,CAAC;AACX,aAAA;AAED,YAAA,IAAI,SAAS,EAAE;AACd,gBAAA,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AACpC,aAAA;AAED,YAAA,OAAO,GAAG,CAAC;AACZ,SAAC,EAAE,IAAI,OAAO,EAAoC,CAAC,CAAC;KACpD;AAED;;;AAGG;IACK,iBAAiB,GAAA;QACxB,IAAI;YACH,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE/D,YAAA,IAAI,SAAS,EAAE;AACd,gBAAA,MAAM,EAAE,2BAA2B,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;gBAE3D,MAAM,UAAU,GAAG,2BAA2B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7D,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAE1C,gBAAA,OAAO,CAAG,EAAA,SAAS,CAAI,CAAA,EAAA,SAAS,EAAE,CAAC;AACnC,aAAA;AACD,SAAA;AAAC,QAAA,MAAM,GAAE;AAEV,QAAA,OAAO,SAAS,CAAC;KACjB;AACD,CAAA;AAUqB,OAAc,CAAA,cAAA,GAAA,SAAA,CAAA;AARpC,MAAM,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;AAQ6B,OAAS,CAAA,SAAA,GAAA,QAAA,CAAA;AAPvE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AACvB,MAAA,CAAA,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,IAAG;AAC5B,IAAA,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,WAAW,EAAE;AAC1C,QAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AACvB,KAAA;AACF,CAAC,CAAC;;"}
1
+ {"version":3,"file":"datastore.js","sources":["../../../src/datastore/datastore.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DataStore = exports.initSchema = exports.DataStoreClass = exports.AsyncCollection = exports.AsyncItem = exports.getAttachment = exports.attached = exports.syncClasses = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst internals_1 = require(\"@aws-amplify/api/internals\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst immer_1 = require(\"immer\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst rxjs_1 = require(\"rxjs\");\nconst authModeStrategies_1 = require(\"../authModeStrategies\");\nconst predicates_1 = require(\"../predicates\");\nconst storage_1 = require(\"../storage/storage\");\nconst relationship_1 = require(\"../storage/relationship\");\nconst sync_1 = require(\"../sync\");\nconst types_1 = require(\"../types\");\nconst utils_2 = require(\"./utils\");\nconst util_1 = require(\"../util\");\nconst next_1 = require(\"../predicates/next\");\nconst utils_3 = require(\"../sync/utils\");\nconst utils_4 = require(\"@aws-amplify/core/internals/utils\");\n(0, immer_1.setAutoFreeze)(true);\n(0, immer_1.enablePatches)();\nconst logger = new core_1.ConsoleLogger('DataStore');\nconst ulid = (0, util_1.monotonicUlidFactory)(Date.now());\nconst SETTING_SCHEMA_VERSION = 'schemaVersion';\nlet schema;\nconst modelNamespaceMap = new WeakMap();\n/**\n * Stores data for crafting the correct update mutation input for a model.\n *\n * - `Patch[]` - array of changed fields and metadata.\n * - `PersistentModel` - the source model, used for diffing object-type fields.\n */\nconst modelPatchesMap = new WeakMap();\nconst getModelDefinition = (modelConstructor) => {\n const namespace = modelNamespaceMap.get(modelConstructor);\n const definition = namespace\n ? schema.namespaces[namespace].models[modelConstructor.name]\n : undefined;\n return definition;\n};\n/**\n * Determines whether the given object is a Model Constructor that DataStore can\n * safely use to construct objects and discover related metadata.\n *\n * @param obj The object to test.\n */\nconst isValidModelConstructor = (obj) => {\n return (0, util_1.isModelConstructor)(obj) && modelNamespaceMap.has(obj);\n};\nconst namespaceResolver = modelConstructor => {\n const resolver = modelNamespaceMap.get(modelConstructor);\n if (!resolver) {\n throw new Error(`Namespace Resolver for '${modelConstructor.name}' not found! This is probably a bug in '@amplify-js/datastore'.`);\n }\n return resolver;\n};\n/**\n * Creates a predicate without any conditions that can be passed to customer\n * code to have conditions added to it.\n *\n * For example, in this query:\n *\n * ```ts\n * await DataStore.query(\n * \tModel,\n * \titem => item.field.eq('value')\n * );\n * ```\n *\n * `buildSeedPredicate(Model)` is used to create `item`, which is passed to the\n * predicate function, which in turn uses that \"seed\" predicate (`item`) to build\n * a predicate tree.\n *\n * @param modelConstructor The model the predicate will query.\n */\nconst buildSeedPredicate = (modelConstructor) => {\n if (!modelConstructor)\n throw new Error('Missing modelConstructor');\n const modelSchema = getModelDefinition(modelConstructor);\n if (!modelSchema)\n throw new Error('Missing modelSchema');\n const pks = (0, util_1.extractPrimaryKeyFieldNames)(modelSchema);\n if (!pks)\n throw new Error('Could not determine PK');\n return (0, next_1.recursivePredicateFor)({\n builder: modelConstructor,\n schema: modelSchema,\n pkField: pks,\n });\n};\nlet userClasses;\nlet dataStoreClasses;\nlet storageClasses;\n/**\n * Maps a model to its related models for memoization/immutability.\n */\nconst modelInstanceAssociationsMap = new WeakMap();\n/**\n * Describes whether and to what a model is attached for lazy loading purposes.\n */\nvar ModelAttachment;\n(function (ModelAttachment) {\n /**\n * Model doesn't lazy load from any data source.\n *\n * Related entity properties provided at instantiation are returned\n * via the respective lazy interfaces when their properties are invoked.\n */\n ModelAttachment[\"Detached\"] = \"Detached\";\n /**\n * Model lazy loads from the global DataStore.\n */\n ModelAttachment[\"DataStore\"] = \"DataStore\";\n /**\n * Demonstrative. Not yet implemented.\n */\n ModelAttachment[\"API\"] = \"API\";\n})(ModelAttachment || (ModelAttachment = {}));\n/**\n * Tells us which data source a model is attached to (lazy loads from).\n *\n * If `Deatched`, the model's lazy properties will only ever return properties\n * from memory provided at construction time.\n */\nconst attachedModelInstances = new WeakMap();\n/**\n * Registers a model instance against a data source (DataStore, API, or\n * Detached/None).\n *\n * The API option is demonstrative. Lazy loading against API is not yet\n * implemented.\n *\n * @param result A model instance or array of instances\n * @param attachment A ModelAttachment data source\n * @returns passes the `result` back through after attachment\n */\nfunction attached(result, attachment) {\n if (Array.isArray(result)) {\n result.map(record => attached(record, attachment));\n }\n else {\n result && attachedModelInstances.set(result, attachment);\n }\n return result;\n}\nexports.attached = attached;\n/**\n * Determines what source a model instance should lazy load from.\n *\n * If the instace was never explicitly registered, it is detached by default.\n *\n * @param instance A model instance\n */\nconst getAttachment = (instance) => {\n return attachedModelInstances.has(instance)\n ? attachedModelInstances.get(instance)\n : ModelAttachment.Detached;\n};\nexports.getAttachment = getAttachment;\nconst initSchema = (userSchema) => {\n if (schema !== undefined) {\n console.warn('The schema has already been initialized');\n return userClasses;\n }\n logger.log('validating schema', { schema: userSchema });\n checkSchemaCodegenVersion(userSchema.codegenVersion);\n const internalUserNamespace = {\n name: util_1.USER,\n ...userSchema,\n };\n logger.log('DataStore', 'Init models');\n userClasses = createTypeClasses(internalUserNamespace);\n logger.log('DataStore', 'Models initialized');\n const dataStoreNamespace = getNamespace();\n const storageNamespace = storage_1.ExclusiveStorage.getNamespace();\n const syncNamespace = sync_1.SyncEngine.getNamespace();\n dataStoreClasses = createTypeClasses(dataStoreNamespace);\n storageClasses = createTypeClasses(storageNamespace);\n exports.syncClasses = createTypeClasses(syncNamespace);\n schema = {\n namespaces: {\n [dataStoreNamespace.name]: dataStoreNamespace,\n [internalUserNamespace.name]: internalUserNamespace,\n [storageNamespace.name]: storageNamespace,\n [syncNamespace.name]: syncNamespace,\n },\n version: userSchema.version,\n codegenVersion: userSchema.codegenVersion,\n };\n Object.keys(schema.namespaces).forEach(namespace => {\n const [relations, keys] = (0, util_1.establishRelationAndKeys)(schema.namespaces[namespace]);\n schema.namespaces[namespace].relationships = relations;\n schema.namespaces[namespace].keys = keys;\n const modelAssociations = new Map();\n Object.values(schema.namespaces[namespace].models).forEach(model => {\n const connectedModels = [];\n Object.values(model.fields)\n .filter(field => field.association &&\n field.association.connectionType === 'BELONGS_TO' &&\n field.type.model !== model.name)\n .forEach(field => connectedModels.push(field.type.model));\n modelAssociations.set(model.name, connectedModels);\n // Precompute model info (such as pk fields) so that downstream schema consumers\n // (such as predicate builders) don't have to reach back into \"DataStore\" space\n // to go looking for it.\n Object.values(model.fields).forEach(field => {\n const relatedModel = userClasses[field.type.model];\n if ((0, util_1.isModelConstructor)(relatedModel)) {\n Object.defineProperty(field.type, 'modelConstructor', {\n get: () => {\n const relatedModelDefinition = getModelDefinition(relatedModel);\n if (!relatedModelDefinition)\n throw new Error(`Could not find model definition for ${relatedModel.name}`);\n return {\n builder: relatedModel,\n schema: relatedModelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(relatedModelDefinition),\n };\n },\n });\n }\n });\n // compatibility with legacy/pre-PK codegen for lazy loading to inject\n // index fields into the model definition.\n // definition.cloudFields = { ...definition.fields };\n const indexes = schema.namespaces[namespace].relationships[model.name].indexes;\n const indexFields = new Set();\n for (const index of indexes) {\n for (const indexField of index[1]) {\n indexFields.add(indexField);\n }\n }\n model.allFields = {\n ...Object.fromEntries([...indexFields.values()].map(name => [\n name,\n {\n name,\n type: 'ID',\n isArray: false,\n },\n ])),\n ...model.fields,\n };\n });\n const result = new Map();\n let count = 1000;\n while (true && count > 0) {\n if (modelAssociations.size === 0) {\n break;\n }\n count--;\n if (count === 0) {\n throw new Error('Models are not topologically sortable. Please verify your schema.');\n }\n for (const modelName of Array.from(modelAssociations.keys())) {\n const parents = modelAssociations.get(modelName);\n if (parents?.every(x => result.has(x))) {\n result.set(modelName, parents);\n }\n }\n Array.from(result.keys()).forEach(x => modelAssociations.delete(x));\n }\n schema.namespaces[namespace].modelTopologicalOrdering = result;\n });\n return userClasses;\n};\nexports.initSchema = initSchema;\n/**\n * Throws an exception if the schema has *not* been initialized\n * by `initSchema()`.\n *\n * **To be called before trying to access schema.**\n *\n * Currently this only needs to be called in `start()` and `clear()` because\n * all other functions will call start first.\n */\nconst checkSchemaInitialized = () => {\n if (schema === undefined) {\n const message = 'Schema is not initialized. DataStore will not function as expected. This could happen if you have multiple versions of DataStore installed. Please see https://docs.amplify.aws/lib/troubleshooting/upgrading/q/platform/js/#check-for-duplicate-versions';\n logger.error(message);\n throw new Error(message);\n }\n};\n/**\n * Throws an exception if the schema is using a codegen version that is not supported.\n *\n * Set the supported version by setting majorVersion and minorVersion\n * This functions similar to ^ version range.\n * The tested codegenVersion major version must exactly match the set majorVersion\n * The tested codegenVersion minor version must be gt or equal to the set minorVersion\n * Example: For a min supported version of 5.4.0 set majorVersion = 5 and minorVersion = 4\n *\n * This regex will not work when setting a supported range with minor version\n * of 2 or more digits.\n * i.e. minorVersion = 10 will not work\n * The regex will work for testing a codegenVersion with multi digit minor\n * versions as long as the minimum minorVersion is single digit.\n * i.e. codegenVersion = 5.30.1, majorVersion = 5, minorVersion = 4 PASSES\n *\n * @param codegenVersion schema codegenVersion\n */\nconst checkSchemaCodegenVersion = (codegenVersion) => {\n const majorVersion = 3;\n const minorVersion = 2;\n let isValid = false;\n try {\n const versionParts = codegenVersion.split('.');\n const [major, minor, patch, patchrevision] = versionParts;\n isValid = Number(major) === majorVersion && Number(minor) >= minorVersion;\n }\n catch (err) {\n console.log(`Error parsing codegen version: ${codegenVersion}\\n${err}`);\n }\n if (!isValid) {\n const message = `Models were generated with an unsupported version of codegen. Codegen artifacts are from ${codegenVersion || 'an unknown version'}, whereas ^${majorVersion}.${minorVersion}.0 is required. ` +\n \"Update to the latest CLI and run 'amplify codegen models'.\";\n logger.error(message);\n throw new Error(message);\n }\n};\nconst createTypeClasses = namespace => {\n const classes = {};\n Object.entries(namespace.models).forEach(([modelName, modelDefinition]) => {\n const clazz = createModelClass(modelDefinition);\n classes[modelName] = clazz;\n modelNamespaceMap.set(clazz, namespace.name);\n });\n Object.entries(namespace.nonModels || {}).forEach(([typeName, typeDefinition]) => {\n const clazz = createNonModelClass(typeDefinition);\n classes[typeName] = clazz;\n });\n return classes;\n};\n/**\n * Collection of instantiated models to allow storage of metadata apart from\n * the model visible to the consuming app -- in case the app doesn't have\n * metadata fields (_version, _deleted, etc.) exposed on the model itself.\n */\nconst instancesMetadata = new WeakSet();\nfunction modelInstanceCreator(modelConstructor, init) {\n instancesMetadata.add(init);\n return new modelConstructor(init);\n}\nconst validateModelFields = (modelDefinition) => (k, v) => {\n const fieldDefinition = modelDefinition.fields[k];\n if (fieldDefinition !== undefined) {\n const { type, isRequired, isArrayNullable, name, isArray } = fieldDefinition;\n const timestamps = (0, types_1.isSchemaModelWithAttributes)(modelDefinition)\n ? (0, util_1.getTimestampFields)(modelDefinition)\n : {};\n const isTimestampField = !!timestamps[name];\n if (((!isArray && isRequired) || (isArray && !isArrayNullable)) &&\n !isTimestampField &&\n (v === null || v === undefined)) {\n throw new Error(`Field ${name} is required`);\n }\n if ((0, types_1.isSchemaModelWithAttributes)(modelDefinition) &&\n !(0, util_1.isIdManaged)(modelDefinition)) {\n const keys = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);\n if (keys.includes(k) && v === '') {\n logger.error(util_1.errorMessages.idEmptyString, { k, value: v });\n throw new Error(util_1.errorMessages.idEmptyString);\n }\n }\n if ((0, types_1.isGraphQLScalarType)(type)) {\n const jsType = types_1.GraphQLScalarType.getJSType(type);\n const validateScalar = types_1.GraphQLScalarType.getValidationFunction(type);\n if (type === 'AWSJSON') {\n if (typeof v === jsType) {\n return;\n }\n if (typeof v === 'string') {\n try {\n JSON.parse(v);\n return;\n }\n catch (error) {\n throw new Error(`Field ${name} is an invalid JSON object. ${v}`);\n }\n }\n }\n if (isArray) {\n let errorTypeText = jsType;\n if (!isRequired) {\n errorTypeText = `${jsType} | null | undefined`;\n }\n if (!Array.isArray(v) && !isArrayNullable) {\n throw new Error(`Field ${name} should be of type [${errorTypeText}], ${typeof v} received. ${v}`);\n }\n if (!(0, util_1.isNullOrUndefined)(v) &&\n v.some(e => (0, util_1.isNullOrUndefined)(e) ? isRequired : typeof e !== jsType)) {\n const elemTypes = v\n .map(e => (e === null ? 'null' : typeof e))\n .join(',');\n throw new Error(`All elements in the ${name} array should be of type ${errorTypeText}, [${elemTypes}] received. ${v}`);\n }\n if (validateScalar && !(0, util_1.isNullOrUndefined)(v)) {\n const validationStatus = v.map(e => {\n if (!(0, util_1.isNullOrUndefined)(e)) {\n return validateScalar(e);\n }\n else if ((0, util_1.isNullOrUndefined)(e) && !isRequired) {\n return true;\n }\n else {\n return false;\n }\n });\n if (!validationStatus.every(s => s)) {\n throw new Error(`All elements in the ${name} array should be of type ${type}, validation failed for one or more elements. ${v}`);\n }\n }\n }\n else if (!isRequired && v === undefined) {\n return;\n }\n else if (typeof v !== jsType && v !== null) {\n throw new Error(`Field ${name} should be of type ${jsType}, ${typeof v} received. ${v}`);\n }\n else if (!(0, util_1.isNullOrUndefined)(v) &&\n validateScalar &&\n !validateScalar(v) // TODO: why never, TS ... why ...\n ) {\n throw new Error(`Field ${name} should be of type ${type}, validation failed. ${v}`);\n }\n }\n else if ((0, types_1.isNonModelFieldType)(type)) {\n // do not check non model fields if undefined or null\n if (!(0, util_1.isNullOrUndefined)(v)) {\n const subNonModelDefinition = schema.namespaces.user.nonModels[type.nonModel];\n const modelValidator = validateModelFields(subNonModelDefinition);\n if (isArray) {\n let errorTypeText = type.nonModel;\n if (!isRequired) {\n errorTypeText = `${type.nonModel} | null | undefined`;\n }\n if (!Array.isArray(v)) {\n throw new Error(`Field ${name} should be of type [${errorTypeText}], ${typeof v} received. ${v}`);\n }\n v.forEach(item => {\n if (((0, util_1.isNullOrUndefined)(item) && isRequired) ||\n (typeof item !== 'object' && typeof item !== 'undefined')) {\n throw new Error(`All elements in the ${name} array should be of type ${type.nonModel}, [${typeof item}] received. ${item}`);\n }\n if (!(0, util_1.isNullOrUndefined)(item)) {\n Object.keys(subNonModelDefinition.fields).forEach(subKey => {\n modelValidator(subKey, item[subKey]);\n });\n }\n });\n }\n else {\n if (typeof v !== 'object') {\n throw new Error(`Field ${name} should be of type ${type.nonModel}, ${typeof v} recieved. ${v}`);\n }\n Object.keys(subNonModelDefinition.fields).forEach(subKey => {\n modelValidator(subKey, v[subKey]);\n });\n }\n }\n }\n }\n};\nconst castInstanceType = (modelDefinition, k, v) => {\n const { isArray, type } = modelDefinition.fields[k] || {};\n // attempt to parse stringified JSON\n if (typeof v === 'string' &&\n (isArray ||\n type === 'AWSJSON' ||\n (0, types_1.isNonModelFieldType)(type) ||\n (0, types_1.isModelFieldType)(type))) {\n try {\n return JSON.parse(v);\n }\n catch {\n // if JSON is invalid, don't throw and let modelValidator handle it\n }\n }\n // cast from numeric representation of boolean to JS boolean\n if (typeof v === 'number' && type === 'Boolean') {\n return Boolean(v);\n }\n return v;\n};\n/**\n * Records the patches (as if against an empty object) used to initialize\n * an instance of a Model. This can be used for determining which fields to\n * send to the cloud durnig a CREATE mutation.\n */\nconst initPatches = new WeakMap();\n/**\n * Attempts to apply type-aware, casted field values from a given `init`\n * object to the given `draft`.\n *\n * @param init The initialization object to extract field values from.\n * @param modelDefinition The definition describing the target object shape.\n * @param draft The draft to apply field values to.\n */\nconst initializeInstance = (init, modelDefinition, draft) => {\n const modelValidator = validateModelFields(modelDefinition);\n Object.entries(init).forEach(([k, v]) => {\n const parsedValue = castInstanceType(modelDefinition, k, v);\n modelValidator(k, parsedValue);\n draft[k] = parsedValue;\n });\n};\n/**\n * Updates a draft to standardize its customer-defined fields so that they are\n * consistent with the data as it would look after having been synchronized from\n * Cloud storage.\n *\n * The exceptions to this are:\n *\n * 1. Non-schema/Internal [sync] metadata fields.\n * 2. Cloud-managed fields, which are `null` until set by cloud storage.\n *\n * This function should be expanded if/when deviations between canonical Cloud\n * storage data and locally managed data are found. For now, the known areas\n * that require normalization are:\n *\n * 1. Ensuring all non-metadata fields are *defined*. (I.e., turn `undefined` -> `null`.)\n *\n * @param modelDefinition Definition for the draft. Used to discover all fields.\n * @param draft The instance draft to apply normalizations to.\n */\nconst normalize = (modelDefinition, draft) => {\n for (const k of Object.keys(modelDefinition.fields)) {\n if (draft[k] === undefined)\n draft[k] = null;\n }\n};\nconst createModelClass = (modelDefinition) => {\n const clazz = class Model {\n constructor(init) {\n // we create a base instance first so we can distinguish which fields were explicitly\n // set by customer code versus those set by normalization. only those fields\n // which are explicitly set by customers should be part of create mutations.\n let patches = [];\n const baseInstance = (0, immer_1.produce)(this, (draft) => {\n initializeInstance(init, modelDefinition, draft);\n // model is initialized inside a DataStore component (e.g. by Sync Engine, Storage Engine, etc.)\n const isInternallyInitialized = instancesMetadata.has(init);\n const modelInstanceMetadata = isInternallyInitialized\n ? init\n : {};\n const { id: _id } = modelInstanceMetadata;\n if ((0, util_1.isIdManaged)(modelDefinition)) {\n const isInternalModel = _id !== null && _id !== undefined;\n const id = isInternalModel\n ? _id\n : modelDefinition.syncable\n ? (0, utils_1.amplifyUuid)()\n : ulid();\n draft.id = id;\n }\n else if ((0, util_1.isIdOptionallyManaged)(modelDefinition)) {\n // only auto-populate if the id was not provided\n draft.id =\n draft.id || (0, utils_1.amplifyUuid)();\n }\n if (!isInternallyInitialized) {\n checkReadOnlyPropertyOnCreate(draft, modelDefinition);\n }\n const { _version, _lastChangedAt, _deleted } = modelInstanceMetadata;\n if (modelDefinition.syncable) {\n draft._version = _version;\n draft._lastChangedAt = _lastChangedAt;\n draft._deleted = _deleted;\n }\n }, p => (patches = p));\n // now that we have a list of patches that encapsulate the explicit, customer-provided\n // fields, we can normalize. patches from normalization are ignored, because the changes\n // are only create to provide a consistent view of the data for fields pre/post sync\n // where possible. (not all fields can be normalized pre-sync, because they're generally\n // \"cloud managed\" fields, like createdAt and updatedAt.)\n const normalized = (0, immer_1.produce)(baseInstance, (draft) => normalize(modelDefinition, draft));\n initPatches.set(normalized, patches);\n return normalized;\n }\n static copyOf(source, fn) {\n const modelConstructor = Object.getPrototypeOf(source || {}).constructor;\n if (!isValidModelConstructor(modelConstructor)) {\n const msg = 'The source object is not a valid model';\n logger.error(msg, { source });\n throw new Error(msg);\n }\n let patches = [];\n const model = (0, immer_1.produce)(source, draft => {\n fn(draft);\n const keyNames = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);\n // Keys are immutable\n keyNames.forEach(key => {\n if (draft[key] !== source[key]) {\n logger.warn(`copyOf() does not update PK fields. The '${key}' update is being ignored.`, { source });\n }\n draft[key] = source[key];\n });\n const modelValidator = validateModelFields(modelDefinition);\n Object.entries(draft).forEach(([k, v]) => {\n const parsedValue = castInstanceType(modelDefinition, k, v);\n modelValidator(k, parsedValue);\n });\n normalize(modelDefinition, draft);\n }, p => (patches = p));\n const hasExistingPatches = modelPatchesMap.has(source);\n if (patches.length || hasExistingPatches) {\n if (hasExistingPatches) {\n const [existingPatches, existingSource] = modelPatchesMap.get(source);\n const mergedPatches = (0, util_1.mergePatches)(existingSource, existingPatches, patches);\n modelPatchesMap.set(model, [mergedPatches, existingSource]);\n checkReadOnlyPropertyOnUpdate(mergedPatches, modelDefinition);\n }\n else {\n modelPatchesMap.set(model, [patches, source]);\n checkReadOnlyPropertyOnUpdate(patches, modelDefinition);\n }\n }\n else {\n // always register patches when performing a copyOf, even if the\n // patches list is empty. this allows `save()` to recognize when an\n // instance is the result of a `copyOf()`. without more significant\n // refactoring, this is the only way for `save()` to know which\n // diffs (patches) are relevant for `storage` to use in building\n // the list of \"changed\" fields for mutations.\n modelPatchesMap.set(model, [[], source]);\n }\n return attached(model, ModelAttachment.DataStore);\n }\n // \"private\" method (that's hidden via `Setting`) for `withSSRContext` to use\n // to gain access to `modelInstanceCreator` and `clazz` for persisting IDs from server to client.\n static fromJSON(json) {\n if (Array.isArray(json)) {\n return json.map(init => this.fromJSON(init));\n }\n const instance = modelInstanceCreator(clazz, json);\n const modelValidator = validateModelFields(modelDefinition);\n Object.entries(instance).forEach(([k, v]) => {\n modelValidator(k, v);\n });\n return attached(instance, ModelAttachment.DataStore);\n }\n };\n clazz[immer_1.immerable] = true;\n Object.defineProperty(clazz, 'name', { value: modelDefinition.name });\n // Add getters/setters for relationship fields.\n // getter - for lazy loading\n // setter - for FK management\n const allModelRelationships = relationship_1.ModelRelationship.allFrom({\n builder: clazz,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n });\n for (const relationship of allModelRelationships) {\n const field = relationship.field;\n Object.defineProperty(clazz.prototype, modelDefinition.fields[field].name, {\n set(model) {\n if (!(typeof model === 'object' || typeof model === 'undefined'))\n return;\n // if model is undefined or null, the connection should be removed\n if (model) {\n // Avoid validation error when processing AppSync response with nested\n // selection set. Nested entitites lack version field and can not be validated\n // TODO: explore a more reliable method to solve this\n if (model.hasOwnProperty('_version')) {\n const modelConstructor = Object.getPrototypeOf(model || {})\n .constructor;\n if (!isValidModelConstructor(modelConstructor)) {\n const msg = `Value passed to ${modelDefinition.name}.${field} is not a valid instance of a model`;\n logger.error(msg, { model });\n throw new Error(msg);\n }\n if (modelConstructor.name.toLowerCase() !==\n relationship.remoteModelConstructor.name.toLowerCase()) {\n const msg = `Value passed to ${modelDefinition.name}.${field} is not an instance of ${relationship.remoteModelConstructor.name}`;\n logger.error(msg, { model });\n throw new Error(msg);\n }\n }\n }\n // if the relationship can be managed automagically, set the FK's\n if (relationship.isComplete) {\n for (let i = 0; i < relationship.localJoinFields.length; i++) {\n this[relationship.localJoinFields[i]] =\n model?.[relationship.remoteJoinFields[i]];\n }\n const instanceMemos = modelInstanceAssociationsMap.has(this)\n ? modelInstanceAssociationsMap.get(this)\n : modelInstanceAssociationsMap.set(this, {}).get(this);\n instanceMemos[field] = model || undefined;\n }\n },\n get() {\n /**\n * Bucket for holding related models instances specific to `this` instance.\n */\n const instanceMemos = modelInstanceAssociationsMap.has(this)\n ? modelInstanceAssociationsMap.get(this)\n : modelInstanceAssociationsMap.set(this, {}).get(this);\n // if the memos already has a result for this field, we'll use it.\n // there is no \"cache\" invalidation of any kind; memos are permanent to\n // keep an immutable perception of the instance.\n if (!instanceMemos.hasOwnProperty(field)) {\n // before we populate the memo, we need to know where to look for relatives.\n // today, this only supports DataStore. Models aren't managed elsewhere in Amplify.\n if ((0, exports.getAttachment)(this) === ModelAttachment.DataStore) {\n // when we fetch the results using a query constructed under the guidance\n // of the relationship metadata, we DO NOT AWAIT resolution. we want to\n // drop the promise into the memo's synchronously, eliminating the chance\n // for a race.\n const resultPromise = instance.query(relationship.remoteModelConstructor, base => base.and(q => {\n return relationship.remoteJoinFields.map((field, index) => {\n // TODO: anything we can use instead of `any` here?\n return q[field].eq(this[relationship.localJoinFields[index]]);\n });\n }));\n // results in hand, how we return them to the caller depends on the relationship type.\n if (relationship.type === 'HAS_MANY') {\n // collections should support async iteration, even though we don't\n // leverage it fully [yet].\n instanceMemos[field] = new AsyncCollection(resultPromise);\n }\n else {\n // non-collections should only ever return 1 value *or nothing*.\n // if we have more than 1 record, something's amiss. it's not our job\n // pick a result for the customer. it's our job to say \"something's wrong.\"\n instanceMemos[field] = resultPromise.then(rows => {\n if (rows.length > 1) {\n // should never happen for a HAS_ONE or BELONGS_TO.\n const err = new Error(`\n\t\t\t\t\t\t\t\t\tData integrity error.\n\t\t\t\t\t\t\t\t\tToo many records found for a HAS_ONE/BELONGS_TO field '${modelDefinition.name}.${field}'\n\t\t\t\t\t\t\t\t`);\n console.error(err);\n throw err;\n }\n else {\n return rows[0];\n }\n });\n }\n }\n else if ((0, exports.getAttachment)(this) === ModelAttachment.API) {\n throw new Error('Lazy loading from API is not yet supported!');\n }\n else {\n if (relationship.type === 'HAS_MANY') {\n return new AsyncCollection([]);\n }\n else {\n return Promise.resolve(undefined);\n }\n }\n }\n return instanceMemos[field];\n },\n });\n }\n return clazz;\n};\n/**\n * An eventually loaded related model instance.\n */\nclass AsyncItem extends Promise {\n}\nexports.AsyncItem = AsyncItem;\n/**\n * A collection of related model instances.\n *\n * This collection can be async-iterated or turned directly into an array using `toArray()`.\n */\nclass AsyncCollection {\n constructor(values) {\n this.values = values;\n }\n /**\n * Facilitates async iteration.\n *\n * ```ts\n * for await (const item of collection) {\n * handle(item)\n * }\n * ```\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of\n */\n [Symbol.asyncIterator]() {\n let values;\n let index = 0;\n return {\n next: async () => {\n if (!values)\n values = await this.values;\n if (index < values.length) {\n const result = {\n value: values[index],\n done: false,\n };\n index++;\n return result;\n }\n return {\n value: null,\n done: true,\n };\n },\n };\n }\n /**\n * Turns the collection into an array, up to the amount specified in `max` param.\n *\n * ```ts\n * const all = await collection.toArray();\n * const first100 = await collection.toArray({max: 100});\n * ```\n */\n async toArray({ max = Number.MAX_SAFE_INTEGER, } = {}) {\n const output = [];\n let i = 0;\n for await (const element of this) {\n if (i < max) {\n output.push(element);\n i++;\n }\n else {\n break;\n }\n }\n return output;\n }\n}\nexports.AsyncCollection = AsyncCollection;\nconst checkReadOnlyPropertyOnCreate = (draft, modelDefinition) => {\n const modelKeys = Object.keys(draft);\n const { fields } = modelDefinition;\n modelKeys.forEach(key => {\n if (fields[key] && fields[key].isReadOnly) {\n throw new Error(`${key} is read-only.`);\n }\n });\n};\nconst checkReadOnlyPropertyOnUpdate = (patches, modelDefinition) => {\n const patchArray = patches.map(p => [p.path[0], p.value]);\n const { fields } = modelDefinition;\n patchArray.forEach(([key, val]) => {\n if (!val || !fields[key])\n return;\n if (fields[key].isReadOnly) {\n throw new Error(`${key} is read-only.`);\n }\n });\n};\nconst createNonModelClass = (typeDefinition) => {\n const clazz = class Model {\n constructor(init) {\n const instance = (0, immer_1.produce)(this, (draft) => {\n initializeInstance(init, typeDefinition, draft);\n });\n return instance;\n }\n };\n clazz[immer_1.immerable] = true;\n Object.defineProperty(clazz, 'name', { value: typeDefinition.name });\n (0, util_1.registerNonModelClass)(clazz);\n return clazz;\n};\nfunction isQueryOne(obj) {\n return typeof obj === 'string';\n}\nfunction defaultConflictHandler(conflictData) {\n const { localModel, modelConstructor, remoteModel } = conflictData;\n const { _version } = remoteModel;\n return modelInstanceCreator(modelConstructor, { ...localModel, _version });\n}\nfunction defaultErrorHandler(error) {\n logger.warn(error);\n}\nfunction getModelConstructorByModelName(namespaceName, modelName) {\n let result;\n switch (namespaceName) {\n case util_1.DATASTORE:\n result = dataStoreClasses[modelName];\n break;\n case util_1.USER:\n result = userClasses[modelName];\n break;\n case util_1.SYNC:\n result = exports.syncClasses[modelName];\n break;\n case util_1.STORAGE:\n result = storageClasses[modelName];\n break;\n default:\n throw new Error(`Invalid namespace: ${namespaceName}`);\n }\n if (isValidModelConstructor(result)) {\n return result;\n }\n else {\n const msg = `Model name is not valid for namespace. modelName: ${modelName}, namespace: ${namespaceName}`;\n logger.error(msg);\n throw new Error(msg);\n }\n}\n/**\n * Queries the DataStore metadata tables to see if they are the expected\n * version. If not, clobbers the whole DB. If so, leaves them alone.\n * Otherwise, simply writes the schema version.\n *\n * SIDE EFFECT:\n * 1. Creates a transaction\n * 1. Updates data.\n *\n * @param storage Storage adapter containing the metadata.\n * @param version The expected schema version.\n */\nasync function checkSchemaVersion(storage, version) {\n const Setting = dataStoreClasses.Setting;\n const modelDefinition = schema.namespaces[util_1.DATASTORE].models.Setting;\n await storage.runExclusive(async (s) => {\n const [schemaVersionSetting] = await s.query(Setting, predicates_1.ModelPredicateCreator.createFromAST(modelDefinition, {\n and: { key: { eq: SETTING_SCHEMA_VERSION } },\n }), { page: 0, limit: 1 });\n if (schemaVersionSetting !== undefined &&\n schemaVersionSetting.value !== undefined) {\n const storedValue = JSON.parse(schemaVersionSetting.value);\n if (storedValue !== version) {\n await s.clear(false);\n }\n }\n else {\n await s.save(modelInstanceCreator(Setting, {\n key: SETTING_SCHEMA_VERSION,\n value: JSON.stringify(version),\n }));\n }\n });\n}\nlet syncSubscription;\nfunction getNamespace() {\n const namespace = {\n name: util_1.DATASTORE,\n relationships: {},\n enums: {},\n nonModels: {},\n models: {\n Setting: {\n name: 'Setting',\n pluralName: 'Settings',\n syncable: false,\n fields: {\n id: {\n name: 'id',\n type: 'ID',\n isRequired: true,\n isArray: false,\n },\n key: {\n name: 'key',\n type: 'String',\n isRequired: true,\n isArray: false,\n },\n value: {\n name: 'value',\n type: 'String',\n isRequired: true,\n isArray: false,\n },\n },\n },\n },\n };\n return namespace;\n}\nvar DataStoreState;\n(function (DataStoreState) {\n DataStoreState[\"NotRunning\"] = \"Not Running\";\n DataStoreState[\"Starting\"] = \"Starting\";\n DataStoreState[\"Running\"] = \"Running\";\n DataStoreState[\"Stopping\"] = \"Stopping\";\n DataStoreState[\"Clearing\"] = \"Clearing\";\n})(DataStoreState || (DataStoreState = {}));\n// TODO: How can we get rid of the non-null assertions?\n// https://github.com/aws-amplify/amplify-js/pull/10477/files#r1007363485\nclass DataStore {\n constructor() {\n // reference to configured category instances. Used for preserving SSR context\n this.InternalAPI = internals_1.InternalAPI;\n this.Cache = core_1.Cache;\n // Non-null assertions (bang operator) have been added to most of these properties\n // to make TS happy. These properties are all expected to be set immediately after\n // construction.\n // TODO: Refactor to use proper DI if possible. If not possible, change these to\n // optionals and implement conditional checks throughout. Rinse/repeat on all\n // sync engine processors, storage engine, adapters, etc..\n this.amplifyConfig = {};\n this.syncPredicates = new WeakMap();\n // object that gets passed to descendent classes. Allows us to pass these down by reference\n this.amplifyContext = {\n InternalAPI: this.InternalAPI,\n };\n /**\n * **IMPORTANT!**\n *\n * Accumulator for background things that can **and MUST** be called when\n * DataStore stops.\n *\n * These jobs **MUST** be *idempotent promises* that resolve ONLY\n * once the intended jobs are completely finished and/or otherwise destroyed\n * and cleaned up with ZERO outstanding:\n *\n * 1. side effects (e.g., state changes)\n * 1. callbacks\n * 1. subscriptions\n * 1. calls to storage\n * 1. *etc.*\n *\n * Methods that create pending promises, subscriptions, callbacks, or any\n * type of side effect **MUST** be registered with the manager. And, a new\n * manager must be created after each `exit()`.\n *\n * Failure to comply will put DataStore into a highly unpredictable state\n * when it needs to stop or clear -- which occurs when restarting with new\n * sync expressions, during testing, and potentially during app code\n * recovery handling, etc..\n *\n * It is up to the discretion of each disposer whether to wait for job\n * completion or to cancel operations and issue failures *as long as the\n * disposer returns in a reasonable amount of time.*\n *\n * (Reasonable = *seconds*, not minutes.)\n */\n this.runningProcesses = new utils_4.BackgroundProcessManager();\n /**\n * Indicates what state DataStore is in.\n *\n * Not [yet?] used for actual state management; but for messaging\n * when errors occur, to help troubleshoot.\n */\n this.state = DataStoreState.NotRunning;\n /**\n * If not already done:\n * 1. Attaches and initializes storage.\n * 2. Loads the schema and records metadata.\n * 3. If `this.amplifyConfig.aws_appsync_graphqlEndpoint` contains a URL,\n * attaches a sync engine, starts it, and subscribes.\n */\n this.start = async () => {\n return this.runningProcesses\n .add(async () => {\n this.state = DataStoreState.Starting;\n if (this.initialized === undefined) {\n logger.debug('Starting DataStore');\n this.initialized = new Promise((res, rej) => {\n this.initResolve = res;\n this.initReject = rej;\n });\n }\n else {\n await this.initialized;\n return;\n }\n this.storage = new storage_1.ExclusiveStorage(schema, namespaceResolver, getModelConstructorByModelName, modelInstanceCreator, this.storageAdapter, this.sessionId);\n await this.storage.init();\n checkSchemaInitialized();\n await checkSchemaVersion(this.storage, schema.version);\n const { aws_appsync_graphqlEndpoint } = this.amplifyConfig;\n if (aws_appsync_graphqlEndpoint) {\n logger.debug('GraphQL endpoint available', aws_appsync_graphqlEndpoint);\n this.syncPredicates = await this.processSyncExpressions();\n this.sync = new sync_1.SyncEngine(schema, namespaceResolver, exports.syncClasses, userClasses, this.storage, modelInstanceCreator, this.conflictHandler, this.errorHandler, this.syncPredicates, this.amplifyConfig, this.authModeStrategy, this.amplifyContext, this.connectivityMonitor);\n const fullSyncIntervalInMilliseconds = this.fullSyncInterval * 1000 * 60; // fullSyncInterval from param is in minutes\n syncSubscription = this.sync\n .start({ fullSyncInterval: fullSyncIntervalInMilliseconds })\n .subscribe({\n next: ({ type, data }) => {\n /**\n * In Node, we need to wait for queries to be synced to prevent returning empty arrays.\n * In non-Node environments (the browser or React Native), we can begin returning data\n * once subscriptions are in place.\n */\n const readyType = (0, utils_2.isNode)()\n ? sync_1.ControlMessage.SYNC_ENGINE_SYNC_QUERIES_READY\n : sync_1.ControlMessage.SYNC_ENGINE_STORAGE_SUBSCRIBED;\n if (type === readyType) {\n this.initResolve();\n }\n core_1.Hub.dispatch('datastore', {\n event: type,\n data,\n });\n },\n error: err => {\n logger.warn('Sync error', err);\n this.initReject();\n },\n });\n }\n else {\n logger.warn(\"Data won't be synchronized. No GraphQL endpoint configured. Did you forget `Amplify.configure(awsconfig)`?\", {\n config: this.amplifyConfig,\n });\n this.initResolve();\n }\n await this.initialized;\n this.state = DataStoreState.Running;\n }, 'datastore start')\n .catch(this.handleAddProcError('DataStore.start()'));\n };\n this.query = async (modelConstructor, identifierOrCriteria, paginationProducer) => {\n return this.runningProcesses\n .add(async () => {\n await this.start();\n let result;\n if (!this.storage) {\n throw new Error('No storage to query');\n }\n //#region Input validation\n if (!isValidModelConstructor(modelConstructor)) {\n const msg = 'Constructor is not for a valid model';\n logger.error(msg, { modelConstructor });\n throw new Error(msg);\n }\n if (typeof identifierOrCriteria === 'string') {\n if (paginationProducer !== undefined) {\n logger.warn('Pagination is ignored when querying by id');\n }\n }\n const modelDefinition = getModelDefinition(modelConstructor);\n if (!modelDefinition) {\n throw new Error('Invalid model definition provided!');\n }\n const pagination = this.processPagination(modelDefinition, paginationProducer);\n const keyFields = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);\n if (isQueryOne(identifierOrCriteria)) {\n if (keyFields.length > 1) {\n const msg = util_1.errorMessages.queryByPkWithCompositeKeyPresent;\n logger.error(msg, { keyFields });\n throw new Error(msg);\n }\n const predicate = predicates_1.ModelPredicateCreator.createFromFlatEqualities(modelDefinition, { [keyFields[0]]: identifierOrCriteria });\n result = await this.storage.query(modelConstructor, predicate, pagination);\n }\n else {\n // Object is being queried using object literal syntax\n if ((0, types_1.isIdentifierObject)(identifierOrCriteria, modelDefinition)) {\n const predicate = predicates_1.ModelPredicateCreator.createForPk(modelDefinition, identifierOrCriteria);\n result = await this.storage.query(modelConstructor, predicate, pagination);\n }\n else if (!identifierOrCriteria ||\n (0, predicates_1.isPredicatesAll)(identifierOrCriteria)) {\n result = await this.storage?.query(modelConstructor, undefined, pagination);\n }\n else {\n const seedPredicate = (0, next_1.recursivePredicateFor)({\n builder: modelConstructor,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n });\n const predicate = (0, next_1.internals)(identifierOrCriteria(seedPredicate));\n result = (await predicate.fetch(this.storage));\n result = (0, util_1.inMemoryPagination)(result, pagination);\n }\n }\n //#endregion\n const returnOne = isQueryOne(identifierOrCriteria) ||\n (0, types_1.isIdentifierObject)(identifierOrCriteria, modelDefinition);\n return attached(returnOne ? result[0] : result, ModelAttachment.DataStore);\n }, 'datastore query')\n .catch(this.handleAddProcError('DataStore.query()'));\n };\n this.save = async (model, condition) => {\n return this.runningProcesses\n .add(async () => {\n await this.start();\n if (!this.storage) {\n throw new Error('No storage to save to');\n }\n // Immer patches for constructing a correct update mutation input\n // Allows us to only include changed fields for updates\n const updatedPatchesTuple = modelPatchesMap.get(model);\n // Immer patches for initial object construction. These are used if\n // there are no `update` patches under the assumption we're performing\n // a CREATE and wish to send only explicitly specified fields to the cloud.\n const initPatchesTuple = initPatches.has(model)\n ? [initPatches.get(model), {}]\n : undefined;\n // favor update patches over init/create patches, because init patches\n // are ALWAYS present, whereas update patches are only present if copyOf\n // was used to create the instance.\n const patchesTuple = updatedPatchesTuple || initPatchesTuple;\n const modelConstructor = model ? model.constructor : undefined;\n if (!isValidModelConstructor(modelConstructor)) {\n const msg = 'Object is not an instance of a valid model';\n logger.error(msg, { model });\n throw new Error(msg);\n }\n const modelDefinition = getModelDefinition(modelConstructor);\n if (!modelDefinition) {\n throw new Error('Model Definition could not be found for model');\n }\n const modelMeta = {\n builder: modelConstructor,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n };\n await this.storage.runExclusive(async (s) => {\n // no enforcement for HAS_MANY on save, because the ~related~ entities\n // hold the FK in that case.\n const nonHasManyRelationships = relationship_1.ModelRelationship.allFrom(modelMeta).filter(r => r.type === 'BELONGS_TO');\n for (const relationship of nonHasManyRelationships) {\n const queryObject = relationship.createRemoteQueryObject(model);\n if (queryObject !== null) {\n const related = await s.query(relationship.remoteModelConstructor, predicates_1.ModelPredicateCreator.createFromFlatEqualities(relationship.remoteDefinition, queryObject));\n if (related.length === 0) {\n throw new Error([\n `Data integrity error. You tried to save a ${modelDefinition.name} (${JSON.stringify(model)})`,\n `but the instance assigned to the \"${relationship.field}\" property`,\n `does not exist in the local database. If you're trying to create the related`,\n `\"${relationship.remoteDefinition?.name}\", you must save it independently first.`,\n ].join(' '));\n }\n }\n }\n });\n const producedCondition = condition\n ? (0, next_1.internals)(condition((0, next_1.predicateFor)(modelMeta))).toStoragePredicate()\n : undefined;\n const [savedModel] = await this.storage.runExclusive(async (s) => {\n const saved = await s.save(model, producedCondition, undefined, patchesTuple);\n return s.query(modelConstructor, predicates_1.ModelPredicateCreator.createForPk(modelDefinition, model));\n });\n return attached(savedModel, ModelAttachment.DataStore);\n }, 'datastore save')\n .catch(this.handleAddProcError('DataStore.save()'));\n };\n this.setConflictHandler = (config) => {\n const { DataStore: configDataStore } = config;\n const conflictHandlerIsDefault = () => this.conflictHandler === defaultConflictHandler;\n if (configDataStore && configDataStore.conflictHandler) {\n return configDataStore.conflictHandler;\n }\n if (conflictHandlerIsDefault() && config.conflictHandler) {\n return config.conflictHandler;\n }\n return this.conflictHandler || defaultConflictHandler;\n };\n this.setErrorHandler = (config) => {\n const { DataStore: configDataStore } = config;\n const errorHandlerIsDefault = () => this.errorHandler === defaultErrorHandler;\n if (configDataStore && configDataStore.errorHandler) {\n return configDataStore.errorHandler;\n }\n if (errorHandlerIsDefault() && config.errorHandler) {\n return config.errorHandler;\n }\n return this.errorHandler || defaultErrorHandler;\n };\n this.delete = async (modelOrConstructor, identifierOrCriteria) => {\n return this.runningProcesses\n .add(async () => {\n await this.start();\n if (!this.storage) {\n throw new Error('No storage to delete from');\n }\n let condition;\n if (!modelOrConstructor) {\n const msg = 'Model or Model Constructor required';\n logger.error(msg, { modelOrConstructor });\n throw new Error(msg);\n }\n if (isValidModelConstructor(modelOrConstructor)) {\n const modelConstructor = modelOrConstructor;\n if (!identifierOrCriteria) {\n const msg = 'Id to delete or criteria required. Do you want to delete all? Pass Predicates.ALL';\n logger.error(msg, { identifierOrCriteria });\n throw new Error(msg);\n }\n const modelDefinition = getModelDefinition(modelConstructor);\n if (!modelDefinition) {\n throw new Error('Could not find model definition for modelConstructor.');\n }\n if (typeof identifierOrCriteria === 'string') {\n const keyFields = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);\n if (keyFields.length > 1) {\n const msg = util_1.errorMessages.deleteByPkWithCompositeKeyPresent;\n logger.error(msg, { keyFields });\n throw new Error(msg);\n }\n condition = predicates_1.ModelPredicateCreator.createFromFlatEqualities(modelDefinition, { [keyFields[0]]: identifierOrCriteria });\n }\n else {\n if ((0, types_1.isIdentifierObject)(identifierOrCriteria, modelDefinition)) {\n condition = predicates_1.ModelPredicateCreator.createForPk(modelDefinition, identifierOrCriteria);\n }\n else {\n condition = (0, next_1.internals)(identifierOrCriteria((0, next_1.predicateFor)({\n builder: modelConstructor,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n }))).toStoragePredicate();\n }\n if (!condition ||\n !predicates_1.ModelPredicateCreator.isValidPredicate(condition)) {\n const msg = 'Criteria required. Do you want to delete all? Pass Predicates.ALL';\n logger.error(msg, { condition });\n throw new Error(msg);\n }\n }\n const [deleted] = await this.storage.delete(modelConstructor, condition);\n return attached(deleted, ModelAttachment.DataStore);\n }\n else {\n const model = modelOrConstructor;\n const modelConstructor = Object.getPrototypeOf(model || {})\n .constructor;\n if (!isValidModelConstructor(modelConstructor)) {\n const msg = 'Object is not an instance of a valid model';\n logger.error(msg, { model });\n throw new Error(msg);\n }\n const modelDefinition = getModelDefinition(modelConstructor);\n if (!modelDefinition) {\n throw new Error('Could not find model definition for modelConstructor.');\n }\n const pkPredicate = predicates_1.ModelPredicateCreator.createForPk(modelDefinition, model);\n if (identifierOrCriteria) {\n if (typeof identifierOrCriteria !== 'function') {\n const msg = 'Invalid criteria';\n logger.error(msg, { identifierOrCriteria });\n throw new Error(msg);\n }\n condition = (0, next_1.internals)(identifierOrCriteria((0, next_1.predicateFor)({\n builder: modelConstructor,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n }))).toStoragePredicate();\n }\n else {\n condition = pkPredicate;\n }\n const [[deleted]] = await this.storage.delete(model, condition);\n return attached(deleted, ModelAttachment.DataStore);\n }\n }, 'datastore delete')\n .catch(this.handleAddProcError('DataStore.delete()'));\n };\n this.observe = (modelOrConstructor, identifierOrCriteria) => {\n let executivePredicate;\n const modelConstructor = modelOrConstructor && isValidModelConstructor(modelOrConstructor)\n ? modelOrConstructor\n : undefined;\n if (modelOrConstructor && modelConstructor === undefined) {\n const model = modelOrConstructor;\n const modelConstructor = model && Object.getPrototypeOf(model).constructor;\n if (isValidModelConstructor(modelConstructor)) {\n if (identifierOrCriteria) {\n logger.warn('idOrCriteria is ignored when using a model instance', {\n model,\n identifierOrCriteria,\n });\n }\n return this.observe(modelConstructor, model.id);\n }\n else {\n const msg = 'The model is not an instance of a PersistentModelConstructor';\n logger.error(msg, { model });\n throw new Error(msg);\n }\n }\n // observe should not accept object literal syntax\n if (identifierOrCriteria &&\n modelConstructor &&\n (0, types_1.isIdentifierObject)(identifierOrCriteria, getModelDefinition(modelConstructor))) {\n const msg = util_1.errorMessages.observeWithObjectLiteral;\n logger.error(msg, { objectLiteral: identifierOrCriteria });\n throw new Error(msg);\n }\n if (identifierOrCriteria !== undefined && modelConstructor === undefined) {\n const msg = 'Cannot provide criteria without a modelConstructor';\n logger.error(msg, identifierOrCriteria);\n throw new Error(msg);\n }\n if (modelConstructor && !isValidModelConstructor(modelConstructor)) {\n const msg = 'Constructor is not for a valid model';\n logger.error(msg, { modelConstructor });\n throw new Error(msg);\n }\n if (modelConstructor && typeof identifierOrCriteria === 'string') {\n const buildIdPredicate = seed => seed.id.eq(identifierOrCriteria);\n executivePredicate = (0, next_1.internals)(buildIdPredicate(buildSeedPredicate(modelConstructor)));\n }\n else if (modelConstructor && typeof identifierOrCriteria === 'function') {\n executivePredicate = (0, next_1.internals)(identifierOrCriteria(buildSeedPredicate(modelConstructor)));\n }\n return new rxjs_1.Observable(observer => {\n let source;\n this.runningProcesses\n .add(async () => {\n await this.start();\n // Filter the events returned by Storage according to namespace,\n // append original element data, and subscribe to the observable\n source = this.storage.observe(modelConstructor)\n .pipe((0, rxjs_1.filter)(({ model }) => namespaceResolver(model) === util_1.USER))\n .subscribe({\n next: item => this.runningProcesses.isOpen &&\n this.runningProcesses.add(async () => {\n // the `element` doesn't necessarily contain all item details or\n // have related records attached consistently with that of a query()\n // result item. for consistency, we attach them here.\n let message = item;\n // as long as we're not dealing with a DELETE, we need to fetch a fresh\n // item from storage to ensure it's fully populated.\n if (item.opType !== 'DELETE') {\n const modelDefinition = getModelDefinition(item.model);\n const keyFields = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);\n const primaryKeysAndValues = (0, util_1.extractPrimaryKeysAndValues)(item.element, keyFields);\n const freshElement = await this.query(item.model, primaryKeysAndValues);\n message = {\n ...message,\n element: freshElement,\n };\n }\n if (!executivePredicate ||\n (await executivePredicate.matches(message.element))) {\n observer.next(message);\n }\n }, 'datastore observe message handler'),\n error: err => observer.error(err),\n complete: () => observer.complete(),\n });\n }, 'datastore observe observable initialization')\n .catch(this.handleAddProcError('DataStore.observe()'))\n .catch(error => {\n observer.error(error);\n });\n // better than no cleaner, but if the subscriber is handling the\n // complete() message async and not registering with the context,\n // this will still be problematic.\n return this.runningProcesses.addCleaner(async () => {\n if (source) {\n source.unsubscribe();\n }\n }, 'DataStore.observe() cleanup');\n });\n };\n this.observeQuery = (model, criteria, options) => {\n return new rxjs_1.Observable(observer => {\n const items = new Map();\n const itemsChanged = new Map();\n let deletedItemIds = [];\n let handle;\n // let predicate: ModelPredicate<T> | undefined;\n let executivePredicate;\n /**\n * As the name suggests, this geneates a snapshot in the form of\n * \t`{items: T[], isSynced: boolean}`\n * and sends it to the observer.\n *\n * SIDE EFFECT: The underlying generation and emission methods may touch:\n * `items`, `itemsChanged`, and `deletedItemIds`.\n *\n * Refer to `generateSnapshot` and `emitSnapshot` for more details.\n */\n const generateAndEmitSnapshot = () => {\n const snapshot = generateSnapshot();\n emitSnapshot(snapshot);\n };\n // a mechanism to return data after X amount of seconds OR after the\n // \"limit\" (itemsChanged >= this.syncPageSize) has been reached, whichever comes first\n const limitTimerRace = new util_1.DeferredCallbackResolver({\n callback: generateAndEmitSnapshot,\n errorHandler: observer.error,\n maxInterval: 2000,\n });\n const { sort } = options || {};\n const sortOptions = sort ? { sort } : undefined;\n const modelDefinition = getModelDefinition(model);\n if (!modelDefinition) {\n throw new Error('Could not find model definition.');\n }\n if (model && typeof criteria === 'function') {\n executivePredicate = (0, next_1.internals)(criteria(buildSeedPredicate(model)));\n }\n else if ((0, predicates_1.isPredicatesAll)(criteria)) {\n executivePredicate = undefined;\n }\n this.runningProcesses\n .add(async () => {\n try {\n // first, query and return any locally-available records\n (await this.query(model, criteria, sortOptions)).forEach(item => {\n const itemModelDefinition = getModelDefinition(model);\n const idOrPk = (0, utils_3.getIdentifierValue)(itemModelDefinition, item);\n items.set(idOrPk, item);\n });\n // Observe the model and send a stream of updates (debounced).\n // We need to post-filter results instead of passing criteria through\n // to have visibility into items that move from in-set to out-of-set.\n // We need to explicitly remove those items from the existing snapshot.\n handle = this.observe(model).subscribe(({ element, model, opType }) => this.runningProcesses.isOpen &&\n this.runningProcesses.add(async () => {\n const itemModelDefinition = getModelDefinition(model);\n const idOrPk = (0, utils_3.getIdentifierValue)(itemModelDefinition, element);\n if (executivePredicate &&\n !(await executivePredicate.matches(element))) {\n if (opType === 'UPDATE' &&\n (items.has(idOrPk) || itemsChanged.has(idOrPk))) {\n // tracking as a \"deleted item\" will include the item in\n // page limit calculations and ensure it is removed from the\n // final items collection, regardless of which collection(s)\n // it is currently in. (I mean, it could be in both, right!?)\n deletedItemIds.push(idOrPk);\n }\n else {\n // ignore updates for irrelevant/filtered items.\n return;\n }\n }\n // Flag items which have been recently deleted\n // NOTE: Merging of separate operations to the same model instance is handled upstream\n // in the `mergePage` method within src/sync/merger.ts. The final state of a model instance\n // depends on the LATEST record (for a given id).\n if (opType === 'DELETE') {\n deletedItemIds.push(idOrPk);\n }\n else {\n itemsChanged.set(idOrPk, element);\n }\n const isSynced = this.sync?.getModelSyncedStatus(model) ?? false;\n const limit = itemsChanged.size - deletedItemIds.length >=\n this.syncPageSize;\n if (limit || isSynced) {\n limitTimerRace.resolve();\n }\n // kicks off every subsequent race as results sync down\n limitTimerRace.start();\n }, 'handle observeQuery observed event'));\n // returns a set of initial/locally-available results\n generateAndEmitSnapshot();\n }\n catch (err) {\n observer.error(err);\n }\n }, 'datastore observequery startup')\n .catch(this.handleAddProcError('DataStore.observeQuery()'))\n .catch(error => {\n observer.error(error);\n });\n /**\n * Combines the `items`, `itemsChanged`, and `deletedItemIds` collections into\n * a snapshot in the form of `{ items: T[], isSynced: boolean}`.\n *\n * SIDE EFFECT: The shared `items` collection is recreated.\n */\n const generateSnapshot = () => {\n const isSynced = this.sync?.getModelSyncedStatus(model) ?? false;\n const itemsArray = [\n ...Array.from(items.values()),\n ...Array.from(itemsChanged.values()),\n ];\n items.clear();\n itemsArray.forEach(item => {\n const itemModelDefinition = getModelDefinition(model);\n const idOrPk = (0, utils_3.getIdentifierValue)(itemModelDefinition, item);\n items.set(idOrPk, item);\n });\n // remove deleted items from the final result set\n deletedItemIds.forEach(idOrPk => items.delete(idOrPk));\n const snapshot = Array.from(items.values());\n // we sort after we merge the snapshots (items, itemsChanged)\n // otherwise, the merge may not\n if (options?.sort) {\n sortItems(snapshot);\n }\n return {\n items: snapshot,\n isSynced,\n };\n };\n /**\n * Emits the list of items to the observer.\n *\n * SIDE EFFECT: `itemsChanged` and `deletedItemIds` are cleared to prepare\n * for the next snapshot.\n *\n * @param snapshot The generated items data to emit.\n */\n const emitSnapshot = (snapshot) => {\n // send the generated snapshot to the primary subscription.\n // NOTE: This observer's handler *could* be async ...\n observer.next(snapshot);\n // reset the changed items sets\n itemsChanged.clear();\n deletedItemIds = [];\n };\n /**\n * Sorts an `Array` of `T` according to the sort instructions given in the\n * original `observeQuery()` call.\n *\n * @param itemsToSort A array of model type.\n */\n const sortItems = (itemsToSort) => {\n const modelDefinition = getModelDefinition(model);\n const pagination = this.processPagination(modelDefinition, options);\n const sortPredicates = predicates_1.ModelSortPredicateCreator.getPredicates(pagination.sort);\n if (sortPredicates.length) {\n const compareFn = (0, util_1.sortCompareFunction)(sortPredicates);\n itemsToSort.sort(compareFn);\n }\n };\n /**\n * Force one last snapshot when the model is fully synced.\n *\n * This reduces latency for that last snapshot, which will otherwise\n * wait for the configured timeout.\n *\n * @param payload The payload from the Hub event.\n */\n const hubCallback = ({ payload }) => {\n const { event, data } = payload;\n if (event === sync_1.ControlMessage.SYNC_ENGINE_MODEL_SYNCED &&\n data?.model?.name === model.name) {\n generateAndEmitSnapshot();\n hubRemove();\n }\n };\n const hubRemove = core_1.Hub.listen('datastore', hubCallback);\n return this.runningProcesses.addCleaner(async () => {\n if (handle) {\n handle.unsubscribe();\n }\n }, 'datastore observequery cleaner');\n });\n };\n this.configure = (config = {}) => {\n this.amplifyContext.InternalAPI = this.InternalAPI;\n const { DataStore: configDataStore, authModeStrategyType: configAuthModeStrategyType, conflictHandler: configConflictHandler, errorHandler: configErrorHandler, maxRecordsToSync: configMaxRecordsToSync, syncPageSize: configSyncPageSize, fullSyncInterval: configFullSyncInterval, syncExpressions: configSyncExpressions, authProviders: configAuthProviders, storageAdapter: configStorageAdapter, ...configFromAmplify } = config;\n const currentAppSyncConfig = core_1.Amplify.getConfig().API?.GraphQL;\n const appSyncConfig = {\n aws_appsync_graphqlEndpoint: currentAppSyncConfig?.endpoint,\n aws_appsync_authenticationType: currentAppSyncConfig?.defaultAuthMode,\n aws_appsync_region: currentAppSyncConfig?.region,\n aws_appsync_apiKey: currentAppSyncConfig?.apiKey,\n };\n this.amplifyConfig = {\n ...this.amplifyConfig,\n ...configFromAmplify,\n ...(currentAppSyncConfig && appSyncConfig),\n };\n this.conflictHandler = this.setConflictHandler(config);\n this.errorHandler = this.setErrorHandler(config);\n const authModeStrategyType = (configDataStore && configDataStore.authModeStrategyType) ||\n configAuthModeStrategyType ||\n types_1.AuthModeStrategyType.DEFAULT;\n switch (authModeStrategyType) {\n case types_1.AuthModeStrategyType.MULTI_AUTH:\n this.authModeStrategy = (0, authModeStrategies_1.multiAuthStrategy)(this.amplifyContext);\n break;\n case types_1.AuthModeStrategyType.DEFAULT:\n this.authModeStrategy = authModeStrategies_1.defaultAuthStrategy;\n break;\n default:\n this.authModeStrategy = authModeStrategies_1.defaultAuthStrategy;\n break;\n }\n // store on config object, so that Sync, Subscription, and Mutation processors can have access\n this.amplifyConfig.authProviders =\n (configDataStore && configDataStore.authProviders) || configAuthProviders;\n this.syncExpressions =\n (configDataStore && configDataStore.syncExpressions) ||\n configSyncExpressions ||\n this.syncExpressions;\n this.maxRecordsToSync =\n (configDataStore && configDataStore.maxRecordsToSync) ||\n configMaxRecordsToSync ||\n this.maxRecordsToSync ||\n 10000;\n // store on config object, so that Sync, Subscription, and Mutation processors can have access\n this.amplifyConfig.maxRecordsToSync = this.maxRecordsToSync;\n this.syncPageSize =\n (configDataStore && configDataStore.syncPageSize) ||\n configSyncPageSize ||\n this.syncPageSize ||\n 1000;\n // store on config object, so that Sync, Subscription, and Mutation processors can have access\n this.amplifyConfig.syncPageSize = this.syncPageSize;\n this.fullSyncInterval =\n (configDataStore && configDataStore.fullSyncInterval) ||\n configFullSyncInterval ||\n this.fullSyncInterval ||\n 24 * 60; // 1 day\n this.storageAdapter =\n (configDataStore && configDataStore.storageAdapter) ||\n configStorageAdapter ||\n this.storageAdapter ||\n undefined;\n this.sessionId = this.retrieveSessionId();\n };\n }\n getModuleName() {\n return 'DataStore';\n }\n /**\n * Builds a function to capture `BackgroundManagerNotOpenError`'s to produce friendlier,\n * more instructive errors for customers.\n *\n * @param operation The name of the operation (usually a Datastore method) the customer\n * tried to call.\n */\n handleAddProcError(operation) {\n /**\n * If the tested error is a `BackgroundManagerNotOpenError`, it will be captured\n * and replaced with a friendlier message that instructs the App Developer.\n *\n * @param err An error to test.\n */\n const handler = (err) => {\n if (err.message.startsWith('BackgroundManagerNotOpenError')) {\n throw new Error([\n `DataStoreStateError: Tried to execute \\`${operation}\\` while DataStore was \"${this.state}\".`,\n `This can only be done while DataStore is \"Started\" or \"Stopped\". To remedy:`,\n 'Ensure all calls to `stop()` and `clear()` have completed first.',\n 'If this is not possible, retry the operation until it succeeds.',\n ].join('\\n'));\n }\n else {\n throw err;\n }\n };\n return handler;\n }\n /**\n * Clears all data from storage and removes all data, schema info, other\n * initialization details, and then stops DataStore.\n *\n * That said, reinitialization is required after clearing. This can be done\n * by explicitiliy calling `start()` or any method that implicitly starts\n * DataStore, such as `query()`, `save()`, or `delete()`.\n */\n async clear() {\n checkSchemaInitialized();\n this.state = DataStoreState.Clearing;\n await this.runningProcesses.close();\n if (this.storage === undefined) {\n // connect to storage so that it can be cleared without fully starting DataStore\n this.storage = new storage_1.ExclusiveStorage(schema, namespaceResolver, getModelConstructorByModelName, modelInstanceCreator, this.storageAdapter, this.sessionId);\n await this.storage.init();\n }\n if (syncSubscription && !syncSubscription.closed) {\n syncSubscription.unsubscribe();\n }\n if (this.sync) {\n await this.sync.stop();\n }\n await this.storage.clear();\n this.initialized = undefined; // Should re-initialize when start() is called.\n this.storage = undefined;\n this.sync = undefined;\n this.syncPredicates = new WeakMap();\n await this.runningProcesses.open();\n this.state = DataStoreState.NotRunning;\n }\n /**\n * Stops all DataStore sync activities.\n *\n * TODO: \"Waits for graceful termination of\n * running queries and terminates subscriptions.\"\n */\n async stop() {\n this.state = DataStoreState.Stopping;\n await this.runningProcesses.close();\n if (syncSubscription && !syncSubscription.closed) {\n syncSubscription.unsubscribe();\n }\n if (this.sync) {\n await this.sync.stop();\n }\n this.initialized = undefined; // Should re-initialize when start() is called.\n this.sync = undefined;\n await this.runningProcesses.open();\n this.state = DataStoreState.NotRunning;\n }\n /**\n * Validates given pagination input from a query and creates a pagination\n * argument for use against the storage layer.\n *\n * @param modelDefinition\n * @param paginationProducer\n */\n processPagination(modelDefinition, paginationProducer) {\n let sortPredicate;\n const { limit, page, sort } = paginationProducer || {};\n if (limit === undefined && page === undefined && sort === undefined) {\n return undefined;\n }\n if (page !== undefined && limit === undefined) {\n throw new Error('Limit is required when requesting a page');\n }\n if (page !== undefined) {\n if (typeof page !== 'number') {\n throw new Error('Page should be a number');\n }\n if (page < 0) {\n throw new Error(\"Page can't be negative\");\n }\n }\n if (limit !== undefined) {\n if (typeof limit !== 'number') {\n throw new Error('Limit should be a number');\n }\n if (limit < 0) {\n throw new Error(\"Limit can't be negative\");\n }\n }\n if (sort) {\n sortPredicate = predicates_1.ModelSortPredicateCreator.createFromExisting(modelDefinition, sort);\n }\n return {\n limit,\n page,\n sort: sortPredicate,\n };\n }\n /**\n * Examines the configured `syncExpressions` and produces a WeakMap of\n * SchemaModel -> predicate to use during sync.\n */\n async processSyncExpressions() {\n if (!this.syncExpressions || !this.syncExpressions.length) {\n return new WeakMap();\n }\n const syncPredicates = await Promise.all(this.syncExpressions.map(async (syncExpression) => {\n const { modelConstructor, conditionProducer } = await syncExpression;\n const modelDefinition = getModelDefinition(modelConstructor);\n // conditionProducer is either a predicate, e.g. (c) => c.field.eq(1)\n // OR a function/promise that returns a predicate\n const condition = await this.unwrapPromise(conditionProducer);\n if ((0, predicates_1.isPredicatesAll)(condition)) {\n return [modelDefinition, null];\n }\n const predicate = (0, next_1.internals)(condition((0, next_1.predicateFor)({\n builder: modelConstructor,\n schema: modelDefinition,\n pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),\n }))).toStoragePredicate();\n return [modelDefinition, predicate];\n }));\n return this.weakMapFromEntries(syncPredicates);\n }\n async unwrapPromise(conditionProducer) {\n try {\n const condition = await conditionProducer();\n return condition || conditionProducer;\n }\n catch (error) {\n if (error instanceof TypeError) {\n return conditionProducer;\n }\n throw error;\n }\n }\n weakMapFromEntries(entries) {\n return entries.reduce((map, [modelDefinition, predicate]) => {\n if (map.has(modelDefinition)) {\n const { name } = modelDefinition;\n logger.warn(`You can only utilize one Sync Expression per model.\n Subsequent sync expressions for the ${name} model will be ignored.`);\n return map;\n }\n if (predicate) {\n map.set(modelDefinition, predicate);\n }\n return map;\n }, new WeakMap());\n }\n /**\n * A session ID to allow CMS to open databases against multiple apps.\n * This session ID is only expected be set by AWS Amplify Studio.\n */\n retrieveSessionId() {\n try {\n const sessionId = sessionStorage.getItem('datastoreSessionId');\n if (sessionId) {\n const { aws_appsync_graphqlEndpoint } = this.amplifyConfig;\n const appSyncUrl = aws_appsync_graphqlEndpoint.split('/')[2];\n const [appSyncId] = appSyncUrl.split('.');\n return `${sessionId}-${appSyncId}`;\n }\n }\n catch { }\n return undefined;\n }\n}\nexports.DataStoreClass = DataStore;\nconst instance = new DataStore();\nexports.DataStore = instance;\ninstance.configure({});\ncore_1.Hub.listen('core', capsule => {\n if (capsule.payload.event === 'configure') {\n instance.configure({});\n }\n});\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/datastore/utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AACA;;;AAEO,MAAM,MAAM,GAAG,MACrB,OAAO,OAAO,KAAK,WAAW;IAC9B,OAAO,CAAC,QAAQ,IAAI,IAAI;AACxB,IAAA,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC;AAHlB,OAAA,CAAA,MAAM,GAGY,MAAA;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../src/datastore/utils.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isNode = void 0;\nconst isNode = () => typeof process !== 'undefined' &&\n process.versions != null &&\n process.versions.node != null;\nexports.isNode = isNode;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,MAAM,GAAG,MAAM,OAAO,OAAO,KAAK,WAAW;AACnD,IAAI,OAAO,CAAC,QAAQ,IAAI,IAAI;AAC5B,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC;AAClC,OAAO,CAAC,MAAM,GAAG,MAAM;;"}