@whetstone-research/doppler-sdk 1.0.34 → 1.0.36

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.
@@ -7,12 +7,6 @@ var viem = require('viem');
7
7
  var GENERATED_DOPPLER_DEPLOYMENTS = {
8
8
  "1": {
9
9
  Airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
10
- CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
11
- CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
12
- CloneERC20: "0x215b2cE3Dd8D110394e94A868580D61a77aDEc4A",
13
- CloneERC20Factory: "0xe7Df2A4520C26a2D4Dedb3a7585BFBcd30eABA6e",
14
- CloneERC20Votes: "0xA8d0E8036D3fAE21C7Af075ad41942Bc1f807CDF",
15
- CloneERC20VotesFactory: "0x5A92bFfbc01ea0396A9c7D4154d36d4EAF2e483E",
16
10
  DopplerCreateXDeployer: "0x103004E50Bed65DFBa30dD9c264B6BdF5e529B83",
17
11
  DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
18
12
  DopplerERC20V1: "0xDB7B520bb5C3a2C5d4871198081911359f93be87",
@@ -25,47 +19,18 @@ var GENERATED_DOPPLER_DEPLOYMENTS = {
25
19
  NoOpGovernanceFactory: "0xddAE8B3eD08184682f7Bc32B74d943cEEfEab638",
26
20
  NoOpMigrator: "0x233A71A7bB928b1357A1Ebf454298320989Ca5B5",
27
21
  Quoter: "0x076838736F90Cd1d30dED756A3B89E576BE972F8",
28
- RehypeDopplerHook: "0x3Ec4798A9B11e8243A8Db99687f7A23597B96623",
29
22
  RehypeDopplerHookInitializer: "0x9982538F41f2ae29ddb9d3D9307010052984FDbB",
30
23
  RehypeDopplerHookMigrator: "0x975f9d1939cf6e4A3c9D99f9d41e6411CF4dA23b",
31
- StreamableFeesLocker: "0xe24FC2F7191e850e2D4514aBb4d39305b1871eC6",
32
24
  StreamableFeesLockerV2: "0xcE3212e6536F33cD6fbFEE265224131353Ca3D47",
33
25
  TimelockFactory: "0x9fd40af2baAfAF03513f091444e821c0d5b06ea0",
34
26
  TopUpDistributor: "0x435312320C0330B1999746753551CdFbD83aD814",
35
27
  UniswapV2Locker: "0x06731e30df4B0209ED19C39Ba8eD253e17b0E495",
36
- UniswapV2Migrator: "0x765875bff87614cE0581ee73B9fa663B71F3DfF2",
37
28
  UniswapV2MigratorSplit: "0xD7abA5f1d80a330a6fe9E96F7bA122710E0912d3",
38
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
39
- UniswapV4Migrator: "0x0820A4D0173C17Ece283f7bDaAF0f8876eB205f5",
40
- UniswapV4MigratorHook: "0x4053D4fa966cbdCC20Ec62070aC8814De8bEE500",
41
- UniswapV4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
42
- UniswapV4MigratorSplitHook: "0x103aB8804e66bC272840940CBa0ad34729c4e500",
43
- UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
44
- UniswapV4ScheduledMulticurveInitializerHook: "0xc6a562cb5CbFA29BCB1bDCCF903b8B8f2E4A2DC0"
45
- },
46
- "130": {
47
- Airlock: "0x77EbfBAE15AD200758E9E2E61597c0B07d731254",
48
- Bundler: "0x91231cDdD8d6C86Df602070a3081478e074b97b7",
49
- DopplerDeployer: "0x0d2f38d807bfAd5C18e430516e10ab560D300caF",
50
- DopplerLensQuoter: "0x82Ac010C67f70BACf7655cd8948a4AD92A173CAC",
51
- GovernanceFactory: "0x99C94B9Df930E1E21a4E4a2c105dBff21bF5c5aE",
52
- LockableUniswapV3Initializer: "0xA3C847eAb58eAa9cbc215C785c9cfBc19CDABD5f",
53
- NoOpGovernanceFactory: "0x3AD727ee0FBBb8Ee0920933FdB96F23fD56f1299",
54
- NoOpMigrator: "0x917da361072ce968acD810BbfC9B64079426ebf0",
55
- StreamableFeesLocker: "0x6ddfED58D238Ca3195E49d8ac3d4cEa6386E5C33",
56
- TokenFactory: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3",
57
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
58
- UniswapV2Migrator: "0xf6023127f6E937091D5B605680056A6D27524bad",
59
- UniswapV3Initializer: "0x9F4e56be80f08ba1A2445645EFa6d231E27b43ec",
60
- UniswapV4Initializer: "0x4B0EC16Eb40318Ca5A4346f20F04A2285C19675B",
61
- UniswapV4Migrator: "0x49F3fBB2dFF7f3d03B622e3b2a6d3F2E6fdB2a5A",
62
- UniswapV4MigratorHook: "0x53C050d3B09C80024138165520Bd7c078D9e2000"
29
+ UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad"
63
30
  },
64
31
  "143": {
65
32
  Airlock: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12",
66
33
  Bundler: "0xC99b485499f78995C6F1640dbB1413c57f8BA684",
67
- CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
68
- CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
69
34
  DopplerCreateXDeployer: "0x103004E50Bed65DFBa30dD9c264B6BdF5e529B83",
70
35
  DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
71
36
  DopplerERC20V1: "0xDB7B520bb5C3a2C5d4871198081911359f93be87",
@@ -78,53 +43,14 @@ var GENERATED_DOPPLER_DEPLOYMENTS = {
78
43
  NoOpGovernanceFactory: "0xb4deE32EB70A5E55f3D2d861F49Fb3D79f7a14d9",
79
44
  NoOpMigrator: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
80
45
  Quoter: "0x076838736F90Cd1d30dED756A3B89E576BE972F8",
81
- RehypeDopplerHook: "0x97cAD5684FB7Cc2bEd9a9b5eBfba67138F4f2503",
82
46
  RehypeDopplerHookInitializer: "0x9982538F41f2ae29ddb9d3D9307010052984FDbB",
83
47
  RehypeDopplerHookMigrator: "0x975f9d1939cf6e4A3c9D99f9d41e6411CF4dA23b",
84
- StreamableFeesLocker: "0x63f8C8F9beFaab2FaCD7Ece0b0242f78B920Ee90",
85
48
  StreamableFeesLockerV2: "0xcE3212e6536F33cD6fbFEE265224131353Ca3D47",
86
49
  TimelockFactory: "0x44610355465c1F5914C8B8ea0E7c887CC67459b2",
87
- TokenFactory: "0xaA47D2977d622DBdFD33eeF6a8276727c52EB4e5",
88
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
89
50
  TopUpDistributor: "0x435312320C0330B1999746753551CdFbD83aD814",
90
51
  UniswapV2Locker: "0x06731e30df4B0209ED19C39Ba8eD253e17b0E495",
91
- UniswapV2Migrator: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
92
52
  UniswapV2MigratorSplit: "0xD7abA5f1d80a330a6fe9E96F7bA122710E0912d3",
93
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
94
- UniswapV4Migrator: "0x44bf742e57cd8cF23ABbc8dab2c44e2a3228356E",
95
- UniswapV4MigratorHook: "0x3E4c689BBf33b37106eBC13Db8aa5BF13a25e500",
96
- UniswapV4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
97
- UniswapV4MigratorSplitHook: "0x103aB8804e66bC272840940CBa0ad34729c4e500",
98
- UniswapV4ScheduledMulticurveInitializer: "0xCe3099B2F07029b086E5e92a1573C5f5A3071783",
99
- UniswapV4ScheduledMulticurveInitializerHook: "0x580ca49389d83b019d07E17e99454f2F218e2dc0"
100
- },
101
- "1301": {
102
- Airlock: "0x0d2f38d807bfAd5C18e430516e10ab560D300caF",
103
- AirlockMultisigTestnet: "0x0abCf819FD57C9f0141628410fFC273405E44426",
104
- Bundler: "0xED344444633B965cd148F8fFCE3765938A179094",
105
- DopplerDeployer: "0x77B5F559EE9cf3bfcf2fFf5731a84332D8eECAC9",
106
- DopplerLensQuoter: "0x917da361072ce968acD810BbfC9B64079426ebf0",
107
- GovernanceFactory: "0x4225C632b62622Bd7B0A3eC9745C0a866Ff94F6F",
108
- LockableUniswapV3Initializer: "0x9dFb775dB7b005d9Dc77DA84D8b2e42C281D0344",
109
- NoOpGovernanceFactory: "0x7E5D336A6E9e453c9f02E5102CC039E015Fd8fb8",
110
- NoOpMigrator: "0x193F48A45B6025dDeD10bc4BaeEF65c833696387",
111
- StreamableFeesLocker: "0x1728E8B3282502f275949109331E070b819B38eA",
112
- TokenFactory: "0x82Ac010C67f70BACf7655cd8948a4AD92A173CAC",
113
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
114
- UniswapV2Migrator: "0x620e3fec244e913d73f2163623b62d02DB69638B",
115
- UniswapV3Initializer: "0xE0dC4012AC9C868F09c6e4b20d66ED46D6F258d0",
116
- UniswapV4Initializer: "0x70d20cd48791E527036491dc464C8Dc58351Dd93",
117
- UniswapV4Migrator: "0xb6D69eAA98E657bEEFF7ca4452768e6f707aa6b1",
118
- UniswapV4MigratorHook: "0xFB0671Ec46190b09255776d2D77744fa101Ba500",
119
- UniswapV4MulticurveInitializer: "0xac7939F1B4079d55A7fA4DFA314Ac0173A77bA40",
120
- UniswapV4MulticurveInitializerHook: "0x11b55A121a38FDab8FAF16f9f1A4f124E3f42d40",
121
- UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
122
- UniswapV4ScheduledMulticurveInitializerHook: "0xc6a562cb5CbFA29BCB1bDCCF903b8B8f2E4A2DC0"
123
- },
124
- "4326": {
125
- Airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
126
- NoOpGovernanceFactory: "0xddAE8B3eD08184682f7Bc32B74d943cEEfEab638",
127
- NoOpMigrator: "0x233A71A7bB928b1357A1Ebf454298320989Ca5B5"
53
+ UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad"
128
54
  },
129
55
  "4663": {
130
56
  Airlock: "0xeb7C034704eF8Dcd2D32324c1545f62fB4aD0862",
@@ -153,26 +79,9 @@ var GENERATED_DOPPLER_DEPLOYMENTS = {
153
79
  UniswapV2MigratorSplit: "0xB05046cEa797c993FB5b583098B1c4682e9Da333",
154
80
  UniswapV4Initializer: "0x6cce158B6D1747617fc218592B4D60B239B957ea"
155
81
  },
156
- "4801": {
157
- Airlock: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
158
- GovernanceFactory: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
159
- TokenFactory: "0x5FBe931dc4B923A7abe4c47aD68d5bF9Eda5B76D",
160
- UniswapV2Migrator: "0x8b4C7DB9121FC885689C0A50D5a1429F15AEc2a0",
161
- UniswapV3Initializer: "0x9916Ec1c1E0462F6F8f7514e414F06bf001Ac82A",
162
- WETH: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12"
163
- },
164
- "6343": {
165
- Airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
166
- NoOpGovernanceFactory: "0xddAE8B3eD08184682f7Bc32B74d943cEEfEab638",
167
- NoOpMigrator: "0x233A71A7bB928b1357A1Ebf454298320989Ca5B5"
168
- },
169
82
  "8453": {
170
83
  Airlock: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12",
171
84
  Bundler: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
172
- CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
173
- CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
174
- DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178",
175
- DecayMulticurveInitializerHook: "0xbB7784A4d481184283Ed89619A3e3ed143e1Adc0",
176
85
  DN404Factory: "0x37A9Fa204a4d3A429FDED7e3469ab076C854Bc9d",
177
86
  DopplerCreateXDeployer: "0x103004E50Bed65DFBa30dD9c264B6BdF5e529B83",
178
87
  DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
@@ -187,77 +96,19 @@ var GENERATED_DOPPLER_DEPLOYMENTS = {
187
96
  NoOpGovernanceFactory: "0xe7dfbd5b0A2C3B4464653A9beCdc489229eF090E",
188
97
  NoOpMigrator: "0x6ddfED58D238Ca3195E49d8ac3d4cEa6386E5C33",
189
98
  Quoter: "0x076838736F90Cd1d30dED756A3B89E576BE972F8",
190
- RehypeDopplerHook: "0x3Ec4798A9B11e8243A8Db99687f7A23597B96623",
191
99
  RehypeDopplerHookInitializer: "0x9982538F41f2ae29ddb9d3D9307010052984FDbB",
192
100
  RehypeDopplerHookMigrator: "0x975f9d1939cf6e4A3c9D99f9d41e6411CF4dA23b",
193
- StreamableFeesLocker: "0x0A00775D71a42cd33D62780003035e7F5b47bD3A",
194
101
  StreamableFeesLockerV2: "0xcE3212e6536F33cD6fbFEE265224131353Ca3D47",
195
102
  TimelockFactory: "0xa636bD5F9179E80e9EdB371Ed90956fA5ebdCB33",
196
- TokenFactory: "0x4225C632b62622Bd7B0A3eC9745C0a866Ff94F6F",
197
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
198
103
  TopUpDistributor: "0x435312320C0330B1999746753551CdFbD83aD814",
199
104
  UniswapV2Locker: "0x06731e30df4B0209ED19C39Ba8eD253e17b0E495",
200
- UniswapV2Migrator: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
201
105
  UniswapV2MigratorSplit: "0xD7abA5f1d80a330a6fe9E96F7bA122710E0912d3",
202
- UniswapV3Initializer: "0xaA47D2977d622DBdFD33eeF6a8276727c52EB4e5",
203
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
204
- UniswapV4Migrator: "0xd3B4cF7FD24381e90A4F012fC6c5976b87B9B3cE",
205
- UniswapV4MigratorHook: "0xD6FECFF347c6203A41874e8D77dE669B54e7A500",
206
- UniswapV4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
207
- UniswapV4MigratorSplitHook: "0x103aB8804e66bC272840940CBa0ad34729c4e500",
208
- UniswapV4MulticurveInitializer: "0x65dE470Da664A5be139A5D812bE5FDa0d76CC951",
209
- UniswapV4MulticurveInitializerHook: "0x892D3C2B4ABEAAF67d52A7B29783E2161B7CaD40",
210
- UniswapV4ScheduledMulticurveInitializer: "0xA36715dA46Ddf4A769f3290f49AF58bF8132ED8E",
211
- UniswapV4ScheduledMulticurveInitializerHook: "0x3e342a06f9592459D75721d6956B570F02eF2Dc0"
212
- },
213
- "10143": {
214
- Airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
215
- AirlockMultisigTestnet: "0x0abCf819FD57C9f0141628410fFC273405E44426",
216
- Bundler: "0xf6023127f6E937091D5B605680056A6D27524bad",
217
- DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
218
- DopplerLensQuoter: "0x2F2BAcd46d3F5c9EE052Ab392b73711dB89129DB",
219
- GovernanceFactory: "0x014E1c0bd34f3B10546E554CB33B3293fECDD056",
220
- LockableUniswapV3Initializer: "0x99C94B9Df930E1E21a4E4a2c105dBff21bF5c5aE",
221
- NoOpGovernanceFactory: "0x094D926A969B3024ca46D2186BF13FD5CDBA9CE2",
222
- NoOpMigrator: "0x5CadB034267751a364dDD4d321C99E07A307f915",
223
- StreamableFeesLocker: "0x0d2f38d807bfAd5C18e430516e10ab560D300caF",
224
- TimelockFactory: "0xB544F6fFF61F601F638C3930F6Aec4bbD7DA42b9",
225
- TokenFactory: "0x8AF018e28c273826e6b2d5a99e81c8fB63729b07",
226
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
227
- UniswapV2Locker: "0xfF3e891F2C1389eF638F9b0576003590aeEe1844",
228
- UniswapV2Migrator: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3",
229
- UniswapV3Initializer: "0x9F4e56be80f08ba1A2445645EFa6d231E27b43ec",
230
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
231
- UniswapV4Migrator: "0x4B0EC16Eb40318Ca5A4346f20F04A2285C19675B",
232
- UniswapV4MigratorHook: "0x76E1f507592d9856B48482c599732d129eD6a500",
233
- UniswapV4MulticurveInitializer: "0xA3C847eAb58eAa9cbc215C785c9cfBc19CDABD5f",
234
- UniswapV4MulticurveInitializerHook: "0xFaF16d11737E6552156DD328cD26C530e1da2D40",
235
- WETH: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12"
236
- },
237
- "57073": {
238
- Airlock: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12",
239
- Bundler: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
240
- DopplerDeployer: "0xa82c66b6ddEb92089015C3565E05B5c9750b2d4B",
241
- DopplerLensQuoter: "0x8AF018e28c273826e6b2d5a99e81c8fB63729b07",
242
- GovernanceFactory: "0xb4deE32EB70A5E55f3D2d861F49Fb3D79f7a14d9",
243
- TokenFactory: "0xFAafdE6a5b658684cC5eb0C5c2c755B00A246F45",
244
- UniswapV2Migrator: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
245
- UniswapV3Initializer: "0xaA47D2977d622DBdFD33eeF6a8276727c52EB4e5",
246
- UniswapV4Initializer: "0x014E1c0bd34f3B10546E554CB33B3293fECDD056"
106
+ UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad"
247
107
  },
248
108
  "84532": {
249
109
  Airlock: "0x3411306Ce66c9469BFF1535BA955503c4Bde1C6e",
250
110
  AirlockMultisigTestnet: "0x0abCf819FD57C9f0141628410fFC273405E44426",
251
- BasicMultisig: "0x6f645FA08B7eadAD620CEC85634204b1d7A46DC2",
252
111
  Bundler: "0x69DB7c20cDdA49Bed2bFb21e16Fa218330C50661",
253
- CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
254
- CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
255
- CloneERC20: "0xE7F1Cc50CCa68975eD6E56Ee4b0Aaf171D02732A",
256
- CloneERC20Factory: "0xbf4Ca4D527c9760A884df31292f72E9AcA503045",
257
- CloneERC20Votes: "0x52831E40151a79FE2e74549b0974d44A10Ac30aD",
258
- CloneERC20VotesFactory: "0x9a497a9fB78e49984B9d260abA1F4AD6321D4D92",
259
- DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178",
260
- DecayMulticurveInitializerHook: "0xbB7784A4d481184283Ed89619A3e3ed143e1Adc0",
261
112
  DN404Factory: "0x98b0Aa2e0f134dbB3eb157b5646D387E6D55243a",
262
113
  DopplerCreateXDeployer: "0x0000000000f13Ab5b685F03A412A26719aB6bE60",
263
114
  DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
@@ -269,75 +120,17 @@ var GENERATED_DOPPLER_DEPLOYMENTS = {
269
120
  GovernanceFactory: "0x9dBFaaDC8c0cB2c34bA698DD9426555336992e20",
270
121
  LaunchpadGovernanceFactory: "0x0902e7C7207df8ed6303Aef4382bcab181b5fBFA",
271
122
  LockableUniswapV3Initializer: "0x16AdA5Be50C3c2D94Af5fEae6b539C40A78Ad53c",
272
- MulticurveLibrary: "0x32238a39ba5aF060EFbfAda59979B639E0945fE0",
273
123
  NoOpGovernanceFactory: "0x7bD798fafC99A3b17E261F8308A8C11B56935ea1",
274
124
  NoOpMigrator: "0xF11066abbd329ac4bBA39455340539322C222eb0",
275
125
  Quoter: "0x23C94d575C3e116fFDd7D5fbb50b7cA4972EdA83",
276
- RehypeDopplerHook: "0x3Ec4798A9B11e8243A8Db99687f7A23597B96623",
277
126
  RehypeDopplerHookInitializer: "0x78C79C95eacEb2D08f7a55cc0D31012f8aF510c3",
278
127
  RehypeDopplerHookMigrator: "0x9349E5A3e6458aa65E2fB7ED67e9aD08Ae7F660D",
279
- StreamableFeesLocker: "0x3345E557c5C0b474bE1eb4693264008B8562Aa9c",
280
128
  StreamableFeesLockerV2: "0xcE3212e6536F33cD6fbFEE265224131353Ca3D47",
281
- TeamGovernanceFactory: "0x8aF3001ED75F86f4Dd910577ECa9C5dB7CEa765c",
282
129
  TimelockFactory: "0x80F42ECCc91177D39E20f1A88A54D231c1b086a2",
283
- TokenFactory: "0x9D8fd79B2a59c5d91ccBd79c3AEb4de56451Bb02",
284
- TokenFactory80: "0xf0B5141dD9096254B2ca624dff26024f46087229",
285
130
  TopUpDistributor: "0x435312320C0330B1999746753551CdFbD83aD814",
286
131
  UniswapV2Locker: "0x06731e30df4B0209ED19C39Ba8eD253e17b0E495",
287
- UniswapV2Migrator: "0x04a898f3722c38F9Def707bD17DC78920EFA977C",
288
132
  UniswapV2MigratorSplit: "0xD7abA5f1d80a330a6fe9E96F7bA122710E0912d3",
289
- UniswapV3Initializer: "0x4C3062B9ccFdbCB10353F57C1B59a29d4c5CFa47",
290
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
291
- UniswapV4Migrator: "0xEEe0eCCb54398ce371CAACBCEf076d3Ed597DDb3",
292
- UniswapV4MigratorHook: "0x127cAAAd598Ffa97577940b0a5c3b6150019E500",
293
- UniswapV4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
294
- UniswapV4MigratorSplitHook: "0x103aB8804e66bC272840940CBa0ad34729c4e500",
295
- UniswapV4MulticurveInitializer: "0x1718405E58c61425cDc0083262bC9f72198F5232",
296
- UniswapV4MulticurveInitializerHook: "0x6a1061FC558dDe1E6fD0eFd641b370d435b56d40",
297
- UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
298
- UniswapV4ScheduledMulticurveInitializerHook: "0xc6a562cb5CbFA29BCB1bDCCF903b8B8f2E4A2DC0",
299
- WETH: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12"
300
- },
301
- "763373": {
302
- Airlock: "0x5CadB034267751a364dDD4d321C99E07A307f915",
303
- GovernanceFactory: "0x9F4e56be80f08ba1A2445645EFa6d231E27b43ec",
304
- TokenFactory: "0x77EbfBAE15AD200758E9E2E61597c0B07d731254",
305
- UniswapV2Migrator: "0x99C94B9Df930E1E21a4E4a2c105dBff21bF5c5aE",
306
- UniswapV3Initializer: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3",
307
- WETH: "0xa82c66b6ddEb92089015C3565E05B5c9750b2d4B"
308
- },
309
- "11155111": {
310
- Airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
311
- AirlockMultisigTestnet: "0x0abCf819FD57C9f0141628410fFC273405E44426",
312
- CloneDERC20VotesV2: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
313
- CloneDERC20VotesV2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
314
- CloneERC20: "0x215b2cE3Dd8D110394e94A868580D61a77aDEc4A",
315
- CloneERC20Factory: "0xe7Df2A4520C26a2D4Dedb3a7585BFBcd30eABA6e",
316
- CloneERC20Votes: "0xA8d0E8036D3fAE21C7Af075ad41942Bc1f807CDF",
317
- CloneERC20VotesFactory: "0x5A92bFfbc01ea0396A9c7D4154d36d4EAF2e483E",
318
- DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178",
319
- DecayMulticurveInitializerHook: "0xbB7784A4d481184283Ed89619A3e3ed143e1Adc0",
320
- DopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
321
- DopplerHookInitializer: "0xBDF938149ac6a781F94FAa0ed45E6A0e984c6544",
322
- DopplerHookMigrator: "0x1E40b0875DDa35f41E15cFB475403859B8c860c4",
323
- GovernanceFactory: "0x9F309D79BEe3E8b2f56FaCF74b7195Df176c8F61",
324
- NoOpGovernanceFactory: "0xddAE8B3eD08184682f7Bc32B74d943cEEfEab638",
325
- NoOpMigrator: "0x233A71A7bB928b1357A1Ebf454298320989Ca5B5",
326
- Quoter: "0xFD44B773B21AC485C95Db1Ff38554b7699f8C042",
327
- RehypeDopplerHook: "0x3Ec4798A9B11e8243A8Db99687f7A23597B96623",
328
- RehypeDopplerHookInitializer: "0xBF4195ab0B03e1eB3345dd1e83BeD7650b1ed123",
329
- RehypeDopplerHookMigrator: "0xea95DfdF69B90c65C827070852F7039D6aF6Dd7b",
330
- StreamableFeesLocker: "0xe24FC2F7191e850e2D4514aBb4d39305b1871eC6",
331
- StreamableFeesLockerV2: "0xcE3212e6536F33cD6fbFEE265224131353Ca3D47",
332
- TimelockFactory: "0x9fd40af2baAfAF03513f091444e821c0d5b06ea0",
333
- TopUpDistributor: "0x435312320C0330B1999746753551CdFbD83aD814",
334
- UniswapV2Locker: "0xA366D94eDA7abEc16bfa5619A855a6208bE3aEE9",
335
- UniswapV2Migrator: "0x765875bff87614cE0581ee73B9fa663B71F3DfF2",
336
- UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
337
- UniswapV4Migrator: "0x0820A4D0173C17Ece283f7bDaAF0f8876eB205f5",
338
- UniswapV4MigratorHook: "0x4053D4fa966cbdCC20Ec62070aC8814De8bEE500",
339
- UniswapV4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
340
- UniswapV4ScheduledMulticurveInitializerHook: "0xc6a562cb5CbFA29BCB1bDCCF903b8B8f2E4A2DC0"
133
+ UniswapV4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad"
341
134
  }
342
135
  };
343
136
  var WAD = 10n ** 18n;
@@ -484,15 +277,9 @@ function getRehypeDopplerHookInitializerAddress(chainId) {
484
277
  var ADDRESSES = {
485
278
  [CHAIN_IDS.MAINNET]: {
486
279
  airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].Airlock,
487
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].CloneERC20Factory,
488
- derc20V2Factory: getGeneratedAddress(
489
- CHAIN_IDS.MAINNET,
490
- "CloneDERC20VotesV2Factory"
491
- ),
492
- derc20V2Implementation: getGeneratedAddress(
493
- CHAIN_IDS.MAINNET,
494
- "CloneDERC20VotesV2"
495
- ),
280
+ tokenFactory: "0xe7Df2A4520C26a2D4Dedb3a7585BFBcd30eABA6e",
281
+ derc20V2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
282
+ derc20V2Implementation: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
496
283
  dopplerERC20V1Factory: getGeneratedAddress(
497
284
  CHAIN_IDS.MAINNET,
498
285
  "DopplerERC20V1Factory"
@@ -505,7 +292,7 @@ var ADDRESSES = {
505
292
  v3Quoter: "0x61fFE014bA17989E743c5F6cB21bF9697530B21e",
506
293
  lockableV3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].LockableUniswapV3Initializer,
507
294
  v4Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV4Initializer,
508
- v4ScheduledMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV4ScheduledMulticurveInitializer,
295
+ v4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
509
296
  dopplerHookInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].DopplerHookInitializer,
510
297
  rehypeDopplerHookInitializer: getRehypeDopplerHookInitializerAddress(
511
298
  CHAIN_IDS.MAINNET
@@ -516,18 +303,18 @@ var ADDRESSES = {
516
303
  dopplerLens: ZERO_ADDRESS,
517
304
  dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].DopplerDeployer,
518
305
  poolManager: "0x000000000004444c5dc75cB358380D2e3dE08A90",
519
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV2Migrator,
306
+ v2Migrator: "0x765875bff87614cE0581ee73B9fa663B71F3DfF2",
520
307
  v2MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV2MigratorSplit,
521
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV4Migrator,
522
- v4MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV4MigratorSplit,
523
- v4MigratorHook: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].UniswapV4MigratorHook,
308
+ v4Migrator: "0x0820A4D0173C17Ece283f7bDaAF0f8876eB205f5",
309
+ v4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
310
+ v4MigratorHook: "0x4053D4fa966cbdCC20Ec62070aC8814De8bEE500",
524
311
  dopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].DopplerHookMigrator,
525
312
  rehypeDopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].RehypeDopplerHookMigrator,
526
313
  noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].NoOpMigrator,
527
314
  governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].GovernanceFactory,
528
315
  noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].NoOpGovernanceFactory,
529
316
  launchpadGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].LaunchpadGovernanceFactory,
