@whetstone-research/doppler-sdk 0.0.23 → 1.0.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 (425) hide show
  1. package/README.md +556 -229
  2. package/dist/chunk-3LTCKCJC.js +319 -0
  3. package/dist/chunk-3LTCKCJC.js.map +1 -0
  4. package/dist/chunk-PZ5AY32C.js +9 -0
  5. package/dist/{chunk-3PNCB4W5.js.map → chunk-PZ5AY32C.js.map} +1 -1
  6. package/dist/chunk-RO6R66OM.js +974 -0
  7. package/dist/chunk-RO6R66OM.js.map +1 -0
  8. package/dist/evm/index.d.ts +8533 -0
  9. package/dist/evm/index.js +15055 -0
  10. package/dist/evm/index.js.map +1 -0
  11. package/dist/oracle-BSvZ6pxp.d.ts +820 -0
  12. package/dist/pda-RVIHNLRP.js +4 -0
  13. package/dist/pda-RVIHNLRP.js.map +1 -0
  14. package/dist/solana/index.d.ts +2495 -0
  15. package/dist/solana/index.js +2209 -0
  16. package/dist/solana/index.js.map +1 -0
  17. package/dist/solana/react/index.d.ts +1046 -0
  18. package/dist/solana/react/index.js +1436 -0
  19. package/dist/solana/react/index.js.map +1 -0
  20. package/package.json +37 -21
  21. package/dist/DopplerSDK.d.mts +0 -94
  22. package/dist/DopplerSDK.d.ts +0 -94
  23. package/dist/DopplerSDK.js +0 -51
  24. package/dist/DopplerSDK.js.map +0 -1
  25. package/dist/DopplerSDK.mjs +0 -42
  26. package/dist/DopplerSDK.mjs.map +0 -1
  27. package/dist/abis/bytecodes/derc20.d.mts +0 -3
  28. package/dist/abis/bytecodes/derc20.d.ts +0 -3
  29. package/dist/abis/bytecodes/derc20.js +0 -9
  30. package/dist/abis/bytecodes/derc20.js.map +0 -1
  31. package/dist/abis/bytecodes/derc20.mjs +0 -3
  32. package/dist/abis/bytecodes/derc20.mjs.map +0 -1
  33. package/dist/abis/bytecodes/derc2080.d.mts +0 -3
  34. package/dist/abis/bytecodes/derc2080.d.ts +0 -3
  35. package/dist/abis/bytecodes/derc2080.js +0 -9
  36. package/dist/abis/bytecodes/derc2080.js.map +0 -1
  37. package/dist/abis/bytecodes/derc2080.mjs +0 -3
  38. package/dist/abis/bytecodes/derc2080.mjs.map +0 -1
  39. package/dist/abis/bytecodes/doppler.d.mts +0 -3
  40. package/dist/abis/bytecodes/doppler.d.ts +0 -3
  41. package/dist/abis/bytecodes/doppler.js +0 -9
  42. package/dist/abis/bytecodes/doppler.js.map +0 -1
  43. package/dist/abis/bytecodes/doppler.mjs +0 -3
  44. package/dist/abis/bytecodes/doppler.mjs.map +0 -1
  45. package/dist/abis/bytecodes/dopplerDN404.d.mts +0 -3
  46. package/dist/abis/bytecodes/dopplerDN404.d.ts +0 -3
  47. package/dist/abis/bytecodes/dopplerDN404.js +0 -9
  48. package/dist/abis/bytecodes/dopplerDN404.js.map +0 -1
  49. package/dist/abis/bytecodes/dopplerDN404.mjs +0 -3
  50. package/dist/abis/bytecodes/dopplerDN404.mjs.map +0 -1
  51. package/dist/abis/bytecodes/stateView.d.mts +0 -3
  52. package/dist/abis/bytecodes/stateView.d.ts +0 -3
  53. package/dist/abis/bytecodes/stateView.js +0 -9
  54. package/dist/abis/bytecodes/stateView.js.map +0 -1
  55. package/dist/abis/bytecodes/stateView.mjs +0 -3
  56. package/dist/abis/bytecodes/stateView.mjs.map +0 -1
  57. package/dist/abis/bytecodes.d.mts +0 -5
  58. package/dist/abis/bytecodes.d.ts +0 -5
  59. package/dist/abis/bytecodes.js +0 -33
  60. package/dist/abis/bytecodes.js.map +0 -1
  61. package/dist/abis/bytecodes.mjs +0 -8
  62. package/dist/abis/bytecodes.mjs.map +0 -1
  63. package/dist/abis/index.d.mts +0 -3460
  64. package/dist/abis/index.d.ts +0 -3460
  65. package/dist/abis/index.js +0 -122
  66. package/dist/abis/index.js.map +0 -1
  67. package/dist/abis/index.mjs +0 -9
  68. package/dist/abis/index.mjs.map +0 -1
  69. package/dist/addresses.d.mts +0 -65
  70. package/dist/addresses.d.ts +0 -65
  71. package/dist/addresses.js +0 -29
  72. package/dist/addresses.js.map +0 -1
  73. package/dist/addresses.mjs +0 -4
  74. package/dist/addresses.mjs.map +0 -1
  75. package/dist/builders/DynamicAuctionBuilder.d.mts +0 -138
  76. package/dist/builders/DynamicAuctionBuilder.d.ts +0 -138
  77. package/dist/builders/DynamicAuctionBuilder.js +0 -35
  78. package/dist/builders/DynamicAuctionBuilder.js.map +0 -1
  79. package/dist/builders/DynamicAuctionBuilder.mjs +0 -26
  80. package/dist/builders/DynamicAuctionBuilder.mjs.map +0 -1
  81. package/dist/builders/MulticurveBuilder.d.mts +0 -183
  82. package/dist/builders/MulticurveBuilder.d.ts +0 -183
  83. package/dist/builders/MulticurveBuilder.js +0 -35
  84. package/dist/builders/MulticurveBuilder.js.map +0 -1
  85. package/dist/builders/MulticurveBuilder.mjs +0 -26
  86. package/dist/builders/MulticurveBuilder.mjs.map +0 -1
  87. package/dist/builders/StaticAuctionBuilder.d.mts +0 -131
  88. package/dist/builders/StaticAuctionBuilder.d.ts +0 -131
  89. package/dist/builders/StaticAuctionBuilder.js +0 -35
  90. package/dist/builders/StaticAuctionBuilder.js.map +0 -1
  91. package/dist/builders/StaticAuctionBuilder.mjs +0 -26
  92. package/dist/builders/StaticAuctionBuilder.mjs.map +0 -1
  93. package/dist/builders/index.d.mts +0 -8
  94. package/dist/builders/index.d.ts +0 -8
  95. package/dist/builders/index.js +0 -62
  96. package/dist/builders/index.js.map +0 -1
  97. package/dist/builders/index.mjs +0 -29
  98. package/dist/builders/index.mjs.map +0 -1
  99. package/dist/builders/shared.d.mts +0 -115
  100. package/dist/builders/shared.d.ts +0 -115
  101. package/dist/builders/shared.js +0 -45
  102. package/dist/builders/shared.js.map +0 -1
  103. package/dist/builders/shared.mjs +0 -24
  104. package/dist/builders/shared.mjs.map +0 -1
  105. package/dist/chunk-25GEBO3B.mjs +0 -219
  106. package/dist/chunk-25GEBO3B.mjs.map +0 -1
  107. package/dist/chunk-3MVW6UIW.js +0 -2294
  108. package/dist/chunk-3MVW6UIW.js.map +0 -1
  109. package/dist/chunk-3NMGCQJ4.mjs +0 -6
  110. package/dist/chunk-3NMGCQJ4.mjs.map +0 -1
  111. package/dist/chunk-3PNCB4W5.js +0 -4
  112. package/dist/chunk-4VWQNNNW.js +0 -233
  113. package/dist/chunk-4VWQNNNW.js.map +0 -1
  114. package/dist/chunk-4XN6DQBW.js +0 -4
  115. package/dist/chunk-4XN6DQBW.js.map +0 -1
  116. package/dist/chunk-5TQOT6CW.js +0 -8
  117. package/dist/chunk-5TQOT6CW.js.map +0 -1
  118. package/dist/chunk-6BQY5EPB.js +0 -144
  119. package/dist/chunk-6BQY5EPB.js.map +0 -1
  120. package/dist/chunk-6H6X3VTZ.js +0 -18
  121. package/dist/chunk-6H6X3VTZ.js.map +0 -1
  122. package/dist/chunk-6UHDSD42.js +0 -2585
  123. package/dist/chunk-6UHDSD42.js.map +0 -1
  124. package/dist/chunk-7CAAI5DL.js +0 -273
  125. package/dist/chunk-7CAAI5DL.js.map +0 -1
  126. package/dist/chunk-7M57PU6V.js +0 -28
  127. package/dist/chunk-7M57PU6V.js.map +0 -1
  128. package/dist/chunk-7P2SPZC7.mjs +0 -2583
  129. package/dist/chunk-7P2SPZC7.mjs.map +0 -1
  130. package/dist/chunk-7ZUV6WPX.mjs +0 -3
  131. package/dist/chunk-7ZUV6WPX.mjs.map +0 -1
  132. package/dist/chunk-ABT6AT7C.mjs +0 -16
  133. package/dist/chunk-ABT6AT7C.mjs.map +0 -1
  134. package/dist/chunk-C6MH7HYT.mjs +0 -138
  135. package/dist/chunk-C6MH7HYT.mjs.map +0 -1
  136. package/dist/chunk-CATH4QRQ.mjs +0 -141
  137. package/dist/chunk-CATH4QRQ.mjs.map +0 -1
  138. package/dist/chunk-CFAAYL5M.mjs +0 -26
  139. package/dist/chunk-CFAAYL5M.mjs.map +0 -1
  140. package/dist/chunk-CMNJZKTM.js +0 -140
  141. package/dist/chunk-CMNJZKTM.js.map +0 -1
  142. package/dist/chunk-CWTGQAOG.mjs +0 -72
  143. package/dist/chunk-CWTGQAOG.mjs.map +0 -1
  144. package/dist/chunk-DNB3T5P2.js +0 -269
  145. package/dist/chunk-DNB3T5P2.js.map +0 -1
  146. package/dist/chunk-DOUF6NON.mjs +0 -3
  147. package/dist/chunk-DOUF6NON.mjs.map +0 -1
  148. package/dist/chunk-DSYPZETD.js +0 -4
  149. package/dist/chunk-DSYPZETD.js.map +0 -1
  150. package/dist/chunk-E2NF4AQB.mjs +0 -2271
  151. package/dist/chunk-E2NF4AQB.mjs.map +0 -1
  152. package/dist/chunk-EH3V2BJF.js +0 -592
  153. package/dist/chunk-EH3V2BJF.js.map +0 -1
  154. package/dist/chunk-EIXUJANI.mjs +0 -590
  155. package/dist/chunk-EIXUJANI.mjs.map +0 -1
  156. package/dist/chunk-FFV6DMPA.mjs +0 -263
  157. package/dist/chunk-FFV6DMPA.mjs.map +0 -1
  158. package/dist/chunk-FLFYAWSS.mjs +0 -238
  159. package/dist/chunk-FLFYAWSS.mjs.map +0 -1
  160. package/dist/chunk-FNUBKONK.js +0 -291
  161. package/dist/chunk-FNUBKONK.js.map +0 -1
  162. package/dist/chunk-FOESYJP3.mjs +0 -3
  163. package/dist/chunk-FOESYJP3.mjs.map +0 -1
  164. package/dist/chunk-FTRCBE3J.js +0 -320
  165. package/dist/chunk-FTRCBE3J.js.map +0 -1
  166. package/dist/chunk-FZ4FIWCR.js +0 -240
  167. package/dist/chunk-FZ4FIWCR.js.map +0 -1
  168. package/dist/chunk-GDODJJ7D.mjs +0 -36
  169. package/dist/chunk-GDODJJ7D.mjs.map +0 -1
  170. package/dist/chunk-GSBQIVME.mjs +0 -278
  171. package/dist/chunk-GSBQIVME.mjs.map +0 -1
  172. package/dist/chunk-GSTY3GO7.mjs +0 -40
  173. package/dist/chunk-GSTY3GO7.mjs.map +0 -1
  174. package/dist/chunk-H3B54PFV.mjs +0 -17
  175. package/dist/chunk-H3B54PFV.mjs.map +0 -1
  176. package/dist/chunk-H7WPK5CR.js +0 -297
  177. package/dist/chunk-H7WPK5CR.js.map +0 -1
  178. package/dist/chunk-HJFVRV47.js +0 -120
  179. package/dist/chunk-HJFVRV47.js.map +0 -1
  180. package/dist/chunk-HL7ZAAD4.mjs +0 -375
  181. package/dist/chunk-HL7ZAAD4.mjs.map +0 -1
  182. package/dist/chunk-IWJOPXYN.mjs +0 -96
  183. package/dist/chunk-IWJOPXYN.mjs.map +0 -1
  184. package/dist/chunk-J62YDWIK.js +0 -8
  185. package/dist/chunk-J62YDWIK.js.map +0 -1
  186. package/dist/chunk-JB5XXPLL.js +0 -377
  187. package/dist/chunk-JB5XXPLL.js.map +0 -1
  188. package/dist/chunk-JIKAD4YL.js +0 -4
  189. package/dist/chunk-JIKAD4YL.js.map +0 -1
  190. package/dist/chunk-KAZQJ24E.mjs +0 -59
  191. package/dist/chunk-KAZQJ24E.mjs.map +0 -1
  192. package/dist/chunk-KHUE77HC.js +0 -81
  193. package/dist/chunk-KHUE77HC.js.map +0 -1
  194. package/dist/chunk-KOAC3BBP.mjs +0 -11
  195. package/dist/chunk-KOAC3BBP.mjs.map +0 -1
  196. package/dist/chunk-OHA5KJ2M.mjs +0 -6
  197. package/dist/chunk-OHA5KJ2M.mjs.map +0 -1
  198. package/dist/chunk-OX5CESVM.js +0 -40
  199. package/dist/chunk-OX5CESVM.js.map +0 -1
  200. package/dist/chunk-P25HBGP5.mjs +0 -3
  201. package/dist/chunk-P25HBGP5.mjs.map +0 -1
  202. package/dist/chunk-P7CHGWY7.js +0 -4
  203. package/dist/chunk-P7CHGWY7.js.map +0 -1
  204. package/dist/chunk-QAPQGDWK.js +0 -8
  205. package/dist/chunk-QAPQGDWK.js.map +0 -1
  206. package/dist/chunk-QOGBOT2M.mjs +0 -328
  207. package/dist/chunk-QOGBOT2M.mjs.map +0 -1
  208. package/dist/chunk-QRTABC4Z.js +0 -8
  209. package/dist/chunk-QRTABC4Z.js.map +0 -1
  210. package/dist/chunk-QSQGLWNY.mjs +0 -3
  211. package/dist/chunk-QSQGLWNY.mjs.map +0 -1
  212. package/dist/chunk-RI6SDMER.mjs +0 -295
  213. package/dist/chunk-RI6SDMER.mjs.map +0 -1
  214. package/dist/chunk-RIIVW6TQ.mjs +0 -267
  215. package/dist/chunk-RIIVW6TQ.mjs.map +0 -1
  216. package/dist/chunk-RV64M4Q6.mjs +0 -3
  217. package/dist/chunk-RV64M4Q6.mjs.map +0 -1
  218. package/dist/chunk-RXUJ4DUB.js +0 -330
  219. package/dist/chunk-RXUJ4DUB.js.map +0 -1
  220. package/dist/chunk-SD7BHT2F.mjs +0 -3
  221. package/dist/chunk-SD7BHT2F.mjs.map +0 -1
  222. package/dist/chunk-SWWLOD7Q.mjs +0 -6
  223. package/dist/chunk-SWWLOD7Q.mjs.map +0 -1
  224. package/dist/chunk-TIGHBA37.js +0 -143
  225. package/dist/chunk-TIGHBA37.js.map +0 -1
  226. package/dist/chunk-TLEVIIUE.mjs +0 -34
  227. package/dist/chunk-TLEVIIUE.mjs.map +0 -1
  228. package/dist/chunk-U3GOWK6J.mjs +0 -6
  229. package/dist/chunk-U3GOWK6J.mjs.map +0 -1
  230. package/dist/chunk-UPVKABAV.js +0 -19
  231. package/dist/chunk-UPVKABAV.js.map +0 -1
  232. package/dist/chunk-VCX6FG3E.mjs +0 -318
  233. package/dist/chunk-VCX6FG3E.mjs.map +0 -1
  234. package/dist/chunk-VEIVYUYF.js +0 -4
  235. package/dist/chunk-VEIVYUYF.js.map +0 -1
  236. package/dist/chunk-VYSOAGRU.mjs +0 -6
  237. package/dist/chunk-VYSOAGRU.mjs.map +0 -1
  238. package/dist/chunk-WJBJARLJ.js +0 -38
  239. package/dist/chunk-WJBJARLJ.js.map +0 -1
  240. package/dist/chunk-WNUB3UTT.js +0 -241
  241. package/dist/chunk-WNUB3UTT.js.map +0 -1
  242. package/dist/chunk-WQHTNL5L.js +0 -4
  243. package/dist/chunk-WQHTNL5L.js.map +0 -1
  244. package/dist/chunk-X3UMAHOJ.js +0 -4
  245. package/dist/chunk-X3UMAHOJ.js.map +0 -1
  246. package/dist/chunk-XMFOZYNI.js +0 -8
  247. package/dist/chunk-XMFOZYNI.js.map +0 -1
  248. package/dist/chunk-XNMXN5SZ.mjs +0 -3
  249. package/dist/chunk-XNMXN5SZ.mjs.map +0 -1
  250. package/dist/chunk-XRYLHTVV.mjs +0 -267
  251. package/dist/chunk-XRYLHTVV.mjs.map +0 -1
  252. package/dist/chunk-XSJTASPK.js +0 -13
  253. package/dist/chunk-XSJTASPK.js.map +0 -1
  254. package/dist/chunk-XT3BAM4H.js +0 -45
  255. package/dist/chunk-XT3BAM4H.js.map +0 -1
  256. package/dist/chunk-YBK6EBA5.mjs +0 -239
  257. package/dist/chunk-YBK6EBA5.mjs.map +0 -1
  258. package/dist/chunk-YFEPTSI2.js +0 -265
  259. package/dist/chunk-YFEPTSI2.js.map +0 -1
  260. package/dist/chunk-YYLD3AJ7.js +0 -61
  261. package/dist/chunk-YYLD3AJ7.js.map +0 -1
  262. package/dist/chunk-ZEDJUNC6.mjs +0 -115
  263. package/dist/chunk-ZEDJUNC6.mjs.map +0 -1
  264. package/dist/constants.d.mts +0 -91
  265. package/dist/constants.d.ts +0 -91
  266. package/dist/constants.js +0 -196
  267. package/dist/constants.js.map +0 -1
  268. package/dist/constants.mjs +0 -3
  269. package/dist/constants.mjs.map +0 -1
  270. package/dist/deployments.generated.d.mts +0 -267
  271. package/dist/deployments.generated.d.ts +0 -267
  272. package/dist/deployments.generated.js +0 -12
  273. package/dist/deployments.generated.js.map +0 -1
  274. package/dist/deployments.generated.mjs +0 -3
  275. package/dist/deployments.generated.mjs.map +0 -1
  276. package/dist/entities/DopplerFactory.d.mts +0 -266
  277. package/dist/entities/DopplerFactory.d.ts +0 -266
  278. package/dist/entities/DopplerFactory.js +0 -33
  279. package/dist/entities/DopplerFactory.js.map +0 -1
  280. package/dist/entities/DopplerFactory.mjs +0 -24
  281. package/dist/entities/DopplerFactory.mjs.map +0 -1
  282. package/dist/entities/auction/DynamicAuction.d.mts +0 -72
  283. package/dist/entities/auction/DynamicAuction.d.ts +0 -72
  284. package/dist/entities/auction/DynamicAuction.js +0 -21
  285. package/dist/entities/auction/DynamicAuction.js.map +0 -1
  286. package/dist/entities/auction/DynamicAuction.mjs +0 -12
  287. package/dist/entities/auction/DynamicAuction.mjs.map +0 -1
  288. package/dist/entities/auction/MulticurvePool.d.mts +0 -74
  289. package/dist/entities/auction/MulticurvePool.d.ts +0 -74
  290. package/dist/entities/auction/MulticurvePool.js +0 -24
  291. package/dist/entities/auction/MulticurvePool.js.map +0 -1
  292. package/dist/entities/auction/MulticurvePool.mjs +0 -15
  293. package/dist/entities/auction/MulticurvePool.mjs.map +0 -1
  294. package/dist/entities/auction/StaticAuction.d.mts +0 -44
  295. package/dist/entities/auction/StaticAuction.d.ts +0 -44
  296. package/dist/entities/auction/StaticAuction.js +0 -21
  297. package/dist/entities/auction/StaticAuction.js.map +0 -1
  298. package/dist/entities/auction/StaticAuction.mjs +0 -12
  299. package/dist/entities/auction/StaticAuction.mjs.map +0 -1
  300. package/dist/entities/auction/index.d.mts +0 -7
  301. package/dist/entities/auction/index.d.ts +0 -7
  302. package/dist/entities/auction/index.js +0 -35
  303. package/dist/entities/auction/index.js.map +0 -1
  304. package/dist/entities/auction/index.mjs +0 -18
  305. package/dist/entities/auction/index.mjs.map +0 -1
  306. package/dist/entities/quoter/Quoter.d.mts +0 -150
  307. package/dist/entities/quoter/Quoter.d.ts +0 -150
  308. package/dist/entities/quoter/Quoter.js +0 -21
  309. package/dist/entities/quoter/Quoter.js.map +0 -1
  310. package/dist/entities/quoter/Quoter.mjs +0 -12
  311. package/dist/entities/quoter/Quoter.mjs.map +0 -1
  312. package/dist/entities/quoter/index.d.mts +0 -5
  313. package/dist/entities/quoter/index.d.ts +0 -5
  314. package/dist/entities/quoter/index.js +0 -22
  315. package/dist/entities/quoter/index.js.map +0 -1
  316. package/dist/entities/quoter/index.mjs +0 -13
  317. package/dist/entities/quoter/index.mjs.map +0 -1
  318. package/dist/entities/token/derc20/Derc20.d.mts +0 -102
  319. package/dist/entities/token/derc20/Derc20.d.ts +0 -102
  320. package/dist/entities/token/derc20/Derc20.js +0 -19
  321. package/dist/entities/token/derc20/Derc20.js.map +0 -1
  322. package/dist/entities/token/derc20/Derc20.mjs +0 -10
  323. package/dist/entities/token/derc20/Derc20.mjs.map +0 -1
  324. package/dist/entities/token/derc20/index.d.mts +0 -5
  325. package/dist/entities/token/derc20/index.d.ts +0 -5
  326. package/dist/entities/token/derc20/index.js +0 -20
  327. package/dist/entities/token/derc20/index.js.map +0 -1
  328. package/dist/entities/token/derc20/index.mjs +0 -11
  329. package/dist/entities/token/derc20/index.mjs.map +0 -1
  330. package/dist/entities/token/eth/Eth.d.mts +0 -54
  331. package/dist/entities/token/eth/Eth.d.ts +0 -54
  332. package/dist/entities/token/eth/Eth.js +0 -12
  333. package/dist/entities/token/eth/Eth.js.map +0 -1
  334. package/dist/entities/token/eth/Eth.mjs +0 -3
  335. package/dist/entities/token/eth/Eth.mjs.map +0 -1
  336. package/dist/entities/token/eth/index.d.mts +0 -5
  337. package/dist/entities/token/eth/index.d.ts +0 -5
  338. package/dist/entities/token/eth/index.js +0 -13
  339. package/dist/entities/token/eth/index.js.map +0 -1
  340. package/dist/entities/token/eth/index.mjs +0 -4
  341. package/dist/entities/token/eth/index.mjs.map +0 -1
  342. package/dist/entities/token/index.d.mts +0 -6
  343. package/dist/entities/token/index.d.ts +0 -6
  344. package/dist/entities/token/index.js +0 -27
  345. package/dist/entities/token/index.js.map +0 -1
  346. package/dist/entities/token/index.mjs +0 -14
  347. package/dist/entities/token/index.mjs.map +0 -1
  348. package/dist/index.d.mts +0 -37
  349. package/dist/index.d.ts +0 -37
  350. package/dist/index.js +0 -565
  351. package/dist/index.js.map +0 -1
  352. package/dist/index.mjs +0 -47
  353. package/dist/index.mjs.map +0 -1
  354. package/dist/types.d.mts +0 -607
  355. package/dist/types.d.ts +0 -607
  356. package/dist/types.js +0 -30
  357. package/dist/types.js.map +0 -1
  358. package/dist/types.mjs +0 -5
  359. package/dist/types.mjs.map +0 -1
  360. package/dist/utils/airlock.d.mts +0 -11
  361. package/dist/utils/airlock.d.ts +0 -11
  362. package/dist/utils/airlock.js +0 -26
  363. package/dist/utils/airlock.js.map +0 -1
  364. package/dist/utils/airlock.mjs +0 -5
  365. package/dist/utils/airlock.mjs.map +0 -1
  366. package/dist/utils/balanceDelta.d.mts +0 -10
  367. package/dist/utils/balanceDelta.d.ts +0 -10
  368. package/dist/utils/balanceDelta.js +0 -12
  369. package/dist/utils/balanceDelta.js.map +0 -1
  370. package/dist/utils/balanceDelta.mjs +0 -3
  371. package/dist/utils/balanceDelta.mjs.map +0 -1
  372. package/dist/utils/computeOptimalGamma.d.mts +0 -7
  373. package/dist/utils/computeOptimalGamma.d.ts +0 -7
  374. package/dist/utils/computeOptimalGamma.js +0 -12
  375. package/dist/utils/computeOptimalGamma.js.map +0 -1
  376. package/dist/utils/computeOptimalGamma.mjs +0 -3
  377. package/dist/utils/computeOptimalGamma.mjs.map +0 -1
  378. package/dist/utils/dopplerHookMigrator.d.mts +0 -11
  379. package/dist/utils/dopplerHookMigrator.d.ts +0 -11
  380. package/dist/utils/dopplerHookMigrator.js +0 -12
  381. package/dist/utils/dopplerHookMigrator.js.map +0 -1
  382. package/dist/utils/dopplerHookMigrator.mjs +0 -3
  383. package/dist/utils/dopplerHookMigrator.mjs.map +0 -1
  384. package/dist/utils/index.d.mts +0 -14
  385. package/dist/utils/index.d.ts +0 -14
  386. package/dist/utils/index.js +0 -195
  387. package/dist/utils/index.js.map +0 -1
  388. package/dist/utils/index.mjs +0 -22
  389. package/dist/utils/index.mjs.map +0 -1
  390. package/dist/utils/isToken0Expected.d.mts +0 -13
  391. package/dist/utils/isToken0Expected.d.ts +0 -13
  392. package/dist/utils/isToken0Expected.js +0 -12
  393. package/dist/utils/isToken0Expected.js.map +0 -1
  394. package/dist/utils/isToken0Expected.mjs +0 -3
  395. package/dist/utils/isToken0Expected.mjs.map +0 -1
  396. package/dist/utils/marketCapHelpers.d.mts +0 -259
  397. package/dist/utils/marketCapHelpers.d.ts +0 -259
  398. package/dist/utils/marketCapHelpers.js +0 -58
  399. package/dist/utils/marketCapHelpers.js.map +0 -1
  400. package/dist/utils/marketCapHelpers.mjs +0 -5
  401. package/dist/utils/marketCapHelpers.mjs.map +0 -1
  402. package/dist/utils/poolKey.d.mts +0 -17
  403. package/dist/utils/poolKey.d.ts +0 -17
  404. package/dist/utils/poolKey.js +0 -12
  405. package/dist/utils/poolKey.js.map +0 -1
  406. package/dist/utils/poolKey.mjs +0 -3
  407. package/dist/utils/poolKey.mjs.map +0 -1
  408. package/dist/utils/priceHelpers.d.mts +0 -86
  409. package/dist/utils/priceHelpers.d.ts +0 -86
  410. package/dist/utils/priceHelpers.js +0 -41
  411. package/dist/utils/priceHelpers.js.map +0 -1
  412. package/dist/utils/priceHelpers.mjs +0 -4
  413. package/dist/utils/priceHelpers.mjs.map +0 -1
  414. package/dist/utils/tickMath.d.mts +0 -72
  415. package/dist/utils/tickMath.d.ts +0 -72
  416. package/dist/utils/tickMath.js +0 -60
  417. package/dist/utils/tickMath.js.map +0 -1
  418. package/dist/utils/tickMath.mjs +0 -3
  419. package/dist/utils/tickMath.mjs.map +0 -1
  420. package/dist/utils/tokenAddressMiner.d.mts +0 -37
  421. package/dist/utils/tokenAddressMiner.d.ts +0 -37
  422. package/dist/utils/tokenAddressMiner.js +0 -19
  423. package/dist/utils/tokenAddressMiner.js.map +0 -1
  424. package/dist/utils/tokenAddressMiner.mjs +0 -10
  425. package/dist/utils/tokenAddressMiner.mjs.map +0 -1
