@tempoxyz/id 0.0.0-pr-293.sha-db2bcd0 → 0.0.0-pr-293.sha-e314a6e
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.
- package/dist/app/client/assets/Account-BYLpNFf3.css +1 -0
- package/dist/app/client/assets/Account-DKlYpUaF.js +1 -0
- package/dist/app/client/assets/Amount-ZdtluGf-.css +1 -0
- package/dist/app/client/assets/Amount-uCaXmEC1.js +1 -0
- package/dist/app/client/assets/{Approval-lMS61Hor.js → Approval-_VTK0bIA.js} +1 -1
- package/dist/app/client/assets/{Authentication-CNU_hdsE.js → Authentication-CcZraW4V.js} +1 -1
- package/dist/app/client/assets/Callout-Cpp2tekO.js +1 -0
- package/dist/app/client/assets/Callout-DBfEmP7q.css +1 -0
- package/dist/app/client/assets/{Chain-CgM0gkul.js → Chain-BaJbQHEq.js} +1 -1
- package/dist/app/client/assets/{Check-l6Xt-h8M.js → Check-T-Kf-w2J.js} +1 -1
- package/dist/app/client/assets/{ChevronRight-Dgx1CBfS.js → ChevronRight-Cb0izsfB.js} +1 -1
- package/dist/app/client/assets/{ChooseAccount-DKQvWYym.js → ChooseAccount-BbdtokuQ.js} +1 -1
- package/dist/app/client/assets/{Client-B3HiaUR7.js → Client-XdlKOIjT.js} +1 -1
- package/dist/app/client/assets/{Close-CHeDbDyp.js → Close-9qiwSZoT.js} +1 -1
- package/dist/app/client/assets/{Cloud-BnBzwFJQ.js → Cloud-yU0Kxv28.js} +1 -1
- package/dist/app/client/assets/CodeInput-BqRteSwD.css +1 -0
- package/dist/app/client/assets/CodeInput-C8ad0edh.js +1 -0
- package/dist/app/client/assets/Deposit-CclrAoXL.css +1 -0
- package/dist/app/client/assets/Deposit-b5yx-L71.js +1 -0
- package/dist/app/client/assets/DevTools-BYkmtuV5.css +1 -0
- package/dist/app/client/assets/DevTools-Cgd0Ogan.js +1 -0
- package/dist/app/client/assets/{DeviceApproval-DKQklicf.js → DeviceApproval-CGdmL9U5.js} +1 -1
- package/dist/app/client/assets/{Fingerprint-CVLZp0fE.js → Fingerprint-081gQp_i.js} +1 -1
- package/dist/app/client/assets/{Globe-RAkdkLVn.js → Globe-D4HEnXoi.js} +1 -1
- package/dist/app/client/assets/Grant-5a-n1gJH.css +1 -0
- package/dist/app/client/assets/Grant-C-7ibHJb.js +1 -0
- package/dist/app/client/assets/Hex-C9KeV7_9.css +1 -0
- package/dist/app/client/assets/Hex-COpLAksw.js +10 -0
- package/dist/app/client/assets/IconChip-Cr71cqFZ.js +1 -0
- package/dist/app/client/assets/IconChip-yqaQ2y_d.css +1 -0
- package/dist/app/client/assets/InputGroup-BMExR1w7.js +1 -0
- package/dist/app/client/assets/InputGroup-BlZvt9In.css +1 -0
- package/dist/app/client/assets/Inter-cyrillic-e3OmmzmJ.woff2 +0 -0
- package/dist/app/client/assets/Inter-cyrillic-ext-DOWZeO4Q.woff2 +0 -0
- package/dist/app/client/assets/Inter-greek-BD3ujQlX.woff2 +0 -0
- package/dist/app/client/assets/Inter-greek-ext-CXEwbus4.woff2 +0 -0
- package/dist/app/client/assets/Inter-latin-BDFm4vTb.woff2 +0 -0
- package/dist/app/client/assets/Inter-latin-ext-E7a9JEPe.woff2 +0 -0
- package/dist/app/client/assets/Inter-symbols-DEch7Rxr.woff2 +0 -0
- package/dist/app/client/assets/Inter-vietnamese-Bg9723vR.woff2 +0 -0
- package/dist/app/client/assets/Loader-CVy-jQh9.js +1 -0
- package/dist/app/client/assets/{PopoverPopup-AaR182Lw.js → PopoverPopup-CQv00nl_.js} +1 -1
- package/dist/app/client/assets/Rows-CT3nC-Gp.js +1 -0
- package/dist/app/client/assets/Rows-DPGTUdA8.css +1 -0
- package/dist/app/client/assets/{Separator-C1NRk_mW.js → Separator-Doxz2kha.js} +1 -1
- package/dist/app/client/assets/SignIn-D2D3rbzT.js +1 -0
- package/dist/app/client/assets/SignIn-mlBTwUq4.css +1 -0
- package/dist/app/client/assets/Stack-D7Yt22Ed.css +1 -0
- package/dist/app/client/assets/Stack-qm24zmlV.js +1 -0
- package/dist/app/client/assets/ToolbarRootContext-Ctu7JTLk.js +1 -0
- package/dist/app/client/assets/Tooltip-arQraM0D.js +1 -0
- package/dist/app/client/assets/Tooltip-d3y9ESUJ.css +1 -0
- package/dist/app/client/assets/___-I98bns4o.css +1 -0
- package/dist/app/client/assets/___.flows-8Dmgeehd.js +5 -0
- package/dist/app/client/assets/{authorize-BQ1QbDZ8.js → authorize-DAtsqrNM.js} +1 -1
- package/dist/app/client/assets/{choose-account-Da0fLaYb.js → choose-account-DEFRgijo.js} +1 -1
- package/dist/app/client/assets/{deposit-CwKR_KjX.js → deposit--QiYWQfo.js} +1 -1
- package/dist/app/client/assets/{device-CCwq2oAs.js → device-Bq9xs5K6.js} +1 -1
- package/dist/app/client/assets/{error-Dj24A5n4.js → error-IQXxc1eM.js} +1 -1
- package/dist/app/client/assets/{getPseudoElementBounds-DH_jjqMh.js → getPseudoElementBounds-4olojy3W.js} +1 -1
- package/dist/app/client/assets/index-CyFheDuU.js +13 -0
- package/dist/app/client/assets/index-DSkPoKOK.css +1 -0
- package/dist/app/client/assets/{lazyRouteComponent-108fI1-o.js → lazyRouteComponent-Dz0rIGYN.js} +1 -1
- package/dist/app/client/assets/{login--cK4-SN_.js → login-B0BjHqjo.js} +1 -1
- package/dist/app/client/assets/pathUSD-BMh6ajrW.css +1 -0
- package/dist/app/client/assets/pathUSD-DuAfAKZZ.js +1 -0
- package/dist/app/client/assets/{removable-CZFK4Sbw.js → removable-CbJQgeuY.js} +1 -1
- package/dist/app/client/assets/{routes-BEKA6M9o.js → routes-BkBTe_Iu.js} +1 -1
- package/dist/app/client/assets/{suspense-ClIj0Mjn.js → suspense-Djz3yPi6.js} +1 -1
- package/dist/app/client/assets/useNavigate-B3GfD6JV.js +1 -0
- package/dist/app/client/assets/{useRegisterFieldControl-r_mKBm9D.js → useRegisterFieldControl-C8uwO_R4.js} +1 -1
- package/dist/app/client/assets/zyzz-DYC-X0_B.css +1 -0
- package/dist/app/client/assets/zyzz.config-DJRBo25J.js +2 -0
- package/dist/app/server/.vite/manifest.json +640 -608
- package/dist/app/server/assets/Account-BYLpNFf3.css +1 -0
- package/dist/app/server/assets/Account-g1_Uaj86.js +2 -0
- package/dist/app/server/assets/Account-g1_Uaj86.js.map +1 -0
- package/dist/app/server/assets/Amount-BXSuv2fx.js +2 -0
- package/dist/app/server/assets/Amount-BXSuv2fx.js.map +1 -0
- package/dist/app/server/assets/Amount-ZdtluGf-.css +1 -0
- package/dist/app/server/assets/{Approval-DhLkTvkI.js → Approval-DA8fDZIl.js} +2 -2
- package/dist/app/server/assets/{Approval-DhLkTvkI.js.map → Approval-DA8fDZIl.js.map} +1 -1
- package/dist/app/server/assets/{Authentication-Odm8-gfs.js → Authentication-BJgy8lyC.js} +2 -2
- package/dist/app/server/assets/{Authentication-Odm8-gfs.js.map → Authentication-BJgy8lyC.js.map} +1 -1
- package/dist/app/server/assets/{Authentication-DLWMd2mA.js → Authentication-CsSh3HGu.js} +2 -2
- package/dist/app/server/assets/{Authentication-DLWMd2mA.js.map → Authentication-CsSh3HGu.js.map} +1 -1
- package/dist/app/server/assets/Callout-DBfEmP7q.css +1 -0
- package/dist/app/server/assets/Callout-DlcQ5BUo.js +2 -0
- package/dist/app/server/assets/Callout-DlcQ5BUo.js.map +1 -0
- package/dist/app/server/assets/{Chain-CQgBRAXx.js → Chain-C9RGZDJm.js} +2 -2
- package/dist/app/server/assets/{Chain-CQgBRAXx.js.map → Chain-C9RGZDJm.js.map} +1 -1
- package/dist/app/server/assets/{Check-BwwQ6kDn.js → Check-CQIa-Y5d.js} +2 -2
- package/dist/app/server/assets/{Check-BwwQ6kDn.js.map → Check-CQIa-Y5d.js.map} +1 -1
- package/dist/app/server/assets/{ChevronRight-B_ft-uyS.js → ChevronRight-wzF9Mh2e.js} +2 -2
- package/dist/app/server/assets/{ChevronRight-B_ft-uyS.js.map → ChevronRight-wzF9Mh2e.js.map} +1 -1
- package/dist/app/server/assets/{ChooseAccount-FJJ2kRPk.js → ChooseAccount-De_YweJM.js} +2 -2
- package/dist/app/server/assets/{ChooseAccount-FJJ2kRPk.js.map → ChooseAccount-De_YweJM.js.map} +1 -1
- package/dist/app/server/assets/{Client-D3gnMDTr.js → Client-BAXSFa9e.js} +2 -2
- package/dist/app/server/assets/{Client-D3gnMDTr.js.map → Client-BAXSFa9e.js.map} +1 -1
- package/dist/app/server/assets/{ClientOnly-CbQVNHub.js → ClientOnly-B8k5xDwz.js} +2 -2
- package/dist/app/server/assets/{ClientOnly-CbQVNHub.js.map → ClientOnly-B8k5xDwz.js.map} +1 -1
- package/dist/app/server/assets/{Close-ChRMz-uR.js → Close-C74hwnOn.js} +2 -2
- package/dist/app/server/assets/{Close-ChRMz-uR.js.map → Close-C74hwnOn.js.map} +1 -1
- package/dist/app/server/assets/{Cloud-C3_mtq_Y.js → Cloud-CYXeneSe.js} +2 -2
- package/dist/app/server/assets/{Cloud-C3_mtq_Y.js.map → Cloud-CYXeneSe.js.map} +1 -1
- package/dist/app/server/assets/CodeInput-BqRteSwD.css +1 -0
- package/dist/app/server/assets/CodeInput-DdkMKOyq.js +2 -0
- package/dist/app/server/assets/CodeInput-DdkMKOyq.js.map +1 -0
- package/dist/app/server/assets/{Credential-D82PNwyx.js → Credential-DXcfPJEP.js} +2 -2
- package/dist/app/server/assets/{Credential-D82PNwyx.js.map → Credential-DXcfPJEP.js.map} +1 -1
- package/dist/app/server/assets/Deposit-CclrAoXL.css +1 -0
- package/dist/app/server/assets/Deposit-DOp5HCDX.js +2 -0
- package/dist/app/server/assets/Deposit-DOp5HCDX.js.map +1 -0
- package/dist/app/server/assets/DevTools-BYkmtuV5.css +1 -0
- package/dist/app/server/assets/DevTools-CxdPUN3V.js +2 -0
- package/dist/app/server/assets/DevTools-CxdPUN3V.js.map +1 -0
- package/dist/app/server/assets/{DeviceApproval-BhWgrv9l.js → DeviceApproval-o7T8XlX3.js} +2 -2
- package/dist/app/server/assets/{DeviceApproval-BhWgrv9l.js.map → DeviceApproval-o7T8XlX3.js.map} +1 -1
- package/dist/app/server/assets/{ExecutionError-DSSCSoHl.js → ExecutionError-DoRNvh3D.js} +2 -2
- package/dist/app/server/assets/{ExecutionError-DSSCSoHl.js.map → ExecutionError-DoRNvh3D.js.map} +1 -1
- package/dist/app/server/assets/{Faucet-Cv-nQMBR.js → Faucet-jp6zNWHE.js} +2 -2
- package/dist/app/server/assets/{Faucet-Cv-nQMBR.js.map → Faucet-jp6zNWHE.js.map} +1 -1
- package/dist/app/server/assets/{Fingerprint-B0Iay4Ws.js → Fingerprint-CAqjOS3T.js} +2 -2
- package/dist/app/server/assets/{Fingerprint-B0Iay4Ws.js.map → Fingerprint-CAqjOS3T.js.map} +1 -1
- package/dist/app/server/assets/{Globe-C6rnzTY0.js → Globe-BZ_5dGqa.js} +2 -2
- package/dist/app/server/assets/{Globe-C6rnzTY0.js.map → Globe-BZ_5dGqa.js.map} +1 -1
- package/dist/app/server/assets/Grant-5a-n1gJH.css +1 -0
- package/dist/app/{client/assets/Grant-DurkleN7.js → server/assets/Grant-BwOC2P94.js} +2 -1
- package/dist/app/server/assets/Grant-BwOC2P94.js.map +1 -0
- package/dist/app/server/assets/Hex-67thYs-f.js +11 -0
- package/dist/app/server/assets/Hex-67thYs-f.js.map +1 -0
- package/dist/app/server/assets/Hex-C9KeV7_9.css +1 -0
- package/dist/app/server/assets/IconChip-Cmufss8d.js +2 -0
- package/dist/app/server/assets/IconChip-Cmufss8d.js.map +1 -0
- package/dist/app/server/assets/IconChip-yqaQ2y_d.css +1 -0
- package/dist/app/server/assets/InputGroup-BlZvt9In.css +1 -0
- package/dist/app/server/assets/InputGroup-Bn2KM9pd.js +2 -0
- package/dist/app/server/assets/InputGroup-Bn2KM9pd.js.map +1 -0
- package/dist/app/server/assets/Inter-cyrillic-e3OmmzmJ.woff2 +0 -0
- package/dist/app/server/assets/Inter-cyrillic-ext-DOWZeO4Q.woff2 +0 -0
- package/dist/app/server/assets/Inter-greek-BD3ujQlX.woff2 +0 -0
- package/dist/app/server/assets/Inter-greek-ext-CXEwbus4.woff2 +0 -0
- package/dist/app/server/assets/Inter-latin-BDFm4vTb.woff2 +0 -0
- package/dist/app/server/assets/Inter-latin-ext-E7a9JEPe.woff2 +0 -0
- package/dist/app/server/assets/Inter-symbols-DEch7Rxr.woff2 +0 -0
- package/dist/app/server/assets/Inter-vietnamese-Bg9723vR.woff2 +0 -0
- package/dist/app/server/assets/Loader-DvDbd8kj.js +2 -0
- package/dist/app/server/assets/{Loader-Ivf5dWFl.js.map → Loader-DvDbd8kj.js.map} +1 -1
- package/dist/app/server/assets/{Match-DusFDz9D.js → Match-C65vhhhD.js} +2 -2
- package/dist/app/server/assets/{Match-DusFDz9D.js.map → Match-C65vhhhD.js.map} +1 -1
- package/dist/app/server/assets/PopoverPopup-kuWGUSYM.js +2 -0
- package/dist/app/server/assets/{PopoverPopup-D98JOZVe.js.map → PopoverPopup-kuWGUSYM.js.map} +1 -1
- package/dist/app/server/assets/Rows-DPGTUdA8.css +1 -0
- package/dist/app/server/assets/Rows-eTPur_py.js +2 -0
- package/dist/app/server/assets/Rows-eTPur_py.js.map +1 -0
- package/dist/app/server/assets/{Separator-B6od-9JY.js → Separator-BPNenixO.js} +2 -2
- package/dist/app/server/assets/{Separator-B6od-9JY.js.map → Separator-BPNenixO.js.map} +1 -1
- package/dist/app/server/assets/SignIn-CVPZSR-8.js +2 -0
- package/dist/app/server/assets/SignIn-CVPZSR-8.js.map +1 -0
- package/dist/app/server/assets/SignIn-mlBTwUq4.css +1 -0
- package/dist/app/server/assets/Stack-D7Yt22Ed.css +1 -0
- package/dist/app/server/assets/Stack-DQMZBUUB.js +2 -0
- package/dist/app/server/assets/Stack-DQMZBUUB.js.map +1 -0
- package/dist/app/server/assets/ToolbarRootContext-5168W3t4.js +2 -0
- package/dist/app/server/assets/{ToolbarRootContext-BCmWBQ7n.js.map → ToolbarRootContext-5168W3t4.js.map} +1 -1
- package/dist/app/server/assets/Tooltip-DR3nssae.js +2 -0
- package/dist/app/server/assets/Tooltip-DR3nssae.js.map +1 -0
- package/dist/app/server/assets/Tooltip-d3y9ESUJ.css +1 -0
- package/dist/app/server/assets/___-I98bns4o.css +1 -0
- package/dist/app/server/assets/___.flows-D_J822MU.js +6 -0
- package/dist/app/server/assets/___.flows-D_J822MU.js.map +1 -0
- package/dist/app/server/assets/_tanstack-start-manifest_v-DQjMcFpU.js +1 -0
- package/dist/app/server/assets/{_zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-Drf_Iqhc.js → _zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-EmCsnNUQ.js} +2 -2
- package/dist/app/server/assets/{_zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-Drf_Iqhc.js.map → _zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-EmCsnNUQ.js.map} +1 -1
- package/dist/app/server/assets/{accessKey-CxNqjouy.js → accessKey-DlBe71R7.js} +4 -4
- package/dist/app/server/assets/{accessKey-CxNqjouy.js.map → accessKey-DlBe71R7.js.map} +1 -1
- package/dist/app/server/assets/{authorize-D_5EG0WN.js → authorize-C3nY01zc.js} +2 -2
- package/dist/app/server/assets/{authorize-D_5EG0WN.js.map → authorize-C3nY01zc.js.map} +1 -1
- package/dist/app/server/assets/{authorize-pZETCSux.js → authorize-C9tfZ34z.js} +2 -2
- package/dist/app/server/assets/{authorize-pZETCSux.js.map → authorize-C9tfZ34z.js.map} +1 -1
- package/dist/app/server/assets/{authorize-DXYo-K2n-08rIhXFT.js → authorize-DXYo-K2n-Bc8o9t1x.js} +2 -2
- package/dist/app/server/assets/{authorize-DXYo-K2n-08rIhXFT.js.map → authorize-DXYo-K2n-Bc8o9t1x.js.map} +1 -1
- package/dist/app/server/assets/{choose-account-BOPrs9l7.js → choose-account-DNfcLweT.js} +2 -2
- package/dist/app/server/assets/{choose-account-BOPrs9l7.js.map → choose-account-DNfcLweT.js.map} +1 -1
- package/dist/app/server/assets/{choose-account-MDW4jp29.js → choose-account-Lq0qFqBr.js} +2 -2
- package/dist/app/server/assets/{choose-account-MDW4jp29.js.map → choose-account-Lq0qFqBr.js.map} +1 -1
- package/dist/app/server/assets/{core-Dxqe4Tzf.js → core-Ci_AVqAl.js} +2 -2
- package/dist/app/server/assets/{core-Dxqe4Tzf.js.map → core-Ci_AVqAl.js.map} +1 -1
- package/dist/app/server/assets/default-u_dwuiYb-D3URkhAV.js +2 -0
- package/dist/app/server/assets/{default-u_dwuiYb-BZX-cEte.js.map → default-u_dwuiYb-D3URkhAV.js.map} +1 -1
- package/dist/app/server/assets/{deposit-AgLrOoA3.js → deposit-Ch8VqCtG.js} +2 -2
- package/dist/app/server/assets/{deposit-AgLrOoA3.js.map → deposit-Ch8VqCtG.js.map} +1 -1
- package/dist/app/server/assets/{deposit-Cjt69KmJ.js → deposit-xQrouL3f.js} +2 -2
- package/dist/app/server/assets/{deposit-Cjt69KmJ.js.map → deposit-xQrouL3f.js.map} +1 -1
- package/dist/app/server/assets/{device-TEgIth9V.js → device-BAsgIC7D.js} +2 -2
- package/dist/app/server/assets/{device-TEgIth9V.js.map → device-BAsgIC7D.js.map} +1 -1
- package/dist/app/server/assets/{device-DO_RH0Or.js → device-BV99aHMG.js} +2 -2
- package/dist/app/server/assets/{device-DO_RH0Or.js.map → device-BV99aHMG.js.map} +1 -1
- package/dist/app/server/assets/dist-BhIyCFP8.js +1 -0
- package/dist/app/server/assets/{dist-C9wLcfH8.js → dist-C-Rzwa6V.js} +2 -2
- package/dist/app/server/assets/{dist-C9wLcfH8.js.map → dist-C-Rzwa6V.js.map} +1 -1
- package/dist/app/server/assets/{dist-SBl0rlY-.js → dist-CJN10pUl.js} +2 -2
- package/dist/app/server/assets/{dist-SBl0rlY-.js.map → dist-CJN10pUl.js.map} +1 -1
- package/dist/app/server/assets/{effect-QlVUlMFu-aB2jdYth.js → effect-QlVUlMFu-svPBY1dH.js} +2 -2
- package/dist/app/server/assets/{effect-QlVUlMFu-aB2jdYth.js.map → effect-QlVUlMFu-svPBY1dH.js.map} +1 -1
- package/dist/app/server/assets/{error-BDVg4EUJ.js → error-CHeOE_lh.js} +2 -2
- package/dist/app/server/assets/{error-BDVg4EUJ.js.map → error-CHeOE_lh.js.map} +1 -1
- package/dist/app/server/assets/{error-Yg6jqry-.js → error-PecJkSHO.js} +2 -2
- package/dist/app/server/assets/{error-Yg6jqry-.js.map → error-PecJkSHO.js.map} +1 -1
- package/dist/app/server/assets/{factory-BPswjDEW.js → factory-Bs0vLkBr.js} +2 -2
- package/dist/app/server/assets/{factory-BPswjDEW.js.map → factory-Bs0vLkBr.js.map} +1 -1
- package/dist/app/server/assets/getPseudoElementBounds-DIn3v91B.js +2 -0
- package/dist/app/server/assets/{getPseudoElementBounds-BdqJhx6M.js.map → getPseudoElementBounds-DIn3v91B.js.map} +1 -1
- package/dist/app/server/assets/{index-CLddUTqr-Bavq3Qss.js → index-CLddUTqr-CmUyZRXY.js} +2 -2
- package/dist/app/server/assets/{index-CLddUTqr-Bavq3Qss.js.map → index-CLddUTqr-CmUyZRXY.js.map} +1 -1
- package/dist/app/server/assets/{index-DZEfthgZ--TkOBRwP.js → index-DZEfthgZ-Bkf7F_aP.js} +2 -2
- package/dist/app/server/assets/{index-DZEfthgZ--TkOBRwP.js.map → index-DZEfthgZ-Bkf7F_aP.js.map} +1 -1
- package/dist/app/server/assets/{kysely-adapter-BVql8na5.js → kysely-adapter-DhztbDJz.js} +1 -1
- package/dist/app/server/assets/{lazyRouteComponent-BXabRVTE.js → lazyRouteComponent-DOSE663E.js} +2 -2
- package/dist/app/server/assets/{lazyRouteComponent-BXabRVTE.js.map → lazyRouteComponent-DOSE663E.js.map} +1 -1
- package/dist/app/server/assets/{login-BR3Vh4Jw.js → login-6K4ND-gN.js} +2 -2
- package/dist/app/server/assets/{login-BR3Vh4Jw.js.map → login-6K4ND-gN.js.map} +1 -1
- package/dist/app/server/assets/{login-DtRzF4FQ.js → login-CGq85v-9.js} +2 -2
- package/dist/app/server/assets/{login-DtRzF4FQ.js.map → login-CGq85v-9.js.map} +1 -1
- package/dist/app/server/assets/{matchContext-Cuq8aYzA.js → matchContext-BHbopc_c.js} +2 -2
- package/dist/app/server/assets/{matchContext-Cuq8aYzA.js.map → matchContext-BHbopc_c.js.map} +1 -1
- package/dist/app/server/assets/{mutation-BseSOMT8.js → mutation-D0MCZKRo.js} +2 -2
- package/dist/app/server/assets/{mutation-BseSOMT8.js.map → mutation-D0MCZKRo.js.map} +1 -1
- package/dist/app/server/assets/pathUSD-BMh6ajrW.css +1 -0
- package/dist/app/server/assets/pathUSD-DqRWfB70.js +2 -0
- package/dist/app/server/assets/pathUSD-DqRWfB70.js.map +1 -0
- package/dist/app/server/assets/{query-lzX3sTGO.js → query-BfAOtP6H.js} +2 -2
- package/dist/app/server/assets/{query-lzX3sTGO.js.map → query-BfAOtP6H.js.map} +1 -1
- package/dist/app/server/assets/react-dom-BbDIEd_j.css +1 -0
- package/dist/app/server/assets/{react-dom-DtwtyQPy.js → react-dom-pSpaua7D.js} +1 -1
- package/dist/app/server/assets/{react-dom-DtwtyQPy.js.map → react-dom-pSpaua7D.js.map} +1 -1
- package/dist/app/server/assets/{removable-HVB1MGzn.js → removable-BIS_RRBc.js} +2 -2
- package/dist/app/server/assets/{removable-HVB1MGzn.js.map → removable-BIS_RRBc.js.map} +1 -1
- package/dist/app/server/assets/{resolveError-DSqzEjUE.js → resolveError-DPXmbkOB.js} +2 -2
- package/dist/app/server/assets/{resolveError-DSqzEjUE.js.map → resolveError-DPXmbkOB.js.map} +1 -1
- package/dist/app/server/assets/{router-uhTdTHZE.js → router-nrTsbXpb.js} +2 -2
- package/dist/app/server/assets/router-nrTsbXpb.js.map +1 -0
- package/dist/app/server/assets/routes-BgiIzrOt.css +1 -0
- package/dist/app/server/assets/{routes-CeDOMpI-.js → routes-ClVSwEtU.js} +2 -2
- package/dist/app/server/assets/{routes-CeDOMpI-.js.map → routes-ClVSwEtU.js.map} +1 -1
- package/dist/app/server/assets/routes-DM3C9lXZ.js +2 -0
- package/dist/app/server/assets/routes-DM3C9lXZ.js.map +1 -0
- package/dist/app/server/assets/{schemas-fV27l6kI.js → schemas-CFw4XgfH.js} +2 -2
- package/dist/app/server/assets/{schemas-fV27l6kI.js.map → schemas-CFw4XgfH.js.map} +1 -1
- package/dist/app/server/assets/{secp256k1-5tp4GQIt.js → secp256k1-BmATpikU.js} +2 -2
- package/dist/app/server/assets/{secp256k1-5tp4GQIt.js.map → secp256k1-BmATpikU.js.map} +1 -1
- package/dist/app/server/assets/{sury-CWZTCd75-BPXRo6iz.js → sury-CWZTCd75-B2_9nmQ-.js} +2 -2
- package/dist/app/server/assets/{sury-CWZTCd75-BPXRo6iz.js.map → sury-CWZTCd75-B2_9nmQ-.js.map} +1 -1
- package/dist/app/server/assets/{suspense-CVCU9Kbi.js → suspense-gv0MCXZ8.js} +2 -2
- package/dist/app/server/assets/{suspense-CVCU9Kbi.js.map → suspense-gv0MCXZ8.js.map} +1 -1
- package/dist/app/server/assets/{useNavigate-D9psnozp.js → useNavigate-gn6-bYOz.js} +2 -2
- package/dist/app/server/assets/{useNavigate-D9psnozp.js.map → useNavigate-gn6-bYOz.js.map} +1 -1
- package/dist/app/server/assets/useRegisterFieldControl-DMeVvRtG.js +2 -0
- package/dist/app/server/assets/{useRegisterFieldControl-UOdCWAKS.js.map → useRegisterFieldControl-DMeVvRtG.js.map} +1 -1
- package/dist/app/server/assets/{utils-Dst7Jy9U.js → utils-CJnLBS6t.js} +2 -2
- package/dist/app/server/assets/{utils-Dst7Jy9U.js.map → utils-CJnLBS6t.js.map} +1 -1
- package/dist/app/server/assets/{valibot--1zFm7rT-LDsJca69.js → valibot--1zFm7rT-DAm9l6Yd.js} +2 -2
- package/dist/app/server/assets/{valibot--1zFm7rT-LDsJca69.js.map → valibot--1zFm7rT-DAm9l6Yd.js.map} +1 -1
- package/dist/app/server/assets/{valibot-D_HTw1Gn-DY-tIZ72.js → valibot-D_HTw1Gn-B_uu9X0a.js} +2 -2
- package/dist/app/server/assets/{valibot-D_HTw1Gn-DY-tIZ72.js.map → valibot-D_HTw1Gn-B_uu9X0a.js.map} +1 -1
- package/dist/app/server/assets/{zod-Bwrt9trS-Cf4c1iF8.js → zod-Bwrt9trS-DDq3sdx6.js} +2 -2
- package/dist/app/server/assets/{zod-Bwrt9trS-Cf4c1iF8.js.map → zod-Bwrt9trS-DDq3sdx6.js.map} +1 -1
- package/dist/app/server/assets/{zod-DSgpEGAE-IkLVlUaZ.js → zod-DSgpEGAE-Dzlub58Z.js} +2 -2
- package/dist/app/server/assets/{zod-DSgpEGAE-IkLVlUaZ.js.map → zod-DSgpEGAE-Dzlub58Z.js.map} +1 -1
- package/dist/app/server/assets/zyzz-6R2K52xP.css +1 -0
- package/dist/app/server/assets/{zyzz.config-DYq-16_0.js → zyzz.config-CW977vYL.js} +3 -3
- package/dist/app/server/assets/zyzz.config-CW977vYL.js.map +1 -0
- package/dist/app/server/index.js +3 -3
- package/package.json +1 -1
- package/dist/app/client/assets/Account-DiXbQ7gq.css +0 -1
- package/dist/app/client/assets/Account-JXT-dSA8.js +0 -1
- package/dist/app/client/assets/Amount-C5uw89Ge.js +0 -1
- package/dist/app/client/assets/Amount-Ck6sPRDT.css +0 -1
- package/dist/app/client/assets/Callout-DE0CvxbE.css +0 -1
- package/dist/app/client/assets/Callout-D_dLrptL.js +0 -1
- package/dist/app/client/assets/CodeInput-CXbj-o_B.js +0 -1
- package/dist/app/client/assets/CodeInput-C_clyqA2.css +0 -1
- package/dist/app/client/assets/Deposit-CAkrtNYZ.css +0 -1
- package/dist/app/client/assets/Deposit-Cv7IQBO0.js +0 -1
- package/dist/app/client/assets/DevTools-CnWAfvO2.js +0 -1
- package/dist/app/client/assets/DevTools-DLG9O0YT.css +0 -1
- package/dist/app/client/assets/Grant-B6bmC4rh.css +0 -1
- package/dist/app/client/assets/Hex-BR5nHbFT.js +0 -10
- package/dist/app/client/assets/Hex-CriDfcNg.css +0 -1
- package/dist/app/client/assets/IconChip-BVqRSUpG.css +0 -1
- package/dist/app/client/assets/IconChip-ClKbN-8M.js +0 -1
- package/dist/app/client/assets/InputGroup-4QFqa-T2.css +0 -1
- package/dist/app/client/assets/InputGroup-CEI6gBId.js +0 -1
- package/dist/app/client/assets/Inter-Variable-DiVDrmQJ.woff2 +0 -0
- package/dist/app/client/assets/Loader-CtzJeMeX.js +0 -1
- package/dist/app/client/assets/Rows-DgpXomcK.js +0 -1
- package/dist/app/client/assets/Rows-oSTffNii.css +0 -1
- package/dist/app/client/assets/SignIn-CjGB1wk9.js +0 -1
- package/dist/app/client/assets/SignIn-Dz1G9XNf.css +0 -1
- package/dist/app/client/assets/Stack-90EFgtQe.js +0 -1
- package/dist/app/client/assets/Stack-CKvHhjzW.css +0 -1
- package/dist/app/client/assets/ToolbarRootContext-dnisUzmP.js +0 -1
- package/dist/app/client/assets/Tooltip-9TI_rDvs.css +0 -1
- package/dist/app/client/assets/Tooltip-C3H_9mgz.js +0 -1
- package/dist/app/client/assets/___-7yUISk6H.css +0 -1
- package/dist/app/client/assets/___.flows-DwoJPGMf.js +0 -5
- package/dist/app/client/assets/index-BXTO-7dr.css +0 -1
- package/dist/app/client/assets/index-CkKM7xlX.js +0 -13
- package/dist/app/client/assets/pathUSD-DY3ycgMd.js +0 -1
- package/dist/app/client/assets/pathUSD-Dn2NadYx.css +0 -1
- package/dist/app/client/assets/useNavigate-DsbQ8bTr.js +0 -1
- package/dist/app/client/assets/zyzz-MTPfhrAv.css +0 -1
- package/dist/app/client/assets/zyzz.config-ENEfJGzk.js +0 -2
- package/dist/app/server/assets/Account-BqjoGTzm.js +0 -2
- package/dist/app/server/assets/Account-BqjoGTzm.js.map +0 -1
- package/dist/app/server/assets/Account-DiXbQ7gq.css +0 -1
- package/dist/app/server/assets/Amount-Ck6sPRDT.css +0 -1
- package/dist/app/server/assets/Amount-CmypanEu.js +0 -2
- package/dist/app/server/assets/Amount-CmypanEu.js.map +0 -1
- package/dist/app/server/assets/Callout-DE0CvxbE.css +0 -1
- package/dist/app/server/assets/Callout-_eafmkya.js +0 -2
- package/dist/app/server/assets/Callout-_eafmkya.js.map +0 -1
- package/dist/app/server/assets/CodeInput-CRxIP0KX.js +0 -2
- package/dist/app/server/assets/CodeInput-CRxIP0KX.js.map +0 -1
- package/dist/app/server/assets/CodeInput-C_clyqA2.css +0 -1
- package/dist/app/server/assets/Deposit-CAkrtNYZ.css +0 -1
- package/dist/app/server/assets/Deposit-CiWidviP.js +0 -2
- package/dist/app/server/assets/Deposit-CiWidviP.js.map +0 -1
- package/dist/app/server/assets/DevTools-BJcNvNjx.js +0 -2
- package/dist/app/server/assets/DevTools-BJcNvNjx.js.map +0 -1
- package/dist/app/server/assets/DevTools-DLG9O0YT.css +0 -1
- package/dist/app/server/assets/Grant-B6bmC4rh.css +0 -1
- package/dist/app/server/assets/Grant-N8RQy7lZ.js +0 -2
- package/dist/app/server/assets/Grant-N8RQy7lZ.js.map +0 -1
- package/dist/app/server/assets/Hex-CriDfcNg.css +0 -1
- package/dist/app/server/assets/Hex-vNjxlXvk.js +0 -11
- package/dist/app/server/assets/Hex-vNjxlXvk.js.map +0 -1
- package/dist/app/server/assets/IconChip-BQdjH8i6.js +0 -2
- package/dist/app/server/assets/IconChip-BQdjH8i6.js.map +0 -1
- package/dist/app/server/assets/IconChip-BVqRSUpG.css +0 -1
- package/dist/app/server/assets/InputGroup-4QFqa-T2.css +0 -1
- package/dist/app/server/assets/InputGroup-BhUIBTgI.js +0 -2
- package/dist/app/server/assets/InputGroup-BhUIBTgI.js.map +0 -1
- package/dist/app/server/assets/Inter-Variable-DiVDrmQJ.woff2 +0 -0
- package/dist/app/server/assets/Loader-Ivf5dWFl.js +0 -2
- package/dist/app/server/assets/PopoverPopup-D98JOZVe.js +0 -2
- package/dist/app/server/assets/Rows-BuyZXkPa.js +0 -2
- package/dist/app/server/assets/Rows-BuyZXkPa.js.map +0 -1
- package/dist/app/server/assets/Rows-oSTffNii.css +0 -1
- package/dist/app/server/assets/SignIn-D7jl6zbw.js +0 -2
- package/dist/app/server/assets/SignIn-D7jl6zbw.js.map +0 -1
- package/dist/app/server/assets/SignIn-Dz1G9XNf.css +0 -1
- package/dist/app/server/assets/Stack-C3ecM7vx.js +0 -2
- package/dist/app/server/assets/Stack-C3ecM7vx.js.map +0 -1
- package/dist/app/server/assets/Stack-CKvHhjzW.css +0 -1
- package/dist/app/server/assets/ToolbarRootContext-BCmWBQ7n.js +0 -2
- package/dist/app/server/assets/Tooltip-9TI_rDvs.css +0 -1
- package/dist/app/server/assets/Tooltip-D3NLigmC.js +0 -2
- package/dist/app/server/assets/Tooltip-D3NLigmC.js.map +0 -1
- package/dist/app/server/assets/___-7yUISk6H.css +0 -1
- package/dist/app/server/assets/___.flows-DRvHKxBR.js +0 -6
- package/dist/app/server/assets/___.flows-DRvHKxBR.js.map +0 -1
- package/dist/app/server/assets/_tanstack-start-manifest_v-BIobT_5u.js +0 -1
- package/dist/app/server/assets/default-u_dwuiYb-BZX-cEte.js +0 -2
- package/dist/app/server/assets/dist-k0uWU-Rh.js +0 -1
- package/dist/app/server/assets/getPseudoElementBounds-BdqJhx6M.js +0 -2
- package/dist/app/server/assets/pathUSD-CVs71wGH.js +0 -2
- package/dist/app/server/assets/pathUSD-CVs71wGH.js.map +0 -1
- package/dist/app/server/assets/pathUSD-Dn2NadYx.css +0 -1
- package/dist/app/server/assets/react-dom-bupMaze0.css +0 -1
- package/dist/app/server/assets/router-uhTdTHZE.js.map +0 -1
- package/dist/app/server/assets/routes-ZveUsG66.js +0 -2
- package/dist/app/server/assets/routes-ZveUsG66.js.map +0 -1
- package/dist/app/server/assets/routes-dxKeFXjL.css +0 -1
- package/dist/app/server/assets/useRegisterFieldControl-UOdCWAKS.js +0 -2
- package/dist/app/server/assets/zyzz-DuvTIyXM.css +0 -1
- package/dist/app/server/assets/zyzz.config-DYq-16_0.js.map +0 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import{A as e,C as t,D as n,E as r,F as i,I as a,L as o,N as s,P as c,S as l,_ as u,b as d,c as f,d as p,f as m,g as h,h as g,i as _,j as v,k as y,l as b,m as x,n as S,o as ee,p as te,r as C,t as ne,u as re,v as ie,w,x as ae,y as T,z as E}from"./Bytes-YtuDjUWf.js";import{t as oe}from"./secp256k1-
|
|
1
|
+
import{A as e,C as t,D as n,E as r,F as i,I as a,L as o,N as s,P as c,S as l,_ as u,b as d,c as f,d as p,f as m,g as h,h as g,i as _,j as v,k as y,l as b,m as x,n as S,o as ee,p as te,r as C,t as ne,u as re,v as ie,w,x as ae,y as T,z as E}from"./Bytes-YtuDjUWf.js";import{t as oe}from"./secp256k1-BmATpikU.js";import{A as se,B as ce,D as le,F as ue,H as de,I as fe,K as pe,L as me,M as he,N as ge,O as _e,R as ve,T as ye,U as be,V as xe,W as D,j as Se,k as Ce,o as we,q as Te,s as Ee,v as De}from"./Authentication-BJgy8lyC.js";import{$ as Oe,$t as ke,At as Ae,Bt as je,C as Me,D as Ne,Dt as O,E as Pe,Et as Fe,F as Ie,Ft as k,G as Le,Gt as Re,H as ze,Ht as Be,I as Ve,J as He,Jt as Ue,K as We,L as Ge,Lt as A,Mt as j,Nt as Ke,O as qe,Ot as Je,P as Ye,Pt as Xe,Rt as Ze,S as Qe,St as $e,T as et,Tt as tt,U as nt,Ut as rt,V as it,Vt as at,W as ot,Wt as st,Yt as ct,_ as lt,_t as ut,an as M,b as dt,bt as ft,c as pt,ct as mt,dt as N,en as ht,et as gt,g as _t,gt as vt,h as yt,ht as bt,in as xt,it as St,j as Ct,jt as P,kt as wt,mt as Tt,nt as Et,o as Dt,on as Ot,ot as kt,q as At,rn as F,s as jt,st as Mt,t as Nt,tn as Pt,tt as Ft,ut as It,v as Lt,vt as Rt,w as zt,wt as Bt,xt as Vt,y as Ht,yt as Ut,zt as Wt}from"./call-BaWxWyrp.js";var Gt=`1.3.0`,I=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Gt}`].join(`
|
|
2
2
|
`);super(a),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiTypeError`}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function Kt(e,t){return e.exec(t)?.groups}var qt=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Jt=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Yt=/^\(.+?\).*?$/,Xt=/^tuple(?<array>(\[(\d*)\])*)$/;function Zt(e){let t=e.type;if(Xt.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Zt(i),r<n-1&&(t+=`, `)}let r=Kt(Xt,e.type);return t+=`)${r?.array||``}`,Zt({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Qt(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Zt(i),r!==n-1&&(t+=`, `)}return t}function $t(e){return e.type===`function`?`function ${e.name}(${Qt(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Qt(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Qt(e.inputs)})`:e.type===`error`?`error ${e.name}(${Qt(e.inputs)})`:e.type===`constructor`?`constructor(${Qt(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var en=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;function tn(e){return en.test(e)}function nn(e){return Kt(en,e)}var rn=new Set([`memory`,`indexed`,`storage`,`calldata`]),an=new Set([`calldata`,`memory`,`storage`]),on=class extends I{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`UnknownTypeError`})}},sn=class extends I{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type "${e}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},cn=class extends I{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},ln=class extends I{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},un=class extends I{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`"${t}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SolidityProtectedKeywordError`})}},dn=class extends I{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:``}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},fn=class extends I{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier "${n}" not allowed${t?` in "${t}" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but "${n}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},pn=class extends I{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},mn=class extends I{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},hn=class extends I{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},gn=class extends I{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct "${e}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},_n=class extends I{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`"${e.trim()}" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth "${t}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function vn(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var yn=new Map([[`address`,{type:`address`}],[`bool`,{type:`bool`}],[`bytes`,{type:`bytes`}],[`bytes32`,{type:`bytes32`}],[`int`,{type:`int256`}],[`int256`,{type:`int256`}],[`string`,{type:`string`}],[`uint`,{type:`uint256`}],[`uint8`,{type:`uint8`}],[`uint16`,{type:`uint16`}],[`uint24`,{type:`uint24`}],[`uint32`,{type:`uint32`}],[`uint64`,{type:`uint64`}],[`uint96`,{type:`uint96`}],[`uint112`,{type:`uint112`}],[`uint160`,{type:`uint160`}],[`uint192`,{type:`uint192`}],[`uint256`,{type:`uint256`}],[`address owner`,{type:`address`,name:`owner`}],[`address to`,{type:`address`,name:`to`}],[`bool approved`,{type:`bool`,name:`approved`}],[`bytes _data`,{type:`bytes`,name:`_data`}],[`bytes data`,{type:`bytes`,name:`data`}],[`bytes signature`,{type:`bytes`,name:`signature`}],[`bytes32 hash`,{type:`bytes32`,name:`hash`}],[`bytes32 r`,{type:`bytes32`,name:`r`}],[`bytes32 root`,{type:`bytes32`,name:`root`}],[`bytes32 s`,{type:`bytes32`,name:`s`}],[`string name`,{type:`string`,name:`name`}],[`string symbol`,{type:`string`,name:`symbol`}],[`string tokenURI`,{type:`string`,name:`tokenURI`}],[`uint tokenId`,{type:`uint256`,name:`tokenId`}],[`uint8 v`,{type:`uint8`,name:`v`}],[`uint256 balance`,{type:`uint256`,name:`balance`}],[`uint256 tokenId`,{type:`uint256`,name:`tokenId`}],[`uint256 value`,{type:`uint256`,name:`value`}],[`event:address indexed from`,{type:`address`,name:`from`,indexed:!0}],[`event:address indexed to`,{type:`address`,name:`to`,indexed:!0}],[`event:uint indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}],[`event:uint256 indexed tokenId`,{type:`uint256`,name:`tokenId`,indexed:!0}]]),bn=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\spayable)?)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,xn=/^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Sn=/^u?int$/;function Cn(e,t){let n=vn(e,t?.type,t?.structs);if(yn.has(n))return yn.get(n);let r=Yt.test(e),i=Kt(r?xn:bn,e);if(!i)throw new ln({param:e});if(i.name&&Dn(i.name))throw new un({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=wn(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Cn(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Sn.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Tn(c))throw new sn({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new dn({param:e,type:t?.type,modifier:i.modifier});if(an.has(i.modifier)&&!On(c,!!i.array))throw new fn({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return yn.set(n,u),u}function wn(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?wn(o,[...t,n.trim()]):wn(o,t,`${n}${i}`,r);case`(`:return wn(o,t,`${n}${i}`,r+1);case`)`:return wn(o,t,`${n}${i}`,r-1);default:return wn(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new _n({current:n,depth:r});return t.push(n.trim()),t}function Tn(e){return e===`address`||e===`bool`||e===`function`||e===`string`||qt.test(e)||Jt.test(e)}var En=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Dn(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||qt.test(e)||Jt.test(e)||En.test(e)}function On(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function kn(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!tn(n))continue;let i=nn(n);if(!i)throw new mn({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=Cn(t,{type:`struct`});o.push(n)}if(!o.length)throw new hn({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=jn(a,t)}return r}var An=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;function jn(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Yt.test(i.type))r.push(i);else{let e=Kt(An,i.type);if(!e?.type)throw new pn({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new gn({type:o});r.push({...i,type:`tuple${a??``}`,components:jn(t[o],t,new Set([...n,o]))})}else if(Tn(o))r.push(i);else throw new on({type:o})}}return r}function Mn(e){let t=[];if(typeof e==`string`){let n=wn(e),r=n.length;for(let e=0;e<r;e++)t.push(Cn(n[e],{modifiers:rn}))}else{let n=kn(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(tn(r))continue;let a=wn(r),o=a.length;for(let e=0;e<o;e++)t.push(Cn(a[e],{modifiers:rn,structs:n}))}}if(t.length===0)throw new cn({params:e});return t}var Nn={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum,Pn=/^0x[a-fA-F0-9]{40}$/;function L(e,t={}){let{strict:n=!0}=t;if(!Pn.test(e))throw new Ln({address:e,cause:new Rn});if(n){if(e.toLowerCase()===e)return;if(Fn(e)!==e)throw new Ln({address:e,cause:new zn})}}function Fn(e){if(Nn.has(e))return Nn.get(e);L(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=D(_(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Nn.set(e,i),i}function In(e,t={}){let{checksum:n=!1}=t;return L(e),n?Fn(e):e}function R(e,t={}){return In(`0x${D(`0x${be(e).slice(4)}`).substring(26)}`,t)}function z(e,t){return L(e,{strict:!1}),L(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function B(e,t={}){let{strict:n=!0}=t??{};try{return L(e,{strict:n}),!0}catch{return!1}}var Ln=class extends E{constructor({address:e,cause:t}){super(`Address "${e}" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},Rn=class extends E{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},zn=class extends E{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};function Bn(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}}else s===` `?e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1):(i+=s,n+=s)}}if(!a)throw new E(`Unable to normalize signature.`);return i}function Vn(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return B(e,{strict:!1});case`bool`:return n===`boolean`;case`function`:return n===`string`;case`string`:return n===`string`;default:return r===`tuple`&&`components`in t?Object.values(t.components).every((t,n)=>Vn(Object.values(e)[n],t)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n===`number`||n===`bigint`:/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n===`string`||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(e)&&e.every(e=>Vn(e,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,``)})):!1}}function Hn(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Hn(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&B(n[r],{strict:!1}))return o}}function Un(t,n,r){let{args:i=[],prepare:o=!0}=r??{},s=a(n,{strict:!1}),c=t.filter(t=>s?t.type===`function`||t.type===`error`?Wn(t)===e(n,0,4):t.type===`event`&&Kn(t)===n:`name`in t&&t.name===n);if(c.length===0)throw new Jn({name:n});if(c.length===1)return{...c[0],...o?{hash:Kn(c[0])}:{}};let l;for(let e of c)if(`inputs`in e){if(!i||i.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...o?{hash:Kn(e)}:{}}}else if(e.inputs&&e.inputs.length!==0&&e.inputs.length===i.length&&i.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Vn(t,r):!1})){if(l&&`inputs`in l&&l.inputs){let t=Hn(e.inputs,l.inputs,i);if(t)throw new qn({abiItem:e,type:t[0]},{abiItem:l,type:t[1]})}l=e}}let u=(()=>{if(l)return l;let[e,...t]=c;return{...e,overloads:t}})();if(!u)throw new Jn({name:n});return{...u,...o?{hash:Kn(u)}:{}}}function Wn(...t){let n=(()=>{if(Array.isArray(t[0])){let[e,n]=t;return Un(e,n)}return t[0]})();return e(Kn(n),0,4)}function Gn(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return Un(t,n)}return e[0]})();return Bn(typeof t==`string`?t:$t(t))}function Kn(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return Un(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:D(w(Gn(t)))}var qn=class extends E{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\`${e.type}\` in \`${Bn($t(e.abiItem))}\`, and`,`\`${t.type}\` in \`${Bn($t(t.abiItem))}\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.AmbiguityError`})}},Jn=class extends E{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name "${e}"`:t?` with data "${t}"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};function Yn(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=hr(t.type);if(a){let[n,o]=a;return $n(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return rr(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return Qn(e,{checksum:r});if(t.type===`bool`)return er(e);if(t.type.startsWith(`bytes`))return tr(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return nr(e,t);if(t.type===`string`)return ir(e,{staticPosition:i});throw new Or(t.type)}var Xn=32,Zn=32;function Qn(e,t={}){let{checksum:n=!1}=t,r=e.readBytes(32);return[(e=>n?Fn(e):e)(l(b(r,-20))),32]}function $n(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(i===null){let n=a+m(e.readBytes(Zn)),i=n+Xn;e.setPosition(n);let o=m(e.readBytes(Xn)),s=gr(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=Yn(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a),o===0&&(e.assertReadLimit(),e._touch())}return e.setPosition(a+32),[l,32]}if(gr(t)){let n=a+m(e.readBytes(Zn)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=Yn(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=Yn(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n),i===0&&(e.assertReadLimit(),e._touch())}return[s,o]}function er(e){return[p(e.readBytes(32),{size:32}),32]}function tr(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=m(e.readBytes(32));e.setPosition(n+t);let r=m(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[l(i),32]}return[l(e.readBytes(Number.parseInt(i,10),32)),32]}function nr(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?re(i,{signed:n}):m(i,{signed:n}),32]}function rr(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(gr(t)){let n=i+m(e.readBytes(Zn));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=Yn(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=Yn(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function ir(e,{staticPosition:t}){let n=t+m(e.readBytes(32));e.setPosition(n);let r=m(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=e.readBytes(r,32),a=te(x(i));return e.setPosition(t+32),[a,32]}function ar({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(or({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function or({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=hr(r.type);if(i){let[t,a]=i;return lr(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return mr(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return cr(n,{checksum:e});if(r.type===`bool`)return dr(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=ve.exec(r.type)??[];return fr(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ur(n,{type:r.type});if(r.type===`string`)return pr(n);throw new Or(r.type)}function sr(e){let n=0;for(let t=0;t<e.length;t++){let{dynamic:r,encoded:i}=e[t];n+=r?32:y(i)}let r=[],i=[],a=0;for(let o=0;o<e.length;o++){let{dynamic:s,encoded:c}=e[o];s?(r.push(t(n+a,{size:32})),i.push(c),a+=y(c)):r.push(c)}return T(...r,...i)}function cr(e,t){let{checksum:n=!1}=t;return L(e,{strict:n}),{dynamic:!1,encoded:r(e.toLowerCase())}}function lr(e,n){let{checksumAddress:r,length:i,parameter:a}=n,o=i===null;if(!Array.isArray(e))throw new Dr(e);if(!o&&e.length!==i)throw new wr({expectedLength:i,givenLength:e.length,type:`${a.type}[${i}]`});let s=e.length===0&&gr(a),c=[];for(let t=0;t<e.length;t++){let n=or({checksumAddress:r,parameter:a,value:e[t]});n.dynamic&&(s=!0),c.push(n)}if(o||s){let e=sr(c);if(o){let n=t(c.length,{size:32});return{dynamic:!0,encoded:c.length>0?T(n,e):n}}if(s)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:T(...c.map(({encoded:e})=>e))}}function ur(e,{type:i}){let[,a]=i.split(`bytes`),o=y(e);if(!a){let i=e;return o%32!=0&&(i=n(i,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:T(r(t(o,{size:32})),i)}}if(o!==Number.parseInt(a,10))throw new Tr({expectedSize:Number.parseInt(a,10),value:e});return{dynamic:!1,encoded:n(e)}}function dr(e){if(typeof e!=`boolean`)throw new E(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:r(ae(e))}}function fr(e,{signed:n,size:r}){if(typeof r==`number`){let t=2n**(BigInt(r)-(n?1n:0n))-1n,i=n?-t-1n:0n;if(e>t||e<i)throw new h({max:t.toString(),min:i.toString(),signed:n,size:r/8,value:e.toString()})}return{dynamic:!1,encoded:t(e,{size:32,signed:n})}}function pr(r){let i=w(r),a=Math.ceil(y(i)/32),o=[];for(let t=0;t<a;t++)o.push(n(e(i,t*32,(t+1)*32)));return{dynamic:!0,encoded:T(n(t(y(i),{size:32})),...o)}}function mr(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=or({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?sr(a):T(...a.map(({encoded:e})=>e))}}function hr(e){let t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function gr(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(gr);let n=hr(e.type);return!!(n&&gr({...e,type:n[1]}))}function _r(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?C(t):t,o=ue(a);if(f(a)===0&&e.length>0)throw new Cr;if(f(a)&&f(a)<32)throw new Sr({data:typeof t==`string`?t:l(t),parameters:e,size:f(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];s<a.length&&o.setPosition(s);let[l,u]=Yn(o,n,{checksumAddress:i,staticPosition:0});s+=u,r===`Array`?c.push(l):c[n.name??t]=l}return c}function vr(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Er({expectedLength:e.length,givenLength:t.length});let i=sr(ar({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function yr(e,t){if(e.length!==t.length)throw new Er({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(yr.encode(i,a))}return T(...n)}(function(e){function i(e,a,o=!1){if(e===`address`){let e=a;return L(e),r(e.toLowerCase(),o?32:0)}if(e===`string`)return w(a);if(e===`bytes`)return a;if(e===`bool`)return r(ae(a),o?32:1);let s=e.match(ve);if(s){let[e,n,r=`256`]=s,i=Number.parseInt(r,10)/8;return t(a,{size:o?32:i,signed:n===`int`})}let c=e.match(me);if(c){let[e,t]=c;if(Number.parseInt(t,10)!==(a.length-2)/2)throw new Tr({expectedSize:Number.parseInt(t,10),value:a});return n(a,o?32:0)}let l=e.match(fe);if(l&&Array.isArray(a)){let[e,t]=l,n=[];for(let e=0;e<a.length;e++)n.push(i(t,a[e],!0));return n.length===0?`0x`:T(...n)}throw new Or(e)}e.encode=i})(yr||={});function br(e){return Qt(e)}function xr(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Mn(e):e}var Sr=class extends E{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Qt(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Cr=class extends E{constructor(){super(`Cannot decode zero data ("0x") with ABI parameters.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},wr=class extends E{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \`${n}\`. Expected: \`${e}\`. Given: \`${t}\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},Tr=class extends E{constructor({expectedSize:e,value:t}){super(`Size of bytes "${t}" (bytes${y(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Er=class extends E{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`
|
|
3
3
|
`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},Dr=class extends E{constructor(e){super(`Value \`${e}\` is not a valid array.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},Or=class extends E{constructor(e){super(`Type \`${e}\` is not a valid ABI Type.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function kr(e){let t=[];for(let n=0;n<e.length;n++){let[r,a]=e[n];r&&L(r,{strict:!1}),t.push({address:r,storageKeys:a.map(e=>pe(e)?e:i(e))})}return t}function Ar(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(y(r[e])!==32)throw new jr({storageKey:r[e]});n&&L(n,{strict:!1}),t.push([n,r])}return t}var jr=class extends E{constructor({storageKey:e}){super(`Size for storage key "${e}" is invalid. Expected 32 bytes. Got ${y(e)} bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};function Mr(e){return R(Nr(e))}function Nr(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n,o=new oe.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(d(t).substring(2));return ce(o)}function Pr(e){let{hash:t,payload:n}=e;return e.address?z(e.address,Mr({payload:n,signature:e.signature})):oe.verify(e.signature,S(n),de(e.publicKey),...t?[{prehash:!0,lowS:!0}]:[])}_(`ox.secp256k1.fromSeed.v1`);function Fr(e){return Ir(e,`Hex`)}function Ir(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`),r=(()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new u(e);return C(e)}return e})();return Lr(ue(r,{recursiveReadLimit:1/0}),n)}function Lr(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?l(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Rr(e,n,128),i=e.readBytes(r);return t===`Hex`?l(i):i}return zr(e,Rr(e,n,192),t)}function Rr(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new E(`Invalid RLP prefix`)}function zr(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Lr(e,n));return i}function Br(e,t){let{as:n}=t,r=Hr(e),i=ue(new Uint8Array(r.length));return r.encode(i),n===`Hex`?l(i.bytes):i.bytes}function Vr(e,t={}){let{as:n=`Hex`}=t;return Br(e,{as:n})}function Hr(e){return Array.isArray(e)?Ur(e.map(e=>Hr(e))):Wr(e)}function Ur(e){let t=e.reduce((e,t)=>e+t.length,0),n=Gr(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Wr(e){let t=typeof e==`string`?C(e):e,n=Gr(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Gr(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new E(`Length is too large.`)}function Kr(t){let n=C(In(t.from)),r=ee(g(t.salt)?t.salt:C(t.salt),32),i=`bytecodeHash`in t?g(t.bytecodeHash)?t.bytecodeHash:C(t.bytecodeHash):D(t.bytecode,{as:`Bytes`});return In(e(D(ne(C(`0xff`),n,r,i),{as:`Hex`}),12))}var qr={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Jr(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function Yr(e,t=`wei`){return Jr(e,qr.gwei-qr[t])}function Xr(e,t=0){if(!/^(-?)([0-9]*)\.?([0-9]*)$/.test(e))throw new Zr({value:e});let[n=``,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,`0`);return BigInt(`${i?`-`:``}${n}${r}`)}var Zr=class extends E{constructor({value:e}){super(`Value \`${e}\` is not a valid decimal number.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`Value.InvalidDecimalNumberError`})}},Qr=class extends E{constructor({feeCap:e}={}){super(`The fee cap (\`maxFeePerGas\`/\`maxPriorityFeePerGas\`${e?` = ${Yr(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},$r=class extends E{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID "${e}" is invalid.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},ei=class extends E{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type "${n}" was provided.`,{metaMessages:[`Serialized Transaction: "${t}"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},ti=class extends E{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${e?` = ${Yr(e)} gwei`:``}) cannot be higher than the fee cap (\`maxFeePerGas\`${t?` = ${Yr(t)} gwei`:``}).`].join(`
|
|
4
4
|
`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};async function ni(e){return we(e)}function ri(e){return Ee(e)}var ii=2049,ai=2n**64n-1n,oi=`0x${`00`.repeat(32)}`,si=`tempo:configurable-account:account`,ci=`tempo:configurable-account:config`,li=`0x583cc63a2e37f645b43eac911b1a6d6de08b83abdc308c61364edda8cfc3bd37`,ui=`tempo:configurable-account:signature`,di=`tempo:configurable-account:upgrade`;function fi(e){let{owners:t,salt:n,threshold:r,version:i=0n}=e;if(n!==void 0&&y(n)!==32)throw new H({reason:`salt must be 32 bytes`});if(Si(i),t.length===0)throw new H({reason:`owners cannot be empty`});if(t.length>48)throw new H({reason:`too many owners`});if(!Number.isInteger(Number(r)))throw new H({reason:`threshold must be an integer`});if(Number(r)<1)throw new H({reason:`threshold cannot be zero`});if(Number(r)>255)throw new H({reason:`threshold exceeds max threshold`});let a=0,o=[],s;for(let e of t){if(!B(e.owner)||v(e.owner)===0n)throw new H({reason:`owner cannot be zero`});if(!Number.isInteger(Number(e.weight)))throw new H({reason:`owner weight must be an integer`});if(Number(e.weight)<1)throw new H({reason:`owner weight cannot be zero`});let t=v(e.owner);if(s!==void 0&&s>=t)throw new H({reason:`owners must be strictly ascending`});s=t;let n=Number(e.weight);a+=n,o.push(n)}if(a>255)throw new H({reason:`total owner weight exceeds u8 max`});if(Number(r)>a)throw new H({reason:`threshold exceeds total owner weight`});let c=o.sort((e,t)=>t-e).slice(0,8).reduce((e,t)=>e+t,0);if(Number(r)>c)throw new H({reason:`threshold exceeds weight reachable by 8 owner signatures`})}function V(e){let t=e.version??0n;Si(t);let n={owners:[...e.owners].sort((e,t)=>v(e.owner)<v(t.owner)?-1:1),salt:e.salt?r(e.salt,32):oi,threshold:e.threshold,version:BigInt(t)};return fi(n),n}function pi(e){return V({...e,version:v(e.version)})}function mi(e){let[t,n,i,a]=e;if(e.length!==4||typeof t!=`string`||y(t)!==32||typeof n!=`string`||y(n)>8||n.startsWith(`0x00`)||typeof i!=`string`||y(i)>1||i.startsWith(`0x00`)||!Array.isArray(a)||a.some(e=>!Array.isArray(e)||e.length!==2||typeof e[0]!=`string`||!B(e[0])||typeof e[1]!=`string`||y(e[1])>1||e[1].startsWith(`0x00`)))throw new H({reason:`invalid config RLP tuple`});let o={salt:t&&t!==`0x`?r(t,32):oi,version:n===`0x`?0n:v(n),threshold:i===`0x`?0:s(i),owners:a.map(e=>{let[t,n]=e;return{owner:t,weight:!n||n===`0x`?0:s(n)}})};return fi(o),o}function hi(e,t){return L(e),V({owners:t.owners,salt:D(T(w(di),e)),threshold:t.threshold,version:1n})}function gi(e,n){if(L(n.factory),fi(e),BigInt(e.version??0)!==0n)throw new H({reason:`account address requires version zero`});let i=D(T(w(si),r(e.salt??oi,32),t(e.threshold,{size:1}),t(e.owners.length,{size:1}),...e.owners.flatMap(e=>[e.owner,t(e.weight,{size:1})]))),a=Kr({bytecodeHash:li,from:n.factory,salt:i});if(v(a)===0n)throw new H({reason:`derived account cannot be zero`});if(e.owners.some(e=>z(e.owner,a)))throw new H({reason:`derived account cannot be an owner`});return a}function _i(e){return fi(e),D(T(w(ci),r(e.salt??oi,32),t(e.version??0n,{size:8}),t(e.threshold,{size:1}),t(e.owners.length,{size:1}),...e.owners.flatMap(e=>[e.owner,t(e.weight,{size:1})])))}function vi(e){let{account:n,config:r,payload:i}=e;if(Si(r.version),L(n),y(d(i))!==32)throw new H({reason:`payload must be 32 bytes`});return D(T(w(ui),d(i),n,t(r.version??0n,{size:8})))}function yi(e){let n=V(e);return{owners:n.owners.map(e=>({owner:e.owner,weight:Number(e.weight)})),salt:n.salt,threshold:Number(n.threshold),version:t(n.version)}}function bi(e){fi(e);let n=e.owners.map(e=>[e.owner,t(e.weight)]),i=e.salt?r(e.salt,32):oi,a=BigInt(e.version??0);return[i,a===0n?`0x`:t(a),t(e.threshold),n]}function xi(e,t){let n=V(e);if(n.version===ai)throw new H({reason:`version overflow`});return V({owners:t.owners,salt:n.salt,threshold:t.threshold,version:n.version+1n})}var H=class extends E{constructor({reason:e}){super(`Invalid account config: ${e}.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`AccountConfig.InvalidConfigError`})}};function Si(e){if(typeof e!=`bigint`&&typeof e!=`number`||typeof e==`number`&&!Number.isSafeInteger(e)||BigInt(e)<0n||BigInt(e)>ai)throw new H({reason:`version must be an unsigned 64-bit integer`})}var Ci=`0x01`,wi=`0x02`,Ti=`0x03`,Ei=`0x04`,Di=`0x05`,Oi=`0x7777777777777777777777777777777777777777777777777777777777777777`;function ki(e){let t=Li(e);if(t===`secp256k1`)ye(e.signature);else if(t===`p256`){let t=e,n=[];if(typeof t.signature?.r!=`bigint`&&n.push(`signature.r`),typeof t.signature?.s!=`bigint`&&n.push(`signature.s`),typeof t.prehash!=`boolean`&&n.push(`prehash`),t.publicKey?(typeof t.publicKey.x!=`bigint`&&n.push(`publicKey.x`),typeof t.publicKey.y!=`bigint`&&n.push(`publicKey.y`)):n.push(`publicKey`),n.length>0)throw new Hi({envelope:e,missing:n,type:`p256`})}else if(t===`webAuthn`){let t=e,n=[];if(typeof t.signature?.r!=`bigint`&&n.push(`signature.r`),typeof t.signature?.s!=`bigint`&&n.push(`signature.s`),t.metadata?(t.metadata.authenticatorData||n.push(`metadata.authenticatorData`),t.metadata.clientDataJSON||n.push(`metadata.clientDataJSON`)):n.push(`metadata`),t.publicKey?(typeof t.publicKey.x!=`bigint`&&n.push(`publicKey.x`),typeof t.publicKey.y!=`bigint`&&n.push(`publicKey.y`)):n.push(`publicKey`),n.length>0)throw new Hi({envelope:e,missing:n,type:`webAuthn`})}else if(t===`keychain`){let t=e;Ai(t),ki(t.inner)}else t===`configurable`&&ji(e)}function Ai(e){if(e.version!==`v1`)return;let t=e.inner;for(;Li(t)===`keychain`;)t=t.inner;if(Li(t)===`configurable`)throw new Ui({reason:`configurable access keys require keychain V2`})}function ji(e){let t=[];if(e.account||t.push(`account`),e.config||t.push(`config`),Array.isArray(e.signatures)||t.push(`signatures`),t.length>0)throw new Hi({envelope:e,missing:t,type:`configurable`});if(!B(e.account))throw new Ui({reason:`configurable account is invalid`});if(v(e.account)===0n)throw new Ui({reason:`configurable account cannot be zero`});if(e.signatures.length===0)throw new Ui({reason:`configurable signatures cannot be empty`});if(e.signatures.length>8)throw new Ui({reason:`configurable signatures exceed 8`});if(fi(e.config),(e.config.version??0n)===0n&&e.config.owners.some(t=>z(t.owner,e.account)))throw new Ui({reason:`initial account cannot be an owner`});for(let t of e.signatures){let e=Li(t);if(e===`keychain`||e===`configurable`)throw new Ui({reason:`owner approvals must be primitive signatures`});if(ki(t),y(W(t))>2049)throw new Ui({reason:`configurable owner signature exceeds ${ii} bytes`})}}function Mi(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:Mi({...e,signature:t.inner}):t.type===`configurable`?t.account:R(Ni(e))}function Ni(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Nr({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Ni({payload:t,signature:n.inner});case`configurable`:throw new Vi({envelope:n})}}function Pi(e){return Fi(e)}function Fi(t){let n=t.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?e(t,0,-y(Oi)):t;if(y(n)===65){let e=_e(n);return ye(e),{signature:e,type:`secp256k1`}}let r=e(n,0,1),i=e(n,1),o=y(i);if(r===Ci){if(o!==129)throw new G({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${o} bytes`,serialized:n});return{publicKey:{prefix:4,x:v(e(i,64,96)),y:v(e(i,96,128))},prehash:s(e(i,128,129))!==0,signature:{r:v(e(i,0,32)),s:v(e(i,32,64))},type:`p256`}}if(r===wi){if(o<128)throw new G({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${o} bytes`,serialized:n});let t=o-128,r=e(i,0,t),a,s;for(let n=37;n<t;n++){let t=c(e(r,n));if(t.startsWith(`{`)&&t.endsWith(`}`))try{JSON.parse(t),a=e(r,0,n),s=t;break}catch{}}if(!a||!s)throw new G({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:n});return{publicKey:{prefix:4,x:v(e(i,t+64,t+96)),y:v(e(i,t+96,t+128))},metadata:{authenticatorData:a,clientDataJSON:s},signature:{r:v(e(i,t,t+32)),s:v(e(i,t+32,t+64))},type:`webAuthn`}}if(r===Ti||r===Ei){let t={userAddress:e(i,0,20),inner:Fi(e(i,20)),type:`keychain`,version:r===Ei?`v2`:`v1`};return ki(t),t}if(r===Di){let t=Fr(i);if(!Array.isArray(t)||t.length!==3)throw new G({reason:`invalid configurable wire shape: expected exactly three fields`,serialized:n});let[r,o,s]=t;if(typeof r!=`string`||!B(r))throw new G({reason:`invalid configurable account`,serialized:n});if(!Array.isArray(o))throw new G({reason:`invalid account config`,serialized:n});if(!Array.isArray(s)||s.length===0||s.length>8)throw new G({reason:`invalid configurable signatures list`,serialized:n});let c={type:`configurable`,account:r,config:mi(o),signatures:s.map(t=>{if(!a(t)||y(t)>2049)throw new G({reason:`invalid configurable owner signature`,serialized:n});if(y(t)!==65&&![`0x01`,`0x02`].includes(e(t,0,1)))throw new G({reason:`owner approvals must be primitive signatures`,serialized:n});return Pi(t)})};return ji(c),c}throw new G({reason:`Unknown signature type identifier: ${r}. Expected ${Ci} (P256), ${wi} (WebAuthn), ${Ti} (Keychain V1), ${Ei} (Keychain V2), or ${Di} (Configurable)`,serialized:n})}function U(e,t){if(typeof e==`string`)return Pi(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Li(e);if(n===`configurable`){let t=e;return{...t,config:V(t.config),signatures:t.signatures.map(e=>U(e)),type:n}}return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:R(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:R(Nr({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Ii(t){if(typeof t==`string`){let e=Pi(T(Di,t));if(e.type!==`configurable`)throw new Vi({envelope:t});return e}if(t.type===`secp256k1`)return{signature:Ce(t),type:`secp256k1`};if(t.type===`p256`)return{prehash:t.preHash,publicKey:{prefix:4,x:v(t.pubKeyX),y:v(t.pubKeyY)},signature:{r:v(t.r),s:v(t.s)},type:`p256`};if(t.type===`webAuthn`){let n=t.webauthnData,r=y(n),i,a;for(let t=37;t<r;t++){let r=c(e(n,t));if(r.startsWith(`{`)&&r.endsWith(`}`))try{JSON.parse(r),i=e(n,0,t),a=r;break}catch{}}if(!i||!a)throw new G({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:n});return{metadata:{authenticatorData:i,clientDataJSON:a},publicKey:{prefix:4,x:v(t.pubKeyX),y:v(t.pubKeyY)},signature:{r:v(t.r),s:v(t.s)},type:`webAuthn`}}if(t.type===`keychain`||`userAddress`in t&&`signature`in t){let e=t,n={type:`keychain`,userAddress:e.userAddress,inner:Ii(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};return ki(n),n}throw new Vi({envelope:t})}function Li(e){if(typeof e!=`object`||!e)throw new Vi({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;if(`account`in e&&`config`in e&&`signatures`in e)return`configurable`;throw new Vi({envelope:e})}function W(e,n={}){let r=Li(e);if(r===`secp256k1`)return T(Se(e.signature),n.magic?Oi:`0x`);if(r===`p256`){let r=e;return T(Ci,t(r.signature.r,{size:32}),t(r.signature.s,{size:32}),t(r.publicKey.x,{size:32}),t(r.publicKey.y,{size:32}),t(+!!r.prehash,{size:1}),n.magic?Oi:`0x`)}if(r===`webAuthn`){let r=e,i=T(r.metadata.authenticatorData,w(r.metadata.clientDataJSON));return T(wi,i,t(r.signature.r,{size:32}),t(r.signature.s,{size:32}),t(r.publicKey.x,{size:32}),t(r.publicKey.y,{size:32}),n.magic?Oi:`0x`)}if(r===`keychain`){let t=e;ki(t);let r=t.version===`v1`?Ti:Ei;return T(r,t.userAddress,W(t.inner),n.magic?Oi:`0x`)}if(r===`configurable`){let t=e;return ki(t),T(Di,Vr([t.account,bi(t.config),t.signatures.map(e=>W(e))]),n.magic?Oi:`0x`)}throw new Vi({envelope:e})}function Ri(e){let{signatures:t}=e,n=vi(e);return t.map(e=>({key:v(Mi({payload:n,signature:e})),signature:e})).sort((e,t)=>e.key<t.key?-1:+(e.key>t.key)).map(e=>e.signature)}function zi(n){let r=Li(n);if(r===`secp256k1`)return{...he(n.signature),type:`secp256k1`};if(r===`p256`){let e=n;return{preHash:e.prehash,pubKeyX:t(e.publicKey.x,{size:32}),pubKeyY:t(e.publicKey.y,{size:32}),r:t(e.signature.r,{size:32}),s:t(e.signature.s,{size:32}),type:`p256`}}if(r===`webAuthn`){let e=n,r=T(e.metadata.authenticatorData,w(e.metadata.clientDataJSON));return{pubKeyX:t(e.publicKey.x,{size:32}),pubKeyY:t(e.publicKey.y,{size:32}),r:t(e.signature.r,{size:32}),s:t(e.signature.s,{size:32}),type:`webAuthn`,webauthnData:r}}if(r===`keychain`){let e=n;return Ai(e),{type:`keychain`,userAddress:e.userAddress,signature:zi(e.inner),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}}}if(r===`configurable`)return e(W(n),1);throw new Vi({envelope:n})}function Bi(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return R(t.publicKey)})();if(!r)return!1;let i=U(e);if(i.type===`secp256k1`)return r?Pr({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return z(R(i.publicKey),r)?De({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return z(R(i.publicKey),r)?ri({challenge:d(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new Wi(`Unable to verify signature envelope of type "${i.type}".`)}var Vi=class extends E{constructor({envelope:e}){super(`Unable to coerce value (\`${o(e)}\`) to a valid signature envelope.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},Hi=class extends E{constructor({envelope:e,missing:t,type:n}){super(`Signature envelope of type "${n}" is missing required properties: ${t.map(e=>`\`${e}\``).join(`, `)}.\n\nProvided: ${o(e)}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.MissingPropertiesError`})}},G=class extends E{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},Ui=class extends E{constructor({reason:e}){super(`Invalid owner approval: ${e}.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidApprovalError`})}},Wi=class extends E{constructor(){super(...arguments),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};function K(e){return e.startsWith(`tempo`)?Gi(e).address:e}function Gi(e){if(!e.startsWith(`tempox`))throw new Ki({address:e});let t=e.slice(6);return ie(t,{strict:!0}),{address:Fn(t)}}var Ki=class extends E{constructor({address:e}){super(`Tempo address "${e}" has an invalid prefix. Expected "tempox".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};function qi(e,t={}){if(`keyId`in e)return Ji(e);let n=e;n.witness!==void 0&&ca(n.witness),n.signature&&la(n.signature);let r={...n,...n.account===void 0?{}:{account:K(n.account)},address:K(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:K(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:K(e.address),selector:sa(e.selector),...e.recipients?{recipients:e.recipients.map(e=>K(e))}:{}}))}:{}};if(t.signature){let e=U(t.signature);return la(e),{...r,signature:e}}return r}function Ji(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=e.witness??void 0,c=e.isAdmin??void 0,l=e.account??void 0,u=o===`configurableAccount`?`configurable`:o,d=Ii(e.signature);la(d),s!==void 0&&ca(s);let f=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:oa(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:v(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&aa(e.period)>0?{period:aa(e.period)}:{}})),...f?{scopes:f}:{},signature:d,...u===`configurable`?{account:l,type:u}:{type:u},...s===void 0?{}:{witness:s},...l===void 0?{}:{account:l},...c?{isAdmin:!0}:{}}}function Yi(e){let[t,n]=e,[r,i,a,...o]=t,s=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;case`0x03`:return`configurable`;default:throw Error(`Invalid key type: ${i}`)}})(),[c,l,u,d,f,p]=o,m=ua(c)?void 0:aa(c)||void 0,h=Array.isArray(l)?l.map(e=>{let[t,n,r]=e;return{token:t,limit:ia(n),...r===void 0?{}:{period:aa(r)}}}):void 0,g=Array.isArray(u)?u.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})}):void 0,_=ua(d)?void 0:d;_!==void 0&&ca(_);let y=(()=>{if(!ua(f)){if(f!==`0x01`)throw new fa(f);return!0}})(),b=ua(p)?void 0:p,x={address:a,chainId:r===`0x`?0n:v(r),...s===`configurable`?{account:b,type:s}:{type:s},...m===void 0?{}:{expiry:m},...h===void 0?{}:{limits:h},...g===void 0?{}:{scopes:g},..._===void 0?{}:{witness:_},...b===void 0?{}:{account:b},...y?{isAdmin:!0}:{}};if(n){let e=Pi(n);la(e),x.signature=e}return qi(x)}function Xi(e){return Qi(e)}function Zi(e){return Yi(Fr(e))}function Qi(e){let[t]=ta(e),n=Vr(t);return D(n)}function $i(e){return Vr(ta(e))}function ea(e){let{address:n,scopes:r,chainId:i,expiry:a,limits:o,type:s,signature:c,witness:l,isAdmin:u,account:d}=e;la(c),l!==void 0&&ca(l);let f=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:sa(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:i===0n?`0x`:t(i),expiry:typeof a==`number`?t(a):null,keyId:K(n),...s===`configurable`?{account:d,keyType:`configurableAccount`}:{keyType:s},limits:o?.map(({token:e,limit:n,period:r})=>({token:e,limit:t(n),...r?{period:ra(r)}:{}})),signature:zi(c),...f?{allowedCalls:f}:{},...l===void 0?{}:{witness:l},...u?{isAdmin:!0}:{},...d===void 0?{}:{account:d}}}function ta(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a,witness:o,isAdmin:s,account:c}=e;o!==void 0&&ca(o);let l=(()=>{if(e.signature)return la(e.signature),W(e.signature)})(),u=e.type,d=(()=>{switch(u){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;case`configurable`:return`0x03`;default:throw Error(`Invalid key type: ${u}`)}})(),f=a?.map(e=>{let t=[e.token,na(e.limit)];return e.period&&e.period>0&&t.push(ra(e.period)),t}),p=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([sa(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})(),m=[{value:i!=null&&i!==0?ra(i):void 0,placeholder:`0x`},{value:f,placeholder:`0x`},{value:p,placeholder:`0x`},{value:o,placeholder:`0x`},{value:s?`0x01`:void 0,placeholder:`0x`},{value:c,placeholder:`0x`}],h=-1;for(let e=m.length-1;e>=0;e--)if(m[e].value!==void 0){h=e;break}let g=m.slice(0,h+1).map(({value:e,placeholder:t})=>e??t);return[[na(n),d,t,...g],...l?[l]:[]]}function na(e){return e===0n?`0x`:t(e)}function ra(e){return e===0?`0x`:t(e)}function ia(e){return e===`0x`?0n:BigInt(e)}function aa(e){return e===`0x`?0:s(e)}function oa(e){return typeof e==`string`?e:Array.isArray(e)?l(new Uint8Array(e)):e}function sa(e){if(e)return e.startsWith(`0x`)?e:Wn(e)}function ca(e){if(y(e)!==32)throw new da(e)}function la(e){if(e.type===`keychain`)throw new pa(e.type)}function ua(e){return e===void 0||e===`0x`}var da=class extends Error{constructor(e){super(`Witness \`${e}\` must be exactly 32 bytes (got ${y(e)} bytes).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`KeyAuthorization.InvalidWitnessSizeError`})}},fa=class extends Error{constructor(e){super(`Admin marker \`${e}\` is invalid; expected \`0x01\` (TIP-1049).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`KeyAuthorization.InvalidAdminMarkerError`})}},pa=class extends Error{constructor(e){super(`Signature type \`${e}\` is invalid for key authorizations; expected \`secp256k1\`, \`p256\`, \`webAuthn\`, or \`configurable\`.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`KeyAuthorization.InvalidSignatureTypeError`})}};function ma(e,t={}){if(typeof e.chainId==`string`)return ha(e);let n={...e,address:K(e.address)};return t.signature?{...n,signature:t.signature}:n}function ha(e){let{address:t,chainId:n,nonce:r}=e,i=Ii(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function ga(e){return e.map(e=>ha(e))}function _a(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=Pi(i)),ma(a)}function va(e){let t=[];for(let n of e)t.push(_a(n));return t}function ya(e){let{address:n,chainId:r,nonce:i,signature:a}=e;return{address:n,chainId:t(r),nonce:t(i),signature:zi(a)}}function ba(e){return e.map(e=>ya(e))}function xa(e){let{address:n,chainId:r,nonce:i}=e,a=e.signature?W(e.signature):void 0;return[r?t(r):`0x`,n,i?t(i):`0x`,...a?[a]:[]]}function Sa(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(xa(n));return t}var Ca=`0x20c0`;function wa(t){let n=K(t);if(!n.toLowerCase().startsWith(Ca))throw Error(`invalid tip20 address.`);return v(e(n,6))}function Ta(e){if(typeof e==`string`){let t=K(e);return L(t),t}let n=t(e,{size:18});return T(Ca,n)}var Ea=`0x78`,Da=`0x76`,Oa=`tempo`;function ka(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new Ia;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new La({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&L(e.to,{strict:!1});if(n<=0)throw new $r({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Qr({feeCap:r});if(i&&r&&i>r)throw new ti({maxFeePerGas:r,maxPriorityFeePerGas:i})}function Aa(t){let n=Fr(e(t,1)),[r,i,o,s,c,l,u,d,f,p,m,h,g,_,v]=n,y=Array.isArray(_)?_:void 0,b=y?v:_;if(n.length!==13&&n.length!==14&&n.length!==15)throw new ei({attributes:{authorizationList:g,chainId:r,maxPriorityFeePerGas:i,maxFeePerGas:o,gas:s,calls:c,accessList:l,keyAuthorization:y,nonceKey:u,nonce:d,validBefore:f,validAfter:p,feeToken:m,feePayerSignatureOrSender:h,...n.length>12?{signature:b}:{}},serialized:t,type:Oa});let x={chainId:Number(r),type:Oa};a(s)&&s!==`0x`&&(x.gas=BigInt(s)),a(d)&&(x.nonce=d===`0x`?0n:BigInt(d)),a(o)&&o!==`0x`&&(x.maxFeePerGas=BigInt(o)),a(i)&&i!==`0x`&&(x.maxPriorityFeePerGas=BigInt(i)),a(u)&&(x.nonceKey=u===`0x`?0n:BigInt(u)),a(f)&&f!==`0x`&&(x.validBefore=Number(f)),a(p)&&p!==`0x`&&(x.validAfter=Number(p)),a(m)&&m!==`0x`&&(x.feeToken=m),c&&c!==`0x`&&(x.calls=c.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),l?.length!==0&&l!==`0x`&&(x.accessList=kr(l)),g?.length!==0&&g!==`0x`&&(x.authorizationList=va(g)),h!==`0x`&&h!==void 0&&(h===`0x00`||B(h)?(x.feePayerSignature=null,B(h)&&(x.from=h)):x.feePayerSignature=se(h)),y&&(x.keyAuthorization=Yi(y));let S=b?Pi(b):void 0;if(S&&(x={...x,signature:S}),!x.from&&S)try{x.from=Mi({payload:Na(ja(x)),signature:S,root:!0})}catch{}return ka(x),x}function ja(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?Aa(e):e;return i.from&&=K(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:K(e.to)}:{}})),ka(i),{...i,...r?{signature:U(r)}:{},...n?{feePayerSignature:le(n)}:{},type:`tempo`}}function q(e,n={}){let{accessList:r,authorizationList:i,calls:a,chainId:o,feeToken:s,gas:c,keyAuthorization:l,nonce:u,nonceKey:d,maxFeePerGas:f,maxPriorityFeePerGas:p,validBefore:m,validAfter:h}=e;ka(e);let g=Ar(r),_=n.signature||e.signature,v=Sa(i),y=a.map(e=>[e.to?K(e.to):`0x`,e.value?t(e.value):`0x`,e.data??`0x`]),b=!1,x=(()=>{if(n.sender)return n.sender;if(n.format===`feePayer`&&_){let t=U(_);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return R(t.publicKey);if(t.type===`secp256k1`)return Mr({payload:Na(ja(e)),signature:t.signature})}let t=n.feePayerSignature===void 0?e.feePayerSignature:n.feePayerSignature;return t===null?(b=!0,`0x00`):t?ge(t):`0x`})(),S=[t(o),p?t(p):`0x`,f?t(f):`0x`,c?t(c):`0x`,y,g,d?t(d):`0x`,u?t(u):`0x`,typeof m==`number`?t(m):`0x`,typeof h==`number`?t(h):`0x`,!b&&(typeof s==`bigint`||typeof s==`string`)?Ta(s):`0x`,x,v,...l?[ta(l)]:[],..._?[W(U(_))]:[]];return T(n.format===`feePayer`?Ea:Da,Vr(S))}function Ma(e){return q({...e,signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}})}function Na(e,t={}){let n=Pa(e,{presign:!0});return t.from?D(T(`0x04`,n,K(t.from))):n}function Pa(e,t={}){let n=t.presign?Ma(e):q(e);return D(n)}function Fa(e,t){let n=K(t.sender),r=q({...e,signature:void 0},{sender:n,format:`feePayer`});return D(r)}var Ia=class extends E{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},La=class extends E{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}},Ra=xr(`address, address, address, address, bytes32, address, bytes32, address, uint256`),za=xr(`bytes32, bytes32, bytes32, uint256, address`),Ba=xr(`bytes32, bytes32, uint96`),Va=D(w(`EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)`)),Ha=D(w(`TIP20 Channel Reserve`)),Ua=D(w(`1`)),Wa=`0x0000000000000000000000000000000000000000`,Ga=`0x4d50500000000000000000000000000000000000`,Ka=D(w(`Voucher(bytes32 channelId,uint96 cumulativeAmount)`));function qa(e){let{authorizedSigner:t=Wa,expiringNonceHash:n,operator:r=Wa,payee:i,payer:a,salt:o,token:s}=e;return{authorizedSigner:Za(t),expiringNonceHash:n,operator:Za(r),payee:Za(i),payer:Za(a),salt:o,token:typeof s==`string`?Za(s):Ta(s)}}function Ja(e,t){let n=qa(e);return D(vr(Ra,[n.payer,n.payee,n.operator,n.token,n.salt,n.authorizedSigner,n.expiringNonceHash,Ga,BigInt(t.chainId)]))}function Ya(e){return D(vr(za,[Va,Ha,Ua,BigInt(e.chainId),Ga]))}function Xa(e){let t=D(vr(Ba,[Ka,e.channelId,e.cumulativeAmount]));return D(T(`0x1901`,Ya({chainId:e.chainId}),t))}function Za(e){return In(e)}var Qa={4217:{base:4217e5,range:100261e4},42431:{base:142431e4,range:723173648}},$a=4217;Qa[$a].base;function eo(e,t=$a){let{base:n,range:r}=no(t);return n+e%r}var to=class extends E{constructor({sourceId:e}){super(`Source chain ID "${e}" is not supported.`,{metaMessages:[`Supported source chain IDs: 4217, 42431.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`ZoneId.UnsupportedSourceIdError`})}};function no(e){if(e===4217||e===42431)return Qa[e];throw new to({sourceId:e})}function J(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}var ro=-1,Y=class extends F{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof Ct?e.code:t??ro}},X=class extends Y{constructor(e,t){super(e,t),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},io=class e extends Y{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}};Object.defineProperty(io,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});var ao=class e extends Y{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}};Object.defineProperty(ao,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});var oo=class e extends Y{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` "${n}"`:``} does not exist / is not available.`})}};Object.defineProperty(oo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});var so=class e extends Y{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`
|
|
5
5
|
`)})}};Object.defineProperty(so,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});var co=class e extends Y{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}};Object.defineProperty(co,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});var lo=class e extends Y{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`
|
|
6
|
-
`)})}};Object.defineProperty(lo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var uo=class e extends Y{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}};Object.defineProperty(uo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});var fo=class e extends Y{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}};Object.defineProperty(fo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});var po=class e extends Y{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}};Object.defineProperty(po,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});var mo=class e extends Y{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` "${n}"`:``} is not supported.`})}};Object.defineProperty(mo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ho=class e extends Y{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}};Object.defineProperty(ho,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});var go=class e extends Y{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}};Object.defineProperty(go,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});var _o=class e extends X{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}};Object.defineProperty(_o,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});var vo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}};Object.defineProperty(vo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});var yo=class e extends X{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` " ${n}"`:``}.`})}};Object.defineProperty(yo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});var bo=class e extends X{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}};Object.defineProperty(bo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});var xo=class e extends X{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}};Object.defineProperty(xo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});var So=class e extends X{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}};Object.defineProperty(So,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});var Co=class e extends X{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}};Object.defineProperty(Co,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});var wo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}};Object.defineProperty(wo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});var To=class e extends X{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}};Object.defineProperty(To,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});var Eo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}};Object.defineProperty(Eo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});var Do=class e extends X{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}};Object.defineProperty(Do,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});var Oo=class e extends X{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}};Object.defineProperty(Oo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});var ko=class e extends X{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}};Object.defineProperty(ko,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});var Ao=class e extends X{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}};Object.defineProperty(Ao,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});var jo=class extends Y{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}},Mo=3;function No(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Ge?e:e instanceof F?e.walk(e=>typeof e==`object`&&!!e&&`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s,p=e instanceof Re?new Ve({functionName:a,cause:e}):[Mo,co.code].includes(c)&&(l||u||d||f)||c===lo.code&&u===`execution reverted`&&l?new Ie({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof Ct?u:f??d,cause:e}):e;return new Ye(p,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}function Po(e){let t=O(`0x${e.substring(4)}`).substring(26);return $e(`0x${t}`)}async function Fo({hash:e,signature:t}){let n=M(e)?e:Xe(e),{secp256k1:r}=await import(`./secp256k1-5tp4GQIt.js`).then(e=>e.n);return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Io(Number(a??i));return new r.Signature(k(e),k(n)).addRecoveryBit(o)}let e=M(t)?t:Xe(t);if(xt(e)!==65)throw Error(`invalid signature length`);let n=Io(A(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Io(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Lo({hash:e,signature:t}){return Po(await Fo({hash:e,signature:t}))}function Ro(e,t=`hex`){let n=zo(e),r=Mt(new Uint8Array(n.length));return n.encode(r),t===`hex`?P(r.bytes):r.bytes}function zo(e){return Array.isArray(e)?Bo(e.map(e=>zo(e))):Vo(e)}function Bo(e){let t=e.reduce((e,t)=>e+t.length,0),n=Ho(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Vo(e){let t=typeof e==`string`?Je(e):e,n=Ho(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Ho(e){if(e<256)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new F(`Length is too large.`)}function Uo(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=O(ft([`0x05`,Ro([t?j(t):`0x`,i,n?j(n):`0x`])]));return r===`bytes`?Je(a):a}async function Wo(e){let{authorization:t,signature:n}=e;return Lo({hash:Uo(t),signature:n??t})}var Go=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Oe({from:t?.address,to:u,value:d!==void 0&&`${Ft(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${gt(o)} gwei`,maxFeePerGas:s!==void 0&&`${gt(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${gt(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}};function Ko(e,{docsPath:t,...n}){return new Go((()=>{let t=et(e,n);return t instanceof qe?e:t})(),{docsPath:t,...n})}var qo=class extends F{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:`BaseFeeScalarError`})}},Jo=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},Yo=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${gt(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}},Xo=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash "${e}"`),t&&(n=`Block at number "${t}"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}},Zo={"0x0":`legacy`,"0x1":`eip2930`,"0x2":`eip1559`,"0x3":`eip4844`,"0x4":`eip7702`};function Qo(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,...e.blockTimestamp!=null&&{blockTimestamp:BigInt(e.blockTimestamp)},chainId:e.chainId?A(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?A(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Zo[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=es(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}var $o=Me(`transaction`,Qo);function es(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function ts(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:Qo(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}async function ns(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:j(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new Xo({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||ts)(s,`getBlock`)}async function rs(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}async function is(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await J(e,ns,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}if(t!==void 0)return t;let a=await e.request({method:`eth_maxPriorityFeePerGas`});return k(a)}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):J(e,ns,`getBlock`)({}),J(e,rs,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new Jo;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function as(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new qo;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.round(o*s))/BigInt(s),l=n||await J(e,ns,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new Jo;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await is(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await J(e,rs,`getGasPrice`)({}))}}async function os(e,{address:t,blockHash:n,blockNumber:r,blockTag:i=`latest`,requireCanonical:a}){let o=lt({blockHash:n,blockNumber:r,blockTag:i,requireCanonical:a}),s=await e.request({method:`eth_getTransactionCount`,params:[t,o]},{dedupe:typeof r==`bigint`||n!==void 0});return A(s)}function ss(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Je(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>P(e))}function cs(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Je(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Je(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>P(e))}function ls(e,t){let n=t||`hex`,r=Te(M(e,{strict:!1})?Ae(e):e);return n===`bytes`?r:Xe(r)}function us(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=ls(t,`bytes`);return i.set([n],0),r===`bytes`?i:P(i)}function ds(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(us({commitment:e,to:r,version:n}));return i}var fs=6,ps=4096,ms=32*ps,hs=ms*fs-1-1*ps*fs,gs=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},_s=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},vs=class extends F{constructor({hash:e,size:t}){super(`Versioned hash "${e}" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},ys=class extends F{constructor({hash:e,version:t}){super(`Versioned hash "${e}" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};function bs(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Je(e.data):e.data,r=xt(n);if(!r)throw new _s;if(r>761855)throw new gs({maxSize:hs,size:r});let i=[],a=!0,o=0;for(;a;){let e=Mt(new Uint8Array(ms)),t=0;for(;t<ps;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>P(e.bytes))}function xs(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??bs({data:t,to:r}),a=e.commitments??ss({blobs:i,kzg:n,to:r}),o=e.proofs??cs({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}function Ss(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new nt({transaction:e})}function Cs(e,{docsPath:t,...n}){let r=(()=>{let t=et(e,n);return t instanceof qe?e:t})();return new He(r,{docsPath:t,...n})}async function ws(e){let t=await e.request({method:`eth_chainId`},{dedupe:!0});return A(t)}async function Ts(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=N(n),r=a?a.id:await J(e,ws,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();Lt(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Qe)({...zt(y,{format:x}),account:n?N(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||Qo)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input;let i=r.feePayerSignature!==void 0&&r.feePayerSignature!==null;if(i&&b!==void 0&&r.nonce!==b)throw new it({filledNonce:r.nonce,requestedNonce:b});if(!i){r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce!==void 0&&(r.nonce=t.nonce??r.nonce);let n=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await J(e,ns,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(n<1)throw new qo;let i=10**(n.toString().split(`.`)[1]?.length??0),o=e=>e*BigInt(Math.round(n*i))/BigInt(i);r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=o(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=o(r.gasPrice))}return{raw:n.raw,transaction:{from:S.from,...r},...n.capabilities?{capabilities:n.capabilities}:{}}}catch(n){throw Cs(n,{...t,chain:e.chain})}}var Es=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Ds=new Map,Os=new Bt(128);async function ks(e,t){let n=t;n.account??=e.account,n.parameters??=Es;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await J(e,ws,`getChainId`)({}),c):n.chainId)}let u=r&&N(r),d=n.nonce;if(s?.fn&&s.runAt?.includes(`beforeFillTransaction`)){n=await s.fn({...n,chain:i},{client:e,phase:`beforeFillTransaction`}),d??=n.nonce;let t=n.account??n.from;u=t?N(t):void 0}if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs)&&(o.length>0&&`feePayer`in n&&n.feePayer&&!(`feePayerSignature`in n&&n.feePayerSignature)||Os.get(e.uid)!==!1&&[`fees`,`gas`].some(e=>o.includes(e))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`))?await J(e,Ts,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction,p=`feeToken`in f?f.feeToken:void 0,m=`feePayerSignature`in f&&f.feePayerSignature!==null&&f.feePayerSignature!==void 0,h=p!=null&&(!(`feeToken`in n)||m);return Os.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{},...`validBefore`in f&&f.validBefore!==null&&f.validBefore!==void 0?{validBefore:f.validBefore}:{},...`validAfter`in f&&f.validAfter!==null&&f.validAfter!==void 0?{validAfter:f.validAfter}:{},...`keyAuthorization`in f&&f.keyAuthorization!==void 0&&f.keyAuthorization!==null&&!(`keyAuthorization`in n)?{keyAuthorization:f.keyAuthorization}:{},...`feePayerSignature`in f&&f.feePayerSignature!==void 0&&f.feePayerSignature!==null?{feePayerSignature:f.feePayerSignature}:{},...h?{feeToken:p}:{},...t.capabilities?{_capabilities:t.capabilities}:{}}}).catch(t=>{let r=t;if(r.name!==`TransactionExecutionError`)return n;if(r.walk?.(e=>e instanceof it)||r.walk?.(e=>e.name===`ExecutionRevertedError`))throw t;return r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Os.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d===void 0?{}:{nonce:d}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{client:e,phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await J(e,ns,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await J(e,os,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=ss({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=ds({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=xs({blobs:p,commitments:e,proofs:cs({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=Ss(n)}catch{let t=Ds.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Ds.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`)){if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await as(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new Yo({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new Jo;if(n.gasPrice===void 0){let{gasPrice:t}=await as(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}}return o.includes(`gas`)&&m===void 0&&(n.gas=await J(e,As,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{client:e,phase:`afterFillParameters`})),Lt(n),delete n.parameters,n}async function As(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?N(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Wo({authorization:t.authorizationList[0]}).catch(()=>{throw new F("`to` is required. Could not infer from `authorizationList`")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await ks(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?j(u):void 0)||d,ee=dt(b);Lt(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Qe)({...zt(x,{format:te}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[C,S??e.experimental_blockTag??`latest`,ee]:S?[C,S]:[C]}))}catch(n){throw Ko(n,{...t,account:i,chain:e.chain})}}function js(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}var Ms=`/docs/contract/decodeEventLog`;function Ns(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Ue({docsPath:Ms});let c=t.find(e=>e.type===`event`&&o===Fe(Ot(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new ct(o,{docsPath:Ms});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(r)f[d?n:t.name||n]=Ps({param:t,value:r});else{if(a)throw new Pt({abiItem:c,param:t});m.push([t,n])}}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=kt(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof st||e instanceof mt?new ht({abiItem:c,data:n,params:g,size:xt(n)}):e}else if(a)throw new ht({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Ps({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(kt([e],t)||[])[0]}function Fs(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:Fe(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?js(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=Ns({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Ns({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!Is({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function Is(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?_t(t,n):e.type===`string`?O(wt(t))===n:e.type===`bytes`?O(Ae(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)&&Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1})}async function Ls(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=It({abi:n,args:i,functionName:a});try{let{data:t}=await J(e,Nt,`call`)({...o,data:s,to:r});return yt({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw No(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}var Rs=class extends F{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
|
|
6
|
+
`)})}};Object.defineProperty(lo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var uo=class e extends Y{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}};Object.defineProperty(uo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});var fo=class e extends Y{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}};Object.defineProperty(fo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});var po=class e extends Y{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}};Object.defineProperty(po,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});var mo=class e extends Y{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` "${n}"`:``} is not supported.`})}};Object.defineProperty(mo,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ho=class e extends Y{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}};Object.defineProperty(ho,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});var go=class e extends Y{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}};Object.defineProperty(go,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});var _o=class e extends X{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}};Object.defineProperty(_o,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});var vo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}};Object.defineProperty(vo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});var yo=class e extends X{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` " ${n}"`:``}.`})}};Object.defineProperty(yo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});var bo=class e extends X{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}};Object.defineProperty(bo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});var xo=class e extends X{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}};Object.defineProperty(xo,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});var So=class e extends X{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}};Object.defineProperty(So,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});var Co=class e extends X{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}};Object.defineProperty(Co,"code",{enumerable:!0,configurable:!0,writable:!0,value:5700});var wo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}};Object.defineProperty(wo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5710});var To=class e extends X{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}};Object.defineProperty(To,"code",{enumerable:!0,configurable:!0,writable:!0,value:5720});var Eo=class e extends X{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}};Object.defineProperty(Eo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5730});var Do=class e extends X{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}};Object.defineProperty(Do,"code",{enumerable:!0,configurable:!0,writable:!0,value:5740});var Oo=class e extends X{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}};Object.defineProperty(Oo,"code",{enumerable:!0,configurable:!0,writable:!0,value:5750});var ko=class e extends X{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}};Object.defineProperty(ko,"code",{enumerable:!0,configurable:!0,writable:!0,value:5760});var Ao=class e extends X{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}};Object.defineProperty(Ao,"code",{enumerable:!0,configurable:!0,writable:!0,value:7e3});var jo=class extends Y{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}},Mo=3;function No(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Ge?e:e instanceof F?e.walk(e=>typeof e==`object`&&!!e&&`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s,p=e instanceof Re?new Ve({functionName:a,cause:e}):[Mo,co.code].includes(c)&&(l||u||d||f)||c===lo.code&&u===`execution reverted`&&l?new Ie({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof Ct?u:f??d,cause:e}):e;return new Ye(p,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}function Po(e){let t=O(`0x${e.substring(4)}`).substring(26);return $e(`0x${t}`)}async function Fo({hash:e,signature:t}){let n=M(e)?e:Xe(e),{secp256k1:r}=await import(`./secp256k1-BmATpikU.js`).then(e=>e.n);return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Io(Number(a??i));return new r.Signature(k(e),k(n)).addRecoveryBit(o)}let e=M(t)?t:Xe(t);if(xt(e)!==65)throw Error(`invalid signature length`);let n=Io(A(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Io(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Lo({hash:e,signature:t}){return Po(await Fo({hash:e,signature:t}))}function Ro(e,t=`hex`){let n=zo(e),r=Mt(new Uint8Array(n.length));return n.encode(r),t===`hex`?P(r.bytes):r.bytes}function zo(e){return Array.isArray(e)?Bo(e.map(e=>zo(e))):Vo(e)}function Bo(e){let t=e.reduce((e,t)=>e+t.length,0),n=Ho(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Vo(e){let t=typeof e==`string`?Je(e):e,n=Ho(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Ho(e){if(e<256)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new F(`Length is too large.`)}function Uo(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=O(ft([`0x05`,Ro([t?j(t):`0x`,i,n?j(n):`0x`])]));return r===`bytes`?Je(a):a}async function Wo(e){let{authorization:t,signature:n}=e;return Lo({hash:Uo(t),signature:n??t})}var Go=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Oe({from:t?.address,to:u,value:d!==void 0&&`${Ft(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${gt(o)} gwei`,maxFeePerGas:s!==void 0&&`${gt(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${gt(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}};function Ko(e,{docsPath:t,...n}){return new Go((()=>{let t=et(e,n);return t instanceof qe?e:t})(),{docsPath:t,...n})}var qo=class extends F{constructor(){super("`baseFeeMultiplier` must be greater than 1.",{name:`BaseFeeScalarError`})}},Jo=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},Yo=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${gt(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}},Xo=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash "${e}"`),t&&(n=`Block at number "${t}"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}},Zo={"0x0":`legacy`,"0x1":`eip2930`,"0x2":`eip1559`,"0x3":`eip4844`,"0x4":`eip7702`};function Qo(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,...e.blockTimestamp!=null&&{blockTimestamp:BigInt(e.blockTimestamp)},chainId:e.chainId?A(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?A(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Zo[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return e.authorizationList&&(n.authorizationList=es(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}var $o=Me(`transaction`,Qo);function es(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function ts(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:Qo(e));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}async function ns(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:j(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new Xo({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||ts)(s,`getBlock`)}async function rs(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}async function is(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await J(e,ns,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}if(t!==void 0)return t;let a=await e.request({method:`eth_maxPriorityFeePerGas`});return k(a)}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):J(e,ns,`getBlock`)({}),J(e,rs,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new Jo;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function as(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new qo;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.round(o*s))/BigInt(s),l=n||await J(e,ns,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new Jo;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await is(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await J(e,rs,`getGasPrice`)({}))}}async function os(e,{address:t,blockHash:n,blockNumber:r,blockTag:i=`latest`,requireCanonical:a}){let o=lt({blockHash:n,blockNumber:r,blockTag:i,requireCanonical:a}),s=await e.request({method:`eth_getTransactionCount`,params:[t,o]},{dedupe:typeof r==`bigint`||n!==void 0});return A(s)}function ss(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Je(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>P(e))}function cs(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Je(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Je(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>P(e))}function ls(e,t){let n=t||`hex`,r=Te(M(e,{strict:!1})?Ae(e):e);return n===`bytes`?r:Xe(r)}function us(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=ls(t,`bytes`);return i.set([n],0),r===`bytes`?i:P(i)}function ds(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(us({commitment:e,to:r,version:n}));return i}var fs=6,ps=4096,ms=32*ps,hs=ms*fs-1-1*ps*fs,gs=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},_s=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},vs=class extends F{constructor({hash:e,size:t}){super(`Versioned hash "${e}" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},ys=class extends F{constructor({hash:e,version:t}){super(`Versioned hash "${e}" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};function bs(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Je(e.data):e.data,r=xt(n);if(!r)throw new _s;if(r>761855)throw new gs({maxSize:hs,size:r});let i=[],a=!0,o=0;for(;a;){let e=Mt(new Uint8Array(ms)),t=0;for(;t<ps;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>P(e.bytes))}function xs(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??bs({data:t,to:r}),a=e.commitments??ss({blobs:i,kzg:n,to:r}),o=e.proofs??cs({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}function Ss(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new nt({transaction:e})}function Cs(e,{docsPath:t,...n}){let r=(()=>{let t=et(e,n);return t instanceof qe?e:t})();return new He(r,{docsPath:t,...n})}async function ws(e){let t=await e.request({method:`eth_chainId`},{dedupe:!0});return A(t)}async function Ts(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=N(n),r=a?a.id:await J(e,ws,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();Lt(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Qe)({...zt(y,{format:x}),account:n?N(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||Qo)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input;let i=r.feePayerSignature!==void 0&&r.feePayerSignature!==null;if(i&&b!==void 0&&r.nonce!==b)throw new it({filledNonce:r.nonce,requestedNonce:b});if(!i){r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce!==void 0&&(r.nonce=t.nonce??r.nonce);let n=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await J(e,ns,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(n<1)throw new qo;let i=10**(n.toString().split(`.`)[1]?.length??0),o=e=>e*BigInt(Math.round(n*i))/BigInt(i);r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=o(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=o(r.gasPrice))}return{raw:n.raw,transaction:{from:S.from,...r},...n.capabilities?{capabilities:n.capabilities}:{}}}catch(n){throw Cs(n,{...t,chain:e.chain})}}var Es=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Ds=new Map,Os=new Bt(128);async function ks(e,t){let n=t;n.account??=e.account,n.parameters??=Es;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await J(e,ws,`getChainId`)({}),c):n.chainId)}let u=r&&N(r),d=n.nonce;if(s?.fn&&s.runAt?.includes(`beforeFillTransaction`)){n=await s.fn({...n,chain:i},{client:e,phase:`beforeFillTransaction`}),d??=n.nonce;let t=n.account??n.from;u=t?N(t):void 0}if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs)&&(o.length>0&&`feePayer`in n&&n.feePayer&&!(`feePayerSignature`in n&&n.feePayerSignature)||Os.get(e.uid)!==!1&&[`fees`,`gas`].some(e=>o.includes(e))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`))?await J(e,Ts,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction,p=`feeToken`in f?f.feeToken:void 0,m=`feePayerSignature`in f&&f.feePayerSignature!==null&&f.feePayerSignature!==void 0,h=p!=null&&(!(`feeToken`in n)||m);return Os.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{},...`validBefore`in f&&f.validBefore!==null&&f.validBefore!==void 0?{validBefore:f.validBefore}:{},...`validAfter`in f&&f.validAfter!==null&&f.validAfter!==void 0?{validAfter:f.validAfter}:{},...`keyAuthorization`in f&&f.keyAuthorization!==void 0&&f.keyAuthorization!==null&&!(`keyAuthorization`in n)?{keyAuthorization:f.keyAuthorization}:{},...`feePayerSignature`in f&&f.feePayerSignature!==void 0&&f.feePayerSignature!==null?{feePayerSignature:f.feePayerSignature}:{},...h?{feeToken:p}:{},...t.capabilities?{_capabilities:t.capabilities}:{}}}).catch(t=>{let r=t;if(r.name!==`TransactionExecutionError`)return n;if(r.walk?.(e=>e instanceof it)||r.walk?.(e=>e.name===`ExecutionRevertedError`))throw t;return r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Os.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d===void 0?{}:{nonce:d}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{client:e,phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await J(e,ns,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await J(e,os,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=ss({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=ds({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=xs({blobs:p,commitments:e,proofs:cs({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=Ss(n)}catch{let t=Ds.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Ds.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`)){if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await as(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new Yo({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new Jo;if(n.gasPrice===void 0){let{gasPrice:t}=await as(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}}return o.includes(`gas`)&&m===void 0&&(n.gas=await J(e,As,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{client:e,phase:`afterFillParameters`})),Lt(n),delete n.parameters,n}async function As(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?N(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Wo({authorization:t.authorizationList[0]}).catch(()=>{throw new F("`to` is required. Could not infer from `authorizationList`")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await ks(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?j(u):void 0)||d,ee=dt(b);Lt(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Qe)({...zt(x,{format:te}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[C,S??e.experimental_blockTag??`latest`,ee]:S?[C,S]:[C]}))}catch(n){throw Ko(n,{...t,account:i,chain:e.chain})}}function js(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}var Ms=`/docs/contract/decodeEventLog`;function Ns(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new Ue({docsPath:Ms});let c=t.find(e=>e.type===`event`&&o===Fe(Ot(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new ct(o,{docsPath:Ms});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(r)f[d?n:t.name||n]=Ps({param:t,value:r});else{if(a)throw new Pt({abiItem:c,param:t});m.push([t,n])}}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=kt(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof st||e instanceof mt?new ht({abiItem:c,data:n,params:g,size:xt(n)}):e}else if(a)throw new ht({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Ps({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(kt([e],t)||[])[0]}function Fs(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:Fe(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?js(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=Ns({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Ns({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!Is({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function Is(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?_t(t,n):e.type===`string`?O(wt(t))===n:e.type===`bytes`?O(Ae(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)&&Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1})}async function Ls(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=It({abi:n,args:i,functionName:a});try{let{data:t}=await J(e,Nt,`call`)({...o,data:s,to:r});return yt({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw No(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}var Rs=class extends F{constructor({docsPath:e}={}){super([`Could not find an Account to execute with this Action.`,"Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the Client."].join(`
|
|
7
7
|
`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},zs=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type "${n}" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};function Bs({chain:e,currentChainId:t}){if(!e)throw new jt;if(t!==e.id)throw new Dt({chain:e,currentChainId:t})}async function Vs(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}var Hs=new Bt(128);async function Us(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new Rs({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?N(n):null,b;try{Lt(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Wo({authorization:o[0]}).catch(()=>{throw new F("`to` is required. Could not infer from `authorizationList`.")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await J(e,ws,`getChainId`)({}),r&&Bs({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Qe)({...zt(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?Ut([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Hs.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(Hs.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Hs.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=(()=>{if(!y.nonceManager||h!==void 0)return y.nonceManager;let e=y.nonceManager;return{consume(t){return b={address:t.address,chainId:t.chainId},e.consume(t)},get(t){return e.get(t)},increment(t){return e.increment(t)},reset(t){return e.reset(t)}}})(),r=await J(e,ks,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?Ut([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:t,parameters:[...Es,`sidecars`],type:g,value:_,...v,to:n}),x=i?.serializers?.transaction,S=await y.signTransaction(r,{serializer:x}),ee=(i??e.chain)?.serializers?.transactionEnvelope,te=ee?await ee({serializedTransaction:S,transaction:r}):S;return await J(e,Vs,`sendRawTransaction`)({serializedTransaction:te})}throw y?.type===`smart`?new zs({metaMessages:["Consider using the `sendUserOperation` Action instead."],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new zs({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof zs?e:(b&&y?.nonceManager?.reset(b),Cs(e,{...t,account:y,chain:t.chain||void 0}))}}async function Ws(e,t){return Ws.internal(e,Us,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new Rs({docsPath:`/docs/contract/writeContract`});let u=a?N(a):null,d=It({abi:i,args:s,functionName:c});try{return await J(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw No(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Ws||={});function Gs(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Vt(n))throw new tt({address:n});if(t<0)throw new pt({chainId:t})}qs(e)}function Ks(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new _s;for(let e of t){let t=xt(e),n=A(ut(e,0,1));if(t!==32)throw new vs({hash:e,size:t});if(n!==1)throw new ys({hash:e,version:n})}}qs(e)}function qs(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new pt({chainId:t});if(i&&!Vt(i))throw new tt({address:i});if(r&&r>Ht)throw new Pe({maxFeePerGas:r});if(n&&r&&n>r)throw new Ne({maxFeePerGas:r,maxPriorityFeePerGas:n})}function Js(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new pt({chainId:t});if(a&&!Vt(a))throw new tt({address:a});if(n||i)throw new F("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(r&&r>Ht)throw new Pe({maxFeePerGas:r})}function Ys(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Vt(a))throw new tt({address:a});if(t!==void 0&&t<=0)throw new pt({chainId:t});if(n||i)throw new F("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(r&&r>Ht)throw new Pe({maxFeePerGas:r})}function Xs(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new We({storageKey:i[e]});if(!Vt(r,{strict:!1}))throw new tt({address:r});t.push([r,i])}return t}function Zs(e,t){let n=Ss(e);return n===`eip1559`?ec(e,t):n===`eip2930`?tc(e,t):n===`eip4844`?$s(e,t):n===`eip7702`?Qs(e,t):nc(e,t)}function Qs(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;Gs(e);let f=Xs(u),p=ic(n);return ft([`0x04`,Ro([j(r),a?j(a):`0x`,l?j(l):`0x`,c?j(c):`0x`,i?j(i):`0x`,o??`0x`,s?j(s):`0x`,d??`0x`,f,p,...rc(e,t)])])}function $s(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;Ks(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>P(e)),n=e.kzg,r=ss({blobs:t,kzg:n});f===void 0&&(f=ds({commitments:r})),p===void 0&&(p=xs({blobs:t,commitments:r,proofs:cs({blobs:t,commitments:r,kzg:n})}))}let m=Xs(u),h=[j(n),i?j(i):`0x`,l?j(l):`0x`,c?j(c):`0x`,r?j(r):`0x`,a??`0x`,o?j(o):`0x`,d??`0x`,m,s?j(s):`0x`,f??[],...rc(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return ft([`0x03`,Ro(p?[h,g,_,v]:h)])}function ec(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;qs(e);let d=Xs(l),f=[j(n),i?j(i):`0x`,c?j(c):`0x`,s?j(s):`0x`,r?j(r):`0x`,a??`0x`,o?j(o):`0x`,u??`0x`,d,...rc(e,t)];return ft([`0x02`,Ro(f)])}function tc(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;Js(e);let u=Xs(c),d=[j(n),a?j(a):`0x`,l?j(l):`0x`,r?j(r):`0x`,o??`0x`,s?j(s):`0x`,i??`0x`,u,...rc(e,t)];return ft([`0x01`,Ro(d)])}function nc(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;Ys(e);let l=[a?j(a):`0x`,c?j(c):`0x`,r?j(r):`0x`,o??`0x`,s?j(s):`0x`,i??`0x`];if(t){let e=(()=>{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new ze({v:t.v});return e})(),r=Ze(t.r),i=Ze(t.s);l=[...l,j(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,j(n),`0x`,`0x`]);return Ro(l)}function rc(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=Ze(n.r),o=Ze(n.s);return[typeof i==`number`?i?j(1):`0x`:r===0n?`0x`:r===1n?j(1):r===27n?`0x`:j(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}function ic(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?Xe(e):`0x`,a,r?Xe(r):`0x`,...rc({},i)])}return t}var ac=1024;function oc(e,t=`hex`){let n=(()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Wt(e);return Je(e)}return e})(),r=Mt(n,{recursiveReadLimit:1/0}),i=sc(r,t);if(r.position<r.bytes.length)throw new Be({count:r.bytes.length-r.position});return i}function sc(e,t=`hex`,n=0){if(n>=ac)throw new je({limit:ac});if(e.bytes.length===0)return t===`hex`?P(e.bytes):e.bytes;let r=e.readByte();if(r<128&&e.decrementPosition(1),r<192){let n=cc(e,r,128),i=e.readBytes(n);return t===`hex`?P(i):i}return lc(e,cc(e,r,192),t,n+1)}function cc(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new F(`Invalid RLP prefix`)}function lc(e,t,n,r){let i=e.position,a=[];for(;e.position-i<t;)a.push(sc(e,n,r));if(e.position-i!==t)throw new at({consumed:e.position-i,declared:t});return a}function uc(e){return M(e)&&e.length===66}var dc=`Ethereum Signed Message:
|
|
8
|
-
`;function fc(e){let t=typeof e==`string`?Ke(e):typeof e.raw==`string`?e.raw:P(e.raw),n=Ke(`${dc}${xt(t)}`);return Ut([n,t])}function pc(e,t){return O(fc(e),t)}var mc=class extends F{constructor({domain:e}){super(`Invalid domain "${St(e)}".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},hc=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \`${e}\` must be one of \`${JSON.stringify(Object.keys(t))}\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:["Check that the primary type is a key in `types`."]})}},gc=class extends F{constructor({type:e}){super(`Struct type "${e}" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}},_c=class extends F{constructor({type:e}){let t=e.replace(/^(u?int)/,`$&256`);super(`Type "${e}" is not a valid EIP-712 type.`,{metaMessages:[`Use "${t}" instead.`],name:`InvalidTypedDataTypeError`})}};function vc(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.replace(/(\[[0-9]*\])+$/,``);if(s===`int`||s===`uint`)throw new _c({type:r});let c=r.match(vt);if(c&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=c;j(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Vt(o))throw new tt({address:o});let l=r.match(bt);if(l){let[e,t]=l;if(t&&xt(o)!==Number.parseInt(t,10))throw new ke({expectedSize:Number.parseInt(t,10),givenSize:xt(o)})}let u=i[r];u&&(bc(r),a(u,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new mc({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`){if(i[r])a(i[r],n);else throw new hc({primaryType:r,types:i})}}function yc({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},typeof e?.version==`string`&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function bc(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new gc({type:e})}function xc(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:yc({domain:t}),...e.types};vc({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Sc({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Cc({data:n,primaryType:r,types:i})),O(Ut(a))}function Sc({domain:e,types:t}){return Cc({data:e,primaryType:`EIP712Domain`,types:t})}function Cc({data:e,primaryType:t,types:n}){let r=wc({data:e,primaryType:t,types:n});return O(r)}function wc({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Tc({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Oc({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return Tt(r,i)}function Tc({primaryType:e,types:t}){let n=Xe(Ec({primaryType:e,types:t}));return O(n)}function Ec({primaryType:e,types:t}){let n=``,r=Dc({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Dc({primaryType:e,types:t},n=new Set){let r=e.match(/^\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Dc({primaryType:e.type,types:t},n);return n}function Oc({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},O(wc({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},O(r)];if(n===`string`)return[{type:`bytes32`},O(Xe(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Oc({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},O(Tt(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}function kc(e){let t=Rt(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&A(t)>=192)return`legacy`;throw new Le({serializedType:t})}function Ac(e){let t=kc(e);return t===`eip1559`?Nc(e):t===`eip2930`?Pc(e):t===`eip4844`?Mc(e):t===`eip7702`?jc(e):Fc(e)}function jc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new ot({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:A(n),type:`eip7702`};return M(s)&&s!==`0x`&&(h.to=s),M(o)&&o!==`0x`&&(h.gas=k(o)),M(l)&&l!==`0x`&&(h.data=l),M(r)&&(h.nonce=r===`0x`?0:A(r)),M(c)&&c!==`0x`&&(h.value=k(c)),M(a)&&a!==`0x`&&(h.maxFeePerGas=k(a)),M(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(h.accessList=Lc(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=Rc(d)),Gs(h),{...t.length===13?zc(t):void 0,...h}}function Mc(e){let t=Ic(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(r.length!==11&&r.length!==14)throw new ot({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:A(a),to:u,type:`eip4844`};return M(l)&&l!==`0x`&&(S.gas=k(l)),M(f)&&f!==`0x`&&(S.data=f),M(o)&&(S.nonce=o===`0x`?0:A(o)),M(d)&&d!==`0x`&&(S.value=k(d)),M(m)&&m!==`0x`&&(S.maxFeePerBlobGas=k(m)),M(c)&&c!==`0x`&&(S.maxFeePerGas=k(c)),M(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=k(s)),p.length!==0&&p!==`0x`&&(S.accessList=Lc(p)),y&&b&&x&&(S.sidecars=xs({blobs:y,commitments:b,proofs:x})),Ks(S),{...r.length===14?zc(r):void 0,...S}}function Nc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(t.length!==9&&t.length!==12)throw new ot({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:A(n),type:`eip1559`};return M(s)&&s!==`0x`&&(m.to=s),M(o)&&o!==`0x`&&(m.gas=k(o)),M(l)&&l!==`0x`&&(m.data=l),M(r)&&(m.nonce=r===`0x`?0:A(r)),M(c)&&c!==`0x`&&(m.value=k(c)),M(a)&&a!==`0x`&&(m.maxFeePerGas=k(a)),M(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(m.accessList=Lc(u)),qs(m),{...t.length===12?zc(t):void 0,...m}}function Pc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(t.length!==8&&t.length!==11)throw new ot({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:A(n),type:`eip2930`};return M(o)&&o!==`0x`&&(p.to=o),M(a)&&a!==`0x`&&(p.gas=k(a)),M(c)&&c!==`0x`&&(p.data=c),M(r)&&(p.nonce=r===`0x`?0:A(r)),M(s)&&s!==`0x`&&(p.value=k(s)),M(i)&&i!==`0x`&&(p.gasPrice=k(i)),l.length!==0&&l!==`0x`&&(p.accessList=Lc(l)),Js(p),{...t.length===11?zc(t):void 0,...p}}function Fc(e){let t=oc(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(t.length!==6&&t.length!==9)throw new ot({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(M(a)&&a!==`0x`&&(d.to=a),M(i)&&i!==`0x`&&(d.gas=k(i)),M(s)&&s!==`0x`&&(d.data=s),M(n)&&(d.nonce=n===`0x`?0:A(n)),M(o)&&o!==`0x`&&(d.value=k(o)),M(r)&&r!==`0x`&&(d.gasPrice=k(r)),Ys(d),t.length===6)return d;let f=M(c)&&c!==`0x`?k(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new ze({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Ic(e){return oc(`0x${e.slice(4)}`,`hex`)}function Lc(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Vt(r,{strict:!1}))throw new tt({address:r});t.push({address:r,storageKeys:i.map(e=>uc(e)?e:Ze(e))})}return t}function Rc(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:A(r),nonce:a===`0x`?0:A(a),...zc([o,s,c])})}return t}function zc(e){let t=e.slice(-3),n=t[0]===`0x`?0n:k(t[0]);if(n!==0n&&n!==1n)throw new At({yParity:n});let r=n===0n?27n:28n;return{r:rt(t[1],{size:32}),s:rt(t[2],{size:32}),v:r,yParity:r===27n?0:1}}function Bc(e,t){return Et(e,t)}var Z=[{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`}]}],outputs:[]},{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`tuple`,name:`config`,components:[{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`},{type:`uint64`,name:`period`}]},{type:`bool`,name:`allowAnyCalls`},{type:`tuple[]`,name:`allowedCalls`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]}],outputs:[]},{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`tuple`,name:`config`,components:[{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`},{type:`uint64`,name:`period`}]},{type:`bool`,name:`allowAnyCalls`},{type:`tuple[]`,name:`allowedCalls`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]},{type:`bytes32`,name:`witness`}],outputs:[]},{name:`authorizeAdminKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`bytes32`,name:`witness`}],outputs:[]},{name:`burnKeyAuthorizationWitness`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`witness`}],outputs:[]},{name:`revokeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`}],outputs:[]},{name:`updateSpendingLimit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`token`},{type:`uint256`,name:`newLimit`}],outputs:[]},{name:`setAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}],outputs:[]},{name:`removeAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`target`}],outputs:[]},{name:`getKey`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`tuple`,components:[{type:`uint8`,name:`signatureType`},{type:`address`,name:`keyId`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`bool`,name:`isRevoked`}]}]},{name:`getRemainingLimit`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`}]},{name:`getRemainingLimitWithPeriod`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`},{type:`uint64`,name:`periodEnd`}]},{name:`getAllowedCalls`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`bool`,name:`isScoped`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]},{name:`isKeyAuthorizationWitnessBurned`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`witness`}],outputs:[{type:`bool`}]},{name:`isAdminKey`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`bool`}]},{name:`getTransactionKey`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`KeyAuthorized`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`}]},{name:`AdminKeyAuthorized`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0}]},{name:`KeyRevoked`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0}]},{name:`SpendingLimitUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`newLimit`}]},{name:`AccessKeySpend`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`},{type:`uint256`,name:`remainingLimit`}]},{name:`KeyAuthorizationWitness`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`witness`,indexed:!0}]},{name:`KeyAuthorizationWitnessBurned`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`witness`,indexed:!0}]},{name:`UnauthorizedCaller`,type:`error`,inputs:[]},{name:`KeyAlreadyExists`,type:`error`,inputs:[]},{name:`KeyNotFound`,type:`error`,inputs:[]},{name:`KeyExpired`,type:`error`,inputs:[]},{name:`SpendingLimitExceeded`,type:`error`,inputs:[]},{name:`InvalidSpendingLimit`,type:`error`,inputs:[]},{name:`InvalidSignatureType`,type:`error`,inputs:[]},{name:`ZeroPublicKey`,type:`error`,inputs:[]},{name:`ExpiryInPast`,type:`error`,inputs:[]},{name:`KeyAlreadyRevoked`,type:`error`,inputs:[]},{name:`SignatureTypeMismatch`,type:`error`,inputs:[{type:`uint8`,name:`expected`},{type:`uint8`,name:`actual`}]},{name:`CallNotAllowed`,type:`error`,inputs:[]},{name:`InvalidCallScope`,type:`error`,inputs:[]},{name:`InvalidKeyId`,type:`error`,inputs:[]},{name:`InvalidKeyAuthorizationWitness`,type:`error`,inputs:[]},{name:`KeyAuthorizationWitnessAlreadyBurned`,type:`error`,inputs:[]},{name:`LegacyAuthorizeKeySelectorChanged`,type:`error`,inputs:[{type:`bytes4`,name:`newSelector`}]}],Vc=[{name:`registerVirtualMaster`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`salt`}],outputs:[{type:`bytes4`,name:`masterId`}]},{name:`getMaster`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes4`,name:`masterId`}],outputs:[{type:`address`}]},{name:`resolveRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`to`}],outputs:[{type:`address`,name:`effectiveRecipient`}]},{name:`resolveVirtualAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`virtualAddr`}],outputs:[{type:`address`,name:`master`}]},{name:`isVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`}]},{name:`decodeVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`,name:`isVirtual`},{type:`bytes4`,name:`masterId`},{type:`bytes6`,name:`userTag`}]},{name:`isImplicitlyApproved`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`}]},{name:`MasterRegistered`,type:`event`,inputs:[{type:`bytes4`,name:`masterId`,indexed:!0},{type:`address`,name:`masterAddress`,indexed:!0}]},{name:`MasterIdCollision`,type:`error`,inputs:[{type:`address`,name:`master`}]},{name:`InvalidMasterAddress`,type:`error`,inputs:[]},{name:`ProofOfWorkFailed`,type:`error`,inputs:[]},{name:`VirtualAddressUnregistered`,type:`error`,inputs:[]}],Hc=[{name:`deriveAccount`,type:`function`,stateMutability:`pure`,inputs:[{type:`bytes32`,name:`salt`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[{type:`address`,name:`account`}]},{name:`getConfigCommitment`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bytes32`,name:`commitment`}]},{name:`updateConfig`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`current`,components:[{type:`bytes32`,name:`salt`},{type:`uint64`,name:`version`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[]},{name:`upgradeAccount`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[{type:`bytes32`,name:`commitment`}]},{name:`ConfigurableAccountConfigUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`salt`},{type:`uint64`,name:`version`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{name:`AccountUpgraded`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`commitment`,indexed:!0},{type:`bytes32`,name:`salt`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{name:`InvalidAccount`,type:`error`,inputs:[]},{name:`InvalidConfig`,type:`error`,inputs:[]},{name:`InvalidThreshold`,type:`error`,inputs:[]},{name:`InvalidConfigurableAccountOwner`,type:`error`,inputs:[]},{name:`InvalidWeight`,type:`error`,inputs:[]},{name:`TooManyOwners`,type:`error`,inputs:[]},{name:`DuplicateOwner`,type:`error`,inputs:[]},{name:`InvalidOwnerOrder`,type:`error`,inputs:[]},{name:`UnauthorizedConfigurableAccountCaller`,type:`error`,inputs:[]},{name:`PrimitiveRootRequired`,type:`error`,inputs:[]},{name:`UpgradeMustBeOnlyCall`,type:`error`,inputs:[]},{name:`AccountAlreadyConfigurable`,type:`error`,inputs:[]},{name:`AccountHasCode`,type:`error`,inputs:[]}],Uc=[{name:`getCommitteeMembers`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`,name:`epoch`},{type:`bytes32[]`,name:`publicKeys`}]},{name:`setCommitteeMembers`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`},{type:`bytes32[]`,name:`publicKeys`}],outputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]}],Wc=[{name:`getNonce`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`uint256`,name:`nonceKey`}],outputs:[{type:`uint64`,name:`nonce`}]},{name:`NonceIncremented`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint256`,name:`nonceKey`,indexed:!0},{type:`uint64`,name:`newNonce`}]},{name:`ProtocolNonceNotSupported`,type:`error`,inputs:[]},{name:`InvalidNonceKey`,type:`error`,inputs:[]},{name:`NonceOverflow`,type:`error`,inputs:[]},{name:`ExpiringNonceReplay`,type:`error`,inputs:[]},{name:`ExpiringNonceSetFull`,type:`error`,inputs:[]},{name:`InvalidExpiringNonceExpiry`,type:`error`,inputs:[]}],Gc=[{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes`,name:`receipt`}],outputs:[{type:`uint256`,name:`amount`}]},{name:`claim`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`bytes`,name:`receipt`}],outputs:[]},{name:`burnBlockedReceipt`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes`,name:`receipt`}],outputs:[]},{name:`TransferBlocked`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint256`,name:`amount`},{type:`uint8`,name:`receiptVersion`},{type:`bytes`,name:`receipt`}]},{name:`ReceiptClaimed`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint64`,name:`blockedAt`},{type:`uint8`,name:`receiptVersion`},{type:`address`,name:`originator`},{type:`address`,name:`recipient`},{type:`address`,name:`recoveryAuthority`},{type:`address`,name:`caller`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}]},{name:`ReceiptBurned`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint64`,name:`blockedAt`},{type:`uint8`,name:`receiptVersion`},{type:`address`,name:`originator`},{type:`address`,name:`recipient`},{type:`address`,name:`recoveryAuthority`},{type:`address`,name:`caller`},{type:`uint256`,name:`amount`}]},{name:`InvalidReceipt`,type:`error`,inputs:[]},{name:`InvalidClaimAddress`,type:`error`,inputs:[]},{name:`UnauthorizedClaimer`,type:`error`,inputs:[]},{name:`AddressReserved`,type:`error`,inputs:[]}],Kc=[{name:`recover`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`address`,name:`signer`}]},{name:`verify`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`signer`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyKeychain`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyKeychainAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyConfigurableAccount`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`InvalidFormat`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]}],qc=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`bookIndexForKey`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`bookKey`}],outputs:[{type:`bool`,name:`set`},{type:`uint32`,name:`index`}]},{name:`bookKeyForIndex`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`index`}],outputs:[{type:`bytes32`,name:`bookKey`}]},{name:`setBookIndex`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`index`}],outputs:[]},{name:`storageCredits`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`}],outputs:[{type:`uint64`,name:`credits`}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderFlipped`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}]},{name:`FlipFailed`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`bytes4`,name:`reason`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]},{name:`IndexAlreadySet`,type:`error`,inputs:[]}],Jc=[{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint64`}]},{name:`modeOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint8`}]},{name:`budgetOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint64`}]},{name:`setMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`newMode`}],outputs:[]},{name:`setBudget`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`credits`}],outputs:[]},{name:`InvalidMode`,type:`error`,inputs:[]},{name:`OnlyDirectCall`,type:`error`,inputs:[]}],Yc=[{name:`userTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`}],outputs:[{type:`address`}]},{name:`validatorTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`address`}]},{name:`setUserToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`setValidatorToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`distributeFees`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[]},{name:`collectedFees`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[{type:`uint256`}]},{name:`UserTokenSet`,type:`event`,inputs:[{type:`address`,name:`user`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`ValidatorTokenSet`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`FeesDistributed`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientFeeTokenBalance`,type:`error`,inputs:[]},{name:`CannotChangeWithinBlock`,type:`error`,inputs:[]}],Xc=[{name:`M`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`N`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`SCALE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`MIN_LIQUIDITY`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`getPoolId`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`bytes32`}]},{name:`getPool`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`pools`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`liquidity`}]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`uint256`}]},{name:`liquidityBalances`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`},{type:`address`,name:`user`}],outputs:[{type:`uint256`}]},{name:`rebalanceSwap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountOut`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountIn`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`sender`},{type:`address`,name:`to`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}]},{name:`RebalanceSwap`,type:`event`,inputs:[{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`address`,name:`swapper`,indexed:!0},{type:`uint256`,name:`amountIn`},{type:`uint256`,name:`amountOut`}]},{name:`IdenticalAddresses`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientReserves`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`DivisionByZero`,type:`error`,inputs:[]},{name:`InvalidSwapCalculation`,type:`error`,inputs:[]}],Zc=[{name:`CLOSE_GRACE_PERIOD`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`VOUCHER_TYPEHASH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`open`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`uint96`,name:`deposit`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`}],outputs:[{type:`bytes32`,name:`channelId`}]},{name:`settle`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`cumulativeAmount`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`topUp`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`additionalDeposit`}],outputs:[]},{name:`close`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`cumulativeAmount`},{type:`uint96`,name:`captureAmount`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`requestClose`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[]},{name:`getChannel`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[{type:`tuple`,components:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`tuple`,name:`state`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]}]},{name:`getChannelState`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`channelId`}],outputs:[{type:`tuple`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]},{name:`getChannelStatesBatch`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32[]`,name:`channelIds`}],outputs:[{type:`tuple[]`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]},{name:`computeChannelId`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}],outputs:[{type:`bytes32`}]},{name:`getVoucherDigest`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`channelId`},{type:`uint96`,name:`cumulativeAmount`}],outputs:[{type:`bytes32`}]},{name:`domainSeparator`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`storageCredits`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`payer`}],outputs:[{type:`uint64`,name:`credits`}]},{name:`ChannelOpened`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`salt`},{type:`bytes32`,name:`expiringNonceHash`},{type:`uint96`,name:`deposit`}]},{name:`Settled`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`cumulativeAmount`},{type:`uint96`,name:`deltaPaid`},{type:`uint96`,name:`newSettled`}]},{name:`TopUp`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`additionalDeposit`},{type:`uint96`,name:`newDeposit`}]},{name:`CloseRequested`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint256`,name:`closeGraceEnd`}]},{name:`ChannelClosed`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`settledToPayee`},{type:`uint96`,name:`refundedToPayer`}]},{name:`CloseRequestCancelled`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0}]},{name:`ChannelAlreadyExists`,type:`error`,inputs:[]},{name:`ChannelNotFound`,type:`error`,inputs:[]},{name:`NotPayer`,type:`error`,inputs:[]},{name:`NotPayeeOrOperator`,type:`error`,inputs:[]},{name:`InvalidPayee`,type:`error`,inputs:[]},{name:`ZeroDeposit`,type:`error`,inputs:[]},{name:`ExpiringNonceHashNotSet`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`AmountExceedsDeposit`,type:`error`,inputs:[]},{name:`AmountNotIncreasing`,type:`error`,inputs:[]},{name:`CaptureAmountInvalid`,type:`error`,inputs:[]},{name:`CloseNotReady`,type:`error`,inputs:[]},{name:`DepositOverflow`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]}],Qc=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`},{type:`string`,name:`logoURI`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}],$c=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`logoURI`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`setLogoURI`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`newLogoURI`}],outputs:[]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burnAt`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_AT_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`permit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`},{type:`uint256`,name:`value`},{type:`uint256`,name:`deadline`},{type:`uint8`,name:`v`},{type:`bytes32`,name:`r`},{type:`bytes32`,name:`s`}],outputs:[]},{name:`nonces`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`}],outputs:[{type:`uint256`}]},{name:`DOMAIN_SEPARATOR`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnAt`,type:`event`,inputs:[{type:`address`,name:`burner`,indexed:!0},{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`,indexed:!0}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`LogoURIUpdated`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`string`,name:`newLogoURI`}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`PermitExpired`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`LogoURITooLong`,type:`error`,inputs:[]},{name:`InvalidLogoURI`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],el=[{name:`policyIdCounter`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`policyExists`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`bool`}]},{name:`tokenTransferPolicyId`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`,name:`isSet`},{type:`uint64`,name:`policyId`}]},{name:`policyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint8`,name:`policyType`},{type:`address`,name:`admin`}]},{name:`isAuthorized`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedSender`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedMintRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`compoundPolicyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`receivePolicy`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bool`,name:`hasReceivePolicy`},{type:`uint64`,name:`senderPolicyId`},{type:`uint8`,name:`senderPolicyType`},{type:`uint64`,name:`tokenFilterId`},{type:`uint8`,name:`tokenFilterType`},{type:`address`,name:`recoveryAuthority`}]},{name:`validateReceivePolicy`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`sender`},{type:`address`,name:`receiver`}],outputs:[{type:`bool`,name:`authorized`},{type:`uint8`,name:`blockedReason`}]},{name:`createPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`}],outputs:[{type:`uint64`}]},{name:`createPolicyWithAccounts`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`},{type:`address[]`,name:`accounts`}],outputs:[{type:`uint64`}]},{name:`setPolicyAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`admin`}],outputs:[]},{name:`modifyPolicyWhitelist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`modifyPolicyBlacklist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`restricted`}],outputs:[]},{name:`createCompoundPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}],outputs:[{type:`uint64`}]},{name:`setReceivePolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`tokenFilterId`},{type:`address`,name:`recoveryAuthority`}],outputs:[]},{name:`migrateTransferPolicyIds`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address[]`,name:`tokens`}],outputs:[{type:`uint256`,name:`migrated`}]},{name:`PolicyAdminUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`admin`,indexed:!0}]},{name:`PolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`uint8`,name:`policyType`}]},{name:`WhitelistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`allowed`}]},{name:`BlacklistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`restricted`}]},{name:`CompoundPolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`creator`,indexed:!0},{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`ReceivePolicyUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`tokenFilterId`},{type:`address`,name:`recoveryAuthority`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PolicyNotFound`,type:`error`,inputs:[]},{name:`PolicyNotSimple`,type:`error`,inputs:[]},{name:`InvalidPolicyType`,type:`error`,inputs:[]},{name:`IncompatiblePolicyType`,type:`error`,inputs:[]},{name:`VirtualAddressNotAllowed`,type:`error`,inputs:[]},{name:`InvalidReceivePolicyType`,type:`error`,inputs:[]},{name:`InvalidRecoveryAuthority`,type:`error`,inputs:[]}],tl=[{name:`getActiveValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getInitializedAtHeight`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`validatorByIndex`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`index`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validatorAddress`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByPublicKey`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`publicKey`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getNextNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`isInitialized`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`bytes`,name:`signature`}],outputs:[{type:`uint64`,name:`index`}]},{name:`deactivateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`rotateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`setFeeRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`feeRecipient`}],outputs:[]},{name:`setIpAddresses`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`}],outputs:[]},{name:`transferValidatorOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`newAddress`}],outputs:[]},{name:`transferOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`setNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`migrateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`initializeIfMigrated`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`ValidatorAdded`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`}]},{name:`ValidatorDeactivated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0}]},{name:`ValidatorRotated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`uint64`,name:`deactivatedIndex`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`oldPublicKey`},{type:`bytes32`,name:`newPublicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`FeeRecipientUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`feeRecipient`},{type:`address`,name:`caller`}]},{name:`IpAddressesUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`ValidatorOwnershipTransferred`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`oldAddress`,indexed:!0},{type:`address`,name:`newAddress`,indexed:!0},{type:`address`,name:`caller`}]},{name:`OwnershipTransferred`,type:`event`,inputs:[{type:`address`,name:`oldOwner`,indexed:!0},{type:`address`,name:`newOwner`,indexed:!0}]},{name:`ValidatorMigrated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`NetworkIdentityRotationEpochSet`,type:`event`,inputs:[{type:`uint64`,name:`previousEpoch`,indexed:!0},{type:`uint64`,name:`nextEpoch`,indexed:!0}]},{name:`Initialized`,type:`event`,inputs:[{type:`uint64`,name:`height`}]},{name:`SkippedValidatorMigration`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`IngressAlreadyExists`,type:`error`,inputs:[{type:`string`,name:`ingress`}]},{name:`EmptyV1ValidatorSet`,type:`error`,inputs:[]},{name:`InvalidMigrationIndex`,type:`error`,inputs:[]},{name:`InvalidOwner`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`InvalidSignatureFormat`,type:`error`,inputs:[]},{name:`InvalidValidatorAddress`,type:`error`,inputs:[]},{name:`MigrationNotComplete`,type:`error`,inputs:[]},{name:`NotInitialized`,type:`error`,inputs:[]},{name:`NotIp`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`PublicKeyAlreadyExists`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`AddressAlreadyHasValidator`,type:`error`,inputs:[]},{name:`ValidatorAlreadyDeactivated`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]}],nl=[{name:`getValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`updateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`changeValidatorStatus`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`bool`,name:`active`}],outputs:[]},{name:`changeValidatorStatusByIndex`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`index`},{type:`bool`,name:`active`}],outputs:[]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`changeOwner`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`getNextFullDkgCeremony`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`setNextFullDkgCeremony`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`validatorsArray`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`validators`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ValidatorAlreadyExists`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`NotHostPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]}],rl=[{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`transferOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`createZone`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`params`,components:[{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address[]`,name:`allowedAccounts`},{type:`address[]`,name:`zoneGateways`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`string`,name:`rpcUrl`}]}],outputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`}]},{name:`nextZoneId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`zones`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`id`}],outputs:[{type:`tuple`,name:`info`,components:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`},{type:`string`,name:`rpcUrl`}]}]},{name:`isZonePortal`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`portal`}],outputs:[{type:`bool`}]},{name:`OwnershipTransferred`,type:`event`,inputs:[{type:`address`,name:`previousOwner`,indexed:!0},{type:`address`,name:`newOwner`,indexed:!0}]},{name:`ZoneCreated`,type:`event`,inputs:[{type:`uint32`,name:`zoneId`,indexed:!0},{type:`address`,name:`portal`,indexed:!0},{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`}]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`InvalidClosedLoopConfig`,type:`error`,inputs:[]},{name:`NotOwner`,type:`error`,inputs:[]},{name:`InvalidAdmin`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`DuplicateAllowedAccount`,type:`error`,inputs:[]},{name:`DuplicateZoneGateway`,type:`error`,inputs:[]},{name:`ZoneCreated`,type:`event`,inputs:[{type:`uint32`,name:`zoneId`,indexed:!0},{type:`address`,name:`portal`,indexed:!0},{type:`address`,name:`messenger`,indexed:!0},{type:`address`,name:`initialToken`},{type:`address`,name:`admin`},{type:`address`,name:`sequencer`},{type:`address`,name:`verifier`},{type:`bytes32`,name:`genesisBlockHash`},{type:`bytes32`,name:`genesisTempoBlockHash`},{type:`uint64`,name:`genesisTempoBlockNumber`}]},{name:`createZone`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`params`,components:[{type:`address`,name:`initialToken`},{type:`address`,name:`admin`},{type:`address`,name:`sequencer`},{type:`address`,name:`verifier`},{type:`tuple`,name:`zoneParams`,components:[{type:`bytes32`,name:`genesisBlockHash`},{type:`bytes32`,name:`genesisTempoBlockHash`},{type:`uint64`,name:`genesisTempoBlockNumber`}]},{type:`string`,name:`rpcUrl`}]}],outputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`}]},{name:`verifier`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]}],il=[{name:`SequencerSetUpdated`,type:`event`,inputs:[{type:`uint64`,name:`nonce`,indexed:!0},{type:`uint8`,name:`threshold`},{type:`address[]`,name:`sequencers`}]},{name:`TokenEnabled`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]},{name:`RoleUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint8`,name:`prev`},{type:`uint8`,name:`next`}]},{name:`EnforcementModesUpdated`,type:`event`,inputs:[{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`}]},{name:`LeaderUpdated`,type:`event`,inputs:[{type:`address`,name:`previousLeader`,indexed:!0},{type:`address`,name:`newLeader`,indexed:!0},{type:`uint64`,name:`leaderEpoch`,indexed:!0},{type:`uint64`,name:`leaderActivationTempoBlock`}]},{name:`zoneId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`admin`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`messenger`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`isAccessEnforced`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`setAccessMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bool`,name:`enforced`}],outputs:[]},{name:`isGatewayOpen`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`setGatewayMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bool`,name:`enforced`}],outputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`uint8`,name:`role`}],outputs:[{type:`bool`}]},{name:`setAllowedAccount`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setGateway`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setPauseGuardian`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setSequencerSet`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address[]`,name:`newSequencers`},{type:`uint8`,name:`newThreshold`}],outputs:[]},{name:`verifier`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`sequencerSetVersion`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`sequencerThreshold`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`zoneHeight`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`isSequencer`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bool`}]},{name:`sequencerCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`sequencerAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`leader`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`leaderEpoch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`leaderActivationTempoBlock`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`setLeader`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newLeader`},{type:`uint64`,name:`expectedEpoch`}],outputs:[]},{name:`withdrawalBatchIndex`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`blockHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`currentDepositQueueHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`lastSyncedTempoBlockNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`withdrawalQueueHead`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`withdrawalQueueTail`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`withdrawalQueueSlot`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`queueIndex`}],outputs:[{type:`bytes32`}]},{name:`calculateDepositFee`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`,name:`fee`}]},{name:`calculateBouncebackFee`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`,name:`fee`}]},{name:`depositCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`lastProcessedDepositNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`FIXED_DEPOSIT_GAS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_GAS_FEE_RATE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_TOKEN_METADATA_BYTES`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`areDepositsActive`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`tokenConfig`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`tuple`,components:[{type:`bool`,name:`enabled`},{type:`bool`,name:`depositsActive`}]}]},{name:`initialize`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address[]`,name:`allowedAccounts`},{type:`address[]`,name:`zoneGateways`},{type:`address`,name:`admin`},{type:`address`,name:`messenger`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`},{type:`string`,name:`rpcUrl`}],outputs:[]},{name:`deliverWithdrawal`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`bytes`,name:`callbackData`}],outputs:[]},{name:`MAX_DEPOSITS_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_UNPROCESSED_DEPOSITS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_UNPROCESSED_TOKEN_ENABLEMENTS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_WITHDRAWAL_GAS_LIMIT`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`pauseExpiry`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`abdicationEffectiveAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint8`,name:`capability`}],outputs:[{type:`uint64`}]},{name:`processWithdrawals`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple[]`,name:`withdrawals`,components:[{type:`address`,name:`token`},{type:`bytes32`,name:`senderTag`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`callbackData`},{type:`bytes`,name:`encryptedSender`}]},{type:`bytes32`,name:`remainingQueue`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`resume`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`abdicate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`capability`}],outputs:[]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`tuple`,name:`tokenEnablementTransition`,components:[{type:`uint64`,name:`prevProcessedTokenCount`},{type:`uint64`,name:`nextProcessedTokenCount`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`enableToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`pauseDeposits`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`resumeDeposits`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`setZoneGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`newZoneGasRate`}],outputs:[]},{name:`setMaxTempoGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`newMaxTempoGasRate`}],outputs:[]},{name:`setBouncebackGas`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newBouncebackGas`}],outputs:[]},{name:`transferAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newAdmin`}],outputs:[]},{name:`acceptAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`rpcUrl`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`setRpcUrl`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`rpcUrl`}],outputs:[]},{name:`deposit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint256`,name:`keyIndex`},{type:`tuple`,name:`encrypted`,components:[{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`}]},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`}]},{name:`depositEncrypted`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint256`,name:`keyIndex`},{type:`tuple`,name:`encrypted`,components:[{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`}]},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`}]},{name:`setSequencerEncryptionKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint8`,name:`popV`},{type:`bytes32`,name:`popR`},{type:`bytes32`,name:`popS`}],outputs:[]},{name:`isTokenEnabled`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`enabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`lastProcessedEnabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`tokenEnablementCursorInitialized`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`enabledTokenAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`tokenEnablementHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`zoneGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`maxTempoGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`bouncebackGas`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`pendingAdmin`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`refunds`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`owner`}],outputs:[{type:`uint128`}]},{name:`sequencerEncryptionKey`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`address`,name:`pubkey`}]},{name:`encryptionKeyCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`encryptionKeyAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`tuple`,name:`entry`,components:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint64`,name:`activationBlock`}]}]},{name:`isEncryptionKeyValid`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`keyIndex`}],outputs:[{type:`bool`,name:`valid`},{type:`uint64`,name:`expiresAtBlock`}]},{name:`encryptionKeyAtBlock`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`tempoBlockNumber`}],outputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint256`,name:`keyIndex`}]},{name:`claimRefund`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`uint128`,name:`amount`}]},{name:`DepositMade`,type:`event`,inputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`netAmount`},{type:`uint128`,name:`fee`},{type:`uint256`,name:`keyIndex`},{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`},{type:`address`,name:`tempoRefundRecipient`},{type:`uint64`,name:`depositNumber`}]},{name:`DepositsPaused`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0}]},{name:`DepositsResumed`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0}]},{name:`PortalPaused`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0}]},{name:`PortalResumed`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0}]},{name:`AbdicationScheduled`,type:`event`,inputs:[{type:`uint8`,name:`capability`,indexed:!0},{type:`uint64`,name:`effectiveAt`}]},{name:`RpcUrlUpdated`,type:`event`,inputs:[{type:`string`,name:`rpcUrl`}]},{name:`SequencerEncryptionKeyUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`address`,name:`pubkey`},{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`}]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`},{type:`uint64`,name:`lastProcessedEnabledTokenCount`}]},{name:`WithdrawalProcessed`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`bytes32`,name:`senderTag`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`callbackSuccess`}]},{name:`WithdrawalBounceBack`,type:`event`,inputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`,indexed:!0},{type:`uint64`,name:`fallbackNonce`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint64`,name:`depositNumber`}]},{name:`DepositBounceBack`,type:`event`,inputs:[{type:`address`,name:`tempoRefundRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`bouncebackFee`}]},{name:`DepositBounceBackPending`,type:`event`,inputs:[{type:`address`,name:`tempoRefundRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`bouncebackFee`}]},{name:`RefundClaimed`,type:`event`,inputs:[{type:`address`,name:`recipient`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`}]},{name:`ZoneGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`zoneGasRate`}]},{name:`MaxTempoGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`maxTempoGasRate`}]},{name:`BouncebackGasUpdated`,type:`event`,inputs:[{type:`uint64`,name:`bouncebackGas`}]},{name:`AdminTransferStarted`,type:`event`,inputs:[{type:`address`,name:`currentAdmin`,indexed:!0},{type:`address`,name:`pendingAdmin`,indexed:!0}]},{name:`AdminTransferred`,type:`event`,inputs:[{type:`address`,name:`previousAdmin`,indexed:!0},{type:`address`,name:`newAdmin`,indexed:!0}]},{name:`NotSequencer`,type:`error`,inputs:[]},{name:`NotAdmin`,type:`error`,inputs:[]},{name:`NotPauseAuthority`,type:`error`,inputs:[]},{name:`CapabilityAbdicated`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`AbdicationAlreadyScheduled`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`PortalIsPaused`,type:`error`,inputs:[]},{name:`NotPendingAdmin`,type:`error`,inputs:[]},{name:`InvalidProof`,type:`error`,inputs:[]},{name:`InvalidTempoBlockNumber`,type:`error`,inputs:[]},{name:`NotFactory`,type:`error`,inputs:[]},{name:`NotSelf`,type:`error`,inputs:[]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`MustDelegateCall`,type:`error`,inputs:[]},{name:`CallbackRejected`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`ReentrantWithdrawal`,type:`error`,inputs:[]},{name:`EncryptionKeyExpired`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`},{type:`uint64`,name:`supersededAtBlock`}]},{name:`InvalidEncryptionKeyIndex`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`}]},{name:`NoEncryptionKeySet`,type:`error`,inputs:[]},{name:`NoEncryptionKeyAtBlock`,type:`error`,inputs:[{type:`uint64`,name:`blockNumber`}]},{name:`InvalidEphemeralPubkey`,type:`error`,inputs:[]},{name:`InvalidCiphertextLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidProofOfPossession`,type:`error`,inputs:[]},{name:`DepositTooSmall`,type:`error`,inputs:[]},{name:`TokenEnablementBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`DepositsNotActive`,type:`error`,inputs:[]},{name:`TokenAlreadyEnabled`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`TokenEnablementCursorNotInitialized`,type:`error`,inputs:[]},{name:`InvalidDepositTransition`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementTransition`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`SequencerConfigurationUnchanged`,type:`error`,inputs:[]},{name:`InvalidQuorumCertificate`,type:`error`,inputs:[]},{name:`CallbackDidNotReturnToZone`,type:`error`,inputs:[]},{name:`InvalidBouncebackRecipient`,type:`error`,inputs:[]},{name:`TokenNotEnabled`,type:`error`,inputs:[]},{name:`DepositBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`InvalidCallbackTarget`,type:`error`,inputs:[]},{name:`AccountNotAllowed`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`InvalidLeader`,type:`error`,inputs:[]},{name:`ActiveLeaderRemoved`,type:`error`,inputs:[]},{name:`LeaderAlreadyUpdatedThisBlock`,type:`error`,inputs:[]},{name:`StaleLeadershipEpoch`,type:`error`,inputs:[{type:`uint64`,name:`expected`},{type:`uint64`,name:`actual`}]},{name:`deposit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`_token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`}]}],al=[{name:`verify`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`zoneId`},{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`anchorBlockNumber`},{type:`bytes32`,name:`anchorBlockHash`},{type:`uint64`,name:`expectedWithdrawalBatchIndex`},{type:`uint256`,name:`nextZoneHeight`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`tuple`,name:`tokenEnablementTransition`,components:[{type:`uint64`,name:`prevProcessedTokenCount`},{type:`uint64`,name:`nextProcessedTokenCount`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`}],outputs:[{type:`bool`}]}],ol=[{type:`constructor`,inputs:[{name:`earnVault_`,type:`address`},{name:`owner_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`active`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`executeFunding`,inputs:[{name:`funder`,type:`address`},{name:`requestedAssets`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`fundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`fund`,inputs:[{name:`funder`,type:`address`},{name:`requestedAssets`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`fundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`fundBatchExact`,inputs:[{name:`funders`,type:`address[]`},{name:`requestedAssets`,type:`uint256[]`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`totalFundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setActive`,inputs:[{name:`active_`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ActiveSet`,inputs:[{name:`active`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Funded`,inputs:[{name:`funder`,type:`address`,indexed:!0},{name:`requestedAssets`,type:`uint256`,indexed:!1},{name:`fundedAssets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`error`,name:`EarnShareSupplyOutOfBounds`,inputs:[{name:`earnShareSupply`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}]},{type:`error`,name:`Inactive`,inputs:[]},{type:`error`,name:`InvalidArrayLengths`,inputs:[]},{type:`error`,name:`NotSelf`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],sl=[{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:`scale`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`}],cl=[{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`requestRedeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`requestData`,type:`bytes`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`}],ll=[{type:`function`,name:`depositInKind`,inputs:[{name:`venueShares`,type:`uint256`},{name:`from`,type:`address`}],outputs:[{name:`engineSharesReceived`,type:`uint256`}],stateMutability:`nonpayable`}],ul=[{type:`constructor`,inputs:[{name:`tip20Factory_`,type:`address`},{name:`earnVaultImplementation_`,type:`address`},{name:`earnFeesImplementation_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`DEFAULT_ADMIN_ROLE`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`EARN_SHARE_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`FEES_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`computeEarnShareSalt`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`deploy`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:`earnShare`,type:`address`},{name:`earnVault`,type:`address`},{name:`earnFees`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`earnFeesImplementation`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVaultImplementation`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictEarnFees`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictEarnShare`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`tip20Factory`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`EarnStackDeployed`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`earnShare`,type:`address`,indexed:!0},{name:`earnFees`,type:`address`,indexed:!0},{name:`engine`,type:`address`,indexed:!1},{name:`asset`,type:`address`,indexed:!1},{name:`owner`,type:`address`,indexed:!1},{name:`deploymentId`,type:`bytes32`,indexed:!1},{name:`emergencyGuardian`,type:`address`,indexed:!1},{name:`asyncJanitor`,type:`address`,indexed:!1},{name:`maxManagedAssets`,type:`uint256`,indexed:!1},{name:`migrationMode`,type:`uint8`,indexed:!1},{name:`transferPolicyId`,type:`uint64`,indexed:!1},{name:`earnShareSalt`,type:`bytes32`,indexed:!1},{name:`controlConfigHash`,type:`bytes32`,indexed:!1},{name:`feeConfigHash`,type:`bytes32`,indexed:!1},{name:`earnFeesSalt`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`AdminRelinquishmentFailed`,inputs:[]},{type:`error`,name:`EarnShareAlreadyExists`,inputs:[{name:`earnShare`,type:`address`}]},{type:`error`,name:`EarnShareSupplyNotZero`,inputs:[]},{type:`error`,name:`EmptyDeploymentId`,inputs:[]},{type:`error`,name:`EmptyEarnShareMetadata`,inputs:[]},{type:`error`,name:`EngineAlreadyBound`,inputs:[{name:`earnVault`,type:`address`}]},{type:`error`,name:`FactoryCannotBeFinalOwner`,inputs:[]},{type:`error`,name:`FailedDeployment`,inputs:[]},{type:`error`,name:`InsufficientBalance`,inputs:[{name:`balance`,type:`uint256`},{name:`needed`,type:`uint256`}]},{type:`error`,name:`InvalidDistributorConfig`,inputs:[]},{type:`error`,name:`InvalidEarnFeesImplementation`,inputs:[]},{type:`error`,name:`InvalidEarnVaultImplementation`,inputs:[]},{type:`error`,name:`InvalidEngine`,inputs:[]},{type:`error`,name:`InvalidTransferPolicy`,inputs:[{name:`policyId`,type:`uint64`}]},{type:`error`,name:`IssuerGrantFailed`,inputs:[]},{type:`error`,name:`TransferPolicyMismatch`,inputs:[{name:`expected`,type:`uint64`},{name:`actual`,type:`uint64`}]},{type:`error`,name:`UnsupportedTransferPolicy`,inputs:[{name:`policyId`,type:`uint64`},{name:`policyType`,type:`uint8`}]},{type:`error`,name:`ZeroAddress`,inputs:[]}],dl=[{type:`constructor`,inputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accrueFees`,inputs:[],outputs:[{name:`result`,type:`tuple`,components:[{name:`activeAssets`,type:`uint256`},{name:`positiveAccrualAssets`,type:`uint256`},{name:`fixedFeeAssets`,type:`uint256`},{name:`excessFeeAssets`,type:`uint256`},{name:`totalFeeAssets`,type:`uint256`},{name:`totalFeeEarnShares`,type:`uint256`},{name:`preFeeValuePerEarnShare`,type:`uint256`},{name:`postFeeValuePerEarnShare`,type:`uint256`},{name:`targetValuePerEarnShare`,type:`uint256`},{name:`allocationCount`,type:`uint8`},{name:`allocations`,type:`tuple[5]`,components:[{name:`account`,type:`address`},{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}]}]}],stateMutability:`nonpayable`},{type:`function`,name:`claim`,inputs:[{name:`to`,type:`address`},{name:`earnShares`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`claimableEarnShares`,inputs:[{name:`recipient`,type:`address`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`closeRedeemRequest`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`currentFeeConfigId`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`disableFees`,inputs:[{name:`operator`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnShareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`feeBaselinesPending`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`feeConfig`,inputs:[{name:`configId`,type:`uint64`}],outputs:[{name:``,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],stateMutability:`view`},{type:`function`,name:`feeRemainder`,inputs:[{name:`configId`,type:`uint64`},{name:`slot`,type:`uint8`}],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`feesActive`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`feesDisabled`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`highWaterMark`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`initialize`,inputs:[{name:`earnVault_`,type:`address`},{name:`earnShare_`,type:`address`},{name:`initialConfig`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeBaselines`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`pendingFeeSnapshot`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`tuple`,components:[{name:`burnedEarnShares`,type:`uint256`},{name:`requestValue`,type:`uint256`},{name:`highWaterValue`,type:`uint256`},{name:`targetValue`,type:`uint256`},{name:`feeConfigId`,type:`uint64`},{name:`requestedAt`,type:`uint40`},{name:`open`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`previewAccruedFees`,inputs:[],outputs:[{name:`result`,type:`tuple`,components:[{name:`activeAssets`,type:`uint256`},{name:`positiveAccrualAssets`,type:`uint256`},{name:`fixedFeeAssets`,type:`uint256`},{name:`excessFeeAssets`,type:`uint256`},{name:`totalFeeAssets`,type:`uint256`},{name:`totalFeeEarnShares`,type:`uint256`},{name:`preFeeValuePerEarnShare`,type:`uint256`},{name:`postFeeValuePerEarnShare`,type:`uint256`},{name:`targetValuePerEarnShare`,type:`uint256`},{name:`allocationCount`,type:`uint8`},{name:`allocations`,type:`tuple[5]`,components:[{name:`account`,type:`address`},{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}]}]}],stateMutability:`view`},{type:`function`,name:`recordRedeemRequest`,inputs:[{name:`requestId`,type:`bytes32`},{name:`burnedEarnShares`,type:`uint256`},{name:`requestValue`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[{name:`configId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`settleCancelledRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`returnedValue`,type:`uint256`},{name:`activeSupply`,type:`uint256`},{name:`activeAssets`,type:`uint256`},{name:`totalReentryEarnShares`,type:`uint256`}],outputs:[{name:`feeEarnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`shouldChargeRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`targetBase`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`targetStartedAt`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`totalClaimableEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`validateFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[],stateMutability:`view`},{type:`event`,name:`FeeBaselinesInitialized`,inputs:[{name:`highWaterMark`,type:`uint256`,indexed:!1},{name:`targetBase`,type:`uint256`,indexed:!1},{name:`targetStartedAt`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeConfigurationSet`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`configHash`,type:`bytes32`,indexed:!0},{name:`reactivated`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeDustWaived`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`slot`,type:`uint8`,indexed:!0},{name:`remainder`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeEarnSharesAllocated`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`recipient`,type:`address`,indexed:!0},{name:`feeAssets`,type:`uint256`,indexed:!1},{name:`feeEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeEarnSharesClaimed`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`to`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeesAccrued`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`activeAssets`,type:`uint256`,indexed:!1},{name:`positiveAccrualAssets`,type:`uint256`,indexed:!1},{name:`feeAssets`,type:`uint256`,indexed:!1},{name:`feeEarnShares`,type:`uint256`,indexed:!1},{name:`highWaterMark`,type:`uint256`,indexed:!1},{name:`targetValuePerEarnShare`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeesDisabled`,inputs:[{name:`operator`,type:`address`,indexed:!0}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`InsufficientClaimableEarnShares`,inputs:[]},{type:`error`,name:`InvalidFeeClaimReceiver`,inputs:[]},{type:`error`,name:`InvalidFeeConfiguration`,inputs:[]},{type:`error`,name:`NotEarnVault`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],fl=[{type:`constructor`,inputs:[{name:`earnVault_`,type:`address`},{name:`treasury_`,type:`address`},{name:`campaignId_`,type:`bytes32`},{name:`claimDeadline_`,type:`uint40`},{name:`owner_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`campaignId`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`claim`,inputs:[{name:`recipient`,type:`address`},{name:`cumulativeAmount`,type:`uint256`},{name:`proof`,type:`bytes32[]`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`claimDeadline`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`consumedSettlements`,inputs:[{name:`settlementId`,type:`bytes32`}],outputs:[{name:`consumed`,type:`bool`}],stateMutability:`view`},{type:`function`,name:`cumulativePaid`,inputs:[{name:`recipient`,type:`address`}],outputs:[{name:`cumulativeAmount`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`fundAndPublishRoot`,inputs:[{name:`settlementId`,type:`bytes32`},{name:`expectedRootVersion`,type:`uint64`},{name:`funder`,type:`address`},{name:`assets`,type:`uint256`},{name:`minEarnShares`,type:`uint256`},{name:`root`,type:`bytes32`},{name:`totalEntitlement`,type:`uint256`},{name:`statementHash_`,type:`bytes32`}],outputs:[{name:`earnShares`,type:`uint256`},{name:`version`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`leaf`,inputs:[{name:`recipient`,type:`address`},{name:`cumulativeAmount`,type:`uint256`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`merkleRoot`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`paused`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`publishRoot`,inputs:[{name:`expectedRootVersion`,type:`uint64`},{name:`root`,type:`bytes32`},{name:`totalEntitlement`,type:`uint256`},{name:`statementHash_`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`pushBatch`,inputs:[{name:`expectedRootVersion`,type:`uint64`},{name:`recipients`,type:`address[]`},{name:`cumulativeAmounts`,type:`uint256[]`},{name:`multiproof`,type:`bytes32[]`},{name:`proofFlags`,type:`bool[]`}],outputs:[{name:`paidCount`,type:`uint256`},{name:`paidEarnShares`,type:`uint256`},{name:`skippedCount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`pure`},{type:`function`,name:`returnUnspent`,inputs:[],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`rootTotalEntitlement`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`rootVersion`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`setPaused`,inputs:[{name:`paused_`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`statementHash`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`totalPaid`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`treasury`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`AssetsFunded`,inputs:[{name:`funder`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`BatchPushed`,inputs:[{name:`version`,type:`uint64`,indexed:!0},{name:`batchHash`,type:`bytes32`,indexed:!0},{name:`attemptedCount`,type:`uint256`,indexed:!1},{name:`paidCount`,type:`uint256`,indexed:!1},{name:`paidEarnShares`,type:`uint256`,indexed:!1},{name:`skippedCount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`PausedSet`,inputs:[{name:`paused`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`PayoutSkipped`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`cumulativeAmount`,type:`uint256`,indexed:!1},{name:`reason`,type:`uint8`,indexed:!1}],anonymous:!1},{type:`event`,name:`RewardClaimed`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`cumulativeAmount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RootPublished`,inputs:[{name:`version`,type:`uint64`,indexed:!0},{name:`root`,type:`bytes32`,indexed:!0},{name:`statementHash`,type:`bytes32`,indexed:!0},{name:`totalEntitlement`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`UnspentReturned`,inputs:[{name:`treasury`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`ClaimsExpired`,inputs:[]},{type:`error`,name:`ClaimsNotExpired`,inputs:[]},{type:`error`,name:`DepositsPaused`,inputs:[]},{type:`error`,name:`InsufficientFunding`,inputs:[{name:`requiredBalance`,type:`uint256`},{name:`actualBalance`,type:`uint256`}]},{type:`error`,name:`InvalidArrayLengths`,inputs:[]},{type:`error`,name:`InvalidEarnVault`,inputs:[]},{type:`error`,name:`InvalidMultiproof`,inputs:[]},{type:`error`,name:`MerkleProofInvalidMultiproof`,inputs:[]},{type:`error`,name:`NothingOwed`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`OwnershipRenunciationDisabled`,inputs:[]},{type:`error`,name:`Paused`,inputs:[]},{type:`error`,name:`PausedLiabilityIncrease`,inputs:[]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`RootTotalDecreased`,inputs:[{name:`previousTotal`,type:`uint256`},{name:`nextTotal`,type:`uint256`}]},{type:`error`,name:`RootTotalExceeded`,inputs:[{name:`requestedAmount`,type:`uint256`},{name:`remainingEntitlement`,type:`uint256`}]},{type:`error`,name:`SettlementAlreadyConsumed`,inputs:[{name:`settlementId`,type:`bytes32`}]},{type:`error`,name:`StaleRootVersion`,inputs:[{name:`expected`,type:`uint64`},{name:`actual`,type:`uint64`}]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`UnexpectedEarnShares`,inputs:[{name:`reported`,type:`uint256`},{name:`measured`,type:`uint256`}]},{type:`error`,name:`UnexpectedRetainedAssets`,inputs:[{name:`beforeBalance`,type:`uint256`},{name:`afterBalance`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]},{type:`error`,name:`ZeroCampaignId`,inputs:[]},{type:`error`,name:`ZeroDeadline`,inputs:[]},{type:`error`,name:`ZeroMinimumEarnShares`,inputs:[]},{type:`error`,name:`ZeroRoot`,inputs:[]},{type:`error`,name:`ZeroSettlementId`,inputs:[]},{type:`error`,name:`ZeroStatementHash`,inputs:[]}],pl=[{type:`function`,name:`campaignId`,inputs:[{name:`earnVault`,type:`address`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`install`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`},{name:`treasury`,type:`address`},{name:`claimDeadline`,type:`uint40`},{name:`targetYield`,type:`bool`},{name:`boostRewards`,type:`bool`}],outputs:[{name:`result`,type:`tuple`,components:[{name:`contributionController`,type:`address`},{name:`merkleDistributor`,type:`address`}]}],stateMutability:`nonpayable`},{type:`function`,name:`predictContributionController`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictMerkleDistributor`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`},{name:`treasury`,type:`address`},{name:`claimDeadline`,type:`uint40`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`ContributionControllerInstalled`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`contributionController`,type:`address`,indexed:!1}],anonymous:!1},{type:`event`,name:`MerkleDistributorInstalled`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`treasury`,type:`address`,indexed:!0},{name:`merkleDistributor`,type:`address`,indexed:!1},{name:`campaignId`,type:`bytes32`,indexed:!1},{name:`claimDeadline`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`error`,name:`EmptyInstallation`,inputs:[]},{type:`error`,name:`InvalidExistingDeployment`,inputs:[{name:`component`,type:`address`}]},{type:`error`,name:`InvalidRewardConfiguration`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]}],ml=[{type:`constructor`,inputs:[{name:`allowedZoneId_`,type:`uint32`},{name:`earnVault_`,type:`address`},{name:`privateAsset_`,type:`address`},{name:`tokenAuthority_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`allowedZoneId`,inputs:[],outputs:[{name:``,type:`uint32`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`onWithdrawalReceived`,inputs:[{name:`sourceZoneId`,type:`uint32`},{name:`sourcePortal`,type:`address`},{name:``,type:`bytes32`},{name:`token`,type:`address`},{name:`amount`,type:`uint128`},{name:`callbackData`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}],stateMutability:`nonpayable`},{type:`function`,name:`privateAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`reserveToken`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`supportsFlow`,inputs:[{name:`flow`,type:`uint8`}],outputs:[{name:``,type:`bool`}],stateMutability:`pure`},{type:`function`,name:`tokenAuthority`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`transactionLimit`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vaultAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`EarnDeposit`,inputs:[{name:`actionId`,type:`bytes32`,indexed:!0},{name:`earnVault`,type:`address`,indexed:!0},{name:`inputToken`,type:`address`,indexed:!0},{name:`inputAmount`,type:`uint256`,indexed:!1},{name:`vaultAssets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`zoneDepositHash`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnRedeem`,inputs:[{name:`actionId`,type:`bytes32`,indexed:!0},{name:`earnVault`,type:`address`,indexed:!0},{name:`outputToken`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`vaultAssets`,type:`uint256`,indexed:!1},{name:`outputAmount`,type:`uint256`,indexed:!1},{name:`zoneDepositHash`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`AmountExceedsLimit`,inputs:[]},{type:`error`,name:`AmountOverflow`,inputs:[]},{type:`error`,name:`BadFlow`,inputs:[]},{type:`error`,name:`InsufficientOutput`,inputs:[]},{type:`error`,name:`InvalidAuthority`,inputs:[]},{type:`error`,name:`InvalidEarnVault`,inputs:[]},{type:`error`,name:`InvalidPrivateAsset`,inputs:[]},{type:`error`,name:`InvalidReturnToken`,inputs:[]},{type:`error`,name:`InvalidRoutePair`,inputs:[]},{type:`error`,name:`InvalidSourcePortal`,inputs:[]},{type:`error`,name:`InvalidTransactionLimit`,inputs:[]},{type:`error`,name:`NotZoneMessenger`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`ResidualBalance`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`WrongInputToken`,inputs:[]},{type:`error`,name:`WrongSourceZone`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],hl=[{type:`constructor`,inputs:[],stateMutability:`nonpayable`},{type:`function`,name:`MAX_REWARD_RATE_MULTIPLIER`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`absorbEngineShareSurplus`,inputs:[{name:`engineShares_`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`acceptDistributor`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`acceptOperator`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accrueFees`,inputs:[],outputs:[{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`anchorEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`anchorEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`asyncJanitor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`cancelDistributorFeeUpdate`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelDistributorTransfer`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelOperatorTransfer`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`minReceiverEarnShares`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`contribute`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`receivedEngineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`convertEngineSharesToEarnShares`,inputs:[{name:`engineShares_`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`convertToEngineShares`,inputs:[{name:`earnShares`,type:`uint256`}],outputs:[{name:`engineShares_`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minEarnShares`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositVenueShares`,inputs:[{name:`venueShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minEarnShares`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositsPaused`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`disableFees`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`distributor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`distributorFee`,inputs:[],outputs:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`}],stateMutability:`view`},{type:`function`,name:`distributorUpdateDelay`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`earnFees`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`emergencyGuardian`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`engine`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`engineMigrationMode`,inputs:[],outputs:[{name:``,type:`uint8`}],stateMutability:`view`},{type:`function`,name:`engineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`executeDistributorFeeUpdate`,inputs:[],outputs:[{name:`feeConfigId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`finalizeRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`asset_`,type:`address`},{name:`amount`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initialize`,inputs:[{name:`engine_`,type:`address`},{name:`earnShare_`,type:`address`},{name:`earnFees_`,type:`address`},{name:`operator_`,type:`address`},{name:`controlInit_`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorInit_`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`isAccountingAligned`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`maxManagedAssets`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`migrateEngine`,inputs:[{name:`newEngine`,type:`address`},{name:`minNewEngineShares`,type:`uint256`},{name:`minAssetsRetained`,type:`uint256`}],outputs:[{name:`newEngineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`normalizedRewardRate`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`openRedeemRequestCount`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`operator`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingDistributor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingDistributorFeeUpdate`,inputs:[],outputs:[{name:``,type:`tuple`,components:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`},{name:`executableAt`,type:`uint40`},{name:`pending`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`pendingOperator`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`tuple`,components:[{name:`receiver`,type:`address`},{name:`requester`,type:`address`},{name:`burnedEarnShares`,type:`uint256`},{name:`engineShares`,type:`uint256`},{name:`open`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`earnShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`rawEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`earnShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`remainingDepositCapacity`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`requestRedeem`,inputs:[{name:`earnShares`,type:`uint256`},{name:`engineData`,type:`bytes`},{name:`receiver`,type:`address`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`rewardRateBaseline`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`scheduleDistributorFeeUpdate`,inputs:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setDepositsPaused`,inputs:[{name:`paused`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setEmergencyRoles`,inputs:[{name:`newGuardian`,type:`address`},{name:`newJanitor`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[{name:`configId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`setMaxManagedAssets`,inputs:[{name:`newMaxManagedAssets`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`surplusEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferDistributor`,inputs:[{name:`newDistributor`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`transferOperator`,inputs:[{name:`newOperator`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdrawExact`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`},{name:`maxEarnShares`,type:`uint256`}],outputs:[{name:`earnSharesBurned`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`Contributed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DepositPauseChanged`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`paused`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Deposited`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdateCancelled`,inputs:[{name:`distributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdateScheduled`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`recipient`,type:`address`,indexed:!0},{name:`rateBps`,type:`uint16`,indexed:!1},{name:`executableAt`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdated`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`rateBps`,type:`uint16`,indexed:!1},{name:`feeConfigId`,type:`uint64`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferCancelled`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`pendingDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferStarted`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`pendingDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferred`,inputs:[{name:`previousDistributor`,type:`address`,indexed:!0},{name:`newDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`earnShare`,type:`address`,indexed:!0},{name:`earnFees`,type:`address`,indexed:!0},{name:`operator`,type:`address`,indexed:!1},{name:`emergencyGuardian`,type:`address`,indexed:!1},{name:`asyncJanitor`,type:`address`,indexed:!1},{name:`maxManagedAssets`,type:`uint256`,indexed:!1},{name:`migrationMode`,type:`uint8`,indexed:!1},{name:`distributor`,type:`address`,indexed:!1},{name:`distributorUpdateDelay`,type:`uint40`,indexed:!1},{name:`distributorFeeRecipient`,type:`address`,indexed:!1},{name:`distributorFeeRateBps`,type:`uint16`,indexed:!1}],anonymous:!1},{type:`event`,name:`EmergencyRolesChanged`,inputs:[{name:`emergencyGuardian`,type:`address`,indexed:!0},{name:`asyncJanitor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`EngineMigrated`,inputs:[{name:`oldEngine`,type:`address`,indexed:!0},{name:`newEngine`,type:`address`,indexed:!0},{name:`oldEngineShares`,type:`uint256`,indexed:!1},{name:`assetsMoved`,type:`uint256`,indexed:!1},{name:`newEngineShares`,type:`uint256`,indexed:!1},{name:`totalEarnShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EngineShareShortfallReconciled`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`previousManagedEngineShares`,type:`uint256`,indexed:!1},{name:`observedRawEngineShares`,type:`uint256`,indexed:!1},{name:`shortfallEngineShares`,type:`uint256`,indexed:!1},{name:`totalEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EngineShareSurplusAbsorbed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`MaxManagedAssetsChanged`,inputs:[{name:`previousMaxManagedAssets`,type:`uint256`,indexed:!1},{name:`newMaxManagedAssets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OperatorTransferCancelled`,inputs:[{name:`operator`,type:`address`,indexed:!0},{name:`pendingOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OperatorTransferStarted`,inputs:[{name:`operator`,type:`address`,indexed:!0},{name:`pendingOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OperatorTransferred`,inputs:[{name:`previousOperator`,type:`address`,indexed:!0},{name:`newOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`RedeemCancelled`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemFinalized`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`asset`,type:`address`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemRequested`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`requester`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VenueSharesDeposited`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`requestedVenueShares`,type:`uint256`,indexed:!1},{name:`receivedEngineShares`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`ActiveSupplyWithoutBacking`,inputs:[]},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`DepositsPaused`,inputs:[]},{type:`error`,name:`DistributorFeeUpdateNotPending`,inputs:[]},{type:`error`,name:`DistributorFeeUpdateNotReady`,inputs:[{name:`executableAt`,type:`uint40`}]},{type:`error`,name:`DistributorTransferNotPending`,inputs:[]},{type:`error`,name:`DuplicateRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`EngineAssetMismatch`,inputs:[]},{type:`error`,name:`EngineCapabilityUnsupported`,inputs:[{name:`interfaceId`,type:`bytes4`}]},{type:`error`,name:`EngineEarnVaultMismatch`,inputs:[]},{type:`error`,name:`EngineExitUnsupported`,inputs:[]},{type:`error`,name:`ExceedsMaxEarnShares`,inputs:[]},{type:`error`,name:`ExcessiveConversionLoss`,inputs:[{name:`inputShares`,type:`uint256`},{name:`representedShares`,type:`uint256`}]},{type:`error`,name:`ExcessiveMigrationClassificationError`,inputs:[{name:`expectedManagedAssets`,type:`uint256`},{name:`actualManagedAssets`,type:`uint256`}]},{type:`error`,name:`FeeValuationStale`,inputs:[]},{type:`error`,name:`FinalizedAssetMismatch`,inputs:[{name:`finalizedAsset`,type:`address`}]},{type:`error`,name:`GlobalFeeDisableUnavailable`,inputs:[]},{type:`error`,name:`InitialEarnShareSupplyNotZero`,inputs:[]},{type:`error`,name:`InsufficientEngineShareSurplus`,inputs:[{name:`available`,type:`uint256`},{name:`requested`,type:`uint256`}]},{type:`error`,name:`InsufficientOutput`,inputs:[]},{type:`error`,name:`InvalidDistributorConfiguration`,inputs:[]},{type:`error`,name:`InvalidDistributorFeeConfiguration`,inputs:[]},{type:`error`,name:`InvalidEarnDecimals`,inputs:[]},{type:`error`,name:`InvalidEngineShareScale`,inputs:[]},{type:`error`,name:`MaxManagedAssetsExceeded`,inputs:[{name:`maximum`,type:`uint256`},{name:`actual`,type:`uint256`}]},{type:`error`,name:`MinimumAssetsNotMet`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`MinimumEarnSharesNotMet`,inputs:[{name:`minimumEarnShares`,type:`uint256`},{name:`actualEarnShares`,type:`uint256`}]},{type:`error`,name:`MinimumEngineSharesNotMet`,inputs:[{name:`minimumEngineShares`,type:`uint256`},{name:`actualEngineShares`,type:`uint256`}]},{type:`error`,name:`NoEarnShares`,inputs:[]},{type:`error`,name:`NotDistributor`,inputs:[]},{type:`error`,name:`NotEmergencyGuardianOrOperator`,inputs:[]},{type:`error`,name:`NotEngine`,inputs:[]},{type:`error`,name:`NotOperator`,inputs:[]},{type:`error`,name:`NotPendingDistributor`,inputs:[]},{type:`error`,name:`NotPendingOperator`,inputs:[]},{type:`error`,name:`NotRequesterOrJanitor`,inputs:[]},{type:`error`,name:`OperatorMigrationDisabled`,inputs:[]},{type:`error`,name:`OperatorTransferNotPending`,inputs:[]},{type:`error`,name:`PendingRedeemsOpen`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`RequestNotOpen`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`ResidualBacking`,inputs:[]},{type:`error`,name:`RewardRateLimitExceeded`,inputs:[{name:`normalizedRate`,type:`uint256`},{name:`baselineRate`,type:`uint256`}]},{type:`error`,name:`SameEngine`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]},{type:`error`,name:`ZeroMinimumAssets`,inputs:[]},{type:`error`,name:`ZeroMinimumEarnShares`,inputs:[]},{type:`error`,name:`ZeroMinimumEngineShares`,inputs:[]}],gl=[{type:`constructor`,inputs:[{name:`vault_`,type:`address`},{name:`owner_`,type:`address`},{name:`nameOverride_`,type:`string`},{name:`symbolOverride_`,type:`string`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`baseAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositInKind`,inputs:[{name:`venueShares`,type:`uint256`},{name:`from`,type:`address`}],outputs:[{name:`engineSharesReceived`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`},{name:`finalOwner_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`pure`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`Deposited`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`earnVault`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VenueSharesDeposited`,inputs:[{name:`from`,type:`address`,indexed:!0},{name:`requestedVenueShares`,type:`uint256`,indexed:!1},{name:`receivedEngineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`EarnVaultNotSet`,inputs:[]},{type:`error`,name:`EmptyMetadata`,inputs:[]},{type:`error`,name:`InsufficientAssetsReceived`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`InvalidVenueShareDecimals`,inputs:[]},{type:`error`,name:`NoVenueSharesReceived`,inputs:[]},{type:`error`,name:`NotEarnVault`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]},{type:`error`,name:`UnexpectedAssetsReceived`,inputs:[{name:`expectedAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesBurned`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]}],_l=[{type:`function`,name:`ENGINE_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`computeEngineSalt`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`deploy`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:`engine`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`predictEngine`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`ERC4626EngineDeployed`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`vault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`asset`,type:`address`,indexed:!1},{name:`deploymentId`,type:`bytes32`,indexed:!1},{name:`engineSalt`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`EmptyDeploymentId`,inputs:[]},{type:`error`,name:`EngineAlreadyExists`,inputs:[{name:`engine`,type:`address`}]},{type:`error`,name:`FactoryCannotBeFinalOwner`,inputs:[]}],vl=[{type:`constructor`,inputs:[{name:`peripheryRegistry_`,type:`address`},{name:`owner_`,type:`address`},{name:`maxRateAge_`,type:`uint64`},{name:`name_`,type:`string`},{name:`symbol_`,type:`string`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accountant`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`accountantRateUpdatedAt`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`authorizedForwarder`,inputs:[{name:`forwarder`,type:`address`}],outputs:[{name:`authorized`,type:`bool`}],stateMutability:`view`},{type:`function`,name:`baseAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`claimQueue`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`claimRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`finalizeOneExternal`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`forwardSolved`,inputs:[{name:`requestIds`,type:`bytes32[]`},{name:`asset_`,type:`address`},{name:`delta`,type:`uint256`}],outputs:[{name:`claimed`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`getClaim`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`status`,type:`uint8`},{name:`request`,type:`tuple`,components:[{name:`nonce`,type:`uint96`},{name:`user`,type:`address`},{name:`assetOut`,type:`address`},{name:`amountOfShares`,type:`uint128`},{name:`amountOfAssets`,type:`uint128`},{name:`creationTime`,type:`uint40`},{name:`secondsToMaturity`,type:`uint24`},{name:`secondsToDeadline`,type:`uint24`}]}],stateMutability:`view`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`},{name:`finalOwner_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`maxRateAge`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`openClaimsByQueue`,inputs:[{name:`requestQueue`,type:`address`}],outputs:[{name:`count`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`peripheryRegistry`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`peripheryVersion`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`queue`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`rate`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`recoverExternalSettlement`,inputs:[{name:`requestIds`,type:`bytes32[]`}],outputs:[{name:`claimed`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`requestRedeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`requestData`,type:`bytes`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`setAuthorizedForwarder`,inputs:[{name:`account`,type:`address`},{name:`authorized`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxRateAge`,inputs:[{name:`newMaxRateAge`,type:`uint64`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settled`,inputs:[{name:`asset`,type:`address`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`sweepDust`,inputs:[{name:`token`,type:`address`},{name:`to`,type:`address`},{name:`amount`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`syncVedaPeriphery`,inputs:[{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`teller`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`unresolvedClaimCount`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`AuthorizedForwarderChanged`,inputs:[{name:`account`,type:`address`,indexed:!0},{name:`authorized`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Deposited`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DustSwept`,inputs:[{name:`token`,type:`address`,indexed:!0},{name:`to`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`earnVault`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`ExternalSettlementRecovered`,inputs:[{name:`requestCount`,type:`uint256`,indexed:!1},{name:`recoveredAssets`,type:`uint256`,indexed:!1},{name:`claimed`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FinalizeFailed`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Finalized`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`MaxRateAgeUpdated`,inputs:[{name:`oldMaxRateAge`,type:`uint64`,indexed:!1},{name:`newMaxRateAge`,type:`uint64`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`RedeemCancelledOnQueue`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`engineShares`,type:`uint128`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemClaimed`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemRequested`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`assetOut`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint128`,indexed:!1}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`newTotal`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Unearmarked`,inputs:[{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`newTotal`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VedaEngineInitialized`,inputs:[{name:`teller`,type:`address`,indexed:!0},{name:`queue`,type:`address`,indexed:!0},{name:`accountant`,type:`address`,indexed:!0},{name:`peripheryVersion`,type:`uint64`,indexed:!1},{name:`maxRateAge`,type:`uint64`,indexed:!1}],anonymous:!1},{type:`event`,name:`VedaPeripheryUpdated`,inputs:[{name:`registryVersion`,type:`uint64`,indexed:!0},{name:`oldTeller`,type:`address`,indexed:!0},{name:`oldQueue`,type:`address`,indexed:!0},{name:`oldAccountant`,type:`address`,indexed:!1},{name:`newTeller`,type:`address`,indexed:!1},{name:`newQueue`,type:`address`,indexed:!1},{name:`newAccountant`,type:`address`,indexed:!1},{name:`validatedRate`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`AssetsNotArrived`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`BaseAssetSweepBlocked`,inputs:[{name:`unresolvedClaims`,type:`uint256`}]},{type:`error`,name:`CannotSweepEngineBacking`,inputs:[]},{type:`error`,name:`ClaimNotClaimable`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`ClaimNotOpen`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`CreditExceedsBalance`,inputs:[{name:`asset`,type:`address`},{name:`have`,type:`uint256`},{name:`wantTotal`,type:`uint256`}]},{type:`error`,name:`DepositsNotPaused`,inputs:[]},{type:`error`,name:`DuplicateRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`EarnVaultNotSet`,inputs:[]},{type:`error`,name:`EmptyMetadata`,inputs:[]},{type:`error`,name:`EngineSharesTooLarge`,inputs:[{name:`engineShares`,type:`uint256`}]},{type:`error`,name:`InsufficientAssetsReceived`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`InvalidAsset`,inputs:[{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`InvalidMaxRateAge`,inputs:[]},{type:`error`,name:`InvalidRateTimestamp`,inputs:[{name:`updatedAt`,type:`uint256`},{name:`currentTime`,type:`uint256`}]},{type:`error`,name:`InvalidTrackedRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`InvalidVedaPeriphery`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`InvalidVedaPeripheryWiring`,inputs:[{name:`component`,type:`address`},{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`InvalidVedaRateBounds`,inputs:[{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}]},{type:`error`,name:`InvalidVenueShareDecimals`,inputs:[]},{type:`error`,name:`NoPublishedVedaPeriphery`,inputs:[]},{type:`error`,name:`NoRecoverableClaims`,inputs:[]},{type:`error`,name:`NoVenueSharesReceived`,inputs:[]},{type:`error`,name:`NotAuthorizedForwarder`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`NotEarnVault`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`NotSelf`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`QueueTrackingDisabled`,inputs:[{name:`queue`,type:`address`}]},{type:`error`,name:`QueueUnavailable`,inputs:[]},{type:`error`,name:`QueuedAssetsBelowMinimum`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`RateChangedWithinTransaction`,inputs:[{name:`expected`,type:`uint256`},{name:`actual`,type:`uint256`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`RegistryEngineMismatch`,inputs:[{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`SolveUnderfunded`,inputs:[{name:`asset`,type:`address`},{name:`delivered`,type:`uint256`},{name:`required`,type:`uint256`}]},{type:`error`,name:`StaleAccountantRate`,inputs:[{name:`updatedAt`,type:`uint256`},{name:`currentTime`,type:`uint256`},{name:`maxAge`,type:`uint256`}]},{type:`error`,name:`SweepExceedsAvailableBalance`,inputs:[{name:`token`,type:`address`},{name:`available`,type:`uint256`},{name:`requested`,type:`uint256`}]},{type:`error`,name:`TransferFailed`,inputs:[]},{type:`error`,name:`UnexpectedAssetsReceived`,inputs:[{name:`expectedAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesBurned`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesQueued`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`UnsupportedAccountantFreshness`,inputs:[{name:`accountant`,type:`address`}]},{type:`error`,name:`VedaRateOutOfBounds`,inputs:[{name:`rate`,type:`uint256`},{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroMinimumQueuedAssets`,inputs:[]}],yl=[{name:`MAX_DEPOSITS_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]}],bl=[{name:`tempoGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`maxWithdrawalsPerBlock`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`lastBatch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`withdrawalBatchIndex`}]}]},{name:`lastFinalizedTimestamp`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`nextWithdrawalIndex`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`lastFallbackNonce`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`pendingWithdrawalsCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`getPendingWithdrawals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,components:[{type:`address`,name:`token`},{type:`address`,name:`sender`},{type:`bytes32`,name:`txHash`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`callbackData`},{type:`bytes`,name:`revealTo`}]}]},{name:`consumeFallbackRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`fallbackNonce`}],outputs:[{type:`address`,name:`recipient`}]},{name:`calculateWithdrawalFee`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`gasLimit`}],outputs:[{type:`uint128`,name:`fee`}]},{name:`MAX_CALLBACK_DATA_SIZE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`MAX_WITHDRAWAL_GAS_LIMIT`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`WITHDRAWAL_BASE_GAS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`REVEAL_TO_KEY_LENGTH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`AUTHENTICATED_WITHDRAWAL_CIPHERTEXT_LENGTH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`setTempoGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`_tempoGasRate`}],outputs:[]},{name:`setMaxWithdrawalsPerBlock`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`_maxWithdrawalsPerBlock`}],outputs:[]},{name:`requestWithdrawal`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`address`,name:`zoneFallbackRecipient`},{type:`bytes`,name:`data`},{type:`bytes`,name:`revealTo`}],outputs:[]},{name:`enqueueDepositBounceBack`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`address`,name:`tempoRefundRecipient`}],outputs:[]},{name:`finalizeWithdrawalBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`count`},{type:`uint64`,name:`blockNumber`},{type:`bytes[]`,name:`encryptedSenders`}],outputs:[{type:`bytes32`,name:`withdrawalQueueHash`}]},{name:`WithdrawalRequested`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalIndex`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`fee`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`data`},{type:`bytes`,name:`revealTo`}]},{name:`BatchFinalized`,type:`event`,inputs:[{type:`bytes32`,name:`withdrawalQueueHash`,indexed:!0},{type:`uint64`,name:`withdrawalBatchIndex`}]},{name:`TempoGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`tempoGasRate`}]},{name:`MaxWithdrawalsPerBlockUpdated`,type:`event`,inputs:[{type:`uint32`,name:`maxWithdrawalsPerBlock`}]},{name:`OnlySequencer`,type:`error`,inputs:[]},{name:`GasLimitTooHigh`,type:`error`,inputs:[]},{name:`OnlyZoneInbox`,type:`error`,inputs:[]},{name:`InvalidWithdrawalCount`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidEncryptedSenderCount`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidEncryptedSenderLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidFallbackRecipient`,type:`error`,inputs:[]},{name:`CallbackDataTooLarge`,type:`error`,inputs:[]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`InvalidBlockNumber`,type:`error`,inputs:[]},{name:`TooManyWithdrawalsThisBlock`,type:`error`,inputs:[]},{name:`InvalidRevealTo`,type:`error`,inputs:[]},{name:`InvalidCurrentTxHash`,type:`error`,inputs:[]},{name:`ZeroAmountWithdrawal`,type:`error`,inputs:[]},{name:`StaticCallNotAllowed`,type:`error`,inputs:[]}],xl=[{name:`relayMessage`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`token`},{type:`bytes32`,name:`senderTag`},{type:`address`,name:`target`},{type:`uint128`,name:`amount`},{type:`uint64`,name:`gasLimit`},{type:`bytes`,name:`data`}],outputs:[]}],Sl=[{name:`processedDepositQueueHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`processedDepositNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`processedTokenEnablementHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`processedEnabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`tempoPortal`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`tempoState`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`refunds`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`owner`}],outputs:[{type:`uint128`}]},{name:`claimRefund`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`uint128`,name:`amount`}]},{name:`advanceTempo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes`,name:`header`},{type:`tuple[]`,name:`deposits`,components:[{type:`uint8`,name:`depositType`},{type:`bytes`,name:`depositData`},{type:`bool`,name:`rejected`}]},{type:`tuple[]`,name:`decryptions`,components:[{type:`bytes32`,name:`sharedSecret`},{type:`uint8`,name:`sharedSecretYParity`},{type:`tuple`,name:`cpProof`,components:[{type:`bytes32`,name:`s`},{type:`bytes32`,name:`c`}]}]},{type:`tuple[]`,name:`enabledTokens`,components:[{type:`address`,name:`token`},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]}],outputs:[]},{name:`advanceTempoHeaders`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes[]`,name:`headers`}],outputs:[]},{name:`TempoAdvanced`,type:`event`,inputs:[{type:`bytes32`,name:`tempoBlockHash`,indexed:!0},{type:`uint64`,name:`tempoBlockNumber`,indexed:!0},{type:`uint256`,name:`depositsProcessed`},{type:`bytes32`,name:`newProcessedDepositQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]},{name:`TempoAdvanced`,type:`event`,inputs:[{type:`bytes32`,name:`tempoBlockHash`,indexed:!0},{type:`uint64`,name:`tempoBlockNumber`,indexed:!0},{type:`uint256`,name:`depositsProcessed`},{type:`bytes32`,name:`newProcessedDepositQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`},{type:`uint64`,name:`lastProcessedEnabledTokenCount`}]},{name:`DepositProcessed`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`}]},{name:`DepositFailed`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`DepositRejected`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`uint8`,name:`depositType`},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`address`,name:`tempoRefundRecipient`}]},{name:`WithdrawalBounceBackProcessed`,type:`event`,inputs:[{type:`address`,name:`zoneFallbackRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`WithdrawalBounceBackPending`,type:`event`,inputs:[{type:`address`,name:`zoneFallbackRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`RefundClaimed`,type:`event`,inputs:[{type:`address`,name:`recipient`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`}]},{name:`TokenEnabled`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]},{name:`OnlySequencer`,type:`error`,inputs:[]},{name:`InvalidDepositQueueHash`,type:`error`,inputs:[]},{name:`InvalidWithdrawalBounceBack`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementHash`,type:`error`,inputs:[]},{name:`MissingDecryptionData`,type:`error`,inputs:[]},{name:`ExtraDecryptionData`,type:`error`,inputs:[]},{name:`InvalidSharedSecretProof`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]}],Cl=[{type:`constructor`,inputs:[{name:`baseToken_`,type:`address`,internalType:`contract ITIP20`},{name:`quoteToken_`,type:`address`,internalType:`contract ITIP20`},{name:`oracle_`,type:`address`,internalType:`contract IPriceOracle`},{name:`addressRegistry_`,type:`address`,internalType:`contract IAddressRegistry`},{name:`owner_`,type:`address`,internalType:`address`},{name:`guardian_`,type:`address`,internalType:`address`},{name:`maxOracleAge_`,type:`uint256`,internalType:`uint256`},{name:`maxPriceDeviationBps_`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`BPS`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`addressRegistry`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IAddressRegistry`}],stateMutability:`view`},{type:`function`,name:`baseDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`baseToQuotePriceAnchor`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`baseToken`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ITIP20`}],stateMutability:`view`},{type:`function`,name:`fund`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`},{name:`memo`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`guardian`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`maxOracleAge`,inputs:[],outputs:[{name:``,type:`uint80`,internalType:`uint80`}],stateMutability:`view`},{type:`function`,name:`maxPriceDeviationBps`,inputs:[],outputs:[{name:``,type:`uint16`,internalType:`uint16`}],stateMutability:`view`},{type:`function`,name:`oracle`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IPriceOracle`}],stateMutability:`view`},{type:`function`,name:`oracleDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`pause`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`paused`,inputs:[],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`priceAnchor`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`priceScale`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`quoteExactInput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactInputFor`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`creditAfter`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactOutput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactOutputFor`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`creditAfter`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteToBasePriceAnchor`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteToken`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ITIP20`}],stateMutability:`view`},{type:`function`,name:`recipientAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}],outputs:[{name:`allowed`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`resetPriceAnchor`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`resolveRecipient`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}],outputs:[{name:`resolved`,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`roundingCredit`,inputs:[{name:`routeKey`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`credit`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`roundingRouteKey`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`setGuardian`,inputs:[{name:`newGuardian`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxOracleAge`,inputs:[{name:`newMaxOracleAge`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxPriceDeviationBps`,inputs:[{name:`newMaxPriceDeviationBps`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setOracle`,inputs:[{name:`newOracle`,type:`address`,internalType:`contract IPriceOracle`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setRecipientAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`allowed`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setTakerAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`allowed`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`swapExactInput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`minAmountOut`,type:`uint256`,internalType:`uint256`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,internalType:`bytes32`},{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`expectedOraclePrice`,type:`uint256`,internalType:`uint256`},{name:`oraclePriceToleranceBps`,type:`uint256`,internalType:`uint256`},{name:`minimumOracleUpdatedAt`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`swapExactOutput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`maxAmountIn`,type:`uint256`,internalType:`uint256`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,internalType:`bytes32`},{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`expectedOraclePrice`,type:`uint256`,internalType:`uint256`},{name:`oraclePriceToleranceBps`,type:`uint256`,internalType:`uint256`},{name:`minimumOracleUpdatedAt`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`takerAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`}],outputs:[{name:`allowed`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`unpause`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`},{name:`memo`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`Funded`,inputs:[{name:`token`,type:`address`,indexed:!0,internalType:`address`},{name:`amount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`memo`,type:`bytes32`,indexed:!0,internalType:`bytes32`}],anonymous:!1},{type:`event`,name:`GuardianUpdated`,inputs:[{name:`oldGuardian`,type:`address`,indexed:!0,internalType:`address`},{name:`newGuardian`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`MaxOracleAgeUpdated`,inputs:[{name:`oldMaxAge`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newMaxAge`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`MaxPriceDeviationBpsUpdated`,inputs:[{name:`oldMaxPriceDeviationBps`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newMaxPriceDeviationBps`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`OracleUpdated`,inputs:[{name:`oldOracle`,type:`address`,indexed:!0,internalType:`address`},{name:`newOracle`,type:`address`,indexed:!0,internalType:`address`},{name:`decimals`,type:`uint8`,indexed:!1,internalType:`uint8`}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`oldOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`pendingOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`oldOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`newOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`PausedStateChanged`,inputs:[{name:`paused`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`PriceAnchorUpdated`,inputs:[{name:`baseToQuote`,type:`bool`,indexed:!0,internalType:`bool`},{name:`oldAnchor`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newAnchor`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`RecipientPermissionUpdated`,inputs:[{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`allowed`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`RoundingCreditUpdated`,inputs:[{name:`routeKey`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`previousCredit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newCredit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TakerPermissionUpdated`,inputs:[{name:`taker`,type:`address`,indexed:!0,internalType:`address`},{name:`allowed`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`TradeExecuted`,inputs:[{name:`taker`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`customerId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`tokenIn`,type:`address`,indexed:!1,internalType:`address`},{name:`tokenOut`,type:`address`,indexed:!1,internalType:`address`},{name:`amountIn`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amountOut`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`oraclePrice`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`oracleUpdatedAt`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Withdrawn`,inputs:[{name:`token`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`amount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`memo`,type:`bytes32`,indexed:!1,internalType:`bytes32`}],anonymous:!1},{type:`error`,name:`AmountIsZero`,inputs:[]},{type:`error`,name:`CustomerIdIsZero`,inputs:[]},{type:`error`,name:`DeadlineExpired`,inputs:[{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`currentTimestamp`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`ExactBalanceDeltaFailed`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`expected`,type:`uint256`,internalType:`uint256`},{name:`actual`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`FutureOracleTimestamp`,inputs:[{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`currentTime`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InsufficientInventory`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`available`,type:`uint256`,internalType:`uint256`},{name:`required`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidAddress`,inputs:[]},{type:`error`,name:`InvalidMaxOracleAge`,inputs:[]},{type:`error`,name:`InvalidMaxPriceDeviationBps`,inputs:[{name:`supplied`,type:`uint256`,internalType:`uint256`},{name:`maximum`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidOraclePriceToleranceBps`,inputs:[{name:`supplied`,type:`uint256`,internalType:`uint256`},{name:`maximum`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidPrice`,inputs:[]},{type:`error`,name:`NotGuardianOrOwner`,inputs:[]},{type:`error`,name:`NotOwner`,inputs:[]},{type:`error`,name:`NotPaused`,inputs:[]},{type:`error`,name:`NotPendingOwner`,inputs:[]},{type:`error`,name:`OracleDecimalsChanged`,inputs:[{name:`currentDecimals`,type:`uint8`,internalType:`uint8`},{name:`proposedDecimals`,type:`uint8`,internalType:`uint8`}]},{type:`error`,name:`OraclePriceToleranceExceeded`,inputs:[{name:`expectedPrice`,type:`uint256`,internalType:`uint256`},{name:`actualPrice`,type:`uint256`,internalType:`uint256`},{name:`toleranceBps`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`OracleTimestampTooOld`,inputs:[{name:`minimumUpdatedAt`,type:`uint256`,internalType:`uint256`},{name:`actualUpdatedAt`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`Paused`,inputs:[]},{type:`error`,name:`PriceAnchorNotInitialized`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}]},{type:`error`,name:`PriceDeviationExceeded`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`anchor`,type:`uint256`,internalType:`uint256`},{name:`maxDeviationBps`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`RecipientNotAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`SameToken`,inputs:[]},{type:`error`,name:`SlippageExceeded`,inputs:[{name:`limit`,type:`uint256`,internalType:`uint256`},{name:`actual`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`StaleOraclePrice`,inputs:[{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`maxAge`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`TakerNotAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`}]},{type:`error`,name:`TokenTransferFailed`,inputs:[{name:`token`,type:`address`,internalType:`address`}]},{type:`error`,name:`UnsupportedDecimals`,inputs:[{name:`baseDecimals`,type:`uint8`,internalType:`uint8`},{name:`quoteDecimals`,type:`uint8`,internalType:`uint8`},{name:`oracleDecimals`,type:`uint8`,internalType:`uint8`}]},{type:`error`,name:`UnsupportedToken`,inputs:[{name:`token`,type:`address`,internalType:`address`}]}],wl=[...Z,...Vc,...Hc,...Uc,...Xc,...Yc,...Wc,...Gc,...Kc,...qc,...Jc,...$c,...Zc,...Qc,...el,...nl,...tl,...rl,...il,...al],Tl=[...ol,...sl,...cl,...ll,...ul,...dl,...fl,...pl,...ml,...hl,...gl,..._l,...vl],El=[...Sl,...xl,...bl,...yl],Dl=[...Cl];[...wl,...Tl,...El,...Dl];var Ol=[{name:`UnauthorizedCaller`,type:`error`,inputs:[]},{name:`KeyAlreadyExists`,type:`error`,inputs:[]},{name:`KeyNotFound`,type:`error`,inputs:[]},{name:`KeyExpired`,type:`error`,inputs:[]},{name:`SpendingLimitExceeded`,type:`error`,inputs:[]},{name:`InvalidSpendingLimit`,type:`error`,inputs:[]},{name:`InvalidSignatureType`,type:`error`,inputs:[]},{name:`ZeroPublicKey`,type:`error`,inputs:[]},{name:`ExpiryInPast`,type:`error`,inputs:[]},{name:`KeyAlreadyRevoked`,type:`error`,inputs:[]},{name:`SignatureTypeMismatch`,type:`error`,inputs:[{type:`uint8`,name:`expected`},{type:`uint8`,name:`actual`}]},{name:`CallNotAllowed`,type:`error`,inputs:[]},{name:`InvalidCallScope`,type:`error`,inputs:[]},{name:`InvalidKeyId`,type:`error`,inputs:[]},{name:`InvalidKeyAuthorizationWitness`,type:`error`,inputs:[]},{name:`KeyAuthorizationWitnessAlreadyBurned`,type:`error`,inputs:[]},{name:`LegacyAuthorizeKeySelectorChanged`,type:`error`,inputs:[{type:`bytes4`,name:`newSelector`}]},{name:`MasterIdCollision`,type:`error`,inputs:[{type:`address`,name:`master`}]},{name:`InvalidMasterAddress`,type:`error`,inputs:[]},{name:`ProofOfWorkFailed`,type:`error`,inputs:[]},{name:`VirtualAddressUnregistered`,type:`error`,inputs:[]},{name:`InvalidAccount`,type:`error`,inputs:[]},{name:`InvalidConfig`,type:`error`,inputs:[]},{name:`InvalidThreshold`,type:`error`,inputs:[]},{name:`InvalidConfigurableAccountOwner`,type:`error`,inputs:[]},{name:`InvalidWeight`,type:`error`,inputs:[]},{name:`TooManyOwners`,type:`error`,inputs:[]},{name:`DuplicateOwner`,type:`error`,inputs:[]},{name:`InvalidOwnerOrder`,type:`error`,inputs:[]},{name:`UnauthorizedConfigurableAccountCaller`,type:`error`,inputs:[]},{name:`PrimitiveRootRequired`,type:`error`,inputs:[]},{name:`UpgradeMustBeOnlyCall`,type:`error`,inputs:[]},{name:`AccountAlreadyConfigurable`,type:`error`,inputs:[]},{name:`AccountHasCode`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`IdenticalAddresses`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientReserves`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`DivisionByZero`,type:`error`,inputs:[]},{name:`InvalidSwapCalculation`,type:`error`,inputs:[]},{name:`InsufficientFeeTokenBalance`,type:`error`,inputs:[]},{name:`CannotChangeWithinBlock`,type:`error`,inputs:[]},{name:`ProtocolNonceNotSupported`,type:`error`,inputs:[]},{name:`InvalidNonceKey`,type:`error`,inputs:[]},{name:`NonceOverflow`,type:`error`,inputs:[]},{name:`ExpiringNonceReplay`,type:`error`,inputs:[]},{name:`ExpiringNonceSetFull`,type:`error`,inputs:[]},{name:`InvalidExpiringNonceExpiry`,type:`error`,inputs:[]},{name:`InvalidReceipt`,type:`error`,inputs:[]},{name:`InvalidClaimAddress`,type:`error`,inputs:[]},{name:`UnauthorizedClaimer`,type:`error`,inputs:[]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`InvalidFormat`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]},{name:`IndexAlreadySet`,type:`error`,inputs:[]},{name:`InvalidMode`,type:`error`,inputs:[]},{name:`OnlyDirectCall`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`PermitExpired`,type:`error`,inputs:[]},{name:`LogoURITooLong`,type:`error`,inputs:[]},{name:`InvalidLogoURI`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`ChannelAlreadyExists`,type:`error`,inputs:[]},{name:`ChannelNotFound`,type:`error`,inputs:[]},{name:`NotPayer`,type:`error`,inputs:[]},{name:`NotPayeeOrOperator`,type:`error`,inputs:[]},{name:`InvalidPayee`,type:`error`,inputs:[]},{name:`ZeroDeposit`,type:`error`,inputs:[]},{name:`ExpiringNonceHashNotSet`,type:`error`,inputs:[]},{name:`AmountExceedsDeposit`,type:`error`,inputs:[]},{name:`AmountNotIncreasing`,type:`error`,inputs:[]},{name:`CaptureAmountInvalid`,type:`error`,inputs:[]},{name:`CloseNotReady`,type:`error`,inputs:[]},{name:`DepositOverflow`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]},{name:`PolicyNotFound`,type:`error`,inputs:[]},{name:`PolicyNotSimple`,type:`error`,inputs:[]},{name:`InvalidPolicyType`,type:`error`,inputs:[]},{name:`IncompatiblePolicyType`,type:`error`,inputs:[]},{name:`VirtualAddressNotAllowed`,type:`error`,inputs:[]},{name:`InvalidReceivePolicyType`,type:`error`,inputs:[]},{name:`InvalidRecoveryAuthority`,type:`error`,inputs:[]},{name:`ValidatorAlreadyExists`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`NotHostPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`IngressAlreadyExists`,type:`error`,inputs:[{type:`string`,name:`ingress`}]},{name:`EmptyV1ValidatorSet`,type:`error`,inputs:[]},{name:`InvalidMigrationIndex`,type:`error`,inputs:[]},{name:`InvalidOwner`,type:`error`,inputs:[]},{name:`InvalidSignatureFormat`,type:`error`,inputs:[]},{name:`InvalidValidatorAddress`,type:`error`,inputs:[]},{name:`MigrationNotComplete`,type:`error`,inputs:[]},{name:`NotInitialized`,type:`error`,inputs:[]},{name:`NotIp`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`PublicKeyAlreadyExists`,type:`error`,inputs:[]},{name:`AddressAlreadyHasValidator`,type:`error`,inputs:[]},{name:`ValidatorAlreadyDeactivated`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`InvalidClosedLoopConfig`,type:`error`,inputs:[]},{name:`NotOwner`,type:`error`,inputs:[]},{name:`InvalidAdmin`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`DuplicateAllowedAccount`,type:`error`,inputs:[]},{name:`DuplicateZoneGateway`,type:`error`,inputs:[]},{name:`NotSequencer`,type:`error`,inputs:[]},{name:`NotAdmin`,type:`error`,inputs:[]},{name:`NotPauseAuthority`,type:`error`,inputs:[]},{name:`CapabilityAbdicated`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`AbdicationAlreadyScheduled`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`PortalIsPaused`,type:`error`,inputs:[]},{name:`NotPendingAdmin`,type:`error`,inputs:[]},{name:`InvalidProof`,type:`error`,inputs:[]},{name:`InvalidTempoBlockNumber`,type:`error`,inputs:[]},{name:`NotFactory`,type:`error`,inputs:[]},{name:`NotSelf`,type:`error`,inputs:[]},{name:`MustDelegateCall`,type:`error`,inputs:[]},{name:`CallbackRejected`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`ReentrantWithdrawal`,type:`error`,inputs:[]},{name:`EncryptionKeyExpired`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`},{type:`uint64`,name:`supersededAtBlock`}]},{name:`InvalidEncryptionKeyIndex`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`}]},{name:`NoEncryptionKeySet`,type:`error`,inputs:[]},{name:`NoEncryptionKeyAtBlock`,type:`error`,inputs:[{type:`uint64`,name:`blockNumber`}]},{name:`InvalidEphemeralPubkey`,type:`error`,inputs:[]},{name:`InvalidCiphertextLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidProofOfPossession`,type:`error`,inputs:[]},{name:`DepositTooSmall`,type:`error`,inputs:[]},{name:`TokenEnablementBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`DepositsNotActive`,type:`error`,inputs:[]},{name:`TokenAlreadyEnabled`,type:`error`,inputs:[]},{name:`TokenEnablementCursorNotInitialized`,type:`error`,inputs:[]},{name:`InvalidDepositTransition`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementTransition`,type:`error`,inputs:[]},{name:`SequencerConfigurationUnchanged`,type:`error`,inputs:[]},{name:`InvalidQuorumCertificate`,type:`error`,inputs:[]},{name:`CallbackDidNotReturnToZone`,type:`error`,inputs:[]},{name:`InvalidBouncebackRecipient`,type:`error`,inputs:[]},{name:`TokenNotEnabled`,type:`error`,inputs:[]},{name:`DepositBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`InvalidCallbackTarget`,type:`error`,inputs:[]},{name:`AccountNotAllowed`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`InvalidLeader`,type:`error`,inputs:[]},{name:`ActiveLeaderRemoved`,type:`error`,inputs:[]},{name:`LeaderAlreadyUpdatedThisBlock`,type:`error`,inputs:[]},{name:`StaleLeadershipEpoch`,type:`error`,inputs:[{type:`uint64`,name:`expected`},{type:`uint64`,name:`actual`}]}];eo(0),eo(0,42431);var kl=`0xaAAAaaAA00000000000000000000000000000000`,Al=`0xfdc0000000000000000000000000000000000000`,jl=`0xAACC000000000000000000000000000000000000`,Ml=`0xfeec000000000000000000000000000000000000`,Nl=`0x4e4F4E4345000000000000000000000000000000`,Pl=`0x20c0000000000000000000000000000000000000`,Fl=`0x5165300000000000000000000000000000000000`,Il=`0xdec0000000000000000000000000000000000000`,Ll=`0x4d50500000000000000000000000000000000000`,Rl=`0x20fc000000000000000000000000000000000000`,zl=`0x403c000000000000000000000000000000000000`;function Bl(e){let t=U(e);if(t.type===`configurable`||t.type===`keychain`)throw Error(`Configurable account owners must use primitive signatures.`);return t}function Vl(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||t?.source===`accessKey`||t?.source===`configurable`||e.calls!==void 0||e.feePayer!==void 0||e.feePayerSignature!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.accountSimulation!==void 0||e.nonceKey!==void 0||e.owner!==void 0||e.signature!==void 0||e.signatures!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:Ss(e)}function Hl(e){try{return Vl(e)===`tempo`}catch{return!1}}function Ul(t){let n=e(t,0,1);return n===`0x76`||n===`0x78`?Gl(t):Ac(t)}async function Wl(e,n){if(!Hl(e)){if(n&&`type`in n&&n.type!==`secp256k1`)throw Error("Unsupported signature type. Expected `secp256k1` but got `"+n.type+"`.");if(n&&`type`in n){let{r,s:i,yParity:a}=n?.signature;return Zs(e,{r:t(r,{size:32}),s:t(i,{size:32}),yParity:a})}return Zs(e,n)}if(Vl(e)===`tempo`)return Kl(e,n);throw Error(`Unsupported transaction type`)}function Gl(e){let{feePayerSignature:n,nonce:r,...i}=Aa(e);return{...i,nonce:Number(r??0n),feePayerSignature:n&&{r:t(n.r,{size:32}),s:t(n.s,{size:32}),yParity:n.yParity}}}async function Kl(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return U({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,accountSimulation:a,nonce:o,owner:s,...c}=e,l=(()=>{let t=e.feePayerSignature;if(t)return{r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)};if(t===null||i)return null})(),u=e.feePayerSignature!==void 0&&e.feePayerSignature!==null,d=n!==void 0||!!(a&&e.signatures),f=i===!0&&(!d||!l)||typeof i==`object`&&!d||!d&&u,p={...c,calls:c.calls?.length?c.calls:[{to:c.to||(!c.data||c.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:c.value,data:c.data}],chainId:Number(r),feePayerSignature:l,type:`tempo`,...o?{nonce:BigInt(o)}:{}},m={...p};f&&delete m.feeToken;let h=(()=>{if(n)return n;if(!a||!e.signatures)return;let t=Na(ja(m)),r=e.signatures.map(e=>Bl(e)),i=V(a.config),o=e.from;if(!o)throw Error(`A configurable account sender is required for signing.`);return U({account:o,config:i,signatures:Ri({account:o,config:i,payload:t,signatures:r})})})();if(h&&typeof e.feePayer==`object`){let t=ja(p,{signature:h}),n=Fa(t,{sender:e.from??Mi({payload:Na(t),root:!0,signature:h})}),r=await e.feePayer.sign({hash:n});return q(t,{feePayerSignature:le(r)})}return i===!0||!h&&u?h&&l?q(m,{signature:h}):h?q(m,{format:`feePayer`,sender:e.from,signature:h}):q(m,{feePayerSignature:null}):q(m,{feePayerSignature:void 0,signature:h})}function ql(e){let{access:t}=e;return t?iu(e):ru(e)}function Jl(e){let t=(()=>{if(typeof e==`string`)return;if(`upgrade`in e)return e.upgrade;let{address:t,factory:n,...r}=e;return r})(),n=(()=>{if(!t)return;let n=t.owners.map(e=>typeof e==`string`||`address`in e?{owner:e,weight:1}:e).map(({owner:e,weight:t})=>({owner:typeof e==`string`?e:e.address,weight:t})),r=t.threshold??1;return typeof e!=`string`&&`upgrade`in e?hi(e.address,{owners:n,threshold:r}):V({...t,owners:n,threshold:r})})();if(typeof e!=`string`&&!(`upgrade`in e)){if((e.address===void 0||e.address===`infer`)&&n.version!==0n)throw Error(`An initial account config must have version zero.`);if(e.address!==void 0&&e.address!==`infer`&&n.version===0n)throw Error(`A current account config must have a version.`)}let r=Fn(typeof e==`string`?e:e.address===void 0||e.address===`infer`?gi(n,{factory:e.factory??`0x7171717171717171717171717171717171717171`}):e.address),i=t?t.owners.flatMap(e=>{let t=typeof e==`string`||`address`in e?e:e.owner;return typeof t==`string`?[]:[N(t)]}):[];if(i.some(e=>e.source===`configurable`||$l(e)))throw Error(`Configurable account owners must use primitive signatures.`);let a=n?.owners.flatMap(({owner:e})=>{let t=i.find(t=>z(t.address,e));return t?[t]:[]})??[],o={address:r,config:n,owners:a,publicKey:`0x`,source:`configurable`,type:`local`,async sign({hash:e}){return W(await Xl(o,{payload:e}))},async signMessage(){throw Error("`signMessage` is not supported for configurable accounts.")},async signTransaction(e,t){let{serializer:n=Wl}=t??{},i=e;if(i.owner){let e=N(i.owner);if(e.type!==`local`)throw Error(`A local owner account is required to approve a configurable account transaction.`);if(e.source!==`root`)throw Error(`A Tempo owner account is required to approve a configurable account transaction.`);let{owner:n,...r}=i;return await e.signTransaction(r,t)}if(a.length===0)return await n(e);let s={...i,signatures:void 0,...i.feePayerSignature===void 0?{}:{feePayerSignature:null}},c=O(await n(s)),l=i.accountSimulation;if(i.from&&!z(i.from,r))throw Error(`Configurable account does not match the transaction sender.`);return await n(e,await Xl(o,{config:l?.config,payload:c,signatures:i.signatures?.map(e=>Bl(e))}))},async signTypedData(){throw Error("`signTypedData` is not supported for configurable accounts.")}};return o}function Yl(e){return e.source===`configurable`}async function Xl(e,t){let{config:n,payload:r,signatures:i=[]}=t,a=n??e.config;if(!a)throw Error(`A current account config is required for local signing.`);let o=vi({account:e.address,config:a,payload:r}),s=[...i],c=new Set,l=0;for(let e of i){let t=Mi({payload:o,signature:e}).toLowerCase(),n=a.owners.find(e=>z(e.owner,t));n&&!c.has(t)&&(c.add(t),l+=Number(n.weight))}let u=[...a.owners].sort((e,t)=>Number(t.weight)-Number(e.weight)||e.owner.toLowerCase().localeCompare(t.owner.toLowerCase()));for(let t of u){if(l>=Number(a.threshold))break;let n=t.owner.toLowerCase();if(c.has(n))continue;let r=e.owners.find(e=>z(e.address,t.owner));if(r){if(!r.sign)throw Error(`Configurable account owner account cannot sign.`);if(s.push(Bl(await r.sign({hash:o}))),c.add(n),l+=Number(t.weight),l>=Number(a.threshold))break}}if(l<Number(a.threshold))throw Error(`Local owners do not meet the threshold.`);return U({account:e.address,config:a,signatures:Ri({account:e.address,config:a,payload:r,signatures:s})})}function Zl(e,t={}){let{id:n}=e,r=xe(e.publicKey);return ql({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await ni({...t,challenge:e,credentialId:n});return W({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function Ql(e){let{chainId:t,channel:n,cumulativeAmount:r}=e;return Xa({chainId:t,channelId:typeof n==`string`?n:Ja(n,{chainId:t}),cumulativeAmount:r})}function $l(e){return e.source===`accessKey`&&`accessKeyAddress`in e}function eu(e,t){let{admin:n,chainId:r,expiry:i,key:a,limits:o,scopes:s,witness:c}=t,{accessKeyAddress:l,keyType:u}=au(a),d=$l(e)||Yl(e)?{account:e.address}:{},f=n?{}:{expiry:i,limits:o,scopes:s};return Xi({address:l,chainId:r,type:u,witness:c,...n?{isAdmin:!0}:{},...d,...f})}async function tu(e,t){let{admin:n,chainId:r,expiry:i,key:a,limits:o,configurable:s,scopes:c,signatures:l,witness:u}=t,{accessKeyAddress:d,keyType:f}=au(a),p=$l(e),m=Yl(e),h=p||m?{account:e.address}:{},g=n?{}:{expiry:i,limits:o,scopes:c},_=eu(e,t);return qi({address:d,chainId:r,signature:U(await(async()=>{if(p)return e.sign({hash:_,raw:!0});if(m){if(!s)throw Error(`Configurable account state is required to sign a key authorization.`);return W(await Xl(e,{config:s.config,payload:_,signatures:l?.map(e=>Bl(e))}))}return e.sign({hash:_})})()),type:f,...u?{witness:u}:{},...n?{isAdmin:!0}:{},...h,...g})}function nu(e){let{keyType:n=`secp256k1`,parentAddress:r,source:i=`privateKey`,internal_version:a=`v2`}=e,o=r??R(e.publicKey),s=be(e.publicKey,{includePrefix:!1});async function c({hash:t,raw:n}){if(n)return await e.sign({hash:t});let i=r&&a===`v2`?O(T(`0x04`,t,r)):t,o=await e.sign({hash:i});return r?W(U({userAddress:r,inner:U(o),type:`keychain`,version:a})):o}return{address:Fn(o),keyType:n,sign:c,async signAuthorization(e){let{chainId:n,nonce:r}=e,i=e.contractAddress??e.address,a=U(await c({hash:Uo({address:i,chainId:n,nonce:r})}));if(a.type!==`secp256k1`)throw Error("Unsupported signature type. Expected `secp256k1` but got `"+a.type+"`.");let{r:o,s,yParity:l}=a.signature;return{address:i,chainId:n,nonce:r,r:t(o,{size:32}),s:t(s,{size:32}),yParity:l}},async signMessage(e){let{message:t}=e;return await c({hash:pc(t)})},async signTransaction(e,t){let{serializer:n=Wl}=t??{},r=`feePayerSignature`in e&&e.feePayerSignature?{...e,feePayerSignature:null}:e,i=O(await n(r)),{accountSimulation:a,from:o}=e;if(a){if(!o)throw Error(`A configurable account sender is required for signing.`);return await c({hash:vi({account:o,config:V(a.config),payload:i}),raw:!0})}return await n(e,U(await c({hash:i})))},async signTypedData(e){return await c({hash:xc(e)})},async signVoucher(e){let t=Ql(e);return r?await c({hash:t,raw:!0}):await c({hash:t})},publicKey:s,source:i,type:`local`}}function ru(e){let t=nu(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a,scopes:o,witness:s,admin:c}=n,{accessKeyAddress:l,keyType:u}=au(e),d=c?{}:{expiry:i,limits:a,scopes:o};return qi({address:l,chainId:r,signature:U(await t.sign({hash:Xi({address:l,chainId:r,type:u,witness:s,...c?{isAdmin:!0}:{},...d})})),type:u,...s?{witness:s}:{},...c?{isAdmin:!0}:{},...d})}}}function iu(e){let{access:t,keyAuthorizationManager:n}=e,{address:r}=N(t);return{...nu({...e,parentAddress:r}),accessKeyAddress:R(e.publicKey),keyAuthorizationManager:n,source:`accessKey`}}function au(e){return`accessKeyAddress`in e?{accessKeyAddress:e.accessKeyAddress,keyType:e.keyType}:`publicKey`in e&&e.publicKey?{accessKeyAddress:R(xe(e.publicKey)),keyType:e.type}:{accessKeyAddress:e.address,keyType:e.type}}var ou=class extends F{constructor({cause:e,error:t,hints:n},{details:r,docsPath:i,name:a=`TempoExecutionError`,shortMessage:o=t.message}={}){let s=e.metaMessages?.findIndex(e=>/^(Contract Call|Request Arguments):/.test(e));super(o,{cause:e,docsPath:i,metaMessages:[...r?[Oe(r),` `]:[],...n.length?[`How to fix:`,...n.map(e=>`- ${e}`),` `]:[],...s!==void 0&&s>=0?e.metaMessages.slice(s):[]],name:a}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"errorName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"hints",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t.abiItem,this.args=t.args,this.data=t.data,this.errorName=t.errorName,this.hints=n}},su=[`genesis`,`t0`,`t1`,`t1a`,`t1b`,`t1c`,`t2`,`t3`,`t4`,`t5`,`t6`,`t7`,`t8`,`t9`,`t10`,`t11`,`t12`,`t13`,`t14`];function cu(e,t){let n=su.indexOf(e);return n!==-1&&n<su.indexOf(t)}function Q(e,t={}){return(async(n,r)=>{try{return await e(n,r)}catch(e){let{toExecutionError:i}=await import(`./resolveError-DSqzEjUE.js`);throw await i(e,{...t,client:n,parameters:r})}})}function lu(e){let t=e.parameters.feeToken??e.client.chain?.feeToken;return t==null?void 0:Ta(t)}function uu(e,t){if(e!==void 0)return t===void 0?e.toString():`${Bc(e,t)} (${e})`}function du(e){if(!e)return;let t=Number(e)*1e3;return Math.abs(t)<=864e13?new Date(t).toISOString():e.toString()}function fu(e,t){let{decimals:n,token:r}=t;if(e&&typeof r==`string`){let t=mu(e,r);if(t)return{address:t.address,decimals:n??t.decimals}}let i=Ta(r);return{address:i,decimals:n??(e?gu(e,i):void 0)}}function pu(e,t){let n=e.tokens,r=e.chain?.id;if(!n||r===void 0)return;if(typeof t==`string`){let n=mu(e,t);if(n)return n}let i=Ta(t);for(let e of n){let t=hu(e,r);if(t&&_t(t.address,i))return t}}function mu(e,t){let n=e.tokens,r=e.chain?.id;if(!n||r===void 0)return;let i=t.toLowerCase();for(let e of n)if(e.symbol?.toLowerCase()===i)return hu(e,r)}function hu(e,t){let n=e.addresses[t];if(n)return{address:n,currency:e.currency,decimals:e.decimals,name:e.name,popular:e.popular,symbol:e.symbol}}function gu(e,t){let n=e.tokens,r=e.chain?.id;if(n&&r!==void 0)for(let e of n){let n=hu(e,r);if(n&&_t(n.address,t))return n.decimals}}async function _u(e,t){let{address:n,decimals:r}=fu(e,t);return r===void 0?{address:n,decimals:await Ls(e,{abi:$c,address:n,functionName:`decimals`})}:{address:n,decimals:r}}function vu(e){let{account:t,chain:n,feePayer:r,feeToken:i,gas:a,keyAuthorization:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,nonceKey:u,owner:d,validAfter:f,validBefore:p}=e;return{account:t,chain:n,feePayer:r,feeToken:i,gas:a,keyAuthorization:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,nonceKey:u,owner:d,validAfter:f,validBefore:p}}function yu(e){return e.length===2?e:[void 0,e[0]]}function $(e){return{...e,abi:[...e.abi,...Ol],data:It(e),to:e.address}}var bu=`0x20c000000000000000000000`;function xu(e){return!!e?.toLowerCase().startsWith(bu)}var Su={0:`secp256k1`,1:`p256`,2:`webAuthn`,3:`configurable`},Cu={true:`limited`,false:`unlimited`};async function wu(e,t){return wu.inner(Us,e,t)}(function(e){async function t(e,t,n){let{accessKey:r,admin:i,chainId:a=t.chain?.id,expiry:o,limits:s,scopes:c,witness:l,...u}=n,d=u.account??t.account;if(!d)throw Error(`account is required.`);if(!a)throw Error(`chainId is required.`);let f=await Mu(t,{account:d,accessKey:r,chainId:a,admin:i,expiry:o,limits:s,scopes:c,witness:l});return await Q(e,{hints:{KeyAlreadyExists:[`This access key is already authorized. Update its spending limits instead.`]}})(t,{...u,keyAuthorization:f})}e.inner=t;function n(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyAuthorized`,strict:!0});if(!t)throw Error("`KeyAuthorized` event not found.");return t}e.extractEvent=n})(wu||={});async function Tu(e,t){return Tu.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{witness:i,...a}=r,o=e.call({witness:i});return await Q(t)(n,{...a,...o})}e.inner=t;function n(e){let{witness:t}=e;return $({address:kl,abi:Z,functionName:`burnKeyAuthorizationWitness`,args:[t]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyAuthorizationWitnessBurned`,strict:!0});if(!t)throw Error("`KeyAuthorizationWitnessBurned` event not found.");return t}e.extractEvent=r})(Tu||={});async function Eu(e,t){let{account:n=e.account,accessKey:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n),o=await Q(Ls)(e,{...i,account:null,...Eu.call({account:a.address,accessKey:r})});return{address:o.keyId,keyType:Su[o.signatureType]??`secp256k1`,expiry:o.expiry,spendPolicy:Cu[`${o.enforceLimits}`],isRevoked:o.isRevoked}}(function(e){function t(e){let{account:t,accessKey:n}=e;return $({address:kl,abi:Z,functionName:`getKey`,args:[t,Fu(n)]})}e.call=t})(Eu||={});async function Du(e,t){let{account:n=e.account,accessKey:r,token:i,...a}=t;if(!n)throw Error(`account is required.`);let o=N(n),s=e.chain?.hardfork;if(s&&cu(s,`t3`))return{remaining:await Q(Ls)(e,{...a,...Du.call({account:o.address,accessKey:r,token:i})}),periodEnd:void 0};let[c,l]=await Q(Ls)(e,{...a,...Du.callWithPeriod({account:o.address,accessKey:r,token:i})});return{remaining:c,periodEnd:l}}(function(e){function t(e){let{account:t,accessKey:n,token:r}=e;return $({address:kl,abi:Z,functionName:`getRemainingLimit`,args:[t,Fu(n),r]})}e.call=t;function n(e){let{account:t,accessKey:n,token:r}=e;return $({address:kl,abi:Z,functionName:`getRemainingLimitWithPeriod`,args:[t,Fu(n),r]})}e.callWithPeriod=n})(Du||={});async function Ou(e,t){let{account:n=e.account,accessKey:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n);return Q(Ls)(e,{...i,account:null,...Ou.call({account:a.address,accessKey:r})})}(function(e){function t(e){let{account:t,accessKey:n}=e;return $({address:kl,abi:Z,functionName:`isAdminKey`,args:[t,Fu(n)]})}e.call=t})(Ou||={});async function ku(e,t){let{account:n=e.account,witness:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n);return Q(Ls)(e,{...i,account:null,...ku.call({account:a.address,witness:r})})}(function(e){function t(e){let{account:t,witness:n}=e;return $({address:kl,abi:Z,functionName:`isKeyAuthorizationWitnessBurned`,args:[t,n]})}e.call=t})(ku||={});async function Au(e,t){return Au.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,...a}=r,o=e.call({accessKey:i});return await Q(t)(n,{...a,...o})}e.inner=t;function n(e){let{accessKey:t}=e;return $({address:kl,abi:Z,functionName:`revokeKey`,args:[Fu(t)]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyRevoked`,strict:!0});if(!t)throw Error("`KeyRevoked` event not found.");return t}e.extractEvent=r})(Au||={});async function ju(e,t){let{chainId:n=e.chain?.id}=t,r=t.account??e.account;if(!r)throw Error(`account is required.`);if(!n)throw Error(`chainId is required.`);let i=N(r),a=await(async()=>{if(`configurable`in t)return t.configurable;if(i.source!==`configurable`)return;let e=i;if(!e.config)throw Error(`An account config is required to prepare a key authorization.`);return{config:e.config}})(),o=eu(i,{...t,chainId:BigInt(n),key:t.accessKey}),s=i.source===`configurable`&&a?vi({account:i.address,config:a.config,payload:o}):o;return{...t,account:i,chainId:n,configurable:a,signPayload:s}}async function Mu(e,t){let{accessKey:n,account:r,chainId:i,configurable:a,signPayload:o,...s}=`signPayload`in t?t:await ju(e,t);return tu(r,{chainId:BigInt(i),key:n,configurable:a,...s})}async function Nu(e,t){return Nu.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,token:a,limit:o,...s}=r,c=e.call({accessKey:i,token:a,limit:o});return await Q(t)(n,{...s,...c})}e.inner=t;function n(e){let{accessKey:t,token:n,limit:r}=e;return $({address:kl,abi:Z,functionName:`updateSpendingLimit`,args:[Fu(t),n,r]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`SpendingLimitUpdated`,strict:!0});if(!t)throw Error("`SpendingLimitUpdated` event not found.");return t}e.extractEvent=r})(Nu||={});async function Pu(e,t){let{account:n,admin:r,hash:i,signature:a,...o}=t;return Q(Ls)(e,{...o,...Pu.call({account:n,admin:r,hash:i,signature:a})})}(function(e){function t(e){let{account:t,admin:n=!0,hash:r,signature:i}=e;return $({address:Fl,abi:Kc,functionName:n?`verifyKeychainAdmin`:`verifyKeychain`,args:[t,r,i]})}e.call=t})(Pu||={});function Fu(e){return typeof e==`string`?e:e.accessKeyAddress}var Iu=class extends ou{constructor(e,t={}){let{account:n,accessKey:r}=e;super(e,{shortMessage:`Access key "${r}" failed: ${e.error.message}`,...t,details:{account:n,"access key":r,...t.details},docsPath:`/tempo/guides/access-keys/manage`,name:t.name??`AccessKeyError`}),Object.defineProperty(this,"account",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"accessKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.account=n,this.accessKey=r}},Lu=class extends Iu{constructor(e){let{amount:t,decimals:n,fee:r,periodEnd:i,remaining:a,token:o}=e;super(e,{details:{token:o,amount:uu(t,n),remaining:uu(a,n),"exceeded by":t!==void 0&&a!==void 0?uu(t-a,n):void 0,"resets at":du(i)},name:`AccessKeySpendingLimitExceededError`,shortMessage:`Access key "${e.accessKey}" exceeded its spending limit${o?` for token "${o}"`:``}${r?` while paying fees`:``}.`}),Object.defineProperty(this,"amount",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"decimals",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fee",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"periodEnd",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"remaining",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"token",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.amount=t,this.decimals=n,this.fee=r,this.periodEnd=i,this.remaining=a,this.token=o}},Ru=class extends Iu{constructor(e){super(e,{details:{"expired at":du(e.expiry)},name:`AccessKeyExpiredError`,shortMessage:`Access key "${e.accessKey}" has expired.`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=e.expiry}},zu=class extends Iu{constructor(e){let{selector:t,target:n}=e;super(e,{details:{target:n,selector:t},name:`AccessKeyCallNotAllowedError`,shortMessage:`Access key "${e.accessKey}" is not allowed to make this call.`}),Object.defineProperty(this,"selector",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"target",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.selector=t,this.target=n}},Bu=class extends Iu{constructor(e){let{expiry:t,limited:n}=e;super(e,{details:{expires:du(t),"spending limits":n===void 0?void 0:n?`enforced`:`none`},name:`AccessKeyAlreadyExistsError`,shortMessage:`Access key "${e.accessKey}" is already authorized on account "${e.account}".`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"limited",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=t,this.limited=n}},Vu=class extends Iu{constructor(e){let[t,n]=(e.error.args??[]).map(e=>Su[Number(e)]);super(e,{details:{expected:t,actual:n},name:`AccessKeySignatureTypeMismatchError`,shortMessage:`Access key "${e.accessKey}" signed with a ${n??`different`} key, but was authorized as a ${t??`different`} key.`}),Object.defineProperty(this,"expected",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"actual",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expected=t,this.actual=n}},Hu=class extends Iu{constructor(e){let{expiry:t,minimum:n}=e;super(e,{details:{expiry:du(t),minimum:du(n)},name:`AccessKeyExpiryInPastError`,shortMessage:`Access key "${e.accessKey}" expiry must be later${n?` than ${du(n)}`:``}.`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"minimum",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=t,this.minimum=n}},Uu={address:kl,abi:Z};function Wu(e){let{call:t,parameters:n,signer:r}=e;if(!r?.accessKey||t&&_t(t.address,`0xaAAAaaAA00000000000000000000000000000000`))return;let i=n.keyAuthorization?.address;if(!i||_t(i,r.accessKey))return{...e.base,account:r.address,accessKey:r.accessKey}}function Gu(e){let{feePayer:t}=e.parameters;if(typeof t!=`object`)return;let n=N(t);if(n.source===`accessKey`&&`accessKeyAddress`in n)return{...e.base,account:n.address,accessKey:n.accessKeyAddress}}function Ku(e){let{call:t,parameters:n,signer:r}=e,i=n.keyAuthorization?.address??t?.arg(`keyId`);if(r&&i)return{...e.base,account:r.address,accessKey:i}}var qu={...Object.fromEntries(Z.flatMap(e=>e.type===`error`?[[Ot(e),e=>{let t=Wu(e);return t&&new Iu(t)}]]:[])),"CallNotAllowed()":e=>{let t=Wu(e);if(t)return new zu({...t,selector:e.parameters.data?.slice(0,10),target:e.call?.address??e.parameters.to})},"ExpiryInPast()":e=>{let t=Ku(e);if(!t)return;let[,n,r]=/expiry (\d+) <= min allowed (\d+)/.exec(e.details)??[],i=e.parameters.keyAuthorization?.expiry??e.call?.arg(`expiry`)??e.call?.arg(`config`)?.expiry;return new Hu({...t,expiry:n?BigInt(n):i==null?void 0:BigInt(i),minimum:r?BigInt(r):void 0})},"KeyAlreadyExists()":async e=>{let t=Ku(e);if(!t)return;let[n]=await e.read([{...Uu,functionName:`getKey`,args:[t.account,t.accessKey]}]);return new Bu({...t,expiry:n?.result?.expiry,limited:n?.result?.enforceLimits})},"KeyExpired()":async e=>{let t=Wu(e);if(!t)return;let[n]=await e.read([{...Uu,functionName:`getKey`,args:[t.account,t.accessKey]}]);return new Ru({...t,expiry:n?.result?.expiry})},"SignatureTypeMismatch(uint8,uint8)":e=>{let t=Wu(e)??Ku(e);return t&&new Vu(t)},"SpendingLimitExceeded()":async e=>{let t=e.validation,n=t&&e.parameters.feePayer?Gu(e):Wu(e);if(!n)return;let r=t?lu(e):xu(e.call?.address)?e.call.address:void 0;if(!r)return new Lu({...n,fee:t,hints:t?[...n.hints,`Pay fees with another token.`]:n.hints});let i=[n.account,n.accessKey,r],[a,o,s]=await e.read([{...Uu,functionName:`getRemainingLimitWithPeriod`,args:i},{...Uu,functionName:`getRemainingLimit`,args:i},{address:r,abi:$c,functionName:`decimals`}]);return new Lu({...n,amount:t?void 0:e.call?.arg(`amount`),decimals:s?.result,fee:t,periodEnd:a?.result?.[1]||void 0,remaining:a?.result?.[0]??o?.result,token:r})}};export{js as $,Ta as $t,Rl as A,xr as An,fo as At,Zc as B,$t as Bn,Ao as Bt,jl as C,oi as Cn,go as Ct,Fl as D,_r as Dn,io as Dt,Pl as E,Vr as En,mo as Et,Yc as F,Fn,jo as Ft,pc as G,Aa as Gt,el as H,Ga as Ht,Wc as I,In,wo as It,Us as J,ja as Jt,Zs as K,Ma as Kt,Kc as L,R as Ln,Co as Lt,Hc as M,Un as Mn,po as Mt,Ol as N,Wn as Nn,vo as Nt,Il as O,vr as On,bo as Ot,Xc as P,L as Pn,Eo as Pt,Fs as Q,wa as Qt,qc as R,z as Rn,yo as Rt,Al as S,xi as Sn,ao as St,Nl as T,Xr as Tn,oo as Tt,Bc as U,Ja as Ut,Qc as V,J as Vt,xc as W,qa as Wt,Rs as X,q as Xt,Bs as Y,Na as Yt,Ls as Z,Da as Zt,Zl as _,hi as _n,xo as _t,xu as a,$i as an,$o as at,Hl as b,yi as bn,lo as bt,fu as c,ki as cn,Xo as ct,du as d,Ii as dn,Lo as dt,ga as en,As as et,lu as f,W as fn,Po as ft,Jl as g,pi as gn,Do as gt,ql as h,V as hn,ko as ht,pu as i,Xi as in,ts as it,zl as j,Jn as jn,So as jt,Ll as k,br as kn,uo as kt,_u as l,Pi as ln,Wo as lt,ou as m,Bi as mn,Oo as mt,Eu as n,Zi as nn,ws as nt,vu as o,ea as on,Qo as ot,Q as p,zi as pn,No as pt,Ws as q,Ea as qt,$ as r,Ji as rn,ns as rt,yu as s,K as sn,Zo as st,qu as t,ba as tn,ks as tt,uu as u,Mi as un,Uo as ut,tu as v,_i as vn,To as vt,Ml as w,Jr as wn,ho as wt,Wl as x,bi as xn,so as xt,Ul as y,vi as yn,co as yt,$c as z,B as zn,_o as zt};
|
|
9
|
-
//# sourceMappingURL=accessKey-
|
|
8
|
+
`;function fc(e){let t=typeof e==`string`?Ke(e):typeof e.raw==`string`?e.raw:P(e.raw),n=Ke(`${dc}${xt(t)}`);return Ut([n,t])}function pc(e,t){return O(fc(e),t)}var mc=class extends F{constructor({domain:e}){super(`Invalid domain "${St(e)}".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},hc=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \`${e}\` must be one of \`${JSON.stringify(Object.keys(t))}\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:["Check that the primary type is a key in `types`."]})}},gc=class extends F{constructor({type:e}){super(`Struct type "${e}" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}},_c=class extends F{constructor({type:e}){let t=e.replace(/^(u?int)/,`$&256`);super(`Type "${e}" is not a valid EIP-712 type.`,{metaMessages:[`Use "${t}" instead.`],name:`InvalidTypedDataTypeError`})}};function vc(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.replace(/(\[[0-9]*\])+$/,``);if(s===`int`||s===`uint`)throw new _c({type:r});let c=r.match(vt);if(c&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=c;j(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Vt(o))throw new tt({address:o});let l=r.match(bt);if(l){let[e,t]=l;if(t&&xt(o)!==Number.parseInt(t,10))throw new ke({expectedSize:Number.parseInt(t,10),givenSize:xt(o)})}let u=i[r];u&&(bc(r),a(u,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new mc({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`){if(i[r])a(i[r],n);else throw new hc({primaryType:r,types:i})}}function yc({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},typeof e?.version==`string`&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function bc(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new gc({type:e})}function xc(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:yc({domain:t}),...e.types};vc({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Sc({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Cc({data:n,primaryType:r,types:i})),O(Ut(a))}function Sc({domain:e,types:t}){return Cc({data:e,primaryType:`EIP712Domain`,types:t})}function Cc({data:e,primaryType:t,types:n}){let r=wc({data:e,primaryType:t,types:n});return O(r)}function wc({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Tc({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Oc({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return Tt(r,i)}function Tc({primaryType:e,types:t}){let n=Xe(Ec({primaryType:e,types:t}));return O(n)}function Ec({primaryType:e,types:t}){let n=``,r=Dc({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Dc({primaryType:e,types:t},n=new Set){let r=e.match(/^\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Dc({primaryType:e.type,types:t},n);return n}function Oc({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},O(wc({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},O(r)];if(n===`string`)return[{type:`bytes32`},O(Xe(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Oc({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},O(Tt(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}function kc(e){let t=Rt(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&A(t)>=192)return`legacy`;throw new Le({serializedType:t})}function Ac(e){let t=kc(e);return t===`eip1559`?Nc(e):t===`eip2930`?Pc(e):t===`eip4844`?Mc(e):t===`eip7702`?jc(e):Fc(e)}function jc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new ot({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:A(n),type:`eip7702`};return M(s)&&s!==`0x`&&(h.to=s),M(o)&&o!==`0x`&&(h.gas=k(o)),M(l)&&l!==`0x`&&(h.data=l),M(r)&&(h.nonce=r===`0x`?0:A(r)),M(c)&&c!==`0x`&&(h.value=k(c)),M(a)&&a!==`0x`&&(h.maxFeePerGas=k(a)),M(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(h.accessList=Lc(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=Rc(d)),Gs(h),{...t.length===13?zc(t):void 0,...h}}function Mc(e){let t=Ic(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(r.length!==11&&r.length!==14)throw new ot({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:A(a),to:u,type:`eip4844`};return M(l)&&l!==`0x`&&(S.gas=k(l)),M(f)&&f!==`0x`&&(S.data=f),M(o)&&(S.nonce=o===`0x`?0:A(o)),M(d)&&d!==`0x`&&(S.value=k(d)),M(m)&&m!==`0x`&&(S.maxFeePerBlobGas=k(m)),M(c)&&c!==`0x`&&(S.maxFeePerGas=k(c)),M(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=k(s)),p.length!==0&&p!==`0x`&&(S.accessList=Lc(p)),y&&b&&x&&(S.sidecars=xs({blobs:y,commitments:b,proofs:x})),Ks(S),{...r.length===14?zc(r):void 0,...S}}function Nc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(t.length!==9&&t.length!==12)throw new ot({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:A(n),type:`eip1559`};return M(s)&&s!==`0x`&&(m.to=s),M(o)&&o!==`0x`&&(m.gas=k(o)),M(l)&&l!==`0x`&&(m.data=l),M(r)&&(m.nonce=r===`0x`?0:A(r)),M(c)&&c!==`0x`&&(m.value=k(c)),M(a)&&a!==`0x`&&(m.maxFeePerGas=k(a)),M(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=k(i)),u.length!==0&&u!==`0x`&&(m.accessList=Lc(u)),qs(m),{...t.length===12?zc(t):void 0,...m}}function Pc(e){let t=Ic(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(t.length!==8&&t.length!==11)throw new ot({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:A(n),type:`eip2930`};return M(o)&&o!==`0x`&&(p.to=o),M(a)&&a!==`0x`&&(p.gas=k(a)),M(c)&&c!==`0x`&&(p.data=c),M(r)&&(p.nonce=r===`0x`?0:A(r)),M(s)&&s!==`0x`&&(p.value=k(s)),M(i)&&i!==`0x`&&(p.gasPrice=k(i)),l.length!==0&&l!==`0x`&&(p.accessList=Lc(l)),Js(p),{...t.length===11?zc(t):void 0,...p}}function Fc(e){let t=oc(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(t.length!==6&&t.length!==9)throw new ot({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(M(a)&&a!==`0x`&&(d.to=a),M(i)&&i!==`0x`&&(d.gas=k(i)),M(s)&&s!==`0x`&&(d.data=s),M(n)&&(d.nonce=n===`0x`?0:A(n)),M(o)&&o!==`0x`&&(d.value=k(o)),M(r)&&r!==`0x`&&(d.gasPrice=k(r)),Ys(d),t.length===6)return d;let f=M(c)&&c!==`0x`?k(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new ze({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Ic(e){return oc(`0x${e.slice(4)}`,`hex`)}function Lc(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Vt(r,{strict:!1}))throw new tt({address:r});t.push({address:r,storageKeys:i.map(e=>uc(e)?e:Ze(e))})}return t}function Rc(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:A(r),nonce:a===`0x`?0:A(a),...zc([o,s,c])})}return t}function zc(e){let t=e.slice(-3),n=t[0]===`0x`?0n:k(t[0]);if(n!==0n&&n!==1n)throw new At({yParity:n});let r=n===0n?27n:28n;return{r:rt(t[1],{size:32}),s:rt(t[2],{size:32}),v:r,yParity:r===27n?0:1}}function Bc(e,t){return Et(e,t)}var Z=[{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`}]}],outputs:[]},{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`tuple`,name:`config`,components:[{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`},{type:`uint64`,name:`period`}]},{type:`bool`,name:`allowAnyCalls`},{type:`tuple[]`,name:`allowedCalls`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]}],outputs:[]},{name:`authorizeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`tuple`,name:`config`,components:[{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`tuple[]`,name:`limits`,components:[{type:`address`,name:`token`},{type:`uint256`,name:`amount`},{type:`uint64`,name:`period`}]},{type:`bool`,name:`allowAnyCalls`},{type:`tuple[]`,name:`allowedCalls`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]},{type:`bytes32`,name:`witness`}],outputs:[]},{name:`authorizeAdminKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`uint8`,name:`signatureType`},{type:`bytes32`,name:`witness`}],outputs:[]},{name:`burnKeyAuthorizationWitness`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`witness`}],outputs:[]},{name:`revokeKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`}],outputs:[]},{name:`updateSpendingLimit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`token`},{type:`uint256`,name:`newLimit`}],outputs:[]},{name:`setAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}],outputs:[]},{name:`removeAllowedCalls`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`keyId`},{type:`address`,name:`target`}],outputs:[]},{name:`getKey`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`tuple`,components:[{type:`uint8`,name:`signatureType`},{type:`address`,name:`keyId`},{type:`uint64`,name:`expiry`},{type:`bool`,name:`enforceLimits`},{type:`bool`,name:`isRevoked`}]}]},{name:`getRemainingLimit`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`}]},{name:`getRemainingLimitWithPeriod`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`},{type:`address`,name:`token`}],outputs:[{type:`uint256`,name:`remaining`},{type:`uint64`,name:`periodEnd`}]},{name:`getAllowedCalls`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`bool`,name:`isScoped`},{type:`tuple[]`,name:`scopes`,components:[{type:`address`,name:`target`},{type:`tuple[]`,name:`selectorRules`,components:[{type:`bytes4`,name:`selector`},{type:`address[]`,name:`recipients`}]}]}]},{name:`isKeyAuthorizationWitnessBurned`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`witness`}],outputs:[{type:`bool`}]},{name:`isAdminKey`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`address`,name:`keyId`}],outputs:[{type:`bool`}]},{name:`getTransactionKey`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`KeyAuthorized`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`uint8`,name:`signatureType`},{type:`uint64`,name:`expiry`}]},{name:`AdminKeyAuthorized`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0}]},{name:`KeyRevoked`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0}]},{name:`SpendingLimitUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`newLimit`}]},{name:`AccessKeySpend`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`publicKey`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`},{type:`uint256`,name:`remainingLimit`}]},{name:`KeyAuthorizationWitness`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`witness`,indexed:!0}]},{name:`KeyAuthorizationWitnessBurned`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`witness`,indexed:!0}]},{name:`UnauthorizedCaller`,type:`error`,inputs:[]},{name:`KeyAlreadyExists`,type:`error`,inputs:[]},{name:`KeyNotFound`,type:`error`,inputs:[]},{name:`KeyExpired`,type:`error`,inputs:[]},{name:`SpendingLimitExceeded`,type:`error`,inputs:[]},{name:`InvalidSpendingLimit`,type:`error`,inputs:[]},{name:`InvalidSignatureType`,type:`error`,inputs:[]},{name:`ZeroPublicKey`,type:`error`,inputs:[]},{name:`ExpiryInPast`,type:`error`,inputs:[]},{name:`KeyAlreadyRevoked`,type:`error`,inputs:[]},{name:`SignatureTypeMismatch`,type:`error`,inputs:[{type:`uint8`,name:`expected`},{type:`uint8`,name:`actual`}]},{name:`CallNotAllowed`,type:`error`,inputs:[]},{name:`InvalidCallScope`,type:`error`,inputs:[]},{name:`InvalidKeyId`,type:`error`,inputs:[]},{name:`InvalidKeyAuthorizationWitness`,type:`error`,inputs:[]},{name:`KeyAuthorizationWitnessAlreadyBurned`,type:`error`,inputs:[]},{name:`LegacyAuthorizeKeySelectorChanged`,type:`error`,inputs:[{type:`bytes4`,name:`newSelector`}]}],Vc=[{name:`registerVirtualMaster`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`salt`}],outputs:[{type:`bytes4`,name:`masterId`}]},{name:`getMaster`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes4`,name:`masterId`}],outputs:[{type:`address`}]},{name:`resolveRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`to`}],outputs:[{type:`address`,name:`effectiveRecipient`}]},{name:`resolveVirtualAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`virtualAddr`}],outputs:[{type:`address`,name:`master`}]},{name:`isVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`}]},{name:`decodeVirtualAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`,name:`isVirtual`},{type:`bytes4`,name:`masterId`},{type:`bytes6`,name:`userTag`}]},{name:`isImplicitlyApproved`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`addr`}],outputs:[{type:`bool`}]},{name:`MasterRegistered`,type:`event`,inputs:[{type:`bytes4`,name:`masterId`,indexed:!0},{type:`address`,name:`masterAddress`,indexed:!0}]},{name:`MasterIdCollision`,type:`error`,inputs:[{type:`address`,name:`master`}]},{name:`InvalidMasterAddress`,type:`error`,inputs:[]},{name:`ProofOfWorkFailed`,type:`error`,inputs:[]},{name:`VirtualAddressUnregistered`,type:`error`,inputs:[]}],Hc=[{name:`deriveAccount`,type:`function`,stateMutability:`pure`,inputs:[{type:`bytes32`,name:`salt`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[{type:`address`,name:`account`}]},{name:`getConfigCommitment`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bytes32`,name:`commitment`}]},{name:`updateConfig`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`current`,components:[{type:`bytes32`,name:`salt`},{type:`uint64`,name:`version`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[]},{name:`upgradeAccount`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}],outputs:[{type:`bytes32`,name:`commitment`}]},{name:`ConfigurableAccountConfigUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`salt`},{type:`uint64`,name:`version`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{name:`AccountUpgraded`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`bytes32`,name:`commitment`,indexed:!0},{type:`bytes32`,name:`salt`},{type:`uint8`,name:`threshold`},{type:`tuple[]`,name:`owners`,components:[{type:`address`,name:`owner`},{type:`uint8`,name:`weight`}]}]},{name:`InvalidAccount`,type:`error`,inputs:[]},{name:`InvalidConfig`,type:`error`,inputs:[]},{name:`InvalidThreshold`,type:`error`,inputs:[]},{name:`InvalidConfigurableAccountOwner`,type:`error`,inputs:[]},{name:`InvalidWeight`,type:`error`,inputs:[]},{name:`TooManyOwners`,type:`error`,inputs:[]},{name:`DuplicateOwner`,type:`error`,inputs:[]},{name:`InvalidOwnerOrder`,type:`error`,inputs:[]},{name:`UnauthorizedConfigurableAccountCaller`,type:`error`,inputs:[]},{name:`PrimitiveRootRequired`,type:`error`,inputs:[]},{name:`UpgradeMustBeOnlyCall`,type:`error`,inputs:[]},{name:`AccountAlreadyConfigurable`,type:`error`,inputs:[]},{name:`AccountHasCode`,type:`error`,inputs:[]}],Uc=[{name:`getCommitteeMembers`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`,name:`epoch`},{type:`bytes32[]`,name:`publicKeys`}]},{name:`setCommitteeMembers`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`},{type:`bytes32[]`,name:`publicKeys`}],outputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]}],Wc=[{name:`getNonce`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`uint256`,name:`nonceKey`}],outputs:[{type:`uint64`,name:`nonce`}]},{name:`NonceIncremented`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint256`,name:`nonceKey`,indexed:!0},{type:`uint64`,name:`newNonce`}]},{name:`ProtocolNonceNotSupported`,type:`error`,inputs:[]},{name:`InvalidNonceKey`,type:`error`,inputs:[]},{name:`NonceOverflow`,type:`error`,inputs:[]},{name:`ExpiringNonceReplay`,type:`error`,inputs:[]},{name:`ExpiringNonceSetFull`,type:`error`,inputs:[]},{name:`InvalidExpiringNonceExpiry`,type:`error`,inputs:[]}],Gc=[{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes`,name:`receipt`}],outputs:[{type:`uint256`,name:`amount`}]},{name:`claim`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`bytes`,name:`receipt`}],outputs:[]},{name:`burnBlockedReceipt`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes`,name:`receipt`}],outputs:[]},{name:`TransferBlocked`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint256`,name:`amount`},{type:`uint8`,name:`receiptVersion`},{type:`bytes`,name:`receipt`}]},{name:`ReceiptClaimed`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint64`,name:`blockedAt`},{type:`uint8`,name:`receiptVersion`},{type:`address`,name:`originator`},{type:`address`,name:`recipient`},{type:`address`,name:`recoveryAuthority`},{type:`address`,name:`caller`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}]},{name:`ReceiptBurned`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`address`,name:`receiver`,indexed:!0},{type:`uint64`,name:`blockedNonce`,indexed:!0},{type:`uint64`,name:`blockedAt`},{type:`uint8`,name:`receiptVersion`},{type:`address`,name:`originator`},{type:`address`,name:`recipient`},{type:`address`,name:`recoveryAuthority`},{type:`address`,name:`caller`},{type:`uint256`,name:`amount`}]},{name:`InvalidReceipt`,type:`error`,inputs:[]},{name:`InvalidClaimAddress`,type:`error`,inputs:[]},{name:`UnauthorizedClaimer`,type:`error`,inputs:[]},{name:`AddressReserved`,type:`error`,inputs:[]}],Kc=[{name:`recover`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`address`,name:`signer`}]},{name:`verify`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`signer`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyKeychain`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyKeychainAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`verifyConfigurableAccount`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`hash`},{type:`bytes`,name:`signature`}],outputs:[{type:`bool`}]},{name:`InvalidFormat`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]}],qc=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`bookIndexForKey`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`bookKey`}],outputs:[{type:`bool`,name:`set`},{type:`uint32`,name:`index`}]},{name:`bookKeyForIndex`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`index`}],outputs:[{type:`bytes32`,name:`bookKey`}]},{name:`setBookIndex`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`index`}],outputs:[]},{name:`storageCredits`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`}],outputs:[{type:`uint64`,name:`credits`}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderFlipped`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}]},{name:`FlipFailed`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`bytes4`,name:`reason`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]},{name:`IndexAlreadySet`,type:`error`,inputs:[]}],Jc=[{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint64`}]},{name:`modeOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint8`}]},{name:`budgetOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint64`}]},{name:`setMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`newMode`}],outputs:[]},{name:`setBudget`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`credits`}],outputs:[]},{name:`InvalidMode`,type:`error`,inputs:[]},{name:`OnlyDirectCall`,type:`error`,inputs:[]}],Yc=[{name:`userTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`}],outputs:[{type:`address`}]},{name:`validatorTokens`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`address`}]},{name:`setUserToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`setValidatorToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`distributeFees`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[]},{name:`collectedFees`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`},{type:`address`,name:`token`}],outputs:[{type:`uint256`}]},{name:`UserTokenSet`,type:`event`,inputs:[{type:`address`,name:`user`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`ValidatorTokenSet`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0}]},{name:`FeesDistributed`,type:`event`,inputs:[{type:`address`,name:`validator`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientFeeTokenBalance`,type:`error`,inputs:[]},{name:`CannotChangeWithinBlock`,type:`error`,inputs:[]}],Xc=[{name:`M`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`N`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`SCALE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`MIN_LIQUIDITY`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`getPoolId`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`bytes32`}]},{name:`getPool`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`pools`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`reserveUserToken`},{type:`uint128`,name:`reserveValidatorToken`}]}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`liquidity`}]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`}],outputs:[{type:`uint256`}]},{name:`liquidityBalances`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`poolId`},{type:`address`,name:`user`}],outputs:[{type:`uint256`}]},{name:`rebalanceSwap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`userToken`},{type:`address`,name:`validatorToken`},{type:`uint256`,name:`amountOut`},{type:`address`,name:`to`}],outputs:[{type:`uint256`,name:`amountIn`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`sender`},{type:`address`,name:`to`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`uint256`,name:`amountUserToken`},{type:`uint256`,name:`amountValidatorToken`},{type:`uint256`,name:`liquidity`},{type:`address`,name:`to`}]},{name:`RebalanceSwap`,type:`event`,inputs:[{type:`address`,name:`userToken`,indexed:!0},{type:`address`,name:`validatorToken`,indexed:!0},{type:`address`,name:`swapper`,indexed:!0},{type:`uint256`,name:`amountIn`},{type:`uint256`,name:`amountOut`}]},{name:`IdenticalAddresses`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientReserves`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`DivisionByZero`,type:`error`,inputs:[]},{name:`InvalidSwapCalculation`,type:`error`,inputs:[]}],Zc=[{name:`CLOSE_GRACE_PERIOD`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`VOUCHER_TYPEHASH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`open`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`uint96`,name:`deposit`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`}],outputs:[{type:`bytes32`,name:`channelId`}]},{name:`settle`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`cumulativeAmount`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`topUp`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`additionalDeposit`}],outputs:[]},{name:`close`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`uint96`,name:`cumulativeAmount`},{type:`uint96`,name:`captureAmount`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`requestClose`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[]},{name:`getChannel`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]}],outputs:[{type:`tuple`,components:[{type:`tuple`,name:`descriptor`,components:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}]},{type:`tuple`,name:`state`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]}]},{name:`getChannelState`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`channelId`}],outputs:[{type:`tuple`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]},{name:`getChannelStatesBatch`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32[]`,name:`channelIds`}],outputs:[{type:`tuple[]`,components:[{type:`uint96`,name:`settled`},{type:`uint96`,name:`deposit`},{type:`uint32`,name:`closeRequestedAt`}]}]},{name:`computeChannelId`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`payer`},{type:`address`,name:`payee`},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`bytes32`,name:`salt`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`expiringNonceHash`}],outputs:[{type:`bytes32`}]},{name:`getVoucherDigest`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`channelId`},{type:`uint96`,name:`cumulativeAmount`}],outputs:[{type:`bytes32`}]},{name:`domainSeparator`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`storageCredits`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`payer`}],outputs:[{type:`uint64`,name:`credits`}]},{name:`ChannelOpened`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`address`,name:`operator`},{type:`address`,name:`token`},{type:`address`,name:`authorizedSigner`},{type:`bytes32`,name:`salt`},{type:`bytes32`,name:`expiringNonceHash`},{type:`uint96`,name:`deposit`}]},{name:`Settled`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`cumulativeAmount`},{type:`uint96`,name:`deltaPaid`},{type:`uint96`,name:`newSettled`}]},{name:`TopUp`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`additionalDeposit`},{type:`uint96`,name:`newDeposit`}]},{name:`CloseRequested`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint256`,name:`closeGraceEnd`}]},{name:`ChannelClosed`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0},{type:`uint96`,name:`settledToPayee`},{type:`uint96`,name:`refundedToPayer`}]},{name:`CloseRequestCancelled`,type:`event`,inputs:[{type:`bytes32`,name:`channelId`,indexed:!0},{type:`address`,name:`payer`,indexed:!0},{type:`address`,name:`payee`,indexed:!0}]},{name:`ChannelAlreadyExists`,type:`error`,inputs:[]},{name:`ChannelNotFound`,type:`error`,inputs:[]},{name:`NotPayer`,type:`error`,inputs:[]},{name:`NotPayeeOrOperator`,type:`error`,inputs:[]},{name:`InvalidPayee`,type:`error`,inputs:[]},{name:`ZeroDeposit`,type:`error`,inputs:[]},{name:`ExpiringNonceHashNotSet`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`AmountExceedsDeposit`,type:`error`,inputs:[]},{name:`AmountNotIncreasing`,type:`error`,inputs:[]},{name:`CaptureAmountInvalid`,type:`error`,inputs:[]},{name:`CloseNotReady`,type:`error`,inputs:[]},{name:`DepositOverflow`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]}],Qc=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`},{type:`string`,name:`logoURI`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}],$c=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`logoURI`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`setLogoURI`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`newLogoURI`}],outputs:[]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burnAt`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_AT_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`permit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`},{type:`uint256`,name:`value`},{type:`uint256`,name:`deadline`},{type:`uint8`,name:`v`},{type:`bytes32`,name:`r`},{type:`bytes32`,name:`s`}],outputs:[]},{name:`nonces`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`}],outputs:[{type:`uint256`}]},{name:`DOMAIN_SEPARATOR`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnAt`,type:`event`,inputs:[{type:`address`,name:`burner`,indexed:!0},{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`,indexed:!0}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`LogoURIUpdated`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`string`,name:`newLogoURI`}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`PermitExpired`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`LogoURITooLong`,type:`error`,inputs:[]},{name:`InvalidLogoURI`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],el=[{name:`policyIdCounter`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`policyExists`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`bool`}]},{name:`tokenTransferPolicyId`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`,name:`isSet`},{type:`uint64`,name:`policyId`}]},{name:`policyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint8`,name:`policyType`},{type:`address`,name:`admin`}]},{name:`isAuthorized`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedSender`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`isAuthorizedMintRecipient`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`user`}],outputs:[{type:`bool`}]},{name:`compoundPolicyData`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`policyId`}],outputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`receivePolicy`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bool`,name:`hasReceivePolicy`},{type:`uint64`,name:`senderPolicyId`},{type:`uint8`,name:`senderPolicyType`},{type:`uint64`,name:`tokenFilterId`},{type:`uint8`,name:`tokenFilterType`},{type:`address`,name:`recoveryAuthority`}]},{name:`validateReceivePolicy`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`sender`},{type:`address`,name:`receiver`}],outputs:[{type:`bool`,name:`authorized`},{type:`uint8`,name:`blockedReason`}]},{name:`createPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`}],outputs:[{type:`uint64`}]},{name:`createPolicyWithAccounts`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`admin`},{type:`uint8`,name:`policyType`},{type:`address[]`,name:`accounts`}],outputs:[{type:`uint64`}]},{name:`setPolicyAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`admin`}],outputs:[]},{name:`modifyPolicyWhitelist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`modifyPolicyBlacklist`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`policyId`},{type:`address`,name:`account`},{type:`bool`,name:`restricted`}],outputs:[]},{name:`createCompoundPolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}],outputs:[{type:`uint64`}]},{name:`setReceivePolicy`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`tokenFilterId`},{type:`address`,name:`recoveryAuthority`}],outputs:[]},{name:`migrateTransferPolicyIds`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address[]`,name:`tokens`}],outputs:[{type:`uint256`,name:`migrated`}]},{name:`PolicyAdminUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`admin`,indexed:!0}]},{name:`PolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`uint8`,name:`policyType`}]},{name:`WhitelistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`allowed`}]},{name:`BlacklistUpdated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`bool`,name:`restricted`}]},{name:`CompoundPolicyCreated`,type:`event`,inputs:[{type:`uint64`,name:`policyId`,indexed:!0},{type:`address`,name:`creator`,indexed:!0},{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`recipientPolicyId`},{type:`uint64`,name:`mintRecipientPolicyId`}]},{name:`ReceivePolicyUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint64`,name:`senderPolicyId`},{type:`uint64`,name:`tokenFilterId`},{type:`address`,name:`recoveryAuthority`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PolicyNotFound`,type:`error`,inputs:[]},{name:`PolicyNotSimple`,type:`error`,inputs:[]},{name:`InvalidPolicyType`,type:`error`,inputs:[]},{name:`IncompatiblePolicyType`,type:`error`,inputs:[]},{name:`VirtualAddressNotAllowed`,type:`error`,inputs:[]},{name:`InvalidReceivePolicyType`,type:`error`,inputs:[]},{name:`InvalidRecoveryAuthority`,type:`error`,inputs:[]}],tl=[{name:`getActiveValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getInitializedAtHeight`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`validatorByIndex`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`index`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validatorAddress`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`validatorByPublicKey`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`publicKey`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`uint64`,name:`index`},{type:`uint64`,name:`addedAtHeight`},{type:`uint64`,name:`deactivatedAtHeight`}]}]},{name:`getNextNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`isInitialized`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`},{type:`bytes`,name:`signature`}],outputs:[{type:`uint64`,name:`index`}]},{name:`deactivateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`rotateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`bytes`,name:`signature`}],outputs:[]},{name:`setFeeRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`feeRecipient`}],outputs:[]},{name:`setIpAddresses`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`}],outputs:[]},{name:`transferValidatorOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`},{type:`address`,name:`newAddress`}],outputs:[]},{name:`transferOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`setNetworkIdentityRotationEpoch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`migrateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`idx`}],outputs:[]},{name:`initializeIfMigrated`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`ValidatorAdded`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`feeRecipient`}]},{name:`ValidatorDeactivated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0}]},{name:`ValidatorRotated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`uint64`,name:`deactivatedIndex`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`oldPublicKey`},{type:`bytes32`,name:`newPublicKey`},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`FeeRecipientUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`feeRecipient`},{type:`address`,name:`caller`}]},{name:`IpAddressesUpdated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`string`,name:`ingress`},{type:`string`,name:`egress`},{type:`address`,name:`caller`}]},{name:`ValidatorOwnershipTransferred`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`oldAddress`,indexed:!0},{type:`address`,name:`newAddress`,indexed:!0},{type:`address`,name:`caller`}]},{name:`OwnershipTransferred`,type:`event`,inputs:[{type:`address`,name:`oldOwner`,indexed:!0},{type:`address`,name:`newOwner`,indexed:!0}]},{name:`ValidatorMigrated`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`NetworkIdentityRotationEpochSet`,type:`event`,inputs:[{type:`uint64`,name:`previousEpoch`,indexed:!0},{type:`uint64`,name:`nextEpoch`,indexed:!0}]},{name:`Initialized`,type:`event`,inputs:[{type:`uint64`,name:`height`}]},{name:`SkippedValidatorMigration`,type:`event`,inputs:[{type:`uint64`,name:`index`,indexed:!0},{type:`address`,name:`validatorAddress`,indexed:!0},{type:`bytes32`,name:`publicKey`}]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`IngressAlreadyExists`,type:`error`,inputs:[{type:`string`,name:`ingress`}]},{name:`EmptyV1ValidatorSet`,type:`error`,inputs:[]},{name:`InvalidMigrationIndex`,type:`error`,inputs:[]},{name:`InvalidOwner`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`InvalidSignatureFormat`,type:`error`,inputs:[]},{name:`InvalidValidatorAddress`,type:`error`,inputs:[]},{name:`MigrationNotComplete`,type:`error`,inputs:[]},{name:`NotInitialized`,type:`error`,inputs:[]},{name:`NotIp`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`PublicKeyAlreadyExists`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`AddressAlreadyHasValidator`,type:`error`,inputs:[]},{name:`ValidatorAlreadyDeactivated`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]}],nl=[{name:`getValidators`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,name:`validators`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`addValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`updateValidator`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newValidatorAddress`},{type:`bytes32`,name:`publicKey`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}],outputs:[]},{name:`changeValidatorStatus`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`validator`},{type:`bool`,name:`active`}],outputs:[]},{name:`changeValidatorStatusByIndex`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`index`},{type:`bool`,name:`active`}],outputs:[]},{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`changeOwner`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`getNextFullDkgCeremony`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`setNextFullDkgCeremony`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`epoch`}],outputs:[]},{name:`validatorsArray`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`validators`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`validator`}],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`publicKey`},{type:`bool`,name:`active`},{type:`uint64`,name:`index`},{type:`address`,name:`validatorAddress`},{type:`string`,name:`inboundAddress`},{type:`string`,name:`outboundAddress`}]}]},{name:`validatorCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ValidatorAlreadyExists`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`NotHostPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]}],rl=[{name:`owner`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`transferOwnership`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newOwner`}],outputs:[]},{name:`createZone`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`params`,components:[{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address[]`,name:`allowedAccounts`},{type:`address[]`,name:`zoneGateways`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`string`,name:`rpcUrl`}]}],outputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`}]},{name:`nextZoneId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`zones`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`id`}],outputs:[{type:`tuple`,name:`info`,components:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`},{type:`string`,name:`rpcUrl`}]}]},{name:`isZonePortal`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`portal`}],outputs:[{type:`bool`}]},{name:`OwnershipTransferred`,type:`event`,inputs:[{type:`address`,name:`previousOwner`,indexed:!0},{type:`address`,name:`newOwner`,indexed:!0}]},{name:`ZoneCreated`,type:`event`,inputs:[{type:`uint32`,name:`zoneId`,indexed:!0},{type:`address`,name:`portal`,indexed:!0},{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address`,name:`admin`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`}]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`InvalidClosedLoopConfig`,type:`error`,inputs:[]},{name:`NotOwner`,type:`error`,inputs:[]},{name:`InvalidAdmin`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`DuplicateAllowedAccount`,type:`error`,inputs:[]},{name:`DuplicateZoneGateway`,type:`error`,inputs:[]},{name:`ZoneCreated`,type:`event`,inputs:[{type:`uint32`,name:`zoneId`,indexed:!0},{type:`address`,name:`portal`,indexed:!0},{type:`address`,name:`messenger`,indexed:!0},{type:`address`,name:`initialToken`},{type:`address`,name:`admin`},{type:`address`,name:`sequencer`},{type:`address`,name:`verifier`},{type:`bytes32`,name:`genesisBlockHash`},{type:`bytes32`,name:`genesisTempoBlockHash`},{type:`uint64`,name:`genesisTempoBlockNumber`}]},{name:`createZone`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple`,name:`params`,components:[{type:`address`,name:`initialToken`},{type:`address`,name:`admin`},{type:`address`,name:`sequencer`},{type:`address`,name:`verifier`},{type:`tuple`,name:`zoneParams`,components:[{type:`bytes32`,name:`genesisBlockHash`},{type:`bytes32`,name:`genesisTempoBlockHash`},{type:`uint64`,name:`genesisTempoBlockNumber`}]},{type:`string`,name:`rpcUrl`}]}],outputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`portal`}]},{name:`verifier`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]}],il=[{name:`SequencerSetUpdated`,type:`event`,inputs:[{type:`uint64`,name:`nonce`,indexed:!0},{type:`uint8`,name:`threshold`},{type:`address[]`,name:`sequencers`}]},{name:`TokenEnabled`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]},{name:`RoleUpdated`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0},{type:`uint8`,name:`prev`},{type:`uint8`,name:`next`}]},{name:`EnforcementModesUpdated`,type:`event`,inputs:[{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`}]},{name:`LeaderUpdated`,type:`event`,inputs:[{type:`address`,name:`previousLeader`,indexed:!0},{type:`address`,name:`newLeader`,indexed:!0},{type:`uint64`,name:`leaderEpoch`,indexed:!0},{type:`uint64`,name:`leaderActivationTempoBlock`}]},{name:`zoneId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`admin`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`messenger`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`isAccessEnforced`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`setAccessMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bool`,name:`enforced`}],outputs:[]},{name:`isGatewayOpen`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`setGatewayMode`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bool`,name:`enforced`}],outputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`uint8`,name:`role`}],outputs:[{type:`bool`}]},{name:`setAllowedAccount`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setGateway`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setPauseGuardian`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`account`},{type:`bool`,name:`allowed`}],outputs:[]},{name:`setSequencerSet`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address[]`,name:`newSequencers`},{type:`uint8`,name:`newThreshold`}],outputs:[]},{name:`verifier`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`sequencerSetVersion`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`sequencerThreshold`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`zoneHeight`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`isSequencer`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`bool`}]},{name:`sequencerCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`sequencerAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`leader`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`leaderEpoch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`leaderActivationTempoBlock`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`setLeader`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newLeader`},{type:`uint64`,name:`expectedEpoch`}],outputs:[]},{name:`withdrawalBatchIndex`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`blockHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`currentDepositQueueHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`lastSyncedTempoBlockNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`withdrawalQueueHead`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`withdrawalQueueTail`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`withdrawalQueueSlot`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`queueIndex`}],outputs:[{type:`bytes32`}]},{name:`calculateDepositFee`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`,name:`fee`}]},{name:`calculateBouncebackFee`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`,name:`fee`}]},{name:`depositCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`lastProcessedDepositNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`FIXED_DEPOSIT_GAS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_GAS_FEE_RATE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_TOKEN_METADATA_BYTES`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`areDepositsActive`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`tokenConfig`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`tuple`,components:[{type:`bool`,name:`enabled`},{type:`bool`,name:`depositsActive`}]}]},{name:`initialize`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`initialToken`},{type:`bool`,name:`accessMode`},{type:`bool`,name:`gatewayMode`},{type:`address[]`,name:`allowedAccounts`},{type:`address[]`,name:`zoneGateways`},{type:`address`,name:`admin`},{type:`address`,name:`messenger`},{type:`address[]`,name:`sequencers`},{type:`uint8`,name:`threshold`},{type:`address`,name:`verifier`},{type:`string`,name:`rpcUrl`}],outputs:[]},{name:`deliverWithdrawal`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`bytes`,name:`callbackData`}],outputs:[]},{name:`MAX_DEPOSITS_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_UNPROCESSED_DEPOSITS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_UNPROCESSED_TOKEN_ENABLEMENTS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_WITHDRAWAL_GAS_LIMIT`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`pauseExpiry`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`abdicationEffectiveAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint8`,name:`capability`}],outputs:[{type:`uint64`}]},{name:`processWithdrawals`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`tuple[]`,name:`withdrawals`,components:[{type:`address`,name:`token`},{type:`bytes32`,name:`senderTag`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`callbackData`},{type:`bytes`,name:`encryptedSender`}]},{type:`bytes32`,name:`remainingQueue`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`resume`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`abdicate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint8`,name:`capability`}],outputs:[]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`tuple`,name:`tokenEnablementTransition`,components:[{type:`uint64`,name:`prevProcessedTokenCount`},{type:`uint64`,name:`nextProcessedTokenCount`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`enableToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`pauseDeposits`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`resumeDeposits`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[]},{name:`setZoneGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`newZoneGasRate`}],outputs:[]},{name:`setMaxTempoGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`newMaxTempoGasRate`}],outputs:[]},{name:`setBouncebackGas`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newBouncebackGas`}],outputs:[]},{name:`transferAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newAdmin`}],outputs:[]},{name:`acceptAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`rpcUrl`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`setRpcUrl`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`rpcUrl`}],outputs:[]},{name:`deposit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint256`,name:`keyIndex`},{type:`tuple`,name:`encrypted`,components:[{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`}]},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`}]},{name:`depositEncrypted`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint256`,name:`keyIndex`},{type:`tuple`,name:`encrypted`,components:[{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`}]},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`}]},{name:`setSequencerEncryptionKey`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint8`,name:`popV`},{type:`bytes32`,name:`popR`},{type:`bytes32`,name:`popS`}],outputs:[]},{name:`isTokenEnabled`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`enabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`lastProcessedEnabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`tokenEnablementCursorInitialized`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`enabledTokenAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`address`}]},{name:`tokenEnablementHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`zoneGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`maxTempoGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`bouncebackGas`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`pendingAdmin`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`refunds`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`owner`}],outputs:[{type:`uint128`}]},{name:`sequencerEncryptionKey`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`address`,name:`pubkey`}]},{name:`encryptionKeyCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`encryptionKeyAt`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`index`}],outputs:[{type:`tuple`,name:`entry`,components:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint64`,name:`activationBlock`}]}]},{name:`isEncryptionKeyValid`,type:`function`,stateMutability:`view`,inputs:[{type:`uint256`,name:`keyIndex`}],outputs:[{type:`bool`,name:`valid`},{type:`uint64`,name:`expiresAtBlock`}]},{name:`encryptionKeyAtBlock`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`tempoBlockNumber`}],outputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`uint256`,name:`keyIndex`}]},{name:`claimRefund`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`uint128`,name:`amount`}]},{name:`DepositMade`,type:`event`,inputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`netAmount`},{type:`uint128`,name:`fee`},{type:`uint256`,name:`keyIndex`},{type:`bytes32`,name:`ephemeralPubkeyX`},{type:`uint8`,name:`ephemeralPubkeyYParity`},{type:`bytes`,name:`ciphertext`},{type:`bytes12`,name:`nonce`},{type:`bytes16`,name:`tag`},{type:`address`,name:`tempoRefundRecipient`},{type:`uint64`,name:`depositNumber`}]},{name:`DepositsPaused`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0}]},{name:`DepositsResumed`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0}]},{name:`PortalPaused`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0}]},{name:`PortalResumed`,type:`event`,inputs:[{type:`address`,name:`account`,indexed:!0}]},{name:`AbdicationScheduled`,type:`event`,inputs:[{type:`uint8`,name:`capability`,indexed:!0},{type:`uint64`,name:`effectiveAt`}]},{name:`RpcUrlUpdated`,type:`event`,inputs:[{type:`string`,name:`rpcUrl`}]},{name:`SequencerEncryptionKeyUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`x`},{type:`uint8`,name:`yParity`},{type:`address`,name:`pubkey`},{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`}]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`},{type:`uint64`,name:`lastProcessedEnabledTokenCount`}]},{name:`WithdrawalProcessed`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`bytes32`,name:`senderTag`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`callbackSuccess`}]},{name:`WithdrawalBounceBack`,type:`event`,inputs:[{type:`bytes32`,name:`newCurrentDepositQueueHash`,indexed:!0},{type:`uint64`,name:`fallbackNonce`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint64`,name:`depositNumber`}]},{name:`DepositBounceBack`,type:`event`,inputs:[{type:`address`,name:`tempoRefundRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`bouncebackFee`}]},{name:`DepositBounceBackPending`,type:`event`,inputs:[{type:`address`,name:`tempoRefundRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`bouncebackFee`}]},{name:`RefundClaimed`,type:`event`,inputs:[{type:`address`,name:`recipient`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`}]},{name:`ZoneGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`zoneGasRate`}]},{name:`MaxTempoGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`maxTempoGasRate`}]},{name:`BouncebackGasUpdated`,type:`event`,inputs:[{type:`uint64`,name:`bouncebackGas`}]},{name:`AdminTransferStarted`,type:`event`,inputs:[{type:`address`,name:`currentAdmin`,indexed:!0},{type:`address`,name:`pendingAdmin`,indexed:!0}]},{name:`AdminTransferred`,type:`event`,inputs:[{type:`address`,name:`previousAdmin`,indexed:!0},{type:`address`,name:`newAdmin`,indexed:!0}]},{name:`NotSequencer`,type:`error`,inputs:[]},{name:`NotAdmin`,type:`error`,inputs:[]},{name:`NotPauseAuthority`,type:`error`,inputs:[]},{name:`CapabilityAbdicated`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`AbdicationAlreadyScheduled`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`PortalIsPaused`,type:`error`,inputs:[]},{name:`NotPendingAdmin`,type:`error`,inputs:[]},{name:`InvalidProof`,type:`error`,inputs:[]},{name:`InvalidTempoBlockNumber`,type:`error`,inputs:[]},{name:`NotFactory`,type:`error`,inputs:[]},{name:`NotSelf`,type:`error`,inputs:[]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`MustDelegateCall`,type:`error`,inputs:[]},{name:`CallbackRejected`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`ReentrantWithdrawal`,type:`error`,inputs:[]},{name:`EncryptionKeyExpired`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`},{type:`uint64`,name:`supersededAtBlock`}]},{name:`InvalidEncryptionKeyIndex`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`}]},{name:`NoEncryptionKeySet`,type:`error`,inputs:[]},{name:`NoEncryptionKeyAtBlock`,type:`error`,inputs:[{type:`uint64`,name:`blockNumber`}]},{name:`InvalidEphemeralPubkey`,type:`error`,inputs:[]},{name:`InvalidCiphertextLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidProofOfPossession`,type:`error`,inputs:[]},{name:`DepositTooSmall`,type:`error`,inputs:[]},{name:`TokenEnablementBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`DepositsNotActive`,type:`error`,inputs:[]},{name:`TokenAlreadyEnabled`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`TokenEnablementCursorNotInitialized`,type:`error`,inputs:[]},{name:`InvalidDepositTransition`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementTransition`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`SequencerConfigurationUnchanged`,type:`error`,inputs:[]},{name:`InvalidQuorumCertificate`,type:`error`,inputs:[]},{name:`CallbackDidNotReturnToZone`,type:`error`,inputs:[]},{name:`InvalidBouncebackRecipient`,type:`error`,inputs:[]},{name:`TokenNotEnabled`,type:`error`,inputs:[]},{name:`DepositBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`InvalidCallbackTarget`,type:`error`,inputs:[]},{name:`AccountNotAllowed`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`InvalidLeader`,type:`error`,inputs:[]},{name:`ActiveLeaderRemoved`,type:`error`,inputs:[]},{name:`LeaderAlreadyUpdatedThisBlock`,type:`error`,inputs:[]},{name:`StaleLeadershipEpoch`,type:`error`,inputs:[{type:`uint64`,name:`expected`},{type:`uint64`,name:`actual`}]},{name:`deposit`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`_token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`address`,name:`tempoRefundRecipient`}],outputs:[{type:`bytes32`}]}],al=[{name:`verify`,type:`function`,stateMutability:`view`,inputs:[{type:`uint32`,name:`zoneId`},{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`anchorBlockNumber`},{type:`bytes32`,name:`anchorBlockHash`},{type:`uint64`,name:`expectedWithdrawalBatchIndex`},{type:`uint256`,name:`nextZoneHeight`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`tuple`,name:`tokenEnablementTransition`,components:[{type:`uint64`,name:`prevProcessedTokenCount`},{type:`uint64`,name:`nextProcessedTokenCount`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`}],outputs:[{type:`bool`}]}],ol=[{type:`constructor`,inputs:[{name:`earnVault_`,type:`address`},{name:`owner_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`active`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`executeFunding`,inputs:[{name:`funder`,type:`address`},{name:`requestedAssets`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`fundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`fund`,inputs:[{name:`funder`,type:`address`},{name:`requestedAssets`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`fundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`fundBatchExact`,inputs:[{name:`funders`,type:`address[]`},{name:`requestedAssets`,type:`uint256[]`},{name:`maxEarnShareSupply`,type:`uint256`}],outputs:[{name:`totalFundedAssets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setActive`,inputs:[{name:`active_`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ActiveSet`,inputs:[{name:`active`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Funded`,inputs:[{name:`funder`,type:`address`,indexed:!0},{name:`requestedAssets`,type:`uint256`,indexed:!1},{name:`fundedAssets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`error`,name:`EarnShareSupplyOutOfBounds`,inputs:[{name:`earnShareSupply`,type:`uint256`},{name:`maxEarnShareSupply`,type:`uint256`}]},{type:`error`,name:`Inactive`,inputs:[]},{type:`error`,name:`InvalidArrayLengths`,inputs:[]},{type:`error`,name:`NotSelf`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],sl=[{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:`scale`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`}],cl=[{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`requestRedeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`requestData`,type:`bytes`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`}],ll=[{type:`function`,name:`depositInKind`,inputs:[{name:`venueShares`,type:`uint256`},{name:`from`,type:`address`}],outputs:[{name:`engineSharesReceived`,type:`uint256`}],stateMutability:`nonpayable`}],ul=[{type:`constructor`,inputs:[{name:`tip20Factory_`,type:`address`},{name:`earnVaultImplementation_`,type:`address`},{name:`earnFeesImplementation_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`DEFAULT_ADMIN_ROLE`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`EARN_SHARE_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`FEES_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`computeEarnShareSalt`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`deploy`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:`earnShare`,type:`address`},{name:`earnVault`,type:`address`},{name:`earnFees`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`earnFeesImplementation`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVaultImplementation`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictEarnFees`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictEarnShare`,inputs:[{name:`params`,type:`tuple`,components:[{name:`deploymentId`,type:`bytes32`},{name:`engine`,type:`address`},{name:`owner`,type:`address`},{name:`controls`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorConfig`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]},{name:`fees`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]},{name:`transferPolicyId`,type:`uint64`}]}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`tip20Factory`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`EarnStackDeployed`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`earnShare`,type:`address`,indexed:!0},{name:`earnFees`,type:`address`,indexed:!0},{name:`engine`,type:`address`,indexed:!1},{name:`asset`,type:`address`,indexed:!1},{name:`owner`,type:`address`,indexed:!1},{name:`deploymentId`,type:`bytes32`,indexed:!1},{name:`emergencyGuardian`,type:`address`,indexed:!1},{name:`asyncJanitor`,type:`address`,indexed:!1},{name:`maxManagedAssets`,type:`uint256`,indexed:!1},{name:`migrationMode`,type:`uint8`,indexed:!1},{name:`transferPolicyId`,type:`uint64`,indexed:!1},{name:`earnShareSalt`,type:`bytes32`,indexed:!1},{name:`controlConfigHash`,type:`bytes32`,indexed:!1},{name:`feeConfigHash`,type:`bytes32`,indexed:!1},{name:`earnFeesSalt`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`AdminRelinquishmentFailed`,inputs:[]},{type:`error`,name:`EarnShareAlreadyExists`,inputs:[{name:`earnShare`,type:`address`}]},{type:`error`,name:`EarnShareSupplyNotZero`,inputs:[]},{type:`error`,name:`EmptyDeploymentId`,inputs:[]},{type:`error`,name:`EmptyEarnShareMetadata`,inputs:[]},{type:`error`,name:`EngineAlreadyBound`,inputs:[{name:`earnVault`,type:`address`}]},{type:`error`,name:`FactoryCannotBeFinalOwner`,inputs:[]},{type:`error`,name:`FailedDeployment`,inputs:[]},{type:`error`,name:`InsufficientBalance`,inputs:[{name:`balance`,type:`uint256`},{name:`needed`,type:`uint256`}]},{type:`error`,name:`InvalidDistributorConfig`,inputs:[]},{type:`error`,name:`InvalidEarnFeesImplementation`,inputs:[]},{type:`error`,name:`InvalidEarnVaultImplementation`,inputs:[]},{type:`error`,name:`InvalidEngine`,inputs:[]},{type:`error`,name:`InvalidTransferPolicy`,inputs:[{name:`policyId`,type:`uint64`}]},{type:`error`,name:`IssuerGrantFailed`,inputs:[]},{type:`error`,name:`TransferPolicyMismatch`,inputs:[{name:`expected`,type:`uint64`},{name:`actual`,type:`uint64`}]},{type:`error`,name:`UnsupportedTransferPolicy`,inputs:[{name:`policyId`,type:`uint64`},{name:`policyType`,type:`uint8`}]},{type:`error`,name:`ZeroAddress`,inputs:[]}],dl=[{type:`constructor`,inputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accrueFees`,inputs:[],outputs:[{name:`result`,type:`tuple`,components:[{name:`activeAssets`,type:`uint256`},{name:`positiveAccrualAssets`,type:`uint256`},{name:`fixedFeeAssets`,type:`uint256`},{name:`excessFeeAssets`,type:`uint256`},{name:`totalFeeAssets`,type:`uint256`},{name:`totalFeeEarnShares`,type:`uint256`},{name:`preFeeValuePerEarnShare`,type:`uint256`},{name:`postFeeValuePerEarnShare`,type:`uint256`},{name:`targetValuePerEarnShare`,type:`uint256`},{name:`allocationCount`,type:`uint8`},{name:`allocations`,type:`tuple[5]`,components:[{name:`account`,type:`address`},{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}]}]}],stateMutability:`nonpayable`},{type:`function`,name:`claim`,inputs:[{name:`to`,type:`address`},{name:`earnShares`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`claimableEarnShares`,inputs:[{name:`recipient`,type:`address`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`closeRedeemRequest`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`currentFeeConfigId`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`disableFees`,inputs:[{name:`operator`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnShareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`feeBaselinesPending`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`feeConfig`,inputs:[{name:`configId`,type:`uint64`}],outputs:[{name:``,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],stateMutability:`view`},{type:`function`,name:`feeRemainder`,inputs:[{name:`configId`,type:`uint64`},{name:`slot`,type:`uint8`}],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`feesActive`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`feesDisabled`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`highWaterMark`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`initialize`,inputs:[{name:`earnVault_`,type:`address`},{name:`earnShare_`,type:`address`},{name:`initialConfig`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeBaselines`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`pendingFeeSnapshot`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`tuple`,components:[{name:`burnedEarnShares`,type:`uint256`},{name:`requestValue`,type:`uint256`},{name:`highWaterValue`,type:`uint256`},{name:`targetValue`,type:`uint256`},{name:`feeConfigId`,type:`uint64`},{name:`requestedAt`,type:`uint40`},{name:`open`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`previewAccruedFees`,inputs:[],outputs:[{name:`result`,type:`tuple`,components:[{name:`activeAssets`,type:`uint256`},{name:`positiveAccrualAssets`,type:`uint256`},{name:`fixedFeeAssets`,type:`uint256`},{name:`excessFeeAssets`,type:`uint256`},{name:`totalFeeAssets`,type:`uint256`},{name:`totalFeeEarnShares`,type:`uint256`},{name:`preFeeValuePerEarnShare`,type:`uint256`},{name:`postFeeValuePerEarnShare`,type:`uint256`},{name:`targetValuePerEarnShare`,type:`uint256`},{name:`allocationCount`,type:`uint8`},{name:`allocations`,type:`tuple[5]`,components:[{name:`account`,type:`address`},{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}]}]}],stateMutability:`view`},{type:`function`,name:`recordRedeemRequest`,inputs:[{name:`requestId`,type:`bytes32`},{name:`burnedEarnShares`,type:`uint256`},{name:`requestValue`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[{name:`configId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`settleCancelledRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`returnedValue`,type:`uint256`},{name:`activeSupply`,type:`uint256`},{name:`activeAssets`,type:`uint256`},{name:`totalReentryEarnShares`,type:`uint256`}],outputs:[{name:`feeEarnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`shouldChargeRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`targetBase`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`targetStartedAt`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`totalClaimableEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`validateFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[],stateMutability:`view`},{type:`event`,name:`FeeBaselinesInitialized`,inputs:[{name:`highWaterMark`,type:`uint256`,indexed:!1},{name:`targetBase`,type:`uint256`,indexed:!1},{name:`targetStartedAt`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeConfigurationSet`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`configHash`,type:`bytes32`,indexed:!0},{name:`reactivated`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeDustWaived`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`slot`,type:`uint8`,indexed:!0},{name:`remainder`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeEarnSharesAllocated`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`recipient`,type:`address`,indexed:!0},{name:`feeAssets`,type:`uint256`,indexed:!1},{name:`feeEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeeEarnSharesClaimed`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`to`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeesAccrued`,inputs:[{name:`configId`,type:`uint64`,indexed:!0},{name:`activeAssets`,type:`uint256`,indexed:!1},{name:`positiveAccrualAssets`,type:`uint256`,indexed:!1},{name:`feeAssets`,type:`uint256`,indexed:!1},{name:`feeEarnShares`,type:`uint256`,indexed:!1},{name:`highWaterMark`,type:`uint256`,indexed:!1},{name:`targetValuePerEarnShare`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FeesDisabled`,inputs:[{name:`operator`,type:`address`,indexed:!0}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`InsufficientClaimableEarnShares`,inputs:[]},{type:`error`,name:`InvalidFeeClaimReceiver`,inputs:[]},{type:`error`,name:`InvalidFeeConfiguration`,inputs:[]},{type:`error`,name:`NotEarnVault`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],fl=[{type:`constructor`,inputs:[{name:`earnVault_`,type:`address`},{name:`treasury_`,type:`address`},{name:`campaignId_`,type:`bytes32`},{name:`claimDeadline_`,type:`uint40`},{name:`owner_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`campaignId`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`claim`,inputs:[{name:`recipient`,type:`address`},{name:`cumulativeAmount`,type:`uint256`},{name:`proof`,type:`bytes32[]`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`claimDeadline`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`consumedSettlements`,inputs:[{name:`settlementId`,type:`bytes32`}],outputs:[{name:`consumed`,type:`bool`}],stateMutability:`view`},{type:`function`,name:`cumulativePaid`,inputs:[{name:`recipient`,type:`address`}],outputs:[{name:`cumulativeAmount`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`fundAndPublishRoot`,inputs:[{name:`settlementId`,type:`bytes32`},{name:`expectedRootVersion`,type:`uint64`},{name:`funder`,type:`address`},{name:`assets`,type:`uint256`},{name:`minEarnShares`,type:`uint256`},{name:`root`,type:`bytes32`},{name:`totalEntitlement`,type:`uint256`},{name:`statementHash_`,type:`bytes32`}],outputs:[{name:`earnShares`,type:`uint256`},{name:`version`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`leaf`,inputs:[{name:`recipient`,type:`address`},{name:`cumulativeAmount`,type:`uint256`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`merkleRoot`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`paused`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`publishRoot`,inputs:[{name:`expectedRootVersion`,type:`uint64`},{name:`root`,type:`bytes32`},{name:`totalEntitlement`,type:`uint256`},{name:`statementHash_`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`pushBatch`,inputs:[{name:`expectedRootVersion`,type:`uint64`},{name:`recipients`,type:`address[]`},{name:`cumulativeAmounts`,type:`uint256[]`},{name:`multiproof`,type:`bytes32[]`},{name:`proofFlags`,type:`bool[]`}],outputs:[{name:`paidCount`,type:`uint256`},{name:`paidEarnShares`,type:`uint256`},{name:`skippedCount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`pure`},{type:`function`,name:`returnUnspent`,inputs:[],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`rootTotalEntitlement`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`rootVersion`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`setPaused`,inputs:[{name:`paused_`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`statementHash`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`totalPaid`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`treasury`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`AssetsFunded`,inputs:[{name:`funder`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`BatchPushed`,inputs:[{name:`version`,type:`uint64`,indexed:!0},{name:`batchHash`,type:`bytes32`,indexed:!0},{name:`attemptedCount`,type:`uint256`,indexed:!1},{name:`paidCount`,type:`uint256`,indexed:!1},{name:`paidEarnShares`,type:`uint256`,indexed:!1},{name:`skippedCount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`PausedSet`,inputs:[{name:`paused`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`PayoutSkipped`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`cumulativeAmount`,type:`uint256`,indexed:!1},{name:`reason`,type:`uint8`,indexed:!1}],anonymous:!1},{type:`event`,name:`RewardClaimed`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`cumulativeAmount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RootPublished`,inputs:[{name:`version`,type:`uint64`,indexed:!0},{name:`root`,type:`bytes32`,indexed:!0},{name:`statementHash`,type:`bytes32`,indexed:!0},{name:`totalEntitlement`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`UnspentReturned`,inputs:[{name:`treasury`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`ClaimsExpired`,inputs:[]},{type:`error`,name:`ClaimsNotExpired`,inputs:[]},{type:`error`,name:`DepositsPaused`,inputs:[]},{type:`error`,name:`InsufficientFunding`,inputs:[{name:`requiredBalance`,type:`uint256`},{name:`actualBalance`,type:`uint256`}]},{type:`error`,name:`InvalidArrayLengths`,inputs:[]},{type:`error`,name:`InvalidEarnVault`,inputs:[]},{type:`error`,name:`InvalidMultiproof`,inputs:[]},{type:`error`,name:`MerkleProofInvalidMultiproof`,inputs:[]},{type:`error`,name:`NothingOwed`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`OwnershipRenunciationDisabled`,inputs:[]},{type:`error`,name:`Paused`,inputs:[]},{type:`error`,name:`PausedLiabilityIncrease`,inputs:[]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`RootTotalDecreased`,inputs:[{name:`previousTotal`,type:`uint256`},{name:`nextTotal`,type:`uint256`}]},{type:`error`,name:`RootTotalExceeded`,inputs:[{name:`requestedAmount`,type:`uint256`},{name:`remainingEntitlement`,type:`uint256`}]},{type:`error`,name:`SettlementAlreadyConsumed`,inputs:[{name:`settlementId`,type:`bytes32`}]},{type:`error`,name:`StaleRootVersion`,inputs:[{name:`expected`,type:`uint64`},{name:`actual`,type:`uint64`}]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`UnexpectedEarnShares`,inputs:[{name:`reported`,type:`uint256`},{name:`measured`,type:`uint256`}]},{type:`error`,name:`UnexpectedRetainedAssets`,inputs:[{name:`beforeBalance`,type:`uint256`},{name:`afterBalance`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]},{type:`error`,name:`ZeroCampaignId`,inputs:[]},{type:`error`,name:`ZeroDeadline`,inputs:[]},{type:`error`,name:`ZeroMinimumEarnShares`,inputs:[]},{type:`error`,name:`ZeroRoot`,inputs:[]},{type:`error`,name:`ZeroSettlementId`,inputs:[]},{type:`error`,name:`ZeroStatementHash`,inputs:[]}],pl=[{type:`function`,name:`campaignId`,inputs:[{name:`earnVault`,type:`address`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`install`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`},{name:`treasury`,type:`address`},{name:`claimDeadline`,type:`uint40`},{name:`targetYield`,type:`bool`},{name:`boostRewards`,type:`bool`}],outputs:[{name:`result`,type:`tuple`,components:[{name:`contributionController`,type:`address`},{name:`merkleDistributor`,type:`address`}]}],stateMutability:`nonpayable`},{type:`function`,name:`predictContributionController`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`predictMerkleDistributor`,inputs:[{name:`earnVault`,type:`address`},{name:`owner`,type:`address`},{name:`treasury`,type:`address`},{name:`claimDeadline`,type:`uint40`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`ContributionControllerInstalled`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`contributionController`,type:`address`,indexed:!1}],anonymous:!1},{type:`event`,name:`MerkleDistributorInstalled`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`treasury`,type:`address`,indexed:!0},{name:`merkleDistributor`,type:`address`,indexed:!1},{name:`campaignId`,type:`bytes32`,indexed:!1},{name:`claimDeadline`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`error`,name:`EmptyInstallation`,inputs:[]},{type:`error`,name:`InvalidExistingDeployment`,inputs:[{name:`component`,type:`address`}]},{type:`error`,name:`InvalidRewardConfiguration`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]}],ml=[{type:`constructor`,inputs:[{name:`allowedZoneId_`,type:`uint32`},{name:`earnVault_`,type:`address`},{name:`privateAsset_`,type:`address`},{name:`tokenAuthority_`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`allowedZoneId`,inputs:[],outputs:[{name:``,type:`uint32`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`onWithdrawalReceived`,inputs:[{name:`sourceZoneId`,type:`uint32`},{name:`sourcePortal`,type:`address`},{name:``,type:`bytes32`},{name:`token`,type:`address`},{name:`amount`,type:`uint128`},{name:`callbackData`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}],stateMutability:`nonpayable`},{type:`function`,name:`privateAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`reserveToken`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`supportsFlow`,inputs:[{name:`flow`,type:`uint8`}],outputs:[{name:``,type:`bool`}],stateMutability:`pure`},{type:`function`,name:`tokenAuthority`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`transactionLimit`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vaultAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`EarnDeposit`,inputs:[{name:`actionId`,type:`bytes32`,indexed:!0},{name:`earnVault`,type:`address`,indexed:!0},{name:`inputToken`,type:`address`,indexed:!0},{name:`inputAmount`,type:`uint256`,indexed:!1},{name:`vaultAssets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`zoneDepositHash`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnRedeem`,inputs:[{name:`actionId`,type:`bytes32`,indexed:!0},{name:`earnVault`,type:`address`,indexed:!0},{name:`outputToken`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`vaultAssets`,type:`uint256`,indexed:!1},{name:`outputAmount`,type:`uint256`,indexed:!1},{name:`zoneDepositHash`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`AmountExceedsLimit`,inputs:[]},{type:`error`,name:`AmountOverflow`,inputs:[]},{type:`error`,name:`BadFlow`,inputs:[]},{type:`error`,name:`InsufficientOutput`,inputs:[]},{type:`error`,name:`InvalidAuthority`,inputs:[]},{type:`error`,name:`InvalidEarnVault`,inputs:[]},{type:`error`,name:`InvalidPrivateAsset`,inputs:[]},{type:`error`,name:`InvalidReturnToken`,inputs:[]},{type:`error`,name:`InvalidRoutePair`,inputs:[]},{type:`error`,name:`InvalidSourcePortal`,inputs:[]},{type:`error`,name:`InvalidTransactionLimit`,inputs:[]},{type:`error`,name:`NotZoneMessenger`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`ResidualBalance`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`WrongInputToken`,inputs:[]},{type:`error`,name:`WrongSourceZone`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]}],hl=[{type:`constructor`,inputs:[],stateMutability:`nonpayable`},{type:`function`,name:`MAX_REWARD_RATE_MULTIPLIER`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`absorbEngineShareSurplus`,inputs:[{name:`engineShares_`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`acceptDistributor`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`acceptOperator`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accrueFees`,inputs:[],outputs:[{name:`feeAssets`,type:`uint256`},{name:`feeEarnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`anchorEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`anchorEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`asyncJanitor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`cancelDistributorFeeUpdate`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelDistributorTransfer`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelOperatorTransfer`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`minReceiverEarnShares`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`contribute`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`receivedEngineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`convertEngineSharesToEarnShares`,inputs:[{name:`engineShares_`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`convertToEngineShares`,inputs:[{name:`earnShares`,type:`uint256`}],outputs:[{name:`engineShares_`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minEarnShares`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositVenueShares`,inputs:[{name:`venueShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minEarnShares`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositsPaused`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`disableFees`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`distributor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`distributorFee`,inputs:[],outputs:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`}],stateMutability:`view`},{type:`function`,name:`distributorUpdateDelay`,inputs:[],outputs:[{name:``,type:`uint40`}],stateMutability:`view`},{type:`function`,name:`earnFees`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`earnShare`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`emergencyGuardian`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`engine`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`engineMigrationMode`,inputs:[],outputs:[{name:``,type:`uint8`}],stateMutability:`view`},{type:`function`,name:`engineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`executeDistributorFeeUpdate`,inputs:[],outputs:[{name:`feeConfigId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`finalizeRedeem`,inputs:[{name:`requestId`,type:`bytes32`},{name:`asset_`,type:`address`},{name:`amount`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initialize`,inputs:[{name:`engine_`,type:`address`},{name:`earnShare_`,type:`address`},{name:`earnFees_`,type:`address`},{name:`operator_`,type:`address`},{name:`controlInit_`,type:`tuple`,components:[{name:`emergencyGuardian`,type:`address`},{name:`asyncJanitor`,type:`address`},{name:`maxManagedAssets`,type:`uint256`},{name:`migrationMode`,type:`uint8`}]},{name:`distributorInit_`,type:`tuple`,components:[{name:`distributor`,type:`address`},{name:`updateDelay`,type:`uint40`}]}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`isAccountingAligned`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`maxManagedAssets`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`migrateEngine`,inputs:[{name:`newEngine`,type:`address`},{name:`minNewEngineShares`,type:`uint256`},{name:`minAssetsRetained`,type:`uint256`}],outputs:[{name:`newEngineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`normalizedRewardRate`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`openRedeemRequestCount`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`operator`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingDistributor`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingDistributorFeeUpdate`,inputs:[],outputs:[{name:``,type:`tuple`,components:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`},{name:`executableAt`,type:`uint40`},{name:`pending`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`pendingOperator`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`tuple`,components:[{name:`receiver`,type:`address`},{name:`requester`,type:`address`},{name:`burnedEarnShares`,type:`uint256`},{name:`engineShares`,type:`uint256`},{name:`open`,type:`bool`}]}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`earnShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`earnShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`rawEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`earnShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`remainingDepositCapacity`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`requestRedeem`,inputs:[{name:`earnShares`,type:`uint256`},{name:`engineData`,type:`bytes`},{name:`receiver`,type:`address`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`rewardRateBaseline`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`scheduleDistributorFeeUpdate`,inputs:[{name:`recipient`,type:`address`},{name:`rateBps`,type:`uint16`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setDepositsPaused`,inputs:[{name:`paused`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setEmergencyRoles`,inputs:[{name:`newGuardian`,type:`address`},{name:`newJanitor`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setFeeConfig`,inputs:[{name:`config`,type:`tuple`,components:[{name:`fixedFeeCount`,type:`uint8`},{name:`fixedFees`,type:`tuple[4]`,components:[{name:`account`,type:`address`},{name:`rateBps`,type:`uint16`}]},{name:`excess`,type:`tuple`,components:[{name:`enabled`,type:`bool`},{name:`account`,type:`address`},{name:`annualTargetRateBps`,type:`uint16`},{name:`excessFeeRateBps`,type:`uint16`}]}]}],outputs:[{name:`configId`,type:`uint64`}],stateMutability:`nonpayable`},{type:`function`,name:`setMaxManagedAssets`,inputs:[{name:`newMaxManagedAssets`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`surplusEngineShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalEarnShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferDistributor`,inputs:[{name:`newDistributor`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`transferOperator`,inputs:[{name:`newOperator`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdrawExact`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`},{name:`maxEarnShares`,type:`uint256`}],outputs:[{name:`earnSharesBurned`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`Contributed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DepositPauseChanged`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`paused`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Deposited`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdateCancelled`,inputs:[{name:`distributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdateScheduled`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`recipient`,type:`address`,indexed:!0},{name:`rateBps`,type:`uint16`,indexed:!1},{name:`executableAt`,type:`uint40`,indexed:!1}],anonymous:!1},{type:`event`,name:`DistributorFeeUpdated`,inputs:[{name:`recipient`,type:`address`,indexed:!0},{name:`rateBps`,type:`uint16`,indexed:!1},{name:`feeConfigId`,type:`uint64`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferCancelled`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`pendingDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferStarted`,inputs:[{name:`distributor`,type:`address`,indexed:!0},{name:`pendingDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`DistributorTransferred`,inputs:[{name:`previousDistributor`,type:`address`,indexed:!0},{name:`newDistributor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`earnShare`,type:`address`,indexed:!0},{name:`earnFees`,type:`address`,indexed:!0},{name:`operator`,type:`address`,indexed:!1},{name:`emergencyGuardian`,type:`address`,indexed:!1},{name:`asyncJanitor`,type:`address`,indexed:!1},{name:`maxManagedAssets`,type:`uint256`,indexed:!1},{name:`migrationMode`,type:`uint8`,indexed:!1},{name:`distributor`,type:`address`,indexed:!1},{name:`distributorUpdateDelay`,type:`uint40`,indexed:!1},{name:`distributorFeeRecipient`,type:`address`,indexed:!1},{name:`distributorFeeRateBps`,type:`uint16`,indexed:!1}],anonymous:!1},{type:`event`,name:`EmergencyRolesChanged`,inputs:[{name:`emergencyGuardian`,type:`address`,indexed:!0},{name:`asyncJanitor`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`EngineMigrated`,inputs:[{name:`oldEngine`,type:`address`,indexed:!0},{name:`newEngine`,type:`address`,indexed:!0},{name:`oldEngineShares`,type:`uint256`,indexed:!1},{name:`assetsMoved`,type:`uint256`,indexed:!1},{name:`newEngineShares`,type:`uint256`,indexed:!1},{name:`totalEarnShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EngineShareShortfallReconciled`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`previousManagedEngineShares`,type:`uint256`,indexed:!1},{name:`observedRawEngineShares`,type:`uint256`,indexed:!1},{name:`shortfallEngineShares`,type:`uint256`,indexed:!1},{name:`totalEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EngineShareSurplusAbsorbed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`anchorEngineShares`,type:`uint256`,indexed:!1},{name:`anchorEarnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`MaxManagedAssetsChanged`,inputs:[{name:`previousMaxManagedAssets`,type:`uint256`,indexed:!1},{name:`newMaxManagedAssets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`OperatorTransferCancelled`,inputs:[{name:`operator`,type:`address`,indexed:!0},{name:`pendingOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OperatorTransferStarted`,inputs:[{name:`operator`,type:`address`,indexed:!0},{name:`pendingOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OperatorTransferred`,inputs:[{name:`previousOperator`,type:`address`,indexed:!0},{name:`newOperator`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`RedeemCancelled`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemFinalized`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`asset`,type:`address`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemRequested`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`requester`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`earnShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VenueSharesDeposited`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`requestedVenueShares`,type:`uint256`,indexed:!1},{name:`receivedEngineShares`,type:`uint256`,indexed:!1},{name:`earnShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`caller`,type:`address`,indexed:!0},{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`earnSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`ActiveSupplyWithoutBacking`,inputs:[]},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`DepositsPaused`,inputs:[]},{type:`error`,name:`DistributorFeeUpdateNotPending`,inputs:[]},{type:`error`,name:`DistributorFeeUpdateNotReady`,inputs:[{name:`executableAt`,type:`uint40`}]},{type:`error`,name:`DistributorTransferNotPending`,inputs:[]},{type:`error`,name:`DuplicateRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`EngineAssetMismatch`,inputs:[]},{type:`error`,name:`EngineCapabilityUnsupported`,inputs:[{name:`interfaceId`,type:`bytes4`}]},{type:`error`,name:`EngineEarnVaultMismatch`,inputs:[]},{type:`error`,name:`EngineExitUnsupported`,inputs:[]},{type:`error`,name:`ExceedsMaxEarnShares`,inputs:[]},{type:`error`,name:`ExcessiveConversionLoss`,inputs:[{name:`inputShares`,type:`uint256`},{name:`representedShares`,type:`uint256`}]},{type:`error`,name:`ExcessiveMigrationClassificationError`,inputs:[{name:`expectedManagedAssets`,type:`uint256`},{name:`actualManagedAssets`,type:`uint256`}]},{type:`error`,name:`FeeValuationStale`,inputs:[]},{type:`error`,name:`FinalizedAssetMismatch`,inputs:[{name:`finalizedAsset`,type:`address`}]},{type:`error`,name:`GlobalFeeDisableUnavailable`,inputs:[]},{type:`error`,name:`InitialEarnShareSupplyNotZero`,inputs:[]},{type:`error`,name:`InsufficientEngineShareSurplus`,inputs:[{name:`available`,type:`uint256`},{name:`requested`,type:`uint256`}]},{type:`error`,name:`InsufficientOutput`,inputs:[]},{type:`error`,name:`InvalidDistributorConfiguration`,inputs:[]},{type:`error`,name:`InvalidDistributorFeeConfiguration`,inputs:[]},{type:`error`,name:`InvalidEarnDecimals`,inputs:[]},{type:`error`,name:`InvalidEngineShareScale`,inputs:[]},{type:`error`,name:`MaxManagedAssetsExceeded`,inputs:[{name:`maximum`,type:`uint256`},{name:`actual`,type:`uint256`}]},{type:`error`,name:`MinimumAssetsNotMet`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`MinimumEarnSharesNotMet`,inputs:[{name:`minimumEarnShares`,type:`uint256`},{name:`actualEarnShares`,type:`uint256`}]},{type:`error`,name:`MinimumEngineSharesNotMet`,inputs:[{name:`minimumEngineShares`,type:`uint256`},{name:`actualEngineShares`,type:`uint256`}]},{type:`error`,name:`NoEarnShares`,inputs:[]},{type:`error`,name:`NotDistributor`,inputs:[]},{type:`error`,name:`NotEmergencyGuardianOrOperator`,inputs:[]},{type:`error`,name:`NotEngine`,inputs:[]},{type:`error`,name:`NotOperator`,inputs:[]},{type:`error`,name:`NotPendingDistributor`,inputs:[]},{type:`error`,name:`NotPendingOperator`,inputs:[]},{type:`error`,name:`NotRequesterOrJanitor`,inputs:[]},{type:`error`,name:`OperatorMigrationDisabled`,inputs:[]},{type:`error`,name:`OperatorTransferNotPending`,inputs:[]},{type:`error`,name:`PendingRedeemsOpen`,inputs:[]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`RequestNotOpen`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`ResidualBacking`,inputs:[]},{type:`error`,name:`RewardRateLimitExceeded`,inputs:[{name:`normalizedRate`,type:`uint256`},{name:`baselineRate`,type:`uint256`}]},{type:`error`,name:`SameEngine`,inputs:[]},{type:`error`,name:`TokenCallFailed`,inputs:[]},{type:`error`,name:`TokenCallFalse`,inputs:[]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroAmount`,inputs:[]},{type:`error`,name:`ZeroMinimumAssets`,inputs:[]},{type:`error`,name:`ZeroMinimumEarnShares`,inputs:[]},{type:`error`,name:`ZeroMinimumEngineShares`,inputs:[]}],gl=[{type:`constructor`,inputs:[{name:`vault_`,type:`address`},{name:`owner_`,type:`address`},{name:`nameOverride_`,type:`string`},{name:`symbolOverride_`,type:`string`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`baseAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`depositInKind`,inputs:[{name:`venueShares`,type:`uint256`},{name:`from`,type:`address`}],outputs:[{name:`engineSharesReceived`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`},{name:`finalOwner_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`pure`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`Deposited`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`earnVault`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VenueSharesDeposited`,inputs:[{name:`from`,type:`address`,indexed:!0},{name:`requestedVenueShares`,type:`uint256`,indexed:!1},{name:`receivedEngineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`EarnVaultNotSet`,inputs:[]},{type:`error`,name:`EmptyMetadata`,inputs:[]},{type:`error`,name:`InsufficientAssetsReceived`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`InvalidVenueShareDecimals`,inputs:[]},{type:`error`,name:`NoVenueSharesReceived`,inputs:[]},{type:`error`,name:`NotEarnVault`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]},{type:`error`,name:`UnexpectedAssetsReceived`,inputs:[{name:`expectedAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesBurned`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]}],_l=[{type:`function`,name:`ENGINE_SALT_DOMAIN`,inputs:[],outputs:[{name:``,type:`bytes32`}],stateMutability:`view`},{type:`function`,name:`computeEngineSalt`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:``,type:`bytes32`}],stateMutability:`pure`},{type:`function`,name:`deploy`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:`engine`,type:`address`}],stateMutability:`nonpayable`},{type:`function`,name:`predictEngine`,inputs:[{name:`deploymentId`,type:`bytes32`},{name:`vault`,type:`address`},{name:`owner`,type:`address`},{name:`nameOverride`,type:`string`},{name:`symbolOverride`,type:`string`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`event`,name:`ERC4626EngineDeployed`,inputs:[{name:`engine`,type:`address`,indexed:!0},{name:`vault`,type:`address`,indexed:!0},{name:`owner`,type:`address`,indexed:!0},{name:`asset`,type:`address`,indexed:!1},{name:`deploymentId`,type:`bytes32`,indexed:!1},{name:`engineSalt`,type:`bytes32`,indexed:!1}],anonymous:!1},{type:`error`,name:`EmptyDeploymentId`,inputs:[]},{type:`error`,name:`EngineAlreadyExists`,inputs:[{name:`engine`,type:`address`}]},{type:`error`,name:`FactoryCannotBeFinalOwner`,inputs:[]}],vl=[{type:`constructor`,inputs:[{name:`peripheryRegistry_`,type:`address`},{name:`owner_`,type:`address`},{name:`maxRateAge_`,type:`uint64`},{name:`name_`,type:`string`},{name:`symbol_`,type:`string`}],stateMutability:`nonpayable`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`accountant`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`accountantRateUpdatedAt`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`asset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`authorizedForwarder`,inputs:[{name:`forwarder`,type:`address`}],outputs:[{name:`authorized`,type:`bool`}],stateMutability:`view`},{type:`function`,name:`baseAsset`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`cancelRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`claimQueue`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`claimRedeem`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`deposit`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`earnVault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`finalizeOneExternal`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`forwardSolved`,inputs:[{name:`requestIds`,type:`bytes32[]`},{name:`asset_`,type:`address`},{name:`delta`,type:`uint256`}],outputs:[{name:`claimed`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`getClaim`,inputs:[{name:`requestId`,type:`bytes32`}],outputs:[{name:`status`,type:`uint8`},{name:`request`,type:`tuple`,components:[{name:`nonce`,type:`uint96`},{name:`user`,type:`address`},{name:`assetOut`,type:`address`},{name:`amountOfShares`,type:`uint128`},{name:`amountOfAssets`,type:`uint128`},{name:`creationTime`,type:`uint40`},{name:`secondsToMaturity`,type:`uint24`},{name:`secondsToDeadline`,type:`uint24`}]}],stateMutability:`view`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`},{name:`finalOwner_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`initializeEarnVault`,inputs:[{name:`earnVault_`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`isFeeValuationFresh`,inputs:[],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`maxRateAge`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`name`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`openClaimsByQueue`,inputs:[{name:`requestQueue`,type:`address`}],outputs:[{name:`count`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`peripheryRegistry`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`peripheryVersion`,inputs:[],outputs:[{name:``,type:`uint64`}],stateMutability:`view`},{type:`function`,name:`previewRedeem`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`previewWithdraw`,inputs:[{name:`assets`,type:`uint256`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`queue`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`rate`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`recoverExternalSettlement`,inputs:[{name:`requestIds`,type:`bytes32[]`}],outputs:[{name:`claimed`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`redeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`receiver`,type:`address`},{name:`minAssets`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`renounceOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`requestRedeem`,inputs:[{name:`engineShares`,type:`uint256`},{name:`requestData`,type:`bytes`}],outputs:[{name:`requestId`,type:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`setAuthorizedForwarder`,inputs:[{name:`account`,type:`address`},{name:`authorized`,type:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxRateAge`,inputs:[{name:`newMaxRateAge`,type:`uint64`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settled`,inputs:[{name:`asset`,type:`address`}],outputs:[{name:`amount`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`shareScale`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`supportsInterface`,inputs:[{name:`interfaceId`,type:`bytes4`}],outputs:[{name:``,type:`bool`}],stateMutability:`view`},{type:`function`,name:`sweepDust`,inputs:[{name:`token`,type:`address`},{name:`to`,type:`address`},{name:`amount`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`symbol`,inputs:[],outputs:[{name:``,type:`string`}],stateMutability:`view`},{type:`function`,name:`syncVedaPeriphery`,inputs:[{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`teller`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`totalAssets`,inputs:[],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`totalShares`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`unresolvedClaimCount`,inputs:[],outputs:[{name:``,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`valueOf`,inputs:[{name:`engineShares`,type:`uint256`}],outputs:[{name:`assets`,type:`uint256`}],stateMutability:`view`},{type:`function`,name:`vault`,inputs:[],outputs:[{name:``,type:`address`}],stateMutability:`view`},{type:`function`,name:`withdraw`,inputs:[{name:`assets`,type:`uint256`},{name:`receiver`,type:`address`}],outputs:[{name:`engineShares`,type:`uint256`}],stateMutability:`nonpayable`},{type:`event`,name:`AuthorizedForwarderChanged`,inputs:[{name:`account`,type:`address`,indexed:!0},{name:`authorized`,type:`bool`,indexed:!1}],anonymous:!1},{type:`event`,name:`Deposited`,inputs:[{name:`earnVault`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineShares`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`DustSwept`,inputs:[{name:`token`,type:`address`,indexed:!0},{name:`to`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`EarnVaultInitialized`,inputs:[{name:`earnVault`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`ExternalSettlementRecovered`,inputs:[{name:`requestCount`,type:`uint256`,indexed:!1},{name:`recoveredAssets`,type:`uint256`,indexed:!1},{name:`claimed`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`FinalizeFailed`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Finalized`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`MaxRateAgeUpdated`,inputs:[{name:`oldMaxRateAge`,type:`uint64`,indexed:!1},{name:`newMaxRateAge`,type:`uint64`,indexed:!1}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`previousOwner`,type:`address`,indexed:!0},{name:`newOwner`,type:`address`,indexed:!0}],anonymous:!1},{type:`event`,name:`RedeemCancelledOnQueue`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`engineShares`,type:`uint128`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemClaimed`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`RedeemRequested`,inputs:[{name:`requestId`,type:`bytes32`,indexed:!0},{name:`assetOut`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint128`,indexed:!1}],anonymous:!1},{type:`event`,name:`Redeemed`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`engineShares`,type:`uint256`,indexed:!1},{name:`assets`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`newTotal`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`Unearmarked`,inputs:[{name:`asset`,type:`address`,indexed:!0},{name:`amount`,type:`uint256`,indexed:!1},{name:`newTotal`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`VedaEngineInitialized`,inputs:[{name:`teller`,type:`address`,indexed:!0},{name:`queue`,type:`address`,indexed:!0},{name:`accountant`,type:`address`,indexed:!0},{name:`peripheryVersion`,type:`uint64`,indexed:!1},{name:`maxRateAge`,type:`uint64`,indexed:!1}],anonymous:!1},{type:`event`,name:`VedaPeripheryUpdated`,inputs:[{name:`registryVersion`,type:`uint64`,indexed:!0},{name:`oldTeller`,type:`address`,indexed:!0},{name:`oldQueue`,type:`address`,indexed:!0},{name:`oldAccountant`,type:`address`,indexed:!1},{name:`newTeller`,type:`address`,indexed:!1},{name:`newQueue`,type:`address`,indexed:!1},{name:`newAccountant`,type:`address`,indexed:!1},{name:`validatedRate`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`event`,name:`WithdrewExact`,inputs:[{name:`receiver`,type:`address`,indexed:!0},{name:`assets`,type:`uint256`,indexed:!1},{name:`engineSharesBurned`,type:`uint256`,indexed:!1}],anonymous:!1},{type:`error`,name:`AlreadyInitialized`,inputs:[]},{type:`error`,name:`AssetsNotArrived`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`BaseAssetSweepBlocked`,inputs:[{name:`unresolvedClaims`,type:`uint256`}]},{type:`error`,name:`CannotSweepEngineBacking`,inputs:[]},{type:`error`,name:`ClaimNotClaimable`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`ClaimNotOpen`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`CreditExceedsBalance`,inputs:[{name:`asset`,type:`address`},{name:`have`,type:`uint256`},{name:`wantTotal`,type:`uint256`}]},{type:`error`,name:`DepositsNotPaused`,inputs:[]},{type:`error`,name:`DuplicateRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`EarnVaultNotSet`,inputs:[]},{type:`error`,name:`EmptyMetadata`,inputs:[]},{type:`error`,name:`EngineSharesTooLarge`,inputs:[{name:`engineShares`,type:`uint256`}]},{type:`error`,name:`InsufficientAssetsReceived`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`InvalidAsset`,inputs:[{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`InvalidMaxRateAge`,inputs:[]},{type:`error`,name:`InvalidRateTimestamp`,inputs:[{name:`updatedAt`,type:`uint256`},{name:`currentTime`,type:`uint256`}]},{type:`error`,name:`InvalidTrackedRequest`,inputs:[{name:`requestId`,type:`bytes32`}]},{type:`error`,name:`InvalidVedaPeriphery`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`InvalidVedaPeripheryWiring`,inputs:[{name:`component`,type:`address`},{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`InvalidVedaRateBounds`,inputs:[{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}]},{type:`error`,name:`InvalidVenueShareDecimals`,inputs:[]},{type:`error`,name:`NoPublishedVedaPeriphery`,inputs:[]},{type:`error`,name:`NoRecoverableClaims`,inputs:[]},{type:`error`,name:`NoVenueSharesReceived`,inputs:[]},{type:`error`,name:`NotAuthorizedForwarder`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`NotEarnVault`,inputs:[{name:`caller`,type:`address`}]},{type:`error`,name:`NotSelf`,inputs:[]},{type:`error`,name:`OwnableInvalidOwner`,inputs:[{name:`owner`,type:`address`}]},{type:`error`,name:`OwnableUnauthorizedAccount`,inputs:[{name:`account`,type:`address`}]},{type:`error`,name:`QueueTrackingDisabled`,inputs:[{name:`queue`,type:`address`}]},{type:`error`,name:`QueueUnavailable`,inputs:[]},{type:`error`,name:`QueuedAssetsBelowMinimum`,inputs:[{name:`minimumAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`RateChangedWithinTransaction`,inputs:[{name:`expected`,type:`uint256`},{name:`actual`,type:`uint256`}]},{type:`error`,name:`ReentrantCall`,inputs:[]},{type:`error`,name:`RegistryEngineMismatch`,inputs:[{name:`expected`,type:`address`},{name:`actual`,type:`address`}]},{type:`error`,name:`SolveUnderfunded`,inputs:[{name:`asset`,type:`address`},{name:`delivered`,type:`uint256`},{name:`required`,type:`uint256`}]},{type:`error`,name:`StaleAccountantRate`,inputs:[{name:`updatedAt`,type:`uint256`},{name:`currentTime`,type:`uint256`},{name:`maxAge`,type:`uint256`}]},{type:`error`,name:`SweepExceedsAvailableBalance`,inputs:[{name:`token`,type:`address`},{name:`available`,type:`uint256`},{name:`requested`,type:`uint256`}]},{type:`error`,name:`TransferFailed`,inputs:[]},{type:`error`,name:`UnexpectedAssetsReceived`,inputs:[{name:`expectedAssets`,type:`uint256`},{name:`actualAssets`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesBurned`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`UnexpectedVenueSharesQueued`,inputs:[{name:`expectedShares`,type:`uint256`},{name:`actualShares`,type:`uint256`}]},{type:`error`,name:`UnsupportedAccountantFreshness`,inputs:[{name:`accountant`,type:`address`}]},{type:`error`,name:`VedaRateOutOfBounds`,inputs:[{name:`rate`,type:`uint256`},{name:`minRate`,type:`uint256`},{name:`maxRate`,type:`uint256`}]},{type:`error`,name:`ZeroAddress`,inputs:[]},{type:`error`,name:`ZeroMinimumQueuedAssets`,inputs:[]}],yl=[{name:`MAX_DEPOSITS_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`MAX_TOKENS_ENABLED_PER_TEMPO_BLOCK`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`submitBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`tempoBlockNumber`},{type:`uint64`,name:`recentTempoBlockNumber`},{type:`tuple`,name:`blockTransition`,components:[{type:`bytes32`,name:`prevBlockHash`},{type:`bytes32`,name:`nextBlockHash`}]},{type:`tuple`,name:`depositQueueTransition`,components:[{type:`bytes32`,name:`prevProcessedHash`},{type:`bytes32`,name:`nextProcessedHash`},{type:`uint64`,name:`prevDepositNumber`},{type:`uint64`,name:`nextDepositNumber`}]},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`bytes`,name:`verifierConfig`},{type:`bytes`,name:`proof`},{type:`uint256`,name:`nextZoneHeight`},{type:`bytes[]`,name:`signatures`}],outputs:[]},{name:`BatchSubmitted`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalBatchIndex`,indexed:!0},{type:`uint256`,name:`withdrawalQueueIndex`,indexed:!0},{type:`bytes32`,name:`nextProcessedDepositQueueHash`},{type:`bytes32`,name:`nextBlockHash`},{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]}],bl=[{name:`tempoGasRate`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`maxWithdrawalsPerBlock`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint32`}]},{name:`lastBatch`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple`,components:[{type:`bytes32`,name:`withdrawalQueueHash`},{type:`uint64`,name:`withdrawalBatchIndex`}]}]},{name:`lastFinalizedTimestamp`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`nextWithdrawalIndex`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`lastFallbackNonce`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`pendingWithdrawalsCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`getPendingWithdrawals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`tuple[]`,components:[{type:`address`,name:`token`},{type:`address`,name:`sender`},{type:`bytes32`,name:`txHash`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`callbackData`},{type:`bytes`,name:`revealTo`}]}]},{name:`consumeFallbackRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`fallbackNonce`}],outputs:[{type:`address`,name:`recipient`}]},{name:`calculateWithdrawalFee`,type:`function`,stateMutability:`view`,inputs:[{type:`uint64`,name:`gasLimit`}],outputs:[{type:`uint128`,name:`fee`}]},{name:`MAX_CALLBACK_DATA_SIZE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`MAX_WITHDRAWAL_GAS_LIMIT`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`WITHDRAWAL_BASE_GAS`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`REVEAL_TO_KEY_LENGTH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`AUTHENTICATED_WITHDRAWAL_CIPHERTEXT_LENGTH`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`setTempoGasRate`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`_tempoGasRate`}],outputs:[]},{name:`setMaxWithdrawalsPerBlock`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`_maxWithdrawalsPerBlock`}],outputs:[]},{name:`requestWithdrawal`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`address`,name:`zoneFallbackRecipient`},{type:`bytes`,name:`data`},{type:`bytes`,name:`revealTo`}],outputs:[]},{name:`enqueueDepositBounceBack`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`address`,name:`tempoRefundRecipient`}],outputs:[]},{name:`finalizeWithdrawalBatch`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`count`},{type:`uint64`,name:`blockNumber`},{type:`bytes[]`,name:`encryptedSenders`}],outputs:[{type:`bytes32`,name:`withdrawalQueueHash`}]},{name:`WithdrawalRequested`,type:`event`,inputs:[{type:`uint64`,name:`withdrawalIndex`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`address`,name:`to`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`fee`},{type:`bytes32`,name:`memo`},{type:`uint64`,name:`gasLimit`},{type:`uint64`,name:`fallbackNonce`},{type:`bytes`,name:`data`},{type:`bytes`,name:`revealTo`}]},{name:`BatchFinalized`,type:`event`,inputs:[{type:`bytes32`,name:`withdrawalQueueHash`,indexed:!0},{type:`uint64`,name:`withdrawalBatchIndex`}]},{name:`TempoGasRateUpdated`,type:`event`,inputs:[{type:`uint128`,name:`tempoGasRate`}]},{name:`MaxWithdrawalsPerBlockUpdated`,type:`event`,inputs:[{type:`uint32`,name:`maxWithdrawalsPerBlock`}]},{name:`OnlySequencer`,type:`error`,inputs:[]},{name:`GasLimitTooHigh`,type:`error`,inputs:[]},{name:`OnlyZoneInbox`,type:`error`,inputs:[]},{name:`InvalidWithdrawalCount`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidEncryptedSenderCount`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidEncryptedSenderLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidFallbackRecipient`,type:`error`,inputs:[]},{name:`CallbackDataTooLarge`,type:`error`,inputs:[]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`InvalidBlockNumber`,type:`error`,inputs:[]},{name:`TooManyWithdrawalsThisBlock`,type:`error`,inputs:[]},{name:`InvalidRevealTo`,type:`error`,inputs:[]},{name:`InvalidCurrentTxHash`,type:`error`,inputs:[]},{name:`ZeroAmountWithdrawal`,type:`error`,inputs:[]},{name:`StaticCallNotAllowed`,type:`error`,inputs:[]}],xl=[{name:`relayMessage`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint32`,name:`zoneId`},{type:`address`,name:`token`},{type:`bytes32`,name:`senderTag`},{type:`address`,name:`target`},{type:`uint128`,name:`amount`},{type:`uint64`,name:`gasLimit`},{type:`bytes`,name:`data`}],outputs:[]}],Sl=[{name:`processedDepositQueueHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`processedDepositNumber`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`processedTokenEnablementHash`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`processedEnabledTokenCount`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`tempoPortal`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`tempoState`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`refunds`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`},{type:`address`,name:`owner`}],outputs:[{type:`uint128`}]},{name:`claimRefund`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`uint128`,name:`amount`}]},{name:`advanceTempo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes`,name:`header`},{type:`tuple[]`,name:`deposits`,components:[{type:`uint8`,name:`depositType`},{type:`bytes`,name:`depositData`},{type:`bool`,name:`rejected`}]},{type:`tuple[]`,name:`decryptions`,components:[{type:`bytes32`,name:`sharedSecret`},{type:`uint8`,name:`sharedSecretYParity`},{type:`tuple`,name:`cpProof`,components:[{type:`bytes32`,name:`s`},{type:`bytes32`,name:`c`}]}]},{type:`tuple[]`,name:`enabledTokens`,components:[{type:`address`,name:`token`},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]}],outputs:[]},{name:`advanceTempoHeaders`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes[]`,name:`headers`}],outputs:[]},{name:`TempoAdvanced`,type:`event`,inputs:[{type:`bytes32`,name:`tempoBlockHash`,indexed:!0},{type:`uint64`,name:`tempoBlockNumber`,indexed:!0},{type:`uint256`,name:`depositsProcessed`},{type:`bytes32`,name:`newProcessedDepositQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`}]},{name:`TempoAdvanced`,type:`event`,inputs:[{type:`bytes32`,name:`tempoBlockHash`,indexed:!0},{type:`uint64`,name:`tempoBlockNumber`,indexed:!0},{type:`uint256`,name:`depositsProcessed`},{type:`bytes32`,name:`newProcessedDepositQueueHash`},{type:`uint64`,name:`lastProcessedDepositNumber`},{type:`uint64`,name:`lastProcessedEnabledTokenCount`}]},{name:`DepositProcessed`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bytes32`,name:`memo`}]},{name:`DepositFailed`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`DepositRejected`,type:`event`,inputs:[{type:`bytes32`,name:`depositHash`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`uint8`,name:`depositType`},{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`address`,name:`tempoRefundRecipient`}]},{name:`WithdrawalBounceBackProcessed`,type:`event`,inputs:[{type:`address`,name:`zoneFallbackRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`WithdrawalBounceBackPending`,type:`event`,inputs:[{type:`address`,name:`zoneFallbackRecipient`,indexed:!0},{type:`address`,name:`token`},{type:`uint128`,name:`amount`}]},{name:`RefundClaimed`,type:`event`,inputs:[{type:`address`,name:`recipient`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`}]},{name:`TokenEnabled`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`}]},{name:`OnlySequencer`,type:`error`,inputs:[]},{name:`InvalidDepositQueueHash`,type:`error`,inputs:[]},{name:`InvalidWithdrawalBounceBack`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementHash`,type:`error`,inputs:[]},{name:`MissingDecryptionData`,type:`error`,inputs:[]},{name:`ExtraDecryptionData`,type:`error`,inputs:[]},{name:`InvalidSharedSecretProof`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]}],Cl=[{type:`constructor`,inputs:[{name:`baseToken_`,type:`address`,internalType:`contract ITIP20`},{name:`quoteToken_`,type:`address`,internalType:`contract ITIP20`},{name:`oracle_`,type:`address`,internalType:`contract IPriceOracle`},{name:`addressRegistry_`,type:`address`,internalType:`contract IAddressRegistry`},{name:`owner_`,type:`address`,internalType:`address`},{name:`guardian_`,type:`address`,internalType:`address`},{name:`maxOracleAge_`,type:`uint256`,internalType:`uint256`},{name:`maxPriceDeviationBps_`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`BPS`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`acceptOwnership`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`addressRegistry`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IAddressRegistry`}],stateMutability:`view`},{type:`function`,name:`baseDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`baseToQuotePriceAnchor`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`baseToken`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ITIP20`}],stateMutability:`view`},{type:`function`,name:`fund`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`},{name:`memo`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`guardian`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`maxOracleAge`,inputs:[],outputs:[{name:``,type:`uint80`,internalType:`uint80`}],stateMutability:`view`},{type:`function`,name:`maxPriceDeviationBps`,inputs:[],outputs:[{name:``,type:`uint16`,internalType:`uint16`}],stateMutability:`view`},{type:`function`,name:`oracle`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract IPriceOracle`}],stateMutability:`view`},{type:`function`,name:`oracleDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`owner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`pause`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`paused`,inputs:[],outputs:[{name:``,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`pendingOwner`,inputs:[],outputs:[{name:``,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`priceAnchor`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`priceScale`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteDecimals`,inputs:[],outputs:[{name:``,type:`uint8`,internalType:`uint8`}],stateMutability:`view`},{type:`function`,name:`quoteExactInput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactInputFor`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`creditAfter`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactOutput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteExactOutputFor`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`creditAfter`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteToBasePriceAnchor`,inputs:[],outputs:[{name:``,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`quoteToken`,inputs:[],outputs:[{name:``,type:`address`,internalType:`contract ITIP20`}],stateMutability:`view`},{type:`function`,name:`recipientAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}],outputs:[{name:`allowed`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`resetPriceAnchor`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`resolveRecipient`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}],outputs:[{name:`resolved`,type:`address`,internalType:`address`}],stateMutability:`view`},{type:`function`,name:`roundingCredit`,inputs:[{name:`routeKey`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`credit`,type:`uint256`,internalType:`uint256`}],stateMutability:`view`},{type:`function`,name:`roundingRouteKey`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`setGuardian`,inputs:[{name:`newGuardian`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxOracleAge`,inputs:[{name:`newMaxOracleAge`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setMaxPriceDeviationBps`,inputs:[{name:`newMaxPriceDeviationBps`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setOracle`,inputs:[{name:`newOracle`,type:`address`,internalType:`contract IPriceOracle`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setRecipientAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`},{name:`allowed`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`setTakerAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`},{name:`allowed`,type:`bool`,internalType:`bool`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`swapExactInput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountIn`,type:`uint256`,internalType:`uint256`},{name:`minAmountOut`,type:`uint256`,internalType:`uint256`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,internalType:`bytes32`},{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`expectedOraclePrice`,type:`uint256`,internalType:`uint256`},{name:`oraclePriceToleranceBps`,type:`uint256`,internalType:`uint256`},{name:`minimumOracleUpdatedAt`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountOut`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`swapExactOutput`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`amountOut`,type:`uint256`,internalType:`uint256`},{name:`maxAmountIn`,type:`uint256`,internalType:`uint256`},{name:`recipient`,type:`address`,internalType:`address`},{name:`customerId`,type:`bytes32`,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,internalType:`bytes32`},{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`expectedOraclePrice`,type:`uint256`,internalType:`uint256`},{name:`oraclePriceToleranceBps`,type:`uint256`,internalType:`uint256`},{name:`minimumOracleUpdatedAt`,type:`uint256`,internalType:`uint256`}],outputs:[{name:`amountIn`,type:`uint256`,internalType:`uint256`}],stateMutability:`nonpayable`},{type:`function`,name:`takerAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`}],outputs:[{name:`allowed`,type:`bool`,internalType:`bool`}],stateMutability:`view`},{type:`function`,name:`transferOwnership`,inputs:[{name:`newOwner`,type:`address`,internalType:`address`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`unpause`,inputs:[],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`recipient`,type:`address`,internalType:`address`},{name:`amount`,type:`uint256`,internalType:`uint256`},{name:`memo`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`Funded`,inputs:[{name:`token`,type:`address`,indexed:!0,internalType:`address`},{name:`amount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`memo`,type:`bytes32`,indexed:!0,internalType:`bytes32`}],anonymous:!1},{type:`event`,name:`GuardianUpdated`,inputs:[{name:`oldGuardian`,type:`address`,indexed:!0,internalType:`address`},{name:`newGuardian`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`MaxOracleAgeUpdated`,inputs:[{name:`oldMaxAge`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newMaxAge`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`MaxPriceDeviationBpsUpdated`,inputs:[{name:`oldMaxPriceDeviationBps`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newMaxPriceDeviationBps`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`OracleUpdated`,inputs:[{name:`oldOracle`,type:`address`,indexed:!0,internalType:`address`},{name:`newOracle`,type:`address`,indexed:!0,internalType:`address`},{name:`decimals`,type:`uint8`,indexed:!1,internalType:`uint8`}],anonymous:!1},{type:`event`,name:`OwnershipTransferStarted`,inputs:[{name:`oldOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`pendingOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`OwnershipTransferred`,inputs:[{name:`oldOwner`,type:`address`,indexed:!0,internalType:`address`},{name:`newOwner`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`PausedStateChanged`,inputs:[{name:`paused`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`PriceAnchorUpdated`,inputs:[{name:`baseToQuote`,type:`bool`,indexed:!0,internalType:`bool`},{name:`oldAnchor`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newAnchor`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`RecipientPermissionUpdated`,inputs:[{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`allowed`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`RoundingCreditUpdated`,inputs:[{name:`routeKey`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`previousCredit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newCredit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TakerPermissionUpdated`,inputs:[{name:`taker`,type:`address`,indexed:!0,internalType:`address`},{name:`allowed`,type:`bool`,indexed:!1,internalType:`bool`}],anonymous:!1},{type:`event`,name:`TradeExecuted`,inputs:[{name:`taker`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`customerId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`tradeId`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`tokenIn`,type:`address`,indexed:!1,internalType:`address`},{name:`tokenOut`,type:`address`,indexed:!1,internalType:`address`},{name:`amountIn`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`amountOut`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`oraclePrice`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`oracleUpdatedAt`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Withdrawn`,inputs:[{name:`token`,type:`address`,indexed:!0,internalType:`address`},{name:`recipient`,type:`address`,indexed:!0,internalType:`address`},{name:`amount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`memo`,type:`bytes32`,indexed:!1,internalType:`bytes32`}],anonymous:!1},{type:`error`,name:`AmountIsZero`,inputs:[]},{type:`error`,name:`CustomerIdIsZero`,inputs:[]},{type:`error`,name:`DeadlineExpired`,inputs:[{name:`deadline`,type:`uint256`,internalType:`uint256`},{name:`currentTimestamp`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`ExactBalanceDeltaFailed`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`expected`,type:`uint256`,internalType:`uint256`},{name:`actual`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`FutureOracleTimestamp`,inputs:[{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`currentTime`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InsufficientInventory`,inputs:[{name:`token`,type:`address`,internalType:`address`},{name:`available`,type:`uint256`,internalType:`uint256`},{name:`required`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidAddress`,inputs:[]},{type:`error`,name:`InvalidMaxOracleAge`,inputs:[]},{type:`error`,name:`InvalidMaxPriceDeviationBps`,inputs:[{name:`supplied`,type:`uint256`,internalType:`uint256`},{name:`maximum`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidOraclePriceToleranceBps`,inputs:[{name:`supplied`,type:`uint256`,internalType:`uint256`},{name:`maximum`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`InvalidPrice`,inputs:[]},{type:`error`,name:`NotGuardianOrOwner`,inputs:[]},{type:`error`,name:`NotOwner`,inputs:[]},{type:`error`,name:`NotPaused`,inputs:[]},{type:`error`,name:`NotPendingOwner`,inputs:[]},{type:`error`,name:`OracleDecimalsChanged`,inputs:[{name:`currentDecimals`,type:`uint8`,internalType:`uint8`},{name:`proposedDecimals`,type:`uint8`,internalType:`uint8`}]},{type:`error`,name:`OraclePriceToleranceExceeded`,inputs:[{name:`expectedPrice`,type:`uint256`,internalType:`uint256`},{name:`actualPrice`,type:`uint256`,internalType:`uint256`},{name:`toleranceBps`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`OracleTimestampTooOld`,inputs:[{name:`minimumUpdatedAt`,type:`uint256`,internalType:`uint256`},{name:`actualUpdatedAt`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`Paused`,inputs:[]},{type:`error`,name:`PriceAnchorNotInitialized`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`}]},{type:`error`,name:`PriceDeviationExceeded`,inputs:[{name:`baseToQuote`,type:`bool`,internalType:`bool`},{name:`price`,type:`uint256`,internalType:`uint256`},{name:`anchor`,type:`uint256`,internalType:`uint256`},{name:`maxDeviationBps`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`RecipientNotAllowed`,inputs:[{name:`recipient`,type:`address`,internalType:`address`}]},{type:`error`,name:`ReentrancyGuardReentrantCall`,inputs:[]},{type:`error`,name:`SameToken`,inputs:[]},{type:`error`,name:`SlippageExceeded`,inputs:[{name:`limit`,type:`uint256`,internalType:`uint256`},{name:`actual`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`StaleOraclePrice`,inputs:[{name:`updatedAt`,type:`uint256`,internalType:`uint256`},{name:`maxAge`,type:`uint256`,internalType:`uint256`}]},{type:`error`,name:`TakerNotAllowed`,inputs:[{name:`taker`,type:`address`,internalType:`address`}]},{type:`error`,name:`TokenTransferFailed`,inputs:[{name:`token`,type:`address`,internalType:`address`}]},{type:`error`,name:`UnsupportedDecimals`,inputs:[{name:`baseDecimals`,type:`uint8`,internalType:`uint8`},{name:`quoteDecimals`,type:`uint8`,internalType:`uint8`},{name:`oracleDecimals`,type:`uint8`,internalType:`uint8`}]},{type:`error`,name:`UnsupportedToken`,inputs:[{name:`token`,type:`address`,internalType:`address`}]}],wl=[...Z,...Vc,...Hc,...Uc,...Xc,...Yc,...Wc,...Gc,...Kc,...qc,...Jc,...$c,...Zc,...Qc,...el,...nl,...tl,...rl,...il,...al],Tl=[...ol,...sl,...cl,...ll,...ul,...dl,...fl,...pl,...ml,...hl,...gl,..._l,...vl],El=[...Sl,...xl,...bl,...yl],Dl=[...Cl];[...wl,...Tl,...El,...Dl];var Ol=[{name:`UnauthorizedCaller`,type:`error`,inputs:[]},{name:`KeyAlreadyExists`,type:`error`,inputs:[]},{name:`KeyNotFound`,type:`error`,inputs:[]},{name:`KeyExpired`,type:`error`,inputs:[]},{name:`SpendingLimitExceeded`,type:`error`,inputs:[]},{name:`InvalidSpendingLimit`,type:`error`,inputs:[]},{name:`InvalidSignatureType`,type:`error`,inputs:[]},{name:`ZeroPublicKey`,type:`error`,inputs:[]},{name:`ExpiryInPast`,type:`error`,inputs:[]},{name:`KeyAlreadyRevoked`,type:`error`,inputs:[]},{name:`SignatureTypeMismatch`,type:`error`,inputs:[{type:`uint8`,name:`expected`},{type:`uint8`,name:`actual`}]},{name:`CallNotAllowed`,type:`error`,inputs:[]},{name:`InvalidCallScope`,type:`error`,inputs:[]},{name:`InvalidKeyId`,type:`error`,inputs:[]},{name:`InvalidKeyAuthorizationWitness`,type:`error`,inputs:[]},{name:`KeyAuthorizationWitnessAlreadyBurned`,type:`error`,inputs:[]},{name:`LegacyAuthorizeKeySelectorChanged`,type:`error`,inputs:[{type:`bytes4`,name:`newSelector`}]},{name:`MasterIdCollision`,type:`error`,inputs:[{type:`address`,name:`master`}]},{name:`InvalidMasterAddress`,type:`error`,inputs:[]},{name:`ProofOfWorkFailed`,type:`error`,inputs:[]},{name:`VirtualAddressUnregistered`,type:`error`,inputs:[]},{name:`InvalidAccount`,type:`error`,inputs:[]},{name:`InvalidConfig`,type:`error`,inputs:[]},{name:`InvalidThreshold`,type:`error`,inputs:[]},{name:`InvalidConfigurableAccountOwner`,type:`error`,inputs:[]},{name:`InvalidWeight`,type:`error`,inputs:[]},{name:`TooManyOwners`,type:`error`,inputs:[]},{name:`DuplicateOwner`,type:`error`,inputs:[]},{name:`InvalidOwnerOrder`,type:`error`,inputs:[]},{name:`UnauthorizedConfigurableAccountCaller`,type:`error`,inputs:[]},{name:`PrimitiveRootRequired`,type:`error`,inputs:[]},{name:`UpgradeMustBeOnlyCall`,type:`error`,inputs:[]},{name:`AccountAlreadyConfigurable`,type:`error`,inputs:[]},{name:`AccountHasCode`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`IdenticalAddresses`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientReserves`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`DivisionByZero`,type:`error`,inputs:[]},{name:`InvalidSwapCalculation`,type:`error`,inputs:[]},{name:`InsufficientFeeTokenBalance`,type:`error`,inputs:[]},{name:`CannotChangeWithinBlock`,type:`error`,inputs:[]},{name:`ProtocolNonceNotSupported`,type:`error`,inputs:[]},{name:`InvalidNonceKey`,type:`error`,inputs:[]},{name:`NonceOverflow`,type:`error`,inputs:[]},{name:`ExpiringNonceReplay`,type:`error`,inputs:[]},{name:`ExpiringNonceSetFull`,type:`error`,inputs:[]},{name:`InvalidExpiringNonceExpiry`,type:`error`,inputs:[]},{name:`InvalidReceipt`,type:`error`,inputs:[]},{name:`InvalidClaimAddress`,type:`error`,inputs:[]},{name:`UnauthorizedClaimer`,type:`error`,inputs:[]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`InvalidFormat`,type:`error`,inputs:[]},{name:`InvalidSignature`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]},{name:`IndexAlreadySet`,type:`error`,inputs:[]},{name:`InvalidMode`,type:`error`,inputs:[]},{name:`OnlyDirectCall`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`PermitExpired`,type:`error`,inputs:[]},{name:`LogoURITooLong`,type:`error`,inputs:[]},{name:`InvalidLogoURI`,type:`error`,inputs:[]},{name:`RootKeyRetired`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`ChannelAlreadyExists`,type:`error`,inputs:[]},{name:`ChannelNotFound`,type:`error`,inputs:[]},{name:`NotPayer`,type:`error`,inputs:[]},{name:`NotPayeeOrOperator`,type:`error`,inputs:[]},{name:`InvalidPayee`,type:`error`,inputs:[]},{name:`ZeroDeposit`,type:`error`,inputs:[]},{name:`ExpiringNonceHashNotSet`,type:`error`,inputs:[]},{name:`AmountExceedsDeposit`,type:`error`,inputs:[]},{name:`AmountNotIncreasing`,type:`error`,inputs:[]},{name:`CaptureAmountInvalid`,type:`error`,inputs:[]},{name:`CloseNotReady`,type:`error`,inputs:[]},{name:`DepositOverflow`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]},{name:`PolicyNotFound`,type:`error`,inputs:[]},{name:`PolicyNotSimple`,type:`error`,inputs:[]},{name:`InvalidPolicyType`,type:`error`,inputs:[]},{name:`IncompatiblePolicyType`,type:`error`,inputs:[]},{name:`VirtualAddressNotAllowed`,type:`error`,inputs:[]},{name:`InvalidReceivePolicyType`,type:`error`,inputs:[]},{name:`InvalidRecoveryAuthority`,type:`error`,inputs:[]},{name:`ValidatorAlreadyExists`,type:`error`,inputs:[]},{name:`ValidatorNotFound`,type:`error`,inputs:[]},{name:`InvalidPublicKey`,type:`error`,inputs:[]},{name:`NotHostPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`field`},{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`AlreadyInitialized`,type:`error`,inputs:[]},{name:`IngressAlreadyExists`,type:`error`,inputs:[{type:`string`,name:`ingress`}]},{name:`EmptyV1ValidatorSet`,type:`error`,inputs:[]},{name:`InvalidMigrationIndex`,type:`error`,inputs:[]},{name:`InvalidOwner`,type:`error`,inputs:[]},{name:`InvalidSignatureFormat`,type:`error`,inputs:[]},{name:`InvalidValidatorAddress`,type:`error`,inputs:[]},{name:`MigrationNotComplete`,type:`error`,inputs:[]},{name:`NotInitialized`,type:`error`,inputs:[]},{name:`NotIp`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`NotIpPort`,type:`error`,inputs:[{type:`string`,name:`input`},{type:`string`,name:`backtrace`}]},{name:`PublicKeyAlreadyExists`,type:`error`,inputs:[]},{name:`AddressAlreadyHasValidator`,type:`error`,inputs:[]},{name:`ValidatorAlreadyDeactivated`,type:`error`,inputs:[]},{name:`TokenTransferPolicyNotSet`,type:`error`,inputs:[]},{name:`InvalidClosedLoopConfig`,type:`error`,inputs:[]},{name:`NotOwner`,type:`error`,inputs:[]},{name:`InvalidAdmin`,type:`error`,inputs:[]},{name:`InvalidSequencerSet`,type:`error`,inputs:[]},{name:`TokenMetadataTooLong`,type:`error`,inputs:[]},{name:`DuplicateAllowedAccount`,type:`error`,inputs:[]},{name:`DuplicateZoneGateway`,type:`error`,inputs:[]},{name:`NotSequencer`,type:`error`,inputs:[]},{name:`NotAdmin`,type:`error`,inputs:[]},{name:`NotPauseAuthority`,type:`error`,inputs:[]},{name:`CapabilityAbdicated`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`AbdicationAlreadyScheduled`,type:`error`,inputs:[{type:`uint8`,name:`capability`}]},{name:`PortalIsPaused`,type:`error`,inputs:[]},{name:`NotPendingAdmin`,type:`error`,inputs:[]},{name:`InvalidProof`,type:`error`,inputs:[]},{name:`InvalidTempoBlockNumber`,type:`error`,inputs:[]},{name:`NotFactory`,type:`error`,inputs:[]},{name:`NotSelf`,type:`error`,inputs:[]},{name:`MustDelegateCall`,type:`error`,inputs:[]},{name:`CallbackRejected`,type:`error`,inputs:[]},{name:`TransferFailed`,type:`error`,inputs:[]},{name:`ReentrantWithdrawal`,type:`error`,inputs:[]},{name:`EncryptionKeyExpired`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`},{type:`uint64`,name:`activationBlock`},{type:`uint64`,name:`supersededAtBlock`}]},{name:`InvalidEncryptionKeyIndex`,type:`error`,inputs:[{type:`uint256`,name:`keyIndex`}]},{name:`NoEncryptionKeySet`,type:`error`,inputs:[]},{name:`NoEncryptionKeyAtBlock`,type:`error`,inputs:[{type:`uint64`,name:`blockNumber`}]},{name:`InvalidEphemeralPubkey`,type:`error`,inputs:[]},{name:`InvalidCiphertextLength`,type:`error`,inputs:[{type:`uint256`,name:`actual`},{type:`uint256`,name:`expected`}]},{name:`InvalidProofOfPossession`,type:`error`,inputs:[]},{name:`DepositTooSmall`,type:`error`,inputs:[]},{name:`TokenEnablementBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`GasFeeRateTooHigh`,type:`error`,inputs:[]},{name:`DepositsNotActive`,type:`error`,inputs:[]},{name:`TokenAlreadyEnabled`,type:`error`,inputs:[]},{name:`TokenEnablementCursorNotInitialized`,type:`error`,inputs:[]},{name:`InvalidDepositTransition`,type:`error`,inputs:[]},{name:`InvalidTokenEnablementTransition`,type:`error`,inputs:[]},{name:`SequencerConfigurationUnchanged`,type:`error`,inputs:[]},{name:`InvalidQuorumCertificate`,type:`error`,inputs:[]},{name:`CallbackDidNotReturnToZone`,type:`error`,inputs:[]},{name:`InvalidBouncebackRecipient`,type:`error`,inputs:[]},{name:`TokenNotEnabled`,type:`error`,inputs:[]},{name:`DepositBlockCapacityExceeded`,type:`error`,inputs:[{type:`uint64`,name:`maximum`}]},{name:`InvalidCallbackTarget`,type:`error`,inputs:[]},{name:`AccountNotAllowed`,type:`error`,inputs:[{type:`address`,name:`account`}]},{name:`InvalidLeader`,type:`error`,inputs:[]},{name:`ActiveLeaderRemoved`,type:`error`,inputs:[]},{name:`LeaderAlreadyUpdatedThisBlock`,type:`error`,inputs:[]},{name:`StaleLeadershipEpoch`,type:`error`,inputs:[{type:`uint64`,name:`expected`},{type:`uint64`,name:`actual`}]}];eo(0),eo(0,42431);var kl=`0xaAAAaaAA00000000000000000000000000000000`,Al=`0xfdc0000000000000000000000000000000000000`,jl=`0xAACC000000000000000000000000000000000000`,Ml=`0xfeec000000000000000000000000000000000000`,Nl=`0x4e4F4E4345000000000000000000000000000000`,Pl=`0x20c0000000000000000000000000000000000000`,Fl=`0x5165300000000000000000000000000000000000`,Il=`0xdec0000000000000000000000000000000000000`,Ll=`0x4d50500000000000000000000000000000000000`,Rl=`0x20fc000000000000000000000000000000000000`,zl=`0x403c000000000000000000000000000000000000`;function Bl(e){let t=U(e);if(t.type===`configurable`||t.type===`keychain`)throw Error(`Configurable account owners must use primitive signatures.`);return t}function Vl(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||t?.source===`accessKey`||t?.source===`configurable`||e.calls!==void 0||e.feePayer!==void 0||e.feePayerSignature!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.accountSimulation!==void 0||e.nonceKey!==void 0||e.owner!==void 0||e.signature!==void 0||e.signatures!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:Ss(e)}function Hl(e){try{return Vl(e)===`tempo`}catch{return!1}}function Ul(t){let n=e(t,0,1);return n===`0x76`||n===`0x78`?Gl(t):Ac(t)}async function Wl(e,n){if(!Hl(e)){if(n&&`type`in n&&n.type!==`secp256k1`)throw Error("Unsupported signature type. Expected `secp256k1` but got `"+n.type+"`.");if(n&&`type`in n){let{r,s:i,yParity:a}=n?.signature;return Zs(e,{r:t(r,{size:32}),s:t(i,{size:32}),yParity:a})}return Zs(e,n)}if(Vl(e)===`tempo`)return Kl(e,n);throw Error(`Unsupported transaction type`)}function Gl(e){let{feePayerSignature:n,nonce:r,...i}=Aa(e);return{...i,nonce:Number(r??0n),feePayerSignature:n&&{r:t(n.r,{size:32}),s:t(n.s,{size:32}),yParity:n.yParity}}}async function Kl(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return U({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,accountSimulation:a,nonce:o,owner:s,...c}=e,l=(()=>{let t=e.feePayerSignature;if(t)return{r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)};if(t===null||i)return null})(),u=e.feePayerSignature!==void 0&&e.feePayerSignature!==null,d=n!==void 0||!!(a&&e.signatures),f=i===!0&&(!d||!l)||typeof i==`object`&&!d||!d&&u,p={...c,calls:c.calls?.length?c.calls:[{to:c.to||(!c.data||c.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:c.value,data:c.data}],chainId:Number(r),feePayerSignature:l,type:`tempo`,...o?{nonce:BigInt(o)}:{}},m={...p};f&&delete m.feeToken;let h=(()=>{if(n)return n;if(!a||!e.signatures)return;let t=Na(ja(m)),r=e.signatures.map(e=>Bl(e)),i=V(a.config),o=e.from;if(!o)throw Error(`A configurable account sender is required for signing.`);return U({account:o,config:i,signatures:Ri({account:o,config:i,payload:t,signatures:r})})})();if(h&&typeof e.feePayer==`object`){let t=ja(p,{signature:h}),n=Fa(t,{sender:e.from??Mi({payload:Na(t),root:!0,signature:h})}),r=await e.feePayer.sign({hash:n});return q(t,{feePayerSignature:le(r)})}return i===!0||!h&&u?h&&l?q(m,{signature:h}):h?q(m,{format:`feePayer`,sender:e.from,signature:h}):q(m,{feePayerSignature:null}):q(m,{feePayerSignature:void 0,signature:h})}function ql(e){let{access:t}=e;return t?iu(e):ru(e)}function Jl(e){let t=(()=>{if(typeof e==`string`)return;if(`upgrade`in e)return e.upgrade;let{address:t,factory:n,...r}=e;return r})(),n=(()=>{if(!t)return;let n=t.owners.map(e=>typeof e==`string`||`address`in e?{owner:e,weight:1}:e).map(({owner:e,weight:t})=>({owner:typeof e==`string`?e:e.address,weight:t})),r=t.threshold??1;return typeof e!=`string`&&`upgrade`in e?hi(e.address,{owners:n,threshold:r}):V({...t,owners:n,threshold:r})})();if(typeof e!=`string`&&!(`upgrade`in e)){if((e.address===void 0||e.address===`infer`)&&n.version!==0n)throw Error(`An initial account config must have version zero.`);if(e.address!==void 0&&e.address!==`infer`&&n.version===0n)throw Error(`A current account config must have a version.`)}let r=Fn(typeof e==`string`?e:e.address===void 0||e.address===`infer`?gi(n,{factory:e.factory??`0x7171717171717171717171717171717171717171`}):e.address),i=t?t.owners.flatMap(e=>{let t=typeof e==`string`||`address`in e?e:e.owner;return typeof t==`string`?[]:[N(t)]}):[];if(i.some(e=>e.source===`configurable`||$l(e)))throw Error(`Configurable account owners must use primitive signatures.`);let a=n?.owners.flatMap(({owner:e})=>{let t=i.find(t=>z(t.address,e));return t?[t]:[]})??[],o={address:r,config:n,owners:a,publicKey:`0x`,source:`configurable`,type:`local`,async sign({hash:e}){return W(await Xl(o,{payload:e}))},async signMessage(){throw Error("`signMessage` is not supported for configurable accounts.")},async signTransaction(e,t){let{serializer:n=Wl}=t??{},i=e;if(i.owner){let e=N(i.owner);if(e.type!==`local`)throw Error(`A local owner account is required to approve a configurable account transaction.`);if(e.source!==`root`)throw Error(`A Tempo owner account is required to approve a configurable account transaction.`);let{owner:n,...r}=i;return await e.signTransaction(r,t)}if(a.length===0)return await n(e);let s={...i,signatures:void 0,...i.feePayerSignature===void 0?{}:{feePayerSignature:null}},c=O(await n(s)),l=i.accountSimulation;if(i.from&&!z(i.from,r))throw Error(`Configurable account does not match the transaction sender.`);return await n(e,await Xl(o,{config:l?.config,payload:c,signatures:i.signatures?.map(e=>Bl(e))}))},async signTypedData(){throw Error("`signTypedData` is not supported for configurable accounts.")}};return o}function Yl(e){return e.source===`configurable`}async function Xl(e,t){let{config:n,payload:r,signatures:i=[]}=t,a=n??e.config;if(!a)throw Error(`A current account config is required for local signing.`);let o=vi({account:e.address,config:a,payload:r}),s=[...i],c=new Set,l=0;for(let e of i){let t=Mi({payload:o,signature:e}).toLowerCase(),n=a.owners.find(e=>z(e.owner,t));n&&!c.has(t)&&(c.add(t),l+=Number(n.weight))}let u=[...a.owners].sort((e,t)=>Number(t.weight)-Number(e.weight)||e.owner.toLowerCase().localeCompare(t.owner.toLowerCase()));for(let t of u){if(l>=Number(a.threshold))break;let n=t.owner.toLowerCase();if(c.has(n))continue;let r=e.owners.find(e=>z(e.address,t.owner));if(r){if(!r.sign)throw Error(`Configurable account owner account cannot sign.`);if(s.push(Bl(await r.sign({hash:o}))),c.add(n),l+=Number(t.weight),l>=Number(a.threshold))break}}if(l<Number(a.threshold))throw Error(`Local owners do not meet the threshold.`);return U({account:e.address,config:a,signatures:Ri({account:e.address,config:a,payload:r,signatures:s})})}function Zl(e,t={}){let{id:n}=e,r=xe(e.publicKey);return ql({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await ni({...t,challenge:e,credentialId:n});return W({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function Ql(e){let{chainId:t,channel:n,cumulativeAmount:r}=e;return Xa({chainId:t,channelId:typeof n==`string`?n:Ja(n,{chainId:t}),cumulativeAmount:r})}function $l(e){return e.source===`accessKey`&&`accessKeyAddress`in e}function eu(e,t){let{admin:n,chainId:r,expiry:i,key:a,limits:o,scopes:s,witness:c}=t,{accessKeyAddress:l,keyType:u}=au(a),d=$l(e)||Yl(e)?{account:e.address}:{},f=n?{}:{expiry:i,limits:o,scopes:s};return Xi({address:l,chainId:r,type:u,witness:c,...n?{isAdmin:!0}:{},...d,...f})}async function tu(e,t){let{admin:n,chainId:r,expiry:i,key:a,limits:o,configurable:s,scopes:c,signatures:l,witness:u}=t,{accessKeyAddress:d,keyType:f}=au(a),p=$l(e),m=Yl(e),h=p||m?{account:e.address}:{},g=n?{}:{expiry:i,limits:o,scopes:c},_=eu(e,t);return qi({address:d,chainId:r,signature:U(await(async()=>{if(p)return e.sign({hash:_,raw:!0});if(m){if(!s)throw Error(`Configurable account state is required to sign a key authorization.`);return W(await Xl(e,{config:s.config,payload:_,signatures:l?.map(e=>Bl(e))}))}return e.sign({hash:_})})()),type:f,...u?{witness:u}:{},...n?{isAdmin:!0}:{},...h,...g})}function nu(e){let{keyType:n=`secp256k1`,parentAddress:r,source:i=`privateKey`,internal_version:a=`v2`}=e,o=r??R(e.publicKey),s=be(e.publicKey,{includePrefix:!1});async function c({hash:t,raw:n}){if(n)return await e.sign({hash:t});let i=r&&a===`v2`?O(T(`0x04`,t,r)):t,o=await e.sign({hash:i});return r?W(U({userAddress:r,inner:U(o),type:`keychain`,version:a})):o}return{address:Fn(o),keyType:n,sign:c,async signAuthorization(e){let{chainId:n,nonce:r}=e,i=e.contractAddress??e.address,a=U(await c({hash:Uo({address:i,chainId:n,nonce:r})}));if(a.type!==`secp256k1`)throw Error("Unsupported signature type. Expected `secp256k1` but got `"+a.type+"`.");let{r:o,s,yParity:l}=a.signature;return{address:i,chainId:n,nonce:r,r:t(o,{size:32}),s:t(s,{size:32}),yParity:l}},async signMessage(e){let{message:t}=e;return await c({hash:pc(t)})},async signTransaction(e,t){let{serializer:n=Wl}=t??{},r=`feePayerSignature`in e&&e.feePayerSignature?{...e,feePayerSignature:null}:e,i=O(await n(r)),{accountSimulation:a,from:o}=e;if(a){if(!o)throw Error(`A configurable account sender is required for signing.`);return await c({hash:vi({account:o,config:V(a.config),payload:i}),raw:!0})}return await n(e,U(await c({hash:i})))},async signTypedData(e){return await c({hash:xc(e)})},async signVoucher(e){let t=Ql(e);return r?await c({hash:t,raw:!0}):await c({hash:t})},publicKey:s,source:i,type:`local`}}function ru(e){let t=nu(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a,scopes:o,witness:s,admin:c}=n,{accessKeyAddress:l,keyType:u}=au(e),d=c?{}:{expiry:i,limits:a,scopes:o};return qi({address:l,chainId:r,signature:U(await t.sign({hash:Xi({address:l,chainId:r,type:u,witness:s,...c?{isAdmin:!0}:{},...d})})),type:u,...s?{witness:s}:{},...c?{isAdmin:!0}:{},...d})}}}function iu(e){let{access:t,keyAuthorizationManager:n}=e,{address:r}=N(t);return{...nu({...e,parentAddress:r}),accessKeyAddress:R(e.publicKey),keyAuthorizationManager:n,source:`accessKey`}}function au(e){return`accessKeyAddress`in e?{accessKeyAddress:e.accessKeyAddress,keyType:e.keyType}:`publicKey`in e&&e.publicKey?{accessKeyAddress:R(xe(e.publicKey)),keyType:e.type}:{accessKeyAddress:e.address,keyType:e.type}}var ou=class extends F{constructor({cause:e,error:t,hints:n},{details:r,docsPath:i,name:a=`TempoExecutionError`,shortMessage:o=t.message}={}){let s=e.metaMessages?.findIndex(e=>/^(Contract Call|Request Arguments):/.test(e));super(o,{cause:e,docsPath:i,metaMessages:[...r?[Oe(r),` `]:[],...n.length?[`How to fix:`,...n.map(e=>`- ${e}`),` `]:[],...s!==void 0&&s>=0?e.metaMessages.slice(s):[]],name:a}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"errorName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"hints",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t.abiItem,this.args=t.args,this.data=t.data,this.errorName=t.errorName,this.hints=n}},su=[`genesis`,`t0`,`t1`,`t1a`,`t1b`,`t1c`,`t2`,`t3`,`t4`,`t5`,`t6`,`t7`,`t8`,`t9`,`t10`,`t11`,`t12`,`t13`,`t14`];function cu(e,t){let n=su.indexOf(e);return n!==-1&&n<su.indexOf(t)}function Q(e,t={}){return(async(n,r)=>{try{return await e(n,r)}catch(e){let{toExecutionError:i}=await import(`./resolveError-DPXmbkOB.js`);throw await i(e,{...t,client:n,parameters:r})}})}function lu(e){let t=e.parameters.feeToken??e.client.chain?.feeToken;return t==null?void 0:Ta(t)}function uu(e,t){if(e!==void 0)return t===void 0?e.toString():`${Bc(e,t)} (${e})`}function du(e){if(!e)return;let t=Number(e)*1e3;return Math.abs(t)<=864e13?new Date(t).toISOString():e.toString()}function fu(e,t){let{decimals:n,token:r}=t;if(e&&typeof r==`string`){let t=mu(e,r);if(t)return{address:t.address,decimals:n??t.decimals}}let i=Ta(r);return{address:i,decimals:n??(e?gu(e,i):void 0)}}function pu(e,t){let n=e.tokens,r=e.chain?.id;if(!n||r===void 0)return;if(typeof t==`string`){let n=mu(e,t);if(n)return n}let i=Ta(t);for(let e of n){let t=hu(e,r);if(t&&_t(t.address,i))return t}}function mu(e,t){let n=e.tokens,r=e.chain?.id;if(!n||r===void 0)return;let i=t.toLowerCase();for(let e of n)if(e.symbol?.toLowerCase()===i)return hu(e,r)}function hu(e,t){let n=e.addresses[t];if(n)return{address:n,currency:e.currency,decimals:e.decimals,name:e.name,popular:e.popular,symbol:e.symbol}}function gu(e,t){let n=e.tokens,r=e.chain?.id;if(n&&r!==void 0)for(let e of n){let n=hu(e,r);if(n&&_t(n.address,t))return n.decimals}}async function _u(e,t){let{address:n,decimals:r}=fu(e,t);return r===void 0?{address:n,decimals:await Ls(e,{abi:$c,address:n,functionName:`decimals`})}:{address:n,decimals:r}}function vu(e){let{account:t,chain:n,feePayer:r,feeToken:i,gas:a,keyAuthorization:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,nonceKey:u,owner:d,validAfter:f,validBefore:p}=e;return{account:t,chain:n,feePayer:r,feeToken:i,gas:a,keyAuthorization:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,nonceKey:u,owner:d,validAfter:f,validBefore:p}}function yu(e){return e.length===2?e:[void 0,e[0]]}function $(e){return{...e,abi:[...e.abi,...Ol],data:It(e),to:e.address}}var bu=`0x20c000000000000000000000`;function xu(e){return!!e?.toLowerCase().startsWith(bu)}var Su={0:`secp256k1`,1:`p256`,2:`webAuthn`,3:`configurable`},Cu={true:`limited`,false:`unlimited`};async function wu(e,t){return wu.inner(Us,e,t)}(function(e){async function t(e,t,n){let{accessKey:r,admin:i,chainId:a=t.chain?.id,expiry:o,limits:s,scopes:c,witness:l,...u}=n,d=u.account??t.account;if(!d)throw Error(`account is required.`);if(!a)throw Error(`chainId is required.`);let f=await Mu(t,{account:d,accessKey:r,chainId:a,admin:i,expiry:o,limits:s,scopes:c,witness:l});return await Q(e,{hints:{KeyAlreadyExists:[`This access key is already authorized. Update its spending limits instead.`]}})(t,{...u,keyAuthorization:f})}e.inner=t;function n(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyAuthorized`,strict:!0});if(!t)throw Error("`KeyAuthorized` event not found.");return t}e.extractEvent=n})(wu||={});async function Tu(e,t){return Tu.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{witness:i,...a}=r,o=e.call({witness:i});return await Q(t)(n,{...a,...o})}e.inner=t;function n(e){let{witness:t}=e;return $({address:kl,abi:Z,functionName:`burnKeyAuthorizationWitness`,args:[t]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyAuthorizationWitnessBurned`,strict:!0});if(!t)throw Error("`KeyAuthorizationWitnessBurned` event not found.");return t}e.extractEvent=r})(Tu||={});async function Eu(e,t){let{account:n=e.account,accessKey:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n),o=await Q(Ls)(e,{...i,account:null,...Eu.call({account:a.address,accessKey:r})});return{address:o.keyId,keyType:Su[o.signatureType]??`secp256k1`,expiry:o.expiry,spendPolicy:Cu[`${o.enforceLimits}`],isRevoked:o.isRevoked}}(function(e){function t(e){let{account:t,accessKey:n}=e;return $({address:kl,abi:Z,functionName:`getKey`,args:[t,Fu(n)]})}e.call=t})(Eu||={});async function Du(e,t){let{account:n=e.account,accessKey:r,token:i,...a}=t;if(!n)throw Error(`account is required.`);let o=N(n),s=e.chain?.hardfork;if(s&&cu(s,`t3`))return{remaining:await Q(Ls)(e,{...a,...Du.call({account:o.address,accessKey:r,token:i})}),periodEnd:void 0};let[c,l]=await Q(Ls)(e,{...a,...Du.callWithPeriod({account:o.address,accessKey:r,token:i})});return{remaining:c,periodEnd:l}}(function(e){function t(e){let{account:t,accessKey:n,token:r}=e;return $({address:kl,abi:Z,functionName:`getRemainingLimit`,args:[t,Fu(n),r]})}e.call=t;function n(e){let{account:t,accessKey:n,token:r}=e;return $({address:kl,abi:Z,functionName:`getRemainingLimitWithPeriod`,args:[t,Fu(n),r]})}e.callWithPeriod=n})(Du||={});async function Ou(e,t){let{account:n=e.account,accessKey:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n);return Q(Ls)(e,{...i,account:null,...Ou.call({account:a.address,accessKey:r})})}(function(e){function t(e){let{account:t,accessKey:n}=e;return $({address:kl,abi:Z,functionName:`isAdminKey`,args:[t,Fu(n)]})}e.call=t})(Ou||={});async function ku(e,t){let{account:n=e.account,witness:r,...i}=t;if(!n)throw Error(`account is required.`);let a=N(n);return Q(Ls)(e,{...i,account:null,...ku.call({account:a.address,witness:r})})}(function(e){function t(e){let{account:t,witness:n}=e;return $({address:kl,abi:Z,functionName:`isKeyAuthorizationWitnessBurned`,args:[t,n]})}e.call=t})(ku||={});async function Au(e,t){return Au.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,...a}=r,o=e.call({accessKey:i});return await Q(t)(n,{...a,...o})}e.inner=t;function n(e){let{accessKey:t}=e;return $({address:kl,abi:Z,functionName:`revokeKey`,args:[Fu(t)]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`KeyRevoked`,strict:!0});if(!t)throw Error("`KeyRevoked` event not found.");return t}e.extractEvent=r})(Au||={});async function ju(e,t){let{chainId:n=e.chain?.id}=t,r=t.account??e.account;if(!r)throw Error(`account is required.`);if(!n)throw Error(`chainId is required.`);let i=N(r),a=await(async()=>{if(`configurable`in t)return t.configurable;if(i.source!==`configurable`)return;let e=i;if(!e.config)throw Error(`An account config is required to prepare a key authorization.`);return{config:e.config}})(),o=eu(i,{...t,chainId:BigInt(n),key:t.accessKey}),s=i.source===`configurable`&&a?vi({account:i.address,config:a.config,payload:o}):o;return{...t,account:i,chainId:n,configurable:a,signPayload:s}}async function Mu(e,t){let{accessKey:n,account:r,chainId:i,configurable:a,signPayload:o,...s}=`signPayload`in t?t:await ju(e,t);return tu(r,{chainId:BigInt(i),key:n,configurable:a,...s})}async function Nu(e,t){return Nu.inner(Ws,e,t)}(function(e){async function t(t,n,r){let{accessKey:i,token:a,limit:o,...s}=r,c=e.call({accessKey:i,token:a,limit:o});return await Q(t)(n,{...s,...c})}e.inner=t;function n(e){let{accessKey:t,token:n,limit:r}=e;return $({address:kl,abi:Z,functionName:`updateSpendingLimit`,args:[Fu(t),n,r]})}e.call=n;function r(e){let[t]=Fs({abi:Z,logs:e,eventName:`SpendingLimitUpdated`,strict:!0});if(!t)throw Error("`SpendingLimitUpdated` event not found.");return t}e.extractEvent=r})(Nu||={});async function Pu(e,t){let{account:n,admin:r,hash:i,signature:a,...o}=t;return Q(Ls)(e,{...o,...Pu.call({account:n,admin:r,hash:i,signature:a})})}(function(e){function t(e){let{account:t,admin:n=!0,hash:r,signature:i}=e;return $({address:Fl,abi:Kc,functionName:n?`verifyKeychainAdmin`:`verifyKeychain`,args:[t,r,i]})}e.call=t})(Pu||={});function Fu(e){return typeof e==`string`?e:e.accessKeyAddress}var Iu=class extends ou{constructor(e,t={}){let{account:n,accessKey:r}=e;super(e,{shortMessage:`Access key "${r}" failed: ${e.error.message}`,...t,details:{account:n,"access key":r,...t.details},docsPath:`/tempo/guides/access-keys/manage`,name:t.name??`AccessKeyError`}),Object.defineProperty(this,"account",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"accessKey",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.account=n,this.accessKey=r}},Lu=class extends Iu{constructor(e){let{amount:t,decimals:n,fee:r,periodEnd:i,remaining:a,token:o}=e;super(e,{details:{token:o,amount:uu(t,n),remaining:uu(a,n),"exceeded by":t!==void 0&&a!==void 0?uu(t-a,n):void 0,"resets at":du(i)},name:`AccessKeySpendingLimitExceededError`,shortMessage:`Access key "${e.accessKey}" exceeded its spending limit${o?` for token "${o}"`:``}${r?` while paying fees`:``}.`}),Object.defineProperty(this,"amount",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"decimals",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"fee",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"periodEnd",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"remaining",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"token",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.amount=t,this.decimals=n,this.fee=r,this.periodEnd=i,this.remaining=a,this.token=o}},Ru=class extends Iu{constructor(e){super(e,{details:{"expired at":du(e.expiry)},name:`AccessKeyExpiredError`,shortMessage:`Access key "${e.accessKey}" has expired.`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=e.expiry}},zu=class extends Iu{constructor(e){let{selector:t,target:n}=e;super(e,{details:{target:n,selector:t},name:`AccessKeyCallNotAllowedError`,shortMessage:`Access key "${e.accessKey}" is not allowed to make this call.`}),Object.defineProperty(this,"selector",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"target",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.selector=t,this.target=n}},Bu=class extends Iu{constructor(e){let{expiry:t,limited:n}=e;super(e,{details:{expires:du(t),"spending limits":n===void 0?void 0:n?`enforced`:`none`},name:`AccessKeyAlreadyExistsError`,shortMessage:`Access key "${e.accessKey}" is already authorized on account "${e.account}".`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"limited",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=t,this.limited=n}},Vu=class extends Iu{constructor(e){let[t,n]=(e.error.args??[]).map(e=>Su[Number(e)]);super(e,{details:{expected:t,actual:n},name:`AccessKeySignatureTypeMismatchError`,shortMessage:`Access key "${e.accessKey}" signed with a ${n??`different`} key, but was authorized as a ${t??`different`} key.`}),Object.defineProperty(this,"expected",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"actual",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expected=t,this.actual=n}},Hu=class extends Iu{constructor(e){let{expiry:t,minimum:n}=e;super(e,{details:{expiry:du(t),minimum:du(n)},name:`AccessKeyExpiryInPastError`,shortMessage:`Access key "${e.accessKey}" expiry must be later${n?` than ${du(n)}`:``}.`}),Object.defineProperty(this,"expiry",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"minimum",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.expiry=t,this.minimum=n}},Uu={address:kl,abi:Z};function Wu(e){let{call:t,parameters:n,signer:r}=e;if(!r?.accessKey||t&&_t(t.address,`0xaAAAaaAA00000000000000000000000000000000`))return;let i=n.keyAuthorization?.address;if(!i||_t(i,r.accessKey))return{...e.base,account:r.address,accessKey:r.accessKey}}function Gu(e){let{feePayer:t}=e.parameters;if(typeof t!=`object`)return;let n=N(t);if(n.source===`accessKey`&&`accessKeyAddress`in n)return{...e.base,account:n.address,accessKey:n.accessKeyAddress}}function Ku(e){let{call:t,parameters:n,signer:r}=e,i=n.keyAuthorization?.address??t?.arg(`keyId`);if(r&&i)return{...e.base,account:r.address,accessKey:i}}var qu={...Object.fromEntries(Z.flatMap(e=>e.type===`error`?[[Ot(e),e=>{let t=Wu(e);return t&&new Iu(t)}]]:[])),"CallNotAllowed()":e=>{let t=Wu(e);if(t)return new zu({...t,selector:e.parameters.data?.slice(0,10),target:e.call?.address??e.parameters.to})},"ExpiryInPast()":e=>{let t=Ku(e);if(!t)return;let[,n,r]=/expiry (\d+) <= min allowed (\d+)/.exec(e.details)??[],i=e.parameters.keyAuthorization?.expiry??e.call?.arg(`expiry`)??e.call?.arg(`config`)?.expiry;return new Hu({...t,expiry:n?BigInt(n):i==null?void 0:BigInt(i),minimum:r?BigInt(r):void 0})},"KeyAlreadyExists()":async e=>{let t=Ku(e);if(!t)return;let[n]=await e.read([{...Uu,functionName:`getKey`,args:[t.account,t.accessKey]}]);return new Bu({...t,expiry:n?.result?.expiry,limited:n?.result?.enforceLimits})},"KeyExpired()":async e=>{let t=Wu(e);if(!t)return;let[n]=await e.read([{...Uu,functionName:`getKey`,args:[t.account,t.accessKey]}]);return new Ru({...t,expiry:n?.result?.expiry})},"SignatureTypeMismatch(uint8,uint8)":e=>{let t=Wu(e)??Ku(e);return t&&new Vu(t)},"SpendingLimitExceeded()":async e=>{let t=e.validation,n=t&&e.parameters.feePayer?Gu(e):Wu(e);if(!n)return;let r=t?lu(e):xu(e.call?.address)?e.call.address:void 0;if(!r)return new Lu({...n,fee:t,hints:t?[...n.hints,`Pay fees with another token.`]:n.hints});let i=[n.account,n.accessKey,r],[a,o,s]=await e.read([{...Uu,functionName:`getRemainingLimitWithPeriod`,args:i},{...Uu,functionName:`getRemainingLimit`,args:i},{address:r,abi:$c,functionName:`decimals`}]);return new Lu({...n,amount:t?void 0:e.call?.arg(`amount`),decimals:s?.result,fee:t,periodEnd:a?.result?.[1]||void 0,remaining:a?.result?.[0]??o?.result,token:r})}};export{js as $,Ta as $t,Rl as A,xr as An,fo as At,Zc as B,$t as Bn,Ao as Bt,jl as C,oi as Cn,go as Ct,Fl as D,_r as Dn,io as Dt,Pl as E,Vr as En,mo as Et,Yc as F,Fn,jo as Ft,pc as G,Aa as Gt,el as H,Ga as Ht,Wc as I,In,wo as It,Us as J,ja as Jt,Zs as K,Ma as Kt,Kc as L,R as Ln,Co as Lt,Hc as M,Un as Mn,po as Mt,Ol as N,Wn as Nn,vo as Nt,Il as O,vr as On,bo as Ot,Xc as P,L as Pn,Eo as Pt,Fs as Q,wa as Qt,qc as R,z as Rn,yo as Rt,Al as S,xi as Sn,ao as St,Nl as T,Xr as Tn,oo as Tt,Bc as U,Ja as Ut,Qc as V,J as Vt,xc as W,qa as Wt,Rs as X,q as Xt,Bs as Y,Na as Yt,Ls as Z,Da as Zt,Zl as _,hi as _n,xo as _t,xu as a,$i as an,$o as at,Hl as b,yi as bn,lo as bt,fu as c,ki as cn,Xo as ct,du as d,Ii as dn,Lo as dt,ga as en,As as et,lu as f,W as fn,Po as ft,Jl as g,pi as gn,Do as gt,ql as h,V as hn,ko as ht,pu as i,Xi as in,ts as it,zl as j,Jn as jn,So as jt,Ll as k,br as kn,uo as kt,_u as l,Pi as ln,Wo as lt,ou as m,Bi as mn,Oo as mt,Eu as n,Zi as nn,ws as nt,vu as o,ea as on,Qo as ot,Q as p,zi as pn,No as pt,Ws as q,Ea as qt,$ as r,Ji as rn,ns as rt,yu as s,K as sn,Zo as st,qu as t,ba as tn,ks as tt,uu as u,Mi as un,Uo as ut,tu as v,_i as vn,To as vt,Ml as w,Jr as wn,ho as wt,Wl as x,bi as xn,so as xt,Ul as y,vi as yn,co as yt,$c as z,B as zn,_o as zt};
|
|
9
|
+
//# sourceMappingURL=accessKey-DlBe71R7.js.map
|