@gzeoneth/gov-tracker 0.2.1-beta.682a255 → 0.2.1-beta.746bfec

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 (197) hide show
  1. package/README.md +126 -80
  2. package/dist/abis.d.ts +3 -0
  3. package/dist/abis.d.ts.map +1 -1
  4. package/dist/abis.js +30 -2
  5. package/dist/abis.js.map +1 -1
  6. package/dist/calldata/index.d.ts +1 -1
  7. package/dist/calldata/index.d.ts.map +1 -1
  8. package/dist/calldata/index.js.map +1 -1
  9. package/dist/calldata/parameter-decoder.d.ts.map +1 -1
  10. package/dist/calldata/parameter-decoder.js +8 -1
  11. package/dist/calldata/parameter-decoder.js.map +1 -1
  12. package/dist/calldata/signature-lookup.d.ts +17 -2
  13. package/dist/calldata/signature-lookup.d.ts.map +1 -1
  14. package/dist/calldata/signature-lookup.js +20 -2
  15. package/dist/calldata/signature-lookup.js.map +1 -1
  16. package/dist/cli/cli.d.ts +21 -0
  17. package/dist/cli/cli.d.ts.map +1 -0
  18. package/dist/cli/{monitor.js → cli.js} +315 -46
  19. package/dist/cli/cli.js.map +1 -0
  20. package/dist/cli/lib/cli.d.ts +54 -3
  21. package/dist/cli/lib/cli.d.ts.map +1 -1
  22. package/dist/cli/lib/cli.js +384 -75
  23. package/dist/cli/lib/cli.js.map +1 -1
  24. package/dist/cli/lib/concurrency.d.ts +20 -0
  25. package/dist/cli/lib/concurrency.d.ts.map +1 -0
  26. package/dist/cli/lib/concurrency.js +32 -0
  27. package/dist/cli/lib/concurrency.js.map +1 -0
  28. package/dist/cli/lib/json-state.d.ts +23 -0
  29. package/dist/cli/lib/json-state.d.ts.map +1 -1
  30. package/dist/cli/lib/json-state.js +51 -4
  31. package/dist/cli/lib/json-state.js.map +1 -1
  32. package/dist/constants.d.ts +39 -0
  33. package/dist/constants.d.ts.map +1 -1
  34. package/dist/constants.js +47 -1
  35. package/dist/constants.js.map +1 -1
  36. package/dist/data/bundled-cache.json +11807 -2559
  37. package/dist/deduplication.d.ts +132 -0
  38. package/dist/deduplication.d.ts.map +1 -0
  39. package/dist/deduplication.js +270 -0
  40. package/dist/deduplication.js.map +1 -0
  41. package/dist/discovery/governor-discovery.d.ts.map +1 -1
  42. package/dist/discovery/governor-discovery.js +52 -36
  43. package/dist/discovery/governor-discovery.js.map +1 -1
  44. package/dist/discovery/timelock-discovery.d.ts +15 -6
  45. package/dist/discovery/timelock-discovery.d.ts.map +1 -1
  46. package/dist/discovery/timelock-discovery.js +27 -11
  47. package/dist/discovery/timelock-discovery.js.map +1 -1
  48. package/dist/election/contracts.d.ts +8 -0
  49. package/dist/election/contracts.d.ts.map +1 -0
  50. package/dist/election/contracts.js +28 -0
  51. package/dist/election/contracts.js.map +1 -0
  52. package/dist/election/details.d.ts +15 -0
  53. package/dist/election/details.d.ts.map +1 -0
  54. package/dist/election/details.js +157 -0
  55. package/dist/election/details.js.map +1 -0
  56. package/dist/election/index.d.ts +11 -0
  57. package/dist/election/index.d.ts.map +1 -0
  58. package/dist/election/index.js +48 -0
  59. package/dist/election/index.js.map +1 -0
  60. package/dist/election/params.d.ts +13 -0
  61. package/dist/election/params.d.ts.map +1 -0
  62. package/dist/election/params.js +93 -0
  63. package/dist/election/params.js.map +1 -0
  64. package/dist/election/participants.d.ts +6 -0
  65. package/dist/election/participants.d.ts.map +1 -0
  66. package/dist/election/participants.js +102 -0
  67. package/dist/election/participants.js.map +1 -0
  68. package/dist/election/prepare.d.ts +10 -0
  69. package/dist/election/prepare.d.ts.map +1 -0
  70. package/dist/election/prepare.js +52 -0
  71. package/dist/election/prepare.js.map +1 -0
  72. package/dist/election/proposal-ids.d.ts +18 -0
  73. package/dist/election/proposal-ids.d.ts.map +1 -0
  74. package/dist/election/proposal-ids.js +77 -0
  75. package/dist/election/proposal-ids.js.map +1 -0
  76. package/dist/election/status.d.ts +15 -0
  77. package/dist/election/status.d.ts.map +1 -0
  78. package/dist/election/status.js +102 -0
  79. package/dist/election/status.js.map +1 -0
  80. package/dist/election/tracking.d.ts +28 -0
  81. package/dist/election/tracking.d.ts.map +1 -0
  82. package/dist/election/tracking.js +412 -0
  83. package/dist/election/tracking.js.map +1 -0
  84. package/dist/index.d.ts +30 -7
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +94 -9
  87. package/dist/index.js.map +1 -1
  88. package/dist/stages/builder.d.ts +4 -0
  89. package/dist/stages/builder.d.ts.map +1 -1
  90. package/dist/stages/builder.js +7 -0
  91. package/dist/stages/builder.js.map +1 -1
  92. package/dist/stages/l2-to-l1-message.d.ts +8 -1
  93. package/dist/stages/l2-to-l1-message.d.ts.map +1 -1
  94. package/dist/stages/l2-to-l1-message.js +79 -13
  95. package/dist/stages/l2-to-l1-message.js.map +1 -1
  96. package/dist/stages/proposal-created.d.ts +1 -0
  97. package/dist/stages/proposal-created.d.ts.map +1 -1
  98. package/dist/stages/proposal-created.js +1 -0
  99. package/dist/stages/proposal-created.js.map +1 -1
  100. package/dist/stages/proposal-queued.d.ts +1 -0
  101. package/dist/stages/proposal-queued.d.ts.map +1 -1
  102. package/dist/stages/proposal-queued.js +3 -1
  103. package/dist/stages/proposal-queued.js.map +1 -1
  104. package/dist/stages/retryables.js +2 -2
  105. package/dist/stages/retryables.js.map +1 -1
  106. package/dist/stages/timelock.d.ts +3 -1
  107. package/dist/stages/timelock.d.ts.map +1 -1
  108. package/dist/stages/timelock.js +10 -4
  109. package/dist/stages/timelock.js.map +1 -1
  110. package/dist/stages/utils.d.ts +7 -8
  111. package/dist/stages/utils.d.ts.map +1 -1
  112. package/dist/stages/utils.js +40 -27
  113. package/dist/stages/utils.js.map +1 -1
  114. package/dist/stages/voting.d.ts.map +1 -1
  115. package/dist/stages/voting.js +5 -4
  116. package/dist/stages/voting.js.map +1 -1
  117. package/dist/tracker/cache.d.ts +10 -6
  118. package/dist/tracker/cache.d.ts.map +1 -1
  119. package/dist/tracker/cache.js +39 -15
  120. package/dist/tracker/cache.js.map +1 -1
  121. package/dist/tracker/checkpoint-helpers.d.ts +63 -0
  122. package/dist/tracker/checkpoint-helpers.d.ts.map +1 -0
  123. package/dist/tracker/checkpoint-helpers.js +176 -0
  124. package/dist/tracker/checkpoint-helpers.js.map +1 -0
  125. package/dist/tracker/discovery.d.ts +40 -9
  126. package/dist/tracker/discovery.d.ts.map +1 -1
  127. package/dist/tracker/discovery.js +152 -15
  128. package/dist/tracker/discovery.js.map +1 -1
  129. package/dist/tracker/pipeline.d.ts.map +1 -1
  130. package/dist/tracker/pipeline.js +26 -11
  131. package/dist/tracker/pipeline.js.map +1 -1
  132. package/dist/tracker/query.d.ts +1 -0
  133. package/dist/tracker/query.d.ts.map +1 -1
  134. package/dist/tracker/query.js +14 -61
  135. package/dist/tracker/query.js.map +1 -1
  136. package/dist/tracker/state.d.ts +0 -10
  137. package/dist/tracker/state.d.ts.map +1 -1
  138. package/dist/tracker/state.js +1 -28
  139. package/dist/tracker/state.js.map +1 -1
  140. package/dist/tracker.d.ts +86 -4
  141. package/dist/tracker.d.ts.map +1 -1
  142. package/dist/tracker.js +311 -13
  143. package/dist/tracker.js.map +1 -1
  144. package/dist/types/config.d.ts +49 -0
  145. package/dist/types/config.d.ts.map +1 -1
  146. package/dist/types/core.d.ts +4 -2
  147. package/dist/types/core.d.ts.map +1 -1
  148. package/dist/types/election.d.ts +143 -0
  149. package/dist/types/election.d.ts.map +1 -1
  150. package/dist/types/index.d.ts +5 -7
  151. package/dist/types/index.d.ts.map +1 -1
  152. package/dist/types/index.js +2 -3
  153. package/dist/types/index.js.map +1 -1
  154. package/dist/types/stages.d.ts +79 -1
  155. package/dist/types/stages.d.ts.map +1 -1
  156. package/dist/types/stages.js.map +1 -1
  157. package/dist/types/tracking.d.ts +34 -4
  158. package/dist/types/tracking.d.ts.map +1 -1
  159. package/dist/utils/block-cache.d.ts +50 -0
  160. package/dist/utils/block-cache.d.ts.map +1 -0
  161. package/dist/utils/block-cache.js +80 -0
  162. package/dist/utils/block-cache.js.map +1 -0
  163. package/dist/utils/formatters.d.ts +91 -0
  164. package/dist/utils/formatters.d.ts.map +1 -0
  165. package/dist/utils/formatters.js +327 -0
  166. package/dist/utils/formatters.js.map +1 -0
  167. package/dist/utils/multicall.d.ts +52 -0
  168. package/dist/utils/multicall.d.ts.map +1 -0
  169. package/dist/utils/multicall.js +75 -0
  170. package/dist/utils/multicall.js.map +1 -0
  171. package/dist/utils/salt-computation.d.ts.map +1 -1
  172. package/dist/utils/salt-computation.js +33 -7
  173. package/dist/utils/salt-computation.js.map +1 -1
  174. package/dist/utils/sanitize.d.ts +28 -0
  175. package/dist/utils/sanitize.d.ts.map +1 -0
  176. package/dist/utils/sanitize.js +52 -0
  177. package/dist/utils/sanitize.js.map +1 -0
  178. package/dist/utils/stage-metadata.d.ts +0 -20
  179. package/dist/utils/stage-metadata.d.ts.map +1 -1
  180. package/dist/utils/stage-metadata.js +29 -44
  181. package/dist/utils/stage-metadata.js.map +1 -1
  182. package/dist/utils/timing.d.ts +13 -0
  183. package/dist/utils/timing.d.ts.map +1 -1
  184. package/dist/utils/timing.js +37 -1
  185. package/dist/utils/timing.js.map +1 -1
  186. package/package.json +25 -16
  187. package/dist/cli/monitor.d.ts +0 -3
  188. package/dist/cli/monitor.d.ts.map +0 -1
  189. package/dist/cli/monitor.js.map +0 -1
  190. package/dist/election.d.ts +0 -172
  191. package/dist/election.d.ts.map +0 -1
  192. package/dist/election.js +0 -467
  193. package/dist/election.js.map +0 -1
  194. package/dist/types/cross-chain.d.ts +0 -24
  195. package/dist/types/cross-chain.d.ts.map +0 -1
  196. package/dist/types/cross-chain.js +0 -6
  197. package/dist/types/cross-chain.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gzeoneth/gov-tracker",