530
- streamableFeesLocker: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MAINNET].StreamableFeesLocker,
317
+ streamableFeesLocker: "0xe24FC2F7191e850e2D4514aBb4d39305b1871eC6",
531
318
  streamableFeesLockerV2: getGeneratedAddress(
532
319
  CHAIN_IDS.MAINNET,
533
320
  "StreamableFeesLockerV2"
@@ -542,38 +329,28 @@ var ADDRESSES = {
542
329
  uniswapV4Quoter: "0x52f0e24d1c21c8a0cb1e5a5dd6198556bd9e1203"
543
330
  },
544
331
  [CHAIN_IDS.ETH_SEPOLIA]: {
545
- airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].Airlock,
546
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].CloneERC20Factory,
547
- derc20V2Factory: getGeneratedAddress(
548
- CHAIN_IDS.ETH_SEPOLIA,
549
- "CloneDERC20VotesV2Factory"
550
- ),
551
- derc20V2Implementation: getGeneratedAddress(
552
- CHAIN_IDS.ETH_SEPOLIA,
553
- "CloneDERC20VotesV2"
554
- ),
332
+ airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
333
+ tokenFactory: "0xe7Df2A4520C26a2D4Dedb3a7585BFBcd30eABA6e",
334
+ derc20V2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
335
+ derc20V2Implementation: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
555
336
  v3Initializer: ZERO_ADDRESS,