@@ -1,81 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk4VWQNNNW_js = require('./chunk-4VWQNNNW.js');
4
- var viem = require('viem');
5
-
6
- function calculateTickRange(minPrice, maxPrice, tickSpacing, wethDecimals = 18, tokenDecimals = 18) {
7
- const startTick = chunk4VWQNNNW_js.getNearestUsableTick(
8
- chunk4VWQNNNW_js.priceToTick(1 / maxPrice, tokenDecimals, wethDecimals),
9
- tickSpacing
10
- );
11
- const endTick = chunk4VWQNNNW_js.getNearestUsableTick(
12
- chunk4VWQNNNW_js.priceToTick(1 / minPrice, tokenDecimals, wethDecimals),
13
- tickSpacing
14
- );
15
- return { startTick, endTick };
16
- }
17
- function calculateTokensToSell(targetRaiseETH, avgPricePerToken) {
18
- const tokensToSell = targetRaiseETH / avgPricePerToken;
19
- return viem.parseEther(tokensToSell.toFixed(18));
20
- }
21
- function calculateGamma(startTick, endTick, duration, epochLength) {
22
- const totalEpochs = duration / epochLength;
23
- const tickRange = Math.abs(endTick - startTick);
24
- return Math.floor(tickRange / totalEpochs);
25
- }
26
- function estimatePriceAtEpoch(startTick, gamma, currentEpoch, tokenDecimals = 18, wethDecimals = 18, isIncreasing = true) {
27
- const direction = isIncreasing ? 1 : -1;
28
- const currentTick = startTick + currentEpoch * gamma * direction;
29
- const wethPerToken = chunk4VWQNNNW_js.tickToPrice(
30
- currentTick,
31
- tokenDecimals,
32
- wethDecimals,
33
- false
34
- );
35
- return 1 / wethPerToken;
36
- }
37
- function formatTickAsPrice(tick, tokenSymbol, numeraireSymbol, tokenDecimals = 18, numeraireDecimals = 18) {
38
- const price = chunk4VWQNNNW_js.tickToPrice(tick, tokenDecimals, numeraireDecimals, false);
39
- const ethPerToken = 1 / price;
40
- if (ethPerToken < 1e-4) {
41
- return `${ethPerToken.toExponential(2)} ${numeraireSymbol} per ${tokenSymbol}`;
42
- } else if (ethPerToken < 1) {
43
- return `${ethPerToken.toFixed(6)} ${numeraireSymbol} per ${tokenSymbol}`;
44
- } else {
45
- return `${ethPerToken.toFixed(2)} ${numeraireSymbol} per ${tokenSymbol}`;
46
- }
47
- }
48
- function calculateMarketCap(totalSupply, pricePerToken, ethPrice) {
49
- const totalSupplyNumber = Number(viem.formatEther(totalSupply));
50
- const marketCapETH = totalSupplyNumber * pricePerToken;
51
- const result = {
52
- eth: `${marketCapETH.toFixed(2)} ETH`
53
- };
54
- if (ethPrice) {
55
- const marketCapUSD = marketCapETH * ethPrice;
56
- result.usd = `$${marketCapUSD.toLocaleString("en-US", { maximumFractionDigits: 0 })}`;
57
- }
58
- return result;
59
- }
60
- function calculateFDV(totalSupply, pricePerToken, ethPrice) {
61
- return calculateMarketCap(totalSupply, pricePerToken, ethPrice);
62
- }
63
- function estimateSlippage(amountIn, liquidity, currentTick, fee) {
64
- const feeMultiplier = 1 - fee / 1e6;
65
- const liquidityNumber = Number(liquidity) / 1e18;
66
- const amountNumber = Number(amountIn) / 1e18;
67
- const impactRatio = amountNumber / liquidityNumber;
68
- const slippage = impactRatio * 100 * feeMultiplier;
69
- return Math.min(slippage, 100);
70
- }
71
-
72
- exports.calculateFDV = calculateFDV;
73
- exports.calculateGamma = calculateGamma;
74
- exports.calculateMarketCap = calculateMarketCap;
75
- exports.calculateTickRange = calculateTickRange;
76
- exports.calculateTokensToSell = calculateTokensToSell;
77
- exports.estimatePriceAtEpoch = estimatePriceAtEpoch;
78
- exports.estimateSlippage = estimateSlippage;
79
- exports.formatTickAsPrice = formatTickAsPrice;
80
- //# sourceMappingURL=chunk-KHUE77HC.js.map
81
- //# sourceMappingURL=chunk-KHUE77HC.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/priceHelpers.ts"],"names":["getNearestUsableTick","priceToTick","parseEther","tickToPrice","formatEther"],"mappings":";;;;;AAgBO,SAAS,mBACd,QAAA,EACA,QAAA,EACA,aACA,YAAA,GAAe,EAAA,EACf,gBAAgB,EAAA,EACwB;AAGxC,EAAA,MAAM,SAAA,GAAYA,qCAAA;AAAA,IAChBC,4BAAA,CAAY,CAAA,GAAI,QAAA,EAAU,aAAA,EAAe,YAAY,CAAA;AAAA,IACrD;AAAA,GACF;AAEA,EAAA,MAAM,OAAA,GAAUD,qCAAA;AAAA,IACdC,4BAAA,CAAY,CAAA,GAAI,QAAA,EAAU,aAAA,EAAe,YAAY,CAAA;AAAA,IACrD;AAAA,GACF;AAEA,EAAA,OAAO,EAAE,WAAW,OAAA,EAAQ;AAC9B;AAQO,SAAS,qBAAA,CACd,gBACA,gBAAA,EACQ;AACR,EAAA,MAAM,eAAe,cAAA,GAAiB,gBAAA;AACtC,EAAA,OAAOC,eAAA,CAAW,YAAA,CAAa,OAAA,CAAQ,EAAE,CAAC,CAAA;AAC5C;AAUO,SAAS,cAAA,CACd,SAAA,EACA,OAAA,EACA,QAAA,EACA,WAAA,EACQ;AACR,EAAA,MAAM,cAAc,QAAA,GAAW,WAAA;AAC/B,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,GAAA,CAAI,OAAA,GAAU,SAAS,CAAA;AAC9C,EAAA,OAAO,IAAA,CAAK,KAAA,CAAM,SAAA,GAAY,WAAW,CAAA;AAC3C;AAYO,SAAS,oBAAA,CACd,WACA,KAAA,EACA,YAAA,EACA,gBAAgB,EAAA,EAChB,YAAA,GAAe,EAAA,EACf,YAAA,GAAe,IAAA,EACP;AACR,EAAA,MAAM,SAAA,GAAY,eAAe,CAAA,GAAI,EAAA;AACrC,EAAA,MAAM,WAAA,GAAc,SAAA,GAAY,YAAA,GAAe,KAAA,GAAQ,SAAA;AAGvD,EAAA,MAAM,YAAA,GAAeC,4BAAA;AAAA,IACnB,WAAA;AAAA,IACA,aAAA;AAAA,IACA,YAAA;AAAA,IACA;AAAA,GACF;AAGA,EAAA,OAAO,CAAA,GAAI,YAAA;AACb;AAWO,SAAS,kBACd,IAAA,EACA,WAAA,EACA,iBACA,aAAA,GAAgB,EAAA,EAChB,oBAAoB,EAAA,EACZ;AACR,EAAA,MAAM,KAAA,GAAQA,4BAAA,CAAY,IAAA,EAAM,aAAA,EAAe,mBAAmB,KAAK,CAAA;AACvE,EAAA,MAAM,cAAc,CAAA,GAAI,KAAA;AAExB,EAAA,IAAI,cAAc,IAAA,EAAQ;AACxB,IAAA,OAAO,CAAA,EAAG,YAAY,aAAA,CAAc,CAAC,CAAC,CAAA,CAAA,EAAI,eAAe,QAAQ,WAAW,CAAA,CAAA;AAAA,EAC9E,CAAA,MAAA,IAAW,cAAc,CAAA,EAAG;AAC1B,IAAA,OAAO,CAAA,EAAG,YAAY,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,EAAI,eAAe,QAAQ,WAAW,CAAA,CAAA;AAAA,EACxE,CAAA,MAAO;AACL,IAAA,OAAO,CAAA,EAAG,YAAY,OAAA,CAAQ,CAAC,CAAC,CAAA,CAAA,EAAI,eAAe,QAAQ,WAAW,CAAA,CAAA;AAAA,EACxE;AACF;AASO,SAAS,kBAAA,CACd,WAAA,EACA,aAAA,EACA,QAAA,EAC+B;AAC/B,EAAA,MAAM,iBAAA,GAAoB,MAAA,CAAOC,gBAAA,CAAY,WAAW,CAAC,CAAA;AACzD,EAAA,MAAM,eAAe,iBAAA,GAAoB,aAAA;AAEzC,EAAA,MAAM,MAAA,GAAwC;AAAA,IAC5C,GAAA,EAAK,CAAA,EAAG,YAAA,CAAa,OAAA,CAAQ,CAAC,CAAC,CAAA,IAAA;AAAA,GACjC;AAEA,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,MAAM,eAAe,YAAA,GAAe,QAAA;AACpC,IAAA,MAAA,CAAO,GAAA,GAAM,IAAI,YAAA,CAAa,cAAA,CAAe,SAAS,EAAE,qBAAA,EAAuB,CAAA,EAAG,CAAC,CAAA,CAAA;AAAA,EACrF;AAEA,EAAA,OAAO,MAAA;AACT;AASO,SAAS,YAAA,CACd,WAAA,EACA,aAAA,EACA,QAAA,EAC+B;AAE/B,EAAA,OAAO,kBAAA,CAAmB,WAAA,EAAa,aAAA,EAAe,QAAQ,CAAA;AAChE;AAUO,SAAS,gBAAA,CACd,QAAA,EACA,SAAA,EACA,WAAA,EACA,GAAA,EACQ;AAGR,EAAA,MAAM,aAAA,GAAgB,IAAI,GAAA,GAAM,GAAA;AAChC,EAAA,MAAM,eAAA,GAAkB,MAAA,CAAO,SAAS,CAAA,GAAI,IAAA;AAC5C,EAAA,MAAM,YAAA,GAAe,MAAA,CAAO,QAAQ,CAAA,GAAI,IAAA;AAGxC,EAAA,MAAM,cAAc,YAAA,GAAe,eAAA;AACnC,EAAA,MAAM,QAAA,GAAW,cAAc,GAAA,GAAM,aAAA;AAErC,EAAA,OAAO,IAAA,CAAK,GAAA,CAAI,QAAA,EAAU,GAAG,CAAA;AAC/B","file":"chunk-KHUE77HC.js","sourcesContent":["/**\n * Price helper utilities for common token launch scenarios\n */\n\nimport { parseEther, formatEther } from 'viem';\nimport { priceToTick, tickToPrice, getNearestUsableTick } from './tickMath';\n\n/**\n * Calculate the tick range for a desired price range\n * @param minPrice Minimum price (ETH per token)\n * @param maxPrice Maximum price (ETH per token)\n * @param tickSpacing The tick spacing of the pool\n * @param wethDecimals Decimals of WETH (usually 18)\n * @param tokenDecimals Decimals of the token (usually 18)\n * @returns Object with startTick and endTick\n */\nexport function calculateTickRange(\n minPrice: number,\n maxPrice: number,\n tickSpacing: number,\n wethDecimals = 18,\n tokenDecimals = 18,\n): { startTick: number; endTick: number } {\n // For token/WETH pools, we need to invert the price\n // because Uniswap orders tokens by address\n const startTick = getNearestUsableTick(\n priceToTick(1 / maxPrice, tokenDecimals, wethDecimals),\n tickSpacing,\n );\n\n const endTick = getNearestUsableTick(\n priceToTick(1 / minPrice, tokenDecimals, wethDecimals),\n tickSpacing,\n );\n\n return { startTick, endTick };\n}\n\n/**\n * Calculate the number of tokens to sell based on desired raise\n * @param targetRaiseETH Target amount to raise in ETH\n * @param avgPricePerToken Average expected price per token in ETH\n * @returns Number of tokens to sell (as bigint)\n */\nexport function calculateTokensToSell(\n targetRaiseETH: number,\n avgPricePerToken: number,\n): bigint {\n const tokensToSell = targetRaiseETH / avgPricePerToken;\n return parseEther(tokensToSell.toFixed(18));\n}\n\n/**\n * Calculate gamma for dynamic auctions\n * @param startTick Starting tick\n * @param endTick Ending tick\n * @param duration Duration in seconds\n * @param epochLength Epoch length in seconds\n * @returns Gamma value\n */\nexport function calculateGamma(\n startTick: number,\n endTick: number,\n duration: number,\n epochLength: number,\n): number {\n const totalEpochs = duration / epochLength;\n const tickRange = Math.abs(endTick - startTick);\n return Math.floor(tickRange / totalEpochs);\n}\n\n/**\n * Estimate the price at a specific epoch in a dynamic auction\n * @param startTick Starting tick\n * @param gamma Tick movement per epoch\n * @param currentEpoch Current epoch number\n * @param tokenDecimals Token decimals\n * @param wethDecimals WETH decimals\n * @param isIncreasing Whether price increases (true) or decreases (false) over time\n * @returns Estimated price in ETH per token\n */\nexport function estimatePriceAtEpoch(\n startTick: number,\n gamma: number,\n currentEpoch: number,\n tokenDecimals = 18,\n wethDecimals = 18,\n isIncreasing = true,\n): number {\n const direction = isIncreasing ? 1 : -1;\n const currentTick = startTick + currentEpoch * gamma * direction;\n\n // Get price from tick (returns WETH/token)\n const wethPerToken = tickToPrice(\n currentTick,\n tokenDecimals,\n wethDecimals,\n false,\n );\n\n // Invert to get ETH per token\n return 1 / wethPerToken;\n}\n\n/**\n * Format a tick value to a human-readable price string\n * @param tick The tick value\n * @param tokenSymbol Symbol of the token\n * @param numeraireSymbol Symbol of the numeraire (e.g., \"ETH\")\n * @param tokenDecimals Token decimals\n * @param numeraireDecimals Numeraire decimals\n * @returns Formatted price string\n */\nexport function formatTickAsPrice(\n tick: number,\n tokenSymbol: string,\n numeraireSymbol: string,\n tokenDecimals = 18,\n numeraireDecimals = 18,\n): string {\n const price = tickToPrice(tick, tokenDecimals, numeraireDecimals, false);\n const ethPerToken = 1 / price;\n\n if (ethPerToken < 0.0001) {\n return `${ethPerToken.toExponential(2)} ${numeraireSymbol} per ${tokenSymbol}`;\n } else if (ethPerToken < 1) {\n return `${ethPerToken.toFixed(6)} ${numeraireSymbol} per ${tokenSymbol}`;\n } else {\n return `${ethPerToken.toFixed(2)} ${numeraireSymbol} per ${tokenSymbol}`;\n }\n}\n\n/**\n * Calculate the market cap at a given price\n * @param totalSupply Total token supply (as bigint)\n * @param pricePerToken Price per token in ETH\n * @param ethPrice Current ETH price in USD (optional)\n * @returns Market cap object with ETH and USD values\n */\nexport function calculateMarketCap(\n totalSupply: bigint,\n pricePerToken: number,\n ethPrice?: number,\n): { eth: string; usd?: string } {\n const totalSupplyNumber = Number(formatEther(totalSupply));\n const marketCapETH = totalSupplyNumber * pricePerToken;\n\n const result: { eth: string; usd?: string } = {\n eth: `${marketCapETH.toFixed(2)} ETH`,\n };\n\n if (ethPrice) {\n const marketCapUSD = marketCapETH * ethPrice;\n result.usd = `$${marketCapUSD.toLocaleString('en-US', { maximumFractionDigits: 0 })}`;\n }\n\n return result;\n}\n\n/**\n * Calculate fully diluted valuation (FDV)\n * @param totalSupply Total token supply including vested tokens (as bigint)\n * @param pricePerToken Price per token in ETH\n * @param ethPrice Current ETH price in USD (optional)\n * @returns FDV object with ETH and USD values\n */\nexport function calculateFDV(\n totalSupply: bigint,\n pricePerToken: number,\n ethPrice?: number,\n): { eth: string; usd?: string } {\n // FDV is the same calculation as market cap but includes all tokens\n return calculateMarketCap(totalSupply, pricePerToken, ethPrice);\n}\n\n/**\n * Estimate slippage for a trade in a concentrated liquidity pool\n * @param amountIn Amount to trade\n * @param liquidity Current liquidity\n * @param currentTick Current tick\n * @param fee Pool fee (e.g., 3000 for 0.3%)\n * @returns Estimated slippage percentage\n */\nexport function estimateSlippage(\n amountIn: bigint,\n liquidity: bigint,\n currentTick: number,\n fee: number,\n): number {\n // Simplified slippage estimation\n // In practice, you'd need to simulate the swap through tick ranges\n const feeMultiplier = 1 - fee / 1000000;\n const liquidityNumber = Number(liquidity) / 1e18;\n const amountNumber = Number(amountIn) / 1e18;\n\n // Basic approximation: slippage increases with trade size relative to liquidity\n const impactRatio = amountNumber / liquidityNumber;\n const slippage = impactRatio * 100 * feeMultiplier;\n\n return Math.min(slippage, 100); // Cap at 100%\n}\n"]}
@@ -1,11 +0,0 @@
1
- // src/utils/balanceDelta.ts
2
- function decodeBalanceDelta(delta) {
3
- const mask = (1n << 128n) - 1n;
4
- const amount0 = BigInt.asIntN(128, delta >> 128n);
5
- const amount1 = BigInt.asIntN(128, delta & mask);
6
- return { amount0, amount1 };
7
- }
8
-
9
- export { decodeBalanceDelta };
10
- //# sourceMappingURL=chunk-KOAC3BBP.mjs.map
11
- //# sourceMappingURL=chunk-KOAC3BBP.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/utils/balanceDelta.ts"],"names":[],"mappings":";AAIO,SAAS,mBAAmB,KAAA,EAGjC;AACA,EAAA,MAAM,IAAA,GAAA,CAAQ,MAAM,IAAA,IAAQ,EAAA;AAC5B,EAAA,MAAM,OAAA,GAAU,MAAA,CAAO,MAAA,CAAO,GAAA,EAAK,SAAS,IAAI,CAAA;AAChD,EAAA,MAAM,OAAA,GAAU,MAAA,CAAO,MAAA,CAAO,GAAA,EAAK,QAAQ,IAAI,CAAA;AAC/C,EAAA,OAAO,EAAE,SAAS,OAAA,EAAQ;AAC5B","file":"chunk-KOAC3BBP.mjs","sourcesContent":["/**\n * Decode a Uniswap V4 BalanceDelta (int256) value into separate int128 deltas.\n * The upper 128 bits represent amount0, the lower 128 bits represent amount1.\n */\nexport function decodeBalanceDelta(delta: bigint): {\n amount0: bigint;\n amount1: bigint;\n} {\n const mask = (1n << 128n) - 1n;\n const amount0 = BigInt.asIntN(128, delta >> 128n);\n const amount1 = BigInt.asIntN(128, delta & mask);\n return { amount0, amount1 };\n}\n"]}
@@ -1,6 +0,0 @@
1
- // src/abis/bytecodes/dopplerDN404.ts
2
- var dopplerDN404_default = "0x608060405234610444576130dd8038038061001981610754565b928339810160c0828203126104445781516001600160401b0381116104445781610044918401610779565b60208301519092906001600160401b0381116104445782610066918301610779565b92604082015190610079606084016107ca565b92610086608082016107ca565b60a08201519095906001600160401b038111610444576100a69201610779565b936001600160a01b03168015610741575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a38051906001600160401b03821161047a5760015490600182811c92168015610737575b602083101461055f5781601f8493116106c9575b50602090601f8311600114610663575f92610658575b50508160011b915f199060031b1c1916176001555b83516001600160401b03811161047a57600254600181811c9116801561064e575b602082101461055f57601f81116105eb575b50602094601f8211600114610588579481929394955f9261057d575b50508160011b915f199060031b1c1916176002555b82516001600160401b03811161047a57600354600181811c91168015610573575b602082101461055f57601f81116104fc575b506020601f821160011461049957819293945f9261048e575b50508160011b915f199060031b1c1916176003555b604051610bec808201906001600160401b0382118383101761047a5760209183916124f183393381520301905ff0801561046f5768a20d6e21d0e5255309546001600160a01b03918216911661046257801561045557630f4599e55f523360205260205f6024601c82855af160015f5114161561044857678da5cb5b6cef16e65f5260208060046018305afa601f3d1160205160601b151016610435575b68a20d6e21d0e5255308805463ffffffff60201b191664010000000017905568a20d6e21d0e525530980546001600160a01b0319169190911790558061030b575b604051611cf190816108008239f35b6001600160a01b03821691821561042857670de0b6b3a7640000820463fffffffe108260601c1761041b5768a20d6e21d0e525530880546001600160a01b031660a084901b6001600160a01b0319169081179091556103ae929061036e836107de565b80546001600160a01b031690911790555f90815283907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082a36107de565b906bff00000000000000000000008254918260581c9060015f527fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff821691161560011b1860011760581b16906bff000000000000000000000019161790555f806102fc565b63e5cfe9575f526004601cfd5b63ea553b345f526004601cfd5b5f806004601c82855af16102bb575b5f80fd5b63d125259c5f526004601cfd5b6339a84a7b5f526004601cfd5b63ead4d2e45f526004601cfd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b015190505f80610208565b601f1982169060035f52805f20915f5b8181106104e4575095836001959697106104cc575b505050811b0160035561021d565b01515f1960f88460031b161c191690555f80806104be565b9192602060018192868b0151815501940192016104a9565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610555575b601f0160051c01905b81811061054a57506101ef565b5f815560010161053d565b9091508190610534565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101dd565b015190505f806101a7565b601f1982169560025f52805f20915f5b8881106105d3575083600195969798106105bb575b505050811b016002556101bc565b01515f1960f88460031b161c191690555f80806105ad565b91926020600181928685015181550194019201610598565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace601f830160051c81019160208410610644575b601f0160051c01905b818110610639575061018b565b5f815560010161062c565b9091508190610623565b90607f1690610179565b015190505f80610143565b60015f9081528281209350601f198516905b8181106106b15750908460019594939210610699575b505050811b01600155610158565b01515f1960f88460031b161c191690555f808061068b565b92936020600181928786015181550195019301610675565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c8101916020851061072d575b90601f859493920160051c01905b81811061071f575061012d565b5f8155849350600101610712565b9091508190610704565b91607f1691610119565b631e4fbdf760e01b5f525f60045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761047a57604052565b81601f82011215610444578051906001600160401b03821161047a576107a8601f8301601f1916602001610754565b928284526020838301011161044457815f9260208093018386015e8301015290565b51906001600160a01b038216820361044457565b6001600160a01b03165f90815268a20d6e21d0e5255313602052604090209056fe6080806040526004361015610667575b50361561065c575f3560e01c63e5eb36c881146103d25763f6916ddd811461038f576362fb246d811461036b57632d8a746e81146103325763c016aa52811461031f5763d10b6e0c811461022f576327ef549581146102145763f5b100ea81146101ef5763e2c7928181146101d45763cb30b46081146100a95763b7a94eb8146100a057633c10b94e5f526004601cfd5b60015f5260205ff35b60206040510160405260606003546100c081610f14565b6100e4575b50605f601f198201915f6020825180930101526020835201601f191690f35b905060405190608082019160a081016040525f8352600a600435935b5f19019360308282060185530492831561011c57600a90610100565b9250608083601f19810192030181526040519283915f9061013c85610f14565b94600181169081156101b45750600114610173575b61016d9450518092825e015f815203601f198101835282610f4c565b816100c5565b905060035f5260205f20935f5b818110610198575061016d9450830160200190610151565b8554602082890181019190915260019096019587955001610180565b602092935061016d96915060ff1916828601528015150284010190610151565b63ffffffff68a20d6e21d0e52553085460801c165f5260205ff35b63ffffffff6102086004356001600160a01b0316610f83565b5460801c165f5260205ff35b6001600160a01b03610227600435611adf565b165f5260205ff35b68a20d6e21d0e5255309546001600160a01b03163303610312576001600160a01b036044358116906024359060043581169061028061027b5f19600160201b861086020160011b611b18565b611a54565b5416928381036102ef575b505f82815268a20d6e21d0e525530c60209081526040822080546001600160a01b0319166001600160a01b03851617905568a20d6e21d0e525530d60601b600885901c018054600160ff90961695861b191693151590941b92909217909255918152f35b6102f99084611097565b5415610305578361028b565b63cfb3b9425f526004601cfd5b63ce5a776b5f526004601cfd5b6001600160a01b03610227600435611ab6565b6004356001600160a01b0361034682611ab6565b161561035e576001600160a01b039061022790611ab6565b63ceea21b65f526004601cfd5b6103856001600160a01b0360243581169060043516611097565b5415155f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633036103125760243515156103c86001600160a01b0360043581169060443516611097565b5560015f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633819003610312576001600160a01b036024358116916004358216916044359160643590911690841561064f5715610642576001600160a01b0361043a61027b600160201b851085025f190160011b611b18565b54168303610635578281036105fc575b5061045482610f83565b9061045e84610f83565b90825460a01c9283670de0b6b3a7640000116105ef576105989361049690670de0b6b3a763ffff19016001600160601b031682611a70565b82546104b89060a01c670de0b6b3a7640000016001600160601b031684611a70565b6104c182611b58565b6105be575b60016104f56104d487610fa4565b926104ef63ffffffff5f1981845460801c1601168092611a93565b83611b3c565b610517816105095f198701851b8501611b18565b9463ffffffff861690611b97565b63ffffffff5f19911601811b019060e08260031c685106b710e87292a98960611b019260051b1682549182821c1863ffffffff16901b1890556105928563ffffffff845460801c169361057363ffffffff600187011682611a93565b61058d61057f83610fa4565b8663ffffffff871691611b97565b611bbf565b90611c4f565b670de0b6b3a76400005f525f80516020611cc583398151915260205fa360015f5260205ff35b6105c782611b76565b5f82815268a20d6e21d0e525530c6020526040902080546001600160a01b03191690556104c6565b63f4d678b85f526004601cfd5b6106068184611097565b5461044a576001600160a01b0361061c83611adf565b1603610628578361044a565b6359c896be5f526004601cfd5b63a11481005f526004601cfd5b6340739bf05f526004601cfd5b63ea553b345f526004601cfd5b3461066357005b5f80fd5b5f3560e01c90816306fdde0314610e1c57508063095ea7b314610d7b57806310aa0ebb14610d5657806316f0115b14610d2e57806318160ddd14610d06578063207d063614610cc357806323b872dd14610c1d578063274e430b14610bf05780632a6a935d14610b7e578063313ce56714610b635780634ef41efc14610b3357806355f804b3146109c757806370a0823114610998578063715018a61461095457806389026538146109275780638da5cb5b1461090057806395d89b4114610826578063a9059cbb146107f5578063dd62ed3e146107c15763f2fde38b1461074f575f61000f565b3461066357602036600319011261066357610768610ee8565b610770611053565b6001600160a01b031680156107ae575f80546001600160a01b03198116831782556001600160a01b0316905f80516020611ca58339815191529080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346106635760403660031901126106635760206107ed6107df610ee8565b6107e7610efe565b90610fed565b604051908152f35b346106635760403660031901126106635761081b610811610ee8565b60243590336110b5565b602060405160018152f35b34610663575f366003190112610663576040515f60025461084681610f14565b80845290600181169081156108dc575060011461087e575b61087a8361086e81850382610f4c565b60405191829182610ebe565b0390f35b60025f9081527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace939250905b8082106108c25750909150810160200161086e61085e565b9192600181602092548385880101520191019092916108aa565b60ff191660208086019190915291151560051b8401909101915061086e905061085e565b34610663575f366003190112610663575f546040516001600160a01b039091168152602090f35b34610663575f3660031901126106635761093f611053565b6004805460ff60a01b1916600160a01b179055005b34610663575f3660031901126106635761096c611053565b5f80546001600160a01b0319811682556001600160a01b03165f80516020611ca58339815191528280a3005b346106635760203660031901126106635760206109bb6109b6610ee8565b610f83565b5460a01c604051908152f35b34610663576020366003190112610663576004356001600160401b03811161066357366023820112156106635760048101356001600160401b03811161066357366024828401011161066357610a1b611053565b610a26600354610f14565b601f8111610ad0575b505f601f8211600114610a6b5781925f92610a5d575b50508160011b915f199060031b1c1916176003555f80f35b602492500101358280610a45565b601f1982169260035f5260205f20915f5b858110610ab557508360019510610a99575b505050811b01600355005b01602401355f19600384901b60f8161c19169055828080610a8e565b90926020600181926024878701013581550194019101610a7c565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610b29575b601f0160051c01905b818110610b1e5750610a2f565b5f8155600101610b11565b9091508190610b08565b34610663575f3660031901126106635768a20d6e21d0e5255309546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060405160128152f35b3461066357602036600319011261066357600435801580158092036106635761081b91610baa33610f83565b91825460581c915f52337fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff83169216151860011b1860011790611036565b34610663576020366003190112610663576020610c13610c0e610ee8565b610fc5565b6040519015158152f35b3461066357606036600319011261066357610c36610ee8565b610c3e610efe565b60443590610c4c3384611079565b926e22d473030f116ddee9f6b43ac78ba3331480610cac575b15610ca4575f19935b60018501610c82575b5061081b93506110b5565b848411610c97578361081b9503905584610c77565b6313be252b5f526004601cfd5b835493610c6e565b506004610cb882610f83565b5460581c1615610c65565b3461066357602036600319011261066357610cdc610ee8565b610ce4611053565b600480546001600160a81b0319166001600160a01b0392909216919091179055005b34610663575f36600319011261066357602068a20d6e21d0e52553085460a01c604051908152f35b34610663575f366003190112610663576004546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060ff60045460a01c166040519015158152f35b3461066357604036600319011261066357610d94610ee8565b6001600160a01b03811690602435908190610dc6906e22d473030f116ddee9f6b43ac78ba38514610dfa575b33611079565b555f52337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa3602060405160018152f35b610e17610e0633610f83565b600460ff825460581c161790611036565b610dc0565b34610663575f366003190112610663575f600154610e3981610f14565b80845290600181169081156108dc5750600114610e605761087a8361086e81850382610f4c565b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610ea45750909150810160200161086e61085e565b919260018160209254838588010152019101909291610e8c565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361066357565b602435906001600160a01b038216820361066357565b90600182811c92168015610f42575b6020831014610f2e57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610f23565b601f909101601f19168101906001600160401b03821190821017610f6f57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b03165f90815268a20d6e21d0e52553136020526040902090565b6001600160a01b03165f90815268a20d6e21d0e52553106020526040902090565b90610fcf82610f83565b5460581c916001600284161515931615610fe65750565b3b15159150565b906001600160a01b0381166e22d473030f116ddee9f6b43ac78ba31461101b575b61101791611079565b5490565b600461102683610f83565b5460581c1661100e5750505f1990565b805460ff60581b191660589290921b60ff60581b16919091179055565b5f546001600160a01b0316330361106657565b63118cdaa760e01b5f523360045260245ffd5b9060285260145268a20d6e21d0e525530f5f5260485f20905f602852565b9060285260145268a20d6e21d0e525530b5f5260485f20905f602852565b6004549092906001600160a01b03838116908216149081611a45575b50611a36576001600160a01b0382161561064f576110ee83610f83565b6110f783610f83565b68a20d6e21d0e5255309546001600160a01b031615610642576040519161018083016001600160401b03811184821017610f6f576040525f83525f60208401525f60808401525f60a08401525f60c08401525f60e08401525f6101008401525f6101208401525f6101408401525f610160840152805463ffffffff8160801c16604085015263ffffffff835460801c1660608501528060a01c85116105ef5760a01c8490036111af6001600160601b03821683611a70565b825460a01c8501906111ca6001600160601b03831685611a70565b670de0b6b3a76400006040860151910480820391110284526111eb86610fc5565b156119ee575b506117e9565b68a20d6e21d0e52553085463ffffffff60208501518551928382848360801c1601038060808901528360801b9060801b16908360801b191617928368a20d6e21d0e52553085501916040519260c060a085019180835260051b850101604052836040015260c0830183528261016087015260601c1661012085015283516116c9575b5050602082015161135e575b506101408101518061131a575b506101600151806112c8575b505f9081526001600160a01b0391821692909116905f80516020611cc583398151915290602090a3565b600160206040828060a01b0368a20d6e21d0e5255309541693015192603f19840193849163263c69d6835283601f198301525f825160051b6044019260231901915af19151141615610663575f61129e565b600160205f9281838060a01b0368a20d6e21d0e5255309541691015190815160051b60840190607f19830195869360631901915af19151141615610663575f611292565b9194610160829492015160208360601b91015261137a82610fa4565b9463ffffffff61138a8486611bbf565b1660e086015268a20d6e21d0e5255308549263ffffffff670de0b6b3a76400008560a01c049460201c1684811190811502176101008701526113e460608701519563ffffffff602089015188018060c08b01521690611a93565b63ffffffff68a20d6e21d0e52553085460401c169760015b1561166a575b6101208701515f9063ffffffff8b81169116146114b8576114b363ffffffff60018c01169a60e0641fffffffe0631fffffff8360031c1668a20d6e21d0e525531160601b01549260051b16161c63ffffffff165b8060081c685106b710e87292a98760611b0160018260ff161b801982541617905561148863ffffffff82168a8d611b97565b6114a863ffffffff60e08c01511663ffffffff60018c019b169083611c4f565b6101608a0151611c8e565b6113fc565b949798939291906101008801515b63ffffffff6114da5f19830160011b611b18565b1615611646575f19906001810160081c685106b710e87292a98760611b018054196001830160ff1690811c901b80156115ce575b80611524575b50505089811190811502176114c6565b600180939450811901167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f6101e07a1412563212c14164235266736f7425221143267a4524367526767760fc7b2aaaaaaaba69a69a6db6db6db2cb2cb2ce739ce73def7bdeffffffff860260f81c161b60f71c1692831c63d76453e004161a179082685106b710e87292a98760611b03190160081b17910181108a8211175f03175f8080611514565b506001909c9895929c9a9794919a9693965b01805419685106b710e87292a98760611b60088e901c018211811761160857506001906115e0565b9c9295989c9a9194979a969396808d60081c685106b710e87292a98760611b018311611635575b5061150e565b508c1960ff1690811b901c8061162f565b6114b3909a999691929394959a6001810188811190811502176101008b0152611456565b60c0870151860361140257945094925094509468a20d6e21d0e52553085463ffffffff60201b61010084015160201b169163ffffffff60401b9060401b1690600160201b600160601b031916171768a20d6e21d0e5255308555f611285565b602060018860609a9699959a989497981b179101526116e782610fa4565b9461170760408801519563ffffffff895188038060a08c01521690611a93565b60015b156117d0575b5f945f1901946117208688611b3c565b63ffffffff8116905f1982018060021c685106b710e87292a98960611b019060c082549160061b1681811c60018060401b0316901b189055611767826101608c0151611c8e565b600160ff62ffffff8360081c16685106b710e87292a98760611b0192161b19815416905561179481611b58565b61179f575b5061170a565b6117a881611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611799565b60a0870151850361171057935093509390945f80611279565b9194604086979294970151948651976020880151898110818b18028a1899888b108b8a180289146119df578a8918898c10028918908190038a52900360208901526001600160a01b03838116908316146119bd576040805163144027d3818301526001600160a01b03858116606080840191909152908516608083015260a08201528a8918898c1002891860c0820181815260059190911b820160e0908101909352602082015290810181526101408901526118a483610fa4565b956118ae83610fa4565b9763ffffffff6118be8584611bbf565b1660e08b015260608a01519a81811090821802188a019560015b15611977575b878b6119228163ffffffff808f8f9061191660e0928461190d5f9b5f1960408701510190816040880152611b3c565b16988991611b97565b01511691169083611c4f565b6101408c01516020815183815201905261193b81611b58565b611946575b506118d8565b61194f81611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611940565b9960010199868b036118de579398955093986119a492975063ffffffff9196508060608701521683611a93565b6119b863ffffffff60408501511682611a93565b6111f7565b94929786819895939897929710908218021860608401510160608401526111f7565b505094929750945094916111f7565b670de0b6b3a7640000906001600160a01b0388811690881614611a23575b04606084015180820391110260208401525f6111f1565b6040850151855190036060860152611a0c565b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f6110d1565b63ffffffff165f5268a20d6e21d0e525530a60205260405f2090565b80546001600160a01b031660a09290921b6001600160a01b031916919091179055565b805463ffffffff60801b191660809290921b63ffffffff60801b16919091179055565b6001600160a01b0390611ada9061027b90600160201b8110025f190160011b611b18565b541690565b6001600160a01b03611af082611ab6565b161561035e575f90815268a20d6e21d0e525530c60205260409020546001600160a01b031690565b60e08160031c685106b710e87292a98960611b01549160051b161c63ffffffff1690565b60e0908260031c9060601b01549160051b161c63ffffffff1690565b8060081c68a20d6e21d0e525530d60601b01549060ff161c60011690565b60018160081c68a20d6e21d0e525530d60601b019160ff161b198154169055565b60e0909291928360031c9060601b019260051b1682549182821c1863ffffffff16901b189055565b805460601c63ffffffff1692918315611bd6575050565b68a20d6e21d0e5255308805463ffffffff19811663ffffffff918216600101918216908117909255835463ffffffff60601b191660609190911b63ffffffff60601b16179092559092508290611c2b82611a54565b80546001600160a01b0319166001600160a01b039092169190911790551561066357565b5f1901908160021c685106b710e87292a98960611b019260c084549360061b169163ffffffff169060201b1782821c1860018060401b0316901b189055565b9060209082519060081b8284015117815201905256fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a608034607857601f610bec38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811690819003607857683602298b8c10b0123180546001600160a01b031916919091179055604051610b5b90816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60808060405260043610156101c5575b5036156101ba575f3560e01c63263c69d681146101405763144027d381146100cf57630f4599e51461004857633c10b94e5f526004601cfd5b683602298b8c10b01231546001600160a01b0316806100ab575b50683602298b8c10b01230546001600160a01b03811661009e576001600160a01b0319163317683602298b8c10b012305560015f908152602090f35b63bf656a465f526004601cfd5b6004356001600160a01b0316036100c2575f610062565b63c59ec47a5f526004601cfd5b683602298b8c10b01230546001600160a01b03163303610133576004356024359060443591602483810193600481013560051b0101925b8381036101165760015f5260205ff35b803582845f80516020610b2f8339815191525f80a4602001610106565b63363cb3125f526004601cfd5b683602298b8c10b01230546001600160a01b0316330361013357600435602481810191600481013560051b0101905b81810361017f5760015f5260205ff35b8035600881901c6001600160581b03169060018116801560609290921c91820291025f80516020610b2f8339815191525f80a460200161016f565b346101c157005b5f80fd5b5f3560e01c90816301ffc9a71461098a5750806306fdde031461091f578063081812fc146108c8578063095ea7b31461084657806318160ddd146107fa57806323b872dd146107e6578063243598791461078f57806342842e0e1461071c5780636352211e146106ed5780636cef16e61461062157806370a08231146105c45780638da5cb5b1461059457806395d89b411461052957806397e5311c146104fd578063a22cb46514610471578063b88d4fde14610387578063c87b56dd1461030b5763e985e9c514610297575f61000f565b346101c15760403660031901126101c1576102b06109fe565b60205f6044601c6102bf610a14565b6102c7610ad0565b604080516362fb246d87526001600160a01b039889168852979092169091525afa601f3d1116156103035760405260205f516040519015158152f35b3d5f823e3d90fd5b346101c15760203660031901126101c15760043561032881610afa565b505f806024601c610337610ad0565b6040519563cb30b46085526020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b0390f35b60803660031901126101c15761039b6109fe565b6103a3610a14565b60443591606435916001600160401b0383116101c157366023840112156101c1576004830135926001600160401b0384116101c15736602485830101116101c1576103ef858385610a64565b813b6103f757005b83602094602460a49360405198899763150b7a028952338a8a015260018060a01b0316604089015260608801526080808801528260a08801520160c086013701905f601c8401915af115610463575b5163757a42ff60e11b0161045657005b63d1a57ed65f526004601cfd5b3d15610446573d5f823e3d90fd5b346101c15760403660031901126101c15761048a6109fe565b6024358015158091036101c15760205f6064601c826104a7610ad0565b9660018060a01b0316966040519663f6916ddd8352888752604052336060525af160015f511416156103035750337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160206040a3005b346101c1575f3660031901126101c1576020610517610ad0565b6040516001600160a01b039091168152f35b346101c1575f3660031901126101c157610541610ad0565b5f806024601c604051946395d89b418452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c1575f3660031901126101c157683602298b8c10b01232546040516001600160a01b039091168152602090f35b346101c15760203660031901126101c1576001600160a01b036105e56109fe565b1660205f6044601c6105f5610ad0565b6040519563f5b100ea85528552836040525afa601f3d1116156103035760405260205f51604051908152f35b346101c1575f3660031901126101c157610639610ad0565b683602298b8c10b012325460205f6004601c60018060a01b03851695638da5cb5b84525afa9081601f3d1116600c5160601c0291156106d6575b506001600160a01b031690818103610691575b602060405160018152f35b683602298b8c10b0123280546001600160a01b031916831790557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a38080610686565b60601b6001600160601b0319166101c15782610673565b346101c15760203660031901126101c15760206001600160a01b03610713600435610afa565b16604051908152f35b61072536610a2a565b91610731838383610a64565b813b61073957005b60a460209260405194859363150b7a028552338686015260018060a01b0316604085015260608401526080808401525f60a08401525f3681375f601c8401915af115610463575163757a42ff60e11b0161045657005b346101c15760203660031901126101c1576107a8610ad0565b60205f6044601c6040519463c016aa5284526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b6107f86107f236610a2a565b91610a64565b005b346101c1575f3660031901126101c157610812610ad0565b60205f6044601c6040519463e2c792818452838552836040525afa601f3d1116156103035760405260205f51604051908152f35b60403660031901126101c15761085a6109fe565b60243590610866610ad0565b9060018060a01b03169060205f6064601c6040519463d10b6e0c8452868552876040523360605234905af1601f3d1116156103035750600c5160601c7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b346101c15760203660031901126101c1576108e1610ad0565b60205f6044601c604051946327ef549584526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b346101c1575f3660031901126101c157610937610ad0565b5f806024601c604051946306fdde038452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c15760203660031901126101c157600435906001600160e01b0319821682036101c15760209160e01c635b5e139f8114906301ffc9a76380ac58cd82149114171715158152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c157565b602435906001600160a01b03821682036101c157565b60609060031901126101c1576004356001600160a01b03811681036101c157906024356001600160a01b03811681036101c1579060443590565b9060846020610a71610ad0565b6040805163e5eb36c881526001600160a01b03968716848201819052959096169086018190526060860187905233608087015294928391601c83019034905af16001825114161561030357505f80516020610b2f8339815191525f80a4565b683602298b8c10b01230546001600160a01b0316908115610aed57565b635b2a47ae5f526004601cfd5b60205f6044601c610b09610ad0565b60405195632d8a746e85528552836040525afa601f3d111615610303576040525f519056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a";
3
-
4
- export { dopplerDN404_default };
5
- //# sourceMappingURL=chunk-OHA5KJ2M.mjs.map
6
- //# sourceMappingURL=chunk-OHA5KJ2M.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/abis/bytecodes/dopplerDN404.ts"],"names":[],"mappings":";AAAA,IAAO,oBAAA,GAAQ","file":"chunk-OHA5KJ2M.mjs","sourcesContent":["export default '0x608060405234610444576130dd8038038061001981610754565b928339810160c0828203126104445781516001600160401b0381116104445781610044918401610779565b60208301519092906001600160401b0381116104445782610066918301610779565b92604082015190610079606084016107ca565b92610086608082016107ca565b60a08201519095906001600160401b038111610444576100a69201610779565b936001600160a01b03168015610741575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a38051906001600160401b03821161047a5760015490600182811c92168015610737575b602083101461055f5781601f8493116106c9575b50602090601f8311600114610663575f92610658575b50508160011b915f199060031b1c1916176001555b83516001600160401b03811161047a57600254600181811c9116801561064e575b602082101461055f57601f81116105eb575b50602094601f8211600114610588579481929394955f9261057d575b50508160011b915f199060031b1c1916176002555b82516001600160401b03811161047a57600354600181811c91168015610573575b602082101461055f57601f81116104fc575b506020601f821160011461049957819293945f9261048e575b50508160011b915f199060031b1c1916176003555b604051610bec808201906001600160401b0382118383101761047a5760209183916124f183393381520301905ff0801561046f5768a20d6e21d0e5255309546001600160a01b03918216911661046257801561045557630f4599e55f523360205260205f6024601c82855af160015f5114161561044857678da5cb5b6cef16e65f5260208060046018305afa601f3d1160205160601b151016610435575b68a20d6e21d0e5255308805463ffffffff60201b191664010000000017905568a20d6e21d0e525530980546001600160a01b0319169190911790558061030b575b604051611cf190816108008239f35b6001600160a01b03821691821561042857670de0b6b3a7640000820463fffffffe108260601c1761041b5768a20d6e21d0e525530880546001600160a01b031660a084901b6001600160a01b0319169081179091556103ae929061036e836107de565b80546001600160a01b031690911790555f90815283907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082a36107de565b906bff00000000000000000000008254918260581c9060015f527fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff821691161560011b1860011760581b16906bff000000000000000000000019161790555f806102fc565b63e5cfe9575f526004601cfd5b63ea553b345f526004601cfd5b5f806004601c82855af16102bb575b5f80fd5b63d125259c5f526004601cfd5b6339a84a7b5f526004601cfd5b63ead4d2e45f526004601cfd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b015190505f80610208565b601f1982169060035f52805f20915f5b8181106104e4575095836001959697106104cc575b505050811b0160035561021d565b01515f1960f88460031b161c191690555f80806104be565b9192602060018192868b0151815501940192016104a9565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610555575b601f0160051c01905b81811061054a57506101ef565b5f815560010161053d565b9091508190610534565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101dd565b015190505f806101a7565b601f1982169560025f52805f20915f5b8881106105d3575083600195969798106105bb575b505050811b016002556101bc565b01515f1960f88460031b161c191690555f80806105ad565b91926020600181928685015181550194019201610598565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace601f830160051c81019160208410610644575b601f0160051c01905b818110610639575061018b565b5f815560010161062c565b9091508190610623565b90607f1690610179565b015190505f80610143565b60015f9081528281209350601f198516905b8181106106b15750908460019594939210610699575b505050811b01600155610158565b01515f1960f88460031b161c191690555f808061068b565b92936020600181928786015181550195019301610675565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c8101916020851061072d575b90601f859493920160051c01905b81811061071f575061012d565b5f8155849350600101610712565b9091508190610704565b91607f1691610119565b631e4fbdf760e01b5f525f60045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761047a57604052565b81601f82011215610444578051906001600160401b03821161047a576107a8601f8301601f1916602001610754565b928284526020838301011161044457815f9260208093018386015e8301015290565b51906001600160a01b038216820361044457565b6001600160a01b03165f90815268a20d6e21d0e5255313602052604090209056fe6080806040526004361015610667575b50361561065c575f3560e01c63e5eb36c881146103d25763f6916ddd811461038f576362fb246d811461036b57632d8a746e81146103325763c016aa52811461031f5763d10b6e0c811461022f576327ef549581146102145763f5b100ea81146101ef5763e2c7928181146101d45763cb30b46081146100a95763b7a94eb8146100a057633c10b94e5f526004601cfd5b60015f5260205ff35b60206040510160405260606003546100c081610f14565b6100e4575b50605f601f198201915f6020825180930101526020835201601f191690f35b905060405190608082019160a081016040525f8352600a600435935b5f19019360308282060185530492831561011c57600a90610100565b9250608083601f19810192030181526040519283915f9061013c85610f14565b94600181169081156101b45750600114610173575b61016d9450518092825e015f815203601f198101835282610f4c565b816100c5565b905060035f5260205f20935f5b818110610198575061016d9450830160200190610151565b8554602082890181019190915260019096019587955001610180565b602092935061016d96915060ff1916828601528015150284010190610151565b63ffffffff68a20d6e21d0e52553085460801c165f5260205ff35b63ffffffff6102086004356001600160a01b0316610f83565b5460801c165f5260205ff35b6001600160a01b03610227600435611adf565b165f5260205ff35b68a20d6e21d0e5255309546001600160a01b03163303610312576001600160a01b036044358116906024359060043581169061028061027b5f19600160201b861086020160011b611b18565b611a54565b5416928381036102ef575b505f82815268a20d6e21d0e525530c60209081526040822080546001600160a01b0319166001600160a01b03851617905568a20d6e21d0e525530d60601b600885901c018054600160ff90961695861b191693151590941b92909217909255918152f35b6102f99084611097565b5415610305578361028b565b63cfb3b9425f526004601cfd5b63ce5a776b5f526004601cfd5b6001600160a01b03610227600435611ab6565b6004356001600160a01b0361034682611ab6565b161561035e576001600160a01b039061022790611ab6565b63ceea21b65f526004601cfd5b6103856001600160a01b0360243581169060043516611097565b5415155f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633036103125760243515156103c86001600160a01b0360043581169060443516611097565b5560015f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633819003610312576001600160a01b036024358116916004358216916044359160643590911690841561064f5715610642576001600160a01b0361043a61027b600160201b851085025f190160011b611b18565b54168303610635578281036105fc575b5061045482610f83565b9061045e84610f83565b90825460a01c9283670de0b6b3a7640000116105ef576105989361049690670de0b6b3a763ffff19016001600160601b031682611a70565b82546104b89060a01c670de0b6b3a7640000016001600160601b031684611a70565b6104c182611b58565b6105be575b60016104f56104d487610fa4565b926104ef63ffffffff5f1981845460801c1601168092611a93565b83611b3c565b610517816105095f198701851b8501611b18565b9463ffffffff861690611b97565b63ffffffff5f19911601811b019060e08260031c685106b710e87292a98960611b019260051b1682549182821c1863ffffffff16901b1890556105928563ffffffff845460801c169361057363ffffffff600187011682611a93565b61058d61057f83610fa4565b8663ffffffff871691611b97565b611bbf565b90611c4f565b670de0b6b3a76400005f525f80516020611cc583398151915260205fa360015f5260205ff35b6105c782611b76565b5f82815268a20d6e21d0e525530c6020526040902080546001600160a01b03191690556104c6565b63f4d678b85f526004601cfd5b6106068184611097565b5461044a576001600160a01b0361061c83611adf565b1603610628578361044a565b6359c896be5f526004601cfd5b63a11481005f526004601cfd5b6340739bf05f526004601cfd5b63ea553b345f526004601cfd5b3461066357005b5f80fd5b5f3560e01c90816306fdde0314610e1c57508063095ea7b314610d7b57806310aa0ebb14610d5657806316f0115b14610d2e57806318160ddd14610d06578063207d063614610cc357806323b872dd14610c1d578063274e430b14610bf05780632a6a935d14610b7e578063313ce56714610b635780634ef41efc14610b3357806355f804b3146109c757806370a0823114610998578063715018a61461095457806389026538146109275780638da5cb5b1461090057806395d89b4114610826578063a9059cbb146107f5578063dd62ed3e146107c15763f2fde38b1461074f575f61000f565b3461066357602036600319011261066357610768610ee8565b610770611053565b6001600160a01b031680156107ae575f80546001600160a01b03198116831782556001600160a01b0316905f80516020611ca58339815191529080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346106635760403660031901126106635760206107ed6107df610ee8565b6107e7610efe565b90610fed565b604051908152f35b346106635760403660031901126106635761081b610811610ee8565b60243590336110b5565b602060405160018152f35b34610663575f366003190112610663576040515f60025461084681610f14565b80845290600181169081156108dc575060011461087e575b61087a8361086e81850382610f4c565b60405191829182610ebe565b0390f35b60025f9081527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace939250905b8082106108c25750909150810160200161086e61085e565b9192600181602092548385880101520191019092916108aa565b60ff191660208086019190915291151560051b8401909101915061086e905061085e565b34610663575f366003190112610663575f546040516001600160a01b039091168152602090f35b34610663575f3660031901126106635761093f611053565b6004805460ff60a01b1916600160a01b179055005b34610663575f3660031901126106635761096c611053565b5f80546001600160a01b0319811682556001600160a01b03165f80516020611ca58339815191528280a3005b346106635760203660031901126106635760206109bb6109b6610ee8565b610f83565b5460a01c604051908152f35b34610663576020366003190112610663576004356001600160401b03811161066357366023820112156106635760048101356001600160401b03811161066357366024828401011161066357610a1b611053565b610a26600354610f14565b601f8111610ad0575b505f601f8211600114610a6b5781925f92610a5d575b50508160011b915f199060031b1c1916176003555f80f35b602492500101358280610a45565b601f1982169260035f5260205f20915f5b858110610ab557508360019510610a99575b505050811b01600355005b01602401355f19600384901b60f8161c19169055828080610a8e565b90926020600181926024878701013581550194019101610a7c565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610b29575b601f0160051c01905b818110610b1e5750610a2f565b5f8155600101610b11565b9091508190610b08565b34610663575f3660031901126106635768a20d6e21d0e5255309546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060405160128152f35b3461066357602036600319011261066357600435801580158092036106635761081b91610baa33610f83565b91825460581c915f52337fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff83169216151860011b1860011790611036565b34610663576020366003190112610663576020610c13610c0e610ee8565b610fc5565b6040519015158152f35b3461066357606036600319011261066357610c36610ee8565b610c3e610efe565b60443590610c4c3384611079565b926e22d473030f116ddee9f6b43ac78ba3331480610cac575b15610ca4575f19935b60018501610c82575b5061081b93506110b5565b848411610c97578361081b9503905584610c77565b6313be252b5f526004601cfd5b835493610c6e565b506004610cb882610f83565b5460581c1615610c65565b3461066357602036600319011261066357610cdc610ee8565b610ce4611053565b600480546001600160a81b0319166001600160a01b0392909216919091179055005b34610663575f36600319011261066357602068a20d6e21d0e52553085460a01c604051908152f35b34610663575f366003190112610663576004546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060ff60045460a01c166040519015158152f35b3461066357604036600319011261066357610d94610ee8565b6001600160a01b03811690602435908190610dc6906e22d473030f116ddee9f6b43ac78ba38514610dfa575b33611079565b555f52337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa3602060405160018152f35b610e17610e0633610f83565b600460ff825460581c161790611036565b610dc0565b34610663575f366003190112610663575f600154610e3981610f14565b80845290600181169081156108dc5750600114610e605761087a8361086e81850382610f4c565b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610ea45750909150810160200161086e61085e565b919260018160209254838588010152019101909291610e8c565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361066357565b602435906001600160a01b038216820361066357565b90600182811c92168015610f42575b6020831014610f2e57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610f23565b601f909101601f19168101906001600160401b03821190821017610f6f57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b03165f90815268a20d6e21d0e52553136020526040902090565b6001600160a01b03165f90815268a20d6e21d0e52553106020526040902090565b90610fcf82610f83565b5460581c916001600284161515931615610fe65750565b3b15159150565b906001600160a01b0381166e22d473030f116ddee9f6b43ac78ba31461101b575b61101791611079565b5490565b600461102683610f83565b5460581c1661100e5750505f1990565b805460ff60581b191660589290921b60ff60581b16919091179055565b5f546001600160a01b0316330361106657565b63118cdaa760e01b5f523360045260245ffd5b9060285260145268a20d6e21d0e525530f5f5260485f20905f602852565b9060285260145268a20d6e21d0e525530b5f5260485f20905f602852565b6004549092906001600160a01b03838116908216149081611a45575b50611a36576001600160a01b0382161561064f576110ee83610f83565b6110f783610f83565b68a20d6e21d0e5255309546001600160a01b031615610642576040519161018083016001600160401b03811184821017610f6f576040525f83525f60208401525f60808401525f60a08401525f60c08401525f60e08401525f6101008401525f6101208401525f6101408401525f610160840152805463ffffffff8160801c16604085015263ffffffff835460801c1660608501528060a01c85116105ef5760a01c8490036111af6001600160601b03821683611a70565b825460a01c8501906111ca6001600160601b03831685611a70565b670de0b6b3a76400006040860151910480820391110284526111eb86610fc5565b156119ee575b506117e9565b68a20d6e21d0e52553085463ffffffff60208501518551928382848360801c1601038060808901528360801b9060801b16908360801b191617928368a20d6e21d0e52553085501916040519260c060a085019180835260051b850101604052836040015260c0830183528261016087015260601c1661012085015283516116c9575b5050602082015161135e575b506101408101518061131a575b506101600151806112c8575b505f9081526001600160a01b0391821692909116905f80516020611cc583398151915290602090a3565b600160206040828060a01b0368a20d6e21d0e5255309541693015192603f19840193849163263c69d6835283601f198301525f825160051b6044019260231901915af19151141615610663575f61129e565b600160205f9281838060a01b0368a20d6e21d0e5255309541691015190815160051b60840190607f19830195869360631901915af19151141615610663575f611292565b9194610160829492015160208360601b91015261137a82610fa4565b9463ffffffff61138a8486611bbf565b1660e086015268a20d6e21d0e5255308549263ffffffff670de0b6b3a76400008560a01c049460201c1684811190811502176101008701526113e460608701519563ffffffff602089015188018060c08b01521690611a93565b63ffffffff68a20d6e21d0e52553085460401c169760015b1561166a575b6101208701515f9063ffffffff8b81169116146114b8576114b363ffffffff60018c01169a60e0641fffffffe0631fffffff8360031c1668a20d6e21d0e525531160601b01549260051b16161c63ffffffff165b8060081c685106b710e87292a98760611b0160018260ff161b801982541617905561148863ffffffff82168a8d611b97565b6114a863ffffffff60e08c01511663ffffffff60018c019b169083611c4f565b6101608a0151611c8e565b6113fc565b949798939291906101008801515b63ffffffff6114da5f19830160011b611b18565b1615611646575f19906001810160081c685106b710e87292a98760611b018054196001830160ff1690811c901b80156115ce575b80611524575b50505089811190811502176114c6565b600180939450811901167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f6101e07a1412563212c14164235266736f7425221143267a4524367526767760fc7b2aaaaaaaba69a69a6db6db6db2cb2cb2ce739ce73def7bdeffffffff860260f81c161b60f71c1692831c63d76453e004161a179082685106b710e87292a98760611b03190160081b17910181108a8211175f03175f8080611514565b506001909c9895929c9a9794919a9693965b01805419685106b710e87292a98760611b60088e901c018211811761160857506001906115e0565b9c9295989c9a9194979a969396808d60081c685106b710e87292a98760611b018311611635575b5061150e565b508c1960ff1690811b901c8061162f565b6114b3909a999691929394959a6001810188811190811502176101008b0152611456565b60c0870151860361140257945094925094509468a20d6e21d0e52553085463ffffffff60201b61010084015160201b169163ffffffff60401b9060401b1690600160201b600160601b031916171768a20d6e21d0e5255308555f611285565b602060018860609a9699959a989497981b179101526116e782610fa4565b9461170760408801519563ffffffff895188038060a08c01521690611a93565b60015b156117d0575b5f945f1901946117208688611b3c565b63ffffffff8116905f1982018060021c685106b710e87292a98960611b019060c082549160061b1681811c60018060401b0316901b189055611767826101608c0151611c8e565b600160ff62ffffff8360081c16685106b710e87292a98760611b0192161b19815416905561179481611b58565b61179f575b5061170a565b6117a881611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611799565b60a0870151850361171057935093509390945f80611279565b9194604086979294970151948651976020880151898110818b18028a1899888b108b8a180289146119df578a8918898c10028918908190038a52900360208901526001600160a01b03838116908316146119bd576040805163144027d3818301526001600160a01b03858116606080840191909152908516608083015260a08201528a8918898c1002891860c0820181815260059190911b820160e0908101909352602082015290810181526101408901526118a483610fa4565b956118ae83610fa4565b9763ffffffff6118be8584611bbf565b1660e08b015260608a01519a81811090821802188a019560015b15611977575b878b6119228163ffffffff808f8f9061191660e0928461190d5f9b5f1960408701510190816040880152611b3c565b16988991611b97565b01511691169083611c4f565b6101408c01516020815183815201905261193b81611b58565b611946575b506118d8565b61194f81611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611940565b9960010199868b036118de579398955093986119a492975063ffffffff9196508060608701521683611a93565b6119b863ffffffff60408501511682611a93565b6111f7565b94929786819895939897929710908218021860608401510160608401526111f7565b505094929750945094916111f7565b670de0b6b3a7640000906001600160a01b0388811690881614611a23575b04606084015180820391110260208401525f6111f1565b6040850151855190036060860152611a0c565b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f6110d1565b63ffffffff165f5268a20d6e21d0e525530a60205260405f2090565b80546001600160a01b031660a09290921b6001600160a01b031916919091179055565b805463ffffffff60801b191660809290921b63ffffffff60801b16919091179055565b6001600160a01b0390611ada9061027b90600160201b8110025f190160011b611b18565b541690565b6001600160a01b03611af082611ab6565b161561035e575f90815268a20d6e21d0e525530c60205260409020546001600160a01b031690565b60e08160031c685106b710e87292a98960611b01549160051b161c63ffffffff1690565b60e0908260031c9060601b01549160051b161c63ffffffff1690565b8060081c68a20d6e21d0e525530d60601b01549060ff161c60011690565b60018160081c68a20d6e21d0e525530d60601b019160ff161b198154169055565b60e0909291928360031c9060601b019260051b1682549182821c1863ffffffff16901b189055565b805460601c63ffffffff1692918315611bd6575050565b68a20d6e21d0e5255308805463ffffffff19811663ffffffff918216600101918216908117909255835463ffffffff60601b191660609190911b63ffffffff60601b16179092559092508290611c2b82611a54565b80546001600160a01b0319166001600160a01b039092169190911790551561066357565b5f1901908160021c685106b710e87292a98960611b019260c084549360061b169163ffffffff169060201b1782821c1860018060401b0316901b189055565b9060209082519060081b8284015117815201905256fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a608034607857601f610bec38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811690819003607857683602298b8c10b0123180546001600160a01b031916919091179055604051610b5b90816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60808060405260043610156101c5575b5036156101ba575f3560e01c63263c69d681146101405763144027d381146100cf57630f4599e51461004857633c10b94e5f526004601cfd5b683602298b8c10b01231546001600160a01b0316806100ab575b50683602298b8c10b01230546001600160a01b03811661009e576001600160a01b0319163317683602298b8c10b012305560015f908152602090f35b63bf656a465f526004601cfd5b6004356001600160a01b0316036100c2575f610062565b63c59ec47a5f526004601cfd5b683602298b8c10b01230546001600160a01b03163303610133576004356024359060443591602483810193600481013560051b0101925b8381036101165760015f5260205ff35b803582845f80516020610b2f8339815191525f80a4602001610106565b63363cb3125f526004601cfd5b683602298b8c10b01230546001600160a01b0316330361013357600435602481810191600481013560051b0101905b81810361017f5760015f5260205ff35b8035600881901c6001600160581b03169060018116801560609290921c91820291025f80516020610b2f8339815191525f80a460200161016f565b346101c157005b5f80fd5b5f3560e01c90816301ffc9a71461098a5750806306fdde031461091f578063081812fc146108c8578063095ea7b31461084657806318160ddd146107fa57806323b872dd146107e6578063243598791461078f57806342842e0e1461071c5780636352211e146106ed5780636cef16e61461062157806370a08231146105c45780638da5cb5b1461059457806395d89b411461052957806397e5311c146104fd578063a22cb46514610471578063b88d4fde14610387578063c87b56dd1461030b5763e985e9c514610297575f61000f565b346101c15760403660031901126101c1576102b06109fe565b60205f6044601c6102bf610a14565b6102c7610ad0565b604080516362fb246d87526001600160a01b039889168852979092169091525afa601f3d1116156103035760405260205f516040519015158152f35b3d5f823e3d90fd5b346101c15760203660031901126101c15760043561032881610afa565b505f806024601c610337610ad0565b6040519563cb30b46085526020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b0390f35b60803660031901126101c15761039b6109fe565b6103a3610a14565b60443591606435916001600160401b0383116101c157366023840112156101c1576004830135926001600160401b0384116101c15736602485830101116101c1576103ef858385610a64565b813b6103f757005b83602094602460a49360405198899763150b7a028952338a8a015260018060a01b0316604089015260608801526080808801528260a08801520160c086013701905f601c8401915af115610463575b5163757a42ff60e11b0161045657005b63d1a57ed65f526004601cfd5b3d15610446573d5f823e3d90fd5b346101c15760403660031901126101c15761048a6109fe565b6024358015158091036101c15760205f6064601c826104a7610ad0565b9660018060a01b0316966040519663f6916ddd8352888752604052336060525af160015f511416156103035750337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160206040a3005b346101c1575f3660031901126101c1576020610517610ad0565b6040516001600160a01b039091168152f35b346101c1575f3660031901126101c157610541610ad0565b5f806024601c604051946395d89b418452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c1575f3660031901126101c157683602298b8c10b01232546040516001600160a01b039091168152602090f35b346101c15760203660031901126101c1576001600160a01b036105e56109fe565b1660205f6044601c6105f5610ad0565b6040519563f5b100ea85528552836040525afa601f3d1116156103035760405260205f51604051908152f35b346101c1575f3660031901126101c157610639610ad0565b683602298b8c10b012325460205f6004601c60018060a01b03851695638da5cb5b84525afa9081601f3d1116600c5160601c0291156106d6575b506001600160a01b031690818103610691575b602060405160018152f35b683602298b8c10b0123280546001600160a01b031916831790557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a38080610686565b60601b6001600160601b0319166101c15782610673565b346101c15760203660031901126101c15760206001600160a01b03610713600435610afa565b16604051908152f35b61072536610a2a565b91610731838383610a64565b813b61073957005b60a460209260405194859363150b7a028552338686015260018060a01b0316604085015260608401526080808401525f60a08401525f3681375f601c8401915af115610463575163757a42ff60e11b0161045657005b346101c15760203660031901126101c1576107a8610ad0565b60205f6044601c6040519463c016aa5284526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b6107f86107f236610a2a565b91610a64565b005b346101c1575f3660031901126101c157610812610ad0565b60205f6044601c6040519463e2c792818452838552836040525afa601f3d1116156103035760405260205f51604051908152f35b60403660031901126101c15761085a6109fe565b60243590610866610ad0565b9060018060a01b03169060205f6064601c6040519463d10b6e0c8452868552876040523360605234905af1601f3d1116156103035750600c5160601c7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b346101c15760203660031901126101c1576108e1610ad0565b60205f6044601c604051946327ef549584526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b346101c1575f3660031901126101c157610937610ad0565b5f806024601c604051946306fdde038452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c15760203660031901126101c157600435906001600160e01b0319821682036101c15760209160e01c635b5e139f8114906301ffc9a76380ac58cd82149114171715158152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c157565b602435906001600160a01b03821682036101c157565b60609060031901126101c1576004356001600160a01b03811681036101c157906024356001600160a01b03811681036101c1579060443590565b9060846020610a71610ad0565b6040805163e5eb36c881526001600160a01b03968716848201819052959096169086018190526060860187905233608087015294928391601c83019034905af16001825114161561030357505f80516020610b2f8339815191525f80a4565b683602298b8c10b01230546001600160a01b0316908115610aed57565b635b2a47ae5f526004601cfd5b60205f6044601c610b09610ad0565b60405195632d8a746e85528552836040525afa601f3d111615610303576040525f519056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a';\n"]}
@@ -1,40 +0,0 @@
1
- 'use strict';
2
-
3
- var chunk7CAAI5DL_js = require('./chunk-7CAAI5DL.js');
4
-
5
- // src/types.ts
6
- var NO_OP_ENABLED_CHAIN_IDS = [
7
- chunk7CAAI5DL_js.CHAIN_IDS.MAINNET,
8
- chunk7CAAI5DL_js.CHAIN_IDS.ETH_SEPOLIA,
9
- chunk7CAAI5DL_js.CHAIN_IDS.BASE,
10
- chunk7CAAI5DL_js.CHAIN_IDS.BASE_SEPOLIA,
11
- chunk7CAAI5DL_js.CHAIN_IDS.UNICHAIN,
12
- chunk7CAAI5DL_js.CHAIN_IDS.UNICHAIN_SEPOLIA,
13
- chunk7CAAI5DL_js.CHAIN_IDS.MONAD_TESTNET,
14
- chunk7CAAI5DL_js.CHAIN_IDS.MONAD_MAINNET
15
- ];
16
- function isNoOpEnabledChain(chainId) {
17
- return NO_OP_ENABLED_CHAIN_IDS.includes(chainId);
18
- }
19
- var LAUNCHPAD_ENABLED_CHAIN_IDS = [
20
- chunk7CAAI5DL_js.CHAIN_IDS.BASE,
21
- chunk7CAAI5DL_js.CHAIN_IDS.MONAD_MAINNET
22
- ];
23
- function isLaunchpadEnabledChain(chainId) {
24
- return LAUNCHPAD_ENABLED_CHAIN_IDS.includes(chainId);
25
- }
26
- var LockablePoolStatus = /* @__PURE__ */ ((LockablePoolStatus2) => {
27
- LockablePoolStatus2[LockablePoolStatus2["Uninitialized"] = 0] = "Uninitialized";
28
- LockablePoolStatus2[LockablePoolStatus2["Initialized"] = 1] = "Initialized";
29
- LockablePoolStatus2[LockablePoolStatus2["Locked"] = 2] = "Locked";
30
- LockablePoolStatus2[LockablePoolStatus2["Exited"] = 3] = "Exited";
31
- return LockablePoolStatus2;
32
- })(LockablePoolStatus || {});
33
-
34
- exports.LAUNCHPAD_ENABLED_CHAIN_IDS = LAUNCHPAD_ENABLED_CHAIN_IDS;
35
- exports.LockablePoolStatus = LockablePoolStatus;
36
- exports.NO_OP_ENABLED_CHAIN_IDS = NO_OP_ENABLED_CHAIN_IDS;
37
- exports.isLaunchpadEnabledChain = isLaunchpadEnabledChain;
38
- exports.isNoOpEnabledChain = isNoOpEnabledChain;
39
- //# sourceMappingURL=chunk-OX5CESVM.js.map
40
- //# sourceMappingURL=chunk-OX5CESVM.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/types.ts"],"names":["CHAIN_IDS","LockablePoolStatus"],"mappings":";;;;;AAkFO,IAAM,uBAAA,GAA0B;AAAA,EACrCA,0BAAA,CAAU,OAAA;AAAA,EACVA,0BAAA,CAAU,WAAA;AAAA,EACVA,0BAAA,CAAU,IAAA;AAAA,EACVA,0BAAA,CAAU,YAAA;AAAA,EACVA,0BAAA,CAAU,QAAA;AAAA,EACVA,0BAAA,CAAU,gBAAA;AAAA,EACVA,0BAAA,CAAU,aAAA;AAAA,EACVA,0BAAA,CAAU;AACZ;AAOO,SAAS,mBACd,OAAA,EAC+B;AAC/B,EAAA,OAAQ,uBAAA,CAA8C,SAAS,OAAO,CAAA;AACxE;AAGO,IAAM,2BAAA,GAA8B;AAAA,EACzCA,0BAAA,CAAU,IAAA;AAAA,EACVA,0BAAA,CAAU;AACZ;AAQO,SAAS,wBACd,OAAA,EACoC;AACpC,EAAA,OAAQ,2BAAA,CAAkD,SAAS,OAAO,CAAA;AAC5E;AA8BO,IAAK,kBAAA,qBAAAC,mBAAAA,KAAL;AACL,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,mBAAgB,CAAA,CAAA,GAAhB,eAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,iBAAc,CAAA,CAAA,GAAd,aAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,CAAA,CAAA,GAAT,QAAA;AACA,EAAAA,mBAAAA,CAAAA,mBAAAA,CAAA,YAAS,CAAA,CAAA,GAAT,QAAA;AAJU,EAAA,OAAAA,mBAAAA;AAAA,CAAA,EAAA,kBAAA,IAAA,EAAA","file":"chunk-OX5CESVM.js","sourcesContent":["import {\n base,\n baseSepolia,\n ink,\n mainnet,\n sepolia,\n unichain,\n} from 'viem/chains';\nimport { CHAIN_IDS, type SupportedChainId } from './addresses';\n// Re-export SupportedChainId so consumers can import from this module\nexport { type SupportedChainId } from './addresses';\nimport type { Address, WalletClient } from 'viem';\n\nexport type SupportedChain =\n | typeof mainnet\n | typeof sepolia\n | typeof base\n | typeof baseSepolia\n | typeof ink\n | typeof unichain;\n// Use a wide type to avoid cross-package viem type identity issues when linking packages locally.\nexport type SupportedPublicClient = unknown;\n\n// Core configuration types\n// Token configuration (discriminated union)\nexport interface StandardTokenConfig {\n type?: 'standard'; // default behavior (backwards compatible)\n name: string;\n symbol: string;\n tokenURI: string;\n yearlyMintRate?: bigint; // Optional yearly mint rate (in WAD, default: 2% = 0.02e18)\n}\n\nexport interface Doppler404TokenConfig {\n type: 'doppler404';\n name: string;\n symbol: string;\n baseURI: string;\n // Optional unit for DN404 factory (uint256). Defaults to 1000 when omitted.\n unit?: bigint;\n}\n\nexport type TokenConfig = StandardTokenConfig | Doppler404TokenConfig;\n\nexport interface SaleConfig {\n initialSupply: bigint;\n numTokensToSell: bigint;\n numeraire: Address; // e.g., WETH address\n}\n\n// Static Auction Pool configuration\nexport interface StaticPoolConfig {\n startTick: number;\n endTick: number;\n fee: number; // e.g., 3000 for 0.3%\n // Optional parameters for lockable initializer\n numPositions?: number; // Number of liquidity positions (default: based on tick range)\n maxShareToBeSold?: bigint; // Maximum share of tokens to sell (in WAD, default: 1e18 = 100%)\n beneficiaries?: BeneficiaryData[]; // Optional beneficiaries for fee streaming\n}\n\n// Dynamic Auction configuration\nexport interface DynamicAuctionConfig {\n duration: number; // in seconds\n epochLength: number; // in seconds\n startTick: number;\n endTick: number;\n gamma?: number; // Optional, can be auto-calculated\n minProceeds: bigint;\n maxProceeds: bigint;\n numPdSlugs?: number; // Price discovery slugs (optional)\n}\n\n// Vesting configuration\nexport interface VestingConfig {\n duration: number; // in seconds\n cliffDuration: number; // in seconds\n recipients?: Address[]; // Optional array of recipient addresses (defaults to [userAddress] if not specified)\n amounts?: bigint[]; // Optional array of vesting amounts per recipient (must match recipients length if provided)\n}\n\n// Chains where no-op governance is enabled\nexport const NO_OP_ENABLED_CHAIN_IDS = [\n CHAIN_IDS.MAINNET,\n CHAIN_IDS.ETH_SEPOLIA,\n CHAIN_IDS.BASE,\n CHAIN_IDS.BASE_SEPOLIA,\n CHAIN_IDS.UNICHAIN,\n CHAIN_IDS.UNICHAIN_SEPOLIA,\n CHAIN_IDS.MONAD_TESTNET,\n CHAIN_IDS.MONAD_MAINNET,\n] as const;\n\nexport type NoOpEnabledChainId = (typeof NO_OP_ENABLED_CHAIN_IDS)[number];\n\n/**\n * Check if a chain supports no-op governance\n */\nexport function isNoOpEnabledChain(\n chainId: number,\n): chainId is NoOpEnabledChainId {\n return (NO_OP_ENABLED_CHAIN_IDS as readonly number[]).includes(chainId);\n}\n\n// Chains where launchpad governance is enabled\nexport const LAUNCHPAD_ENABLED_CHAIN_IDS = [\n CHAIN_IDS.BASE,\n CHAIN_IDS.MONAD_MAINNET,\n] as const;\n\nexport type LaunchpadEnabledChainId =\n (typeof LAUNCHPAD_ENABLED_CHAIN_IDS)[number];\n\n/**\n * Check if a chain supports launchpad governance\n */\nexport function isLaunchpadEnabledChain(\n chainId: number,\n): chainId is LaunchpadEnabledChainId {\n return (LAUNCHPAD_ENABLED_CHAIN_IDS as readonly number[]).includes(chainId);\n}\n\n// Governance configuration (discriminated union)\nexport type GovernanceDefault = { type: 'default' };\nexport interface GovernanceCustom {\n type: 'custom';\n initialVotingDelay: number;\n initialVotingPeriod: number;\n initialProposalThreshold: bigint;\n}\nexport type GovernanceNoOp = { type: 'noOp' };\nexport interface GovernanceLaunchpad {\n type: 'launchpad';\n multisig: Address;\n}\n\nexport type GovernanceOption<C extends SupportedChainId> =\n | GovernanceDefault\n | GovernanceCustom\n | (C extends NoOpEnabledChainId ? GovernanceNoOp : never)\n | (C extends LaunchpadEnabledChainId ? GovernanceLaunchpad : never);\n\n// Unified beneficiary data used for fee streaming, lockable initializers, and migration configs\n// Uses shares in WAD format (1e18 = 100%) for consistency across all beneficiary configurations\nexport interface BeneficiaryData {\n beneficiary: Address;\n shares: bigint; // shares in WAD (1e18 = 100%)\n}\n\n// Pool status for lockable initializer\nexport enum LockablePoolStatus {\n Uninitialized = 0,\n Initialized = 1,\n Locked = 2,\n Exited = 3,\n}\n\n// Lockable pool state\nexport interface LockablePoolState {\n asset: Address;\n numeraire: Address;\n tickLower: number;\n tickUpper: number;\n maxShareToBeSold: bigint;\n totalTokensOnBondingCurve: bigint;\n status: LockablePoolStatus;\n}\n\n// Multicurve pool state (V4 initializer)\nexport interface MulticurvePoolState {\n asset: Address;\n numeraire: Address;\n fee: number;\n tickSpacing: number;\n status: LockablePoolStatus; // Reuses the same enum\n poolKey: V4PoolKey;\n farTick: number;\n}\n\n// Migration configuration (discriminated union)\nexport interface RehypeDopplerHookMigratorConfig {\n // Optional hook address override. Defaults to chain rehypeDopplerHookMigrator.\n hookAddress?: Address;\n // Destination address for buyback tokens / beneficiary fee claims.\n buybackDestination: Address;\n // Custom swap fee in hundredths of a bip (1e6 = 100%).\n customFee: number;\n // Percentage of fees used for asset buyback (in WAD, e.g., 0.2e18 = 20%).\n assetBuybackPercentWad: bigint;\n // Percentage of fees used for numeraire buyback (in WAD, e.g., 0.2e18 = 20%).\n numeraireBuybackPercentWad: bigint;\n // Percentage of fees distributed to beneficiaries (in WAD, e.g., 0.3e18 = 30%).\n beneficiaryPercentWad: bigint;\n // Percentage of fees retained for LP rebalancing (in WAD, e.g., 0.3e18 = 30%).\n lpPercentWad: bigint;\n}\n\nexport interface DopplerHookMigrationConfig {\n type: 'dopplerHook';\n // Fee for fixed-fee pools, or initial LP fee when useDynamicFee=true.\n fee: number;\n // Use dynamic LP fees on the migrated V4 pool.\n useDynamicFee?: boolean;\n // Tick spacing for the migrated V4 pool.\n tickSpacing: number;\n // Fee lock duration in seconds.\n lockDuration: number;\n // Fee streaming beneficiaries (must be sorted and sum to WAD onchain).\n beneficiaries: BeneficiaryData[];\n // Generic hook configuration (raw initialization calldata).\n hook?: {\n hookAddress: Address;\n onInitializationCalldata?: `0x${string}`;\n };\n // Ergonomic helper for RehypeDopplerHookMigrator initialization.\n rehype?: RehypeDopplerHookMigratorConfig;\n // Optional proceeds split paid out during migration.\n proceedsSplit?: {\n recipient: Address;\n share: bigint;\n };\n}\n\nexport type MigrationConfig =\n | { type: 'uniswapV2' } // Basic migration to a new Uniswap v2 pool\n | {\n type: 'uniswapV4';\n fee: number;\n tickSpacing: number;\n // Configuration for fee streaming via StreamableFeesLocker (optional)\n // When omitted, fees are not locked and beneficiaries are not configured\n // This is useful when using noOp governance where lock duration is not meaningful\n streamableFees?: {\n lockDuration: number; // in seconds\n beneficiaries: BeneficiaryData[]; // Uses shares in WAD (1e18 = 100%)\n };\n }\n | DopplerHookMigrationConfig // Dynamic-only: migration via DopplerHookMigrator\n | { type: 'noOp' }; // No migration - used with lockable beneficiaries\n\n// Create Static Auction parameters\nexport interface CreateStaticAuctionParams<\n C extends SupportedChainId = SupportedChainId,\n> {\n // Token configuration\n token: TokenConfig;\n\n // Sale configuration\n sale: SaleConfig;\n\n // Static Auction (Uniswap v3) Pool configuration\n pool: StaticPoolConfig;\n\n // Vesting configuration (optional)\n vesting?: VestingConfig;\n\n // Governance configuration (required). Use `{ type: 'noOp' }` where enabled,\n // `{ type: 'default' }` for standard defaults, or `{ type: 'custom', ... }` to customize.\n governance: GovernanceOption<C>;\n\n // Explicit Migration Configuration\n migration: MigrationConfig;\n\n // Integrator details\n integrator?: Address;\n userAddress: Address;\n\n // Optional address overrides for on-chain modules used during encoding/creation\n modules?: ModuleAddressOverrides;\n\n // Optional transaction gas limit override for the create() transaction\n // If omitted, SDK will default to 13,500,000 gas for create()\n gas?: bigint;\n}\n\n// Create Dynamic Auction parameters\nexport interface CreateDynamicAuctionParams<\n C extends SupportedChainId = SupportedChainId,\n> {\n // Token configuration\n token: TokenConfig;\n\n // Sale configuration\n sale: SaleConfig;\n\n // Dynamic Auction (Uniswap v4 Hook) configuration\n auction: DynamicAuctionConfig;\n\n // Pool configuration\n pool: {\n fee: number; // e.g., 3000 for 0.3%\n tickSpacing: number;\n };\n\n // Vesting configuration (optional)\n vesting?: VestingConfig;\n\n // Governance configuration (required). Use `{ type: 'noOp' }` where enabled,\n // `{ type: 'default' }` for standard defaults, or `{ type: 'custom', ... }` to customize.\n governance: GovernanceOption<C>;\n\n // Explicit Migration Configuration\n migration: MigrationConfig;\n\n // Integrator details\n integrator?: Address;\n userAddress: Address;\n\n // Time configuration (internal use)\n startTimeOffset?: number;\n blockTimestamp?: number; // Optional: use this block timestamp instead of fetching latest\n\n // Optional transaction gas limit override for the create() transaction\n // If omitted, SDK will default to 13,500,000 gas for create()\n gas?: bigint;\n\n // Optional address overrides for on-chain modules used during encoding/creation\n modules?: ModuleAddressOverrides;\n}\n\n// Price range configuration for automatic tick calculation\nexport interface PriceRange {\n startPrice: number;\n endPrice: number;\n}\n\n// Tick range configuration\nexport interface TickRange {\n startTick: number;\n endTick: number;\n}\n\n// ============================================================================\n// Market Cap Configuration Types\n// ============================================================================\n\n/**\n * Market cap range in USD for price configurations.\n * Used to define start and end market caps for bonding curves.\n */\nexport interface MarketCapRange {\n /** Starting market cap in USD (e.g., 100_000 for $100k) */\n start: number;\n /** Ending market cap in USD (e.g., 10_000_000 for $10M) */\n end: number;\n}\n\n/**\n * Base configuration for market cap-based tick calculations.\n * Used by builder methods to convert market caps to ticks.\n */\nexport interface MarketCapConfig {\n /** Target market cap range in USD */\n marketCap: MarketCapRange;\n /** Price of numeraire in USD (e.g., 3000 for ETH at $3000) */\n numerairePrice: number;\n /**\n * Token supply override. If not provided, inferred from saleConfig.initialSupply.\n * Must include decimals (e.g., parseEther('1000000000') for 1B tokens).\n */\n tokenSupply?: bigint;\n /** Token decimals (default: 18) */\n tokenDecimals?: number;\n /** Numeraire decimals (default: 18) */\n numeraireDecimals?: number;\n}\n\n/**\n * Market cap configuration for V3 Static Auctions.\n * Extends base config with V3-specific parameters.\n */\nexport interface StaticAuctionMarketCapConfig extends MarketCapConfig {\n /** Fee tier in basis points (e.g., 10000 for 1%). Default: 10000 */\n fee?: number;\n /** Number of liquidity positions. Default: 15 */\n numPositions?: number;\n /** Maximum share of tokens to sell per position (WAD). Default: 35% */\n maxShareToBeSold?: bigint;\n}\n\n/**\n * Market cap range for V4 Dynamic Auctions (Dutch auctions).\n * Uses start/min because price descends from start to minimum.\n */\nexport interface DynamicMarketCapRange {\n /** Starting market cap in USD - auction begins here (e.g., 500_000 for $500k) */\n start: number;\n /** Minimum market cap in USD - floor price the auction descends to (e.g., 50_000 for $50k) */\n min: number;\n}\n\n/**\n * Market cap configuration for V4 Dynamic Auctions.\n * Uses start/min (not start/end) because Dutch auctions descend from start to minimum.\n */\nexport interface DynamicAuctionMarketCapConfig {\n /** Target market cap range (start = launch price, min = floor price) */\n marketCap: DynamicMarketCapRange;\n /** Price of numeraire in USD (e.g., 3000 for ETH at $3000) */\n numerairePrice: number;\n /**\n * Token supply override. If not provided, inferred from saleConfig.initialSupply.\n * Must include decimals (e.g., parseEther('1000000000') for 1B tokens).\n */\n tokenSupply?: bigint;\n /** Token decimals (default: 18) */\n tokenDecimals?: number;\n /** Numeraire decimals (default: 18) */\n numeraireDecimals?: number;\n /**\n * Pool fee in basis points. Default: 10000 (1%)\n *\n * V4 pools support any fee from 0 to 100,000 (10%).\n * Standard tiers (100, 500, 3000, 10000) auto-derive tickSpacing.\n * Custom fees require explicit tickSpacing parameter.\n */\n fee?: number;\n /**\n * Tick spacing for the pool. Required for custom fees.\n *\n * Must be <= 30 for Doppler pools (MAX_TICK_SPACING constraint).\n * If not provided with a standard fee tier, defaults to 30.\n */\n tickSpacing?: number;\n /** Minimum proceeds required for successful auction */\n minProceeds: bigint;\n /** Maximum proceeds cap for the auction */\n maxProceeds: bigint;\n /** Auction duration in seconds. Default: 7 days */\n duration?: number;\n /** Epoch length in seconds. Default: 3600 (1 hour) */\n epochLength?: number;\n /** Gamma (tick decay per epoch). Auto-calculated if not provided */\n gamma?: number;\n /** Number of price discovery slugs. Default: 5 */\n numPdSlugs?: number;\n}\n\n/**\n * Result of market cap parameter validation.\n */\nexport interface MarketCapValidationResult {\n /** Whether all parameters are within normal bounds */\n valid: boolean;\n /** Warning messages for unusual but technically valid values */\n warnings: string[];\n}\n\n// ============================================================================\n// Market Cap Helper Function Parameter Types\n// ============================================================================\n\n/**\n * Parameters for converting market cap range to ticks for V3 Static Auctions.\n */\nexport interface StaticAuctionTickParams {\n marketCapRange: MarketCapRange;\n tokenSupply: bigint;\n numerairePriceUSD: number;\n tickSpacing: number;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n}\n\n/**\n * Parameters for converting market cap range to ticks for V4 Dynamic Auctions.\n */\nexport interface DynamicAuctionTickParams {\n marketCapRange: MarketCapRange;\n tokenSupply: bigint;\n numerairePriceUSD: number;\n numeraire: Address;\n tickSpacing: number;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n}\n\n/**\n * Parameters for converting market cap range to ticks for V4 Multicurve pools.\n */\nexport interface MulticurveTickRangeParams {\n marketCapLower: number;\n marketCapUpper: number | 'max';\n tokenSupply: bigint;\n numerairePriceUSD: number;\n tickSpacing: number;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n}\n\n/**\n * Parameters for converting a single market cap to a tick for Multicurve.\n */\nexport interface MulticurveTickParams {\n marketCapUSD: number;\n tokenSupply: bigint;\n numerairePriceUSD: number;\n tickSpacing: number;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n}\n\n/**\n * Parameters for converting a tick to market cap (reverse conversion).\n */\nexport interface TickToMarketCapParams {\n tick: number;\n tokenSupply: bigint;\n numerairePriceUSD: number;\n tokenDecimals?: number;\n numeraireDecimals?: number;\n}\n\n// ============================================================================\n// New Multicurve Market Cap API (no tick math required)\n// ============================================================================\n\n/**\n * Curve configuration for Multicurve pools using market cap ranges.\n * Each curve defines a market cap range and liquidity distribution.\n */\nexport interface MulticurveMarketCapRangeCurve {\n /** Market cap range for this curve */\n marketCap: {\n /** Start market cap in USD (for the first curve, this is the launch price) */\n start: number;\n /** End market cap in USD, or 'max' for MAX_TICK rounded to tick spacing */\n end: number | 'max';\n };\n /** Number of liquidity positions in this curve */\n numPositions: number;\n /** Share of total supply allocated to this curve (WAD, e.g., parseEther('0.3') = 30%) */\n shares: bigint;\n}\n\n/**\n * Market cap-based configuration for Multicurve pools.\n * No tick math required - just specify market caps in USD.\n */\nexport interface MulticurveMarketCapCurvesConfig {\n /** Price of numeraire in USD (e.g., 3000 for ETH at $3000) */\n numerairePrice: number;\n /**\n * Array of curves defining market cap ranges and liquidity distribution.\n * The first curve's marketCap.start is the launch price.\n * Curves must be contiguous (no gaps allowed).\n */\n curves: MulticurveMarketCapRangeCurve[];\n /** Token supply override */\n tokenSupply?: bigint;\n /** Token decimals (default: 18) */\n tokenDecimals?: number;\n /** Numeraire decimals (default: 18) */\n numeraireDecimals?: number;\n /** Fee tier (default: FEE_TIERS.LOW) */\n fee?: number;\n /** Tick spacing (derived from fee if not provided) */\n tickSpacing?: number;\n /** Optional beneficiaries for fee streaming */\n beneficiaries?: BeneficiaryData[];\n}\n\n// Build configuration for static auctions (V3-style)\nexport interface StaticAuctionBuildConfig {\n // Token details\n name: string;\n symbol: string;\n totalSupply?: bigint; // default: 1 billion\n numTokensToSell?: bigint; // default: 900 million\n tokenURI: string;\n\n // Time parameters\n startTimeOffset?: number; // Optional - seconds to add to current block timestamp (default: 30)\n\n // Price parameters - must provide either priceRange or tickRange\n numeraire: Address; // Required for V3\n tickRange?: TickRange;\n priceRange?: PriceRange;\n fee?: number; // default: 10000 (1%)\n\n // Pool parameters (V3 specific)\n numPositions?: number; // default: 15\n maxShareToBeSold?: bigint; // default: 35% in WAD\n\n // Vesting parameters\n yearlyMintRate?: bigint; // default: 2%\n vestingDuration?: bigint; // default: 1 year\n recipients?: Address[]; // defaults to [userAddress]\n amounts?: bigint[]; // defaults based on pre-mint calculation\n\n // Migration configuration\n migration: MigrationConfig;\n\n // Other parameters\n integrator?: Address;\n useGovernance?: boolean; // default: true\n}\n\n// Build configuration for dynamic auctions (V4-style)\nexport interface DynamicAuctionBuildConfig {\n // Token details\n name: string;\n symbol: string;\n totalSupply: bigint;\n numTokensToSell: bigint;\n tokenURI: string;\n\n // Time parameters\n startTimeOffset?: number; // Optional - seconds to add to block timestamp (default: 30)\n blockTimestamp?: number; // Optional - specific block timestamp to use (default: fetch latest)\n duration?: number; // in seconds (default: 604800 = 7 days)\n epochLength?: number; // in seconds (default: 3600)\n\n // Price parameters - must provide either priceRange or tickRange\n numeraire?: Address; // defaults to zero address\n tickRange?: TickRange;\n priceRange?: PriceRange;\n tickSpacing: number;\n gamma?: number; // auto-calculated if not provided\n fee: number; // In basis points\n\n // Sale parameters\n minProceeds: bigint;\n maxProceeds: bigint;\n numPdSlugs?: number; // default: 5\n\n // Vesting parameters\n yearlyMintRate?: bigint; // default: 2%\n vestingDuration: bigint;\n recipients: Address[];\n amounts: bigint[];\n\n // Migration configuration\n migration: MigrationConfig;\n\n // Other parameters\n integrator?: Address;\n useGovernance?: boolean; // default: true\n}\n\n// SDK initialization configuration\nexport interface DopplerSDKConfig {\n publicClient: SupportedPublicClient;\n walletClient?: WalletClient;\n chainId: number;\n}\n\n// Pool information types\nexport interface PoolInfo {\n address: Address;\n tokenAddress: Address;\n numeraireAddress: Address;\n fee: number;\n liquidity: bigint;\n sqrtPriceX96: bigint;\n}\n\nexport interface HookInfo {\n hookAddress: Address;\n tokenAddress: Address;\n numeraireAddress: Address;\n poolId: string;\n currentEpoch: number;\n totalProceeds: bigint;\n totalTokensSold: bigint;\n earlyExit: boolean;\n insufficientProceeds: boolean;\n startingTime: bigint;\n endingTime: bigint;\n epochLength: bigint;\n minimumProceeds: bigint;\n maximumProceeds: bigint;\n}\n\n// Quote result type\nexport interface QuoteResult {\n amountOut: bigint;\n priceImpact: number;\n fee: bigint;\n route: string[];\n}\n\n// Lockable Uniswap V3 Initializer encode params\nexport interface LockableV3InitializerParams {\n fee: number;\n tickLower: number;\n tickUpper: number;\n numPositions: number;\n maxShareToBeSold: bigint;\n beneficiaries: BeneficiaryData[];\n}\n\n// Multicurve curve configuration (mirrors solidity struct)\nexport interface MulticurveCurve {\n tickLower: number; // int24\n tickUpper: number; // int24\n numPositions: number; // uint16\n shares: bigint; // uint256 (WAD)\n}\n\nexport type MulticurveMarketCapPreset = 'low' | 'medium' | 'high';\n\nexport interface V4PoolKey {\n currency0: Address;\n currency1: Address;\n fee: number;\n tickSpacing: number;\n hooks: Address;\n}\n\nexport interface MulticurveBundleExactOutResult {\n asset: Address;\n poolKey: V4PoolKey;\n amountIn: bigint;\n gasEstimate: bigint;\n}\n\nexport interface MulticurveBundleExactInResult {\n asset: Address;\n poolKey: V4PoolKey;\n amountOut: bigint;\n gasEstimate: bigint;\n}\n\n// RehypeDopplerHook configuration for fee distribution and buyback\nexport interface RehypeDopplerHookConfig {\n // The hook contract address (must be whitelisted in the initializer)\n hookAddress: Address;\n // Destination address for buyback tokens\n buybackDestination: Address;\n // Custom swap fee in basis points (e.g., 3000 = 0.3%)\n customFee: number;\n // Fee distribution percentages (must sum to 100% / WAD)\n // Percentage of fees used for asset buyback (in WAD, e.g., 0.2e18 = 20%)\n assetBuybackPercentWad: bigint;\n // Percentage of fees used for numeraire buyback (in WAD, e.g., 0.2e18 = 20%)\n numeraireBuybackPercentWad: bigint;\n // Percentage of fees distributed to beneficiaries (in WAD, e.g., 0.3e18 = 30%)\n beneficiaryPercentWad: bigint;\n // Percentage of fees distributed to LPs (in WAD, e.g., 0.3e18 = 30%)\n lpPercentWad: bigint;\n // Optional graduation calldata (called when pool graduates)\n graduationCalldata?: `0x${string}`;\n\n // Graduation threshold configuration (rehype-only)\n // Market cap in USD at which pool can graduate. Requires numerairePrice (from withCurves() or explicit).\n graduationMarketCap?: number;\n // Price of numeraire in USD. Optional if using withCurves() (reuses that value). Required with poolConfig().\n numerairePrice?: number;\n // Direct tick value for graduation threshold. Use graduationMarketCap for USD-based config.\n farTick?: number;\n}\n\n// Decay fee schedule state for multicurve pools using a dynamic-fee hook\nexport interface MulticurveDecayFeeSchedule {\n startingTime: number;\n startFee: number;\n endFee: number;\n lastFee: number;\n durationSeconds: number;\n}\n\nexport type MulticurveInitializerConfig =\n | { type: 'standard' }\n | { type: 'scheduled'; startTime: number }\n | {\n type: 'decay';\n startTime: number;\n startFee: number;\n durationSeconds: number;\n }\n | { type: 'rehype'; config: RehypeDopplerHookConfig };\n\n// Create Multicurve initializer parameters\nexport interface CreateMulticurveParams<\n C extends SupportedChainId = SupportedChainId,\n> {\n // Token configuration\n token: TokenConfig;\n\n // Sale configuration\n sale: SaleConfig;\n\n // Pool configuration for multicurve initializer\n pool: {\n // For decay initializer mode, this is the terminal fee (endFee).\n fee: number;\n tickSpacing: number;\n curves: MulticurveCurve[];\n // Optional beneficiaries to lock the pool (fee collection only, no migration)\n beneficiaries?: BeneficiaryData[];\n };\n\n // Preferred initializer configuration. Defaults to { type: 'standard' }.\n initializer?: MulticurveInitializerConfig;\n\n /**\n * @deprecated Use initializer: { type: 'scheduled', startTime } instead.\n * Retained for backwards compatibility.\n */\n // Optional scheduled launch configuration\n schedule?: {\n startTime: number;\n };\n\n /**\n * @deprecated Use initializer: { type: 'rehype', config } instead.\n * Retained for backwards compatibility.\n */\n dopplerHook?: RehypeDopplerHookConfig;\n\n // Vesting configuration (optional)\n vesting?: VestingConfig;\n\n // Governance configuration\n governance: GovernanceOption<C>;\n\n // Migration configuration (can be any supported migrator: V2, V3, or V4)\n migration: MigrationConfig;\n\n // Integrator details\n integrator?: Address;\n userAddress: Address;\n\n // Optional address overrides for on-chain modules used during encoding/creation\n modules?: ModuleAddressOverrides;\n\n // Optional transaction gas limit override for the create() transaction\n gas?: bigint;\n}\n\n// Final Params object that gets passed as arg to create\nexport interface CreateParams {\n initialSupply: bigint;\n numTokensToSell: bigint;\n numeraire: Address;\n tokenFactory: Address;\n tokenFactoryData: `0x${string}`;\n governanceFactory: Address;\n governanceFactoryData: `0x${string}`;\n poolInitializer: Address;\n poolInitializerData: `0x${string}`;\n liquidityMigrator: Address;\n liquidityMigratorData: `0x${string}`;\n integrator: Address;\n salt: `0x${string}`;\n}\n\n// Optional per-call module address overrides. When provided, these take precedence\n// over chain defaults resolved via getAddresses(chainId).\nexport interface ModuleAddressOverrides {\n // Core deployment & routing\n airlock?: Address;\n tokenFactory?: Address;\n\n // Initializers\n v3Initializer?: Address;\n lockableV3Initializer?: Address;\n v4Initializer?: Address;\n v4MulticurveInitializer?: Address;\n v4ScheduledMulticurveInitializer?: Address;\n v4DecayMulticurveInitializer?: Address;\n dopplerHookInitializer?: Address;\n\n // DopplerHooks\n rehypeDopplerHook?: Address;\n\n // Governance\n governanceFactory?: Address;\n\n // Dynamic auction infra\n poolManager?: Address;\n dopplerDeployer?: Address;\n\n // Migrators\n v2Migrator?: Address;\n v4Migrator?: Address;\n dopplerHookMigrator?: Address;\n rehypeDopplerHookMigrator?: Address;\n noOpMigrator?: Address;\n}\n"]}
@@ -1,3 +0,0 @@
1
-
2
- //# sourceMappingURL=chunk-P25HBGP5.mjs.map
3
- //# sourceMappingURL=chunk-P25HBGP5.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-P25HBGP5.mjs"}
@@ -1,4 +0,0 @@
1
- 'use strict';
2
-
3
- //# sourceMappingURL=chunk-P7CHGWY7.js.map
4
- //# sourceMappingURL=chunk-P7CHGWY7.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-P7CHGWY7.js"}
@@ -1,8 +0,0 @@
1
- 'use strict';
2
-
3
- // src/abis/bytecodes/dopplerDN404.ts
4
- var dopplerDN404_default = "0x608060405234610444576130dd8038038061001981610754565b928339810160c0828203126104445781516001600160401b0381116104445781610044918401610779565b60208301519092906001600160401b0381116104445782610066918301610779565b92604082015190610079606084016107ca565b92610086608082016107ca565b60a08201519095906001600160401b038111610444576100a69201610779565b936001600160a01b03168015610741575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a38051906001600160401b03821161047a5760015490600182811c92168015610737575b602083101461055f5781601f8493116106c9575b50602090601f8311600114610663575f92610658575b50508160011b915f199060031b1c1916176001555b83516001600160401b03811161047a57600254600181811c9116801561064e575b602082101461055f57601f81116105eb575b50602094601f8211600114610588579481929394955f9261057d575b50508160011b915f199060031b1c1916176002555b82516001600160401b03811161047a57600354600181811c91168015610573575b602082101461055f57601f81116104fc575b506020601f821160011461049957819293945f9261048e575b50508160011b915f199060031b1c1916176003555b604051610bec808201906001600160401b0382118383101761047a5760209183916124f183393381520301905ff0801561046f5768a20d6e21d0e5255309546001600160a01b03918216911661046257801561045557630f4599e55f523360205260205f6024601c82855af160015f5114161561044857678da5cb5b6cef16e65f5260208060046018305afa601f3d1160205160601b151016610435575b68a20d6e21d0e5255308805463ffffffff60201b191664010000000017905568a20d6e21d0e525530980546001600160a01b0319169190911790558061030b575b604051611cf190816108008239f35b6001600160a01b03821691821561042857670de0b6b3a7640000820463fffffffe108260601c1761041b5768a20d6e21d0e525530880546001600160a01b031660a084901b6001600160a01b0319169081179091556103ae929061036e836107de565b80546001600160a01b031690911790555f90815283907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082a36107de565b906bff00000000000000000000008254918260581c9060015f527fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff821691161560011b1860011760581b16906bff000000000000000000000019161790555f806102fc565b63e5cfe9575f526004601cfd5b63ea553b345f526004601cfd5b5f806004601c82855af16102bb575b5f80fd5b63d125259c5f526004601cfd5b6339a84a7b5f526004601cfd5b63ead4d2e45f526004601cfd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b015190505f80610208565b601f1982169060035f52805f20915f5b8181106104e4575095836001959697106104cc575b505050811b0160035561021d565b01515f1960f88460031b161c191690555f80806104be565b9192602060018192868b0151815501940192016104a9565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610555575b601f0160051c01905b81811061054a57506101ef565b5f815560010161053d565b9091508190610534565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101dd565b015190505f806101a7565b601f1982169560025f52805f20915f5b8881106105d3575083600195969798106105bb575b505050811b016002556101bc565b01515f1960f88460031b161c191690555f80806105ad565b91926020600181928685015181550194019201610598565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace601f830160051c81019160208410610644575b601f0160051c01905b818110610639575061018b565b5f815560010161062c565b9091508190610623565b90607f1690610179565b015190505f80610143565b60015f9081528281209350601f198516905b8181106106b15750908460019594939210610699575b505050811b01600155610158565b01515f1960f88460031b161c191690555f808061068b565b92936020600181928786015181550195019301610675565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c8101916020851061072d575b90601f859493920160051c01905b81811061071f575061012d565b5f8155849350600101610712565b9091508190610704565b91607f1691610119565b631e4fbdf760e01b5f525f60045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761047a57604052565b81601f82011215610444578051906001600160401b03821161047a576107a8601f8301601f1916602001610754565b928284526020838301011161044457815f9260208093018386015e8301015290565b51906001600160a01b038216820361044457565b6001600160a01b03165f90815268a20d6e21d0e5255313602052604090209056fe6080806040526004361015610667575b50361561065c575f3560e01c63e5eb36c881146103d25763f6916ddd811461038f576362fb246d811461036b57632d8a746e81146103325763c016aa52811461031f5763d10b6e0c811461022f576327ef549581146102145763f5b100ea81146101ef5763e2c7928181146101d45763cb30b46081146100a95763b7a94eb8146100a057633c10b94e5f526004601cfd5b60015f5260205ff35b60206040510160405260606003546100c081610f14565b6100e4575b50605f601f198201915f6020825180930101526020835201601f191690f35b905060405190608082019160a081016040525f8352600a600435935b5f19019360308282060185530492831561011c57600a90610100565b9250608083601f19810192030181526040519283915f9061013c85610f14565b94600181169081156101b45750600114610173575b61016d9450518092825e015f815203601f198101835282610f4c565b816100c5565b905060035f5260205f20935f5b818110610198575061016d9450830160200190610151565b8554602082890181019190915260019096019587955001610180565b602092935061016d96915060ff1916828601528015150284010190610151565b63ffffffff68a20d6e21d0e52553085460801c165f5260205ff35b63ffffffff6102086004356001600160a01b0316610f83565b5460801c165f5260205ff35b6001600160a01b03610227600435611adf565b165f5260205ff35b68a20d6e21d0e5255309546001600160a01b03163303610312576001600160a01b036044358116906024359060043581169061028061027b5f19600160201b861086020160011b611b18565b611a54565b5416928381036102ef575b505f82815268a20d6e21d0e525530c60209081526040822080546001600160a01b0319166001600160a01b03851617905568a20d6e21d0e525530d60601b600885901c018054600160ff90961695861b191693151590941b92909217909255918152f35b6102f99084611097565b5415610305578361028b565b63cfb3b9425f526004601cfd5b63ce5a776b5f526004601cfd5b6001600160a01b03610227600435611ab6565b6004356001600160a01b0361034682611ab6565b161561035e576001600160a01b039061022790611ab6565b63ceea21b65f526004601cfd5b6103856001600160a01b0360243581169060043516611097565b5415155f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633036103125760243515156103c86001600160a01b0360043581169060443516611097565b5560015f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633819003610312576001600160a01b036024358116916004358216916044359160643590911690841561064f5715610642576001600160a01b0361043a61027b600160201b851085025f190160011b611b18565b54168303610635578281036105fc575b5061045482610f83565b9061045e84610f83565b90825460a01c9283670de0b6b3a7640000116105ef576105989361049690670de0b6b3a763ffff19016001600160601b031682611a70565b82546104b89060a01c670de0b6b3a7640000016001600160601b031684611a70565b6104c182611b58565b6105be575b60016104f56104d487610fa4565b926104ef63ffffffff5f1981845460801c1601168092611a93565b83611b3c565b610517816105095f198701851b8501611b18565b9463ffffffff861690611b97565b63ffffffff5f19911601811b019060e08260031c685106b710e87292a98960611b019260051b1682549182821c1863ffffffff16901b1890556105928563ffffffff845460801c169361057363ffffffff600187011682611a93565b61058d61057f83610fa4565b8663ffffffff871691611b97565b611bbf565b90611c4f565b670de0b6b3a76400005f525f80516020611cc583398151915260205fa360015f5260205ff35b6105c782611b76565b5f82815268a20d6e21d0e525530c6020526040902080546001600160a01b03191690556104c6565b63f4d678b85f526004601cfd5b6106068184611097565b5461044a576001600160a01b0361061c83611adf565b1603610628578361044a565b6359c896be5f526004601cfd5b63a11481005f526004601cfd5b6340739bf05f526004601cfd5b63ea553b345f526004601cfd5b3461066357005b5f80fd5b5f3560e01c90816306fdde0314610e1c57508063095ea7b314610d7b57806310aa0ebb14610d5657806316f0115b14610d2e57806318160ddd14610d06578063207d063614610cc357806323b872dd14610c1d578063274e430b14610bf05780632a6a935d14610b7e578063313ce56714610b635780634ef41efc14610b3357806355f804b3146109c757806370a0823114610998578063715018a61461095457806389026538146109275780638da5cb5b1461090057806395d89b4114610826578063a9059cbb146107f5578063dd62ed3e146107c15763f2fde38b1461074f575f61000f565b3461066357602036600319011261066357610768610ee8565b610770611053565b6001600160a01b031680156107ae575f80546001600160a01b03198116831782556001600160a01b0316905f80516020611ca58339815191529080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346106635760403660031901126106635760206107ed6107df610ee8565b6107e7610efe565b90610fed565b604051908152f35b346106635760403660031901126106635761081b610811610ee8565b60243590336110b5565b602060405160018152f35b34610663575f366003190112610663576040515f60025461084681610f14565b80845290600181169081156108dc575060011461087e575b61087a8361086e81850382610f4c565b60405191829182610ebe565b0390f35b60025f9081527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace939250905b8082106108c25750909150810160200161086e61085e565b9192600181602092548385880101520191019092916108aa565b60ff191660208086019190915291151560051b8401909101915061086e905061085e565b34610663575f366003190112610663575f546040516001600160a01b039091168152602090f35b34610663575f3660031901126106635761093f611053565b6004805460ff60a01b1916600160a01b179055005b34610663575f3660031901126106635761096c611053565b5f80546001600160a01b0319811682556001600160a01b03165f80516020611ca58339815191528280a3005b346106635760203660031901126106635760206109bb6109b6610ee8565b610f83565b5460a01c604051908152f35b34610663576020366003190112610663576004356001600160401b03811161066357366023820112156106635760048101356001600160401b03811161066357366024828401011161066357610a1b611053565b610a26600354610f14565b601f8111610ad0575b505f601f8211600114610a6b5781925f92610a5d575b50508160011b915f199060031b1c1916176003555f80f35b602492500101358280610a45565b601f1982169260035f5260205f20915f5b858110610ab557508360019510610a99575b505050811b01600355005b01602401355f19600384901b60f8161c19169055828080610a8e565b90926020600181926024878701013581550194019101610a7c565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610b29575b601f0160051c01905b818110610b1e5750610a2f565b5f8155600101610b11565b9091508190610b08565b34610663575f3660031901126106635768a20d6e21d0e5255309546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060405160128152f35b3461066357602036600319011261066357600435801580158092036106635761081b91610baa33610f83565b91825460581c915f52337fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff83169216151860011b1860011790611036565b34610663576020366003190112610663576020610c13610c0e610ee8565b610fc5565b6040519015158152f35b3461066357606036600319011261066357610c36610ee8565b610c3e610efe565b60443590610c4c3384611079565b926e22d473030f116ddee9f6b43ac78ba3331480610cac575b15610ca4575f19935b60018501610c82575b5061081b93506110b5565b848411610c97578361081b9503905584610c77565b6313be252b5f526004601cfd5b835493610c6e565b506004610cb882610f83565b5460581c1615610c65565b3461066357602036600319011261066357610cdc610ee8565b610ce4611053565b600480546001600160a81b0319166001600160a01b0392909216919091179055005b34610663575f36600319011261066357602068a20d6e21d0e52553085460a01c604051908152f35b34610663575f366003190112610663576004546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060ff60045460a01c166040519015158152f35b3461066357604036600319011261066357610d94610ee8565b6001600160a01b03811690602435908190610dc6906e22d473030f116ddee9f6b43ac78ba38514610dfa575b33611079565b555f52337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa3602060405160018152f35b610e17610e0633610f83565b600460ff825460581c161790611036565b610dc0565b34610663575f366003190112610663575f600154610e3981610f14565b80845290600181169081156108dc5750600114610e605761087a8361086e81850382610f4c565b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610ea45750909150810160200161086e61085e565b919260018160209254838588010152019101909291610e8c565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361066357565b602435906001600160a01b038216820361066357565b90600182811c92168015610f42575b6020831014610f2e57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610f23565b601f909101601f19168101906001600160401b03821190821017610f6f57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b03165f90815268a20d6e21d0e52553136020526040902090565b6001600160a01b03165f90815268a20d6e21d0e52553106020526040902090565b90610fcf82610f83565b5460581c916001600284161515931615610fe65750565b3b15159150565b906001600160a01b0381166e22d473030f116ddee9f6b43ac78ba31461101b575b61101791611079565b5490565b600461102683610f83565b5460581c1661100e5750505f1990565b805460ff60581b191660589290921b60ff60581b16919091179055565b5f546001600160a01b0316330361106657565b63118cdaa760e01b5f523360045260245ffd5b9060285260145268a20d6e21d0e525530f5f5260485f20905f602852565b9060285260145268a20d6e21d0e525530b5f5260485f20905f602852565b6004549092906001600160a01b03838116908216149081611a45575b50611a36576001600160a01b0382161561064f576110ee83610f83565b6110f783610f83565b68a20d6e21d0e5255309546001600160a01b031615610642576040519161018083016001600160401b03811184821017610f6f576040525f83525f60208401525f60808401525f60a08401525f60c08401525f60e08401525f6101008401525f6101208401525f6101408401525f610160840152805463ffffffff8160801c16604085015263ffffffff835460801c1660608501528060a01c85116105ef5760a01c8490036111af6001600160601b03821683611a70565b825460a01c8501906111ca6001600160601b03831685611a70565b670de0b6b3a76400006040860151910480820391110284526111eb86610fc5565b156119ee575b506117e9565b68a20d6e21d0e52553085463ffffffff60208501518551928382848360801c1601038060808901528360801b9060801b16908360801b191617928368a20d6e21d0e52553085501916040519260c060a085019180835260051b850101604052836040015260c0830183528261016087015260601c1661012085015283516116c9575b5050602082015161135e575b506101408101518061131a575b506101600151806112c8575b505f9081526001600160a01b0391821692909116905f80516020611cc583398151915290602090a3565b600160206040828060a01b0368a20d6e21d0e5255309541693015192603f19840193849163263c69d6835283601f198301525f825160051b6044019260231901915af19151141615610663575f61129e565b600160205f9281838060a01b0368a20d6e21d0e5255309541691015190815160051b60840190607f19830195869360631901915af19151141615610663575f611292565b9194610160829492015160208360601b91015261137a82610fa4565b9463ffffffff61138a8486611bbf565b1660e086015268a20d6e21d0e5255308549263ffffffff670de0b6b3a76400008560a01c049460201c1684811190811502176101008701526113e460608701519563ffffffff602089015188018060c08b01521690611a93565b63ffffffff68a20d6e21d0e52553085460401c169760015b1561166a575b6101208701515f9063ffffffff8b81169116146114b8576114b363ffffffff60018c01169a60e0641fffffffe0631fffffff8360031c1668a20d6e21d0e525531160601b01549260051b16161c63ffffffff165b8060081c685106b710e87292a98760611b0160018260ff161b801982541617905561148863ffffffff82168a8d611b97565b6114a863ffffffff60e08c01511663ffffffff60018c019b169083611c4f565b6101608a0151611c8e565b6113fc565b949798939291906101008801515b63ffffffff6114da5f19830160011b611b18565b1615611646575f19906001810160081c685106b710e87292a98760611b018054196001830160ff1690811c901b80156115ce575b80611524575b50505089811190811502176114c6565b600180939450811901167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f6101e07a1412563212c14164235266736f7425221143267a4524367526767760fc7b2aaaaaaaba69a69a6db6db6db2cb2cb2ce739ce73def7bdeffffffff860260f81c161b60f71c1692831c63d76453e004161a179082685106b710e87292a98760611b03190160081b17910181108a8211175f03175f8080611514565b506001909c9895929c9a9794919a9693965b01805419685106b710e87292a98760611b60088e901c018211811761160857506001906115e0565b9c9295989c9a9194979a969396808d60081c685106b710e87292a98760611b018311611635575b5061150e565b508c1960ff1690811b901c8061162f565b6114b3909a999691929394959a6001810188811190811502176101008b0152611456565b60c0870151860361140257945094925094509468a20d6e21d0e52553085463ffffffff60201b61010084015160201b169163ffffffff60401b9060401b1690600160201b600160601b031916171768a20d6e21d0e5255308555f611285565b602060018860609a9699959a989497981b179101526116e782610fa4565b9461170760408801519563ffffffff895188038060a08c01521690611a93565b60015b156117d0575b5f945f1901946117208688611b3c565b63ffffffff8116905f1982018060021c685106b710e87292a98960611b019060c082549160061b1681811c60018060401b0316901b189055611767826101608c0151611c8e565b600160ff62ffffff8360081c16685106b710e87292a98760611b0192161b19815416905561179481611b58565b61179f575b5061170a565b6117a881611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611799565b60a0870151850361171057935093509390945f80611279565b9194604086979294970151948651976020880151898110818b18028a1899888b108b8a180289146119df578a8918898c10028918908190038a52900360208901526001600160a01b03838116908316146119bd576040805163144027d3818301526001600160a01b03858116606080840191909152908516608083015260a08201528a8918898c1002891860c0820181815260059190911b820160e0908101909352602082015290810181526101408901526118a483610fa4565b956118ae83610fa4565b9763ffffffff6118be8584611bbf565b1660e08b015260608a01519a81811090821802188a019560015b15611977575b878b6119228163ffffffff808f8f9061191660e0928461190d5f9b5f1960408701510190816040880152611b3c565b16988991611b97565b01511691169083611c4f565b6101408c01516020815183815201905261193b81611b58565b611946575b506118d8565b61194f81611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611940565b9960010199868b036118de579398955093986119a492975063ffffffff9196508060608701521683611a93565b6119b863ffffffff60408501511682611a93565b6111f7565b94929786819895939897929710908218021860608401510160608401526111f7565b505094929750945094916111f7565b670de0b6b3a7640000906001600160a01b0388811690881614611a23575b04606084015180820391110260208401525f6111f1565b6040850151855190036060860152611a0c565b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f6110d1565b63ffffffff165f5268a20d6e21d0e525530a60205260405f2090565b80546001600160a01b031660a09290921b6001600160a01b031916919091179055565b805463ffffffff60801b191660809290921b63ffffffff60801b16919091179055565b6001600160a01b0390611ada9061027b90600160201b8110025f190160011b611b18565b541690565b6001600160a01b03611af082611ab6565b161561035e575f90815268a20d6e21d0e525530c60205260409020546001600160a01b031690565b60e08160031c685106b710e87292a98960611b01549160051b161c63ffffffff1690565b60e0908260031c9060601b01549160051b161c63ffffffff1690565b8060081c68a20d6e21d0e525530d60601b01549060ff161c60011690565b60018160081c68a20d6e21d0e525530d60601b019160ff161b198154169055565b60e0909291928360031c9060601b019260051b1682549182821c1863ffffffff16901b189055565b805460601c63ffffffff1692918315611bd6575050565b68a20d6e21d0e5255308805463ffffffff19811663ffffffff918216600101918216908117909255835463ffffffff60601b191660609190911b63ffffffff60601b16179092559092508290611c2b82611a54565b80546001600160a01b0319166001600160a01b039092169190911790551561066357565b5f1901908160021c685106b710e87292a98960611b019260c084549360061b169163ffffffff169060201b1782821c1860018060401b0316901b189055565b9060209082519060081b8284015117815201905256fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a608034607857601f610bec38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811690819003607857683602298b8c10b0123180546001600160a01b031916919091179055604051610b5b90816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60808060405260043610156101c5575b5036156101ba575f3560e01c63263c69d681146101405763144027d381146100cf57630f4599e51461004857633c10b94e5f526004601cfd5b683602298b8c10b01231546001600160a01b0316806100ab575b50683602298b8c10b01230546001600160a01b03811661009e576001600160a01b0319163317683602298b8c10b012305560015f908152602090f35b63bf656a465f526004601cfd5b6004356001600160a01b0316036100c2575f610062565b63c59ec47a5f526004601cfd5b683602298b8c10b01230546001600160a01b03163303610133576004356024359060443591602483810193600481013560051b0101925b8381036101165760015f5260205ff35b803582845f80516020610b2f8339815191525f80a4602001610106565b63363cb3125f526004601cfd5b683602298b8c10b01230546001600160a01b0316330361013357600435602481810191600481013560051b0101905b81810361017f5760015f5260205ff35b8035600881901c6001600160581b03169060018116801560609290921c91820291025f80516020610b2f8339815191525f80a460200161016f565b346101c157005b5f80fd5b5f3560e01c90816301ffc9a71461098a5750806306fdde031461091f578063081812fc146108c8578063095ea7b31461084657806318160ddd146107fa57806323b872dd146107e6578063243598791461078f57806342842e0e1461071c5780636352211e146106ed5780636cef16e61461062157806370a08231146105c45780638da5cb5b1461059457806395d89b411461052957806397e5311c146104fd578063a22cb46514610471578063b88d4fde14610387578063c87b56dd1461030b5763e985e9c514610297575f61000f565b346101c15760403660031901126101c1576102b06109fe565b60205f6044601c6102bf610a14565b6102c7610ad0565b604080516362fb246d87526001600160a01b039889168852979092169091525afa601f3d1116156103035760405260205f516040519015158152f35b3d5f823e3d90fd5b346101c15760203660031901126101c15760043561032881610afa565b505f806024601c610337610ad0565b6040519563cb30b46085526020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b0390f35b60803660031901126101c15761039b6109fe565b6103a3610a14565b60443591606435916001600160401b0383116101c157366023840112156101c1576004830135926001600160401b0384116101c15736602485830101116101c1576103ef858385610a64565b813b6103f757005b83602094602460a49360405198899763150b7a028952338a8a015260018060a01b0316604089015260608801526080808801528260a08801520160c086013701905f601c8401915af115610463575b5163757a42ff60e11b0161045657005b63d1a57ed65f526004601cfd5b3d15610446573d5f823e3d90fd5b346101c15760403660031901126101c15761048a6109fe565b6024358015158091036101c15760205f6064601c826104a7610ad0565b9660018060a01b0316966040519663f6916ddd8352888752604052336060525af160015f511416156103035750337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160206040a3005b346101c1575f3660031901126101c1576020610517610ad0565b6040516001600160a01b039091168152f35b346101c1575f3660031901126101c157610541610ad0565b5f806024601c604051946395d89b418452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c1575f3660031901126101c157683602298b8c10b01232546040516001600160a01b039091168152602090f35b346101c15760203660031901126101c1576001600160a01b036105e56109fe565b1660205f6044601c6105f5610ad0565b6040519563f5b100ea85528552836040525afa601f3d1116156103035760405260205f51604051908152f35b346101c1575f3660031901126101c157610639610ad0565b683602298b8c10b012325460205f6004601c60018060a01b03851695638da5cb5b84525afa9081601f3d1116600c5160601c0291156106d6575b506001600160a01b031690818103610691575b602060405160018152f35b683602298b8c10b0123280546001600160a01b031916831790557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a38080610686565b60601b6001600160601b0319166101c15782610673565b346101c15760203660031901126101c15760206001600160a01b03610713600435610afa565b16604051908152f35b61072536610a2a565b91610731838383610a64565b813b61073957005b60a460209260405194859363150b7a028552338686015260018060a01b0316604085015260608401526080808401525f60a08401525f3681375f601c8401915af115610463575163757a42ff60e11b0161045657005b346101c15760203660031901126101c1576107a8610ad0565b60205f6044601c6040519463c016aa5284526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b6107f86107f236610a2a565b91610a64565b005b346101c1575f3660031901126101c157610812610ad0565b60205f6044601c6040519463e2c792818452838552836040525afa601f3d1116156103035760405260205f51604051908152f35b60403660031901126101c15761085a6109fe565b60243590610866610ad0565b9060018060a01b03169060205f6064601c6040519463d10b6e0c8452868552876040523360605234905af1601f3d1116156103035750600c5160601c7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b346101c15760203660031901126101c1576108e1610ad0565b60205f6044601c604051946327ef549584526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b346101c1575f3660031901126101c157610937610ad0565b5f806024601c604051946306fdde038452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c15760203660031901126101c157600435906001600160e01b0319821682036101c15760209160e01c635b5e139f8114906301ffc9a76380ac58cd82149114171715158152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c157565b602435906001600160a01b03821682036101c157565b60609060031901126101c1576004356001600160a01b03811681036101c157906024356001600160a01b03811681036101c1579060443590565b9060846020610a71610ad0565b6040805163e5eb36c881526001600160a01b03968716848201819052959096169086018190526060860187905233608087015294928391601c83019034905af16001825114161561030357505f80516020610b2f8339815191525f80a4565b683602298b8c10b01230546001600160a01b0316908115610aed57565b635b2a47ae5f526004601cfd5b60205f6044601c610b09610ad0565b60405195632d8a746e85528552836040525afa601f3d111615610303576040525f519056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a";
5
-
6
- exports.dopplerDN404_default = dopplerDN404_default;
7
- //# sourceMappingURL=chunk-QAPQGDWK.js.map
8
- //# sourceMappingURL=chunk-QAPQGDWK.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/abis/bytecodes/dopplerDN404.ts"],"names":[],"mappings":";;;AAAA,IAAO,oBAAA,GAAQ","file":"chunk-QAPQGDWK.js","sourcesContent":["export default '0x608060405234610444576130dd8038038061001981610754565b928339810160c0828203126104445781516001600160401b0381116104445781610044918401610779565b60208301519092906001600160401b0381116104445782610066918301610779565b92604082015190610079606084016107ca565b92610086608082016107ca565b60a08201519095906001600160401b038111610444576100a69201610779565b936001600160a01b03168015610741575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a38051906001600160401b03821161047a5760015490600182811c92168015610737575b602083101461055f5781601f8493116106c9575b50602090601f8311600114610663575f92610658575b50508160011b915f199060031b1c1916176001555b83516001600160401b03811161047a57600254600181811c9116801561064e575b602082101461055f57601f81116105eb575b50602094601f8211600114610588579481929394955f9261057d575b50508160011b915f199060031b1c1916176002555b82516001600160401b03811161047a57600354600181811c91168015610573575b602082101461055f57601f81116104fc575b506020601f821160011461049957819293945f9261048e575b50508160011b915f199060031b1c1916176003555b604051610bec808201906001600160401b0382118383101761047a5760209183916124f183393381520301905ff0801561046f5768a20d6e21d0e5255309546001600160a01b03918216911661046257801561045557630f4599e55f523360205260205f6024601c82855af160015f5114161561044857678da5cb5b6cef16e65f5260208060046018305afa601f3d1160205160601b151016610435575b68a20d6e21d0e5255308805463ffffffff60201b191664010000000017905568a20d6e21d0e525530980546001600160a01b0319169190911790558061030b575b604051611cf190816108008239f35b6001600160a01b03821691821561042857670de0b6b3a7640000820463fffffffe108260601c1761041b5768a20d6e21d0e525530880546001600160a01b031660a084901b6001600160a01b0319169081179091556103ae929061036e836107de565b80546001600160a01b031690911790555f90815283907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602082a36107de565b906bff00000000000000000000008254918260581c9060015f527fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff821691161560011b1860011760581b16906bff000000000000000000000019161790555f806102fc565b63e5cfe9575f526004601cfd5b63ea553b345f526004601cfd5b5f806004601c82855af16102bb575b5f80fd5b63d125259c5f526004601cfd5b6339a84a7b5f526004601cfd5b63ead4d2e45f526004601cfd5b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b015190505f80610208565b601f1982169060035f52805f20915f5b8181106104e4575095836001959697106104cc575b505050811b0160035561021d565b01515f1960f88460031b161c191690555f80806104be565b9192602060018192868b0151815501940192016104a9565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610555575b601f0160051c01905b81811061054a57506101ef565b5f815560010161053d565b9091508190610534565b634e487b7160e01b5f52602260045260245ffd5b90607f16906101dd565b015190505f806101a7565b601f1982169560025f52805f20915f5b8881106105d3575083600195969798106105bb575b505050811b016002556101bc565b01515f1960f88460031b161c191690555f80806105ad565b91926020600181928685015181550194019201610598565b60025f527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace601f830160051c81019160208410610644575b601f0160051c01905b818110610639575061018b565b5f815560010161062c565b9091508190610623565b90607f1690610179565b015190505f80610143565b60015f9081528281209350601f198516905b8181106106b15750908460019594939210610699575b505050811b01600155610158565b01515f1960f88460031b161c191690555f808061068b565b92936020600181928786015181550195019301610675565b60015f529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f840160051c8101916020851061072d575b90601f859493920160051c01905b81811061071f575061012d565b5f8155849350600101610712565b9091508190610704565b91607f1691610119565b631e4fbdf760e01b5f525f60045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761047a57604052565b81601f82011215610444578051906001600160401b03821161047a576107a8601f8301601f1916602001610754565b928284526020838301011161044457815f9260208093018386015e8301015290565b51906001600160a01b038216820361044457565b6001600160a01b03165f90815268a20d6e21d0e5255313602052604090209056fe6080806040526004361015610667575b50361561065c575f3560e01c63e5eb36c881146103d25763f6916ddd811461038f576362fb246d811461036b57632d8a746e81146103325763c016aa52811461031f5763d10b6e0c811461022f576327ef549581146102145763f5b100ea81146101ef5763e2c7928181146101d45763cb30b46081146100a95763b7a94eb8146100a057633c10b94e5f526004601cfd5b60015f5260205ff35b60206040510160405260606003546100c081610f14565b6100e4575b50605f601f198201915f6020825180930101526020835201601f191690f35b905060405190608082019160a081016040525f8352600a600435935b5f19019360308282060185530492831561011c57600a90610100565b9250608083601f19810192030181526040519283915f9061013c85610f14565b94600181169081156101b45750600114610173575b61016d9450518092825e015f815203601f198101835282610f4c565b816100c5565b905060035f5260205f20935f5b818110610198575061016d9450830160200190610151565b8554602082890181019190915260019096019587955001610180565b602092935061016d96915060ff1916828601528015150284010190610151565b63ffffffff68a20d6e21d0e52553085460801c165f5260205ff35b63ffffffff6102086004356001600160a01b0316610f83565b5460801c165f5260205ff35b6001600160a01b03610227600435611adf565b165f5260205ff35b68a20d6e21d0e5255309546001600160a01b03163303610312576001600160a01b036044358116906024359060043581169061028061027b5f19600160201b861086020160011b611b18565b611a54565b5416928381036102ef575b505f82815268a20d6e21d0e525530c60209081526040822080546001600160a01b0319166001600160a01b03851617905568a20d6e21d0e525530d60601b600885901c018054600160ff90961695861b191693151590941b92909217909255918152f35b6102f99084611097565b5415610305578361028b565b63cfb3b9425f526004601cfd5b63ce5a776b5f526004601cfd5b6001600160a01b03610227600435611ab6565b6004356001600160a01b0361034682611ab6565b161561035e576001600160a01b039061022790611ab6565b63ceea21b65f526004601cfd5b6103856001600160a01b0360243581169060043516611097565b5415155f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633036103125760243515156103c86001600160a01b0360043581169060443516611097565b5560015f5260205ff35b68a20d6e21d0e5255309546001600160a01b031633819003610312576001600160a01b036024358116916004358216916044359160643590911690841561064f5715610642576001600160a01b0361043a61027b600160201b851085025f190160011b611b18565b54168303610635578281036105fc575b5061045482610f83565b9061045e84610f83565b90825460a01c9283670de0b6b3a7640000116105ef576105989361049690670de0b6b3a763ffff19016001600160601b031682611a70565b82546104b89060a01c670de0b6b3a7640000016001600160601b031684611a70565b6104c182611b58565b6105be575b60016104f56104d487610fa4565b926104ef63ffffffff5f1981845460801c1601168092611a93565b83611b3c565b610517816105095f198701851b8501611b18565b9463ffffffff861690611b97565b63ffffffff5f19911601811b019060e08260031c685106b710e87292a98960611b019260051b1682549182821c1863ffffffff16901b1890556105928563ffffffff845460801c169361057363ffffffff600187011682611a93565b61058d61057f83610fa4565b8663ffffffff871691611b97565b611bbf565b90611c4f565b670de0b6b3a76400005f525f80516020611cc583398151915260205fa360015f5260205ff35b6105c782611b76565b5f82815268a20d6e21d0e525530c6020526040902080546001600160a01b03191690556104c6565b63f4d678b85f526004601cfd5b6106068184611097565b5461044a576001600160a01b0361061c83611adf565b1603610628578361044a565b6359c896be5f526004601cfd5b63a11481005f526004601cfd5b6340739bf05f526004601cfd5b63ea553b345f526004601cfd5b3461066357005b5f80fd5b5f3560e01c90816306fdde0314610e1c57508063095ea7b314610d7b57806310aa0ebb14610d5657806316f0115b14610d2e57806318160ddd14610d06578063207d063614610cc357806323b872dd14610c1d578063274e430b14610bf05780632a6a935d14610b7e578063313ce56714610b635780634ef41efc14610b3357806355f804b3146109c757806370a0823114610998578063715018a61461095457806389026538146109275780638da5cb5b1461090057806395d89b4114610826578063a9059cbb146107f5578063dd62ed3e146107c15763f2fde38b1461074f575f61000f565b3461066357602036600319011261066357610768610ee8565b610770611053565b6001600160a01b031680156107ae575f80546001600160a01b03198116831782556001600160a01b0316905f80516020611ca58339815191529080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346106635760403660031901126106635760206107ed6107df610ee8565b6107e7610efe565b90610fed565b604051908152f35b346106635760403660031901126106635761081b610811610ee8565b60243590336110b5565b602060405160018152f35b34610663575f366003190112610663576040515f60025461084681610f14565b80845290600181169081156108dc575060011461087e575b61087a8361086e81850382610f4c565b60405191829182610ebe565b0390f35b60025f9081527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace939250905b8082106108c25750909150810160200161086e61085e565b9192600181602092548385880101520191019092916108aa565b60ff191660208086019190915291151560051b8401909101915061086e905061085e565b34610663575f366003190112610663575f546040516001600160a01b039091168152602090f35b34610663575f3660031901126106635761093f611053565b6004805460ff60a01b1916600160a01b179055005b34610663575f3660031901126106635761096c611053565b5f80546001600160a01b0319811682556001600160a01b03165f80516020611ca58339815191528280a3005b346106635760203660031901126106635760206109bb6109b6610ee8565b610f83565b5460a01c604051908152f35b34610663576020366003190112610663576004356001600160401b03811161066357366023820112156106635760048101356001600160401b03811161066357366024828401011161066357610a1b611053565b610a26600354610f14565b601f8111610ad0575b505f601f8211600114610a6b5781925f92610a5d575b50508160011b915f199060031b1c1916176003555f80f35b602492500101358280610a45565b601f1982169260035f5260205f20915f5b858110610ab557508360019510610a99575b505050811b01600355005b01602401355f19600384901b60f8161c19169055828080610a8e565b90926020600181926024878701013581550194019101610a7c565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610b29575b601f0160051c01905b818110610b1e5750610a2f565b5f8155600101610b11565b9091508190610b08565b34610663575f3660031901126106635768a20d6e21d0e5255309546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060405160128152f35b3461066357602036600319011261066357600435801580158092036106635761081b91610baa33610f83565b91825460581c915f52337fb5a1de456fff688115a4f75380060c23c8532d14ff85f687cc871456d642039360205fa2600260ff83169216151860011b1860011790611036565b34610663576020366003190112610663576020610c13610c0e610ee8565b610fc5565b6040519015158152f35b3461066357606036600319011261066357610c36610ee8565b610c3e610efe565b60443590610c4c3384611079565b926e22d473030f116ddee9f6b43ac78ba3331480610cac575b15610ca4575f19935b60018501610c82575b5061081b93506110b5565b848411610c97578361081b9503905584610c77565b6313be252b5f526004601cfd5b835493610c6e565b506004610cb882610f83565b5460581c1615610c65565b3461066357602036600319011261066357610cdc610ee8565b610ce4611053565b600480546001600160a81b0319166001600160a01b0392909216919091179055005b34610663575f36600319011261066357602068a20d6e21d0e52553085460a01c604051908152f35b34610663575f366003190112610663576004546040516001600160a01b039091168152602090f35b34610663575f36600319011261066357602060ff60045460a01c166040519015158152f35b3461066357604036600319011261066357610d94610ee8565b6001600160a01b03811690602435908190610dc6906e22d473030f116ddee9f6b43ac78ba38514610dfa575b33611079565b555f52337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560205fa3602060405160018152f35b610e17610e0633610f83565b600460ff825460581c161790611036565b610dc0565b34610663575f366003190112610663575f600154610e3981610f14565b80845290600181169081156108dc5750600114610e605761087a8361086e81850382610f4c565b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b808210610ea45750909150810160200161086e61085e565b919260018160209254838588010152019101909291610e8c565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361066357565b602435906001600160a01b038216820361066357565b90600182811c92168015610f42575b6020831014610f2e57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610f23565b601f909101601f19168101906001600160401b03821190821017610f6f57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b03165f90815268a20d6e21d0e52553136020526040902090565b6001600160a01b03165f90815268a20d6e21d0e52553106020526040902090565b90610fcf82610f83565b5460581c916001600284161515931615610fe65750565b3b15159150565b906001600160a01b0381166e22d473030f116ddee9f6b43ac78ba31461101b575b61101791611079565b5490565b600461102683610f83565b5460581c1661100e5750505f1990565b805460ff60581b191660589290921b60ff60581b16919091179055565b5f546001600160a01b0316330361106657565b63118cdaa760e01b5f523360045260245ffd5b9060285260145268a20d6e21d0e525530f5f5260485f20905f602852565b9060285260145268a20d6e21d0e525530b5f5260485f20905f602852565b6004549092906001600160a01b03838116908216149081611a45575b50611a36576001600160a01b0382161561064f576110ee83610f83565b6110f783610f83565b68a20d6e21d0e5255309546001600160a01b031615610642576040519161018083016001600160401b03811184821017610f6f576040525f83525f60208401525f60808401525f60a08401525f60c08401525f60e08401525f6101008401525f6101208401525f6101408401525f610160840152805463ffffffff8160801c16604085015263ffffffff835460801c1660608501528060a01c85116105ef5760a01c8490036111af6001600160601b03821683611a70565b825460a01c8501906111ca6001600160601b03831685611a70565b670de0b6b3a76400006040860151910480820391110284526111eb86610fc5565b156119ee575b506117e9565b68a20d6e21d0e52553085463ffffffff60208501518551928382848360801c1601038060808901528360801b9060801b16908360801b191617928368a20d6e21d0e52553085501916040519260c060a085019180835260051b850101604052836040015260c0830183528261016087015260601c1661012085015283516116c9575b5050602082015161135e575b506101408101518061131a575b506101600151806112c8575b505f9081526001600160a01b0391821692909116905f80516020611cc583398151915290602090a3565b600160206040828060a01b0368a20d6e21d0e5255309541693015192603f19840193849163263c69d6835283601f198301525f825160051b6044019260231901915af19151141615610663575f61129e565b600160205f9281838060a01b0368a20d6e21d0e5255309541691015190815160051b60840190607f19830195869360631901915af19151141615610663575f611292565b9194610160829492015160208360601b91015261137a82610fa4565b9463ffffffff61138a8486611bbf565b1660e086015268a20d6e21d0e5255308549263ffffffff670de0b6b3a76400008560a01c049460201c1684811190811502176101008701526113e460608701519563ffffffff602089015188018060c08b01521690611a93565b63ffffffff68a20d6e21d0e52553085460401c169760015b1561166a575b6101208701515f9063ffffffff8b81169116146114b8576114b363ffffffff60018c01169a60e0641fffffffe0631fffffff8360031c1668a20d6e21d0e525531160601b01549260051b16161c63ffffffff165b8060081c685106b710e87292a98760611b0160018260ff161b801982541617905561148863ffffffff82168a8d611b97565b6114a863ffffffff60e08c01511663ffffffff60018c019b169083611c4f565b6101608a0151611c8e565b6113fc565b949798939291906101008801515b63ffffffff6114da5f19830160011b611b18565b1615611646575f19906001810160081c685106b710e87292a98760611b018054196001830160ff1690811c901b80156115ce575b80611524575b50505089811190811502176114c6565b600180939450811901167e1f0d1e100c1d070f090b19131c1706010e11080a1a141802121b1503160405601f6101e07a1412563212c14164235266736f7425221143267a4524367526767760fc7b2aaaaaaaba69a69a6db6db6db2cb2cb2ce739ce73def7bdeffffffff860260f81c161b60f71c1692831c63d76453e004161a179082685106b710e87292a98760611b03190160081b17910181108a8211175f03175f8080611514565b506001909c9895929c9a9794919a9693965b01805419685106b710e87292a98760611b60088e901c018211811761160857506001906115e0565b9c9295989c9a9194979a969396808d60081c685106b710e87292a98760611b018311611635575b5061150e565b508c1960ff1690811b901c8061162f565b6114b3909a999691929394959a6001810188811190811502176101008b0152611456565b60c0870151860361140257945094925094509468a20d6e21d0e52553085463ffffffff60201b61010084015160201b169163ffffffff60401b9060401b1690600160201b600160601b031916171768a20d6e21d0e5255308555f611285565b602060018860609a9699959a989497981b179101526116e782610fa4565b9461170760408801519563ffffffff895188038060a08c01521690611a93565b60015b156117d0575b5f945f1901946117208688611b3c565b63ffffffff8116905f1982018060021c685106b710e87292a98960611b019060c082549160061b1681811c60018060401b0316901b189055611767826101608c0151611c8e565b600160ff62ffffff8360081c16685106b710e87292a98760611b0192161b19815416905561179481611b58565b61179f575b5061170a565b6117a881611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611799565b60a0870151850361171057935093509390945f80611279565b9194604086979294970151948651976020880151898110818b18028a1899888b108b8a180289146119df578a8918898c10028918908190038a52900360208901526001600160a01b03838116908316146119bd576040805163144027d3818301526001600160a01b03858116606080840191909152908516608083015260a08201528a8918898c1002891860c0820181815260059190911b820160e0908101909352602082015290810181526101408901526118a483610fa4565b956118ae83610fa4565b9763ffffffff6118be8584611bbf565b1660e08b015260608a01519a81811090821802188a019560015b15611977575b878b6119228163ffffffff808f8f9061191660e0928461190d5f9b5f1960408701510190816040880152611b3c565b16988991611b97565b01511691169083611c4f565b6101408c01516020815183815201905261193b81611b58565b611946575b506118d8565b61194f81611b76565b5f90815268a20d6e21d0e525530c6020526040812080546001600160a01b0319169055611940565b9960010199868b036118de579398955093986119a492975063ffffffff9196508060608701521683611a93565b6119b863ffffffff60408501511682611a93565b6111f7565b94929786819895939897929710908218021860608401510160608401526111f7565b505094929750945094916111f7565b670de0b6b3a7640000906001600160a01b0388811690881614611a23575b04606084015180820391110260208401525f6111f1565b6040850151855190036060860152611a0c565b632e13674560e01b5f5260045ffd5b60ff915060a01c16155f6110d1565b63ffffffff165f5268a20d6e21d0e525530a60205260405f2090565b80546001600160a01b031660a09290921b6001600160a01b031916919091179055565b805463ffffffff60801b191660809290921b63ffffffff60801b16919091179055565b6001600160a01b0390611ada9061027b90600160201b8110025f190160011b611b18565b541690565b6001600160a01b03611af082611ab6565b161561035e575f90815268a20d6e21d0e525530c60205260409020546001600160a01b031690565b60e08160031c685106b710e87292a98960611b01549160051b161c63ffffffff1690565b60e0908260031c9060601b01549160051b161c63ffffffff1690565b8060081c68a20d6e21d0e525530d60601b01549060ff161c60011690565b60018160081c68a20d6e21d0e525530d60601b019160ff161b198154169055565b60e0909291928360031c9060601b019260051b1682549182821c1863ffffffff16901b189055565b805460601c63ffffffff1692918315611bd6575050565b68a20d6e21d0e5255308805463ffffffff19811663ffffffff918216600101918216908117909255835463ffffffff60601b191660609190911b63ffffffff60601b16179092559092508290611c2b82611a54565b80546001600160a01b0319166001600160a01b039092169190911790551561066357565b5f1901908160021c685106b710e87292a98960611b019260c084549360061b169163ffffffff169060201b1782821c1860018060401b0316901b189055565b9060209082519060081b8284015117815201905256fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a608034607857601f610bec38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811690819003607857683602298b8c10b0123180546001600160a01b031916919091179055604051610b5b90816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60808060405260043610156101c5575b5036156101ba575f3560e01c63263c69d681146101405763144027d381146100cf57630f4599e51461004857633c10b94e5f526004601cfd5b683602298b8c10b01231546001600160a01b0316806100ab575b50683602298b8c10b01230546001600160a01b03811661009e576001600160a01b0319163317683602298b8c10b012305560015f908152602090f35b63bf656a465f526004601cfd5b6004356001600160a01b0316036100c2575f610062565b63c59ec47a5f526004601cfd5b683602298b8c10b01230546001600160a01b03163303610133576004356024359060443591602483810193600481013560051b0101925b8381036101165760015f5260205ff35b803582845f80516020610b2f8339815191525f80a4602001610106565b63363cb3125f526004601cfd5b683602298b8c10b01230546001600160a01b0316330361013357600435602481810191600481013560051b0101905b81810361017f5760015f5260205ff35b8035600881901c6001600160581b03169060018116801560609290921c91820291025f80516020610b2f8339815191525f80a460200161016f565b346101c157005b5f80fd5b5f3560e01c90816301ffc9a71461098a5750806306fdde031461091f578063081812fc146108c8578063095ea7b31461084657806318160ddd146107fa57806323b872dd146107e6578063243598791461078f57806342842e0e1461071c5780636352211e146106ed5780636cef16e61461062157806370a08231146105c45780638da5cb5b1461059457806395d89b411461052957806397e5311c146104fd578063a22cb46514610471578063b88d4fde14610387578063c87b56dd1461030b5763e985e9c514610297575f61000f565b346101c15760403660031901126101c1576102b06109fe565b60205f6044601c6102bf610a14565b6102c7610ad0565b604080516362fb246d87526001600160a01b039889168852979092169091525afa601f3d1116156103035760405260205f516040519015158152f35b3d5f823e3d90fd5b346101c15760203660031901126101c15760043561032881610afa565b505f806024601c610337610ad0565b6040519563cb30b46085526020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b0390f35b60803660031901126101c15761039b6109fe565b6103a3610a14565b60443591606435916001600160401b0383116101c157366023840112156101c1576004830135926001600160401b0384116101c15736602485830101116101c1576103ef858385610a64565b813b6103f757005b83602094602460a49360405198899763150b7a028952338a8a015260018060a01b0316604089015260608801526080808801528260a08801520160c086013701905f601c8401915af115610463575b5163757a42ff60e11b0161045657005b63d1a57ed65f526004601cfd5b3d15610446573d5f823e3d90fd5b346101c15760403660031901126101c15761048a6109fe565b6024358015158091036101c15760205f6064601c826104a7610ad0565b9660018060a01b0316966040519663f6916ddd8352888752604052336060525af160015f511416156103035750337f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160206040a3005b346101c1575f3660031901126101c1576020610517610ad0565b6040516001600160a01b039091168152f35b346101c1575f3660031901126101c157610541610ad0565b5f806024601c604051946395d89b418452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c1575f3660031901126101c157683602298b8c10b01232546040516001600160a01b039091168152602090f35b346101c15760203660031901126101c1576001600160a01b036105e56109fe565b1660205f6044601c6105f5610ad0565b6040519563f5b100ea85528552836040525afa601f3d1116156103035760405260205f51604051908152f35b346101c1575f3660031901126101c157610639610ad0565b683602298b8c10b012325460205f6004601c60018060a01b03851695638da5cb5b84525afa9081601f3d1116600c5160601c0291156106d6575b506001600160a01b031690818103610691575b602060405160018152f35b683602298b8c10b0123280546001600160a01b031916831790557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a38080610686565b60601b6001600160601b0319166101c15782610673565b346101c15760203660031901126101c15760206001600160a01b03610713600435610afa565b16604051908152f35b61072536610a2a565b91610731838383610a64565b813b61073957005b60a460209260405194859363150b7a028552338686015260018060a01b0316604085015260608401526080808401525f60a08401525f3681375f601c8401915af115610463575163757a42ff60e11b0161045657005b346101c15760203660031901126101c1576107a8610ad0565b60205f6044601c6040519463c016aa5284526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b6107f86107f236610a2a565b91610a64565b005b346101c1575f3660031901126101c157610812610ad0565b60205f6044601c6040519463e2c792818452838552836040525afa601f3d1116156103035760405260205f51604051908152f35b60403660031901126101c15761085a6109fe565b60243590610866610ad0565b9060018060a01b03169060205f6064601c6040519463d10b6e0c8452868552876040523360605234905af1601f3d1116156103035750600c5160601c7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a4005b346101c15760203660031901126101c1576108e1610ad0565b60205f6044601c604051946327ef549584526004358552836040525afa601f3d1116156103035760408190525f516001600160a01b03168152602090f35b346101c1575f3660031901126101c157610937610ad0565b5f806024601c604051946306fdde038452836020525afa15610303576103839060205f803e60205f51823e805160205f5101602083013e6040815182015f602082015201604052604051918291826109d4565b346101c15760203660031901126101c157600435906001600160e01b0319821682036101c15760209160e01c635b5e139f8114906301ffc9a76380ac58cd82149114171715158152f35b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c157565b602435906001600160a01b03821682036101c157565b60609060031901126101c1576004356001600160a01b03811681036101c157906024356001600160a01b03811681036101c1579060443590565b9060846020610a71610ad0565b6040805163e5eb36c881526001600160a01b03968716848201819052959096169086018190526060860187905233608087015294928391601c83019034905af16001825114161561030357505f80516020610b2f8339815191525f80a4565b683602298b8c10b01230546001600160a01b0316908115610aed57565b635b2a47ae5f526004601cfd5b60205f6044601c610b09610ad0565b60405195632d8a746e85528552836040525afa601f3d111615610303576040525f519056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa164736f6c634300081a000a';\n"]}