3
- "version": "0.2.1-beta.682a255",
3
+ "version": "0.2.1-beta.746bfec",
4
4
  "description": "Lightweight, high-performance library for tracking Arbitrum DAO governance proposal lifecycle stages",
5
5
  "license": "Apache-2.0",
6
6
  "author": "gzeoneth",
@@ -13,8 +13,15 @@
13
13
  },
14
14
  "main": "dist/index.js",
15
15
  "types": "dist/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/index.d.ts",
19
+ "default": "./dist/index.js"
20
+ },
21
+ "./bundled-cache.json": "./dist/data/bundled-cache.json"
22
+ },
16
23
  "bin": {
17
- "gov-tracker": "dist/cli/monitor.js"
24
+ "gov-tracker": "dist/cli/cli.js"
18
25
  },
19
26
  "files": [
20
27
  "dist"
@@ -36,11 +43,12 @@
36
43
  "format:check": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\"",
37
44
  "prepublishOnly": "yarn lint && yarn format:check && yarn build",
38
45
  "prepare": "husky",
39
- "monitor": "ts-node src/cli/monitor.ts",
40
- "monitor:run": "ts-node src/cli/monitor.ts run",
41
- "monitor:status": "ts-node src/cli/monitor.ts status",
42
- "monitor:track": "ts-node src/cli/monitor.ts track",
43
- "monitor:inspect": "ts-node src/cli/monitor.ts inspect"
46
+ "cli": "ts-node src/cli/cli.ts",
47
+ "cli:run": "ts-node src/cli/cli.ts run",
48
+ "cli:status": "ts-node src/cli/cli.ts status",
49
+ "cli:track": "ts-node src/cli/cli.ts track",
50
+ "cli:election": "ts-node src/cli/cli.ts election",
51
+ "cache:generate": "ts-node src/cli/cli.ts --cache ./data/bundled-cache.json --concurrency 3 --force"
44
52
  },