556
337
  v3Quoter: ZERO_ADDRESS,
557
- v4Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].UniswapV4Initializer,
558
- v4ScheduledMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].UniswapV4ScheduledMulticurveInitializer,
559
- dopplerHookInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].DopplerHookInitializer,
560
- rehypeDopplerHookInitializer: getRehypeDopplerHookInitializerAddress(
561
- CHAIN_IDS.ETH_SEPOLIA
562
- ),
563
- rehypeDopplerHook: getRehypeDopplerHookInitializerAddress(
564
- CHAIN_IDS.ETH_SEPOLIA
565
- ),
338
+ v4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
339
+ v4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
340
+ dopplerHookInitializer: "0xBDF938149ac6a781F94FAa0ed45E6A0e984c6544",
341
+ rehypeDopplerHookInitializer: "0xBF4195ab0B03e1eB3345dd1e83BeD7650b1ed123",
342
+ rehypeDopplerHook: "0xBF4195ab0B03e1eB3345dd1e83BeD7650b1ed123",
566
343
  dopplerLens: ZERO_ADDRESS,
567
- dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].DopplerDeployer,
344
+ dopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
568
345
  poolManager: "0xE03A1074c86CFeDd5C142C4F04F1a1536e203543",
569
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].UniswapV2Migrator,
570
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].UniswapV4Migrator,
571
- dopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].DopplerHookMigrator,
572
- rehypeDopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].RehypeDopplerHookMigrator,
573
- noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].NoOpMigrator,
346
+ v2Migrator: "0x765875bff87614cE0581ee73B9fa663B71F3DfF2",
347
+ v4Migrator: "0x0820A4D0173C17Ece283f7bDaAF0f8876eB205f5",
348
+ dopplerHookMigrator: "0x1E40b0875DDa35f41E15cFB475403859B8c860c4",
349
+ rehypeDopplerHookMigrator: "0xea95DfdF69B90c65C827070852F7039D6aF6Dd7b",
350
+ noOpMigrator: "0x233A71A7bB928b1357A1Ebf454298320989Ca5B5",
574
351
  governanceFactory: ZERO_ADDRESS,
