{"assessments":[],"deployments":[],"fuzz":[],"identity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"interpretation":"Records acceptance and evidence. Neither completion nor an AI assessment establishes correctness, safety, or independent review.","jobId":"b691a3f6-a5f1-4724-b90a-d69c53cefbd1","kind":"skill:build-contract-project","nodes":[{"acceptedSubmissionHash":"30fbad449bb8c7bcec4d2644f594942f9ee436a3ea35e5512682891a1e7bd0e3","dependsOn":[],"execution":{"network":false,"profile":"foundry","requires":[],"skillHash":"6b8d2c2ebd3301cff2be8edb1e1cc6ba65c858c02fe7247be81722b969842265","skillId":"build-contract-project","tools":[]},"key":"build_contract_project","kind":"code","role":"implement","skillHash":"6b8d2c2ebd3301cff2be8edb1e1cc6ba65c858c02fe7247be81722b969842265","skillId":"build-contract-project","state":"accepted"}],"objective":"Continue the accepted UNLOCK successor from job 02a5288c-3f10-488e-b5c0-06ef5581d92e, repository https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code commit 3e450837a23b12c4f00f5c5eaf9569691669fb93. Preserve newer accepted fixes and existing work; fetch source if workspace is empty. Preserve .git/protected checks. CODE/TESTS/GITHUB ONLY; no public deployment or website publication. Existing launch1560 contracts are sealed and unchanged.\n\nNEW DESIGN AUTHORIZATION: standard compatibility takes priority over the previous actual-final-recipient/actual-funding-source definition and ETH-only per-swap fee settlement. Implement the necessary explicit successor redesign; do not repeat a custom-router-only candidate and call it compatible. Use deployed standard routes/empty hookData; no IMD/router patch.\n\nB-01: adopt an explicit INITIATOR ledger for the successor. Authenticate the exact immutable approved Universal Router address/runtime and derive the logical executing EOA or smart account through its verified msgSender(). All official-pool buys/sells in that execution affect that initiator's E/S, regardless of subsequent TAKE recipient, prefunding source or intermediate routing. An arbitrary final recipient receives tokens, not the initiator's credit. Transfers never migrate rights. This intentionally changes eligibility semantics; update docs/UI/events/examples accordingly. Do not claim it proves actual payer/delivery. Original proven payer allocation/native claim credits stay assigned to rightful recipients and deduplicated. Test diverted delivery, prefunding, Permit2, smart wallets, batches/multihop/cycles/quota farming. Quantify risks; no tx.origin, asserted identity or mutable router allowlist. Disclose remaining critical/high counterexamples; never delete quotas or invent approval.\n\nB-02: redesign fixed 75bps treasury fees using standard v4 settlement. The earlier requirement to collect exactly executed-ETH-leg fees in native ETH in every mode may change where technically necessary. Evaluate unspecified-currency fees/return deltas, exact-output/partial fills; implement a justified model for the unchanged router/quoter. Record fee asset/base/timing and gross/net formulas separately for each mode. Never charge unexecuted volume, retain hidden overpayment, strand debt or add a fee to transfers/rewards/liquidity. Preserve official pool fee12500 and 1% payer/0.25% IMD distribution; extra treasury rate remains75bps. Do not claim arithmetic 2% is exact effective cost if bases differ.\n\nThe treasury's intended spending asset is ETH. If fees arrive in UNLK, explicitly implement/review the conversion and withdrawal lifecycle before claiming this goal achieved. Address vault zero-E quota, self-fee recursion, slippage/MEV, price manipulation and oracle effects. No unrestricted vault/trader exemption or administrator swap executor. Conversion must authenticate fee provenance, exclude donations/user principal and never borrow others' quota. If safe automatic conversion is unavailable, deliver token-denominated treasury balances/manual withdrawal support and clearly disclose that automatic ETH accumulation remains incomplete; do not silently equate UNLK fees with ETH.\n\nPreserve UNLOCK/UNLK,1B/18decimals,10/87/3 allocation, native eligible claims independent of sync, ordinary unrestricted transfers, protected principal, fixed beneficiary 0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9 and all sixteen accepted20%-to100%/$50M tiers. Preserve sequential oracle confirmations, permanent final bypass, sealed setup and no later upgrades/pauses/rule changes/resets. No other economic change is authorized. Retain risk disclosures.\n\nPROVE COMPATIBILITY: reverify deployed addresses/runtime and current Explorer encoding; run recorded-block forks with actual UniversalRouter/Quoter/Permit2/PoolManager. Execute the exact Explorer buy and sell command payloads, empty hookData, fee-inclusive limits, both directions/modes, partial fills, claims/sync and quota rejection. Generic quotes must revert simulation without state/fee credit and are not wallet-capacity proof. Rejecting Universal Router is not success. Every claimed supported mode must execute successfully; label unsupported ones and IMD UI coverage precisely. Keep a supported immutable route through final unlock; no open direct bypass.\n\nUpdate manifests/permissions/mining/setup/code pins, ABIs, website fee and initiator explanations, token/ETH treasury balances and gallery while preserving current live deployment config. Run all prior checks and new fuzz/invariants; never weaken protected inputs or size limits. Obtain independent review or explicitly report pending; critical/high findings block release. Deliver published commit, before/after semantic matrix, exact results/skips, residual risks and separate Sepolia release/hosting instructions. No fabricated success.","parentJobId":"02a5288c-3f10-488e-b5c0-06ef5581d92e","planHash":"ba602495e73f4f642e32f7279f15302fee80936a025e1d39c0c97630fdea754b","previousHash":"11fc747235623ffb4105a172b11b91c27132983a0dfa8985595e226a4a9ee498","projectId":"02a5288c-3f10-488e-b5c0-06ef5581d92e","publication":{"commit":"806e94d44d6a96b8561f48ebf5f744c4065c4918","deliveredAt":"2026-10-15T13:13:27.455Z","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code"},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[],"site":null,"snapshotHash":"e3ea437bb9469798ecdd234e827174e5861313f9422260646f59ee4f288c7811","state":"completed","submissions":[{"artifacts":[],"attempt":1,"bundleHash":"22da65167d7a440ce6eef17c8756dacf852aec86dc9d715910dee07f14a48ecd","device":"81314195390981c7","findings":[],"hash":"30fbad449bb8c7bcec4d2644f594942f9ee436a3ea35e5512682891a1e7bd0e3","nodeId":"3b7f6854-9dd0-4fac-a6e1-bffced0719d5","outcome":"completed","summary":"","treeHash":"b7157228191bca977a670d3b41ab4cb8101f51e8","usage":{"cachedInputTokens":9107627,"inputTokens":120,"model":"claude-opus-5-5","outputTokens":103060,"runtime":"claude","turns":61,"wallClockMs":1341519}}],"verification":[{"checks":[{"durationMs":27999,"exitCode":0,"name":"build","output":"Compiling 162 files with Solc 0.8.26\nSolc 0.8.26 finished in 27.81s\nCompiler run successful with warnings:\nWarning (8760): This declaration has the same name as another declaration.\n  --> test/successor/SuccessorInvariants.t.sol:59:20:\n   |\n59 |     function _plan(bool buy, uint256 amount, address recipient)\n   |                    ^^^^^^^^\nNote: The other declaration is here:\n  --> test/successor/SuccessorInvariants.t.sol:74:5:\n   |\n74 |     function buy(uint256 who, uint256 to, uint256 amount) external {\n   |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (5159): \"selfdestruct\" has been deprecated. Note that, starting from the Cancun hard fork, the underlying opcode no longer deletes the code and data associated with an account and only transfers its Ether to the beneficiary, unless executed in the same transaction in which the contract was created (see EIP-6780). Any use in newly deployed contracts is strongly discouraged even if the new behavior is taken into account. Future changes to the EVM might further reduce the functionality of the opcode.\n  --> test/BatchSettlementProperties.t.sol:14:9:\n   |\n14 |         selfdestruct(recipient);\n   |         ^^^^^^^^^^^^\n\nWarning (5159): \"selfdestruct\" has been deprecated. Note that, starting from the Cancun hard fork, the underlying opcode no longer deletes the code and data associated with an account and only transfers its Ether to the beneficiary, unless executed in the same transaction in which the contract was created (see EIP-6780). Any use in newly deployed contracts is strongly discouraged even if the new behavior is taken into account. Future changes to the EVM might further reduce the functionality of the opcode.\n  --> test/FeeCustodyProperties.t.sol:19:9:\n   |\n19 |         selfdestruct(recipient);\n   |         ^^^^^^^^^^^^\n\nWarning (5159): \"selfdestruct\" has been deprecated. Note that, starting from the Cancun hard fork, the underlying opcode no longer deletes the code and data associated with an account and only transfers its Ether to the beneficiary, unless executed in the same transaction in which the contract was created (see EIP-6780). Any use in newly deployed contracts is strongly discouraged even if the new behavior is taken into account. Future changes to the EVM might further reduce the functionality of the opcode.\n  --> test/NativeCustodyInvariants.t.sol:15:9:\n   |\n15 |         selfdestruct(recipient);\n   |         ^^^^^^^^^^^^\n\nWarning (2018): Function state mutability can be restricted to view\n   --> src/UnlkHook.sol:209:5:\n    |\n209 |     function afterInitialize(address, PoolKey calldata key, uint160, int24)\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (2018): Function state mutability can be restricted to view\n   --> src/candidate/UnlkHookV2.sol:224:5:\n    |\n224 |     function afterInitialize(address, PoolKey calldata key, uint160, int24)\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\nWarning (2018): Function state mutability can be restricted to view\n   --> src/successor/UnlkHookV3.sol:230:5:\n    |\n230 |     function afterInitialize(address, PoolKey calldata key, uint160, int24)\n    |     ^ (Relevant source part starts here and spans across multiple lines).\n\n","passed":true},{"durationMs":11905,"exitCode":0,"name":"test","output":"No files changed, compilation skipped\n\nRan 2 tests for test/LocalScript.t.sol:LocalScriptTest\n[PASS] testLocalScriptRefusesPublicChainId() (gas: 13983272)\n[PASS] testLocalSimulationFunctionDoesNotDependOnCaller() (gas: 63694238)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 8.71ms (8.01ms CPU time)\n\nRan 5 tests for test/HookDeployer.t.sol:HookDeployerTest\n[PASS] testChangedCreationBodyCannotMatchReviewedHash() (gas: 135903)\n[PASS] testChangedSetupAuthorityChangesHashAndCreate2Prediction() (gas: 226228)\n[PASS] testDeployedHelperFitsEvmCodeLimits() (gas: 8947)\n[PASS] testFuzzEncodesCallerSuppliedBytesAndFourAddresses(bytes,address,address,address,address) (runs: 256, μ: 23551, ~: 20352)\n[PASS] testReviewedHookInitCodeAndHash() (gas: 196628)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 19.25ms (18.22ms CPU time)\n\nRan 1 test for test/candidate/SetupScript.t.sol:CandidateSetupScriptTest\n[PASS] testActualFactoryLaunchThenPreparedCompanionsAndAtomicActivation() (gas: 17380932)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 23.37ms (1.53ms CPU time)\n\nRan 1 test for test/RevisionProperties.t.sol:RestagingIsolationTest\n[PASS] testAbandonedBundleIsInertAndMixedBundlesAreRefused() (gas: 7156292)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 30.70ms (1.32ms CPU time)\n\nRan 4 tests for test/SecurityRegression.t.sol:CodeAuthenticationRegressionTest\n[PASS] testActivationExternalFailureRollsBackEveryBinding() (gas: 912953)\n[PASS] testInconsistentImmutablePatchesAreRejected() (gas: 2018871)\n[PASS] testLaterFactoryDonationsCannotRewriteInitialAllocationReceipts() (gas: 688934)\n[PASS] testRuntimeMutationCannotPassGetterChecks() (gas: 85252)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 32.36ms (3.98ms CPU time)\n\nRan 4 tests for test/SecurityRegression.t.sol:EvidenceCertificationRegressionTest\n[PASS] testActualLaterRoundClaimsHaveNoArtificialCumulativeCeiling() (gas: 1511648)\n[PASS] testDuplicateRecipientCannotOvercreditSmallerActualClaim() (gas: 441218)\n[PASS] testIncompleteTreeCannotBeCertified() (gas: 59593)\n[PASS] testOddTreeReconstructionAndPreCertificationNativeClaim() (gas: 580532)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 32.69ms (1.21ms CPU time)\n\nRan 1 test for test/successor/SetupScript.t.sol:SuccessorSetupScriptTest\n[PASS] testFactoryLaunchThenPreparedCompanionsAndAtomicActivation() (gas: 13076591)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 44.44ms (1.48ms CPU time)\n\nRan 2 tests for test/Stage2Script.t.sol:Stage2ScriptTest\n[PASS] testStage2DeploysFromActualIdentitiesAndOwnerActivates() (gas: 7071565)\n[PASS] testStage2RefusesUnknownLaunchNumber() (gas: 33767)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 49.19ms (2.35ms CPU time)\n\nRan 2 tests for test/TwoStage.t.sol:StageOneConstructorTest\n[PASS] testConstructorRejectsMissingOrConflatedInputs() (gas: 8207)\n[PASS] testOnlyFactoryCanInitializeTheHooksPool() (gas: 43150)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 49.79ms (251.18µs CPU time)\n\nRan 1 test for test/successor/SuccessorInvariants.t.sol:SuccessorMultihopTest\n[PASS] testMultihopOfficialLegCreditsInitiatorEvenWhenOutputLeavesUnlk() (gas: 1961728)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 51.49ms (1.47ms CPU time)\n\nRan 5 tests for test/EvidenceAndOracleProperties.t.sol:MultiLeafEvidenceTest\n[PASS] testDecreasingEvidenceCannotRevokePreviouslyCreditedClaims() (gas: 1100730)\n[PASS] testProofsFromTheActualTreeCreditExactlyWhatWasDelivered() (gas: 2298063)\n[PASS] testSiblingCannotAttestAnotherWalletsClaim() (gas: 771322)\n[PASS] testSweptRoundFreezesEvidence() (gas: 1136164)\n[PASS] testTheTreeIsWellFormed() (gas: 40973)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 58.70ms (3.02ms CPU time)\n\nRan 8 tests for test/Adversarial.t.sol:AdversarialTest\n[PASS] test100PercentAloneIsNotFullUnlock() (gas: 7257766)\n[PASS] testArbitraryHookDataAndMultihopPayloadCannotSelectVictim() (gas: 89207)\n[PASS] testCallbacksAllRequireCanonicalManager() (gas: 211512)\n[PASS] testForeignPoolKeyRejectedEvenWithManagerPrank() (gas: 49882)\n[PASS] testNoMintPauseBlacklistUpgradeOrCounterResetEntrypoint() (gas: 114793)\n[PASS] testProtocolFeeChangeCannotSilentlyAlterTradingEconomics() (gas: 359163)\n[PASS] testQuotaMultiplicationDoesNotOverflowAtMaxEligible() (gas: 239235)\n[PASS] testTokenMintsWholeSupplyToDeployerOnly() (gas: 32832)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 63.65ms (6.12ms CPU time)\n\nRan 8 tests for test/Launch.t.sol:LaunchTest\n[PASS] testCompanionsAreImmutablyBound() (gas: 37886)\n[PASS] testFactoryHoldsPrincipalAndCannotRemoveIt() (gas: 333697)\n[PASS] testLaunchAllocationAndLockedPrincipal() (gas: 191055)\n[PASS] testLaunchIsOnceAndDeployerOnly() (gas: 2731433)\n[PASS] testOnlyCanonicalManagerCanCallHook() (gas: 66479)\n[PASS] testPayerCreditExactDeduplicated() (gas: 137462)\n[PASS] testUnauthorizedFactoryAndWrongPoolRejected() (gas: 80623)\n[PASS] testUnconfiguredComponentsFailClosed() (gas: 42307)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 32.29ms (1.19ms CPU time)\n\nRan 12 tests for test/candidate/Fees.t.sol:CandidateFeesTest\n[PASS] testDonatedManagerClaimsAreNotFeeRevenueAndLockedRedemptionRollsBack() (gas: 1135553)\n[PASS] testExactOutputBoundsCannotWrapIntoExactInput() (gas: 599580)\n[PASS] testFreshTokenOnlyManagerAndAllFourSwapModes() (gas: 1699039)\n[PASS] testFuzzBuyRounding(uint128) (runs: 256, μ: 1994, ~: 1996)\n[PASS] testFuzzSellRounding(uint128) (runs: 256, μ: 1607, ~: 1627)\n[PASS] testOnlyBeneficiaryWithdrawsNoRedirectAndDonationsSeparate() (gas: 855328)\n[PASS] testPartialBuyChargesExecutedLegAndRefundsUnusedBudget() (gas: 524800)\n[PASS] testPartialExactOutputRevertsAllPoolCreditsAndFeeChanges() (gas: 977721)\n[PASS] testPartialSellChargesOnlyExecutedOutputAndReturnsUnusedTokens() (gas: 920453)\n[PASS] testRejectingBeneficiaryCannotHaltSwapsAndFailedWithdrawalRetainsFunds() (gas: 1363888)\n[PASS] testSlippageAndOverQuotaRollbackFeesAndCredits() (gas: 1204447)\n[PASS] testTransfersClaimsAndLpCollectionDoNotAccrueFees() (gas: 1219280)\nSuite result: ok. 12 passed; 0 failed; 0 skipped; finished in 63.87ms (15.36ms CPU time)\n\nRan 6 tests for test/compatibility/RecordedRouter.t.sol:RecordedRouterTest\n[PASS] testActualQuoterCannotCommitPoolTradesOrHookWrites() (gas: 298154)\n[PASS] testBatchBuysCanAggregateDeliveryToAnotherWallet() (gas: 325865)\n[PASS] testCounterexampleTakeAllVersusTakeBobIdenticalHookObservations() (gas: 611752)\nLogs:\n  Same executed output; different beneficiary: 987402494003717132\n  Identical beforeSwap observation: 0x09425f78d614b06a99b96ecaa53d10f355049f4254c4da8b0ab9e441803f2f7b\n  Identical afterSwap observation: 0x388a843e3ad3404e674bed2096e9eed7203549b09c755340fd280b3259400fe1\n\n[PASS] testMultihopBuyOutputNeverDeliveredToAnyWallet() (gas: 1235667)\n[PASS] testPermit2UserSourceVersusRouterPrefundingSameLogicalSender() (gas: 809841)\n[PASS] testSmartWalletDoesNotRevealTakeBeneficiary() (gas: 449760)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 66.51ms (2.35ms CPU time)\n\nRan 6 tests for test/ActivationRobustness.t.sol:ActivationRobustnessTest\n[PASS] testPolicySeedRecordsCapacityAndConfirmsTiers() (gas: 30575729)\n[PASS] testSeedBelowOpeningValueFloorCannotLaunch() (gas: 9054745)\n[PASS] testSeedBelowThePoolShareBandCannotLaunch() (gas: 9050786)\n[PASS] testSeedInsideTheOnePercentBandActivates() (gas: 15887629)\n[PASS] testStagingRunsActivationPreconditionsAndCanRepeat() (gas: 21576209)\n[PASS] testSubDustSeedRoundingStillActivates() (gas: 16247257)\nSuite result: ok. 6 passed; 0 failed; 0 skipped; finished in 72.90ms (25.11ms CPU time)\n\nRan 3 tests for test/FailurePaths.t.sol:ActivationFailurePathsTest\n[PASS] testCompanionConstructorsRejectMissingInputs() (gas: 6057)\n[PASS] testCrossLaunchSetupIsRefusedInEveryDirection() (gas: 24766771)\n[PASS] testSepoliaRefusesLocallyClonedServicesEvenWithFeedAtPublishedAddress() (gas: 676766)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 41.09ms (12.15ms CPU time)\n\nRan 13 tests for test/TwoStage.t.sol:StageOneTest\n[PASS] testActivationSealsAndCannotBeReplayed() (gas: 6134570)\n[PASS] testCrossLaunchNumberRejected() (gas: 5594038)\n[PASS] testFactoryLiquidityAllowedBeforeActivationButPrincipalStaysLocked() (gas: 37293)\n[PASS] testFirstTierConfirmsBelowTenEthActualReserves() (gas: 35619197)\n[PASS] testLaunchSucceedsWithoutCompanions() (gas: 122562)\n[PASS] testPayerCanTransferBeforeActivationWithoutLosingHistoricalCredit() (gas: 6125881)\n[PASS] testPayerCreditOnlyAfterActivationAndFromOriginalTransferReceipt() (gas: 6075022)\n[PASS] testRequesterReassignmentCannotMoveInitialAllocationCredit() (gas: 6081688)\n[PASS] testSepoliaRequiresPublishedChainlinkFeed() (gas: 5610561)\n[PASS] testSwapsSyncAndMilestonesRevertBeforeActivation() (gas: 6082593)\n[PASS] testTransfersAndNativeClaimsWorkBeforeActivationAndClaimIsCreditedLater() (gas: 6432841)\n[PASS] testUnauthorizedActivationRejected() (gas: 5606198)\n[PASS] testWrongContractsRejected() (gas: 6294420)\nSuite result: ok. 13 passed; 0 failed; 0 skipped; finished in 50.79ms (24.20ms CPU time)\n\nRan 3 tests for test/ReleaseConfig.t.sol:ReleaseConfigTest\n[PASS] testReadOnlyReleaseChecksOnLocalFixture() (gas: 2011487)\n[PASS] testReadOnlyReleaseChecksRejectWrongChainOrHash() (gas: 1903758)\n[PASS] testStageOneAloneCannotPassReleaseGate() (gas: 63801371)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 84.48ms (38.25ms CPU time)\n\nRan 1 test for test/FailurePaths.t.sol:UnpaidLaunchTest\n[PASS] testNoRequesterMeansNoPayerCreditAnywhere() (gas: 1267642)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 39.67ms (1.08ms CPU time)\n\nRan 1 test for test/SecurityRegression.t.sol:LargeTreeCertificationTest\n[PASS] testMaximumSortedTreeFitsTransactionGasLimit() (gas: 15973574)\nLogs:\n  1024-leaf sorted certification gas: 13939470\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 57.08ms (28.28ms CPU time)\n\nRan 2 tests for test/SecurityRegression.t.sol:StagingCreationRegressionTest\n[PASS] testCounterfeitConstructorIsRefusedBeforeAnyDeployment() (gas: 6413863)\n[PASS] testOnlySetupAuthorityMayStageAndOnlyUntilActivation() (gas: 12289760)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 30.04ms (2.30ms CPU time)\n\nRan 1 test for test/EvidenceAndOracleProperties.t.sol:RouterDeadlineTest\n[PASS] testDeadlineIsInclusive() (gas: 423552)\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 28.80ms (360.96µs CPU time)\n\nRan 7 tests for test/candidate/Quoter.t.sol:CandidateQuoterTest\n[PASS] testExactOutputBuyQuoteIncludesFeeAndRollsBack() (gas: 982523)\n[PASS] testExactOutputSellQuoteRequiresGrossTranslationAndRollsBack() (gas: 1058630)\n[PASS] testGenericBuyQuoteMatchesFeeInclusiveExecutionWithoutCommitting() (gas: 704054)\n[PASS] testGenericSellQuoteIsNotWalletSellCapacity() (gas: 1128840)\n[PASS] testNonemptyQuoteDataIsRejected() (gas: 69218)\n[PASS] testUniversalRouterTradesExplicitlyRejectedUntilAttributionRedesign() (gas: 110317)\n[PASS] testWrongQuoterCodeCannotUseQuoteExemptionToCommit() (gas: 612054)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 18.24ms (4.58ms CPU time)\n\nRan 4 tests for test/SeedBoundary.t.sol:SeedBoundaryTest\n[PASS] testBuyLimitIsBoundedByTheSeedFloor() (gas: 390660)\n[PASS] testLimitsInsideTheRangeAreHonoured() (gas: 771508)\n[PASS] testSellIntoAnEmptyReserveRevertsWithoutState() (gas: 394827)\n[PASS] testSellThatDrainsTheReserveStopsAtTheSeedBoundary() (gas: 1586847)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 30.87ms (2.25ms CPU time)\n\nRan 4 tests for test/ActivationRobustness.t.sol:ChunkedCertificationTest\n[PASS] testChunkBoundsAndSizeAreFixedByTheFirstChunk() (gas: 29517535)\n[PASS] testDuplicateAcrossChunksWrongRootAndForeignSessionsAreRefused() (gas: 231631551)\n[PASS] testSingleLeafRoundCertifiesThroughTheChunkedPath() (gas: 398202)\n[PASS] testSingleShotRefusesButChunksCertifyAndCredit() (gas: 124071664)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 148.98ms (97.33ms CPU time)\n\nRan 3 tests for test/SecurityRegression.t.sol:OracleOutageRegressionTest\n[PASS] testDepthDipInvalidatesWholeWindowAndRetainsReachedRights() (gas: 16317055)\n[PASS] testFinalTierRequiresItsOwnTwentyFourHours() (gas: 138827744)\n[PASS] testNextTierClockWaitsForItsOwnThreshold() (gas: 15295035)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 129.07ms (101.25ms CPU time)\n\nRan 7 tests for test/NativeLaunch.t.sol:NativeLaunchTest\n[PASS] testDeepNativePoolWarmsUpAndCanUnlock() (gas: 136095724)\n[PASS] testNativeBatchSettlement() (gas: 870289)\n[PASS] testNativeBuySellAndFeeDistribution() (gas: 1127517)\n[PASS] testNativeExactOutputRefundToAuthenticatedCaller() (gas: 453384)\n[PASS] testNativeValueMismatchAndUnsolicitedSendRejected() (gas: 91952)\n[PASS] testOneSidedOpeningLocks87PercentWithoutEthFunding() (gas: 62608)\n[PASS] testThinLaunchCannotUnlockFromInitialSpotOrTinyBuy() (gas: 29940461)\nSuite result: ok. 7 passed; 0 failed; 0 skipped; finished in 205.00ms (147.04ms CPU time)\n\nRan 17 tests for test/Oracle.t.sol:OracleTest\n[PASS] testBadChainlinkRoundsAndAnswersFailClosed() (gas: 2352246)\n[PASS] testConfirmationGapRestartsRatherThanCountingUnobservedTime() (gas: 14857451)\n[PASS] testEveryTierAndPermanentUnlock() (gas: 136512808)\n[PASS] testFallingPricesNeverLowerReachedTier() (gas: 29259665)\n[PASS] testInvalidDataCannotCountTowardPendingConfirmationOrRevokeRights() (gas: 15083422)\n[PASS] testInvalidDataLongerThanGapRestartsOnNextValidCall() (gas: 694951)\n[PASS] testLongInvalidIntervalRestartsWhetherObservedOrNot() (gas: 807692)\n[PASS] testNegativeTickAveragesRoundConservativelyForBothOrders() (gas: 769389)\n[PASS] testObservedAndUnobservedInvalidIntervalsAgree() (gas: 29667292)\n[PASS] testOneBlockSpikeCannotConfirm() (gas: 740812)\n[PASS] testOracleCannotBeReboundOrConfiguredByAnyone() (gas: 73530)\n[PASS] testRealFeedCadenceCannotBeUsedToResetConfirmation() (gas: 18790257)\n[PASS] testSameTimestampManipulationHasNoTimeWeight() (gas: 760132)\n[PASS] testStaleCheckpointAndFeedPreventNewTierButNotTrades() (gas: 1332186)\n[PASS] testSustainedManipulationRequiresWindowAndConfirmation() (gas: 15128037)\n[PASS] testThresholdMappingBoundaries() (gas: 69776)\n[PASS] testWarmupAndExactWindow() (gas: 400906)\nSuite result: ok. 17 passed; 0 failed; 0 skipped; finished in 210.22ms (224.57ms CPU time)\n\nRan 10 tests for test/CreditsAndFees.t.sol:CreditsAndFeesTest\n[PASS] testAttestationRequiresActualClaimAndExactLeaf() (gas: 438961)\n[PASS] testClaimTransferAndPayerTransferDoNotDuplicateCredit() (gas: 577960)\n[PASS] testFeeCollectionDoesNotReducePrincipal() (gas: 647552)\n[PASS] testNativeClaimNeverDependsOnAdapterOrFeed() (gas: 1190278)\n[PASS] testNativeClaimThenAttestThenSyncThenSale() (gas: 1607696)\n[PASS] testNegativeLiquidityForbiddenEvenForFactory() (gas: 82464)\n[PASS] testProofReleaseAndDedupRemainNativeRules() (gas: 573172)\n[PASS] testSaleFeesCountGrossInputAndNeverCreditFeeRecipients() (gas: 1191477)\n[PASS] testUnauthorizedLiquidityAndDonationNoCredit() (gas: 232025)\n[PASS] testUnclaimedRewardsNotEligible() (gas: 39399)\nSuite result: ok. 10 passed; 0 failed; 0 skipped; finished in 48.17ms (5.65ms CPU time)\n\nRan 5 tests for test/candidate/TiersAndSetup.t.sol:CandidateTiersTest\n[PASS] testAllSixteenThresholds() (gas: 461702)\n[PASS] testInvalidDataCadenceAndGapCannotAdvanceOrRevoke() (gas: 16292660)\n[PASS] testNativePreActivationClaimDeduplicatesAndAllocationSurvivesTransfers() (gas: 35647833)\n[PASS] testSequentialAllTiersFinal24HoursPermanentBypassAndFeePersists() (gas: 321640971)\n[PASS] testSetupAndBypassFailClosed() (gas: 1280938)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 297.61ms (280.49ms CPU time)\n\nRan 2 tests for test/RevisionProperties.t.sol:ChunkedCertificationPropertiesTest\n[PASS] testFuzz_abandonedSessionIsInertAndRestartable(uint8,uint256) (runs: 128, μ: 2741708, ~: 2350076)\n[PASS] testFuzz_anyChunkingAndReductionScheduleMatchesSingleShot(uint8,uint256,uint256,uint256,uint8,uint8) (runs: 128, μ: 3878381, ~: 3361774)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 305.72ms (252.30ms CPU time)\n\nRan 2 tests for test/RevisionProperties.t.sol:SeedGatePropertiesTest\n[PASS] testFuzz_launchedSeedIsAlwaysLiquidAndRefusedSeedIsAlwaysBelowFloor(uint8) (runs: 96, μ: 10508133, ~: 9050245)\n[PASS] testFuzz_poolShareBandDecidesLaunchAndActivation(uint16) (runs: 96, μ: 11400963, ~: 9047728)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 324.62ms (291.47ms CPU time)\n\nRan 9 tests for test/Trading.t.sol:TradingTest\n[PASS] testAnotherWalletCannotConsumeVictimsAllowanceOrQuota() (gas: 472208)\n[PASS] testDirectManagerAndForeignRouterSpoofingRejected() (gas: 644028)\n[PASS] testDonatedRouterBalancesCannotCreateCreditOrBeSwept() (gas: 497543)\n[PASS] testExactOutputSaleAccountsActualInput() (gas: 735195)\n[PASS] testExcessSaleRollsBackPoolBalancesOracleAndNonce() (gas: 800579)\n[PASS] testFuzzQuotaBoundary(uint96) (runs: 256, μ: 1037772, ~: 1037777)\n[PASS] testReplayOldCallbackHasNoLiveContext() (gas: 427364)\n[PASS] testSaleBoundaryExecutedInputIncludesPoolFee() (gas: 1067073)\n[PASS] testTransfersDoNotMoveRightsOrAllowChainCredit() (gas: 830532)\nSuite result: ok. 9 passed; 0 failed; 0 skipped; finished in 284.94ms (248.18ms CPU time)\n\nRan 23 tests for test/successor/Successor.t.sol:SuccessorTest\n[PASS] testBatchedBuysAllCreditTheInitiator() (gas: 463840)\n[PASS] testClaimsAndPayerCreditIndependentOfTradingAndDeduplicated() (gas: 754542)\n[PASS] testCycleInOneExecutionCannotFarmQuota() (gas: 1199533)\n[PASS] testDirectUnlockerCannotTrade() (gas: 513524)\n[PASS] testDivertedDeliveryCreditsInitiatorNotRecipient() (gas: 596333)\n[PASS] testExactOutputBuyChargesEthOnExecutedInputAndRefundsUnusedValue() (gas: 586480)\n[PASS] testExactOutputSellDeliversExactNetEth() (gas: 915573)\n[PASS] testExplorerBuyExactInputChargesEthFeeOnExecutedPoolLeg() (gas: 651573)\n[PASS] testExplorerSellExactInputThroughPermit2ChargesExecutedEthOutput() (gas: 903970)\n[PASS] testFeeInclusiveMinimumAboveQuoteRevertsWithoutState() (gas: 594299)\n[PASS] testFullUnlockKeepsTheStandardRouteAndBypassesQuota() (gas: 301039236)\n[PASS] testFuzzBuyThenSellConservesEthAndFees(uint96,uint16) (runs: 256, μ: 728388, ~: 730056)\n[PASS] testFuzzSpecifiedFeeBounds(uint128) (runs: 256, μ: 6324, ~: 6325)\n[PASS] testGenericQuoteForZeroQuotaWalletIsSimulationOnly() (gas: 674606)\n[PASS] testHookDataIsIgnored() (gas: 731203)\n[PASS] testLookalikeCodeAtRouterOrQuoterAddressRejected() (gas: 575287)\n[PASS] testPrefundedSaleConsumesInitiatorQuotaNotFunder() (gas: 796620)\n[PASS] testSaleBeyondSeedBoundaryIsRejectedAndNotCharged() (gas: 1247945)\n[PASS] testSetupIsSealedAndCompanionsPinned() (gas: 475937)\n[PASS] testSmartAccountIsTheInitiator() (gas: 532401)\n[PASS] testTransfersNeverMigrateRights() (gas: 679420)\n[PASS] testTreasuryRedeemsAndOnlyBeneficiaryWithdrawsEth() (gas: 571674)\n[PASS] testUnactivatedLaunchRejectsStandardSwapsAndWrongCodes() (gas: 24303844)\nSuite result: ok. 23 passed; 0 failed; 0 skipped; finished in 581.23ms (548.66ms CPU time)\n\nRan 3 tests for test/EvidenceAndOracleProperties.t.sol:OracleReferenceTest\n[PASS] testCheckpointReplacementRewritesOnlyTheCurrentSecond() (gas: 997263)\n[PASS] testFuzzFdvIsMonotonicInTheEthUsdAnswer(uint64,uint64) (runs: 256, μ: 751719, ~: 752051)\n[PASS] testFuzzTwapMatchesBruteForceReference(uint256) (runs: 160, μ: 2771518, ~: 2739386)\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 571.13ms (520.81ms CPU time)\n\nRan 1 test for test/StageOneInvariants.t.sol:StageOneInvariantTest\n[PASS]\nStageOneInvariantTest invariants:\n[PASS] invariant_onlyTheAuthorizedCallActivates\n[PASS] invariant_tokenAndClaimsIndependentOfTheHook\n[PASS] invariant_unconfiguredPoolIsInert\n StageOneInvariantTest invariants (runs: 96, calls: 3840, reverts: 0)\n\n╭-----------------+------------------+-------+---------+----------╮\n| Contract        | Selector         | Calls | Reverts | Discards |\n+=================================================================+\n| StageOneHandler | advance          | 477   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | attemptActivate  | 484   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | claimAndAttest   | 505   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | directSwap       | 489   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | foreignLiquidity | 452   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | routerSwap       | 484   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | syncAndMilestone | 459   | 0       | 0        |\n|-----------------+------------------+-------+---------+----------|\n| StageOneHandler | transfer         | 490   | 0       | 0        |\n╰-----------------+------------------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 854.23ms (815.05ms CPU time)\n\nRan 3 tests for test/ManipulationEconomics.t.sol:ManipulationEconomicsTest\n[PASS] testCounterSellingOfAllInitialNonPoolTokens() (gas: 157505516)\nLogs:\n  gross ETH capital (wei): 404492004375936755769\n  attacker ETH exit (wei): 139667041180374722901\n  net ETH exit cost before fee recapture (wei): 264824963195562032868\n  payer ETH fee receipts (wei): 4044920043759367559\n  counter-seller ETH proceeds (wei): 259768813140862823404\n  duration seconds: 201600\n\n[PASS] testPayerCanRecaptureItsNativeFeeShare() (gas: 144656869)\nLogs:\n  gross ETH capital (wei): 181211119085726918584\n  attacker ETH exit (wei): 178745758707992549273\n  net ETH exit cost before fee recapture (wei): 2465360377734369311\n  payer ETH fee receipts (wei): 1812111190857269186\n  counter-seller ETH proceeds (wei): 0\n  duration seconds: 201600\n  net ETH cost after native fee recapture (wei): 653249186877100125\n\n[PASS] testSustainedManipulationUnlockAndExit() (gas: 144670589)\nLogs:\n  gross ETH capital (wei): 181211119085726918584\n  attacker ETH exit (wei): 178745758707992549273\n  net ETH exit cost before fee recapture (wei): 2465360377734369311\n  payer ETH fee receipts (wei): 1812111190857269186\n  counter-seller ETH proceeds (wei): 0\n  duration seconds: 201600\n\nSuite result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.45s (486.77ms CPU time)\n\nRan 5 tests for test/SeedRangeLimitProperties.t.sol:SeedRangeLimitPropertiesTest\n[PASS] testBuyLimitBelowTheFloorIsClampedAndLimitAboveThePriceIsRefused() (gas: 1123455)\n[PASS] testExactOutputSellBeyondTheReserveRevertsSlippageWithoutState() (gas: 1324053)\n[PASS] testFuzzDrainAndRebuyKeepsTheOracleReadable(uint96,uint96,uint8) (runs: 256, μ: 1689453, ~: 1680926)\n[PASS] testFuzzSellLimitIsClampedExactlyToTheSeedCeiling(uint96,uint160,uint8) (runs: 512, μ: 1126706, ~: 1206608)\n[PASS] testLaunchStateSellRevertsAsPriceLimitAlreadyExceeded() (gas: 1161675)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 1.25s (1.18s CPU time)\n\nRan 1 test for test/Invariants.t.sol:SystemInvariantTest\n[PASS]\nSystemInvariantTest invariants:\n[PASS] invariantEligibleEqualsOnlyExecutedBuysAndSynchronizedProofs\n[PASS] invariantNoActorExceedsItsQuotaBeforeUnlock\n[PASS] invariantPrincipalLiquidityNeverDecreases\n[PASS] invariantSupplyConservedAndRouterHasNoCustody\n SystemInvariantTest invariants (runs: 128, calls: 5120, reverts: 0)\n\n╭---------------+----------+-------+---------+----------╮\n| Contract      | Selector | Calls | Reverts | Discards |\n+=======================================================+\n| ActionHandler | advance  | 825   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | buy      | 858   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | claim    | 893   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | sell     | 861   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | sync     | 850   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | transfer | 833   | 0       | 0        |\n╰---------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.11s (2.05s CPU time)\n\nRan 17 tests for test/FailurePaths.t.sol:RouterAndHookFailurePathsTest\n[PASS] testBatchBoundsAndValueMustMatch() (gas: 186758)\n[PASS] testBatchIsAtomicWhenALaterStepFails() (gas: 834234)\n[PASS] testConfirmationRequiresSixHoursAndCannotSkipTiers() (gas: 15341697)\n[PASS] testFullUnlockKeepsFeesAndRouterAuthentication() (gas: 137007309)\n[PASS] testFuzzOperationHashBindsTraderNonceAndChain(address,uint256,uint64) (runs: 256, μ: 17656, ~: 17656)\n[PASS] testFuzzRemainingQuotaFormula(uint128,uint128,uint8) (runs: 512, μ: 7293355, ~: 7293203)\n[PASS] testFuzzTierIsMonotonicInFdv(uint256,uint256) (runs: 512, μ: 16973, ~: 16923)\n[PASS] testFuzzTransfersMoveExactlyTheAmount(address,uint96) (runs: 256, μ: 122242, ~: 122475)\n[PASS] testHookRejectsMalformedRouteDataAndUnknownSenders() (gas: 238753)\n[PASS] testPartialFillAtPriceLimitChargesOnlyExecutedInput() (gas: 1213883)\n[PASS] testQuotaWidensWithTierAndNeverDoubleCounts() (gas: 16795708)\n[PASS] testRequesterChangeAfterActivationDoesNotMoveThePayer() (gas: 146383)\n[PASS] testRouterCallbackNeedsALiveSwap() (gas: 73817)\n[PASS] testRouterRefusesDegenerateRequests() (gas: 500273)\n[PASS] testSecondRoundClaimsAccumulateOncePerRound() (gas: 995639)\n[PASS] testSlippageRefusalsLeaveNoTrace() (gas: 899401)\n[PASS] testSyncForStrangerAndZeroAddressCreatesNothing() (gas: 108400)\nSuite result: ok. 17 passed; 0 failed; 0 skipped; finished in 2.06s (2.12s CPU time)\n\nRan 11 tests for test/NativeLaunch.t.sol:NativeWithdrawalTest\n[PASS] testDeepNativePoolWarmsUpAndCanUnlock() (gas: 136095725)\n[PASS] testNativeBatchSettlement() (gas: 870289)\n[PASS] testNativeBuySellAndFeeDistribution() (gas: 1127528)\n[PASS] testNativeExactOutputRefundToAuthenticatedCaller() (gas: 453473)\n[PASS] testNativeSettlementResetsPriorSyncCurrency() (gas: 605836)\n[PASS] testNativeValueMismatchAndUnsolicitedSendRejected() (gas: 91930)\n[PASS] testNativeWithdrawalUsesCEIAndCannotDoubleWithdraw() (gas: 996338)\n[PASS] testOneSidedOpeningLocks87PercentWithoutEthFunding() (gas: 62586)\n[PASS] testOtherWalletCannotWithdrawNativeRefund() (gas: 461374)\n[PASS] testRejectingNativeWalletCanTradeAndRetryWithdrawal() (gas: 1074660)\n[PASS] testThinLaunchCannotUnlockFromInitialSpotOrTinyBuy() (gas: 29940461)\nSuite result: ok. 11 passed; 0 failed; 0 skipped; finished in 2.01s (161.64ms CPU time)\n\nRan 4 tests for test/candidate/Adversarial.t.sol:CandidateAdversarialTest\n[PASS] testAfterCallbackAndReplayCannotCreateRightsOrFees() (gas: 575539)\n[PASS] testBatchAndPrefundingCannotChangeSourcingOrDelivery() (gas: 818510)\n[PASS] testEveryCompanionCreationPinRejectsTamperedCodeAtomically() (gas: 38438727)\n[PASS] testFuzzExecutedBuyAndSellFees(uint96) (runs: 256, μ: 974915, ~: 972072)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 2.12s (2.10s CPU time)\n\nRan 5 tests for test/BatchSettlementProperties.t.sol:BatchSettlementPropertiesTest\n[PASS] testFuzz_BatchEqualsSequentialExecution(uint256,uint8,bool) (runs: 1000, μ: 4534881, ~: 3848406)\n[PASS] testFuzz_FailureAtAnyBatchIndexRestoresAllowancesFeesAndCredits(uint256,uint8) (runs: 1000, μ: 11368192, ~: 11106403)\n[PASS] test_MaximumMixedBatchOnFreshTokenOnlyManager() (gas: 9253895)\n[PASS] test_OneWeiShortAllowanceRestoresEntireBatchAndRetryWorks() (gas: 1872568)\n[PASS] test_PartialSaleMayPrefundMoreThanQuotaButChargesOnlyExecution() (gas: 906671)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 2.04s (3.85s CPU time)\n\nRan 4 tests for test/TokenLedgerProperties.t.sol:TokenReceiptPropertiesTest\n[PASS] testFuzz_ReceiptsSurviveRoundingDelegationAndReturnedInventory(uint96) (runs: 1000, μ: 611431, ~: 611245)\n[PASS] test_FailedFinalTransferRollsBackAllowanceAndDistribution() (gas: 395800)\n[PASS] test_MetadataAndUnsealedIssuance() (gas: 72386)\n[PASS] test_ZeroAndSelfTransfersCannotSealOrCreateAllocationReceipts() (gas: 521375)\nSuite result: ok. 4 passed; 0 failed; 0 skipped; finished in 2.12s (2.12s CPU time)\n\nRan 2 tests for test/SeedRangeLimitProperties.t.sol:SeedRangeInvariantTest\n[PASS]\nSeedRangeInvariantTest invariants:\n[PASS] invariant_EveryObservationIsLiquid\n[PASS] invariant_PriceNeverLeavesTheSeedRange\n[PASS] invariant_PrincipalLockedAndManagerAssetsEqualExecutedFlows\n[PASS] invariant_SoldMatchesExecutedSalesAndQuota\n SeedRangeInvariantTest invariants (runs: 128, calls: 6144, reverts: 0)\n\n╭-----------------------+--------------+-------+---------+----------╮\n| Contract              | Selector     | Calls | Reverts | Discards |\n+===================================================================+\n| SeedRangeTradeHandler | advance      | 990   | 0       | 0        |\n|-----------------------+--------------+-------+---------+----------|\n| SeedRangeTradeHandler | buyExactIn   | 982   | 0       | 0        |\n|-----------------------+--------------+-------+---------+----------|\n| SeedRangeTradeHandler | sellExactIn  | 1012  | 0       | 0        |\n|-----------------------+--------------+-------+---------+----------|\n| SeedRangeTradeHandler | sellExactOut | 1051  | 0       | 0        |\n|-----------------------+--------------+-------+---------+----------|\n| SeedRangeTradeHandler | syncPayer    | 1042  | 0       | 0        |\n|-----------------------+--------------+-------+---------+----------|\n| SeedRangeTradeHandler | withdraw     | 1067  | 0       | 0        |\n╰-----------------------+--------------+-------+---------+----------╯\n\n[PASS] testHandlerBranchesAreReachable() (gas: 3844289)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.06s (2.04s CPU time)\n\nRan 1 test for test/Invariants.t.sol:FullyUnlockedInvariantTest\n[PASS]\nFullyUnlockedInvariantTest invariants:\n[PASS] invariantEligibleEqualsOnlyExecutedBuysAndSynchronizedProofs\n[PASS] invariantNoActorExceedsItsQuotaBeforeUnlock\n[PASS] invariantPrincipalLiquidityNeverDecreases\n[PASS] invariantSupplyConservedAndRouterHasNoCustody\n[PASS] invariantUnlockRemainsPermanentDespiteInvalidFeed\n FullyUnlockedInvariantTest invariants (runs: 128, calls: 5120, reverts: 0)\n\n╭---------------+----------+-------+---------+----------╮\n| Contract      | Selector | Calls | Reverts | Discards |\n+=======================================================+\n| ActionHandler | advance  | 825   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | buy      | 858   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | claim    | 893   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | sell     | 861   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | sync     | 850   | 0       | 0        |\n|---------------+----------+-------+---------+----------|\n| ActionHandler | transfer | 833   | 0       | 0        |\n╰---------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.34s (2.12s CPU time)\n\nRan 1 test for test/successor/SuccessorInvariants.t.sol:SuccessorInvariantTest\n[PASS]\nSuccessorInvariantTest invariants:\n[PASS] invariant_creditsEqualExecutedBuysOnly\n[PASS] invariant_feesAreNativeClaimsAndNeverUnlk\n[PASS] invariant_quotaNeverExceededForAnyInitiator\n SuccessorInvariantTest invariants (runs: 128, calls: 5120, reverts: 0)\n\n╭------------------+----------+-------+---------+----------╮\n| Contract         | Selector | Calls | Reverts | Discards |\n+==========================================================+\n| SuccessorHandler | buy      | 1680  | 0       | 0        |\n|------------------+----------+-------+---------+----------|\n| SuccessorHandler | sell     | 1721  | 0       | 0        |\n|------------------+----------+-------+---------+----------|\n| SuccessorHandler | transfer | 1719  | 0       | 0        |\n╰------------------+----------+-------+---------+----------╯\n\nSuite result: ok. 1 passed; 0 failed; 0 skipped; finished in 1.79s (1.74s CPU time)\n\nRan 2 tests for test/RevisionProperties.t.sol:MilestoneSampleInvariantTest\n[PASS]\nMilestoneSampleInvariantTest invariants:\n[PASS] invariant_confirmationNeedsAnUnbrokenChainOfValidSamples\n[PASS] invariant_invalidSamplesNeverAdvanceTiers\n[PASS] invariant_nothingEverRelocksAndStateIsConsistent\n MilestoneSampleInvariantTest invariants (runs: 48, calls: 1920, reverts: 0)\n\n╭------------------------+----------+-------+---------+----------╮\n| Contract               | Selector | Calls | Reverts | Discards |\n+================================================================+\n| MilestoneSampleHandler | advance  | 322   | 0       | 0        |\n|------------------------+----------+-------+---------+----------|\n| MilestoneSampleHandler | corrupt  | 317   | 0       | 0        |\n|------------------------+----------+-------+---------+----------|\n| MilestoneSampleHandler | heal     | 319   | 0       | 0        |\n|------------------------+----------+-------+---------+----------|\n| MilestoneSampleHandler | march    | 310   | 0       | 0        |\n|------------------------+----------+-------+---------+----------|\n| MilestoneSampleHandler | sample   | 309   | 0       | 0        |\n|------------------------+----------+-------+---------+----------|\n| MilestoneSampleHandler | setPrice | 343   | 0       | 0        |\n╰------------------------+----------+-------+---------+----------╯\n\n[PASS] testHandlerReachesTiersAndEveryCorruptionIsInvalid() (gas: 12640787)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.68s (2.65s CPU time)\n\nRan 2 tests for test/QuotaInvariants.t.sol:QuotaInvariantTest\n[PASS]\nQuotaInvariantTest invariants:\n[PASS] invariant_configurationSealedAndRouteEnforced\n[PASS] invariant_ledgerMatchesExecutedDeltas\n[PASS] invariant_milestonesMonotonicAndConsistent\n[PASS] invariant_principalLockedAndFeeTermsFixed\n[PASS] invariant_routerNativeSolvency\n[PASS] invariant_salesNeverExceedQuota\n[PASS] invariant_supplyConservedAndNoCustody\n QuotaInvariantTest invariants (runs: 96, calls: 5760, reverts: 0)\n\n╭--------------+-----------------+-------+---------+----------╮\n| Contract     | Selector        | Calls | Reverts | Discards |\n+=============================================================+\n| QuotaHandler | advance         | 348   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | buyExactIn      | 338   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | buyExactOut     | 367   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | claimAndAttest  | 360   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | claimFees       | 332   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | directSwap      | 364   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | donate          | 401   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | foreignActivate | 361   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | sellExactOut    | 347   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | sellOverQuota   | 363   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | sellWithinQuota | 751   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | setFeed         | 355   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | sync            | 352   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | transfer        | 384   | 0       | 0        |\n|--------------+-----------------+-------+---------+----------|\n| QuotaHandler | withdrawNative  | 337   | 0       | 0        |\n╰--------------+-----------------+-------+---------+----------╯\n\n[PASS] testHandlerActionsActuallyExecute() (gas: 23822211)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.34s (3.32s CPU time)\n\nRan 8 tests for test/SepoliaPins.t.sol:SepoliaPinsTest\n[PASS] testEmbeddedRuntimeMatchesThePins() (gas: 22518)\n[PASS] testLocalChainDoesNotConsultThePins() (gas: 10226069)\n[PASS] testSepoliaAcceptsThePinnedServicesAtInitialize() (gas: 10488386)\n[PASS] testSepoliaRefusesAnUnpinnedFactory() (gas: 6489939)\n[PASS] testSepoliaRefusesAnUnpinnedManager() (gas: 159347398)\n[PASS] testSepoliaRefusesLookalikeFeesBehindThePinnedFactory() (gas: 10451800)\n[PASS] testSepoliaRefusesLookalikeRegistryBehindThePinnedFactory() (gas: 10438631)\n[PASS] testSepoliaRefusesUnpinnedServicesAtInitialize() (gas: 10157187)\nSuite result: ok. 8 passed; 0 failed; 0 skipped; finished in 3.38s (126.02ms CPU time)\n\nRan 2 tests for test/candidate/QuotaInvariants.t.sol:CandidateQuotaInvariantTest\n[PASS]\nCandidateQuotaInvariantTest invariants:\n[PASS] invariant_configurationSealedAndRouteEnforced\n[PASS] invariant_ledgerMatchesExecutedDeltas\n[PASS] invariant_milestonesMonotonicAndConsistent\n[PASS] invariant_principalLockedAndFeeTermsFixed\n[PASS] invariant_routerNativeSolvency\n[PASS] invariant_salesNeverExceedQuota\n[PASS] invariant_supplyConservedAndNoCustody\n[PASS] invariant_vaultReceiptsBackAllAccrual\n CandidateQuotaInvariantTest invariants (runs: 96, calls: 5760, reverts: 0)\n\n╭-----------------------+-----------------+-------+---------+----------╮\n| Contract              | Selector        | Calls | Reverts | Discards |\n+======================================================================+\n| CandidateQuotaHandler | advance         | 348   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | buyExactIn      | 338   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | buyExactOut     | 367   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | claimAndAttest  | 360   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | claimFees       | 332   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | directSwap      | 364   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | donate          | 401   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | foreignActivate | 361   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | sellExactOut    | 347   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | sellOverQuota   | 363   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | sellWithinQuota | 751   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | setFeed         | 355   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | sync            | 352   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | transfer        | 384   | 0       | 0        |\n|-----------------------+-----------------+-------+---------+----------|\n| CandidateQuotaHandler | withdrawNative  | 337   | 0       | 0        |\n╰-----------------------+-----------------+-------+---------+----------╯\n\n[PASS] testHandlerActionsActuallyExecute() (gas: 24312591)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 3.83s (3.83s CPU time)\n\nRan 2 tests for test/TokenLedgerProperties.t.sol:TokenLedgerInvariantTest\n[PASS]\nTokenLedgerInvariantTest invariants:\n[PASS] invariant_BalancesAndAllowancesMatchIndependentLedger\n[PASS] invariant_OriginalReceiptsRemainSealedDespiteArbitraryTransfers\n TokenLedgerInvariantTest invariants (runs: 256, calls: 16384, reverts: 0)\n\n╭--------------------+-------------------+-------+---------+----------╮\n| Contract           | Selector          | Calls | Reverts | Discards |\n+=====================================================================+\n| TokenLedgerHandler | approve           | 2697  | 0       | 0        |\n|--------------------+-------------------+-------+---------+----------|\n| TokenLedgerHandler | refuseOverspend   | 2690  | 0       | 0        |\n|--------------------+-------------------+-------+---------+----------|\n| TokenLedgerHandler | refuseZeroAddress | 2794  | 0       | 0        |\n|--------------------+-------------------+-------+---------+----------|\n| TokenLedgerHandler | transfer          | 2710  | 0       | 0        |\n|--------------------+-------------------+-------+---------+----------|\n| TokenLedgerHandler | transferAll       | 2795  | 0       | 0        |\n|--------------------+-------------------+-------+---------+----------|\n| TokenLedgerHandler | transferFrom      | 2698  | 0       | 0        |\n╰--------------------+-------------------+-------+---------+----------╯\n\n[PASS] test_HandlerCoversFiniteInfiniteSelfRevokedAndFailedAllowancePaths() (gas: 2246042)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.91s (4.91s CPU time)\n\nRan 5 tests for test/FeeCustodyProperties.t.sol:FeeCustodyInvariantTest\n[PASS]\nFeeCustodyInvariantTest invariants:\n[PASS] invariant_FactoryAssetsBackEveryUnpaidFeeAndDonationsRemainSurplus\n[PASS] invariant_FeeCollectionCannotTouchPrincipalOrCreateQuota\n[PASS] invariant_RecipientsAndSettlementStayBoundToTheirActualOwners\n FeeCustodyInvariantTest invariants (runs: 256, calls: 16384, reverts: 0)\n\n╭-------------------+-------------------------+-------+---------+----------╮\n| Contract          | Selector                | Calls | Reverts | Discards |\n+==========================================================================+\n| FeeCustodyHandler | collect                 | 1879  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | donate                  | 1858  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | refuseInvalidOperations | 1802  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | rotateNetwork           | 1814  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | setRecipientMode        | 1780  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | tradePair               | 1805  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | transferRequester       | 1812  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | withdrawAccount         | 1843  | 0       | 0        |\n|-------------------+-------------------------+-------+---------+----------|\n| FeeCustodyHandler | withdrawNetwork         | 1791  | 0       | 0        |\n╰-------------------+-------------------------+-------+---------+----------╯\n\n[PASS] test_DeferredPayerDebtStaysWithOldWalletWhileNetworkDebtFollowsRecipient() (gas: 6376558)\n[PASS] test_ReentrantFeeCollectionHasNoSecondPrincipalOrFeeWithdrawal() (gas: 4131841)\n[PASS] test_ReentrantFeeWithdrawalsCannotPayEitherShareTwice() (gas: 4037988)\n[PASS] test_RejectingNetworkRecipientCannotHoldPayerFeesHostage() (gas: 3956563)\nSuite result: ok. 5 passed; 0 failed; 0 skipped; finished in 8.07s (8.04s CPU time)\n\nRan 2 tests for test/ClaimLifecycleInvariants.t.sol:ClaimLifecycleInvariantsTest\n[PASS]\nClaimLifecycleInvariantsTest invariants:\n[PASS] invariant_DistributorReservesAndCashMatchIndependentRoundModel\n[PASS] invariant_FixedSupplyAndInitialReceiptsSurviveAllClaimSequences\n[PASS] invariant_OnlyDeliveredAttestedAndSyncedClaimsCreateRights\n ClaimLifecycleInvariantsTest invariants (runs: 256, calls: 20480, reverts: 0)\n\n╭-----------------------+-------------------+-------+---------+----------╮\n| Contract              | Selector          | Calls | Reverts | Discards |\n+========================================================================+\n| ClaimLifecycleHandler | advance           | 1880  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | attest            | 1844  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | certify           | 1898  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | claim             | 1822  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | deliverAndSync    | 1890  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | openRound         | 1912  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | sweep             | 1859  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | sync              | 1847  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | syncPayer         | 1946  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | transferOrDonate  | 1834  | 0       | 0        |\n|-----------------------+-------------------+-------+---------+----------|\n| ClaimLifecycleHandler | unauthorizedRound | 1748  | 0       | 0        |\n╰-----------------------+-------------------+-------+---------+----------╯\n\n[PASS] test_ModelExercisesDelayedCertificationSweepsAndRecycledFunding() (gas: 4966220)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 10.42s (10.38s CPU time)\n\nRan 2 tests for test/NativeCustodyInvariants.t.sol:NativeCustodyInvariantsTest\n[PASS]\nNativeCustodyInvariantsTest invariants:\n[PASS] invariant_ManagerHasNoUnsettledDeltaOrReusableRouteContext\n[PASS] invariant_NativeLiabilitiesRemainFullyBackedAndBelongToTheirWallet\n[PASS] invariant_TransfersDonationsAndFailedBatchesCannotCreateOrMoveRights\n NativeCustodyInvariantsTest invariants (runs: 256, calls: 16384, reverts: 0)\n\n╭----------------------+--------------+-------+---------+----------╮\n| Contract             | Selector     | Calls | Reverts | Discards |\n+==================================================================+\n| NativeCustodyHandler | donateTokens | 2730  | 0       | 0        |\n|----------------------+--------------+-------+---------+----------|\n| NativeCustodyHandler | failBatch    | 2743  | 0       | 0        |\n|----------------------+--------------+-------+---------+----------|\n| NativeCustodyHandler | forceEther   | 2753  | 0       | 0        |\n|----------------------+--------------+-------+---------+----------|\n| NativeCustodyHandler | tradeBatch   | 2805  | 0       | 0        |\n|----------------------+--------------+-------+---------+----------|\n| NativeCustodyHandler | transfer     | 2639  | 0       | 0        |\n|----------------------+--------------+-------+---------+----------|\n| NativeCustodyHandler | withdraw     | 2714  | 0       | 0        |\n╰----------------------+--------------+-------+---------+----------╯\n\n[PASS] test_HandlerTradesRejectsReentersAndDrainsWithoutTakingDonations() (gas: 5323166)\nSuite result: ok. 2 passed; 0 failed; 0 skipped; finished in 11.73s (11.71s CPU time)\n\nRan 56 test suites in 11.74s (74.75s CPU time): 268 tests passed, 0 failed, 0 skipped (268 total tests)\n","passed":true},{"durationMs":532,"exitCode":0,"name":"source-index","output":"{\"v\":1,\"entryPoints\":[\"MerkleClaimEvidence.abandonSession(uint256)\",\"MerkleClaimEvidence.attest(uint256,address,uint256,bytes32[])\",\"MerkleClaimEvidence.certifyRound(uint256,address[],uint256[])\",\"MerkleClaimEvidence.reduce(uint256,uint256)\",\"MerkleClaimEvidence.submitLeaves(uint256,uint256,address[],uint256[])\",\"NftFeeVault.receive()\",\"NftFeeVault.recordAccrual(uint256)\",\"NftFeeVault.redeem()\",\"NftFeeVault.unlockCallback(bytes)\",\"NftFeeVault.withdraw()\",\"NftFeeVault.withdrawDonations()\",\"UnlkHook.afterAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHook.afterInitialize(address,(address,address,uint24,int24,address),uint160,int24)\",\"UnlkHook.afterRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHook.afterSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),int256,bytes)\",\"UnlkHook.beforeAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHook.beforeInitialize(address,(address,address,uint24,int24,address),uint160)\",\"UnlkHook.beforeRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHook.beforeSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),bytes)\",\"UnlkHook.configureAndActivate(address,address,address,uint64)\",\"UnlkHook.deployCompanions(uint64,address,bytes,bytes,bytes)\",\"UnlkHook.syncPayer()\",\"UnlkHook.syncRewards(address)\",\"UnlkHook.updateMilestone()\",\"UnlkHookV2.afterAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHookV2.afterInitialize(address,(address,address,uint24,int24,address),uint160,int24)\",\"UnlkHookV2.afterRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHookV2.afterSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),int256,bytes)\",\"UnlkHookV2.beforeAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHookV2.beforeInitialize(address,(address,address,uint24,int24,address),uint160)\",\"UnlkHookV2.beforeRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHookV2.beforeSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),bytes)\",\"UnlkHookV2.configureAndActivate(address,address,address,uint64)\",\"UnlkHookV2.deployCompanions(uint64,address,bytes[5])\",\"UnlkHookV2.syncPayer()\",\"UnlkHookV2.syncRewards(address)\",\"UnlkHookV2.updateMilestone()\",\"UnlkHookV3.afterAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHookV3.afterInitialize(address,(address,address,uint24,int24,address),uint160,int24)\",\"UnlkHookV3.afterRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),int256,int256,bytes)\",\"UnlkHookV3.afterSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),int256,bytes)\",\"UnlkHookV3.beforeAddLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHookV3.beforeInitialize(address,(address,address,uint24,int24,address),uint160)\",\"UnlkHookV3.beforeRemoveLiquidity(address,(address,address,uint24,int24,address),(int24,int24,int256,bytes32),bytes)\",\"UnlkHookV3.beforeSwap(address,(address,address,uint24,int24,address),(bool,int256,uint160),bytes)\",\"UnlkHookV3.configureAndActivate(address,address,uint64)\",\"UnlkHookV3.deployCompanions(uint64,address,bytes[4])\",\"UnlkHookV3.syncPayer()\",\"UnlkHookV3.syncRewards(address)\",\"UnlkHookV3.updateMilestone()\",\"UnlkOracle.bind((address,address,uint24,int24,address),address,int24,int24)\",\"UnlkOracle.checkpoint()\",\"UnlkRouterV2.receive()\",\"UnlkRouterV2.swap((bool,int256,uint160,uint256,uint256,uint256))\",\"UnlkRouterV2.swapBatch((bool,int256,uint160,uint256,uint256,uint256)[])\",\"UnlkRouterV2.unlockCallback(bytes)\",\"UnlkRouterV2.withdrawNative()\",\"UnlkSwapRouter.receive()\",\"UnlkSwapRouter.swap((bool,int256,uint160,uint256,uint256,uint256))\",\"UnlkSwapRouter.swapBatch((bool,int256,uint160,uint256,uint256,uint256)[])\",\"UnlkSwapRouter.unlockCallback(bytes)\",\"UnlkSwapRouter.withdrawNative()\",\"UnlkToken.approve(address,uint256)\",\"UnlkToken.transfer(address,uint256)\",\"UnlkToken.transferFrom(address,address,uint256)\"],\"files\":{\".gitignore\":6,\"DELIVERY.md\":103,\"DESIGN.md\":73,\"LICENSE\":25,\"README.md\":42,\"RELEASE_STATUS.json\":53,\"delivery/OPERATIONS.md\":112,\"delivery/PACKAGE_SHA256SUMS\":566,\"delivery/STATUS.json\":213,\"delivery/checks/abi-export.txt\":1,\"delivery/checks/artifact-export.txt\":1,\"delivery/checks/build.txt\":21,\"delivery/checks/current-block-fork.txt\":24,\"delivery/checks/extended-fork.txt\":27,\"delivery/checks/final-fmt.txt\":0,\"delivery/checks/final-integrity.txt\":8,\"delivery/checks/fmt.txt\":0,\"delivery/checks/historical-block-fork.txt\":25,\"delivery/checks/imd-launch.txt\":1,\"delivery/checks/integrity.txt\":12,\"delivery/checks/lint.txt\":372,\"delivery/checks/live-rpc.txt\":1,\"delivery/checks/minimal-environment.txt\":505,\"delivery/checks/protected.txt\":22,\"delivery/checks/release-gates.txt\":10,\"delivery/checks/reviewed-code.txt\":1,\"delivery/checks/revision-fmt.txt\":1,\"delivery/checks/revision-fork.txt\":17,\"delivery/checks/revision-protected.txt\":22,\"delivery/checks/revision-test.txt\":980,\"delivery/checks/rpc-tools.txt\":1,\"delivery/checks/saved-network.txt\":7,\"delivery/checks/signing-tools.txt\":5,\"delivery/checks/source-hashes.txt\":458,\"delivery/checks/test.txt\":485,\"delivery/checks/upstream-rehearsal-build.txt\":8,\"delivery/network/block.json\":1,\"delivery/network/capabilities.json\":345,\"delivery/network/current-job.json\":217,\"delivery/network/factory.runtime.hex\":1,\"delivery/network/feed-check.json\":21,\"delivery/network/feed.runtime.hex\":1,\"delivery/network/fees.runtime.hex\":1,\"delivery/network/fix-job.json\":104,\"delivery/network/http-results.json\":117,\"delivery/network/import-check-paths-request.json\":33,\"delivery/network/import-check-paths-response.json\":25,\"delivery/network/import-check-request.json\":15,\"delivery/network/import-check-response.json\":25,\"delivery/network/import-request.json\":5,\"delivery/network/import-response.json\":17,\"delivery/network/manager.runtime.hex\":1,\"delivery/network/openapi.json\":1383,\"delivery/network/platform-rebuild.json\":30,\"delivery/network/policies.json\":1430,\"delivery/network/preflight.json\":347,\"delivery/network/registry.runtime.hex\":1,\"delivery/network/rpc-access.json\":20,\"delivery/network/selected-policy.json\":34,\"delivery/network/services.json\":29,\"delivery/protected-inputs.json\":4,\"delivery/provenance.json\":25,\"delivery/rehearsal/RecordedSepolia.t.sol\":200,\"delivery/source-files.json\":2492,\"delivery/verify.py\":163,\"dependencies.lock.json\":24,\"dist-candidate/abi/IChainlinkEthUsd.json\":48,\"dist-candidate/abi/MerkleClaimEvidence.json\":461,\"dist-candidate/abi/MerkleDistributor.json\":451,\"dist-candidate/abi/UnlkHook.json\":1973,\"dist-candidate/abi/UnlkOracle.json\":443,\"dist-candidate/abi/UnlkSwapRouter.json\":359,\"dist-candidate/abi/UnlkToken.json\":425,\"dist-candidate/assets/app.css\":1,\"dist-candidate/assets/app.js\":150,\"dist-candidate/assets/jetbrains-mono-regular-DYCCJ225.woff2\":369,\"dist-candidate/assets/jetbrains-mono-semibold-MVL5K7GZ.woff2\":424,\"dist-candidate/evidence/allowance-vectors.json\":564,\"dist-candidate/evidence/browser-validation.json\":368,\"dist-candidate/evidence/build.txt\":21,\"dist-candidate/evidence/chain-verification.json\":158,\"dist-candidate/evidence/contrast.json\":197,\"dist-candidate/evidence/cross-language-tests.txt\":19,\"dist-candidate/evidence/design-probe.json\":183,\"dist-candidate/evidence/fork-validation.json\":53,\"dist-candidate/evidence/frontend-tests.txt\":79,\"dist-candidate/evidence/live-interactions.json\":154,\"dist-candidate/evidence/native-claim.json\":17,\"dist-candidate/evidence/publication.json\":16,\"dist-candidate/evidence/recovery-validation.json\":12,\"dist-candidate/evidence/round-0.json\":1,\"dist-candidate/evidence/rpc-check.json\":29,\"dist-candidate/evidence/submission-check.json\":21,\"dist-candidate/evidence/swap-math-vectors.json\":173,\"dist-candidate/evidence/test-results.txt\":206,\"dist-candidate/evidence/typecheck.txt\":8,\"dist-candidate/evidence/validation.md\":101,\"dist-candidate/evidence/wallet-validation.json\":14,\"dist-candidate/evidence/webkit-validation.json\":30,\"dist-candidate/favicon.svg\":1,\"dist-candidate/fonts/JetBrains-Mono-OFL.txt\":93,\"dist-candidate/index.html\":30,\"dist-candidate/share.png\":104,\"dist-candidate/share.svg\":14,\"dist-candidate/wallets/metamask.svg\":1,\"dist-candidate/wallets/phantom.svg\":1,\"dist-candidate/wallets/rabby.svg\":1,\"dist/abi/IChainlinkEthUsd.json\":48,\"dist/abi/MerkleClaimEvidence.json\":461,\"dist/abi/MerkleDistributor.json\":451,\"dist/abi/UnlkHook.json\":1973,\"dist/abi/UnlkOracle.json\":443,\"dist/abi/UnlkSwapRouter.json\":359,\"dist/abi/UnlkToken.json\":425,\"dist/assets/ccip-CJv6SR9J.js\":1,\"dist/assets/index-BDn4nz2S.js\":3,\"dist/assets/index-BkOFwGt7.css\":1,\"dist/assets/index-MshxxFjX.js\":93,\"dist/assets/jetbrains-mono-regular-CA-Os4ii.woff2\":369,\"dist/assets/jetbrains-mono-semibold-BjwzTi7v.woff2\":424,\"dist/evidence/allowance-vectors.json\":564,\"dist/evidence/browser-validation.json\":368,\"dist/evidence/build.txt\":21,\"dist/evidence/chain-verification.json\":158,\"dist/evidence/contrast.json\":197,\"dist/evidence/cross-language-tests.txt\":19,\"dist/evidence/design-probe.json\":183,\"dist/evidence/fork-validation.json\":53,\"dist/evidence/frontend-tests.txt\":79,\"dist/evidence/live-interactions.json\":154,\"dist/evidence/native-claim.json\":17,\"dist/evidence/publication.json\":16,\"dist/evidence/recovery-validation.json\":12,\"dist/evidence/round-0.json\":1,\"dist/evidence/rpc-check.json\":29,\"dist/evidence/submission-check.json\":21,\"dist/evidence/swap-math-vectors.json\":173,\"dist/evidence/test-results.txt\":206,\"dist/evidence/typecheck.txt\":8,\"dist/evidence/validation.md\":101,\"dist/evidence/wallet-validation.json\":14,\"dist/evidence/webkit-validation.json\":30,\"dist/favicon.svg\":1,\"dist/fonts/JetBrains-Mono-OFL.txt\":93,\"dist/index.html\":31,\"dist/share.png\":104,\"dist/share.svg\":14,\"dist/wallets/metamask.svg\":1,\"dist/wallets/phantom.svg\":1,\"dist/wallets/rabby.svg\":1,\"docs/ARTIFACTS.json\":64,\"docs/BUILD_RESULTS.txt\":21,\"docs/BYTECODE_COMPARISON_RESULTS.txt\":8,\"docs/DEPLOYMENT.md\":163,\"docs/ECONOMICS_RESULTS.txt\":49,\"docs/FMT_RESULTS.txt\":0,\"docs/FORK_RESULTS.txt\":24,\"docs/IMD_LAUNCH_CHECK_RESULTS.txt\":1,\"docs/LINT_RESULTS.txt\":372,\"docs/MINIMAL_ENV_TEST_RESULTS.txt\":543,\"docs/NETWORK_VERIFICATION_RESULTS.txt\":7,\"docs/PROTECTED_TEST_RESULTS.txt\":22,\"docs/RECOVERY.md\":65,\"docs/RELEASE_ARTIFACT_TEST_RESULTS.txt\":10,\"docs/REVISION_2026-10-13.md\":120,\"docs/SECURITY_REVIEW.md\":132,\"docs/SIZE_FIX.md\":150,\"docs/SOURCE_SHA256SUMS\":461,\"docs/SOURCE_VERIFICATION_RESULTS.txt\":458,\"docs/TEST_RESULTS.txt\":485,\"docs/VALIDATION.md\":135,\"docs/abi/CheckReleaseConfig.json\":46,\"docs/abi/HookDeployer.json\":94,\"docs/abi/IChainlinkEthUsd.json\":48,\"docs/abi/IClaimEvidence.json\":47,\"docs/abi/IHooks.json\":789,\"docs/abi/ILaunchFactoryView.json\":115,\"docs/abi/ILaunchRegistryView.json\":70,\"docs/abi/IMerkleDistributor.json\":125,\"docs/abi/IPoolManager.json\":1286,\"docs/abi/IRouteContext.json\":20,\"docs/abi/LaunchFactory.json\":896,\"docs/abi/LaunchFees.json\":323,\"docs/abi/LaunchRegistry.json\":320,\"docs/abi/MerkleClaimEvidence.json\":461,\"docs/abi/MerkleDistributor.json\":451,\"docs/abi/Stage2.json\":225,\"docs/abi/UnlkHook.json\":1973,\"docs/abi/UnlkOracle.json\":443,\"docs/abi/UnlkSwapRouter.json\":359,\"docs/abi/UnlkToken.json\":425,\"docs/candidate/ARTIFACTS.json\":58,\"docs/candidate/BUNDLE_SIZE.md\":30,\"docs/candidate/COMPATIBILITY.md\":65,\"docs/candidate/DEPENDENCIES.json\":2001,\"docs/candidate/DEPLOYMENT.md\":55,\"docs/candidate/ECONOMICS.md\":82,\"docs/candidate/SECURITY_REVIEW.md\":53,\"docs/candidate/STATUS.json\":15,\"docs/candidate/VALIDATION.md\":62,\"docs/candidate/abi/HookDeployerV2.json\":94,\"docs/candidate/abi/MerkleClaimEvidence.json\":461,\"docs/candidate/abi/NftFeeVault.json\":328,\"docs/candidate/abi/SetupVerifierV2.json\":36,\"docs/candidate/abi/UnlkHookV2.json\":2065,\"docs/candidate/abi/UnlkOracle.json\":443,\"docs/candidate/abi/UnlkRouterV2.json\":359,\"docs/candidate/abi/UnlkToken.json\":425,\"docs/candidate/all-tests.txt\":711,\"docs/candidate/build-results.txt\":33,\"docs/candidate/fmt-results.txt\":0,\"docs/candidate/fork-results.txt\":39,\"docs/candidate/frontend-build.txt\":8,\"docs/candidate/frontend-test-build.txt\":9,\"docs/candidate/frontend-tests.txt\":28,\"docs/candidate/frontend-types.txt\":0,\"docs/candidate/interfaces/deployed-Actions.sol.txt\":49,\"docs/candidate/interfaces/deployed-BaseActionsRouter.sol.txt\":74,\"docs/candidate/interfaces/deployed-Commands.sol.txt\":45,\"docs/candidate/interfaces/deployed-IUniswapV3PoolActions.sol.txt\":103,\"docs/candidate/interfaces/deployed-IUniswapV3PoolOwnerActions.sol.txt\":23,\"docs/candidate/interfaces/deployed-IV4Router.sol.txt\":50,\"docs/candidate/interfaces/deployed-V4Router.sol.txt\":173,\"docs/candidate/interfaces/deployed-V4SwapRouter.sol.txt\":17,\"docs/candidate/interfaces/universal-router-Commands.sol.txt\":49,\"docs/candidate/interfaces/universal-router-Dispatcher.sol.txt\":341,\"docs/candidate/interfaces/universal-router-UniversalRouter.sol.txt\":98,\"docs/candidate/interfaces/v4-periphery-Actions.sol.txt\":63,\"docs/candidate/interfaces/v4-periphery-BaseActionsRouter.sol.txt\":75,\"docs/candidate/interfaces/v4-periphery-BaseV4Quoter.sol.txt\":59,\"docs/candidate/interfaces/v4-periphery-DeltaResolver.sol.txt\":123,\"docs/candidate/interfaces/v4-periphery-IV4Router.sol.txt\":67,\"docs/candidate/interfaces/v4-periphery-V4Quoter.sol.txt\":159,\"docs/candidate/interfaces/v4-periphery-V4Router.sol.txt\":233,\"docs/candidate/invariant-results.txt\":52,\"docs/candidate/lint-results.txt\":538,\"docs/candidate/lint-summary.json\":13,\"docs/candidate/network/03vi_jvgsxpe2.evidence.json\":40,\"docs/candidate/network/03vi_jvgsxpe2.js\":3,\"docs/candidate/network/addresses.json\":10,\"docs/candidate/network/block.json\":274,\"docs/candidate/network/current-code-check.json\":28,\"docs/candidate/network/manager.runtime.hex\":1,\"docs/candidate/network/nft-collection.json\":1,\"docs/candidate/network/nft-inventory.json\":10,\"docs/candidate/network/nft-ownership.json\":21,\"docs/candidate/network/permit2.runtime.hex\":1,\"docs/candidate/network/quoter.runtime.hex\":1,\"docs/candidate/network/quoter.verified.json\":1,\"docs/candidate/network/router.runtime.hex\":1,\"docs/candidate/network/router.verified.json\":1,\"docs/candidate/protected-results.txt\":23,\"docs/candidate/recorded-runtime-results.txt\":11,\"docs/candidate/release-gate-tests.txt\":10,\"docs/candidate/release-plan.json\":80,\"docs/candidate/router-fork-results.txt\":16,\"docs/candidate/setup-fork-results.txt\":14,\"docs/candidate/size-repair-build.txt\":1,\"docs/candidate/size-repair-bundle.txt\":3,\"docs/candidate/size-repair-contract-sizes.txt\":56,\"docs/candidate/size-repair-fmt.txt\":0,\"docs/candidate/size-repair-frontend-build.txt\":8,\"docs/candidate/size-repair-frontend-test-build.txt\":9,\"docs/candidate/size-repair-frontend-tests.txt\":28,\"docs/candidate/size-repair-preservation.txt\":2,\"docs/candidate/size-repair-tests.txt\":711,\"docs/candidate/sizes.txt\":56,\"docs/candidate/unit-results.txt\":46,\"docs/network/capabilities.json\":345,\"docs/network/factory-artifacts.json\":2201,\"docs/network/factory-reference.json\":420,\"docs/network/factory.runtime.hex\":1,\"docs/network/feed-reference.json\":67,\"docs/network/feed-rounds.json\":134,\"docs/network/feed.runtime.hex\":1,\"docs/network/fees.runtime.hex\":1,\"docs/network/job-identity.json\":14,\"docs/network/manager.runtime.hex\":1,\"docs/network/policies.json\":36,\"docs/network/registry-reference.json\":108,\"docs/network/registry.runtime.hex\":1,\"docs/network/sepolia.json\":309,\"docs/network/services.json\":29,\"docs/network/size-fix-status.json\":126,\"docs/provenance/README.pinned.md\":241,\"docs/provenance/periphery-head.json\":113,\"docs/provenance/sealed-source.json\":21,\"docs/provenance/source-commits.json\":517,\"docs/provenance/source.json\":15,\"docs/provenance/universal-router-head.json\":125,\"docs/successor/ARTIFACTS.json\":36,\"docs/successor/DEPLOYMENT.md\":48,\"docs/successor/DESIGN.md\":161,\"docs/successor/SECURITY_REVIEW.md\":36,\"docs/successor/abi/UnlkHookV3.json\":2065,\"docs/successor/fork-results.txt\":29,\"docs/successor/release-plan.json\":109,\"docs/successor/test-results.txt\":35,\"foundry.toml\":31,\"launch.json\":35,\"rehearsal/Sepolia.t.sol\":112,\"rehearsal/candidate/RouterFork.t.sol\":10,\"rehearsal/candidate/SetupFork.t.sol\":127,\"rehearsal/successor/SuccessorFork.t.sol\":20,\"rehearsal/successor/SuccessorSetupFork.t.sol\":108,\"remappings.txt\":4,\"script/CheckReleaseConfig.s.sol\":85,\"script/LocalDemo.s.sol\":41,\"script/Stage2.s.sol\":98,\"script/candidate/PrepareCandidate.s.sol\":105,\"script/successor/PrepareSuccessor.s.sol\":96,\"scripts/candidate/artifacts.py\":32,\"scripts/candidate/bundle-size.py\":52,\"scripts/candidate/check-protected.py\":43,\"scripts/candidate/check.sh\":16,\"scripts/candidate/dependencies.py\":33,\"scripts/candidate/fork.sh\":16,\"scripts/candidate/mine.mjs\":18,\"scripts/candidate/pin.py\":16,\"scripts/check.sh\":12,\"scripts/check_protected.py\":31,\"scripts/export_abis.py\":33,\"scripts/generate_code_checks.py\":22,\"scripts/mine-hook.sh\":9,\"scripts/prepare_claim_tree.py\":37,\"scripts/rehearse-sepolia.sh\":4,\"scripts/release_artifacts.py\":56,\"scripts/successor/fork.sh\":10,\"scripts/successor/mine.mjs\":18,\"scripts/verify_network.py\":46,\"src/HookDeployer.sol\":37,\"src/HookFlags.sol\":45,\"src/MerkleClaimEvidence.sol\":200,\"src/UnlkHook.sol\":725,\"src/UnlkOracle.sol\":190,\"src/UnlkSwapRouter.sol\":242,\"src/UnlkToken.sol\":42,\"src/candidate/HookDeployerV2.sol\":37,\"src/candidate/NativeFeeMath.sol\":23,\"src/candidate/NftFeeVault.sol\":115,\"src/candidate/ReviewedCodeV2.sol\":12,\"src/candidate/SetupVerifierV2.sol\":125,\"src/candidate/UnlkHookV2.sol\":701,\"src/candidate/UnlkRouterV2.sol\":275,\"src/interfaces/IIntegration.sol\":88,\"src/libraries/OperationHash.sol\":15,\"src/libraries/ReviewedCode.sol\":10,\"src/libraries/SeedDepth.sol\":41,\"src/libraries/SepoliaRelease.sol\":11,\"src/successor/SuccessorFeeMath.sol\":34,\"src/successor/UnlkHookV3.sol\":731,\"test/ADDITIONAL_COVERAGE.md\":94,\"test/ActivationRobustness.t.sol\":303,\"test/Adversarial.t.sol\":117,\"test/BatchSettlementProperties.t.sol\":272,\"test/ClaimLifecycleInvariants.t.sol\":444,\"test/CreditsAndFees.t.sol\":180,\"test/EvidenceAndOracleProperties.t.sol\":349,\"test/FailurePaths.t.sol\":581,\"test/FeeCustodyProperties.t.sol\":454,\"test/HookDeployer.t.sol\":98,\"test/Invariants.t.sol\":220,\"test/Launch.t.sol\":112,\"test/LocalScript.t.sol\":28,\"test/ManipulationEconomics.t.sol\":117,\"test/NativeCustodyInvariants.t.sol\":296,\"test/NativeLaunch.t.sol\":236,\"test/Oracle.t.sol\":422,\"test/QuotaInvariants.t.sol\":529,\"test/ReleaseConfig.t.sol\":32,\"test/RevisionProperties.t.sol\":593,\"test/SecurityRegression.t.sol\":337,\"test/SeedBoundary.t.sol\":94,\"test/SeedRangeLimitProperties.t.sol\":599,\"test/SepoliaPins.t.sol\":180,\"test/Stage2Script.t.sol\":62,\"test/StageOneInvariants.t.sol\":281,\"test/TESTING_ADDITIONS.md\":136,\"test/TokenLedgerProperties.t.sol\":310,\"test/Trading.t.sol\":171,\"test/TwoStage.t.sol\":302,\"test/__pycache__/test_release_artifacts.cpython-312.pyc\":41,\"test/candidate/Adversarial.t.sol\":102,\"test/candidate/CandidateFixture.sol\":382,\"test/candidate/Fees.t.sol\":285,\"test/candidate/QuotaInvariants.t.sol\":554,\"test/candidate/Quoter.t.sol\":134,\"test/candidate/SetupScript.t.sol\":45,\"test/candidate/TiersAndSetup.t.sol\":148,\"test/compatibility/RecordedRouter.t.sol\":316,\"test/compatibility/RecordedRuntime.sol\":22,\"test/fixtures/LocalFixtures.sol\":59,\"test/fixtures/SepoliaRuntime.sol\":28,\"test/fixtures/SystemFixture.sol\":372,\"test/imd/HookFlags.sol\":45,\"test/imd/LaunchFactory.sol\":375,\"test/imd/LaunchFees.sol\":73,\"test/imd/LaunchRegistry.sol\":109,\"test/imd/MerkleDistributor.sol\":181,\"test/imd/PoolFees.sol\":220,\"test/imd/README.md\":29,\"test/mocks/MockERC20.sol\":11,\"test/results/build.txt\":8,\"test/results/foundry-tests.txt\":450,\"test/results/protected-checks.txt\":22,\"test/results/release-checks.txt\":18,\"test/successor/SetupScript.t.sol\":46,\"test/successor/Successor.t.sol\":432,\"test/successor/SuccessorFixture.sol\":494,\"test/successor/SuccessorInvariants.t.sol\":205,\"test/test_release_artifacts.py\":96,\"web/NOTICE.md\":7,\"web/index.html\":30,\"web/licenses/design-guidance.txt\":220,\"web/package-lock.json\":2197,\"web/package.json\":33,\"web/public/abi/IChainlinkEthUsd.json\":48,\"web/public/abi/MerkleClaimEvidence.json\":461,\"web/public/abi/MerkleDistributor.json\":451,\"web/public/abi/UnlkHook.json\":1973,\"web/public/abi/UnlkOracle.json\":443,\"web/public/abi/UnlkSwapRouter.json\":359,\"web/public/abi/UnlkToken.json\":425,\"web/public/evidence/allowance-vectors.json\":564,\"web/public/evidence/browser-validation.json\":368,\"web/public/evidence/build.txt\":21,\"web/public/evidence/chain-verification.json\":158,\"web/public/evidence/contrast.json\":197,\"web/public/evidence/cross-language-tests.txt\":19,\"web/public/evidence/design-probe.json\":183,\"web/public/evidence/fork-validation.json\":53,\"web/public/evidence/frontend-tests.txt\":79,\"web/public/evidence/live-interactions.json\":154,\"web/public/evidence/native-claim.json\":17,\"web/public/evidence/publication.json\":16,\"web/public/evidence/recovery-validation.json\":12,\"web/public/evidence/round-0.json\":1,\"web/public/evidence/rpc-check.json\":29,\"web/public/evidence/submission-check.json\":21,\"web/public/evidence/swap-math-vectors.json\":173,\"web/public/evidence/test-results.txt\":206,\"web/public/evidence/typecheck.txt\":8,\"web/public/evidence/validation.md\":101,\"web/public/evidence/wallet-validation.json\":14,\"web/public/evidence/webkit-validation.json\":30,\"web/public/favicon.svg\":1,\"web/public/fonts/JetBrains-Mono-OFL.txt\":93,\"web/public/share.png\":104,\"web/public/share.svg\":14,\"web/public/wallets/metamask.svg\":1,\"web/public/wallets/phantom.svg\":1,\"web/public/wallets/rabby.svg\":1,\"web/scripts/build-offline.mjs\":38,\"web/scripts/check-allowance-math.ts\":72,\"web/scripts/check-browser.mjs\":345,\"web/scripts/check-fork.mjs\":477,\"web/scripts/check-recovery.mjs\":196,\"web/scripts/check-swap-math.ts\":50,\"web/scripts/check-wallet.mjs\":319,\"web/scripts/check-webkit.mjs\":141,\"web/scripts/inspect-claim.ts\":22,\"web/scripts/prepare-toolchain.mjs\":28,\"web/scripts/typecheck-offline.mjs\":15,\"web/scripts/verify-chain.ts\":281,\"web/scripts/verify-live-interactions.ts\":137,\"web/src/App.tsx\":123,\"web/src/NextRelease.tsx\":65,\"web/src/NftGallery.tsx\":90,\"web/src/Rewards.tsx\":615,\"web/src/Terminal.tsx\":356,\"web/src/Trade.tsx\":699,\"web/src/Unlock.tsx\":171,\"web/src/abis/IChainlinkEthUsd.json\":22,\"web/src/abis/MerkleClaimEvidence.json\":275,\"web/src/abis/MerkleDistributor.json\":263,\"web/src/abis/UnlkHook.json\":1193,\"web/src/abis/UnlkOracle.json\":255,\"web/src/abis/UnlkSwapRouter.json\":232,\"web/src/abis/UnlkToken.json\":233,\"web/src/assets/fonts/jetbrains-mono-regular.woff2\":369,\"web/src/assets/fonts/jetbrains-mono-semibold.woff2\":424,\"web/src/candidate.ts\":62,\"web/src/candidateReader.ts\":71,\"web/src/charts.tsx\":542,\"web/src/components.tsx\":159,\"web/src/config.ts\":81,\"web/src/data.tsx\":146,\"web/src/indexer.ts\":322,\"web/src/live.ts\":423,\"web/src/main.tsx\":41,\"web/src/math.ts\":220,\"web/src/nftInventory.ts\":25,\"web/src/nftSafety.ts\":82,\"web/src/pages.tsx\":1078,\"web/src/rewards.ts\":94,\"web/src/storage.ts\":24,\"web/src/styles.css\":2343,\"web/src/verified.json\":77,\"web/src/wallet.tsx\":676,\"web/tests/candidate.test.ts\":121,\"web/tests/math.test.ts\":210,\"web/tsconfig.json\":18,\"web/tsconfig.offline.json\":42,\"web/vendor/README.md\":26,\"web/vendor/esbuild-wasm/LICENSE.md\":21,\"web/vendor/esbuild-wasm/README.md\":3,\"web/vendor/esbuild-wasm/bin/esbuild\":91,\"web/vendor/esbuild-wasm/esbuild.wasm.br\":8524,\"web/vendor/esbuild-wasm/lib/main.d.ts\":716,\"web/vendor/esbuild-wasm/lib/main.js\":2047,\"web/vendor/esbuild-wasm/package.json\":19,\"web/vendor/esbuild-wasm/wasm_exec.js\":561,\"web/vendor/esbuild-wasm/wasm_exec_node.js\":39,\"web/vendor/licenses/buffer-6.0.3.txt\":21,\"web/vendor/licenses/clsx-1.2.1.txt\":9,\"web/vendor/licenses/eventemitter3-5.0.1.txt\":21,\"web/vendor/licenses/ieee754-1.2.1.txt\":11,\"web/vendor/licenses/isows-1.0.7.txt\":21,\"web/vendor/licenses/noble_curves-1.9.1.txt\":21,\"web/vendor/licenses/noble_hashes-1.8.0.txt\":21,\"web/vendor/licenses/ox-0.9.6.txt\":21,\"web/vendor/licenses/preact-10.24.2.txt\":21,\"web/vendor/licenses/provenance.json\":107,\"web/vendor/licenses/react-19.1.1.txt\":21,\"web/vendor/licenses/react-dom-19.1.1.txt\":21,\"web/vendor/licenses/scheduler-0.26.0.txt\":21,\"web/vendor/licenses/scure_bip32-1.7.0.txt\":21,\"web/vendor/licenses/scure_bip39-1.6.0.txt\":21,\"web/vendor/licenses/ws-8.18.3.txt\":20,\"web/vendor/runtime/16296a5ca250926751e3.mjs\":14,\"web/vendor/runtime/5c6113df38c00955dc88.mjs\":48,\"web/vendor/runtime/79686c7ff29c42b4482b.mjs\":16,\"web/vendor/runtime/ab03d5bbf1867256af7c.mjs\":16,\"web/vendor/runtime/bfd99eb87afaf129b7b9.mjs\":13,\"web/vendor/runtime/c5e656ecf7fbe34e412c.mjs\":61,\"web/vendor/runtime/lock.json\":47,\"web/vendor/toolchain.json\":18,\"web/vendor/types/abitype/LICENSE\":21,\"web/vendor/types/abitype/abis/package.json\":5,\"web/vendor/types/abitype/dist/cjs/package.json\":1,\"web/vendor/types/abitype/dist/esm/package.json\":1,\"web/vendor/types/abitype/dist/types/abi.d.ts\":140,\"web/vendor/types/abitype/dist/types/abis/human-readable.d.ts\":43,\"web/vendor/types/abitype/dist/types/abis/json.d.ts\":3958,\"web/vendor/types/abitype/dist/types/errors.d.ts\":19,\"web/vendor/types/abitype/dist/types/exports/abis.d.ts\":3,\"web/vendor/types/abitype/dist/types/exports/index.d.ts\":20,\"web/vendor/types/abitype/dist/types/exports/zod.d.ts\":2,\"web/vendor/types/abitype/dist/types/human-readable/errors/abiItem.d.ts\":20,\"web/vendor/types/abitype/dist/types/human-readable/errors/abiParameter.d.ts\":53,\"web/vendor/types/abitype/dist/types/human-readable/errors/signature.d.ts\":22,\"web/vendor/types/abitype/dist/types/human-readable/errors/splitParameters.d.ts\":9,\"web/vendor/types/abitype/dist/types/human-readable/errors/struct.d.ts\":8,\"web/vendor/types/abitype/dist/types/human-readable/formatAbi.d.ts\":19,\"web/vendor/types/abitype/dist/types/human-readable/formatAbiItem.d.ts\":23,\"web/vendor/types/abitype/dist/types/human-readable/formatAbiParameter.d.ts\":49,\"web/vendor/types/abitype/dist/types/human-readable/formatAbiParameters.d.ts\":40,\"web/vendor/types/abitype/dist/types/human-readable/parseAbi.d.ts\":38,\"web/vendor/types/abitype/dist/types/human-readable/parseAbiItem.d.ts\":44,\"web/vendor/types/abitype/dist/types/human-readable/parseAbiParameter.d.ts\":49,\"web/vendor/types/abitype/dist/types/human-readable/parseAbiParameters.d.ts\":63,\"web/vendor/types/abitype/dist/types/human-readable/runtime/cache.d.ts\":18,\"web/vendor/types/abitype/dist/types/human-readable/runtime/signatures.d.ts\":39,\"web/vendor/types/abitype/dist/types/human-readable/runtime/structs.d.ts\":3,\"web/vendor/types/abitype/dist/types/human-readable/runtime/utils.d.ts\":205,\"web/vendor/types/abitype/dist/types/human-readable/types/signatures.d.ts\":38,\"web/vendor/types/abitype/dist/types/human-readable/types/structs.d.ts\":48,\"web/vendor/types/abitype/dist/types/human-readable/types/utils.d.ts\":161,\"web/vendor/types/abitype/dist/types/narrow.d.ts\":24,\"web/vendor/types/abitype/dist/types/regex.d.ts\":5,\"web/vendor/types/abitype/dist/types/register.d.ts\":149,\"web/vendor/types/abitype/dist/types/types.d.ts\":151,\"web/vendor/types/abitype/dist/types/utils.d.ts\":234,\"web/vendor/types/abitype/dist/types/version.d.ts\":2,\"web/vendor/types/abitype/dist/types/zod.d.ts\":534,\"web/vendor/types/abitype/package.json\":80,\"web/vendor/types/abitype/zod/package.json\":5,\"web/vendor/types/coinbase/LICENSE\":13,\"web/vendor/types/coinbase/dist/CoinbaseWalletProvider.d.ts\":16,\"web/vendor/types/coinbase/dist/CoinbaseWalletSDK.d.ts\":24,\"web/vendor/types/coinbase/dist/assets/wallet-logo.d.ts\":3,\"web/vendor/types/coinbase/dist/core/communicator/Communicator.d.ts\":47,\"web/vendor/types/coinbase/dist/core/constants.d.ts\":5,\"web/vendor/types/coinbase/dist/core/error/constants.d.ts\":96,\"web/vendor/types/coinbase/dist/core/error/errors.d.ts\":48,\"web/vendor/types/coinbase/dist/core/error/serialize.d.ts\":13,\"web/vendor/types/coinbase/dist/core/error/utils.d.ts\":31,\"web/vendor/types/coinbase/dist/core/message/ConfigMessage.d.ts\":7,\"web/vendor/types/coinbase/dist/core/message/Message.d.ts\":8,\"web/vendor/types/coinbase/dist/core/message/RPCMessage.d.ts\":30,\"web/vendor/types/coinbase/dist/core/message/RPCRequest.d.ts\":6,\"web/vendor/types/coinbase/dist/core/message/RPCResponse.d.ts\":15,\"web/vendor/types/coinbase/dist/core/provider/interface.d.ts\":70,\"web/vendor/types/coinbase/dist/core/storage/ScopedLocalStorage.d.ts\":14,\"web/vendor/types/coinbase/dist/core/type/index.d.ts\":19,\"web/vendor/types/coinbase/dist/core/type/util.d.ts\":29,\"web/vendor/types/coinbase/dist/createCoinbaseWalletProvider.d.ts\":8,\"web/vendor/types/coinbase/dist/createCoinbaseWalletSDK.d.ts\":13,\"web/vendor/types/coinbase/dist/index.d.ts\":7,\"web/vendor/types/coinbase/dist/sdk-info.d.ts\":3,\"web/vendor/types/coinbase/dist/sign/interface.d.ts\":7,\"web/vendor/types/coinbase/dist/sign/scw/SCWKeyManager.d.ts\":16,\"web/vendor/types/coinbase/dist/sign/scw/SCWSigner.d.ts\":34,\"web/vendor/types/coinbase/dist/sign/scw/utils.d.ts\":2,\"web/vendor/types/coinbase/dist/sign/util.d.ts\":20,\"web/vendor/types/coinbase/dist/sign/walletlink/WalletLinkSigner.d.ts\":40,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/RelayEventManager.d.ts\":9,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/WalletLinkRelay.d.ts\":58,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/connection/WalletLinkCipher.d.ts\":19,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/connection/WalletLinkConnection.d.ts\":102,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/connection/WalletLinkHTTP.d.ts\":10,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/connection/WalletLinkWebSocket.d.ts\":46,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/constants.d.ts\":4,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/mocks/fixtures.d.ts\":5,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/mocks/relay.d.ts\":3,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/ClientMessage.d.ts\":30,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/EthereumTransactionParams.d.ts\":14,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/ServerMessage.d.ts\":61,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/WalletLinkEventData.d.ts\":15,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/WalletLinkSession.d.ts\":16,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/Web3Request.d.ts\":99,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/type/Web3Response.d.ts\":51,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/RelayUI.d.ts\":16,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/WLMobileRelayUI.d.ts\":15,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/WalletLinkRelayUI.d.ts\":14,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog-css.d.ts\":3,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/RedirectDialog/RedirectDialog.d.ts\":16,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar-css.d.ts\":3,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/Snackbar/Snackbar.d.ts\":32,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/cssReset/cssReset-css.d.ts\":3,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/cssReset/cssReset.d.ts\":2,\"web/vendor/types/coinbase/dist/sign/walletlink/relay/ui/components/util.d.ts\":5,\"web/vendor/types/coinbase/dist/util/checkCrossOriginOpenerPolicy.d.ts\":2,\"web/vendor/types/coinbase/dist/util/cipher.d.ts\":12,\"web/vendor/types/coinbase/dist/util/provider.d.ts\":20,\"web/vendor/types/coinbase/dist/util/validatePreferences.d.ts\":7,\"web/vendor/types/coinbase/dist/util/web.d.ts\":3,\"web/vendor/types/coinbase/dist/vendor-js/eth-eip712-util/LICENSE\":14,\"web/vendor/types/coinbase/dist/vendor-js/eth-eip712-util/index.d.ts\":11,\"web/vendor/types/coinbase/package.json\":74,\"web/vendor/types/csstype/LICENSE\":19,\"web/vendor/types/csstype/index.d.ts\":21297,\"web/vendor/types/csstype/package.json\":66,\"web/vendor/types/lock.json\":58,\"web/vendor/types/node/LICENSE\":21,\"web/vendor/types/node/assert.d.ts\":1056,\"web/vendor/types/node/assert/strict.d.ts\":8,\"web/vendor/types/node/async_hooks.d.ts\":623,\"web/vendor/types/node/buffer.buffer.d.ts\":463,\"web/vendor/types/node/buffer.d.ts\":1930,\"web/vendor/types/node/child_process.d.ts\":1453,\"web/vendor/types/node/cluster.d.ts\":579,\"web/vendor/types/node/compatibility/iterators.d.ts\":21,\"web/vendor/types/node/console.d.ts\":452,\"web/vendor/types/node/constants.d.ts\":21,\"web/vendor/types/node/crypto.d.ts\":4566,\"web/vendor/types/node/dgram.d.ts\":599,\"web/vendor/types/node/diagnostics_channel.d.ts\":578,\"web/vendor/types/node/dns.d.ts\":923,\"web/vendor/types/node/dns/promises.d.ts\":503,\"web/vendor/types/node/domain.d.ts\":170,\"web/vendor/types/node/events.d.ts\":930,\"web/vendor/types/node/fs.d.ts\":4473,\"web/vendor/types/node/fs/promises.d.ts\":1299,\"web/vendor/types/node/globals.d.ts\":168,\"web/vendor/types/node/globals.typedarray.d.ts\":22,\"web/vendor/types/node/http.d.ts\":2070,\"web/vendor/types/node/http2.d.ts\":2630,\"web/vendor/types/node/https.d.ts\":550,\"web/vendor/types/node/index.d.ts\":99,\"web/vendor/types/node/inspector.d.ts\":253,\"web/vendor/types/node/inspector.generated.d.ts\":4052,\"web/vendor/types/node/module.d.ts\":894,\"web/vendor/types/node/net.d.ts\":1053,\"web/vendor/types/node/os.d.ts\":496,\"web/vendor/types/node/package.json\":155,\"web/vendor/types/node/path.d.ts\":200,\"web/vendor/types/node/perf_hooks.d.ts\":984,\"web/vendor/types/node/process.d.ts\":2073,\"web/vendor/types/node/punycode.d.ts\":117,\"web/vendor/types/node/querystring.d.ts\":152,\"web/vendor/types/node/readline.d.ts\":594,\"web/vendor/types/node/readline/promises.d.ts\":161,\"web/vendor/types/node/repl.d.ts\":438,\"web/vendor/types/node/sea.d.ts\":153,\"web/vendor/types/node/sqlite.d.ts\":721,\"web/vendor/types/node/stream.d.ts\":1668,\"web/vendor/types/node/stream/consumers.d.ts\":38,\"web/vendor/types/node/stream/promises.d.ts\":90,\"web/vendor/types/node/stream/web.d.ts\":622,\"web/vendor/types/node/string_decoder.d.ts\":67,\"web/vendor/types/node/test.d.ts\":2334,\"web/vendor/types/node/timers.d.ts\":285,\"web/vendor/types/node/timers/promises.d.ts\":108,\"web/vendor/types/node/tls.d.ts\":1245,\"web/vendor/types/node/trace_events.d.ts\":197,\"web/vendor/types/node/ts5.6/buffer.buffer.d.ts\":460,\"web/vendor/types/node/ts5.6/compatibility/float16array.d.ts\":71,\"web/vendor/types/node/ts5.6/globals.typedarray.d.ts\":20,\"web/vendor/types/node/ts5.6/index.d.ts\":101,\"web/vendor/types/node/ts5.7/compatibility/float16array.d.ts\":72,\"web/vendor/types/node/ts5.7/index.d.ts\":101,\"web/vendor/types/node/tty.d.ts\":208,\"web/vendor/types/node/url.d.ts\":1028,\"web/vendor/types/node/util.d.ts\":2311,\"web/vendor/types/node/v8.d.ts\":919,\"web/vendor/types/node/vm.d.ts\":1099,\"web/vendor/types/node/wasi.d.ts\":202,\"web/vendor/types/node/web-globals/abortcontroller.d.ts\":34,\"web/vendor/types/node/web-globals/domexception.d.ts\":68,\"web/vendor/types/node/web-globals/events.d.ts\":94,\"web/vendor/types/node/web-globals/fetch.d.ts\":50,\"web/vendor/types/node/web-globals/navigator.d.ts\":25,\"web/vendor/types/node/web-globals/storage.d.ts\":24,\"web/vendor/types/node/worker_threads.d.ts\":835,\"web/vendor/types/node/zlib.d.ts\":674,\"web/vendor/types/react-dom/LICENSE\":21,\"web/vendor/types/react-dom/canary.d.ts\":37,\"web/vendor/types/react-dom/client.d.ts\":105,\"web/vendor/types/react-dom/experimental.d.ts\":87,\"web/vendor/types/react-dom/index.d.ts\":128,\"web/vendor/types/react-dom/package.json\":128,\"web/vendor/types/react-dom/server.browser.d.ts\":1,\"web/vendor/types/react-dom/server.bun.d.ts\":1,\"web/vendor/types/react-dom/server.d.ts\":116,\"web/vendor/types/react-dom/server.edge.d.ts\":1,\"web/vendor/types/react-dom/server.node.d.ts\":1,\"web/vendor/types/react-dom/static.browser.d.ts\":1,\"web/vendor/types/react-dom/static.d.ts\":78,\"web/vendor/types/react-dom/static.edge.d.ts\":1,\"web/vendor/types/react-dom/static.node.d.ts\":1,\"web/vendor/types/react-dom/test-utils/index.d.ts\":7,\"web/vendor/types/react/LICENSE\":21,\"web/vendor/types/react/canary.d.ts\":60,\"web/vendor/types/react/compiler-runtime.d.ts\":4,\"web/vendor/types/react/experimental.d.ts\":228,\"web/vendor/types/react/global.d.ts\":165,\"web/vendor/types/react/index.d.ts\":4265,\"web/vendor/types/react/jsx-dev-runtime.d.ts\":45,\"web/vendor/types/react/jsx-runtime.d.ts\":36,\"web/vendor/types/react/package.json\":210,\"web/vendor/types/react/ts5.0/canary.d.ts\":60,\"web/vendor/types/react/ts5.0/experimental.d.ts\":228,\"web/vendor/types/react/ts5.0/global.d.ts\":165,\"web/vendor/types/react/ts5.0/index.d.ts\":4251,\"web/vendor/types/react/ts5.0/jsx-dev-runtime.d.ts\":44,\"web/vendor/types/react/ts5.0/jsx-runtime.d.ts\":35,\"web/vendor/types/react/ts5.0/v18/global.d.ts\":161,\"web/vendor/types/react/ts5.0/v18/index.d.ts\":4564,\"web/vendor/types/react/ts5.0/v18/jsx-dev-runtime.d.ts\":45,\"web/vendor/types/react/ts5.0/v18/jsx-runtime.d.ts\":36,\"web/vendor/types/react/ts5.0/v18/ts5.0/global.d.ts\":161,\"web/vendor/types/react/ts5.0/v18/ts5.0/index.d.ts\":4551,\"web/vendor/types/react/ts5.0/v18/ts5.0/jsx-dev-runtime.d.ts\":44,\"web/vendor/types/react/ts5.0/v18/ts5.0/jsx-runtime.d.ts\":35,\"web/vendor/types/typescript/LICENSE.txt\":55,\"web/vendor/types/typescript/ThirdPartyNoticeText.txt\":193,\"web/vendor/types/typescript/lib/_tsc.js.br\":2756,\"web/vendor/types/typescript/lib/lib.d.ts\":22,\"web/vendor/types/typescript/lib/lib.decorators.d.ts\":384,\"web/vendor/types/typescript/lib/lib.decorators.legacy.d.ts\":22,\"web/vendor/types/typescript/lib/lib.dom.asynciterable.d.ts\":41,\"web/vendor/types/typescript/lib/lib.dom.d.ts\":39429,\"web/vendor/types/typescript/lib/lib.dom.iterable.d.ts\":571,\"web/vendor/types/typescript/lib/lib.es2015.collection.d.ts\":147,\"web/vendor/types/typescript/lib/lib.es2015.core.d.ts\":597,\"web/vendor/types/typescript/lib/lib.es2015.d.ts\":28,\"web/vendor/types/typescript/lib/lib.es2015.generator.d.ts\":77,\"web/vendor/types/typescript/lib/lib.es2015.iterable.d.ts\":605,\"web/vendor/types/typescript/lib/lib.es2015.promise.d.ts\":81,\"web/vendor/types/typescript/lib/lib.es2015.proxy.d.ts\":128,\"web/vendor/types/typescript/lib/lib.es2015.reflect.d.ts\":144,\"web/vendor/types/typescript/lib/lib.es2015.symbol.d.ts\":46,\"web/vendor/types/typescript/lib/lib.es2015.symbol.wellknown.d.ts\":326,\"web/vendor/types/typescript/lib/lib.es2016.array.include.d.ts\":116,\"web/vendor/types/typescript/lib/lib.es2016.d.ts\":21,\"web/vendor/types/typescript/lib/lib.es2016.full.d.ts\":23,\"web/vendor/types/typescript/lib/lib.es2016.intl.d.ts\":31,\"web/vendor/types/typescript/lib/lib.es2017.arraybuffer.d.ts\":21,\"web/vendor/types/typescript/lib/lib.es2017.d.ts\":26,\"web/vendor/types/typescript/lib/lib.es2017.date.d.ts\":31,\"web/vendor/types/typescript/lib/lib.es2017.full.d.ts\":23,\"web/vendor/types/typescript/lib/lib.es2017.intl.d.ts\":44,\"web/vendor/types/typescript/lib/lib.es2017.object.d.ts\":49,\"web/vendor/types/typescript/lib/lib.es2017.sharedmemory.d.ts\":135,\"web/vendor/types/typescript/lib/lib.es2017.string.d.ts\":45,\"web/vendor/types/typescript/lib/lib.es2017.typedarrays.d.ts\":53,\"web/vendor/types/typescript/lib/lib.es2018.asyncgenerator.d.ts\":77,\"web/vendor/types/typescript/lib/lib.es2018.asynciterable.d.ts\":53,\"web/vendor/types/typescript/lib/lib.es2018.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2018.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2018.intl.d.ts\":83,\"web/vendor/types/typescript/lib/lib.es2018.promise.d.ts\":30,\"web/vendor/types/typescript/lib/lib.es2018.regexp.d.ts\":37,\"web/vendor/types/typescript/lib/lib.es2019.array.d.ts\":79,\"web/vendor/types/typescript/lib/lib.es2019.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2019.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2019.intl.d.ts\":23,\"web/vendor/types/typescript/lib/lib.es2019.object.d.ts\":33,\"web/vendor/types/typescript/lib/lib.es2019.string.d.ts\":37,\"web/vendor/types/typescript/lib/lib.es2019.symbol.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2020.bigint.d.ts\":765,\"web/vendor/types/typescript/lib/lib.es2020.d.ts\":27,\"web/vendor/types/typescript/lib/lib.es2020.date.d.ts\":42,\"web/vendor/types/typescript/lib/lib.es2020.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2020.intl.d.ts\":474,\"web/vendor/types/typescript/lib/lib.es2020.number.d.ts\":28,\"web/vendor/types/typescript/lib/lib.es2020.promise.d.ts\":47,\"web/vendor/types/typescript/lib/lib.es2020.sharedmemory.d.ts\":99,\"web/vendor/types/typescript/lib/lib.es2020.string.d.ts\":44,\"web/vendor/types/typescript/lib/lib.es2020.symbol.wellknown.d.ts\":41,\"web/vendor/types/typescript/lib/lib.es2021.d.ts\":23,\"web/vendor/types/typescript/lib/lib.es2021.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2021.intl.d.ts\":166,\"web/vendor/types/typescript/lib/lib.es2021.promise.d.ts\":48,\"web/vendor/types/typescript/lib/lib.es2021.string.d.ts\":33,\"web/vendor/types/typescript/lib/lib.es2021.weakref.d.ts\":78,\"web/vendor/types/typescript/lib/lib.es2022.array.d.ts\":121,\"web/vendor/types/typescript/lib/lib.es2022.d.ts\":25,\"web/vendor/types/typescript/lib/lib.es2022.error.d.ts\":75,\"web/vendor/types/typescript/lib/lib.es2022.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2022.intl.d.ts\":145,\"web/vendor/types/typescript/lib/lib.es2022.object.d.ts\":26,\"web/vendor/types/typescript/lib/lib.es2022.regexp.d.ts\":39,\"web/vendor/types/typescript/lib/lib.es2022.string.d.ts\":25,\"web/vendor/types/typescript/lib/lib.es2023.array.d.ts\":924,\"web/vendor/types/typescript/lib/lib.es2023.collection.d.ts\":21,\"web/vendor/types/typescript/lib/lib.es2023.d.ts\":22,\"web/vendor/types/typescript/lib/lib.es2023.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2023.intl.d.ts\":56,\"web/vendor/types/typescript/lib/lib.es2024.arraybuffer.d.ts\":65,\"web/vendor/types/typescript/lib/lib.es2024.collection.d.ts\":29,\"web/vendor/types/typescript/lib/lib.es2024.d.ts\":26,\"web/vendor/types/typescript/lib/lib.es2024.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.es2024.object.d.ts\":29,\"web/vendor/types/typescript/lib/lib.es2024.promise.d.ts\":35,\"web/vendor/types/typescript/lib/lib.es2024.regexp.d.ts\":25,\"web/vendor/types/typescript/lib/lib.es2024.sharedmemory.d.ts\":68,\"web/vendor/types/typescript/lib/lib.es2024.string.d.ts\":29,\"web/vendor/types/typescript/lib/lib.es5.d.ts\":4601,\"web/vendor/types/typescript/lib/lib.es6.d.ts\":23,\"web/vendor/types/typescript/lib/lib.esnext.array.d.ts\":35,\"web/vendor/types/typescript/lib/lib.esnext.collection.d.ts\":96,\"web/vendor/types/typescript/lib/lib.esnext.d.ts\":29,\"web/vendor/types/typescript/lib/lib.esnext.decorators.d.ts\":28,\"web/vendor/types/typescript/lib/lib.esnext.disposable.d.ts\":193,\"web/vendor/types/typescript/lib/lib.esnext.error.d.ts\":24,\"web/vendor/types/typescript/lib/lib.esnext.float16.d.ts\":443,\"web/vendor/types/typescript/lib/lib.esnext.full.d.ts\":24,\"web/vendor/types/typescript/lib/lib.esnext.intl.d.ts\":21,\"web/vendor/types/typescript/lib/lib.esnext.iterator.d.ts\":148,\"web/vendor/types/typescript/lib/lib.esnext.promise.d.ts\":34,\"web/vendor/types/typescript/lib/lib.esnext.sharedmemory.d.ts\":25,\"web/vendor/types/typescript/lib/lib.scripthost.d.ts\":322,\"web/vendor/types/typescript/lib/lib.webworker.asynciterable.d.ts\":41,\"web/vendor/types/typescript/lib/lib.webworker.d.ts\":13150,\"web/vendor/types/typescript/lib/lib.webworker.importscripts.d.ts\":23,\"web/vendor/types/typescript/lib/lib.webworker.iterable.d.ts\":340,\"web/vendor/types/typescript/lib/tsc.js\":8,\"web/vendor/types/typescript/lib/tsserverlibrary.d.ts\":17,\"web/vendor/types/typescript/package.json\":120,\"web/vendor/types/viem/LICENSE\":21,\"web/vendor/types/viem/_cjs/package.json\":1,\"web/vendor/types/viem/_esm/package.json\":1,\"web/vendor/types/viem/_types/account-abstraction/accounts/createWebAuthnCredential.d.ts\":11,\"web/vendor/types/viem/_types/account-abstraction/accounts/implementations/toCoinbaseSmartAccount.d.ts\":674,\"web/vendor/types/viem/_types/account-abstraction/accounts/implementations/toSimple7702SmartAccount.d.ts\":311,\"web/vendor/types/viem/_types/account-abstraction/accounts/implementations/toSoladySmartAccount.d.ts\":458,\"web/vendor/types/viem/_types/account-abstraction/accounts/toSmartAccount.d.ts\":14,\"web/vendor/types/viem/_types/account-abstraction/accounts/toWebAuthnAccount.d.ts\":33,\"web/vendor/types/viem/_types/account-abstraction/accounts/types.d.ts\":216,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/estimateUserOperationGas.d.ts\":69,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/getSupportedEntryPoints.d.ts\":30,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/getUserOperation.d.ts\":57,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/getUserOperationReceipt.d.ts\":39,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/prepareUserOperation.d.ts\":127,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/sendUserOperation.d.ts\":63,\"web/vendor/types/viem/_types/account-abstraction/actions/bundler/waitForUserOperationReceipt.d.ts\":52,\"web/vendor/types/viem/_types/account-abstraction/actions/paymaster/getPaymasterData.d.ts\":49,\"web/vendor/types/viem/_types/account-abstraction/actions/paymaster/getPaymasterStubData.d.ts\":55,\"web/vendor/types/viem/_types/account-abstraction/clients/createBundlerClient.d.ts\":65,\"web/vendor/types/viem/_types/account-abstraction/clients/createPaymasterClient.d.ts\":27,\"web/vendor/types/viem/_types/account-abstraction/clients/decorators/bundler.d.ts\":206,\"web/vendor/types/viem/_types/account-abstraction/clients/decorators/paymaster.d.ts\":60,\"web/vendor/types/viem/_types/account-abstraction/constants/abis.d.ts\":2298,\"web/vendor/types/viem/_types/account-abstraction/constants/address.d.ts\":4,\"web/vendor/types/viem/_types/account-abstraction/errors/bundler.d.ts\":361,\"web/vendor/types/viem/_types/account-abstraction/errors/userOperation.d.ts\":37,\"web/vendor/types/viem/_types/account-abstraction/index.d.ts\":39,\"web/vendor/types/viem/_types/account-abstraction/types/account.d.ts\":11,\"web/vendor/types/viem/_types/account-abstraction/types/entryPointVersion.d.ts\":9,\"web/vendor/types/viem/_types/account-abstraction/types/rpc.d.ts\":12,\"web/vendor/types/viem/_types/account-abstraction/types/userOperation.d.ts\":173,\"web/vendor/types/viem/_types/account-abstraction/utils/errors/getBundlerError.d.ts\":8,\"web/vendor/types/viem/_types/account-abstraction/utils/errors/getUserOperationError.d.ts\":15,\"web/vendor/types/viem/_types/account-abstraction/utils/formatters/userOperation.d.ts\":6,\"web/vendor/types/viem/_types/account-abstraction/utils/formatters/userOperationGas.d.ts\":6,\"web/vendor/types/viem/_types/account-abstraction/utils/formatters/userOperationReceipt.d.ts\":6,\"web/vendor/types/viem/_types/account-abstraction/utils/formatters/userOperationRequest.d.ts\":7,\"web/vendor/types/viem/_types/account-abstraction/utils/userOperation/getInitCode.d.ts\":3,\"web/vendor/types/viem/_types/account-abstraction/utils/userOperation/getUserOperationHash.d.ts\":13,\"web/vendor/types/viem/_types/account-abstraction/utils/userOperation/getUserOperationTypedData.d.ts\":39,\"web/vendor/types/viem/_types/account-abstraction/utils/userOperation/toPackedUserOperation.d.ts\":3,\"web/vendor/types/viem/_types/account-abstraction/utils/userOperation/toUserOperation.d.ts\":3,\"web/vendor/types/viem/_types/accounts/generateMnemonic.d.ts\":12,\"web/vendor/types/viem/_types/accounts/generatePrivateKey.d.ts\":11,\"web/vendor/types/viem/_types/accounts/hdKeyToAccount.d.ts\":14,\"web/vendor/types/viem/_types/accounts/index.d.ts\":25,\"web/vendor/types/viem/_types/accounts/mnemonicToAccount.d.ts\":12,\"web/vendor/types/viem/_types/accounts/privateKeyToAccount.d.ts\":22,\"web/vendor/types/viem/_types/accounts/toAccount.d.ts\":15,\"web/vendor/types/viem/_types/accounts/types.d.ts\":62,\"web/vendor/types/viem/_types/accounts/utils/parseAccount.d.ts\":6,\"web/vendor/types/viem/_types/accounts/utils/privateKeyToAddress.d.ts\":15,\"web/vendor/types/viem/_types/accounts/utils/publicKeyToAddress.d.ts\":15,\"web/vendor/types/viem/_types/accounts/utils/sign.d.ts\":28,\"web/vendor/types/viem/_types/accounts/utils/signAuthorization.d.ts\":20,\"web/vendor/types/viem/_types/accounts/utils/signMessage.d.ts\":20,\"web/vendor/types/viem/_types/accounts/utils/signTransaction.d.ts\":16,\"web/vendor/types/viem/_types/accounts/utils/signTypedData.d.ts\":20,\"web/vendor/types/viem/_types/accounts/wordlists.d.ts\":11,\"web/vendor/types/viem/_types/actions/ens/getEnsAddress.d.ts\":78,\"web/vendor/types/viem/_types/actions/ens/getEnsAvatar.d.ts\":44,\"web/vendor/types/viem/_types/actions/ens/getEnsName.d.ts\":71,\"web/vendor/types/viem/_types/actions/ens/getEnsResolver.d.ts\":48,\"web/vendor/types/viem/_types/actions/ens/getEnsText.d.ts\":57,\"web/vendor/types/viem/_types/actions/getContract.d.ts\":360,\"web/vendor/types/viem/_types/actions/index.d.ts\":119,\"web/vendor/types/viem/_types/actions/public/call.d.ts\":91,\"web/vendor/types/viem/_types/actions/public/createAccessList.d.ts\":61,\"web/vendor/types/viem/_types/actions/public/createBlockFilter.d.ts\":31,\"web/vendor/types/viem/_types/actions/public/createContractEventFilter.d.ts\":55,\"web/vendor/types/viem/_types/actions/public/createEventFilter.d.ts\":81,\"web/vendor/types/viem/_types/actions/public/createPendingTransactionFilter.d.ts\":31,\"web/vendor/types/viem/_types/actions/public/estimateContractGas.d.ts\":47,\"web/vendor/types/viem/_types/actions/public/estimateFeesPerGas.d.ts\":53,\"web/vendor/types/viem/_types/actions/public/estimateGas.d.ts\":61,\"web/vendor/types/viem/_types/actions/public/estimateMaxPriorityFeePerGas.d.ts\":43,\"web/vendor/types/viem/_types/actions/public/getBalance.d.ts\":59,\"web/vendor/types/viem/_types/actions/public/getBlobBaseFee.d.ts\":30,\"web/vendor/types/viem/_types/actions/public/getBlock.d.ts\":62,\"web/vendor/types/viem/_types/actions/public/getBlockNumber.d.ts\":62,\"web/vendor/types/viem/_types/actions/public/getBlockTransactionCount.d.ts\":52,\"web/vendor/types/viem/_types/actions/public/getChainId.d.ts\":32,\"web/vendor/types/viem/_types/actions/public/getCode.d.ts\":45,\"web/vendor/types/viem/_types/actions/public/getContractEvents.d.ts\":66,\"web/vendor/types/viem/_types/actions/public/getEip712Domain.d.ts\":51,\"web/vendor/types/viem/_types/actions/public/getFeeHistory.d.ts\":57,\"web/vendor/types/viem/_types/actions/public/getFilterChanges.d.ts\":101,\"web/vendor/types/viem/_types/actions/public/getFilterLogs.d.ts\":45,\"web/vendor/types/viem/_types/actions/public/getGasPrice.d.ts\":30,\"web/vendor/types/viem/_types/actions/public/getLogs.d.ts\":78,\"web/vendor/types/viem/_types/actions/public/getProof.d.ts\":57,\"web/vendor/types/viem/_types/actions/public/getStorageAt.d.ts\":47,\"web/vendor/types/viem/_types/actions/public/getTransaction.d.ts\":71,\"web/vendor/types/viem/_types/actions/public/getTransactionConfirmations.d.ts\":45,\"web/vendor/types/viem/_types/actions/public/getTransactionCount.d.ts\":49,\"web/vendor/types/viem/_types/actions/public/getTransactionReceipt.d.ts\":40,\"web/vendor/types/viem/_types/actions/public/multicall.d.ts\":81,\"web/vendor/types/viem/_types/actions/public/readContract.d.ts\":46,\"web/vendor/types/viem/_types/actions/public/simulateBlocks.d.ts\":116,\"web/vendor/types/viem/_types/actions/public/simulateCalls.d.ts\":89,\"web/vendor/types/viem/_types/actions/public/simulateContract.d.ts\":79,\"web/vendor/types/viem/_types/actions/public/uninstallFilter.d.ts\":37,\"web/vendor/types/viem/_types/actions/public/verifyHash.d.ts\":89,\"web/vendor/types/viem/_types/actions/public/verifyMessage.d.ts\":32,\"web/vendor/types/viem/_types/actions/public/verifyTypedData.d.ts\":28,\"web/vendor/types/viem/_types/actions/public/waitForTransactionReceipt.d.ts\":98,\"web/vendor/types/viem/_types/actions/public/watchBlockNumber.d.ts\":58,\"web/vendor/types/viem/_types/actions/public/watchBlocks.d.ts\":66,\"web/vendor/types/viem/_types/actions/public/watchContractEvent.d.ts\":67,\"web/vendor/types/viem/_types/actions/public/watchEvent.d.ts\":82,\"web/vendor/types/viem/_types/actions/public/watchPendingTransactions.d.ts\":49,\"web/vendor/types/viem/_types/actions/siwe/verifySiweMessage.d.ts\":34,\"web/vendor/types/viem/_types/actions/test/dropTransaction.d.ts\":36,\"web/vendor/types/viem/_types/actions/test/dumpState.d.ts\":31,\"web/vendor/types/viem/_types/actions/test/getAutomine.d.ts\":30,\"web/vendor/types/viem/_types/actions/test/getTxpoolContent.d.ts\":37,\"web/vendor/types/viem/_types/actions/test/getTxpoolStatus.d.ts\":33,\"web/vendor/types/viem/_types/actions/test/impersonateAccount.d.ts\":36,\"web/vendor/types/viem/_types/actions/test/increaseTime.d.ts\":35,\"web/vendor/types/viem/_types/actions/test/inspectTxpool.d.ts\":34,\"web/vendor/types/viem/_types/actions/test/loadState.d.ts\":34,\"web/vendor/types/viem/_types/actions/test/mine.d.ts\":35,\"web/vendor/types/viem/_types/actions/test/removeBlockTimestampInterval.d.ts\":28,\"web/vendor/types/viem/_types/actions/test/reset.d.ts\":35,\"web/vendor/types/viem/_types/actions/test/revert.d.ts\":34,\"web/vendor/types/viem/_types/actions/test/sendUnsignedTransaction.d.ts\":38,\"web/vendor/types/viem/_types/actions/test/setAutomine.d.ts\":28,\"web/vendor/types/viem/_types/actions/test/setBalance.d.ts\":39,\"web/vendor/types/viem/_types/actions/test/setBlockGasLimit.d.ts\":33,\"web/vendor/types/viem/_types/actions/test/setBlockTimestampInterval.d.ts\":33,\"web/vendor/types/viem/_types/actions/test/setCode.d.ts\":40,\"web/vendor/types/viem/_types/actions/test/setCoinbase.d.ts\":36,\"web/vendor/types/viem/_types/actions/test/setIntervalMining.d.ts\":33,\"web/vendor/types/viem/_types/actions/test/setLoggingEnabled.d.ts\":28,\"web/vendor/types/viem/_types/actions/test/setMinGasPrice.d.ts\":37,\"web/vendor/types/viem/_types/actions/test/setNextBlockBaseFeePerGas.d.ts\":35,\"web/vendor/types/viem/_types/actions/test/setNextBlockTimestamp.d.ts\":33,\"web/vendor/types/viem/_types/actions/test/setNonce.d.ts\":39,\"web/vendor/types/viem/_types/actions/test/setRpcUrl.d.ts\":29,\"web/vendor/types/viem/_types/actions/test/setStorageAt.d.ts\":43,\"web/vendor/types/viem/_types/actions/test/snapshot.d.ts\":28,\"web/vendor/types/viem/_types/actions/test/stopImpersonatingAccount.d.ts\":36,\"web/vendor/types/viem/_types/actions/wallet/addChain.d.ts\":33,\"web/vendor/types/viem/_types/actions/wallet/deployContract.d.ts\":49,\"web/vendor/types/viem/_types/actions/wallet/getAddresses.d.ts\":32,\"web/vendor/types/viem/_types/actions/wallet/getCallsStatus.d.ts\":39,\"web/vendor/types/viem/_types/actions/wallet/getCapabilities.d.ts\":36,\"web/vendor/types/viem/_types/actions/wallet/getPermissions.d.ts\":31,\"web/vendor/types/viem/_types/actions/wallet/prepareAuthorization.d.ts\":66,\"web/vendor/types/viem/_types/actions/wallet/prepareTransactionRequest.d.ts\":96,\"web/vendor/types/viem/_types/actions/wallet/requestAddresses.d.ts\":35,\"web/vendor/types/viem/_types/actions/wallet/requestPermissions.d.ts\":40,\"web/vendor/types/viem/_types/actions/wallet/sendCalls.d.ts\":62,\"web/vendor/types/viem/_types/actions/wallet/sendRawTransaction.d.ts\":39,\"web/vendor/types/viem/_types/actions/wallet/sendTransaction.d.ts\":73,\"web/vendor/types/viem/_types/actions/wallet/showCallsStatus.d.ts\":34,\"web/vendor/types/viem/_types/actions/wallet/signAuthorization.d.ts\":56,\"web/vendor/types/viem/_types/actions/wallet/signMessage.d.ts\":64,\"web/vendor/types/viem/_types/actions/wallet/signTransaction.d.ts\":67,\"web/vendor/types/viem/_types/actions/wallet/signTypedData.d.ts\":119,\"web/vendor/types/viem/_types/actions/wallet/switchChain.d.ts\":34,\"web/vendor/types/viem/_types/actions/wallet/waitForCallsStatus.d.ts\":83,\"web/vendor/types/viem/_types/actions/wallet/watchAsset.d.ts\":40,\"web/vendor/types/viem/_types/actions/wallet/writeContract.d.ts\":75,\"web/vendor/types/viem/_types/celo/chainConfig.d.ts\":879,\"web/vendor/types/viem/_types/celo/fees.d.ts\":4,\"web/vendor/types/viem/_types/celo/formatters.d.ts\":428,\"web/vendor/types/viem/_types/celo/index.d.ts\":5,\"web/vendor/types/viem/_types/celo/parsers.d.ts\":6,\"web/vendor/types/viem/_types/celo/serializers.d.ts\":10,\"web/vendor/types/viem/_types/celo/types.d.ts\":87,\"web/vendor/types/viem/_types/celo/utils.d.ts\":7,\"web/vendor/types/viem/_types/chains/definitions/0g.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/0gGalileoTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/0gMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/5ireChain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/abey.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/abstract.d.ts\":435,\"web/vendor/types/viem/_types/chains/definitions/abstractTestnet.d.ts\":434,\"web/vendor/types/viem/_types/chains/definitions/acala.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/acria.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/adf.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/agungTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/aioz.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/alephZero.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/alephZeroTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/alienX.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/alienXHalTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ancient8.d.ts\":300,\"web/vendor/types/viem/_types/chains/definitions/ancient8Sepolia.d.ts\":300,\"web/vendor/types/viem/_types/chains/definitions/anvil.d.ts\":46,\"web/vendor/types/viem/_types/chains/definitions/apeChain.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/apexTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/arbitrum.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/arbitrumGoerli.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/arbitrumNova.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/arbitrumSepolia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/arenaz.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/areonNetwork.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/areonNetworkTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/areum.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/artelaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/arthera.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/artheraTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/assetChain.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/assetChainTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/astar.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/astarZkEVM.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/astarZkyoto.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/atletaOlympia.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/aurora.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/auroraTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/auroria.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/autheoTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/avalanche.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/avalancheFuji.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/b3.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/b3Sepolia.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/bahamut.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/base.d.ts\":617,\"web/vendor/types/viem/_types/chains/definitions/baseGoerli.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/baseSepolia.d.ts\":619,\"web/vendor/types/viem/_types/chains/definitions/basecampTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/beam.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/beamTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/bearNetworkChainMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bearNetworkChainTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/berachain.d.ts\":44,\"web/vendor/types/viem/_types/chains/definitions/berachainBepolia.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/berachainTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/berachainTestnetbArtio.d.ts\":44,\"web/vendor/types/viem/_types/chains/definitions/bevmMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bifrost.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/birdlayer.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bitTorrent.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/bitTorrentTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/bitgert.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/bitkub.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bitkubTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/bitlayer.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/bitlayerTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/bitrock.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/blast.d.ts\":305,\"web/vendor/types/viem/_types/chains/definitions/blastSepolia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/bob.d.ts\":299,\"web/vendor/types/viem/_types/chains/definitions/bobSepolia.d.ts\":299,\"web/vendor/types/viem/_types/chains/definitions/boba.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/bobaSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/boolBetaMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/botanix.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/botanixTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bounceBit.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bounceBitTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bronos.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bronosTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bsc.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/bscGreenfield.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bscTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/bsquared.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/bsquaredTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/btr.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/btrTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bxn.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/bxnTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/cannon.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/canto.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/celo.d.ts\":889,\"web/vendor/types/viem/_types/chains/definitions/celoAlfajores.d.ts\":931,\"web/vendor/types/viem/_types/chains/definitions/celoSepolia.d.ts\":925,\"web/vendor/types/viem/_types/chains/definitions/chang.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/chiliz.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/chips.d.ts\":46,\"web/vendor/types/viem/_types/chains/definitions/citreaTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/classic.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/coinbit.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/coinex.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/confluxESpace.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/confluxESpaceTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/coreDao.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/coreTestnet1.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/coreTestnet2.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/corn.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/cornTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/crab.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/creatorTestnet.d.ts\":35,\"web/vendor/types/viem/_types/chains/definitions/creditCoin3Devnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/creditCoin3Mainnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/creditCoin3Testnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/cronos.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/cronosTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/cronoszkEVM.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/cronoszkEVMTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/crossbell.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/crossfi.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/curtis.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/cyber.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/cyberTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/dailyNetwork.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/dailyNetworkTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/darwinia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/dbkchain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/dchain.d.ts\":283,\"web/vendor/types/viem/_types/chains/definitions/dchainTestnet.d.ts\":283,\"web/vendor/types/viem/_types/chains/definitions/defichainEvm.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/defichainEvmTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/degen.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/dfk.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/diode.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/disChain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/dodochainTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/dogechain.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/domaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/donatuz.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/dosChain.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/dosChainTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/dreyerxMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/dreyerxTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/dustboyIoT.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/dymension.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/edexa.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/edexaTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/edgeless.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/edgelessTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/edgeware.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/edgewareTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/eduChain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/eduChainTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/ekta.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/ektaTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/elastos.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/elastosTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/electroneum.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/electroneumTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/elysiumTestnet.d.ts\":282,\"web/vendor/types/viem/_types/chains/definitions/energy.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/eni.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/eniTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/enuls.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/eon.d.ts\":31,\"web/vendor/types/viem/_types/chains/definitions/eos.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/eosTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/eteria.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/etherlink.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/etherlinkTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ethernity.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/etp.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/evmos.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/evmosTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/exSat.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/exSatTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/excelonMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/expanse.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/fantom.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/fantomSonicTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/fantomTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/fibo.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/filecoin.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/filecoinCalibration.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/filecoinHyperspace.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/flame.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/flare.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/flareTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/flowMainnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/flowPreviewnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/flowTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/fluence.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/fluenceStage.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/fluenceTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/fluentTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/form.d.ts\":79,\"web/vendor/types/viem/_types/chains/definitions/formTestnet.d.ts\":79,\"web/vendor/types/viem/_types/chains/definitions/forma.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/forta.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/foundry.d.ts\":46,\"web/vendor/types/viem/_types/chains/definitions/fraxtal.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/fraxtalTestnet.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/funkiMainnet.d.ts\":282,\"web/vendor/types/viem/_types/chains/definitions/funkiSepolia.d.ts\":287,\"web/vendor/types/viem/_types/chains/definitions/fuse.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/fuseSparknet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/fusion.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/fusionTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/garnet.d.ts\":304,\"web/vendor/types/viem/_types/chains/definitions/geist.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/genesys.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/giwaSepolia.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/glideL1Protocol.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/glideL2Protocol.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/gnosis.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/gnosisChiado.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/goChain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/goat.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/gobi.d.ts\":31,\"web/vendor/types/viem/_types/chains/definitions/godwoken.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/goerli.d.ts\":44,\"web/vendor/types/viem/_types/chains/definitions/graphite.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/graphiteTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/gravity.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/gunz.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/guruNetwork.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/guruTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ham.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/happychainTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/haqqMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/haqqTestedge2.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/hardhat.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/harmonyOne.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/hashKeyChain.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/hashkeyChainTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/haustTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/hedera.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/hederaPreviewnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/hederaTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/hela.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/hemi.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/hemiSepolia.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/holesky.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/hoodi.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/hpb.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/huddle01Mainnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/huddle01Testnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/humanity.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/humanityTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/humanode.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/humanodeTestnet5.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/hychain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/hychainTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/hyperliquidEvmTestnet.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/iSunCoin.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/icbNetwork.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/idchain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/immutableZkEvm.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/immutableZkEvmTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/inEVM.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/initVerse.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/initVerseGenesis.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/ink.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/inkSepolia.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/iota.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/iotaTestnet.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/iotex.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/iotexTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/jbc.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/jbcTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/jocMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/jocTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/jovay.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/jovaySepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/juneo.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoBCH1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoDAI1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoDOGE1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoEUR1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoGLD1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoLINK1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoLTC1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoSGD1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoSocotraTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoUSD1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneoUSDT1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/juneomBTC1Chain.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/kaia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/kairos.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/kakarotSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/kakarotStarknetSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/kardiaChain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/karura.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/katana.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/kava.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/kavaTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/kcc.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/kinto.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/klaytn.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/klaytnBaobab.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/koi.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/kroma.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/kromaSepolia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/l3x.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/l3xTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/lavita.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/lens.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/lensTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/lestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/lightlinkPegasus.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/lightlinkPhoenix.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/linea.d.ts\":49,\"web/vendor/types/viem/_types/chains/definitions/lineaGoerli.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/lineaSepolia.d.ts\":49,\"web/vendor/types/viem/_types/chains/definitions/lineaTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/lisk.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/liskSepolia.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/loadAlphanet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/localhost.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/loop.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/lukso.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/luksoTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/lumiaMainnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/lumiaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/lumoz.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/lumozTestnet.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/lycan.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/lyra.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/mainnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/mandala.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/manta.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/mantaSepoliaTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/mantaTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/mantle.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/mantleSepoliaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/mantleTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/mantraDuKongEVMTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/mantraEVM.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/mapProtocol.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/matchain.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/matchainTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/mchVerse.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/megaethTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/mekong.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/meld.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/memecore.d.ts\":50,\"web/vendor/types/viem/_types/chains/definitions/memecoreFormicariumTestnet.d.ts\":49,\"web/vendor/types/viem/_types/chains/definitions/merlin.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/merlinErigonTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/metachain.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/metachainIstanbul.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/metadium.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/metalL2.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/meter.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/meterTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/metis.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/metisGoerli.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/metisSepolia.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/mev.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/mevTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/mint.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/mintSepoliaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/mitosisTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/mode.d.ts\":301,\"web/vendor/types/viem/_types/chains/definitions/modeTestnet.d.ts\":305,\"web/vendor/types/viem/_types/chains/definitions/monadTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/moonbaseAlpha.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/moonbeam.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/moonbeamDev.d.ts\":46,\"web/vendor/types/viem/_types/chains/definitions/moonriver.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/morph.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/morphHolesky.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/morphSepolia.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/nahmii.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/nautilus.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/near.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/nearTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/neonDevnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/neonMainnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/neoxMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/neoxT4.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/newton.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/nexi.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/nexilix.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/nibiru.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/nitrographTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/oasisTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/oasys.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/odysseyTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/okc.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/omax.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/omni.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/omniOmega.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/oneWorld.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/oortmainnetDev.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/opBNB.d.ts\":70,\"web/vendor/types/viem/_types/chains/definitions/opBNBTestnet.d.ts\":69,\"web/vendor/types/viem/_types/chains/definitions/openledger.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/optimism.d.ts\":307,\"web/vendor/types/viem/_types/chains/definitions/optimismGoerli.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/optimismSepolia.d.ts\":307,\"web/vendor/types/viem/_types/chains/definitions/optopia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/optopiaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/orderly.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/orderlySepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/otimDevnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/palm.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/palmTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/peaq.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/pgn.d.ts\":283,\"web/vendor/types/viem/_types/chains/definitions/pgnTestnet.d.ts\":283,\"web/vendor/types/viem/_types/chains/definitions/phoenix.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/planq.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/plasma.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/plasmaDevnet.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/plasmaTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/playfiAlbireo.d.ts\":427,\"web/vendor/types/viem/_types/chains/definitions/plinga.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/plume.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/plumeDevnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/plumeMainnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/plumeSepolia.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/plumeTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/polterTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/polygon.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polygonAmoy.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polygonMumbai.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polygonZkEvm.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polygonZkEvmCardona.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polygonZkEvmTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/polynomial.d.ts\":35,\"web/vendor/types/viem/_types/chains/definitions/polynomialSepolia.d.ts\":35,\"web/vendor/types/viem/_types/chains/definitions/premiumBlock.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/pulsechain.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/pulsechainV4.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/pumpfiTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/pyrope.d.ts\":288,\"web/vendor/types/viem/_types/chains/definitions/qMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/qTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/ql1.d.ts\":35,\"web/vendor/types/viem/_types/chains/definitions/real.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/redbellyMainnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/redbellyTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/reddio.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/reddioSepolia.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/redstone.d.ts\":304,\"web/vendor/types/viem/_types/chains/definitions/rei.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/reyaNetwork.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/riseTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/rivalz.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/rollux.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/rolluxTestnet.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/ronin.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/root.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/rootPorcini.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/rootstock.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/rootstockTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/rss3.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/rss3Sepolia.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/saakuru.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/saga.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/saigon.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/sanko.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/sapphire.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/sapphireTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/satoshivm.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/satoshivmTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/scroll.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/scrollSepolia.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/sei.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/seiDevnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/seiTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/seismicDevnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/sepolia.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/shape.d.ts\":305,\"web/vendor/types/viem/_types/chains/definitions/shapeSepolia.d.ts\":287,\"web/vendor/types/viem/_types/chains/definitions/shardeum.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/shardeumSphinx.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/shibarium.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/shibariumTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/shiden.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/shimmer.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/shimmerTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/sidra.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/silicon.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/siliconSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/sixProtocol.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/skale/brawl.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/calypso.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/calypsoTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/cryptoBlades.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/cryptoColosseum.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/europa.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/europaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/exorde.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/humanProtocol.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/nebula.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/nebulaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/razor.d.ts\":32,\"web/vendor/types/viem/_types/chains/definitions/skale/titan.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/skale/titanTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/sketchpad.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/snax.d.ts\":307,\"web/vendor/types/viem/_types/chains/definitions/snaxTestnet.d.ts\":307,\"web/vendor/types/viem/_types/chains/definitions/somniaTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/soneium.d.ts\":309,\"web/vendor/types/viem/_types/chains/definitions/soneiumMinato.d.ts\":309,\"web/vendor/types/viem/_types/chains/definitions/songbird.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/songbirdTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/sonic.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/sonicBlazeTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/sonicTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/sophon.d.ts\":427,\"web/vendor/types/viem/_types/chains/definitions/sophonTestnet.d.ts\":427,\"web/vendor/types/viem/_types/chains/definitions/sova.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/sovaSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/spicy.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/statusNetworkSepolia.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/step.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/story.d.ts\":45,\"web/vendor/types/viem/_types/chains/definitions/storyAeneid.d.ts\":46,\"web/vendor/types/viem/_types/chains/definitions/storyOdyssey.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/storyTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/stratis.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/superlumio.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/superposition.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/superseed.d.ts\":310,\"web/vendor/types/viem/_types/chains/definitions/superseedSepolia.d.ts\":298,\"web/vendor/types/viem/_types/chains/definitions/swan.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/swanProximaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/swanSaturnTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/swellchain.d.ts\":287,\"web/vendor/types/viem/_types/chains/definitions/swellchainTestnet.d.ts\":287,\"web/vendor/types/viem/_types/chains/definitions/swissdlt.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/syscoin.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/syscoinTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/tac.d.ts\":42,\"web/vendor/types/viem/_types/chains/definitions/tacSPB.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/taiko.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/taikoHekla.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/taikoJolnir.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/taikoKatla.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/taikoTestnetSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/taraxa.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/taraxaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/teaSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/telcoinTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/telos.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/telosTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/tenet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/ternoa.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/thaiChain.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/that.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/theta.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/thetaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/thunderCore.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/thunderTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/tiktrixTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/tomb.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/treasure.d.ts\":427,\"web/vendor/types/viem/_types/chains/definitions/treasureTopaz.d.ts\":427,\"web/vendor/types/viem/_types/chains/definitions/tron.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/tronNile.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/tronShasta.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ubiq.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ultra.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ultraTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ultron.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/ultronTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/unichain.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/unichainSepolia.d.ts\":302,\"web/vendor/types/viem/_types/chains/definitions/unique.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/uniqueOpal.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/uniqueQuartz.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/unreal.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/vanar.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/vechain.d.ts\":43,\"web/vendor/types/viem/_types/chains/definitions/velas.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/viction.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/victionTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/vision.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/visionTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/wanchain.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/wanchainTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/weavevmAlphanet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/wemix.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/wemixTestnet.d.ts\":41,\"web/vendor/types/viem/_types/chains/definitions/westendAssetHub.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/whitechain.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/whitechainTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/wmcTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/worldLand.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/worldchain.d.ts\":313,\"web/vendor/types/viem/_types/chains/definitions/worldchainSepolia.d.ts\":313,\"web/vendor/types/viem/_types/chains/definitions/xLayer.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/xLayerTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/xai.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/xaiTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/xdc.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/xdcTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/xphereMainnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/xphereTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/xrOne.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/xrSepolia.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/xrplevmDevnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/xrplevmTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/yooldoVerse.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/yooldoVerseTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zenchainTestnet.d.ts\":37,\"web/vendor/types/viem/_types/chains/definitions/zeniq.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zeroNetwork.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zetachain.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/zetachainAthensTestnet.d.ts\":36,\"web/vendor/types/viem/_types/chains/definitions/zhejiang.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zilliqa.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/zilliqaTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/zircuit.d.ts\":282,\"web/vendor/types/viem/_types/chains/definitions/zircuitGarfieldTestnet.d.ts\":282,\"web/vendor/types/viem/_types/chains/definitions/zircuitTestnet.d.ts\":283,\"web/vendor/types/viem/_types/chains/definitions/zkFair.d.ts\":38,\"web/vendor/types/viem/_types/chains/definitions/zkFairTestnet.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/zkLinkNova.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zkLinkNovaSepoliaTestnet.d.ts\":39,\"web/vendor/types/viem/_types/chains/definitions/zksync.d.ts\":437,\"web/vendor/types/viem/_types/chains/definitions/zksyncInMemoryNode.d.ts\":436,\"web/vendor/types/viem/_types/chains/definitions/zksyncLocalCustomHyperchain.d.ts\":431,\"web/vendor/types/viem/_types/chains/definitions/zksyncLocalHyperchain.d.ts\":431,\"web/vendor/types/viem/_types/chains/definitions/zksyncLocalHyperchainL1.d.ts\":40,\"web/vendor/types/viem/_types/chains/definitions/zksyncLocalNode.d.ts\":436,\"web/vendor/types/viem/_types/chains/definitions/zksyncSepoliaTestnet.d.ts\":437,\"web/vendor/types/viem/_types/chains/definitions/zora.d.ts\":303,\"web/vendor/types/viem/_types/chains/definitions/zoraSepolia.d.ts\":304,\"web/vendor/types/viem/_types/chains/definitions/zoraTestnet.d.ts\":293,\"web/vendor/types/viem/_types/chains/index.d.ts\":745,\"web/vendor/types/viem/_types/chains/utils.d.ts\":5,\"web/vendor/types/viem/_types/clients/createClient.d.ts\":120,\"web/vendor/types/viem/_types/clients/createPublicClient.d.ts\":33,\"web/vendor/types/viem/_types/clients/createTestClient.d.ts\":47,\"web/vendor/types/viem/_types/clients/createWalletClient.d.ts\":51,\"web/vendor/types/viem/_types/clients/decorators/public.d.ts\":1457,\"web/vendor/types/viem/_types/clients/decorators/test.d.ts\":640,\"web/vendor/types/viem/_types/clients/decorators/wallet.d.ts\":774,\"web/vendor/types/viem/_types/clients/transports/createTransport.d.ts\":43,\"web/vendor/types/viem/_types/clients/transports/custom.d.ts\":25,\"web/vendor/types/viem/_types/clients/transports/fallback.d.ts\":90,\"web/vendor/types/viem/_types/clients/transports/http.d.ts\":55,\"web/vendor/types/viem/_types/clients/transports/ipc.d.ts\":62,\"web/vendor/types/viem/_types/clients/transports/webSocket.d.ts\":74,\"web/vendor/types/viem/_types/constants/abis.d.ts\":1555,\"web/vendor/types/viem/_types/constants/address.d.ts\":6,\"web/vendor/types/viem/_types/constants/blob.d.ts\":9,\"web/vendor/types/viem/_types/constants/bytes.d.ts\":3,\"web/vendor/types/viem/_types/constants/contract.d.ts\":2,\"web/vendor/types/viem/_types/constants/contracts.d.ts\":5,\"web/vendor/types/viem/_types/constants/kzg.d.ts\":2,\"web/vendor/types/viem/_types/constants/number.d.ts\":97,\"web/vendor/types/viem/_types/constants/solidity.d.ts\":15,\"web/vendor/types/viem/_types/constants/strings.d.ts\":2,\"web/vendor/types/viem/_types/constants/unit.d.ts\":13,\"web/vendor/types/viem/_types/ens/index.d.ts\":12,\"web/vendor/types/viem/_types/errors/abi.d.ts\":231,\"web/vendor/types/viem/_types/errors/account.d.ts\":20,\"web/vendor/types/viem/_types/errors/address.d.ts\":10,\"web/vendor/types/viem/_types/errors/base.d.ts\":30,\"web/vendor/types/viem/_types/errors/blob.d.ts\":36,\"web/vendor/types/viem/_types/errors/block.d.ts\":12,\"web/vendor/types/viem/_types/errors/calls.d.ts\":10,\"web/vendor/types/viem/_types/errors/ccip.d.ts\":36,\"web/vendor/types/viem/_types/errors/chain.d.ts\":45,\"web/vendor/types/viem/_types/errors/contract.d.ts\":83,\"web/vendor/types/viem/_types/errors/cursor.d.ts\":28,\"web/vendor/types/viem/_types/errors/data.d.ts\":32,\"web/vendor/types/viem/_types/errors/eip712.d.ts\":11,\"web/vendor/types/viem/_types/errors/encoding.d.ts\":42,\"web/vendor/types/viem/_types/errors/ens.d.ts\":42,\"web/vendor/types/viem/_types/errors/estimateGas.d.ts\":16,\"web/vendor/types/viem/_types/errors/fee.d.ts\":22,\"web/vendor/types/viem/_types/errors/log.d.ts\":8,\"web/vendor/types/viem/_types/errors/node.d.ts\":130,\"web/vendor/types/viem/_types/errors/request.d.ts\":81,\"web/vendor/types/viem/_types/errors/rpc.d.ts\":380,\"web/vendor/types/viem/_types/errors/siwe.d.ts\":12,\"web/vendor/types/viem/_types/errors/stateOverride.d.ts\":20,\"web/vendor/types/viem/_types/errors/transaction.d.ts\":99,\"web/vendor/types/viem/_types/errors/transport.d.ts\":8,\"web/vendor/types/viem/_types/errors/typedData.d.ts\":28,\"web/vendor/types/viem/_types/errors/unit.d.ts\":10,\"web/vendor/types/viem/_types/errors/utils.d.ts\":7,\"web/vendor/types/viem/_types/errors/version.d.ts\":2,\"web/vendor/types/viem/_types/experimental/eip5792/actions/writeContracts.d.ts\":70,\"web/vendor/types/viem/_types/experimental/eip5792/decorators/eip5792.d.ts\":202,\"web/vendor/types/viem/_types/experimental/erc7715/actions/grantPermissions.d.ts\":75,\"web/vendor/types/viem/_types/experimental/erc7715/decorators/erc7715.d.ts\":61,\"web/vendor/types/viem/_types/experimental/erc7715/types/permission.d.ts\":45,\"web/vendor/types/viem/_types/experimental/erc7715/types/policy.d.ts\":36,\"web/vendor/types/viem/_types/experimental/erc7715/types/signer.d.ts\":29,\"web/vendor/types/viem/_types/experimental/erc7739/actions/signMessage.d.ts\":71,\"web/vendor/types/viem/_types/experimental/erc7739/actions/signTypedData.d.ts\":121,\"web/vendor/types/viem/_types/experimental/erc7739/decorators/erc7739.d.ts\":183,\"web/vendor/types/viem/_types/experimental/erc7739/index.d.ts\":7,\"web/vendor/types/viem/_types/experimental/erc7739/types.d.ts\":7,\"web/vendor/types/viem/_types/experimental/erc7739/utils/hashMessage.d.ts\":30,\"web/vendor/types/viem/_types/experimental/erc7739/utils/hashTypedData.d.ts\":57,\"web/vendor/types/viem/_types/experimental/erc7739/utils/wrapTypedDataSignature.d.ts\":50,\"web/vendor/types/viem/_types/experimental/erc7811/actions/getAssets.d.ts\":102,\"web/vendor/types/viem/_types/experimental/erc7811/decorators/erc7811.d.ts\":50,\"web/vendor/types/viem/_types/experimental/erc7811/index.d.ts\":3,\"web/vendor/types/viem/_types/experimental/erc7821/actions/execute.d.ts\":93,\"web/vendor/types/viem/_types/experimental/erc7821/actions/executeBatches.d.ts\":121,\"web/vendor/types/viem/_types/experimental/erc7821/actions/supportsExecutionMode.d.ts\":37,\"web/vendor/types/viem/_types/experimental/erc7821/constants.d.ts\":49,\"web/vendor/types/viem/_types/experimental/erc7821/decorators/erc7821.d.ts\":209,\"web/vendor/types/viem/_types/experimental/erc7821/errors.d.ts\":14,\"web/vendor/types/viem/_types/experimental/erc7821/index.d.ts\":10,\"web/vendor/types/viem/_types/experimental/erc7821/utils/encodeCalls.d.ts\":8,\"web/vendor/types/viem/_types/experimental/erc7821/utils/encodeExecuteBatchesData.d.ts\":21,\"web/vendor/types/viem/_types/experimental/erc7821/utils/encodeExecuteData.d.ts\":16,\"web/vendor/types/viem/_types/experimental/erc7821/utils/getExecuteError.d.ts\":12,\"web/vendor/types/viem/_types/experimental/erc7846/actions/connect.d.ts\":41,\"web/vendor/types/viem/_types/experimental/erc7846/actions/disconnect.d.ts\":28,\"web/vendor/types/viem/_types/experimental/erc7846/decorators/erc7846.d.ts\":68,\"web/vendor/types/viem/_types/experimental/erc7846/index.d.ts\":4,\"web/vendor/types/viem/_types/experimental/erc7895/actions/addSubAccount.d.ts\":56,\"web/vendor/types/viem/_types/experimental/erc7895/decorators/erc7895.d.ts\":52,\"web/vendor/types/viem/_types/experimental/erc7895/index.d.ts\":3,\"web/vendor/types/viem/_types/experimental/index.d.ts\":146,\"web/vendor/types/viem/_types/index.d.ts\":331,\"web/vendor/types/viem/_types/linea/actions/estimateGas.d.ts\":36,\"web/vendor/types/viem/_types/linea/chainConfig.d.ts\":10,\"web/vendor/types/viem/_types/linea/chains.d.ts\":3,\"web/vendor/types/viem/_types/linea/index.d.ts\":3,\"web/vendor/types/viem/_types/linea/types/rpc.d.ts\":22,\"web/vendor/types/viem/_types/node/index.d.ts\":4,\"web/vendor/types/viem/_types/node/trustedSetups.d.ts\":2,\"web/vendor/types/viem/_types/node/trustedSetups_cjs.d.ts\":2,\"web/vendor/types/viem/_types/nonce/index.d.ts\":2,\"web/vendor/types/viem/_types/op-stack/abis.d.ts\":2070,\"web/vendor/types/viem/_types/op-stack/actions/buildDepositTransaction.d.ts\":65,\"web/vendor/types/viem/_types/op-stack/actions/buildInitiateWithdrawal.d.ts\":50,\"web/vendor/types/viem/_types/op-stack/actions/buildProveWithdrawal.d.ts\":55,\"web/vendor/types/viem/_types/op-stack/actions/depositTransaction.d.ts\":80,\"web/vendor/types/viem/_types/op-stack/actions/estimateContractL1Fee.d.ts\":39,\"web/vendor/types/viem/_types/op-stack/actions/estimateContractL1Gas.d.ts\":39,\"web/vendor/types/viem/_types/op-stack/actions/estimateContractTotalFee.d.ts\":39,\"web/vendor/types/viem/_types/op-stack/actions/estimateContractTotalGas.d.ts\":39,\"web/vendor/types/viem/_types/op-stack/actions/estimateDepositTransactionGas.d.ts\":50,\"web/vendor/types/viem/_types/op-stack/actions/estimateFinalizeWithdrawalGas.d.ts\":50,\"web/vendor/types/viem/_types/op-stack/actions/estimateInitiateWithdrawalGas.d.ts\":51,\"web/vendor/types/viem/_types/op-stack/actions/estimateL1Fee.d.ts\":41,\"web/vendor/types/viem/_types/op-stack/actions/estimateL1Gas.d.ts\":41,\"web/vendor/types/viem/_types/op-stack/actions/estimateProveWithdrawalGas.d.ts\":63,\"web/vendor/types/viem/_types/op-stack/actions/estimateTotalFee.d.ts\":37,\"web/vendor/types/viem/_types/op-stack/actions/estimateTotalGas.d.ts\":36,\"web/vendor/types/viem/_types/op-stack/actions/finalizeWithdrawal.d.ts\":54,\"web/vendor/types/viem/_types/op-stack/actions/getGame.d.ts\":57,\"web/vendor/types/viem/_types/op-stack/actions/getGames.d.ts\":48,\"web/vendor/types/viem/_types/op-stack/actions/getL1BaseFee.d.ts\":35,\"web/vendor/types/viem/_types/op-stack/actions/getL2Output.d.ts\":51,\"web/vendor/types/viem/_types/op-stack/actions/getPortalVersion.d.ts\":46,\"web/vendor/types/viem/_types/op-stack/actions/getTimeToFinalize.d.ts\":57,\"web/vendor/types/viem/_types/op-stack/actions/getTimeToNextGame.d.ts\":61,\"web/vendor/types/viem/_types/op-stack/actions/getTimeToNextL2Output.d.ts\":61,\"web/vendor/types/viem/_types/op-stack/actions/getTimeToProve.d.ts\":53,\"web/vendor/types/viem/_types/op-stack/actions/getWithdrawalStatus.d.ts\":79,\"web/vendor/types/viem/_types/op-stack/actions/initiateWithdrawal.d.ts\":77,\"web/vendor/types/viem/_types/op-stack/actions/proveWithdrawal.d.ts\":67,\"web/vendor/types/viem/_types/op-stack/actions/waitForNextGame.d.ts\":60,\"web/vendor/types/viem/_types/op-stack/actions/waitForNextL2Output.d.ts\":55,\"web/vendor/types/viem/_types/op-stack/actions/waitToFinalize.d.ts\":45,\"web/vendor/types/viem/_types/op-stack/actions/waitToProve.d.ts\":63,\"web/vendor/types/viem/_types/op-stack/chainConfig.d.ts\":258,\"web/vendor/types/viem/_types/op-stack/chains.d.ts\":28,\"web/vendor/types/viem/_types/op-stack/contracts.d.ts\":25,\"web/vendor/types/viem/_types/op-stack/decorators/publicL1.d.ts\":530,\"web/vendor/types/viem/_types/op-stack/decorators/publicL2.d.ts\":333,\"web/vendor/types/viem/_types/op-stack/decorators/walletL1.d.ts\":136,\"web/vendor/types/viem/_types/op-stack/decorators/walletL2.d.ts\":79,\"web/vendor/types/viem/_types/op-stack/errors/withdrawal.d.ts\":17,\"web/vendor/types/viem/_types/op-stack/formatters.d.ts\":234,\"web/vendor/types/viem/_types/op-stack/index.d.ts\":48,\"web/vendor/types/viem/_types/op-stack/parsers.d.ts\":8,\"web/vendor/types/viem/_types/op-stack/serializers.d.ts\":13,\"web/vendor/types/viem/_types/op-stack/types/block.d.ts\":13,\"web/vendor/types/viem/_types/op-stack/types/chain.d.ts\":9,\"web/vendor/types/viem/_types/op-stack/types/contract.d.ts\":14,\"web/vendor/types/viem/_types/op-stack/types/deposit.d.ts\":25,\"web/vendor/types/viem/_types/op-stack/types/transaction.d.ts\":56,\"web/vendor/types/viem/_types/op-stack/types/withdrawal.d.ts\":29,\"web/vendor/types/viem/_types/op-stack/utils/extractTransactionDepositedLogs.d.ts\":446,\"web/vendor/types/viem/_types/op-stack/utils/extractWithdrawalMessageLogs.d.ts\":137,\"web/vendor/types/viem/_types/op-stack/utils/getL2TransactionHash.d.ts\":12,\"web/vendor/types/viem/_types/op-stack/utils/getL2TransactionHashes.d.ts\":11,\"web/vendor/types/viem/_types/op-stack/utils/getSourceHash.d.ts\":28,\"web/vendor/types/viem/_types/op-stack/utils/getWithdrawalHashStorageSlot.d.ts\":11,\"web/vendor/types/viem/_types/op-stack/utils/getWithdrawals.d.ts\":12,\"web/vendor/types/viem/_types/op-stack/utils/opaqueDataToDepositData.d.ts\":15,\"web/vendor/types/viem/_types/siwe/index.d.ts\":8,\"web/vendor/types/viem/_types/types/account.d.ts\":11,\"web/vendor/types/viem/_types/types/authorization.d.ts\":39,\"web/vendor/types/viem/_types/types/block.d.ts\":92,\"web/vendor/types/viem/_types/types/calls.d.ts\":42,\"web/vendor/types/viem/_types/types/capabilities.d.ts\":56,\"web/vendor/types/viem/_types/types/chain.d.ts\":165,\"web/vendor/types/viem/_types/types/contract.d.ts\":123,\"web/vendor/types/viem/_types/types/eip1193.d.ts\":1892,\"web/vendor/types/viem/_types/types/eip4844.d.ts\":11,\"web/vendor/types/viem/_types/types/ens.d.ts\":5,\"web/vendor/types/viem/_types/types/fee.d.ts\":41,\"web/vendor/types/viem/_types/types/filter.d.ts\":40,\"web/vendor/types/viem/_types/types/kzg.d.ts\":24,\"web/vendor/types/viem/_types/types/log.d.ts\":55,\"web/vendor/types/viem/_types/types/misc.d.ts\":32,\"web/vendor/types/viem/_types/types/multicall.d.ts\":60,\"web/vendor/types/viem/_types/types/proof.d.ts\":19,\"web/vendor/types/viem/_types/types/register.d.ts\":14,\"web/vendor/types/viem/_types/types/rpc.d.ts\":97,\"web/vendor/types/viem/_types/types/stateOverride.d.ts\":20,\"web/vendor/types/viem/_types/types/transaction.d.ts\":239,\"web/vendor/types/viem/_types/types/transport.d.ts\":29,\"web/vendor/types/viem/_types/types/typedData.d.ts\":25,\"web/vendor/types/viem/_types/types/utils.d.ts\":211,\"web/vendor/types/viem/_types/types/window.d.ts\":7,\"web/vendor/types/viem/_types/types/withdrawal.d.ts\":8,\"web/vendor/types/viem/_types/utils/abi/decodeAbiParameters.d.ts\":25,\"web/vendor/types/viem/_types/utils/abi/decodeDeployData.d.ts\":18,\"web/vendor/types/viem/_types/utils/abi/decodeErrorResult.d.ts\":27,\"web/vendor/types/viem/_types/utils/abi/decodeEventLog.d.ts\":33,\"web/vendor/types/viem/_types/utils/abi/decodeFunctionData.d.ts\":26,\"web/vendor/types/viem/_types/utils/abi/decodeFunctionResult.d.ts\":26,\"web/vendor/types/viem/_types/utils/abi/encodeAbiParameters.d.ts\":63,\"web/vendor/types/viem/_types/utils/abi/encodeDeployData.d.ts\":24,\"web/vendor/types/viem/_types/utils/abi/encodeErrorResult.d.ts\":24,\"web/vendor/types/viem/_types/utils/abi/encodeEventTopics.d.ts\":28,\"web/vendor/types/viem/_types/utils/abi/encodeFunctionData.d.ts\":28,\"web/vendor/types/viem/_types/utils/abi/encodeFunctionResult.d.ts\":22,\"web/vendor/types/viem/_types/utils/abi/encodePacked.d.ts\":20,\"web/vendor/types/viem/_types/utils/abi/formatAbiItem.d.ts\":14,\"web/vendor/types/viem/_types/utils/abi/formatAbiItemWithArgs.d.ts\":10,\"web/vendor/types/viem/_types/utils/abi/getAbiItem.d.ts\":27,\"web/vendor/types/viem/_types/utils/abi/parseEventLogs.d.ts\":49,\"web/vendor/types/viem/_types/utils/abi/prepareEncodeFunctionData.d.ts\":28,\"web/vendor/types/viem/_types/utils/address/getAddress.d.ts\":32,\"web/vendor/types/viem/_types/utils/address/getContractAddress.d.ts\":35,\"web/vendor/types/viem/_types/utils/address/isAddress.d.ts\":16,\"web/vendor/types/viem/_types/utils/address/isAddressEqual.d.ts\":7,\"web/vendor/types/viem/_types/utils/authorization/hashAuthorization.d.ts\":21,\"web/vendor/types/viem/_types/utils/authorization/recoverAuthorizationAddress.d.ts\":26,\"web/vendor/types/viem/_types/utils/authorization/serializeAuthorizationList.d.ts\":6,\"web/vendor/types/viem/_types/utils/authorization/verifyAuthorization.d.ts\":21,\"web/vendor/types/viem/_types/utils/blob/blobsToCommitments.d.ts\":31,\"web/vendor/types/viem/_types/utils/blob/blobsToProofs.d.ts\":37,\"web/vendor/types/viem/_types/utils/blob/commitmentToVersionedHash.d.ts\":35,\"web/vendor/types/viem/_types/utils/blob/commitmentsToVersionedHashes.d.ts\":34,\"web/vendor/types/viem/_types/utils/blob/fromBlobs.d.ts\":16,\"web/vendor/types/viem/_types/utils/blob/sidecarsToVersionedHashes.d.ts\":29,\"web/vendor/types/viem/_types/utils/blob/toBlobSidecars.d.ts\":57,\"web/vendor/types/viem/_types/utils/blob/toBlobs.d.ts\":29,\"web/vendor/types/viem/_types/utils/buildRequest.d.ts\":12,\"web/vendor/types/viem/_types/utils/ccip.d.ts\":44,\"web/vendor/types/viem/_types/utils/chain/assertCurrentChain.d.ts\":10,\"web/vendor/types/viem/_types/utils/chain/defineChain.d.ts\":4,\"web/vendor/types/viem/_types/utils/chain/extractChain.d.ts\":12,\"web/vendor/types/viem/_types/utils/chain/getChainContractAddress.d.ts\":9,\"web/vendor/types/viem/_types/utils/cursor.d.ts\":49,\"web/vendor/types/viem/_types/utils/data/concat.d.ts\":10,\"web/vendor/types/viem/_types/utils/data/isBytes.d.ts\":5,\"web/vendor/types/viem/_types/utils/data/isHex.d.ts\":7,\"web/vendor/types/viem/_types/utils/data/pad.d.ts\":16,\"web/vendor/types/viem/_types/utils/data/size.d.ts\":12,\"web/vendor/types/viem/_types/utils/data/slice.d.ts\":42,\"web/vendor/types/viem/_types/utils/data/trim.d.ts\":10,\"web/vendor/types/viem/_types/utils/encoding/fromBytes.d.ts\":117,\"web/vendor/types/viem/_types/utils/encoding/fromHex.d.ts\":149,\"web/vendor/types/viem/_types/utils/encoding/fromRlp.d.ts\":17,\"web/vendor/types/viem/_types/utils/encoding/toBytes.d.ts\":134,\"web/vendor/types/viem/_types/utils/encoding/toHex.d.ts\":148,\"web/vendor/types/viem/_types/utils/encoding/toRlp.d.ts\":16,\"web/vendor/types/viem/_types/utils/ens/avatar/parseAvatarRecord.d.ts\":14,\"web/vendor/types/viem/_types/utils/ens/avatar/utils.d.ts\":50,\"web/vendor/types/viem/_types/utils/ens/encodeLabelhash.d.ts\":5,\"web/vendor/types/viem/_types/utils/ens/encodedLabelToLabelhash.d.ts\":6,\"web/vendor/types/viem/_types/utils/ens/errors.d.ts\":5,\"web/vendor/types/viem/_types/utils/ens/labelhash.d.ts\":17,\"web/vendor/types/viem/_types/utils/ens/localBatchGatewayRequest.d.ts\":8,\"web/vendor/types/viem/_types/utils/ens/namehash.d.ts\":20,\"web/vendor/types/viem/_types/utils/ens/normalize.d.ts\":14,\"web/vendor/types/viem/_types/utils/ens/packetToBytes.d.ts\":8,\"web/vendor/types/viem/_types/utils/ens/toCoinType.d.ts\":12,\"web/vendor/types/viem/_types/utils/errors/getCallError.d.ts\":13,\"web/vendor/types/viem/_types/utils/errors/getContractError.d.ts\":15,\"web/vendor/types/viem/_types/utils/errors/getEstimateGasError.d.ts\":15,\"web/vendor/types/viem/_types/utils/errors/getNodeError.d.ts\":9,\"web/vendor/types/viem/_types/utils/errors/getTransactionError.d.ts\":16,\"web/vendor/types/viem/_types/utils/filters/createFilterRequestScope.d.ts\":21,\"web/vendor/types/viem/_types/utils/formatters/block.d.ts\":27,\"web/vendor/types/viem/_types/utils/formatters/extract.d.ts\":10,\"web/vendor/types/viem/_types/utils/formatters/feeHistory.d.ts\":6,\"web/vendor/types/viem/_types/utils/formatters/formatter.d.ts\":12,\"web/vendor/types/viem/_types/utils/formatters/log.d.ts\":10,\"web/vendor/types/viem/_types/utils/formatters/proof.d.ts\":7,\"web/vendor/types/viem/_types/utils/formatters/transaction.d.ts\":31,\"web/vendor/types/viem/_types/utils/formatters/transactionReceipt.d.ts\":23,\"web/vendor/types/viem/_types/utils/formatters/transactionRequest.d.ts\":26,\"web/vendor/types/viem/_types/utils/getAction.d.ts\":18,\"web/vendor/types/viem/_types/utils/hash/hashSignature.d.ts\":6,\"web/vendor/types/viem/_types/utils/hash/isHash.d.ts\":7,\"web/vendor/types/viem/_types/utils/hash/keccak256.d.ts\":11,\"web/vendor/types/viem/_types/utils/hash/normalizeSignature.d.ts\":7,\"web/vendor/types/viem/_types/utils/hash/ripemd160.d.ts\":11,\"web/vendor/types/viem/_types/utils/hash/sha256.d.ts\":11,\"web/vendor/types/viem/_types/utils/hash/toEventHash.d.ts\":2,\"web/vendor/types/viem/_types/utils/hash/toEventSelector.d.ts\":12,\"web/vendor/types/viem/_types/utils/hash/toEventSignature.d.ts\":2,\"web/vendor/types/viem/_types/utils/hash/toFunctionHash.d.ts\":2,\"web/vendor/types/viem/_types/utils/hash/toFunctionSelector.d.ts\":14,\"web/vendor/types/viem/_types/utils/hash/toFunctionSignature.d.ts\":2,\"web/vendor/types/viem/_types/utils/hash/toSignature.d.ts\":23,\"web/vendor/types/viem/_types/utils/hash/toSignatureHash.d.ts\":10,\"web/vendor/types/viem/_types/utils/index.d.ts\":124,\"web/vendor/types/viem/_types/utils/kzg/defineKzg.d.ts\":21,\"web/vendor/types/viem/_types/utils/kzg/setupKzg.d.ts\":21,\"web/vendor/types/viem/_types/utils/lru.d.ts\":12,\"web/vendor/types/viem/_types/utils/nonceManager.d.ts\":51,\"web/vendor/types/viem/_types/utils/observe.d.ts\":21,\"web/vendor/types/viem/_types/utils/poll.d.ts\":15,\"web/vendor/types/viem/_types/utils/promise/createBatchScheduler.d.ts\":22,\"web/vendor/types/viem/_types/utils/promise/withCache.d.ts\":41,\"web/vendor/types/viem/_types/utils/promise/withDedupe.d.ts\":11,\"web/vendor/types/viem/_types/utils/promise/withResolvers.d.ts\":9,\"web/vendor/types/viem/_types/utils/promise/withRetry.d.ts\":15,\"web/vendor/types/viem/_types/utils/promise/withTimeout.d.ts\":10,\"web/vendor/types/viem/_types/utils/regex.d.ts\":4,\"web/vendor/types/viem/_types/utils/rpc/compat.d.ts\":87,\"web/vendor/types/viem/_types/utils/rpc/http.d.ts\":42,\"web/vendor/types/viem/_types/utils/rpc/id.d.ts\":6,\"web/vendor/types/viem/_types/utils/rpc/ipc.d.ts\":8,\"web/vendor/types/viem/_types/utils/rpc/socket.d.ts\":82,\"web/vendor/types/viem/_types/utils/rpc/webSocket.d.ts\":4,\"web/vendor/types/viem/_types/utils/signature/compactSignatureToSignature.d.ts\":24,\"web/vendor/types/viem/_types/utils/signature/hashMessage.d.ts\":9,\"web/vendor/types/viem/_types/utils/signature/hashTypedData.d.ts\":38,\"web/vendor/types/viem/_types/utils/signature/isErc6492Signature.d.ts\":9,\"web/vendor/types/viem/_types/utils/signature/isErc8010Signature.d.ts\":8,\"web/vendor/types/viem/_types/utils/signature/parseCompactSignature.d.ts\":16,\"web/vendor/types/viem/_types/utils/signature/parseErc6492Signature.d.ts\":38,\"web/vendor/types/viem/_types/utils/signature/parseErc8010Signature.d.ts\":30,\"web/vendor/types/viem/_types/utils/signature/parseSignature.d.ts\":26,\"web/vendor/types/viem/_types/utils/signature/recoverAddress.d.ts\":11,\"web/vendor/types/viem/_types/utils/signature/recoverMessageAddress.d.ts\":13,\"web/vendor/types/viem/_types/utils/signature/recoverPublicKey.d.ts\":12,\"web/vendor/types/viem/_types/utils/signature/recoverTransactionAddress.d.ts\":16,\"web/vendor/types/viem/_types/utils/signature/recoverTypedDataAddress.d.ts\":13,\"web/vendor/types/viem/_types/utils/signature/serializeCompactSignature.d.ts\":19,\"web/vendor/types/viem/_types/utils/signature/serializeErc6492Signature.d.ts\":28,\"web/vendor/types/viem/_types/utils/signature/serializeErc8010Signature.d.ts\":27,\"web/vendor/types/viem/_types/utils/signature/serializeSignature.d.ts\":27,\"web/vendor/types/viem/_types/utils/signature/signatureToCompactSignature.d.ts\":24,\"web/vendor/types/viem/_types/utils/signature/toPrefixedMessage.d.ts\":7,\"web/vendor/types/viem/_types/utils/signature/verifyHash.d.ts\":30,\"web/vendor/types/viem/_types/utils/signature/verifyMessage.d.ts\":30,\"web/vendor/types/viem/_types/utils/signature/verifyTypedData.d.ts\":29,\"web/vendor/types/viem/_types/utils/siwe/createSiweMessage.d.ts\":24,\"web/vendor/types/viem/_types/utils/siwe/generateSiweNonce.d.ts\":12,\"web/vendor/types/viem/_types/utils/siwe/parseSiweMessage.d.ts\":11},\"excluded\":[\"lib/\",\"node_modules/\"],\"truncated\":true}","passed":true},{"durationMs":7328,"exitCode":0,"name":"slither","output":"[high/medium] reentrancy-balance at src/UnlkSwapRouter.sol:105: Reentrancy in UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167):\n[high/medium] reentrancy-balance at src/UnlkSwapRouter.sol:105: Reentrancy in UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167):\n[high/medium] reentrancy-balance at src/candidate/UnlkRouterV2.sol:107: Reentrancy in UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170):\n[high/medium] reentrancy-balance at src/candidate/UnlkRouterV2.sol:107: Reentrancy in UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170):\n[medium/medium] divide-before-multiply at src/UnlkOracle.sol:122: UnlkOracle.twapTick() (src/UnlkOracle.sol#122-147) performs a multiplication on the result of a division:\n[medium/high] incorrect-equality at src/candidate/NftFeeVault.sol:106: NftFeeVault._pay(uint256) (src/candidate/NftFeeVault.sol#106-110) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/UnlkOracle.sol:122: UnlkOracle.twapTick() (src/UnlkOracle.sol#122-147) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/UnlkOracle.sol:90: UnlkOracle.checkpoint() (src/UnlkOracle.sol#90-115) uses a dangerous strict equality:\n[medium/high] incorrect-equality at src/UnlkOracle.sol:90: UnlkOracle.checkpoint() (src/UnlkOracle.sol#90-115) uses a dangerous strict equality:\n[medium/medium] reentrancy-no-eth at src/UnlkHook.sol:484: Reentrancy in UnlkHook.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/UnlkHook.sol#484-515):\n[medium/medium] reentrancy-no-eth at src/candidate/UnlkHookV2.sol:412: Reentrancy in UnlkHookV2.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/candidate/UnlkHookV2.sol#412-472):\n[medium/medium] reentrancy-no-eth at src/successor/UnlkHookV3.sol:421: Reentrancy in UnlkHookV3.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/successor/UnlkHookV3.sol#421-454):\n[medium/medium] uninitialized-local at src/UnlkHook.sol:417: UnlkHook._verifyLaunchRecord(uint64).hookSeen (src/UnlkHook.sol#417) is a local variable never initialized\n[medium/medium] uninitialized-local at src/candidate/UnlkRouterV2.sol:118: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256).state (src/candidate/UnlkRouterV2.sol#118) is a local variable never initialized\n[medium/medium] uninitialized-local at src/UnlkHook.sol:416: UnlkHook._verifyLaunchRecord(uint64).tokenSeen (src/UnlkHook.sol#416) is a local variable never initialized\n[medium/medium] uninitialized-local at src/candidate/UnlkHookV2.sol:652: UnlkHookV2._updateMilestone().fdv (src/candidate/UnlkHookV2.sol#652) is a local variable never initialized\n[medium/medium] uninitialized-local at src/candidate/SetupVerifierV2.sol:64: SetupVerifierV2._record(ILaunchRegistryView.Artifact[],address,address).hookSeen (src/candidate/SetupVerifierV2.sol#64) is a local variable never initialized\n[medium/medium] uninitialized-local at src/successor/UnlkHookV3.sol:682: UnlkHookV3._updateMilestone().fdv (src/successor/UnlkHookV3.sol#682) is a local variable never initialized\n[medium/medium] uninitialized-local at src/candidate/SetupVerifierV2.sol:63: SetupVerifierV2._record(ILaunchRegistryView.Artifact[],address,address).tokenSeen (src/candidate/SetupVerifierV2.sol#63) is a local variable never initialized\n[medium/medium] uninitialized-local at src/UnlkHook.sol:675: UnlkHook._updateMilestone().fdv (src/UnlkHook.sol#675) is a local variable never initialized\n[medium/medium] uninitialized-local at src/UnlkSwapRouter.sol:115: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256).state (src/UnlkSwapRouter.sol#115) is a local variable never initialized\n[medium/medium] unused-return at src/successor/UnlkHookV3.sol:524: UnlkHookV3._recordSeed(ModifyLiquidityParams) (src/successor/UnlkHookV3.sol#524-542) ignores return value by (sqrtPrice,None,None,None) = poolManager.getSlot0(poolId) (src/successor/UnlkHookV3.sol#529)\n[medium/medium] unused-return at src/UnlkHook.sol:462: UnlkHook.beforeSwap(address,PoolKey,SwapParams,bytes) (src/UnlkHook.sol#462-482) ignores return value by (None,None,protocolFee,lpFee) = poolManager.getSlot0(poolId) (src/UnlkHook.sol#476)\n[medium/medium] unused-return at src/UnlkOracle.sol:90: UnlkOracle.checkpoint() (src/UnlkOracle.sol#90-115) ignores return value by (liquidity,None,None) = poolManager.getPositionInfo(poolId,factory,rangeLowerTick,rangeUpperTick,bytes32(0)) (src/UnlkOracle.sol#93-94)\n[medium/medium] unused-return at src/successor/UnlkHookV3.sol:375: UnlkHookV3.beforeSwap(address,PoolKey,SwapParams,bytes) (src/successor/UnlkHookV3.sol#375-405) ignores return value by (None,None,protocolFee,lpFee) = poolManager.getSlot0(poolId) (src/successor/UnlkHookV3.sol#399)\n[medium/medium] unused-return at src/candidate/UnlkHookV2.sol:381: UnlkHookV2.beforeSwap(address,PoolKey,SwapParams,bytes) (src/candidate/UnlkHookV2.sol#381-410) ignores return value by (None,None,protocolFee,lpFee) = poolManager.getSlot0(poolId) (src/candidate/UnlkHookV2.sol#406)\n[medium/medium] unused-return at src/successor/UnlkHookV3.sol:489: UnlkHookV3._requireCompleteFill(SwapParams,BalanceDelta,uint256) (src/successor/UnlkHookV3.sol#489-502) ignores return value by (price,None,None,None) = poolManager.getSlot0(poolId) (src/successor/UnlkHookV3.sol#497)\n[medium/medium] unused-return at src/candidate/SetupVerifierV2.sol:104: SetupVerifierV2._position(ICandidateSetup,ILaunchFactoryView,uint64,UnlkToken) (src/candidate/SetupVerifierV2.sol#104-124) ignores return value by (liquidity,None,None) = manager.getPositionInfo(id,address(factory),lower,upper,bytes32(0)) (src/candidate/SetupVerifierV2.sol#116)\n[medium/medium] unused-return at src/candidate/NftFeeVault.sol:68: NftFeeVault.redeem() (src/candidate/NftFeeVault.sol#68-73) ignores return value by poolManager.unlock() (src/candidate/NftFeeVault.sol#71)\n[medium/medium] unused-return at src/candidate/UnlkHookV2.sol:494: UnlkHookV2._recordSeed(ModifyLiquidityParams) (src/candidate/UnlkHookV2.sol#494-512) ignores return value by (sqrtPrice,None,None,None) = poolManager.getSlot0(poolId) (src/candidate/UnlkHookV2.sol#499)\n[medium/medium] unused-return at src/UnlkHook.sol:537: UnlkHook._recordSeed(ModifyLiquidityParams) (src/UnlkHook.sol#537-555) ignores return value by (sqrtPrice,None,None,None) = poolManager.getSlot0(poolId) (src/UnlkHook.sol#542)\n[medium/medium] unused-return at src/UnlkHook.sol:371: UnlkHook._verifySeed() (src/UnlkHook.sol#371-382) ignores return value by (liquidity,None,None) = poolManager.getPositionInfo(poolId,launchFactory,seedTickLower,seedTickUpper,bytes32(0)) (src/UnlkHook.sol#372-373)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:189: UnlkSwapRouter._balance(IERC20) (src/UnlkSwapRouter.sol#189-191) has external calls inside a loop: currency.balanceOf(address(this)) (src/UnlkSwapRouter.sol#190)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: state.baseOutput = state.outputToken.balanceOf(address(this)) (src/candidate/UnlkRouterV2.sol#127-128)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: ! hook.activated() || block.timestamp > request.deadline || request.amountSpecified == 0 || request.amountSpecified == type()(int256).min || request.maxInput == 0 || request.maxInput > uint256(uint128(type()(int128).max)) || request.minOutput == 0 (src/UnlkSwapRouter.sol#110-112)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:174: UnlkSwapRouter._boundedLimit(UnlkSwapRouter.SwapRequest) (src/UnlkSwapRouter.sol#174-183) has external calls inside a loop: floor_ = TickMath.getSqrtPriceAtTick(hook.seedTickLower()) (src/UnlkSwapRouter.sol#177)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: ! hook.activated() || block.timestamp > request.deadline || request.amountSpecified == 0 || request.amountSpecified == type()(int256).min || request.maxInput == 0 || request.amountSpecified > int256(type()(int128).max) || request.maxInput > uint256(uint128(type()(int128).max)) || request.minOutput == 0 (src/candidate/UnlkRouterV2.sol#112-115)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: state.baseInput = state.inputToken.balanceOf(address(this)) (src/UnlkSwapRouter.sol#121-123)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: key = hook.poolKey() (src/candidate/UnlkRouterV2.sol#117)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: state.baseInput = state.inputToken.balanceOf(address(this)) (src/candidate/UnlkRouterV2.sol#124-126)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: key = hook.poolKey() (src/UnlkSwapRouter.sol#114)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: outputBefore = state.outputToken.balanceOf(msg.sender) (src/UnlkSwapRouter.sol#156)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:174: UnlkSwapRouter._boundedLimit(UnlkSwapRouter.SwapRequest) (src/UnlkSwapRouter.sol#174-183) has external calls inside a loop: ceiling = TickMath.getSqrtPriceAtTick(hook.seedTickUpper()) (src/UnlkSwapRouter.sol#180)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: result = poolManager.unlock(abi.encode(key,params,operationNonce,request.maxInput)) (src/UnlkSwapRouter.sol#140)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:194: UnlkRouterV2._boundedLimit(UnlkRouterV2.SwapRequest) (src/candidate/UnlkRouterV2.sol#194-203) has external calls inside a loop: floor_ = TickMath.getSqrtPriceAtTick(hook.seedTickLower()) (src/candidate/UnlkRouterV2.sol#197)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: state.inputToken.balanceOf(address(this)) != state.baseInput + request.maxInput (src/UnlkSwapRouter.sol#130)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: outputBefore = state.outputToken.balanceOf(msg.sender) (src/candidate/UnlkRouterV2.sol#159)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: state.outputToken.balanceOf(msg.sender) != outputBefore + output (src/UnlkSwapRouter.sol#158)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: state.outputToken.balanceOf(msg.sender) != outputBefore + output (src/candidate/UnlkRouterV2.sol#161)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:209: UnlkRouterV2._balance(IERC20) (src/candidate/UnlkRouterV2.sol#209-211) has external calls inside a loop: currency.balanceOf(address(this)) (src/candidate/UnlkRouterV2.sol#210)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: result = poolManager.unlock(abi.encode(key,params,operationNonce,request.maxInput)) (src/candidate/UnlkRouterV2.sol#143)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:107: UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170) has external calls inside a loop: state.inputToken.balanceOf(address(this)) != state.baseInput + request.maxInput (src/candidate/UnlkRouterV2.sol#133)\n[low/medium] calls-loop at src/UnlkSwapRouter.sol:105: UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167) has external calls inside a loop: state.baseOutput = state.outputToken.balanceOf(address(this)) (src/UnlkSwapRouter.sol#124-125)\n[low/medium] calls-loop at src/candidate/UnlkRouterV2.sol:194: UnlkRouterV2._boundedLimit(UnlkRouterV2.SwapRequest) (src/candidate/UnlkRouterV2.sol#194-203) has external calls inside a loop: ceiling = TickMath.getSqrtPriceAtTick(hook.seedTickUpper()) (src/candidate/UnlkRouterV2.sol#200)\n[low/medium] reentrancy-benign at src/UnlkHook.sol:657: Reentrancy in UnlkHook.updateMilestone() (src/UnlkHook.sol#657-661):\n[low/medium] reentrancy-benign at src/candidate/NftFeeVault.sol:75: Reentrancy in NftFeeVault.unlockCallback(bytes) (src/candidate/NftFeeVault.sol#75-88):\n[low/medium] reentrancy-benign at src/candidate/UnlkHookV2.sol:614: Reentrancy in UnlkHookV2.updateMilestone() (src/candidate/UnlkHookV2.sol#614-618):\n[low/medium] reentrancy-benign at src/successor/UnlkHookV3.sol:375: Reentrancy in UnlkHookV3.beforeSwap(address,PoolKey,SwapParams,bytes) (src/successor/UnlkHookV3.sol#375-405):\n[low/medium] reentrancy-benign at src/candidate/NftFeeVault.sol:75: Reentrancy in NftFeeVault.unlockCallback(bytes) (src/candidate/NftFeeVault.sol#75-88):\n[low/medium] reentrancy-benign at src/successor/UnlkHookV3.sol:421: Reentrancy in UnlkHookV3.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/successor/UnlkHookV3.sol#421-454):\n[low/medium] reentrancy-benign at src/candidate/UnlkRouterV2.sol:107: Reentrancy in UnlkRouterV2._swap(UnlkRouterV2.SwapRequest,uint256) (src/candidate/UnlkRouterV2.sol#107-170):\n[low/medium] reentrancy-benign at src/candidate/NftFeeVault.sol:68: Reentrancy in NftFeeVault.redeem() (src/candidate/NftFeeVault.sol#68-73):\n[low/medium] reentrancy-benign at src/UnlkSwapRouter.sol:105: Reentrancy in UnlkSwapRouter._swap(UnlkSwapRouter.SwapRequest,uint256) (src/UnlkSwapRouter.sol#105-167):\n[low/medium] reentrancy-benign at src/UnlkHook.sol:484: Reentrancy in UnlkHook.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/UnlkHook.sol#484-515):\n[low/medium] reentrancy-benign at src/successor/UnlkHookV3.sol:644: Reentrancy in UnlkHookV3.updateMilestone() (src/successor/UnlkHookV3.sol#644-648):\n[low/medium] reentrancy-benign at src/candidate/UnlkHookV2.sol:412: Reentrancy in UnlkHookV2.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/candidate/UnlkHookV2.sol#412-472):\n[low/medium] reentrancy-events at src/candidate/UnlkHookV2.sol:412: Reentrancy in UnlkHookV2.afterSwap(address,PoolKey,SwapParams,BalanceDelta,bytes) (src/candidate/UnlkHookV2.sol#412-472):\n[low/medium] reentrancy-events at src/UnlkHook.sol:657: Reentrancy in UnlkHook.updateMilestone() (src/UnlkHook.sol#657-661):\n[low/medium] reentrancy-events at src/candidate/UnlkHookV2.sol:300: Reentrancy in UnlkHookV2.configureAndActivate(address,IClaimEvidence,UnlkOracle,uint64) (src/candidate/UnlkHookV2.sol#300-349):\n[low/medium] reentrancy-events at src/candidate/NftFeeVault.sol:75: Reentrancy in NftFeeVault.unlockCallback(bytes) (src/candidate/NftFeeVault.sol#75-88):\n[low/medium] reentrancy-events at src/candidate/UnlkHookV2.sol:614: Reentrancy in UnlkHookV2.updateMilestone() (src/candidate/UnlkHookV2.sol#614-618):\n[low/medium] reentrancy-events at src/","passed":true},{"durationMs":1183,"exitCode":0,"name":"aderyn","output":"[high] eth-send-unchecked-address at src/UnlkSwapRouter.sol:201: ETH transferred without address checks (2 places)\n[high] reentrancy-state-change at src/MerkleClaimEvidence.sol:190: Reentrancy: State change after external call (22 places)\n[high] strict-equality-contract-balance at src/candidate/NftFeeVault.sol:85: Dangerous strict equality checks on contract balances\n[high] unprotected-initializer at src/HookDeployer.sol:19: Unprotected initializer (4 places)\n[low] costly-loop at src/MerkleClaimEvidence.sol:121: Costly operations inside loop (4 places)\n[low] internal-function-used-once at src/HookFlags.sol:35: Internal Function Used Only Once (3 places)\n[low] large-numeric-literal at src/UnlkHook.sol:69: Large Numeric Literal (58 places)\n[low] literal-instead-of-constant at src/UnlkHook.sol:469: Literal Instead of Constant (32 places)\n[low] missing-inheritance at src/UnlkOracle.sol:15: Missing Inheritance\n[low] require-revert-in-loop at src/MerkleClaimEvidence.sol:75: Loop Contains `require`/`revert` (9 places)\n[low] state-change-without-event at src/UnlkHook.sol:462: State Change Without Event (10 places)\n[low] unchecked-return at src/UnlkHook.sol:343: Unchecked Return (5 places)\n[low] uninitialized-local-variable at src/MerkleClaimEvidence.sol:121: Uninitialized Local Variable (5 places)\n[low] unused-import at src/libraries/OperationHash.sol:4: Unused Import","passed":true}],"detail":"all checks passed","evaluation":"checks","profile":"foundry","status":"accepted","submissionHash":"30fbad449bb8c7bcec4d2644f594942f9ee436a3ea35e5512682891a1e7bd0e3","verifiedTreeHash":"b7157228191bca977a670d3b41ab4cb8101f51e8","verifierVersion":"0.1.0+8fbf00a5"}]}