45
53
  "lint-staged": {
46
54
  "*.ts": [
@@ -50,19 +58,20 @@
50
58
  },
51
59
  "dependencies": {
52
60
  "@arbitrum/sdk": "^4.0.0",
53
- "commander": "^14.0.2",
54
- "debug": "^4.3.4",
55
- "dotenv": "^17.2.3",
56
- "ethers": "^5.7.2",
57
- "p-limit": "3"
61
+ "debug": "^4.4.0",
62
+ "ethers": "^5.8.0"
63
+ },
64
+ "optionalDependencies": {
65
+ "commander": "^14.0.0"
58
66
  },
59
67
  "devDependencies": {
60
68
  "@eslint/js": "^9.39.2",
61
69
  "@types/debug": "^4.1.12",
62
- "@types/node": "^20.0.0",
63
- "@typescript-eslint/eslint-plugin": "^8.51.0",
64
- "@typescript-eslint/parser": "^8.51.0",
70
+ "@types/node": "^22.0.0",
71
+ "@typescript-eslint/eslint-plugin": "^8.52.0",
72
+ "@typescript-eslint/parser": "^8.52.0",
65
73
  "@vitest/coverage-v8": "^4.0.0",
74
+ "dotenv": "^17.0.0",
66
75
  "eslint": "^9.39.2",
67
76
  "husky": "^9.1.7",
68
77
  "jiti": "^2.6.1",
@@ -70,7 +79,7 @@
70
79
  "lint-staged": "^16.2.7",
71
80
  "prettier": "^3.7.4",
72
81
  "ts-node": "^10.9.2",
73
- "typescript": "^5.0.0",
82
+ "typescript": "^5.8.0",
74
83
  "vitest": "^4.0.16"
75
84
  },
76
85
  "engines": {
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=monitor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../src/cli/monitor.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/cli/monitor.ts"],"names":[],"mappings":"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"}
@@ -1,172 +0,0 @@
1
- /**
2
- * Security Council Election Tracking
3
- *
4
- * Provides functions to check election status and prepare election creation transactions.
5
- * Based on SecurityCouncilElectionTracker from governance repo.
6
- *
7
- * @module election
8
- */
9
- import { ethers, BigNumber } from "ethers";
10
- import { PreparedTransaction, ElectionProposalStatus, ElectionStatus } from "./types";
11
- /**
12
- * Prepared election creation transaction
13
- */
14
- export interface PreparedElectionCreation {
15
- /** Transaction to send */
16
- transaction: PreparedTransaction;
17
- /** Election index being created */
18
- electionIndex: number;
19
- }
20
- /**
21
- * Election proposal parameters needed for execute() call
22
- */
23
- export interface ElectionProposalParams {
24
- /** Target addresses */
25
- targets: string[];
26
- /** ETH values */
27
- values: BigNumber[];
28
- /** Call data for each target */
29
- calldatas: string[];
30
- /** Proposal description */
31
- description: string;
32
- /** Keccak256 hash of description */
33
- descriptionHash: string;
34
- }
35
- /**
36
- * Check the status of the Security Council election
37
- *
38
- * Determines if a new election can be created and when the next one is scheduled.
39
- *
40
- * @param l2Provider - Arbitrum One provider
41
- * @param l1Provider - Ethereum mainnet provider (for L1 timestamp)
42
- * @param nomineeGovernorAddress - Optional override for nominee election governor address
43
- * @returns Election status information
44
- *
45
- * @example
46
- * ```typescript
47
- * const status = await checkElectionStatus(l2Provider, l1Provider);
48
- *
49
- * if (status.canCreateElection) {
50
- * console.log("Election ready to create!");
51
- * } else {
52
- * console.log(`Next election in ${status.timeUntilElection}`);
53
- * }
54
- * ```
55
- */
56
- export declare function checkElectionStatus(l2Provider: ethers.providers.Provider, l1Provider: ethers.providers.Provider, nomineeGovernorAddress?: string): Promise<ElectionStatus>;
57
- /**
58
- * Prepare a transaction to create a new Security Council election
59
- *
60
- * Only call this if checkElectionStatus indicates canCreateElection is true.
61
- *
62
- * @param electionStatus - Status from checkElectionStatus (provides current election count)
63
- * @param nomineeGovernorAddress - Optional override for nominee election governor address
64
- * @returns Prepared transaction for creating the election
65
- *
66
- * @example
67
- * ```typescript
68
- * const status = await checkElectionStatus(l2Provider, l1Provider);
69
- *
70
- * if (status.canCreateElection) {
71
- * const { transaction, electionIndex } = prepareElectionCreation(status);
72
- * console.log(`Creating election #${electionIndex}`);
73
- * // Execute with your signer
74
- * const tx = await signer.sendTransaction({
75
- * to: transaction.to,
76
- * data: transaction.data,
77
- * });
78
- * await tx.wait();
79
- * }
80
- * ```
81
- */
82
- export declare function prepareElectionCreation(electionStatus: Pick<ElectionStatus, "electionCount">, nomineeGovernorAddress?: string): PreparedElectionCreation;
83
- /**
84
- * Check if a governor has a vetting period (is a nominee election governor)
85
- *
86
- * @param governorAddress - Address of the governor to check
87
- * @param provider - Provider for the chain the governor is on
88
- * @returns True if the governor has a vetting period
89
- */
90
- export declare function hasVettingPeriod(governorAddress: string, provider: ethers.providers.Provider): Promise<boolean>;
91
- /**
92
- * Track the status of a Security Council election by its index
93
- *
94
- * This function provides detailed tracking of an election's progress through
95
- * the nominee selection, vetting, and member election phases.
96
- *
97
- * @param electionIndex - The election index to track
98
- * @param l2Provider - Arbitrum One provider
99
- * @param l1Provider - Ethereum mainnet provider (for L1 block number)
100
- * @param options - Optional address overrides
101
- * @returns Detailed election proposal status
102
- *
103
- * @example
104
- * ```typescript
105
- * const status = await trackElectionProposal(
106
- * 5, // election index
107
- * l2Provider,
108
- * l1Provider
109
- * );
110
- *
111
- * if (status.phase === "VETTING_PERIOD") {
112
- * console.log(`${status.compliantNomineeCount}/6 nominees compliant`);
113
- * }
114
- * ```
115
- */
116
- export declare function trackElectionProposal(electionIndex: number, l2Provider: ethers.providers.Provider, _l1Provider: ethers.providers.Provider, options?: {
117
- nomineeGovernorAddress?: string;
118
- memberGovernorAddress?: string;
119
- }): Promise<ElectionProposalStatus>;
120
- /**
121
- * Get the proposal ID for a given election index
122
- *
123
- * Uses getProposeArgs to get proposal parameters and hashProposal to calculate the proposal ID.
124
- *
125
- * @param electionIndex - Election index
126
- * @param provider - L2 provider
127
- * @param nomineeGovernorAddress - Optional governor address override
128
- * @returns Proposal ID or null if election not yet created
129
- */
130
- export declare function getElectionProposalId(electionIndex: number, provider: ethers.providers.Provider, nomineeGovernorAddress?: string): Promise<string | null>;
131
- /**
132
- * Get the proposal parameters for an election proposal
133
- *
134
- * Searches for the ProposalCreated event to extract targets, values, calldatas,
135
- * and description needed for execute() call.
136
- *
137
- * @param electionIndex - Election index
138
- * @param provider - L2 provider
139
- * @param nomineeGovernorAddress - Optional governor address override
140
- * @returns Election proposal params or null if not found
141
- */
142
- export declare function getElectionProposalParams(electionIndex: number, provider: ethers.providers.Provider, nomineeGovernorAddress?: string): Promise<ElectionProposalParams | null>;
143
- /**
144
- * Prepare a transaction to trigger member election creation
145
- *
146
- * After the vetting period ends with 6+ compliant nominees, calling execute()
147
- * on the NomineeElectionGovernor creates the member election proposal.
148
- *
149
- * @param electionStatus - Status from trackElectionProposal (must have canProceedToMemberPhase=true)
150
- * @param provider - L2 provider
151
- * @param nomineeGovernorAddress - Optional governor address override
152
- * @returns Prepared transaction or null if not ready
153
- *
154
- * @example
155
- * ```typescript
156
- * const status = await trackElectionProposal(5, l2Provider, l1Provider);
157
- *
158
- * if (status.canProceedToMemberPhase) {
159
- * const prepared = await prepareMemberElectionTrigger(status, l2Provider);
160
- * if (prepared) {
161
- * const tx = await signer.sendTransaction({
162
- * to: prepared.to,
163
- * data: prepared.data,
164
- * });
165
- * await tx.wait();
166
- * console.log("Member election created!");
167
- * }
168
- * }
169
- * ```
170
- */
171
- export declare function prepareMemberElectionTrigger(electionStatus: Pick<ElectionProposalStatus, "electionIndex" | "canProceedToMemberPhase">, provider: ethers.providers.Provider, nomineeGovernorAddress?: string): Promise<PreparedTransaction | null>;
172
- //# sourceMappingURL=election.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"election.d.ts","sourceRoot":"","sources":["../src/election.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,EACL,mBAAmB,EAKnB,sBAAsB,EACtB,cAAc,EACf,MAAM,SAAS,CAAC;AAajB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,0BAA0B;IAC1B,WAAW,EAAE,mBAAmB,CAAC;IACjC,mCAAmC;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,uBAAuB;IACvB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB;IACjB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,gCAAgC;IAChC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,eAAe,EAAE,MAAM,CAAC;CACzB;AAsBD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,sBAAsB,GAAE,MAA4C,GACnE,OAAO,CAAC,cAAc,CAAC,CA6CzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,EACrD,sBAAsB,GAAE,MAA4C,GACnE,wBAAwB,CAgB1B;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAClC,OAAO,CAAC,OAAO,CAAC,CASlB;AAiDD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACtC,OAAO,GAAE;IACP,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC3B,GACL,OAAO,CAAC,sBAAsB,CAAC,CAiIjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,sBAAsB,GAAE,MAA4C,GACnE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwBxB;AAID;;;;;;;;;;GAUG;AACH,wBAAsB,yBAAyB,CAC7C,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,sBAAsB,GAAE,MAA4C,GACnE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CA4DxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAAE,eAAe,GAAG,yBAAyB,CAAC,EACzF,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,sBAAsB,GAAE,MAA4C,GACnE,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAoCrC"}