575
- noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].NoOpGovernanceFactory,
576
- streamableFeesLocker: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.ETH_SEPOLIA].StreamableFeesLocker,
352
+ noOpGovernanceFactory: "0xddAE8B3eD08184682f7Bc32B74d943cEEfEab638",
353
+ streamableFeesLocker: "0xe24FC2F7191e850e2D4514aBb4d39305b1871eC6",
577
354
  universalRouter: "0x3A9D48AB9751398BbFa63ad67599Bb04e4BdF98b",
578
355
  permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
579
356
  weth: "0xfFf9976782d46CC05630D1f6eBAb18b2324d6B14",
@@ -581,15 +358,9 @@ var ADDRESSES = {
581
358
  },
582
359
  [CHAIN_IDS.BASE]: {
583
360
  airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].Airlock,
584
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].TokenFactory80,
585
- derc20V2Factory: getGeneratedAddress(
586
- CHAIN_IDS.BASE,
587
- "CloneDERC20VotesV2Factory"
588
- ),
589
- derc20V2Implementation: getGeneratedAddress(
590
- CHAIN_IDS.BASE,
591
- "CloneDERC20VotesV2"
592
- ),
361
+ tokenFactory: "0xf0B5141dD9096254B2ca624dff26024f46087229",
362
+ derc20V2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
363
+ derc20V2Implementation: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
593
364
  dopplerERC20V1Factory: getGeneratedAddress(
594
365
  CHAIN_IDS.BASE,
595
366
  "DopplerERC20V1Factory"
@@ -599,15 +370,15 @@ var ADDRESSES = {
599
370
  "DopplerERC20V1"
600
371
  ),
601
372
  doppler404Factory: getGeneratedAddress(CHAIN_IDS.BASE, "DN404Factory"),
602
- v3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV3Initializer,
373
+ v3Initializer: "0xaA47D2977d622DBdFD33eeF6a8276727c52EB4e5",
603
374
  v3Quoter: "0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a",
604
375
  lockableV3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].LockableUniswapV3Initializer,
605
376
  v4Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4Initializer,
606
- v4MulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4MulticurveInitializer,
377
+ v4MulticurveInitializer: "0x65dE470Da664A5be139A5D812bE5FDa0d76CC951",
607
378
  // From Doppler multicurve deployments (Base mainnet)
608
- v4ScheduledMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4ScheduledMulticurveInitializer,
379
+ v4ScheduledMulticurveInitializer: "0xA36715dA46Ddf4A769f3290f49AF58bF8132ED8E",
609
380
  // From Doppler scheduled multicurve deployments (Base mainnet)
610
- v4DecayMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].DecayMulticurveInitializer,
381
+ v4DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178",
611
382
  // From Doppler decay multicurve deployments (Base mainnet)
612
383
  // Opening auction slots reserved for phase-1 lifecycle support (not deployed on Base yet)
613
384
  openingAuctionInitializer: ZERO_ADDRESS,
@@ -620,18 +391,18 @@ var ADDRESSES = {
620
391
  ),
621
392
  rehypeDopplerHook: getRehypeDopplerHookInitializerAddress(CHAIN_IDS.BASE),
622
393
  dopplerHookInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].DopplerHookInitializer,
623
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV2Migrator,
394
+ v2Migrator: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
624
395
  v2MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV2MigratorSplit,
625
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4Migrator,
626
- v4MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4MigratorSplit,
627
- v4MigratorHook: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].UniswapV4MigratorHook,
396
+ v4Migrator: "0xd3B4cF7FD24381e90A4F012fC6c5976b87B9B3cE",
397
+ v4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
398
+ v4MigratorHook: "0xD6FECFF347c6203A41874e8D77dE669B54e7A500",
628
399
  dopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].DopplerHookMigrator,
629
400
  rehypeDopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].RehypeDopplerHookMigrator,
630
401
  noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].NoOpMigrator,
631
402
  governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].GovernanceFactory,
632
403
  noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].NoOpGovernanceFactory,
633
404
  launchpadGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].LaunchpadGovernanceFactory,
634
- streamableFeesLocker: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE].StreamableFeesLocker,
405
+ streamableFeesLocker: "0x0A00775D71a42cd33D62780003035e7F5b47bD3A",
635
406
  streamableFeesLockerV2: getGeneratedAddress(
636
407
  CHAIN_IDS.BASE,
637
408
  "StreamableFeesLockerV2"
@@ -648,15 +419,9 @@ var ADDRESSES = {
648
419
  },
649
420
  [CHAIN_IDS.BASE_SEPOLIA]: {
650
421
  airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].Airlock,
651
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].TokenFactory80,
652
- derc20V2Factory: getGeneratedAddress(
653
- CHAIN_IDS.BASE_SEPOLIA,
654
- "CloneDERC20VotesV2Factory"
655
- ),
656
- derc20V2Implementation: getGeneratedAddress(
657
- CHAIN_IDS.BASE_SEPOLIA,
658
- "CloneDERC20VotesV2"
659
- ),
422
+ tokenFactory: "0xf0B5141dD9096254B2ca624dff26024f46087229",
423
+ derc20V2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
424
+ derc20V2Implementation: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
660
425
  dopplerERC20V1Factory: getGeneratedAddress(
661
426
  CHAIN_IDS.BASE_SEPOLIA,
662
427
  "DopplerERC20V1Factory"
@@ -666,14 +431,14 @@ var ADDRESSES = {
666
431
  "DopplerERC20V1"
667
432
  ),
668
433
  doppler404Factory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].DN404Factory,
669
- v3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV3Initializer,
434
+ v3Initializer: "0x4C3062B9ccFdbCB10353F57C1B59a29d4c5CFa47",
670
435
  v3Quoter: "0xC5290058841028F1614F3A6F0F5816cAd0df5E27",
671
436
  lockableV3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].LockableUniswapV3Initializer,
672
437
  v4Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4Initializer,
673
- v4MulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4MulticurveInitializer,
674
- v4ScheduledMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4ScheduledMulticurveInitializer,
438
+ v4MulticurveInitializer: "0x1718405E58c61425cDc0083262bC9f72198F5232",
439
+ v4ScheduledMulticurveInitializer: "0xF84378C9F39e0FF267f3101c88773359c5393876",
675
440
  // From Doppler scheduled multicurve deployments (Base Sepolia)
676
- v4DecayMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].DecayMulticurveInitializer,
441
+ v4DecayMulticurveInitializer: "0xD59cE43E53D69F190E15d9822Fb4540dCcc91178",
677
442
  // From Doppler decay multicurve deployments (Base Sepolia)
678
443
  // Opening Auction contracts (deployed Feb 2025)
679
444
  openingAuctionInitializer: "0x3dCd35945Dc86a9FaA80846B06CB4676961d0AEa",
@@ -688,18 +453,18 @@ var ADDRESSES = {
688
453
  dopplerLens: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].DopplerLensQuoter,
689
454
  dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].DopplerDeployer,
690
455
  poolManager: "0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408",
691
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV2Migrator,
456
+ v2Migrator: "0x04a898f3722c38F9Def707bD17DC78920EFA977C",
692
457
  v2MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV2MigratorSplit,
693
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4Migrator,
694
- v4MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4MigratorSplit,
458
+ v4Migrator: "0xEEe0eCCb54398ce371CAACBCEf076d3Ed597DDb3",
459
+ v4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
695
460
  dopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].DopplerHookMigrator,
696
461
  rehypeDopplerHookMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].RehypeDopplerHookMigrator,
697
- v4MigratorHook: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].UniswapV4MigratorHook,
462
+ v4MigratorHook: "0x127cAAAd598Ffa97577940b0a5c3b6150019E500",
698
463
  noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].NoOpMigrator,
699
464
  governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].GovernanceFactory,
700
465
  noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].NoOpGovernanceFactory,
701
466
  launchpadGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].LaunchpadGovernanceFactory,
702
- streamableFeesLocker: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.BASE_SEPOLIA].StreamableFeesLocker,
467
+ streamableFeesLocker: "0x3345E557c5C0b474bE1eb4693264008B8562Aa9c",
703
468
  streamableFeesLockerV2: getGeneratedAddress(
704
469
  CHAIN_IDS.BASE_SEPOLIA,
705
470
  "StreamableFeesLockerV2"
@@ -715,8 +480,8 @@ var ADDRESSES = {
715
480
  uniswapV4Quoter: "0x4A6513c898fe1B2d0E78d3b0e0A4a151589B1cBa"
716
481
  },
717
482
  [CHAIN_IDS.INK]: {
718
- airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].Airlock,
719
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].TokenFactory,
483
+ airlock: "0x660eAaEdEBc968f8f3694354FA8EC0b4c5Ba8D12",
484
+ tokenFactory: "0xFAafdE6a5b658684cC5eb0C5c2c755B00A246F45",
720
485
  derc20V2Factory: getGeneratedAddress(
721
486
  CHAIN_IDS.INK,
722
487
  "CloneDERC20VotesV2Factory"
@@ -725,15 +490,15 @@ var ADDRESSES = {
725
490
  CHAIN_IDS.INK,
726
491
  "CloneDERC20VotesV2"
727
492
  ),
728
- v3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].UniswapV3Initializer,
493
+ v3Initializer: "0xaA47D2977d622DBdFD33eeF6a8276727c52EB4e5",
729
494
  v3Quoter: "0x96b572D2d880cf2Fa2563651BD23ADE6f5516652",
730
495
  v4Initializer: "0xC99b485499f78995C6F1640dbB1413c57f8BA684",
731
496
  dopplerLens: "0x3972c00f7ed4885e145823eb7c655375d275a1c5",
732
- dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].DopplerDeployer,
497
+ dopplerDeployer: "0xa82c66b6ddEb92089015C3565E05B5c9750b2d4B",
733
498
  poolManager: "0x360e68faccca8ca495c1b759fd9eee466db9fb32",
734
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].UniswapV2Migrator,
499
+ v2Migrator: "0x5F3bA43D44375286296Cb85F1EA2EBfa25dde731",
735
500
  v4Migrator: ZERO_ADDRESS,
736
- governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].GovernanceFactory,
501
+ governanceFactory: "0xb4deE32EB70A5E55f3D2d861F49Fb3D79f7a14d9",
737
502
  noOpGovernanceFactory: ZERO_ADDRESS,
738
503
  // Not yet deployed
739
504
  streamableFeesLocker: ZERO_ADDRESS,
@@ -741,7 +506,7 @@ var ADDRESSES = {
741
506
  universalRouter: "0x112908dac86e20e7241b0927479ea3bf935d1fa0",
742
507
  univ2Router02: "0xB3FB126ACDd5AdCA2f50Ac644a7a2303745f18b4",
743
508
  permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
744
- bundler: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.INK].Bundler,
509
+ bundler: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
745
510
  weth: "0x4200000000000000000000000000000000000006",
746
511
  uniswapV4Quoter: "0x3972c00f7ed4885e145823eb7c655375d275a1c5"
747
512
  },
@@ -795,8 +560,8 @@ var ADDRESSES = {
795
560
  uniswapV4Quoter: "0x8dc178efb8111bb0973dd9d722ebeff267c98f94"
796
561
  },
797
562
  [CHAIN_IDS.UNICHAIN]: {
798
- airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].Airlock,
799
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].TokenFactory,
563
+ airlock: "0x77EbfBAE15AD200758E9E2E61597c0B07d731254",
564
+ tokenFactory: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3",
800
565
  derc20V2Factory: getGeneratedAddress(
801
566
  CHAIN_IDS.UNICHAIN,
802
567
  "CloneDERC20VotesV2Factory"
@@ -805,30 +570,30 @@ var ADDRESSES = {
805
570
  CHAIN_IDS.UNICHAIN,
806
571
  "CloneDERC20VotesV2"
807
572
  ),
808
- v3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].UniswapV3Initializer,
573
+ v3Initializer: "0x9F4e56be80f08ba1A2445645EFa6d231E27b43ec",
809
574
  v3Quoter: "0x385A5cf5F83e99f7BB2852b6A19C3538b9FA7658",
810
575
  v4Initializer: "0x2F2BAcd46d3F5c9EE052Ab392b73711dB89129DB",
811
576
  dopplerLens: "0x333e3c607b141b18ff6de9f258db6e77fe7491e0",
812
577
  dopplerDeployer: "0x06FEFD02F0b6d9f57F52cfacFc113665Dfa20F0f",
813
578
  poolManager: "0x1f98400000000000000000000000000000000004",
814
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].UniswapV2Migrator,
815
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].UniswapV4Migrator,
816
- noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].NoOpMigrator,
817
- governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].GovernanceFactory,
818
- noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].NoOpGovernanceFactory,
579
+ v2Migrator: "0xf6023127f6E937091D5B605680056A6D27524bad",
580
+ v4Migrator: "0x49F3fBB2dFF7f3d03B622e3b2a6d3F2E6fdB2a5A",
581
+ noOpMigrator: "0x917da361072ce968acD810BbfC9B64079426ebf0",
582
+ governanceFactory: "0x99C94B9Df930E1E21a4E4a2c105dBff21bF5c5aE",
583
+ noOpGovernanceFactory: "0x3AD727ee0FBBb8Ee0920933FdB96F23fD56f1299",
819
584
  streamableFeesLocker: ZERO_ADDRESS,
820
585
  // Not yet deployed
821
586
  universalRouter: "0xef740bf23acae26f6492b10de645d6b98dc8eaf3",
822
587
  univ2Router02: "0x284f11109359a7e1306c3e447ef14d38400063ff",
823
588
  uniswapV2Factory: "0x1f98400000000000000000000000000000000002",
824
589
  permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
825
- bundler: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN].Bundler,
590
+ bundler: "0x91231cDdD8d6C86Df602070a3081478e074b97b7",
826
591
  weth: "0x4200000000000000000000000000000000000006",
827
592
  uniswapV4Quoter: "0x333e3c607b141b18ff6de9f258db6e77fe7491e0"
828
593
  },
829
594
  [CHAIN_IDS.UNICHAIN_SEPOLIA]: {
830
595
  airlock: "0x651ab94B4777e2e4cdf96082d90C65bd947b73A4",
831
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN_SEPOLIA].TokenFactory,
596
+ tokenFactory: "0x82Ac010C67f70BACf7655cd8948a4AD92A173CAC",
832
597
  derc20V2Factory: getGeneratedAddress(
833
598
  CHAIN_IDS.UNICHAIN_SEPOLIA,
834
599
  "CloneDERC20VotesV2Factory"
@@ -843,11 +608,11 @@ var ADDRESSES = {
843
608
  dopplerLens: "0x56dcd40a3f2d466f48e7f48bdbe5cc9b92ae4472",
844
609
  dopplerDeployer: "0x2f2bacd46d3f5c9ee052ab392b73711db89129db",
845
610
  poolManager: "0x00B036B58a818B1BC34d502D3fE730Db729e62AC",
846
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN_SEPOLIA].UniswapV2Migrator,
847
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN_SEPOLIA].UniswapV4Migrator,
848
- noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN_SEPOLIA].NoOpMigrator,
611
+ v2Migrator: "0x620e3fec244e913d73f2163623b62d02DB69638B",
612
+ v4Migrator: "0xb6D69eAA98E657bEEFF7ca4452768e6f707aa6b1",
613
+ noOpMigrator: "0x193F48A45B6025dDeD10bc4BaeEF65c833696387",
849
614
  governanceFactory: "0x1E4332EEfAE9e4967C2D186f7b2d439D778e81cC",
850
- noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.UNICHAIN_SEPOLIA].NoOpGovernanceFactory,
615
+ noOpGovernanceFactory: "0x7E5D336A6E9e453c9f02E5102CC039E015Fd8fb8",
851
616
  streamableFeesLocker: ZERO_ADDRESS,
852
617
  // Not yet deployed
853
618
  universalRouter: "0xf70536B3bcC1bD1a972dc186A2cf84cC6da6Be5D",
@@ -858,8 +623,8 @@ var ADDRESSES = {
858
623
  uniswapV4Quoter: "0x56dcd40a3f2d466f48e7f48bdbe5cc9b92ae4472"
859
624
  },
860
625
  [CHAIN_IDS.MONAD_TESTNET]: {
861
- airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].Airlock,
862
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].TokenFactory80,
626
+ airlock: "0xDe3599a2eC440B296373a983C85C365DA55d9dFA",
627
+ tokenFactory: "0xf0B5141dD9096254B2ca624dff26024f46087229",
863
628
  derc20V2Factory: getGeneratedAddress(
864
629
  CHAIN_IDS.MONAD_TESTNET,
865
630
  "CloneDERC20VotesV2Factory"
@@ -868,38 +633,32 @@ var ADDRESSES = {
868
633
  CHAIN_IDS.MONAD_TESTNET,
869
634
  "CloneDERC20VotesV2"
870
635
  ),
871
- v3Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].UniswapV3Initializer,
636
+ v3Initializer: "0x9F4e56be80f08ba1A2445645EFa6d231E27b43ec",
872
637
  v3Quoter: ZERO_ADDRESS,
873
- v4Initializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].UniswapV4Initializer,
874
- dopplerLens: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].DopplerLensQuoter,
875
- dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].DopplerDeployer,
638
+ v4Initializer: "0x53b4c21a6Cb61D64F636ABBfa6E8E90E6558e8ad",
639
+ dopplerLens: "0x2F2BAcd46d3F5c9EE052Ab392b73711dB89129DB",
640
+ dopplerDeployer: "0xb35469ee64A87Afd19B31615094fE3962d73e421",
876
641
  poolManager: "0xe93882f395B0b24180855c68Ab19B2d78573ceBc",
877
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].UniswapV2Migrator,
642
+ v2Migrator: "0x43d0D97EC9241A8F05A264f94B82A1d2E600f2B3",
878
643
  v4Migrator: "0xBEd386a1Fc62B6598c9b8d2BF634471B6Fe75EB7",
879
- noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].NoOpMigrator,
880
- governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].GovernanceFactory,
881
- noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].NoOpGovernanceFactory,
644
+ noOpMigrator: "0x5CadB034267751a364dDD4d321C99E07A307f915",
645
+ governanceFactory: "0x014E1c0bd34f3B10546E554CB33B3293fECDD056",
646
+ noOpGovernanceFactory: "0x094D926A969B3024ca46D2186BF13FD5CDBA9CE2",
882
647
  streamableFeesLocker: "0x91231cDdD8d6C86Df602070a3081478e074b97b7",
883
648
  // Not yet deployed
884
649
  universalRouter: ZERO_ADDRESS,
885
650
  univ2Router02: ZERO_ADDRESS,
886
651
  permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
887
- bundler: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_TESTNET].Bundler,
652
+ bundler: "0xf6023127f6E937091D5B605680056A6D27524bad",
888
653
  weth: ZERO_ADDRESS,
889
654
  // TODO: Get Monad Testnet weth
890
655
  uniswapV4Quoter: ZERO_ADDRESS
891
656
  },
892
657
  [CHAIN_IDS.MONAD_MAINNET]: {
893
658
  airlock: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].Airlock,
894
- tokenFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].TokenFactory80,
895
- derc20V2Factory: getGeneratedAddress(
896
- CHAIN_IDS.MONAD_MAINNET,
897
- "CloneDERC20VotesV2Factory"
898
- ),
899
- derc20V2Implementation: getGeneratedAddress(
900
- CHAIN_IDS.MONAD_MAINNET,
901
- "CloneDERC20VotesV2"
902
- ),
659
+ tokenFactory: "0xf0B5141dD9096254B2ca624dff26024f46087229",
660
+ derc20V2Factory: "0x16F5ACB64F4FA17296E942C51d3395aDC318f9e1",
661
+ derc20V2Implementation: "0x4BBfed1c27CDE12eF6638251D81ab4e3be7556b7",
903
662
  dopplerERC20V1Factory: getGeneratedAddress(
904
663
  CHAIN_IDS.MONAD_MAINNET,
905
664
  "DopplerERC20V1Factory"
@@ -915,17 +674,17 @@ var ADDRESSES = {
915
674
  dopplerLens: ZERO_ADDRESS,
916
675
  dopplerDeployer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].DopplerDeployer,
917
676
  poolManager: "0x188d586ddcf52439676ca21a244753fa19f9ea8e",
918
- v2Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV2Migrator,
677
+ v2Migrator: "0x136191B46478cAB023cbC01a36160C4Aad81677a",
919
678
  v2MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV2MigratorSplit,
920
- v4Migrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV4Migrator,
921
- v4MigratorSplit: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV4MigratorSplit,
922
- v4MigratorHook: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV4MigratorHook,
679
+ v4Migrator: "0x44bf742e57cd8cF23ABbc8dab2c44e2a3228356E",
680
+ v4MigratorSplit: "0xa1b06BE4f2fC347d194240D79EDa9F40CCAd9732",
681
+ v4MigratorHook: "0x3E4c689BBf33b37106eBC13Db8aa5BF13a25e500",
923
682
  noOpMigrator: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].NoOpMigrator,
924
683
  governanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].GovernanceFactory,
925
684
  noOpGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].NoOpGovernanceFactory,
926
685
  launchpadGovernanceFactory: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].LaunchpadGovernanceFactory,
927
686
  topUpDistributor: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].TopUpDistributor,
928
- v4ScheduledMulticurveInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].UniswapV4ScheduledMulticurveInitializer,
687
+ v4ScheduledMulticurveInitializer: "0xCe3099B2F07029b086E5e92a1573C5f5A3071783",
929
688
  dopplerHookInitializer: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].DopplerHookInitializer,
930
689
  rehypeDopplerHookInitializer: getRehypeDopplerHookInitializerAddress(
931
690
  CHAIN_IDS.MONAD_MAINNET
@@ -933,7 +692,7 @@ var ADDRESSES = {
933
692
  rehypeDopplerHook: getRehypeDopplerHookInitializerAddress(
934
693
  CHAIN_IDS.MONAD_MAINNET
935
694
  ),
936
- streamableFeesLocker: GENERATED_DOPPLER_DEPLOYMENTS[CHAIN_IDS.MONAD_MAINNET].StreamableFeesLocker,
695
+ streamableFeesLocker: "0x63f8C8F9beFaab2FaCD7Ece0b0242f78B920Ee90",
937
696
  streamableFeesLockerV2: getGeneratedAddress(
938
697
  CHAIN_IDS.MONAD_MAINNET,
939
698
  "StreamableFeesLockerV2"
@@ -7662,6 +7421,173 @@ function encodeRehypeDopplerHookMigratorCalldata(params) {
7662
7421
  ]
7663
7422
  );
7664
7423
  }
7424
+ var AirlockCreateReceiptError = class extends Error {
7425
+ code;
7426
+ expected;
7427
+ actual;
7428
+ constructor(code, options = {}) {
7429
+ super(`Airlock Create receipt verification failed: ${code}`);
7430
+ this.name = "AirlockCreateReceiptError";
7431
+ this.code = code;
7432
+ this.expected = options.expected;
7433
+ this.actual = options.actual;
7434
+ }
7435
+ };
7436
+ function addressesEqual(left, right) {
7437
+ return left?.toLowerCase() === right.toLowerCase();
7438
+ }
7439
+ function decodeAirlockCreateLogs(receipt, expectedAirlock) {
7440
+ const matches = [];
7441
+ for (const log of receipt.logs) {
7442
+ if (!addressesEqual(log.address, expectedAirlock)) continue;
7443
+ try {
7444
+ const decoded = viem.decodeEventLog({
7445
+ abi: airlockAbi,
7446
+ data: log.data,
7447
+ topics: log.topics,
7448
+ eventName: "Create"
7449
+ });
7450
+ const args = decoded.args;
7451
+ matches.push({
7452
+ airlock: log.address,
7453
+ tokenAddress: args.asset,
7454
+ numeraire: args.numeraire,
7455
+ initializer: args.initializer,
7456
+ poolOrHookAddress: args.poolOrHook,
7457
+ logIndex: log.logIndex
7458
+ });
7459
+ } catch {
7460
+ }
7461
+ }
7462
+ return matches;
7463
+ }
7464
+ function parseAirlockCreateReceipt({
7465
+ receipt,
7466
+ expectedAirlock
7467
+ }) {
7468
+ const matches = decodeAirlockCreateLogs(receipt, expectedAirlock);
7469
+ if (matches.length === 0) return null;
7470
+ if (matches.length > 1) {
7471
+ throw new AirlockCreateReceiptError("MULTIPLE_CREATE_EVENTS", {
7472
+ expected: 1,
7473
+ actual: matches.length
7474
+ });
7475
+ }
7476
+ return {
7477
+ ...matches[0],
7478
+ transactionHash: receipt.transactionHash,
7479
+ blockNumber: receipt.blockNumber
7480
+ };
7481
+ }
7482
+ function assertAddressMatch(code, expected, actual) {
7483
+ if (!addressesEqual(actual, expected)) {
7484
+ throw new AirlockCreateReceiptError(code, { expected, actual });
7485
+ }
7486
+ }
7487
+ function verifyPreparedCreateReceipt({
7488
+ prepared,
7489
+ receipt
7490
+ }) {
7491
+ if (receipt.status !== "success") {
7492
+ throw new AirlockCreateReceiptError("RECEIPT_FAILED", {
7493
+ expected: "success",
7494
+ actual: receipt.status
7495
+ });
7496
+ }
7497
+ assertAddressMatch(
7498
+ "WRONG_TRANSACTION_TARGET",
7499
+ prepared.transaction.to,
7500
+ receipt.to
7501
+ );
7502
+ assertAddressMatch(
7503
+ "WRONG_TRANSACTION_SENDER",
7504
+ prepared.account,
7505
+ receipt.from
7506
+ );
7507
+ const receiptIdentity = parseAirlockCreateReceipt({
7508
+ receipt,
7509
+ expectedAirlock: prepared.airlock
7510
+ });
7511
+ if (!receiptIdentity) {
7512
+ throw new AirlockCreateReceiptError("MISSING_CREATE_EVENT", {
7513
+ expected: prepared.airlock,
7514
+ actual: null
7515
+ });
7516
+ }
7517
+ assertAddressMatch(
7518
+ "TOKEN_MISMATCH",
7519
+ prepared.prediction.tokenAddress,
7520
+ receiptIdentity.tokenAddress
7521
+ );
7522
+ assertAddressMatch(
7523
+ "NUMERAIRE_MISMATCH",
7524
+ prepared.createParams.numeraire,
7525
+ receiptIdentity.numeraire
7526
+ );
7527
+ assertAddressMatch(
7528
+ "INITIALIZER_MISMATCH",
7529
+ prepared.createParams.poolInitializer,
7530
+ receiptIdentity.initializer
7531
+ );
7532
+ assertAddressMatch(
7533
+ "POOL_OR_HOOK_MISMATCH",
7534
+ prepared.prediction.poolOrHookAddress,
7535
+ receiptIdentity.poolOrHookAddress
7536
+ );
7537
+ return {
7538
+ receiptIdentity,
7539
+ preparedIdentity: {
7540
+ chainId: prepared.chainId,
7541
+ tokenAddress: prepared.prediction.tokenAddress,
7542
+ poolOrHookAddress: prepared.prediction.poolOrHookAddress,
7543
+ governanceAddress: prepared.prediction.governanceAddress,
7544
+ timelockAddress: prepared.prediction.timelockAddress,
7545
+ migrationPoolAddress: prepared.prediction.migrationPoolAddress,
7546
+ poolKey: prepared.prediction.poolKey,
7547
+ poolId: prepared.prediction.poolId,
7548
+ tokenIsCurrency0: prepared.prediction.tokenIsCurrency0
7549
+ }
7550
+ };
7551
+ }
7552
+ async function verifyPreparedCreateExecution({
7553
+ prepared,
7554
+ receipt,
7555
+ publicClient
7556
+ }) {
7557
+ const verified = verifyPreparedCreateReceipt({ prepared, receipt });
7558
+ const transaction = await publicClient.getTransaction({
7559
+ hash: receipt.transactionHash
7560
+ });
7561
+ if (transaction.hash.toLowerCase() !== receipt.transactionHash.toLowerCase()) {
7562
+ throw new AirlockCreateReceiptError("TRANSACTION_HASH_MISMATCH", {
7563
+ expected: receipt.transactionHash,
7564
+ actual: transaction.hash
7565
+ });
7566
+ }
7567
+ assertAddressMatch(
7568
+ "WRONG_TRANSACTION_TARGET",
7569
+ prepared.transaction.to,
7570
+ transaction.to
7571
+ );
7572
+ assertAddressMatch(
7573
+ "WRONG_TRANSACTION_SENDER",
7574
+ prepared.account,
7575
+ transaction.from
7576
+ );
7577
+ if (transaction.input.toLowerCase() !== prepared.transaction.data.toLowerCase()) {
7578
+ throw new AirlockCreateReceiptError("TRANSACTION_INPUT_MISMATCH", {
7579
+ expected: viem.keccak256(prepared.transaction.data),
7580
+ actual: viem.keccak256(transaction.input)
7581
+ });
7582
+ }
7583
+ if (transaction.value !== prepared.transaction.value) {
7584
+ throw new AirlockCreateReceiptError("TRANSACTION_VALUE_MISMATCH", {
7585
+ expected: prepared.transaction.value.toString(),
7586
+ actual: transaction.value.toString()
7587
+ });
7588
+ }
7589
+ return verified;
7590
+ }
7665
7591
 
7666
7592
  // src/evm/utils/marketCapHelpers.ts
7667
7593
  function getMaxTickRounded(tickSpacing) {
@@ -10617,25 +10543,45 @@ var DopplerFactory = class {
10617
10543
  }
10618
10544
  throw new Error("Unable to mine opening auction salt");
10619
10545
  }
10620
- async resolveCreateGasEstimate(args) {
10546
+ isCreateGasRevert(error) {
10547
+ if (error instanceof viem.ContractFunctionRevertedError || error instanceof viem.ExecutionRevertedError) {
10548
+ return true;
10549
+ }
10550
+ if (!(error instanceof viem.BaseError)) return false;
10551
+ return Boolean(
10552
+ error.walk(
10553
+ (cause) => cause instanceof viem.ContractFunctionRevertedError || cause instanceof viem.ExecutionRevertedError
10554
+ )
10555
+ );
10556
+ }
10557
+ async resolveInternalCreateGasEstimate(args) {
10621
10558
  const { request, address, createParams, account } = args;
10622
- const gasFromRequest = request && typeof request === "object" && "gas" in request ? request.gas : void 0;
10623
- if (gasFromRequest) {
10624
- return gasFromRequest;
10559
+ let gasFromRequest;
10560
+ if (request && typeof request === "object" && "gas" in request && typeof request.gas === "bigint") {
10561
+ gasFromRequest = request.gas;
10562
+ }
10563
+ if (gasFromRequest !== void 0) {
10564
+ return { status: "estimated", gas: gasFromRequest };
10625
10565
  }
10626
10566
  try {
10627
- const estimated = await this.publicClient.estimateContractGas({
10628
- address,
10629
- abi: airlockAbi,
10630
- functionName: "create",
10631
- args: [{ ...createParams }],
10632
- account
10633
- });
10634
- return estimated;
10635
- } catch {
10636
- return void 0;
10567
+ const gas = await this.publicClient.estimateContractGas(
10568
+ {
10569
+ address,
10570
+ abi: airlockAbi,
10571
+ functionName: "create",
10572
+ args: [{ ...createParams }],
10573
+ account
10574
+ }
10575
+ );
10576
+ return { status: "estimated", gas };
10577
+ } catch (error) {
10578
+ return this.isCreateGasRevert(error) ? { status: "reverted", error } : { status: "unavailable" };
10637
10579
  }
10638
10580
  }
10581
+ async resolveCreateGasEstimate(args) {
10582
+ const estimate = await this.resolveInternalCreateGasEstimate(args);
10583
+ return estimate.status === "estimated" ? estimate.gas : void 0;
10584
+ }
10639
10585
  isDoppler404Token(token) {
10640
10586
  return token.type === "doppler404";
10641
10587
  }
@@ -11391,86 +11337,157 @@ var DopplerFactory = class {
11391
11337
  };
11392
11338
  return createParams;
11393
11339
  }
11394
- async simulateCreateMulticurve(params) {
11340
+ async resolveFinalMulticurveCreate(args) {
11341
+ const { params, simulationAccount } = args;
11395
11342
  const addresses = getAddresses(this.chainId);
11396
- const createParams = this.encodeCreateMulticurveParams(params);
11397
- const airlockAddress = params.modules?.airlock ?? addresses.airlock;
11398
- const { request, result } = await this.publicClient.simulateContract({
11399
- address: airlockAddress,
11343
+ const airlock = params.modules?.airlock ?? addresses.airlock;
11344
+ const initialCreateParams = args.createParams ?? this.encodeCreateMulticurveParams(params);
11345
+ const initialSimulation = await this.publicClient.simulateContract({
11346
+ address: airlock,
11400
11347
  abi: airlockAbi,
11401
11348
  functionName: "create",
11402
- args: [{ ...createParams }],
11403
- account: this.walletClient?.account
11349
+ args: [{ ...initialCreateParams }],
11350
+ account: simulationAccount
11404
11351
  });
11405
- const simResult = result;
11406
- const gasEstimate = await this.resolveCreateGasEstimate({
11407
- request,
11408
- address: airlockAddress,
11409
- createParams,
11410
- account: this.walletClient?.account ?? params.userAddress
11411
- });
11412
- if (!simResult || !Array.isArray(simResult) || simResult.length < 2) {
11352
+ const initialResult = initialSimulation.result;
11353
+ if (!initialResult || !Array.isArray(initialResult) || initialResult.length < 5) {
11413
11354
  throw new Error("Failed to simulate multicurve create");
11414
11355
  }
11415
- const tokenAddress = simResult[0];
11416
- const poolId = await this.computeMulticurvePoolId(params, tokenAddress);
11417
- const createParamsWithTimelock = this.withSimulationGovernanceTimelockExclusion({
11418
- createParams,
11419
- simResult,
11420
- token: params.token,
11421
- governance: params.governance,
11422
- modules: params.modules,
11423
- addresses
11356
+ let createParams = initialCreateParams;
11357
+ let request = initialSimulation.request;
11358
+ let result = initialResult;
11359
+ if (!args.createParams) {
11360
+ const enrichedCreateParams = this.withSimulationGovernanceTimelockExclusion({
11361
+ createParams,
11362
+ simResult: initialResult,
11363
+ token: params.token,
11364
+ governance: params.governance,
11365
+ modules: params.modules,
11366
+ addresses
11367
+ });
11368
+ if (enrichedCreateParams.tokenFactoryData !== createParams.tokenFactoryData) {
11369
+ createParams = enrichedCreateParams;
11370
+ const finalSimulation = await this.publicClient.simulateContract({
11371
+ address: airlock,
11372
+ abi: airlockAbi,
11373
+ functionName: "create",
11374
+ args: [{ ...createParams }],
11375
+ account: simulationAccount
11376
+ });
11377
+ const finalResult = finalSimulation.result;
11378
+ if (!finalResult || !Array.isArray(finalResult) || finalResult.length < 5) {
11379
+ throw new Error("Failed to simulate enriched multicurve create");
11380
+ }
11381
+ request = finalSimulation.request;
11382
+ result = finalResult;
11383
+ }
11384
+ }
11385
+ const tokenAddress = result[0];
11386
+ const poolIdentity = await this.computeMulticurvePoolIdentity(
11387
+ params,
11388
+ tokenAddress
11389
+ );
11390
+ const prediction = {
11391
+ tokenAddress,
11392
+ poolOrHookAddress: result[1],
11393
+ governanceAddress: result[2],
11394
+ timelockAddress: result[3],
11395
+ migrationPoolAddress: result[4],
11396
+ ...poolIdentity
11397
+ };
11398
+ return { airlock, createParams, prediction, request };
11399
+ }
11400
+ async prepareCreateMulticurve(params, options) {
11401
+ const resolved = await this.resolveFinalMulticurveCreate({
11402
+ params,
11403
+ simulationAccount: options.account
11404
+ });
11405
+ const internalGasEstimate = await this.resolveInternalCreateGasEstimate({
11406
+ request: resolved.request,
11407
+ address: resolved.airlock,
11408
+ createParams: resolved.createParams,
11409
+ account: options.account
11424
11410
  });
11411
+ if (internalGasEstimate.status === "reverted") {
11412
+ throw internalGasEstimate.error;
11413
+ }
11414
+ const gasEstimate = internalGasEstimate;
11425
11415
  return {
11426
- createParams: createParamsWithTimelock,
11427
- tokenAddress,
11428
- poolId,
11416
+ chainId: this.chainId,
11417
+ account: options.account,
11418
+ airlock: resolved.airlock,
11419
+ createParams: resolved.createParams,
11420
+ prediction: resolved.prediction,
11421
+ transaction: {
11422
+ to: resolved.airlock,
11423
+ data: viem.encodeFunctionData({
11424
+ abi: airlockAbi,
11425
+ functionName: "create",
11426
+ args: [{ ...resolved.createParams }]
11427
+ }),
11428
+ value: 0n
11429
+ },
11430
+ gasEstimate
11431
+ };
11432
+ }
11433
+ async simulateCreateMulticurve(params) {
11434
+ const resolved = await this.resolveFinalMulticurveCreate({
11435
+ params,
11436
+ simulationAccount: this.walletClient?.account
11437
+ });
11438
+ const gasEstimate = await this.resolveCreateGasEstimate({
11439
+ request: resolved.request,
11440
+ address: resolved.airlock,
11441
+ createParams: resolved.createParams,
11442
+ account: this.walletClient?.account ?? params.userAddress
11443
+ });
11444
+ return {
11445
+ createParams: resolved.createParams,
11446
+ tokenAddress: resolved.prediction.tokenAddress,
11447
+ poolId: resolved.prediction.poolId,
11429
11448
  gasEstimate,
11430
11449
  execute: () => this.createMulticurve(params, {
11431
- _createParams: createParamsWithTimelock
11450
+ _createParams: resolved.createParams
11432
11451
  })
11433
11452
  };
11434
11453
  }
11435
11454
  async createMulticurve(params, options) {
11436
- const addresses = getAddresses(this.chainId);
11437
- if (!this.walletClient)
11455
+ if (!this.walletClient) {
11438
11456
  throw new Error("Wallet client required for write operations");
11439
- const createParams = options?._createParams ?? (await this.simulateCreateMulticurve(params)).createParams;
11440
- const airlockAddress = params.modules?.airlock ?? addresses.airlock;
11441
- const { request, result } = await this.publicClient.simulateContract({
11442
- address: airlockAddress,
11443
- abi: airlockAbi,
11444
- functionName: "create",
11445
- args: [{ ...createParams }],
11446
- account: this.walletClient.account
11457
+ }
11458
+ const resolved = await this.resolveFinalMulticurveCreate({
11459
+ params,
11460
+ simulationAccount: this.walletClient.account,
11461
+ createParams: options?._createParams
11447
11462
  });
11448
- const simResult = result;
11449
11463
  const gasEstimate = await this.resolveCreateGasEstimate({
11450
- request,
11451
- address: airlockAddress,
11452
- createParams,
11464
+ request: resolved.request,
11465
+ address: resolved.airlock,
11466
+ createParams: resolved.createParams,
11453
11467
  account: this.walletClient.account
11454
11468
  });
11455
11469
  const gas = params.gas ?? gasEstimate ?? DEFAULT_CREATE_GAS_LIMIT;
11456
- const hash = await this.walletClient.writeContract({ ...request, gas });
11470
+ const hash = await this.walletClient.writeContract({
11471
+ ...resolved.request,
11472
+ gas
11473
+ });
11457
11474
  const receipt = await this.publicClient.waitForTransactionReceipt({ hash, confirmations: 2 });
11458
- const actualAddresses = this.extractAddressesFromCreateEvent(receipt);
11459
- if (!actualAddresses) {
11475
+ const createResult = parseAirlockCreateReceipt({
11476
+ receipt,
11477
+ expectedAirlock: resolved.airlock
11478
+ });
11479
+ if (!createResult) {
11460
11480
  throw new Error(
11461
11481
  "Failed to extract token address from Create event in transaction logs"
11462
11482
  );
11463
11483
  }
11464
- const actualTokenAddress = actualAddresses.tokenAddress;
11465
- if (simResult && Array.isArray(simResult) && simResult.length >= 1) {
11466
- const simulatedToken = simResult[0];
11467
- if (simulatedToken.toLowerCase() !== actualTokenAddress.toLowerCase()) {
11468
- console.warn(
11469
- `[DopplerSDK] Simulation predicted token ${simulatedToken} but actual is ${actualTokenAddress}. This may indicate state divergence between simulation and execution.`
11470
- );
11471
- }
11484
+ const actualTokenAddress = createResult.tokenAddress;
11485
+ if (resolved.prediction.tokenAddress.toLowerCase() !== actualTokenAddress.toLowerCase()) {
11486
+ console.warn(
11487
+ `[DopplerSDK] Simulation predicted token ${resolved.prediction.tokenAddress} but actual is ${actualTokenAddress}. This may indicate state divergence between simulation and execution.`
11488
+ );
11472
11489
  }
11473
- const poolId = await this.computeMulticurvePoolId(
11490
+ const { poolId } = await this.computeMulticurvePoolIdentity(
11474
11491
  params,
11475
11492
  actualTokenAddress
11476
11493
  );
@@ -12653,10 +12670,10 @@ var DopplerFactory = class {
12653
12670
  return viem.keccak256(encoded);
12654
12671
  }
12655
12672
  /**
12656
- * Compute the V4 poolId for a multicurve pool from the same pool-key fields
12657
- * the initializer will register on-chain.
12673
+ * Compute the complete V4 multicurve pool identity from the same pool-key
12674
+ * fields the initializer will register on-chain.
12658
12675
  */
12659
- async computeMulticurvePoolId(params, tokenAddress) {
12676
+ async computeMulticurvePoolIdentity(params, tokenAddress) {
12660
12677
  const addresses = getAddresses(this.chainId);
12661
12678
  const initializerMode = this.resolveMulticurveInitializerMode(params);
12662
12679
  let hookAddress;
@@ -12686,16 +12703,18 @@ var DopplerFactory = class {
12686
12703
  }
12687
12704
  const numeraire = params.sale.numeraire;
12688
12705
  const tokenIsCurrency0 = BigInt(tokenAddress) < BigInt(numeraire);
12689
- const currency0 = tokenIsCurrency0 ? tokenAddress : numeraire;
12690
- const currency1 = tokenIsCurrency0 ? numeraire : tokenAddress;
12691
- const fee = initializerMode.type === "decay" || initializerMode.type === "rehype" && initializerMode.hookConfig ? DYNAMIC_FEE_FLAG : params.pool.fee;
12692
- return this.computePoolId({
12693
- currency0,
12694
- currency1,
12695
- fee,
12706
+ const poolKey = {
12707
+ currency0: tokenIsCurrency0 ? tokenAddress : numeraire,
12708
+ currency1: tokenIsCurrency0 ? numeraire : tokenAddress,
12709
+ fee: initializerMode.type === "decay" || initializerMode.type === "rehype" && initializerMode.hookConfig ? DYNAMIC_FEE_FLAG : params.pool.fee,
12696
12710
  tickSpacing: params.pool.tickSpacing,
12697
12711
  hooks: hookAddress
12698
- });
12712
+ };
12713
+ return {
12714
+ poolKey,
12715
+ poolId: this.computePoolId(poolKey),
12716
+ tokenIsCurrency0
12717
+ };
12699
12718
  }
12700
12719
  async ensureMulticurveBundlerSupport(bundler) {
12701
12720
  if (this.multicurveBundlerSupport.get(bundler)) {
@@ -20342,6 +20361,7 @@ var DopplerSDK = class {
20342
20361
  var VERSION = "1.0.0";
20343
20362
 
20344
20363
  exports.ADDRESSES = ADDRESSES;
20364
+ exports.AirlockCreateReceiptError = AirlockCreateReceiptError;
20345
20365
  exports.BASIS_POINTS = BASIS_POINTS;
20346
20366
  exports.CHAIN_IDS = CHAIN_IDS;
20347
20367
  exports.DAY_SECONDS = DAY_SECONDS;
@@ -20511,6 +20531,7 @@ exports.normalizeRehypeDopplerHookInitializerConfig = normalizeRehypeDopplerHook
20511
20531
  exports.openingAuctionAbi = openingAuctionAbi;
20512
20532
  exports.openingAuctionInitializerAbi = openingAuctionInitializerAbi;
20513
20533
  exports.openingAuctionPositionManagerAbi = openingAuctionPositionManagerAbi;
20534
+ exports.parseAirlockCreateReceipt = parseAirlockCreateReceipt;
20514
20535
  exports.poolManagerAbi = poolManagerAbi;
20515
20536
  exports.priceToSqrtPriceX96 = priceToSqrtPriceX96;
20516
20537
  exports.priceToTick = priceToTick;
@@ -20539,6 +20560,8 @@ exports.v4MulticurveInitializerAbi = v4MulticurveInitializerAbi;
20539
20560
  exports.v4MulticurveMigratorAbi = v4MulticurveMigratorAbi;
20540
20561
  exports.v4QuoterAbi = v4QuoterAbi;
20541
20562
  exports.validateMarketCapParameters = validateMarketCapParameters;
20563
+ exports.verifyPreparedCreateExecution = verifyPreparedCreateExecution;
20564
+ exports.verifyPreparedCreateReceipt = verifyPreparedCreateReceipt;
20542
20565
  exports.weth9Abi = weth9Abi;
20543
20566
  //# sourceMappingURL=index.cjs.map
20544
20567
  //# sourceMappingURL=index.cjs.map